@mui/x-data-grid-premium 7.28.0 → 7.28.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
@@ -3,6 +3,57 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## 7.28.1
7
+
8
+ _Mar 21, 2025_
9
+
10
+ We'd like to offer a big thanks to the 4 contributors who made this release possible. Here are some highlights ✨:
11
+
12
+ - 🐞 Bugfixes
13
+
14
+ Special thanks go out to the community contributors who have helped make this release possible:
15
+ @jyash97, @nusr.
16
+
17
+ Following are all team members who have contributed to this release:
18
+ @arminmeh, @KenanYusuf.
19
+
20
+ <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
21
+
22
+ ### Data Grid
23
+
24
+ #### `@mui/x-data-grid@7.28.1`
25
+
26
+ - [DataGrid] Fix error while editing rows with custom id (@arminmeh) (#17050)
27
+
28
+ #### `@mui/x-data-grid-pro@7.28.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
29
+
30
+ Same changes as in `@mui/x-data-grid@7.28.1`, plus:
31
+
32
+ - [DataGridPro] Fix header select checkbox state with `checkboxSelectionVisibleOnly` and `paginationMode="server"` (@arminmeh) (#17032)
33
+
34
+ #### `@mui/x-data-grid-premium@7.28.1` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
35
+
36
+ Same changes as in `@mui/x-data-grid-pro@7.28.1`, plus:
37
+
38
+ - [DataGridPremium] Update column state correctly when grouping mode is updated with one grouping column (@arminmeh) (#17074)
39
+
40
+ ### Tree View
41
+
42
+ #### `@mui/x-tree-view@7.28.1`
43
+
44
+ Internal changes.
45
+
46
+ #### `@mui/x-tree-view-pro@7.28.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
47
+
48
+ Same changes as in `@mui/x-tree-view@7.28.1`, plus:
49
+
50
+ - [TreeView] Allow moving an item after the last children of some other item (@jyash97) (#17065)
51
+
52
+ ### Docs
53
+
54
+ - [docs] Fix Data Grid advanced list view demo (#17066) @KenanYusuf
55
+ - [docs] Fix custom detail panel toggle state update (@nusr) (#17018)
56
+
6
57
  ## 7.28.0
7
58
 
8
59
  _Mar 17, 2025_
@@ -48,13 +48,10 @@ export const useGridRowGroupingPreProcessors = (apiRef, props) => {
48
48
  const groupingColDefs = getGroupingColDefs(columnsState);
49
49
  let newColumnFields = [];
50
50
  const newColumnsLookup = {};
51
- const prevGroupingfields = [];
52
51
 
53
52
  // We only keep the non-grouping columns
54
53
  columnsState.orderedFields.forEach(field => {
55
- if (isGroupingColumn(field)) {
56
- prevGroupingfields.push(field);
57
- } else {
54
+ if (!isGroupingColumn(field)) {
58
55
  newColumnFields.push(field);
59
56
  newColumnsLookup[field] = columnsState.lookup[field];
60
57
  }
@@ -69,11 +66,10 @@ export const useGridRowGroupingPreProcessors = (apiRef, props) => {
69
66
  }
70
67
  newColumnsLookup[groupingColDef.field] = groupingColDef;
71
68
  });
72
- if (prevGroupingfields.length !== groupingColDefs.length) {
73
- const startIndex = newColumnFields[0] === GRID_CHECKBOX_SELECTION_FIELD ? 1 : 0;
74
- newColumnFields = [...newColumnFields.slice(0, startIndex), ...groupingColDefs.map(colDef => colDef.field), ...newColumnFields.slice(startIndex)];
75
- columnsState.orderedFields = newColumnFields;
76
- }
69
+ const checkBoxFieldIndex = newColumnFields.findIndex(field => field === GRID_CHECKBOX_SELECTION_FIELD);
70
+ const checkBoxColumn = checkBoxFieldIndex !== -1 ? newColumnFields.splice(checkBoxFieldIndex, 1) : [];
71
+ newColumnFields = [...checkBoxColumn, ...groupingColDefs.map(colDef => colDef.field), ...newColumnFields];
72
+ columnsState.orderedFields = newColumnFields;
77
73
  columnsState.lookup = newColumnsLookup;
78
74
  return columnsState;
79
75
  }, [getGroupingColDefs]);
@@ -1,6 +1,6 @@
1
1
  import { ponyfillGlobal } from '@mui/utils';
2
2
  export const getReleaseInfo = () => {
3
- const releaseInfo = "MTc0MjE2MjQwMDAwMA==";
3
+ const releaseInfo = "MTc0MjUxNTIwMDAwMA==";
4
4
  if (process.env.NODE_ENV !== 'production') {
5
5
  // A simple hack to set the value in the test environment (has no build step).
6
6
  // eslint-disable-next-line no-useless-concat
@@ -55,13 +55,10 @@ const useGridRowGroupingPreProcessors = (apiRef, props) => {
55
55
  const groupingColDefs = getGroupingColDefs(columnsState);
56
56
  let newColumnFields = [];
57
57
  const newColumnsLookup = {};
58
- const prevGroupingfields = [];
59
58
 
60
59
  // We only keep the non-grouping columns
61
60
  columnsState.orderedFields.forEach(field => {
62
- if ((0, _gridRowGroupingUtils.isGroupingColumn)(field)) {
63
- prevGroupingfields.push(field);
64
- } else {
61
+ if (!(0, _gridRowGroupingUtils.isGroupingColumn)(field)) {
65
62
  newColumnFields.push(field);
66
63
  newColumnsLookup[field] = columnsState.lookup[field];
67
64
  }
@@ -76,11 +73,10 @@ const useGridRowGroupingPreProcessors = (apiRef, props) => {
76
73
  }
77
74
  newColumnsLookup[groupingColDef.field] = groupingColDef;
78
75
  });
79
- if (prevGroupingfields.length !== groupingColDefs.length) {
80
- const startIndex = newColumnFields[0] === _xDataGridPro.GRID_CHECKBOX_SELECTION_FIELD ? 1 : 0;
81
- newColumnFields = [...newColumnFields.slice(0, startIndex), ...groupingColDefs.map(colDef => colDef.field), ...newColumnFields.slice(startIndex)];
82
- columnsState.orderedFields = newColumnFields;
83
- }
76
+ const checkBoxFieldIndex = newColumnFields.findIndex(field => field === _xDataGridPro.GRID_CHECKBOX_SELECTION_FIELD);
77
+ const checkBoxColumn = checkBoxFieldIndex !== -1 ? newColumnFields.splice(checkBoxFieldIndex, 1) : [];
78
+ newColumnFields = [...checkBoxColumn, ...groupingColDefs.map(colDef => colDef.field), ...newColumnFields];
79
+ columnsState.orderedFields = newColumnFields;
84
80
  columnsState.lookup = newColumnsLookup;
85
81
  return columnsState;
86
82
  }, [getGroupingColDefs]);
package/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-data-grid-premium v7.28.0
2
+ * @mui/x-data-grid-premium v7.28.1
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -48,13 +48,10 @@ export const useGridRowGroupingPreProcessors = (apiRef, props) => {
48
48
  const groupingColDefs = getGroupingColDefs(columnsState);
49
49
  let newColumnFields = [];
50
50
  const newColumnsLookup = {};
51
- const prevGroupingfields = [];
52
51
 
53
52
  // We only keep the non-grouping columns
54
53
  columnsState.orderedFields.forEach(field => {
55
- if (isGroupingColumn(field)) {
56
- prevGroupingfields.push(field);
57
- } else {
54
+ if (!isGroupingColumn(field)) {
58
55
  newColumnFields.push(field);
59
56
  newColumnsLookup[field] = columnsState.lookup[field];
60
57
  }
@@ -69,11 +66,10 @@ export const useGridRowGroupingPreProcessors = (apiRef, props) => {
69
66
  }
70
67
  newColumnsLookup[groupingColDef.field] = groupingColDef;
71
68
  });
72
- if (prevGroupingfields.length !== groupingColDefs.length) {
73
- const startIndex = newColumnFields[0] === GRID_CHECKBOX_SELECTION_FIELD ? 1 : 0;
74
- newColumnFields = [...newColumnFields.slice(0, startIndex), ...groupingColDefs.map(colDef => colDef.field), ...newColumnFields.slice(startIndex)];
75
- columnsState.orderedFields = newColumnFields;
76
- }
69
+ const checkBoxFieldIndex = newColumnFields.findIndex(field => field === GRID_CHECKBOX_SELECTION_FIELD);
70
+ const checkBoxColumn = checkBoxFieldIndex !== -1 ? newColumnFields.splice(checkBoxFieldIndex, 1) : [];
71
+ newColumnFields = [...checkBoxColumn, ...groupingColDefs.map(colDef => colDef.field), ...newColumnFields];
72
+ columnsState.orderedFields = newColumnFields;
77
73
  columnsState.lookup = newColumnsLookup;
78
74
  return columnsState;
79
75
  }, [getGroupingColDefs]);
package/modern/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-data-grid-premium v7.28.0
2
+ * @mui/x-data-grid-premium v7.28.1
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -1,6 +1,6 @@
1
1
  import { ponyfillGlobal } from '@mui/utils';
2
2
  export const getReleaseInfo = () => {
3
- const releaseInfo = "MTc0MjE2MjQwMDAwMA==";
3
+ const releaseInfo = "MTc0MjUxNTIwMDAwMA==";
4
4
  if (process.env.NODE_ENV !== 'production') {
5
5
  // A simple hack to set the value in the test environment (has no build step).
6
6
  // eslint-disable-next-line no-useless-concat
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-data-grid-premium",
3
- "version": "7.28.0",
3
+ "version": "7.28.1",
4
4
  "description": "The Premium plan edition of the Data Grid Components (MUI X).",
5
5
  "author": "MUI Team",
6
6
  "main": "./index.js",
@@ -40,8 +40,8 @@
40
40
  "exceljs": "^4.4.0",
41
41
  "prop-types": "^15.8.1",
42
42
  "reselect": "^5.1.1",
43
- "@mui/x-data-grid": "7.28.0",
44
- "@mui/x-data-grid-pro": "7.28.0",
43
+ "@mui/x-data-grid": "7.28.1",
44
+ "@mui/x-data-grid-pro": "7.28.1",
45
45
  "@mui/x-internals": "7.28.0",
46
46
  "@mui/x-license": "7.28.0"
47
47
  },
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.getReleaseInfo = void 0;
7
7
  var _utils = require("@mui/utils");
8
8
  const getReleaseInfo = () => {
9
- const releaseInfo = "MTc0MjE2MjQwMDAwMA==";
9
+ const releaseInfo = "MTc0MjUxNTIwMDAwMA==";
10
10
  if (process.env.NODE_ENV !== 'production') {
11
11
  // A simple hack to set the value in the test environment (has no build step).
12
12
  // eslint-disable-next-line no-useless-concat