@mui/x-charts 8.0.0-alpha.2 → 8.0.0-alpha.3

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/CHANGELOG.md CHANGED
@@ -5,6 +5,108 @@
5
5
  All notable changes to this project will be documented in this file.
6
6
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
7
7
 
8
+ ## 8.0.0-alpha.3
9
+
10
+ _Dec 5, 2024_
11
+
12
+ We'd like to offer a big thanks to the 9 contributors who made this release possible. Here are some highlights ✨:
13
+
14
+ - 💫 Support [Server-side lazy loading](https://mui.com/x/react-data-grid/server-side-data/lazy-loading/) on the Data Grid. Use [data source](https://mui.com/x/react-data-grid/server-side-data/#data-source) to fetch a range of rows on demand and update the rows in the same way as described in [Infinite loading](https://mui.com/x/react-data-grid/row-updates/#infinite-loading) and [Lazy loading](https://mui.com/x/react-data-grid/row-updates/#lazy-loading) without the need to use any additional event listeners and callbacks.
15
+ - 🎯 Improved [data caching](https://mui.com/x/react-data-grid/server-side-data/#data-caching). Check out our [recommendations](https://mui.com/x/react-data-grid/server-side-data/#improving-the-cache-hit-rate) for improving the cache hit rate.
16
+
17
+ Special thanks go out to the community contributors who have helped make this release possible:
18
+ @ihsanberkozcan, @k-rajat19, @perezShaked.
19
+ Following are all team members who have contributed to this release:
20
+ @arminmeh, @cherniavskii, @flaviendelangle, @JCQuintas, @MBilalShafi, @noraleonte.
21
+
22
+ <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
23
+
24
+ ### Data Grid
25
+
26
+ #### Breaking changes
27
+
28
+ - The "Select all" checkbox is now checked when all the selectable rows are selected, ignoring rows that are not selectable because of the `isRowSelectable` prop.
29
+ - The `rowPositionsDebounceMs` prop was removed.
30
+ - The `gridRowsDataRowIdToIdLookupSelector` selector was removed. Use the `gridRowsLookupSelector` selector in combination with the `getRowId()` API method instead.
31
+ ```diff
32
+ -const idToIdLookup = gridRowsDataRowIdToIdLookupSelector(apiRef);
33
+ -const rowId = idToIdLookup[id]
34
+ +const rowsLookup = gridRowsLookupSelector(apiRef);
35
+ +const rowId = apiRef.current.getRowId(rowsLookup[id])
36
+ ```
37
+ - The Grid is now more aligned with the WAI-ARIA authoring practices and sets the `role` attribute to `treegrid` if the Data Grid is used with row grouping feature.
38
+
39
+ #### `@mui/x-data-grid@8.0.0-alpha.3`
40
+
41
+ - [DataGrid] Fix deselection not working with `isRowSelectable` (#15692) @MBilalShafi
42
+ - [DataGrid] Make column autosizing work with flex columns (#15465) @cherniavskii
43
+ - [DataGrid] Remove `gridRowsDataRowIdToIdLookupSelector` selector (#15698) @arminmeh
44
+ - [DataGrid] Remove `rowPositionsDebounceMs` prop (#15482) @k-rajat19
45
+ - [l10n] Improve Hebrew (he-IL) locale (#15699) @perezShaked
46
+ - [l10n] Improve Turkish (tr-TR) locale (#15734) @ihsanberkozcan
47
+
48
+ #### `@mui/x-data-grid-pro@8.0.0-alpha.3` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
49
+
50
+ Same changes as in `@mui/x-data-grid@8.0.0-alpha.3`, plus:
51
+
52
+ - [DataGridPro] Cleanup pinned rows on removal (#15697) @cherniavskii
53
+ - [DataGridPro] Server-side lazy loading (#13878) @arminmeh
54
+
55
+ #### `@mui/x-data-grid-premium@8.0.0-alpha.3` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
56
+
57
+ Same changes as in `@mui/x-data-grid-pro@8.0.0-alpha.3`, plus:
58
+
59
+ - [DataGridPremium] Remove the `ariaV8` experimental flag (#15694) @arminmeh
60
+
61
+ ### Date and Time Pickers
62
+
63
+ #### Breaking changes
64
+
65
+ - The `onOpen()` and `onClose()` methods of the `usePickerContext()` hook have been replaced with a single `setOpen` method — [Learn more](https://next.mui.com/x/migration/migration-pickers-v7/#usepickercontext).
66
+
67
+ #### `@mui/x-date-pickers@8.0.0-alpha.3`
68
+
69
+ - [pickers] Replace the `onOpen()` and `onClose()` methods of `usePickerContext()` with a single `setOpen()` method. (#15701) @flaviendelangle
70
+
71
+ #### `@mui/x-date-pickers-pro@8.0.0-alpha.3` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
72
+
73
+ Same changes as in `@mui/x-date-pickers@8.0.0-alpha.3`.
74
+
75
+ ### Charts
76
+
77
+ #### `@mui/x-charts@8.0.0-alpha.3`
78
+
79
+ - [charts] Improve SVG `pattern` and `gradient` support (#15720) @JCQuintas
80
+
81
+ #### `@mui/x-charts-pro@8.0.0-alpha.3` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
82
+
83
+ Same changes as in `@mui/x-charts@8.0.0-alpha.3`.
84
+
85
+ ### Tree View
86
+
87
+ #### `@mui/x-tree-view@8.0.0-alpha.3`
88
+
89
+ No changes since `@mui/x-tree-view-pro@v8.0.0-alpha.2`.
90
+
91
+ #### `@mui/x-tree-view-pro@8.0.0-alpha.3` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
92
+
93
+ Same changes as in `@mui/x-tree-view@8.0.0-alpha.3`.
94
+
95
+ ### Docs
96
+
97
+ - [docs] Add a customization demo for the Date and Time Pickers overview page (#15118) @noraleonte
98
+ - [docs] Fix typo in charts axis documentation (#15743) @JCQuintas
99
+ - [docs] Improve SEO titles for the Data Grid (#15695) @MBilalShafi
100
+
101
+ ### Core
102
+
103
+ - [core] Add `@mui/x-tree-view-pro` to `releaseChangelog` (#15316) @flaviendelangle
104
+ - [code-infra] Lock file maintenance (#11894)
105
+ - [code-infra] Check if `preset-safe` folder exists in codemod test (#15703) @JCQuintas
106
+ - [code-infra] Import Pickers `preset-safe` into global codemod config (#15659) @JCQuintas
107
+ - [code-infra] Playwright 1.49 (#15493) @JCQuintas
108
+ - [test] Force hover in headless Chrome (#15710) @cherniavskii
109
+
8
110
  ## v8.0.0-alpha.2
9
111
 
10
112
  _Nov 29, 2024_
@@ -96,7 +96,7 @@ export const ChartsTooltipMark = styled('div', {
96
96
  height: theme.spacing(1),
97
97
  borderRadius: '50%',
98
98
  boxShadow: theme.shadows[1],
99
- backgroundColor: color,
99
+ background: color,
100
100
  borderColor: (theme.vars || theme).palette.background.paper,
101
101
  border: `solid ${(theme.vars || theme).palette.background.paper} ${theme.spacing(0.25)}`,
102
102
  boxSizing: 'content-box'
@@ -22,10 +22,11 @@ const useUtilityClasses = ownerState => {
22
22
  classes,
23
23
  id,
24
24
  isFaded,
25
- isHighlighted
25
+ isHighlighted,
26
+ dataIndex
26
27
  } = ownerState;
27
28
  const slots = {
28
- root: ['root', `series-${id}`, isHighlighted && 'highlighted', isFaded && 'faded']
29
+ root: ['root', `series-${id}`, `data-index-${dataIndex}`, isHighlighted && 'highlighted', isFaded && 'faded']
29
30
  };
30
31
  return composeClasses(slots, getPieArcUtilityClass, classes);
31
32
  };
@@ -36,9 +37,9 @@ const PieArcRoot = styled(animated.path, {
36
37
  })(({
37
38
  theme
38
39
  }) => ({
40
+ // Got to move stroke to an element prop instead of style.
39
41
  stroke: (theme.vars || theme).palette.background.paper,
40
- strokeWidth: 1,
41
- strokeLinejoin: 'round'
42
+ transition: 'opacity 0.2s ease-in, fill 0.2s ease-in, filter 0.2s ease-in'
42
43
  }));
43
44
  function PieArc(props) {
44
45
  const {
@@ -79,7 +80,12 @@ function PieArc(props) {
79
80
  onClick: onClick,
80
81
  cursor: onClick ? 'pointer' : 'unset',
81
82
  ownerState: ownerState,
82
- className: classes.root
83
+ className: classes.root,
84
+ fill: ownerState.color,
85
+ opacity: ownerState.isFaded ? 0.3 : 1,
86
+ filter: ownerState.isHighlighted ? 'brightness(120%)' : 'none',
87
+ strokeWidth: 1,
88
+ strokeLinejoin: "round"
83
89
  }, other, getInteractionItemProps({
84
90
  type: 'pie',
85
91
  seriesId: id,
@@ -2,8 +2,7 @@
2
2
 
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
5
- const _excluded = ["slots", "slotProps", "innerRadius", "outerRadius", "cornerRadius", "paddingAngle", "id", "highlighted", "faded", "data", "onItemClick", "skipAnimation"],
6
- _excluded2 = ["startAngle", "endAngle", "paddingAngle", "innerRadius", "arcLabelRadius", "outerRadius", "cornerRadius"];
5
+ const _excluded = ["slots", "slotProps", "innerRadius", "outerRadius", "cornerRadius", "paddingAngle", "id", "highlighted", "faded", "data", "onItemClick", "skipAnimation"];
7
6
  import * as React from 'react';
8
7
  import PropTypes from 'prop-types';
9
8
  import { useTransition } from '@react-spring/web';
@@ -47,16 +46,14 @@ function PieArcPlot(props) {
47
46
  }
48
47
  const Arc = slots?.pieArc ?? PieArc;
49
48
  return /*#__PURE__*/_jsx("g", _extends({}, other, {
50
- children: transition((_ref, item, _, index) => {
51
- let {
52
- startAngle,
53
- endAngle,
54
- paddingAngle: pA,
55
- innerRadius: iR,
56
- outerRadius: oR,
57
- cornerRadius: cR
58
- } = _ref,
59
- style = _objectWithoutPropertiesLoose(_ref, _excluded2);
49
+ children: transition(({
50
+ startAngle,
51
+ endAngle,
52
+ paddingAngle: pA,
53
+ innerRadius: iR,
54
+ outerRadius: oR,
55
+ cornerRadius: cR
56
+ }, item, _, index) => {
60
57
  return /*#__PURE__*/_jsx(Arc, _extends({
61
58
  startAngle: startAngle,
62
59
  endAngle: endAngle,
@@ -64,7 +61,6 @@ function PieArcPlot(props) {
64
61
  innerRadius: iR,
65
62
  outerRadius: oR,
66
63
  cornerRadius: cR,
67
- style: style,
68
64
  id: id,
69
65
  color: item.color,
70
66
  dataIndex: index,
package/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-charts v8.0.0-alpha.2
2
+ * @mui/x-charts v8.0.0-alpha.3
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -96,7 +96,7 @@ export const ChartsTooltipMark = styled('div', {
96
96
  height: theme.spacing(1),
97
97
  borderRadius: '50%',
98
98
  boxShadow: theme.shadows[1],
99
- backgroundColor: color,
99
+ background: color,
100
100
  borderColor: (theme.vars || theme).palette.background.paper,
101
101
  border: `solid ${(theme.vars || theme).palette.background.paper} ${theme.spacing(0.25)}`,
102
102
  boxSizing: 'content-box'
@@ -22,10 +22,11 @@ const useUtilityClasses = ownerState => {
22
22
  classes,
23
23
  id,
24
24
  isFaded,
25
- isHighlighted
25
+ isHighlighted,
26
+ dataIndex
26
27
  } = ownerState;
27
28
  const slots = {
28
- root: ['root', `series-${id}`, isHighlighted && 'highlighted', isFaded && 'faded']
29
+ root: ['root', `series-${id}`, `data-index-${dataIndex}`, isHighlighted && 'highlighted', isFaded && 'faded']
29
30
  };
30
31
  return composeClasses(slots, getPieArcUtilityClass, classes);
31
32
  };
@@ -36,9 +37,9 @@ const PieArcRoot = styled(animated.path, {
36
37
  })(({
37
38
  theme
38
39
  }) => ({
40
+ // Got to move stroke to an element prop instead of style.
39
41
  stroke: (theme.vars || theme).palette.background.paper,
40
- strokeWidth: 1,
41
- strokeLinejoin: 'round'
42
+ transition: 'opacity 0.2s ease-in, fill 0.2s ease-in, filter 0.2s ease-in'
42
43
  }));
43
44
  function PieArc(props) {
44
45
  const {
@@ -79,7 +80,12 @@ function PieArc(props) {
79
80
  onClick: onClick,
80
81
  cursor: onClick ? 'pointer' : 'unset',
81
82
  ownerState: ownerState,
82
- className: classes.root
83
+ className: classes.root,
84
+ fill: ownerState.color,
85
+ opacity: ownerState.isFaded ? 0.3 : 1,
86
+ filter: ownerState.isHighlighted ? 'brightness(120%)' : 'none',
87
+ strokeWidth: 1,
88
+ strokeLinejoin: "round"
83
89
  }, other, getInteractionItemProps({
84
90
  type: 'pie',
85
91
  seriesId: id,
@@ -2,8 +2,7 @@
2
2
 
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
5
- const _excluded = ["slots", "slotProps", "innerRadius", "outerRadius", "cornerRadius", "paddingAngle", "id", "highlighted", "faded", "data", "onItemClick", "skipAnimation"],
6
- _excluded2 = ["startAngle", "endAngle", "paddingAngle", "innerRadius", "arcLabelRadius", "outerRadius", "cornerRadius"];
5
+ const _excluded = ["slots", "slotProps", "innerRadius", "outerRadius", "cornerRadius", "paddingAngle", "id", "highlighted", "faded", "data", "onItemClick", "skipAnimation"];
7
6
  import * as React from 'react';
8
7
  import PropTypes from 'prop-types';
9
8
  import { useTransition } from '@react-spring/web';
@@ -47,16 +46,14 @@ function PieArcPlot(props) {
47
46
  }
48
47
  const Arc = slots?.pieArc ?? PieArc;
49
48
  return /*#__PURE__*/_jsx("g", _extends({}, other, {
50
- children: transition((_ref, item, _, index) => {
51
- let {
52
- startAngle,
53
- endAngle,
54
- paddingAngle: pA,
55
- innerRadius: iR,
56
- outerRadius: oR,
57
- cornerRadius: cR
58
- } = _ref,
59
- style = _objectWithoutPropertiesLoose(_ref, _excluded2);
49
+ children: transition(({
50
+ startAngle,
51
+ endAngle,
52
+ paddingAngle: pA,
53
+ innerRadius: iR,
54
+ outerRadius: oR,
55
+ cornerRadius: cR
56
+ }, item, _, index) => {
60
57
  return /*#__PURE__*/_jsx(Arc, _extends({
61
58
  startAngle: startAngle,
62
59
  endAngle: endAngle,
@@ -64,7 +61,6 @@ function PieArcPlot(props) {
64
61
  innerRadius: iR,
65
62
  outerRadius: oR,
66
63
  cornerRadius: cR,
67
- style: style,
68
64
  id: id,
69
65
  color: item.color,
70
66
  dataIndex: index,
package/modern/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-charts v8.0.0-alpha.2
2
+ * @mui/x-charts v8.0.0-alpha.3
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -101,7 +101,7 @@ const ChartsTooltipMark = exports.ChartsTooltipMark = (0, _styles.styled)('div',
101
101
  height: theme.spacing(1),
102
102
  borderRadius: '50%',
103
103
  boxShadow: theme.shadows[1],
104
- backgroundColor: color,
104
+ background: color,
105
105
  borderColor: (theme.vars || theme).palette.background.paper,
106
106
  border: `solid ${(theme.vars || theme).palette.background.paper} ${theme.spacing(0.25)}`,
107
107
  boxSizing: 'content-box'
@@ -31,10 +31,11 @@ const useUtilityClasses = ownerState => {
31
31
  classes,
32
32
  id,
33
33
  isFaded,
34
- isHighlighted
34
+ isHighlighted,
35
+ dataIndex
35
36
  } = ownerState;
36
37
  const slots = {
37
- root: ['root', `series-${id}`, isHighlighted && 'highlighted', isFaded && 'faded']
38
+ root: ['root', `series-${id}`, `data-index-${dataIndex}`, isHighlighted && 'highlighted', isFaded && 'faded']
38
39
  };
39
40
  return (0, _composeClasses.default)(slots, getPieArcUtilityClass, classes);
40
41
  };
@@ -45,9 +46,9 @@ const PieArcRoot = (0, _styles.styled)(_web.animated.path, {
45
46
  })(({
46
47
  theme
47
48
  }) => ({
49
+ // Got to move stroke to an element prop instead of style.
48
50
  stroke: (theme.vars || theme).palette.background.paper,
49
- strokeWidth: 1,
50
- strokeLinejoin: 'round'
51
+ transition: 'opacity 0.2s ease-in, fill 0.2s ease-in, filter 0.2s ease-in'
51
52
  }));
52
53
  function PieArc(props) {
53
54
  const {
@@ -88,7 +89,12 @@ function PieArc(props) {
88
89
  onClick: onClick,
89
90
  cursor: onClick ? 'pointer' : 'unset',
90
91
  ownerState: ownerState,
91
- className: classes.root
92
+ className: classes.root,
93
+ fill: ownerState.color,
94
+ opacity: ownerState.isFaded ? 0.3 : 1,
95
+ filter: ownerState.isHighlighted ? 'brightness(120%)' : 'none',
96
+ strokeWidth: 1,
97
+ strokeLinejoin: "round"
92
98
  }, other, getInteractionItemProps({
93
99
  type: 'pie',
94
100
  seriesId: id,
@@ -16,8 +16,7 @@ var _PieArc = require("./PieArc");
16
16
  var _transition = require("./dataTransform/transition");
17
17
  var _useTransformData = require("./dataTransform/useTransformData");
18
18
  var _jsxRuntime = require("react/jsx-runtime");
19
- const _excluded = ["slots", "slotProps", "innerRadius", "outerRadius", "cornerRadius", "paddingAngle", "id", "highlighted", "faded", "data", "onItemClick", "skipAnimation"],
20
- _excluded2 = ["startAngle", "endAngle", "paddingAngle", "innerRadius", "arcLabelRadius", "outerRadius", "cornerRadius"];
19
+ const _excluded = ["slots", "slotProps", "innerRadius", "outerRadius", "cornerRadius", "paddingAngle", "id", "highlighted", "faded", "data", "onItemClick", "skipAnimation"];
21
20
  function PieArcPlot(props) {
22
21
  const {
23
22
  slots,
@@ -54,16 +53,14 @@ function PieArcPlot(props) {
54
53
  }
55
54
  const Arc = slots?.pieArc ?? _PieArc.PieArc;
56
55
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("g", (0, _extends2.default)({}, other, {
57
- children: transition((_ref, item, _, index) => {
58
- let {
59
- startAngle,
60
- endAngle,
61
- paddingAngle: pA,
62
- innerRadius: iR,
63
- outerRadius: oR,
64
- cornerRadius: cR
65
- } = _ref,
66
- style = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded2);
56
+ children: transition(({
57
+ startAngle,
58
+ endAngle,
59
+ paddingAngle: pA,
60
+ innerRadius: iR,
61
+ outerRadius: oR,
62
+ cornerRadius: cR
63
+ }, item, _, index) => {
67
64
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(Arc, (0, _extends2.default)({
68
65
  startAngle: startAngle,
69
66
  endAngle: endAngle,
@@ -71,7 +68,6 @@ function PieArcPlot(props) {
71
68
  innerRadius: iR,
72
69
  outerRadius: oR,
73
70
  cornerRadius: cR,
74
- style: style,
75
71
  id: id,
76
72
  color: item.color,
77
73
  dataIndex: index,
package/node/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-charts v8.0.0-alpha.2
2
+ * @mui/x-charts v8.0.0-alpha.3
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-charts",
3
- "version": "8.0.0-alpha.2",
3
+ "version": "8.0.0-alpha.3",
4
4
  "description": "The community edition of the Charts components (MUI X).",
5
5
  "author": "MUI Team",
6
6
  "main": "./node/index.js",
@@ -37,8 +37,8 @@
37
37
  "prop-types": "^15.8.1",
38
38
  "reselect": "^5.1.1",
39
39
  "use-sync-external-store": "^1.2.2",
40
- "@mui/x-internals": "8.0.0-alpha.2",
41
- "@mui/x-charts-vendor": "8.0.0-alpha.1"
40
+ "@mui/x-charts-vendor": "8.0.0-alpha.3",
41
+ "@mui/x-internals": "8.0.0-alpha.2"
42
42
  },
43
43
  "peerDependencies": {
44
44
  "@emotion/react": "^11.9.0",