@mui/x-data-grid 8.27.0 → 8.27.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 +158 -0
- package/DataGrid/DataGrid.js +7 -0
- package/DataGrid/index.js +0 -1
- package/components/GridColumnSortButton.js +2 -2
- package/components/GridScrollArea.js +2 -2
- package/components/GridScrollShadows.js +2 -2
- package/components/GridSkeletonLoadingOverlay.js +2 -2
- package/components/base/GridOverlays.js +3 -3
- package/components/columnHeaders/GridColumnHeaderItem.js +31 -1
- package/components/columnHeaders/GridColumnHeaderTitle.js +2 -2
- package/components/columnHeaders/GridIconButtonContainer.js +2 -2
- package/components/containers/GridRootStyles.js +23 -217
- package/components/menu/columnMenu/GridColumnMenu.d.ts +2 -2
- package/components/menu/columnMenu/GridColumnMenu.js +2 -0
- package/components/menu/columnMenu/GridColumnMenuProps.d.ts +9 -1
- package/components/menu/columnMenu/index.d.ts +1 -1
- package/components/menu/columnMenu/index.js +0 -12
- package/components/toolbar/GridToolbarQuickFilter.js +4 -4
- package/components/toolbarV8/GridToolbar.js +3 -3
- package/components/toolbarV8/Toolbar.d.ts +1 -1
- package/components/toolbarV8/Toolbar.js +2 -2
- package/components/virtualization/GridBottomContainer.js +2 -2
- package/components/virtualization/GridMainContainer.js +3 -3
- package/components/virtualization/GridTopContainer.js +2 -2
- package/components/virtualization/GridVirtualScrollbar.d.ts +1 -1
- package/components/virtualization/GridVirtualScrollbar.js +5 -5
- package/components/virtualization/GridVirtualScroller.js +2 -2
- package/components/virtualization/GridVirtualScrollerFiller.js +6 -6
- package/constants/dataGridPropsDefaultValues.js +1 -0
- package/esm/DataGrid/DataGrid.js +7 -0
- package/esm/DataGrid/index.js +0 -1
- package/esm/components/GridColumnSortButton.js +1 -1
- package/esm/components/GridScrollArea.js +1 -1
- package/esm/components/GridScrollShadows.js +1 -1
- package/esm/components/GridSkeletonLoadingOverlay.js +1 -1
- package/esm/components/base/GridOverlays.js +1 -1
- package/esm/components/columnHeaders/GridColumnHeaderItem.js +31 -1
- package/esm/components/columnHeaders/GridColumnHeaderTitle.js +1 -1
- package/esm/components/columnHeaders/GridIconButtonContainer.js +1 -1
- package/esm/components/containers/GridRootStyles.js +23 -217
- package/esm/components/menu/columnMenu/GridColumnMenu.d.ts +2 -2
- package/esm/components/menu/columnMenu/GridColumnMenu.js +2 -0
- package/esm/components/menu/columnMenu/GridColumnMenuProps.d.ts +9 -1
- package/esm/components/menu/columnMenu/index.d.ts +1 -1
- package/esm/components/menu/columnMenu/index.js +0 -1
- package/esm/components/toolbar/GridToolbarQuickFilter.js +1 -1
- package/esm/components/toolbarV8/GridToolbar.js +1 -1
- package/esm/components/toolbarV8/Toolbar.d.ts +1 -1
- package/esm/components/toolbarV8/Toolbar.js +1 -1
- package/esm/components/virtualization/GridBottomContainer.js +1 -1
- package/esm/components/virtualization/GridMainContainer.js +1 -1
- package/esm/components/virtualization/GridTopContainer.js +1 -1
- package/esm/components/virtualization/GridVirtualScrollbar.d.ts +1 -1
- package/esm/components/virtualization/GridVirtualScrollbar.js +1 -1
- package/esm/components/virtualization/GridVirtualScroller.js +1 -1
- package/esm/components/virtualization/GridVirtualScrollerFiller.js +1 -1
- package/esm/constants/dataGridPropsDefaultValues.js +1 -0
- package/esm/hooks/features/columnMenu/getColumnMenuItemKeys.d.ts +17 -0
- package/esm/hooks/features/columnMenu/getColumnMenuItemKeys.js +36 -0
- package/esm/hooks/features/columnMenu/useGridColumnMenuSlots.js +11 -16
- package/esm/hooks/features/dataSource/models.d.ts +4 -1
- package/esm/hooks/features/dataSource/useGridDataSourceBase.d.ts +5 -2
- package/esm/hooks/features/dataSource/useGridDataSourceBase.js +93 -6
- package/esm/hooks/features/editing/useGridRowEditing.js +14 -4
- package/esm/index.js +1 -1
- package/esm/internals/index.d.ts +1 -0
- package/esm/models/api/gridEditingApi.d.ts +0 -1
- package/esm/models/params/gridRowParams.d.ts +0 -1
- package/esm/models/props/DataGridProps.d.ts +7 -0
- package/hooks/features/columnMenu/getColumnMenuItemKeys.d.ts +17 -0
- package/hooks/features/columnMenu/getColumnMenuItemKeys.js +43 -0
- package/hooks/features/columnMenu/useGridColumnMenuSlots.js +11 -16
- package/hooks/features/dataSource/models.d.ts +4 -1
- package/hooks/features/dataSource/useGridDataSourceBase.d.ts +5 -2
- package/hooks/features/dataSource/useGridDataSourceBase.js +92 -5
- package/hooks/features/editing/useGridRowEditing.js +14 -4
- package/index.js +1 -1
- package/internals/index.d.ts +1 -0
- package/models/api/gridEditingApi.d.ts +0 -1
- package/models/params/gridRowParams.d.ts +0 -1
- package/models/props/DataGridProps.d.ts +7 -0
- package/package.json +1 -1
- package/esm/index.css +0 -5
- package/index.css +0 -5
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,164 @@
|
|
|
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.27.3
|
|
9
|
+
|
|
10
|
+
_Feb 25, 2026_
|
|
11
|
+
|
|
12
|
+
We'd like to extend a big thank you to the 4 contributors who made this release possible. Here are some highlights ✨:
|
|
13
|
+
|
|
14
|
+
- 🐞 Bugfixes
|
|
15
|
+
- ⚡️ Improved dynamic data support and cache invalidation in lazy loading for Data Grid Pro
|
|
16
|
+
|
|
17
|
+
The following team members contributed to this release:
|
|
18
|
+
@cherniavskii, @michelengelen, @MBilalShafi, @arminmeh
|
|
19
|
+
|
|
20
|
+
### Data Grid
|
|
21
|
+
|
|
22
|
+
#### `@mui/x-data-grid@8.27.3`
|
|
23
|
+
|
|
24
|
+
- [DataGrid] Preserve key input during row edit when using `rowModesModel` (#21457) @michelengelen
|
|
25
|
+
|
|
26
|
+
#### `@mui/x-data-grid-pro@8.27.3` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
27
|
+
|
|
28
|
+
Same changes as in `@mui/x-data-grid@8.27.3`, plus:
|
|
29
|
+
|
|
30
|
+
- [DataGridPro] Improve dynamic data support and cache invalidation in lazy loading (#21465) @MBilalShafi
|
|
31
|
+
|
|
32
|
+
#### `@mui/x-data-grid-premium@8.27.3` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
33
|
+
|
|
34
|
+
Same changes as in `@mui/x-data-grid-pro@8.27.3`.
|
|
35
|
+
|
|
36
|
+
### Core
|
|
37
|
+
|
|
38
|
+
- [code-infra] Do not append `x` to the last version for the compare API (#21422) @arminmeh
|
|
39
|
+
- [docs-infra] Fix current version detection logic (#21415) @cherniavskii
|
|
40
|
+
|
|
41
|
+
## 8.27.2
|
|
42
|
+
|
|
43
|
+
_Feb 20, 2026_
|
|
44
|
+
|
|
45
|
+
We'd like to extend a big thank you to the 3 contributors who made this release possible. Here are some highlights ✨:
|
|
46
|
+
|
|
47
|
+
- 🐞 Bugfixes
|
|
48
|
+
|
|
49
|
+
### Data Grid
|
|
50
|
+
|
|
51
|
+
#### `@mui/x-data-grid@8.27.2`
|
|
52
|
+
|
|
53
|
+
Internal changes.
|
|
54
|
+
|
|
55
|
+
#### `@mui/x-data-grid-pro@8.27.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
56
|
+
|
|
57
|
+
Same changes as in `@mui/x-data-grid@8.27.2`, plus:
|
|
58
|
+
|
|
59
|
+
- [DataGridPro] Fix number input visibility in header filters (#21345) @michelengelen
|
|
60
|
+
|
|
61
|
+
#### `@mui/x-data-grid-premium@8.27.2` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
62
|
+
|
|
63
|
+
Same changes as in `@mui/x-data-grid-pro@8.27.2`.
|
|
64
|
+
|
|
65
|
+
### Date and Time Pickers
|
|
66
|
+
|
|
67
|
+
#### `@mui/x-date-pickers@8.27.2`
|
|
68
|
+
|
|
69
|
+
- [DatePicker] Add keyboard support for selecting day, month, and year (#21399) @michelengelen
|
|
70
|
+
|
|
71
|
+
#### `@mui/x-date-pickers-pro@8.27.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
72
|
+
|
|
73
|
+
Same changes as in `@mui/x-date-pickers@8.27.2`, plus:
|
|
74
|
+
|
|
75
|
+
- [DateRangePicker] Fix timezone update issue leading to `invalidRange` error (#21382) @michelengelen
|
|
76
|
+
|
|
77
|
+
### Charts
|
|
78
|
+
|
|
79
|
+
#### `@mui/x-charts@8.27.2`
|
|
80
|
+
|
|
81
|
+
Internal changes.
|
|
82
|
+
|
|
83
|
+
#### `@mui/x-charts-pro@8.27.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
84
|
+
|
|
85
|
+
Same changes as in `@mui/x-charts@8.27.2`, plus:
|
|
86
|
+
|
|
87
|
+
- [charts-pro] Handle edge case in export image (#21206) @bernardobelchior
|
|
88
|
+
|
|
89
|
+
#### `@mui/x-charts-premium@8.27.2` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
90
|
+
|
|
91
|
+
Same changes as in `@mui/x-charts-pro@8.27.2`.
|
|
92
|
+
|
|
93
|
+
### Tree View
|
|
94
|
+
|
|
95
|
+
#### `@mui/x-tree-view@8.27.2`
|
|
96
|
+
|
|
97
|
+
- [tree view] Focus item sibling on unmount instead of the 1st item (#21386) @flaviendelangle
|
|
98
|
+
|
|
99
|
+
#### `@mui/x-tree-view-pro@8.27.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
100
|
+
|
|
101
|
+
Same changes as in `@mui/x-tree-view@8.27.2`.
|
|
102
|
+
|
|
103
|
+
### Codemod
|
|
104
|
+
|
|
105
|
+
#### `@mui/x-codemod@8.27.2`
|
|
106
|
+
|
|
107
|
+
Internal changes.
|
|
108
|
+
|
|
109
|
+
### Core
|
|
110
|
+
|
|
111
|
+
- [code-infra] Only ignore `renovate[bot]` in changelog generation script (#21188) @bernardobelchior
|
|
112
|
+
|
|
113
|
+
## v8.27.1
|
|
114
|
+
|
|
115
|
+
<!-- generated comparing v8.27.0..v8.x -->
|
|
116
|
+
|
|
117
|
+
_Feb 13, 2026_
|
|
118
|
+
|
|
119
|
+
We'd like to extend a big thank you to the 6 contributors who made this release possible. Here are some highlights ✨:
|
|
120
|
+
|
|
121
|
+
- 📝 CSS bundler support is no longer needed for the Data Grid
|
|
122
|
+
- 🐞 Bugfixes
|
|
123
|
+
|
|
124
|
+
Special thanks go out to these community members for their valuable contributions:
|
|
125
|
+
@sai6855
|
|
126
|
+
|
|
127
|
+
The following team members contributed to this release:
|
|
128
|
+
@arminmeh, @cherniavskii, @flaviendelangle, @mj12albert, @MBilalShafi
|
|
129
|
+
|
|
130
|
+
### Data Grid
|
|
131
|
+
|
|
132
|
+
#### `@mui/x-data-grid@8.27.1`
|
|
133
|
+
|
|
134
|
+
- [DataGrid] Hide column menu icon when there are no items (#21303) @MBilalShafi
|
|
135
|
+
- [DataGrid] Migrate styled imports and remove `index.css` (#21176) @MBilalShafi
|
|
136
|
+
- [DataGrid] Optimize `GridRootStyles` overrides resolver (#21251) @sai6855
|
|
137
|
+
|
|
138
|
+
#### `@mui/x-data-grid-pro@8.27.1` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
139
|
+
|
|
140
|
+
Same changes as in `@mui/x-data-grid@8.27.1`, plus:
|
|
141
|
+
|
|
142
|
+
- [DataGridPro] Fix column pinning issue with `restoreState` (#21305) @MBilalShafi
|
|
143
|
+
- [DataGridPro] Fix lazy loading params for page with one row (#21238) @MBilalShafi
|
|
144
|
+
- [DataGridPro] Properly extract parent path (#21301) @arminmeh
|
|
145
|
+
|
|
146
|
+
#### `@mui/x-data-grid-premium@8.27.1` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
147
|
+
|
|
148
|
+
Same changes as in `@mui/x-data-grid-pro@8.27.1`, plus:
|
|
149
|
+
|
|
150
|
+
- [DataGridPremium] Fix aggregation display when `initialState` has both `sortModel` and `pinnedColumns` (#21152) @mj12albert
|
|
151
|
+
|
|
152
|
+
### Tree View
|
|
153
|
+
|
|
154
|
+
#### `@mui/x-tree-view@8.27.1`
|
|
155
|
+
|
|
156
|
+
- [tree view] Fix `apiRef.current.setItemExpansion()` (#21095) @flaviendelangle
|
|
157
|
+
|
|
158
|
+
#### `@mui/x-tree-view-pro@8.27.1` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
159
|
+
|
|
160
|
+
Same changes as in `@mui/x-tree-view@8.27.1`.
|
|
161
|
+
|
|
162
|
+
### Core
|
|
163
|
+
|
|
164
|
+
- [internal] Add CLI for translation using LLM (#21299) @cherniavskii
|
|
165
|
+
|
|
8
166
|
## v8.27.0
|
|
9
167
|
|
|
10
168
|
_Feb 2, 2026_
|
package/DataGrid/DataGrid.js
CHANGED
|
@@ -180,6 +180,13 @@ DataGridRaw.propTypes = {
|
|
|
180
180
|
get: _propTypes.default.func.isRequired,
|
|
181
181
|
set: _propTypes.default.func.isRequired
|
|
182
182
|
}),
|
|
183
|
+
/**
|
|
184
|
+
* If positive, the Data Grid will periodically revalidate data source rows by
|
|
185
|
+
* re-fetching them from the server when the cache entry has expired.
|
|
186
|
+
* Set to `0` to disable polling.
|
|
187
|
+
* @default 0
|
|
188
|
+
*/
|
|
189
|
+
dataSourceRevalidateMs: _propTypes.default.number,
|
|
183
190
|
/**
|
|
184
191
|
* Set the density of the Data Grid.
|
|
185
192
|
* @default "standard"
|
package/DataGrid/index.js
CHANGED
|
@@ -11,7 +11,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
11
11
|
var React = _interopRequireWildcard(require("react"));
|
|
12
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
13
|
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
14
|
-
var
|
|
14
|
+
var _styles = require("@mui/material/styles");
|
|
15
15
|
var _clsx = _interopRequireDefault(require("clsx"));
|
|
16
16
|
var _useGridApiContext = require("../hooks/utils/useGridApiContext");
|
|
17
17
|
var _gridClasses = require("../constants/gridClasses");
|
|
@@ -30,7 +30,7 @@ const useUtilityClasses = ownerState => {
|
|
|
30
30
|
};
|
|
31
31
|
return (0, _composeClasses.default)(slots, _gridClasses.getDataGridUtilityClass, classes);
|
|
32
32
|
};
|
|
33
|
-
const GridColumnSortButtonRoot = (0,
|
|
33
|
+
const GridColumnSortButtonRoot = (0, _styles.styled)(_assert.NotRendered, {
|
|
34
34
|
name: 'MuiDataGrid',
|
|
35
35
|
slot: 'SortButton'
|
|
36
36
|
})({
|
|
@@ -12,7 +12,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
12
12
|
var React = _interopRequireWildcard(require("react"));
|
|
13
13
|
var _useEventCallback = _interopRequireDefault(require("@mui/utils/useEventCallback"));
|
|
14
14
|
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
15
|
-
var
|
|
15
|
+
var _styles = require("@mui/material/styles");
|
|
16
16
|
var _fastMemo = require("@mui/x-internals/fastMemo");
|
|
17
17
|
var _forwardRef = require("@mui/x-internals/forwardRef");
|
|
18
18
|
var _useGridRootProps = require("../hooks/utils/useGridRootProps");
|
|
@@ -39,7 +39,7 @@ const useUtilityClasses = ownerState => {
|
|
|
39
39
|
};
|
|
40
40
|
return (0, _composeClasses.default)(slots, _constants.getDataGridUtilityClass, classes);
|
|
41
41
|
};
|
|
42
|
-
const GridScrollAreaRawRoot = (0,
|
|
42
|
+
const GridScrollAreaRawRoot = (0, _styles.styled)('div', {
|
|
43
43
|
name: 'MuiDataGrid',
|
|
44
44
|
slot: 'ScrollArea',
|
|
45
45
|
overridesResolver: (props, styles) => [{
|
|
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
8
|
});
|
|
9
9
|
exports.GridScrollShadows = GridScrollShadows;
|
|
10
10
|
var React = _interopRequireWildcard(require("react"));
|
|
11
|
-
var
|
|
11
|
+
var _styles = require("@mui/material/styles");
|
|
12
12
|
var _RtlProvider = require("@mui/system/RtlProvider");
|
|
13
13
|
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
14
14
|
var _hooks = require("../hooks");
|
|
@@ -29,7 +29,7 @@ const useUtilityClasses = ownerState => {
|
|
|
29
29
|
};
|
|
30
30
|
return (0, _composeClasses.default)(slots, _constants.getDataGridUtilityClass, classes);
|
|
31
31
|
};
|
|
32
|
-
const ScrollShadow = (0,
|
|
32
|
+
const ScrollShadow = (0, _styles.styled)('div', {
|
|
33
33
|
name: 'MuiDataGrid',
|
|
34
34
|
slot: 'ScrollShadow',
|
|
35
35
|
overridesResolver: (props, styles) => [styles.root, styles[props.position]]
|
|
@@ -11,7 +11,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
11
11
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
12
12
|
var React = _interopRequireWildcard(require("react"));
|
|
13
13
|
var _clsx = _interopRequireDefault(require("clsx"));
|
|
14
|
-
var
|
|
14
|
+
var _styles = require("@mui/material/styles");
|
|
15
15
|
var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
|
|
16
16
|
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
17
17
|
var _RtlProvider = require("@mui/system/RtlProvider");
|
|
@@ -29,7 +29,7 @@ var _rtlFlipSide = require("../utils/rtlFlipSide");
|
|
|
29
29
|
var _utils = require("../internals/utils");
|
|
30
30
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
31
31
|
const _excluded = ["skeletonRowsCount", "visibleColumns", "showFirstRowBorder"];
|
|
32
|
-
const SkeletonOverlay = (0,
|
|
32
|
+
const SkeletonOverlay = (0, _styles.styled)('div', {
|
|
33
33
|
name: 'MuiDataGrid',
|
|
34
34
|
slot: 'SkeletonLoadingOverlay'
|
|
35
35
|
})({
|
|
@@ -9,7 +9,7 @@ exports.GridOverlayWrapper = GridOverlayWrapper;
|
|
|
9
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
10
|
var React = _interopRequireWildcard(require("react"));
|
|
11
11
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
12
|
-
var
|
|
12
|
+
var _styles = require("@mui/material/styles");
|
|
13
13
|
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
14
14
|
var _gridRowsUtils = require("../../hooks/features/rows/gridRowsUtils");
|
|
15
15
|
var _useGridSelector = require("../../hooks/utils/useGridSelector");
|
|
@@ -18,7 +18,7 @@ var _useGridApiContext = require("../../hooks/utils/useGridApiContext");
|
|
|
18
18
|
var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
|
|
19
19
|
var _gridClasses = require("../../constants/gridClasses");
|
|
20
20
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
21
|
-
const GridOverlayWrapperRoot = (0,
|
|
21
|
+
const GridOverlayWrapperRoot = (0, _styles.styled)('div', {
|
|
22
22
|
name: 'MuiDataGrid',
|
|
23
23
|
slot: 'OverlayWrapper',
|
|
24
24
|
shouldForwardProp: prop => prop !== 'overlayType' && prop !== 'loadingOverlayVariant' && prop !== 'right'
|
|
@@ -42,7 +42,7 @@ loadingOverlayVariant !== 'skeleton' ? {
|
|
|
42
42
|
zIndex: overlayType === 'loadingOverlay' ? 5 // Should be above pinned columns, pinned rows, and detail panel
|
|
43
43
|
: 4 // Should be above pinned columns and detail panel
|
|
44
44
|
} : {});
|
|
45
|
-
const GridOverlayWrapperInner = (0,
|
|
45
|
+
const GridOverlayWrapperInner = (0, _styles.styled)('div', {
|
|
46
46
|
name: 'MuiDataGrid',
|
|
47
47
|
slot: 'OverlayWrapperInner',
|
|
48
48
|
shouldForwardProp: prop => prop !== 'overlayType' && prop !== 'loadingOverlayVariant'
|
|
@@ -17,6 +17,7 @@ var _fastMemo = require("@mui/x-internals/fastMemo");
|
|
|
17
17
|
var _RtlProvider = require("@mui/system/RtlProvider");
|
|
18
18
|
var _doesSupportPreventScroll = require("../../utils/doesSupportPreventScroll");
|
|
19
19
|
var _useGridPrivateApiContext = require("../../hooks/utils/useGridPrivateApiContext");
|
|
20
|
+
var _getColumnMenuItemKeys = require("../../hooks/features/columnMenu/getColumnMenuItemKeys");
|
|
20
21
|
var _ColumnHeaderMenuIcon = require("./ColumnHeaderMenuIcon");
|
|
21
22
|
var _GridColumnHeaderMenu = require("../menu/columnMenu/GridColumnHeaderMenu");
|
|
22
23
|
var _gridClasses = require("../../constants/gridClasses");
|
|
@@ -85,6 +86,30 @@ function GridColumnHeaderItem(props) {
|
|
|
85
86
|
const columnMenuButtonId = (0, _useId.default)();
|
|
86
87
|
const iconButtonRef = React.useRef(null);
|
|
87
88
|
const [showColumnMenuIcon, setShowColumnMenuIcon] = React.useState(columnMenuOpen);
|
|
89
|
+
const columnMenuSlotProps = rootProps.slotProps?.columnMenu;
|
|
90
|
+
const columnMenuComponent = rootProps.slots.columnMenu;
|
|
91
|
+
const defaultSlots = columnMenuComponent?.defaultSlots;
|
|
92
|
+
const defaultSlotProps = columnMenuComponent?.defaultSlotProps;
|
|
93
|
+
const hasKnownDefaultColumnMenu = defaultSlots != null && defaultSlotProps != null;
|
|
94
|
+
const columnMenuItemKeys = React.useMemo(() => {
|
|
95
|
+
if (!hasKnownDefaultColumnMenu) {
|
|
96
|
+
return [];
|
|
97
|
+
}
|
|
98
|
+
return (0, _getColumnMenuItemKeys.getColumnMenuItemKeys)({
|
|
99
|
+
apiRef,
|
|
100
|
+
colDef,
|
|
101
|
+
defaultSlots,
|
|
102
|
+
defaultSlotProps,
|
|
103
|
+
slots: columnMenuSlotProps?.slots,
|
|
104
|
+
slotProps: columnMenuSlotProps?.slotProps
|
|
105
|
+
});
|
|
106
|
+
}, [apiRef, colDef, defaultSlotProps, defaultSlots, hasKnownDefaultColumnMenu, columnMenuSlotProps?.slotProps, columnMenuSlotProps?.slots]);
|
|
107
|
+
|
|
108
|
+
// If we don't have a "known" default column menu (i.e. a custom menu component
|
|
109
|
+
// without `defaultSlots` / `defaultSlotProps` statics), we treat it as opaque
|
|
110
|
+
// and assume it has items, so we always show the column menu icon.
|
|
111
|
+
// Only the built-in/default menu path can hide the icon when there are no items.
|
|
112
|
+
const hasColumnMenuItems = !hasKnownDefaultColumnMenu || columnMenuItemKeys.length > 0;
|
|
88
113
|
const isDraggable = !rootProps.disableColumnReorder && !disableReorder && !colDef.disableReorder;
|
|
89
114
|
let headerComponent;
|
|
90
115
|
if (colDef.renderHeader) {
|
|
@@ -135,10 +160,15 @@ function GridColumnHeaderItem(props) {
|
|
|
135
160
|
setShowColumnMenuIcon(columnMenuOpen);
|
|
136
161
|
}
|
|
137
162
|
}, [showColumnMenuIcon, columnMenuOpen]);
|
|
163
|
+
React.useEffect(() => {
|
|
164
|
+
if (hasKnownDefaultColumnMenu && columnMenuOpen && !hasColumnMenuItems) {
|
|
165
|
+
apiRef.current.hideColumnMenu();
|
|
166
|
+
}
|
|
167
|
+
}, [apiRef, columnMenuOpen, hasColumnMenuItems, hasKnownDefaultColumnMenu]);
|
|
138
168
|
const handleExited = React.useCallback(() => {
|
|
139
169
|
setShowColumnMenuIcon(false);
|
|
140
170
|
}, []);
|
|
141
|
-
const columnMenuIconButton = !rootProps.disableColumnMenu && !colDef.disableColumnMenu && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ColumnHeaderMenuIcon.ColumnHeaderMenuIcon, {
|
|
171
|
+
const columnMenuIconButton = !rootProps.disableColumnMenu && !colDef.disableColumnMenu && hasColumnMenuItems && /*#__PURE__*/(0, _jsxRuntime.jsx)(_ColumnHeaderMenuIcon.ColumnHeaderMenuIcon, {
|
|
142
172
|
colDef: colDef,
|
|
143
173
|
columnMenuId: columnMenuId,
|
|
144
174
|
columnMenuButtonId: columnMenuButtonId,
|
|
@@ -13,7 +13,7 @@ var React = _interopRequireWildcard(require("react"));
|
|
|
13
13
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
14
14
|
var _clsx = _interopRequireDefault(require("clsx"));
|
|
15
15
|
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
16
|
-
var
|
|
16
|
+
var _styles = require("@mui/material/styles");
|
|
17
17
|
var _forwardRef = require("@mui/x-internals/forwardRef");
|
|
18
18
|
var _domUtils = require("../../utils/domUtils");
|
|
19
19
|
var _gridClasses = require("../../constants/gridClasses");
|
|
@@ -29,7 +29,7 @@ const useUtilityClasses = ownerState => {
|
|
|
29
29
|
};
|
|
30
30
|
return (0, _composeClasses.default)(slots, _gridClasses.getDataGridUtilityClass, classes);
|
|
31
31
|
};
|
|
32
|
-
const GridColumnHeaderTitleRoot = (0,
|
|
32
|
+
const GridColumnHeaderTitleRoot = (0, _styles.styled)('div', {
|
|
33
33
|
name: 'MuiDataGrid',
|
|
34
34
|
slot: 'ColumnHeaderTitle'
|
|
35
35
|
})({
|
|
@@ -12,7 +12,7 @@ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runt
|
|
|
12
12
|
var React = _interopRequireWildcard(require("react"));
|
|
13
13
|
var _clsx = _interopRequireDefault(require("clsx"));
|
|
14
14
|
var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
|
|
15
|
-
var
|
|
15
|
+
var _styles = require("@mui/material/styles");
|
|
16
16
|
var _forwardRef = require("@mui/x-internals/forwardRef");
|
|
17
17
|
var _gridClasses = require("../../constants/gridClasses");
|
|
18
18
|
var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
|
|
@@ -27,7 +27,7 @@ const useUtilityClasses = ownerState => {
|
|
|
27
27
|
};
|
|
28
28
|
return (0, _composeClasses.default)(slots, _gridClasses.getDataGridUtilityClass, classes);
|
|
29
29
|
};
|
|
30
|
-
const GridIconButtonContainerRoot = (0,
|
|
30
|
+
const GridIconButtonContainerRoot = (0, _styles.styled)('div', {
|
|
31
31
|
name: 'MuiDataGrid',
|
|
32
32
|
slot: 'IconButtonContainer'
|
|
33
33
|
})(() => ({
|
|
@@ -22,226 +22,32 @@ const separatorIconDragStyles = {
|
|
|
22
22
|
// https://github.com/emotion-js/emotion/issues/1105#issuecomment-1722524968
|
|
23
23
|
const ignoreSsrWarning = '/* emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason */';
|
|
24
24
|
const shouldShowBorderTopRightRadiusSelector = apiRef => !apiRef.current.state.dimensions.isReady ? apiRef.current.state.dimensions.scrollbarSize === 0 : apiRef.current.state.dimensions.hasScrollX && (!apiRef.current.state.dimensions.hasScrollY || apiRef.current.state.dimensions.scrollbarSize === 0);
|
|
25
|
+
const elementOverrides = {
|
|
26
|
+
root: ['autoHeight', 'autosizing', 'root--densityStandard', 'root--densityComfortable', 'root--densityCompact', 'root--disableUserSelection', 'root--noToolbar', 'withVerticalBorder'],
|
|
27
|
+
children: ['actionsCell', 'booleanCell', 'cell', 'cell--editable', 'cell--editing', 'cell--flex', 'cell--pinnedLeft', 'cell--pinnedRight', 'cell--rangeBottom', 'cell--rangeLeft', 'cell--rangeRight', 'cell--rangeTop', 'cell--selectionMode', 'cell--textCenter', 'cell--textLeft', 'cell--textRight', 'cell--withLeftBorder', 'cell--withRightBorder', 'cellCheckbox', 'cellEmpty', 'cellOffsetLeft', 'cellSkeleton', 'checkboxInput', 'columnHeader', 'columnHeader--alignCenter', 'columnHeader--alignLeft', 'columnHeader--alignRight', 'columnHeader--dragging', 'columnHeader--emptyGroup', 'columnHeader--filledGroup', 'columnHeader--filtered', 'columnHeader--last', 'columnHeader--moving', 'columnHeader--numeric', 'columnHeader--pinnedLeft', 'columnHeader--pinnedRight', 'columnHeader--siblingFocused', 'columnHeader--sortable', 'columnHeader--sorted', 'columnHeader--withLeftBorder', 'columnHeader--withRightBorder', 'columnHeaderCheckbox', 'columnHeaderDraggableContainer', 'columnHeaderTitleContainer', 'columnHeaderTitleContainerContent', 'columnSeparator', 'columnSeparator--resizable', 'columnSeparator--resizing', 'columnSeparator--sideLeft', 'columnSeparator--sideRight', 'container--bottom', 'container--top', 'detailPanelToggleCell', 'detailPanelToggleCell--expanded', 'editBooleanCell', 'filterIcon', 'filler--borderBottom', 'filler--pinnedLeft', 'filler--pinnedRight', 'groupingCriteriaCell', 'groupingCriteriaCellLoadingContainer', 'groupingCriteriaCellToggle', 'headerFilterRow', 'iconSeparator', 'menuIcon', 'menuIconButton', 'menuList', 'menuOpen', 'overlayWrapperInner', 'pinnedRows', 'pinnedRows--bottom', 'pinnedRows--top', 'row', 'row--borderBottom', 'row--detailPanelExpanded', 'row--dragging', 'row--dynamicHeight', 'row--editable', 'row--editing', 'row--firstVisible', 'row--lastVisible', 'rowReorderCell', 'rowReorderCell--draggable', 'rowReorderCellContainer', 'rowReorderCellPlaceholder', 'rowSkeleton', 'scrollbar', 'scrollbar--horizontal', 'scrollbar--vertical', 'scrollbarFiller', 'scrollbarFiller--pinnedRight', 'sortIcon', 'treeDataGroupingCell', 'treeDataGroupingCellLoadingContainer', 'treeDataGroupingCellToggle', 'withBorderColor', 'row--beingDragged']
|
|
28
|
+
};
|
|
25
29
|
const GridRootStyles = exports.GridRootStyles = (0, _styles.styled)('div', {
|
|
26
30
|
name: 'MuiDataGrid',
|
|
27
31
|
slot: 'Root',
|
|
28
|
-
overridesResolver: (props, styles) =>
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}
|
|
47
|
-
// Child element overrides
|
|
48
|
-
// - Only declare overrides here for class names that are not applied to `styled` components.
|
|
49
|
-
// - For `styled` components, declare overrides in the component itself.
|
|
50
|
-
{
|
|
51
|
-
[`& .${_gridClasses.gridClasses.actionsCell}`]: styles.actionsCell
|
|
52
|
-
}, {
|
|
53
|
-
[`& .${_gridClasses.gridClasses.booleanCell}`]: styles.booleanCell
|
|
54
|
-
}, {
|
|
55
|
-
[`& .${_gridClasses.gridClasses.cell}`]: styles.cell
|
|
56
|
-
}, {
|
|
57
|
-
[`& .${_gridClasses.gridClasses['cell--editable']}`]: styles['cell--editable']
|
|
58
|
-
}, {
|
|
59
|
-
[`& .${_gridClasses.gridClasses['cell--editing']}`]: styles['cell--editing']
|
|
60
|
-
}, {
|
|
61
|
-
[`& .${_gridClasses.gridClasses['cell--flex']}`]: styles['cell--flex']
|
|
62
|
-
}, {
|
|
63
|
-
[`& .${_gridClasses.gridClasses['cell--pinnedLeft']}`]: styles['cell--pinnedLeft']
|
|
64
|
-
}, {
|
|
65
|
-
[`& .${_gridClasses.gridClasses['cell--pinnedRight']}`]: styles['cell--pinnedRight']
|
|
66
|
-
}, {
|
|
67
|
-
[`& .${_gridClasses.gridClasses['cell--rangeBottom']}`]: styles['cell--rangeBottom']
|
|
68
|
-
}, {
|
|
69
|
-
[`& .${_gridClasses.gridClasses['cell--rangeLeft']}`]: styles['cell--rangeLeft']
|
|
70
|
-
}, {
|
|
71
|
-
[`& .${_gridClasses.gridClasses['cell--rangeRight']}`]: styles['cell--rangeRight']
|
|
72
|
-
}, {
|
|
73
|
-
[`& .${_gridClasses.gridClasses['cell--rangeTop']}`]: styles['cell--rangeTop']
|
|
74
|
-
}, {
|
|
75
|
-
[`& .${_gridClasses.gridClasses['cell--selectionMode']}`]: styles['cell--selectionMode']
|
|
76
|
-
}, {
|
|
77
|
-
[`& .${_gridClasses.gridClasses['cell--textCenter']}`]: styles['cell--textCenter']
|
|
78
|
-
}, {
|
|
79
|
-
[`& .${_gridClasses.gridClasses['cell--textLeft']}`]: styles['cell--textLeft']
|
|
80
|
-
}, {
|
|
81
|
-
[`& .${_gridClasses.gridClasses['cell--textRight']}`]: styles['cell--textRight']
|
|
82
|
-
}, {
|
|
83
|
-
[`& .${_gridClasses.gridClasses['cell--withLeftBorder']}`]: styles['cell--withLeftBorder']
|
|
84
|
-
}, {
|
|
85
|
-
[`& .${_gridClasses.gridClasses['cell--withRightBorder']}`]: styles['cell--withRightBorder']
|
|
86
|
-
}, {
|
|
87
|
-
[`& .${_gridClasses.gridClasses.cellCheckbox}`]: styles.cellCheckbox
|
|
88
|
-
}, {
|
|
89
|
-
[`& .${_gridClasses.gridClasses.cellEmpty}`]: styles.cellEmpty
|
|
90
|
-
}, {
|
|
91
|
-
[`& .${_gridClasses.gridClasses.cellOffsetLeft}`]: styles.cellOffsetLeft
|
|
92
|
-
}, {
|
|
93
|
-
[`& .${_gridClasses.gridClasses.cellSkeleton}`]: styles.cellSkeleton
|
|
94
|
-
}, {
|
|
95
|
-
[`& .${_gridClasses.gridClasses.checkboxInput}`]: styles.checkboxInput
|
|
96
|
-
}, {
|
|
97
|
-
[`& .${_gridClasses.gridClasses.columnHeader}`]: styles.columnHeader
|
|
98
|
-
}, {
|
|
99
|
-
[`& .${_gridClasses.gridClasses['columnHeader--alignCenter']}`]: styles['columnHeader--alignCenter']
|
|
100
|
-
}, {
|
|
101
|
-
[`& .${_gridClasses.gridClasses['columnHeader--alignLeft']}`]: styles['columnHeader--alignLeft']
|
|
102
|
-
}, {
|
|
103
|
-
[`& .${_gridClasses.gridClasses['columnHeader--alignRight']}`]: styles['columnHeader--alignRight']
|
|
104
|
-
}, {
|
|
105
|
-
[`& .${_gridClasses.gridClasses['columnHeader--dragging']}`]: styles['columnHeader--dragging']
|
|
106
|
-
}, {
|
|
107
|
-
[`& .${_gridClasses.gridClasses['columnHeader--emptyGroup']}`]: styles['columnHeader--emptyGroup']
|
|
108
|
-
}, {
|
|
109
|
-
[`& .${_gridClasses.gridClasses['columnHeader--filledGroup']}`]: styles['columnHeader--filledGroup']
|
|
110
|
-
}, {
|
|
111
|
-
[`& .${_gridClasses.gridClasses['columnHeader--filtered']}`]: styles['columnHeader--filtered']
|
|
112
|
-
}, {
|
|
113
|
-
[`& .${_gridClasses.gridClasses['columnHeader--last']}`]: styles['columnHeader--last']
|
|
114
|
-
}, {
|
|
115
|
-
[`& .${_gridClasses.gridClasses['columnHeader--moving']}`]: styles['columnHeader--moving']
|
|
116
|
-
}, {
|
|
117
|
-
[`& .${_gridClasses.gridClasses['columnHeader--numeric']}`]: styles['columnHeader--numeric']
|
|
118
|
-
}, {
|
|
119
|
-
[`& .${_gridClasses.gridClasses['columnHeader--pinnedLeft']}`]: styles['columnHeader--pinnedLeft']
|
|
120
|
-
}, {
|
|
121
|
-
[`& .${_gridClasses.gridClasses['columnHeader--pinnedRight']}`]: styles['columnHeader--pinnedRight']
|
|
122
|
-
}, {
|
|
123
|
-
[`& .${_gridClasses.gridClasses['columnHeader--siblingFocused']}`]: styles['columnHeader--siblingFocused']
|
|
124
|
-
}, {
|
|
125
|
-
[`& .${_gridClasses.gridClasses['columnHeader--sortable']}`]: styles['columnHeader--sortable']
|
|
126
|
-
}, {
|
|
127
|
-
[`& .${_gridClasses.gridClasses['columnHeader--sorted']}`]: styles['columnHeader--sorted']
|
|
128
|
-
}, {
|
|
129
|
-
[`& .${_gridClasses.gridClasses['columnHeader--withLeftBorder']}`]: styles['columnHeader--withLeftBorder']
|
|
130
|
-
}, {
|
|
131
|
-
[`& .${_gridClasses.gridClasses['columnHeader--withRightBorder']}`]: styles['columnHeader--withRightBorder']
|
|
132
|
-
}, {
|
|
133
|
-
[`& .${_gridClasses.gridClasses.columnHeaderCheckbox}`]: styles.columnHeaderCheckbox
|
|
134
|
-
}, {
|
|
135
|
-
[`& .${_gridClasses.gridClasses.columnHeaderDraggableContainer}`]: styles.columnHeaderDraggableContainer
|
|
136
|
-
}, {
|
|
137
|
-
[`& .${_gridClasses.gridClasses.columnHeaderTitleContainer}`]: styles.columnHeaderTitleContainer
|
|
138
|
-
}, {
|
|
139
|
-
[`& .${_gridClasses.gridClasses.columnHeaderTitleContainerContent}`]: styles.columnHeaderTitleContainerContent
|
|
140
|
-
}, {
|
|
141
|
-
[`& .${_gridClasses.gridClasses.columnSeparator}`]: styles.columnSeparator
|
|
142
|
-
}, {
|
|
143
|
-
[`& .${_gridClasses.gridClasses['columnSeparator--resizable']}`]: styles['columnSeparator--resizable']
|
|
144
|
-
}, {
|
|
145
|
-
[`& .${_gridClasses.gridClasses['columnSeparator--resizing']}`]: styles['columnSeparator--resizing']
|
|
146
|
-
}, {
|
|
147
|
-
[`& .${_gridClasses.gridClasses['columnSeparator--sideLeft']}`]: styles['columnSeparator--sideLeft']
|
|
148
|
-
}, {
|
|
149
|
-
[`& .${_gridClasses.gridClasses['columnSeparator--sideRight']}`]: styles['columnSeparator--sideRight']
|
|
150
|
-
}, {
|
|
151
|
-
[`& .${_gridClasses.gridClasses['container--bottom']}`]: styles['container--bottom']
|
|
152
|
-
}, {
|
|
153
|
-
[`& .${_gridClasses.gridClasses['container--top']}`]: styles['container--top']
|
|
154
|
-
}, {
|
|
155
|
-
[`& .${_gridClasses.gridClasses.detailPanelToggleCell}`]: styles.detailPanelToggleCell
|
|
156
|
-
}, {
|
|
157
|
-
[`& .${_gridClasses.gridClasses['detailPanelToggleCell--expanded']}`]: styles['detailPanelToggleCell--expanded']
|
|
158
|
-
}, {
|
|
159
|
-
[`& .${_gridClasses.gridClasses.editBooleanCell}`]: styles.editBooleanCell
|
|
160
|
-
}, {
|
|
161
|
-
[`& .${_gridClasses.gridClasses.filterIcon}`]: styles.filterIcon
|
|
162
|
-
}, {
|
|
163
|
-
[`& .${_gridClasses.gridClasses['filler--borderBottom']}`]: styles['filler--borderBottom']
|
|
164
|
-
}, {
|
|
165
|
-
[`& .${_gridClasses.gridClasses['filler--pinnedLeft']}`]: styles['filler--pinnedLeft']
|
|
166
|
-
}, {
|
|
167
|
-
[`& .${_gridClasses.gridClasses['filler--pinnedRight']}`]: styles['filler--pinnedRight']
|
|
168
|
-
}, {
|
|
169
|
-
[`& .${_gridClasses.gridClasses.groupingCriteriaCell}`]: styles.groupingCriteriaCell
|
|
170
|
-
}, {
|
|
171
|
-
[`& .${_gridClasses.gridClasses.groupingCriteriaCellLoadingContainer}`]: styles.groupingCriteriaCellLoadingContainer
|
|
172
|
-
}, {
|
|
173
|
-
[`& .${_gridClasses.gridClasses.groupingCriteriaCellToggle}`]: styles.groupingCriteriaCellToggle
|
|
174
|
-
}, {
|
|
175
|
-
[`& .${_gridClasses.gridClasses.headerFilterRow}`]: styles.headerFilterRow
|
|
176
|
-
}, {
|
|
177
|
-
[`& .${_gridClasses.gridClasses.iconSeparator}`]: styles.iconSeparator
|
|
178
|
-
}, {
|
|
179
|
-
[`& .${_gridClasses.gridClasses.menuIcon}`]: styles.menuIcon
|
|
180
|
-
}, {
|
|
181
|
-
[`& .${_gridClasses.gridClasses.menuIconButton}`]: styles.menuIconButton
|
|
182
|
-
}, {
|
|
183
|
-
[`& .${_gridClasses.gridClasses.menuList}`]: styles.menuList
|
|
184
|
-
}, {
|
|
185
|
-
[`& .${_gridClasses.gridClasses.menuOpen}`]: styles.menuOpen
|
|
186
|
-
}, {
|
|
187
|
-
[`& .${_gridClasses.gridClasses.overlayWrapperInner}`]: styles.overlayWrapperInner
|
|
188
|
-
}, {
|
|
189
|
-
[`& .${_gridClasses.gridClasses.pinnedRows}`]: styles.pinnedRows
|
|
190
|
-
}, {
|
|
191
|
-
[`& .${_gridClasses.gridClasses['pinnedRows--bottom']}`]: styles['pinnedRows--bottom']
|
|
192
|
-
}, {
|
|
193
|
-
[`& .${_gridClasses.gridClasses['pinnedRows--top']}`]: styles['pinnedRows--top']
|
|
194
|
-
}, {
|
|
195
|
-
[`& .${_gridClasses.gridClasses.row}`]: styles.row
|
|
196
|
-
}, {
|
|
197
|
-
[`& .${_gridClasses.gridClasses['row--borderBottom']}`]: styles['row--borderBottom']
|
|
198
|
-
}, {
|
|
199
|
-
[`& .${_gridClasses.gridClasses['row--detailPanelExpanded']}`]: styles['row--detailPanelExpanded']
|
|
200
|
-
}, {
|
|
201
|
-
[`& .${_gridClasses.gridClasses['row--dragging']}`]: styles['row--dragging']
|
|
202
|
-
}, {
|
|
203
|
-
[`& .${_gridClasses.gridClasses['row--dynamicHeight']}`]: styles['row--dynamicHeight']
|
|
204
|
-
}, {
|
|
205
|
-
[`& .${_gridClasses.gridClasses['row--editable']}`]: styles['row--editable']
|
|
206
|
-
}, {
|
|
207
|
-
[`& .${_gridClasses.gridClasses['row--editing']}`]: styles['row--editing']
|
|
208
|
-
}, {
|
|
209
|
-
[`& .${_gridClasses.gridClasses['row--firstVisible']}`]: styles['row--firstVisible']
|
|
210
|
-
}, {
|
|
211
|
-
[`& .${_gridClasses.gridClasses['row--lastVisible']}`]: styles['row--lastVisible']
|
|
212
|
-
}, {
|
|
213
|
-
[`& .${_gridClasses.gridClasses.rowReorderCell}`]: styles.rowReorderCell
|
|
214
|
-
}, {
|
|
215
|
-
[`& .${_gridClasses.gridClasses['rowReorderCell--draggable']}`]: styles['rowReorderCell--draggable']
|
|
216
|
-
}, {
|
|
217
|
-
[`& .${_gridClasses.gridClasses.rowReorderCellContainer}`]: styles.rowReorderCellContainer
|
|
218
|
-
}, {
|
|
219
|
-
[`& .${_gridClasses.gridClasses.rowReorderCellPlaceholder}`]: styles.rowReorderCellPlaceholder
|
|
220
|
-
}, {
|
|
221
|
-
[`& .${_gridClasses.gridClasses.rowSkeleton}`]: styles.rowSkeleton
|
|
222
|
-
}, {
|
|
223
|
-
[`& .${_gridClasses.gridClasses.scrollbar}`]: styles.scrollbar
|
|
224
|
-
}, {
|
|
225
|
-
[`& .${_gridClasses.gridClasses['scrollbar--horizontal']}`]: styles['scrollbar--horizontal']
|
|
226
|
-
}, {
|
|
227
|
-
[`& .${_gridClasses.gridClasses['scrollbar--vertical']}`]: styles['scrollbar--vertical']
|
|
228
|
-
}, {
|
|
229
|
-
[`& .${_gridClasses.gridClasses.scrollbarFiller}`]: styles.scrollbarFiller
|
|
230
|
-
}, {
|
|
231
|
-
[`& .${_gridClasses.gridClasses['scrollbarFiller--pinnedRight']}`]: styles['scrollbarFiller--pinnedRight']
|
|
232
|
-
}, {
|
|
233
|
-
[`& .${_gridClasses.gridClasses.sortIcon}`]: styles.sortIcon
|
|
234
|
-
}, {
|
|
235
|
-
[`& .${_gridClasses.gridClasses.treeDataGroupingCell}`]: styles.treeDataGroupingCell
|
|
236
|
-
}, {
|
|
237
|
-
[`& .${_gridClasses.gridClasses.treeDataGroupingCellLoadingContainer}`]: styles.treeDataGroupingCellLoadingContainer
|
|
238
|
-
}, {
|
|
239
|
-
[`& .${_gridClasses.gridClasses.treeDataGroupingCellToggle}`]: styles.treeDataGroupingCellToggle
|
|
240
|
-
}, {
|
|
241
|
-
[`& .${_gridClasses.gridClasses.withBorderColor}`]: styles.withBorderColor
|
|
242
|
-
}, {
|
|
243
|
-
[`& .${_gridClasses.gridClasses['row--beingDragged']}`]: styles['row--beingDragged']
|
|
244
|
-
}]
|
|
32
|
+
overridesResolver: (props, styles) => {
|
|
33
|
+
// Root overrides
|
|
34
|
+
const overrides = [styles.root];
|
|
35
|
+
elementOverrides.root.forEach(key => {
|
|
36
|
+
overrides.push({
|
|
37
|
+
[`&.${_gridClasses.gridClasses[key]}`]: styles[key]
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
// Child element overrides
|
|
42
|
+
// - Only declare overrides here for class names that are not applied to `styled` components.
|
|
43
|
+
// - For `styled` components, declare overrides in the component itself.
|
|
44
|
+
elementOverrides.children.forEach(key => {
|
|
45
|
+
overrides.push({
|
|
46
|
+
[`& .${_gridClasses.gridClasses[key]}`]: styles[key]
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
return overrides;
|
|
50
|
+
}
|
|
245
51
|
})(() => {
|
|
246
52
|
const apiRef = (0, _useGridPrivateApiContext.useGridPrivateApiContext)();
|
|
247
53
|
const shouldShowBorderTopRightRadius = (0, _useGridSelector.useGridSelector)(apiRef, shouldShowBorderTopRightRadiusSelector);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { GridColumnMenuColumnsItem } from "./menuItems/GridColumnMenuColumnsItem.js";
|
|
2
2
|
import { GridColumnMenuFilterItem } from "./menuItems/GridColumnMenuFilterItem.js";
|
|
3
3
|
import { GridColumnMenuSortItem } from "./menuItems/GridColumnMenuSortItem.js";
|
|
4
|
-
import type {
|
|
4
|
+
import type { GridGenericColumnMenuProps, GridColumnMenuComponent } from "./GridColumnMenuProps.js";
|
|
5
5
|
export declare const GRID_COLUMN_MENU_SLOTS: {
|
|
6
6
|
columnMenuSortItem: typeof GridColumnMenuSortItem;
|
|
7
7
|
columnMenuFilterItem: typeof GridColumnMenuFilterItem;
|
|
@@ -19,5 +19,5 @@ export declare const GRID_COLUMN_MENU_SLOT_PROPS: {
|
|
|
19
19
|
};
|
|
20
20
|
};
|
|
21
21
|
declare const GridGenericColumnMenu: import("react").ForwardRefExoticComponent<GridGenericColumnMenuProps> | import("react").ForwardRefExoticComponent<GridGenericColumnMenuProps & import("react").RefAttributes<HTMLUListElement>>;
|
|
22
|
-
declare const GridColumnMenu:
|
|
22
|
+
declare const GridColumnMenu: GridColumnMenuComponent;
|
|
23
23
|
export { GridColumnMenu, GridGenericColumnMenu };
|