@mui/x-data-grid-premium 7.1.1 → 7.2.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 CHANGED
@@ -3,6 +3,92 @@
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.2.0
7
+
8
+ _Apr 12, 2024_
9
+
10
+ We'd like to offer a big thanks to the 12 contributors who made this release possible. Here are some highlights ✨:
11
+
12
+ - 🎨 Make grid colors customizable through the MUI themes API
13
+ - 🌍 Improve French (fr-FR), German (de-DE), and Swedish (sv-SE) locales on the Data Grid and Pickers
14
+ - 🐞 Bugfixes
15
+ - 📚 Documentation improvements
16
+
17
+ ### Data Grid
18
+
19
+ #### `@mui/x-data-grid@7.2.0`
20
+
21
+ - [DataGrid] Add missing `api` property to `GridCallbackDetails` (#12742) @sai6855
22
+ - [DataGrid] Do not escape double quotes when copying to clipboard (#12722) @cherniavskii
23
+ - [DataGrid] Fix column vertical border (#12741) @romgrk
24
+ - [DataGrid] Fix invalid date error when filtering `date`/`dateTime` columns (#12709) @cherniavskii
25
+ - [DataGrid] Fix overflow with dynamic row height (#12683) @romgrk
26
+ - [DataGrid] Make colors customizable (#12614) @romgrk
27
+ - [l10n] Improve French (fr-FR) locale (#12755) @derek-0000
28
+ - [l10n] Improve German (de-DE) locale (#12752) @Jens-Schoen
29
+ - [l10n] Improve Swedish (sv-SE) locale (#12731) @pontusdacke
30
+
31
+ #### `@mui/x-data-grid-pro@7.2.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
32
+
33
+ Same changes as in `@mui/x-data-grid@7.2.0`.
34
+
35
+ #### `@mui/x-data-grid-premium@7.2.0` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
36
+
37
+ Same changes as in `@mui/x-data-grid-pro@7.2.0`, plus:
38
+
39
+ - [DataGridPremium] Fix clipboard paste not working when cell loses focus (#12724) @cherniavskii
40
+
41
+ ### Date and Time Pickers
42
+
43
+ #### `@mui/x-date-pickers@7.2.0`
44
+
45
+ - [fields] Fix field editing after closing the picker (#12675) @LukasTy
46
+ - [l10n] Improve French (fr-FR) locale (#12692) @FaroukBel
47
+ - [l10n] Improve German (de-DE) locale (#12752) @Jens-Schoen
48
+ - [l10n] Improve Swedish (sv-SE) locale (#12731) @pontusdacke
49
+ - [pickers] Fix desktop date time Pickers grid layout (#12748) @LukasTy
50
+
51
+ #### `@mui/x-date-pickers-pro@7.2.0` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
52
+
53
+ Same changes as in `@mui/x-date-pickers@7.2.0`, plus:
54
+
55
+ - [DateTimeRangePicker] Fix desktop toolbar style (#12760) @LukasTy
56
+
57
+ ### Charts
58
+
59
+ #### `@mui/x-charts@7.2.0`
60
+
61
+ - [charts] Fix Bar chart with empty dataset throwing an error (#12708) @JCQuintas
62
+ - [charts] Fix `tickLabelInterval` not working on `YAxis` (#12746) @JCQuintas
63
+
64
+ ### Tree View
65
+
66
+ #### `@mui/x-tree-view@7.2.0`
67
+
68
+ - [TreeView] Add a new lookup to access an item index without expansive computation (#12729) @flaviendelangle
69
+ - [TreeView] Clean up usage of term "node" in internals (#12655) @noraleonte
70
+ - [TreeView] Improve performance by removing `getNavigableChildrenIds` method (#12713) @flaviendelangle
71
+ - [TreeView] Remove `state.items.itemTree` (#12717) @flaviendelangle
72
+ - [TreeView] Remove remaining occurences of the word "node" in the codebase (#12712) @flaviendelangle
73
+ - [TreeView] Return `instance` and `publicAPI` methods from plugin and populate the main objects inside `useTreeView` (#12650) @flaviendelangle
74
+ - [TreeView] Fix behaviors when the item order changes (#12369) @flaviendelangle
75
+
76
+ ### Docs
77
+
78
+ - [docs] Add `AxisFormatter` documentation for customizing tick/tooltip value formatting (#12700) @JCQuintas
79
+ - [docs] Add file explorer example to rich tree view customization docs (#12707) @noraleonte
80
+ - [docs] Do not use import of depth 3 in the doc (#12716) @flaviendelangle
81
+ - [docs] Explain how to clip plots with composition (#12679) @alexfauquette
82
+ - [docs] Fix typo in Data Grid v7 migration page (#12720) @bfaulk96
83
+ - [docs] Fix typo in Pickers v7 migration page (#12721) @bfaulk96
84
+
85
+ ### Core
86
+
87
+ - [core] Support multiple resolved `l10n` PR packages (#12735) @LukasTy
88
+ - [core] Update Netlify release references in release README (#12687) @LukasTy
89
+ - [core] Use `describeTreeView` for icons tests (#12672) @flaviendelangle
90
+ - [core] Use `describeTreeView` in existing tests for `useTreeViewItems` (#12732) @flaviendelangle
91
+
6
92
  ## 7.1.1
7
93
 
8
94
  _Apr 5, 2024_
@@ -447,7 +447,7 @@ export const useGridCellSelection = (apiRef, props) => {
447
447
  cellData = serializeCellValue(cellParams, {
448
448
  delimiterCharacter: clipboardCopyCellDelimiter,
449
449
  ignoreValueFormatter,
450
- shouldAppendQuotes: true
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
- if (cellSelectionModel && apiRef.current.getSelectedCellsAsArray().length > 1) {
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
- const selectedCell = gridFocusCellSelector(apiRef);
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
  }
@@ -1,6 +1,6 @@
1
1
  import { ponyfillGlobal } from '@mui/utils';
2
2
  export const getReleaseInfo = () => {
3
- const releaseInfo = "MTcxMjI2NDQwMDAwMA==";
3
+ const releaseInfo = "MTcxMjg2OTIwMDAwMA==";
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
@@ -457,7 +457,7 @@ const useGridCellSelection = (apiRef, props) => {
457
457
  cellData = (0, _internals.serializeCellValue)(cellParams, {
458
458
  delimiterCharacter: clipboardCopyCellDelimiter,
459
459
  ignoreValueFormatter,
460
- shouldAppendQuotes: true
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
- if (cellSelectionModel && apiRef.current.getSelectedCellsAsArray().length > 1) {
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
- const selectedCell = (0, _xDataGrid.gridFocusCellSelector)(apiRef);
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
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-data-grid-premium v7.1.1
2
+ * @mui/x-data-grid-premium v7.2.0
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -447,7 +447,7 @@ export const useGridCellSelection = (apiRef, props) => {
447
447
  cellData = serializeCellValue(cellParams, {
448
448
  delimiterCharacter: clipboardCopyCellDelimiter,
449
449
  ignoreValueFormatter,
450
- shouldAppendQuotes: true
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
- if (cellSelectionModel && apiRef.current.getSelectedCellsAsArray().length > 1) {
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
- const selectedCell = gridFocusCellSelector(apiRef);
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,5 +1,5 @@
1
1
  /**
2
- * @mui/x-data-grid-premium v7.1.1
2
+ * @mui/x-data-grid-premium v7.2.0
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -1,6 +1,6 @@
1
1
  import { ponyfillGlobal } from '@mui/utils';
2
2
  export const getReleaseInfo = () => {
3
- const releaseInfo = "MTcxMjI2NDQwMDAwMA==";
3
+ const releaseInfo = "MTcxMjg2OTIwMDAwMA==";
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.1.1",
3
+ "version": "7.2.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.1.1",
39
- "@mui/x-data-grid-pro": "7.1.1",
40
- "@mui/x-license": "7.1.1",
38
+ "@mui/x-data-grid": "7.2.0",
39
+ "@mui/x-data-grid-pro": "7.2.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",
@@ -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 = "MTcxMjI2NDQwMDAwMA==";
9
+ const releaseInfo = "MTcxMjg2OTIwMDAwMA==";
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