@mui/x-data-grid 7.0.0-beta.2 → 7.0.0-beta.4

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 (496) hide show
  1. package/CHANGELOG.md +298 -23
  2. package/DataGrid/DataGrid.js +0 -6
  3. package/colDef/gridActionsColDef.js +1 -0
  4. package/colDef/gridBooleanColDef.js +1 -0
  5. package/colDef/gridCheckboxSelectionColDef.js +1 -0
  6. package/components/GridRow.d.ts +3 -1
  7. package/components/GridRow.js +10 -2
  8. package/components/GridScrollbarFillerCell.js +6 -21
  9. package/components/cell/GridCell.js +10 -12
  10. package/components/columnSelection/GridCellCheckboxRenderer.js +1 -2
  11. package/components/containers/GridRootStyles.js +51 -23
  12. package/components/panel/GridPanel.d.ts +1 -1
  13. package/components/panel/filterPanel/GridFilterInputBoolean.js +6 -4
  14. package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +8 -2
  15. package/components/panel/filterPanel/GridFilterInputSingleSelect.js +6 -4
  16. package/components/panel/filterPanel/GridFilterInputValue.js +4 -3
  17. package/components/virtualization/GridVirtualScrollerRenderZone.js +10 -3
  18. package/constants/gridClasses.d.ts +24 -8
  19. package/constants/gridClasses.js +1 -1
  20. package/hooks/features/clipboard/useGridClipboard.js +1 -1
  21. package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +5 -5
  22. package/hooks/features/columnHeaders/useGridColumnHeaders.js +46 -48
  23. package/hooks/features/editing/useGridCellEditing.js +3 -4
  24. package/hooks/features/editing/useGridRowEditing.js +3 -4
  25. package/hooks/features/sorting/useGridSorting.js +1 -2
  26. package/hooks/features/virtualization/gridVirtualizationSelectors.d.ts +9 -0
  27. package/hooks/features/virtualization/gridVirtualizationSelectors.js +7 -0
  28. package/hooks/features/virtualization/useGridVirtualScroller.js +19 -16
  29. package/hooks/features/virtualization/useGridVirtualization.d.ts +8 -0
  30. package/hooks/features/virtualization/useGridVirtualization.js +6 -1
  31. package/index.js +1 -1
  32. package/internals/index.d.ts +1 -1
  33. package/internals/index.js +1 -1
  34. package/models/colDef/gridColDef.d.ts +6 -0
  35. package/models/events/gridEventLookup.d.ts +1 -8
  36. package/models/props/DataGridProps.d.ts +0 -6
  37. package/modern/DataGrid/DataGrid.js +0 -6
  38. package/modern/colDef/gridActionsColDef.js +1 -0
  39. package/modern/colDef/gridBooleanColDef.js +1 -0
  40. package/modern/colDef/gridCheckboxSelectionColDef.js +1 -0
  41. package/modern/components/GridRow.js +10 -2
  42. package/modern/components/GridScrollbarFillerCell.js +6 -21
  43. package/modern/components/cell/GridCell.js +10 -12
  44. package/modern/components/columnSelection/GridCellCheckboxRenderer.js +1 -2
  45. package/modern/components/containers/GridRootStyles.js +51 -23
  46. package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +6 -4
  47. package/modern/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +8 -2
  48. package/modern/components/panel/filterPanel/GridFilterInputSingleSelect.js +6 -4
  49. package/modern/components/panel/filterPanel/GridFilterInputValue.js +4 -3
  50. package/modern/components/virtualization/GridVirtualScrollerRenderZone.js +10 -3
  51. package/modern/constants/gridClasses.js +1 -1
  52. package/modern/hooks/features/clipboard/useGridClipboard.js +1 -1
  53. package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +46 -48
  54. package/modern/hooks/features/editing/useGridCellEditing.js +3 -4
  55. package/modern/hooks/features/editing/useGridRowEditing.js +3 -4
  56. package/modern/hooks/features/sorting/useGridSorting.js +1 -2
  57. package/modern/hooks/features/virtualization/gridVirtualizationSelectors.js +7 -0
  58. package/modern/hooks/features/virtualization/useGridVirtualScroller.js +18 -14
  59. package/modern/hooks/features/virtualization/useGridVirtualization.js +6 -1
  60. package/modern/index.js +1 -1
  61. package/modern/internals/index.js +1 -1
  62. package/modern/utils/keyboardUtils.js +20 -11
  63. package/node/DataGrid/DataGrid.js +0 -6
  64. package/node/colDef/gridActionsColDef.js +1 -0
  65. package/node/colDef/gridBooleanColDef.js +1 -0
  66. package/node/colDef/gridCheckboxSelectionColDef.js +1 -0
  67. package/node/components/GridRow.js +10 -2
  68. package/node/components/GridScrollbarFillerCell.js +5 -20
  69. package/node/components/cell/GridCell.js +10 -12
  70. package/node/components/columnSelection/GridCellCheckboxRenderer.js +1 -2
  71. package/node/components/containers/GridRootStyles.js +51 -23
  72. package/node/components/panel/filterPanel/GridFilterInputBoolean.js +6 -4
  73. package/node/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +8 -2
  74. package/node/components/panel/filterPanel/GridFilterInputSingleSelect.js +6 -4
  75. package/node/components/panel/filterPanel/GridFilterInputValue.js +4 -3
  76. package/node/components/virtualization/GridVirtualScrollerRenderZone.js +10 -3
  77. package/node/constants/gridClasses.js +1 -1
  78. package/node/hooks/features/clipboard/useGridClipboard.js +1 -1
  79. package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +45 -47
  80. package/node/hooks/features/editing/useGridCellEditing.js +2 -3
  81. package/node/hooks/features/editing/useGridRowEditing.js +2 -3
  82. package/node/hooks/features/sorting/useGridSorting.js +1 -2
  83. package/node/hooks/features/virtualization/gridVirtualizationSelectors.js +8 -1
  84. package/node/hooks/features/virtualization/useGridVirtualScroller.js +17 -13
  85. package/node/hooks/features/virtualization/useGridVirtualization.js +7 -2
  86. package/node/index.js +1 -1
  87. package/node/internals/index.js +7 -0
  88. package/node/utils/keyboardUtils.js +25 -20
  89. package/package.json +3 -3
  90. package/utils/keyboardUtils.d.ts +7 -6
  91. package/utils/keyboardUtils.js +20 -11
  92. package/legacy/DataGrid/DataGrid.js +0 -670
  93. package/legacy/DataGrid/index.js +0 -2
  94. package/legacy/DataGrid/useDataGridComponent.js +0 -81
  95. package/legacy/DataGrid/useDataGridProps.js +0 -98
  96. package/legacy/colDef/gridActionsColDef.js +0 -18
  97. package/legacy/colDef/gridBooleanColDef.js +0 -42
  98. package/legacy/colDef/gridBooleanOperators.js +0 -16
  99. package/legacy/colDef/gridCheckboxSelectionColDef.js +0 -33
  100. package/legacy/colDef/gridDateColDef.js +0 -62
  101. package/legacy/colDef/gridDateOperators.js +0 -115
  102. package/legacy/colDef/gridDefaultColumnTypes.js +0 -19
  103. package/legacy/colDef/gridNumericColDef.js +0 -19
  104. package/legacy/colDef/gridNumericOperators.js +0 -145
  105. package/legacy/colDef/gridSingleSelectColDef.js +0 -64
  106. package/legacy/colDef/gridSingleSelectOperators.js +0 -46
  107. package/legacy/colDef/gridStringColDef.js +0 -27
  108. package/legacy/colDef/gridStringOperators.js +0 -112
  109. package/legacy/colDef/index.js +0 -13
  110. package/legacy/components/GridApiContext.js +0 -5
  111. package/legacy/components/GridColumnHeaders.js +0 -94
  112. package/legacy/components/GridDetailPanels.js +0 -4
  113. package/legacy/components/GridFooter.js +0 -42
  114. package/legacy/components/GridHeader.js +0 -13
  115. package/legacy/components/GridHeaders.js +0 -53
  116. package/legacy/components/GridLoadingOverlay.js +0 -21
  117. package/legacy/components/GridNoResultsOverlay.js +0 -14
  118. package/legacy/components/GridNoRowsOverlay.js +0 -23
  119. package/legacy/components/GridPagination.js +0 -85
  120. package/legacy/components/GridPinnedRows.js +0 -4
  121. package/legacy/components/GridRow.js +0 -457
  122. package/legacy/components/GridRowCount.js +0 -63
  123. package/legacy/components/GridScrollbarFillerCell.js +0 -34
  124. package/legacy/components/GridSelectedRowCount.js +0 -66
  125. package/legacy/components/base/GridBody.js +0 -2
  126. package/legacy/components/base/GridFooterPlaceholder.js +0 -12
  127. package/legacy/components/base/GridOverlays.js +0 -122
  128. package/legacy/components/base/index.js +0 -3
  129. package/legacy/components/cell/GridActionsCell.js +0 -294
  130. package/legacy/components/cell/GridActionsCellItem.js +0 -69
  131. package/legacy/components/cell/GridBooleanCell.js +0 -121
  132. package/legacy/components/cell/GridCell.js +0 -350
  133. package/legacy/components/cell/GridEditBooleanCell.js +0 -174
  134. package/legacy/components/cell/GridEditDateCell.js +0 -230
  135. package/legacy/components/cell/GridEditInputCell.js +0 -198
  136. package/legacy/components/cell/GridEditSingleSelectCell.js +0 -231
  137. package/legacy/components/cell/GridSkeletonCell.js +0 -52
  138. package/legacy/components/cell/index.js +0 -9
  139. package/legacy/components/columnHeaders/ColumnHeaderMenuIcon.js +0 -59
  140. package/legacy/components/columnHeaders/GridBaseColumnHeaders.js +0 -41
  141. package/legacy/components/columnHeaders/GridColumnGroupHeader.js +0 -132
  142. package/legacy/components/columnHeaders/GridColumnHeaderFilterIconButton.js +0 -93
  143. package/legacy/components/columnHeaders/GridColumnHeaderItem.js +0 -212
  144. package/legacy/components/columnHeaders/GridColumnHeaderSeparator.js +0 -71
  145. package/legacy/components/columnHeaders/GridColumnHeaderSortIcon.js +0 -79
  146. package/legacy/components/columnHeaders/GridColumnHeaderTitle.js +0 -84
  147. package/legacy/components/columnHeaders/GridColumnHeadersInner.js +0 -55
  148. package/legacy/components/columnHeaders/GridGenericColumnHeaderItem.js +0 -107
  149. package/legacy/components/columnHeaders/GridIconButtonContainer.js +0 -41
  150. package/legacy/components/columnHeaders/index.js +0 -5
  151. package/legacy/components/columnSelection/GridCellCheckboxRenderer.js +0 -160
  152. package/legacy/components/columnSelection/GridHeaderCheckbox.js +0 -134
  153. package/legacy/components/columnSelection/index.js +0 -2
  154. package/legacy/components/columnsManagement/GridColumnsManagement.js +0 -307
  155. package/legacy/components/columnsManagement/index.js +0 -1
  156. package/legacy/components/columnsManagement/utils.js +0 -22
  157. package/legacy/components/containers/GridFooterContainer.js +0 -50
  158. package/legacy/components/containers/GridOverlay.js +0 -52
  159. package/legacy/components/containers/GridRoot.js +0 -79
  160. package/legacy/components/containers/GridRootStyles.js +0 -398
  161. package/legacy/components/containers/GridToolbarContainer.js +0 -59
  162. package/legacy/components/containers/index.js +0 -4
  163. package/legacy/components/index.js +0 -19
  164. package/legacy/components/menu/GridMenu.js +0 -132
  165. package/legacy/components/menu/columnMenu/GridColumnHeaderMenu.js +0 -61
  166. package/legacy/components/menu/columnMenu/GridColumnMenu.js +0 -81
  167. package/legacy/components/menu/columnMenu/GridColumnMenuContainer.js +0 -56
  168. package/legacy/components/menu/columnMenu/GridColumnMenuItemProps.js +0 -1
  169. package/legacy/components/menu/columnMenu/GridColumnMenuProps.js +0 -1
  170. package/legacy/components/menu/columnMenu/index.js +0 -9
  171. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuColumnsItem.js +0 -21
  172. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuFilterItem.js +0 -41
  173. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuHideItem.js +0 -60
  174. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuManageItem.js +0 -41
  175. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +0 -80
  176. package/legacy/components/menu/columnMenu/menuItems/index.js +0 -5
  177. package/legacy/components/menu/index.js +0 -2
  178. package/legacy/components/panel/GridColumnsPanel.js +0 -22
  179. package/legacy/components/panel/GridPanel.js +0 -137
  180. package/legacy/components/panel/GridPanelContent.js +0 -49
  181. package/legacy/components/panel/GridPanelFooter.js +0 -50
  182. package/legacy/components/panel/GridPanelHeader.js +0 -48
  183. package/legacy/components/panel/GridPanelWrapper.js +0 -64
  184. package/legacy/components/panel/GridPreferencesPanel.js +0 -26
  185. package/legacy/components/panel/filterPanel/GridFilterForm.js +0 -528
  186. package/legacy/components/panel/filterPanel/GridFilterInputBoolean.js +0 -115
  187. package/legacy/components/panel/filterPanel/GridFilterInputDate.js +0 -121
  188. package/legacy/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +0 -116
  189. package/legacy/components/panel/filterPanel/GridFilterInputMultipleValue.js +0 -102
  190. package/legacy/components/panel/filterPanel/GridFilterInputSingleSelect.js +0 -146
  191. package/legacy/components/panel/filterPanel/GridFilterInputValue.js +0 -104
  192. package/legacy/components/panel/filterPanel/GridFilterInputValueProps.js +0 -1
  193. package/legacy/components/panel/filterPanel/GridFilterPanel.js +0 -264
  194. package/legacy/components/panel/filterPanel/filterPanelUtils.js +0 -22
  195. package/legacy/components/panel/filterPanel/index.js +0 -9
  196. package/legacy/components/panel/index.js +0 -7
  197. package/legacy/components/reexportable.js +0 -1
  198. package/legacy/components/toolbar/GridToolbar.js +0 -64
  199. package/legacy/components/toolbar/GridToolbarColumnsButton.js +0 -68
  200. package/legacy/components/toolbar/GridToolbarDensitySelector.js +0 -142
  201. package/legacy/components/toolbar/GridToolbarExport.js +0 -80
  202. package/legacy/components/toolbar/GridToolbarExportContainer.js +0 -105
  203. package/legacy/components/toolbar/GridToolbarFilterButton.js +0 -136
  204. package/legacy/components/toolbar/GridToolbarQuickFilter.js +0 -164
  205. package/legacy/components/toolbar/index.js +0 -7
  206. package/legacy/components/virtualization/GridBottomContainer.js +0 -25
  207. package/legacy/components/virtualization/GridMainContainer.js +0 -20
  208. package/legacy/components/virtualization/GridTopContainer.js +0 -35
  209. package/legacy/components/virtualization/GridVirtualScrollbar.js +0 -129
  210. package/legacy/components/virtualization/GridVirtualScroller.js +0 -93
  211. package/legacy/components/virtualization/GridVirtualScrollerContent.js +0 -35
  212. package/legacy/components/virtualization/GridVirtualScrollerFiller.js +0 -70
  213. package/legacy/components/virtualization/GridVirtualScrollerRenderZone.js +0 -42
  214. package/legacy/constants/defaultGridSlotsComponents.js +0 -33
  215. package/legacy/constants/envConstants.js +0 -19
  216. package/legacy/constants/gridClasses.js +0 -5
  217. package/legacy/constants/gridDetailPanelToggleField.js +0 -2
  218. package/legacy/constants/index.js +0 -3
  219. package/legacy/constants/localeTextConstants.js +0 -158
  220. package/legacy/context/GridContextProvider.js +0 -21
  221. package/legacy/context/GridRootPropsContext.js +0 -6
  222. package/legacy/context/index.js +0 -1
  223. package/legacy/hooks/core/gridCoreSelector.js +0 -7
  224. package/legacy/hooks/core/index.js +0 -1
  225. package/legacy/hooks/core/pipeProcessing/gridPipeProcessingApi.js +0 -1
  226. package/legacy/hooks/core/pipeProcessing/index.js +0 -4
  227. package/legacy/hooks/core/pipeProcessing/useGridPipeProcessing.js +0 -114
  228. package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +0 -26
  229. package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +0 -26
  230. package/legacy/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +0 -1
  231. package/legacy/hooks/core/strategyProcessing/index.js +0 -3
  232. package/legacy/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +0 -18
  233. package/legacy/hooks/core/strategyProcessing/useGridStrategyProcessing.js +0 -116
  234. package/legacy/hooks/core/useGridApiInitialization.js +0 -124
  235. package/legacy/hooks/core/useGridInitialization.js +0 -26
  236. package/legacy/hooks/core/useGridLocaleText.js +0 -12
  237. package/legacy/hooks/core/useGridLoggerFactory.js +0 -51
  238. package/legacy/hooks/core/useGridRefs.js +0 -13
  239. package/legacy/hooks/core/useGridStateInitialization.js +0 -106
  240. package/legacy/hooks/core/useGridTheme.js +0 -21
  241. package/legacy/hooks/features/clipboard/useGridClipboard.js +0 -92
  242. package/legacy/hooks/features/columnGrouping/gridColumnGroupsInterfaces.js +0 -1
  243. package/legacy/hooks/features/columnGrouping/gridColumnGroupsSelector.js +0 -24
  244. package/legacy/hooks/features/columnGrouping/gridColumnGroupsUtils.js +0 -92
  245. package/legacy/hooks/features/columnGrouping/index.js +0 -2
  246. package/legacy/hooks/features/columnGrouping/useGridColumnGrouping.js +0 -140
  247. package/legacy/hooks/features/columnHeaders/useGridColumnHeaders.js +0 -275
  248. package/legacy/hooks/features/columnMenu/columnMenuInterfaces.js +0 -1
  249. package/legacy/hooks/features/columnMenu/columnMenuSelector.js +0 -3
  250. package/legacy/hooks/features/columnMenu/index.js +0 -2
  251. package/legacy/hooks/features/columnMenu/useGridColumnMenu.js +0 -108
  252. package/legacy/hooks/features/columnMenu/useGridColumnMenuSlots.js +0 -71
  253. package/legacy/hooks/features/columns/gridColumnsInterfaces.js +0 -9
  254. package/legacy/hooks/features/columns/gridColumnsSelector.js +0 -174
  255. package/legacy/hooks/features/columns/gridColumnsUtils.js +0 -338
  256. package/legacy/hooks/features/columns/index.js +0 -2
  257. package/legacy/hooks/features/columns/useGridColumnSpanning.js +0 -105
  258. package/legacy/hooks/features/columns/useGridColumns.js +0 -319
  259. package/legacy/hooks/features/density/densitySelector.js +0 -10
  260. package/legacy/hooks/features/density/densityState.js +0 -1
  261. package/legacy/hooks/features/density/index.js +0 -2
  262. package/legacy/hooks/features/density/useGridDensity.js +0 -48
  263. package/legacy/hooks/features/dimensions/gridDimensionsApi.js +0 -1
  264. package/legacy/hooks/features/dimensions/gridDimensionsSelectors.js +0 -3
  265. package/legacy/hooks/features/dimensions/index.js +0 -2
  266. package/legacy/hooks/features/dimensions/useGridDimensions.js +0 -302
  267. package/legacy/hooks/features/editing/gridEditingSelectors.js +0 -4
  268. package/legacy/hooks/features/editing/useGridCellEditing.js +0 -456
  269. package/legacy/hooks/features/editing/useGridEditing.js +0 -145
  270. package/legacy/hooks/features/editing/useGridRowEditing.js +0 -567
  271. package/legacy/hooks/features/events/useGridEvents.js +0 -23
  272. package/legacy/hooks/features/export/serializers/csvSerializer.js +0 -155
  273. package/legacy/hooks/features/export/useGridCsvExport.js +0 -75
  274. package/legacy/hooks/features/export/useGridPrintExport.js +0 -313
  275. package/legacy/hooks/features/export/utils.js +0 -49
  276. package/legacy/hooks/features/filter/gridFilterSelector.js +0 -165
  277. package/legacy/hooks/features/filter/gridFilterState.js +0 -20
  278. package/legacy/hooks/features/filter/gridFilterUtils.js +0 -330
  279. package/legacy/hooks/features/filter/index.js +0 -2
  280. package/legacy/hooks/features/filter/useGridFilter.js +0 -378
  281. package/legacy/hooks/features/focus/gridFocusState.js +0 -1
  282. package/legacy/hooks/features/focus/gridFocusStateSelector.js +0 -31
  283. package/legacy/hooks/features/focus/index.js +0 -2
  284. package/legacy/hooks/features/focus/useGridFocus.js +0 -408
  285. package/legacy/hooks/features/headerFiltering/gridHeaderFilteringSelectors.js +0 -10
  286. package/legacy/hooks/features/headerFiltering/index.js +0 -1
  287. package/legacy/hooks/features/headerFiltering/useGridHeaderFiltering.js +0 -93
  288. package/legacy/hooks/features/index.js +0 -16
  289. package/legacy/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +0 -565
  290. package/legacy/hooks/features/pagination/gridPaginationInterfaces.js +0 -1
  291. package/legacy/hooks/features/pagination/gridPaginationSelector.js +0 -115
  292. package/legacy/hooks/features/pagination/gridPaginationUtils.js +0 -31
  293. package/legacy/hooks/features/pagination/index.js +0 -2
  294. package/legacy/hooks/features/pagination/useGridPagination.js +0 -175
  295. package/legacy/hooks/features/preferencesPanel/gridPreferencePanelSelector.js +0 -3
  296. package/legacy/hooks/features/preferencesPanel/gridPreferencePanelState.js +0 -1
  297. package/legacy/hooks/features/preferencesPanel/gridPreferencePanelsValue.js +0 -6
  298. package/legacy/hooks/features/preferencesPanel/index.js +0 -3
  299. package/legacy/hooks/features/preferencesPanel/useGridPreferencesPanel.js +0 -125
  300. package/legacy/hooks/features/rowSelection/gridRowSelectionSelector.js +0 -19
  301. package/legacy/hooks/features/rowSelection/index.js +0 -1
  302. package/legacy/hooks/features/rowSelection/useGridRowSelection.js +0 -419
  303. package/legacy/hooks/features/rowSelection/useGridRowSelectionPreProcessors.js +0 -45
  304. package/legacy/hooks/features/rowSelection/utils.js +0 -8
  305. package/legacy/hooks/features/rows/gridRowsInterfaces.js +0 -1
  306. package/legacy/hooks/features/rows/gridRowsMetaSelector.js +0 -3
  307. package/legacy/hooks/features/rows/gridRowsMetaState.js +0 -1
  308. package/legacy/hooks/features/rows/gridRowsSelector.js +0 -90
  309. package/legacy/hooks/features/rows/gridRowsUtils.js +0 -294
  310. package/legacy/hooks/features/rows/index.js +0 -4
  311. package/legacy/hooks/features/rows/useGridParamsApi.js +0 -142
  312. package/legacy/hooks/features/rows/useGridRows.js +0 -466
  313. package/legacy/hooks/features/rows/useGridRowsMeta.js +0 -236
  314. package/legacy/hooks/features/rows/useGridRowsPreProcessors.js +0 -82
  315. package/legacy/hooks/features/scroll/useGridScroll.js +0 -133
  316. package/legacy/hooks/features/sorting/gridSortingSelector.js +0 -56
  317. package/legacy/hooks/features/sorting/gridSortingState.js +0 -1
  318. package/legacy/hooks/features/sorting/gridSortingUtils.js +0 -154
  319. package/legacy/hooks/features/sorting/index.js +0 -2
  320. package/legacy/hooks/features/sorting/useGridSorting.js +0 -276
  321. package/legacy/hooks/features/statePersistence/gridStatePersistenceInterface.js +0 -1
  322. package/legacy/hooks/features/statePersistence/index.js +0 -1
  323. package/legacy/hooks/features/statePersistence/useGridStatePersistence.js +0 -25
  324. package/legacy/hooks/features/virtualization/gridVirtualizationSelectors.js +0 -52
  325. package/legacy/hooks/features/virtualization/index.js +0 -2
  326. package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +0 -643
  327. package/legacy/hooks/features/virtualization/useGridVirtualization.js +0 -58
  328. package/legacy/hooks/index.js +0 -3
  329. package/legacy/hooks/utils/index.js +0 -9
  330. package/legacy/hooks/utils/useFirstRender.js +0 -8
  331. package/legacy/hooks/utils/useGridApiContext.js +0 -9
  332. package/legacy/hooks/utils/useGridApiEventHandler.js +0 -105
  333. package/legacy/hooks/utils/useGridApiMethod.js +0 -11
  334. package/legacy/hooks/utils/useGridApiRef.js +0 -7
  335. package/legacy/hooks/utils/useGridAriaAttributes.js +0 -25
  336. package/legacy/hooks/utils/useGridInitializeState.js +0 -8
  337. package/legacy/hooks/utils/useGridLogger.js +0 -10
  338. package/legacy/hooks/utils/useGridNativeEventListener.js +0 -32
  339. package/legacy/hooks/utils/useGridPrivateApiContext.js +0 -12
  340. package/legacy/hooks/utils/useGridRootProps.js +0 -9
  341. package/legacy/hooks/utils/useGridSelector.js +0 -54
  342. package/legacy/hooks/utils/useGridVisibleRows.js +0 -42
  343. package/legacy/hooks/utils/useLazyRef.js +0 -11
  344. package/legacy/hooks/utils/useOnMount.js +0 -7
  345. package/legacy/hooks/utils/useResizeObserver.js +0 -36
  346. package/legacy/hooks/utils/useRunOnce.js +0 -18
  347. package/legacy/hooks/utils/useTimeout.js +0 -38
  348. package/legacy/index.js +0 -38
  349. package/legacy/internals/index.js +0 -68
  350. package/legacy/internals/utils/computeSlots.js +0 -17
  351. package/legacy/internals/utils/index.js +0 -3
  352. package/legacy/internals/utils/propValidation.js +0 -21
  353. package/legacy/internals/utils/useProps.js +0 -32
  354. package/legacy/joy/icons.js +0 -432
  355. package/legacy/joy/index.js +0 -2
  356. package/legacy/joy/joySlots.js +0 -420
  357. package/legacy/locales/arSD.js +0 -160
  358. package/legacy/locales/beBY.js +0 -184
  359. package/legacy/locales/bgBG.js +0 -160
  360. package/legacy/locales/coreLocales.js +0 -62
  361. package/legacy/locales/csCZ.js +0 -181
  362. package/legacy/locales/daDK.js +0 -160
  363. package/legacy/locales/deDE.js +0 -160
  364. package/legacy/locales/elGR.js +0 -160
  365. package/legacy/locales/enUS.js +0 -4
  366. package/legacy/locales/esES.js +0 -160
  367. package/legacy/locales/faIR.js +0 -160
  368. package/legacy/locales/fiFI.js +0 -160
  369. package/legacy/locales/frFR.js +0 -160
  370. package/legacy/locales/heIL.js +0 -160
  371. package/legacy/locales/hrHR.js +0 -160
  372. package/legacy/locales/huHU.js +0 -160
  373. package/legacy/locales/index.js +0 -35
  374. package/legacy/locales/itIT.js +0 -160
  375. package/legacy/locales/jaJP.js +0 -160
  376. package/legacy/locales/koKR.js +0 -162
  377. package/legacy/locales/nbNO.js +0 -162
  378. package/legacy/locales/nlNL.js +0 -160
  379. package/legacy/locales/plPL.js +0 -163
  380. package/legacy/locales/ptBR.js +0 -160
  381. package/legacy/locales/ptPT.js +0 -160
  382. package/legacy/locales/roRO.js +0 -160
  383. package/legacy/locales/ruRU.js +0 -181
  384. package/legacy/locales/skSK.js +0 -181
  385. package/legacy/locales/svSE.js +0 -160
  386. package/legacy/locales/trTR.js +0 -161
  387. package/legacy/locales/ukUA.js +0 -182
  388. package/legacy/locales/urPK.js +0 -160
  389. package/legacy/locales/viVN.js +0 -160
  390. package/legacy/locales/zhCN.js +0 -160
  391. package/legacy/locales/zhHK.js +0 -160
  392. package/legacy/locales/zhTW.js +0 -160
  393. package/legacy/material/components/MUISelectOption.js +0 -14
  394. package/legacy/material/icons/GridColumnUnsortedIcon.js +0 -16
  395. package/legacy/material/icons/index.js +0 -89
  396. package/legacy/material/index.js +0 -69
  397. package/legacy/models/api/gridApiCommon.js +0 -1
  398. package/legacy/models/api/gridApiCommunity.js +0 -1
  399. package/legacy/models/api/gridCallbackDetails.js +0 -1
  400. package/legacy/models/api/gridColumnApi.js +0 -1
  401. package/legacy/models/api/gridColumnGroupingApi.js +0 -1
  402. package/legacy/models/api/gridColumnMenuApi.js +0 -1
  403. package/legacy/models/api/gridColumnSpanning.js +0 -1
  404. package/legacy/models/api/gridCoreApi.js +0 -1
  405. package/legacy/models/api/gridCsvExportApi.js +0 -1
  406. package/legacy/models/api/gridDensityApi.js +0 -1
  407. package/legacy/models/api/gridEditingApi.js +0 -1
  408. package/legacy/models/api/gridFilterApi.js +0 -1
  409. package/legacy/models/api/gridFocusApi.js +0 -1
  410. package/legacy/models/api/gridHeaderFilteringApi.js +0 -1
  411. package/legacy/models/api/gridLocaleTextApi.js +0 -1
  412. package/legacy/models/api/gridLoggerApi.js +0 -1
  413. package/legacy/models/api/gridParamsApi.js +0 -1
  414. package/legacy/models/api/gridPreferencesPanelApi.js +0 -1
  415. package/legacy/models/api/gridPrintExportApi.js +0 -1
  416. package/legacy/models/api/gridRowApi.js +0 -1
  417. package/legacy/models/api/gridRowSelectionApi.js +0 -1
  418. package/legacy/models/api/gridRowsMetaApi.js +0 -1
  419. package/legacy/models/api/gridScrollApi.js +0 -1
  420. package/legacy/models/api/gridSortApi.js +0 -1
  421. package/legacy/models/api/gridStateApi.js +0 -1
  422. package/legacy/models/api/gridVirtualizationApi.js +0 -1
  423. package/legacy/models/api/index.js +0 -16
  424. package/legacy/models/colDef/gridColDef.js +0 -1
  425. package/legacy/models/colDef/gridColType.js +0 -1
  426. package/legacy/models/colDef/gridColumnTypesRecord.js +0 -1
  427. package/legacy/models/colDef/index.js +0 -6
  428. package/legacy/models/controlStateItem.js +0 -1
  429. package/legacy/models/cursorCoordinates.js +0 -1
  430. package/legacy/models/elementSize.js +0 -1
  431. package/legacy/models/events/gridEventListener.js +0 -1
  432. package/legacy/models/events/gridEventLookup.js +0 -1
  433. package/legacy/models/events/gridEventPublisher.js +0 -1
  434. package/legacy/models/events/index.js +0 -3
  435. package/legacy/models/gridApiCaches.js +0 -1
  436. package/legacy/models/gridCell.js +0 -1
  437. package/legacy/models/gridCellClass.js +0 -1
  438. package/legacy/models/gridColumnGrouping.js +0 -11
  439. package/legacy/models/gridColumnHeaderClass.js +0 -1
  440. package/legacy/models/gridColumnSpanning.js +0 -1
  441. package/legacy/models/gridDensity.js +0 -1
  442. package/legacy/models/gridEditRowModel.js +0 -16
  443. package/legacy/models/gridExport.js +0 -1
  444. package/legacy/models/gridFeatureMode.js +0 -1
  445. package/legacy/models/gridFilterItem.js +0 -11
  446. package/legacy/models/gridFilterModel.js +0 -1
  447. package/legacy/models/gridFilterOperator.js +0 -1
  448. package/legacy/models/gridHeaderFilteringModel.js +0 -1
  449. package/legacy/models/gridIconSlotsComponent.js +0 -1
  450. package/legacy/models/gridPaginationProps.js +0 -1
  451. package/legacy/models/gridRenderContextProps.js +0 -1
  452. package/legacy/models/gridRowSelectionModel.js +0 -1
  453. package/legacy/models/gridRows.js +0 -1
  454. package/legacy/models/gridSlotsComponent.js +0 -1
  455. package/legacy/models/gridSlotsComponentsProps.js +0 -1
  456. package/legacy/models/gridSortModel.js +0 -1
  457. package/legacy/models/gridStateCommunity.js +0 -1
  458. package/legacy/models/index.js +0 -29
  459. package/legacy/models/logger.js +0 -1
  460. package/legacy/models/muiEvent.js +0 -1
  461. package/legacy/models/params/gridCellParams.js +0 -1
  462. package/legacy/models/params/gridColumnGroupHeaderParams.js +0 -1
  463. package/legacy/models/params/gridColumnHeaderParams.js +0 -1
  464. package/legacy/models/params/gridColumnOrderChangeParams.js +0 -1
  465. package/legacy/models/params/gridColumnResizeParams.js +0 -1
  466. package/legacy/models/params/gridEditCellParams.js +0 -27
  467. package/legacy/models/params/gridHeaderSelectionCheckboxParams.js +0 -1
  468. package/legacy/models/params/gridMenuParams.js +0 -1
  469. package/legacy/models/params/gridPreferencePanelParams.js +0 -1
  470. package/legacy/models/params/gridRowParams.js +0 -44
  471. package/legacy/models/params/gridRowSelectionCheckboxParams.js +0 -1
  472. package/legacy/models/params/gridScrollParams.js +0 -1
  473. package/legacy/models/params/gridValueOptionsParams.js +0 -1
  474. package/legacy/models/params/index.js +0 -13
  475. package/legacy/models/props/DataGridProps.js +0 -1
  476. package/legacy/themeAugmentation/index.js +0 -4
  477. package/legacy/themeAugmentation/overrides.js +0 -1
  478. package/legacy/themeAugmentation/props.js +0 -1
  479. package/legacy/utils/EventManager.js +0 -91
  480. package/legacy/utils/Store.js +0 -34
  481. package/legacy/utils/cleanupTracking/CleanupTracking.js +0 -1
  482. package/legacy/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +0 -29
  483. package/legacy/utils/cleanupTracking/TimerBasedCleanupTracking.js +0 -52
  484. package/legacy/utils/createControllablePromise.js +0 -11
  485. package/legacy/utils/createSelector.js +0 -120
  486. package/legacy/utils/doesSupportPreventScroll.js +0 -13
  487. package/legacy/utils/domUtils.js +0 -49
  488. package/legacy/utils/exportAs.js +0 -40
  489. package/legacy/utils/fastMemo.js +0 -5
  490. package/legacy/utils/fastObjectShallowCompare.js +0 -32
  491. package/legacy/utils/getGridLocalization.js +0 -15
  492. package/legacy/utils/getPublicApiRef.js +0 -5
  493. package/legacy/utils/index.js +0 -1
  494. package/legacy/utils/keyboardUtils.js +0 -60
  495. package/legacy/utils/utils.js +0 -189
  496. package/legacy/utils/warning.js +0 -25
@@ -15,7 +15,7 @@ var _styles = require("@mui/material/styles");
15
15
  var _useGridRootProps = require("../../../hooks/utils/useGridRootProps");
16
16
  var _filterPanelUtils = require("./filterPanelUtils");
17
17
  var _jsxRuntime = require("react/jsx-runtime");
18
- const _excluded = ["item", "applyValue", "type", "apiRef", "focusElementRef", "placeholder", "tabIndex", "label", "isFilterActive", "clearButton", "InputLabelProps"];
18
+ const _excluded = ["item", "applyValue", "type", "apiRef", "focusElementRef", "placeholder", "tabIndex", "label", "variant", "isFilterActive", "clearButton", "InputLabelProps"];
19
19
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
20
20
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
21
21
  const renderSingleSelectOptions = ({
@@ -58,6 +58,7 @@ function GridFilterInputSingleSelect(props) {
58
58
  placeholder,
59
59
  tabIndex,
60
60
  label: labelProp,
61
+ variant = 'standard',
61
62
  clearButton
62
63
  } = props,
63
64
  others = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
@@ -98,7 +99,7 @@ function GridFilterInputSingleSelect(props) {
98
99
  id: labelId,
99
100
  htmlFor: id,
100
101
  shrink: true,
101
- variant: "standard",
102
+ variant: variant,
102
103
  children: label
103
104
  })), /*#__PURE__*/(0, _jsxRuntime.jsx)(rootProps.slots.baseSelect, (0, _extends2.default)({
104
105
  id: id,
@@ -106,14 +107,15 @@ function GridFilterInputSingleSelect(props) {
106
107
  labelId: labelId,
107
108
  value: filterValue,
108
109
  onChange: onFilterChange,
109
- variant: "standard",
110
+ variant: variant,
110
111
  type: type || 'text',
111
112
  inputProps: {
112
113
  tabIndex,
113
114
  ref: focusElementRef,
114
115
  placeholder: placeholder ?? apiRef.current.getLocaleText('filterPanelInputPlaceholder')
115
116
  },
116
- native: isSelectNative
117
+ native: isSelectNative,
118
+ notched: variant === 'outlined' ? true : undefined
117
119
  }, others /* FIXME: typing error */, rootProps.slotProps?.baseSelect, {
118
120
  children: renderSingleSelectOptions({
119
121
  column: resolvedColumn,
@@ -13,7 +13,7 @@ var _utils = require("@mui/utils");
13
13
  var _useTimeout = require("../../../hooks/utils/useTimeout");
14
14
  var _useGridRootProps = require("../../../hooks/utils/useGridRootProps");
15
15
  var _jsxRuntime = require("react/jsx-runtime");
16
- const _excluded = ["item", "applyValue", "type", "apiRef", "focusElementRef", "tabIndex", "disabled", "isFilterActive", "clearButton", "InputProps"];
16
+ const _excluded = ["item", "applyValue", "type", "apiRef", "focusElementRef", "tabIndex", "disabled", "isFilterActive", "clearButton", "InputProps", "variant"];
17
17
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
18
18
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
19
19
  function GridFilterInputValue(props) {
@@ -26,7 +26,8 @@ function GridFilterInputValue(props) {
26
26
  tabIndex,
27
27
  disabled,
28
28
  clearButton,
29
- InputProps
29
+ InputProps,
30
+ variant = 'standard'
30
31
  } = props,
31
32
  others = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
32
33
  const filterTimeout = (0, _useTimeout.useTimeout)();
@@ -61,7 +62,7 @@ function GridFilterInputValue(props) {
61
62
  placeholder: apiRef.current.getLocaleText('filterPanelInputPlaceholder'),
62
63
  value: filterValueState,
63
64
  onChange: onFilterChange,
64
- variant: "standard",
65
+ variant: variant,
65
66
  type: type || 'text',
66
67
  InputProps: (0, _extends2.default)({}, applying || clearButton ? {
67
68
  endAdornment: applying ? /*#__PURE__*/(0, _jsxRuntime.jsx)(rootProps.slots.loadIcon, {
@@ -11,6 +11,9 @@ var React = _interopRequireWildcard(require("react"));
11
11
  var _clsx = _interopRequireDefault(require("clsx"));
12
12
  var _system = require("@mui/system");
13
13
  var _utils = require("@mui/utils");
14
+ var _useGridApiContext = require("../../hooks/utils/useGridApiContext");
15
+ var _useGridSelector = require("../../hooks/utils/useGridSelector");
16
+ var _virtualization = require("../../hooks/features/virtualization");
14
17
  var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
15
18
  var _gridClasses = require("../../constants/gridClasses");
16
19
  var _jsxRuntime = require("react/jsx-runtime");
@@ -34,19 +37,23 @@ const VirtualScrollerRenderZoneRoot = (0, _system.styled)('div', {
34
37
  position: 'absolute',
35
38
  display: 'flex',
36
39
  // Prevents margin collapsing when using `getRowSpacing`
37
- flexDirection: 'column',
38
- transform: 'translate3d(0, var(--DataGrid-offsetTop), 0)'
40
+ flexDirection: 'column'
39
41
  });
40
42
  const GridVirtualScrollerRenderZone = exports.GridVirtualScrollerRenderZone = /*#__PURE__*/React.forwardRef(function GridVirtualScrollerRenderZone(props, ref) {
41
43
  const {
42
44
  className
43
45
  } = props,
44
46
  other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
47
+ const apiRef = (0, _useGridApiContext.useGridApiContext)();
45
48
  const rootProps = (0, _useGridRootProps.useGridRootProps)();
46
49
  const classes = useUtilityClasses(rootProps);
50
+ const offsets = (0, _useGridSelector.useGridSelector)(apiRef, _virtualization.gridOffsetsSelector);
47
51
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(VirtualScrollerRenderZoneRoot, (0, _extends2.default)({
48
52
  ref: ref,
49
53
  className: (0, _clsx.default)(classes.root, className),
50
- ownerState: rootProps
54
+ ownerState: rootProps,
55
+ style: {
56
+ transform: `translate3d(0, ${offsets.top}px, 0)`
57
+ }
51
58
  }, other));
52
59
  });
@@ -9,4 +9,4 @@ var _utils = require("@mui/utils");
9
9
  function getDataGridUtilityClass(slot) {
10
10
  return (0, _utils.unstable_generateUtilityClass)('MuiDataGrid', slot);
11
11
  }
12
- const gridClasses = exports.gridClasses = (0, _utils.unstable_generateUtilityClasses)('MuiDataGrid', ['actionsCell', 'aggregationColumnHeader', 'aggregationColumnHeader--alignLeft', 'aggregationColumnHeader--alignCenter', 'aggregationColumnHeader--alignRight', 'aggregationColumnHeaderLabel', 'autoHeight', 'autosizing', 'booleanCell', 'cell--editable', 'cell--editing', 'cell--textCenter', 'cell--textLeft', 'cell--textRight', 'cell--withRenderer', 'cell--rangeTop', 'cell--rangeBottom', 'cell--rangeLeft', 'cell--rangeRight', 'cell--pinnedLeft', 'cell--pinnedRight', 'cell--selectionMode', 'cell', 'cellContent', 'cellCheckbox', 'cellEmpty', 'cellSkeleton', 'cellOffsetLeft', 'checkboxInput', 'columnHeader--alignCenter', 'columnHeader--alignLeft', 'columnHeader--alignRight', 'columnHeader--dragging', 'columnHeader--moving', 'columnHeader--numeric', 'columnHeader--sortable', 'columnHeader--sorted', 'columnHeader--filtered', 'columnHeader', 'columnHeaderCheckbox', 'columnHeaderDraggableContainer', 'columnHeaderDropZone', 'columnHeaderTitle', 'columnHeaderTitleContainer', 'columnHeaderTitleContainerContent', 'columnGroupHeader', 'columnHeader--filledGroup', 'columnHeader--emptyGroup', 'columnHeader--showColumnBorder', 'columnHeaders', 'columnHeadersInner', 'columnHeadersInner--scrollable', 'columnSeparator--resizable', 'columnSeparator--resizing', 'columnSeparator--sideLeft', 'columnSeparator--sideRight', 'columnSeparator', 'columnsManagement', 'columnsManagementRow', 'columnsManagementHeader', 'columnsManagementFooter', 'container--top', 'container--bottom', 'detailPanel', 'detailPanels', 'detailPanelToggleCell', 'detailPanelToggleCell--expanded', 'footerCell', 'panel', 'panelHeader', 'panelWrapper', 'panelContent', 'panelFooter', 'paper', 'editBooleanCell', 'editInputCell', 'filler', 'filler--pinnedLeft', 'filler--pinnedRight', 'filterForm', 'filterFormDeleteIcon', 'filterFormLogicOperatorInput', 'filterFormColumnInput', 'filterFormOperatorInput', 'filterFormValueInput', 'filterIcon', 'footerContainer', 'headerFilterRow', 'iconButtonContainer', 'iconSeparator', 'main', 'main--hasPinnedRight', 'menu', 'menuIcon', 'menuIconButton', 'menuOpen', 'menuList', 'overlay', 'overlayWrapper', 'overlayWrapperInner', 'root', 'root--densityStandard', 'root--densityComfortable', 'root--densityCompact', 'root--disableUserSelection', 'row', 'row--editable', 'row--editing', 'row--firstVisible', 'row--lastVisible', 'row--dragging', 'row--dynamicHeight', 'row--detailPanelExpanded', 'rowReorderCellPlaceholder', 'rowCount', 'rowReorderCellContainer', 'rowReorderCell', 'rowReorderCell--draggable', 'scrollArea--left', 'scrollArea--right', 'scrollArea', 'scrollbar', 'scrollbar--vertical', 'scrollbar--horizontal', 'selectedRowCount', 'sortIcon', 'toolbarContainer', 'toolbarFilterList', 'virtualScroller', 'virtualScrollerContent', 'virtualScrollerContent--overflowed', 'virtualScrollerRenderZone', 'pinnedColumns', 'pinnedColumnHeaders', 'pinnedColumnHeaders--left', 'pinnedColumnHeaders--right', 'withVerticalBorder', 'withBorderColor', 'cell--withRightBorder', 'cell--withLeftBorder', 'columnHeader--withRightBorder', 'treeDataGroupingCell', 'treeDataGroupingCellToggle', 'groupingCriteriaCell', 'groupingCriteriaCellToggle', 'pinnedRows', 'pinnedRows--top', 'pinnedRows--bottom', 'pinnedRowsRenderZone']);
12
+ const gridClasses = exports.gridClasses = (0, _utils.unstable_generateUtilityClasses)('MuiDataGrid', ['actionsCell', 'aggregationColumnHeader', 'aggregationColumnHeader--alignLeft', 'aggregationColumnHeader--alignCenter', 'aggregationColumnHeader--alignRight', 'aggregationColumnHeaderLabel', 'autoHeight', 'autosizing', 'booleanCell', 'cell--editable', 'cell--editing', 'cell--flex', 'cell--textCenter', 'cell--textLeft', 'cell--textRight', 'cell--rangeTop', 'cell--rangeBottom', 'cell--rangeLeft', 'cell--rangeRight', 'cell--pinnedLeft', 'cell--pinnedRight', 'cell--selectionMode', 'cell', 'cellCheckbox', 'cellEmpty', 'cellSkeleton', 'cellOffsetLeft', 'checkboxInput', 'columnHeader--alignCenter', 'columnHeader--alignLeft', 'columnHeader--alignRight', 'columnHeader--dragging', 'columnHeader--moving', 'columnHeader--numeric', 'columnHeader--sortable', 'columnHeader--sorted', 'columnHeader--filtered', 'columnHeader', 'columnHeaderCheckbox', 'columnHeaderDraggableContainer', 'columnHeaderDropZone', 'columnHeaderTitle', 'columnHeaderTitleContainer', 'columnHeaderTitleContainerContent', 'columnGroupHeader', 'columnHeader--filledGroup', 'columnHeader--emptyGroup', 'columnHeader--showColumnBorder', 'columnHeaders', 'columnHeadersInner', 'columnHeadersInner--scrollable', 'columnSeparator--resizable', 'columnSeparator--resizing', 'columnSeparator--sideLeft', 'columnSeparator--sideRight', 'columnSeparator', 'columnsManagement', 'columnsManagementRow', 'columnsManagementHeader', 'columnsManagementFooter', 'container--top', 'container--bottom', 'detailPanel', 'detailPanels', 'detailPanelToggleCell', 'detailPanelToggleCell--expanded', 'footerCell', 'panel', 'panelHeader', 'panelWrapper', 'panelContent', 'panelFooter', 'paper', 'editBooleanCell', 'editInputCell', 'filler', 'filler--pinnedLeft', 'filler--pinnedRight', 'filterForm', 'filterFormDeleteIcon', 'filterFormLogicOperatorInput', 'filterFormColumnInput', 'filterFormOperatorInput', 'filterFormValueInput', 'filterIcon', 'footerContainer', 'headerFilterRow', 'iconButtonContainer', 'iconSeparator', 'main', 'main--hasPinnedRight', 'menu', 'menuIcon', 'menuIconButton', 'menuOpen', 'menuList', 'overlay', 'overlayWrapper', 'overlayWrapperInner', 'root', 'root--densityStandard', 'root--densityComfortable', 'root--densityCompact', 'root--disableUserSelection', 'row', 'row--editable', 'row--editing', 'row--firstVisible', 'row--lastVisible', 'row--dragging', 'row--dynamicHeight', 'row--detailPanelExpanded', 'rowReorderCellPlaceholder', 'rowCount', 'rowReorderCellContainer', 'rowReorderCell', 'rowReorderCell--draggable', 'scrollArea--left', 'scrollArea--right', 'scrollArea', 'scrollbar', 'scrollbar--vertical', 'scrollbar--horizontal', 'scrollbarFiller', 'scrollbarFiller--header', 'scrollbarFiller--borderTop', 'scrollbarFiller--pinnedRight', 'selectedRowCount', 'sortIcon', 'toolbarContainer', 'toolbarFilterList', 'virtualScroller', 'virtualScrollerContent', 'virtualScrollerContent--overflowed', 'virtualScrollerRenderZone', 'pinnedColumns', 'pinnedColumnHeaders', 'pinnedColumnHeaders--left', 'pinnedColumnHeaders--right', 'withVerticalBorder', 'withBorderColor', 'cell--withRightBorder', 'cell--withLeftBorder', 'columnHeader--withRightBorder', 'treeDataGroupingCell', 'treeDataGroupingCellToggle', 'groupingCriteriaCell', 'groupingCriteriaCellToggle', 'pinnedRows', 'pinnedRows--top', 'pinnedRows--bottom', 'pinnedRowsRenderZone']);
@@ -61,7 +61,7 @@ const useGridClipboard = (apiRef, props) => {
61
61
  const ignoreValueFormatter = (typeof ignoreValueFormatterProp === 'object' ? ignoreValueFormatterProp?.clipboardExport : ignoreValueFormatterProp) || false;
62
62
  const clipboardCopyCellDelimiter = props.clipboardCopyCellDelimiter;
63
63
  const handleCopy = React.useCallback(event => {
64
- if (!((event.ctrlKey || event.metaKey) && event.key === 'c')) {
64
+ if (!((event.ctrlKey || event.metaKey) && event.key.toLowerCase() === 'c' && !event.shiftKey && !event.altKey)) {
65
65
  return;
66
66
  }
67
67
 
@@ -10,6 +10,7 @@ var React = _interopRequireWildcard(require("react"));
10
10
  var _utils = require("@mui/utils");
11
11
  var _styles = require("@mui/material/styles");
12
12
  var _utils2 = require("../../utils");
13
+ var _useGridRootProps = require("../../utils/useGridRootProps");
13
14
  var _useGridPrivateApiContext = require("../../utils/useGridPrivateApiContext");
14
15
  var _useGridApiEventHandler = require("../../utils/useGridApiEventHandler");
15
16
  var _GridColumnHeaderItem = require("../../../components/columnHeaders/GridColumnHeaderItem");
@@ -32,19 +33,11 @@ const SpaceFiller = (0, _styles.styled)('div')({
32
33
  const GridColumnHeaderRow = exports.GridColumnHeaderRow = (0, _styles.styled)('div', {
33
34
  name: 'MuiDataGrid',
34
35
  slot: 'ColumnHeaderRow',
35
- overridesResolver: (props, styles) => styles.columnHeaderRow
36
- })(({
37
- ownerState: {
38
- params: {
39
- position
40
- } = {},
41
- leftOverflow = 0
42
- }
43
- }) => ({
36
+ overridesResolver: (_, styles) => styles.columnHeaderRow
37
+ })({
44
38
  display: 'flex',
45
- height: 'var(--DataGrid-headerHeight)',
46
- transform: position === undefined ? `translate3d(${leftOverflow !== 0 ? `calc(var(--DataGrid-offsetLeft) - ${leftOverflow}px)` : 'var(--DataGrid-offsetLeft)'}, 0, 0)` : undefined
47
- }));
39
+ height: 'var(--DataGrid-headerHeight)'
40
+ });
48
41
  const useGridColumnHeaders = props => {
49
42
  const {
50
43
  innerRef: innerRefProp,
@@ -64,10 +57,12 @@ const useGridColumnHeaders = props => {
64
57
  const [dragCol, setDragCol] = React.useState('');
65
58
  const [resizeCol, setResizeCol] = React.useState('');
66
59
  const apiRef = (0, _useGridPrivateApiContext.useGridPrivateApiContext)();
60
+ const rootProps = (0, _useGridRootProps.useGridRootProps)();
67
61
  const hasVirtualization = (0, _utils2.useGridSelector)(apiRef, _virtualization.gridVirtualizationColumnEnabledSelector);
68
62
  const innerRef = React.useRef(null);
69
63
  const handleInnerRef = (0, _utils.unstable_useForkRef)(innerRefProp, innerRef);
70
64
  const dimensions = (0, _utils2.useGridSelector)(apiRef, _dimensions.gridDimensionsSelector);
65
+ const offsets = (0, _utils2.useGridSelector)(apiRef, _virtualization.gridOffsetsSelector);
71
66
  const renderContext = (0, _utils2.useGridSelector)(apiRef, _virtualization.gridRenderContextColumnsSelector);
72
67
  const visiblePinnedColumns = (0, _utils2.useGridSelector)(apiRef, _columns.gridVisiblePinnedColumnDefinitionsSelector);
73
68
  React.useEffect(() => {
@@ -98,11 +93,18 @@ const useGridColumnHeaders = props => {
98
93
  lastColumnToRender
99
94
  };
100
95
  };
101
- const getFiller = (params, borderTop = false) => {
96
+ const getFillers = (params, children, leftOverflow, borderTop = false) => {
102
97
  const isPinnedRight = params?.position === _columns.GridPinnedColumnPosition.RIGHT;
103
- const hasScrollbarFiller = visiblePinnedColumns.right.length > 0 && isPinnedRight || visiblePinnedColumns.right.length === 0 && params?.position === undefined;
98
+ const isNotPinned = params?.position === undefined;
99
+ const hasScrollbarFiller = visiblePinnedColumns.right.length > 0 && isPinnedRight || visiblePinnedColumns.right.length === 0 && isNotPinned;
100
+ const leftOffsetWidth = offsets.left - leftOverflow;
104
101
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(React.Fragment, {
105
- children: [params?.position === undefined && /*#__PURE__*/(0, _jsxRuntime.jsx)(SpaceFiller, {
102
+ children: [isNotPinned && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
103
+ role: "presentation",
104
+ style: {
105
+ width: leftOffsetWidth
106
+ }
107
+ }), children, isNotPinned && /*#__PURE__*/(0, _jsxRuntime.jsx)(SpaceFiller, {
106
108
  className: _gridClasses.gridClasses.columnHeader
107
109
  }), hasScrollbarFiller && /*#__PURE__*/(0, _jsxRuntime.jsx)(_GridScrollbarFillerCell.GridScrollbarFillerCell, {
108
110
  header: true,
@@ -136,13 +138,11 @@ const useGridColumnHeaders = props => {
136
138
  tabIndex: tabIndex
137
139
  }, other), colDef.field));
138
140
  }
139
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(GridColumnHeaderRow, {
141
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(GridColumnHeaderRow, {
140
142
  role: "row",
141
143
  "aria-rowindex": headerGroupingMaxDepth + 1,
142
- ownerState: {
143
- params
144
- },
145
- children: [columns, getFiller(params)]
144
+ ownerState: rootProps,
145
+ children: getFillers(params, columns, 0)
146
146
  });
147
147
  };
148
148
  const getColumnGroupHeaders = params => {
@@ -208,41 +208,39 @@ const useGridColumnHeaders = props => {
208
208
  });
209
209
  }
210
210
  headerToRender.forEach((depthInfo, depthIndex) => {
211
- columns.push( /*#__PURE__*/(0, _jsxRuntime.jsxs)(GridColumnHeaderRow, {
211
+ const children = depthInfo.elements.map(({
212
+ groupId,
213
+ width,
214
+ fields,
215
+ colIndex,
216
+ hasFocus,
217
+ tabIndex
218
+ }, groupIndex) => {
219
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_GridColumnGroupHeader.GridColumnGroupHeader, {
220
+ groupId: groupId,
221
+ width: width,
222
+ fields: fields,
223
+ colIndex: colIndex,
224
+ depth: depthIndex,
225
+ isLastColumn: colIndex === visibleColumns.length - fields.length,
226
+ maxDepth: headerToRender.length,
227
+ height: dimensions.headerHeight,
228
+ hasFocus: hasFocus,
229
+ tabIndex: tabIndex
230
+ }, groupIndex);
231
+ });
232
+ columns.push( /*#__PURE__*/(0, _jsxRuntime.jsx)(GridColumnHeaderRow, {
212
233
  role: "row",
213
234
  "aria-rowindex": depthIndex + 1,
214
- ownerState: {
215
- params,
216
- leftOverflow: depthInfo.leftOverflow
217
- },
218
- children: [depthInfo.elements.map(({
219
- groupId,
220
- width,
221
- fields,
222
- colIndex,
223
- hasFocus,
224
- tabIndex
225
- }, groupIndex) => {
226
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_GridColumnGroupHeader.GridColumnGroupHeader, {
227
- groupId: groupId,
228
- width: width,
229
- fields: fields,
230
- colIndex: colIndex,
231
- depth: depthIndex,
232
- isLastColumn: colIndex === visibleColumns.length - fields.length,
233
- maxDepth: headerToRender.length,
234
- height: dimensions.headerHeight,
235
- hasFocus: hasFocus,
236
- tabIndex: tabIndex
237
- }, groupIndex);
238
- }), getFiller(params)]
235
+ ownerState: rootProps,
236
+ children: getFillers(params, children, depthInfo.leftOverflow)
239
237
  }, depthIndex));
240
238
  });
241
239
  return columns;
242
240
  };
243
241
  return {
244
242
  renderContext,
245
- getFiller,
243
+ getFillers,
246
244
  getColumnHeaders,
247
245
  getColumnsToRender,
248
246
  getColumnGroupHeaders,
@@ -108,12 +108,11 @@ const useGridCellEditing = (apiRef, props) => {
108
108
  }
109
109
  if ((0, _keyboardUtils.isPrintableKey)(event)) {
110
110
  reason = _gridEditCellParams.GridCellEditStartReasons.printableKeyDown;
111
- } else if ((event.ctrlKey || event.metaKey) && event.key === 'v') {
111
+ } else if ((0, _keyboardUtils.isPasteShortcut)(event)) {
112
112
  reason = _gridEditCellParams.GridCellEditStartReasons.pasteKeyDown;
113
113
  } else if (event.key === 'Enter') {
114
114
  reason = _gridEditCellParams.GridCellEditStartReasons.enterKeyDown;
115
- } else if (event.key === 'Delete' || event.key === 'Backspace') {
116
- // Delete on Windows, Backspace on macOS
115
+ } else if (event.key === 'Backspace' || event.key === 'Delete') {
117
116
  reason = _gridEditCellParams.GridCellEditStartReasons.deleteKeyDown;
118
117
  }
119
118
  if (reason) {
@@ -168,12 +168,11 @@ const useGridRowEditing = (apiRef, props) => {
168
168
  }
169
169
  if ((0, _keyboardUtils.isPrintableKey)(event)) {
170
170
  reason = _gridRowParams.GridRowEditStartReasons.printableKeyDown;
171
- } else if ((event.ctrlKey || event.metaKey) && event.key === 'v') {
171
+ } else if ((0, _keyboardUtils.isPasteShortcut)(event)) {
172
172
  reason = _gridRowParams.GridRowEditStartReasons.printableKeyDown;
173
173
  } else if (event.key === 'Enter') {
174
174
  reason = _gridRowParams.GridRowEditStartReasons.enterKeyDown;
175
- } else if (event.key === 'Delete' || event.key === 'Backspace') {
176
- // Delete on Windows, Backspace on macOS
175
+ } else if (event.key === 'Backspace' || event.key === 'Delete') {
177
176
  reason = _gridRowParams.GridRowEditStartReasons.deleteKeyDown;
178
177
  }
179
178
  if (reason) {
@@ -8,7 +8,6 @@ exports.useGridSorting = exports.sortingStateInitializer = void 0;
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
  var React = _interopRequireWildcard(require("react"));
10
10
  var _utils = require("@mui/utils");
11
- var _keyboardUtils = require("../../../utils/keyboardUtils");
12
11
  var _useGridApiEventHandler = require("../../utils/useGridApiEventHandler");
13
12
  var _useGridApiMethod = require("../../utils/useGridApiMethod");
14
13
  var _useGridLogger = require("../../utils/useGridLogger");
@@ -218,7 +217,7 @@ const useGridSorting = (apiRef, props) => {
218
217
  return;
219
218
  }
220
219
  // Ctrl + Enter opens the column menu
221
- if ((0, _keyboardUtils.isEnterKey)(event.key) && !event.ctrlKey && !event.metaKey) {
220
+ if (event.key === 'Enter' && !event.ctrlKey && !event.metaKey) {
222
221
  sortColumn(field, undefined, event.shiftKey);
223
222
  }
224
223
  }, [sortColumn, props.disableColumnSorting]);
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.gridVirtualizationSelector = exports.gridVirtualizationEnabledSelector = exports.gridVirtualizationColumnEnabledSelector = exports.gridRenderContextSelector = exports.gridRenderContextColumnsSelector = void 0;
6
+ exports.gridVirtualizationSelector = exports.gridVirtualizationEnabledSelector = exports.gridVirtualizationColumnEnabledSelector = exports.gridRenderContextSelector = exports.gridRenderContextColumnsSelector = exports.gridOffsetsSelector = void 0;
7
7
  var _createSelector = require("../../../utils/createSelector");
8
8
  /**
9
9
  * Get the columns state
@@ -31,6 +31,13 @@ const gridVirtualizationColumnEnabledSelector = exports.gridVirtualizationColumn
31
31
  */
32
32
  const gridRenderContextSelector = exports.gridRenderContextSelector = (0, _createSelector.createSelector)(gridVirtualizationSelector, state => state.renderContext);
33
33
 
34
+ /**
35
+ * Get the offsets
36
+ * @category Virtualization
37
+ * @ignore - do not document.
38
+ */
39
+ const gridOffsetsSelector = exports.gridOffsetsSelector = (0, _createSelector.createSelector)(gridVirtualizationSelector, state => state.offsets);
40
+
34
41
  /**
35
42
  * Get the render context, with only columns filled in.
36
43
  * This is cached, so it can be used to only re-render when the column interval changes.
@@ -48,7 +48,6 @@ const useGridVirtualScroller = () => {
48
48
  const hasBottomPinnedRows = pinnedRows.bottom.length > 0;
49
49
  const [panels, setPanels] = React.useState(EMPTY_DETAIL_PANELS);
50
50
  const theme = (0, _styles.useTheme)();
51
- const columnPositions = (0, _useGridSelector.useGridSelector)(apiRef, _gridColumnsSelector.gridColumnPositionsSelector);
52
51
  const cellFocus = (0, _useGridSelector.useGridSelector)(apiRef, _gridFocusStateSelector.gridFocusCellSelector);
53
52
  const cellTabIndex = (0, _useGridSelector.useGridSelector)(apiRef, _gridFocusStateSelector.gridTabIndexCellSelector);
54
53
  const rowsMeta = (0, _useGridSelector.useGridSelector)(apiRef, _gridRowsMetaSelector.gridRowsMetaSelector);
@@ -64,6 +63,7 @@ const useGridVirtualScroller = () => {
64
63
  (0, _useResizeObserver.useResizeObserver)(mainRef, () => apiRef.current.resize());
65
64
  const previousContext = React.useRef(_useGridVirtualization.EMPTY_RENDER_CONTEXT);
66
65
  const previousRowContext = React.useRef(_useGridVirtualization.EMPTY_RENDER_CONTEXT);
66
+ const offsets = (0, _useGridSelector.useGridSelector)(apiRef, _gridVirtualizationSelectors.gridOffsetsSelector);
67
67
  const renderContext = (0, _useGridSelector.useGridSelector)(apiRef, _gridVirtualizationSelectors.gridRenderContextSelector);
68
68
  const scrollPosition = React.useRef({
69
69
  top: 0,
@@ -83,22 +83,17 @@ const useGridVirtualScroller = () => {
83
83
  }
84
84
  return -1;
85
85
  }, [cellFocus, visibleColumns]);
86
- React.useEffect(() => {
87
- const direction = theme.direction === 'ltr' ? 1 : -1;
88
- const top = (0, _gridRowsMetaSelector.gridRowsMetaSelector)(apiRef.current.state).positions[renderContext.firstRowIndex];
89
- const left = direction * columnPositions[renderContext.firstColumnIndex] - columnPositions[pinnedColumns.left.length];
90
- gridRootRef.current?.style.setProperty('--DataGrid-offsetTop', `${top}px`);
91
- gridRootRef.current?.style.setProperty('--DataGrid-offsetLeft', `${left}px`);
92
- }, [apiRef, gridRootRef, theme.direction, columnPositions, pinnedColumns.left.length, renderContext]);
93
86
  const updateRenderContext = React.useCallback((nextRenderContext, rawRenderContext) => {
94
87
  if (areRenderContextsEqual(nextRenderContext, apiRef.current.state.virtualization.renderContext)) {
95
88
  return;
96
89
  }
97
90
  const didRowsIntervalChange = nextRenderContext.firstRowIndex !== previousRowContext.current.firstRowIndex || nextRenderContext.lastRowIndex !== previousRowContext.current.lastRowIndex;
91
+ const nextOffsets = computeOffsets(apiRef, nextRenderContext, theme.direction, pinnedColumns.left.length);
98
92
  apiRef.current.setState(state => {
99
93
  return (0, _extends2.default)({}, state, {
100
94
  virtualization: (0, _extends2.default)({}, state.virtualization, {
101
- renderContext: nextRenderContext
95
+ renderContext: nextRenderContext,
96
+ offsets: nextOffsets
102
97
  })
103
98
  });
104
99
  });
@@ -112,7 +107,7 @@ const useGridVirtualScroller = () => {
112
107
  }
113
108
  previousContext.current = rawRenderContext;
114
109
  prevTotalWidth.current = dimensions.columnsTotalWidth;
115
- }, [apiRef, dimensions.isReady, dimensions.columnsTotalWidth]);
110
+ }, [apiRef, pinnedColumns.left.length, theme.direction, dimensions.isReady, dimensions.columnsTotalWidth]);
116
111
  const triggerUpdateRenderContext = () => {
117
112
  const inputs = inputsSelector(apiRef, rootProps, enabled, enabledForColumns);
118
113
  const [nextRenderContext, rawRenderContext] = computeRenderContext(inputs, scrollPosition);
@@ -308,6 +303,7 @@ const useGridVirtualScroller = () => {
308
303
  firstColumnToRender: firstColumnToRender,
309
304
  lastColumnToRender: lastColumnToRender,
310
305
  selected: isSelected,
306
+ offsets: offsets,
311
307
  dimensions: dimensions,
312
308
  isFirstVisible: isFirstVisible,
313
309
  isLastVisible: isLastVisible,
@@ -355,9 +351,6 @@ const useGridVirtualScroller = () => {
355
351
  // TODO a scroll reset should not be necessary
356
352
  scrollerRef.current.scrollLeft = 0;
357
353
  scrollerRef.current.scrollTop = 0;
358
- } else {
359
- gridRootRef.current?.style.setProperty('--DataGrid-offsetTop', '0px');
360
- gridRootRef.current?.style.setProperty('--DataGrid-offsetLeft', '0px');
361
354
  }
362
355
  }, [enabled, gridRootRef, scrollerRef]);
363
356
  (0, _useRunOnce.useRunOnce)(outerSize.width !== 0, () => {
@@ -606,4 +599,15 @@ function areRenderContextsEqual(context1, context2) {
606
599
  return true;
607
600
  }
608
601
  return context1.firstRowIndex === context2.firstRowIndex && context1.lastRowIndex === context2.lastRowIndex && context1.firstColumnIndex === context2.firstColumnIndex && context1.lastColumnIndex === context2.lastColumnIndex;
602
+ }
603
+ function computeOffsets(apiRef, renderContext, direction, pinnedLeftLength) {
604
+ const factor = direction === 'ltr' ? 1 : -1;
605
+ const rowPositions = (0, _gridRowsMetaSelector.gridRowsMetaSelector)(apiRef.current.state).positions;
606
+ const columnPositions = (0, _gridColumnsSelector.gridColumnPositionsSelector)(apiRef);
607
+ const top = rowPositions[renderContext.firstRowIndex] ?? 0;
608
+ const left = factor * (columnPositions[renderContext.firstColumnIndex] ?? 0) - (columnPositions[pinnedLeftLength] ?? 0);
609
+ return {
610
+ top,
611
+ left
612
+ };
609
613
  }
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.EMPTY_RENDER_CONTEXT = void 0;
7
+ exports.EMPTY_RENDER_CONTEXT = exports.EMPTY_OFFSETS = void 0;
8
8
  exports.useGridVirtualization = useGridVirtualization;
9
9
  exports.virtualizationStateInitializer = void 0;
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
@@ -12,6 +12,10 @@ var React = _interopRequireWildcard(require("react"));
12
12
  var _useGridApiMethod = require("../../utils/useGridApiMethod");
13
13
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
14
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
+ const EMPTY_OFFSETS = exports.EMPTY_OFFSETS = {
16
+ top: 0,
17
+ left: 0
18
+ };
15
19
  const EMPTY_RENDER_CONTEXT = exports.EMPTY_RENDER_CONTEXT = {
16
20
  firstRowIndex: 0,
17
21
  lastRowIndex: 0,
@@ -22,7 +26,8 @@ const virtualizationStateInitializer = (state, props) => {
22
26
  const virtualization = {
23
27
  enabled: !props.disableVirtualization,
24
28
  enabledForColumns: true,
25
- renderContext: EMPTY_RENDER_CONTEXT
29
+ renderContext: EMPTY_RENDER_CONTEXT,
30
+ offsets: EMPTY_OFFSETS
26
31
  };
27
32
  return (0, _extends2.default)({}, state, {
28
33
  virtualization
package/node/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-data-grid v7.0.0-beta.2
2
+ * @mui/x-data-grid v7.0.0-beta.4
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -85,6 +85,7 @@ var _exportNames = {
85
85
  getActiveElement: true,
86
86
  isEventTargetInPortal: true,
87
87
  isNavigationKey: true,
88
+ isPasteShortcut: true,
88
89
  buildWarning: true,
89
90
  exportAs: true,
90
91
  useGridPrivateApiContext: true,
@@ -330,6 +331,12 @@ Object.defineProperty(exports, "isNavigationKey", {
330
331
  return _keyboardUtils.isNavigationKey;
331
332
  }
332
333
  });
334
+ Object.defineProperty(exports, "isPasteShortcut", {
335
+ enumerable: true,
336
+ get: function () {
337
+ return _keyboardUtils.isPasteShortcut;
338
+ }
339
+ });
333
340
  Object.defineProperty(exports, "isSingleSelectColDef", {
334
341
  enumerable: true,
335
342
  get: function () {
@@ -3,24 +3,20 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.isPageKeys = exports.isNavigationKey = exports.isMultipleKey = exports.isKeyboardEvent = exports.isHomeOrEndKeys = exports.isHideMenuKey = exports.isEscapeKey = exports.isEnterKey = exports.isDeleteKeys = exports.isCellExitEditModeKeys = exports.isCellEnterEditModeKeys = exports.isCellEditCommitKeys = exports.isArrowKeys = exports.GRID_MULTIPLE_SELECTION_KEYS = exports.GRID_CELL_EXIT_EDIT_MODE_KEYS = exports.GRID_CELL_EDIT_COMMIT_KEYS = void 0;
6
+ exports.isNavigationKey = exports.isMultipleKey = exports.isKeyboardEvent = exports.isHideMenuKey = exports.isEscapeKey = exports.isCellExitEditModeKeys = exports.isCellEnterEditModeKeys = exports.isCellEditCommitKeys = exports.GRID_MULTIPLE_SELECTION_KEYS = exports.GRID_CELL_EXIT_EDIT_MODE_KEYS = exports.GRID_CELL_EDIT_COMMIT_KEYS = void 0;
7
+ exports.isPasteShortcut = isPasteShortcut;
7
8
  exports.isPrintableKey = isPrintableKey;
8
- exports.isTabKey = exports.isSpaceKey = void 0;
9
- const isEscapeKey = key => key === 'Escape'; // TODO remove
9
+ exports.isTabKey = void 0;
10
+ /**
11
+ * @deprecated there is no meaninfuly logic abstracted, use event.key directly.
12
+ */
13
+ const isEscapeKey = key => key === 'Escape';
14
+
15
+ /**
16
+ * @deprecated there is no meaninfuly logic abstracted, use event.key directly.
17
+ */
10
18
  exports.isEscapeKey = isEscapeKey;
11
- const isEnterKey = key => key === 'Enter'; // TODO remove
12
- exports.isEnterKey = isEnterKey;
13
- const isTabKey = key => key === 'Tab'; // TODO remove
14
- exports.isTabKey = isTabKey;
15
- const isSpaceKey = key => key === ' ';
16
- exports.isSpaceKey = isSpaceKey;
17
- const isArrowKeys = key => key.indexOf('Arrow') === 0;
18
- exports.isArrowKeys = isArrowKeys;
19
- const isHomeOrEndKeys = key => key === 'Home' || key === 'End';
20
- exports.isHomeOrEndKeys = isHomeOrEndKeys;
21
- const isPageKeys = key => key.indexOf('Page') === 0;
22
- exports.isPageKeys = isPageKeys;
23
- const isDeleteKeys = key => key === 'Delete' || key === 'Backspace';
19
+ const isTabKey = key => key === 'Tab';
24
20
 
25
21
  // Non printable keys have a name, e.g. "ArrowRight", see the whole list:
26
22
  // https://developer.mozilla.org/en-US/docs/Web/API/UI_Events/Keyboard_event_key_values
@@ -29,7 +25,7 @@ const isDeleteKeys = key => key === 'Delete' || key === 'Backspace';
29
25
  // However, we also need to ignore shortcuts, for example: select all:
30
26
  // - Windows: Ctrl+A, event.ctrlKey is true
31
27
  // - macOS: ⌘ Command+A, event.metaKey is true
32
- exports.isDeleteKeys = isDeleteKeys;
28
+ exports.isTabKey = isTabKey;
33
29
  function isPrintableKey(event) {
34
30
  return event.key.length === 1 && !event.ctrlKey && !event.metaKey;
35
31
  }
@@ -38,15 +34,24 @@ const GRID_CELL_EXIT_EDIT_MODE_KEYS = exports.GRID_CELL_EXIT_EDIT_MODE_KEYS = ['
38
34
  const GRID_CELL_EDIT_COMMIT_KEYS = exports.GRID_CELL_EDIT_COMMIT_KEYS = ['Enter', 'Tab'];
39
35
  const isMultipleKey = key => GRID_MULTIPLE_SELECTION_KEYS.indexOf(key) > -1;
40
36
  exports.isMultipleKey = isMultipleKey;
41
- const isCellEnterEditModeKeys = event => isEnterKey(event.key) || isDeleteKeys(event.key) || isPrintableKey(event);
37
+ const isCellEnterEditModeKeys = event => isPrintableKey(event) || event.key === 'Enter' || event.key === 'Backspace' || event.key === 'Delete';
42
38
  exports.isCellEnterEditModeKeys = isCellEnterEditModeKeys;
43
39
  const isCellExitEditModeKeys = key => GRID_CELL_EXIT_EDIT_MODE_KEYS.indexOf(key) > -1;
44
40
  exports.isCellExitEditModeKeys = isCellExitEditModeKeys;
45
41
  const isCellEditCommitKeys = key => GRID_CELL_EDIT_COMMIT_KEYS.indexOf(key) > -1;
46
42
  exports.isCellEditCommitKeys = isCellEditCommitKeys;
47
- const isNavigationKey = key => isHomeOrEndKeys(key) || isArrowKeys(key) || isPageKeys(key) || isSpaceKey(key);
43
+ const isNavigationKey = key => key.indexOf('Arrow') === 0 || key.indexOf('Page') === 0 || key === ' ' || key === 'Home' || key === 'End';
48
44
  exports.isNavigationKey = isNavigationKey;
49
45
  const isKeyboardEvent = event => !!event.key;
50
46
  exports.isKeyboardEvent = isKeyboardEvent;
51
47
  const isHideMenuKey = key => isTabKey(key) || isEscapeKey(key);
52
- exports.isHideMenuKey = isHideMenuKey;
48
+
49
+ // In theory, on macOS, ctrl + v doesn't trigger a paste, so the function should return false.
50
+ // However, maybe it's overkill to fix, so let's be lazy.
51
+ exports.isHideMenuKey = isHideMenuKey;
52
+ function isPasteShortcut(event) {
53
+ if ((event.ctrlKey || event.metaKey) && event.key.toLowerCase() === 'v' && !event.shiftKey && !event.altKey) {
54
+ return true;
55
+ }
56
+ return false;
57
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/x-data-grid",
3
- "version": "7.0.0-beta.2",
3
+ "version": "7.0.0-beta.4",
4
4
  "description": "The community edition of the data grid component (MUI X).",
5
5
  "author": "MUI Team",
6
6
  "main": "./node/index.js",
@@ -37,8 +37,8 @@
37
37
  },
38
38
  "dependencies": {
39
39
  "@babel/runtime": "^7.23.9",
40
- "@mui/system": "^5.15.7",
41
- "@mui/utils": "^5.15.7",
40
+ "@mui/system": "^5.15.9",
41
+ "@mui/utils": "^5.15.9",
42
42
  "clsx": "^2.1.0",
43
43
  "prop-types": "^15.8.1",
44
44
  "reselect": "^4.1.8"
@@ -1,12 +1,12 @@
1
1
  import * as React from 'react';
2
+ /**
3
+ * @deprecated there is no meaninfuly logic abstracted, use event.key directly.
4
+ */
2
5
  export declare const isEscapeKey: (key: string) => boolean;
3
- export declare const isEnterKey: (key: string) => boolean;
6
+ /**
7
+ * @deprecated there is no meaninfuly logic abstracted, use event.key directly.
8
+ */
4
9
  export declare const isTabKey: (key: string) => boolean;
5
- export declare const isSpaceKey: (key: string) => boolean;
6
- export declare const isArrowKeys: (key: string) => boolean;
7
- export declare const isHomeOrEndKeys: (key: string) => boolean;
8
- export declare const isPageKeys: (key: string) => boolean;
9
- export declare const isDeleteKeys: (key: string) => boolean;
10
10
  export declare function isPrintableKey(event: React.KeyboardEvent<HTMLElement>): boolean;
11
11
  export declare const GRID_MULTIPLE_SELECTION_KEYS: string[];
12
12
  export declare const GRID_CELL_EXIT_EDIT_MODE_KEYS: string[];
@@ -18,3 +18,4 @@ export declare const isCellEditCommitKeys: (key: string) => boolean;
18
18
  export declare const isNavigationKey: (key: string) => boolean;
19
19
  export declare const isKeyboardEvent: (event: any) => event is React.KeyboardEvent<HTMLElement>;
20
20
  export declare const isHideMenuKey: (key: React.KeyboardEvent['key']) => boolean;
21
+ export declare function isPasteShortcut(event: React.KeyboardEvent): boolean;