Skip to content

Conversation

@bernardobelchior
Copy link
Member

@bernardobelchior bernardobelchior commented Jun 11, 2025

Hide values outside minStart and maxEnd in zoom slider, as suggested by @alexfauquette here.

Screen.Recording.2025-06-11.at.17.57.35.mov

@mui-bot
Copy link

mui-bot commented Jun 11, 2025

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

Updated pages:

Bundle size report

Total Size Change: ▼-462B(0.00%) - Total Gzip Change: ▼-419B(-0.01%)
Files: 122 total (0 added, 0 removed, 5 changed)

Show details for 100 more bundles (22 more not shown)

@mui/x-charts-pro/BarChartProparsed: ▼-93B(-0.04%) gzip: ▼-99B(-0.14%)
@mui/x-charts-pro/LineChartProparsed: ▼-93B(-0.04%) gzip: ▼-96B(-0.13%)
@mui/x-charts-proparsed: ▼-92B(-0.03%) gzip: ▼-77B(-0.07%)
@mui/x-charts-pro/ChartZoomSliderparsed: ▼-92B(-0.13%) gzip: ▼-70B(-0.29%)
@mui/x-charts-pro/ScatterChartProparsed: ▼-92B(-0.05%) gzip: ▼-77B(-0.12%)
@mui/x-chartsparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts-pro/ChartContainerProparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts-pro/ChartDataProviderProparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts-pro/ChartsToolbarProparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts-pro/FunnelChartparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts-pro/Heatmapparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts-pro/PieChartProparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts-pro/RadarChartProparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/BarChartparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartContainerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartDataProviderparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsAxisparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsAxisHighlightparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsClipPathparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsGridparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsLabelparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsLegendparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsLocalizationProviderparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsOverlayparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsReferenceLineparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsSurfaceparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsTextparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsTooltipparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsXAxisparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ChartsYAxisparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/Gaugeparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/LineChartparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/PieChartparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/RadarChartparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/ScatterChartparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/SparkLineChartparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-charts/Toolbarparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-data-gridparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-data-grid-premiumparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-data-grid-premium/DataGridPremiumparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-data-grid-proparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-data-grid-pro/DataGridProparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-data-grid/DataGridparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickersparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-proparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/AdapterDateFnsparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/AdapterDateFnsJalaliparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/AdapterDayjsparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/AdapterLuxonparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/AdapterMomentparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/AdapterMomentHijriparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/AdapterMomentJalaaliparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/DateRangeCalendarparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/DateRangePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/DateRangePickerDayparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/DateRangePickerDay2parsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/DateTimeRangePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/DesktopDateRangePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/DesktopDateTimeRangePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/DesktopTimeRangePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/LocalizationProviderparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/MobileDateRangePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/MobileDateTimeRangePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/MobileTimeRangePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/MultiInputDateRangeFieldparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/MultiInputDateTimeRangeFieldparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/MultiInputTimeRangeFieldparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/PickersRangeCalendarHeaderparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/SingleInputDateRangeFieldparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/SingleInputDateTimeRangeFieldparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/SingleInputTimeRangeFieldparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/StaticDateRangePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers-pro/TimeRangePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/AdapterDateFnsparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/AdapterDateFnsBaseparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/AdapterDateFnsJalaliparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/AdapterDayjsparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/AdapterLuxonparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/AdapterMomentparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/AdapterMomentHijriparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/AdapterMomentJalaaliparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/DateCalendarparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/DateFieldparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/DatePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/DateTimeFieldparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/DateTimePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/DayCalendarSkeletonparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/DesktopDatePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/DesktopDateTimePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/DesktopTimePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/DigitalClockparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/LocalizationProviderparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/MobileDatePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/MobileDateTimePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/MobileTimePickerparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/MonthCalendarparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/MultiSectionDigitalClockparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/PickerDay2parsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/PickersActionBarparsed: 0B(0.00%) gzip: 0B(0.00%)
@mui/x-date-pickers/PickersCalendarHeaderparsed: 0B(0.00%) gzip: 0B(0.00%)

Details of bundle changes

Generated by 🚫 dangerJS against 677c11b

@bernardobelchior bernardobelchior added type: enhancement It’s an improvement, but we can’t make up our mind whether it's a bug fix or a new feature. scope: charts Changes related to the charts. labels Jun 11, 2025
@codspeed-hq
Copy link

codspeed-hq bot commented Jun 11, 2025

CodSpeed Performance Report

Merging #18336 will not alter performance

Comparing bernardobelchior:zoom-slider-hide-values-outside-range (677c11b) with master (5285b5a)

Summary

✅ 9 untouched benchmarks

@bernardobelchior bernardobelchior marked this pull request as ready for review June 11, 2025 15:57
);
}

export function calculateZoomFromPointImpl(
Copy link
Member Author

Choose a reason for hiding this comment

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

This separation makes it easier to unit test.

Copy link
Member

Choose a reason for hiding this comment

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

Did you also consider creating calculatePointFromZoomImpl() to simplify the computation in ChartAxisZoomSliderActiveTrack.tsx and have the conversion logic zoom <-> SVG in a single place

Copy link
Member Author

Choose a reason for hiding this comment

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

I don't think I understood your question. calculatePointFromZoom, which uses calculatePointFromZoomImpl is already being used in ChartAxisZoomSliderActiveTrack. Where exactly do you think it would make sense to add it?

Copy link
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 we handle the case where the min/max changes but the current state is over the values? In the example below you can see the bar becomes a bit fidgety 😄

Screen.Recording.2025-06-11.at.19.31.41.mov

@bernardobelchior
Copy link
Member Author

Should we handle the case where the min/max changes but the current state is over the values? In the example below you can see the bar becomes a bit fidgety 😄

Screen.Recording.2025-06-11.at.19.31.41.mov

I think we should, but I think that's a different feature because it should also apply to the zoom data itself, not just visually to the slider, right?

If the zoom is uncontrolled, it should never break any constraint. Then there's the edge case where constraints are invalid: minSpan is 100 and minStart is 10. In that case we should throw in development. In production, I'm not sure. Maybe we should ignore minSpan in that case?

If the zoom is controlled, then we need to decide. My opinion is that we should always meet the constraints. If you have minStart 10 and provide a zoom start of 5, then you'll receive an onChange where zoom start is 10. I think this might be good because we can get controlled data from a URL search param which the end user can manipulate but we don't want the developer to have to worry about out of range values.

However, we can also consider accepting what the user defines. In the URL search param case from above, the developer would need to clamp the values manually.

@alexfauquette @JCQuintas what do you think?

@alexfauquette
Copy link
Member

I tend to think that a control logic should be as dumb as possible. The dev provides something => you apply it.

Otherwise, when they try to do something custom, they must handle our internal logic (and its potential future modifications).

If the zoom constraint got modified the onZoomChange could be called with the new state, but the controlled value stay the reference. Up to the dev to know if they want to apply it or a custom modification to respect the new rules they set themself.


The zoom slider uses the same limits as the zooming options. You can set the `minStart`, `maxEnd`, `minSpan`, and `maxSpan` properties on the axis config to restrict the zoom slider range.

Values outside the `minStart` and `maxEnd` range will not be displayed in the zoom slider.
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
Values outside the `minStart` and `maxEnd` range will not be displayed in the zoom slider.
The `minStart` and `maxEnd` define the extremum of the zoom slider.
Suggested change
Values outside the `minStart` and `maxEnd` range will not be displayed in the zoom slider.
The zoom slider does not display values outside the `minStart` and `maxEnd` range.

);
}

export function calculateZoomFromPointImpl(
Copy link
Member

Choose a reason for hiding this comment

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

Did you also consider creating calculatePointFromZoomImpl() to simplify the computation in ChartAxisZoomSliderActiveTrack.tsx and have the conversion logic zoom <-> SVG in a single place

@JCQuintas
Copy link
Member

I agree with @alexfauquette that the user-controlled one should be fairly dumb.

On the uncontrolled mode, maybe the minStart/maxEnd should have priority over the span. User could only care about where the ends go, eg: minSpan:100,maxSpan:100 to always lock the full zoom. Then minStart:50,maxEnd:100 to lock the zoom on the second half.

Though they could do that by having the zoom controlled 🤔

@bernardobelchior
Copy link
Member Author

On the uncontrolled mode, maybe the minStart/maxEnd should have priority over the span.

I'm ok with this. I just wonder if we should show a warning in dev in case the constraints are incompatible.

to always lock the full zoom.

Why not disable zoom, then?


I looked at Base UI and Material UI.

Base UI updates the value to match the minSpan as soon as the user changes something:

Screen.Recording.2025-06-16.at.09.55.57.mov

Material UI does not support a similar prop, but is has this example, which works similar to Base UI:

Screen.Recording.2025-06-16.at.09.58.49.mov

Basically, they respect min span in event handlers in controlled components, but allow the user to set invalid values.

If I understood correctly, this is what you were advocating for, right?

@JCQuintas
Copy link
Member

If I understood correctly, this is what you were advocating for, right?

Yes 👍

@bernardobelchior bernardobelchior merged commit c4245ec into mui:master Jun 16, 2025
23 checks passed
@bernardobelchior bernardobelchior deleted the zoom-slider-hide-values-outside-range branch June 16, 2025 10:55
736-c41-2c1-e464fc974 pushed a commit to Swiss-Armed-Forces/Loom that referenced this pull request Nov 9, 2025
This MR contains the following updates:

| Package | Type | Update | Change | OpenSSF |
|---|---|---|---|---|
| [@emotion/styled](https://github.com/emotion-js/emotion/tree/main#readme) ([source](https://github.com/emotion-js/emotion)) | dependencies | patch | [`11.14.0` -> `11.14.1`](https://renovatebot.com/diffs/npm/@emotion%2fstyled/11.14.0/11.14.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/emotion-js/emotion/badge)](https://securityscorecards.dev/viewer/?uri=github.com/emotion-js/emotion) |
| [@eslint/compat](https://github.com/eslint/rewrite/tree/main/packages/compat#readme) ([source](https://github.com/eslint/rewrite/tree/HEAD/packages/compat)) | devDependencies | patch | [`1.3.1` -> `1.3.2`](https://renovatebot.com/diffs/npm/@eslint%2fcompat/1.3.1/1.3.2) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/eslint/rewrite/badge)](https://securityscorecards.dev/viewer/?uri=github.com/eslint/rewrite) |
| [@mui/icons-material](https://mui.com/material-ui/material-icons/) ([source](https://github.com/mui/material-ui/tree/HEAD/packages/mui-icons-material)) | dependencies | patch | [`7.1.1` -> `7.1.2`](https://renovatebot.com/diffs/npm/@mui%2ficons-material/7.1.1/7.1.2) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/material-ui/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/material-ui) |
| [@mui/material](https://mui.com/material-ui/) ([source](https://github.com/mui/material-ui/tree/HEAD/packages/mui-material)) | dependencies | patch | [`7.1.1` -> `7.1.2`](https://renovatebot.com/diffs/npm/@mui%2fmaterial/7.1.1/7.1.2) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/material-ui/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/material-ui) |
| [@mui/types](https://github.com/mui/material-ui/tree/master/packages/mui-types) ([source](https://github.com/mui/material-ui/tree/HEAD/packages/mui-types)) | devDependencies | patch | [`7.4.3` -> `7.4.8`](https://renovatebot.com/diffs/npm/@mui%2ftypes/7.4.3/7.4.8) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/material-ui/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/material-ui) |
| [@mui/x-charts](https://mui.com/x/react-charts/) ([source](https://github.com/mui/mui-x/tree/HEAD/packages/x-charts)) | dependencies | patch | [`8.5.2` -> `8.5.3`](https://renovatebot.com/diffs/npm/@mui%2fx-charts/8.5.2/8.5.3) | [![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 | patch | [`8.5.2` -> `8.5.3`](https://renovatebot.com/diffs/npm/@mui%2fx-tree-view/8.5.2/8.5.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/mui-x/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/mui-x) |
| [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) | devDependencies | patch | [`6.6.3` -> `6.6.4`](https://renovatebot.com/diffs/npm/@testing-library%2fjest-dom/6.6.3/6.6.4) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/testing-library/jest-dom/badge)](https://securityscorecards.dev/viewer/?uri=github.com/testing-library/jest-dom) |
| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react)) | devDependencies | patch | [`19.1.8` -> `19.1.17`](https://renovatebot.com/diffs/npm/@types%2freact/19.1.8/19.1.17) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/DefinitelyTyped/DefinitelyTyped/badge)](https://securityscorecards.dev/viewer/?uri=github.com/DefinitelyTyped/DefinitelyTyped) |
| [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-dom) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom)) | devDependencies | patch | [`19.1.6` -> `19.1.11`](https://renovatebot.com/diffs/npm/@types%2freact-dom/19.1.6/19.1.11) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/DefinitelyTyped/DefinitelyTyped/badge)](https://securityscorecards.dev/viewer/?uri=github.com/DefinitelyTyped/DefinitelyTyped) |
| [@typescript-eslint/eslint-plugin](https://typescript-eslint.io/packages/eslint-plugin) ([source](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)) | devDependencies | patch | [`8.39.0` -> `8.39.1`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/8.39.0/8.39.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/typescript-eslint/typescript-eslint/badge)](https://securityscorecards.dev/viewer/?uri=github.com/typescript-eslint/typescript-eslint) |
| [@typescript-eslint/parser](https://typescript-eslint.io/packages/parser) ([source](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)) | devDependencies | patch | [`8.39.0` -> `8.39.1`](https://renovatebot.com/diffs/npm/@typescript-eslint%2fparser/8.39.0/8.39.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/typescript-eslint/typescript-eslint/badge)](https://securityscorecards.dev/viewer/?uri=github.com/typescript-eslint/typescript-eslint) |
| [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) | devDependencies | patch | [`10.1.5` -> `10.1.8`](https://renovatebot.com/diffs/npm/eslint-config-prettier/10.1.5/10.1.8) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/prettier/eslint-config-prettier/badge)](https://securityscorecards.dev/viewer/?uri=github.com/prettier/eslint-config-prettier) |
| [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) | devDependencies | patch | [`5.5.0` -> `5.5.4`](https://renovatebot.com/diffs/npm/eslint-plugin-prettier/5.5.0/5.5.4) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/prettier/eslint-plugin-prettier/badge)](https://securityscorecards.dev/viewer/?uri=github.com/prettier/eslint-plugin-prettier) |
| [eslint-plugin-react-refresh](https://github.com/ArnaudBarre/eslint-plugin-react-refresh) | devDependencies | patch | [`0.4.20` -> `0.4.24`](https://renovatebot.com/diffs/npm/eslint-plugin-react-refresh/0.4.20/0.4.24) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/ArnaudBarre/eslint-plugin-react-refresh/badge)](https://securityscorecards.dev/viewer/?uri=github.com/ArnaudBarre/eslint-plugin-react-refresh) |
| [license-report](https://github.com/kessler/license-report) | devDependencies | patch | [`6.8.0` -> `6.8.1`](https://renovatebot.com/diffs/npm/license-report/6.8.0/6.8.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/kessler/license-report/badge)](https://securityscorecards.dev/viewer/?uri=github.com/kessler/license-report) |
| [react](https://react.dev/) ([source](https://github.com/facebook/react/tree/HEAD/packages/react)) | dependencies | patch | [`19.1.0` -> `19.1.1`](https://renovatebot.com/diffs/npm/react/19.1.0/19.1.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/facebook/react/badge)](https://securityscorecards.dev/viewer/?uri=github.com/facebook/react) |
| [react-dom](https://react.dev/) ([source](https://github.com/facebook/react/tree/HEAD/packages/react-dom)) | dependencies | patch | [`19.1.0` -> `19.1.1`](https://renovatebot.com/diffs/npm/react-dom/19.1.0/19.1.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/facebook/react/badge)](https://securityscorecards.dev/viewer/?uri=github.com/facebook/react) |
| [react-router-dom](https://github.com/remix-run/react-router) ([source](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom)) | dependencies | patch | [`7.6.2` -> `7.6.3`](https://renovatebot.com/diffs/npm/react-router-dom/7.6.2/7.6.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/remix-run/react-router/badge)](https://securityscorecards.dev/viewer/?uri=github.com/remix-run/react-router) |
| [vite](https://vite.dev) ([source](https://github.com/vitejs/vite/tree/HEAD/packages/vite)) | devDependencies | patch | [`6.3.6` -> `6.3.7`](https://renovatebot.com/diffs/npm/vite/6.3.6/6.3.7) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/vitejs/vite/badge)](https://securityscorecards.dev/viewer/?uri=github.com/vitejs/vite) |

---

### Release Notes

<details>
<summary>emotion-js/emotion (@&#8203;emotion/styled)</summary>

### [`v11.14.1`](https://github.com/emotion-js/emotion/releases/tag/%40emotion/styled%4011.14.1)

[Compare Source](https://github.com/emotion-js/emotion/compare/@emotion/styled@11.14.0...@emotion/styled@11.14.1)

##### Patch Changes

- [#&#8203;3334](emotion-js/emotion#3334) [`0facbe4`](emotion-js/emotion@0facbe4) Thanks [@&#8203;ZachRiegel](https://github.com/ZachRiegel)! - Renamed default-exported variable in `@emotion/styled` to aid inferred import names in auto-import completions in IDEs

</details>

<details>
<summary>eslint/rewrite (@&#8203;eslint/compat)</summary>

### [`v1.3.2`](https://github.com/eslint/rewrite/blob/HEAD/packages/compat/CHANGELOG.md#132-2025-08-05)

[Compare Source](eslint/rewrite@0496201...9e68ab6)

##### Dependencies

- The following workspace dependencies were updated
  - devDependencies
    - [@&#8203;eslint/core](https://github.com/eslint/core) bumped from ^0.15.1 to ^0.15.2

</details>

<details>
<summary>mui/material-ui (@&#8203;mui/icons-material)</summary>

### [`v7.1.2`](https://github.com/mui/material-ui/blob/HEAD/CHANGELOG.md#712)

[Compare Source](mui/material-ui@v7.1.1...v7.1.2)

*Jun 18, 2025*

A big thanks to the 2 contributors who made this release possible.

##### `@mui/material@7.1.2`

- \[Chip] Fix handling on event handlers ([#&#8203;46263](mui/material-ui#46263)) [@&#8203;sai6855](https://github.com/sai6855)

##### Docs

- Fix fade modal demo ([#&#8203;46271](mui/material-ui#46271)) [@&#8203;brijeshb42](https://github.com/brijeshb42)

All contributors of this release in alphabetical order: [@&#8203;brijeshb42](https://github.com/brijeshb42), [@&#8203;sai6855](https://github.com/sai6855)

</details>

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

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

[Compare Source](mui/mui-x@v8.5.2...v8.5.3)

*Jun 19, 2025*

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

- 📚 Documentation improvements
- 🐞 Bugfixes

Special thanks go out to the community members for their valuable contributions:
[@&#8203;alisasanib](https://github.com/alisasanib), [@&#8203;arminmeh](https://github.com/arminmeh), [@&#8203;sai6855](https://github.com/sai6855)

The following are all team members who have contributed to this release:
[@&#8203;alexfauquette](https://github.com/alexfauquette), [@&#8203;bernardobelchior](https://github.com/bernardobelchior), [@&#8203;flaviendelangle](https://github.com/flaviendelangle), [@&#8203;JCQuintas](https://github.com/JCQuintas), [@&#8203;LukasTy](https://github.com/LukasTy), [@&#8203;MBilalShafi](https://github.com/MBilalShafi), [@&#8203;oliviertassinari](https://github.com/oliviertassinari)

##### Data Grid

##### `@mui/x-data-grid@8.5.3`

- \[DataGrid] Fix export menu button tooltip being interactive when menu is open ([#&#8203;18327](mui/mui-x#18327)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[DataGrid] Fix column menu scroll close ([#&#8203;18065](mui/mui-x#18065)) [@&#8203;alisasanib](https://github.com/alisasanib)
- \[DataGrid] Fix page size issue with data source ([#&#8203;18419](mui/mui-x#18419)) [@&#8203;MBilalShafi](https://github.com/MBilalShafi)

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

Same changes as in `@mui/x-data-grid@8.5.3`, plus:

- \[DataGridPro] Ignore missing `rowCount` response when new children are fetched with the data source ([#&#8203;17711](mui/mui-x#17711)) [@&#8203;arminmeh](https://github.com/arminmeh)

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

Same changes as in `@mui/x-data-grid-pro@8.5.3`.

##### Date and Time Pickers

##### `@mui/x-date-pickers@8.5.3`

- \[pickers] Add `inputSizeSmall` to classes interface ([#&#8203;18242](mui/mui-x#18242)) [@&#8203;sai6855](https://github.com/sai6855)

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

Same changes as in `@mui/x-date-pickers@8.5.3`.

##### Charts

##### `@mui/x-charts@8.5.3`

- \[charts] Add item class to list item around each series in legend ([#&#8203;18411](mui/mui-x#18411)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[charts] Allow `tabIndex` in surface and legend ([#&#8203;18344](mui/mui-x#18344)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[charts] Explore selector typing ([#&#8203;18362](mui/mui-x#18362)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts] Fix highlight with number ids ([#&#8203;18423](mui/mui-x#18423)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts] Make scatter chart use data attributes ([#&#8203;18048](mui/mui-x#18048)) [@&#8203;alexfauquette](https://github.com/alexfauquette)

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

Same changes as in `@mui/x-charts@8.5.3`, plus:

- \[charts-pro] Add data-series to elements of funnel chart ([#&#8203;18067](mui/mui-x#18067)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[charts-pro] Hide values outside minStart and maxEnd in zoom slider ([#&#8203;18336](mui/mui-x#18336)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[charts-pro] Fix `FunnelChart` label positioning with different curves ([#&#8203;18354](mui/mui-x#18354)) [@&#8203;JCQuintas](https://github.com/JCQuintas)

##### Tree View

##### `@mui/x-tree-view@8.5.3`

Internal changes.

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

Same changes as in `@mui/x-tree-view@8.5.3`.

##### Codemod

##### `@mui/x-codemod@8.5.3`

Internal changes.

##### Docs

- \[docs] Fix 404 in charts docs ([#&#8203;18440](mui/mui-x#18440)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[docs]\[pickers] Fix adapter version resolving when opening demo to edit ([#&#8203;18363](mui/mui-x#18363)) [@&#8203;LukasTy](https://github.com/LukasTy)

##### Core

- \[core] Fix pnpm valelint error ([#&#8203;18420](mui/mui-x#18420)) [@&#8203;oliviertassinari](https://github.com/oliviertassinari)

##### Miscellaneous

- \[code-infra] Add back a `Playwright` renovate group ([#&#8203;18397](mui/mui-x#18397)) [@&#8203;LukasTy](https://github.com/LukasTy)
- \[code-infra] Setup `CODEOWNERS` for charts repositories ([#&#8203;18418](mui/mui-x#18418)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[code-infra] Strengthen `URL` usage for test config ([#&#8203;18444](mui/mui-x#18444)) [@&#8203;LukasTy](https://github.com/LukasTy)
- \[code-infra] Use `vitest` bundled types ([#&#8203;17758](mui/mui-x#17758)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[infra] Stabilise tests by removing babel and plugins from vitest ([#&#8203;18341](mui/mui-x#18341)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[infra] Add automated release MR creation script ([#&#8203;18345](mui/mui-x#18345)) [@&#8203;michelengelen](https://github.com/michelengelen)

</details>

<details>
<summary>testing-library/jest-dom (@&#8203;testing-library/jest-dom)</summary>

### [`v6.6.4`](https://github.com/testing-library/jest-dom/releases/tag/v6.6.4)

[Compare Source](testing-library/jest-dom@v6.6.3...v6.6.4)

##### Performance Improvements

- replace chalk with picocolors ([#&#8203;659](testing-library/jest-dom#659)) ([707e647](testing-library/jest-dom@707e647))

</details>

<details>
<summary>typescript-eslint/typescript-eslint (@&#8203;typescript-eslint/eslint-plugin)</summary>

### [`v8.39.1`](https://github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8391-2025-08-11)

[Compare Source](typescript-eslint/typescript-eslint@v8.39.0...v8.39.1)

This was a version bump only for eslint-plugin to align it with other projects, there were no code changes.

You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website.

</details>

<details>
<summary>typescript-eslint/typescript-eslint (@&#8203;typescript-eslint/parser)</summary>

### [`v8.39.1`](https://github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#8391-2025-08-11)

[Compare Source](typescript-eslint/typescript-eslint@v8.39.0...v8.39.1)

This was a version bump only for parser to align it with other projects, there were no code changes.

You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website.

</details>

<details>
<summary>prettier/eslint-config-prettier (eslint-config-prettier)</summary>

### [`v10.1.8`](https://github.com/prettier/eslint-config-prettier/releases/tag/v10.1.8)

[Compare Source](prettier/eslint-config-prettier@v10.1.5...v10.1.8)

republish latest version

**Full Changelog**: <prettier/eslint-config-prettier@v10.1.5...v10.1.8>

</details>

<details>
<summary>prettier/eslint-plugin-prettier (eslint-plugin-prettier)</summary>

### [`v5.5.4`](https://github.com/prettier/eslint-plugin-prettier/blob/HEAD/CHANGELOG.md#554)

[Compare Source](prettier/eslint-plugin-prettier@v5.5.3...v5.5.4)

##### Patch Changes

- [#&#8203;755](prettier/eslint-plugin-prettier#755) [`723f7a8`](prettier/eslint-plugin-prettier@723f7a8) Thanks [@&#8203;kbrilla](https://github.com/kbrilla)! - fix: add 'oxc', 'oxc-ts' and 'hermes' parsers to `parserBlocklist`

- [#&#8203;751](prettier/eslint-plugin-prettier#751) [`cf52b30`](prettier/eslint-plugin-prettier@cf52b30) Thanks [@&#8203;andreww2012](https://github.com/andreww2012)! - fix: disallow extra properties in rule options

### [`v5.5.3`](https://github.com/prettier/eslint-plugin-prettier/releases/tag/v5.5.3)

[Compare Source](prettier/eslint-plugin-prettier@v5.5.2...v5.5.3)

republish the latest version

**Full Changelog**: <prettier/eslint-plugin-prettier@v5.5.2...v5.5.3>

### [`v5.5.2`](https://github.com/prettier/eslint-plugin-prettier/releases/tag/v5.5.2)

[Compare Source](prettier/eslint-plugin-prettier@v5.5.1...v5.5.2)

republish the latest version

**Full Changelog**: <prettier/eslint-plugin-prettier@v5.5.1...v5.5.2>

### [`v5.5.1`](https://github.com/prettier/eslint-plugin-prettier/blob/HEAD/CHANGELOG.md#551)

[Compare Source](prettier/eslint-plugin-prettier@v5.5.0...v5.5.1)

##### Patch Changes

- [#&#8203;748](prettier/eslint-plugin-prettier#748) [`bfd1e95`](prettier/eslint-plugin-prettier@bfd1e95) Thanks [@&#8203;JounQin](https://github.com/JounQin)! - fix: use `prettierRcOptions` directly for prettier 3.6+

</details>

<details>
<summary>ArnaudBarre/eslint-plugin-react-refresh (eslint-plugin-react-refresh)</summary>

### [`v0.4.24`](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/HEAD/CHANGELOG.md#0424)

[Compare Source](ArnaudBarre/eslint-plugin-react-refresh@v0.4.23...v0.4.24)

- Add `"generateImageMetadata"`, `"generateSitemaps"` & `"generateStaticParams"` to `allowExportNames` in Next config

### [`v0.4.23`](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/HEAD/CHANGELOG.md#0423)

[Compare Source](ArnaudBarre/eslint-plugin-react-refresh@v0.4.22...v0.4.23)

- Add `"metadata"`, `"generateMetadata"` & `"generateViewport"` to `allowExportNames` in Next config

### [`v0.4.22`](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/HEAD/CHANGELOG.md#0422)

[Compare Source](ArnaudBarre/eslint-plugin-react-refresh@v0.4.21...v0.4.22)

- Add `"viewport"` to `allowExportNames` in Next config ([#&#8203;89](ArnaudBarre/eslint-plugin-react-refresh#89))

### [`v0.4.21`](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/HEAD/CHANGELOG.md#0421)

[Compare Source](ArnaudBarre/eslint-plugin-react-refresh@v0.4.20...v0.4.21)

- Add Next config (fixes [#&#8203;85](ArnaudBarre/eslint-plugin-react-refresh#85))

This allows exports like `fetchCache` and `revalidate` which are used in Page or Layout components and don't trigger a full page reload.

```js
import reactRefresh from "eslint-plugin-react-refresh";

export default [
  /* Main config */
  reactRefresh.configs.next,
];
```

</details>

<details>
<summary>kessler/license-report (license-report)</summary>

### [`v6.8.1`](https://github.com/kessler/license-report/blob/HEAD/CHANGELOG.md#681-2025-10-22)

[Compare Source](kessler/license-report@v6.8.0...a51b108)

##### Bug Fixes

- update packages to fix security warnings ([de28bd7](kessler/license-report@de28bd7))

</details>

<details>
<summary>facebook/react (react)</summary>

### [`v19.1.1`](https://github.com/facebook/react/blob/HEAD/CHANGELOG.md#1911-July-28-2025)

[Compare Source](facebook/react@v19.1.0...v19.1.1)

##### React

- Fixed Owner Stacks to work with ES2015 function.name semantics ([#&#8203;33680](facebook/react#33680) by [@&#8203;hoxyq](https://github.com/hoxyq))

</details>

<details>
<summary>remix-run/react-router (react-router-dom)</summary>

### [`v7.6.3`](https://github.com/remix-run/react-router/blob/HEAD/packages/react-router-dom/CHANGELOG.md#763)

[Compare Source](https://github.com/remix-run/react-router/compare/7.6.2...react-router-dom@7.6.3)

##### Patch Changes

- Updated dependencies:
  - `react-router@7.6.3`

</details>

<details>
<summary>vitejs/vite (vite)</summary>

### [`v6.3.7`](https://github.com/vitejs/vite/releases/tag/v6.3.7)

[Compare Source](vitejs/vite@v6.3.6...v6.3.7)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v6.3.7/packages/vite/CHANGELOG.md) for details.

</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:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNzMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE3My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZSJdfQ==-->

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

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

This MR contains the following updates:

| Package | Type | Update | Change | OpenSSF |
|---|---|---|---|---|
| [@emotion/styled](https://github.com/emotion-js/emotion/tree/main#readme) ([source](https://github.com/emotion-js/emotion)) | dependencies | patch | [`11.14.0` -> `11.14.1`](https://renovatebot.com/diffs/npm/@emotion%2fstyled/11.14.0/11.14.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/emotion-js/emotion/badge)](https://securityscorecards.dev/viewer/?uri=github.com/emotion-js/emotion) |
| [@eslint/compat](https://github.com/eslint/rewrite/tree/main/packages/compat#readme) ([source](https://github.com/eslint/rewrite/tree/HEAD/packages/compat)) | devDependencies | patch | [`1.3.1` -> `1.3.2`](https://renovatebot.com/diffs/npm/@eslint%2fcompat/1.3.1/1.3.2) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/eslint/rewrite/badge)](https://securityscorecards.dev/viewer/?uri=github.com/eslint/rewrite) |
| [@mui/icons-material](https://mui.com/material-ui/material-icons/) ([source](https://github.com/mui/material-ui/tree/HEAD/packages/mui-icons-material)) | dependencies | patch | [`7.1.1` -> `7.1.2`](https://renovatebot.com/diffs/npm/@mui%2ficons-material/7.1.1/7.1.2) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/material-ui/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/material-ui) |
| [@mui/material](https://mui.com/material-ui/) ([source](https://github.com/mui/material-ui/tree/HEAD/packages/mui-material)) | dependencies | patch | [`7.1.1` -> `7.1.2`](https://renovatebot.com/diffs/npm/@mui%2fmaterial/7.1.1/7.1.2) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/material-ui/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/material-ui) |
| [@mui/types](https://github.com/mui/material-ui/tree/master/packages/mui-types) ([source](https://github.com/mui/material-ui/tree/HEAD/packages/mui-types)) | devDependencies | patch | [`7.4.3` -> `7.4.8`](https://renovatebot.com/diffs/npm/@mui%2ftypes/7.4.3/7.4.8) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/material-ui/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/material-ui) |
| [@mui/x-charts](https://mui.com/x/react-charts/) ([source](https://github.com/mui/mui-x/tree/HEAD/packages/x-charts)) | dependencies | patch | [`8.5.2` -> `8.5.3`](https://renovatebot.com/diffs/npm/@mui%2fx-charts/8.5.2/8.5.3) | [![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 | patch | [`8.5.2` -> `8.5.3`](https://renovatebot.com/diffs/npm/@mui%2fx-tree-view/8.5.2/8.5.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/mui-x/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/mui-x) |
| [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) | devDependencies | patch | [`6.6.3` -> `6.6.4`](https://renovatebot.com/diffs/npm/@testing-library%2fjest-dom/6.6.3/6.6.4) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/testing-library/jest-dom/badge)](https://securityscorecards.dev/viewer/?uri=github.com/testing-library/jest-dom) |
| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react)) | devDependencies | patch | [`19.1.8` -> `19.1.17`](https://renovatebot.com/diffs/npm/@types%2freact/19.1.8/19.1.17) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/DefinitelyTyped/DefinitelyTyped/badge)](https://securityscorecards.dev/viewer/?uri=github.com/DefinitelyTyped/DefinitelyTyped) |
| [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-dom) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom)) | devDependencies | patch | [`19.1.6` -> `19.1.11`](https://renovatebot.com/diffs/npm/@types%2freact-dom/19.1.6/19.1.11) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/DefinitelyTyped/DefinitelyTyped/badge)](https://securityscorecards.dev/viewer/?uri=github.com/DefinitelyTyped/DefinitelyTyped) |
| [@typescript-eslint/eslint-plugin](https://typescript-eslint.io/packages/eslint-plugin) ([source](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)) | devDependencies | patch | [`8.39.0` -> `8.39.1`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/8.39.0/8.39.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/typescript-eslint/typescript-eslint/badge)](https://securityscorecards.dev/viewer/?uri=github.com/typescript-eslint/typescript-eslint) |
| [@typescript-eslint/parser](https://typescript-eslint.io/packages/parser) ([source](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)) | devDependencies | patch | [`8.39.0` -> `8.39.1`](https://renovatebot.com/diffs/npm/@typescript-eslint%2fparser/8.39.0/8.39.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/typescript-eslint/typescript-eslint/badge)](https://securityscorecards.dev/viewer/?uri=github.com/typescript-eslint/typescript-eslint) |
| [eslint-config-prettier](https://github.com/prettier/eslint-config-prettier) | devDependencies | patch | [`10.1.5` -> `10.1.8`](https://renovatebot.com/diffs/npm/eslint-config-prettier/10.1.5/10.1.8) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/prettier/eslint-config-prettier/badge)](https://securityscorecards.dev/viewer/?uri=github.com/prettier/eslint-config-prettier) |
| [eslint-plugin-prettier](https://github.com/prettier/eslint-plugin-prettier) | devDependencies | patch | [`5.5.0` -> `5.5.4`](https://renovatebot.com/diffs/npm/eslint-plugin-prettier/5.5.0/5.5.4) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/prettier/eslint-plugin-prettier/badge)](https://securityscorecards.dev/viewer/?uri=github.com/prettier/eslint-plugin-prettier) |
| [eslint-plugin-react-refresh](https://github.com/ArnaudBarre/eslint-plugin-react-refresh) | devDependencies | patch | [`0.4.20` -> `0.4.24`](https://renovatebot.com/diffs/npm/eslint-plugin-react-refresh/0.4.20/0.4.24) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/ArnaudBarre/eslint-plugin-react-refresh/badge)](https://securityscorecards.dev/viewer/?uri=github.com/ArnaudBarre/eslint-plugin-react-refresh) |
| [license-report](https://github.com/kessler/license-report) | devDependencies | patch | [`6.8.0` -> `6.8.1`](https://renovatebot.com/diffs/npm/license-report/6.8.0/6.8.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/kessler/license-report/badge)](https://securityscorecards.dev/viewer/?uri=github.com/kessler/license-report) |
| [react](https://react.dev/) ([source](https://github.com/facebook/react/tree/HEAD/packages/react)) | dependencies | patch | [`19.1.0` -> `19.1.1`](https://renovatebot.com/diffs/npm/react/19.1.0/19.1.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/facebook/react/badge)](https://securityscorecards.dev/viewer/?uri=github.com/facebook/react) |
| [react-dom](https://react.dev/) ([source](https://github.com/facebook/react/tree/HEAD/packages/react-dom)) | dependencies | patch | [`19.1.0` -> `19.1.1`](https://renovatebot.com/diffs/npm/react-dom/19.1.0/19.1.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/facebook/react/badge)](https://securityscorecards.dev/viewer/?uri=github.com/facebook/react) |
| [react-router-dom](https://github.com/remix-run/react-router) ([source](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom)) | dependencies | patch | [`7.6.2` -> `7.6.3`](https://renovatebot.com/diffs/npm/react-router-dom/7.6.2/7.6.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/remix-run/react-router/badge)](https://securityscorecards.dev/viewer/?uri=github.com/remix-run/react-router) |
| [vite](https://vite.dev) ([source](https://github.com/vitejs/vite/tree/HEAD/packages/vite)) | devDependencies | patch | [`6.3.6` -> `6.3.7`](https://renovatebot.com/diffs/npm/vite/6.3.6/6.3.7) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/vitejs/vite/badge)](https://securityscorecards.dev/viewer/?uri=github.com/vitejs/vite) |

---

### Release Notes

<details>
<summary>emotion-js/emotion (@&#8203;emotion/styled)</summary>

### [`v11.14.1`](https://github.com/emotion-js/emotion/releases/tag/%40emotion/styled%4011.14.1)

[Compare Source](https://github.com/emotion-js/emotion/compare/@emotion/styled@11.14.0...@emotion/styled@11.14.1)

##### Patch Changes

- [#&#8203;3334](emotion-js/emotion#3334) [`0facbe4`](emotion-js/emotion@0facbe4) Thanks [@&#8203;ZachRiegel](https://github.com/ZachRiegel)! - Renamed default-exported variable in `@emotion/styled` to aid inferred import names in auto-import completions in IDEs

</details>

<details>
<summary>eslint/rewrite (@&#8203;eslint/compat)</summary>

### [`v1.3.2`](https://github.com/eslint/rewrite/blob/HEAD/packages/compat/CHANGELOG.md#132-2025-08-05)

[Compare Source](eslint/rewrite@0496201...9e68ab6)

##### Dependencies

- The following workspace dependencies were updated
  - devDependencies
    - [@&#8203;eslint/core](https://github.com/eslint/core) bumped from ^0.15.1 to ^0.15.2

</details>

<details>
<summary>mui/material-ui (@&#8203;mui/icons-material)</summary>

### [`v7.1.2`](https://github.com/mui/material-ui/blob/HEAD/CHANGELOG.md#712)

[Compare Source](mui/material-ui@v7.1.1...v7.1.2)

*Jun 18, 2025*

A big thanks to the 2 contributors who made this release possible.

##### `@mui/material@7.1.2`

- \[Chip] Fix handling on event handlers ([#&#8203;46263](mui/material-ui#46263)) [@&#8203;sai6855](https://github.com/sai6855)

##### Docs

- Fix fade modal demo ([#&#8203;46271](mui/material-ui#46271)) [@&#8203;brijeshb42](https://github.com/brijeshb42)

All contributors of this release in alphabetical order: [@&#8203;brijeshb42](https://github.com/brijeshb42), [@&#8203;sai6855](https://github.com/sai6855)

</details>

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

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

[Compare Source](mui/mui-x@v8.5.2...v8.5.3)

*Jun 19, 2025*

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

- 📚 Documentation improvements
- 🐞 Bugfixes

Special thanks go out to the community members for their valuable contributions:
[@&#8203;alisasanib](https://github.com/alisasanib), [@&#8203;arminmeh](https://github.com/arminmeh), [@&#8203;sai6855](https://github.com/sai6855)

The following are all team members who have contributed to this release:
[@&#8203;alexfauquette](https://github.com/alexfauquette), [@&#8203;bernardobelchior](https://github.com/bernardobelchior), [@&#8203;flaviendelangle](https://github.com/flaviendelangle), [@&#8203;JCQuintas](https://github.com/JCQuintas), [@&#8203;LukasTy](https://github.com/LukasTy), [@&#8203;MBilalShafi](https://github.com/MBilalShafi), [@&#8203;oliviertassinari](https://github.com/oliviertassinari)

##### Data Grid

##### `@mui/x-data-grid@8.5.3`

- \[DataGrid] Fix export menu button tooltip being interactive when menu is open ([#&#8203;18327](mui/mui-x#18327)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[DataGrid] Fix column menu scroll close ([#&#8203;18065](mui/mui-x#18065)) [@&#8203;alisasanib](https://github.com/alisasanib)
- \[DataGrid] Fix page size issue with data source ([#&#8203;18419](mui/mui-x#18419)) [@&#8203;MBilalShafi](https://github.com/MBilalShafi)

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

Same changes as in `@mui/x-data-grid@8.5.3`, plus:

- \[DataGridPro] Ignore missing `rowCount` response when new children are fetched with the data source ([#&#8203;17711](mui/mui-x#17711)) [@&#8203;arminmeh](https://github.com/arminmeh)

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

Same changes as in `@mui/x-data-grid-pro@8.5.3`.

##### Date and Time Pickers

##### `@mui/x-date-pickers@8.5.3`

- \[pickers] Add `inputSizeSmall` to classes interface ([#&#8203;18242](mui/mui-x#18242)) [@&#8203;sai6855](https://github.com/sai6855)

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

Same changes as in `@mui/x-date-pickers@8.5.3`.

##### Charts

##### `@mui/x-charts@8.5.3`

- \[charts] Add item class to list item around each series in legend ([#&#8203;18411](mui/mui-x#18411)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[charts] Allow `tabIndex` in surface and legend ([#&#8203;18344](mui/mui-x#18344)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[charts] Explore selector typing ([#&#8203;18362](mui/mui-x#18362)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts] Fix highlight with number ids ([#&#8203;18423](mui/mui-x#18423)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[charts] Make scatter chart use data attributes ([#&#8203;18048](mui/mui-x#18048)) [@&#8203;alexfauquette](https://github.com/alexfauquette)

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

Same changes as in `@mui/x-charts@8.5.3`, plus:

- \[charts-pro] Add data-series to elements of funnel chart ([#&#8203;18067](mui/mui-x#18067)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[charts-pro] Hide values outside minStart and maxEnd in zoom slider ([#&#8203;18336](mui/mui-x#18336)) [@&#8203;bernardobelchior](https://github.com/bernardobelchior)
- \[charts-pro] Fix `FunnelChart` label positioning with different curves ([#&#8203;18354](mui/mui-x#18354)) [@&#8203;JCQuintas](https://github.com/JCQuintas)

##### Tree View

##### `@mui/x-tree-view@8.5.3`

Internal changes.

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

Same changes as in `@mui/x-tree-view@8.5.3`.

##### Codemod

##### `@mui/x-codemod@8.5.3`

Internal changes.

##### Docs

- \[docs] Fix 404 in charts docs ([#&#8203;18440](mui/mui-x#18440)) [@&#8203;alexfauquette](https://github.com/alexfauquette)
- \[docs]\[pickers] Fix adapter version resolving when opening demo to edit ([#&#8203;18363](mui/mui-x#18363)) [@&#8203;LukasTy](https://github.com/LukasTy)

##### Core

- \[core] Fix pnpm valelint error ([#&#8203;18420](mui/mui-x#18420)) [@&#8203;oliviertassinari](https://github.com/oliviertassinari)

##### Miscellaneous

- \[code-infra] Add back a `Playwright` renovate group ([#&#8203;18397](mui/mui-x#18397)) [@&#8203;LukasTy](https://github.com/LukasTy)
- \[code-infra] Setup `CODEOWNERS` for charts repositories ([#&#8203;18418](mui/mui-x#18418)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[code-infra] Strengthen `URL` usage for test config ([#&#8203;18444](mui/mui-x#18444)) [@&#8203;LukasTy](https://github.com/LukasTy)
- \[code-infra] Use `vitest` bundled types ([#&#8203;17758](mui/mui-x#17758)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[infra] Stabilise tests by removing babel and plugins from vitest ([#&#8203;18341](mui/mui-x#18341)) [@&#8203;JCQuintas](https://github.com/JCQuintas)
- \[infra] Add automated release MR creation script ([#&#8203;18345](mui/mui-x#18345)) [@&#8203;michelengelen](https://github.com/michelengelen)

</details>

<details>
<summary>testing-library/jest-dom (@&#8203;testing-library/jest-dom)</summary>

### [`v6.6.4`](https://github.com/testing-library/jest-dom/releases/tag/v6.6.4)

[Compare Source](testing-library/jest-dom@v6.6.3...v6.6.4)

##### Performance Improvements

- replace chalk with picocolors ([#&#8203;659](testing-library/jest-dom#659)) ([707e647](testing-library/jest-dom@707e647))

</details>

<details>
<summary>typescript-eslint/typescript-eslint (@&#8203;typescript-eslint/eslint-plugin)</summary>

### [`v8.39.1`](https://github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8391-2025-08-11)

[Compare Source](typescript-eslint/typescript-eslint@v8.39.0...v8.39.1)

This was a version bump only for eslint-plugin to align it with other projects, there were no code changes.

You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website.

</details>

<details>
<summary>typescript-eslint/typescript-eslint (@&#8203;typescript-eslint/parser)</summary>

### [`v8.39.1`](https://github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#8391-2025-08-11)

[Compare Source](typescript-eslint/typescript-eslint@v8.39.0...v8.39.1)

This was a version bump only for parser to align it with other projects, there were no code changes.

You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website.

</details>

<details>
<summary>prettier/eslint-config-prettier (eslint-config-prettier)</summary>

### [`v10.1.8`](https://github.com/prettier/eslint-config-prettier/releases/tag/v10.1.8)

[Compare Source](prettier/eslint-config-prettier@v10.1.5...v10.1.8)

republish latest version

**Full Changelog**: <prettier/eslint-config-prettier@v10.1.5...v10.1.8>

</details>

<details>
<summary>prettier/eslint-plugin-prettier (eslint-plugin-prettier)</summary>

### [`v5.5.4`](https://github.com/prettier/eslint-plugin-prettier/blob/HEAD/CHANGELOG.md#554)

[Compare Source](prettier/eslint-plugin-prettier@v5.5.3...v5.5.4)

##### Patch Changes

- [#&#8203;755](prettier/eslint-plugin-prettier#755) [`723f7a8`](prettier/eslint-plugin-prettier@723f7a8) Thanks [@&#8203;kbrilla](https://github.com/kbrilla)! - fix: add 'oxc', 'oxc-ts' and 'hermes' parsers to `parserBlocklist`

- [#&#8203;751](prettier/eslint-plugin-prettier#751) [`cf52b30`](prettier/eslint-plugin-prettier@cf52b30) Thanks [@&#8203;andreww2012](https://github.com/andreww2012)! - fix: disallow extra properties in rule options

### [`v5.5.3`](https://github.com/prettier/eslint-plugin-prettier/releases/tag/v5.5.3)

[Compare Source](prettier/eslint-plugin-prettier@v5.5.2...v5.5.3)

republish the latest version

**Full Changelog**: <prettier/eslint-plugin-prettier@v5.5.2...v5.5.3>

### [`v5.5.2`](https://github.com/prettier/eslint-plugin-prettier/releases/tag/v5.5.2)

[Compare Source](prettier/eslint-plugin-prettier@v5.5.1...v5.5.2)

republish the latest version

**Full Changelog**: <prettier/eslint-plugin-prettier@v5.5.1...v5.5.2>

### [`v5.5.1`](https://github.com/prettier/eslint-plugin-prettier/blob/HEAD/CHANGELOG.md#551)

[Compare Source](prettier/eslint-plugin-prettier@v5.5.0...v5.5.1)

##### Patch Changes

- [#&#8203;748](prettier/eslint-plugin-prettier#748) [`bfd1e95`](prettier/eslint-plugin-prettier@bfd1e95) Thanks [@&#8203;JounQin](https://github.com/JounQin)! - fix: use `prettierRcOptions` directly for prettier 3.6+

</details>

<details>
<summary>ArnaudBarre/eslint-plugin-react-refresh (eslint-plugin-react-refresh)</summary>

### [`v0.4.24`](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/HEAD/CHANGELOG.md#0424)

[Compare Source](ArnaudBarre/eslint-plugin-react-refresh@v0.4.23...v0.4.24)

- Add `"generateImageMetadata"`, `"generateSitemaps"` & `"generateStaticParams"` to `allowExportNames` in Next config

### [`v0.4.23`](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/HEAD/CHANGELOG.md#0423)

[Compare Source](ArnaudBarre/eslint-plugin-react-refresh@v0.4.22...v0.4.23)

- Add `"metadata"`, `"generateMetadata"` & `"generateViewport"` to `allowExportNames` in Next config

### [`v0.4.22`](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/HEAD/CHANGELOG.md#0422)

[Compare Source](ArnaudBarre/eslint-plugin-react-refresh@v0.4.21...v0.4.22)

- Add `"viewport"` to `allowExportNames` in Next config ([#&#8203;89](ArnaudBarre/eslint-plugin-react-refresh#89))

### [`v0.4.21`](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/HEAD/CHANGELOG.md#0421)

[Compare Source](ArnaudBarre/eslint-plugin-react-refresh@v0.4.20...v0.4.21)

- Add Next config (fixes [#&#8203;85](ArnaudBarre/eslint-plugin-react-refresh#85))

This allows exports like `fetchCache` and `revalidate` which are used in Page or Layout components and don't trigger a full page reload.

```js
import reactRefresh from "eslint-plugin-react-refresh";

export default [
  /* Main config */
  reactRefresh.configs.next,
];
```

</details>

<details>
<summary>kessler/license-report (license-report)</summary>

### [`v6.8.1`](https://github.com/kessler/license-report/blob/HEAD/CHANGELOG.md#681-2025-10-22)

[Compare Source](kessler/license-report@v6.8.0...a51b108)

##### Bug Fixes

- update packages to fix security warnings ([de28bd7](kessler/license-report@de28bd7))

</details>

<details>
<summary>facebook/react (react)</summary>

### [`v19.1.1`](https://github.com/facebook/react/blob/HEAD/CHANGELOG.md#1911-July-28-2025)

[Compare Source](facebook/react@v19.1.0...v19.1.1)

##### React

- Fixed Owner Stacks to work with ES2015 function.name semantics ([#&#8203;33680](facebook/react#33680) by [@&#8203;hoxyq](https://github.com/hoxyq))

</details>

<details>
<summary>remix-run/react-router (react-router-dom)</summary>

### [`v7.6.3`](https://github.com/remix-run/react-router/blob/HEAD/packages/react-router-dom/CHANGELOG.md#763)

[Compare Source](https://github.com/remix-run/react-router/compare/7.6.2...react-router-dom@7.6.3)

##### Patch Changes

- Updated dependencies:
  - `react-router@7.6.3`

</details>

<details>
<summary>vitejs/vite (vite)</summary>

### [`v6.3.7`](https://github.com/vitejs/vite/releases/tag/v6.3.7)

[Compare Source](vitejs/vite@v6.3.6...v6.3.7)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v6.3.7/packages/vite/CHANGELOG.md) for details.

</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:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNzMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE3My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZSJdfQ==-->

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

Co-authored-by: MR Pipeline Trigger <project_68343701_bot_de78978064b739a70429c86b33fe4a76@noreply.gitlab.com>
Co-authored-by: open-source Pipeline <group_90701827_bot_ed04ae348bc5f40af9966fb8b6867e99@noreply.gitlab.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

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.

4 participants