@mui/x-data-grid-premium 8.0.0-alpha.7 → 8.0.0-alpha.8

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.
Files changed (38) hide show
  1. package/CHANGELOG.md +115 -0
  2. package/DataGridPremium/DataGridPremium.js +5 -7
  3. package/DataGridPremium/useDataGridPremiumComponent.d.ts +1 -1
  4. package/DataGridPremium/useDataGridPremiumComponent.js +1 -1
  5. package/esm/DataGridPremium/DataGridPremium.js +7 -9
  6. package/esm/DataGridPremium/useDataGridPremiumComponent.js +1 -1
  7. package/esm/hooks/features/clipboard/useGridClipboardImport.js +1 -1
  8. package/esm/utils/releaseInfo.js +1 -1
  9. package/hooks/features/aggregation/createAggregationLookup.d.ts +1 -1
  10. package/hooks/features/aggregation/gridAggregationUtils.d.ts +2 -2
  11. package/hooks/features/aggregation/useGridAggregation.d.ts +1 -1
  12. package/hooks/features/aggregation/useGridAggregationPreProcessors.d.ts +1 -1
  13. package/hooks/features/aggregation/wrapColumnWithAggregation.d.ts +1 -1
  14. package/hooks/features/cellSelection/gridCellSelectionInterfaces.d.ts +3 -3
  15. package/hooks/features/clipboard/useGridClipboardImport.d.ts +1 -1
  16. package/hooks/features/clipboard/useGridClipboardImport.js +1 -1
  17. package/hooks/features/dataSource/useGridDataSourcePremium.d.ts +1 -1
  18. package/hooks/features/export/serializer/excelSerializer.d.ts +2 -2
  19. package/hooks/features/export/useGridExcelExport.d.ts +1 -1
  20. package/hooks/features/rowGrouping/createGroupingColDef.d.ts +1 -1
  21. package/hooks/features/rowGrouping/gridRowGroupingUtils.d.ts +3 -3
  22. package/hooks/features/rowGrouping/useGridDataSourceRowGroupingPreProcessors.d.ts +1 -1
  23. package/hooks/features/rowGrouping/useGridRowGrouping.d.ts +1 -1
  24. package/hooks/features/rowGrouping/useGridRowGroupingPreProcessors.d.ts +1 -1
  25. package/hooks/utils/useGridApiContext.d.ts +1 -1
  26. package/hooks/utils/useGridPrivateApiContext.d.ts +1 -1
  27. package/hooks/utils/useKeepGroupedColumnsHidden.d.ts +1 -1
  28. package/index.js +1 -1
  29. package/models/dataGridPremiumProps.d.ts +1 -1
  30. package/models/gridGroupingValueGetter.d.ts +1 -1
  31. package/models/gridPastedValueParser.d.ts +1 -1
  32. package/modern/DataGridPremium/DataGridPremium.js +7 -9
  33. package/modern/DataGridPremium/useDataGridPremiumComponent.js +1 -1
  34. package/modern/hooks/features/clipboard/useGridClipboardImport.js +1 -1
  35. package/modern/index.js +1 -1
  36. package/modern/utils/releaseInfo.js +1 -1
  37. package/package.json +5 -5
  38. package/utils/releaseInfo.js +1 -1
package/CHANGELOG.md CHANGED
@@ -5,6 +5,121 @@
5
5
  All notable changes to this project will be documented in this file.
6
6
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
7
7
 
8
+ ## 8.0.0-alpha.8
9
+
10
+ _Jan 16, 2025_
11
+
12
+ We'd like to offer a big thanks to the 11 contributors who made this release possible. Here are some highlights ✨:
13
+
14
+ - 🍬 Improved design for Data Grid [Header filters](https://next.mui.com/x/react-data-grid/filtering/header-filters/)
15
+
16
+ <img width="100%" alt="Data Grid Header filters" src="https://github.com/user-attachments/assets/74a50cd9-7a55-41fc-a2b8-f8a0d5b9120e" />
17
+
18
+ - 🔄 Data Grid [Scroll restoration](https://next.mui.com/x/react-data-grid/scrolling/#scroll-restoration)
19
+ - 📊 Charts support server-side rendering under [some conditions](https://next.mui.com/x/react-charts/getting-started/#server-side-rendering)
20
+ - 🐞 Bugfixes
21
+
22
+ Special thanks go out to the community contributors who have helped make this release possible:
23
+ @lauri865.
24
+ Following are all team members who have contributed to this release:
25
+ @arminmeh, @romgrk, @samuelsycamore, @alexfauquette, @cherniavskii, @flaviendelangle, @JCQuintas, @KenanYusuf, @LukasTy, @michelengelen.
26
+
27
+ <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
28
+
29
+ ### Data Grid
30
+
31
+ #### Breaking changes
32
+
33
+ - The clear button in header filter cells has been moved to the header filter menu. Use `slotProps={{ headerFilterCell: { showClearIcon: true } }}` to restore the clear button in the cell.
34
+
35
+ #### `@mui/x-data-grid@8.0.0-alpha.8`
36
+
37
+ - [DataGrid] Improve scrollbar deadzone with overlay scrollbars (#15961) @lauri865
38
+ - [DataGrid] Header filter design improvements (#15991) @KenanYusuf
39
+ - [DataGrid] Scroll restoration (#15623) @lauri865
40
+ - [DataGrid] Fix row, cell and header memoizations (#15666) @lauri865
41
+
42
+ #### `@mui/x-data-grid-pro@8.0.0-alpha.8` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
43
+
44
+ Same changes as in `@mui/x-data-grid@8.0.0-alpha.8`, plus:
45
+
46
+ - [DataGridPro] Add test for column pinning with disabled column virtualization (#16176) @cherniavskii
47
+ - [DataGridPro] Fix width of right-pinned column group during resize (#16199) @cherniavskii
48
+
49
+ #### `@mui/x-data-grid-premium@8.0.0-alpha.8` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
50
+
51
+ Same changes as in `@mui/x-data-grid-pro@8.0.0-alpha.8`.
52
+
53
+ ### Date and Time Pickers
54
+
55
+ #### Breaking changes
56
+
57
+ - The field is now editable if rendered inside a mobile Picker — [Learn more](https://next.mui.com/x/migration/migration-pickers-v7/#field-editing-on-mobile-pickers)
58
+ - The `useMultiInputDateRangeField`, `useMultiInputTimeRangeField`, and `useMultiInputDateTimeRangeField` hooks have been removed in favor of the new `useMultiInputRangeField` hook — [Learn more](https://next.mui.com/x/migration/migration-pickers-v7/#usemultiinputdaterangefield)
59
+ - The component passed to the `field` slot no longer receives the `value`, `onChange`, `timezone`, `format`, `disabled`, `formatDensity`, `enableAccessibleFieldDOMStructure`, `selectedSections` and `onSelectedSectionsChange` props — [Learn more](https://next.mui.com/x/migration/migration-pickers-v7/#slot-field)
60
+
61
+ #### `@mui/x-date-pickers@8.0.0-alpha.8`
62
+
63
+ - [pickers] Let the field components handle their opening UI, and allow field editing on mobile pickers (#15671) @flaviendelangle
64
+ - [pickers] Remove code duplication for the multi input range fields (#15505) @flaviendelangle
65
+ - [pickers] Rename `onRangePositionChange` into `setRangePosition` in `usePickerRangePositionContext` (#16189) @flaviendelangle
66
+ - [pickers] Use context to pass props from the picker to the field (#16042) @flaviendelangle
67
+
68
+ #### `@mui/x-date-pickers-pro@8.0.0-alpha.8` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
69
+
70
+ Same changes as in `@mui/x-date-pickers@8.0.0-alpha.8`.
71
+
72
+ ### Charts
73
+
74
+ #### Breaking changes
75
+
76
+ - Charts tooltip markers now have different styles for each chart type. The tooltip and legend marks are now the same.
77
+ - Duplicate axis id's across `x` and `y` axis now log a warning in dev mode. Axis ids should be unique to prevent internal issues.
78
+
79
+ #### `@mui/x-charts@8.0.0-alpha.8`
80
+
81
+ - [charts] Fix flaky charts tests (#16180) @JCQuintas
82
+ - [charts] Handle case where gradient stop `offset` could be `Infinite` (#16131) @JCQuintas
83
+ - [charts] Make `useChartGradientId` public (#16106) @JCQuintas
84
+ - [charts] Move z-axis to plugin (#16130) @alexfauquette
85
+ - [charts] Plot data at first render if `skipAnimation` is set to `true` (#16166) @alexfauquette
86
+ - [charts] Replace tooltip mark with style (#16117) @JCQuintas
87
+ - [charts] Support `rtl` for gradient legend (#16115) @JCQuintas
88
+ - [charts] Use plugin system for series and axes (#15865) @alexfauquette
89
+
90
+ #### `@mui/x-charts-pro@8.0.0-alpha.8` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
91
+
92
+ Same changes as in `@mui/x-charts@8.0.0-alpha.8`.
93
+
94
+ ### Tree View
95
+
96
+ #### `@mui/x-tree-view@8.0.0-alpha.8`
97
+
98
+ No changes since `@mui/x-tree-view-pro@v8.0.0-alpha.7`.
99
+
100
+ #### `@mui/x-tree-view-pro@8.0.0-alpha.8` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
101
+
102
+ Same changes as in `@mui/x-tree-view@8.0.0-alpha.8`.
103
+
104
+ ### Docs
105
+
106
+ - [docs] Add example for custom legend (#16169) @alexfauquette
107
+ - [docs] Add full custom field creation example (#15194) @flaviendelangle
108
+ - [docs] Copyedit the Data Grid cell selection page (#16099) @samuelsycamore
109
+ - [docs] Fix demo rendering issue on Codesandbox (#16118) @arminmeh
110
+ - [docs] Remove broken links (#16167) @alexfauquette
111
+ - [docs] Split the Data Grid editing page (#14931) @MBilalShafi
112
+ - [docs] Fix wrong props warnings (#16119) @JCQuintas
113
+
114
+ ### Core
115
+
116
+ - [core] Type all references as `RefObject` (#16124) @arminmeh
117
+ - [code-infra] Refactor `react` and `react-dom` definitions to simplify dep resolving (#16160) @LukasTy
118
+ - [code-infra] Stop renovate from updating `date-fns-v2` (#16158) @LukasTy
119
+ - [infra] Improve cherry-pick action target list (#16184) @michelengelen
120
+ - [test] Fix flaky column pinning unit test (#16202) @cherniavskii
121
+ - [test] Fix flaky screenshot (#16182) @cherniavskii
122
+
8
123
  ## 8.0.0-alpha.7
9
124
 
10
125
  _Jan 9, 2025_
@@ -42,18 +42,16 @@ const DataGridPremiumRaw = (0, _forwardRef.forwardRef)(function DataGridPremium(
42
42
  privateApiRef: privateApiRef,
43
43
  configuration: configuration,
44
44
  props: props,
45
- children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_xDataGridPro.GridRoot, (0, _extends2.default)({
45
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_xDataGridPro.GridRoot, (0, _extends2.default)({
46
46
  className: props.className,
47
47
  style: props.style,
48
48
  sx: props.sx
49
49
  }, props.slotProps?.root, {
50
50
  ref: ref,
51
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_xDataGridPro.GridHeader, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_xDataGridPro.GridBody, {
52
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_xLicense.Watermark, {
53
- packageName: "x-data-grid-premium",
54
- releaseInfo: releaseInfo
55
- })
56
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_xDataGridPro.GridFooterPlaceholder, {})]
51
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_xLicense.Watermark, {
52
+ packageName: "x-data-grid-premium",
53
+ releaseInfo: releaseInfo
54
+ })
57
55
  }))
58
56
  });
59
57
  });
@@ -1,4 +1,4 @@
1
1
  import * as React from 'react';
2
2
  import { GridApiPremium, GridPrivateApiPremium } from '../models/gridApiPremium';
3
3
  import { DataGridPremiumProcessedProps } from '../models/dataGridPremiumProps';
4
- export declare const useDataGridPremiumComponent: (inputApiRef: React.MutableRefObject<GridApiPremium> | undefined, props: DataGridPremiumProcessedProps) => React.RefObject<GridPrivateApiPremium>;
4
+ export declare const useDataGridPremiumComponent: (inputApiRef: React.RefObject<GridApiPremium> | undefined, props: DataGridPremiumProcessedProps) => React.RefObject<GridPrivateApiPremium>;
@@ -50,6 +50,7 @@ const useDataGridPremiumComponent = (inputApiRef, props) => {
50
50
  (0, _internals.useGridInitializeState)(_internals.columnPinningStateInitializer, apiRef, props);
51
51
  (0, _internals.useGridInitializeState)(_internals.columnsStateInitializer, apiRef, props);
52
52
  (0, _internals.useGridInitializeState)(_internals.rowPinningStateInitializer, apiRef, props);
53
+ (0, _internals.useGridInitializeState)(_internals.paginationStateInitializer, apiRef, props);
53
54
  (0, _internals.useGridInitializeState)(_internals.rowsStateInitializer, apiRef, props);
54
55
  (0, _internals.useGridInitializeState)(_internals.editingStateInitializer, apiRef, props);
55
56
  (0, _internals.useGridInitializeState)(_internals.focusStateInitializer, apiRef, props);
@@ -60,7 +61,6 @@ const useDataGridPremiumComponent = (inputApiRef, props) => {
60
61
  (0, _internals.useGridInitializeState)(_internals.densityStateInitializer, apiRef, props);
61
62
  (0, _internals.useGridInitializeState)(_internals.columnReorderStateInitializer, apiRef, props);
62
63
  (0, _internals.useGridInitializeState)(_internals.columnResizeStateInitializer, apiRef, props);
63
- (0, _internals.useGridInitializeState)(_internals.paginationStateInitializer, apiRef, props);
64
64
  (0, _internals.useGridInitializeState)(_internals.rowsMetaStateInitializer, apiRef, props);
65
65
  (0, _internals.useGridInitializeState)(_internals.columnMenuStateInitializer, apiRef, props);
66
66
  (0, _internals.useGridInitializeState)(_internals.columnGroupsStateInitializer, apiRef, props);
@@ -4,7 +4,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import { useLicenseVerifier, Watermark } from '@mui/x-license';
7
- import { GridBody, GridFooterPlaceholder, GridHeader, GridRoot, GridContextProvider } from '@mui/x-data-grid-pro';
7
+ import { GridRoot, GridContextProvider } from '@mui/x-data-grid-pro';
8
8
  import { propValidatorsDataGrid, propValidatorsDataGridPro, validateProps } from '@mui/x-data-grid-pro/internals';
9
9
  import { forwardRef } from '@mui/x-internals/forwardRef';
10
10
  import { useDataGridPremiumComponent } from "./useDataGridPremiumComponent.js";
@@ -12,7 +12,7 @@ import { useDataGridPremiumProps } from "./useDataGridPremiumProps.js";
12
12
  import { getReleaseInfo } from "../utils/releaseInfo.js";
13
13
  import { useGridAriaAttributes } from "../hooks/utils/useGridAriaAttributes.js";
14
14
  import { useGridRowAriaAttributes } from "../hooks/features/rows/useGridRowAriaAttributes.js";
15
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
+ import { jsx as _jsx } from "react/jsx-runtime";
16
16
  const configuration = {
17
17
  hooks: {
18
18
  useGridAriaAttributes,
@@ -35,18 +35,16 @@ const DataGridPremiumRaw = forwardRef(function DataGridPremium(inProps, ref) {
35
35
  privateApiRef: privateApiRef,
36
36
  configuration: configuration,
37
37
  props: props,
38
- children: /*#__PURE__*/_jsxs(GridRoot, _extends({
38
+ children: /*#__PURE__*/_jsx(GridRoot, _extends({
39
39
  className: props.className,
40
40
  style: props.style,
41
41
  sx: props.sx
42
42
  }, props.slotProps?.root, {
43
43
  ref: ref,
44
- children: [/*#__PURE__*/_jsx(GridHeader, {}), /*#__PURE__*/_jsx(GridBody, {
45
- children: /*#__PURE__*/_jsx(Watermark, {
46
- packageName: "x-data-grid-premium",
47
- releaseInfo: releaseInfo
48
- })
49
- }), /*#__PURE__*/_jsx(GridFooterPlaceholder, {})]
44
+ children: /*#__PURE__*/_jsx(Watermark, {
45
+ packageName: "x-data-grid-premium",
46
+ releaseInfo: releaseInfo
47
+ })
50
48
  }))
51
49
  });
52
50
  });
@@ -43,6 +43,7 @@ export const useDataGridPremiumComponent = (inputApiRef, props) => {
43
43
  useGridInitializeState(columnPinningStateInitializer, apiRef, props);
44
44
  useGridInitializeState(columnsStateInitializer, apiRef, props);
45
45
  useGridInitializeState(rowPinningStateInitializer, apiRef, props);
46
+ useGridInitializeState(paginationStateInitializer, apiRef, props);
46
47
  useGridInitializeState(rowsStateInitializer, apiRef, props);
47
48
  useGridInitializeState(editingStateInitializer, apiRef, props);
48
49
  useGridInitializeState(focusStateInitializer, apiRef, props);
@@ -53,7 +54,6 @@ export const useDataGridPremiumComponent = (inputApiRef, props) => {
53
54
  useGridInitializeState(densityStateInitializer, apiRef, props);
54
55
  useGridInitializeState(columnReorderStateInitializer, apiRef, props);
55
56
  useGridInitializeState(columnResizeStateInitializer, apiRef, props);
56
- useGridInitializeState(paginationStateInitializer, apiRef, props);
57
57
  useGridInitializeState(rowsMetaStateInitializer, apiRef, props);
58
58
  useGridInitializeState(columnMenuStateInitializer, apiRef, props);
59
59
  useGridInitializeState(columnGroupsStateInitializer, apiRef, props);
@@ -121,7 +121,7 @@ class CellValueUpdater {
121
121
  if (onProcessRowUpdateError) {
122
122
  onProcessRowUpdateError(errorThrown);
123
123
  } else if (process.env.NODE_ENV !== 'production') {
124
- warnOnce(['MUI X: A call to `processRowUpdate` threw an error which was not handled because `onProcessRowUpdateError` is missing.', 'To handle the error pass a callback to the `onProcessRowUpdateError` prop, for example `<DataGrid onProcessRowUpdateError={(error) => ...} />`.', 'For more detail, see https://mui.com/x/react-data-grid/editing/#server-side-persistence.'], 'error');
124
+ warnOnce(['MUI X: A call to `processRowUpdate` threw an error which was not handled because `onProcessRowUpdateError` is missing.', 'To handle the error pass a callback to the `onProcessRowUpdateError` prop, for example `<DataGrid onProcessRowUpdateError={(error) => ...} />`.', 'For more detail, see https://mui.com/x/react-data-grid/editing/persistence/.'], 'error');
125
125
  }
126
126
  };
127
127
  try {
@@ -1,6 +1,6 @@
1
1
  import { ponyfillGlobal } from '@mui/utils';
2
2
  export const getReleaseInfo = () => {
3
- const releaseInfo = "MTczNjM3NzIwMDAwMA==";
3
+ const releaseInfo = "MTczNjk4MjAwMDAwMA==";
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
@@ -3,7 +3,7 @@ import { GridPrivateApiPremium } from '../../../models/gridApiPremium';
3
3
  import { DataGridPremiumProcessedProps } from '../../../models/dataGridPremiumProps';
4
4
  import { GridAggregationFunction, GridAggregationFunctionDataSource, GridAggregationLookup } from './gridAggregationInterfaces';
5
5
  export declare const createAggregationLookup: ({ apiRef, aggregationFunctions, aggregationRowsScope, getAggregationPosition, isDataSource, }: {
6
- apiRef: React.MutableRefObject<GridPrivateApiPremium>;
6
+ apiRef: React.RefObject<GridPrivateApiPremium>;
7
7
  aggregationFunctions: Record<string, GridAggregationFunction> | Record<string, GridAggregationFunctionDataSource>;
8
8
  aggregationRowsScope: DataGridPremiumProcessedProps["aggregationRowsScope"];
9
9
  getAggregationPosition: DataGridPremiumProcessedProps["getAggregationPosition"];
@@ -28,7 +28,7 @@ interface AddFooterRowsParams {
28
28
  * If `true`, there are some aggregation rules to apply
29
29
  */
30
30
  hasAggregationRule: boolean;
31
- apiRef: React.MutableRefObject<GridPrivateApiPremium>;
31
+ apiRef: React.RefObject<GridPrivateApiPremium>;
32
32
  }
33
33
  /**
34
34
  * Add a footer for each group that has at least one column with an aggregated value.
@@ -39,7 +39,7 @@ export declare const addFooterRows: ({ groupingParams, apiRef, getAggregationPos
39
39
  */
40
40
  export declare const areAggregationRulesEqual: (previousValue: GridAggregationRules | undefined, newValue: GridAggregationRules) => boolean;
41
41
  export declare const getAggregationFunctionLabel: ({ apiRef, aggregationRule, }: {
42
- apiRef: React.MutableRefObject<GridApiPremium>;
42
+ apiRef: React.RefObject<GridApiPremium>;
43
43
  aggregationRule: GridAggregationRule;
44
44
  }) => string;
45
45
  export {};
@@ -3,4 +3,4 @@ import { GridStateInitializer } from '@mui/x-data-grid-pro/internals';
3
3
  import { DataGridPremiumProcessedProps } from '../../../models/dataGridPremiumProps';
4
4
  import { GridPrivateApiPremium } from '../../../models/gridApiPremium';
5
5
  export declare const aggregationStateInitializer: GridStateInitializer<Pick<DataGridPremiumProcessedProps, 'aggregationModel' | 'initialState'>, GridPrivateApiPremium>;
6
- export declare const useGridAggregation: (apiRef: React.MutableRefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "onAggregationModelChange" | "initialState" | "aggregationModel" | "getAggregationPosition" | "aggregationFunctions" | "aggregationRowsScope" | "disableAggregation" | "rowGroupingColumnMode" | "unstable_dataSource">) => void;
6
+ export declare const useGridAggregation: (apiRef: React.RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "onAggregationModelChange" | "initialState" | "aggregationModel" | "getAggregationPosition" | "aggregationFunctions" | "aggregationRowsScope" | "disableAggregation" | "rowGroupingColumnMode" | "unstable_dataSource">) => void;
@@ -1,4 +1,4 @@
1
1
  import * as React from 'react';
2
2
  import { GridPrivateApiPremium } from '../../../models/gridApiPremium';
3
3
  import { DataGridPremiumProcessedProps } from '../../../models/dataGridPremiumProps';
4
- export declare const useGridAggregationPreProcessors: (apiRef: React.MutableRefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "aggregationFunctions" | "disableAggregation" | "getAggregationPosition" | "slotProps" | "slots" | "unstable_dataSource">) => void;
4
+ export declare const useGridAggregationPreProcessors: (apiRef: React.RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "aggregationFunctions" | "disableAggregation" | "getAggregationPosition" | "slotProps" | "slots" | "unstable_dataSource">) => void;
@@ -17,7 +17,7 @@ interface GridColDefWithAggregationWrappers extends GridBaseColDef {
17
17
  */
18
18
  export declare const wrapColumnWithAggregationValue: ({ column, apiRef, aggregationRule, }: {
19
19
  column: GridBaseColDef;
20
- apiRef: React.MutableRefObject<GridApiPremium>;
20
+ apiRef: React.RefObject<GridApiPremium>;
21
21
  aggregationRule: GridAggregationRule;
22
22
  }) => GridBaseColDef;
23
23
  /**
@@ -13,13 +13,13 @@ export interface GridCellSelectionApi {
13
13
  isCellSelected: (id: GridRowId, field: GridColDef['field']) => boolean;
14
14
  /**
15
15
  * Returns an object containing the selection state of the cells.
16
- * The keys of the object correpond to the row IDs.
17
- * The value of each key is another object whose keys are the fields and values are the selection state.
16
+ * The keys of the object correspond to the row IDs.
17
+ * The value of each key is also an object, which has a column field for a key and a boolean value for its selection state.
18
18
  * @returns {GridCellSelectionModel} Object containing the selection state of the cells
19
19
  */
20
20
  getCellSelectionModel: () => GridCellSelectionModel;
21
21
  /**
22
- * Updates the selected cells to be those passed to the `newModel` argument.
22
+ * Updates the cell selection model according to the value passed to the `newModel` argument.
23
23
  * Any cell already selected will be unselected.
24
24
  * @param {GridCellSelectionModel} newModel The cells to select.
25
25
  */
@@ -1,4 +1,4 @@
1
1
  import * as React from 'react';
2
2
  import { GridPrivateApiPremium } from '../../../models/gridApiPremium';
3
3
  import type { DataGridPremiumProcessedProps } from '../../../models/dataGridPremiumProps';
4
- export declare const useGridClipboardImport: (apiRef: React.MutableRefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "pagination" | "paginationMode" | "processRowUpdate" | "onProcessRowUpdateError" | "getRowId" | "onClipboardPasteStart" | "onClipboardPasteEnd" | "splitClipboardPastedText" | "disableClipboardPaste" | "onBeforeClipboardPasteStart">) => void;
4
+ export declare const useGridClipboardImport: (apiRef: React.RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "pagination" | "paginationMode" | "processRowUpdate" | "onProcessRowUpdateError" | "getRowId" | "onClipboardPasteStart" | "onClipboardPasteEnd" | "splitClipboardPastedText" | "disableClipboardPaste" | "onBeforeClipboardPasteStart">) => void;
@@ -129,7 +129,7 @@ class CellValueUpdater {
129
129
  if (onProcessRowUpdateError) {
130
130
  onProcessRowUpdateError(errorThrown);
131
131
  } else if (process.env.NODE_ENV !== 'production') {
132
- (0, _warning.warnOnce)(['MUI X: A call to `processRowUpdate` threw an error which was not handled because `onProcessRowUpdateError` is missing.', 'To handle the error pass a callback to the `onProcessRowUpdateError` prop, for example `<DataGrid onProcessRowUpdateError={(error) => ...} />`.', 'For more detail, see https://mui.com/x/react-data-grid/editing/#server-side-persistence.'], 'error');
132
+ (0, _warning.warnOnce)(['MUI X: A call to `processRowUpdate` threw an error which was not handled because `onProcessRowUpdateError` is missing.', 'To handle the error pass a callback to the `onProcessRowUpdateError` prop, for example `<DataGrid onProcessRowUpdateError={(error) => ...} />`.', 'For more detail, see https://mui.com/x/react-data-grid/editing/persistence/.'], 'error');
133
133
  }
134
134
  };
135
135
  try {
@@ -1,4 +1,4 @@
1
1
  import * as React from 'react';
2
2
  import { GridPrivateApiPremium } from '../../../models/gridApiPremium';
3
3
  import { DataGridPremiumProcessedProps } from '../../../models/dataGridPremiumProps';
4
- export declare const useGridDataSourcePremium: (apiRef: React.MutableRefObject<GridPrivateApiPremium>, props: DataGridPremiumProcessedProps) => void;
4
+ export declare const useGridDataSourcePremium: (apiRef: React.RefObject<GridPrivateApiPremium>, props: DataGridPremiumProcessedProps) => void;
@@ -18,7 +18,7 @@ interface SerializedRow {
18
18
  * actual rendered columns.
19
19
  * The caller of this function MUST call `resetColSpan()` before and after usage.
20
20
  */
21
- export declare const serializeRowUnsafe: (id: GridRowId, columns: GridStateColDef[], apiRef: React.MutableRefObject<GridPrivateApiPremium>, defaultValueOptionsFormulae: {
21
+ export declare const serializeRowUnsafe: (id: GridRowId, columns: GridStateColDef[], apiRef: React.RefObject<GridPrivateApiPremium>, defaultValueOptionsFormulae: {
22
22
  [field: string]: {
23
23
  address: string;
24
24
  };
@@ -53,7 +53,7 @@ interface BuildExcelOptions extends Pick<GridExcelExportOptions, 'exceljsPreProc
53
53
  rowIds: GridRowId[];
54
54
  columnsStyles?: ColumnsStylesInterface;
55
55
  }
56
- export declare function buildExcel(options: BuildExcelOptions, apiRef: React.MutableRefObject<GridPrivateApiPremium>): Promise<Excel.Workbook>;
56
+ export declare function buildExcel(options: BuildExcelOptions, apiRef: React.RefObject<GridPrivateApiPremium>): Promise<Excel.Workbook>;
57
57
  export interface ExcelExportInitEvent {
58
58
  serializedColumns: SerializedColumns;
59
59
  serializedRows: SerializedRow[];
@@ -8,4 +8,4 @@ import { DataGridPremiumProps } from '../../../models/dataGridPremiumProps';
8
8
  * @requires useGridSelection (state)
9
9
  * @requires useGridParamsApi (method)
10
10
  */
11
- export declare const useGridExcelExport: (apiRef: React.MutableRefObject<GridPrivateApiPremium>, props: DataGridPremiumProps) => void;
11
+ export declare const useGridExcelExport: (apiRef: React.RefObject<GridPrivateApiPremium>, props: DataGridPremiumProps) => void;
@@ -25,7 +25,7 @@ interface CreateGroupingColDefMonoCriteriaParams {
25
25
  */
26
26
  export declare const createGroupingColDefForOneGroupingCriteria: ({ columnsLookup, groupedByColDef, groupingCriteria, colDefOverride, strategy, }: CreateGroupingColDefMonoCriteriaParams) => GridColDef;
27
27
  interface CreateGroupingColDefSeveralCriteriaParams {
28
- apiRef: React.MutableRefObject<GridApiPremium>;
28
+ apiRef: React.RefObject<GridApiPremium>;
29
29
  columnsLookup: GridColumnRawLookup;
30
30
  /**
31
31
  * The fields from which we are grouping the rows.
@@ -15,7 +15,7 @@ interface FilterRowTreeFromTreeDataParams {
15
15
  rowTree: GridRowTreeConfig;
16
16
  isRowMatchingFilters: GridAggregatedFilterItemApplier | null;
17
17
  filterModel: GridFilterModel;
18
- apiRef: React.MutableRefObject<GridPrivateApiPremium>;
18
+ apiRef: React.RefObject<GridPrivateApiPremium>;
19
19
  }
20
20
  /**
21
21
  * A leaf is visible if it passed the filter
@@ -26,12 +26,12 @@ interface FilterRowTreeFromTreeDataParams {
26
26
  export declare const filterRowTreeFromGroupingColumns: (params: FilterRowTreeFromTreeDataParams) => Omit<GridFilterState, "filterModel">;
27
27
  export declare const getColDefOverrides: (groupingColDefProp: DataGridPremiumProcessedProps["groupingColDef"], fields: string[], strategy?: RowGroupingStrategy) => import("@mui/x-data-grid-pro").GridGroupingColDefOverride<any> | null | undefined;
28
28
  export declare const mergeStateWithRowGroupingModel: (rowGroupingModel: GridRowGroupingModel) => (state: GridStatePremium) => GridStatePremium;
29
- export declare const setStrategyAvailability: (privateApiRef: React.MutableRefObject<GridPrivateApiPremium>, disableRowGrouping: boolean, dataSource?: GridDataSource) => void;
29
+ export declare const setStrategyAvailability: (privateApiRef: React.RefObject<GridPrivateApiPremium>, disableRowGrouping: boolean, dataSource?: GridDataSource) => void;
30
30
  export declare const getCellGroupingCriteria: ({ row, colDef, groupingRule, apiRef, }: {
31
31
  row: GridRowModel;
32
32
  colDef: GridColDef;
33
33
  groupingRule: GridGroupingRule;
34
- apiRef: React.MutableRefObject<GridPrivateApiPremium>;
34
+ apiRef: React.RefObject<GridPrivateApiPremium>;
35
35
  }) => {
36
36
  key: GridKeyValue | null | undefined;
37
37
  field: string;
@@ -1,4 +1,4 @@
1
1
  import * as React from 'react';
2
2
  import { DataGridPremiumProcessedProps } from '../../../models/dataGridPremiumProps';
3
3
  import { GridPrivateApiPremium } from '../../../models/gridApiPremium';
4
- export declare const useGridDataSourceRowGroupingPreProcessors: (apiRef: React.MutableRefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "disableRowGrouping" | "groupingColDef" | "rowGroupingColumnMode" | "defaultGroupingExpansionDepth" | "isGroupExpandedByDefault" | "unstable_dataSource">) => void;
4
+ export declare const useGridDataSourceRowGroupingPreProcessors: (apiRef: React.RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "disableRowGrouping" | "groupingColDef" | "rowGroupingColumnMode" | "defaultGroupingExpansionDepth" | "isGroupExpandedByDefault" | "unstable_dataSource">) => void;
@@ -8,4 +8,4 @@ export declare const rowGroupingStateInitializer: GridStateInitializer<Pick<Data
8
8
  * @requires useGridRows (state, method) - can be after, async only
9
9
  * @requires useGridParamsApi (method) - can be after, async only
10
10
  */
11
- export declare const useGridRowGrouping: (apiRef: React.MutableRefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "initialState" | "rowGroupingModel" | "onRowGroupingModelChange" | "defaultGroupingExpansionDepth" | "isGroupExpandedByDefault" | "groupingColDef" | "rowGroupingColumnMode" | "disableRowGrouping" | "slotProps" | "slots" | "unstable_dataSource">) => void;
11
+ export declare const useGridRowGrouping: (apiRef: React.RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "initialState" | "rowGroupingModel" | "onRowGroupingModelChange" | "defaultGroupingExpansionDepth" | "isGroupExpandedByDefault" | "groupingColDef" | "rowGroupingColumnMode" | "disableRowGrouping" | "slotProps" | "slots" | "unstable_dataSource">) => void;
@@ -1,4 +1,4 @@
1
1
  import * as React from 'react';
2
2
  import { DataGridPremiumProcessedProps } from '../../../models/dataGridPremiumProps';
3
3
  import { GridPrivateApiPremium } from '../../../models/gridApiPremium';
4
- export declare const useGridRowGroupingPreProcessors: (apiRef: React.MutableRefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "disableRowGrouping" | "groupingColDef" | "rowGroupingColumnMode" | "defaultGroupingExpansionDepth" | "isGroupExpandedByDefault" | "unstable_dataSource">) => void;
4
+ export declare const useGridRowGroupingPreProcessors: (apiRef: React.RefObject<GridPrivateApiPremium>, props: Pick<DataGridPremiumProcessedProps, "disableRowGrouping" | "groupingColDef" | "rowGroupingColumnMode" | "defaultGroupingExpansionDepth" | "isGroupExpandedByDefault" | "unstable_dataSource">) => void;
@@ -1,2 +1,2 @@
1
1
  import { GridApiPremium } from '../../models/gridApiPremium';
2
- export declare const useGridApiContext: () => import("react").MutableRefObject<GridApiPremium>;
2
+ export declare const useGridApiContext: () => import("react").RefObject<GridApiPremium>;
@@ -1,2 +1,2 @@
1
1
  import { GridPrivateApiPremium } from '../../models/gridApiPremium';
2
- export declare const useGridPrivateApiContext: () => import("react").MutableRefObject<GridPrivateApiPremium>;
2
+ export declare const useGridPrivateApiContext: () => import("react").RefObject<GridPrivateApiPremium>;
@@ -8,5 +8,5 @@ import { DataGridPremiumProps } from '../../models/dataGridPremiumProps';
8
8
  * Does not work when used with the `hide` property of `GridColDef`
9
9
  */
10
10
  export declare const useKeepGroupedColumnsHidden: (props: {
11
- apiRef: React.MutableRefObject<GridApi>;
11
+ apiRef: React.RefObject<GridApi>;
12
12
  } & Pick<DataGridPremiumProps, "initialState" | "rowGroupingModel">) => GridInitialStatePremium;
package/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-data-grid-premium v8.0.0-alpha.7
2
+ * @mui/x-data-grid-premium v8.0.0-alpha.8
3
3
  *
4
4
  * @license MUI X Commercial
5
5
  * This source code is licensed under the commercial license found in the
@@ -88,7 +88,7 @@ export interface DataGridPremiumPropsWithoutDefaultValue<R extends GridValidRowM
88
88
  /**
89
89
  * The ref object that allows grid manipulation. Can be instantiated with `useGridApiRef()`.
90
90
  */
91
- apiRef?: React.MutableRefObject<GridApiPremium>;
91
+ apiRef?: React.RefObject<GridApiPremium>;
92
92
  /**
93
93
  * The initial state of the DataGridPremium.
94
94
  * The data in it is set in the state on initialization but isn't controlled.
@@ -1,3 +1,3 @@
1
1
  import { GridValidRowModel, GridColDef, GridKeyValue } from '@mui/x-data-grid-pro';
2
2
  import { GridApiPremium } from './gridApiPremium';
3
- export type GridGroupingValueGetter<R extends GridValidRowModel = GridValidRowModel, TValue = never> = (value: TValue, row: R, column: GridColDef<R>, apiRef: React.MutableRefObject<GridApiPremium>) => GridKeyValue | null | undefined;
3
+ export type GridGroupingValueGetter<R extends GridValidRowModel = GridValidRowModel, TValue = never> = (value: TValue, row: R, column: GridColDef<R>, apiRef: React.RefObject<GridApiPremium>) => GridKeyValue | null | undefined;
@@ -1,3 +1,3 @@
1
1
  import { GridColDef, GridValidRowModel } from '@mui/x-data-grid';
2
2
  import { GridApiPremium } from './gridApiPremium';
3
- export type GridPastedValueParser<R extends GridValidRowModel = GridValidRowModel, V = any, F = V> = (value: string, row: R, column: GridColDef<R, V, F>, apiRef: React.MutableRefObject<GridApiPremium>) => V | undefined;
3
+ export type GridPastedValueParser<R extends GridValidRowModel = GridValidRowModel, V = any, F = V> = (value: string, row: R, column: GridColDef<R, V, F>, apiRef: React.RefObject<GridApiPremium>) => V | undefined;
@@ -4,7 +4,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import { useLicenseVerifier, Watermark } from '@mui/x-license';
7
- import { GridBody, GridFooterPlaceholder, GridHeader, GridRoot, GridContextProvider } from '@mui/x-data-grid-pro';
7
+ import { GridRoot, GridContextProvider } from '@mui/x-data-grid-pro';
8
8
  import { propValidatorsDataGrid, propValidatorsDataGridPro, validateProps } from '@mui/x-data-grid-pro/internals';
9
9
  import { forwardRef } from '@mui/x-internals/forwardRef';
10
10
  import { useDataGridPremiumComponent } from "./useDataGridPremiumComponent.js";
@@ -12,7 +12,7 @@ import { useDataGridPremiumProps } from "./useDataGridPremiumProps.js";
12
12
  import { getReleaseInfo } from "../utils/releaseInfo.js";
13
13
  import { useGridAriaAttributes } from "../hooks/utils/useGridAriaAttributes.js";
14
14
  import { useGridRowAriaAttributes } from "../hooks/features/rows/useGridRowAriaAttributes.js";
15
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
+ import { jsx as _jsx } from "react/jsx-runtime";
16
16
  const configuration = {
17
17
  hooks: {
18
18
  useGridAriaAttributes,
@@ -35,18 +35,16 @@ const DataGridPremiumRaw = forwardRef(function DataGridPremium(inProps, ref) {
35
35
  privateApiRef: privateApiRef,
36
36
  configuration: configuration,
37
37
  props: props,
38
- children: /*#__PURE__*/_jsxs(GridRoot, _extends({
38
+ children: /*#__PURE__*/_jsx(GridRoot, _extends({
39
39
  className: props.className,
40
40
  style: props.style,
41
41
  sx: props.sx
42
42
  }, props.slotProps?.root, {
43
43
  ref: ref,
44
- children: [/*#__PURE__*/_jsx(GridHeader, {}), /*#__PURE__*/_jsx(GridBody, {
45
- children: /*#__PURE__*/_jsx(Watermark, {
46
- packageName: "x-data-grid-premium",
47
- releaseInfo: releaseInfo
48
- })
49
- }), /*#__PURE__*/_jsx(GridFooterPlaceholder, {})]
44
+ children: /*#__PURE__*/_jsx(Watermark, {
45
+ packageName: "x-data-grid-premium",
46
+ releaseInfo: releaseInfo
47
+ })
50
48
  }))
51
49
  });
52
50
  });
@@ -43,6 +43,7 @@ export const useDataGridPremiumComponent = (inputApiRef, props) => {
43
43
  useGridInitializeState(columnPinningStateInitializer, apiRef, props);
44
44
  useGridInitializeState(columnsStateInitializer, apiRef, props);
45
45
  useGridInitializeState(rowPinningStateInitializer, apiRef, props);
46
+ useGridInitializeState(paginationStateInitializer, apiRef, props);
46
47
  useGridInitializeState(rowsStateInitializer, apiRef, props);
47
48
  useGridInitializeState(editingStateInitializer, apiRef, props);
48
49
  useGridInitializeState(focusStateInitializer, apiRef, props);
@@ -53,7 +54,6 @@ export const useDataGridPremiumComponent = (inputApiRef, props) => {
53
54
  useGridInitializeState(densityStateInitializer, apiRef, props);
54
55
  useGridInitializeState(columnReorderStateInitializer, apiRef, props);
55
56
  useGridInitializeState(columnResizeStateInitializer, apiRef, props);
56
- useGridInitializeState(paginationStateInitializer, apiRef, props);
57
57
  useGridInitializeState(rowsMetaStateInitializer, apiRef, props);
58
58
  useGridInitializeState(columnMenuStateInitializer, apiRef, props);
59
59
  useGridInitializeState(columnGroupsStateInitializer, apiRef, props);
@@ -121,7 +121,7 @@ class CellValueUpdater {
121
121
  if (onProcessRowUpdateError) {
122
122
  onProcessRowUpdateError(errorThrown);
123
123
  } else if (process.env.NODE_ENV !== 'production') {
124
- warnOnce(['MUI X: A call to `processRowUpdate` threw an error which was not handled because `onProcessRowUpdateError` is missing.', 'To handle the error pass a callback to the `onProcessRowUpdateError` prop, for example `<DataGrid onProcessRowUpdateError={(error) => ...} />`.', 'For more detail, see https://mui.com/x/react-data-grid/editing/#server-side-persistence.'], 'error');
124
+ warnOnce(['MUI X: A call to `processRowUpdate` threw an error which was not handled because `onProcessRowUpdateError` is missing.', 'To handle the error pass a callback to the `onProcessRowUpdateError` prop, for example `<DataGrid onProcessRowUpdateError={(error) => ...} />`.', 'For more detail, see https://mui.com/x/react-data-grid/editing/persistence/.'], 'error');
125
125
  }
126
126
  };
127
127
  try {
package/modern/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-data-grid-premium v8.0.0-alpha.7
2
+ * @mui/x-data-grid-premium v8.0.0-alpha.8
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 = "MTczNjM3NzIwMDAwMA==";
3
+ const releaseInfo = "MTczNjk4MjAwMDAwMA==";
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": "8.0.0-alpha.7",
3
+ "version": "8.0.0-alpha.8",
4
4
  "description": "The Premium plan edition of the Data Grid Components (MUI X).",
5
5
  "author": "MUI Team",
6
6
  "main": "./index.js",
@@ -40,10 +40,10 @@
40
40
  "exceljs": "^4.4.0",
41
41
  "prop-types": "^15.8.1",
42
42
  "reselect": "^5.1.1",
43
- "@mui/x-data-grid": "8.0.0-alpha.7",
44
- "@mui/x-data-grid-pro": "8.0.0-alpha.7",
45
- "@mui/x-internals": "8.0.0-alpha.7",
46
- "@mui/x-license": "8.0.0-alpha.7"
43
+ "@mui/x-data-grid": "8.0.0-alpha.8",
44
+ "@mui/x-license": "8.0.0-alpha.8",
45
+ "@mui/x-data-grid-pro": "8.0.0-alpha.8",
46
+ "@mui/x-internals": "8.0.0-alpha.8"
47
47
  },
48
48
  "peerDependencies": {
49
49
  "@emotion/react": "^11.9.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 = "MTczNjM3NzIwMDAwMA==";
9
+ const releaseInfo = "MTczNjk4MjAwMDAwMA==";
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