-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
[charts-pro] Hide values outside minStart and maxEnd in zoom slider #18336
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[charts-pro] Hide values outside minStart and maxEnd in zoom slider #18336
Conversation
|
Deploy preview: https://deploy-preview-18336--material-ui-x.netlify.app/ Updated pages: Bundle size reportTotal Size Change: ▼-462B(0.00%) - Total Gzip Change: ▼-419B(-0.01%) Show details for 100 more bundles (22 more not shown)@mui/x-charts-pro/BarChartPro parsed: ▼-93B(-0.04%) gzip: ▼-99B(-0.14%) |
CodSpeed Performance ReportMerging #18336 will not alter performanceComparing Summary
|
| ); | ||
| } | ||
|
|
||
| export function calculateZoomFromPointImpl( |
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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
There was a problem hiding this comment.
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?
JCQuintas
left a comment
There was a problem hiding this 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
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? |
|
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 |
|
|
||
| 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. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| 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. |
| 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( |
There was a problem hiding this comment.
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
|
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 Though they could do that by having the zoom controlled 🤔 |
I'm ok with this. I just wonder if we should show a warning in dev in case the constraints are incompatible.
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.movMaterial 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.movBasically, 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? |
Yes 👍 |
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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](https://securityscorecards.dev/viewer/?uri=github.com/vitejs/vite) | --- ### Release Notes <details> <summary>emotion-js/emotion (@​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 - [#​3334](emotion-js/emotion#3334) [`0facbe4`](emotion-js/emotion@0facbe4) Thanks [@​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 (@​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 - [@​eslint/core](https://github.com/eslint/core) bumped from ^0.15.1 to ^0.15.2 </details> <details> <summary>mui/material-ui (@​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 ([#​46263](mui/material-ui#46263)) [@​sai6855](https://github.com/sai6855) ##### Docs - Fix fade modal demo ([#​46271](mui/material-ui#46271)) [@​brijeshb42](https://github.com/brijeshb42) All contributors of this release in alphabetical order: [@​brijeshb42](https://github.com/brijeshb42), [@​sai6855](https://github.com/sai6855) </details> <details> <summary>mui/mui-x (@​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: [@​alisasanib](https://github.com/alisasanib), [@​arminmeh](https://github.com/arminmeh), [@​sai6855](https://github.com/sai6855) The following are all team members who have contributed to this release: [@​alexfauquette](https://github.com/alexfauquette), [@​bernardobelchior](https://github.com/bernardobelchior), [@​flaviendelangle](https://github.com/flaviendelangle), [@​JCQuintas](https://github.com/JCQuintas), [@​LukasTy](https://github.com/LukasTy), [@​MBilalShafi](https://github.com/MBilalShafi), [@​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 ([#​18327](mui/mui-x#18327)) [@​bernardobelchior](https://github.com/bernardobelchior) - \[DataGrid] Fix column menu scroll close ([#​18065](mui/mui-x#18065)) [@​alisasanib](https://github.com/alisasanib) - \[DataGrid] Fix page size issue with data source ([#​18419](mui/mui-x#18419)) [@​MBilalShafi](https://github.com/MBilalShafi) ##### `@mui/x-data-grid-pro@8.5.3` [](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 ([#​17711](mui/mui-x#17711)) [@​arminmeh](https://github.com/arminmeh) ##### `@mui/x-data-grid-premium@8.5.3` [](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 ([#​18242](mui/mui-x#18242)) [@​sai6855](https://github.com/sai6855) ##### `@mui/x-date-pickers-pro@8.5.3` [](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 ([#​18411](mui/mui-x#18411)) [@​bernardobelchior](https://github.com/bernardobelchior) - \[charts] Allow `tabIndex` in surface and legend ([#​18344](mui/mui-x#18344)) [@​JCQuintas](https://github.com/JCQuintas) - \[charts] Explore selector typing ([#​18362](mui/mui-x#18362)) [@​alexfauquette](https://github.com/alexfauquette) - \[charts] Fix highlight with number ids ([#​18423](mui/mui-x#18423)) [@​alexfauquette](https://github.com/alexfauquette) - \[charts] Make scatter chart use data attributes ([#​18048](mui/mui-x#18048)) [@​alexfauquette](https://github.com/alexfauquette) ##### `@mui/x-charts-pro@8.5.3` [](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 ([#​18067](mui/mui-x#18067)) [@​JCQuintas](https://github.com/JCQuintas) - \[charts-pro] Hide values outside minStart and maxEnd in zoom slider ([#​18336](mui/mui-x#18336)) [@​bernardobelchior](https://github.com/bernardobelchior) - \[charts-pro] Fix `FunnelChart` label positioning with different curves ([#​18354](mui/mui-x#18354)) [@​JCQuintas](https://github.com/JCQuintas) ##### Tree View ##### `@mui/x-tree-view@8.5.3` Internal changes. ##### `@mui/x-tree-view-pro@8.5.3` [](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 ([#​18440](mui/mui-x#18440)) [@​alexfauquette](https://github.com/alexfauquette) - \[docs]\[pickers] Fix adapter version resolving when opening demo to edit ([#​18363](mui/mui-x#18363)) [@​LukasTy](https://github.com/LukasTy) ##### Core - \[core] Fix pnpm valelint error ([#​18420](mui/mui-x#18420)) [@​oliviertassinari](https://github.com/oliviertassinari) ##### Miscellaneous - \[code-infra] Add back a `Playwright` renovate group ([#​18397](mui/mui-x#18397)) [@​LukasTy](https://github.com/LukasTy) - \[code-infra] Setup `CODEOWNERS` for charts repositories ([#​18418](mui/mui-x#18418)) [@​JCQuintas](https://github.com/JCQuintas) - \[code-infra] Strengthen `URL` usage for test config ([#​18444](mui/mui-x#18444)) [@​LukasTy](https://github.com/LukasTy) - \[code-infra] Use `vitest` bundled types ([#​17758](mui/mui-x#17758)) [@​JCQuintas](https://github.com/JCQuintas) - \[infra] Stabilise tests by removing babel and plugins from vitest ([#​18341](mui/mui-x#18341)) [@​JCQuintas](https://github.com/JCQuintas) - \[infra] Add automated release MR creation script ([#​18345](mui/mui-x#18345)) [@​michelengelen](https://github.com/michelengelen) </details> <details> <summary>testing-library/jest-dom (@​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 ([#​659](testing-library/jest-dom#659)) ([707e647](testing-library/jest-dom@707e647)) </details> <details> <summary>typescript-eslint/typescript-eslint (@​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 (@​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 - [#​755](prettier/eslint-plugin-prettier#755) [`723f7a8`](prettier/eslint-plugin-prettier@723f7a8) Thanks [@​kbrilla](https://github.com/kbrilla)! - fix: add 'oxc', 'oxc-ts' and 'hermes' parsers to `parserBlocklist` - [#​751](prettier/eslint-plugin-prettier#751) [`cf52b30`](prettier/eslint-plugin-prettier@cf52b30) Thanks [@​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 - [#​748](prettier/eslint-plugin-prettier#748) [`bfd1e95`](prettier/eslint-plugin-prettier@bfd1e95) Thanks [@​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 ([#​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 [#​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 ([#​33680](facebook/react#33680) by [@​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>
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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](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) | [](https://securityscorecards.dev/viewer/?uri=github.com/vitejs/vite) | --- ### Release Notes <details> <summary>emotion-js/emotion (@​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 - [#​3334](emotion-js/emotion#3334) [`0facbe4`](emotion-js/emotion@0facbe4) Thanks [@​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 (@​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 - [@​eslint/core](https://github.com/eslint/core) bumped from ^0.15.1 to ^0.15.2 </details> <details> <summary>mui/material-ui (@​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 ([#​46263](mui/material-ui#46263)) [@​sai6855](https://github.com/sai6855) ##### Docs - Fix fade modal demo ([#​46271](mui/material-ui#46271)) [@​brijeshb42](https://github.com/brijeshb42) All contributors of this release in alphabetical order: [@​brijeshb42](https://github.com/brijeshb42), [@​sai6855](https://github.com/sai6855) </details> <details> <summary>mui/mui-x (@​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: [@​alisasanib](https://github.com/alisasanib), [@​arminmeh](https://github.com/arminmeh), [@​sai6855](https://github.com/sai6855) The following are all team members who have contributed to this release: [@​alexfauquette](https://github.com/alexfauquette), [@​bernardobelchior](https://github.com/bernardobelchior), [@​flaviendelangle](https://github.com/flaviendelangle), [@​JCQuintas](https://github.com/JCQuintas), [@​LukasTy](https://github.com/LukasTy), [@​MBilalShafi](https://github.com/MBilalShafi), [@​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 ([#​18327](mui/mui-x#18327)) [@​bernardobelchior](https://github.com/bernardobelchior) - \[DataGrid] Fix column menu scroll close ([#​18065](mui/mui-x#18065)) [@​alisasanib](https://github.com/alisasanib) - \[DataGrid] Fix page size issue with data source ([#​18419](mui/mui-x#18419)) [@​MBilalShafi](https://github.com/MBilalShafi) ##### `@mui/x-data-grid-pro@8.5.3` [](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 ([#​17711](mui/mui-x#17711)) [@​arminmeh](https://github.com/arminmeh) ##### `@mui/x-data-grid-premium@8.5.3` [](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 ([#​18242](mui/mui-x#18242)) [@​sai6855](https://github.com/sai6855) ##### `@mui/x-date-pickers-pro@8.5.3` [](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 ([#​18411](mui/mui-x#18411)) [@​bernardobelchior](https://github.com/bernardobelchior) - \[charts] Allow `tabIndex` in surface and legend ([#​18344](mui/mui-x#18344)) [@​JCQuintas](https://github.com/JCQuintas) - \[charts] Explore selector typing ([#​18362](mui/mui-x#18362)) [@​alexfauquette](https://github.com/alexfauquette) - \[charts] Fix highlight with number ids ([#​18423](mui/mui-x#18423)) [@​alexfauquette](https://github.com/alexfauquette) - \[charts] Make scatter chart use data attributes ([#​18048](mui/mui-x#18048)) [@​alexfauquette](https://github.com/alexfauquette) ##### `@mui/x-charts-pro@8.5.3` [](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 ([#​18067](mui/mui-x#18067)) [@​JCQuintas](https://github.com/JCQuintas) - \[charts-pro] Hide values outside minStart and maxEnd in zoom slider ([#​18336](mui/mui-x#18336)) [@​bernardobelchior](https://github.com/bernardobelchior) - \[charts-pro] Fix `FunnelChart` label positioning with different curves ([#​18354](mui/mui-x#18354)) [@​JCQuintas](https://github.com/JCQuintas) ##### Tree View ##### `@mui/x-tree-view@8.5.3` Internal changes. ##### `@mui/x-tree-view-pro@8.5.3` [](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 ([#​18440](mui/mui-x#18440)) [@​alexfauquette](https://github.com/alexfauquette) - \[docs]\[pickers] Fix adapter version resolving when opening demo to edit ([#​18363](mui/mui-x#18363)) [@​LukasTy](https://github.com/LukasTy) ##### Core - \[core] Fix pnpm valelint error ([#​18420](mui/mui-x#18420)) [@​oliviertassinari](https://github.com/oliviertassinari) ##### Miscellaneous - \[code-infra] Add back a `Playwright` renovate group ([#​18397](mui/mui-x#18397)) [@​LukasTy](https://github.com/LukasTy) - \[code-infra] Setup `CODEOWNERS` for charts repositories ([#​18418](mui/mui-x#18418)) [@​JCQuintas](https://github.com/JCQuintas) - \[code-infra] Strengthen `URL` usage for test config ([#​18444](mui/mui-x#18444)) [@​LukasTy](https://github.com/LukasTy) - \[code-infra] Use `vitest` bundled types ([#​17758](mui/mui-x#17758)) [@​JCQuintas](https://github.com/JCQuintas) - \[infra] Stabilise tests by removing babel and plugins from vitest ([#​18341](mui/mui-x#18341)) [@​JCQuintas](https://github.com/JCQuintas) - \[infra] Add automated release MR creation script ([#​18345](mui/mui-x#18345)) [@​michelengelen](https://github.com/michelengelen) </details> <details> <summary>testing-library/jest-dom (@​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 ([#​659](testing-library/jest-dom#659)) ([707e647](testing-library/jest-dom@707e647)) </details> <details> <summary>typescript-eslint/typescript-eslint (@​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 (@​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 - [#​755](prettier/eslint-plugin-prettier#755) [`723f7a8`](prettier/eslint-plugin-prettier@723f7a8) Thanks [@​kbrilla](https://github.com/kbrilla)! - fix: add 'oxc', 'oxc-ts' and 'hermes' parsers to `parserBlocklist` - [#​751](prettier/eslint-plugin-prettier#751) [`cf52b30`](prettier/eslint-plugin-prettier@cf52b30) Thanks [@​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 - [#​748](prettier/eslint-plugin-prettier#748) [`bfd1e95`](prettier/eslint-plugin-prettier@bfd1e95) Thanks [@​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 ([#​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 [#​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 ([#​33680](facebook/react#33680) by [@​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>
Hide values outside minStart and maxEnd in zoom slider, as suggested by @alexfauquette here.
Screen.Recording.2025-06-11.at.17.57.35.mov