@mui/x-data-grid-premium 7.1.1 → 7.3.0
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 +211 -0
- package/DataGridPremium/DataGridPremium.js +23 -0
- package/esm/DataGridPremium/DataGridPremium.js +23 -0
- package/esm/hooks/features/cellSelection/useGridCellSelection.js +2 -2
- package/esm/hooks/features/clipboard/useGridClipboardImport.js +6 -2
- package/esm/utils/releaseInfo.js +1 -1
- package/hooks/features/cellSelection/useGridCellSelection.js +2 -2
- package/hooks/features/clipboard/useGridClipboardImport.js +6 -2
- package/index.js +1 -1
- package/modern/DataGridPremium/DataGridPremium.js +23 -0
- package/modern/hooks/features/cellSelection/useGridCellSelection.js +2 -2
- package/modern/hooks/features/clipboard/useGridClipboardImport.js +6 -2
- package/modern/index.js +1 -1
- package/modern/utils/releaseInfo.js +1 -1
- package/package.json +4 -4
- package/utils/releaseInfo.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,167 @@
|
|
|
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.3.0
|
|
7
|
+
|
|
8
|
+
_Apr 18, 2024_
|
|
9
|
+
|
|
10
|
+
We'd like to offer a big thanks to the 10 contributors who made this release possible. Here are some highlights ✨:
|
|
11
|
+
|
|
12
|
+
- 📄 Support [unknown and estimated row count in server-side pagination](https://mui.com/x/react-data-grid/pagination/#index-based-pagination) (#12490) @MBilalShafi
|
|
13
|
+
- 🎨 Support color scales in Charts (#12490) @alexfauquette
|
|
14
|
+
Add a [`colorMap` configuration](https://mui.com/x/react-charts/styling/#values-color) to an axis, and the chart will use it to select colors.
|
|
15
|
+
Each impacted chart ([bar charts](https://mui.com/x/react-charts/bars/#color-scale), [line charts](https://mui.com/x/react-charts/lines/#color-scale), [scatter charts](https://mui.com/x/react-charts/scatter/#color-scale)) has a dedicated section explaining how this color map is impacting it.
|
|
16
|
+
|
|
17
|
+
<img src="https://github.com/mui/mui-x/assets/45398769/f0066606-3486-4c4e-b3be-7fdd56d763c3" alt="scatter chart with gradient along y-axis" />
|
|
18
|
+
|
|
19
|
+
- 🌍 Improve Danish (da-DK) locale on the Data Grid
|
|
20
|
+
- 🐞 Bugfixes
|
|
21
|
+
- 📚 Documentation improvements
|
|
22
|
+
|
|
23
|
+
### Data Grid
|
|
24
|
+
|
|
25
|
+
#### `@mui/x-data-grid@7.3.0`
|
|
26
|
+
|
|
27
|
+
- [DataGrid] Fix calling `onCellEditStop` on error (#12747) @sai6855
|
|
28
|
+
- [DataGrid] Fix column resize (#12792) @romgrk
|
|
29
|
+
- [DataGrid] Fix column separators (#12808) @romgrk
|
|
30
|
+
- [DataGrid] Limit panel width to not exceed screen width (#12799) @cherniavskii
|
|
31
|
+
- [DataGrid] Support advanced server-side pagination use cases (#12474) @MBilalShafi
|
|
32
|
+
- [DataGrid] Support state export and restore on grid density (#12671) @MBilalShafi
|
|
33
|
+
- [l10n] Improve Danish (da-DK) locale (#12784) @EmilBahnsen
|
|
34
|
+
|
|
35
|
+
#### `@mui/x-data-grid-pro@7.3.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
36
|
+
|
|
37
|
+
Same changes as in `@mui/x-data-grid@7.3.0`, plus:
|
|
38
|
+
|
|
39
|
+
- [DataGridPro] Implement header filter height (#12666) @romgrk
|
|
40
|
+
|
|
41
|
+
#### `@mui/x-data-grid-premium@7.3.0` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
42
|
+
|
|
43
|
+
Same changes as in `@mui/x-data-grid-pro@7.3.0`.
|
|
44
|
+
|
|
45
|
+
### Charts
|
|
46
|
+
|
|
47
|
+
#### Breaking change
|
|
48
|
+
|
|
49
|
+
A typo fix:
|
|
50
|
+
|
|
51
|
+
```diff
|
|
52
|
+
- ContinuouseScaleName
|
|
53
|
+
+ ContinuousScaleName
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
#### `@mui/x-charts@7.3.0`
|
|
57
|
+
|
|
58
|
+
- [charts] Add `dataIndex` to series `valueFormatter` (#12745) @JCQuintas
|
|
59
|
+
- [charts] Add color scale (#12490) @alexfauquette
|
|
60
|
+
- [charts] Do not document the usage of `DEFAULT_X_AXIS_KEY` and `DEFAULT_Y_AXIS_KEY` (#12780) @alexfauquette
|
|
61
|
+
- [charts] Export more utils (#12744) @alexfauquette
|
|
62
|
+
- [charts] Fix passing slot props down to `PieArcLabel` (#12806) @JCQuintas
|
|
63
|
+
|
|
64
|
+
### Tree View
|
|
65
|
+
|
|
66
|
+
#### `@mui/x-tree-view@7.3.0`
|
|
67
|
+
|
|
68
|
+
- [TreeView] Support `defaultMuiPrevented` on the `onFocus` prop of the root slot (#12813) @flaviendelangle
|
|
69
|
+
|
|
70
|
+
### Docs
|
|
71
|
+
|
|
72
|
+
- [docs] Add grid cell display example to the migration guide (#12793) @romgrk
|
|
73
|
+
- [docs] Use charts classes objects (#12781) @alexfauquette
|
|
74
|
+
- [docs] Fix layout shift on demos (#12816) @zanivan
|
|
75
|
+
- [test] Increase timeout for test that sometimes fail on `DateTimeRangePicker` (#12786) @LukasTy
|
|
76
|
+
|
|
77
|
+
### Core
|
|
78
|
+
|
|
79
|
+
- [docs-infra] Prepare infra to document charts interfaces (#12653) @alexfauquette
|
|
80
|
+
|
|
81
|
+
## 7.2.0
|
|
82
|
+
|
|
83
|
+
_Apr 12, 2024_
|
|
84
|
+
|
|
85
|
+
We'd like to offer a big thanks to the 12 contributors who made this release possible. Here are some highlights ✨:
|
|
86
|
+
|
|
87
|
+
- 🎨 Make grid colors customizable through the MUI themes API
|
|
88
|
+
- 🌍 Improve French (fr-FR), German (de-DE), and Swedish (sv-SE) locales on the Data Grid and Pickers
|
|
89
|
+
- 🐞 Bugfixes
|
|
90
|
+
- 📚 Documentation improvements
|
|
91
|
+
|
|
92
|
+
### Data Grid
|
|
93
|
+
|
|
94
|
+
#### `@mui/x-data-grid@7.2.0`
|
|
95
|
+
|
|
96
|
+
- [DataGrid] Add missing `api` property to `GridCallbackDetails` (#12742) @sai6855
|
|
97
|
+
- [DataGrid] Do not escape double quotes when copying to clipboard (#12722) @cherniavskii
|
|
98
|
+
- [DataGrid] Fix column vertical border (#12741) @romgrk
|
|
99
|
+
- [DataGrid] Fix invalid date error when filtering `date`/`dateTime` columns (#12709) @cherniavskii
|
|
100
|
+
- [DataGrid] Fix overflow with dynamic row height (#12683) @romgrk
|
|
101
|
+
- [DataGrid] Make colors customizable (#12614) @romgrk
|
|
102
|
+
- [l10n] Improve French (fr-FR) locale (#12755) @derek-0000
|
|
103
|
+
- [l10n] Improve German (de-DE) locale (#12752) @Jens-Schoen
|
|
104
|
+
- [l10n] Improve Swedish (sv-SE) locale (#12731) @pontusdacke
|
|
105
|
+
|
|
106
|
+
#### `@mui/x-data-grid-pro@7.2.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
107
|
+
|
|
108
|
+
Same changes as in `@mui/x-data-grid@7.2.0`.
|
|
109
|
+
|
|
110
|
+
#### `@mui/x-data-grid-premium@7.2.0` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
111
|
+
|
|
112
|
+
Same changes as in `@mui/x-data-grid-pro@7.2.0`, plus:
|
|
113
|
+
|
|
114
|
+
- [DataGridPremium] Fix clipboard paste not working when cell loses focus (#12724) @cherniavskii
|
|
115
|
+
|
|
116
|
+
### Date and Time Pickers
|
|
117
|
+
|
|
118
|
+
#### `@mui/x-date-pickers@7.2.0`
|
|
119
|
+
|
|
120
|
+
- [fields] Fix field editing after closing the picker (#12675) @LukasTy
|
|
121
|
+
- [l10n] Improve French (fr-FR) locale (#12692) @FaroukBel
|
|
122
|
+
- [l10n] Improve German (de-DE) locale (#12752) @Jens-Schoen
|
|
123
|
+
- [l10n] Improve Swedish (sv-SE) locale (#12731) @pontusdacke
|
|
124
|
+
- [pickers] Fix desktop date time Pickers grid layout (#12748) @LukasTy
|
|
125
|
+
|
|
126
|
+
#### `@mui/x-date-pickers-pro@7.2.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
127
|
+
|
|
128
|
+
Same changes as in `@mui/x-date-pickers@7.2.0`, plus:
|
|
129
|
+
|
|
130
|
+
- [DateTimeRangePicker] Fix desktop toolbar style (#12760) @LukasTy
|
|
131
|
+
|
|
132
|
+
### Charts
|
|
133
|
+
|
|
134
|
+
#### `@mui/x-charts@7.2.0`
|
|
135
|
+
|
|
136
|
+
- [charts] Fix Bar chart with empty dataset throwing an error (#12708) @JCQuintas
|
|
137
|
+
- [charts] Fix `tickLabelInterval` not working on `YAxis` (#12746) @JCQuintas
|
|
138
|
+
|
|
139
|
+
### Tree View
|
|
140
|
+
|
|
141
|
+
#### `@mui/x-tree-view@7.2.0`
|
|
142
|
+
|
|
143
|
+
- [TreeView] Add a new lookup to access an item index without expansive computation (#12729) @flaviendelangle
|
|
144
|
+
- [TreeView] Clean up usage of term "node" in internals (#12655) @noraleonte
|
|
145
|
+
- [TreeView] Improve performance by removing `getNavigableChildrenIds` method (#12713) @flaviendelangle
|
|
146
|
+
- [TreeView] Remove `state.items.itemTree` (#12717) @flaviendelangle
|
|
147
|
+
- [TreeView] Remove remaining occurences of the word "node" in the codebase (#12712) @flaviendelangle
|
|
148
|
+
- [TreeView] Return `instance` and `publicAPI` methods from plugin and populate the main objects inside `useTreeView` (#12650) @flaviendelangle
|
|
149
|
+
- [TreeView] Fix behaviors when the item order changes (#12369) @flaviendelangle
|
|
150
|
+
|
|
151
|
+
### Docs
|
|
152
|
+
|
|
153
|
+
- [docs] Add `AxisFormatter` documentation for customizing tick/tooltip value formatting (#12700) @JCQuintas
|
|
154
|
+
- [docs] Add file explorer example to rich tree view customization docs (#12707) @noraleonte
|
|
155
|
+
- [docs] Do not use import of depth 3 in the doc (#12716) @flaviendelangle
|
|
156
|
+
- [docs] Explain how to clip plots with composition (#12679) @alexfauquette
|
|
157
|
+
- [docs] Fix typo in Data Grid v7 migration page (#12720) @bfaulk96
|
|
158
|
+
- [docs] Fix typo in Pickers v7 migration page (#12721) @bfaulk96
|
|
159
|
+
|
|
160
|
+
### Core
|
|
161
|
+
|
|
162
|
+
- [core] Support multiple resolved `l10n` PR packages (#12735) @LukasTy
|
|
163
|
+
- [core] Update Netlify release references in release README (#12687) @LukasTy
|
|
164
|
+
- [core] Use `describeTreeView` for icons tests (#12672) @flaviendelangle
|
|
165
|
+
- [core] Use `describeTreeView` in existing tests for `useTreeViewItems` (#12732) @flaviendelangle
|
|
166
|
+
|
|
6
167
|
## 7.1.1
|
|
7
168
|
|
|
8
169
|
_Apr 5, 2024_
|
|
@@ -2972,6 +3133,56 @@ Here is an example of the renaming for the `<ChartsTooltip />` component.
|
|
|
2972
3133
|
- [core] Update release instructions as per v7 configuration (#10962) @MBilalShafi
|
|
2973
3134
|
- [license] Correctly throw errors (#10924) @oliviertassinari
|
|
2974
3135
|
|
|
3136
|
+
## 6.19.11
|
|
3137
|
+
|
|
3138
|
+
_Apr 18, 2024_
|
|
3139
|
+
|
|
3140
|
+
We'd like to offer a big thanks to the 1 contributor who made this release possible. Here are some highlights ✨:
|
|
3141
|
+
|
|
3142
|
+
- 🐞 Bugfixes
|
|
3143
|
+
|
|
3144
|
+
### Data Grid
|
|
3145
|
+
|
|
3146
|
+
#### `@mui/x-data-grid@6.19.11`
|
|
3147
|
+
|
|
3148
|
+
- [DataGrid] Fix virtualization memory leak (#12812) @romgrk
|
|
3149
|
+
|
|
3150
|
+
#### `@mui/x-data-grid-pro@6.19.11` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
3151
|
+
|
|
3152
|
+
Same changes as in `@mui/x-data-grid@6.19.11`.
|
|
3153
|
+
|
|
3154
|
+
#### `@mui/x-data-grid-premium@6.19.11` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
3155
|
+
|
|
3156
|
+
Same changes as in `@mui/x-data-grid-pro@6.19.11`.
|
|
3157
|
+
|
|
3158
|
+
## 6.19.10
|
|
3159
|
+
|
|
3160
|
+
_Apr 12, 2024_
|
|
3161
|
+
|
|
3162
|
+
We'd like to offer a big thanks to the 2 contributors who made this release possible. Here are some highlights ✨:
|
|
3163
|
+
|
|
3164
|
+
- 🐞 Bugfixes
|
|
3165
|
+
- 📚 Documentation improvements
|
|
3166
|
+
|
|
3167
|
+
### Data Grid
|
|
3168
|
+
|
|
3169
|
+
#### `@mui/x-data-grid@6.19.10`
|
|
3170
|
+
|
|
3171
|
+
- [DataGrid] Do not escape double quotes when copying to clipboard (#12734) @cherniavskii
|
|
3172
|
+
- [DataGrid] Fix bug in suspense (#12754) @cherniavskii
|
|
3173
|
+
|
|
3174
|
+
#### `@mui/x-data-grid-pro@6.19.10` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
3175
|
+
|
|
3176
|
+
Same changes as in `@mui/x-data-grid@6.19.10`.
|
|
3177
|
+
|
|
3178
|
+
#### `@mui/x-data-grid-premium@6.19.10` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
3179
|
+
|
|
3180
|
+
Same changes as in `@mui/x-data-grid-pro@6.19.10`.
|
|
3181
|
+
|
|
3182
|
+
### Core
|
|
3183
|
+
|
|
3184
|
+
- [core] Update the docs release source branch (#12685) @LukasTy
|
|
3185
|
+
|
|
2975
3186
|
## 6.19.9
|
|
2976
3187
|
|
|
2977
3188
|
_Apr 5, 2024_
|
|
@@ -285,6 +285,12 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
285
285
|
* @default "cell"
|
|
286
286
|
*/
|
|
287
287
|
editMode: _propTypes.default.oneOf(['cell', 'row']),
|
|
288
|
+
/**
|
|
289
|
+
* Use if the actual rowCount is not known upfront, but an estimation is available.
|
|
290
|
+
* If some rows have children (for instance in the tree data), this number represents the amount of top level rows.
|
|
291
|
+
* Applicable only with `paginationMode="server"` and when `rowCount="-1"`
|
|
292
|
+
*/
|
|
293
|
+
estimatedRowCount: _propTypes.default.number,
|
|
288
294
|
/**
|
|
289
295
|
* Unstable features, breaking changes might be introduced.
|
|
290
296
|
* For each feature, if the flag is not explicitly set to `true`, then the feature is fully disabled, and neither property nor method calls will have any effect.
|
|
@@ -392,6 +398,10 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
392
398
|
* The grouping column used by the tree data.
|
|
393
399
|
*/
|
|
394
400
|
groupingColDef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
|
|
401
|
+
/**
|
|
402
|
+
* Override the height of the header filters.
|
|
403
|
+
*/
|
|
404
|
+
headerFilterHeight: _propTypes.default.number,
|
|
395
405
|
/**
|
|
396
406
|
* If `true`, enables the data grid filtering on header feature.
|
|
397
407
|
* @default false
|
|
@@ -683,6 +693,11 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
683
693
|
* @param {GridCallbackDetails} details Additional details for this callback.
|
|
684
694
|
*/
|
|
685
695
|
onMenuOpen: _propTypes.default.func,
|
|
696
|
+
/**
|
|
697
|
+
* Callback fired when the pagination meta has changed.
|
|
698
|
+
* @param {GridPaginationMeta} paginationMeta Updated pagination meta.
|
|
699
|
+
*/
|
|
700
|
+
onPaginationMetaChange: _propTypes.default.func,
|
|
686
701
|
/**
|
|
687
702
|
* Callback fired when the pagination model has changed.
|
|
688
703
|
* @param {GridPaginationModel} model Updated pagination model.
|
|
@@ -812,6 +827,13 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
812
827
|
* @default false
|
|
813
828
|
*/
|
|
814
829
|
pagination: _propTypes.default.bool,
|
|
830
|
+
/**
|
|
831
|
+
* The extra information about the pagination state of the Data Grid.
|
|
832
|
+
* Only applicable with `paginationMode="server"`.
|
|
833
|
+
*/
|
|
834
|
+
paginationMeta: _propTypes.default.shape({
|
|
835
|
+
hasNextPage: _propTypes.default.bool
|
|
836
|
+
}),
|
|
815
837
|
/**
|
|
816
838
|
* Pagination can be processed on the server or client-side.
|
|
817
839
|
* Set it to 'client' if you would like to handle the pagination on the client-side.
|
|
@@ -858,6 +880,7 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
858
880
|
/**
|
|
859
881
|
* Set the total number of rows, if it is different from the length of the value `rows` prop.
|
|
860
882
|
* If some rows have children (for instance in the tree data), this number represents the amount of top level rows.
|
|
883
|
+
* Only works with `paginationMode="server"`, ignored when `paginationMode="client"`.
|
|
861
884
|
*/
|
|
862
885
|
rowCount: _propTypes.default.number,
|
|
863
886
|
/**
|
|
@@ -278,6 +278,12 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
278
278
|
* @default "cell"
|
|
279
279
|
*/
|
|
280
280
|
editMode: PropTypes.oneOf(['cell', 'row']),
|
|
281
|
+
/**
|
|
282
|
+
* Use if the actual rowCount is not known upfront, but an estimation is available.
|
|
283
|
+
* If some rows have children (for instance in the tree data), this number represents the amount of top level rows.
|
|
284
|
+
* Applicable only with `paginationMode="server"` and when `rowCount="-1"`
|
|
285
|
+
*/
|
|
286
|
+
estimatedRowCount: PropTypes.number,
|
|
281
287
|
/**
|
|
282
288
|
* Unstable features, breaking changes might be introduced.
|
|
283
289
|
* For each feature, if the flag is not explicitly set to `true`, then the feature is fully disabled, and neither property nor method calls will have any effect.
|
|
@@ -385,6 +391,10 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
385
391
|
* The grouping column used by the tree data.
|
|
386
392
|
*/
|
|
387
393
|
groupingColDef: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
|
|
394
|
+
/**
|
|
395
|
+
* Override the height of the header filters.
|
|
396
|
+
*/
|
|
397
|
+
headerFilterHeight: PropTypes.number,
|
|
388
398
|
/**
|
|
389
399
|
* If `true`, enables the data grid filtering on header feature.
|
|
390
400
|
* @default false
|
|
@@ -676,6 +686,11 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
676
686
|
* @param {GridCallbackDetails} details Additional details for this callback.
|
|
677
687
|
*/
|
|
678
688
|
onMenuOpen: PropTypes.func,
|
|
689
|
+
/**
|
|
690
|
+
* Callback fired when the pagination meta has changed.
|
|
691
|
+
* @param {GridPaginationMeta} paginationMeta Updated pagination meta.
|
|
692
|
+
*/
|
|
693
|
+
onPaginationMetaChange: PropTypes.func,
|
|
679
694
|
/**
|
|
680
695
|
* Callback fired when the pagination model has changed.
|
|
681
696
|
* @param {GridPaginationModel} model Updated pagination model.
|
|
@@ -805,6 +820,13 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
805
820
|
* @default false
|
|
806
821
|
*/
|
|
807
822
|
pagination: PropTypes.bool,
|
|
823
|
+
/**
|
|
824
|
+
* The extra information about the pagination state of the Data Grid.
|
|
825
|
+
* Only applicable with `paginationMode="server"`.
|
|
826
|
+
*/
|
|
827
|
+
paginationMeta: PropTypes.shape({
|
|
828
|
+
hasNextPage: PropTypes.bool
|
|
829
|
+
}),
|
|
808
830
|
/**
|
|
809
831
|
* Pagination can be processed on the server or client-side.
|
|
810
832
|
* Set it to 'client' if you would like to handle the pagination on the client-side.
|
|
@@ -851,6 +873,7 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
851
873
|
/**
|
|
852
874
|
* Set the total number of rows, if it is different from the length of the value `rows` prop.
|
|
853
875
|
* If some rows have children (for instance in the tree data), this number represents the amount of top level rows.
|
|
876
|
+
* Only works with `paginationMode="server"`, ignored when `paginationMode="client"`.
|
|
854
877
|
*/
|
|
855
878
|
rowCount: PropTypes.number,
|
|
856
879
|
/**
|
|
@@ -21,7 +21,7 @@ export const useGridCellSelection = (apiRef, props) => {
|
|
|
21
21
|
const autoScrollRAF = React.useRef();
|
|
22
22
|
const sortedRowIds = useGridSelector(apiRef, gridSortedRowIdsSelector);
|
|
23
23
|
const dimensions = useGridSelector(apiRef, gridDimensionsSelector);
|
|
24
|
-
const totalHeaderHeight = getTotalHeaderHeight(apiRef, props
|
|
24
|
+
const totalHeaderHeight = getTotalHeaderHeight(apiRef, props);
|
|
25
25
|
const ignoreValueFormatterProp = props.ignoreValueFormatterDuringExport;
|
|
26
26
|
const ignoreValueFormatter = (typeof ignoreValueFormatterProp === 'object' ? ignoreValueFormatterProp?.clipboardExport : ignoreValueFormatterProp) || false;
|
|
27
27
|
const clipboardCopyCellDelimiter = props.clipboardCopyCellDelimiter;
|
|
@@ -447,7 +447,7 @@ export const useGridCellSelection = (apiRef, props) => {
|
|
|
447
447
|
cellData = serializeCellValue(cellParams, {
|
|
448
448
|
delimiterCharacter: clipboardCopyCellDelimiter,
|
|
449
449
|
ignoreValueFormatter,
|
|
450
|
-
shouldAppendQuotes:
|
|
450
|
+
shouldAppendQuotes: false
|
|
451
451
|
});
|
|
452
452
|
} else {
|
|
453
453
|
cellData = '';
|
|
@@ -156,7 +156,8 @@ function defaultPasteResolver({
|
|
|
156
156
|
}) {
|
|
157
157
|
const isSingleValuePasted = pastedData.length === 1 && pastedData[0].length === 1;
|
|
158
158
|
const cellSelectionModel = apiRef.current.getCellSelectionModel();
|
|
159
|
-
|
|
159
|
+
const selectedCellsArray = apiRef.current.getSelectedCellsAsArray();
|
|
160
|
+
if (cellSelectionModel && selectedCellsArray.length > 1) {
|
|
160
161
|
Object.keys(cellSelectionModel).forEach((rowId, rowIndex) => {
|
|
161
162
|
const rowDataArr = pastedData[isSingleValuePasted ? 0 : rowIndex];
|
|
162
163
|
const hasRowData = isSingleValuePasted ? true : rowDataArr !== undefined;
|
|
@@ -207,7 +208,10 @@ function defaultPasteResolver({
|
|
|
207
208
|
});
|
|
208
209
|
return;
|
|
209
210
|
}
|
|
210
|
-
|
|
211
|
+
let selectedCell = gridFocusCellSelector(apiRef);
|
|
212
|
+
if (!selectedCell && selectedCellsArray.length === 1) {
|
|
213
|
+
selectedCell = selectedCellsArray[0];
|
|
214
|
+
}
|
|
211
215
|
if (!selectedCell) {
|
|
212
216
|
return;
|
|
213
217
|
}
|
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 = "MTcxMzM5MTIwMDAwMA==";
|
|
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
|
|
@@ -31,7 +31,7 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
31
31
|
const autoScrollRAF = React.useRef();
|
|
32
32
|
const sortedRowIds = (0, _xDataGridPro.useGridSelector)(apiRef, _xDataGridPro.gridSortedRowIdsSelector);
|
|
33
33
|
const dimensions = (0, _xDataGridPro.useGridSelector)(apiRef, _xDataGridPro.gridDimensionsSelector);
|
|
34
|
-
const totalHeaderHeight = (0, _internals.getTotalHeaderHeight)(apiRef, props
|
|
34
|
+
const totalHeaderHeight = (0, _internals.getTotalHeaderHeight)(apiRef, props);
|
|
35
35
|
const ignoreValueFormatterProp = props.ignoreValueFormatterDuringExport;
|
|
36
36
|
const ignoreValueFormatter = (typeof ignoreValueFormatterProp === 'object' ? ignoreValueFormatterProp?.clipboardExport : ignoreValueFormatterProp) || false;
|
|
37
37
|
const clipboardCopyCellDelimiter = props.clipboardCopyCellDelimiter;
|
|
@@ -457,7 +457,7 @@ const useGridCellSelection = (apiRef, props) => {
|
|
|
457
457
|
cellData = (0, _internals.serializeCellValue)(cellParams, {
|
|
458
458
|
delimiterCharacter: clipboardCopyCellDelimiter,
|
|
459
459
|
ignoreValueFormatter,
|
|
460
|
-
shouldAppendQuotes:
|
|
460
|
+
shouldAppendQuotes: false
|
|
461
461
|
});
|
|
462
462
|
} else {
|
|
463
463
|
cellData = '';
|
|
@@ -165,7 +165,8 @@ function defaultPasteResolver({
|
|
|
165
165
|
}) {
|
|
166
166
|
const isSingleValuePasted = pastedData.length === 1 && pastedData[0].length === 1;
|
|
167
167
|
const cellSelectionModel = apiRef.current.getCellSelectionModel();
|
|
168
|
-
|
|
168
|
+
const selectedCellsArray = apiRef.current.getSelectedCellsAsArray();
|
|
169
|
+
if (cellSelectionModel && selectedCellsArray.length > 1) {
|
|
169
170
|
Object.keys(cellSelectionModel).forEach((rowId, rowIndex) => {
|
|
170
171
|
const rowDataArr = pastedData[isSingleValuePasted ? 0 : rowIndex];
|
|
171
172
|
const hasRowData = isSingleValuePasted ? true : rowDataArr !== undefined;
|
|
@@ -216,7 +217,10 @@ function defaultPasteResolver({
|
|
|
216
217
|
});
|
|
217
218
|
return;
|
|
218
219
|
}
|
|
219
|
-
|
|
220
|
+
let selectedCell = (0, _xDataGrid.gridFocusCellSelector)(apiRef);
|
|
221
|
+
if (!selectedCell && selectedCellsArray.length === 1) {
|
|
222
|
+
selectedCell = selectedCellsArray[0];
|
|
223
|
+
}
|
|
220
224
|
if (!selectedCell) {
|
|
221
225
|
return;
|
|
222
226
|
}
|
package/index.js
CHANGED
|
@@ -278,6 +278,12 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
278
278
|
* @default "cell"
|
|
279
279
|
*/
|
|
280
280
|
editMode: PropTypes.oneOf(['cell', 'row']),
|
|
281
|
+
/**
|
|
282
|
+
* Use if the actual rowCount is not known upfront, but an estimation is available.
|
|
283
|
+
* If some rows have children (for instance in the tree data), this number represents the amount of top level rows.
|
|
284
|
+
* Applicable only with `paginationMode="server"` and when `rowCount="-1"`
|
|
285
|
+
*/
|
|
286
|
+
estimatedRowCount: PropTypes.number,
|
|
281
287
|
/**
|
|
282
288
|
* Unstable features, breaking changes might be introduced.
|
|
283
289
|
* For each feature, if the flag is not explicitly set to `true`, then the feature is fully disabled, and neither property nor method calls will have any effect.
|
|
@@ -385,6 +391,10 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
385
391
|
* The grouping column used by the tree data.
|
|
386
392
|
*/
|
|
387
393
|
groupingColDef: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),
|
|
394
|
+
/**
|
|
395
|
+
* Override the height of the header filters.
|
|
396
|
+
*/
|
|
397
|
+
headerFilterHeight: PropTypes.number,
|
|
388
398
|
/**
|
|
389
399
|
* If `true`, enables the data grid filtering on header feature.
|
|
390
400
|
* @default false
|
|
@@ -676,6 +686,11 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
676
686
|
* @param {GridCallbackDetails} details Additional details for this callback.
|
|
677
687
|
*/
|
|
678
688
|
onMenuOpen: PropTypes.func,
|
|
689
|
+
/**
|
|
690
|
+
* Callback fired when the pagination meta has changed.
|
|
691
|
+
* @param {GridPaginationMeta} paginationMeta Updated pagination meta.
|
|
692
|
+
*/
|
|
693
|
+
onPaginationMetaChange: PropTypes.func,
|
|
679
694
|
/**
|
|
680
695
|
* Callback fired when the pagination model has changed.
|
|
681
696
|
* @param {GridPaginationModel} model Updated pagination model.
|
|
@@ -805,6 +820,13 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
805
820
|
* @default false
|
|
806
821
|
*/
|
|
807
822
|
pagination: PropTypes.bool,
|
|
823
|
+
/**
|
|
824
|
+
* The extra information about the pagination state of the Data Grid.
|
|
825
|
+
* Only applicable with `paginationMode="server"`.
|
|
826
|
+
*/
|
|
827
|
+
paginationMeta: PropTypes.shape({
|
|
828
|
+
hasNextPage: PropTypes.bool
|
|
829
|
+
}),
|
|
808
830
|
/**
|
|
809
831
|
* Pagination can be processed on the server or client-side.
|
|
810
832
|
* Set it to 'client' if you would like to handle the pagination on the client-side.
|
|
@@ -851,6 +873,7 @@ process.env.NODE_ENV !== "production" ? DataGridPremiumRaw.propTypes = {
|
|
|
851
873
|
/**
|
|
852
874
|
* Set the total number of rows, if it is different from the length of the value `rows` prop.
|
|
853
875
|
* If some rows have children (for instance in the tree data), this number represents the amount of top level rows.
|
|
876
|
+
* Only works with `paginationMode="server"`, ignored when `paginationMode="client"`.
|
|
854
877
|
*/
|
|
855
878
|
rowCount: PropTypes.number,
|
|
856
879
|
/**
|
|
@@ -21,7 +21,7 @@ export const useGridCellSelection = (apiRef, props) => {
|
|
|
21
21
|
const autoScrollRAF = React.useRef();
|
|
22
22
|
const sortedRowIds = useGridSelector(apiRef, gridSortedRowIdsSelector);
|
|
23
23
|
const dimensions = useGridSelector(apiRef, gridDimensionsSelector);
|
|
24
|
-
const totalHeaderHeight = getTotalHeaderHeight(apiRef, props
|
|
24
|
+
const totalHeaderHeight = getTotalHeaderHeight(apiRef, props);
|
|
25
25
|
const ignoreValueFormatterProp = props.ignoreValueFormatterDuringExport;
|
|
26
26
|
const ignoreValueFormatter = (typeof ignoreValueFormatterProp === 'object' ? ignoreValueFormatterProp?.clipboardExport : ignoreValueFormatterProp) || false;
|
|
27
27
|
const clipboardCopyCellDelimiter = props.clipboardCopyCellDelimiter;
|
|
@@ -447,7 +447,7 @@ export const useGridCellSelection = (apiRef, props) => {
|
|
|
447
447
|
cellData = serializeCellValue(cellParams, {
|
|
448
448
|
delimiterCharacter: clipboardCopyCellDelimiter,
|
|
449
449
|
ignoreValueFormatter,
|
|
450
|
-
shouldAppendQuotes:
|
|
450
|
+
shouldAppendQuotes: false
|
|
451
451
|
});
|
|
452
452
|
} else {
|
|
453
453
|
cellData = '';
|
|
@@ -156,7 +156,8 @@ function defaultPasteResolver({
|
|
|
156
156
|
}) {
|
|
157
157
|
const isSingleValuePasted = pastedData.length === 1 && pastedData[0].length === 1;
|
|
158
158
|
const cellSelectionModel = apiRef.current.getCellSelectionModel();
|
|
159
|
-
|
|
159
|
+
const selectedCellsArray = apiRef.current.getSelectedCellsAsArray();
|
|
160
|
+
if (cellSelectionModel && selectedCellsArray.length > 1) {
|
|
160
161
|
Object.keys(cellSelectionModel).forEach((rowId, rowIndex) => {
|
|
161
162
|
const rowDataArr = pastedData[isSingleValuePasted ? 0 : rowIndex];
|
|
162
163
|
const hasRowData = isSingleValuePasted ? true : rowDataArr !== undefined;
|
|
@@ -207,7 +208,10 @@ function defaultPasteResolver({
|
|
|
207
208
|
});
|
|
208
209
|
return;
|
|
209
210
|
}
|
|
210
|
-
|
|
211
|
+
let selectedCell = gridFocusCellSelector(apiRef);
|
|
212
|
+
if (!selectedCell && selectedCellsArray.length === 1) {
|
|
213
|
+
selectedCell = selectedCellsArray[0];
|
|
214
|
+
}
|
|
211
215
|
if (!selectedCell) {
|
|
212
216
|
return;
|
|
213
217
|
}
|
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 = "MTcxMzM5MTIwMDAwMA==";
|
|
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.
|
|
3
|
+
"version": "7.3.0",
|
|
4
4
|
"description": "The Premium plan edition of the Data Grid Components (MUI X).",
|
|
5
5
|
"author": "MUI Team",
|
|
6
6
|
"main": "./index.js",
|
|
@@ -35,9 +35,9 @@
|
|
|
35
35
|
"@babel/runtime": "^7.24.0",
|
|
36
36
|
"@mui/system": "^5.15.14",
|
|
37
37
|
"@mui/utils": "^5.15.14",
|
|
38
|
-
"@mui/x-data-grid": "7.
|
|
39
|
-
"@mui/x-data-grid-pro": "7.
|
|
40
|
-
"@mui/x-license": "7.
|
|
38
|
+
"@mui/x-data-grid": "7.3.0",
|
|
39
|
+
"@mui/x-data-grid-pro": "7.3.0",
|
|
40
|
+
"@mui/x-license": "7.2.0",
|
|
41
41
|
"@types/format-util": "^1.0.4",
|
|
42
42
|
"clsx": "^2.1.0",
|
|
43
43
|
"exceljs": "^4.4.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 = "MTcxMzM5MTIwMDAwMA==";
|
|
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
|