@mui/x-charts 9.0.2 → 9.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BarChart/BarChart.js +2 -1
- package/BarChart/BarChart.mjs +2 -1
- package/BarChart/BarPlot.js +2 -1
- package/BarChart/BarPlot.mjs +2 -1
- package/BarChart/FocusedBar.js +3 -0
- package/BarChart/FocusedBar.mjs +3 -0
- package/BarChart/seriesConfig/bar/getSeriesWithDefaultValues.d.mts +8 -8
- package/BarChart/seriesConfig/bar/getSeriesWithDefaultValues.d.ts +8 -8
- package/CHANGELOG.md +223 -0
- package/ChartsRadialGrid/ChartsRadialGrid.js +2 -0
- package/ChartsRadialGrid/ChartsRadialGrid.mjs +2 -0
- package/ChartsRadialGrid/ChartsRadiusGrid.d.mts +1 -0
- package/ChartsRadialGrid/ChartsRadiusGrid.d.ts +1 -0
- package/ChartsRadialGrid/ChartsRadiusGrid.js +1 -2
- package/ChartsRadialGrid/ChartsRadiusGrid.mjs +1 -2
- package/ChartsRadiusAxis/ChartsRadiusAxis.d.mts +48 -0
- package/ChartsRadiusAxis/ChartsRadiusAxis.d.ts +48 -0
- package/ChartsRadiusAxis/ChartsRadiusAxis.js +147 -0
- package/ChartsRadiusAxis/ChartsRadiusAxis.mjs +141 -0
- package/ChartsRadiusAxis/chartsRadiusAxisClasses.d.mts +6 -0
- package/ChartsRadiusAxis/chartsRadiusAxisClasses.d.ts +6 -0
- package/ChartsRadiusAxis/chartsRadiusAxisClasses.js +30 -0
- package/ChartsRadiusAxis/chartsRadiusAxisClasses.mjs +17 -0
- package/ChartsRadiusAxis/createGetLabelTextAnchors.d.mts +10 -0
- package/ChartsRadiusAxis/createGetLabelTextAnchors.d.ts +10 -0
- package/ChartsRadiusAxis/createGetLabelTextAnchors.js +46 -0
- package/ChartsRadiusAxis/createGetLabelTextAnchors.mjs +39 -0
- package/ChartsRadiusAxis/getLabelTransform.d.mts +11 -0
- package/ChartsRadiusAxis/getLabelTransform.d.ts +11 -0
- package/ChartsRadiusAxis/getLabelTransform.js +37 -0
- package/ChartsRadiusAxis/getLabelTransform.mjs +31 -0
- package/ChartsRadiusAxis/index.d.mts +3 -0
- package/ChartsRadiusAxis/index.d.ts +3 -0
- package/ChartsRadiusAxis/index.js +19 -0
- package/ChartsRadiusAxis/index.mjs +2 -0
- package/ChartsRadiusAxis/sharedRadialAxisClasses.d.mts +21 -0
- package/ChartsRadiusAxis/sharedRadialAxisClasses.d.ts +21 -0
- package/ChartsRadiusAxis/sharedRadialAxisClasses.js +14 -0
- package/ChartsRadiusAxis/sharedRadialAxisClasses.mjs +6 -0
- package/ChartsRotationAxis/ChartsRotationAxis.d.mts +48 -0
- package/ChartsRotationAxis/ChartsRotationAxis.d.ts +48 -0
- package/ChartsRotationAxis/ChartsRotationAxis.js +141 -0
- package/ChartsRotationAxis/ChartsRotationAxis.mjs +135 -0
- package/ChartsRotationAxis/chartsRotationAxisClasses.d.mts +5 -0
- package/ChartsRotationAxis/chartsRotationAxisClasses.d.ts +5 -0
- package/ChartsRotationAxis/chartsRotationAxisClasses.js +29 -0
- package/ChartsRotationAxis/chartsRotationAxisClasses.mjs +16 -0
- package/ChartsRotationAxis/getLabelTransform.d.mts +11 -0
- package/ChartsRotationAxis/getLabelTransform.d.ts +11 -0
- package/ChartsRotationAxis/getLabelTransform.js +37 -0
- package/ChartsRotationAxis/getLabelTransform.mjs +31 -0
- package/ChartsRotationAxis/index.d.mts +2 -0
- package/ChartsRotationAxis/index.d.ts +2 -0
- package/ChartsRotationAxis/index.js +19 -0
- package/ChartsRotationAxis/index.mjs +2 -0
- package/ChartsTooltip/useAxesTooltip.js +18 -7
- package/ChartsTooltip/useAxesTooltip.mjs +19 -8
- package/ChartsTooltip/useItemTooltip.d.mts +1 -1
- package/ChartsTooltip/useItemTooltip.d.ts +1 -1
- package/ChartsTooltip/useItemTooltip.js +17 -2
- package/ChartsTooltip/useItemTooltip.mjs +18 -3
- package/ChartsXAxis/useAxisTicksProps.d.mts +245 -164
- package/ChartsXAxis/useAxisTicksProps.d.ts +245 -164
- package/ChartsYAxis/useAxisTicksProps.d.mts +245 -164
- package/ChartsYAxis/useAxisTicksProps.d.ts +245 -164
- package/LineChart/FocusedLineMark.js +3 -0
- package/LineChart/FocusedLineMark.mjs +3 -0
- package/LineChart/seriesConfig/curveEvaluation.js +24 -19
- package/LineChart/seriesConfig/curveEvaluation.mjs +24 -19
- package/LineChart/seriesConfig/getItemAtPosition.js +25 -37
- package/LineChart/seriesConfig/getItemAtPosition.mjs +24 -36
- package/LineChart/seriesConfig/getSeriesWithDefaultValues.js +4 -6
- package/LineChart/seriesConfig/getSeriesWithDefaultValues.mjs +4 -6
- package/LineChart/seriesConfig/seriesProcessor.d.mts +4 -2
- package/LineChart/seriesConfig/seriesProcessor.d.ts +4 -2
- package/LineChart/seriesConfig/seriesProcessor.js +2 -2
- package/LineChart/seriesConfig/seriesProcessor.mjs +2 -2
- package/PieChart/FocusedPieArc.js +3 -0
- package/PieChart/FocusedPieArc.mjs +3 -0
- package/RadarChart/FocusedRadarMark.js +3 -0
- package/RadarChart/FocusedRadarMark.mjs +3 -0
- package/RadarChart/RadarSeriesPlot/useRadarSeriesData.d.mts +2 -2
- package/RadarChart/RadarSeriesPlot/useRadarSeriesData.d.ts +2 -2
- package/ScatterChart/FocusedScatterMark.js +3 -0
- package/ScatterChart/FocusedScatterMark.mjs +3 -0
- package/hooks/useAxis.d.mts +2 -2
- package/hooks/useAxis.d.ts +2 -2
- package/index.d.mts +2 -0
- package/index.d.ts +2 -0
- package/index.js +22 -2
- package/index.mjs +3 -1
- package/internals/commonNextFocusItem.js +62 -8
- package/internals/commonNextFocusItem.mjs +62 -8
- package/internals/cubiqSolver.d.mts +5 -0
- package/internals/cubiqSolver.d.ts +5 -0
- package/internals/cubiqSolver.js +62 -0
- package/internals/cubiqSolver.mjs +56 -0
- package/internals/findClosestIndex.d.mts +5 -0
- package/internals/findClosestIndex.d.ts +5 -0
- package/internals/findClosestIndex.js +27 -0
- package/internals/findClosestIndex.mjs +22 -0
- package/internals/getAsNumber.d.mts +1 -0
- package/internals/getAsNumber.d.ts +1 -0
- package/internals/getAsNumber.js +9 -0
- package/internals/getAsNumber.mjs +3 -0
- package/internals/index.d.mts +6 -1
- package/internals/index.d.ts +6 -1
- package/internals/index.js +59 -2
- package/internals/index.mjs +6 -1
- package/internals/isPolar.d.mts +3 -2
- package/internals/isPolar.d.ts +3 -2
- package/internals/isPolar.js +4 -0
- package/internals/isPolar.mjs +3 -0
- package/internals/plugins/corePlugins/useChartSeriesConfig/types/colorProcessor.types.d.mts +8 -9
- package/internals/plugins/corePlugins/useChartSeriesConfig/types/colorProcessor.types.d.ts +8 -9
- package/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisValue.js +4 -21
- package/internals/plugins/featurePlugins/useChartCartesianAxis/getAxisValue.mjs +4 -21
- package/internals/plugins/featurePlugins/useChartKeyboardNavigation/utils/findVisibleDataIndex.d.mts +30 -0
- package/internals/plugins/featurePlugins/useChartKeyboardNavigation/utils/findVisibleDataIndex.d.ts +30 -0
- package/internals/plugins/featurePlugins/useChartKeyboardNavigation/utils/findVisibleDataIndex.js +57 -0
- package/internals/plugins/featurePlugins/useChartKeyboardNavigation/utils/findVisibleDataIndex.mjs +51 -0
- package/internals/plugins/featurePlugins/useChartKeyboardNavigation/utils/getMaxSeriesLength.js +7 -1
- package/internals/plugins/featurePlugins/useChartKeyboardNavigation/utils/getMaxSeriesLength.mjs +7 -1
- package/internals/plugins/featurePlugins/useChartKeyboardNavigation/utils/getNonEmptySeriesArray.js +7 -1
- package/internals/plugins/featurePlugins/useChartKeyboardNavigation/utils/getNonEmptySeriesArray.mjs +7 -1
- package/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.d.mts +3 -2
- package/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.d.ts +3 -2
- package/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.js +25 -14
- package/internals/plugins/featurePlugins/useChartPolarAxis/computeAxisValue.mjs +25 -14
- package/internals/plugins/featurePlugins/useChartPolarAxis/getAxisIndex.js +9 -4
- package/internals/plugins/featurePlugins/useChartPolarAxis/getAxisIndex.mjs +9 -3
- package/internals/plugins/featurePlugins/useChartTooltip/useChartTooltip.selectors.d.mts +2 -2
- package/internals/plugins/featurePlugins/useChartTooltip/useChartTooltip.selectors.d.ts +2 -2
- package/models/axis.d.mts +2 -0
- package/models/axis.d.ts +2 -0
- package/models/seriesType/bar.d.mts +12 -7
- package/models/seriesType/bar.d.ts +12 -7
- package/models/seriesType/common.d.mts +10 -0
- package/models/seriesType/common.d.ts +10 -0
- package/models/seriesType/composition.d.mts +3 -1
- package/models/seriesType/composition.d.ts +3 -1
- package/models/seriesType/composition.js +6 -2
- package/models/seriesType/composition.mjs +5 -1
- package/models/seriesType/index.d.mts +3 -3
- package/models/seriesType/index.d.ts +3 -3
- package/models/seriesType/index.js +0 -22
- package/models/seriesType/index.mjs +0 -2
- package/models/seriesType/line.d.mts +13 -8
- package/models/seriesType/line.d.ts +13 -8
- package/package.json +32 -4
package/BarChart/BarChart.js
CHANGED
|
@@ -291,7 +291,8 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
|
|
|
291
291
|
onHighlightedAxisChange: _propTypes.default.func,
|
|
292
292
|
/**
|
|
293
293
|
* Callback fired when a bar item is clicked.
|
|
294
|
-
* @param {MouseEvent} event The event source of the callback.
|
|
294
|
+
* @param {MouseEvent | React.MouseEvent<SVGElement, MouseEvent>} event The event source of the callback.
|
|
295
|
+
* It is a native MouseEvent for `svg-batch` renderer and a React MouseEvent for `svg-single` renderer.
|
|
295
296
|
* @param {BarItemIdentifier} barItemIdentifier The bar item identifier.
|
|
296
297
|
*/
|
|
297
298
|
onItemClick: _propTypes.default.func,
|
package/BarChart/BarChart.mjs
CHANGED
|
@@ -284,7 +284,8 @@ process.env.NODE_ENV !== "production" ? BarChart.propTypes = {
|
|
|
284
284
|
onHighlightedAxisChange: PropTypes.func,
|
|
285
285
|
/**
|
|
286
286
|
* Callback fired when a bar item is clicked.
|
|
287
|
-
* @param {MouseEvent} event The event source of the callback.
|
|
287
|
+
* @param {MouseEvent | React.MouseEvent<SVGElement, MouseEvent>} event The event source of the callback.
|
|
288
|
+
* It is a native MouseEvent for `svg-batch` renderer and a React MouseEvent for `svg-single` renderer.
|
|
288
289
|
* @param {BarItemIdentifier} barItemIdentifier The bar item identifier.
|
|
289
290
|
*/
|
|
290
291
|
onItemClick: PropTypes.func,
|
package/BarChart/BarPlot.js
CHANGED
|
@@ -102,7 +102,8 @@ process.env.NODE_ENV !== "production" ? BarPlot.propTypes = {
|
|
|
102
102
|
className: _propTypes.default.string,
|
|
103
103
|
/**
|
|
104
104
|
* Callback fired when a bar item is clicked.
|
|
105
|
-
* @param {MouseEvent} event The event source of the callback.
|
|
105
|
+
* @param {MouseEvent | React.MouseEvent<SVGElement, MouseEvent>} event The event source of the callback.
|
|
106
|
+
* It is a native MouseEvent for `svg-batch` renderer and a React MouseEvent for `svg-single` renderer.
|
|
106
107
|
* @param {BarItemIdentifier} barItemIdentifier The bar item identifier.
|
|
107
108
|
*/
|
|
108
109
|
onItemClick: _propTypes.default.func,
|
package/BarChart/BarPlot.mjs
CHANGED
|
@@ -95,7 +95,8 @@ process.env.NODE_ENV !== "production" ? BarPlot.propTypes = {
|
|
|
95
95
|
className: PropTypes.string,
|
|
96
96
|
/**
|
|
97
97
|
* Callback fired when a bar item is clicked.
|
|
98
|
-
* @param {MouseEvent} event The event source of the callback.
|
|
98
|
+
* @param {MouseEvent | React.MouseEvent<SVGElement, MouseEvent>} event The event source of the callback.
|
|
99
|
+
* It is a native MouseEvent for `svg-batch` renderer and a React MouseEvent for `svg-single` renderer.
|
|
99
100
|
* @param {BarItemIdentifier} barItemIdentifier The bar item identifier.
|
|
100
101
|
*/
|
|
101
102
|
onItemClick: PropTypes.func,
|
package/BarChart/FocusedBar.js
CHANGED
|
@@ -30,6 +30,9 @@ function FocusedBar(props) {
|
|
|
30
30
|
return null;
|
|
31
31
|
}
|
|
32
32
|
const series = barSeries.series[focusedItem.seriesId];
|
|
33
|
+
if (!series || series.hidden) {
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
33
36
|
if (series.data[focusedItem.dataIndex] == null) {
|
|
34
37
|
// Handle missing data
|
|
35
38
|
return null;
|
package/BarChart/FocusedBar.mjs
CHANGED
|
@@ -23,6 +23,9 @@ export function FocusedBar(props) {
|
|
|
23
23
|
return null;
|
|
24
24
|
}
|
|
25
25
|
const series = barSeries.series[focusedItem.seriesId];
|
|
26
|
+
if (!series || series.hidden) {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
26
29
|
if (series.data[focusedItem.dataIndex] == null) {
|
|
27
30
|
// Handle missing data
|
|
28
31
|
return null;
|
|
@@ -3,15 +3,8 @@ export declare function getSeriesWithDefaultValues(seriesData: AllSeriesType<'ba
|
|
|
3
3
|
id: string;
|
|
4
4
|
color: string;
|
|
5
5
|
type: "bar";
|
|
6
|
-
data?: ReadonlyArray<import("../../../index.mjs").BarValueType | null>;
|
|
7
|
-
dataKey?: string;
|
|
8
|
-
valueGetter?: (item: import("../../../internals/index.mjs").DatasetElementType<unknown>) => import("../../../index.mjs").BarValueType | null;
|
|
9
|
-
label?: string | ((location: "tooltip" | "legend") => string);
|
|
10
|
-
layout?: "horizontal" | "vertical";
|
|
11
|
-
stackOffset?: import("../../../index.mjs").StackOffsetType;
|
|
12
|
-
minBarSize?: number;
|
|
13
|
-
barLabel?: "value" | ((item: import("@mui/x-charts/BarChart").BarItem, context: import("@mui/x-charts/BarChart").BarLabelContext) => string | null | undefined);
|
|
14
6
|
barLabelPlacement?: "center" | "outside";
|
|
7
|
+
stackOffset?: import("../../../index.mjs").StackOffsetType;
|
|
15
8
|
valueFormatter?: import("../../../internals/index.mjs").SeriesValueFormatter<number | null> | undefined;
|
|
16
9
|
highlightScope?: import("../../../internals/index.mjs").CommonHighlightScope | undefined;
|
|
17
10
|
labelMarkType?: import("../../../internals/index.mjs").ChartsLabelMarkType;
|
|
@@ -20,4 +13,11 @@ export declare function getSeriesWithDefaultValues(seriesData: AllSeriesType<'ba
|
|
|
20
13
|
yAxisId?: import("../../../internals/index.mjs").AxisId;
|
|
21
14
|
stack?: string;
|
|
22
15
|
stackOrder?: import("../../../index.mjs").StackOrderType;
|
|
16
|
+
data?: ReadonlyArray<import("../../../index.mjs").BarValueType | null>;
|
|
17
|
+
dataKey?: string;
|
|
18
|
+
valueGetter?: (item: import("../../../internals/index.mjs").DatasetElementType<unknown>) => import("../../../index.mjs").BarValueType | null;
|
|
19
|
+
label?: string | ((location: "tooltip" | "legend") => string);
|
|
20
|
+
layout?: "horizontal" | "vertical";
|
|
21
|
+
minBarSize?: number;
|
|
22
|
+
barLabel?: "value" | ((item: import("@mui/x-charts/BarChart").BarItem, context: import("@mui/x-charts/BarChart").BarLabelContext) => string | null | undefined);
|
|
23
23
|
};
|
|
@@ -3,15 +3,8 @@ export declare function getSeriesWithDefaultValues(seriesData: AllSeriesType<'ba
|
|
|
3
3
|
id: string;
|
|
4
4
|
color: string;
|
|
5
5
|
type: "bar";
|
|
6
|
-
data?: ReadonlyArray<import("../../../index.js").BarValueType | null>;
|
|
7
|
-
dataKey?: string;
|
|
8
|
-
valueGetter?: (item: import("../../../internals/index.js").DatasetElementType<unknown>) => import("../../../index.js").BarValueType | null;
|
|
9
|
-
label?: string | ((location: "tooltip" | "legend") => string);
|
|
10
|
-
layout?: "horizontal" | "vertical";
|
|
11
|
-
stackOffset?: import("../../../index.js").StackOffsetType;
|
|
12
|
-
minBarSize?: number;
|
|
13
|
-
barLabel?: "value" | ((item: import("@mui/x-charts/BarChart").BarItem, context: import("@mui/x-charts/BarChart").BarLabelContext) => string | null | undefined);
|
|
14
6
|
barLabelPlacement?: "center" | "outside";
|
|
7
|
+
stackOffset?: import("../../../index.js").StackOffsetType;
|
|
15
8
|
valueFormatter?: import("../../../internals/index.js").SeriesValueFormatter<number | null> | undefined;
|
|
16
9
|
highlightScope?: import("../../../internals/index.js").CommonHighlightScope | undefined;
|
|
17
10
|
labelMarkType?: import("../../../internals/index.js").ChartsLabelMarkType;
|
|
@@ -20,4 +13,11 @@ export declare function getSeriesWithDefaultValues(seriesData: AllSeriesType<'ba
|
|
|
20
13
|
yAxisId?: import("../../../internals/index.js").AxisId;
|
|
21
14
|
stack?: string;
|
|
22
15
|
stackOrder?: import("../../../index.js").StackOrderType;
|
|
16
|
+
data?: ReadonlyArray<import("../../../index.js").BarValueType | null>;
|
|
17
|
+
dataKey?: string;
|
|
18
|
+
valueGetter?: (item: import("../../../internals/index.js").DatasetElementType<unknown>) => import("../../../index.js").BarValueType | null;
|
|
19
|
+
label?: string | ((location: "tooltip" | "legend") => string);
|
|
20
|
+
layout?: "horizontal" | "vertical";
|
|
21
|
+
minBarSize?: number;
|
|
22
|
+
barLabel?: "value" | ((item: import("@mui/x-charts/BarChart").BarItem, context: import("@mui/x-charts/BarChart").BarLabelContext) => string | null | undefined);
|
|
23
23
|
};
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,228 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 9.0.4
|
|
4
|
+
|
|
5
|
+
_Apr 28, 2026_
|
|
6
|
+
|
|
7
|
+
We'd like to extend a big thank you to the 4 contributors who made this release possible. Here are some highlights ✨:
|
|
8
|
+
|
|
9
|
+
- Fix Pickers previous (v9.0.3) release ensuring the latest `@mui/x-internals` version usage
|
|
10
|
+
|
|
11
|
+
The following team members contributed to this release:
|
|
12
|
+
@alexfauquette, @JCQuintas, @LukasTy, @mj12albert
|
|
13
|
+
|
|
14
|
+
### Data Grid
|
|
15
|
+
|
|
16
|
+
#### `@mui/x-data-grid@9.0.4`
|
|
17
|
+
|
|
18
|
+
Internal changes.
|
|
19
|
+
|
|
20
|
+
#### `@mui/x-data-grid-pro@9.0.4` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
21
|
+
|
|
22
|
+
Same changes as in `@mui/x-data-grid@9.0.4`.
|
|
23
|
+
|
|
24
|
+
#### `@mui/x-data-grid-premium@9.0.4` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
25
|
+
|
|
26
|
+
Same changes as in `@mui/x-data-grid-pro@9.0.4`.
|
|
27
|
+
|
|
28
|
+
### Date and Time Pickers
|
|
29
|
+
|
|
30
|
+
#### `@mui/x-date-pickers@9.0.4`
|
|
31
|
+
|
|
32
|
+
Internal changes.
|
|
33
|
+
|
|
34
|
+
#### `@mui/x-date-pickers-pro@9.0.4` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
35
|
+
|
|
36
|
+
Same changes as in `@mui/x-date-pickers@9.0.4`.
|
|
37
|
+
|
|
38
|
+
### Charts
|
|
39
|
+
|
|
40
|
+
#### `@mui/x-charts@9.0.4`
|
|
41
|
+
|
|
42
|
+
- [charts] Exclude hidden series and items from keyboard navigation (alt approach) (#22221) @JCQuintas
|
|
43
|
+
- [charts] Fix line interaction with `area` and `conectNulls` (#22227) @alexfauquette
|
|
44
|
+
- [charts] Implement the continuous case of `getAxisIndex` for rotation axis (#22230) @alexfauquette
|
|
45
|
+
|
|
46
|
+
#### `@mui/x-charts-pro@9.0.4` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
47
|
+
|
|
48
|
+
Same changes as in `@mui/x-charts@9.0.4`.
|
|
49
|
+
|
|
50
|
+
#### `@mui/x-charts-premium@9.0.4` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
51
|
+
|
|
52
|
+
Same changes as in `@mui/x-charts-pro@9.0.4` plus:
|
|
53
|
+
|
|
54
|
+
- [charts-premium] Add `showMark` and `shape` properties to radial line (#22226) @alexfauquette
|
|
55
|
+
|
|
56
|
+
### Tree View
|
|
57
|
+
|
|
58
|
+
#### `@mui/x-tree-view@9.0.4`
|
|
59
|
+
|
|
60
|
+
Internal changes.
|
|
61
|
+
|
|
62
|
+
#### `@mui/x-tree-view-pro@9.0.4` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
63
|
+
|
|
64
|
+
Same changes as in `@mui/x-tree-view@9.0.4`.
|
|
65
|
+
|
|
66
|
+
### Scheduler
|
|
67
|
+
|
|
68
|
+
#### `@mui/x-scheduler@9.0.4`
|
|
69
|
+
|
|
70
|
+
Internal changes.
|
|
71
|
+
|
|
72
|
+
#### `@mui/x-scheduler-premium@9.0.4` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
73
|
+
|
|
74
|
+
Same changes as in `@mui/x-scheduler@9.0.4`.
|
|
75
|
+
|
|
76
|
+
### Codemod
|
|
77
|
+
|
|
78
|
+
#### `@mui/x-codemod@9.0.4`
|
|
79
|
+
|
|
80
|
+
Internal changes.
|
|
81
|
+
|
|
82
|
+
### Docs
|
|
83
|
+
|
|
84
|
+
- [docs] Update WCAG links (#22234) @mj12albert
|
|
85
|
+
|
|
86
|
+
### Core
|
|
87
|
+
|
|
88
|
+
- [code-infra] Avoid overriding `renovate` `ignoredPaths` (#22228) @LukasTy
|
|
89
|
+
|
|
90
|
+
## 9.0.3
|
|
91
|
+
|
|
92
|
+
_Apr 27, 2026_
|
|
93
|
+
|
|
94
|
+
We'd like to extend a big thank you to the 16 contributors who made this release possible. Here are some highlights ✨:
|
|
95
|
+
|
|
96
|
+
- ⌨️ Keyboard support for creating events in the Scheduler
|
|
97
|
+
|
|
98
|
+
Special thanks go out to these community members for their valuable contributions:
|
|
99
|
+
@supunsathsara, @ZAKIURREHMAN
|
|
100
|
+
|
|
101
|
+
The following team members contributed to this release:
|
|
102
|
+
@aemartos, @alexfauquette, @arminmeh, @brijeshb42, @Janpot, @JCQuintas, @LukasTy, @MBilalShafi, @michelengelen, @oliviertassinari, @rita-codes, @romgrk, @sai6855, @siriwatknp
|
|
103
|
+
|
|
104
|
+
### Data Grid
|
|
105
|
+
|
|
106
|
+
#### `@mui/x-data-grid@9.0.3`
|
|
107
|
+
|
|
108
|
+
- [DataGrid] Fix `:first-child` SSR warning when `MuiDataGrid.styleOverrides` is set (#22081) @siriwatknp
|
|
109
|
+
- [DataGrid] Fix row reordering when filter hides rows (#22096) @siriwatknp
|
|
110
|
+
- [DataGrid] Remove unused `LayoutDataGridLegacy` class (#22009) @romgrk
|
|
111
|
+
- [DataGrid] Remove unused code, clean up grid-related utilities and deprecate `GridPanelHeader` (#22112) @sai6855
|
|
112
|
+
- [DataGrid] Fix columns cutting off after resizing (#22088) @ZAKIURREHMAN
|
|
113
|
+
|
|
114
|
+
#### `@mui/x-data-grid-pro@9.0.3` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
115
|
+
|
|
116
|
+
Same changes as in `@mui/x-data-grid@9.0.3`.
|
|
117
|
+
|
|
118
|
+
#### `@mui/x-data-grid-premium@9.0.3` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
119
|
+
|
|
120
|
+
Same changes as in `@mui/x-data-grid-pro@9.0.3`, plus:
|
|
121
|
+
|
|
122
|
+
- [DataGridPremium] Fix row grouping model updates not being reflected (#22122) @MBilalShafi
|
|
123
|
+
|
|
124
|
+
### Date and Time Pickers
|
|
125
|
+
|
|
126
|
+
#### `@mui/x-date-pickers@9.0.3`
|
|
127
|
+
|
|
128
|
+
- [pickers] Fix `DateRangeCalendar` drag with `AdapterDayjs` plain-constructor values (#22165) @LukasTy
|
|
129
|
+
- [pickers] Fix disabled state not overriding error border color (#21169) @supunsathsara
|
|
130
|
+
- [pickers] Forward `data-*` and `aria-*` attributes to the root (#22147) @LukasTy
|
|
131
|
+
- [pickers] Support `K` and `k` hour format tokens (#22108) @michelengelen
|
|
132
|
+
|
|
133
|
+
#### `@mui/x-date-pickers-pro@9.0.3` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
134
|
+
|
|
135
|
+
Same changes as in `@mui/x-date-pickers@9.0.3`, plus:
|
|
136
|
+
|
|
137
|
+
- [DateRangeCalendar] Ensure date dragging triggers regardless of trigger element (#21868) @michelengelen
|
|
138
|
+
|
|
139
|
+
### Charts
|
|
140
|
+
|
|
141
|
+
#### `@mui/x-charts@9.0.3`
|
|
142
|
+
|
|
143
|
+
- [charts] Centralize WebGL clear/render cycle (context-based) (#22127) @JCQuintas
|
|
144
|
+
- [charts] Fix closest series detection for line charts (#22168) @alexfauquette
|
|
145
|
+
- [charts] Fix radius grid lines when axis uses point scale (#22134) @alexfauquette
|
|
146
|
+
- [charts] Use cubic solver for berzier intersection (#22152) @alexfauquette
|
|
147
|
+
|
|
148
|
+
#### `@mui/x-charts-pro@9.0.3` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
149
|
+
|
|
150
|
+
Same changes as in `@mui/x-charts@9.0.3`, plus:
|
|
151
|
+
|
|
152
|
+
- [charts-pro] Fix wheel zoom clamping with custom `minStart`/`maxEnd` (#22159) @JCQuintas
|
|
153
|
+
|
|
154
|
+
#### `@mui/x-charts-premium@9.0.3` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
155
|
+
|
|
156
|
+
Same changes as in `@mui/x-charts-pro@9.0.3`, plus:
|
|
157
|
+
|
|
158
|
+
- [charts] Create a `'radialLine'` series type (#22066) @alexfauquette
|
|
159
|
+
- [charts] Plot radial line (#22133) @alexfauquette
|
|
160
|
+
- [charts] Remove `HeatmapWebGLRenderer` indirection (#22169) @JCQuintas
|
|
161
|
+
|
|
162
|
+
### Tree View
|
|
163
|
+
|
|
164
|
+
#### `@mui/x-tree-view@9.0.2`
|
|
165
|
+
|
|
166
|
+
Internal changes.
|
|
167
|
+
|
|
168
|
+
#### `@mui/x-tree-view-pro@9.0.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
169
|
+
|
|
170
|
+
Same changes as in `@mui/x-tree-view@9.0.2`.
|
|
171
|
+
|
|
172
|
+
### Scheduler
|
|
173
|
+
|
|
174
|
+
#### Breaking changes
|
|
175
|
+
|
|
176
|
+
- The `views` of `EventTimelinePremium` have been renamed to `presets`, with names that describe the header layout. The props `view`/`defaultView`/`views`/`onViewChange` are now `preset`/`defaultPreset`/`presets`/`onPresetChange`, and the type `EventTimelinePremiumView` is now `EventTimelinePremiumPreset`.
|
|
177
|
+
|
|
178
|
+
| Old | New |
|
|
179
|
+
| :------- | :------------- |
|
|
180
|
+
| `time` | `dayAndHour` |
|
|
181
|
+
| `days` | `day` |
|
|
182
|
+
| `weeks` | `dayAndWeek` |
|
|
183
|
+
| `months` | `monthAndYear` |
|
|
184
|
+
| `years` | `year` |
|
|
185
|
+
|
|
186
|
+
CSS variables (`--time-cell-width`, etc.) and headless store state (`state.view`, `setView`) follow the same rename. The `presets` array is now sorted internally against a canonical zoom order.
|
|
187
|
+
|
|
188
|
+
#### `@mui/x-scheduler@9.0.0-alpha.3`
|
|
189
|
+
|
|
190
|
+
- [scheduler] Allow creating events via keyboard - EventCalendar (#21967) @rita-codes
|
|
191
|
+
- [scheduler] Prefix element IDs with a unique Scheduler instance ID (#22109) @rita-codes
|
|
192
|
+
|
|
193
|
+
#### `@mui/x-scheduler-premium@9.0.0-alpha.3` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
194
|
+
|
|
195
|
+
Same changes as in `@mui/x-scheduler@9.0.0-alpha.3`.
|
|
196
|
+
|
|
197
|
+
- [scheduler] Allow creating events via keyboard - `EventTimeline` (#22119) @rita-codes
|
|
198
|
+
- [scheduler] Rename `EventTimeline` `views` to ordered presets (#22130) @rita-codes
|
|
199
|
+
|
|
200
|
+
### Docs
|
|
201
|
+
|
|
202
|
+
- [docs] Cleanup generated llm md files for chat (#22163) @brijeshb42
|
|
203
|
+
- [docs] Fix `highlightScope` description (#22154) @alexfauquette
|
|
204
|
+
- [docs] Remove obsolete v7 deprecation warning for `dayOfWeekFormatter` (#22111) @LukasTy
|
|
205
|
+
- [docs] Use mui.com for broken links checker known targets (#22129) @JCQuintas
|
|
206
|
+
- [docs] Document picker behavior inside MUI `Dialog` and provide recommended solutions (#22144) @michelengelen
|
|
207
|
+
- [docs] Improve v9 license key version mismatch error guidance (#22180) @aemartos
|
|
208
|
+
|
|
209
|
+
### Core
|
|
210
|
+
|
|
211
|
+
- [code-infra] Reduce concurrency for package build to 5 (#22115) @Janpot
|
|
212
|
+
- [code-infra] Rename `docsx` alias to `docs` (#22155) @brijeshb42
|
|
213
|
+
- [docs-infra] Remove monorepo dependency (#22025) @brijeshb42
|
|
214
|
+
- [docs-infra] Use latest published packages (#22086) @brijeshb42
|
|
215
|
+
- [test] Refactor Pickers tests to async user-event (#22043) @LukasTy
|
|
216
|
+
- [test] Remove redundant explicit `unmount()` calls from Pickers tests (#22118) @LukasTy
|
|
217
|
+
|
|
218
|
+
### Miscellaneous
|
|
219
|
+
|
|
220
|
+
- [infra] Update `.gitignore` to exclude `.claude/worktrees` (#22145) @michelengelen
|
|
221
|
+
- [infra] Enable branch tracking when creating release branch (#22177) @michelengelen
|
|
222
|
+
- [license] Add MIT license to `x-virtualizer` package (#22164) @michelengelen
|
|
223
|
+
- [website] Fix outdated MUI logos (#22117) @oliviertassinari
|
|
224
|
+
- [internal] Try avoiding store update when virtualization is disabled (#22093) @arminmeh
|
|
225
|
+
|
|
3
226
|
## 9.0.2
|
|
4
227
|
|
|
5
228
|
<!-- generated comparing v9.0.1..master -->
|
|
@@ -64,6 +64,7 @@ function ChartsRadialGrid(inProps) {
|
|
|
64
64
|
const outerRadius = radiusAxisConfig?.scale.range()[1] ?? 0;
|
|
65
65
|
const startAngle = rotationAxisConfig?.scale.range()[0] ?? 0;
|
|
66
66
|
const endAngle = rotationAxisConfig?.scale.range()[1] ?? 0;
|
|
67
|
+
const isFullCircle = rotationAxisConfig?.isFullCircle ?? false;
|
|
67
68
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_styledComponents.GridRoot, (0, _extends2.default)({}, other, {
|
|
68
69
|
className: (0, _clsx.default)(classes.root, className),
|
|
69
70
|
children: [rotation && rotationAxisConfig && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChartsRotationGrid.ChartsRotationGrid, {
|
|
@@ -75,6 +76,7 @@ function ChartsRadialGrid(inProps) {
|
|
|
75
76
|
axis: radiusAxisConfig,
|
|
76
77
|
startAngle: startAngle,
|
|
77
78
|
endAngle: endAngle,
|
|
79
|
+
isFullCircle: isFullCircle,
|
|
78
80
|
classes: classes
|
|
79
81
|
})]
|
|
80
82
|
}));
|
|
@@ -58,6 +58,7 @@ function ChartsRadialGrid(inProps) {
|
|
|
58
58
|
const outerRadius = radiusAxisConfig?.scale.range()[1] ?? 0;
|
|
59
59
|
const startAngle = rotationAxisConfig?.scale.range()[0] ?? 0;
|
|
60
60
|
const endAngle = rotationAxisConfig?.scale.range()[1] ?? 0;
|
|
61
|
+
const isFullCircle = rotationAxisConfig?.isFullCircle ?? false;
|
|
61
62
|
return /*#__PURE__*/_jsxs(GridRoot, _extends({}, other, {
|
|
62
63
|
className: clsx(classes.root, className),
|
|
63
64
|
children: [rotation && rotationAxisConfig && /*#__PURE__*/_jsx(ChartsRotationGrid, {
|
|
@@ -69,6 +70,7 @@ function ChartsRadialGrid(inProps) {
|
|
|
69
70
|
axis: radiusAxisConfig,
|
|
70
71
|
startAngle: startAngle,
|
|
71
72
|
endAngle: endAngle,
|
|
73
|
+
isFullCircle: isFullCircle,
|
|
72
74
|
classes: classes
|
|
73
75
|
})]
|
|
74
76
|
}));
|
|
@@ -10,7 +10,6 @@ var _useTicks = require("../hooks/useTicks");
|
|
|
10
10
|
var _styledComponents = require("./styledComponents");
|
|
11
11
|
var _ChartsProvider = require("../context/ChartsProvider");
|
|
12
12
|
var _useChartPolarAxis = require("../internals/plugins/featurePlugins/useChartPolarAxis");
|
|
13
|
-
var _epsilon = require("../utils/epsilon");
|
|
14
13
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
14
|
/**
|
|
16
15
|
* @ignore - internal component.
|
|
@@ -23,6 +22,7 @@ function ChartsRadiusGrid(props) {
|
|
|
23
22
|
axis,
|
|
24
23
|
startAngle,
|
|
25
24
|
endAngle,
|
|
25
|
+
isFullCircle,
|
|
26
26
|
classes
|
|
27
27
|
} = props;
|
|
28
28
|
const {
|
|
@@ -42,7 +42,6 @@ function ChartsRadiusGrid(props) {
|
|
|
42
42
|
tickSpacing,
|
|
43
43
|
direction: 'radius'
|
|
44
44
|
});
|
|
45
|
-
const isFullCircle = Math.abs(endAngle - startAngle) >= 2 * Math.PI - _epsilon.EPSILON;
|
|
46
45
|
if (isFullCircle) {
|
|
47
46
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(React.Fragment, {
|
|
48
47
|
children: ticks.map(({
|
|
@@ -3,7 +3,6 @@ import { useTicks } from "../hooks/useTicks.mjs";
|
|
|
3
3
|
import { GridCircle, GridPath } from "./styledComponents.mjs";
|
|
4
4
|
import { useChartsContext } from "../context/ChartsProvider/index.mjs";
|
|
5
5
|
import { selectorChartPolarCenter } from "../internals/plugins/featurePlugins/useChartPolarAxis/index.mjs";
|
|
6
|
-
import { EPSILON } from "../utils/epsilon.mjs";
|
|
7
6
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
7
|
/**
|
|
9
8
|
* @ignore - internal component.
|
|
@@ -16,6 +15,7 @@ export function ChartsRadiusGrid(props) {
|
|
|
16
15
|
axis,
|
|
17
16
|
startAngle,
|
|
18
17
|
endAngle,
|
|
18
|
+
isFullCircle,
|
|
19
19
|
classes
|
|
20
20
|
} = props;
|
|
21
21
|
const {
|
|
@@ -35,7 +35,6 @@ export function ChartsRadiusGrid(props) {
|
|
|
35
35
|
tickSpacing,
|
|
36
36
|
direction: 'radius'
|
|
37
37
|
});
|
|
38
|
-
const isFullCircle = Math.abs(endAngle - startAngle) >= 2 * Math.PI - EPSILON;
|
|
39
38
|
if (isFullCircle) {
|
|
40
39
|
return /*#__PURE__*/_jsx(React.Fragment, {
|
|
41
40
|
children: ticks.map(({
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { AxisId } from "../models/axis.mjs";
|
|
2
|
+
import { type ChartsRadialAxisClasses } from "./chartsRadiusAxisClasses.mjs";
|
|
3
|
+
export interface ChartsRadiusAxisProps {
|
|
4
|
+
/**
|
|
5
|
+
* Id of the radius axis to render.
|
|
6
|
+
* If not provided, it will use the first defined radius axis.
|
|
7
|
+
*/
|
|
8
|
+
axisId?: AxisId;
|
|
9
|
+
/**
|
|
10
|
+
* The position of the axis in polar coordinates.
|
|
11
|
+
* It can be 'start', 'end', or a specific angle in degrees.
|
|
12
|
+
* @default 'start'
|
|
13
|
+
*/
|
|
14
|
+
position?: 'start' | 'end' | number;
|
|
15
|
+
/**
|
|
16
|
+
* If `true`, the axis line is not rendered.
|
|
17
|
+
* @default false
|
|
18
|
+
*/
|
|
19
|
+
disableLine?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* If `true`, the ticks are not rendered.
|
|
22
|
+
* @default false
|
|
23
|
+
*/
|
|
24
|
+
disableTicks?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* The size (in pixels) of the tick marks.
|
|
27
|
+
* @default 6
|
|
28
|
+
*/
|
|
29
|
+
tickSize?: number;
|
|
30
|
+
/**
|
|
31
|
+
* Set the position of the tick labels relative to the axis line.
|
|
32
|
+
* The before/after is defined based on clockwise direction.
|
|
33
|
+
* @default 'after'
|
|
34
|
+
*/
|
|
35
|
+
tickLabelPosition?: 'center' | 'after' | 'before';
|
|
36
|
+
/**
|
|
37
|
+
* Set the position of the tick relative to the axis line.
|
|
38
|
+
* The before/after is defined based on clockwise direction.
|
|
39
|
+
* @default 'after'
|
|
40
|
+
*/
|
|
41
|
+
tickPosition?: 'after' | 'before';
|
|
42
|
+
/**
|
|
43
|
+
* A CSS class name applied to the root element.
|
|
44
|
+
*/
|
|
45
|
+
className?: string;
|
|
46
|
+
classes?: Partial<ChartsRadialAxisClasses>;
|
|
47
|
+
}
|
|
48
|
+
export declare function ChartsRadiusAxis(props: ChartsRadiusAxisProps): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { AxisId } from "../models/axis.js";
|
|
2
|
+
import { type ChartsRadialAxisClasses } from "./chartsRadiusAxisClasses.js";
|
|
3
|
+
export interface ChartsRadiusAxisProps {
|
|
4
|
+
/**
|
|
5
|
+
* Id of the radius axis to render.
|
|
6
|
+
* If not provided, it will use the first defined radius axis.
|
|
7
|
+
*/
|
|
8
|
+
axisId?: AxisId;
|
|
9
|
+
/**
|
|
10
|
+
* The position of the axis in polar coordinates.
|
|
11
|
+
* It can be 'start', 'end', or a specific angle in degrees.
|
|
12
|
+
* @default 'start'
|
|
13
|
+
*/
|
|
14
|
+
position?: 'start' | 'end' | number;
|
|
15
|
+
/**
|
|
16
|
+
* If `true`, the axis line is not rendered.
|
|
17
|
+
* @default false
|
|
18
|
+
*/
|
|
19
|
+
disableLine?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* If `true`, the ticks are not rendered.
|
|
22
|
+
* @default false
|
|
23
|
+
*/
|
|
24
|
+
disableTicks?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* The size (in pixels) of the tick marks.
|
|
27
|
+
* @default 6
|
|
28
|
+
*/
|
|
29
|
+
tickSize?: number;
|
|
30
|
+
/**
|
|
31
|
+
* Set the position of the tick labels relative to the axis line.
|
|
32
|
+
* The before/after is defined based on clockwise direction.
|
|
33
|
+
* @default 'after'
|
|
34
|
+
*/
|
|
35
|
+
tickLabelPosition?: 'center' | 'after' | 'before';
|
|
36
|
+
/**
|
|
37
|
+
* Set the position of the tick relative to the axis line.
|
|
38
|
+
* The before/after is defined based on clockwise direction.
|
|
39
|
+
* @default 'after'
|
|
40
|
+
*/
|
|
41
|
+
tickPosition?: 'after' | 'before';
|
|
42
|
+
/**
|
|
43
|
+
* A CSS class name applied to the root element.
|
|
44
|
+
*/
|
|
45
|
+
className?: string;
|
|
46
|
+
classes?: Partial<ChartsRadialAxisClasses>;
|
|
47
|
+
}
|
|
48
|
+
export declare function ChartsRadiusAxis(props: ChartsRadiusAxisProps): import("react/jsx-runtime").JSX.Element | null;
|