@mui/x-data-grid-pro 5.15.0 → 5.15.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,133 @@
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.15.3
7
+
8
+ _Aug 18, 2022_
9
+
10
+ We'd like to offer a big thanks to the 9 contributors who made this release possible. Here are some highlights ✨:
11
+
12
+ - 📚 Documentation improvements
13
+ - 🐞 Bugfixes
14
+
15
+ ### `@mui/x-data-grid@v5.15.3` / `@mui/x-data-grid-pro@v5.15.3` / `@mui/x-data-grid-premium@v5.15.3`
16
+
17
+ #### Changes
18
+
19
+ - [DataGrid] Fix <kbd>Enter</kbd> causing Select to re-open when commiting value (#5756) @m4theushw
20
+ - [DataGrid] Fix `GridOverlays` bypassing pointer events (#5674) @philjones88
21
+
22
+ ### `@mui/x-date-pickers@v5.0.0-beta.6` / `@mui/x-date-picker-pro@v5.0.0-beta.6`
23
+
24
+ #### Changes
25
+
26
+ - [DatePicker] Support click on day outside of current month (#5768) @alexfauquette
27
+ - [pickers] Extend `PickersActionBarProps` with `DialogActionProps` (#5798) @LukasTy
28
+
29
+ ### Docs
30
+
31
+ - [docs] Fix API anchor link scroll top (#5795) @oliviertassinari
32
+ - [docs] Fix contradiction in the free trial clause (#5732) @oliviertassinari
33
+ - [docs] Fix default value of the DataGrid `logLevel` prop to false (#5784) @HwangTaehyun
34
+ - [docs] Fix typo on the row height page (#5772) @flaviendelangle
35
+ - [docs] Improve "upgrading plans" documentation. (#5683) @joserodolfofreitas
36
+ - [docs] Link the license docs before pricing (#5726) @oliviertassinari
37
+ - [docs] Update packages README files (#5835) @cherniavskii
38
+ - [docs] Use `InputBase` for pickers inputs (#5597) @cherniavskii
39
+
40
+ ### Core
41
+
42
+ - [core] Upgrade monorepo (#5771, #5797) @cherniavskii
43
+ - [core] Various TS improvements (#5556) @flaviendelangle
44
+ - [license] Give more context in the missing license (#5731) @oliviertassinari
45
+ - [license] Only log an error type once (#5730) @oliviertassinari
46
+ - [test] Increase timeout to take print screenshot (#5799) @m4theushw
47
+
48
+ ## 5.15.2
49
+
50
+ _Aug 11, 2022_
51
+
52
+ We'd like to offer a big thanks to the 7 contributors who made this release possible. Here are some highlights ✨:
53
+
54
+ - ✨ Improve quick filtering with row grouping (#5701) @alexfauquette
55
+ - 📚 Documentation improvements
56
+ - 🐞 Bugfixes
57
+
58
+ ### `@mui/x-data-grid@v5.15.2` / `@mui/x-data-grid-pro@v5.15.2` / `@mui/x-data-grid-premium@v5.15.2`
59
+
60
+ #### Changes
61
+
62
+ - [DataGrid] Catch errors if rows freezing is not supported (#5711) @cherniavskii
63
+ - [DataGrid] Preserve cell mode when entering edit mode while commiting (#5686) @m4theushw
64
+ - [DataGridPremium] Let quick filter search in row grouping children (#5701) @alexfauquette
65
+
66
+ ### `@mui/x-date-pickers@v5.0.0-beta.5` / `@mui/x-date-picker-pro@5.0.0-beta.5`
67
+
68
+ #### Changes
69
+
70
+ - [pickers] Add `react-dom` to peerDependencies (#5752) @cherniavskii
71
+ - [TimePicker] Set clock focus outline to `none` (#5758) @LukasTy
72
+ - [pickers] Fix theme augmentation with TypeScript (#5596) @alexfauquette
73
+ - [pickers] Reset input value when locale is modified (#5310) @alexfauquette
74
+ - [pickers] Support `disableHighlightToday` on `MonthPicker` and `YearPicker` (#5562) @flaviendelangle
75
+ - [pickers] Fallback to desktop mode when `matchMedia` is unavailable (#5684) @LukasTy
76
+ - [pickers] Trigger `onChange` when clearing or accepting `Invalid date` (#5740) @LukasTy
77
+
78
+ ### Docs
79
+
80
+ - [docs] Add RFC GH issue template (#5739) @bytasv
81
+ - [docs] Add description to the `GridExportStateParams` page (#5654) @oliviertassinari
82
+ - [docs] Improve the Events page (#5413) @flaviendelangle
83
+ - [docs] Use new editing API in the introduction demos (#5728) @oliviertassinari
84
+
85
+ ### Core
86
+
87
+ - [core] Remove duplicated `FUNDING.yml` file (#5656) @oliviertassinari
88
+ - [core] Remove outdated Next.js options (#5727) @oliviertassinari
89
+ - [core] Update tooling to run with React 18 (#4155) @m4theushw
90
+ - [test] Fix failing dynamic row height tests on Edge (#5707) @m4theushw
91
+
92
+ ## 5.15.1
93
+
94
+ _Aug 4, 2022_
95
+
96
+ We'd like to offer a big thanks to the 10 contributors who made this release possible. Here are some highlights ✨:
97
+
98
+ - 📚 New [page presenting the `apiRef`](https://mui.com/x/react-data-grid/api-object/) (#5273) @flaviendelangle
99
+ - ✨ Better keyboard support for start editing cells (#5511) @oliviertassinari
100
+ - 🌍 Improvements to different locales
101
+ - 🐞 Bugfixes
102
+
103
+ ### `@mui/x-data-grid@v5.15.1` / `@mui/x-data-grid-pro@v5.15.1` / `@mui/x-data-grid-premium@v5.15.1`
104
+
105
+ #### Changes
106
+
107
+ - [DataGrid] Improve start edit UX (#5511) @oliviertassinari
108
+ - [DataGrid] Add `initialOpen` prop to `GridEditSingleSelectCell` to allow overriding initial open state (#5645) @shapaaa
109
+ - [DataGrid] Forward `ref` to root element in `GridEditInputCell` (#5631) @Zenoo
110
+ - [DataGrid] Toggle open state when clicking on buttons in the `GridToolbar` (#5503) @cherniavskii
111
+ - [DataGrid] Improve German (de-DE) locale (#5586) @sebastianfrey
112
+ - [DataGrid] Improve Korean (ko-KR) locale (#5668) @Einere
113
+ - [DataGrid] Complete Italian (it-IT) locale (#5487) @mamodev
114
+
115
+ ### `@mui/x-date-pickers@v5.0.0-beta.4` / `@mui/x-date-picker-pro@5.0.0-beta.4`
116
+
117
+ #### Changes
118
+
119
+ - [DatePicker] Customize day formatter in the calendar (#5373) @alexfauquette
120
+
121
+ ### Docs
122
+
123
+ - [docs] New location for the legal content (#5595) @oliviertassinari
124
+ - [docs] Update description of `maxDateTime` prop (#5639) @jurecuhalev
125
+ - [docs] Add missing `date-fns` dependency when opening Codesandbox demo (#5692) @cherniavskii
126
+
127
+ ### Core
128
+
129
+ - [core] Drop usage of `GRID_EXPERIMENTAL_ENABLED` env variable (#5669) @ar7casper
130
+ - [core] Isolate asset loading under /x/ (#5594) @oliviertassinari
131
+ - [core] Upgrade node to v14 (#4999) @cherniavskii
132
+
6
133
  ## 5.15.0
7
134
 
8
135
  _Jul 29, 2022_
@@ -13,7 +140,7 @@ We'd like to offer a big thanks to the 6 contributors who made this release poss
13
140
 
14
141
  Premium users can now aggregate data in the grid.
15
142
  Extract information like sum, average, count, and others with a couple of clicks.
16
-
143
+
17
144
  https://user-images.githubusercontent.com/45398769/181581503-77cc412e-9d9e-4de1-8bc3-c3bccc54cdaa.mp4
18
145
 
19
146
  To enable this feature, add `experimentalFeatures={{ aggregation: true }}`.
@@ -478,7 +478,7 @@ DataGridProRaw.propTypes = {
478
478
 
479
479
  /**
480
480
  * Allows to pass the logging level or false to turn off logging.
481
- * @default "debug"
481
+ * @default "error" ("warn" in dev mode)
482
482
  */
483
483
  logLevel: PropTypes.oneOf(['debug', 'error', 'info', 'warn', false]),
484
484
 
@@ -822,7 +822,7 @@ DataGridProRaw.propTypes = {
822
822
  * @param {GridState} state The new state.
823
823
  * @param {MuiEvent<{}>} event The event object.
824
824
  * @param {GridCallbackDetails} details Additional details for this callback.
825
- * @internal
825
+ * @ignore - do not document.
826
826
  */
827
827
  onStateChange: PropTypes.func,
828
828
 
package/README.md CHANGED
@@ -21,7 +21,8 @@ This component has the following peer dependencies that you will need to install
21
21
  "peerDependencies": {
22
22
  "@mui/material": "^5.4.1",
23
23
  "@mui/system": "^5.4.1",
24
- "react": "^17.0.2 || ^18.0.0"
24
+ "react": "^17.0.2 || ^18.0.0",
25
+ "react-dom": "^17.0.2 || ^18.0.0"
25
26
  },
26
27
  ```
27
28
 
@@ -1,9 +1,10 @@
1
- import { GridRowTreeConfig, GridFilterState } from '@mui/x-data-grid';
1
+ import { GridRowTreeConfig, GridFilterState, GridFilterModel } from '@mui/x-data-grid';
2
2
  import { GridAggregatedFilterItemApplier } from '@mui/x-data-grid/internals';
3
3
  interface FilterRowTreeFromTreeDataParams {
4
4
  rowTree: GridRowTreeConfig;
5
5
  disableChildrenFiltering: boolean;
6
6
  isRowMatchingFilters: GridAggregatedFilterItemApplier | null;
7
+ filterModel: GridFilterModel;
7
8
  }
8
9
  export declare const TREE_DATA_STRATEGY = "tree-data";
9
10
  /**
@@ -1,3 +1,4 @@
1
+ import { passFilterLogic } from '@mui/x-data-grid/internals';
1
2
  export const TREE_DATA_STRATEGY = 'tree-data';
2
3
  /**
3
4
  * A node is visible if one of the following criteria is met:
@@ -23,10 +24,14 @@ export const filterRowTreeFromTreeData = params => {
23
24
 
24
25
  if (shouldSkipFilters) {
25
26
  isMatchingFilters = null;
26
- } else if (!isRowMatchingFilters) {
27
+ } else if (!isRowMatchingFilters || node.position === 'footer') {
27
28
  isMatchingFilters = true;
28
29
  } else {
29
- isMatchingFilters = isRowMatchingFilters(node.id);
30
+ const {
31
+ passingFilterItems,
32
+ passingQuickFilterValues
33
+ } = isRowMatchingFilters(node.id);
34
+ isMatchingFilters = passFilterLogic([passingFilterItems], [passingQuickFilterValues], params.filterModel);
30
35
  }
31
36
 
32
37
  let filteredDescendantCount = 0;
@@ -99,7 +99,8 @@ export const useGridTreeDataPreProcessors = (apiRef, props) => {
99
99
  return filterRowTreeFromTreeData({
100
100
  rowTree,
101
101
  isRowMatchingFilters: params.isRowMatchingFilters,
102
- disableChildrenFiltering: props.disableChildrenFiltering
102
+ disableChildrenFiltering: props.disableChildrenFiltering,
103
+ filterModel: params.filterModel
103
104
  });
104
105
  }, [apiRef, props.disableChildrenFiltering]);
105
106
  const sortRows = React.useCallback(params => {
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.15.0
1
+ /** @license MUI v5.15.3
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.
@@ -478,7 +478,7 @@ DataGridProRaw.propTypes = {
478
478
 
479
479
  /**
480
480
  * Allows to pass the logging level or false to turn off logging.
481
- * @default "debug"
481
+ * @default "error" ("warn" in dev mode)
482
482
  */
483
483
  logLevel: PropTypes.oneOf(['debug', 'error', 'info', 'warn', false]),
484
484
 
@@ -822,7 +822,7 @@ DataGridProRaw.propTypes = {
822
822
  * @param {GridState} state The new state.
823
823
  * @param {MuiEvent<{}>} event The event object.
824
824
  * @param {GridCallbackDetails} details Additional details for this callback.
825
- * @internal
825
+ * @ignore - do not document.
826
826
  */
827
827
  onStateChange: PropTypes.func,
828
828
 
@@ -1,3 +1,4 @@
1
+ import { passFilterLogic } from '@mui/x-data-grid/internals';
1
2
  export var TREE_DATA_STRATEGY = 'tree-data';
2
3
  /**
3
4
  * A node is visible if one of the following criteria is met:
@@ -21,10 +22,14 @@ export var filterRowTreeFromTreeData = function filterRowTreeFromTreeData(params
21
22
 
22
23
  if (shouldSkipFilters) {
23
24
  isMatchingFilters = null;
24
- } else if (!isRowMatchingFilters) {
25
+ } else if (!isRowMatchingFilters || node.position === 'footer') {
25
26
  isMatchingFilters = true;
26
27
  } else {
27
- isMatchingFilters = isRowMatchingFilters(node.id);
28
+ var _isRowMatchingFilters = isRowMatchingFilters(node.id),
29
+ passingFilterItems = _isRowMatchingFilters.passingFilterItems,
30
+ passingQuickFilterValues = _isRowMatchingFilters.passingQuickFilterValues;
31
+
32
+ isMatchingFilters = passFilterLogic([passingFilterItems], [passingQuickFilterValues], params.filterModel);
28
33
  }
29
34
 
30
35
  var filteredDescendantCount = 0;
@@ -114,7 +114,8 @@ export var useGridTreeDataPreProcessors = function useGridTreeDataPreProcessors(
114
114
  return filterRowTreeFromTreeData({
115
115
  rowTree: rowTree,
116
116
  isRowMatchingFilters: params.isRowMatchingFilters,
117
- disableChildrenFiltering: props.disableChildrenFiltering
117
+ disableChildrenFiltering: props.disableChildrenFiltering,
118
+ filterModel: params.filterModel
118
119
  });
119
120
  }, [apiRef, props.disableChildrenFiltering]);
120
121
  var sortRows = React.useCallback(function (params) {
package/legacy/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.15.0
1
+ /** @license MUI v5.15.3
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.
@@ -1,6 +1,6 @@
1
1
  import { ponyfillGlobal } from '@mui/utils';
2
2
  export var getReleaseInfo = function getReleaseInfo() {
3
- var releaseInfo = "MTY1OTA0NTYwMDAwMA==";
3
+ var releaseInfo = "MTY2MDc5MTYwMDAwMA==";
4
4
 
5
5
  if (process.env.NODE_ENV !== 'production') {
6
6
  // A simple hack to set the value in the test environment (has no build step).
@@ -478,7 +478,7 @@ DataGridProRaw.propTypes = {
478
478
 
479
479
  /**
480
480
  * Allows to pass the logging level or false to turn off logging.
481
- * @default "debug"
481
+ * @default "error" ("warn" in dev mode)
482
482
  */
483
483
  logLevel: PropTypes.oneOf(['debug', 'error', 'info', 'warn', false]),
484
484
 
@@ -822,7 +822,7 @@ DataGridProRaw.propTypes = {
822
822
  * @param {GridState} state The new state.
823
823
  * @param {MuiEvent<{}>} event The event object.
824
824
  * @param {GridCallbackDetails} details Additional details for this callback.
825
- * @internal
825
+ * @ignore - do not document.
826
826
  */
827
827
  onStateChange: PropTypes.func,
828
828
 
@@ -1,3 +1,4 @@
1
+ import { passFilterLogic } from '@mui/x-data-grid/internals';
1
2
  export const TREE_DATA_STRATEGY = 'tree-data';
2
3
  /**
3
4
  * A node is visible if one of the following criteria is met:
@@ -21,10 +22,14 @@ export const filterRowTreeFromTreeData = params => {
21
22
 
22
23
  if (shouldSkipFilters) {
23
24
  isMatchingFilters = null;
24
- } else if (!isRowMatchingFilters) {
25
+ } else if (!isRowMatchingFilters || node.position === 'footer') {
25
26
  isMatchingFilters = true;
26
27
  } else {
27
- isMatchingFilters = isRowMatchingFilters(node.id);
28
+ const {
29
+ passingFilterItems,
30
+ passingQuickFilterValues
31
+ } = isRowMatchingFilters(node.id);
32
+ isMatchingFilters = passFilterLogic([passingFilterItems], [passingQuickFilterValues], params.filterModel);
28
33
  }
29
34
 
30
35
  let filteredDescendantCount = 0;
@@ -97,7 +97,8 @@ export const useGridTreeDataPreProcessors = (apiRef, props) => {
97
97
  return filterRowTreeFromTreeData({
98
98
  rowTree,
99
99
  isRowMatchingFilters: params.isRowMatchingFilters,
100
- disableChildrenFiltering: props.disableChildrenFiltering
100
+ disableChildrenFiltering: props.disableChildrenFiltering,
101
+ filterModel: params.filterModel
101
102
  });
102
103
  }, [apiRef, props.disableChildrenFiltering]);
103
104
  const sortRows = React.useCallback(params => {
package/modern/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.15.0
1
+ /** @license MUI v5.15.3
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.
@@ -1,6 +1,6 @@
1
1
  import { ponyfillGlobal } from '@mui/utils';
2
2
  export const getReleaseInfo = () => {
3
- const releaseInfo = "MTY1OTA0NTYwMDAwMA==";
3
+ const releaseInfo = "MTY2MDc5MTYwMDAwMA==";
4
4
 
5
5
  if (process.env.NODE_ENV !== 'production') {
6
6
  // A simple hack to set the value in the test environment (has no build step).
@@ -502,7 +502,7 @@ DataGridProRaw.propTypes = {
502
502
 
503
503
  /**
504
504
  * Allows to pass the logging level or false to turn off logging.
505
- * @default "debug"
505
+ * @default "error" ("warn" in dev mode)
506
506
  */
507
507
  logLevel: _propTypes.default.oneOf(['debug', 'error', 'info', 'warn', false]),
508
508
 
@@ -846,7 +846,7 @@ DataGridProRaw.propTypes = {
846
846
  * @param {GridState} state The new state.
847
847
  * @param {MuiEvent<{}>} event The event object.
848
848
  * @param {GridCallbackDetails} details Additional details for this callback.
849
- * @internal
849
+ * @ignore - do not document.
850
850
  */
851
851
  onStateChange: _propTypes.default.func,
852
852
 
@@ -4,6 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.filterRowTreeFromTreeData = exports.TREE_DATA_STRATEGY = void 0;
7
+
8
+ var _internals = require("@mui/x-data-grid/internals");
9
+
7
10
  const TREE_DATA_STRATEGY = 'tree-data';
8
11
  /**
9
12
  * A node is visible if one of the following criteria is met:
@@ -31,10 +34,14 @@ const filterRowTreeFromTreeData = params => {
31
34
 
32
35
  if (shouldSkipFilters) {
33
36
  isMatchingFilters = null;
34
- } else if (!isRowMatchingFilters) {
37
+ } else if (!isRowMatchingFilters || node.position === 'footer') {
35
38
  isMatchingFilters = true;
36
39
  } else {
37
- isMatchingFilters = isRowMatchingFilters(node.id);
40
+ const {
41
+ passingFilterItems,
42
+ passingQuickFilterValues
43
+ } = isRowMatchingFilters(node.id);
44
+ isMatchingFilters = (0, _internals.passFilterLogic)([passingFilterItems], [passingQuickFilterValues], params.filterModel);
38
45
  }
39
46
 
40
47
  let filteredDescendantCount = 0;
@@ -123,7 +123,8 @@ const useGridTreeDataPreProcessors = (apiRef, props) => {
123
123
  return (0, _gridTreeDataUtils.filterRowTreeFromTreeData)({
124
124
  rowTree,
125
125
  isRowMatchingFilters: params.isRowMatchingFilters,
126
- disableChildrenFiltering: props.disableChildrenFiltering
126
+ disableChildrenFiltering: props.disableChildrenFiltering,
127
+ filterModel: params.filterModel
127
128
  });
128
129
  }, [apiRef, props.disableChildrenFiltering]);
129
130
  const sortRows = React.useCallback(params => {
package/node/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MUI v5.15.0
1
+ /** @license MUI v5.15.3
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.
@@ -8,7 +8,7 @@ exports.getReleaseInfo = void 0;
8
8
  var _utils = require("@mui/utils");
9
9
 
10
10
  const getReleaseInfo = () => {
11
- const releaseInfo = "MTY1OTA0NTYwMDAwMA==";
11
+ const releaseInfo = "MTY2MDc5MTYwMDAwMA==";
12
12
 
13
13
  if (process.env.NODE_ENV !== 'production') {
14
14
  // A simple hack to set the value in the test environment (has no build step).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-data-grid-pro",
3
- "version": "5.15.0",
3
+ "version": "5.15.3",
4
4
  "description": "The Pro plan edition of the data grid component (MUI X).",
5
5
  "author": "MUI Team",
6
6
  "main": "./node/index.js",
@@ -33,8 +33,8 @@
33
33
  "dependencies": {
34
34
  "@babel/runtime": "^7.18.6",
35
35
  "@mui/utils": "^5.4.1",
36
- "@mui/x-data-grid": "5.15.0",
37
- "@mui/x-license-pro": "5.15.0",
36
+ "@mui/x-data-grid": "5.15.3",
37
+ "@mui/x-license-pro": "5.15.3",
38
38
  "@types/format-util": "^1.0.2",
39
39
  "clsx": "^1.2.1",
40
40
  "prop-types": "^15.8.1",
@@ -1,6 +1,6 @@
1
1
  import { ponyfillGlobal } from '@mui/utils';
2
2
  export const getReleaseInfo = () => {
3
- const releaseInfo = "MTY1OTA0NTYwMDAwMA==";
3
+ const releaseInfo = "MTY2MDc5MTYwMDAwMA==";
4
4
 
5
5
  if (process.env.NODE_ENV !== 'production') {
6
6
  // A simple hack to set the value in the test environment (has no build step).