@mui/x-data-grid-premium 7.29.4 → 7.29.6
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 +48 -0
- package/DataGridPremium/useDataGridPremiumComponent.js +9 -5
- package/esm/DataGridPremium/useDataGridPremiumComponent.js +9 -5
- package/esm/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +2 -4
- package/esm/utils/releaseInfo.js +1 -1
- package/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +1 -3
- package/index.js +1 -1
- package/modern/DataGridPremium/useDataGridPremiumComponent.js +9 -5
- package/modern/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.js +2 -4
- package/modern/index.js +1 -1
- package/modern/utils/releaseInfo.js +1 -1
- package/package.json +5 -5
- package/utils/releaseInfo.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,54 @@
|
|
|
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.29.6
|
|
7
|
+
|
|
8
|
+
_Jun 6, 2025_
|
|
9
|
+
|
|
10
|
+
We'd like to extend a big thank you to @arminmeh, who made this release possible.
|
|
11
|
+
|
|
12
|
+
<!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
|
|
13
|
+
|
|
14
|
+
### Data Grid
|
|
15
|
+
|
|
16
|
+
#### `@mui/x-data-grid@7.29.6`
|
|
17
|
+
|
|
18
|
+
- [DataGrid] Keep pipe pre-processors execution order when callback reference changes (#18217) @arminmeh
|
|
19
|
+
|
|
20
|
+
#### `@mui/x-data-grid-pro@7.29.6` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
21
|
+
|
|
22
|
+
Same changes as in `@mui/x-data-grid@7.29.6`.
|
|
23
|
+
|
|
24
|
+
#### `@mui/x-data-grid-premium@7.29.6` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
25
|
+
|
|
26
|
+
Same changes as in `@mui/x-data-grid-pro@7.29.6`.
|
|
27
|
+
|
|
28
|
+
### Docs
|
|
29
|
+
|
|
30
|
+
- [docs] Keep `groupingColDef` reference stable in the grid demos (#17549) @arminmeh
|
|
31
|
+
|
|
32
|
+
## 7.29.5
|
|
33
|
+
|
|
34
|
+
_May 29, 2025_
|
|
35
|
+
|
|
36
|
+
We'd like to extend a big thank you to @cherniavskii, who made this release possible.
|
|
37
|
+
|
|
38
|
+
<!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
|
|
39
|
+
|
|
40
|
+
### Data Grid
|
|
41
|
+
|
|
42
|
+
#### `@mui/x-data-grid@7.29.5`
|
|
43
|
+
|
|
44
|
+
- [DataGrid] Avoid ResizeObserver loop error (@cherniavskii) (#18005) @github-actions[bot]
|
|
45
|
+
|
|
46
|
+
#### `@mui/x-data-grid-pro@7.29.5` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
47
|
+
|
|
48
|
+
Same changes as in `@mui/x-data-grid@7.29.5`.
|
|
49
|
+
|
|
50
|
+
#### `@mui/x-data-grid-premium@7.29.5` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
51
|
+
|
|
52
|
+
Same changes as in `@mui/x-data-grid-pro@7.29.5`.
|
|
53
|
+
|
|
6
54
|
## 7.29.4
|
|
7
55
|
|
|
8
56
|
_May 22, 2025_
|
|
@@ -20,19 +20,23 @@ const useDataGridPremiumComponent = (inputApiRef, props) => {
|
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
22
|
* Register all pre-processors called during state initialization here.
|
|
23
|
+
* Some pre-processors are changing the same part of the state (like the order of the columns).
|
|
24
|
+
* Order them in descending order of priority.
|
|
25
|
+
* For example, left pinned columns should always render first from the left, so the `hydrateColumns` pre-processor from `useGridColumnPinningPreProcessors` should be called last (after all other `hydrateColumns` pre-processors).
|
|
26
|
+
* Similarly, the `hydrateColumns` pre-processor from `useGridRowSelectionPreProcessors` should be called after `useGridRowGroupingPreProcessors` because the selection checkboxes should appear before the grouping columns.
|
|
27
|
+
* Desired autogenerated columns order is:
|
|
28
|
+
* left pinned columns -> row reordering column -> checkbox column -> tree data / row grouping column -> master detail column -> rest of the columns
|
|
23
29
|
*/
|
|
24
|
-
(0, _internals.
|
|
25
|
-
(0, _internals.useGridRowReorderPreProcessors)(apiRef, props);
|
|
30
|
+
(0, _internals.useGridDetailPanelPreProcessors)(apiRef, props);
|
|
26
31
|
(0, _useGridRowGroupingPreProcessors.useGridRowGroupingPreProcessors)(apiRef, props);
|
|
27
32
|
(0, _useGridDataSourceRowGroupingPreProcessors.useGridDataSourceRowGroupingPreProcessors)(apiRef, props);
|
|
28
33
|
(0, _internals.useGridTreeDataPreProcessors)(apiRef, props);
|
|
29
34
|
(0, _internals.useGridDataSourceTreeDataPreProcessors)(apiRef, props);
|
|
35
|
+
(0, _internals.useGridRowSelectionPreProcessors)(apiRef, props);
|
|
30
36
|
(0, _internals.useGridLazyLoaderPreProcessors)(apiRef, props);
|
|
31
37
|
(0, _internals.useGridRowPinningPreProcessors)(apiRef);
|
|
32
38
|
(0, _useGridAggregationPreProcessors.useGridAggregationPreProcessors)(apiRef, props);
|
|
33
|
-
(0, _internals.
|
|
34
|
-
// The column pinning `hydrateColumns` pre-processor must be after every other `hydrateColumns` pre-processors
|
|
35
|
-
// Because it changes the order of the columns.
|
|
39
|
+
(0, _internals.useGridRowReorderPreProcessors)(apiRef, props);
|
|
36
40
|
(0, _internals.useGridColumnPinningPreProcessors)(apiRef, props);
|
|
37
41
|
(0, _internals.useGridRowsPreProcessors)(apiRef);
|
|
38
42
|
|
|
@@ -13,19 +13,23 @@ export const useDataGridPremiumComponent = (inputApiRef, props) => {
|
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* Register all pre-processors called during state initialization here.
|
|
16
|
+
* Some pre-processors are changing the same part of the state (like the order of the columns).
|
|
17
|
+
* Order them in descending order of priority.
|
|
18
|
+
* For example, left pinned columns should always render first from the left, so the `hydrateColumns` pre-processor from `useGridColumnPinningPreProcessors` should be called last (after all other `hydrateColumns` pre-processors).
|
|
19
|
+
* Similarly, the `hydrateColumns` pre-processor from `useGridRowSelectionPreProcessors` should be called after `useGridRowGroupingPreProcessors` because the selection checkboxes should appear before the grouping columns.
|
|
20
|
+
* Desired autogenerated columns order is:
|
|
21
|
+
* left pinned columns -> row reordering column -> checkbox column -> tree data / row grouping column -> master detail column -> rest of the columns
|
|
16
22
|
*/
|
|
17
|
-
|
|
18
|
-
useGridRowReorderPreProcessors(apiRef, props);
|
|
23
|
+
useGridDetailPanelPreProcessors(apiRef, props);
|
|
19
24
|
useGridRowGroupingPreProcessors(apiRef, props);
|
|
20
25
|
useGridDataSourceRowGroupingPreProcessors(apiRef, props);
|
|
21
26
|
useGridTreeDataPreProcessors(apiRef, props);
|
|
22
27
|
useGridDataSourceTreeDataPreProcessors(apiRef, props);
|
|
28
|
+
useGridRowSelectionPreProcessors(apiRef, props);
|
|
23
29
|
useGridLazyLoaderPreProcessors(apiRef, props);
|
|
24
30
|
useGridRowPinningPreProcessors(apiRef);
|
|
25
31
|
useGridAggregationPreProcessors(apiRef, props);
|
|
26
|
-
|
|
27
|
-
// The column pinning `hydrateColumns` pre-processor must be after every other `hydrateColumns` pre-processors
|
|
28
|
-
// Because it changes the order of the columns.
|
|
32
|
+
useGridRowReorderPreProcessors(apiRef, props);
|
|
29
33
|
useGridColumnPinningPreProcessors(apiRef, props);
|
|
30
34
|
useGridRowsPreProcessors(apiRef);
|
|
31
35
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { gridColumnLookupSelector, gridRowTreeSelector, useFirstRender
|
|
2
|
+
import { gridColumnLookupSelector, gridRowTreeSelector, useFirstRender } from '@mui/x-data-grid-pro';
|
|
3
3
|
import { useGridRegisterPipeProcessor, useGridRegisterStrategyProcessor, sortRowTree, createRowTree, updateRowTree, getVisibleRowsLookup } from '@mui/x-data-grid-pro/internals';
|
|
4
4
|
import { gridRowGroupingModelSelector, gridRowGroupingSanitizedModelSelector } from "./gridRowGroupingSelector.js";
|
|
5
5
|
import { createGroupingColDefForAllGroupingCriteria, createGroupingColDefForOneGroupingCriteria } from "./createGroupingColDef.js";
|
|
@@ -66,9 +66,7 @@ export const useGridRowGroupingPreProcessors = (apiRef, props) => {
|
|
|
66
66
|
}
|
|
67
67
|
newColumnsLookup[groupingColDef.field] = groupingColDef;
|
|
68
68
|
});
|
|
69
|
-
|
|
70
|
-
const checkBoxColumn = checkBoxFieldIndex !== -1 ? newColumnFields.splice(checkBoxFieldIndex, 1) : [];
|
|
71
|
-
newColumnFields = [...checkBoxColumn, ...groupingColDefs.map(colDef => colDef.field), ...newColumnFields];
|
|
69
|
+
newColumnFields = [...groupingColDefs.map(colDef => colDef.field), ...newColumnFields];
|
|
72
70
|
columnsState.orderedFields = newColumnFields;
|
|
73
71
|
columnsState.lookup = newColumnsLookup;
|
|
74
72
|
return columnsState;
|
package/esm/utils/releaseInfo.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ponyfillGlobal } from '@mui/utils';
|
|
2
2
|
export const getReleaseInfo = () => {
|
|
3
|
-
const releaseInfo = "
|
|
3
|
+
const releaseInfo = "MTc0OTE2MDgwMDAwMA==";
|
|
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
|
|
@@ -73,9 +73,7 @@ const useGridRowGroupingPreProcessors = (apiRef, props) => {
|
|
|
73
73
|
}
|
|
74
74
|
newColumnsLookup[groupingColDef.field] = groupingColDef;
|
|
75
75
|
});
|
|
76
|
-
|
|
77
|
-
const checkBoxColumn = checkBoxFieldIndex !== -1 ? newColumnFields.splice(checkBoxFieldIndex, 1) : [];
|
|
78
|
-
newColumnFields = [...checkBoxColumn, ...groupingColDefs.map(colDef => colDef.field), ...newColumnFields];
|
|
76
|
+
newColumnFields = [...groupingColDefs.map(colDef => colDef.field), ...newColumnFields];
|
|
79
77
|
columnsState.orderedFields = newColumnFields;
|
|
80
78
|
columnsState.lookup = newColumnsLookup;
|
|
81
79
|
return columnsState;
|
package/index.js
CHANGED
|
@@ -13,19 +13,23 @@ export const useDataGridPremiumComponent = (inputApiRef, props) => {
|
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* Register all pre-processors called during state initialization here.
|
|
16
|
+
* Some pre-processors are changing the same part of the state (like the order of the columns).
|
|
17
|
+
* Order them in descending order of priority.
|
|
18
|
+
* For example, left pinned columns should always render first from the left, so the `hydrateColumns` pre-processor from `useGridColumnPinningPreProcessors` should be called last (after all other `hydrateColumns` pre-processors).
|
|
19
|
+
* Similarly, the `hydrateColumns` pre-processor from `useGridRowSelectionPreProcessors` should be called after `useGridRowGroupingPreProcessors` because the selection checkboxes should appear before the grouping columns.
|
|
20
|
+
* Desired autogenerated columns order is:
|
|
21
|
+
* left pinned columns -> row reordering column -> checkbox column -> tree data / row grouping column -> master detail column -> rest of the columns
|
|
16
22
|
*/
|
|
17
|
-
|
|
18
|
-
useGridRowReorderPreProcessors(apiRef, props);
|
|
23
|
+
useGridDetailPanelPreProcessors(apiRef, props);
|
|
19
24
|
useGridRowGroupingPreProcessors(apiRef, props);
|
|
20
25
|
useGridDataSourceRowGroupingPreProcessors(apiRef, props);
|
|
21
26
|
useGridTreeDataPreProcessors(apiRef, props);
|
|
22
27
|
useGridDataSourceTreeDataPreProcessors(apiRef, props);
|
|
28
|
+
useGridRowSelectionPreProcessors(apiRef, props);
|
|
23
29
|
useGridLazyLoaderPreProcessors(apiRef, props);
|
|
24
30
|
useGridRowPinningPreProcessors(apiRef);
|
|
25
31
|
useGridAggregationPreProcessors(apiRef, props);
|
|
26
|
-
|
|
27
|
-
// The column pinning `hydrateColumns` pre-processor must be after every other `hydrateColumns` pre-processors
|
|
28
|
-
// Because it changes the order of the columns.
|
|
32
|
+
useGridRowReorderPreProcessors(apiRef, props);
|
|
29
33
|
useGridColumnPinningPreProcessors(apiRef, props);
|
|
30
34
|
useGridRowsPreProcessors(apiRef);
|
|
31
35
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { gridColumnLookupSelector, gridRowTreeSelector, useFirstRender
|
|
2
|
+
import { gridColumnLookupSelector, gridRowTreeSelector, useFirstRender } from '@mui/x-data-grid-pro';
|
|
3
3
|
import { useGridRegisterPipeProcessor, useGridRegisterStrategyProcessor, sortRowTree, createRowTree, updateRowTree, getVisibleRowsLookup } from '@mui/x-data-grid-pro/internals';
|
|
4
4
|
import { gridRowGroupingModelSelector, gridRowGroupingSanitizedModelSelector } from "./gridRowGroupingSelector.js";
|
|
5
5
|
import { createGroupingColDefForAllGroupingCriteria, createGroupingColDefForOneGroupingCriteria } from "./createGroupingColDef.js";
|
|
@@ -66,9 +66,7 @@ export const useGridRowGroupingPreProcessors = (apiRef, props) => {
|
|
|
66
66
|
}
|
|
67
67
|
newColumnsLookup[groupingColDef.field] = groupingColDef;
|
|
68
68
|
});
|
|
69
|
-
|
|
70
|
-
const checkBoxColumn = checkBoxFieldIndex !== -1 ? newColumnFields.splice(checkBoxFieldIndex, 1) : [];
|
|
71
|
-
newColumnFields = [...checkBoxColumn, ...groupingColDefs.map(colDef => colDef.field), ...newColumnFields];
|
|
69
|
+
newColumnFields = [...groupingColDefs.map(colDef => colDef.field), ...newColumnFields];
|
|
72
70
|
columnsState.orderedFields = newColumnFields;
|
|
73
71
|
columnsState.lookup = newColumnsLookup;
|
|
74
72
|
return columnsState;
|
package/modern/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ponyfillGlobal } from '@mui/utils';
|
|
2
2
|
export const getReleaseInfo = () => {
|
|
3
|
-
const releaseInfo = "
|
|
3
|
+
const releaseInfo = "MTc0OTE2MDgwMDAwMA==";
|
|
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.29.
|
|
3
|
+
"version": "7.29.6",
|
|
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,10 +40,10 @@
|
|
|
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.29.
|
|
44
|
-
"@mui/x-
|
|
45
|
-
"@mui/x-
|
|
46
|
-
"@mui/x-
|
|
43
|
+
"@mui/x-data-grid": "7.29.6",
|
|
44
|
+
"@mui/x-license": "7.29.1",
|
|
45
|
+
"@mui/x-data-grid-pro": "7.29.6",
|
|
46
|
+
"@mui/x-internals": "7.29.0"
|
|
47
47
|
},
|
|
48
48
|
"peerDependencies": {
|
|
49
49
|
"@emotion/react": "^11.9.0",
|
package/utils/releaseInfo.js
CHANGED
|
@@ -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 = "
|
|
9
|
+
const releaseInfo = "MTc0OTE2MDgwMDAwMA==";
|
|
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
|