@mui/x-data-grid 8.5.0 → 8.5.2

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 (158) hide show
  1. package/CHANGELOG.md +204 -0
  2. package/components/columnsPanel/ColumnsPanelTrigger.d.ts +1 -1
  3. package/components/columnsPanel/ColumnsPanelTrigger.js +2 -2
  4. package/components/containers/GridRootStyles.d.ts +1 -1
  5. package/components/containers/GridRootStyles.js +6 -0
  6. package/components/export/ExportCsv.d.ts +1 -1
  7. package/components/export/ExportCsv.js +2 -2
  8. package/components/export/ExportPrint.d.ts +1 -1
  9. package/components/export/ExportPrint.js +2 -2
  10. package/components/filterPanel/FilterPanelTrigger.d.ts +1 -1
  11. package/components/filterPanel/FilterPanelTrigger.js +2 -2
  12. package/components/quickFilter/QuickFilter.d.ts +1 -1
  13. package/components/quickFilter/QuickFilter.js +2 -2
  14. package/components/quickFilter/QuickFilterClear.d.ts +1 -1
  15. package/components/quickFilter/QuickFilterClear.js +2 -2
  16. package/components/quickFilter/QuickFilterControl.d.ts +1 -1
  17. package/components/quickFilter/QuickFilterControl.js +2 -2
  18. package/components/quickFilter/QuickFilterTrigger.d.ts +1 -1
  19. package/components/quickFilter/QuickFilterTrigger.js +2 -2
  20. package/components/toolbarV8/Toolbar.d.ts +1 -1
  21. package/components/toolbarV8/Toolbar.js +2 -2
  22. package/components/toolbarV8/ToolbarButton.d.ts +1 -1
  23. package/components/toolbarV8/ToolbarButton.js +2 -2
  24. package/esm/components/columnsPanel/ColumnsPanelTrigger.d.ts +1 -1
  25. package/esm/components/columnsPanel/ColumnsPanelTrigger.js +2 -2
  26. package/esm/components/containers/GridRootStyles.d.ts +1 -1
  27. package/esm/components/containers/GridRootStyles.js +6 -0
  28. package/esm/components/export/ExportCsv.d.ts +1 -1
  29. package/esm/components/export/ExportCsv.js +2 -2
  30. package/esm/components/export/ExportPrint.d.ts +1 -1
  31. package/esm/components/export/ExportPrint.js +2 -2
  32. package/esm/components/filterPanel/FilterPanelTrigger.d.ts +1 -1
  33. package/esm/components/filterPanel/FilterPanelTrigger.js +2 -2
  34. package/esm/components/quickFilter/QuickFilter.d.ts +1 -1
  35. package/esm/components/quickFilter/QuickFilter.js +2 -2
  36. package/esm/components/quickFilter/QuickFilterClear.d.ts +1 -1
  37. package/esm/components/quickFilter/QuickFilterClear.js +2 -2
  38. package/esm/components/quickFilter/QuickFilterControl.d.ts +1 -1
  39. package/esm/components/quickFilter/QuickFilterControl.js +2 -2
  40. package/esm/components/quickFilter/QuickFilterTrigger.d.ts +1 -1
  41. package/esm/components/quickFilter/QuickFilterTrigger.js +2 -2
  42. package/esm/components/toolbarV8/Toolbar.d.ts +1 -1
  43. package/esm/components/toolbarV8/Toolbar.js +2 -2
  44. package/esm/components/toolbarV8/ToolbarButton.d.ts +1 -1
  45. package/esm/components/toolbarV8/ToolbarButton.js +2 -2
  46. package/esm/hooks/core/pipeProcessing/useGridPipeProcessing.js +3 -3
  47. package/esm/hooks/core/useGridApiInitialization.js +1 -1
  48. package/esm/hooks/features/columnGrouping/gridColumnGroupsSelector.d.ts +13 -5
  49. package/esm/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +1 -1
  50. package/esm/hooks/features/columnResize/columnResizeSelector.d.ts +3 -1
  51. package/esm/hooks/features/columns/gridColumnsSelector.d.ts +41 -15
  52. package/esm/hooks/features/columns/gridColumnsUtils.js +3 -1
  53. package/esm/hooks/features/dataSource/gridDataSourceSelector.d.ts +4 -2
  54. package/esm/hooks/features/dataSource/useGridDataSourceBase.js +4 -0
  55. package/esm/hooks/features/density/densitySelector.d.ts +3 -1
  56. package/esm/hooks/features/dimensions/gridDimensionsSelectors.d.ts +36 -12
  57. package/esm/hooks/features/editing/gridEditingSelectors.d.ts +8 -4
  58. package/esm/hooks/features/filter/gridFilterSelector.d.ts +51 -17
  59. package/esm/hooks/features/filter/gridFilterState.d.ts +2 -1
  60. package/esm/hooks/features/filter/gridFilterState.js +2 -1
  61. package/esm/hooks/features/filter/useGridFilter.js +1 -1
  62. package/esm/hooks/features/focus/gridFocusStateSelector.d.ts +24 -8
  63. package/esm/hooks/features/headerFiltering/gridHeaderFilteringSelectors.d.ts +9 -3
  64. package/esm/hooks/features/pagination/gridPaginationSelector.d.ts +35 -19
  65. package/esm/hooks/features/pivoting/gridPivotingSelectors.d.ts +9 -4
  66. package/esm/hooks/features/preferencesPanel/gridPreferencePanelSelector.d.ts +3 -1
  67. package/esm/hooks/features/rowSelection/gridRowSelectionSelector.d.ts +9 -3
  68. package/esm/hooks/features/rowSelection/useGridRowSelectionPreProcessors.js +9 -5
  69. package/esm/hooks/features/rowSelection/utils.d.ts +5 -3
  70. package/esm/hooks/features/rows/gridRowSpanningSelectors.d.ts +9 -3
  71. package/esm/hooks/features/rows/gridRowsSelector.d.ts +50 -29
  72. package/esm/hooks/features/sorting/gridSortingSelector.d.ts +15 -5
  73. package/esm/hooks/features/virtualization/gridFocusedVirtualCellSelector.d.ts +4 -2
  74. package/esm/hooks/features/virtualization/gridVirtualizationSelectors.d.ts +15 -5
  75. package/esm/hooks/features/virtualization/gridVirtualizationSelectors.js +3 -1
  76. package/esm/hooks/utils/index.d.ts +1 -1
  77. package/esm/hooks/utils/useGridSelector.d.ts +2 -4
  78. package/esm/hooks/utils/useGridSelector.js +2 -2
  79. package/esm/index.js +1 -1
  80. package/esm/internals/index.d.ts +0 -1
  81. package/esm/internals/index.js +0 -1
  82. package/esm/locales/arSD.js +5 -6
  83. package/esm/locales/ptPT.js +4 -4
  84. package/esm/material/variables.js +1 -2
  85. package/esm/models/api/gridCoreApi.d.ts +1 -1
  86. package/esm/models/gridCellClass.d.ts +2 -0
  87. package/esm/models/gridColumnGrouping.d.ts +2 -0
  88. package/esm/models/gridColumnGrouping.js +2 -0
  89. package/esm/models/gridColumnHeaderClass.d.ts +2 -0
  90. package/esm/models/gridRows.d.ts +2 -0
  91. package/esm/models/gridSortModel.d.ts +5 -0
  92. package/esm/models/params/gridRowParams.d.ts +1 -1
  93. package/esm/models/params/gridRowParams.js +1 -1
  94. package/esm/utils/createSelector.d.ts +3 -11
  95. package/esm/utils/createSelector.js +16 -86
  96. package/hooks/core/pipeProcessing/useGridPipeProcessing.js +3 -3
  97. package/hooks/core/useGridApiInitialization.js +2 -2
  98. package/hooks/features/columnGrouping/gridColumnGroupsSelector.d.ts +13 -5
  99. package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +1 -1
  100. package/hooks/features/columnResize/columnResizeSelector.d.ts +3 -1
  101. package/hooks/features/columns/gridColumnsSelector.d.ts +41 -15
  102. package/hooks/features/columns/gridColumnsUtils.js +3 -1
  103. package/hooks/features/dataSource/gridDataSourceSelector.d.ts +4 -2
  104. package/hooks/features/dataSource/useGridDataSourceBase.js +4 -0
  105. package/hooks/features/density/densitySelector.d.ts +3 -1
  106. package/hooks/features/dimensions/gridDimensionsSelectors.d.ts +36 -12
  107. package/hooks/features/editing/gridEditingSelectors.d.ts +8 -4
  108. package/hooks/features/filter/gridFilterSelector.d.ts +51 -17
  109. package/hooks/features/filter/gridFilterState.d.ts +2 -1
  110. package/hooks/features/filter/gridFilterState.js +2 -1
  111. package/hooks/features/filter/useGridFilter.js +2 -2
  112. package/hooks/features/focus/gridFocusStateSelector.d.ts +24 -8
  113. package/hooks/features/headerFiltering/gridHeaderFilteringSelectors.d.ts +9 -3
  114. package/hooks/features/pagination/gridPaginationSelector.d.ts +35 -19
  115. package/hooks/features/pivoting/gridPivotingSelectors.d.ts +9 -4
  116. package/hooks/features/preferencesPanel/gridPreferencePanelSelector.d.ts +3 -1
  117. package/hooks/features/rowSelection/gridRowSelectionSelector.d.ts +9 -3
  118. package/hooks/features/rowSelection/useGridRowSelectionPreProcessors.js +9 -5
  119. package/hooks/features/rowSelection/utils.d.ts +5 -3
  120. package/hooks/features/rows/gridRowSpanningSelectors.d.ts +9 -3
  121. package/hooks/features/rows/gridRowsSelector.d.ts +50 -29
  122. package/hooks/features/sorting/gridSortingSelector.d.ts +15 -5
  123. package/hooks/features/virtualization/gridFocusedVirtualCellSelector.d.ts +4 -2
  124. package/hooks/features/virtualization/gridVirtualizationSelectors.d.ts +15 -5
  125. package/hooks/features/virtualization/gridVirtualizationSelectors.js +3 -1
  126. package/hooks/utils/index.d.ts +1 -1
  127. package/hooks/utils/useGridSelector.d.ts +2 -4
  128. package/hooks/utils/useGridSelector.js +4 -4
  129. package/index.js +1 -1
  130. package/internals/index.d.ts +0 -1
  131. package/internals/index.js +0 -8
  132. package/locales/arSD.js +5 -6
  133. package/locales/ptPT.js +4 -4
  134. package/material/variables.js +1 -2
  135. package/models/api/gridCoreApi.d.ts +1 -1
  136. package/models/gridCellClass.d.ts +2 -0
  137. package/models/gridColumnGrouping.d.ts +2 -0
  138. package/models/gridColumnGrouping.js +2 -0
  139. package/models/gridColumnHeaderClass.d.ts +2 -0
  140. package/models/gridRows.d.ts +2 -0
  141. package/models/gridSortModel.d.ts +5 -0
  142. package/models/params/gridRowParams.d.ts +1 -1
  143. package/models/params/gridRowParams.js +1 -1
  144. package/package.json +4 -5
  145. package/utils/createSelector.d.ts +3 -11
  146. package/utils/createSelector.js +18 -88
  147. package/esm/hooks/utils/useGridComponentRenderer.d.ts +0 -12
  148. package/esm/hooks/utils/useGridComponentRenderer.js +0 -36
  149. package/esm/utils/Store.d.ts +0 -11
  150. package/esm/utils/Store.js +0 -24
  151. package/esm/utils/weakMapMemoize.d.ts +0 -20
  152. package/esm/utils/weakMapMemoize.js +0 -128
  153. package/hooks/utils/useGridComponentRenderer.d.ts +0 -12
  154. package/hooks/utils/useGridComponentRenderer.js +0 -44
  155. package/utils/Store.d.ts +0 -11
  156. package/utils/Store.js +0 -31
  157. package/utils/weakMapMemoize.d.ts +0 -20
  158. package/utils/weakMapMemoize.js +0 -134
package/CHANGELOG.md CHANGED
@@ -5,6 +5,210 @@
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.5.2
9
+
10
+ _Jun 12, 2025_
11
+
12
+ We'd like to extend a big thank you to the 15 contributors who made this release possible. Here are some highlights ✨:
13
+
14
+ - 📊 Improve Data Grid selectors performance
15
+ - 🐞 Fix `useSyncExternalStore` import error in React 17
16
+
17
+ Special thanks go out to the community members for their valuable contributions:
18
+ @alisasanib, @noobyogi0010.
19
+
20
+ The following are all team members who have contributed to this release:
21
+ @alexfauquette, @arminmeh, @bernardobelchior, @cherniavskii, @JCQuintas, @KenanYusuf, @LukasTy, @mapache-salvaje, @michelengelen, @noraleonte, @oliviertassinari, @prakhargupta1, @romgrk.
22
+
23
+ ### Data Grid
24
+
25
+ #### `@mui/x-data-grid@8.5.2`
26
+
27
+ - [DataGrid] Improve selectors performance (#18234) @romgrk
28
+ - [DataGrid] Fix data grid palette when using CSS vars (#18310) @KenanYusuf
29
+ - [DataGrid] Ignore data source request if the grid got unmounted (#18268) @arminmeh
30
+
31
+ #### `@mui/x-data-grid-pro@8.5.2` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
32
+
33
+ Same changes as in `@mui/x-data-grid@8.5.2`, plus:
34
+
35
+ - [DataGridPro] Fix flex column width if it is a pinned column (#18293) @alisasanib
36
+ - [DataGridPro] Fix inconsistent filtering results with aggregation (#17954) @cherniavskii
37
+
38
+ #### `@mui/x-data-grid-premium@8.5.2` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
39
+
40
+ Same changes as in `@mui/x-data-grid-pro@8.5.2`.
41
+
42
+ ### Date and Time Pickers
43
+
44
+ #### `@mui/x-date-pickers@8.5.2`
45
+
46
+ - [pickers] Add `PickerDay2` and `DateRangePickerDay2` components (#15921) @noraleonte
47
+ - [pickers] Fix `hiddenLabel` prop propagation (#18195) @noobyogi0010
48
+
49
+ #### `@mui/x-date-pickers-pro@8.5.2` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
50
+
51
+ Same changes as in `@mui/x-date-pickers@8.5.2`.
52
+
53
+ ### Charts
54
+
55
+ #### `@mui/x-charts@8.5.2`
56
+
57
+ - [charts] Add a default value formatter for continuous scales (#18178) @bernardobelchior
58
+ - [charts] Add margin-bottom to charts toolbar (#18326) @bernardobelchior
59
+ - [charts] Fix grid with band scale (#18295) @alexfauquette
60
+ - [charts] Remove unnecessary style changes in tests (#18317) @JCQuintas
61
+ - [charts] Remove `sx` prop merging from `useComponentRenderer` (#18235) @bernardobelchior
62
+ - [charts] Fix `useSyncExternalStore` import error in React 17 (#18314) @bernardobelchior
63
+
64
+ #### `@mui/x-charts-pro@8.5.2` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
65
+
66
+ Same changes as in `@mui/x-charts@8.5.2`, plus:
67
+
68
+ - [charts-pro] Document zoom slider tooltip value formatting (#18261) @bernardobelchior
69
+ - [charts-pro] Funnel `gap` prop does not impact the drawing area (#18233) @JCQuintas
70
+ - [charts-pro] Use `ChartsToolbarPro` types in pro charts (#18243) @bernardobelchior
71
+
72
+ ### Tree View
73
+
74
+ #### `@mui/x-tree-view@8.5.2`
75
+
76
+ - [tree-view] Fix `useSyncExternalStore` import error in React 17 (#18314) @bernardobelchior
77
+
78
+ #### `@mui/x-tree-view-pro@8.5.2` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
79
+
80
+ Same changes as in `@mui/x-tree-view@8.5.2`.
81
+
82
+ ### Docs
83
+
84
+ - [docs] Add toolbar custom trigger and panel recipe (#18297) @KenanYusuf
85
+ - [docs] Copyedit the Priority support page (#18311) @mapache-salvaje
86
+ - [docs] Remove confusing opt-out mention in telemetry docs (#18257) @prakhargupta1
87
+ - [docs] Revise the Master Detail doc (#17927) @mapache-salvaje
88
+ - [docs] Revise the list view doc (#17928) @mapache-salvaje
89
+ - [docs] Audit and revise the Pro column docs (#17844) @mapache-salvaje
90
+ - [docs] Add some more context on Heatmap (#18256) @oliviertassinari
91
+ - [x-telemetry] Reduce Telemetry overhead (#18292) @oliviertassinari
92
+ - [code-infra] Align Node version used in CI to v22 (#18319) @LukasTy
93
+ - [code-infra] Fix pkg.pr.new publishing (#18316) @bernardobelchior
94
+ - [code-infra] Revert `React` to `19.0.0` (#18265) @LukasTy
95
+ - [code-infra] Use `catalog` for reused dependencies (#18302) @LukasTy
96
+ - [infra] Remove unused karma/mocha deps and files (#18340) @JCQuintas
97
+ - [infra] Update github label references to use 'scope' instead of 'component' (#18260) @michelengelen
98
+ - [infra] Use a single browser server in CI (#18230) @JCQuintas
99
+
100
+ ## 8.5.1
101
+
102
+ <!-- generated comparing v8.5.0..master -->
103
+
104
+ _Jun 5, 2025_
105
+
106
+ We'd like to extend a big thank you to the 9 contributors who made this release possible. Here are some highlights ✨:
107
+
108
+ - 📊 Allow exporting pie charts
109
+ - 📚 Documentation improvements
110
+ - 🌎 Improve Portuguese (ptPT) translations on the Data Grid
111
+ - 🌎 Improve Portuguese (ptPT, ptBR) translations on Charts
112
+ - 🌎 Improve Arabic (ar-SD) locale
113
+ - 🐞 Bugfixes
114
+
115
+ Special thanks go out to the community members for their valuable contributions: @moosekebab, @TiagoPortfolio.
116
+ The following are all team members who have contributed to this release:
117
+ @alexfauquette, @bernardobelchior, @JCQuintas, @KenanYusuf, @LukasTy, @michelengelen, @arminmeh.
118
+
119
+ <!--/ HIGHLIGHT_ABOVE_SEPARATOR /-->
120
+
121
+ ### Data Grid
122
+
123
+ #### `@mui/x-data-grid@8.5.1`
124
+
125
+ - [DataGrid] Fix `registerPipeProcessor()` for Node v20 (#18241) @arminmeh
126
+ - [DataGrid] Fix background color in column header filler cells (#18188) @KenanYusuf
127
+ - [DataGrid] Keep pipe pre-processors execution order when callback reference changes (#17558) @arminmeh
128
+ - [DataGrid] Use `useComponentRenderer` from x-internals (#18203) @bernardobelchior
129
+ - [l10n] Improve Arabic (ar-SD) locale (#17959) @moosekebab
130
+ - [l10n] Improve Portuguese from Portugal (pt-PT) locale (#18064) @TiagoPortfolio
131
+
132
+ #### `@mui/x-data-grid-pro@8.5.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
133
+
134
+ Same changes as in `@mui/x-data-grid@8.5.1`, plus:
135
+
136
+ - [DataGridPro] Skip rendering detail panels of the rows turned into skeleton rows with lazy loading (#17958) @arminmeh
137
+
138
+ #### `@mui/x-data-grid-premium@8.5.1` [![premium](https://mui.com/r/x-premium-svg)](https://mui.com/r/x-premium-svg-link 'Premium plan')
139
+
140
+ Same changes as in `@mui/x-data-grid-pro@8.5.1`.
141
+
142
+ ### Date and Time Pickers
143
+
144
+ #### `@mui/x-date-pickers@8.5.1`
145
+
146
+ - [pickers] Fix `transformOrigin` resolving based on popper `placement` (#18206) @LukasTy
147
+
148
+ #### `@mui/x-date-pickers-pro@8.5.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
149
+
150
+ Same changes as in `@mui/x-date-pickers@8.5.1`.
151
+
152
+ ### Charts
153
+
154
+ #### `@mui/x-charts@8.5.1`
155
+
156
+ - [charts] Allow skipping tooltip render (#18050) @alexfauquette
157
+ - [charts] Fix act warnings in toolbar tests (#18212) @JCQuintas
158
+ - [charts] Fix prop typo in `extendVertically` (#18211) @JCQuintas
159
+ - [charts] Fix responsive height for ChartsWrapper (#18183) @alexfauquette
160
+ - [charts] Improve charts toolbar accessibility (#18056) @bernardobelchior
161
+ - [charts] Let line series propagate null from the dataset (#18223) @alexfauquette
162
+ - [l10n] Add Portuguese locales for charts (pt-PT, pt-BR) (#18069) @bernardobelchior
163
+
164
+ #### `@mui/x-charts-pro@8.5.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
165
+
166
+ Same changes as in `@mui/x-charts@8.5.1`, plus:
167
+
168
+ - [charts-pro] Add `linear-sharp` curve as alternative to square edge (#17966) @JCQuintas
169
+ - [charts-pro] Add correct classes to `FunnelSectionLabel` (#18061) @JCQuintas
170
+ - [charts-pro] Allow exporting a pie chart (#18063) @bernardobelchior
171
+ - [charts-pro] Fix initial render for zoom slider selection (#18208) @bernardobelchior
172
+ - [charts-pro] Fix props being passed to DOM in FunnelChart (#18192) @JCQuintas
173
+ - [charts-pro] Show axis value in zoom slider tooltip (#18054) @bernardobelchior
174
+ - [charts-pro] Render the toolbar in the heatmap chart (#18247) @bernardobelchior
175
+
176
+ ### Tree View
177
+
178
+ #### `@mui/x-tree-view@8.5.1`
179
+
180
+ Internal changes.
181
+
182
+ #### `@mui/x-tree-view-pro@8.5.1` [![pro](https://mui.com/r/x-pro-svg)](https://mui.com/r/x-pro-svg-link 'Pro plan')
183
+
184
+ Same changes as in `@mui/x-tree-view@8.5.1`.
185
+
186
+ ### Docs
187
+
188
+ - [docs] Update `valueFormatter` signature in migration guide (#18226) @michelengelen
189
+
190
+ ### Core
191
+
192
+ - chore(deps): bump @next/eslint-plugin-next to 15.3.3 (#18155) @renovate[bot]
193
+ - chore(deps): bump @types/lodash to ^4.17.17 (#17990) @renovate[bot]
194
+ - chore(deps): bump babel (#18157) @renovate[bot]
195
+ - chore(deps): bump eslint to ^9.28.0 (#17352) @renovate[bot]
196
+ - chore(deps): bump material ui (#17802) @renovate[bot]
197
+ - chore(deps): bump next to ^15.3.3 (#18159) @renovate[bot]
198
+ - chore(deps): bump ossf/scorecard-action action to v2.4.2 (#18160) @renovate[bot]
199
+ - chore(deps): bump react-router to ^7.6.1 (#18162) @renovate[bot]
200
+ - chore(deps): bump yargs to ^18.0.0 (#18169) @renovate[bot]
201
+ - [code-infra] Different approach to console testing for `processRowUpdate` (#18213) @JCQuintas
202
+ - [code-infra] Fix act warnings in DataGrid/toolbar (#18207) @JCQuintas
203
+ - [code-infra] Remove `istanbul` references (#18194) @JCQuintas
204
+ - [code-infra] Remove codesandbox:ci (#18179) @JCQuintas
205
+ - [code-infra] Replace `mocha` with `vitest` on e2e and regression tests (#18071) @JCQuintas
206
+ - [code-infra] Upgrade @mui/internal-test-utils (#18191) @JCQuintas
207
+ - [code-infra] Use vitest for `no-direct-state-access` tests (#18209) @JCQuintas
208
+ - [infra] Improve test setup (#18228) @LukasTy
209
+ - [infra] Update bug and feature request templates to standardize label types (#18198) @michelengelen
210
+ - [infra] Use `playwright` docker image (#18186) @LukasTy
211
+
8
212
  ## 8.5.0
9
213
 
10
214
  _May 29, 2025_
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { RenderProp } from "../../hooks/utils/useGridComponentRenderer.js";
2
+ import { RenderProp } from '@mui/x-internals/useComponentRenderer';
3
3
  import type { GridSlotProps } from "../../models/index.js";
4
4
  export interface ColumnsPanelState {
5
5
  /**
@@ -13,11 +13,11 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _useId = _interopRequireDefault(require("@mui/utils/useId"));
14
14
  var _forwardRef = require("@mui/x-internals/forwardRef");
15
15
  var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
16
+ var _useComponentRenderer = require("@mui/x-internals/useComponentRenderer");
16
17
  var _GridPanelContext = require("../panel/GridPanelContext");
17
18
  var _useGridApiContext = require("../../hooks/utils/useGridApiContext");
18
19
  var _hooks = require("../../hooks");
19
20
  var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
20
- var _useGridComponentRenderer = require("../../hooks/utils/useGridComponentRenderer");
21
21
  var _jsxRuntime = require("react/jsx-runtime");
22
22
  const _excluded = ["render", "className", "onClick", "onPointerUp"];
23
23
  /**
@@ -68,7 +68,7 @@ const ColumnsPanelTrigger = exports.ColumnsPanelTrigger = (0, _forwardRef.forwar
68
68
  }
69
69
  onPointerUp?.(event);
70
70
  };
71
- const element = (0, _useGridComponentRenderer.useGridComponentRenderer)(rootProps.slots.baseButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseButton, {
71
+ const element = (0, _useComponentRenderer.useComponentRenderer)(rootProps.slots.baseButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseButton, {
72
72
  id: buttonId,
73
73
  'aria-haspopup': 'true',
74
74
  'aria-expanded': open ? 'true' : undefined,
@@ -1,5 +1,5 @@
1
1
  import { DataGridProcessedProps } from "../../models/props/DataGridProps.js";
2
2
  export type OwnerState = DataGridProcessedProps;
3
- export declare const GridRootStyles: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
3
+ export declare const GridRootStyles: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme> & {
4
4
  ownerState: OwnerState;
5
5
  }, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import("react").ClassAttributes<HTMLDivElement> | keyof import("react").HTMLAttributes<HTMLDivElement>>, {}>;
@@ -832,6 +832,9 @@ const GridRootStyles = exports.GridRootStyles = (0, _styles.styled)('div', {
832
832
  marginRight: _cssVariables.vars.spacing(2)
833
833
  },
834
834
  /* ScrollbarFiller styles */
835
+ [`& .${_gridClasses.gridClasses.columnHeaders} .${_gridClasses.gridClasses.scrollbarFiller}`]: {
836
+ backgroundColor: headerBackground
837
+ },
835
838
  [`.${_gridClasses.gridClasses.scrollbarFiller}`]: {
836
839
  minWidth: 'calc(var(--DataGrid-hasScrollY) * var(--DataGrid-scrollbarSize))',
837
840
  alignSelf: 'stretch',
@@ -853,6 +856,9 @@ const GridRootStyles = exports.GridRootStyles = (0, _styles.styled)('div', {
853
856
  [`& .${_gridClasses.gridClasses['filler--borderBottom']}`]: {
854
857
  borderBottom: '1px solid var(--DataGrid-rowBorderColor)'
855
858
  },
859
+ [`& .${_gridClasses.gridClasses.columnHeaders} .${_gridClasses.gridClasses.filler}`]: {
860
+ backgroundColor: headerBackground
861
+ },
856
862
  /* Hide grid rows, row filler, and vertical scrollbar. Used when skeleton/no columns overlay is visible */
857
863
  [`& .${_gridClasses.gridClasses['main--hiddenContent']}`]: {
858
864
  [`& .${_gridClasses.gridClasses.virtualScrollerContent}`]: {
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { RenderProp } from "../../hooks/utils/useGridComponentRenderer.js";
2
+ import { RenderProp } from '@mui/x-internals/useComponentRenderer';
3
3
  import { GridCsvExportOptions } from "../../models/gridExport.js";
4
4
  import type { GridSlotProps } from "../../models/index.js";
5
5
  export type ExportCsvProps = GridSlotProps['baseButton'] & {
@@ -11,9 +11,9 @@ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runt
11
11
  var React = _interopRequireWildcard(require("react"));
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _forwardRef = require("@mui/x-internals/forwardRef");
14
+ var _useComponentRenderer = require("@mui/x-internals/useComponentRenderer");
14
15
  var _useGridApiContext = require("../../hooks/utils/useGridApiContext");
15
16
  var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
16
- var _useGridComponentRenderer = require("../../hooks/utils/useGridComponentRenderer");
17
17
  var _jsxRuntime = require("react/jsx-runtime");
18
18
  const _excluded = ["render", "options", "onClick"];
19
19
  /**
@@ -41,7 +41,7 @@ const ExportCsv = exports.ExportCsv = (0, _forwardRef.forwardRef)(function Expor
41
41
  apiRef.current.exportDataAsCsv(options);
42
42
  onClick?.(event);
43
43
  };
44
- const element = (0, _useGridComponentRenderer.useGridComponentRenderer)(rootProps.slots.baseButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseButton, {
44
+ const element = (0, _useComponentRenderer.useComponentRenderer)(rootProps.slots.baseButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseButton, {
45
45
  onClick: handleClick
46
46
  }, other, {
47
47
  ref
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { RenderProp } from "../../hooks/utils/useGridComponentRenderer.js";
2
+ import { RenderProp } from '@mui/x-internals/useComponentRenderer';
3
3
  import { GridPrintExportOptions } from "../../models/gridExport.js";
4
4
  import type { GridSlotProps } from "../../models/index.js";
5
5
  export type ExportPrintProps = GridSlotProps['baseButton'] & {
@@ -11,9 +11,9 @@ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runt
11
11
  var React = _interopRequireWildcard(require("react"));
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _forwardRef = require("@mui/x-internals/forwardRef");
14
+ var _useComponentRenderer = require("@mui/x-internals/useComponentRenderer");
14
15
  var _useGridApiContext = require("../../hooks/utils/useGridApiContext");
15
16
  var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
16
- var _useGridComponentRenderer = require("../../hooks/utils/useGridComponentRenderer");
17
17
  var _jsxRuntime = require("react/jsx-runtime");
18
18
  const _excluded = ["render", "options", "onClick"];
19
19
  /**
@@ -41,7 +41,7 @@ const ExportPrint = exports.ExportPrint = (0, _forwardRef.forwardRef)(function E
41
41
  apiRef.current.exportDataAsPrint(options);
42
42
  onClick?.(event);
43
43
  };
44
- const element = (0, _useGridComponentRenderer.useGridComponentRenderer)(rootProps.slots.baseButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseButton, {
44
+ const element = (0, _useComponentRenderer.useComponentRenderer)(rootProps.slots.baseButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseButton, {
45
45
  onClick: handleClick
46
46
  }, other, {
47
47
  ref
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { RenderProp } from "../../hooks/utils/useGridComponentRenderer.js";
2
+ import { RenderProp } from '@mui/x-internals/useComponentRenderer';
3
3
  import type { GridSlotProps } from "../../models/index.js";
4
4
  export interface FilterPanelState {
5
5
  /**
@@ -12,12 +12,12 @@ var React = _interopRequireWildcard(require("react"));
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _useId = _interopRequireDefault(require("@mui/utils/useId"));
14
14
  var _forwardRef = require("@mui/x-internals/forwardRef");
15
+ var _useComponentRenderer = require("@mui/x-internals/useComponentRenderer");
15
16
  var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
16
17
  var _GridPanelContext = require("../panel/GridPanelContext");
17
18
  var _useGridApiContext = require("../../hooks/utils/useGridApiContext");
18
19
  var _hooks = require("../../hooks");
19
20
  var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
20
- var _useGridComponentRenderer = require("../../hooks/utils/useGridComponentRenderer");
21
21
  var _jsxRuntime = require("react/jsx-runtime");
22
22
  const _excluded = ["render", "className", "onClick", "onPointerUp"];
23
23
  /**
@@ -71,7 +71,7 @@ const FilterPanelTrigger = exports.FilterPanelTrigger = (0, _forwardRef.forwardR
71
71
  }
72
72
  onPointerUp?.(event);
73
73
  };
74
- const element = (0, _useGridComponentRenderer.useGridComponentRenderer)(rootProps.slots.baseButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseButton, {
74
+ const element = (0, _useComponentRenderer.useComponentRenderer)(rootProps.slots.baseButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseButton, {
75
75
  id: buttonId,
76
76
  'aria-haspopup': 'true',
77
77
  'aria-expanded': open ? 'true' : undefined,
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
+ import { RenderProp } from '@mui/x-internals/useComponentRenderer';
2
3
  import { QuickFilterState } from "./QuickFilterContext.js";
3
- import { RenderProp } from "../../hooks/utils/useGridComponentRenderer.js";
4
4
  import type { GridFilterModel } from "../../models/index.js";
5
5
  export type QuickFilterProps = Omit<React.HTMLAttributes<HTMLDivElement>, 'className'> & {
6
6
  /**
@@ -14,8 +14,8 @@ var _debounce = _interopRequireDefault(require("@mui/utils/debounce"));
14
14
  var _useEnhancedEffect = _interopRequireDefault(require("@mui/utils/useEnhancedEffect"));
15
15
  var _useId = _interopRequireDefault(require("@mui/utils/useId"));
16
16
  var _isDeepEqual = require("@mui/x-internals/isDeepEqual");
17
+ var _useComponentRenderer = require("@mui/x-internals/useComponentRenderer");
17
18
  var _QuickFilterContext = require("./QuickFilterContext");
18
- var _useGridComponentRenderer = require("../../hooks/utils/useGridComponentRenderer");
19
19
  var _useGridApiContext = require("../../hooks/utils/useGridApiContext");
20
20
  var _useGridSelector = require("../../hooks/utils/useGridSelector");
21
21
  var _filter = require("../../hooks/features/filter");
@@ -137,7 +137,7 @@ function QuickFilter(props) {
137
137
  ref.current.style.setProperty('--trigger-width', `${triggerRef.current?.offsetWidth}px`);
138
138
  }
139
139
  }, []);
140
- const element = (0, _useGridComponentRenderer.useGridComponentRenderer)('div', render, (0, _extends2.default)({
140
+ const element = (0, _useComponentRenderer.useComponentRenderer)('div', render, (0, _extends2.default)({
141
141
  className: resolvedClassName
142
142
  }, other, {
143
143
  ref
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { RenderProp } from "../../hooks/utils/useGridComponentRenderer.js";
2
+ import { RenderProp } from '@mui/x-internals/useComponentRenderer';
3
3
  import type { GridSlotProps } from "../../models/index.js";
4
4
  import { QuickFilterState } from "./QuickFilterContext.js";
5
5
  export type QuickFilterClearProps = Omit<GridSlotProps['baseIconButton'], 'className'> & {
@@ -11,8 +11,8 @@ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runt
11
11
  var React = _interopRequireWildcard(require("react"));
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _forwardRef = require("@mui/x-internals/forwardRef");
14
+ var _useComponentRenderer = require("@mui/x-internals/useComponentRenderer");
14
15
  var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
15
- var _useGridComponentRenderer = require("../../hooks/utils/useGridComponentRenderer");
16
16
  var _QuickFilterContext = require("./QuickFilterContext");
17
17
  var _jsxRuntime = require("react/jsx-runtime");
18
18
  const _excluded = ["render", "className", "onClick"];
@@ -45,7 +45,7 @@ const QuickFilterClear = exports.QuickFilterClear = (0, _forwardRef.forwardRef)(
45
45
  clearValue();
46
46
  onClick?.(event);
47
47
  };
48
- const element = (0, _useGridComponentRenderer.useGridComponentRenderer)(rootProps.slots.baseIconButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseIconButton, {
48
+ const element = (0, _useComponentRenderer.useComponentRenderer)(rootProps.slots.baseIconButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseIconButton, {
49
49
  className: resolvedClassName,
50
50
  tabIndex: -1
51
51
  }, other, {
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { RenderProp } from "../../hooks/utils/useGridComponentRenderer.js";
2
+ import { RenderProp } from '@mui/x-internals/useComponentRenderer';
3
3
  import type { GridSlotProps } from "../../models/index.js";
4
4
  import { QuickFilterState } from "./QuickFilterContext.js";
5
5
  export type QuickFilterControlProps = Omit<GridSlotProps['baseTextField'], 'className'> & {
@@ -12,8 +12,8 @@ var React = _interopRequireWildcard(require("react"));
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
14
14
  var _forwardRef = require("@mui/x-internals/forwardRef");
15
+ var _useComponentRenderer = require("@mui/x-internals/useComponentRenderer");
15
16
  var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
16
- var _useGridComponentRenderer = require("../../hooks/utils/useGridComponentRenderer");
17
17
  var _QuickFilterContext = require("./QuickFilterContext");
18
18
  var _jsxRuntime = require("react/jsx-runtime");
19
19
  const _excluded = ["render", "className", "slotProps", "onKeyDown", "onChange"];
@@ -72,7 +72,7 @@ const QuickFilterControl = exports.QuickFilterControl = (0, _forwardRef.forwardR
72
72
  onValueChange(event);
73
73
  onChange?.(event);
74
74
  };
75
- const element = (0, _useGridComponentRenderer.useGridComponentRenderer)(rootProps.slots.baseTextField, render, (0, _extends2.default)({}, rootProps.slotProps?.baseTextField, {
75
+ const element = (0, _useComponentRenderer.useComponentRenderer)(rootProps.slots.baseTextField, render, (0, _extends2.default)({}, rootProps.slotProps?.baseTextField, {
76
76
  slotProps: (0, _extends2.default)({
77
77
  htmlInput: (0, _extends2.default)({
78
78
  role: 'searchbox',
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { RenderProp } from "../../hooks/utils/useGridComponentRenderer.js";
2
+ import { RenderProp } from '@mui/x-internals/useComponentRenderer';
3
3
  import type { GridSlotProps } from "../../models/index.js";
4
4
  import { QuickFilterState } from "./QuickFilterContext.js";
5
5
  export type QuickFilterTriggerProps = Omit<GridSlotProps['baseButton'], 'className'> & {
@@ -11,9 +11,9 @@ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runt
11
11
  var React = _interopRequireWildcard(require("react"));
12
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _forwardRef = require("@mui/x-internals/forwardRef");
14
+ var _useComponentRenderer = require("@mui/x-internals/useComponentRenderer");
14
15
  var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
15
16
  var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
16
- var _useGridComponentRenderer = require("../../hooks/utils/useGridComponentRenderer");
17
17
  var _QuickFilterContext = require("./QuickFilterContext");
18
18
  var _jsxRuntime = require("react/jsx-runtime");
19
19
  const _excluded = ["render", "className", "onClick"];
@@ -49,7 +49,7 @@ const QuickFilterTrigger = exports.QuickFilterTrigger = (0, _forwardRef.forwardR
49
49
  onExpandedChange(!state.expanded);
50
50
  onClick?.(event);
51
51
  };
52
- const element = (0, _useGridComponentRenderer.useGridComponentRenderer)(rootProps.slots.baseButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseButton, {
52
+ const element = (0, _useComponentRenderer.useComponentRenderer)(rootProps.slots.baseButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseButton, {
53
53
  className: resolvedClassName,
54
54
  'aria-controls': controlId,
55
55
  'aria-expanded': state.expanded
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { RenderProp } from "../../hooks/utils/useGridComponentRenderer.js";
2
+ import { RenderProp } from '@mui/x-internals/useComponentRenderer';
3
3
  export type ToolbarProps = React.HTMLAttributes<HTMLDivElement> & {
4
4
  /**
5
5
  * A function to customize rendering of the component.
@@ -14,9 +14,9 @@ var _system = require("@mui/system");
14
14
  var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses"));
15
15
  var _clsx = _interopRequireDefault(require("clsx"));
16
16
  var _forwardRef = require("@mui/x-internals/forwardRef");
17
+ var _useComponentRenderer = require("@mui/x-internals/useComponentRenderer");
17
18
  var _cssVariables = require("../../constants/cssVariables");
18
19
  var _gridClasses = require("../../constants/gridClasses");
19
- var _useGridComponentRenderer = require("../../hooks/utils/useGridComponentRenderer");
20
20
  var _ToolbarContext = require("./ToolbarContext");
21
21
  var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
22
22
  var _utils = require("./utils");
@@ -187,7 +187,7 @@ const Toolbar = exports.Toolbar = (0, _forwardRef.forwardRef)(function Toolbar(p
187
187
  onItemFocus,
188
188
  onItemDisabled
189
189
  }), [focusableItemId, registerItem, unregisterItem, onItemKeyDown, onItemFocus, onItemDisabled]);
190
- const element = (0, _useGridComponentRenderer.useGridComponentRenderer)(ToolbarRoot, render, (0, _extends2.default)({
190
+ const element = (0, _useComponentRenderer.useComponentRenderer)(ToolbarRoot, render, (0, _extends2.default)({
191
191
  role: 'toolbar',
192
192
  'aria-orientation': 'horizontal',
193
193
  'aria-label': rootProps.label || undefined,
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { RenderProp } from "../../hooks/utils/useGridComponentRenderer.js";
2
+ import { RenderProp } from '@mui/x-internals/useComponentRenderer';
3
3
  import type { GridSlotProps } from "../../models/index.js";
4
4
  export type ToolbarButtonProps = GridSlotProps['baseIconButton'] & {
5
5
  /**
@@ -13,8 +13,8 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
  var _useForkRef = _interopRequireDefault(require("@mui/utils/useForkRef"));
14
14
  var _useId = _interopRequireDefault(require("@mui/utils/useId"));
15
15
  var _forwardRef = require("@mui/x-internals/forwardRef");
16
+ var _useComponentRenderer = require("@mui/x-internals/useComponentRenderer");
16
17
  var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
17
- var _useGridComponentRenderer = require("../../hooks/utils/useGridComponentRenderer");
18
18
  var _ToolbarContext = require("./ToolbarContext");
19
19
  var _jsxRuntime = require("react/jsx-runtime");
20
20
  const _excluded = ["render", "onKeyDown", "onFocus", "disabled", "aria-disabled"];
@@ -78,7 +78,7 @@ const ToolbarButton = exports.ToolbarButton = (0, _forwardRef.forwardRef)(functi
78
78
  }
79
79
  previousAriaDisabled.current = ariaDisabled;
80
80
  }, [ariaDisabled, id, onItemDisabled]);
81
- const element = (0, _useGridComponentRenderer.useGridComponentRenderer)(rootProps.slots.baseIconButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseIconButton, {
81
+ const element = (0, _useComponentRenderer.useComponentRenderer)(rootProps.slots.baseIconButton, render, (0, _extends2.default)({}, rootProps.slotProps?.baseIconButton, {
82
82
  tabIndex: focusableItemId === id ? 0 : -1
83
83
  }, other, {
84
84
  disabled,
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { RenderProp } from "../../hooks/utils/useGridComponentRenderer.js";
2
+ import { RenderProp } from '@mui/x-internals/useComponentRenderer';
3
3
  import type { GridSlotProps } from "../../models/index.js";
4
4
  export interface ColumnsPanelState {
5
5
  /**
@@ -6,11 +6,11 @@ import PropTypes from 'prop-types';
6
6
  import useId from '@mui/utils/useId';
7
7
  import { forwardRef } from '@mui/x-internals/forwardRef';
8
8
  import useForkRef from '@mui/utils/useForkRef';
9
+ import { useComponentRenderer } from '@mui/x-internals/useComponentRenderer';
9
10
  import { useGridPanelContext } from "../panel/GridPanelContext.js";
10
11
  import { useGridApiContext } from "../../hooks/utils/useGridApiContext.js";
11
12
  import { gridPreferencePanelStateSelector, GridPreferencePanelsValue, useGridSelector } from "../../hooks/index.js";
12
13
  import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
13
- import { useGridComponentRenderer } from "../../hooks/utils/useGridComponentRenderer.js";
14
14
  import { jsx as _jsx } from "react/jsx-runtime";
15
15
  /**
16
16
  * A button that opens and closes the columns panel.
@@ -60,7 +60,7 @@ const ColumnsPanelTrigger = forwardRef(function ColumnsPanelTrigger(props, ref)
60
60
  }
61
61
  onPointerUp?.(event);
62
62
  };
63
- const element = useGridComponentRenderer(rootProps.slots.baseButton, render, _extends({}, rootProps.slotProps?.baseButton, {
63
+ const element = useComponentRenderer(rootProps.slots.baseButton, render, _extends({}, rootProps.slotProps?.baseButton, {
64
64
  id: buttonId,
65
65
  'aria-haspopup': 'true',
66
66
  'aria-expanded': open ? 'true' : undefined,
@@ -1,5 +1,5 @@
1
1
  import { DataGridProcessedProps } from "../../models/props/DataGridProps.js";
2
2
  export type OwnerState = DataGridProcessedProps;
3
- export declare const GridRootStyles: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
3
+ export declare const GridRootStyles: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme> & {
4
4
  ownerState: OwnerState;
5
5
  }, Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof import("react").ClassAttributes<HTMLDivElement> | keyof import("react").HTMLAttributes<HTMLDivElement>>, {}>;
@@ -826,6 +826,9 @@ export const GridRootStyles = styled('div', {
826
826
  marginRight: vars.spacing(2)
827
827
  },
828
828
  /* ScrollbarFiller styles */
829
+ [`& .${c.columnHeaders} .${c.scrollbarFiller}`]: {
830
+ backgroundColor: headerBackground
831
+ },
829
832
  [`.${c.scrollbarFiller}`]: {
830
833
  minWidth: 'calc(var(--DataGrid-hasScrollY) * var(--DataGrid-scrollbarSize))',
831
834
  alignSelf: 'stretch',
@@ -847,6 +850,9 @@ export const GridRootStyles = styled('div', {
847
850
  [`& .${c['filler--borderBottom']}`]: {
848
851
  borderBottom: '1px solid var(--DataGrid-rowBorderColor)'
849
852
  },
853
+ [`& .${c.columnHeaders} .${c.filler}`]: {
854
+ backgroundColor: headerBackground
855
+ },
850
856
  /* Hide grid rows, row filler, and vertical scrollbar. Used when skeleton/no columns overlay is visible */
851
857
  [`& .${c['main--hiddenContent']}`]: {
852
858
  [`& .${c.virtualScrollerContent}`]: {
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { RenderProp } from "../../hooks/utils/useGridComponentRenderer.js";
2
+ import { RenderProp } from '@mui/x-internals/useComponentRenderer';
3
3
  import { GridCsvExportOptions } from "../../models/gridExport.js";
4
4
  import type { GridSlotProps } from "../../models/index.js";
5
5
  export type ExportCsvProps = GridSlotProps['baseButton'] & {
@@ -4,9 +4,9 @@ const _excluded = ["render", "options", "onClick"];
4
4
  import * as React from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import { forwardRef } from '@mui/x-internals/forwardRef';
7
+ import { useComponentRenderer } from '@mui/x-internals/useComponentRenderer';
7
8
  import { useGridApiContext } from "../../hooks/utils/useGridApiContext.js";
8
9
  import { useGridRootProps } from "../../hooks/utils/useGridRootProps.js";
9
- import { useGridComponentRenderer } from "../../hooks/utils/useGridComponentRenderer.js";
10
10
  import { jsx as _jsx } from "react/jsx-runtime";
11
11
  /**
12
12
  * A button that triggers a CSV export.
@@ -33,7 +33,7 @@ const ExportCsv = forwardRef(function ExportCsv(props, ref) {
33
33
  apiRef.current.exportDataAsCsv(options);
34
34
  onClick?.(event);
35
35
  };
36
- const element = useGridComponentRenderer(rootProps.slots.baseButton, render, _extends({}, rootProps.slotProps?.baseButton, {
36
+ const element = useComponentRenderer(rootProps.slots.baseButton, render, _extends({}, rootProps.slotProps?.baseButton, {
37
37
  onClick: handleClick
38
38
  }, other, {
39
39
  ref
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { RenderProp } from "../../hooks/utils/useGridComponentRenderer.js";
2
+ import { RenderProp } from '@mui/x-internals/useComponentRenderer';
3
3
  import { GridPrintExportOptions } from "../../models/gridExport.js";
4
4
  import type { GridSlotProps } from "../../models/index.js";
5
5
  export type ExportPrintProps = GridSlotProps['baseButton'] & {