@mui/x-data-grid 5.17.9 → 5.17.11

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,60 @@
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
+ ## 5.17.11
7
+
8
+ _Nov 10, 2022_
9
+
10
+ We'd like to offer a big thanks to the 5 contributors who made this release possible. Here are some highlights ✨:
11
+
12
+ - 🐞 Bugfixes
13
+
14
+ ### `@mui/x-data-grid@v5.17.11` / `@mui/x-data-grid-pro@v5.17.11` / `@mui/x-data-grid-premium@v5.17.11`
15
+
16
+ #### Changes
17
+
18
+ - [DataGrid] Fix for cell focus preventing scroll when virtualization enabled (#6622) @yaredtsy
19
+ - [DataGridPro] Opt-out for column jump back on re-order (#6697) @gavbrennan
20
+
21
+ ### `@mui/x-date-pickers@v5.0.8` / `@mui/x-date-pickers-pro@v5.0.8`
22
+
23
+ #### Changes
24
+
25
+ - [pickers] Fix pickers toolbar styling (#6793) @LukasTy
26
+
27
+ ### Docs
28
+
29
+ - [docs] Fix link to localization page (#6766) @alexfauquette
30
+
31
+ ### Core
32
+
33
+ - [license] Add new license status 'Out of scope' (#6774) @oliviertassinari
34
+
35
+ ## 5.17.10
36
+
37
+ _Nov 4, 2022_
38
+
39
+ We'd like to offer a big thanks to the 4 contributors who made this release possible. Here are some highlights ✨:
40
+
41
+ - 🌍 Add Ukrainian (uk-UA) locale to pickers (#6661) @Dufran
42
+
43
+ ### `@mui/x-data-grid@v5.17.10` / `@mui/x-data-grid-pro@v5.17.10` / `@mui/x-data-grid-premium@v5.17.10`
44
+
45
+ #### Changes
46
+
47
+ - [DataGrid] Remove `React.memo` from `GridCellCheckboxRenderer` (#6688) @mattcorner
48
+
49
+ ### `@mui/x-date-pickers@v5.0.7` / `@mui/x-date-pickers-pro@v5.0.7`
50
+
51
+ #### Changes
52
+
53
+ - [DateRangePicker] Fix input focused style and mobile behaviour (#6645) (#6714) @LukasTy
54
+ - [pickers] Add Ukrainian (uk-UA) locale on the date picker (#6661) @Dufran
55
+
56
+ ### Docs
57
+
58
+ - [docs] Mark data grid column group available (#6659) @alexfauquette
59
+
6
60
  ## 5.17.9
7
61
 
8
62
  _Oct 28, 2022_
@@ -14,6 +14,7 @@ const DATA_GRID_FORCED_PROPS = {
14
14
  checkboxSelectionVisibleOnly: false,
15
15
  disableColumnReorder: true,
16
16
  disableColumnResize: true,
17
+ keepColumnPositionIfDraggedOutside: false,
17
18
  signature: 'DataGrid'
18
19
  };
19
20
  export const MAX_PAGE_SIZE = 100;
@@ -63,7 +64,8 @@ export const DATA_GRID_PROPS_DEFAULT_VALUES = {
63
64
  throttleRowsMs: 0,
64
65
  disableColumnReorder: false,
65
66
  disableColumnResize: false,
66
- keepNonExistentRowsSelected: false
67
+ keepNonExistentRowsSelected: false,
68
+ keepColumnPositionIfDraggedOutside: false
67
69
  };
68
70
  export const useDataGridProps = inProps => {
69
71
  if (inProps.pageSize > MAX_PAGE_SIZE) {
@@ -55,7 +55,9 @@ const GridActionsCell = props => {
55
55
  }
56
56
 
57
57
  const child = rootRef.current.children[focusedButtonIndex];
58
- child.focus();
58
+ child.focus({
59
+ preventScroll: true
60
+ });
59
61
  }, [focusedButtonIndex]);
60
62
  React.useEffect(() => {
61
63
  if (!hasFocus) {
@@ -131,7 +131,7 @@ function GridCell(props) {
131
131
  maxHeight: height === 'auto' ? 'none' : height // max-height doesn't support "auto"
132
132
 
133
133
  };
134
- React.useLayoutEffect(() => {
134
+ React.useEffect(() => {
135
135
  if (!hasFocus || cellMode === GridCellModes.Edit) {
136
136
  return;
137
137
  }
@@ -2,4 +2,4 @@ import * as React from 'react';
2
2
  import { GridRenderCellParams } from '../../models/params/gridCellParams';
3
3
  declare const GridCellCheckboxForwardRef: React.ForwardRefExoticComponent<GridRenderCellParams<any, any, any> & React.RefAttributes<HTMLInputElement>>;
4
4
  export { GridCellCheckboxForwardRef };
5
- export declare const GridCellCheckboxRenderer: React.MemoExoticComponent<React.ForwardRefExoticComponent<GridRenderCellParams<any, any, any> & React.RefAttributes<HTMLInputElement>>>;
5
+ export declare const GridCellCheckboxRenderer: React.ForwardRefExoticComponent<GridRenderCellParams<any, any, any> & React.RefAttributes<HTMLInputElement>>;
@@ -58,12 +58,14 @@ const GridCellCheckboxForwardRef = /*#__PURE__*/React.forwardRef(function GridCe
58
58
  element.tabIndex = -1;
59
59
  }
60
60
  }, [element, tabIndex]);
61
- React.useLayoutEffect(() => {
61
+ React.useEffect(() => {
62
62
  if (hasFocus) {
63
63
  var _checkboxElement$curr;
64
64
 
65
65
  const input = (_checkboxElement$curr = checkboxElement.current) == null ? void 0 : _checkboxElement$curr.querySelector('input');
66
- input == null ? void 0 : input.focus();
66
+ input == null ? void 0 : input.focus({
67
+ preventScroll: true
68
+ });
67
69
  } else if (rippleRef.current) {
68
70
  // Only available in @mui/material v5.4.1 or later
69
71
  rippleRef.current.stop({});
@@ -193,4 +195,4 @@ process.env.NODE_ENV !== "production" ? GridCellCheckboxForwardRef.propTypes = {
193
195
  value: PropTypes.any
194
196
  } : void 0;
195
197
  export { GridCellCheckboxForwardRef };
196
- export const GridCellCheckboxRenderer = /*#__PURE__*/React.memo(GridCellCheckboxForwardRef);
198
+ export const GridCellCheckboxRenderer = GridCellCheckboxForwardRef;
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.17.9
1
+ /** @license MUI v5.17.11
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
@@ -15,6 +15,7 @@ var DATA_GRID_FORCED_PROPS = {
15
15
  checkboxSelectionVisibleOnly: false,
16
16
  disableColumnReorder: true,
17
17
  disableColumnResize: true,
18
+ keepColumnPositionIfDraggedOutside: false,
18
19
  signature: 'DataGrid'
19
20
  };
20
21
  export var MAX_PAGE_SIZE = 100;
@@ -64,7 +65,8 @@ export var DATA_GRID_PROPS_DEFAULT_VALUES = {
64
65
  throttleRowsMs: 0,
65
66
  disableColumnReorder: false,
66
67
  disableColumnResize: false,
67
- keepNonExistentRowsSelected: false
68
+ keepNonExistentRowsSelected: false,
69
+ keepColumnPositionIfDraggedOutside: false
68
70
  };
69
71
  export var useDataGridProps = function useDataGridProps(inProps) {
70
72
  if (inProps.pageSize > MAX_PAGE_SIZE) {
@@ -78,7 +78,9 @@ var GridActionsCell = function GridActionsCell(props) {
78
78
  }
79
79
 
80
80
  var child = rootRef.current.children[focusedButtonIndex];
81
- child.focus();
81
+ child.focus({
82
+ preventScroll: true
83
+ });
82
84
  }, [focusedButtonIndex]);
83
85
  React.useEffect(function () {
84
86
  if (!hasFocus) {
@@ -136,7 +136,7 @@ function GridCell(props) {
136
136
  maxHeight: height === 'auto' ? 'none' : height // max-height doesn't support "auto"
137
137
 
138
138
  };
139
- React.useLayoutEffect(function () {
139
+ React.useEffect(function () {
140
140
  if (!hasFocus || cellMode === GridCellModes.Edit) {
141
141
  return;
142
142
  }
@@ -61,12 +61,14 @@ var GridCellCheckboxForwardRef = /*#__PURE__*/React.forwardRef(function GridCell
61
61
  element.tabIndex = -1;
62
62
  }
63
63
  }, [element, tabIndex]);
64
- React.useLayoutEffect(function () {
64
+ React.useEffect(function () {
65
65
  if (hasFocus) {
66
66
  var _checkboxElement$curr;
67
67
 
68
68
  var input = (_checkboxElement$curr = checkboxElement.current) == null ? void 0 : _checkboxElement$curr.querySelector('input');
69
- input == null ? void 0 : input.focus();
69
+ input == null ? void 0 : input.focus({
70
+ preventScroll: true
71
+ });
70
72
  } else if (rippleRef.current) {
71
73
  // Only available in @mui/material v5.4.1 or later
72
74
  rippleRef.current.stop({});
@@ -196,4 +198,4 @@ process.env.NODE_ENV !== "production" ? GridCellCheckboxForwardRef.propTypes = {
196
198
  value: PropTypes.any
197
199
  } : void 0;
198
200
  export { GridCellCheckboxForwardRef };
199
- export var GridCellCheckboxRenderer = /*#__PURE__*/React.memo(GridCellCheckboxForwardRef);
201
+ export var GridCellCheckboxRenderer = GridCellCheckboxForwardRef;
package/legacy/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.17.9
1
+ /** @license MUI v5.17.11
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
@@ -58,7 +58,7 @@ export interface DataGridProcessedProps<R extends GridValidRowModel = any> exten
58
58
  * The props of the `DataGrid` component after the pre-processing phase that the user should not be able to override.
59
59
  * Those are usually used in feature-hook for which the pro-plan has more advanced features (eg: multi-sorting, multi-filtering, ...).
60
60
  */
61
- export declare type DataGridForcedPropsKey = 'apiRef' | 'checkboxSelectionVisibleOnly' | 'disableMultipleColumnsFiltering' | 'disableMultipleColumnsSorting' | 'disableMultipleSelection' | 'disableColumnReorder' | 'disableColumnResize' | 'throttleRowsMs' | 'hideFooterRowCount' | 'pagination' | 'signature';
61
+ export declare type DataGridForcedPropsKey = 'apiRef' | 'checkboxSelectionVisibleOnly' | 'disableMultipleColumnsFiltering' | 'disableMultipleColumnsSorting' | 'disableMultipleSelection' | 'disableColumnReorder' | 'disableColumnResize' | 'keepColumnPositionIfDraggedOutside' | 'throttleRowsMs' | 'hideFooterRowCount' | 'pagination' | 'signature';
62
62
  /**
63
63
  * The `DataGrid` options with a default value that must be merged with the value given through props.
64
64
  */
@@ -307,6 +307,12 @@ export interface DataGridPropsWithDefaultValues {
307
307
  * @default false
308
308
  */
309
309
  disableColumnResize: boolean;
310
+ /**
311
+ * If `true`, moving the mouse pointer outside the grid before releasing the mouse button
312
+ * in a column re-order action will not cause the column to jump back to its original position.
313
+ * @default false
314
+ */
315
+ keepColumnPositionIfDraggedOutside: boolean;
310
316
  }
311
317
  /**
312
318
  * The `DataGrid` props with no default value.
@@ -14,6 +14,7 @@ const DATA_GRID_FORCED_PROPS = {
14
14
  checkboxSelectionVisibleOnly: false,
15
15
  disableColumnReorder: true,
16
16
  disableColumnResize: true,
17
+ keepColumnPositionIfDraggedOutside: false,
17
18
  signature: 'DataGrid'
18
19
  };
19
20
  export const MAX_PAGE_SIZE = 100;
@@ -63,7 +64,8 @@ export const DATA_GRID_PROPS_DEFAULT_VALUES = {
63
64
  throttleRowsMs: 0,
64
65
  disableColumnReorder: false,
65
66
  disableColumnResize: false,
66
- keepNonExistentRowsSelected: false
67
+ keepNonExistentRowsSelected: false,
68
+ keepColumnPositionIfDraggedOutside: false
67
69
  };
68
70
  export const useDataGridProps = inProps => {
69
71
  if (inProps.pageSize > MAX_PAGE_SIZE) {
@@ -55,7 +55,9 @@ const GridActionsCell = props => {
55
55
  }
56
56
 
57
57
  const child = rootRef.current.children[focusedButtonIndex];
58
- child.focus();
58
+ child.focus({
59
+ preventScroll: true
60
+ });
59
61
  }, [focusedButtonIndex]);
60
62
  React.useEffect(() => {
61
63
  if (!hasFocus) {
@@ -129,7 +129,7 @@ function GridCell(props) {
129
129
  maxHeight: height === 'auto' ? 'none' : height // max-height doesn't support "auto"
130
130
 
131
131
  };
132
- React.useLayoutEffect(() => {
132
+ React.useEffect(() => {
133
133
  if (!hasFocus || cellMode === GridCellModes.Edit) {
134
134
  return;
135
135
  }
@@ -56,10 +56,12 @@ const GridCellCheckboxForwardRef = /*#__PURE__*/React.forwardRef(function GridCe
56
56
  element.tabIndex = -1;
57
57
  }
58
58
  }, [element, tabIndex]);
59
- React.useLayoutEffect(() => {
59
+ React.useEffect(() => {
60
60
  if (hasFocus) {
61
61
  const input = checkboxElement.current?.querySelector('input');
62
- input?.focus();
62
+ input?.focus({
63
+ preventScroll: true
64
+ });
63
65
  } else if (rippleRef.current) {
64
66
  // Only available in @mui/material v5.4.1 or later
65
67
  rippleRef.current.stop({});
@@ -189,4 +191,4 @@ process.env.NODE_ENV !== "production" ? GridCellCheckboxForwardRef.propTypes = {
189
191
  value: PropTypes.any
190
192
  } : void 0;
191
193
  export { GridCellCheckboxForwardRef };
192
- export const GridCellCheckboxRenderer = /*#__PURE__*/React.memo(GridCellCheckboxForwardRef);
194
+ export const GridCellCheckboxRenderer = GridCellCheckboxForwardRef;
package/modern/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.17.9
1
+ /** @license MUI v5.17.11
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
@@ -32,6 +32,7 @@ const DATA_GRID_FORCED_PROPS = {
32
32
  checkboxSelectionVisibleOnly: false,
33
33
  disableColumnReorder: true,
34
34
  disableColumnResize: true,
35
+ keepColumnPositionIfDraggedOutside: false,
35
36
  signature: 'DataGrid'
36
37
  };
37
38
  const MAX_PAGE_SIZE = 100;
@@ -82,7 +83,8 @@ const DATA_GRID_PROPS_DEFAULT_VALUES = {
82
83
  throttleRowsMs: 0,
83
84
  disableColumnReorder: false,
84
85
  disableColumnResize: false,
85
- keepNonExistentRowsSelected: false
86
+ keepNonExistentRowsSelected: false,
87
+ keepColumnPositionIfDraggedOutside: false
86
88
  };
87
89
  exports.DATA_GRID_PROPS_DEFAULT_VALUES = DATA_GRID_PROPS_DEFAULT_VALUES;
88
90
 
@@ -78,7 +78,9 @@ const GridActionsCell = props => {
78
78
  }
79
79
 
80
80
  const child = rootRef.current.children[focusedButtonIndex];
81
- child.focus();
81
+ child.focus({
82
+ preventScroll: true
83
+ });
82
84
  }, [focusedButtonIndex]);
83
85
  React.useEffect(() => {
84
86
  if (!hasFocus) {
@@ -155,7 +155,7 @@ function GridCell(props) {
155
155
  maxHeight: height === 'auto' ? 'none' : height // max-height doesn't support "auto"
156
156
 
157
157
  };
158
- React.useLayoutEffect(() => {
158
+ React.useEffect(() => {
159
159
  if (!hasFocus || cellMode === _models.GridCellModes.Edit) {
160
160
  return;
161
161
  }
@@ -81,12 +81,14 @@ const GridCellCheckboxForwardRef = /*#__PURE__*/React.forwardRef(function GridCe
81
81
  element.tabIndex = -1;
82
82
  }
83
83
  }, [element, tabIndex]);
84
- React.useLayoutEffect(() => {
84
+ React.useEffect(() => {
85
85
  if (hasFocus) {
86
86
  var _checkboxElement$curr;
87
87
 
88
88
  const input = (_checkboxElement$curr = checkboxElement.current) == null ? void 0 : _checkboxElement$curr.querySelector('input');
89
- input == null ? void 0 : input.focus();
89
+ input == null ? void 0 : input.focus({
90
+ preventScroll: true
91
+ });
90
92
  } else if (rippleRef.current) {
91
93
  // Only available in @mui/material v5.4.1 or later
92
94
  rippleRef.current.stop({});
@@ -216,5 +218,5 @@ process.env.NODE_ENV !== "production" ? GridCellCheckboxForwardRef.propTypes = {
216
218
  */
217
219
  value: _propTypes.default.any
218
220
  } : void 0;
219
- const GridCellCheckboxRenderer = /*#__PURE__*/React.memo(GridCellCheckboxForwardRef);
221
+ const GridCellCheckboxRenderer = GridCellCheckboxForwardRef;
220
222
  exports.GridCellCheckboxRenderer = GridCellCheckboxRenderer;
package/node/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.17.9
1
+ /** @license MUI v5.17.11
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-data-grid",
3
- "version": "5.17.9",
3
+ "version": "5.17.11",
4
4
  "description": "The community edition of the data grid component (MUI X).",
5
5
  "author": "MUI Team",
6
6
  "main": "./node/index.js",