@mui/x-data-grid 8.0.0-beta.0 → 8.0.0-beta.1

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,83 @@
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-beta.1
9
+
10
+ _Mar 21, 2025_
11
+
12
+ We'd like to offer a big thanks to the 6 contributors who made this release possible. Here are some highlights ✨:
13
+
14
+ - 🐞 Bugfixes
15
+
16
+ Special thanks go out to the community members for their valuable contributions:
17
+ @jyash97.
18
+ Following are all team members who have contributed to this release:
19
+ @alexfauquette, @arminmeh, @flaviendelangle, @JCQuintas, @KenanYusuf.
20
+
21
+ <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
22
+
23
+ ### Data Grid
24
+
25
+ #### `@mui/x-data-grid@8.0.0-beta.1`
26
+
27
+ - [DataGrid] Fix error caused by `forwardRef` to `ClickAwayListener` (#17049) @arminmeh
28
+ - [DataGrid] Fix error while editing rows with custom id (#17048) @arminmeh
29
+
30
+ #### `@mui/x-data-grid-pro@8.0.0-beta.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
31
+
32
+ Same changes as in `@mui/x-data-grid@8.0.0-beta.1`, plus:
33
+
34
+ - [DataGridPro] Fix header select checkbox state with `checkboxSelectionVisibleOnly` and `paginationMode="server"` (#17026) @arminmeh
35
+
36
+ #### `@mui/x-data-grid-premium@8.0.0-beta.1` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
37
+
38
+ Same changes as in `@mui/x-data-grid-pro@8.0.0-beta.1`, plus:
39
+
40
+ - [DataGridPremium] Update column state correctly when grouping mode is updated with one grouping column (#17069) @arminmeh
41
+
42
+ ### Date and Time Pickers
43
+
44
+ #### `@mui/x-date-pickers@8.0.0-beta.1`
45
+
46
+ - [fields] Clean the `useField` hook (part 1) (#16944) @flaviendelangle
47
+ - [fields] Improve the check for year in `doesSectionFormatHaveLeadingZeros` (#17051) @flaviendelangle
48
+ - [pickers] Deprecate the `disableOpenPicker` prop (#17040) @flaviendelangle
49
+ - [pickers] Simplify the `cleanLeadingZeros` method (#17063) @flaviendelangle
50
+ - [pickers] Use the new `ownerState` in `PickersDay` and `DateRangePickerDay` (#17035) @flaviendelangle
51
+
52
+ #### `@mui/x-date-pickers-pro@8.0.0-beta.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
53
+
54
+ Same changes as in `@mui/x-date-pickers@8.0.0-beta.1`, plus:
55
+
56
+ - [DateRangePicker] Use desktop media query constant on range pickers (#17052) @flaviendelangle
57
+
58
+ ### Charts
59
+
60
+ #### `@mui/x-charts@8.0.0-beta.1`
61
+
62
+ - [charts] Fix horizontal bar with multiple axes (#17059) @alexfauquette
63
+
64
+ #### `@mui/x-charts-pro@8.0.0-beta.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
65
+
66
+ Same changes as in `@mui/x-charts@8.0.0-beta.1`, plus:
67
+
68
+ - [charts-pro] Allow disabling Heatmap tooltip (#17060) @JCQuintas
69
+
70
+ ### Tree View
71
+
72
+ #### `@mui/x-tree-view@8.0.0-beta.1`
73
+
74
+ Internal changes.
75
+
76
+ #### `@mui/x-tree-view-pro@8.0.0-beta.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
77
+
78
+ Same changes as in `@mui/x-tree-view@8.0.0-beta.1`.
79
+
80
+ ### Docs
81
+
82
+ - [docs] Fix 404 (#17033) @alexfauquette
83
+ - [docs] Fix Data Grid advanced list view demo (#17064) @KenanYusuf
84
+
8
85
  ## 8.0.0-beta.0
9
86
 
10
87
  <img width="100%" alt="MUI X v8 Beta is live" src="https://github.com/user-attachments/assets/61ec4dd8-c946-456b-8b45-d51de8772f5d">
@@ -77,7 +77,7 @@ const GridHeaderCheckbox = exports.GridHeaderCheckbox = (0, _forwardRef.forwardR
77
77
 
78
78
  // All the rows that could be selected / unselected by toggling this checkbox
79
79
  const selectionCandidates = React.useMemo(() => {
80
- const rowIds = !rootProps.pagination || !rootProps.checkboxSelectionVisibleOnly ? visibleRowIds : paginatedVisibleRowIds;
80
+ const rowIds = !rootProps.pagination || !rootProps.checkboxSelectionVisibleOnly || rootProps.paginationMode === 'server' ? visibleRowIds : paginatedVisibleRowIds;
81
81
 
82
82
  // Convert to a Set to make O(1) checking if a row exists or not
83
83
  const candidates = new Set();
@@ -88,7 +88,7 @@ const GridHeaderCheckbox = exports.GridHeaderCheckbox = (0, _forwardRef.forwardR
88
88
  }
89
89
  }
90
90
  return candidates;
91
- }, [apiRef, rootProps.pagination, rootProps.checkboxSelectionVisibleOnly, paginatedVisibleRowIds, visibleRowIds]);
91
+ }, [apiRef, rootProps.pagination, rootProps.paginationMode, rootProps.checkboxSelectionVisibleOnly, paginatedVisibleRowIds, visibleRowIds]);
92
92
 
93
93
  // Amount of rows selected and that are visible in the current page
94
94
  const currentSelectionSize = React.useMemo(() => {
@@ -69,7 +69,7 @@ const GridHeaderCheckbox = forwardRef(function GridHeaderCheckbox(props, ref) {
69
69
 
70
70
  // All the rows that could be selected / unselected by toggling this checkbox
71
71
  const selectionCandidates = React.useMemo(() => {
72
- const rowIds = !rootProps.pagination || !rootProps.checkboxSelectionVisibleOnly ? visibleRowIds : paginatedVisibleRowIds;
72
+ const rowIds = !rootProps.pagination || !rootProps.checkboxSelectionVisibleOnly || rootProps.paginationMode === 'server' ? visibleRowIds : paginatedVisibleRowIds;
73
73
 
74
74
  // Convert to a Set to make O(1) checking if a row exists or not
75
75
  const candidates = new Set();
@@ -80,7 +80,7 @@ const GridHeaderCheckbox = forwardRef(function GridHeaderCheckbox(props, ref) {
80
80
  }
81
81
  }
82
82
  return candidates;
83
- }, [apiRef, rootProps.pagination, rootProps.checkboxSelectionVisibleOnly, paginatedVisibleRowIds, visibleRowIds]);
83
+ }, [apiRef, rootProps.pagination, rootProps.paginationMode, rootProps.checkboxSelectionVisibleOnly, paginatedVisibleRowIds, visibleRowIds]);
84
84
 
85
85
  // Amount of rows selected and that are visible in the current page
86
86
  const currentSelectionSize = React.useMemo(() => {
@@ -405,7 +405,7 @@ export const useGridRowEditing = (apiRef, props) => {
405
405
  });
406
406
  return;
407
407
  }
408
- const rowUpdate = apiRef.current.getRowWithUpdatedValuesFromRowEditing(row.id);
408
+ const rowUpdate = apiRef.current.getRowWithUpdatedValuesFromRowEditing(id);
409
409
  if (processRowUpdate) {
410
410
  const handleError = errorThrown => {
411
411
  // The row might have been deleted
package/esm/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-data-grid v8.0.0-beta.0
2
+ * @mui/x-data-grid v8.0.0-beta.1
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -38,7 +38,7 @@ import MUIInputAdornment, { inputAdornmentClasses } from '@mui/material/InputAdo
38
38
  import MUITooltip from '@mui/material/Tooltip';
39
39
  import MUIPagination, { tablePaginationClasses } from '@mui/material/TablePagination';
40
40
  import MUIPopper from '@mui/material/Popper';
41
- import MUIClickAwayListener from '@mui/material/ClickAwayListener';
41
+ import ClickAwayListener from '@mui/material/ClickAwayListener';
42
42
  import MUIGrow from '@mui/material/Grow';
43
43
  import MUIPaper from '@mui/material/Paper';
44
44
  import MUIInputLabel from '@mui/material/InputLabel';
@@ -50,7 +50,6 @@ import { useGridApiContext } from "../hooks/utils/useGridApiContext.js";
50
50
  import { useGridRootProps } from "../hooks/utils/useGridRootProps.js";
51
51
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
52
52
  export { useMaterialCSSVariables } from "./variables.js";
53
- const ClickAwayListener = forwardRef(MUIClickAwayListener);
54
53
  const InputAdornment = styled(MUIInputAdornment)({
55
54
  [`&.${inputAdornmentClasses.positionEnd} .${iconButtonClasses.sizeSmall}`]: {
56
55
  marginRight: '-7px'
@@ -413,7 +413,7 @@ const useGridRowEditing = (apiRef, props) => {
413
413
  });
414
414
  return;
415
415
  }
416
- const rowUpdate = apiRef.current.getRowWithUpdatedValuesFromRowEditing(row.id);
416
+ const rowUpdate = apiRef.current.getRowWithUpdatedValuesFromRowEditing(id);
417
417
  if (processRowUpdate) {
418
418
  const handleError = errorThrown => {
419
419
  // The row might have been deleted
package/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-data-grid v8.0.0-beta.0
2
+ * @mui/x-data-grid v8.0.0-beta.1
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
package/material/index.js CHANGED
@@ -64,7 +64,6 @@ const _excluded = ["id", "label", "labelId", "disabled", "slotProps", "onChange"
64
64
  _excluded8 = ["inputProps", "InputProps", "InputLabelProps"],
65
65
  _excluded9 = ["slotProps"],
66
66
  _excluded10 = ["native"];
67
- const ClickAwayListener = (0, _forwardRef.forwardRef)(_ClickAwayListener.default);
68
67
  const InputAdornment = (0, _styles.styled)(_InputAdornment.default)({
69
68
  [`&.${_InputAdornment.inputAdornmentClasses.positionEnd} .${_IconButton.iconButtonClasses.sizeSmall}`]: {
70
69
  marginRight: '-7px'
@@ -526,7 +525,7 @@ function clickAwayWrapper(props, content) {
526
525
  if (props.onClickAway === undefined) {
527
526
  return content;
528
527
  }
529
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(ClickAwayListener, {
528
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ClickAwayListener.default, {
530
529
  onClickAway: props.onClickAway,
531
530
  touchEvent: props.clickAwayTouchEvent,
532
531
  mouseEvent: props.clickAwayMouseEvent,
@@ -69,7 +69,7 @@ const GridHeaderCheckbox = forwardRef(function GridHeaderCheckbox(props, ref) {
69
69
 
70
70
  // All the rows that could be selected / unselected by toggling this checkbox
71
71
  const selectionCandidates = React.useMemo(() => {
72
- const rowIds = !rootProps.pagination || !rootProps.checkboxSelectionVisibleOnly ? visibleRowIds : paginatedVisibleRowIds;
72
+ const rowIds = !rootProps.pagination || !rootProps.checkboxSelectionVisibleOnly || rootProps.paginationMode === 'server' ? visibleRowIds : paginatedVisibleRowIds;
73
73
 
74
74
  // Convert to a Set to make O(1) checking if a row exists or not
75
75
  const candidates = new Set();
@@ -80,7 +80,7 @@ const GridHeaderCheckbox = forwardRef(function GridHeaderCheckbox(props, ref) {
80
80
  }
81
81
  }
82
82
  return candidates;
83
- }, [apiRef, rootProps.pagination, rootProps.checkboxSelectionVisibleOnly, paginatedVisibleRowIds, visibleRowIds]);
83
+ }, [apiRef, rootProps.pagination, rootProps.paginationMode, rootProps.checkboxSelectionVisibleOnly, paginatedVisibleRowIds, visibleRowIds]);
84
84
 
85
85
  // Amount of rows selected and that are visible in the current page
86
86
  const currentSelectionSize = React.useMemo(() => {
@@ -405,7 +405,7 @@ export const useGridRowEditing = (apiRef, props) => {
405
405
  });
406
406
  return;
407
407
  }
408
- const rowUpdate = apiRef.current.getRowWithUpdatedValuesFromRowEditing(row.id);
408
+ const rowUpdate = apiRef.current.getRowWithUpdatedValuesFromRowEditing(id);
409
409
  if (processRowUpdate) {
410
410
  const handleError = errorThrown => {
411
411
  // The row might have been deleted
package/modern/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-data-grid v8.0.0-beta.0
2
+ * @mui/x-data-grid v8.0.0-beta.1
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -38,7 +38,7 @@ import MUIInputAdornment, { inputAdornmentClasses } from '@mui/material/InputAdo
38
38
  import MUITooltip from '@mui/material/Tooltip';
39
39
  import MUIPagination, { tablePaginationClasses } from '@mui/material/TablePagination';
40
40
  import MUIPopper from '@mui/material/Popper';
41
- import MUIClickAwayListener from '@mui/material/ClickAwayListener';
41
+ import ClickAwayListener from '@mui/material/ClickAwayListener';
42
42
  import MUIGrow from '@mui/material/Grow';
43
43
  import MUIPaper from '@mui/material/Paper';
44
44
  import MUIInputLabel from '@mui/material/InputLabel';
@@ -50,7 +50,6 @@ import { useGridApiContext } from "../hooks/utils/useGridApiContext.js";
50
50
  import { useGridRootProps } from "../hooks/utils/useGridRootProps.js";
51
51
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
52
52
  export { useMaterialCSSVariables } from "./variables.js";
53
- const ClickAwayListener = forwardRef(MUIClickAwayListener);
54
53
  const InputAdornment = styled(MUIInputAdornment)({
55
54
  [`&.${inputAdornmentClasses.positionEnd} .${iconButtonClasses.sizeSmall}`]: {
56
55
  marginRight: '-7px'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-data-grid",
3
- "version": "8.0.0-beta.0",
3
+ "version": "8.0.0-beta.1",
4
4
  "description": "The Community plan edition of the Data Grid components (MUI X).",
5
5
  "author": "MUI Team",
6
6
  "main": "./index.js",