@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
@@ -1,408 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import * as React from 'react';
3
- import { unstable_ownerDocument as ownerDocument, unstable_useEventCallback as useEventcallback } from '@mui/utils';
4
- import { gridClasses } from '../../../constants/gridClasses';
5
- import { useGridApiMethod } from '../../utils/useGridApiMethod';
6
- import { useGridLogger } from '../../utils/useGridLogger';
7
- import { useGridApiEventHandler } from '../../utils/useGridApiEventHandler';
8
- import { isNavigationKey } from '../../../utils/keyboardUtils';
9
- import { gridFocusCellSelector, gridFocusColumnGroupHeaderSelector } from './gridFocusStateSelector';
10
- import { gridVisibleColumnDefinitionsSelector } from '../columns/gridColumnsSelector';
11
- import { getVisibleRows } from '../../utils/useGridVisibleRows';
12
- import { clamp } from '../../../utils/utils';
13
- import { gridPinnedRowsSelector } from '../rows/gridRowsSelector';
14
- export var focusStateInitializer = function focusStateInitializer(state) {
15
- return _extends({}, state, {
16
- focus: {
17
- cell: null,
18
- columnHeader: null,
19
- columnHeaderFilter: null,
20
- columnGroupHeader: null
21
- },
22
- tabIndex: {
23
- cell: null,
24
- columnHeader: null,
25
- columnHeaderFilter: null,
26
- columnGroupHeader: null
27
- }
28
- });
29
- };
30
-
31
- /**
32
- * @requires useGridParamsApi (method)
33
- * @requires useGridRows (method)
34
- * @requires useGridEditing (event)
35
- */
36
- export var useGridFocus = function useGridFocus(apiRef, props) {
37
- var logger = useGridLogger(apiRef, 'useGridFocus');
38
- var lastClickedCell = React.useRef(null);
39
- var publishCellFocusOut = React.useCallback(function (cell, event) {
40
- if (cell) {
41
- // The row might have been deleted
42
- if (apiRef.current.getRow(cell.id)) {
43
- apiRef.current.publishEvent('cellFocusOut', apiRef.current.getCellParams(cell.id, cell.field), event);
44
- }
45
- }
46
- }, [apiRef]);
47
- var setCellFocus = React.useCallback(function (id, field) {
48
- var focusedCell = gridFocusCellSelector(apiRef);
49
- if ((focusedCell == null ? void 0 : focusedCell.id) === id && (focusedCell == null ? void 0 : focusedCell.field) === field) {
50
- return;
51
- }
52
- apiRef.current.setState(function (state) {
53
- logger.debug("Focusing on cell with id=".concat(id, " and field=").concat(field));
54
- return _extends({}, state, {
55
- tabIndex: {
56
- cell: {
57
- id: id,
58
- field: field
59
- },
60
- columnHeader: null,
61
- columnHeaderFilter: null,
62
- columnGroupHeader: null
63
- },
64
- focus: {
65
- cell: {
66
- id: id,
67
- field: field
68
- },
69
- columnHeader: null,
70
- columnHeaderFilter: null,
71
- columnGroupHeader: null
72
- }
73
- });
74
- });
75
- apiRef.current.forceUpdate();
76
-
77
- // The row might have been deleted
78
- if (!apiRef.current.getRow(id)) {
79
- return;
80
- }
81
- if (focusedCell) {
82
- // There's a focused cell but another cell was clicked
83
- // Publishes an event to notify that the focus was lost
84
- publishCellFocusOut(focusedCell, {});
85
- }
86
- apiRef.current.publishEvent('cellFocusIn', apiRef.current.getCellParams(id, field));
87
- }, [apiRef, logger, publishCellFocusOut]);
88
- var setColumnHeaderFocus = React.useCallback(function (field) {
89
- var event = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
90
- var cell = gridFocusCellSelector(apiRef);
91
- publishCellFocusOut(cell, event);
92
- apiRef.current.setState(function (state) {
93
- logger.debug("Focusing on column header with colIndex=".concat(field));
94
- return _extends({}, state, {
95
- tabIndex: {
96
- columnHeader: {
97
- field: field
98
- },
99
- columnHeaderFilter: null,
100
- cell: null,
101
- columnGroupHeader: null
102
- },
103
- focus: {
104
- columnHeader: {
105
- field: field
106
- },
107
- columnHeaderFilter: null,
108
- cell: null,
109
- columnGroupHeader: null
110
- }
111
- });
112
- });
113
- apiRef.current.forceUpdate();
114
- }, [apiRef, logger, publishCellFocusOut]);
115
- var setColumnHeaderFilterFocus = React.useCallback(function (field) {
116
- var event = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
117
- var cell = gridFocusCellSelector(apiRef);
118
- publishCellFocusOut(cell, event);
119
- apiRef.current.setState(function (state) {
120
- logger.debug("Focusing on column header filter with colIndex=".concat(field));
121
- return _extends({}, state, {
122
- tabIndex: {
123
- columnHeader: null,
124
- columnHeaderFilter: {
125
- field: field
126
- },
127
- cell: null,
128
- columnGroupHeader: null
129
- },
130
- focus: {
131
- columnHeader: null,
132
- columnHeaderFilter: {
133
- field: field
134
- },
135
- cell: null,
136
- columnGroupHeader: null
137
- }
138
- });
139
- });
140
- apiRef.current.forceUpdate();
141
- }, [apiRef, logger, publishCellFocusOut]);
142
- var setColumnGroupHeaderFocus = React.useCallback(function (field, depth) {
143
- var event = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
144
- var cell = gridFocusCellSelector(apiRef);
145
- if (cell) {
146
- apiRef.current.publishEvent('cellFocusOut', apiRef.current.getCellParams(cell.id, cell.field), event);
147
- }
148
- apiRef.current.setState(function (state) {
149
- return _extends({}, state, {
150
- tabIndex: {
151
- columnGroupHeader: {
152
- field: field,
153
- depth: depth
154
- },
155
- columnHeader: null,
156
- columnHeaderFilter: null,
157
- cell: null
158
- },
159
- focus: {
160
- columnGroupHeader: {
161
- field: field,
162
- depth: depth
163
- },
164
- columnHeader: null,
165
- columnHeaderFilter: null,
166
- cell: null
167
- }
168
- });
169
- });
170
- apiRef.current.forceUpdate();
171
- }, [apiRef]);
172
- var getColumnGroupHeaderFocus = React.useCallback(function () {
173
- return gridFocusColumnGroupHeaderSelector(apiRef);
174
- }, [apiRef]);
175
- var moveFocusToRelativeCell = React.useCallback(function (id, field, direction) {
176
- var columnIndexToFocus = apiRef.current.getColumnIndex(field);
177
- var visibleColumns = gridVisibleColumnDefinitionsSelector(apiRef);
178
- var currentPage = getVisibleRows(apiRef, {
179
- pagination: props.pagination,
180
- paginationMode: props.paginationMode
181
- });
182
- var pinnedRows = gridPinnedRowsSelector(apiRef);
183
-
184
- // Include pinned rows as well
185
- var currentPageRows = [].concat(pinnedRows.top || [], currentPage.rows, pinnedRows.bottom || []);
186
- var rowIndexToFocus = currentPageRows.findIndex(function (row) {
187
- return row.id === id;
188
- });
189
- if (direction === 'right') {
190
- columnIndexToFocus += 1;
191
- } else if (direction === 'left') {
192
- columnIndexToFocus -= 1;
193
- } else {
194
- rowIndexToFocus += 1;
195
- }
196
- if (columnIndexToFocus >= visibleColumns.length) {
197
- // Go to next row if we are after the last column
198
- rowIndexToFocus += 1;
199
- if (rowIndexToFocus < currentPageRows.length) {
200
- // Go to first column of the next row if there's one more row
201
- columnIndexToFocus = 0;
202
- }
203
- } else if (columnIndexToFocus < 0) {
204
- // Go to previous row if we are before the first column
205
- rowIndexToFocus -= 1;
206
- if (rowIndexToFocus >= 0) {
207
- // Go to last column of the previous if there's one more row
208
- columnIndexToFocus = visibleColumns.length - 1;
209
- }
210
- }
211
- rowIndexToFocus = clamp(rowIndexToFocus, 0, currentPageRows.length - 1);
212
- var rowToFocus = currentPageRows[rowIndexToFocus];
213
- if (!rowToFocus) {
214
- return;
215
- }
216
- var colSpanInfo = apiRef.current.unstable_getCellColSpanInfo(rowToFocus.id, columnIndexToFocus);
217
- if (colSpanInfo && colSpanInfo.spannedByColSpan) {
218
- if (direction === 'left' || direction === 'below') {
219
- columnIndexToFocus = colSpanInfo.leftVisibleCellIndex;
220
- } else if (direction === 'right') {
221
- columnIndexToFocus = colSpanInfo.rightVisibleCellIndex;
222
- }
223
- }
224
- columnIndexToFocus = clamp(columnIndexToFocus, 0, visibleColumns.length - 1);
225
- var columnToFocus = visibleColumns[columnIndexToFocus];
226
- apiRef.current.setCellFocus(rowToFocus.id, columnToFocus.field);
227
- }, [apiRef, props.pagination, props.paginationMode]);
228
- var handleCellDoubleClick = React.useCallback(function (_ref) {
229
- var id = _ref.id,
230
- field = _ref.field;
231
- apiRef.current.setCellFocus(id, field);
232
- }, [apiRef]);
233
- var handleCellKeyDown = React.useCallback(function (params, event) {
234
- // GRID_CELL_NAVIGATION_KEY_DOWN handles the focus on Enter, Tab and navigation keys
235
- if (event.key === 'Enter' || event.key === 'Tab' || event.key === 'Shift' || isNavigationKey(event.key)) {
236
- return;
237
- }
238
- apiRef.current.setCellFocus(params.id, params.field);
239
- }, [apiRef]);
240
- var handleColumnHeaderFocus = React.useCallback(function (_ref2, event) {
241
- var field = _ref2.field;
242
- if (event.target !== event.currentTarget) {
243
- return;
244
- }
245
- apiRef.current.setColumnHeaderFocus(field, event);
246
- }, [apiRef]);
247
- var handleColumnGroupHeaderFocus = React.useCallback(function (_ref3, event) {
248
- var fields = _ref3.fields,
249
- depth = _ref3.depth;
250
- if (event.target !== event.currentTarget) {
251
- return;
252
- }
253
- var focusedColumnGroup = gridFocusColumnGroupHeaderSelector(apiRef);
254
- if (focusedColumnGroup !== null && focusedColumnGroup.depth === depth && fields.includes(focusedColumnGroup.field)) {
255
- // This group cell has already been focused
256
- return;
257
- }
258
- apiRef.current.setColumnGroupHeaderFocus(fields[0], depth, event);
259
- }, [apiRef]);
260
- var handleBlur = React.useCallback(function (_, event) {
261
- var _event$relatedTarget;
262
- if ((_event$relatedTarget = event.relatedTarget) != null && _event$relatedTarget.className.includes(gridClasses.columnHeader)) {
263
- return;
264
- }
265
- logger.debug("Clearing focus");
266
- apiRef.current.setState(function (state) {
267
- return _extends({}, state, {
268
- focus: {
269
- cell: null,
270
- columnHeader: null,
271
- columnHeaderFilter: null,
272
- columnGroupHeader: null
273
- }
274
- });
275
- });
276
- }, [logger, apiRef]);
277
- var handleCellMouseDown = React.useCallback(function (params) {
278
- lastClickedCell.current = params;
279
- }, []);
280
- var handleDocumentClick = React.useCallback(function (event) {
281
- var cellParams = lastClickedCell.current;
282
- lastClickedCell.current = null;
283
- var focusedCell = gridFocusCellSelector(apiRef);
284
- var canUpdateFocus = apiRef.current.unstable_applyPipeProcessors('canUpdateFocus', true, {
285
- event: event,
286
- cell: cellParams
287
- });
288
- if (!canUpdateFocus) {
289
- return;
290
- }
291
- if (!focusedCell) {
292
- if (cellParams) {
293
- apiRef.current.setCellFocus(cellParams.id, cellParams.field);
294
- }
295
- return;
296
- }
297
- if ((cellParams == null ? void 0 : cellParams.id) === focusedCell.id && (cellParams == null ? void 0 : cellParams.field) === focusedCell.field) {
298
- return;
299
- }
300
- var cellElement = apiRef.current.getCellElement(focusedCell.id, focusedCell.field);
301
- if (cellElement != null && cellElement.contains(event.target)) {
302
- return;
303
- }
304
- if (cellParams) {
305
- apiRef.current.setCellFocus(cellParams.id, cellParams.field);
306
- } else {
307
- apiRef.current.setState(function (state) {
308
- return _extends({}, state, {
309
- focus: {
310
- cell: null,
311
- columnHeader: null,
312
- columnHeaderFilter: null,
313
- columnGroupHeader: null
314
- }
315
- });
316
- });
317
- apiRef.current.forceUpdate();
318
-
319
- // There's a focused cell but another element (not a cell) was clicked
320
- // Publishes an event to notify that the focus was lost
321
- publishCellFocusOut(focusedCell, event);
322
- }
323
- }, [apiRef, publishCellFocusOut]);
324
- var handleCellModeChange = React.useCallback(function (params) {
325
- if (params.cellMode === 'view') {
326
- return;
327
- }
328
- var cell = gridFocusCellSelector(apiRef);
329
- if ((cell == null ? void 0 : cell.id) !== params.id || (cell == null ? void 0 : cell.field) !== params.field) {
330
- apiRef.current.setCellFocus(params.id, params.field);
331
- }
332
- }, [apiRef]);
333
- var handleRowSet = React.useCallback(function () {
334
- var cell = gridFocusCellSelector(apiRef);
335
-
336
- // If the focused cell is in a row which does not exist anymore, then remove the focus
337
- if (cell && !apiRef.current.getRow(cell.id)) {
338
- apiRef.current.setState(function (state) {
339
- return _extends({}, state, {
340
- focus: {
341
- cell: null,
342
- columnHeader: null,
343
- columnHeaderFilter: null,
344
- columnGroupHeader: null
345
- }
346
- });
347
- });
348
- }
349
- }, [apiRef]);
350
- var handlePaginationModelChange = useEventcallback(function () {
351
- var currentFocusedCell = gridFocusCellSelector(apiRef);
352
- if (!currentFocusedCell) {
353
- return;
354
- }
355
- var currentPage = getVisibleRows(apiRef, {
356
- pagination: props.pagination,
357
- paginationMode: props.paginationMode
358
- });
359
- var rowIsInCurrentPage = currentPage.rows.find(function (row) {
360
- return row.id === currentFocusedCell.id;
361
- });
362
- if (rowIsInCurrentPage) {
363
- return;
364
- }
365
- var visibleColumns = gridVisibleColumnDefinitionsSelector(apiRef);
366
- apiRef.current.setState(function (state) {
367
- return _extends({}, state, {
368
- tabIndex: {
369
- cell: {
370
- id: currentPage.rows[0].id,
371
- field: visibleColumns[0].field
372
- },
373
- columnGroupHeader: null,
374
- columnHeader: null,
375
- columnHeaderFilter: null
376
- }
377
- });
378
- });
379
- });
380
- var focusApi = {
381
- setCellFocus: setCellFocus,
382
- setColumnHeaderFocus: setColumnHeaderFocus,
383
- setColumnHeaderFilterFocus: setColumnHeaderFilterFocus
384
- };
385
- var focusPrivateApi = {
386
- moveFocusToRelativeCell: moveFocusToRelativeCell,
387
- setColumnGroupHeaderFocus: setColumnGroupHeaderFocus,
388
- getColumnGroupHeaderFocus: getColumnGroupHeaderFocus
389
- };
390
- useGridApiMethod(apiRef, focusApi, 'public');
391
- useGridApiMethod(apiRef, focusPrivateApi, 'private');
392
- React.useEffect(function () {
393
- var doc = ownerDocument(apiRef.current.rootElementRef.current);
394
- doc.addEventListener('mouseup', handleDocumentClick);
395
- return function () {
396
- doc.removeEventListener('mouseup', handleDocumentClick);
397
- };
398
- }, [apiRef, handleDocumentClick]);
399
- useGridApiEventHandler(apiRef, 'columnHeaderBlur', handleBlur);
400
- useGridApiEventHandler(apiRef, 'cellDoubleClick', handleCellDoubleClick);
401
- useGridApiEventHandler(apiRef, 'cellMouseDown', handleCellMouseDown);
402
- useGridApiEventHandler(apiRef, 'cellKeyDown', handleCellKeyDown);
403
- useGridApiEventHandler(apiRef, 'cellModeChange', handleCellModeChange);
404
- useGridApiEventHandler(apiRef, 'columnHeaderFocus', handleColumnHeaderFocus);
405
- useGridApiEventHandler(apiRef, 'columnGroupHeaderFocus', handleColumnGroupHeaderFocus);
406
- useGridApiEventHandler(apiRef, 'rowsSet', handleRowSet);
407
- useGridApiEventHandler(apiRef, 'paginationModelChange', handlePaginationModelChange);
408
- };
@@ -1,10 +0,0 @@
1
- import { createSelector } from '../../../utils/createSelector';
2
- export var gridHeaderFilteringStateSelector = function gridHeaderFilteringStateSelector(state) {
3
- return state.headerFiltering;
4
- };
5
- export var gridHeaderFilteringEditFieldSelector = createSelector(gridHeaderFilteringStateSelector, function (headerFilteringState) {
6
- return headerFilteringState.editing;
7
- });
8
- export var gridHeaderFilteringMenuSelector = createSelector(gridHeaderFilteringStateSelector, function (headerFilteringState) {
9
- return headerFilteringState.menuOpen;
10
- });
@@ -1 +0,0 @@
1
- export * from './gridHeaderFilteringSelectors';
@@ -1,93 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import * as React from 'react';
3
- import { useGridApiMethod } from '../../utils/useGridApiMethod';
4
- import { useGridLogger } from '../../utils';
5
- import { gridColumnLookupSelector, gridColumnVisibilityModelSelector, gridColumnFieldsSelector } from '../columns/gridColumnsSelector';
6
- export var headerFilteringStateInitializer = function headerFilteringStateInitializer(state) {
7
- return _extends({}, state, {
8
- headerFiltering: {
9
- editing: null,
10
- menuOpen: null
11
- }
12
- });
13
- };
14
- export var useGridHeaderFiltering = function useGridHeaderFiltering(apiRef, props) {
15
- var logger = useGridLogger(apiRef, 'useGridHeaderFiltering');
16
- var setHeaderFilterState = React.useCallback(function (headerFilterState) {
17
- apiRef.current.setState(function (state) {
18
- var _headerFilterState$ed, _headerFilterState$me;
19
- // Safety check to avoid MIT users from using it
20
- // This hook should ultimately be moved to the Pro package
21
- if (props.signature === 'DataGrid') {
22
- return state;
23
- }
24
- return _extends({}, state, {
25
- headerFiltering: {
26
- editing: (_headerFilterState$ed = headerFilterState.editing) != null ? _headerFilterState$ed : null,
27
- menuOpen: (_headerFilterState$me = headerFilterState.menuOpen) != null ? _headerFilterState$me : null
28
- }
29
- });
30
- });
31
- apiRef.current.forceUpdate();
32
- }, [apiRef, props.signature]);
33
- var startHeaderFilterEditMode = React.useCallback(function (field) {
34
- logger.debug("Starting edit mode on header filter for field: ".concat(field));
35
- apiRef.current.setHeaderFilterState({
36
- editing: field
37
- });
38
- }, [apiRef, logger]);
39
- var stopHeaderFilterEditMode = React.useCallback(function () {
40
- logger.debug("Stopping edit mode on header filter");
41
- apiRef.current.setHeaderFilterState({
42
- editing: null
43
- });
44
- }, [apiRef, logger]);
45
- var showHeaderFilterMenu = React.useCallback(function (field) {
46
- logger.debug("Opening header filter menu for field: ".concat(field));
47
- apiRef.current.setHeaderFilterState({
48
- menuOpen: field
49
- });
50
- }, [apiRef, logger]);
51
- var hideHeaderFilterMenu = React.useCallback(function () {
52
- logger.debug("Hiding header filter menu for active field");
53
- var fieldToFocus = apiRef.current.state.headerFiltering.menuOpen;
54
- if (fieldToFocus) {
55
- var columnLookup = gridColumnLookupSelector(apiRef);
56
- var columnVisibilityModel = gridColumnVisibilityModelSelector(apiRef);
57
- var orderedFields = gridColumnFieldsSelector(apiRef);
58
-
59
- // If the column was removed from the grid, we need to find the closest visible field
60
- if (!columnLookup[fieldToFocus]) {
61
- fieldToFocus = orderedFields[0];
62
- }
63
-
64
- // If the field to focus is hidden, we need to find the closest visible field
65
- if (columnVisibilityModel[fieldToFocus] === false) {
66
- // contains visible column fields + the field that was just hidden
67
- var visibleOrderedFields = orderedFields.filter(function (field) {
68
- if (field === fieldToFocus) {
69
- return true;
70
- }
71
- return columnVisibilityModel[field] !== false;
72
- });
73
- var fieldIndex = visibleOrderedFields.indexOf(fieldToFocus);
74
- fieldToFocus = visibleOrderedFields[fieldIndex + 1] || visibleOrderedFields[fieldIndex - 1];
75
- }
76
- apiRef.current.setHeaderFilterState({
77
- menuOpen: null
78
- });
79
- apiRef.current.setColumnHeaderFilterFocus(fieldToFocus);
80
- }
81
- }, [apiRef, logger]);
82
- var headerFilterPrivateApi = {
83
- setHeaderFilterState: setHeaderFilterState
84
- };
85
- var headerFilterApi = {
86
- startHeaderFilterEditMode: startHeaderFilterEditMode,
87
- stopHeaderFilterEditMode: stopHeaderFilterEditMode,
88
- showHeaderFilterMenu: showHeaderFilterMenu,
89
- hideHeaderFilterMenu: hideHeaderFilterMenu
90
- };
91
- useGridApiMethod(apiRef, headerFilterApi, 'public');
92
- useGridApiMethod(apiRef, headerFilterPrivateApi, 'private');
93
- };
@@ -1,16 +0,0 @@
1
- // Only export the variable and types that should be publicly exposed and re-exported from `@mui/x-data-grid-pro`
2
- export * from './columnMenu';
3
- export * from './columns';
4
- export * from './columnGrouping';
5
- export * from './density';
6
- export * from './filter';
7
- export * from './focus';
8
- export * from './pagination';
9
- export * from './preferencesPanel';
10
- export * from './rows';
11
- export * from './rowSelection';
12
- export * from './sorting';
13
- export * from './dimensions';
14
- export * from './statePersistence';
15
- export * from './headerFiltering';
16
- export * from './virtualization';