@mui/x-data-grid 7.0.0-beta.1 → 7.0.0-beta.2
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 +159 -1
- package/DataGrid/DataGrid.d.ts +1 -1
- package/DataGrid/DataGrid.js +1 -1
- package/DataGrid/useDataGridProps.js +3 -1
- package/components/GridPagination.d.ts +1 -1
- package/components/GridPagination.js +12 -2
- package/components/GridRow.js +7 -5
- package/components/GridScrollbarFillerCell.js +0 -3
- package/components/base/GridFooterPlaceholder.js +1 -1
- package/components/cell/GridActionsCell.js +3 -3
- package/components/cell/GridActionsCellItem.d.ts +13 -1
- package/components/cell/GridActionsCellItem.js +27 -15
- package/components/columnSelection/GridCellCheckboxRenderer.js +1 -1
- package/components/columnSelection/GridHeaderCheckbox.d.ts +1 -1
- package/components/columnsManagement/utils.d.ts +1 -1
- package/components/containers/GridRootStyles.js +10 -2
- package/components/panel/filterPanel/GridFilterInputBoolean.js +1 -1
- package/components/panel/filterPanel/GridFilterInputSingleSelect.js +1 -1
- package/components/panel/filterPanel/GridFilterPanel.js +1 -1
- package/constants/gridClasses.d.ts +5 -0
- package/constants/gridClasses.js +1 -1
- package/hooks/features/rows/gridRowsUtils.js +1 -1
- package/hooks/features/rows/useGridRows.js +2 -2
- package/hooks/features/virtualization/useGridVirtualScroller.d.ts +0 -1
- package/hooks/features/virtualization/useGridVirtualScroller.js +9 -10
- package/index.js +1 -1
- package/internals/utils/propValidation.js +1 -1
- package/joy/joySlots.js +2 -2
- package/legacy/DataGrid/DataGrid.js +1 -1
- package/legacy/DataGrid/useDataGridProps.js +3 -1
- package/legacy/components/GridPagination.js +10 -2
- package/legacy/components/GridRow.js +7 -5
- package/legacy/components/GridScrollbarFillerCell.js +1 -3
- package/legacy/components/base/GridFooterPlaceholder.js +1 -1
- package/legacy/components/cell/GridActionsCell.js +3 -3
- package/legacy/components/cell/GridActionsCellItem.js +30 -17
- package/legacy/components/columnSelection/GridCellCheckboxRenderer.js +1 -1
- package/legacy/components/containers/GridRootStyles.js +9 -3
- package/legacy/components/panel/filterPanel/GridFilterInputBoolean.js +1 -1
- package/legacy/components/panel/filterPanel/GridFilterInputSingleSelect.js +1 -1
- package/legacy/components/panel/filterPanel/GridFilterPanel.js +1 -1
- package/legacy/constants/gridClasses.js +1 -1
- package/legacy/hooks/features/rows/gridRowsUtils.js +1 -1
- package/legacy/hooks/features/rows/useGridRows.js +2 -2
- package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +9 -10
- package/legacy/index.js +1 -1
- package/legacy/internals/utils/propValidation.js +1 -1
- package/legacy/joy/joySlots.js +2 -2
- package/legacy/locales/daDK.js +12 -12
- package/locales/daDK.js +12 -12
- package/models/api/gridApiCommon.d.ts +1 -1
- package/models/api/gridFilterApi.d.ts +1 -1
- package/models/api/gridLocaleTextApi.d.ts +3 -3
- package/models/events/gridEventLookup.d.ts +1 -1
- package/models/gridSlotsComponent.d.ts +34 -36
- package/models/gridSlotsComponentsProps.d.ts +73 -54
- package/models/props/DataGridProps.d.ts +2 -2
- package/modern/DataGrid/DataGrid.js +1 -1
- package/modern/DataGrid/useDataGridProps.js +3 -1
- package/modern/components/GridPagination.js +12 -2
- package/modern/components/GridRow.js +6 -5
- package/modern/components/GridScrollbarFillerCell.js +0 -3
- package/modern/components/base/GridFooterPlaceholder.js +1 -1
- package/modern/components/cell/GridActionsCell.js +3 -3
- package/modern/components/cell/GridActionsCellItem.js +27 -15
- package/modern/components/columnSelection/GridCellCheckboxRenderer.js +1 -1
- package/modern/components/containers/GridRootStyles.js +10 -2
- package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +1 -1
- package/modern/components/panel/filterPanel/GridFilterInputSingleSelect.js +1 -1
- package/modern/components/panel/filterPanel/GridFilterPanel.js +1 -1
- package/modern/constants/gridClasses.js +1 -1
- package/modern/hooks/features/rows/gridRowsUtils.js +1 -1
- package/modern/hooks/features/rows/useGridRows.js +2 -2
- package/modern/hooks/features/virtualization/useGridVirtualScroller.js +9 -10
- package/modern/index.js +1 -1
- package/modern/internals/utils/propValidation.js +1 -1
- package/modern/joy/joySlots.js +2 -2
- package/modern/locales/daDK.js +12 -12
- package/node/DataGrid/DataGrid.js +1 -1
- package/node/DataGrid/useDataGridProps.js +3 -1
- package/node/components/GridPagination.js +12 -2
- package/node/components/GridRow.js +6 -5
- package/node/components/GridScrollbarFillerCell.js +0 -3
- package/node/components/base/GridFooterPlaceholder.js +1 -1
- package/node/components/cell/GridActionsCell.js +3 -3
- package/node/components/cell/GridActionsCellItem.js +27 -15
- package/node/components/columnSelection/GridCellCheckboxRenderer.js +1 -1
- package/node/components/containers/GridRootStyles.js +10 -2
- package/node/components/panel/filterPanel/GridFilterInputBoolean.js +1 -1
- package/node/components/panel/filterPanel/GridFilterInputSingleSelect.js +1 -1
- package/node/components/panel/filterPanel/GridFilterPanel.js +1 -1
- package/node/constants/gridClasses.js +1 -1
- package/node/hooks/features/rows/gridRowsUtils.js +2 -2
- package/node/hooks/features/rows/useGridRows.js +2 -2
- package/node/hooks/features/virtualization/useGridVirtualScroller.js +9 -10
- package/node/index.js +1 -1
- package/node/internals/utils/propValidation.js +1 -1
- package/node/joy/joySlots.js +2 -2
- package/node/locales/daDK.js +12 -12
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,108 @@
|
|
|
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
|
+
## v7.0.0-beta.2
|
|
7
|
+
|
|
8
|
+
_Feb 9, 2024_
|
|
9
|
+
|
|
10
|
+
We'd like to offer a big thanks to the 15 contributors who made this release possible. Here are some highlights ✨:
|
|
11
|
+
|
|
12
|
+
- 🚀 Add slot typings on the Data Grid components (#11795) @romgrk
|
|
13
|
+
- 🎁 Support UTC date formatting in Charts tooltip (#11943) @shaharyar-shamshi
|
|
14
|
+
- 🌍 Improve Danish (da-DK) locale Data Grid (#11877) @ShahrazH
|
|
15
|
+
- 🐞 Bugfixes
|
|
16
|
+
- 📚 Documentation improvements
|
|
17
|
+
|
|
18
|
+
### Data Grid
|
|
19
|
+
|
|
20
|
+
#### `@mui/x-data-grid@v7.0.0-beta.2`
|
|
21
|
+
|
|
22
|
+
- [DataGrid] Add `removeAllFilterItems` as a reason of `onFilterModelChange` callback (#11911) @shaharyar-shamshi
|
|
23
|
+
- [DataGrid] Add slot typings (#11795) @romgrk
|
|
24
|
+
- [DataGrid] Add support for dialogs in menu actions (#11909) @cherniavskii
|
|
25
|
+
- [DataGrid] Allow passing readonly arrays to `pageSizeOptions` prop (#11609) @pcorpet
|
|
26
|
+
- [DataGrid] Fix incorrect computation of `lastPage` in `GridPagination` (#11958) @MBilalShafi
|
|
27
|
+
- [DataGrid] Improve vertical scrolling performance (#11924) @romgrk
|
|
28
|
+
- [l10n] Improve Danish (da-DK) locale (#11877) @ShahrazH
|
|
29
|
+
|
|
30
|
+
#### `@mui/x-data-grid-pro@v7.0.0-beta.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
31
|
+
|
|
32
|
+
Same changes as in `@mui/x-data-grid@v7.0.0-beta.2`.
|
|
33
|
+
|
|
34
|
+
#### `@mui/x-data-grid-premium@v7.0.0-beta.2` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
35
|
+
|
|
36
|
+
Same changes as in `@mui/x-data-grid-pro@v7.0.0-beta.2`, plus:
|
|
37
|
+
|
|
38
|
+
- [DataGridPremium] Fix autosize grouping cell (#11870) @romgrk
|
|
39
|
+
- [DataGridPremium] Fix clipboard paste not working with Caps Lock enabled (#11965) @shaharyar-shamshi
|
|
40
|
+
|
|
41
|
+
### Date Pickers
|
|
42
|
+
|
|
43
|
+
#### `@mui/x-date-pickers@v7.0.0-beta.2`
|
|
44
|
+
|
|
45
|
+
- [pickers] Avoid relying on locale in Luxon `isWithinRange` method (#11936) @LukasTy
|
|
46
|
+
- [pickers] Limit the valid values of `TDate` (#11791) @flaviendelangle
|
|
47
|
+
|
|
48
|
+
#### `@mui/x-date-pickers-pro@v7.0.0-beta.2` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
49
|
+
|
|
50
|
+
Same changes as in `@mui/x-date-pickers@v7.0.0-beta.2`.
|
|
51
|
+
|
|
52
|
+
### Charts / `@mui/x-charts@v7.0.0-beta.2`
|
|
53
|
+
|
|
54
|
+
- [charts] Add `reverse` property to axes (#11899) @alexfauquette
|
|
55
|
+
- [charts] Allow series ids to be numbers (#11941) @alexfauquette
|
|
56
|
+
- [charts] Support UTC date formatting in tooltip (#11943) @shaharyar-shamshi
|
|
57
|
+
|
|
58
|
+
### Tree View / `@mui/x-tree-view@v7.0.0-beta.2`
|
|
59
|
+
|
|
60
|
+
- [TreeView] Correctly detect if an item is expandable (#11963) @swalker326
|
|
61
|
+
- [TreeView] Polish the default design & revise the simple version pages (#11529) @danilo-leal
|
|
62
|
+
|
|
63
|
+
### License
|
|
64
|
+
|
|
65
|
+
#### Breaking changes
|
|
66
|
+
|
|
67
|
+
- If you're using the [commercial license](https://next.mui.com/x/introduction/licensing), you need to update the import path:
|
|
68
|
+
|
|
69
|
+
```diff
|
|
70
|
+
-import { LicenseInfo } from '@mui/x-license-pro';
|
|
71
|
+
+import { LicenseInfo } from '@mui/x-license';
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
`@mui/x-license@v7.0.0-beta.2`
|
|
75
|
+
|
|
76
|
+
- [license] Rename `@mui/x-license-pro` to `@mui/x-license` (#11938) @cherniavskii
|
|
77
|
+
|
|
78
|
+
### Docs
|
|
79
|
+
|
|
80
|
+
- [docs] Add a note about `AdapterDateFnsV3` on the Getting Started page (#11985) @flaviendelangle
|
|
81
|
+
- [docs] Add missing `Charts` breaking change steps (#11971) @alexfauquette
|
|
82
|
+
- [docs] Fix `ChartsTooltip` typo (#11961) @thisisharsh7
|
|
83
|
+
- [docs] Refactor `Localization` documentation sections (#11989) @LukasTy
|
|
84
|
+
- [docs] Use "cannot" instead of "can't" or "can not" (#11986) @flaviendelangle
|
|
85
|
+
- [docs] Add quick fixes to the migration guide (#11806) @danilo-leal
|
|
86
|
+
- [docs] Avoid use of shorthand (#12000) @oliviertassinari
|
|
87
|
+
- [docs] Avoid the use of MUI Core @oliviertassinari
|
|
88
|
+
- [docs] Fix image size and dark mode @oliviertassinari
|
|
89
|
+
- [docs] Follow blank line convention with use client @oliviertassinari
|
|
90
|
+
- [docs] Stable layout between light and dark mode @oliviertassinari
|
|
91
|
+
|
|
92
|
+
### Core
|
|
93
|
+
|
|
94
|
+
- [core] Add `docs:serve` script (#11935) @cherniavskii
|
|
95
|
+
- [core] Bump monorepo (#12001) @cherniavskii
|
|
96
|
+
- [core] Deprecate `LicenseInfo` re-exports (#11956) @cherniavskii
|
|
97
|
+
- [core] Fix `test_types` failing on the `next` branch (#11944) @cherniavskii
|
|
98
|
+
- [core] Fix failing `test_static` on the next branch (#11977) @cherniavskii
|
|
99
|
+
- [core] Flatten grid packages folder (#11946) @cherniavskii
|
|
100
|
+
- [core] Improve license info deprecation message (#11974) @cherniavskii
|
|
101
|
+
- [core] Integrate changes from Core #40842 PR (#11801) @michaldudak
|
|
102
|
+
- [core] Move next config to ESM (#11882) @Janpot
|
|
103
|
+
- [core] Add auto-message on closed issues (#11805) @michelengelen
|
|
104
|
+
- [core] Simplify bug reproduction (#11849) @oliviertassinari
|
|
105
|
+
- [core] Fix npm reference @oliviertassinari
|
|
106
|
+
- [core] Normalize issue template @oliviertassinari
|
|
107
|
+
|
|
6
108
|
## 7.0.0-beta.1
|
|
7
109
|
|
|
8
110
|
_Feb 1, 2024_
|
|
@@ -2036,6 +2138,62 @@ Here is an example of the renaming for the `<ChartsTooltip />` component.
|
|
|
2036
2138
|
- [core] Update release instructions as per v7 configuration (#10962) @MBilalShafi
|
|
2037
2139
|
- [license] Correctly throw errors (#10924) @oliviertassinari
|
|
2038
2140
|
|
|
2141
|
+
## v6.19.4
|
|
2142
|
+
|
|
2143
|
+
_Feb 9, 2024_
|
|
2144
|
+
|
|
2145
|
+
We'd like to offer a big thanks to the 10 contributors who made this release possible. Here are some highlights ✨:
|
|
2146
|
+
|
|
2147
|
+
- 🌍 Improve Danish (da-DK) locale on the Data Grid (#11972) @ShahrazH
|
|
2148
|
+
- 🐞 Bugfixes
|
|
2149
|
+
- 📚 Documentation improvements
|
|
2150
|
+
|
|
2151
|
+
### Data Grid
|
|
2152
|
+
|
|
2153
|
+
#### `@mui/x-data-grid@v6.19.4`
|
|
2154
|
+
|
|
2155
|
+
- [DataGrid] Add support for dialogs in menu actions (#11937) @cherniavskii
|
|
2156
|
+
- [DataGrid] Allow passing readonly arrays to `pageSizeOptions` prop (#11992) @pcorpet
|
|
2157
|
+
- [DataGrid] Fix row reorder with cell selection (#11878) @PEsteves8
|
|
2158
|
+
- [DataGrid] Replace `eval` with `new Function` (#11962) @cherniavskii
|
|
2159
|
+
- [l10n] Improve Danish (da-DK) locale (#11972) @ShahrazH
|
|
2160
|
+
|
|
2161
|
+
#### `@mui/x-data-grid-pro@v6.19.4` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
2162
|
+
|
|
2163
|
+
Same changes as in `@mui/x-data-grid@v6.19.4`.
|
|
2164
|
+
|
|
2165
|
+
#### `@mui/x-data-grid-premium@v6.19.4` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
2166
|
+
|
|
2167
|
+
Same changes as in `@mui/x-data-grid-pro@v6.19.4`, plus:
|
|
2168
|
+
|
|
2169
|
+
- [DataGridPremium] Fix autosize grouping cell (#11990) @romgrk
|
|
2170
|
+
- [DataGridPremium] Fix error after closing print export (#11889) @cherniavskii
|
|
2171
|
+
|
|
2172
|
+
### Date Pickers
|
|
2173
|
+
|
|
2174
|
+
#### `@mui/x-date-pickers@v6.19.4`
|
|
2175
|
+
|
|
2176
|
+
- [pickers] Avoid relying on locale in Luxon `isWithinRange` method (#11940) @LukasTy
|
|
2177
|
+
|
|
2178
|
+
#### `@mui/x-date-pickers-pro@v6.19.4` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
2179
|
+
|
|
2180
|
+
Same changes as in `@mui/x-date-pickers@v6.19.4`.
|
|
2181
|
+
|
|
2182
|
+
### Charts / `@mui/x-charts@v6.19.4`
|
|
2183
|
+
|
|
2184
|
+
- [charts] Add `reverse` property to axes (#11959) @alexfauquette
|
|
2185
|
+
- [charts] Allow series ids to be numbers (#11960) @alexfauquette
|
|
2186
|
+
- [charts] Fix Proptypes error by supporting string values for axes (#11953) @alexfauquette
|
|
2187
|
+
|
|
2188
|
+
### Docs
|
|
2189
|
+
|
|
2190
|
+
- [docs] Add a note about `AdapterDateFnsV3` on the Getting Started page (#11987) @flaviendelangle
|
|
2191
|
+
- [docs] Avoid the use of MUI Core @oliviertassinari
|
|
2192
|
+
- [docs] Fix API links (#11930) @alexfauquette
|
|
2193
|
+
- [docs] Fix `ChartsTooltip` typo (#11967) @thisisharsh7
|
|
2194
|
+
- [docs] Refactor `Localization` documentation sections (#11997) @LukasTy
|
|
2195
|
+
- [code] Simplify bug reproduction (#11932) @alexfauquette
|
|
2196
|
+
|
|
2039
2197
|
## 6.19.3
|
|
2040
2198
|
|
|
2041
2199
|
_Feb 1, 2024_
|
|
@@ -7123,7 +7281,7 @@ You can find more information about the new api, including how to set those tran
|
|
|
7123
7281
|
- [core] Add link to the security page on the `README` (#6073) @oliviertassinari
|
|
7124
7282
|
- [core] Fix scroll restoration in the docs (#5938) @oliviertassinari
|
|
7125
7283
|
- [core] Remove the Storybook (#6099) @flaviendelangle
|
|
7126
|
-
- [core] Tag release as `next` in
|
|
7284
|
+
- [core] Tag release as `next` in npm (#6256) @m4theushw
|
|
7127
7285
|
- [core] Update monorepo (#6180) @flaviendelangle
|
|
7128
7286
|
- [core] Use the `next` branch for Prettier (#6097) @flaviendelangle
|
|
7129
7287
|
- [core] Use the official repository for `@mui/monorepo` instead of a fork (#6189) @oliviertassinari
|
package/DataGrid/DataGrid.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { DataGridProps } from '../models/props/DataGridProps';
|
|
3
3
|
import { GridValidRowModel } from '../models/gridRows';
|
|
4
|
+
export type { GridSlotsComponent as GridSlots } from '../models';
|
|
4
5
|
interface DataGridComponent {
|
|
5
6
|
<R extends GridValidRowModel = any>(props: DataGridProps<R> & React.RefAttributes<HTMLDivElement>): React.JSX.Element;
|
|
6
7
|
propTypes?: any;
|
|
@@ -13,4 +14,3 @@ interface DataGridComponent {
|
|
|
13
14
|
* - [DataGrid API](https://mui.com/x/api/data-grid/data-grid/)
|
|
14
15
|
*/
|
|
15
16
|
export declare const DataGrid: DataGridComponent;
|
|
16
|
-
export {};
|
package/DataGrid/DataGrid.js
CHANGED
|
@@ -305,7 +305,7 @@ DataGridRaw.propTypes = {
|
|
|
305
305
|
loading: PropTypes.bool,
|
|
306
306
|
/**
|
|
307
307
|
* Set the locale text of the Data Grid.
|
|
308
|
-
* You can find all the translation keys supported in [the source](https://github.com/mui/mui-x/blob/HEAD/packages/
|
|
308
|
+
* You can find all the translation keys supported in [the source](https://github.com/mui/mui-x/blob/HEAD/packages/x-data-grid/src/constants/localeTextConstants.ts) in the GitHub repository.
|
|
309
309
|
*/
|
|
310
310
|
localeText: PropTypes.object,
|
|
311
311
|
/**
|
|
@@ -74,7 +74,9 @@ export const DATA_GRID_PROPS_DEFAULT_VALUES = {
|
|
|
74
74
|
};
|
|
75
75
|
const defaultSlots = DATA_GRID_DEFAULT_SLOTS_COMPONENTS;
|
|
76
76
|
export const useDataGridProps = inProps => {
|
|
77
|
-
const themedProps = useProps(
|
|
77
|
+
const themedProps = useProps(
|
|
78
|
+
// eslint-disable-next-line material-ui/mui-name-matches-component-name
|
|
79
|
+
useThemeProps({
|
|
78
80
|
props: inProps,
|
|
79
81
|
name: 'MuiDataGrid'
|
|
80
82
|
}));
|
|
@@ -3,4 +3,4 @@ export declare const GridPagination: React.ForwardRefExoticComponent<(Omit<Parti
|
|
|
3
3
|
component?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
|
|
4
4
|
}>, "ref"> | Omit<Partial<import("@mui/material/TablePagination").TablePaginationOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("@mui/material/TablePagination").TablePaginationBaseProps, "ref"> & React.RefAttributes<React.Component<any, any, any>>, "hidden" | "color" | "page" | "content" | "size" | "style" | "height" | "translate" | "width" | "padding" | "disabled" | "abbr" | "slot" | "title" | "ref" | "colSpan" | "headers" | "rowSpan" | "scope" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoFocus" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "nonce" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "rel" | "resource" | "rev" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-braillelabel" | "aria-brailleroledescription" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colindextext" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-description" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowindextext" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "align" | "valign" | "sx" | "classes" | "variant" | "slotProps" | "slots" | "count" | "getItemAriaLabel" | "onPageChange" | "rowsPerPage" | "showFirstButton" | "showLastButton" | "labelDisplayedRows" | "labelRowsPerPage" | "onRowsPerPageChange" | "rowsPerPageOptions" | "backIconButtonProps" | "nextIconButtonProps" | "sortDirection" | "ActionsComponent" | "SelectProps"> & {
|
|
5
5
|
component?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
|
|
6
|
-
}>, "ref">) & React.RefAttributes<
|
|
6
|
+
}>, "ref">) & React.RefAttributes<unknown>>;
|
|
@@ -24,6 +24,9 @@ const GridPaginationRoot = styled(TablePagination)(({
|
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
}));
|
|
27
|
+
|
|
28
|
+
// A mutable version of a readonly array.
|
|
29
|
+
|
|
27
30
|
export const GridPagination = /*#__PURE__*/React.forwardRef(function GridPagination(props, ref) {
|
|
28
31
|
const apiRef = useGridApiContext();
|
|
29
32
|
const rootProps = useGridRootProps();
|
|
@@ -33,7 +36,10 @@ export const GridPagination = /*#__PURE__*/React.forwardRef(function GridPaginat
|
|
|
33
36
|
var _ref, _rootProps$rowCount;
|
|
34
37
|
return (_ref = (_rootProps$rowCount = rootProps.rowCount) != null ? _rootProps$rowCount : visibleTopLevelRowCount) != null ? _ref : 0;
|
|
35
38
|
}, [rootProps.rowCount, visibleTopLevelRowCount]);
|
|
36
|
-
const lastPage = React.useMemo(() =>
|
|
39
|
+
const lastPage = React.useMemo(() => {
|
|
40
|
+
const calculatedValue = Math.ceil(rowCount / (paginationModel.pageSize || 1)) - 1;
|
|
41
|
+
return Math.max(0, calculatedValue);
|
|
42
|
+
}, [rowCount, paginationModel.pageSize]);
|
|
37
43
|
const handlePageSizeChange = React.useCallback(event => {
|
|
38
44
|
const pageSize = Number(event.target.value);
|
|
39
45
|
apiRef.current.setPageSize(pageSize);
|
|
@@ -69,7 +75,11 @@ export const GridPagination = /*#__PURE__*/React.forwardRef(function GridPaginat
|
|
|
69
75
|
ref: ref,
|
|
70
76
|
component: "div",
|
|
71
77
|
count: rowCount,
|
|
72
|
-
page: paginationModel.page <= lastPage ? paginationModel.page : lastPage
|
|
78
|
+
page: paginationModel.page <= lastPage ? paginationModel.page : lastPage
|
|
79
|
+
// TODO: Remove the cast once the type is fixed in Material UI and that the min Material UI version
|
|
80
|
+
// for x-data-grid is past the fix.
|
|
81
|
+
// Note that Material UI will not mutate the array, so this is safe.
|
|
82
|
+
,
|
|
73
83
|
rowsPerPageOptions: pageSizeOptions,
|
|
74
84
|
rowsPerPage: paginationModel.pageSize,
|
|
75
85
|
onPageChange: handlePageChange,
|
package/components/GridRow.js
CHANGED
|
@@ -37,9 +37,7 @@ const useUtilityClasses = ownerState => {
|
|
|
37
37
|
classes
|
|
38
38
|
} = ownerState;
|
|
39
39
|
const slots = {
|
|
40
|
-
root: ['row', selected && 'selected', editable && 'row--editable', editing && 'row--editing', isFirstVisible && 'row--firstVisible', isLastVisible && 'row--lastVisible', rowHeight === 'auto' && 'row--dynamicHeight']
|
|
41
|
-
pinnedLeft: ['pinnedLeft'],
|
|
42
|
-
pinnedRight: ['pinnedRight']
|
|
40
|
+
root: ['row', selected && 'selected', editable && 'row--editable', editing && 'row--editing', isFirstVisible && 'row--firstVisible', isLastVisible && 'row--lastVisible', rowHeight === 'auto' && 'row--dynamicHeight']
|
|
43
41
|
};
|
|
44
42
|
return composeClasses(slots, getDataGridUtilityClass, classes);
|
|
45
43
|
};
|
|
@@ -268,6 +266,7 @@ const GridRow = /*#__PURE__*/React.forwardRef(function GridRow(props, refProp) {
|
|
|
268
266
|
break;
|
|
269
267
|
}
|
|
270
268
|
if ((rowNode == null ? void 0 : rowNode.type) === 'skeletonRow') {
|
|
269
|
+
var _column$align;
|
|
271
270
|
const {
|
|
272
271
|
width
|
|
273
272
|
} = cellColSpanInfo.cellProps;
|
|
@@ -276,7 +275,7 @@ const GridRow = /*#__PURE__*/React.forwardRef(function GridRow(props, refProp) {
|
|
|
276
275
|
width: width,
|
|
277
276
|
contentWidth: contentWidth,
|
|
278
277
|
field: column.field,
|
|
279
|
-
align: column.align
|
|
278
|
+
align: (_column$align = column.align) != null ? _column$align : 'left'
|
|
280
279
|
}, column.field);
|
|
281
280
|
}
|
|
282
281
|
const {
|
|
@@ -364,7 +363,10 @@ const GridRow = /*#__PURE__*/React.forwardRef(function GridRow(props, refProp) {
|
|
|
364
363
|
"aria-selected": selected,
|
|
365
364
|
style: style
|
|
366
365
|
}, eventHandlers, other, {
|
|
367
|
-
children: [leftCells,
|
|
366
|
+
children: [leftCells, /*#__PURE__*/_jsx("div", {
|
|
367
|
+
className: gridClasses.cellOffsetLeft,
|
|
368
|
+
role: "presentation"
|
|
369
|
+
}), cells, emptyCellWidth > 0 && /*#__PURE__*/_jsx(EmptyCell, {
|
|
368
370
|
width: emptyCellWidth
|
|
369
371
|
}), rightCells.length > 0 && /*#__PURE__*/_jsx("div", {
|
|
370
372
|
role: "presentation",
|
|
@@ -21,9 +21,6 @@ const Style = styled('div')({
|
|
|
21
21
|
[`&.${classes.pinnedRight}:not(.${classes.header})`]: {
|
|
22
22
|
position: 'sticky',
|
|
23
23
|
right: 0
|
|
24
|
-
},
|
|
25
|
-
[`&:not(.${classes.header}):not(.${classes.pinnedRight})`]: {
|
|
26
|
-
transform: 'translate3d(var(--DataGrid-offsetLeft), 0, 0)'
|
|
27
24
|
}
|
|
28
25
|
});
|
|
29
26
|
function GridScrollbarFillerCell({
|
|
@@ -8,5 +8,5 @@ export function GridFooterPlaceholder() {
|
|
|
8
8
|
if (rootProps.hideFooter) {
|
|
9
9
|
return null;
|
|
10
10
|
}
|
|
11
|
-
return /*#__PURE__*/_jsx(rootProps.slots.footer, _extends({}, (_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.footer));
|
|
11
|
+
return /*#__PURE__*/_jsx(rootProps.slots.footer, _extends({}, (_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.footer /* FIXME: typing error */));
|
|
12
12
|
}
|
|
@@ -138,7 +138,7 @@ function GridActionsCell(props) {
|
|
|
138
138
|
if (event.key === 'Tab') {
|
|
139
139
|
event.preventDefault();
|
|
140
140
|
}
|
|
141
|
-
if (['Tab', '
|
|
141
|
+
if (['Tab', 'Escape'].includes(event.key)) {
|
|
142
142
|
hideMenu();
|
|
143
143
|
}
|
|
144
144
|
};
|
|
@@ -175,7 +175,6 @@ function GridActionsCell(props) {
|
|
|
175
175
|
target: buttonRef.current,
|
|
176
176
|
position: position,
|
|
177
177
|
onClose: hideMenu,
|
|
178
|
-
onClick: hideMenu,
|
|
179
178
|
children: /*#__PURE__*/_jsx(MenuList, {
|
|
180
179
|
id: menuId,
|
|
181
180
|
className: gridClasses.menuList,
|
|
@@ -184,7 +183,8 @@ function GridActionsCell(props) {
|
|
|
184
183
|
variant: "menu",
|
|
185
184
|
autoFocusItem: true,
|
|
186
185
|
children: menuButtons.map((button, index) => /*#__PURE__*/React.cloneElement(button, {
|
|
187
|
-
key: index
|
|
186
|
+
key: index,
|
|
187
|
+
closeMenu: hideMenu
|
|
188
188
|
}))
|
|
189
189
|
})
|
|
190
190
|
})]
|
|
@@ -11,6 +11,12 @@ export type GridActionsCellItemProps = {
|
|
|
11
11
|
icon: React.ReactElement;
|
|
12
12
|
} & IconButtonProps) | ({
|
|
13
13
|
showInMenu: true;
|
|
14
|
+
/**
|
|
15
|
+
* If false, the menu will not close when this item is clicked.
|
|
16
|
+
* @default true
|
|
17
|
+
*/
|
|
18
|
+
closeMenuOnClick?: boolean;
|
|
19
|
+
closeMenu?: () => void;
|
|
14
20
|
} & MenuItemProps));
|
|
15
21
|
declare const GridActionsCellItem: React.ForwardRefExoticComponent<(Omit<{
|
|
16
22
|
label: string;
|
|
@@ -31,9 +37,15 @@ declare const GridActionsCellItem: React.ForwardRefExoticComponent<(Omit<{
|
|
|
31
37
|
component?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
|
|
32
38
|
} & {
|
|
33
39
|
showInMenu: true;
|
|
40
|
+
/**
|
|
41
|
+
* If false, the menu will not close when this item is clicked.
|
|
42
|
+
* @default true
|
|
43
|
+
*/
|
|
44
|
+
closeMenuOnClick?: boolean | undefined;
|
|
45
|
+
closeMenu?: (() => void) | undefined;
|
|
34
46
|
} & import("@mui/material/MenuItem").MenuItemOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<React.DetailedHTMLProps<React.LiHTMLAttributes<HTMLLIElement>, HTMLLIElement>, "ref"> & {
|
|
35
47
|
ref?: ((instance: HTMLLIElement | null) => void) | React.RefObject<HTMLLIElement> | null | undefined;
|
|
36
48
|
}, "style" | "dense" | "disabled" | "action" | "selected" | "autoFocus" | "className" | "tabIndex" | "children" | "sx" | "classes" | "disableGutters" | "divider" | "onFocusVisible" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "TouchRippleProps" | "touchRippleRef"> & {
|
|
37
49
|
component?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
|
|
38
|
-
}, "ref">) & React.RefAttributes<
|
|
50
|
+
}, "ref">) & React.RefAttributes<HTMLElement>>;
|
|
39
51
|
export { GridActionsCellItem };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
const _excluded = ["label", "icon", "showInMenu", "onClick"]
|
|
3
|
+
const _excluded = ["label", "icon", "showInMenu", "onClick"],
|
|
4
|
+
_excluded2 = ["label", "icon", "showInMenu", "onClick", "closeMenuOnClick", "closeMenu"];
|
|
4
5
|
import * as React from 'react';
|
|
5
6
|
import PropTypes from 'prop-types';
|
|
6
7
|
import MenuItem from '@mui/material/MenuItem';
|
|
@@ -9,21 +10,18 @@ import { useGridRootProps } from '../../hooks/utils/useGridRootProps';
|
|
|
9
10
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
10
11
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
11
12
|
const GridActionsCellItem = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
12
|
-
const {
|
|
13
|
-
label,
|
|
14
|
-
icon,
|
|
15
|
-
showInMenu,
|
|
16
|
-
onClick
|
|
17
|
-
} = props,
|
|
18
|
-
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
19
13
|
const rootProps = useGridRootProps();
|
|
20
|
-
|
|
21
|
-
if (onClick) {
|
|
22
|
-
onClick(event);
|
|
23
|
-
}
|
|
24
|
-
};
|
|
25
|
-
if (!showInMenu) {
|
|
14
|
+
if (!props.showInMenu) {
|
|
26
15
|
var _rootProps$slotProps;
|
|
16
|
+
const {
|
|
17
|
+
label,
|
|
18
|
+
icon,
|
|
19
|
+
onClick
|
|
20
|
+
} = props,
|
|
21
|
+
other = _objectWithoutPropertiesLoose(props, _excluded);
|
|
22
|
+
const handleClick = event => {
|
|
23
|
+
onClick == null || onClick(event);
|
|
24
|
+
};
|
|
27
25
|
return /*#__PURE__*/_jsx(rootProps.slots.baseIconButton, _extends({
|
|
28
26
|
ref: ref,
|
|
29
27
|
size: "small",
|
|
@@ -37,10 +35,24 @@ const GridActionsCellItem = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
37
35
|
})
|
|
38
36
|
}));
|
|
39
37
|
}
|
|
38
|
+
const {
|
|
39
|
+
label,
|
|
40
|
+
icon,
|
|
41
|
+
onClick,
|
|
42
|
+
closeMenuOnClick = true,
|
|
43
|
+
closeMenu
|
|
44
|
+
} = props,
|
|
45
|
+
other = _objectWithoutPropertiesLoose(props, _excluded2);
|
|
46
|
+
const handleClick = event => {
|
|
47
|
+
onClick == null || onClick(event);
|
|
48
|
+
if (closeMenuOnClick) {
|
|
49
|
+
closeMenu == null || closeMenu();
|
|
50
|
+
}
|
|
51
|
+
};
|
|
40
52
|
return /*#__PURE__*/_jsxs(MenuItem, _extends({
|
|
41
53
|
ref: ref
|
|
42
54
|
}, other, {
|
|
43
|
-
onClick:
|
|
55
|
+
onClick: handleClick,
|
|
44
56
|
children: [icon && /*#__PURE__*/_jsx(ListItemIcon, {
|
|
45
57
|
children: icon
|
|
46
58
|
}), label]
|
|
@@ -86,7 +86,7 @@ const GridCellCheckboxForwardRef = /*#__PURE__*/React.forwardRef(function GridCe
|
|
|
86
86
|
},
|
|
87
87
|
onKeyDown: handleKeyDown,
|
|
88
88
|
disabled: !isSelectable,
|
|
89
|
-
touchRippleRef: rippleRef
|
|
89
|
+
touchRippleRef: rippleRef /* FIXME: typing error */
|
|
90
90
|
}, (_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.baseCheckbox, other));
|
|
91
91
|
});
|
|
92
92
|
process.env.NODE_ENV !== "production" ? GridCellCheckboxForwardRef.propTypes = {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import type { GridColumnHeaderParams } from '../../models/params/gridColumnHeaderParams';
|
|
3
|
-
declare const GridHeaderCheckbox: React.ForwardRefExoticComponent<GridColumnHeaderParams<import("../../models/gridRows").GridValidRowModel, any, any> & React.RefAttributes<
|
|
3
|
+
declare const GridHeaderCheckbox: React.ForwardRefExoticComponent<GridColumnHeaderParams<import("../../models/gridRows").GridValidRowModel, any, any> & React.RefAttributes<HTMLButtonElement>>;
|
|
4
4
|
export { GridHeaderCheckbox };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { GridColumnVisibilityModel } from '../../hooks/features/columns/gridColumnsInterfaces';
|
|
2
|
-
import { GridColumnsManagementProps } from './GridColumnsManagement';
|
|
2
|
+
import type { GridColumnsManagementProps } from './GridColumnsManagement';
|
|
3
3
|
export declare const checkColumnVisibilityModelsSame: (a: GridColumnVisibilityModel, b: GridColumnVisibilityModel) => boolean;
|
|
4
4
|
export declare const defaultSearchPredicate: NonNullable<GridColumnsManagementProps['searchPredicate']>;
|
|
@@ -240,6 +240,12 @@ export const GridRootStyles = styled('div', {
|
|
|
240
240
|
[`& .${c.cell} > *`]: {
|
|
241
241
|
overflow: 'visible !important',
|
|
242
242
|
whiteSpace: 'nowrap'
|
|
243
|
+
},
|
|
244
|
+
[`& .${c.groupingCriteriaCell}`]: {
|
|
245
|
+
width: 'unset'
|
|
246
|
+
},
|
|
247
|
+
[`& .${c.treeDataGroupingCell}`]: {
|
|
248
|
+
width: 'unset'
|
|
243
249
|
}
|
|
244
250
|
},
|
|
245
251
|
[`& .${c.columnHeader}, & .${c.cell}`]: {
|
|
@@ -554,8 +560,10 @@ export const GridRootStyles = styled('div', {
|
|
|
554
560
|
}
|
|
555
561
|
}
|
|
556
562
|
},
|
|
557
|
-
[`& .${c.
|
|
558
|
-
|
|
563
|
+
[`& .${c.cellOffsetLeft}`]: {
|
|
564
|
+
flex: '0 0 auto',
|
|
565
|
+
display: 'inline-block',
|
|
566
|
+
width: 'var(--DataGrid-offsetLeft)'
|
|
559
567
|
},
|
|
560
568
|
[`& .${c.columnHeaderDraggableContainer}`]: {
|
|
561
569
|
display: 'flex',
|
|
@@ -67,7 +67,7 @@ function GridFilterInputBoolean(props) {
|
|
|
67
67
|
ref: focusElementRef,
|
|
68
68
|
tabIndex
|
|
69
69
|
}
|
|
70
|
-
}, others
|
|
70
|
+
}, others /* FIXME: typing error */, baseSelectProps, {
|
|
71
71
|
children: [/*#__PURE__*/_jsx(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
|
|
72
72
|
native: isSelectNative,
|
|
73
73
|
value: "",
|
|
@@ -107,7 +107,7 @@ function GridFilterInputSingleSelect(props) {
|
|
|
107
107
|
placeholder: placeholder != null ? placeholder : apiRef.current.getLocaleText('filterPanelInputPlaceholder')
|
|
108
108
|
},
|
|
109
109
|
native: isSelectNative
|
|
110
|
-
}, others
|
|
110
|
+
}, others /* FIXME: typing error */, (_rootProps$slotProps3 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps3.baseSelect, {
|
|
111
111
|
children: renderSingleSelectOptions({
|
|
112
112
|
column: resolvedColumn,
|
|
113
113
|
OptionComponent: rootProps.slots.baseSelectOption,
|
|
@@ -134,7 +134,7 @@ const GridFilterPanel = /*#__PURE__*/React.forwardRef(function GridFilterPanel(p
|
|
|
134
134
|
}
|
|
135
135
|
return apiRef.current.setFilterModel(_extends({}, filterModel, {
|
|
136
136
|
items: readOnlyFilters
|
|
137
|
-
}));
|
|
137
|
+
}), 'removeAllFilterItems');
|
|
138
138
|
}, [apiRef, readOnlyFilters, filterModel, validFilters]);
|
|
139
139
|
React.useEffect(() => {
|
|
140
140
|
if (logicOperators.length > 0 && filterModel.logicOperator && !logicOperators.includes(filterModel.logicOperator)) {
|
|
@@ -107,6 +107,11 @@ export interface GridClasses {
|
|
|
107
107
|
* Styles applied to the skeleton cell element.
|
|
108
108
|
*/
|
|
109
109
|
cellSkeleton: string;
|
|
110
|
+
/**
|
|
111
|
+
* @ignore - do not document.
|
|
112
|
+
* Styles applied to the left offset cell element.
|
|
113
|
+
*/
|
|
114
|
+
cellOffsetLeft: string;
|
|
110
115
|
/**
|
|
111
116
|
* Styles applied to the selection checkbox element.
|
|
112
117
|
*/
|
package/constants/gridClasses.js
CHANGED
|
@@ -2,4 +2,4 @@ import { unstable_generateUtilityClasses as generateUtilityClasses, unstable_gen
|
|
|
2
2
|
export function getDataGridUtilityClass(slot) {
|
|
3
3
|
return generateUtilityClass('MuiDataGrid', slot);
|
|
4
4
|
}
|
|
5
|
-
export const gridClasses = generateUtilityClasses('MuiDataGrid', ['actionsCell', 'aggregationColumnHeader', 'aggregationColumnHeader--alignLeft', 'aggregationColumnHeader--alignCenter', 'aggregationColumnHeader--alignRight', 'aggregationColumnHeaderLabel', 'autoHeight', 'autosizing', 'booleanCell', 'cell--editable', 'cell--editing', 'cell--textCenter', 'cell--textLeft', 'cell--textRight', 'cell--withRenderer', 'cell--rangeTop', 'cell--rangeBottom', 'cell--rangeLeft', 'cell--rangeRight', 'cell--pinnedLeft', 'cell--pinnedRight', 'cell--selectionMode', 'cell', 'cellContent', 'cellCheckbox', 'cellEmpty', 'cellSkeleton', 'checkboxInput', 'columnHeader--alignCenter', 'columnHeader--alignLeft', 'columnHeader--alignRight', 'columnHeader--dragging', 'columnHeader--moving', 'columnHeader--numeric', 'columnHeader--sortable', 'columnHeader--sorted', 'columnHeader--filtered', 'columnHeader', 'columnHeaderCheckbox', 'columnHeaderDraggableContainer', 'columnHeaderDropZone', 'columnHeaderTitle', 'columnHeaderTitleContainer', 'columnHeaderTitleContainerContent', 'columnGroupHeader', 'columnHeader--filledGroup', 'columnHeader--emptyGroup', 'columnHeader--showColumnBorder', 'columnHeaders', 'columnHeadersInner', 'columnHeadersInner--scrollable', 'columnSeparator--resizable', 'columnSeparator--resizing', 'columnSeparator--sideLeft', 'columnSeparator--sideRight', 'columnSeparator', 'columnsManagement', 'columnsManagementRow', 'columnsManagementHeader', 'columnsManagementFooter', 'container--top', 'container--bottom', 'detailPanel', 'detailPanels', 'detailPanelToggleCell', 'detailPanelToggleCell--expanded', 'footerCell', 'panel', 'panelHeader', 'panelWrapper', 'panelContent', 'panelFooter', 'paper', 'editBooleanCell', 'editInputCell', 'filler', 'filler--pinnedLeft', 'filler--pinnedRight', 'filterForm', 'filterFormDeleteIcon', 'filterFormLogicOperatorInput', 'filterFormColumnInput', 'filterFormOperatorInput', 'filterFormValueInput', 'filterIcon', 'footerContainer', 'headerFilterRow', 'iconButtonContainer', 'iconSeparator', 'main', 'main--hasPinnedRight', 'menu', 'menuIcon', 'menuIconButton', 'menuOpen', 'menuList', 'overlay', 'overlayWrapper', 'overlayWrapperInner', 'root', 'root--densityStandard', 'root--densityComfortable', 'root--densityCompact', 'root--disableUserSelection', 'row', 'row--editable', 'row--editing', 'row--firstVisible', 'row--lastVisible', 'row--dragging', 'row--dynamicHeight', 'row--detailPanelExpanded', 'rowReorderCellPlaceholder', 'rowCount', 'rowReorderCellContainer', 'rowReorderCell', 'rowReorderCell--draggable', 'scrollArea--left', 'scrollArea--right', 'scrollArea', 'scrollbar', 'scrollbar--vertical', 'scrollbar--horizontal', 'selectedRowCount', 'sortIcon', 'toolbarContainer', 'toolbarFilterList', 'virtualScroller', 'virtualScrollerContent', 'virtualScrollerContent--overflowed', 'virtualScrollerRenderZone', 'pinnedColumns', 'pinnedColumnHeaders', 'pinnedColumnHeaders--left', 'pinnedColumnHeaders--right', 'withVerticalBorder', 'withBorderColor', 'cell--withRightBorder', 'cell--withLeftBorder', 'columnHeader--withRightBorder', 'treeDataGroupingCell', 'treeDataGroupingCellToggle', 'groupingCriteriaCell', 'groupingCriteriaCellToggle', 'pinnedRows', 'pinnedRows--top', 'pinnedRows--bottom', 'pinnedRowsRenderZone']);
|
|
5
|
+
export const gridClasses = generateUtilityClasses('MuiDataGrid', ['actionsCell', 'aggregationColumnHeader', 'aggregationColumnHeader--alignLeft', 'aggregationColumnHeader--alignCenter', 'aggregationColumnHeader--alignRight', 'aggregationColumnHeaderLabel', 'autoHeight', 'autosizing', 'booleanCell', 'cell--editable', 'cell--editing', 'cell--textCenter', 'cell--textLeft', 'cell--textRight', 'cell--withRenderer', 'cell--rangeTop', 'cell--rangeBottom', 'cell--rangeLeft', 'cell--rangeRight', 'cell--pinnedLeft', 'cell--pinnedRight', 'cell--selectionMode', 'cell', 'cellContent', 'cellCheckbox', 'cellEmpty', 'cellSkeleton', 'cellOffsetLeft', 'checkboxInput', 'columnHeader--alignCenter', 'columnHeader--alignLeft', 'columnHeader--alignRight', 'columnHeader--dragging', 'columnHeader--moving', 'columnHeader--numeric', 'columnHeader--sortable', 'columnHeader--sorted', 'columnHeader--filtered', 'columnHeader', 'columnHeaderCheckbox', 'columnHeaderDraggableContainer', 'columnHeaderDropZone', 'columnHeaderTitle', 'columnHeaderTitleContainer', 'columnHeaderTitleContainerContent', 'columnGroupHeader', 'columnHeader--filledGroup', 'columnHeader--emptyGroup', 'columnHeader--showColumnBorder', 'columnHeaders', 'columnHeadersInner', 'columnHeadersInner--scrollable', 'columnSeparator--resizable', 'columnSeparator--resizing', 'columnSeparator--sideLeft', 'columnSeparator--sideRight', 'columnSeparator', 'columnsManagement', 'columnsManagementRow', 'columnsManagementHeader', 'columnsManagementFooter', 'container--top', 'container--bottom', 'detailPanel', 'detailPanels', 'detailPanelToggleCell', 'detailPanelToggleCell--expanded', 'footerCell', 'panel', 'panelHeader', 'panelWrapper', 'panelContent', 'panelFooter', 'paper', 'editBooleanCell', 'editInputCell', 'filler', 'filler--pinnedLeft', 'filler--pinnedRight', 'filterForm', 'filterFormDeleteIcon', 'filterFormLogicOperatorInput', 'filterFormColumnInput', 'filterFormOperatorInput', 'filterFormValueInput', 'filterIcon', 'footerContainer', 'headerFilterRow', 'iconButtonContainer', 'iconSeparator', 'main', 'main--hasPinnedRight', 'menu', 'menuIcon', 'menuIconButton', 'menuOpen', 'menuList', 'overlay', 'overlayWrapper', 'overlayWrapperInner', 'root', 'root--densityStandard', 'root--densityComfortable', 'root--densityCompact', 'root--disableUserSelection', 'row', 'row--editable', 'row--editing', 'row--firstVisible', 'row--lastVisible', 'row--dragging', 'row--dynamicHeight', 'row--detailPanelExpanded', 'rowReorderCellPlaceholder', 'rowCount', 'rowReorderCellContainer', 'rowReorderCell', 'rowReorderCell--draggable', 'scrollArea--left', 'scrollArea--right', 'scrollArea', 'scrollbar', 'scrollbar--vertical', 'scrollbar--horizontal', 'selectedRowCount', 'sortIcon', 'toolbarContainer', 'toolbarFilterList', 'virtualScroller', 'virtualScrollerContent', 'virtualScrollerContent--overflowed', 'virtualScrollerRenderZone', 'pinnedColumns', 'pinnedColumnHeaders', 'pinnedColumnHeaders--left', 'pinnedColumnHeaders--right', 'withVerticalBorder', 'withBorderColor', 'cell--withRightBorder', 'cell--withLeftBorder', 'columnHeader--withRightBorder', 'treeDataGroupingCell', 'treeDataGroupingCellToggle', 'groupingCriteriaCell', 'groupingCriteriaCellToggle', 'pinnedRows', 'pinnedRows--top', 'pinnedRows--bottom', 'pinnedRowsRenderZone']);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import { gridPinnedRowsSelector } from './gridRowsSelector';
|
|
3
|
-
import { gridDimensionsSelector } from '../dimensions';
|
|
3
|
+
import { gridDimensionsSelector } from '../dimensions/gridDimensionsSelectors';
|
|
4
4
|
export const GRID_ROOT_GROUP_ID = `auto-generated-group-node-root`;
|
|
5
5
|
export const GRID_ID_AUTOGENERATED = Symbol('mui.id_autogenerated');
|
|
6
6
|
export const buildRootGroup = () => ({
|
|
@@ -121,7 +121,7 @@ export const useGridRows = (apiRef, props) => {
|
|
|
121
121
|
}, [logger, props.getRowId, props.loading, props.rowCount, throttledRowsChange, apiRef]);
|
|
122
122
|
const updateRows = React.useCallback(updates => {
|
|
123
123
|
if (props.signature === GridSignature.DataGrid && updates.length > 1) {
|
|
124
|
-
throw new Error([
|
|
124
|
+
throw new Error(['MUI X: You cannot update several rows at once in `apiRef.current.updateRows` on the DataGrid.', 'You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature.'].join('\n'));
|
|
125
125
|
}
|
|
126
126
|
const nonPinnedRowsUpdates = [];
|
|
127
127
|
updates.forEach(update => {
|
|
@@ -252,7 +252,7 @@ export const useGridRows = (apiRef, props) => {
|
|
|
252
252
|
}, [apiRef, logger]);
|
|
253
253
|
const replaceRows = React.useCallback((firstRowToRender, newRows) => {
|
|
254
254
|
if (props.signature === GridSignature.DataGrid && newRows.length > 1) {
|
|
255
|
-
throw new Error([
|
|
255
|
+
throw new Error(['MUI X: You cannot replace rows using `apiRef.current.unstable_replaceRows` on the DataGrid.', 'You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature.'].join('\n'));
|
|
256
256
|
}
|
|
257
257
|
if (newRows.length === 0) {
|
|
258
258
|
return;
|