Repository navigation
Releases
v9.17.0
We'd like to extend a big thank you to the 20 contributors who made this release possible. Here are some highlights ✨:
-
🧮 Computed columns in the Data Grid Premium
computed-columns-demo.mp4
-
👆 Data Grid column reordering on touch and pen devices
-
↔️ Right-to-left (RTL) support in the Event Calendar and the Event Timeline -
🕒 Fix recurring events, drag and drop, and the time axis of the Scheduler across DST transitions
-
⚠️ Recurring events and dependencies are now opt-in in the Event Timeline -
🌍 The Scheduler formats dates with
Intl:dateLocaletakes a locale string like"fr-FR" -
🐞 Bugfixes
-
📚 Documentation improvements
Special thanks go out to these community members for their valuable contributions:
@adamowski10, @Anexus5919, @b84330808, @chanellebingham, @costajohnt, @dasjideepak, @mateuseap, @minwookshin, @mustafajw07
The following team members contributed to this release:
@flaviendelangle, @hasdfa, @Janpot, @JCQuintas, @LukasTy, @MBilalShafi, @michelengelen, @noraleonte, @rita-codes, @romgrk, @ZeeshanTamboli
Data Grid
@mui/x-data-grid@9.17.0
- [DataGrid] Add
filterFormColumnInputslot (#23871) @michelengelen - [DataGrid] Describe column and action in sort button labels (#23755) @minwookshin
- [DataGrid] Describe column and action in sort button labels (#23755) @minwookshin
- [DataGrid] Document undocumented props and classes (#24052) @Janpot
- [DataGrid] Fire
onMenuCloseonly when a menu actually closes (#23873) @michelengelen - [DataGrid] Fix stale values when server-side aggregation is removed (#23973) @JCQuintas
- [DataGrid] Focus the column header when clicking the sort icon (#23947) @JCQuintas
- [DataGrid] Show the column header icons on keyboard focus (#23699) @dasjideepak
- [DataGrid] Keep the first typed character with a controlled modes model (#23982) @michelengelen
@mui/x-data-grid-pro@9.17.0 
Same changes as in @mui/x-data-grid@9.17.0, plus:
- [DataGridPro] Touch column reorder with pointer events (#23928) @noraleonte
@mui/x-data-grid-premium@9.17.0 
Same changes as in @mui/x-data-grid-pro@9.17.0, plus:
- [DataGridPremium] Computed columns (#23646) @MBilalShafi
- [DataGridPremium] Fix React 17 crashes (#24038) @LukasTy
Date and Time Pickers
@mui/x-date-pickers@9.17.0
- [pickers] Document undocumented props and slots (#24031) @Janpot
- [pickers] Forward
readOnlyto the input inPickersTextField(#24042) @LukasTy - [pickers] Only scroll the Digital Clock when its active item changes (#23942) @b84330808
@mui/x-date-pickers-pro@9.17.0 
Same changes as in @mui/x-date-pickers@9.17.0.
Charts
@mui/x-charts@9.17.0
- [charts] Document undocumented props and slots (#24033) @Janpot
- [charts] Fix React 17 crashes (#24038) @LukasTy
@mui/x-charts-pro@9.17.0 
Same changes as in @mui/x-charts@9.17.0.
@mui/x-charts-premium@9.17.0 
Same changes as in @mui/x-charts-pro@9.17.0.
Tree View
@mui/x-tree-view@9.17.0
- [tree view] Document undocumented props (#24036) @Janpot
- [tree view] Keep the dragged item mounted when it is virtualized away (#24050) @JCQuintas
@mui/x-tree-view-pro@9.17.0 
Same changes as in @mui/x-tree-view@9.17.0.
Scheduler
Breaking changes
-
The
headerToolbarLeftElementclass of the Event Calendar has been renamed toheaderToolbarStart.
Update your style overrides and class selectors:const theme = createTheme({ components: { MuiEventCalendar: { styleOverrides: { - headerToolbarLeftElement: { gap: 8 }, + headerToolbarStart: { gap: 8 }, }, }, }, }); -
The unused
DEFAULT_PREFERENCESexport of the Timeline store has been removed. -
Recurring events and dependencies are now opt-in in the Event Timeline. Without the feature, each event with an
rrulerenders once:-<EventTimelinePremium events={events} /> +<EventTimelinePremium events={events} features={{ recurringEvents: recurringEventsFeature }} />
-
The
dateLocaleprop andcreateDateLocaleTheme()take a locale string, likeIntl.DateTimeFormat, instead of adate-fnslocale object:-import { fr } from 'date-fns/locale/fr'; -<EventCalendar dateLocale={fr} /> +<EventCalendar dateLocale="fr-FR" />
-
The
weekStartsOnpreference uses ISO weekdays, from1(Monday) to7(Sunday). Sunday is7instead of0. -
Without
ampm, times follow the hour cycle of the locale instead of a 12-hour clock, anddefaultPreferencesno longer includesampm: true. -
Dates use the
Intl.DateTimeFormatformats of the locale, so some labels change slightly (for example "July 3" instead of "July 3rd"), and week numbers follow the locale. -
Timed events shorter than one day that cross midnight now stay in the time grid by default, and the day grid row no longer shows a visible "All day" label. Use
timeGridEvents: 'same-day-only'inviewConfig.dayandviewConfig.weekto keep the previous behavior.
@mui/x-scheduler@9.0.0-beta.15
- [scheduler] Add
timeGridEventsoption to keep overnight timed events in the time grid (#23749) @Anexus5919 - [scheduler] Add an RTL demo and visual regression tests (#23975) @rita-codes
- [scheduler] Add regression tests for standalone month names in headers (#22841) @adamowski10
- [scheduler] Add store-level tests for the clamped resize with unwritable dates (#23952) @mustafajw07
- [scheduler] Add utility classes to the dependency UI (#24035) @rita-codes
- [scheduler] Allow disabling event deletion with
eventDeletion={false}(#23988) @mustafajw07 - [scheduler] Build the date keys from plain dates (#24010) @flaviendelangle
- [scheduler] Compute the fields of PlainDate when they are read (#23969) @flaviendelangle
- [scheduler] Detect the text direction and pass it to the timeline virtualizer (#23898) @rita-codes
- [scheduler] Document undocumented props (#24036) @Janpot
- [scheduler] Fetch the ranges of the lazy loading as timestamps (#23998) @flaviendelangle
- [scheduler] Fix React 17 crashes (#24038) @LukasTy
- [scheduler] Fix recurring events across timezones and DST transitions (#23943) @flaviendelangle
- [scheduler] Fix the dependency engine across DST transitions and speed it up (#23963) @flaviendelangle
- [scheduler] Fix the drag and drop of the day grid across DST transitions and speed up its preview (#23964) @flaviendelangle
- [scheduler] Fix the edits of recurring series across DST transitions (#23965) @flaviendelangle
- [scheduler] Fix the navigation of the Timeline presets across DST transitions (#23966) @flaviendelangle
- [scheduler] Fix the time axis across DST transitions and speed it up (#23962) @flaviendelangle
- [scheduler] Format the dates with Intl and number the weekdays like ISO 8601 (#24021) @flaviendelangle
- [scheduler] Give the view switcher and the drawer view list an accessible name (#23996) @chanellebingham
- [scheduler] Keep the "+N more" popover and the event context menu in sync with removed events (#23800) @rita-codes
- [scheduler] Make every user-facing store error translatable through
localeText(#24026) @rita-codes - [scheduler] Make the agenda view day count configurable (#23815) @costajohnt
- [scheduler] Mirror arrow key navigation in RTL (#23954) @rita-codes
- [scheduler] Mirror navigation icons, popups and dialogs in RTL (#23955) @rita-codes
- [scheduler] Move the day math of the Event Calendar views to plain dates (#23999) @flaviendelangle
- [scheduler] Move the placeholder of the drag and drop to timestamps (#23997) @flaviendelangle
- [scheduler] Pass timestamps and plain dates to the CalendarGrid (#24007) @flaviendelangle
- [scheduler] Process dates without the getters of the adapter (#23984) @flaviendelangle
- [scheduler] Read more internal dates as plain dates and timestamps (#24014) @flaviendelangle
- [scheduler] Read the Timeline presets, the recurrence presets and the time columns on plain dates (#24015) @flaviendelangle
- [scheduler] Read the bounds of the time axis as timestamps (#24006) @flaviendelangle
- [scheduler] Read the dates of the event dialog as plain dates (#24003) @flaviendelangle
- [scheduler] Read the timestamps of the processed dates in the recurring events (#24004) @flaviendelangle
- [scheduler] Refuse writes atomically when a date can't be written back (#23553) @mustafajw07
- [scheduler] Remove the unused
DEFAULT_PREFERENCESexport of the Timeline store (#24013) @flaviendelangle - [scheduler] Rename
headerToolbarLeftElementtoheaderToolbarStart(#23897) @rita-codes - [scheduler] Speed up the day grid and fix day lists across DST transitions (#23961) @flaviendelangle
- [scheduler] Store the current time as a timestamp and compare the days of the occurrences (#24005) @flaviendelangle
- [scheduler] Support RTL in the Event Timeline dependency arrows (#23974) @rita-codes
- [scheduler] Support RTL pointer and scroll interactions in the Event Timeline (#23972) @rita-codes
- [scheduler] Support RTL when dragging multi-day events in the Event Calendar (#23953) @rita-codes
- [scheduler] Sync the BaseTemporal copy with the Base UI version (#24040) @flaviendelangle
- [scheduler] Type the plain dates through the Base...
v9.16.0
We'd like to extend a big thank you to the 14 contributors who made this release possible. Here are some highlights ✨:
- 📊 Excel export in the Charts Premium, with a toolbar entry
- 👆 Data Grid row reordering on touch and pen devices
- 🗑️ Confirmation dialog before deleting an event in the Scheduler
- 🌍 Improve Romanian (ro-RO) locale on the Data Grid and the Date and Time Pickers
- 🌍 Improve Turkish (tr-TR) locale on the Data Grid, the Date and Time Pickers, and the Scheduler
- 🐞 Bugfixes
- 📚 Documentation improvements
Special thanks go out to these community members for their valuable contributions:
@aozmekik, @cpruijsen, @mustafajw07, @reckter, @vicuts
The following team members contributed to this release:
@arminmeh, @brijeshb42, @cherniavskii, @Janpot, @JCQuintas, @LukasTy, @michelengelen, @noraleonte, @rita-codes
Data Grid
@mui/x-data-grid@9.16.0
- [DataGrid] Fix
PropsFromSlotresolving toanyforJSXElementConstructorslots (#23856) @cpruijsen - [DataGrid] Fix memory leak on row updates (#23779) @arminmeh
- [DataGrid] Fix the "is any of" prompt filter text in translated locales (#23833) @LukasTy
- [DataGrid] Keep keyboard focus after a click on the empty row space (#23862) @michelengelen
- [DataGrid] Extract column reorder utils (#23834) @noraleonte
- [DataGrid] Fix popover aria roles (#23878) @noraleonte
- [l10n] Improve Romanian (ro-RO) locale (#23816) @vicuts
- [l10n] Improve Turkish (tr-TR) locale (#23912) @aozmekik
@mui/x-data-grid-pro@9.16.0 
Same changes as in @mui/x-data-grid@9.16.0, plus:
- [DataGridPro] Allow triggering infinite loading beyond row buffer (#23784) @arminmeh
- [DataGridPro] Fix toggling
treeDataandgetTreeDataPathtogether (#23715) @michelengelen - [DataGridPro] Row reorder pointer events for improved touch interaction (#23725) @noraleonte
- [DataGridPro] Skip the infinite loader when
IntersectionObserveris unavailable (#23869) @michelengelen
@mui/x-data-grid-premium@9.16.0 
Same changes as in @mui/x-data-grid-pro@9.16.0, plus:
- [DataGridPremium] Re-apply aggregation when a column
valueGetterchanges (#23713) @michelengelen
Date and Time Pickers
@mui/x-date-pickers@9.16.0
- [l10n] Improve Romanian (ro-RO) locale (#23816) @vicuts
- [l10n] Improve Turkish (tr-TR) locale (#23912) @aozmekik
- [pickers] Fix
PropsFromSlotresolving toanyforJSXElementConstructorslots (#23856) @cpruijsen - [pickers] Fix Day.js named-zone elapsed-time additions across DST (#23752) @LukasTy
- [pickers] Fix empty gap next to the digital clock columns (#23698) @michelengelen
- [pickers] Fix missing
onYearChangeand duplicateonMonthChangecalls (#23874) @LukasTy - [pickers] Memoize the year list in
YearCalendar(#23867) @michelengelen - [pickers] Use
monthsPerRowfor keyboard navigation inMonthCalendar(#23876) @vicuts
@mui/x-date-pickers-pro@9.16.0 
Same changes as in @mui/x-date-pickers@9.16.0.
Charts
@mui/x-charts@9.16.0
- [charts] Fix
PropsFromSlotresolving toanyforJSXElementConstructorslots (#23856) @cpruijsen - [charts] Fix aria role on popper (#23939) @noraleonte
@mui/x-charts-pro@9.16.0 
Same changes as in @mui/x-charts@9.16.0.
@mui/x-charts-premium@9.16.0 
Same changes as in @mui/x-charts-pro@9.16.0, plus:
- [charts-premium] Add the Excel export plugin (#23597) @JCQuintas
- [charts-premium] Add the Excel export toolbar entry (#23644) @JCQuintas
Tree View
@mui/x-tree-view@9.16.0
- [tree view] Fix
PropsFromSlotresolving toanyforJSXElementConstructorslots (#23856) @cpruijsen - [TreeView] Fix infinite recursion when a mounted item suspends (#23668) @reckter
@mui/x-tree-view-pro@9.16.0 
Same changes as in @mui/x-tree-view@9.16.0.
Scheduler
@mui/x-scheduler@9.0.0-beta.14
- [l10n] Improve Turkish (tr-TR) locale (#23912) @aozmekik
- [scheduler] Add confirmation dialog for event deletion (#23593) @mustafajw07
- [scheduler] Extract a generic form store from the event dialog form (#23781) @rita-codes
- [scheduler] Fix the style overrides key of the responsiveness example (#23838) @rita-codes
- [scheduler] Mark today with
aria-current="date"(#23809) @rita-codes - [scheduler] Remove duplicated and unused code from the stores (#23854) @rita-codes
- [scheduler] Show the end date of multi-day events in the read-only event details (#23846) @rita-codes
- [scheduler] Use
menuitemradiofor the view switcher items (#23807) @rita-codes
@mui/x-scheduler-premium@9.0.0-beta.14 
Same changes as in @mui/x-scheduler@9.0.0-beta.14, plus:
- [scheduler-premium] Document
weekStartsOnand exportEventTimelinePremiumPreferences(#23811) @rita-codes - [scheduler-premium] Include the community models and theme augmentation in the Premium package (#23813) @rita-codes
- [scheduler-premium] Dependencies - Edit the type and lag from the arrow, cascade on create and edit (#23726) @rita-codes
- [scheduler-premium] Fix agenda focus skipping surviving occurrences after deleting a recurring event (#23903) @mustafajw07
Chat
@mui/x-chat@9.0.0-alpha.20
Internal changes.
@mui/x-chat-headless@9.0.0-alpha.20
Internal changes.
Codemod
@mui/x-codemod@9.16.0
Internal changes.
Docs
- [docs] Replace deprecated APIs in documentation (#23791) @brijeshb42
- [docs][charts] Fix dead Popper.js documentation links (#23832) @LukasTy
- [docs][pickers] Add a Year Range Picker placeholder section (#23794) @michelengelen
- [docs][scheduler] Fix the broken event model and resource snippets (#23840) @rita-codes
- [docs][scheduler] Point to the event dialog slot instead of promising a customizable form (#23803) @rita-codes
- [docs][scheduler] Remove the premium rrule from the title property demo (#23805) @rita-codes
- [docs][scheduler] Use the preset names in the Timeline navigation step table (#23836) @rita-codes
Core
- [code-infra] Bump vitest to 5.0.4 and tune browser test concurrency (#23850) @Janpot
- [code-infra] Fix ts-ignore lint error in AdapterDayjs test (#23843) @LukasTy
- [code-infra] Group major and minor pragmatic-drag-and-drop renovate updates (#23782) @LukasTy
- [code-infra] Use flake-fix dry-run (#23849) @Janpot
- [code-infra] Skip
MUI.GoogleLatinin changelogs (#23934) @Janpot - [code-infra] Wait for
data-screenshot-pendingbefore regression screenshots (#23772) @Janpot - [x-internals] Restore removed exports and pin internal dependencies (#23907) @LukasTy
- [x-internals] Fix
useStoreEffectin Strict Mode (#23857) @cherniavskii
Miscellaneous
- [infra] Fix package.json metadata (#23712) @Janpot
- [infra] Remove engines.node from UI packages (#23786) @Janpot
- [infra] Require explanations for TypeScript error suppressions (#23789) @brijeshb42
- [pnpm] Prune stale minimumReleaseAgeExclude entries (#23666) @Janpot
- [virtualizer] Render the rows and columns in view on small scrolls in controlled layout (#23865) @rita-codes
v8.29.5
We'd like to extend a big thank you to the 4 contributors who made this release possible. Here are some highlights ✨:
- 🐞 Bugfixes
- 📚 Documentation improvements
Special thanks go out to this community member for their valuable contribution:
@vicuts
The following team members contributed to this release:
@arminmeh, @LukasTy, @michelengelen
Data Grid
@mui/x-data-grid@8.29.5
@mui/x-data-grid-pro@8.29.5 
Same changes as in @mui/x-data-grid@8.29.5.
@mui/x-data-grid-premium@8.29.5 
Same changes as in @mui/x-data-grid-pro@8.29.5.
Date and Time Pickers
@mui/x-date-pickers@8.29.5
- [pickers] Fix Day.js named-zone elapsed-time additions across DST (#23842) @LukasTy
- [pickers] Fix missing
onYearChangeand duplicateonMonthChangecalls (#23879) @LukasTy - [pickers] Use
monthsPerRowfor keyboard navigation inMonthCalendar(#23884) @vicuts
@mui/x-date-pickers-pro@8.29.5 
Same changes as in @mui/x-date-pickers@8.29.5.
Docs
- [docs][pickers] Add a Year Range Picker placeholder section (#23797) @michelengelen
Core
v9.15.0
We'd like to extend a big thank you to the 17 contributors who made this release possible. Here are some highlights ✨:
- 🌍 Add Russian (ru-RU) locale to the Scheduler
- 📐 New
heightprop to size the Data Grid without a wrapper - 📅 New
onCancelcallback prop on the Date and Time Pickers - ⌨️ Home/End, Ctrl+Home/End, and PageUp/PageDown keyboard navigation in the Charts
- 🔒 Data Grid and Charts exports work under a Content Security Policy
- 🐞 Bugfixes
- 📚 Documentation improvements
Special thanks go out to these community members for their valuable contributions:
@Anexus5919, @davidjb, @kwy404, @mixelburg, @Sazuru
The following team members contributed to this release:
@arminmeh, @brijeshb42, @flaviendelangle, @Janpot, @JCQuintas, @LukasTy, @mapache-salvaje, @michelengelen, @noraleonte, @rita-codes, @romgrk, @siriwatknp
Data Grid
@mui/x-data-grid@9.15.0
- [DataGrid] Add
heightprop for sizing without a wrapper (#23628) @michelengelen - [DataGrid] Cap the pagination toolbar so the footer height is stable on mount (#23547) @JCQuintas
- [DataGrid] Document
rowsSet,filteredRowsSet&sortedRowsSetevents (#23631) @michelengelen - [DataGrid] Extract the data source polling into a shared hook (#23714) @LukasTy
- [DataGrid] Fix
autosizeColumnswith wrapped header text (#23241) @siriwatknp - [DataGrid] Fix flex column jump when a detail panel expands (#23576) @michelengelen
- [DataGrid] Fix stale columns and stalled loading in the demo data generator (#23727) @LukasTy
- [DataGrid] Fix stale rows and lost edits in
useMockServer(#23751) @LukasTy - [DataGrid] Fix the
heightprop overflowing a narrow flex row parent (#23745) @LukasTy - [DataGrid] Fix the
inputRefprop type warning in select-based filter inputs (#23728) @LukasTy - [DataGrid] Keep empty first and last cells when copying rows (#23753) @Anexus5919
- [DataGrid] Keep pinned cells opaque without
color-mix()support (#23563) @michelengelen - [DataGrid] Let the theme disable the row checkbox ripple (#23703) @siriwatknp
- [DataGrid] Stop the data source polling after the grid unmounts (#23709) @LukasTy
- [DataGrid] Stop the lazy loading polling when
lazyLoadingturns off (#23717) @LukasTy - [DataGrid] Support
hrefonGridActionsCellItem(#23630) @michelengelen
@mui/x-data-grid-pro@9.15.0 
Same changes as in @mui/x-data-grid@9.15.0.
@mui/x-data-grid-premium@9.15.0 
Same changes as in @mui/x-data-grid-pro@9.15.0, plus:
- [DataGridPremium] Clear the aggregation from the column menu (#23641) @Anexus5919
- [DataGridPremium] Fix exports failing or hanging under a Content Security Policy (#23521) @JCQuintas
Date and Time Pickers
@mui/x-date-pickers@9.15.0
- [fields] Focus the section synchronously on
mousedown(#23642) @michelengelen - [pickers] Add
onCancelcallback prop (#23669) @michelengelen - [pickers] Fix
TimeClockPageUpandPageDownat noon (#23741) @kwy404 - [pickers] Fix
getDaysInMonthon dates bound to a timezone before 1970 (#23302) @JCQuintas - [pickers] Fix month label jump when switching months fast (#23645) @michelengelen
- [pickers] Fix singular/plural clock number ARIA labels (#23683) @michelengelen
- [pickers] Fix the uncontrolled
defaultValuechange warning (#23702) @LukasTy - [pickers] Migrate picker hooks to the
managerpattern (#23684) @michelengelen - [pickers] Preserve plain Day.js values across system DST changes (#22278) @LukasTy
@mui/x-date-pickers-pro@9.15.0 
Same changes as in @mui/x-date-pickers@9.15.0.
Charts
@mui/x-charts@9.15.0
- [charts] Add Home/End, Ctrl+Home/End, and PageUp/PageDown keyboard navigation (#23146) @JCQuintas
- [charts] Disable the
SparkLineChartaxis listener when nothing uses it (#23681) @Anexus5919 - [charts] Fix
Unsupported style property @mediawarning with responsive theme typography (#23705) @noraleonte - [charts] Pass
SparkLineChartcontainer props to the data provider (#23690) @mixelburg
@mui/x-charts-pro@9.15.0 
Same changes as in @mui/x-charts@9.15.0, plus:
- [charts-pro] Fix image export under a CSP when styles come only from
<link>stylesheets (#23721) @Anexus5919 - [charts-pro] Fix exports failing or hanging under a Content Security Policy (#23521) @JCQuintas
@mui/x-charts-premium@9.15.0 
Same changes as in @mui/x-charts-pro@9.15.0, plus:
- [charts-premium] Move the Excel export defaults out of the types file (#23643) @JCQuintas
Tree View
@mui/x-tree-view@9.15.0
- [tree view] Use
aria-selectedinstead ofaria-checkedwhencheckboxSelectionis disabled (#23679) @michelengelen
@mui/x-tree-view-pro@9.15.0 
Same changes as in @mui/x-tree-view@9.15.0.
Scheduler
@mui/x-scheduler@9.0.0-beta.13
- [l10n] Add Russian (ru-RU) locale (#23567) @Sazuru
- [scheduler] Clamp the placeholder span to the week row (#23734) @rita-codes
- [scheduler] Fix the agenda view crashing when hiding empty days and no event is in the horizon (#23570) @rita-codes
- [scheduler] Fix the event dialog moving untouched dates across timezones (#23462) @rita-codes
- [scheduler] Give events a proper accessible name (#23675) @rita-codes
- [scheduler] Index events by visible range (#23362) @flaviendelangle
- [scheduler] Index timeline occurrences by position (#23367) @flaviendelangle
- [scheduler] Pass the weekday token to the monthly recurrence labels (#23637) @Anexus5919
- [scheduler] Remove redundant readonly recurrence subscription (#23626) @flaviendelangle
- [scheduler] Render the event-item recurring icon once (#23621) @flaviendelangle
- [scheduler] Share custom recurrence draft updates (#23618) @flaviendelangle
- [scheduler] Share edit and show-details menu item markup (#23627) @flaviendelangle
- [scheduler] Simplify time-grid event duration checks (#23611) @flaviendelangle
@mui/x-scheduler-premium@9.0.0-beta.13 
Same changes as in @mui/x-scheduler@9.0.0-beta.13, plus:
- [scheduler-premium] Dependencies - SS/FF/SF and lag in the auto-scheduling engine (#23623) @rita-codes
- [scheduler-premium] Read the RRULE
UNTILas a UTC instant (#23739) @rita-codes - [scheduler-premium] Read the
body2font size unit in the timeline row height (#23736) @rita-codes
Chat
@mui/x-chat@9.0.0-alpha.19
- [chat] Cap markdown input length to avoid a render-thread freeze (#23008) @Anexus5919
- [chat] Distinguish "history not loaded yet" from "empty conversation" (#23607) @JCQuintas
@mui/x-chat-headless@9.0.0-alpha.19
- [chat] Distinguish "history not loaded yet" from "empty conversation" (#23607) @JCQuintas
Codemod
@mui/x-codemod@9.15.0
Internal changes.
Docs
- [DataGrid] Make product comparisons more explicit on Overview page (#22696) @mapache-salvaje
- [tree view] Fix typo on Customization page (#23691) @davidjb
Core
- [code-infra] Cap typecheck concurrency and remove
typescript:ci(#23731) @Janpot - [code-infra] Clear the demo data caches between regression routes (#23747) @Janpot
- [code-infra] Enable pnpm
autoDedupe(#23706) @LukasTy - [code-infra] Fix the stale
@types/nodeentry in the lockfile (#23742) @LukasTy - [code-infra] Mark the Argos reference branch for release branch cuts (#23776) @Janpot
- [code-infra] Only fake timers while a regression test case mounts (#23748) @Janpot
- [code-infra] Widen
@babel/runtimerange and stop emitting empty class fields (#23707) @brijeshb42 - [docs-infra] Migrate deploy-succeeded to event-triggered function (#23634) @brijeshb42
- [docs-infra] Retire the docs service worker (#23674) @Janpot
Miscellaneous
- [ci] Flake-fix caller: follow mui-public's central model default (#23680) @Janpot
- [internals] Fix
hashword indexing and buffer sizing (#23494) @romgrk - [test] Fix regression flake when an aborted image errors mid-wait (#23708) @JCQuintas
- [test] Fix the flaky data grid export tests (#23720) @LukasTy
- [test] Fix the flaky detail panel flex width test on React 18 (#23710) @LukasTy
- [test] Load the regression fonts from npm instead of Google Fonts (#23775) @Janpot
- [test] Make regression screenshot rasterization deterministic (#23722) @LukasTy
- [test] Wait for the Mars texture before the
MarsMapregression screenshot (#23730) @LukasTy - [virtualizer] Do not affect
columnPositionsselector with unrelated state change (#23629) @arminmeh - [x-internals] Import Base UI utils directly instead of re-exporting them (#23373) @romgrk
- [x-internals] Import the store from
@base-ui/utilsdirectly (#23335) @romgrk
v8.29.4
We'd like to extend a big thank you to the 4 contributors who made this release possible. Here are some highlights ✨:
- 🐞 Bugfixes
The following team members contributed to this release:
@Janpot, @JCQuintas, @LukasTy, @michelengelen
Date and Time Pickers
@mui/x-date-pickers@8.29.4
- [fields] Focus the section synchronously on
mousedown(#23647) @michelengelen - [pickers] Preserve plain Day.js values across system DST changes (#23771) @LukasTy
@mui/x-date-pickers-pro@8.29.4 
Same changes as in @mui/x-date-pickers@8.29.4.
Core
- [code-infra] Fix the publish workflow failing on an outdated Node version (#23392) @JCQuintas
- [code-infra] Pin npm 11 to fix the v8 publish workflow (#23397) @JCQuintas
- [code-infra] Remove disabled Discord release announcement workflow (#23555) @Janpot
v9.14.0
We'd like to extend a big thank you to the 16 contributors who made this release possible. Here are some highlights ✨:
- 🌍 Add Hebrew (he-IL) locale to the Scheduler
- 📅 Scheduler time grid now opens at 7 AM by default, configurable with the new
initialScrollTimeprop - 🗓️ Auto-scheduling engine for finish-to-start dependencies in the Premium Event Timeline
- 🧩 New content slots for the Event Timeline event block and resource title cell
- ♿️ Charts announce the visible zoom range to screen readers
- 🐞 Bugfixes
- 📚 Documentation improvements
Special thanks go out to these community members for their valuable contributions:
@eterry1388, @jamesDin, @kareem-ib, @mateuseap, @mustafajw07
The following team members contributed to this release:
@arminmeh, @bernardobelchior, @brijeshb42, @flaviendelangle, @hasdfa, @Janpot, @JCQuintas, @MBilalShafi, @michelengelen, @noraleonte, @rita-codes
Data Grid
@mui/x-data-grid@9.14.0
- [DataGrid] Do not crash on unmount when the document has no body (#23431) @eterry1388
- [DataGrid] Fix
MissingRowIdErroron cellmousedown/mouseupafter row removal (#23261) @kareem-ib - [DataGrid] Fix quick filter dropping a pending search on parser identity change (#23575) @michelengelen
- [DataGrid] Keep overlays sticky in RTL mode (#23492) @arminmeh
- [DataGrid] Prevent scroll area state update before mount (#23478) @michelengelen
- [DataGrid] Remove
'menu'role from the actions cell (#23437) @michelengelen
@mui/x-data-grid-pro@9.14.0 
Same changes as in @mui/x-data-grid@9.14.0, plus:
- [DataGridPro] Fix data integrity issue in nested server data (#23518) @MBilalShafi
- [DataGridPro] Keep parent selection when lazily loaded children arrive (#23421) @michelengelen
@mui/x-data-grid-premium@9.14.0 
Same changes as in @mui/x-data-grid-pro@9.14.0.
Date and Time Pickers
@mui/x-date-pickers@9.14.0
Internal changes.
@mui/x-date-pickers-pro@9.14.0 
Same changes as in @mui/x-date-pickers@9.14.0.
Charts
@mui/x-charts@9.14.0
- [charts] Announce the visible zoom range to screen readers (#23371) @JCQuintas
- [charts] Fix Premium chart zoom props and
apiRefforwarding (#23590) @bernardobelchior
@mui/x-charts-pro@9.14.0 
Same changes as in @mui/x-charts@9.14.0.
@mui/x-charts-premium@9.14.0 
Same changes as in @mui/x-charts-pro@9.14.0, plus:
- [charts-premium] Add the Excel data extraction layer (#23569) @JCQuintas
- [charts-premium] Forward
apiRefonRadialBarChartandRadialLineChart(#23625) @JCQuintas
Tree View
@mui/x-tree-view@9.14.0
- [tree view] Optimize lazy loading store writes for nested children (#23489) @noraleonte
- [tree view] Prune stale children when replacing an item's children (#23598) @JCQuintas
@mui/x-tree-view-pro@9.14.0 
Same changes as in @mui/x-tree-view@9.14.0.
Scheduler
Breaking changes
-
The
dataSourceprop has been removed from the Community Event Calendar components:
EventCalendar,StandaloneDayView,StandaloneWeekView,StandaloneMonthView,
StandaloneAgendaView,StandaloneCompactDayView,StandaloneCompactThreeDayViewand
StandaloneCompactWeekView.Lazy loading has always been Premium-only, and the prop never had any effect on these
components: it left the calendar in a permanent loading state. To load events through a data
source, useEventCalendarPremium(or the Premium standalone views) andEventTimelinePremium,
wheredataSourceis unchanged.-import { EventCalendar } from '@mui/x-scheduler/event-calendar'; +import { EventCalendarPremium } from '@mui/x-scheduler-premium/event-calendar-premium'; -<EventCalendar dataSource={dataSource} /> +<EventCalendarPremium dataSource={dataSource} />
@mui/x-scheduler@9.0.0-beta.12
- [l10n] Add Hebrew (he-IL) locale (#23577) @jamesDin
- [scheduler] Add content slots for the Event Timeline event block and resource title cell (#23557) @rita-codes
- [scheduler] Fix
onPreferencesChangenever being called onEventCalendar(#23568) @rita-codes - [scheduler] Fix flaky timeline observer absorb (#23523) @JCQuintas
- [scheduler] Open the time grid at 7 AM by default and add
initialScrollTime(#23594) @rita-codes - [scheduler] Pin sibling scheduler packages to exact versions (#23574) @rita-codes
- [scheduler] Read form initialization settings without subscriptions (#23614) @flaviendelangle
- [scheduler] Remove
dataSourcefrom the Community components (#23483) @mustafajw07 - [scheduler] Remove redundant recurrence subscriptions (#23610) @flaviendelangle
- [scheduler] Remove unused more-events popover count (#23619) @flaviendelangle
- [scheduler] Remove unused refs (#23616) @flaviendelangle
- [scheduler] Reuse precomputed timeline duration (#23620) @flaviendelangle
- [scheduler] Reuse recurrence option labels (#23609) @flaviendelangle
- [scheduler] Reuse recurrence presets for form drafts (#23615) @flaviendelangle
- [scheduler] Simplify month-view overflow counting (#23617) @flaviendelangle
- [scheduler] Use form store state to guard submissions (#23613) @flaviendelangle
@mui/x-scheduler-premium@9.0.0-beta.12 
Same changes as in @mui/x-scheduler@9.0.0-beta.12, plus:
- [scheduler-premium] Dependencies - Arrows and terminals for SS, FF and SF (#23524) @rita-codes
- [scheduler-premium] Dependencies - Auto-scheduling engine (FS) (#23439) @rita-codes
Docs
- [DataGrid][docs] Fix "Apply filters on demand" demo (#23602) @mateuseap
- [docs] Add recipe for getting the tree view's root DOM element via
ref(#22941) @michelengelen - [docs][pickers] Mention
Moment.jsmaintenance mode (#23601) @mateuseap
Core
- [code-infra] Gate the
DataGridScrollRestorationscreenshot on the horizontal restore (#23527) @JCQuintas - [code-infra] Let the
NoColumnsOverlaydemo settle before screenshotting (#23529) @JCQuintas - [code-infra] Pin the only-allow version in the preinstall hook (#23551) @Janpot
- [code-infra] Remove disabled Discord release announcement workflow (#23554) @Janpot
- [code-infra] Trial: Claude CI flake-fix caller (#23556) @Janpot
Miscellaneous
v9.13.0
We'd like to extend a big thank you to the 14 contributors who made this release possible. Here are some highlights ✨:
- 🦮 Improve keyboard navigation features of the Charts.
- 🎨 Improved customization of the edit event dialog in the
EventCalendar - 🐞 Bugfixes
- 📚 Documentation improvements
Special thanks go out to these community members for their valuable contributions:
@Anexus5919, @jvskriubakken, @mustafajw07, @roychan1
The following team members contributed to this release:
@brijeshb42, @flaviendelangle, @hasdfa, @Janpot, @JCQuintas, @LukasTy, @michelengelen, @noraleonte, @rita-codes, @silviuaavram
Data Grid
@mui/x-data-grid@9.13.0
- [DataGrid] Call
onValueChangeaftersetEditCellValuein edit cells (#23417) @michelengelen - [DataGrid] Add support for replacing rows instead of merging updates (#23323) @jvskriubakken
- [DataGrid] Always render
rowHeaderin virtualized setups (#23386) @silviuaavram - [DataGrid] Export
ToolbarRoot(#23322) @JCQuintas - [DataGrid] Fix
rowsPerPageselector appearing whenautoPageSizeis enabled andpageSizeis one ofpageSizeOptions(#23401) @roychan1 - [DataGrid] Fix row tree reset when a data source grid becomes visible (#23288) @JCQuintas
@mui/x-data-grid-pro@9.13.0 
Same changes as in @mui/x-data-grid@9.13.0, plus:
- [DataGridPro] Remove rows deleted server-side on nested lazy loading revalidation (#23320) @JCQuintas
- [DataGridPro] Stop
disableDebouncefrom reaching the DOM in multi select filter (#23445) @JCQuintas
@mui/x-data-grid-premium@9.13.0 
Same changes as in @mui/x-data-grid-pro@9.13.0, plus:
- [DataGridPremium] Refine cell selection and speed up clipboard copy (#23473) @michelengelen
- [DataGridPremium] Select all cells with Ctrl+A (#23415) @michelengelen
Date and Time Pickers
@mui/x-date-pickers@9.13.0
Internal changes.
@mui/x-date-pickers-pro@9.13.0 
Same changes as in @mui/x-date-pickers@9.13.0.
Charts
@mui/x-charts@9.13.0
- [charts] Activate the focused axis with Enter/Space (#23219) @JCQuintas
- [charts] Add keyboard zoom and pan (#23369) @JCQuintas
- [charts] Fix line mark position under browser zoom in Safari (#23387) @noraleonte
- [charts] Fix y axis tick labels shortened near the top of the chart (#23435) @JCQuintas
- [charts] Focus the clicked item on radar charts (#23287) @JCQuintas
- [charts] Stop text measurements leaking into each other (#23430) @JCQuintas
@mui/x-charts-pro@9.13.0 
Same changes as in @mui/x-charts@9.13.0.
@mui/x-charts-premium@9.13.0 
Same changes as in @mui/x-charts-pro@9.13.0.
Tree View
@mui/x-tree-view@9.13.0
- [tree view] Add
loadingprop and customizable loading UI (#22251) @michelengelen - [tree view] Reduce selector bundle size (#23412) @flaviendelangle
- [tree view] Remove dead UI from community component (#23487) @noraleonte
- [tree view] Remove unused dependencies (#23488) @noraleonte
- [tree view] Use
useIdfor the default tree id (#23341) @Anexus5919
@mui/x-tree-view-pro@9.13.0 
Same changes as in @mui/x-tree-view@9.13.0.
Scheduler
@mui/x-scheduler@9.0.0-beta.11
- [scheduler] Absorb un-acted
ResizeObserverdeliveries after rendering the timeline (#23444) @rita-codes - [scheduler] Add
EventContextMenuwith Edit and Delete actions (#23379) @mustafajw07 - [scheduler] Add aria-hidden to collapsed side panel and refactor landmark structure (#23425) @mustafajw07
- [scheduler] Add the
eventDialogGeneralTabslot (#23338) @rita-codes - [scheduler] Fix the un-awaited act warning in the event dialog slot test (#23446) @JCQuintas
- [scheduler] Improve timeline event layout performance (#23364) @flaviendelangle
- [scheduler] Keep
aria-expandedpresent when ViewSwitcher and PreferencesMenu menus are closed (#23427) @mustafajw07 - [scheduler] Make the event dialog General-tab building blocks public (#23398) @rita-codes
- [scheduler] Migrate to the pragmatic-drag-and-drop v3 entry points (#23442) @rita-codes
- [scheduler] Reduce selector bundle size (#23413) @flaviendelangle
- [scheduler] Reuse processed events between updates (#23363) @flaviendelangle
- [scheduler] Add
aria-expandedandaria-controlsto side panel toggle button (#23402) @mustafajw07
@mui/x-scheduler-premium@9.0.0-beta.11 
Same changes as in @mui/x-scheduler@9.0.0-beta.11, plus:
- [scheduler-premium] Dependencies - Keep event drags working over the arrow hit-areas (#23441) @rita-codes
- [scheduler-premium] Dependencies - Reject dependencies that would create a cycle (#23389) @rita-codes
- [scheduler-premium] Key recurring
exDateson their data-timezone day (#23467) @rita-codes
Codemod
@mui/x-codemod@9.13.0
Internal changes.
Docs
- [docs] Add synchronized tooltip and crosshair demo to charts (#23368) @JCQuintas
- [docs] Add sticky headers recipe to
RichTreeViewcustomization (#22908) @michelengelen - [docs] Pin the visible date of the scheduler preferences demos (#23432) @rita-codes
- [docs] Star-prefix bare :where() dark-mode selectors (#23419) @Janpot
- [docs] Consolidate demo data into shared dataset files (#23496) @michelengelen
Core
- [code-infra] Consume shared commands from code-infra orb (#23485) @brijeshb42
- [code-infra] Move the shared spy helpers off Sinon (#23466) @JCQuintas
- [code-infra] Point the support validator link at frontend-public (#23422) @Janpot
- [code-infra] Reduce per-page memory in the browser test suite (#23424) @Janpot
- [code-infra] Remove Sinon (#23476) @JCQuintas
- [code-infra] Remove the explicit
styled-componentsdependency (#23479) @LukasTy - [code-infra] Replace the mechanical sinon
spy()usages withvi.fn()(#23443) @JCQuintas - [code-infra] Replace the sinon
spy(fn)usages withvi.fn(fn)(#23460) @JCQuintas - [code-infra] Replace the sinon spy types with the Vitest ones (#23464) @JCQuintas
- [code-infra] Replace the sinon spy-on-object calls with
vi.spyOn(#23474) @JCQuintas - [code-infra] Replace the sinon stubs with Vitest mocks (#23472) @JCQuintas
- [code-infra] Run TypeScript 7 alongside the TS6 JS API (#23471) @brijeshb42
- [code-infra] Trim the shared browser test setup graph (#23426) @LukasTy
- [code-infra] Update CircleCI orb (#23418) @JCQuintas
- [code-infra] Use explicit vitest imports in test files (#23375) @michelengelen
Miscellaneous
- [chat] Enforce top-level type imports (#23037) @Janpot
- [chat] Fix global preload error from the
remendimport (#23263) @hasdfa - [ci] Add Claude PR review via mui-public reusable workflow (#23423) @Janpot
- [telemetry] Fix get-context test leaking mock from sender test (#23447) @JCQuintas
- [test] Fail the regression run when a webfont does not load (#23376) @LukasTy
v9.12.0
We'd like to extend a big thank you to the 12 contributors who made this release possible. Here are some highlights ✨:
- 🧮 Support Formulas on the Data Grid: cells in opted-in columns can hold spreadsheet-like formulas (
=SUM(RANGE(…)),=price * quantity) evaluated by a built-in engine, with a formula editor and Formula Bar, autocomplete, reference highlighting, optional A1 notation, fill-handle reference adjustment, custom functions, and live formula Excel export - ♿️ Improve the accessibility of Data Grid cells and picker day cells
- 🗓️ Enable multi-resource event creation and editing in the Scheduler
- 🐞 Bugfixes
- 📚 Documentation improvements
Special thanks go out to these community members for their valuable contributions:
@Anexus5919, @mustafajw07
The following team members contributed to this release:
@brijeshb42, @flaviendelangle, @JCQuintas, @LukasTy, @MBilalShafi, @michelengelen, @noraleonte, @rita-codes, @romgrk, @silviuaavram
Data Grid
@mui/x-data-grid@9.12.0
- [DataGrid] Expose
apiRefonGridCallbackDetailsfor selector access in callbacks (#22973) @michelengelen - [DataGrid] Fix header height not updating when
headerFiltersorcolumnGroupingModelchange (#23059) @MBilalShafi - [DataGrid] Fix unhandled rejection when unmounting mid-autosize (#23319) @JCQuintas
- [DataGrid] Label the blank
singleSelectfilter option (#23294) @JCQuintas - [DataGrid] Stop sending incomplete filter items to the data source (#23303) @JCQuintas
- [DataGrid] Support the
rowheaderattribute for grid cells (#23340) @silviuaavram
@mui/x-data-grid-pro@9.12.0 
Same changes as in @mui/x-data-grid@9.12.0, plus:
- [DataGridPro] Honor
hasNextPagein infinite lazy loading (#23048) @MBilalShafi
@mui/x-data-grid-premium@9.12.0 
Same changes as in @mui/x-data-grid-pro@9.12.0, plus:
- [DataGridPremium] Formula support (#22807) @MBilalShafi
Date and Time Pickers
@mui/x-date-pickers@9.12.0
- [fields] Keep the selected section on blank space clicks (#23318) @LukasTy
- [pickers] Associate the day cells with their week day column header (#23339) @LukasTy
- [pickers] Keep the
gridcellrole and the column index on filler cells (#23326) @Anexus5919
@mui/x-date-pickers-pro@9.12.0 
Same changes as in @mui/x-date-pickers@9.12.0, plus:
- [DateRangeCalendar] Round the range highlight at the month grid edges (#23297) @JCQuintas
- [DateRangePicker] Keep the range highlight opaque for disabled days (#23317) @JCQuintas
Charts
@mui/x-charts@9.12.0
- [charts] Add a demo for label on grid row (#23333) @noraleonte
- [charts] Fix React 18
propTypeswarnings and stray-pointer test flakiness (#23384) @LukasTy - [charts] Focus the clicked item for keyboard navigation (#23247) @JCQuintas
@mui/x-charts-pro@9.12.0 
Same changes as in @mui/x-charts@9.12.0.
@mui/x-charts-premium@9.12.0 
Same changes as in @mui/x-charts-pro@9.12.0, plus:
- [charts-premium] Add
onItemClickto the radial charts (#23253) @JCQuintas
Tree View
@mui/x-tree-view@9.12.0
Internal changes.
@mui/x-tree-view-pro@9.12.0 
Same changes as in @mui/x-tree-view@9.12.0.
Scheduler
@mui/x-scheduler@9.0.0-beta.10
- [scheduler] Add
onEventEditingStartto let consumers open their own edit UI (#23361) @rita-codes - [scheduler] Fix keyboard and focus issues around the "+N more" popover (#23312) @rita-codes
- [scheduler] Honor
viewConfighour limits in the compact day and week views (#23316) @rita-codes - [scheduler] Share timeline event layout data (#23366) @flaviendelangle
- [scheduler] enable multi-resource event creation and editing (#23313) @mustafajw07
@mui/x-scheduler-premium@9.0.0-beta.10 
Same changes as in @mui/x-scheduler@9.0.0-beta.10, plus:
- [scheduler-premium] Allow to control the min and max hour in the Event Timeline (#23212) @rita-codes
- [scheduler-premium] Dependencies - Create, select and delete via terminals (#23200) @rita-codes
Codemod
@mui/x-codemod@9.12.0
Internal changes.
Docs
- [docs][charts] Document line mark size customization (#23370) @JCQuintas
- [docs] Add recipe for constraining the
make-childdrop action by item type (#22940) @michelengelen - [docs] Redirect the renamed Event Timeline views page (#23324) @brijeshb42
- [docs] Remove unused
adapter-dependencies.json(#23328) @LukasTy
Core
- [code-infra] Add release skill (#23308) @brijeshb42
- [code-infra] Fix changelog categorization of docs and
DateRangeCalendartags (#23385) @JCQuintas - [code-infra] Sync mui-release skill (#23330) @brijeshb42
Miscellaneous
v8.29.3
We'd like to extend a big thank you to the 2 contributors who made this release possible. Here are some highlights ✨:
- 🐞 Bugfixes
The following team members contributed to this release:
@LukasTy, @MBilalShafi
Data Grid
@mui/x-data-grid@8.29.3
- [DataGrid] Fix toolbar button stealing focus when a sibling's disabled state changes (#23265) @MBilalShafi
@mui/x-data-grid-pro@8.29.3 
Same changes as in @mui/x-data-grid@8.29.3.
@mui/x-data-grid-premium@8.29.3 
Same changes as in @mui/x-data-grid-pro@8.29.3.
Date and Time Pickers
@mui/x-date-pickers@8.29.3
- [fields] Keep the field editable on blank space clicks (#23372) @LukasTy
- [pickers] Fix format placeholder brightness with a start adornment (#23205) @LukasTy
@mui/x-date-pickers-pro@8.29.3 
Same changes as in @mui/x-date-pickers@8.29.3, plus:
- [DateRangePicker] Fix broken active range position underline in single input range fields (#23201) @LukasTy
Charts
@mui/x-charts@8.29.3
Internal changes.
@mui/x-charts-pro@8.29.3 
Same changes as in @mui/x-charts@8.29.3.
@mui/x-charts-premium@8.29.3 
Same changes as in @mui/x-charts-pro@8.29.3.
Tree View
@mui/x-tree-view@8.29.3
Internal changes.
@mui/x-tree-view-pro@8.29.3 
Same changes as in @mui/x-tree-view@8.29.3.
Codemod
@mui/x-codemod@8.29.3
Internal changes.
Miscellaneous
v9.11.1
We'd like to extend a big thank you to the 2 contributors who made this release possible. Here are some highlights ✨:
- 🐛 Fix the empty
@mui/x-charts-vendorpackage published in v9.11.0
The following team members contributed to this release:
@JCQuintas, @rita-codes
Charts
@mui/x-charts@9.11.1
- [charts] Fix empty
@mui/x-charts-vendorpublished package (#23310) @JCQuintas
@mui/x-charts-pro@9.11.1 
Same changes as in @mui/x-charts@9.11.1.
@mui/x-charts-premium@9.11.1 
Same changes as in @mui/x-charts-pro@9.11.1.
@mui/x-charts-vendor@9.11.1
- [charts] Fix empty
@mui/x-charts-vendorpublished package (#23310) @JCQuintas
Scheduler
@mui/x-scheduler@9.0.0-beta.9
- [scheduler] Show the range validation errors on the End date and End time fields (#23291) @rita-codes
@mui/x-scheduler-premium@9.0.0-beta.9 
Same changes as in @mui/x-scheduler@9.0.0-beta.9.