@mui/x-data-grid 9.4.0 → 9.6.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 +251 -0
- package/DataGrid/DataGrid.js +74 -13
- package/DataGrid/DataGrid.mjs +74 -13
- package/colDef/gridColumnTypesRegistry.d.mts +8 -0
- package/colDef/gridColumnTypesRegistry.d.ts +8 -0
- package/colDef/gridColumnTypesRegistry.js +44 -0
- package/colDef/gridColumnTypesRegistry.mjs +34 -0
- package/colDef/gridDefaultColumnTypes.d.mts +1 -1
- package/colDef/gridDefaultColumnTypes.d.ts +1 -1
- package/colDef/gridDefaultColumnTypes.js +11 -23
- package/colDef/gridDefaultColumnTypes.mjs +4 -22
- package/components/GridColumnHeaders.js +1 -1
- package/components/GridColumnHeaders.mjs +1 -1
- package/components/GridColumnUnsortedIcon.js +1 -1
- package/components/GridColumnUnsortedIcon.mjs +1 -1
- package/components/GridFooter.js +1 -1
- package/components/GridFooter.mjs +1 -1
- package/components/GridLoadingOverlay.js +1 -1
- package/components/GridLoadingOverlay.mjs +1 -1
- package/components/GridNoColumnsOverlay.js +1 -1
- package/components/GridNoColumnsOverlay.mjs +1 -1
- package/components/GridNoRowsOverlay.js +1 -1
- package/components/GridNoRowsOverlay.mjs +1 -1
- package/components/GridRow.js +1 -1
- package/components/GridRow.mjs +1 -1
- package/components/GridRowCount.js +1 -1
- package/components/GridRowCount.mjs +1 -1
- package/components/GridRowDragAndDropOverlay.d.mts +1 -1
- package/components/GridRowDragAndDropOverlay.d.ts +1 -1
- package/components/GridSelectedRowCount.js +1 -1
- package/components/GridSelectedRowCount.mjs +1 -1
- package/components/GridShadowScrollArea.js +1 -1
- package/components/GridShadowScrollArea.mjs +1 -1
- package/components/cell/GridActionsCell.js +84 -4
- package/components/cell/GridActionsCell.mjs +84 -4
- package/components/cell/GridActionsCellItem.js +75 -1
- package/components/cell/GridActionsCellItem.mjs +74 -0
- package/components/cell/GridBooleanCell.js +1 -1
- package/components/cell/GridBooleanCell.mjs +1 -1
- package/components/cell/GridCell.js +1 -1
- package/components/cell/GridCell.mjs +1 -1
- package/components/cell/GridEditBooleanCell.js +1 -1
- package/components/cell/GridEditBooleanCell.mjs +1 -1
- package/components/cell/GridEditDateCell.js +1 -1
- package/components/cell/GridEditDateCell.mjs +1 -1
- package/components/cell/GridEditInputCell.js +68 -0
- package/components/cell/GridEditInputCell.mjs +68 -0
- package/components/cell/GridEditLongTextCell.d.mts +3 -0
- package/components/cell/GridEditLongTextCell.d.ts +3 -0
- package/components/cell/GridEditLongTextCell.js +141 -0
- package/components/cell/GridEditLongTextCell.mjs +141 -0
- package/components/cell/GridEditSingleSelectCell.js +1 -1
- package/components/cell/GridEditSingleSelectCell.mjs +1 -1
- package/components/cell/GridLongTextCell.d.mts +3 -0
- package/components/cell/GridLongTextCell.d.ts +3 -0
- package/components/cell/GridLongTextCell.js +68 -0
- package/components/cell/GridLongTextCell.mjs +68 -0
- package/components/cell/GridSkeletonCell.js +3 -2
- package/components/cell/GridSkeletonCell.mjs +3 -2
- package/components/columnHeaders/GridColumnHeaderFilterIconButton.js +2 -2
- package/components/columnHeaders/GridColumnHeaderFilterIconButton.mjs +2 -2
- package/components/columnHeaders/GridColumnHeaderItem.js +1 -1
- package/components/columnHeaders/GridColumnHeaderItem.mjs +1 -1
- package/components/columnHeaders/GridColumnHeaderSeparator.js +1 -1
- package/components/columnHeaders/GridColumnHeaderSeparator.mjs +1 -1
- package/components/columnHeaders/GridColumnHeaderSortIcon.js +1 -1
- package/components/columnHeaders/GridColumnHeaderSortIcon.mjs +1 -1
- package/components/columnHeaders/GridColumnHeaderTitle.js +1 -1
- package/components/columnHeaders/GridColumnHeaderTitle.mjs +1 -1
- package/components/columnSelection/GridCellCheckboxRenderer.js +1 -1
- package/components/columnSelection/GridCellCheckboxRenderer.mjs +1 -1
- package/components/columnSelection/GridHeaderCheckbox.js +1 -1
- package/components/columnSelection/GridHeaderCheckbox.mjs +1 -1
- package/components/columnSelection/GridRowCheckbox.js +1 -1
- package/components/columnSelection/GridRowCheckbox.mjs +1 -1
- package/components/columnsManagement/GridColumnsManagement.js +1 -1
- package/components/columnsManagement/GridColumnsManagement.mjs +1 -1
- package/components/columnsPanel/ColumnsPanelTrigger.js +1 -1
- package/components/columnsPanel/ColumnsPanelTrigger.mjs +1 -1
- package/components/containers/GridFooterContainer.js +1 -1
- package/components/containers/GridFooterContainer.mjs +1 -1
- package/components/containers/GridOverlay.js +1 -1
- package/components/containers/GridOverlay.mjs +1 -1
- package/components/containers/GridRoot.js +1 -1
- package/components/containers/GridRoot.mjs +1 -1
- package/components/containers/GridRootStyles.js +32 -2
- package/components/containers/GridRootStyles.mjs +32 -2
- package/components/containers/GridToolbarContainer.js +1 -1
- package/components/containers/GridToolbarContainer.mjs +1 -1
- package/components/export/ExportCsv.js +1 -1
- package/components/export/ExportCsv.mjs +1 -1
- package/components/export/ExportPrint.js +1 -1
- package/components/export/ExportPrint.mjs +1 -1
- package/components/filterPanel/FilterPanelTrigger.js +1 -1
- package/components/filterPanel/FilterPanelTrigger.mjs +1 -1
- package/components/menu/GridMenu.js +1 -1
- package/components/menu/GridMenu.mjs +1 -1
- package/components/menu/columnMenu/GridColumnHeaderMenu.js +1 -1
- package/components/menu/columnMenu/GridColumnHeaderMenu.mjs +1 -1
- package/components/menu/columnMenu/GridColumnMenu.js +2 -2
- package/components/menu/columnMenu/GridColumnMenu.mjs +2 -2
- package/components/menu/columnMenu/GridColumnMenuContainer.js +1 -1
- package/components/menu/columnMenu/GridColumnMenuContainer.mjs +1 -1
- package/components/menu/columnMenu/menuItems/GridColumnMenuColumnsItem.js +1 -1
- package/components/menu/columnMenu/menuItems/GridColumnMenuColumnsItem.mjs +1 -1
- package/components/menu/columnMenu/menuItems/GridColumnMenuFilterItem.js +1 -1
- package/components/menu/columnMenu/menuItems/GridColumnMenuFilterItem.mjs +1 -1
- package/components/menu/columnMenu/menuItems/GridColumnMenuHideItem.js +1 -1
- package/components/menu/columnMenu/menuItems/GridColumnMenuHideItem.mjs +1 -1
- package/components/menu/columnMenu/menuItems/GridColumnMenuManageItem.js +1 -1
- package/components/menu/columnMenu/menuItems/GridColumnMenuManageItem.mjs +1 -1
- package/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +1 -1
- package/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.mjs +1 -1
- package/components/panel/GridPanel.js +1 -1
- package/components/panel/GridPanel.mjs +1 -1
- package/components/panel/GridPanelContent.js +1 -1
- package/components/panel/GridPanelContent.mjs +1 -1
- package/components/panel/GridPanelFooter.js +1 -1
- package/components/panel/GridPanelFooter.mjs +1 -1
- package/components/panel/GridPanelHeader.js +1 -1
- package/components/panel/GridPanelHeader.mjs +1 -1
- package/components/panel/filterPanel/GridFilterForm.js +1 -1
- package/components/panel/filterPanel/GridFilterForm.mjs +1 -1
- package/components/panel/filterPanel/GridFilterInputBoolean.js +1 -1
- package/components/panel/filterPanel/GridFilterInputBoolean.mjs +1 -1
- package/components/panel/filterPanel/GridFilterInputDate.js +1 -1
- package/components/panel/filterPanel/GridFilterInputDate.mjs +1 -1
- package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +1 -1
- package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.mjs +1 -1
- package/components/panel/filterPanel/GridFilterInputMultipleValue.js +1 -1
- package/components/panel/filterPanel/GridFilterInputMultipleValue.mjs +1 -1
- package/components/panel/filterPanel/GridFilterInputSingleSelect.js +3 -5
- package/components/panel/filterPanel/GridFilterInputSingleSelect.mjs +3 -5
- package/components/panel/filterPanel/GridFilterInputValue.js +1 -1
- package/components/panel/filterPanel/GridFilterInputValue.mjs +1 -1
- package/components/panel/filterPanel/GridFilterPanel.js +1 -1
- package/components/panel/filterPanel/GridFilterPanel.mjs +1 -1
- package/components/panel/filterPanel/filterPanelUtils.d.mts +3 -2
- package/components/panel/filterPanel/filterPanelUtils.d.ts +3 -2
- package/components/panel/filterPanel/filterPanelUtils.js +4 -0
- package/components/panel/filterPanel/filterPanelUtils.mjs +3 -0
- package/components/quickFilter/QuickFilter.js +1 -1
- package/components/quickFilter/QuickFilter.mjs +1 -1
- package/components/quickFilter/QuickFilterClear.js +1 -1
- package/components/quickFilter/QuickFilterClear.mjs +1 -1
- package/components/quickFilter/QuickFilterControl.js +1 -1
- package/components/quickFilter/QuickFilterControl.mjs +1 -1
- package/components/quickFilter/QuickFilterTrigger.js +1 -1
- package/components/quickFilter/QuickFilterTrigger.mjs +1 -1
- package/components/toolbar/GridToolbar.js +1 -1
- package/components/toolbar/GridToolbar.mjs +1 -1
- package/components/toolbar/GridToolbarColumnsButton.js +1 -1
- package/components/toolbar/GridToolbarColumnsButton.mjs +1 -1
- package/components/toolbar/GridToolbarDensitySelector.js +1 -1
- package/components/toolbar/GridToolbarDensitySelector.mjs +1 -1
- package/components/toolbar/GridToolbarExport.js +3 -3
- package/components/toolbar/GridToolbarExport.mjs +3 -3
- package/components/toolbar/GridToolbarExportContainer.js +1 -1
- package/components/toolbar/GridToolbarExportContainer.mjs +1 -1
- package/components/toolbar/GridToolbarFilterButton.js +1 -1
- package/components/toolbar/GridToolbarFilterButton.mjs +1 -1
- package/components/toolbar/GridToolbarQuickFilter.js +1 -1
- package/components/toolbar/GridToolbarQuickFilter.mjs +1 -1
- package/components/toolbarV8/GridToolbar.js +8 -3
- package/components/toolbarV8/GridToolbar.mjs +8 -3
- package/components/toolbarV8/Toolbar.js +1 -1
- package/components/toolbarV8/Toolbar.mjs +1 -1
- package/components/toolbarV8/ToolbarButton.js +1 -1
- package/components/toolbarV8/ToolbarButton.mjs +1 -1
- package/components/virtualization/GridVirtualScrollbar.js +8 -1
- package/components/virtualization/GridVirtualScrollbar.mjs +8 -1
- package/components/virtualization/GridVirtualScroller.js +12 -0
- package/components/virtualization/GridVirtualScroller.mjs +12 -0
- package/constants/cssVariables.d.mts +3 -0
- package/constants/cssVariables.d.ts +3 -0
- package/constants/cssVariables.js +2 -1
- package/constants/cssVariables.mjs +2 -1
- package/constants/gridClasses.d.mts +48 -0
- package/constants/gridClasses.d.ts +48 -0
- package/constants/gridClasses.js +1 -1
- package/constants/gridClasses.mjs +1 -1
- package/hooks/core/useGridProps.js +5 -3
- package/hooks/core/useGridProps.mjs +5 -3
- package/hooks/features/columns/gridColumnsUtils.js +18 -10
- package/hooks/features/columns/gridColumnsUtils.mjs +19 -11
- package/hooks/features/columns/useGridColumns.js +11 -0
- package/hooks/features/columns/useGridColumns.mjs +11 -0
- package/hooks/features/dataSource/useGridDataSourceBase.js +2 -2
- package/hooks/features/dataSource/useGridDataSourceBase.mjs +2 -2
- package/hooks/features/editing/useGridCellEditing.js +1 -1
- package/hooks/features/editing/useGridCellEditing.mjs +1 -1
- package/hooks/features/editing/useGridRowEditing.js +1 -1
- package/hooks/features/editing/useGridRowEditing.mjs +1 -1
- package/hooks/features/export/serializers/csvSerializer.js +3 -1
- package/hooks/features/export/serializers/csvSerializer.mjs +3 -1
- package/hooks/features/filter/gridFilterUtils.js +5 -3
- package/hooks/features/filter/gridFilterUtils.mjs +5 -3
- package/hooks/features/listView/useGridListView.js +1 -1
- package/hooks/features/listView/useGridListView.mjs +1 -1
- package/hooks/features/sorting/gridSortingUtils.js +3 -1
- package/hooks/features/sorting/gridSortingUtils.mjs +3 -1
- package/hooks/utils/useGridSelector.js +27 -24
- package/hooks/utils/useGridSelector.mjs +26 -24
- package/index.js +1 -1
- package/index.mjs +1 -1
- package/internals/index.d.mts +9 -4
- package/internals/index.d.ts +9 -4
- package/internals/index.js +62 -2
- package/internals/index.mjs +8 -4
- package/internals/utils/propValidation.js +3 -0
- package/internals/utils/propValidation.mjs +3 -0
- package/material/augmentation.d.mts +4 -0
- package/material/augmentation.d.ts +4 -0
- package/material/index.js +42 -26
- package/material/index.mjs +42 -26
- package/material/variables.js +2 -1
- package/material/variables.mjs +2 -1
- package/models/colDef/gridColDef.d.mts +35 -3
- package/models/colDef/gridColDef.d.ts +35 -3
- package/models/colDef/gridColType.d.mts +1 -0
- package/models/colDef/gridColType.d.ts +1 -0
- package/models/colDef/gridColumnTypesRecord.d.mts +1 -1
- package/models/colDef/gridColumnTypesRecord.d.ts +1 -1
- package/models/colDef/index.d.mts +1 -1
- package/models/colDef/index.d.ts +1 -1
- package/models/gridBaseSlots.d.mts +46 -0
- package/models/gridBaseSlots.d.ts +46 -0
- package/models/gridSlotsComponent.d.mts +5 -0
- package/models/gridSlotsComponent.d.ts +5 -0
- package/models/gridSlotsComponentsProps.d.mts +3 -1
- package/models/gridSlotsComponentsProps.d.ts +3 -1
- package/models/gridStateCommunity.d.mts +1 -1
- package/models/gridStateCommunity.d.ts +1 -1
- package/package.json +7 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,256 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 9.6.0
|
|
4
|
+
|
|
5
|
+
_Jun 18, 2026_
|
|
6
|
+
|
|
7
|
+
We'd like to extend a big thank you to the 17 contributors who made this release possible. Here are some highlights ✨:
|
|
8
|
+
|
|
9
|
+
- 📊 New features for the radial bar charts, like percentage min radius and disabling tick labels.
|
|
10
|
+
|
|
11
|
+
Special thanks go out to these community members for their valuable contributions:
|
|
12
|
+
@adamowski10, @Anexus5919, @Morteza-hp, @mustafajw07, @TargiX
|
|
13
|
+
|
|
14
|
+
The following team members contributed to this release:
|
|
15
|
+
@alexfauquette, @arminmeh, @brijeshb42, @cherniavskii, @hasdfa, @Janpot, @JCQuintas, @michelengelen, @noraleonte, @oliviertassinari, @rita-codes, @sai6855
|
|
16
|
+
|
|
17
|
+
### Data Grid
|
|
18
|
+
|
|
19
|
+
#### `@mui/x-data-grid@9.6.0`
|
|
20
|
+
|
|
21
|
+
- [DataGrid] Define `overflowAnchor` style at the right element (#22849) @arminmeh
|
|
22
|
+
- [DataGrid] Fix scrollbars not showing up on scroll on iOS (#22832) @cherniavskii
|
|
23
|
+
|
|
24
|
+
#### `@mui/x-data-grid-pro@9.6.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
25
|
+
|
|
26
|
+
Same changes as in `@mui/x-data-grid@9.6.0`, plus:
|
|
27
|
+
|
|
28
|
+
- [DataGridPro] Prevent incorrect row range capping on the first page with known `rowCount` (#22808) @michelengelen
|
|
29
|
+
|
|
30
|
+
#### `@mui/x-data-grid-premium@9.6.0` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
31
|
+
|
|
32
|
+
Same changes as in `@mui/x-data-grid-pro@9.6.0`.
|
|
33
|
+
|
|
34
|
+
### Date and Time Pickers
|
|
35
|
+
|
|
36
|
+
#### `@mui/x-date-pickers@9.6.0`
|
|
37
|
+
|
|
38
|
+
- [pickers] Fix `AdapterMomentHijri.getDaysInMonth` returning the Gregorian month length (#22774) @Anexus5919
|
|
39
|
+
- [l10n] Improve Persian (fa-IR) locale (#22454) @Morteza-hp
|
|
40
|
+
|
|
41
|
+
#### `@mui/x-date-pickers-pro@9.6.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
42
|
+
|
|
43
|
+
Same changes as in `@mui/x-date-pickers@9.6.0`.
|
|
44
|
+
|
|
45
|
+
### Charts
|
|
46
|
+
|
|
47
|
+
#### `@mui/x-charts@9.6.0`
|
|
48
|
+
|
|
49
|
+
- [charts] Add `disableTickLabel` prop to radial axes (#22801) @JCQuintas
|
|
50
|
+
- [charts] Fix bug when `min` is in axis domain (#22827) @alexfauquette
|
|
51
|
+
- [charts] Fix wheel zoom not centering on cursor position (#22811) @JCQuintas
|
|
52
|
+
- [charts] Remove zoom gesture registration from community package (#22753) @sai6855
|
|
53
|
+
- [charts] Support percentage values for radial axis `minRadius`/`maxRadius` (#22803) @JCQuintas
|
|
54
|
+
- [charts] Support `unknownColor` in color scale (#22813) @alexfauquette
|
|
55
|
+
- [charts] Document click listener for scatter composition (#22809) @sai6855
|
|
56
|
+
|
|
57
|
+
#### `@mui/x-charts-pro@9.6.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
58
|
+
|
|
59
|
+
Same changes as in `@mui/x-charts@9.6.0`.
|
|
60
|
+
|
|
61
|
+
#### `@mui/x-charts-premium@9.6.0` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
62
|
+
|
|
63
|
+
Same changes as in `@mui/x-charts-pro@9.6.0`, plus:
|
|
64
|
+
|
|
65
|
+
- [charts-premium] Add `geoFeatureKey` to transform features identifier (#22848) @alexfauquette
|
|
66
|
+
- [charts-premium] Allow to remove Antartica (#22815) @alexfauquette
|
|
67
|
+
- [charts-premium] Regenerate `ScatterPlotPremium` `propTypes` (#22829) @rita-codes
|
|
68
|
+
- [charts-premium] Support maps tooltip positioned on items (#22648) @alexfauquette
|
|
69
|
+
- [docs] Show how to export maps (#22837) @alexfauquette
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
### Tree View
|
|
73
|
+
|
|
74
|
+
#### `@mui/x-tree-view@9.6.0`
|
|
75
|
+
|
|
76
|
+
Internal changes.
|
|
77
|
+
|
|
78
|
+
#### `@mui/x-tree-view-pro@9.6.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
79
|
+
|
|
80
|
+
Same changes as in `@mui/x-tree-view@9.6.0`.
|
|
81
|
+
|
|
82
|
+
### Scheduler
|
|
83
|
+
|
|
84
|
+
#### `@mui/x-scheduler@9.0.0-beta.2`
|
|
85
|
+
|
|
86
|
+
- [scheduler] Add dispose lifecycle to `SchedulerLazyLoadingPlugin` (#22532) @rita-codes
|
|
87
|
+
- [scheduler] Add responsive mobile week view and responsive typography (#22593) @noraleonte
|
|
88
|
+
- [scheduler] Add stable weekday token to `recurrenceWeeklyPresetLabel` (#22733) @mustafajw07
|
|
89
|
+
- [scheduler] Create accessibility documentation section (#22557) @mustafajw07
|
|
90
|
+
- [scheduler] Decouple `MonthViewProps` from day time grid props (#22802) @mustafajw07
|
|
91
|
+
- [scheduler] Export missing public scheduler types (#22785) @mustafajw07
|
|
92
|
+
- [scheduler] Fix JSDoc defaults and improve public type readability (#22784) @mustafajw07
|
|
93
|
+
- [scheduler] Fix `aria-labelledby` on events referencing non-existent header IDs (#22778) @rita-codes
|
|
94
|
+
- [scheduler] Move `EventCalendarStyledContext` to internals (#22787) @mustafajw07
|
|
95
|
+
- [scheduler] Normalize all-day recurring occurrences to whole days (#22792) @Anexus5919
|
|
96
|
+
- [scheduler] Recalculate `DayTimeGrid` `hasScroll` on container resize (#22780) @Anexus5919
|
|
97
|
+
- [scheduler] Recompute `nowUpdatedEveryMinute` only on timezone change (#22793) @Anexus5919
|
|
98
|
+
- [scheduler] Register auto-scroll once instead of on every render (#22794) @Anexus5919
|
|
99
|
+
- [scheduler] Remove duplicate dividers in the day/time grid (#22795) @Anexus5919
|
|
100
|
+
- [scheduler] Remove unused `--has-scroll` CSS variable from `DayTimeGrid` (#22799) @Anexus5919
|
|
101
|
+
- [scheduler] Remove vestigial async from internal drop handler (#22781) @mustafajw07
|
|
102
|
+
- [scheduler] Return a primitive key from the Calendar lazy-loading selector (#22791) @Anexus5919
|
|
103
|
+
- [scheduler] Throw on invalid event dates instead of emitting `NaN` timestamps (#22740) @rita-codes
|
|
104
|
+
- [scheduler] Tighten `StandaloneEventProps` data typing (#22796) @mustafajw07
|
|
105
|
+
- [scheduler] Update feedback banner to say beta instead of alpha (#22804) @rita-codes
|
|
106
|
+
- [scheduler] Use `@base-ui` `generateId` for event ids in `createEventModel` (#22788) @rita-codes
|
|
107
|
+
- [scheduler] Clear clipboard after pasting a cut event (#22773) @Anexus5919
|
|
108
|
+
- [scheduler] Show drag placeholder when re-entering the same position (#22775) @Anexus5919
|
|
109
|
+
- [scheduler] Validate missing and duplicate event ids (#22790) @Anexus5919
|
|
110
|
+
- [l10n] Improve Polish (pl-PL) locale (#22612) @adamowski10
|
|
111
|
+
|
|
112
|
+
#### `@mui/x-scheduler-premium@9.0.0-beta.2` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
113
|
+
|
|
114
|
+
Same changes as in `@mui/x-scheduler@9.0.0-beta.2`, plus:
|
|
115
|
+
|
|
116
|
+
- [scheduler-premium] Expose premium model types through public API (#22798) @mustafajw07
|
|
117
|
+
- [scheduler-premium] Remove non-functional `onPreferencesChange` prop from `EventTimelinePremium` (#22777) @rita-codes
|
|
118
|
+
- [scheduler-premium] Validate the `FREQ` value in `parseRRule`] (#22786) @rita-codes
|
|
119
|
+
|
|
120
|
+
### Codemod
|
|
121
|
+
|
|
122
|
+
#### `@mui/x-codemod@9.6.0`
|
|
123
|
+
|
|
124
|
+
Internal changes.
|
|
125
|
+
|
|
126
|
+
### Docs
|
|
127
|
+
|
|
128
|
+
- [docs] Fix link-check build timeout by disabling serve directory listing (#22836) @Janpot
|
|
129
|
+
- [docs] Show how to export maps (#22837) @alexfauquette
|
|
130
|
+
- [docs] Add radial bar overview demo with custom overlays (#22776) @JCQuintas
|
|
131
|
+
- [docs] Add weather composition demo (#22723) @TargiX
|
|
132
|
+
- [docs] Add docs overview gallery and playground (#22488) @hasdfa
|
|
133
|
+
- [docs] Clarify 'Scrolling without render gaps' (#22629) @oliviertassinari
|
|
134
|
+
- [docs] Fix typo in release instructions (#22864) @brijeshb42
|
|
135
|
+
|
|
136
|
+
### Core
|
|
137
|
+
|
|
138
|
+
- [code-infra] Fix lint issues (#22757) @brijeshb42
|
|
139
|
+
- [code-infra] Fix remaining Dependabot security alerts (#22761) @Janpot
|
|
140
|
+
- [code-infra] Remove release:build from docs:build script (#22852) @brijeshb42
|
|
141
|
+
- [code-infra] Unpin `@mui/utils` version to allow dedupe (#22828) @mustafajw07
|
|
142
|
+
- [docs-infra] Cap Netlify Next.js build parallelism to avoid OOM (#22847) @Janpot
|
|
143
|
+
- [docs-infra] Remove i18n codebase (#22591) @brijeshb42
|
|
144
|
+
- [internal] Fix failing React 18 unit tests (#22846) @brijeshb42
|
|
145
|
+
|
|
146
|
+
### Miscellaneous
|
|
147
|
+
|
|
148
|
+
- [core] Add remove-proptypes markers to generated `propTypes` (#22850) @JCQuintas
|
|
149
|
+
- [core] Bump vitest packages to 4.1.8 to fix browser-test version skew (#22845) @Janpot
|
|
150
|
+
- [core] Reduce e2e build concurrency to avoid OOM (#22843) @Janpot
|
|
151
|
+
- [core] Strip proptypes from Production bundles (#22750) @sai6855
|
|
152
|
+
- [test] Wait for `GridToolbarCustom` rows before screenshot (#22844) @Janpot
|
|
153
|
+
|
|
154
|
+
## 9.5.0
|
|
155
|
+
|
|
156
|
+
_Jun 11, 2026_
|
|
157
|
+
|
|
158
|
+
We'd like to extend a big thank you to the 9 contributors who made this release possible. Here are some highlights ✨:
|
|
159
|
+
|
|
160
|
+
- 🎁 New [`multiSelect` column type for Data Grid Pro](https://mui.com/x/react-data-grid/column-definition/#MultiSelectColumn)
|
|
161
|
+
- 🚀 New [renderer="svg-progressive"](https://mui.com/x/react-charts/scatter/#progressive-renderer) paints scatter points in batched frames so large datasets render smoothly without blocking the main thread.
|
|
162
|
+
- 🐞 Bugfixes
|
|
163
|
+
- 📚 Documentation improvements
|
|
164
|
+
|
|
165
|
+
Special thanks go out to community members @mustafajw07 and @Anexus5919 for their valuable contribution.
|
|
166
|
+
|
|
167
|
+
The following team members contributed to this release:
|
|
168
|
+
@alexfauquette, @JCQuintas, @rita-codes, @rluzists1, @sai6855, @siriwatknp, @arminmeh, @brijeshb42
|
|
169
|
+
|
|
170
|
+
### Data Grid
|
|
171
|
+
|
|
172
|
+
#### `@mui/x-data-grid@9.5.0`
|
|
173
|
+
|
|
174
|
+
- [DataGrid] Restrict warning messages to non-production environments in various components (#22461) @sai6855
|
|
175
|
+
- [DataGrid] Prevent React state update before mount (#22374) @arminmeh
|
|
176
|
+
|
|
177
|
+
#### `@mui/x-data-grid-pro@9.5.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
178
|
+
|
|
179
|
+
Same changes as in `@mui/x-data-grid@9.5.0`, plus:
|
|
180
|
+
|
|
181
|
+
- [DataGridPro] Add new `multiSelect` column type (#21157) @siriwatknp
|
|
182
|
+
|
|
183
|
+
#### `@mui/x-data-grid-premium@9.5.0` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
184
|
+
|
|
185
|
+
Same changes as in `@mui/x-data-grid-pro@9.5.0`.
|
|
186
|
+
|
|
187
|
+
### Date and Time Pickers
|
|
188
|
+
|
|
189
|
+
#### `@mui/x-date-pickers@9.5.0`
|
|
190
|
+
|
|
191
|
+
- [pickers] Fix missing export of `th-TH` (#22703) @alexfauquette
|
|
192
|
+
|
|
193
|
+
#### `@mui/x-date-pickers-pro@9.5.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
194
|
+
|
|
195
|
+
Same changes as in `@mui/x-date-pickers@9.5.0`.
|
|
196
|
+
|
|
197
|
+
### Charts
|
|
198
|
+
|
|
199
|
+
#### `@mui/x-charts@9.5.0`
|
|
200
|
+
|
|
201
|
+
- [charts] Add `FocusedBar` component to `BarScatterComposition` demo (#22704) @sai6855
|
|
202
|
+
- [charts] Add dedicated Bubble Chart documentation page (#22688) @mustafajw07
|
|
203
|
+
- [charts] Add progressive scatter renderer (#22518) @JCQuintas
|
|
204
|
+
- [charts] Avoid full axis pipeline rebuild on resize (#22695) @JCQuintas
|
|
205
|
+
- [charts] Document focus indicator in composition page (#22712) @JCQuintas
|
|
206
|
+
- [charts] Fix `ChartsTooltip` `container` and `disablePortal` props being ignored (#22690) @JCQuintas
|
|
207
|
+
- [charts] Make ordinal scales O(1) to copy and re-range (#22691) @JCQuintas
|
|
208
|
+
- [charts] Stabilize WebGL bar rendering at sub-pixel widths (#22678) @JCQuintas
|
|
209
|
+
- [charts] Use the series config to define value types (#22693) @sai6855
|
|
210
|
+
- [charts] Decouple interaction hook from the cartesian zoom (#22708) @alexfauquette
|
|
211
|
+
|
|
212
|
+
#### `@mui/x-charts-pro@9.5.0` [](https://mui.com/r/x-pro-svg-link 'Pro plan')
|
|
213
|
+
|
|
214
|
+
Same changes as in `@mui/x-charts@9.5.0`, plus:
|
|
215
|
+
|
|
216
|
+
- [charts-pro] Add missing focus highlight (#22689) @alexfauquette
|
|
217
|
+
|
|
218
|
+
#### `@mui/x-charts-premium@9.5.0` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
219
|
+
|
|
220
|
+
Same changes as in `@mui/x-charts-pro@9.5.0`, plus:
|
|
221
|
+
|
|
222
|
+
- [charts-premium] Set `Heatmap` WebGL render as stable (#22665) @alexfauquette
|
|
223
|
+
- [charts-premium] Stabilize candlestick charts (#22666) @alexfauquette
|
|
224
|
+
- [charts-premium] Stabilize the radial charts (#22655) @alexfauquette
|
|
225
|
+
|
|
226
|
+
### Scheduler
|
|
227
|
+
|
|
228
|
+
#### `@mui/x-scheduler@9.0.0-beta.1`
|
|
229
|
+
|
|
230
|
+
Internal changes.
|
|
231
|
+
|
|
232
|
+
#### `@mui/x-scheduler-premium@9.0.0-beta.1` [](https://mui.com/r/x-premium-svg-link 'Premium plan')
|
|
233
|
+
|
|
234
|
+
Same changes as in `@mui/x-scheduler@9.0.0-beta.1`, plus:
|
|
235
|
+
|
|
236
|
+
- [scheduler] Remove dead CSS variable writes in `EventTimelinePremiumContent` (#22720) @rita-codes
|
|
237
|
+
- [scheduler] Show scope dialog when deleting a recurring event (#22552) @Anexus5919
|
|
238
|
+
|
|
239
|
+
### Core
|
|
240
|
+
|
|
241
|
+
- [docs-infra] Fix immutable cache headers for `/\_next/static` assets (#22747) @brijeshb42
|
|
242
|
+
- [docs-infra] Prefix `/\_next/static` cache header rule with `/x` basePath (#22748) @brijeshb42
|
|
243
|
+
- [code-infra] Update dependencies to resolve Dependabot security alerts (#22714) @Janpot
|
|
244
|
+
|
|
245
|
+
### Docs
|
|
246
|
+
|
|
247
|
+
- [docs] Fix broken links checker crashing on 404 known-targets fetch (#22707) @sai6855
|
|
248
|
+
- [docs] Fix country data (#22716) @alexfauquette
|
|
249
|
+
|
|
250
|
+
### Miscellaneous
|
|
251
|
+
|
|
252
|
+
- [legal] Update EULA links in docs (#22717) @rluzists1
|
|
253
|
+
|
|
3
254
|
## 9.4.0
|
|
4
255
|
|
|
5
256
|
<!-- generated comparing v9.3.0..master -->
|
package/DataGrid/DataGrid.js
CHANGED
|
@@ -66,7 +66,7 @@ if (process.env.NODE_ENV !== "production") DataGridRaw.displayName = "DataGridRa
|
|
|
66
66
|
*/
|
|
67
67
|
const DataGrid = exports.DataGrid = /*#__PURE__*/React.memo((0, _forwardRef.forwardRef)(DataGridRaw));
|
|
68
68
|
if (process.env.NODE_ENV !== "production") DataGrid.displayName = "DataGrid";
|
|
69
|
-
DataGridRaw.propTypes = {
|
|
69
|
+
DataGridRaw.propTypes /* remove-proptypes */ = {
|
|
70
70
|
// ----------------------------- Warning --------------------------------
|
|
71
71
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
72
72
|
// | To update them edit the TypeScript types and run "pnpm proptypes" |
|
|
@@ -86,13 +86,11 @@ DataGridRaw.propTypes = {
|
|
|
86
86
|
*/
|
|
87
87
|
'aria-labelledby': _propTypes.default.string,
|
|
88
88
|
/**
|
|
89
|
-
* If `true`, the Data Grid height is dynamic and
|
|
89
|
+
* If `true`, the Data Grid height is dynamic and takes as much space as it needs to display all rows.
|
|
90
|
+
* Use it instead of a flex parent container approach, if:
|
|
91
|
+
* - you don't need to set a minimum or maximum height for the Data Grid
|
|
92
|
+
* - you want to avoid the scrollbar flickering when the content changes
|
|
90
93
|
* @default false
|
|
91
|
-
* @deprecated Use flex parent container instead: https://mui.com/x/react-data-grid/layout/#flex-parent-container
|
|
92
|
-
* @example
|
|
93
|
-
* <div style={{ display: 'flex', flexDirection: 'column' }}>
|
|
94
|
-
* <DataGrid />
|
|
95
|
-
* </div>
|
|
96
94
|
*/
|
|
97
95
|
autoHeight: _propTypes.default.bool,
|
|
98
96
|
/**
|
|
@@ -112,6 +110,7 @@ DataGridRaw.propTypes = {
|
|
|
112
110
|
columns: _propTypes.default.arrayOf(_propTypes.default.string),
|
|
113
111
|
disableColumnVirtualization: _propTypes.default.bool,
|
|
114
112
|
expand: _propTypes.default.bool,
|
|
113
|
+
includeHeaderFilters: _propTypes.default.bool,
|
|
115
114
|
includeHeaders: _propTypes.default.bool,
|
|
116
115
|
includeOutliers: _propTypes.default.bool,
|
|
117
116
|
outliersFactor: _propTypes.default.number
|
|
@@ -120,15 +119,68 @@ DataGridRaw.propTypes = {
|
|
|
120
119
|
* Controls the modes of the cells.
|
|
121
120
|
*/
|
|
122
121
|
cellModesModel: _propTypes.default.object,
|
|
122
|
+
/**
|
|
123
|
+
* Definition of the column rendered when the `checkboxSelection` prop is enabled.
|
|
124
|
+
*
|
|
125
|
+
* @warning
|
|
126
|
+
* Be careful when overriding `renderHeader` or `renderCell` in the `checkboxColDef` prop.
|
|
127
|
+
* The default implementation of these properties includes the logic for selecting all rows and selecting a single row, respectively.
|
|
128
|
+
* Overriding them without providing the same functionality will break the row selection.
|
|
129
|
+
*/
|
|
130
|
+
checkboxColDef: _propTypes.default.shape({
|
|
131
|
+
align: _propTypes.default.oneOf(['center', 'left', 'right']),
|
|
132
|
+
cellClassName: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.string]),
|
|
133
|
+
colSpan: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.number]),
|
|
134
|
+
description: _propTypes.default.string,
|
|
135
|
+
disableColumnMenu: _propTypes.default.bool,
|
|
136
|
+
disableExport: _propTypes.default.bool,
|
|
137
|
+
disableReorder: _propTypes.default.bool,
|
|
138
|
+
display: _propTypes.default.oneOf(['flex', 'text']),
|
|
139
|
+
editable: _propTypes.default.bool,
|
|
140
|
+
examples: _propTypes.default.array,
|
|
141
|
+
filterable: _propTypes.default.bool,
|
|
142
|
+
filterOperators: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
143
|
+
getApplyFilterFn: _propTypes.default.func.isRequired,
|
|
144
|
+
getValueAsString: _propTypes.default.func,
|
|
145
|
+
headerLabel: _propTypes.default.string,
|
|
146
|
+
InputComponent: _propTypes.default.elementType,
|
|
147
|
+
InputComponentProps: _propTypes.default.object,
|
|
148
|
+
label: _propTypes.default.string,
|
|
149
|
+
requiresFilterValue: _propTypes.default.bool,
|
|
150
|
+
value: _propTypes.default.string.isRequired
|
|
151
|
+
})),
|
|
152
|
+
flex: _propTypes.default.number,
|
|
153
|
+
getApplyQuickFilterFn: _propTypes.default.func,
|
|
154
|
+
getSortComparator: _propTypes.default.func,
|
|
155
|
+
groupable: _propTypes.default.bool,
|
|
156
|
+
headerAlign: _propTypes.default.oneOf(['center', 'left', 'right']),
|
|
157
|
+
headerClassName: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.string]),
|
|
158
|
+
headerName: _propTypes.default.string,
|
|
159
|
+
hideable: _propTypes.default.bool,
|
|
160
|
+
hideSortIcons: _propTypes.default.bool,
|
|
161
|
+
maxWidth: _propTypes.default.number,
|
|
162
|
+
minWidth: _propTypes.default.number,
|
|
163
|
+
pinnable: _propTypes.default.bool,
|
|
164
|
+
preProcessEditCellProps: _propTypes.default.func,
|
|
165
|
+
renderCell: _propTypes.default.func,
|
|
166
|
+
renderEditCell: _propTypes.default.func,
|
|
167
|
+
renderHeader: _propTypes.default.func,
|
|
168
|
+
resizable: _propTypes.default.bool,
|
|
169
|
+
rowSpanValueGetter: _propTypes.default.func,
|
|
170
|
+
sortable: _propTypes.default.bool,
|
|
171
|
+
sortComparator: _propTypes.default.func,
|
|
172
|
+
sortingOrder: _propTypes.default.arrayOf(_propTypes.default.oneOf(['asc', 'desc'])),
|
|
173
|
+
valueFormatter: _propTypes.default.func,
|
|
174
|
+
valueGetter: _propTypes.default.func,
|
|
175
|
+
valueParser: _propTypes.default.func,
|
|
176
|
+
valueSetter: _propTypes.default.func,
|
|
177
|
+
width: _propTypes.default.number
|
|
178
|
+
}),
|
|
123
179
|
/**
|
|
124
180
|
* If `true`, the Data Grid will display an extra column with checkboxes for selecting rows.
|
|
125
181
|
* @default false
|
|
126
182
|
*/
|
|
127
183
|
checkboxSelection: _propTypes.default.bool,
|
|
128
|
-
/**
|
|
129
|
-
* Definition of the column rendered when the `checkboxSelection` prop is enabled.
|
|
130
|
-
*/
|
|
131
|
-
checkboxColDef: _propTypes.default.object,
|
|
132
184
|
/**
|
|
133
185
|
* Override or extend the styles applied to the component.
|
|
134
186
|
*/
|
|
@@ -185,8 +237,8 @@ DataGridRaw.propTypes = {
|
|
|
185
237
|
set: _propTypes.default.func.isRequired
|
|
186
238
|
}),
|
|
187
239
|
/**
|
|
188
|
-
* If positive, the Data Grid will periodically revalidate data source rows by
|
|
189
|
-
*
|
|
240
|
+
* If positive, the Data Grid will periodically revalidate data source rows by re-fetching them from the server when the cache entry has expired.
|
|
241
|
+
* If the refetched rows are different from the current rows, the grid will update the rows.
|
|
190
242
|
* Set to `0` to disable polling.
|
|
191
243
|
* @default 0
|
|
192
244
|
*/
|
|
@@ -822,6 +874,15 @@ DataGridRaw.propTypes = {
|
|
|
822
874
|
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
823
875
|
*/
|
|
824
876
|
sx: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object, _propTypes.default.bool])), _propTypes.default.func, _propTypes.default.object]),
|
|
877
|
+
/**
|
|
878
|
+
* Sets the tab navigation behavior for the Data Grid.
|
|
879
|
+
* - "none": No Data Grid specific tab navigation. Pressing the tab key will move the focus to the next element in the tab sequence.
|
|
880
|
+
* - "content": Pressing the tab key will move the focus to the next cell in the same row or the first cell in the next row. Shift+Tab will move the focus to the previous cell in the same row or the last cell in the previous row. Tab navigation is not enabled for the header.
|
|
881
|
+
* - "header": Pressing the tab key will move the focus to the next column group, column header or header filter. Shift+Tab will move the focus to the previous column group, column header or header filter. Tab navigation is not enabled for the content.
|
|
882
|
+
* - "all": Combines the "content" and "header" behavior.
|
|
883
|
+
* @default "none"
|
|
884
|
+
*/
|
|
885
|
+
tabNavigation: _propTypes.default.oneOf(['all', 'content', 'header', 'none']),
|
|
825
886
|
/**
|
|
826
887
|
* If `true`, the Data Grid enables column virtualization when `getRowHeight` is set to `() => 'auto'`.
|
|
827
888
|
* By default, column virtualization is disabled when dynamic row height is enabled to measure the row height correctly.
|
package/DataGrid/DataGrid.mjs
CHANGED
|
@@ -59,7 +59,7 @@ if (process.env.NODE_ENV !== "production") DataGridRaw.displayName = "DataGridRa
|
|
|
59
59
|
*/
|
|
60
60
|
export const DataGrid = /*#__PURE__*/React.memo(forwardRef(DataGridRaw));
|
|
61
61
|
if (process.env.NODE_ENV !== "production") DataGrid.displayName = "DataGrid";
|
|
62
|
-
DataGridRaw.propTypes = {
|
|
62
|
+
DataGridRaw.propTypes /* remove-proptypes */ = {
|
|
63
63
|
// ----------------------------- Warning --------------------------------
|
|
64
64
|
// | These PropTypes are generated from the TypeScript type definitions |
|
|
65
65
|
// | To update them edit the TypeScript types and run "pnpm proptypes" |
|
|
@@ -79,13 +79,11 @@ DataGridRaw.propTypes = {
|
|
|
79
79
|
*/
|
|
80
80
|
'aria-labelledby': PropTypes.string,
|
|
81
81
|
/**
|
|
82
|
-
* If `true`, the Data Grid height is dynamic and
|
|
82
|
+
* If `true`, the Data Grid height is dynamic and takes as much space as it needs to display all rows.
|
|
83
|
+
* Use it instead of a flex parent container approach, if:
|
|
84
|
+
* - you don't need to set a minimum or maximum height for the Data Grid
|
|
85
|
+
* - you want to avoid the scrollbar flickering when the content changes
|
|
83
86
|
* @default false
|
|
84
|
-
* @deprecated Use flex parent container instead: https://mui.com/x/react-data-grid/layout/#flex-parent-container
|
|
85
|
-
* @example
|
|
86
|
-
* <div style={{ display: 'flex', flexDirection: 'column' }}>
|
|
87
|
-
* <DataGrid />
|
|
88
|
-
* </div>
|
|
89
87
|
*/
|
|
90
88
|
autoHeight: PropTypes.bool,
|
|
91
89
|
/**
|
|
@@ -105,6 +103,7 @@ DataGridRaw.propTypes = {
|
|
|
105
103
|
columns: PropTypes.arrayOf(PropTypes.string),
|
|
106
104
|
disableColumnVirtualization: PropTypes.bool,
|
|
107
105
|
expand: PropTypes.bool,
|
|
106
|
+
includeHeaderFilters: PropTypes.bool,
|
|
108
107
|
includeHeaders: PropTypes.bool,
|
|
109
108
|
includeOutliers: PropTypes.bool,
|
|
110
109
|
outliersFactor: PropTypes.number
|
|
@@ -113,15 +112,68 @@ DataGridRaw.propTypes = {
|
|
|
113
112
|
* Controls the modes of the cells.
|
|
114
113
|
*/
|
|
115
114
|
cellModesModel: PropTypes.object,
|
|
115
|
+
/**
|
|
116
|
+
* Definition of the column rendered when the `checkboxSelection` prop is enabled.
|
|
117
|
+
*
|
|
118
|
+
* @warning
|
|
119
|
+
* Be careful when overriding `renderHeader` or `renderCell` in the `checkboxColDef` prop.
|
|
120
|
+
* The default implementation of these properties includes the logic for selecting all rows and selecting a single row, respectively.
|
|
121
|
+
* Overriding them without providing the same functionality will break the row selection.
|
|
122
|
+
*/
|
|
123
|
+
checkboxColDef: PropTypes.shape({
|
|
124
|
+
align: PropTypes.oneOf(['center', 'left', 'right']),
|
|
125
|
+
cellClassName: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
|
|
126
|
+
colSpan: PropTypes.oneOfType([PropTypes.func, PropTypes.number]),
|
|
127
|
+
description: PropTypes.string,
|
|
128
|
+
disableColumnMenu: PropTypes.bool,
|
|
129
|
+
disableExport: PropTypes.bool,
|
|
130
|
+
disableReorder: PropTypes.bool,
|
|
131
|
+
display: PropTypes.oneOf(['flex', 'text']),
|
|
132
|
+
editable: PropTypes.bool,
|
|
133
|
+
examples: PropTypes.array,
|
|
134
|
+
filterable: PropTypes.bool,
|
|
135
|
+
filterOperators: PropTypes.arrayOf(PropTypes.shape({
|
|
136
|
+
getApplyFilterFn: PropTypes.func.isRequired,
|
|
137
|
+
getValueAsString: PropTypes.func,
|
|
138
|
+
headerLabel: PropTypes.string,
|
|
139
|
+
InputComponent: PropTypes.elementType,
|
|
140
|
+
InputComponentProps: PropTypes.object,
|
|
141
|
+
label: PropTypes.string,
|
|
142
|
+
requiresFilterValue: PropTypes.bool,
|
|
143
|
+
value: PropTypes.string.isRequired
|
|
144
|
+
})),
|
|
145
|
+
flex: PropTypes.number,
|
|
146
|
+
getApplyQuickFilterFn: PropTypes.func,
|
|
147
|
+
getSortComparator: PropTypes.func,
|
|
148
|
+
groupable: PropTypes.bool,
|
|
149
|
+
headerAlign: PropTypes.oneOf(['center', 'left', 'right']),
|
|
150
|
+
headerClassName: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
|
|
151
|
+
headerName: PropTypes.string,
|
|
152
|
+
hideable: PropTypes.bool,
|
|
153
|
+
hideSortIcons: PropTypes.bool,
|
|
154
|
+
maxWidth: PropTypes.number,
|
|
155
|
+
minWidth: PropTypes.number,
|
|
156
|
+
pinnable: PropTypes.bool,
|
|
157
|
+
preProcessEditCellProps: PropTypes.func,
|
|
158
|
+
renderCell: PropTypes.func,
|
|
159
|
+
renderEditCell: PropTypes.func,
|
|
160
|
+
renderHeader: PropTypes.func,
|
|
161
|
+
resizable: PropTypes.bool,
|
|
162
|
+
rowSpanValueGetter: PropTypes.func,
|
|
163
|
+
sortable: PropTypes.bool,
|
|
164
|
+
sortComparator: PropTypes.func,
|
|
165
|
+
sortingOrder: PropTypes.arrayOf(PropTypes.oneOf(['asc', 'desc'])),
|
|
166
|
+
valueFormatter: PropTypes.func,
|
|
167
|
+
valueGetter: PropTypes.func,
|
|
168
|
+
valueParser: PropTypes.func,
|
|
169
|
+
valueSetter: PropTypes.func,
|
|
170
|
+
width: PropTypes.number
|
|
171
|
+
}),
|
|
116
172
|
/**
|
|
117
173
|
* If `true`, the Data Grid will display an extra column with checkboxes for selecting rows.
|
|
118
174
|
* @default false
|
|
119
175
|
*/
|
|
120
176
|
checkboxSelection: PropTypes.bool,
|
|
121
|
-
/**
|
|
122
|
-
* Definition of the column rendered when the `checkboxSelection` prop is enabled.
|
|
123
|
-
*/
|
|
124
|
-
checkboxColDef: PropTypes.object,
|
|
125
177
|
/**
|
|
126
178
|
* Override or extend the styles applied to the component.
|
|
127
179
|
*/
|
|
@@ -178,8 +230,8 @@ DataGridRaw.propTypes = {
|
|
|
178
230
|
set: PropTypes.func.isRequired
|
|
179
231
|
}),
|
|
180
232
|
/**
|
|
181
|
-
* If positive, the Data Grid will periodically revalidate data source rows by
|
|
182
|
-
*
|
|
233
|
+
* If positive, the Data Grid will periodically revalidate data source rows by re-fetching them from the server when the cache entry has expired.
|
|
234
|
+
* If the refetched rows are different from the current rows, the grid will update the rows.
|
|
183
235
|
* Set to `0` to disable polling.
|
|
184
236
|
* @default 0
|
|
185
237
|
*/
|
|
@@ -815,6 +867,15 @@ DataGridRaw.propTypes = {
|
|
|
815
867
|
* The system prop that allows defining system overrides as well as additional CSS styles.
|
|
816
868
|
*/
|
|
817
869
|
sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),
|
|
870
|
+
/**
|
|
871
|
+
* Sets the tab navigation behavior for the Data Grid.
|
|
872
|
+
* - "none": No Data Grid specific tab navigation. Pressing the tab key will move the focus to the next element in the tab sequence.
|
|
873
|
+
* - "content": Pressing the tab key will move the focus to the next cell in the same row or the first cell in the next row. Shift+Tab will move the focus to the previous cell in the same row or the last cell in the previous row. Tab navigation is not enabled for the header.
|
|
874
|
+
* - "header": Pressing the tab key will move the focus to the next column group, column header or header filter. Shift+Tab will move the focus to the previous column group, column header or header filter. Tab navigation is not enabled for the content.
|
|
875
|
+
* - "all": Combines the "content" and "header" behavior.
|
|
876
|
+
* @default "none"
|
|
877
|
+
*/
|
|
878
|
+
tabNavigation: PropTypes.oneOf(['all', 'content', 'header', 'none']),
|
|
818
879
|
/**
|
|
819
880
|
* If `true`, the Data Grid enables column virtualization when `getRowHeight` is set to `() => 'auto'`.
|
|
820
881
|
* By default, column virtualization is disabled when dynamic row height is enabled to measure the row height correctly.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { GridColType } from "../models/colDef/gridColType.mjs";
|
|
2
|
+
import type { GridColTypeDef } from "../models/colDef/gridColDef.mjs";
|
|
3
|
+
import type { GridColumnTypesRecord } from "../models/colDef/gridColumnTypesRecord.mjs";
|
|
4
|
+
export declare const DEFAULT_GRID_COL_TYPE_KEY = "string";
|
|
5
|
+
export declare const isCommunityColumnType: (type: GridColType | undefined) => boolean;
|
|
6
|
+
export declare const registerGridColumnTypes: (columnTypes: Partial<GridColumnTypesRecord>) => void;
|
|
7
|
+
export declare const getGridColumnTypesRegistry: () => Record<string, GridColTypeDef>;
|
|
8
|
+
export declare const getRegisteredColumnTypeDef: (type: GridColType | undefined) => GridColTypeDef;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { GridColType } from "../models/colDef/gridColType.js";
|
|
2
|
+
import type { GridColTypeDef } from "../models/colDef/gridColDef.js";
|
|
3
|
+
import type { GridColumnTypesRecord } from "../models/colDef/gridColumnTypesRecord.js";
|
|
4
|
+
export declare const DEFAULT_GRID_COL_TYPE_KEY = "string";
|
|
5
|
+
export declare const isCommunityColumnType: (type: GridColType | undefined) => boolean;
|
|
6
|
+
export declare const registerGridColumnTypes: (columnTypes: Partial<GridColumnTypesRecord>) => void;
|
|
7
|
+
export declare const getGridColumnTypesRegistry: () => Record<string, GridColTypeDef>;
|
|
8
|
+
export declare const getRegisteredColumnTypeDef: (type: GridColType | undefined) => GridColTypeDef;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.registerGridColumnTypes = exports.isCommunityColumnType = exports.getRegisteredColumnTypeDef = exports.getGridColumnTypesRegistry = exports.DEFAULT_GRID_COL_TYPE_KEY = void 0;
|
|
7
|
+
var _gridStringColDef = require("./gridStringColDef");
|
|
8
|
+
var _gridNumericColDef = require("./gridNumericColDef");
|
|
9
|
+
var _gridDateColDef = require("./gridDateColDef");
|
|
10
|
+
var _gridBooleanColDef = require("./gridBooleanColDef");
|
|
11
|
+
var _gridSingleSelectColDef = require("./gridSingleSelectColDef");
|
|
12
|
+
var _gridActionsColDef = require("./gridActionsColDef");
|
|
13
|
+
var _gridLongTextColDef = require("./gridLongTextColDef");
|
|
14
|
+
const DEFAULT_GRID_COL_TYPE_KEY = exports.DEFAULT_GRID_COL_TYPE_KEY = 'string';
|
|
15
|
+
|
|
16
|
+
// Mutable registry seeded with the community column types. Pro/Premium packages append
|
|
17
|
+
// their own types at module load via `registerGridColumnTypes`, so a community-only bundle
|
|
18
|
+
// never references them at runtime.
|
|
19
|
+
const columnTypesRegistry = {
|
|
20
|
+
string: _gridStringColDef.GRID_STRING_COL_DEF,
|
|
21
|
+
number: _gridNumericColDef.GRID_NUMERIC_COL_DEF,
|
|
22
|
+
date: _gridDateColDef.GRID_DATE_COL_DEF,
|
|
23
|
+
dateTime: _gridDateColDef.GRID_DATETIME_COL_DEF,
|
|
24
|
+
boolean: _gridBooleanColDef.GRID_BOOLEAN_COL_DEF,
|
|
25
|
+
singleSelect: _gridSingleSelectColDef.GRID_SINGLE_SELECT_COL_DEF,
|
|
26
|
+
[_gridActionsColDef.GRID_ACTIONS_COLUMN_TYPE]: _gridActionsColDef.GRID_ACTIONS_COL_DEF,
|
|
27
|
+
custom: _gridStringColDef.GRID_STRING_COL_DEF,
|
|
28
|
+
longText: _gridLongTextColDef.GRID_LONG_TEXT_COL_DEF
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
// Captured before any `registerGridColumnTypes` call, so it reflects the community-native types
|
|
32
|
+
// only. Used to keep Pro/Premium-registered types (e.g. `multiSelect`) from resolving in a
|
|
33
|
+
// community `DataGrid` even when a Pro grid registered them globally in the same bundle.
|
|
34
|
+
const COMMUNITY_COLUMN_TYPE_KEYS = new Set(Object.keys(columnTypesRegistry));
|
|
35
|
+
const isCommunityColumnType = type => type == null || COMMUNITY_COLUMN_TYPE_KEYS.has(type);
|
|
36
|
+
exports.isCommunityColumnType = isCommunityColumnType;
|
|
37
|
+
const registerGridColumnTypes = columnTypes => {
|
|
38
|
+
Object.assign(columnTypesRegistry, columnTypes);
|
|
39
|
+
};
|
|
40
|
+
exports.registerGridColumnTypes = registerGridColumnTypes;
|
|
41
|
+
const getGridColumnTypesRegistry = () => columnTypesRegistry;
|
|
42
|
+
exports.getGridColumnTypesRegistry = getGridColumnTypesRegistry;
|
|
43
|
+
const getRegisteredColumnTypeDef = type => (type ? columnTypesRegistry[type] : undefined) ?? columnTypesRegistry[DEFAULT_GRID_COL_TYPE_KEY];
|
|
44
|
+
exports.getRegisteredColumnTypeDef = getRegisteredColumnTypeDef;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { GRID_STRING_COL_DEF } from "./gridStringColDef.mjs";
|
|
2
|
+
import { GRID_NUMERIC_COL_DEF } from "./gridNumericColDef.mjs";
|
|
3
|
+
import { GRID_DATE_COL_DEF, GRID_DATETIME_COL_DEF } from "./gridDateColDef.mjs";
|
|
4
|
+
import { GRID_BOOLEAN_COL_DEF } from "./gridBooleanColDef.mjs";
|
|
5
|
+
import { GRID_SINGLE_SELECT_COL_DEF } from "./gridSingleSelectColDef.mjs";
|
|
6
|
+
import { GRID_ACTIONS_COL_DEF, GRID_ACTIONS_COLUMN_TYPE } from "./gridActionsColDef.mjs";
|
|
7
|
+
import { GRID_LONG_TEXT_COL_DEF } from "./gridLongTextColDef.mjs";
|
|
8
|
+
export const DEFAULT_GRID_COL_TYPE_KEY = 'string';
|
|
9
|
+
|
|
10
|
+
// Mutable registry seeded with the community column types. Pro/Premium packages append
|
|
11
|
+
// their own types at module load via `registerGridColumnTypes`, so a community-only bundle
|
|
12
|
+
// never references them at runtime.
|
|
13
|
+
const columnTypesRegistry = {
|
|
14
|
+
string: GRID_STRING_COL_DEF,
|
|
15
|
+
number: GRID_NUMERIC_COL_DEF,
|
|
16
|
+
date: GRID_DATE_COL_DEF,
|
|
17
|
+
dateTime: GRID_DATETIME_COL_DEF,
|
|
18
|
+
boolean: GRID_BOOLEAN_COL_DEF,
|
|
19
|
+
singleSelect: GRID_SINGLE_SELECT_COL_DEF,
|
|
20
|
+
[GRID_ACTIONS_COLUMN_TYPE]: GRID_ACTIONS_COL_DEF,
|
|
21
|
+
custom: GRID_STRING_COL_DEF,
|
|
22
|
+
longText: GRID_LONG_TEXT_COL_DEF
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
// Captured before any `registerGridColumnTypes` call, so it reflects the community-native types
|
|
26
|
+
// only. Used to keep Pro/Premium-registered types (e.g. `multiSelect`) from resolving in a
|
|
27
|
+
// community `DataGrid` even when a Pro grid registered them globally in the same bundle.
|
|
28
|
+
const COMMUNITY_COLUMN_TYPE_KEYS = new Set(Object.keys(columnTypesRegistry));
|
|
29
|
+
export const isCommunityColumnType = type => type == null || COMMUNITY_COLUMN_TYPE_KEYS.has(type);
|
|
30
|
+
export const registerGridColumnTypes = columnTypes => {
|
|
31
|
+
Object.assign(columnTypesRegistry, columnTypes);
|
|
32
|
+
};
|
|
33
|
+
export const getGridColumnTypesRegistry = () => columnTypesRegistry;
|
|
34
|
+
export const getRegisteredColumnTypeDef = type => (type ? columnTypesRegistry[type] : undefined) ?? columnTypesRegistry[DEFAULT_GRID_COL_TYPE_KEY];
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { GridColumnTypesRecord } from "../models/colDef/gridColumnTypesRecord.mjs";
|
|
2
|
-
export
|
|
2
|
+
export { DEFAULT_GRID_COL_TYPE_KEY } from "./gridColumnTypesRegistry.mjs";
|
|
3
3
|
export declare const getGridDefaultColumnTypes: () => GridColumnTypesRecord;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { GridColumnTypesRecord } from "../models/colDef/gridColumnTypesRecord.js";
|
|
2
|
-
export
|
|
2
|
+
export { DEFAULT_GRID_COL_TYPE_KEY } from "./gridColumnTypesRegistry.js";
|
|
3
3
|
export declare const getGridDefaultColumnTypes: () => GridColumnTypesRecord;
|