Skip to content

[charts-pro] Support composition for Sankey#20604

Merged
alexfauquette merged 21 commits intomui:masterfrom
alexfauquette:sankey-update
Jan 12, 2026
Merged

[charts-pro] Support composition for Sankey#20604
alexfauquette merged 21 commits intomui:masterfrom
alexfauquette:sankey-update

Conversation

@alexfauquette
Copy link
Copy Markdown
Member

No description provided.

@mui-bot
Copy link
Copy Markdown

mui-bot commented Dec 9, 2025

Deploy preview: https://deploy-preview-20604--material-ui-x.netlify.app/

Updated pages:

Bundle size report

Bundle Parsed size Gzip size
@mui/x-data-grid 0B(0.00%) 0B(0.00%)
@mui/x-data-grid-pro 0B(0.00%) 0B(0.00%)
@mui/x-data-grid-premium 0B(0.00%) 0B(0.00%)
@mui/x-charts 0B(0.00%) 0B(0.00%)
@mui/x-charts-pro 🔺+1.95KB(+0.42%) 🔺+265B(+0.19%)
@mui/x-charts-premium 0B(0.00%) 0B(0.00%)
@mui/x-date-pickers 0B(0.00%) 0B(0.00%)
@mui/x-date-pickers-pro 0B(0.00%) 0B(0.00%)
@mui/x-tree-view 0B(0.00%) 0B(0.00%)
@mui/x-tree-view-pro 0B(0.00%) 0B(0.00%)

Details of bundle changes

Generated by 🚫 dangerJS against 43cec8f

@zannager zannager added the scope: charts Changes related to the charts. label Dec 12, 2025
@codspeed-hq
Copy link
Copy Markdown

codspeed-hq bot commented Dec 12, 2025

CodSpeed Performance Report

Merging this PR will not alter performance

Comparing alexfauquette:sankey-update (43cec8f) with master (5e66b41)

Summary

✅ 14 untouched benchmarks

@alexfauquette
Copy link
Copy Markdown
Member Author

Did my best to simplify but ended up to the conclusion that we can not display all those labels on mobile

@JCQuintas About the approach to allow users for creating this same node labels. I could introduce a slot 😈 But I'm considering exporting a SankeyNodePlot, SankeyLinkPlot, SankeyNodeLablePlot, SankeyLinkLablePlot to do the demo with composition (reuse SankeyNodePlot, SankeyLinkPlot and do custom SankeyNodeLablePlot, SankeyLinkLablePlot)

@JCQuintas
Copy link
Copy Markdown
Member

Did my best to simplify but ended up to the conclusion that we can not display all those labels on mobile

Yes, an option for mobile should be to make the sankey vertical, or provide the labels outside the context of the chart.

I didn't want to implement composition for the sankey before the headless migration, so we don't have yet another slot to move over 😆

Copy link
Copy Markdown
Member Author

@alexfauquette alexfauquette left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@JCQuintas I tried to make something that would adapt well to a headless version

Comment on lines +15 to +19
import { sankeySeriesConfig } from '@mui/x-charts-pro/SankeyChart/seriesConfig';
import {
SANKEY_CHART_PLUGINS,
SankeyChartPluginSignatures,
} from '@mui/x-charts-pro/SankeyChart/SankeyChart.plugins';
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Either we create a SankeyDataprovider or we export those from the @mui/x-charts-pro/SankeyChart

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be ok to export the data provider

const { link } = props;
const theme = useTheme();
const seriesContext = useSankeySeriesContext();
const series = useSankeySeries()[0];
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we should simplify a bit further by directly returning the first series. The fact it's an array is just due to some internal consistency issues. From the user perspective their is always only one series

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The component is Unstable_SankeyChart but the hooks are not. We could technically do it, but might be annoying. We could wait for v9

Comment on lines 41 to 42
const SankeyPlotRoot = styled('g')({});

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I moved those to the SankeyNodePlot and SankeyLinkPlot. It decreases default style specificity.

I kept the styled to have the theme stye override. Coudl be removed if needed

} from './plugins/useSankeyHighlight.selectors';
import type { SankeyLayoutLink, SankeyNodeId } from './sankey.types';

export function useSankeyNodeHighlightState(nodeId: SankeyNodeId) {
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Proposal for a new highlight hook API that express the fact that highlighted items can't be faded

Suggested change
export function useSankeyNodeHighlightState(nodeId: SankeyNodeId) {
export function useSankeyNodeHighlightState(nodeId: SankeyNodeId): 'highlighted' | 'faded' | 'none' {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we turn this into a general/global hook/rule?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You mean for other series?

I think yes. For now hooks do to following which is the same but with more varaibles

const isHighlighted = store.use(isHighlightedSelector)
const isFaded = store.use(isFadedSelector)

return { isHighlighted, isFaded: !isHighlighted && isFaded }

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah

@alexfauquette alexfauquette changed the title [WIP][charts] Try some label improvement on sankey [charts-pro] Support composition for Sankey Dec 16, 2025
Copy link
Copy Markdown
Member

@JCQuintas JCQuintas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should work, it seems like it is a bit cumbersome to create the custom label plot, but I don't think we should provide more higher-level-apis (something like useNodeLabelPosition) at this point

Comment on lines +15 to +19
import { sankeySeriesConfig } from '@mui/x-charts-pro/SankeyChart/seriesConfig';
import {
SANKEY_CHART_PLUGINS,
SankeyChartPluginSignatures,
} from '@mui/x-charts-pro/SankeyChart/SankeyChart.plugins';
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be ok to export the data provider

} from './plugins/useSankeyHighlight.selectors';
import type { SankeyLayoutLink, SankeyNodeId } from './sankey.types';

export function useSankeyNodeHighlightState(nodeId: SankeyNodeId) {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we turn this into a general/global hook/rule?

const { link } = props;
const theme = useTheme();
const seriesContext = useSankeySeriesContext();
const series = useSankeySeries()[0];
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The component is Unstable_SankeyChart but the hooks are not. We could technically do it, but might be annoying. We could wait for v9

@github-actions github-actions bot added the PR: out-of-date The pull request has merge conflicts and can't be merged. label Dec 17, 2025
@github-actions
Copy link
Copy Markdown
Contributor

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions github-actions bot removed the PR: out-of-date The pull request has merge conflicts and can't be merged. label Dec 22, 2025
@alexfauquette alexfauquette added docs Improvements or additions to the documentation. type: enhancement It’s an improvement, but we can’t make up our mind whether it's a bug fix or a new feature. labels Dec 22, 2025
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Jan 5, 2026

This pull request has conflicts, please resolve those before we can evaluate the pull request.

@github-actions github-actions bot added the PR: out-of-date The pull request has merge conflicts and can't be merged. label Jan 5, 2026
@github-actions github-actions bot removed the PR: out-of-date The pull request has merge conflicts and can't be merged. label Jan 9, 2026
@alexfauquette alexfauquette marked this pull request as ready for review January 9, 2026 12:55
@alexfauquette alexfauquette requested review from a team and prakhargupta1 as code owners January 9, 2026 12:55
Co-authored-by: Jose C Quintas Jr <[email protected]>
Signed-off-by: Alexandre Fauquette <[email protected]>
@alexfauquette alexfauquette merged commit 1d4656d into mui:master Jan 12, 2026
22 checks passed
736-c41-2c1-e464fc974 pushed a commit to Swiss-Armed-Forces/Loom that referenced this pull request Jan 18, 2026
This MR contains the following updates:

| Package | Type | Update | Change | OpenSSF |
|---|---|---|---|---|
| [@mui/x-charts](https://mui.com/x/react-charts/) ([source](https://github.com/mui/mui-x/tree/HEAD/packages/x-charts)) | dependencies | minor | [`8.24.0` → `8.25.0`](https://renovatebot.com/diffs/npm/@mui%2fx-charts/8.24.0/8.25.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/mui-x/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/mui-x) |
| [@mui/x-tree-view](https://mui.com/x/react-tree-view/) ([source](https://github.com/mui/mui-x/tree/HEAD/packages/x-tree-view)) | dependencies | minor | [`8.24.0` → `8.25.0`](https://renovatebot.com/diffs/npm/@mui%2fx-tree-view/8.24.0/8.25.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/mui-x/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/mui-x) |
| [prettier](https://prettier.io) ([source](https://github.com/prettier/prettier)) | devDependencies | minor | [`3.7.4` → `3.8.0`](https://renovatebot.com/diffs/npm/prettier/3.7.4/3.8.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/prettier/prettier/badge)](https://securityscorecards.dev/viewer/?uri=github.com/prettier/prettier) |

---

### Release Notes

<details>
<summary>mui/mui-x (@&#8203;mui/x-charts)</summary>

### [`v8.25.0`](https://github.com/mui/mui-x/blob/HEAD/CHANGELOG.md#8250)

[Compare Source](mui/mui-x@v8.24.0...v8.25.0)

<!-- generated comparing v8.24.0..master -->

*Jan 14, 2026*

We'd like to extend a big thank you to the 8 contributors who made this release possible. Here are some highlights ✨:

- 📊 The Chart legend now has an option that enables [click to toggle visibility](https://mui.com/x/react-charts/legend/#toggle-visibility) of series.

  ![Image](https://github.com/user-attachments/assets/c8250287-1318-4581-ac5d-07e7ee01341c)

- 🐞 Bugfixes

- 📚 Documentation improvements

The following team members contributed to this release:
[@&#8203;alexfauquette](https://github.com/alexfauquette), [@&#8203;arminmeh](https://github.com/arminmeh), [@&#8203;bernardobelchior](https://github.com/bernardobelchior), [@&#8203;cherniavskii](https://github.com/cherniavskii), [@&#8203;JCQuintas](https://github.com/JCQuintas), [@&#8203;mapache-salvaje](https://github.com/mapache-salvaje), [@&#8203;rita-codes](https://github.com/rita-codes), [@&#8203;Janpot](https://github.com/Janpot)

##### Data Grid

##### `@mui/[email protected]`

Internal changes.

##### `@mui/[email protected]` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link "Pro plan")

Same changes as in `@mui/[email protected]`.

##### `@mui/[email protected]` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link "Premium plan")

Same changes as in `@mui/[email protected]`.

##### Date and Time Pickers

##### `@mui/[email protected]`

Internal changes.

##### `@mui/[email protected]` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link "Pro plan")

Same changes as in `@mui/[email protected]`.

##### Charts

##### `@mui/[email protected]`

- \[charts] Add Legend actions ([#&#8203;20404](mui/mui-x#20404)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[charts] Add `initialHiddenItems` prop to set initial state ([#&#8203;20894](mui/mui-x#20894)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[charts] Control the item tooltip ([#&#8203;20617](mui/mui-x#20617)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts] Export plugins from premium ([#&#8203;20866](mui/mui-x#20866)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[charts] Fix node anchor on iOS ([#&#8203;20848](mui/mui-x#20848)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts] Fix test inconsistency in charts ([#&#8203;20907](mui/mui-x#20907)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[charts] Revert `touch-action: pan-y` removal when zoom is disabled ([#&#8203;20852](mui/mui-x#20852)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[charts] Use React event handler to detect pointer type ([#&#8203;20849](mui/mui-x#20849)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts] Enable keyboard navigation in radar chart ([#&#8203;20765](mui/mui-x#20765)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts] Fix tooltip position for stacked line series ([#&#8203;20901](mui/mui-x#20901)) [@&#8203;alexfauquette](https://github.com/alexfauquette)

##### `@mui/[email protected]` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link "Pro plan")

Same changes as in `@mui/[email protected]`, plus:

- \[charts-pro] Add keyboard navigation to funnel ([#&#8203;20766](mui/mui-x#20766)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts-pro] Add keyboard navigation to heatmap ([#&#8203;20786](mui/mui-x#20786)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts-pro] Add keyboard navigation to sankey ([#&#8203;20777](mui/mui-x#20777)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts-pro] Prefer global pointer interaction tracker in Heatmap ([#&#8203;20697](mui/mui-x#20697)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[charts-pro] Support composition for Sankey ([#&#8203;20604](mui/mui-x#20604)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts-pro] Fix crash when two same-direction axes have a zoom preview ([#&#8203;20916](mui/mui-x#20916)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)

##### `@mui/[email protected]` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link "Premium plan")

Same changes as in `@mui/[email protected]`, plus:

- \[charts-premium] Add `ChartContainerPremium` ([#&#8203;20910](mui/mui-x#20910)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[charts-premium] Fix `ChartDataProviderPremium` tests ([#&#8203;20868](mui/mui-x#20868)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)

##### Tree View

##### `@mui/[email protected]`

Internal changes.

##### `@mui/[email protected]` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link "Pro plan")

Same changes as in `@mui/[email protected]`.

##### Codemod

##### `@mui/[email protected]`

Internal changes.

##### Docs

- \[docs] Fix Waterfall Chart documentation badge from Pro to Premium ([#&#8203;20888](mui/mui-x#20888)) [@&#8203;Copilot](https://github.com/Copilot)
- \[docs] Fix broken links on Data Grid Editing sub-pages ([#&#8203;20911](mui/mui-x#20911)) [@&#8203;arminmeh](https://github.com/arminmeh)
- \[docs] Increase chart axis size in docs to fit in Ubuntu Firefox ([#&#8203;20844](mui/mui-x#20844)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[docs] Simplify heatmap zoom demo ([#&#8203;20851](mui/mui-x#20851)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[docs] Revise the Charts Composition doc ([#&#8203;20032](mui/mui-x#20032)) [@&#8203;mapache-salvaje](https://github.com/mapache-salvaje)
- \[docs] Revise the Charts Localization doc ([#&#8203;20800](mui/mui-x#20800)) [@&#8203;mapache-salvaje](https://github.com/mapache-salvaje)
- \[docs] Revise the Charts Stacking doc ([#&#8203;20830](mui/mui-x#20830)) [@&#8203;mapache-salvaje](https://github.com/mapache-salvaje)
- \[docs] Fix broken links ([#&#8203;20914](mui/mui-x#20914)) [@&#8203;Janpot](https://github.com/Janpot)

##### Core

- \[code-infra] Fix `material-ui/disallow-react-api-in-server-components` ([#&#8203;20909](mui/mui-x#20909)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[code-infra] Prepare for v9 ([#&#8203;20860](mui/mui-x#20860)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[code-infra] Update codeowners ([#&#8203;20886](mui/mui-x#20886)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[internal] Remove local Claude settings from the repo ([#&#8203;20853](mui/mui-x#20853)) [@&#8203;cherniavskii](https://github.com/cherniavskii)

</details>

<details>
<summary>prettier/prettier (prettier)</summary>

### [`v3.8.0`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#380)

[Compare Source](prettier/prettier@3.7.4...3.8.0)

[diff](prettier/prettier@3.7.4...3.8.0)

🔗 [Release Notes](https://prettier.io/blog/2026/01/14/3.8.0)

</details>

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi44NC4yIiwidXBkYXRlZEluVmVyIjoiNDIuODQuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGUiXX0=-->

See merge request swiss-armed-forces/cyber-command/cea/loom!253

Co-authored-by: Loom MR Pipeline Trigger <group_103951964_bot_9504bb8dead6d4e406ad817a607f24be@noreply.gitlab.com>
736-c41-2c1-e464fc974 added a commit to Swiss-Armed-Forces/Loom that referenced this pull request Jan 18, 2026
chore(deps): update frontend dependencies (minor) (minor)

This MR contains the following updates:

| Package | Type | Update | Change | OpenSSF |
|---|---|---|---|---|
| [@mui/x-charts](https://mui.com/x/react-charts/) ([source](https://github.com/mui/mui-x/tree/HEAD/packages/x-charts)) | dependencies | minor | [`8.24.0` → `8.25.0`](https://renovatebot.com/diffs/npm/@mui%2fx-charts/8.24.0/8.25.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/mui-x/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/mui-x) |
| [@mui/x-tree-view](https://mui.com/x/react-tree-view/) ([source](https://github.com/mui/mui-x/tree/HEAD/packages/x-tree-view)) | dependencies | minor | [`8.24.0` → `8.25.0`](https://renovatebot.com/diffs/npm/@mui%2fx-tree-view/8.24.0/8.25.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/mui-x/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/mui-x) |
| [prettier](https://prettier.io) ([source](https://github.com/prettier/prettier)) | devDependencies | minor | [`3.7.4` → `3.8.0`](https://renovatebot.com/diffs/npm/prettier/3.7.4/3.8.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/prettier/prettier/badge)](https://securityscorecards.dev/viewer/?uri=github.com/prettier/prettier) |

---

### Release Notes

<details>
<summary>mui/mui-x (@&#8203;mui/x-charts)</summary>

### [`v8.25.0`](https://github.com/mui/mui-x/blob/HEAD/CHANGELOG.md#8250)

[Compare Source](mui/mui-x@v8.24.0...v8.25.0)

<!-- generated comparing v8.24.0..master -->

*Jan 14, 2026*

We'd like to extend a big thank you to the 8 contributors who made this release possible. Here are some highlights ✨:

- 📊 The Chart legend now has an option that enables [click to toggle visibility](https://mui.com/x/react-charts/legend/#toggle-visibility) of series.

  ![Image](https://github.com/user-attachments/assets/c8250287-1318-4581-ac5d-07e7ee01341c)

- 🐞 Bugfixes

- 📚 Documentation improvements

The following team members contributed to this release:
[@&#8203;alexfauquette](https://github.com/alexfauquette), [@&#8203;arminmeh](https://github.com/arminmeh), [@&#8203;bernardobelchior](https://github.com/bernardobelchior), [@&#8203;cherniavskii](https://github.com/cherniavskii), [@&#8203;JCQuintas](https://github.com/JCQuintas), [@&#8203;mapache-salvaje](https://github.com/mapache-salvaje), [@&#8203;rita-codes](https://github.com/rita-codes), [@&#8203;Janpot](https://github.com/Janpot)

##### Data Grid

##### `@mui/[email protected]`

Internal changes.

##### `@mui/[email protected]` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link "Pro plan")

Same changes as in `@mui/[email protected]`.

##### `@mui/[email protected]` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link "Premium plan")

Same changes as in `@mui/[email protected]`.

##### Date and Time Pickers

##### `@mui/[email protected]`

Internal changes.

##### `@mui/[email protected]` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link "Pro plan")

Same changes as in `@mui/[email protected]`.

##### Charts

##### `@mui/[email protected]`

- \[charts] Add Legend actions ([#&#8203;20404](mui/mui-x#20404)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[charts] Add `initialHiddenItems` prop to set initial state ([#&#8203;20894](mui/mui-x#20894)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[charts] Control the item tooltip ([#&#8203;20617](mui/mui-x#20617)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts] Export plugins from premium ([#&#8203;20866](mui/mui-x#20866)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[charts] Fix node anchor on iOS ([#&#8203;20848](mui/mui-x#20848)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts] Fix test inconsistency in charts ([#&#8203;20907](mui/mui-x#20907)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[charts] Revert `touch-action: pan-y` removal when zoom is disabled ([#&#8203;20852](mui/mui-x#20852)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[charts] Use React event handler to detect pointer type ([#&#8203;20849](mui/mui-x#20849)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts] Enable keyboard navigation in radar chart ([#&#8203;20765](mui/mui-x#20765)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts] Fix tooltip position for stacked line series ([#&#8203;20901](mui/mui-x#20901)) [@&#8203;alexfauquette](https://github.com/alexfauquette)

##### `@mui/[email protected]` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link "Pro plan")

Same changes as in `@mui/[email protected]`, plus:

- \[charts-pro] Add keyboard navigation to funnel ([#&#8203;20766](mui/mui-x#20766)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts-pro] Add keyboard navigation to heatmap ([#&#8203;20786](mui/mui-x#20786)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts-pro] Add keyboard navigation to sankey ([#&#8203;20777](mui/mui-x#20777)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts-pro] Prefer global pointer interaction tracker in Heatmap ([#&#8203;20697](mui/mui-x#20697)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[charts-pro] Support composition for Sankey ([#&#8203;20604](mui/mui-x#20604)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts-pro] Fix crash when two same-direction axes have a zoom preview ([#&#8203;20916](mui/mui-x#20916)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)

##### `@mui/[email protected]` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link "Premium plan")

Same changes as in `@mui/[email protected]`, plus:

- \[charts-premium] Add `ChartContainerPremium` ([#&#8203;20910](mui/mui-x#20910)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[charts-premium] Fix `ChartDataProviderPremium` tests ([#&#8203;20868](mui/mui-x#20868)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)

##### Tree View

##### `@mui/[email protected]`

Internal changes.

##### `@mui/[email protected]` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link "Pro plan")

Same changes as in `@mui/[email protected]`.

##### Codemod

##### `@mui/[email protected]`

Internal changes.

##### Docs

- \[docs] Fix Waterfall Chart documentation badge from Pro to Premium ([#&#8203;20888](mui/mui-x#20888)) [@&#8203;Copilot](https://github.com/Copilot)
- \[docs] Fix broken links on Data Grid Editing sub-pages ([#&#8203;20911](mui/mui-x#20911)) [@&#8203;arminmeh](https://github.com/arminmeh)
- \[docs] Increase chart axis size in docs to fit in Ubuntu Firefox ([#&#8203;20844](mui/mui-x#20844)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[docs] Simplify heatmap zoom demo ([#&#8203;20851](mui/mui-x#20851)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[docs] Revise the Charts Composition doc ([#&#8203;20032](mui/mui-x#20032)) [@&#8203;mapache-salvaje](https://github.com/mapache-salvaje)
- \[docs] Revise the Charts Localization doc ([#&#8203;20800](mui/mui-x#20800)) [@&#8203;mapache-salvaje](https://github.com/mapache-salvaje)
- \[docs] Revise the Charts Stacking doc ([#&#8203;20830](mui/mui-x#20830)) [@&#8203;mapache-salvaje](https://github.com/mapache-salvaje)
- \[docs] Fix broken links ([#&#8203;20914](mui/mui-x#20914)) [@&#8203;Janpot](https://github.com/Janpot)

##### Core

- \[code-infra] Fix `material-ui/disallow-react-api-in-server-components` ([#&#8203;20909](mui/mui-x#20909)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[code-infra] Prepare for v9 ([#&#8203;20860](mui/mui-x#20860)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[code-infra] Update codeowners ([#&#8203;20886](mui/mui-x#20886)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[internal] Remove local Claude settings from the repo ([#&#8203;20853](mui/mui-x#20853)) [@&#8203;cherniavskii](https://github.com/cherniavskii)

</details>

<details>
<summary>prettier/prettier (prettier)</summary>

### [`v3.8.0`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#380)

[Compare Source](prettier/prettier@3.7.4...3.8.0)

[diff](prettier/prettier@3.7.4...3.8.0)

🔗 [Release Notes](https://prettier.io/blog/2026/01/14/3.8.0)

</details>

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi44NC4yIiwidXBkYXRlZEluVmVyIjoiNDIuODQuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGUiXX0=-->

See merge request swiss-armed-forces/cyber-command/cea/loom!253

Co-authored-by: Loom MR Pipeline Trigger <group_103951964_bot_9504bb8dead6d4e406ad817a607f24be@noreply.gitlab.com>
Co-authored-by: open-source Pipeline <group_90701827_bot_ed04ae348bc5f40af9966fb8b6867e99@noreply.gitlab.com>
@brijeshb42 brijeshb42 added the plan: Pro Impact at least one Pro user. label Jan 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs Improvements or additions to the documentation. plan: Pro Impact at least one Pro user. scope: charts Changes related to the charts. type: enhancement It’s an improvement, but we can’t make up our mind whether it's a bug fix or a new feature.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants