@mui/x-data-grid 7.0.0-beta.3 → 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 (459) hide show
  1. package/CHANGELOG.md +226 -15
  2. package/colDef/gridActionsColDef.js +1 -0
  3. package/colDef/gridBooleanColDef.js +1 -0
  4. package/colDef/gridCheckboxSelectionColDef.js +1 -0
  5. package/components/GridScrollbarFillerCell.js +6 -21
  6. package/components/cell/GridCell.js +10 -12
  7. package/components/columnSelection/GridCellCheckboxRenderer.js +1 -2
  8. package/components/containers/GridRootStyles.js +50 -19
  9. package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +8 -2
  10. package/constants/gridClasses.d.ts +24 -8
  11. package/constants/gridClasses.js +1 -1
  12. package/hooks/features/clipboard/useGridClipboard.js +1 -1
  13. package/hooks/features/editing/useGridCellEditing.js +3 -4
  14. package/hooks/features/editing/useGridRowEditing.js +3 -4
  15. package/hooks/features/sorting/useGridSorting.js +1 -2
  16. package/index.js +1 -1
  17. package/internals/index.d.ts +1 -1
  18. package/internals/index.js +1 -1
  19. package/models/colDef/gridColDef.d.ts +6 -0
  20. package/modern/colDef/gridActionsColDef.js +1 -0
  21. package/modern/colDef/gridBooleanColDef.js +1 -0
  22. package/modern/colDef/gridCheckboxSelectionColDef.js +1 -0
  23. package/modern/components/GridScrollbarFillerCell.js +6 -21
  24. package/modern/components/cell/GridCell.js +10 -12
  25. package/modern/components/columnSelection/GridCellCheckboxRenderer.js +1 -2
  26. package/modern/components/containers/GridRootStyles.js +50 -19
  27. package/modern/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +8 -2
  28. package/modern/constants/gridClasses.js +1 -1
  29. package/modern/hooks/features/clipboard/useGridClipboard.js +1 -1
  30. package/modern/hooks/features/editing/useGridCellEditing.js +3 -4
  31. package/modern/hooks/features/editing/useGridRowEditing.js +3 -4
  32. package/modern/hooks/features/sorting/useGridSorting.js +1 -2
  33. package/modern/index.js +1 -1
  34. package/modern/internals/index.js +1 -1
  35. package/modern/utils/keyboardUtils.js +20 -11
  36. package/node/colDef/gridActionsColDef.js +1 -0
  37. package/node/colDef/gridBooleanColDef.js +1 -0
  38. package/node/colDef/gridCheckboxSelectionColDef.js +1 -0
  39. package/node/components/GridScrollbarFillerCell.js +5 -20
  40. package/node/components/cell/GridCell.js +10 -12
  41. package/node/components/columnSelection/GridCellCheckboxRenderer.js +1 -2
  42. package/node/components/containers/GridRootStyles.js +50 -19
  43. package/node/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +8 -2
  44. package/node/constants/gridClasses.js +1 -1
  45. package/node/hooks/features/clipboard/useGridClipboard.js +1 -1
  46. package/node/hooks/features/editing/useGridCellEditing.js +2 -3
  47. package/node/hooks/features/editing/useGridRowEditing.js +2 -3
  48. package/node/hooks/features/sorting/useGridSorting.js +1 -2
  49. package/node/index.js +1 -1
  50. package/node/internals/index.js +7 -0
  51. package/node/utils/keyboardUtils.js +25 -20
  52. package/package.json +1 -1
  53. package/utils/keyboardUtils.d.ts +7 -6
  54. package/utils/keyboardUtils.js +20 -11
  55. package/legacy/DataGrid/DataGrid.js +0 -664
  56. package/legacy/DataGrid/index.js +0 -2
  57. package/legacy/DataGrid/useDataGridComponent.js +0 -81
  58. package/legacy/DataGrid/useDataGridProps.js +0 -98
  59. package/legacy/colDef/gridActionsColDef.js +0 -18
  60. package/legacy/colDef/gridBooleanColDef.js +0 -42
  61. package/legacy/colDef/gridBooleanOperators.js +0 -16
  62. package/legacy/colDef/gridCheckboxSelectionColDef.js +0 -33
  63. package/legacy/colDef/gridDateColDef.js +0 -62
  64. package/legacy/colDef/gridDateOperators.js +0 -115
  65. package/legacy/colDef/gridDefaultColumnTypes.js +0 -19
  66. package/legacy/colDef/gridNumericColDef.js +0 -19
  67. package/legacy/colDef/gridNumericOperators.js +0 -145
  68. package/legacy/colDef/gridSingleSelectColDef.js +0 -64
  69. package/legacy/colDef/gridSingleSelectOperators.js +0 -46
  70. package/legacy/colDef/gridStringColDef.js +0 -27
  71. package/legacy/colDef/gridStringOperators.js +0 -112
  72. package/legacy/colDef/index.js +0 -13
  73. package/legacy/components/GridApiContext.js +0 -5
  74. package/legacy/components/GridColumnHeaders.js +0 -94
  75. package/legacy/components/GridDetailPanels.js +0 -4
  76. package/legacy/components/GridFooter.js +0 -42
  77. package/legacy/components/GridHeader.js +0 -13
  78. package/legacy/components/GridHeaders.js +0 -53
  79. package/legacy/components/GridLoadingOverlay.js +0 -21
  80. package/legacy/components/GridNoResultsOverlay.js +0 -14
  81. package/legacy/components/GridNoRowsOverlay.js +0 -23
  82. package/legacy/components/GridPagination.js +0 -85
  83. package/legacy/components/GridPinnedRows.js +0 -4
  84. package/legacy/components/GridRow.js +0 -465
  85. package/legacy/components/GridRowCount.js +0 -63
  86. package/legacy/components/GridScrollbarFillerCell.js +0 -34
  87. package/legacy/components/GridSelectedRowCount.js +0 -66
  88. package/legacy/components/base/GridBody.js +0 -2
  89. package/legacy/components/base/GridFooterPlaceholder.js +0 -12
  90. package/legacy/components/base/GridOverlays.js +0 -122
  91. package/legacy/components/base/index.js +0 -3
  92. package/legacy/components/cell/GridActionsCell.js +0 -294
  93. package/legacy/components/cell/GridActionsCellItem.js +0 -69
  94. package/legacy/components/cell/GridBooleanCell.js +0 -121
  95. package/legacy/components/cell/GridCell.js +0 -350
  96. package/legacy/components/cell/GridEditBooleanCell.js +0 -174
  97. package/legacy/components/cell/GridEditDateCell.js +0 -230
  98. package/legacy/components/cell/GridEditInputCell.js +0 -198
  99. package/legacy/components/cell/GridEditSingleSelectCell.js +0 -231
  100. package/legacy/components/cell/GridSkeletonCell.js +0 -52
  101. package/legacy/components/cell/index.js +0 -9
  102. package/legacy/components/columnHeaders/ColumnHeaderMenuIcon.js +0 -59
  103. package/legacy/components/columnHeaders/GridBaseColumnHeaders.js +0 -41
  104. package/legacy/components/columnHeaders/GridColumnGroupHeader.js +0 -132
  105. package/legacy/components/columnHeaders/GridColumnHeaderFilterIconButton.js +0 -93
  106. package/legacy/components/columnHeaders/GridColumnHeaderItem.js +0 -212
  107. package/legacy/components/columnHeaders/GridColumnHeaderSeparator.js +0 -71
  108. package/legacy/components/columnHeaders/GridColumnHeaderSortIcon.js +0 -79
  109. package/legacy/components/columnHeaders/GridColumnHeaderTitle.js +0 -84
  110. package/legacy/components/columnHeaders/GridColumnHeadersInner.js +0 -55
  111. package/legacy/components/columnHeaders/GridGenericColumnHeaderItem.js +0 -107
  112. package/legacy/components/columnHeaders/GridIconButtonContainer.js +0 -41
  113. package/legacy/components/columnHeaders/index.js +0 -5
  114. package/legacy/components/columnSelection/GridCellCheckboxRenderer.js +0 -160
  115. package/legacy/components/columnSelection/GridHeaderCheckbox.js +0 -134
  116. package/legacy/components/columnSelection/index.js +0 -2
  117. package/legacy/components/columnsManagement/GridColumnsManagement.js +0 -307
  118. package/legacy/components/columnsManagement/index.js +0 -1
  119. package/legacy/components/columnsManagement/utils.js +0 -22
  120. package/legacy/components/containers/GridFooterContainer.js +0 -50
  121. package/legacy/components/containers/GridOverlay.js +0 -52
  122. package/legacy/components/containers/GridRoot.js +0 -79
  123. package/legacy/components/containers/GridRootStyles.js +0 -395
  124. package/legacy/components/containers/GridToolbarContainer.js +0 -59
  125. package/legacy/components/containers/index.js +0 -4
  126. package/legacy/components/index.js +0 -19
  127. package/legacy/components/menu/GridMenu.js +0 -132
  128. package/legacy/components/menu/columnMenu/GridColumnHeaderMenu.js +0 -61
  129. package/legacy/components/menu/columnMenu/GridColumnMenu.js +0 -81
  130. package/legacy/components/menu/columnMenu/GridColumnMenuContainer.js +0 -56
  131. package/legacy/components/menu/columnMenu/GridColumnMenuItemProps.js +0 -1
  132. package/legacy/components/menu/columnMenu/GridColumnMenuProps.js +0 -1
  133. package/legacy/components/menu/columnMenu/index.js +0 -9
  134. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuColumnsItem.js +0 -21
  135. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuFilterItem.js +0 -41
  136. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuHideItem.js +0 -60
  137. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuManageItem.js +0 -41
  138. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +0 -80
  139. package/legacy/components/menu/columnMenu/menuItems/index.js +0 -5
  140. package/legacy/components/menu/index.js +0 -2
  141. package/legacy/components/panel/GridColumnsPanel.js +0 -22
  142. package/legacy/components/panel/GridPanel.js +0 -137
  143. package/legacy/components/panel/GridPanelContent.js +0 -49
  144. package/legacy/components/panel/GridPanelFooter.js +0 -50
  145. package/legacy/components/panel/GridPanelHeader.js +0 -48
  146. package/legacy/components/panel/GridPanelWrapper.js +0 -64
  147. package/legacy/components/panel/GridPreferencesPanel.js +0 -26
  148. package/legacy/components/panel/filterPanel/GridFilterForm.js +0 -528
  149. package/legacy/components/panel/filterPanel/GridFilterInputBoolean.js +0 -118
  150. package/legacy/components/panel/filterPanel/GridFilterInputDate.js +0 -121
  151. package/legacy/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +0 -116
  152. package/legacy/components/panel/filterPanel/GridFilterInputMultipleValue.js +0 -102
  153. package/legacy/components/panel/filterPanel/GridFilterInputSingleSelect.js +0 -149
  154. package/legacy/components/panel/filterPanel/GridFilterInputValue.js +0 -106
  155. package/legacy/components/panel/filterPanel/GridFilterInputValueProps.js +0 -1
  156. package/legacy/components/panel/filterPanel/GridFilterPanel.js +0 -264
  157. package/legacy/components/panel/filterPanel/filterPanelUtils.js +0 -22
  158. package/legacy/components/panel/filterPanel/index.js +0 -9
  159. package/legacy/components/panel/index.js +0 -7
  160. package/legacy/components/reexportable.js +0 -1
  161. package/legacy/components/toolbar/GridToolbar.js +0 -64
  162. package/legacy/components/toolbar/GridToolbarColumnsButton.js +0 -68
  163. package/legacy/components/toolbar/GridToolbarDensitySelector.js +0 -142
  164. package/legacy/components/toolbar/GridToolbarExport.js +0 -80
  165. package/legacy/components/toolbar/GridToolbarExportContainer.js +0 -105
  166. package/legacy/components/toolbar/GridToolbarFilterButton.js +0 -136
  167. package/legacy/components/toolbar/GridToolbarQuickFilter.js +0 -164
  168. package/legacy/components/toolbar/index.js +0 -7
  169. package/legacy/components/virtualization/GridBottomContainer.js +0 -25
  170. package/legacy/components/virtualization/GridMainContainer.js +0 -20
  171. package/legacy/components/virtualization/GridTopContainer.js +0 -35
  172. package/legacy/components/virtualization/GridVirtualScrollbar.js +0 -129
  173. package/legacy/components/virtualization/GridVirtualScroller.js +0 -93
  174. package/legacy/components/virtualization/GridVirtualScrollerContent.js +0 -35
  175. package/legacy/components/virtualization/GridVirtualScrollerFiller.js +0 -70
  176. package/legacy/components/virtualization/GridVirtualScrollerRenderZone.js +0 -49
  177. package/legacy/constants/defaultGridSlotsComponents.js +0 -33
  178. package/legacy/constants/envConstants.js +0 -19
  179. package/legacy/constants/gridClasses.js +0 -5
  180. package/legacy/constants/gridDetailPanelToggleField.js +0 -2
  181. package/legacy/constants/index.js +0 -3
  182. package/legacy/constants/localeTextConstants.js +0 -158
  183. package/legacy/context/GridContextProvider.js +0 -21
  184. package/legacy/context/GridRootPropsContext.js +0 -6
  185. package/legacy/context/index.js +0 -1
  186. package/legacy/hooks/core/gridCoreSelector.js +0 -7
  187. package/legacy/hooks/core/index.js +0 -1
  188. package/legacy/hooks/core/pipeProcessing/gridPipeProcessingApi.js +0 -1
  189. package/legacy/hooks/core/pipeProcessing/index.js +0 -4
  190. package/legacy/hooks/core/pipeProcessing/useGridPipeProcessing.js +0 -114
  191. package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +0 -26
  192. package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +0 -26
  193. package/legacy/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +0 -1
  194. package/legacy/hooks/core/strategyProcessing/index.js +0 -3
  195. package/legacy/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +0 -18
  196. package/legacy/hooks/core/strategyProcessing/useGridStrategyProcessing.js +0 -116
  197. package/legacy/hooks/core/useGridApiInitialization.js +0 -124
  198. package/legacy/hooks/core/useGridInitialization.js +0 -26
  199. package/legacy/hooks/core/useGridLocaleText.js +0 -12
  200. package/legacy/hooks/core/useGridLoggerFactory.js +0 -51
  201. package/legacy/hooks/core/useGridRefs.js +0 -13
  202. package/legacy/hooks/core/useGridStateInitialization.js +0 -106
  203. package/legacy/hooks/core/useGridTheme.js +0 -21
  204. package/legacy/hooks/features/clipboard/useGridClipboard.js +0 -92
  205. package/legacy/hooks/features/columnGrouping/gridColumnGroupsInterfaces.js +0 -1
  206. package/legacy/hooks/features/columnGrouping/gridColumnGroupsSelector.js +0 -24
  207. package/legacy/hooks/features/columnGrouping/gridColumnGroupsUtils.js +0 -92
  208. package/legacy/hooks/features/columnGrouping/index.js +0 -2
  209. package/legacy/hooks/features/columnGrouping/useGridColumnGrouping.js +0 -140
  210. package/legacy/hooks/features/columnHeaders/useGridColumnHeaders.js +0 -272
  211. package/legacy/hooks/features/columnMenu/columnMenuInterfaces.js +0 -1
  212. package/legacy/hooks/features/columnMenu/columnMenuSelector.js +0 -3
  213. package/legacy/hooks/features/columnMenu/index.js +0 -2
  214. package/legacy/hooks/features/columnMenu/useGridColumnMenu.js +0 -108
  215. package/legacy/hooks/features/columnMenu/useGridColumnMenuSlots.js +0 -71
  216. package/legacy/hooks/features/columns/gridColumnsInterfaces.js +0 -9
  217. package/legacy/hooks/features/columns/gridColumnsSelector.js +0 -174
  218. package/legacy/hooks/features/columns/gridColumnsUtils.js +0 -338
  219. package/legacy/hooks/features/columns/index.js +0 -2
  220. package/legacy/hooks/features/columns/useGridColumnSpanning.js +0 -105
  221. package/legacy/hooks/features/columns/useGridColumns.js +0 -319
  222. package/legacy/hooks/features/density/densitySelector.js +0 -10
  223. package/legacy/hooks/features/density/densityState.js +0 -1
  224. package/legacy/hooks/features/density/index.js +0 -2
  225. package/legacy/hooks/features/density/useGridDensity.js +0 -48
  226. package/legacy/hooks/features/dimensions/gridDimensionsApi.js +0 -1
  227. package/legacy/hooks/features/dimensions/gridDimensionsSelectors.js +0 -3
  228. package/legacy/hooks/features/dimensions/index.js +0 -2
  229. package/legacy/hooks/features/dimensions/useGridDimensions.js +0 -302
  230. package/legacy/hooks/features/editing/gridEditingSelectors.js +0 -4
  231. package/legacy/hooks/features/editing/useGridCellEditing.js +0 -456
  232. package/legacy/hooks/features/editing/useGridEditing.js +0 -145
  233. package/legacy/hooks/features/editing/useGridRowEditing.js +0 -567
  234. package/legacy/hooks/features/events/useGridEvents.js +0 -23
  235. package/legacy/hooks/features/export/serializers/csvSerializer.js +0 -155
  236. package/legacy/hooks/features/export/useGridCsvExport.js +0 -75
  237. package/legacy/hooks/features/export/useGridPrintExport.js +0 -313
  238. package/legacy/hooks/features/export/utils.js +0 -49
  239. package/legacy/hooks/features/filter/gridFilterSelector.js +0 -165
  240. package/legacy/hooks/features/filter/gridFilterState.js +0 -20
  241. package/legacy/hooks/features/filter/gridFilterUtils.js +0 -330
  242. package/legacy/hooks/features/filter/index.js +0 -2
  243. package/legacy/hooks/features/filter/useGridFilter.js +0 -378
  244. package/legacy/hooks/features/focus/gridFocusState.js +0 -1
  245. package/legacy/hooks/features/focus/gridFocusStateSelector.js +0 -31
  246. package/legacy/hooks/features/focus/index.js +0 -2
  247. package/legacy/hooks/features/focus/useGridFocus.js +0 -408
  248. package/legacy/hooks/features/headerFiltering/gridHeaderFilteringSelectors.js +0 -10
  249. package/legacy/hooks/features/headerFiltering/index.js +0 -1
  250. package/legacy/hooks/features/headerFiltering/useGridHeaderFiltering.js +0 -93
  251. package/legacy/hooks/features/index.js +0 -16
  252. package/legacy/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +0 -565
  253. package/legacy/hooks/features/pagination/gridPaginationInterfaces.js +0 -1
  254. package/legacy/hooks/features/pagination/gridPaginationSelector.js +0 -115
  255. package/legacy/hooks/features/pagination/gridPaginationUtils.js +0 -31
  256. package/legacy/hooks/features/pagination/index.js +0 -2
  257. package/legacy/hooks/features/pagination/useGridPagination.js +0 -175
  258. package/legacy/hooks/features/preferencesPanel/gridPreferencePanelSelector.js +0 -3
  259. package/legacy/hooks/features/preferencesPanel/gridPreferencePanelState.js +0 -1
  260. package/legacy/hooks/features/preferencesPanel/gridPreferencePanelsValue.js +0 -6
  261. package/legacy/hooks/features/preferencesPanel/index.js +0 -3
  262. package/legacy/hooks/features/preferencesPanel/useGridPreferencesPanel.js +0 -125
  263. package/legacy/hooks/features/rowSelection/gridRowSelectionSelector.js +0 -19
  264. package/legacy/hooks/features/rowSelection/index.js +0 -1
  265. package/legacy/hooks/features/rowSelection/useGridRowSelection.js +0 -419
  266. package/legacy/hooks/features/rowSelection/useGridRowSelectionPreProcessors.js +0 -45
  267. package/legacy/hooks/features/rowSelection/utils.js +0 -8
  268. package/legacy/hooks/features/rows/gridRowsInterfaces.js +0 -1
  269. package/legacy/hooks/features/rows/gridRowsMetaSelector.js +0 -3
  270. package/legacy/hooks/features/rows/gridRowsMetaState.js +0 -1
  271. package/legacy/hooks/features/rows/gridRowsSelector.js +0 -90
  272. package/legacy/hooks/features/rows/gridRowsUtils.js +0 -294
  273. package/legacy/hooks/features/rows/index.js +0 -4
  274. package/legacy/hooks/features/rows/useGridParamsApi.js +0 -142
  275. package/legacy/hooks/features/rows/useGridRows.js +0 -466
  276. package/legacy/hooks/features/rows/useGridRowsMeta.js +0 -236
  277. package/legacy/hooks/features/rows/useGridRowsPreProcessors.js +0 -82
  278. package/legacy/hooks/features/scroll/useGridScroll.js +0 -133
  279. package/legacy/hooks/features/sorting/gridSortingSelector.js +0 -56
  280. package/legacy/hooks/features/sorting/gridSortingState.js +0 -1
  281. package/legacy/hooks/features/sorting/gridSortingUtils.js +0 -154
  282. package/legacy/hooks/features/sorting/index.js +0 -2
  283. package/legacy/hooks/features/sorting/useGridSorting.js +0 -276
  284. package/legacy/hooks/features/statePersistence/gridStatePersistenceInterface.js +0 -1
  285. package/legacy/hooks/features/statePersistence/index.js +0 -1
  286. package/legacy/hooks/features/statePersistence/useGridStatePersistence.js +0 -25
  287. package/legacy/hooks/features/virtualization/gridVirtualizationSelectors.js +0 -61
  288. package/legacy/hooks/features/virtualization/index.js +0 -2
  289. package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +0 -646
  290. package/legacy/hooks/features/virtualization/useGridVirtualization.js +0 -63
  291. package/legacy/hooks/index.js +0 -3
  292. package/legacy/hooks/utils/index.js +0 -9
  293. package/legacy/hooks/utils/useFirstRender.js +0 -8
  294. package/legacy/hooks/utils/useGridApiContext.js +0 -9
  295. package/legacy/hooks/utils/useGridApiEventHandler.js +0 -105
  296. package/legacy/hooks/utils/useGridApiMethod.js +0 -11
  297. package/legacy/hooks/utils/useGridApiRef.js +0 -7
  298. package/legacy/hooks/utils/useGridAriaAttributes.js +0 -25
  299. package/legacy/hooks/utils/useGridInitializeState.js +0 -8
  300. package/legacy/hooks/utils/useGridLogger.js +0 -10
  301. package/legacy/hooks/utils/useGridNativeEventListener.js +0 -32
  302. package/legacy/hooks/utils/useGridPrivateApiContext.js +0 -12
  303. package/legacy/hooks/utils/useGridRootProps.js +0 -9
  304. package/legacy/hooks/utils/useGridSelector.js +0 -54
  305. package/legacy/hooks/utils/useGridVisibleRows.js +0 -42
  306. package/legacy/hooks/utils/useLazyRef.js +0 -11
  307. package/legacy/hooks/utils/useOnMount.js +0 -7
  308. package/legacy/hooks/utils/useResizeObserver.js +0 -36
  309. package/legacy/hooks/utils/useRunOnce.js +0 -18
  310. package/legacy/hooks/utils/useTimeout.js +0 -38
  311. package/legacy/index.js +0 -38
  312. package/legacy/internals/index.js +0 -68
  313. package/legacy/internals/utils/computeSlots.js +0 -17
  314. package/legacy/internals/utils/index.js +0 -3
  315. package/legacy/internals/utils/propValidation.js +0 -21
  316. package/legacy/internals/utils/useProps.js +0 -32
  317. package/legacy/joy/icons.js +0 -432
  318. package/legacy/joy/index.js +0 -2
  319. package/legacy/joy/joySlots.js +0 -420
  320. package/legacy/locales/arSD.js +0 -160
  321. package/legacy/locales/beBY.js +0 -184
  322. package/legacy/locales/bgBG.js +0 -160
  323. package/legacy/locales/coreLocales.js +0 -62
  324. package/legacy/locales/csCZ.js +0 -181
  325. package/legacy/locales/daDK.js +0 -160
  326. package/legacy/locales/deDE.js +0 -160
  327. package/legacy/locales/elGR.js +0 -160
  328. package/legacy/locales/enUS.js +0 -4
  329. package/legacy/locales/esES.js +0 -160
  330. package/legacy/locales/faIR.js +0 -160
  331. package/legacy/locales/fiFI.js +0 -160
  332. package/legacy/locales/frFR.js +0 -160
  333. package/legacy/locales/heIL.js +0 -160
  334. package/legacy/locales/hrHR.js +0 -160
  335. package/legacy/locales/huHU.js +0 -160
  336. package/legacy/locales/index.js +0 -35
  337. package/legacy/locales/itIT.js +0 -160
  338. package/legacy/locales/jaJP.js +0 -160
  339. package/legacy/locales/koKR.js +0 -162
  340. package/legacy/locales/nbNO.js +0 -162
  341. package/legacy/locales/nlNL.js +0 -160
  342. package/legacy/locales/plPL.js +0 -163
  343. package/legacy/locales/ptBR.js +0 -160
  344. package/legacy/locales/ptPT.js +0 -160
  345. package/legacy/locales/roRO.js +0 -160
  346. package/legacy/locales/ruRU.js +0 -181
  347. package/legacy/locales/skSK.js +0 -181
  348. package/legacy/locales/svSE.js +0 -160
  349. package/legacy/locales/trTR.js +0 -161
  350. package/legacy/locales/ukUA.js +0 -182
  351. package/legacy/locales/urPK.js +0 -160
  352. package/legacy/locales/viVN.js +0 -160
  353. package/legacy/locales/zhCN.js +0 -160
  354. package/legacy/locales/zhHK.js +0 -160
  355. package/legacy/locales/zhTW.js +0 -160
  356. package/legacy/material/components/MUISelectOption.js +0 -14
  357. package/legacy/material/icons/GridColumnUnsortedIcon.js +0 -16
  358. package/legacy/material/icons/index.js +0 -89
  359. package/legacy/material/index.js +0 -69
  360. package/legacy/models/api/gridApiCommon.js +0 -1
  361. package/legacy/models/api/gridApiCommunity.js +0 -1
  362. package/legacy/models/api/gridCallbackDetails.js +0 -1
  363. package/legacy/models/api/gridColumnApi.js +0 -1
  364. package/legacy/models/api/gridColumnGroupingApi.js +0 -1
  365. package/legacy/models/api/gridColumnMenuApi.js +0 -1
  366. package/legacy/models/api/gridColumnSpanning.js +0 -1
  367. package/legacy/models/api/gridCoreApi.js +0 -1
  368. package/legacy/models/api/gridCsvExportApi.js +0 -1
  369. package/legacy/models/api/gridDensityApi.js +0 -1
  370. package/legacy/models/api/gridEditingApi.js +0 -1
  371. package/legacy/models/api/gridFilterApi.js +0 -1
  372. package/legacy/models/api/gridFocusApi.js +0 -1
  373. package/legacy/models/api/gridHeaderFilteringApi.js +0 -1
  374. package/legacy/models/api/gridLocaleTextApi.js +0 -1
  375. package/legacy/models/api/gridLoggerApi.js +0 -1
  376. package/legacy/models/api/gridParamsApi.js +0 -1
  377. package/legacy/models/api/gridPreferencesPanelApi.js +0 -1
  378. package/legacy/models/api/gridPrintExportApi.js +0 -1
  379. package/legacy/models/api/gridRowApi.js +0 -1
  380. package/legacy/models/api/gridRowSelectionApi.js +0 -1
  381. package/legacy/models/api/gridRowsMetaApi.js +0 -1
  382. package/legacy/models/api/gridScrollApi.js +0 -1
  383. package/legacy/models/api/gridSortApi.js +0 -1
  384. package/legacy/models/api/gridStateApi.js +0 -1
  385. package/legacy/models/api/gridVirtualizationApi.js +0 -1
  386. package/legacy/models/api/index.js +0 -16
  387. package/legacy/models/colDef/gridColDef.js +0 -1
  388. package/legacy/models/colDef/gridColType.js +0 -1
  389. package/legacy/models/colDef/gridColumnTypesRecord.js +0 -1
  390. package/legacy/models/colDef/index.js +0 -6
  391. package/legacy/models/controlStateItem.js +0 -1
  392. package/legacy/models/cursorCoordinates.js +0 -1
  393. package/legacy/models/elementSize.js +0 -1
  394. package/legacy/models/events/gridEventListener.js +0 -1
  395. package/legacy/models/events/gridEventLookup.js +0 -1
  396. package/legacy/models/events/gridEventPublisher.js +0 -1
  397. package/legacy/models/events/index.js +0 -3
  398. package/legacy/models/gridApiCaches.js +0 -1
  399. package/legacy/models/gridCell.js +0 -1
  400. package/legacy/models/gridCellClass.js +0 -1
  401. package/legacy/models/gridColumnGrouping.js +0 -11
  402. package/legacy/models/gridColumnHeaderClass.js +0 -1
  403. package/legacy/models/gridColumnSpanning.js +0 -1
  404. package/legacy/models/gridDensity.js +0 -1
  405. package/legacy/models/gridEditRowModel.js +0 -16
  406. package/legacy/models/gridExport.js +0 -1
  407. package/legacy/models/gridFeatureMode.js +0 -1
  408. package/legacy/models/gridFilterItem.js +0 -11
  409. package/legacy/models/gridFilterModel.js +0 -1
  410. package/legacy/models/gridFilterOperator.js +0 -1
  411. package/legacy/models/gridHeaderFilteringModel.js +0 -1
  412. package/legacy/models/gridIconSlotsComponent.js +0 -1
  413. package/legacy/models/gridPaginationProps.js +0 -1
  414. package/legacy/models/gridRenderContextProps.js +0 -1
  415. package/legacy/models/gridRowSelectionModel.js +0 -1
  416. package/legacy/models/gridRows.js +0 -1
  417. package/legacy/models/gridSlotsComponent.js +0 -1
  418. package/legacy/models/gridSlotsComponentsProps.js +0 -1
  419. package/legacy/models/gridSortModel.js +0 -1
  420. package/legacy/models/gridStateCommunity.js +0 -1
  421. package/legacy/models/index.js +0 -29
  422. package/legacy/models/logger.js +0 -1
  423. package/legacy/models/muiEvent.js +0 -1
  424. package/legacy/models/params/gridCellParams.js +0 -1
  425. package/legacy/models/params/gridColumnGroupHeaderParams.js +0 -1
  426. package/legacy/models/params/gridColumnHeaderParams.js +0 -1
  427. package/legacy/models/params/gridColumnOrderChangeParams.js +0 -1
  428. package/legacy/models/params/gridColumnResizeParams.js +0 -1
  429. package/legacy/models/params/gridEditCellParams.js +0 -27
  430. package/legacy/models/params/gridHeaderSelectionCheckboxParams.js +0 -1
  431. package/legacy/models/params/gridMenuParams.js +0 -1
  432. package/legacy/models/params/gridPreferencePanelParams.js +0 -1
  433. package/legacy/models/params/gridRowParams.js +0 -44
  434. package/legacy/models/params/gridRowSelectionCheckboxParams.js +0 -1
  435. package/legacy/models/params/gridScrollParams.js +0 -1
  436. package/legacy/models/params/gridValueOptionsParams.js +0 -1
  437. package/legacy/models/params/index.js +0 -13
  438. package/legacy/models/props/DataGridProps.js +0 -1
  439. package/legacy/themeAugmentation/index.js +0 -4
  440. package/legacy/themeAugmentation/overrides.js +0 -1
  441. package/legacy/themeAugmentation/props.js +0 -1
  442. package/legacy/utils/EventManager.js +0 -91
  443. package/legacy/utils/Store.js +0 -34
  444. package/legacy/utils/cleanupTracking/CleanupTracking.js +0 -1
  445. package/legacy/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +0 -29
  446. package/legacy/utils/cleanupTracking/TimerBasedCleanupTracking.js +0 -52
  447. package/legacy/utils/createControllablePromise.js +0 -11
  448. package/legacy/utils/createSelector.js +0 -120
  449. package/legacy/utils/doesSupportPreventScroll.js +0 -13
  450. package/legacy/utils/domUtils.js +0 -49
  451. package/legacy/utils/exportAs.js +0 -40
  452. package/legacy/utils/fastMemo.js +0 -5
  453. package/legacy/utils/fastObjectShallowCompare.js +0 -32
  454. package/legacy/utils/getGridLocalization.js +0 -15
  455. package/legacy/utils/getPublicApiRef.js +0 -5
  456. package/legacy/utils/index.js +0 -1
  457. package/legacy/utils/keyboardUtils.js +0 -60
  458. package/legacy/utils/utils.js +0 -189
  459. package/legacy/utils/warning.js +0 -25
@@ -1,378 +0,0 @@
1
- import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
- import _extends from "@babel/runtime/helpers/esm/extends";
3
- import * as React from 'react';
4
- import { defaultMemoize } from 'reselect';
5
- import { unstable_useEnhancedEffect as useEnhancedEffect } from '@mui/utils';
6
- import { useLazyRef } from '../../utils/useLazyRef';
7
- import { useGridApiEventHandler } from '../../utils/useGridApiEventHandler';
8
- import { useGridApiMethod } from '../../utils/useGridApiMethod';
9
- import { useGridLogger } from '../../utils/useGridLogger';
10
- import { gridColumnLookupSelector } from '../columns/gridColumnsSelector';
11
- import { GridPreferencePanelsValue } from '../preferencesPanel/gridPreferencePanelsValue';
12
- import { getDefaultGridFilterModel } from './gridFilterState';
13
- import { gridFilterModelSelector } from './gridFilterSelector';
14
- import { useFirstRender } from '../../utils/useFirstRender';
15
- import { gridRowsLookupSelector } from '../rows';
16
- import { useGridRegisterPipeProcessor } from '../../core/pipeProcessing';
17
- import { GRID_DEFAULT_STRATEGY, useGridRegisterStrategyProcessor } from '../../core/strategyProcessing';
18
- import { buildAggregatedFilterApplier, sanitizeFilterModel, mergeStateWithFilterModel, cleanFilterItem, passFilterLogic, shouldQuickFilterExcludeHiddenColumns } from './gridFilterUtils';
19
- import { isDeepEqual } from '../../../utils/utils';
20
- import { jsx as _jsx } from "react/jsx-runtime";
21
- export var filterStateInitializer = function filterStateInitializer(state, props, apiRef) {
22
- var _ref, _props$filterModel, _props$initialState;
23
- var filterModel = (_ref = (_props$filterModel = props.filterModel) != null ? _props$filterModel : (_props$initialState = props.initialState) == null || (_props$initialState = _props$initialState.filter) == null ? void 0 : _props$initialState.filterModel) != null ? _ref : getDefaultGridFilterModel();
24
- return _extends({}, state, {
25
- filter: {
26
- filterModel: sanitizeFilterModel(filterModel, props.disableMultipleColumnsFiltering, apiRef),
27
- filteredRowsLookup: {},
28
- filteredDescendantCountLookup: {}
29
- },
30
- visibleRowsLookup: {}
31
- });
32
- };
33
- var getVisibleRowsLookup = function getVisibleRowsLookup(params) {
34
- // For flat tree, the `visibleRowsLookup` and the `filteredRowsLookup` are equals since no row is collapsed.
35
- return params.filteredRowsLookup;
36
- };
37
- function getVisibleRowsLookupState(apiRef, state) {
38
- return apiRef.current.applyStrategyProcessor('visibleRowsLookupCreation', {
39
- tree: state.rows.tree,
40
- filteredRowsLookup: state.filter.filteredRowsLookup
41
- });
42
- }
43
- function createMemoizedValues() {
44
- return defaultMemoize(Object.values);
45
- }
46
-
47
- /**
48
- * @requires useGridColumns (method, event)
49
- * @requires useGridParamsApi (method)
50
- * @requires useGridRows (event)
51
- */
52
- export var useGridFilter = function useGridFilter(apiRef, props) {
53
- var _props$initialState3, _props$slotProps2;
54
- var logger = useGridLogger(apiRef, 'useGridFilter');
55
- apiRef.current.registerControlState({
56
- stateId: 'filter',
57
- propModel: props.filterModel,
58
- propOnChange: props.onFilterModelChange,
59
- stateSelector: gridFilterModelSelector,
60
- changeEvent: 'filterModelChange'
61
- });
62
- var updateFilteredRows = React.useCallback(function () {
63
- apiRef.current.setState(function (state) {
64
- var filterModel = gridFilterModelSelector(state, apiRef.current.instanceId);
65
- var isRowMatchingFilters = props.filterMode === 'client' ? buildAggregatedFilterApplier(filterModel, apiRef, props.disableEval) : null;
66
- var filteringResult = apiRef.current.applyStrategyProcessor('filtering', {
67
- isRowMatchingFilters: isRowMatchingFilters,
68
- filterModel: filterModel != null ? filterModel : getDefaultGridFilterModel()
69
- });
70
- var newState = _extends({}, state, {
71
- filter: _extends({}, state.filter, filteringResult)
72
- });
73
- var visibleRowsLookupState = getVisibleRowsLookupState(apiRef, newState);
74
- return _extends({}, newState, {
75
- visibleRowsLookup: visibleRowsLookupState
76
- });
77
- });
78
- apiRef.current.publishEvent('filteredRowsSet');
79
- }, [apiRef, props.filterMode, props.disableEval]);
80
- var addColumnMenuItem = React.useCallback(function (columnMenuItems, colDef) {
81
- if (colDef == null || colDef.filterable === false || props.disableColumnFilter) {
82
- return columnMenuItems;
83
- }
84
- return [].concat(_toConsumableArray(columnMenuItems), ['columnMenuFilterItem']);
85
- }, [props.disableColumnFilter]);
86
-
87
- /**
88
- * API METHODS
89
- */
90
- var applyFilters = React.useCallback(function () {
91
- updateFilteredRows();
92
- apiRef.current.forceUpdate();
93
- }, [apiRef, updateFilteredRows]);
94
- var upsertFilterItem = React.useCallback(function (item) {
95
- var filterModel = gridFilterModelSelector(apiRef);
96
- var items = _toConsumableArray(filterModel.items);
97
- var itemIndex = items.findIndex(function (filterItem) {
98
- return filterItem.id === item.id;
99
- });
100
- if (itemIndex === -1) {
101
- items.push(item);
102
- } else {
103
- items[itemIndex] = item;
104
- }
105
- apiRef.current.setFilterModel(_extends({}, filterModel, {
106
- items: items
107
- }), 'upsertFilterItem');
108
- }, [apiRef]);
109
- var upsertFilterItems = React.useCallback(function (items) {
110
- var filterModel = gridFilterModelSelector(apiRef);
111
- var existingItems = _toConsumableArray(filterModel.items);
112
- items.forEach(function (item) {
113
- var itemIndex = items.findIndex(function (filterItem) {
114
- return filterItem.id === item.id;
115
- });
116
- if (itemIndex === -1) {
117
- existingItems.push(item);
118
- } else {
119
- existingItems[itemIndex] = item;
120
- }
121
- });
122
- apiRef.current.setFilterModel(_extends({}, filterModel, {
123
- items: items
124
- }), 'upsertFilterItems');
125
- }, [apiRef]);
126
- var deleteFilterItem = React.useCallback(function (itemToDelete) {
127
- var filterModel = gridFilterModelSelector(apiRef);
128
- var items = filterModel.items.filter(function (item) {
129
- return item.id !== itemToDelete.id;
130
- });
131
- if (items.length === filterModel.items.length) {
132
- return;
133
- }
134
- apiRef.current.setFilterModel(_extends({}, filterModel, {
135
- items: items
136
- }), 'deleteFilterItem');
137
- }, [apiRef]);
138
- var showFilterPanel = React.useCallback(function (targetColumnField, panelId, labelId) {
139
- logger.debug('Displaying filter panel');
140
- if (targetColumnField) {
141
- var filterModel = gridFilterModelSelector(apiRef);
142
- var filterItemsWithValue = filterModel.items.filter(function (item) {
143
- var _column$filterOperato;
144
- if (item.value !== undefined) {
145
- // Some filters like `isAnyOf` support array as `item.value`.
146
- // If array is empty, we want to remove it from the filter model.
147
- if (Array.isArray(item.value) && item.value.length === 0) {
148
- return false;
149
- }
150
- return true;
151
- }
152
- var column = apiRef.current.getColumn(item.field);
153
- var filterOperator = (_column$filterOperato = column.filterOperators) == null ? void 0 : _column$filterOperato.find(function (operator) {
154
- return operator.value === item.operator;
155
- });
156
- var requiresFilterValue = typeof (filterOperator == null ? void 0 : filterOperator.requiresFilterValue) === 'undefined' ? true : filterOperator == null ? void 0 : filterOperator.requiresFilterValue;
157
-
158
- // Operators like `isEmpty` don't have and don't require `item.value`.
159
- // So we don't want to remove them from the filter model if `item.value === undefined`.
160
- // See https://github.com/mui/mui-x/issues/5402
161
- if (requiresFilterValue) {
162
- return false;
163
- }
164
- return true;
165
- });
166
- var newFilterItems;
167
- var filterItemOnTarget = filterItemsWithValue.find(function (item) {
168
- return item.field === targetColumnField;
169
- });
170
- var targetColumn = apiRef.current.getColumn(targetColumnField);
171
- if (filterItemOnTarget) {
172
- newFilterItems = filterItemsWithValue;
173
- } else if (props.disableMultipleColumnsFiltering) {
174
- newFilterItems = [cleanFilterItem({
175
- field: targetColumnField,
176
- operator: targetColumn.filterOperators[0].value
177
- }, apiRef)];
178
- } else {
179
- newFilterItems = [].concat(_toConsumableArray(filterItemsWithValue), [cleanFilterItem({
180
- field: targetColumnField,
181
- operator: targetColumn.filterOperators[0].value
182
- }, apiRef)]);
183
- }
184
- apiRef.current.setFilterModel(_extends({}, filterModel, {
185
- items: newFilterItems
186
- }));
187
- }
188
- apiRef.current.showPreferences(GridPreferencePanelsValue.filters, panelId, labelId);
189
- }, [apiRef, logger, props.disableMultipleColumnsFiltering]);
190
- var hideFilterPanel = React.useCallback(function () {
191
- logger.debug('Hiding filter panel');
192
- apiRef.current.hidePreferences();
193
- }, [apiRef, logger]);
194
- var setFilterLogicOperator = React.useCallback(function (logicOperator) {
195
- var filterModel = gridFilterModelSelector(apiRef);
196
- if (filterModel.logicOperator === logicOperator) {
197
- return;
198
- }
199
- apiRef.current.setFilterModel(_extends({}, filterModel, {
200
- logicOperator: logicOperator
201
- }), 'changeLogicOperator');
202
- }, [apiRef]);
203
- var setQuickFilterValues = React.useCallback(function (values) {
204
- var filterModel = gridFilterModelSelector(apiRef);
205
- if (isDeepEqual(filterModel.quickFilterValues, values)) {
206
- return;
207
- }
208
- apiRef.current.setFilterModel(_extends({}, filterModel, {
209
- quickFilterValues: _toConsumableArray(values)
210
- }));
211
- }, [apiRef]);
212
- var setFilterModel = React.useCallback(function (model, reason) {
213
- var currentModel = gridFilterModelSelector(apiRef);
214
- if (currentModel !== model) {
215
- logger.debug('Setting filter model');
216
- apiRef.current.updateControlState('filter', mergeStateWithFilterModel(model, props.disableMultipleColumnsFiltering, apiRef), reason);
217
- apiRef.current.unstable_applyFilters();
218
- }
219
- }, [apiRef, logger, props.disableMultipleColumnsFiltering]);
220
- var filterApi = {
221
- setFilterLogicOperator: setFilterLogicOperator,
222
- unstable_applyFilters: applyFilters,
223
- deleteFilterItem: deleteFilterItem,
224
- upsertFilterItem: upsertFilterItem,
225
- upsertFilterItems: upsertFilterItems,
226
- setFilterModel: setFilterModel,
227
- showFilterPanel: showFilterPanel,
228
- hideFilterPanel: hideFilterPanel,
229
- setQuickFilterValues: setQuickFilterValues,
230
- ignoreDiacritics: props.ignoreDiacritics
231
- };
232
- useGridApiMethod(apiRef, filterApi, 'public');
233
-
234
- /**
235
- * PRE-PROCESSING
236
- */
237
- var stateExportPreProcessing = React.useCallback(function (prevState, context) {
238
- var _props$initialState2;
239
- var filterModelToExport = gridFilterModelSelector(apiRef);
240
- var shouldExportFilterModel =
241
- // Always export if the `exportOnlyDirtyModels` property is not activated
242
- !context.exportOnlyDirtyModels ||
243
- // Always export if the model is controlled
244
- props.filterModel != null ||
245
- // Always export if the model has been initialized
246
- ((_props$initialState2 = props.initialState) == null || (_props$initialState2 = _props$initialState2.filter) == null ? void 0 : _props$initialState2.filterModel) != null ||
247
- // Export if the model is not equal to the default value
248
- !isDeepEqual(filterModelToExport, getDefaultGridFilterModel());
249
- if (!shouldExportFilterModel) {
250
- return prevState;
251
- }
252
- return _extends({}, prevState, {
253
- filter: {
254
- filterModel: filterModelToExport
255
- }
256
- });
257
- }, [apiRef, props.filterModel, (_props$initialState3 = props.initialState) == null || (_props$initialState3 = _props$initialState3.filter) == null ? void 0 : _props$initialState3.filterModel]);
258
- var stateRestorePreProcessing = React.useCallback(function (params, context) {
259
- var _context$stateToResto;
260
- var filterModel = (_context$stateToResto = context.stateToRestore.filter) == null ? void 0 : _context$stateToResto.filterModel;
261
- if (filterModel == null) {
262
- return params;
263
- }
264
- apiRef.current.updateControlState('filter', mergeStateWithFilterModel(filterModel, props.disableMultipleColumnsFiltering, apiRef), 'restoreState');
265
- return _extends({}, params, {
266
- callbacks: [].concat(_toConsumableArray(params.callbacks), [apiRef.current.unstable_applyFilters])
267
- });
268
- }, [apiRef, props.disableMultipleColumnsFiltering]);
269
- var preferencePanelPreProcessing = React.useCallback(function (initialValue, value) {
270
- if (value === GridPreferencePanelsValue.filters) {
271
- var _props$slotProps;
272
- var FilterPanel = props.slots.filterPanel;
273
- return /*#__PURE__*/_jsx(FilterPanel, _extends({}, (_props$slotProps = props.slotProps) == null ? void 0 : _props$slotProps.filterPanel));
274
- }
275
- return initialValue;
276
- }, [props.slots.filterPanel, (_props$slotProps2 = props.slotProps) == null ? void 0 : _props$slotProps2.filterPanel]);
277
- var getRowId = props.getRowId;
278
- var getRowsRef = useLazyRef(createMemoizedValues);
279
- var flatFilteringMethod = React.useCallback(function (params) {
280
- if (props.filterMode !== 'client' || !params.isRowMatchingFilters) {
281
- return {
282
- filteredRowsLookup: {},
283
- filteredDescendantCountLookup: {}
284
- };
285
- }
286
- var dataRowIdToModelLookup = gridRowsLookupSelector(apiRef);
287
- var filteredRowsLookup = {};
288
- var isRowMatchingFilters = params.isRowMatchingFilters;
289
- var filterCache = {};
290
- var result = {
291
- passingFilterItems: null,
292
- passingQuickFilterValues: null
293
- };
294
- var rows = getRowsRef.current(apiRef.current.state.rows.dataRowIdToModelLookup);
295
- for (var i = 0; i < rows.length; i += 1) {
296
- var row = rows[i];
297
- var id = getRowId ? getRowId(row) : row.id;
298
- isRowMatchingFilters(row, undefined, result);
299
- var isRowPassing = passFilterLogic([result.passingFilterItems], [result.passingQuickFilterValues], params.filterModel, apiRef, filterCache);
300
- filteredRowsLookup[id] = isRowPassing;
301
- }
302
- var footerId = 'auto-generated-group-footer-root';
303
- var footer = dataRowIdToModelLookup[footerId];
304
- if (footer) {
305
- filteredRowsLookup[footerId] = true;
306
- }
307
- return {
308
- filteredRowsLookup: filteredRowsLookup,
309
- filteredDescendantCountLookup: {}
310
- };
311
- }, [apiRef, props.filterMode, getRowId, getRowsRef]);
312
- useGridRegisterPipeProcessor(apiRef, 'columnMenu', addColumnMenuItem);
313
- useGridRegisterPipeProcessor(apiRef, 'exportState', stateExportPreProcessing);
314
- useGridRegisterPipeProcessor(apiRef, 'restoreState', stateRestorePreProcessing);
315
- useGridRegisterPipeProcessor(apiRef, 'preferencePanel', preferencePanelPreProcessing);
316
- useGridRegisterStrategyProcessor(apiRef, GRID_DEFAULT_STRATEGY, 'filtering', flatFilteringMethod);
317
- useGridRegisterStrategyProcessor(apiRef, GRID_DEFAULT_STRATEGY, 'visibleRowsLookupCreation', getVisibleRowsLookup);
318
-
319
- /**
320
- * EVENTS
321
- */
322
- var handleColumnsChange = React.useCallback(function () {
323
- logger.debug('onColUpdated - GridColumns changed, applying filters');
324
- var filterModel = gridFilterModelSelector(apiRef);
325
- var columnsLookup = gridColumnLookupSelector(apiRef);
326
- var newFilterItems = filterModel.items.filter(function (item) {
327
- return item.field && columnsLookup[item.field];
328
- });
329
- if (newFilterItems.length < filterModel.items.length) {
330
- apiRef.current.setFilterModel(_extends({}, filterModel, {
331
- items: newFilterItems
332
- }));
333
- }
334
- }, [apiRef, logger]);
335
- var handleStrategyProcessorChange = React.useCallback(function (methodName) {
336
- if (methodName === 'filtering') {
337
- apiRef.current.unstable_applyFilters();
338
- }
339
- }, [apiRef]);
340
- var updateVisibleRowsLookupState = React.useCallback(function () {
341
- apiRef.current.setState(function (state) {
342
- return _extends({}, state, {
343
- visibleRowsLookup: getVisibleRowsLookupState(apiRef, state)
344
- });
345
- });
346
- apiRef.current.forceUpdate();
347
- }, [apiRef]);
348
-
349
- // Do not call `apiRef.current.forceUpdate` to avoid re-render before updating the sorted rows.
350
- // Otherwise, the state is not consistent during the render
351
- useGridApiEventHandler(apiRef, 'rowsSet', updateFilteredRows);
352
- useGridApiEventHandler(apiRef, 'columnsChange', handleColumnsChange);
353
- useGridApiEventHandler(apiRef, 'activeStrategyProcessorChange', handleStrategyProcessorChange);
354
- useGridApiEventHandler(apiRef, 'rowExpansionChange', updateVisibleRowsLookupState);
355
- useGridApiEventHandler(apiRef, 'columnVisibilityModelChange', function () {
356
- var filterModel = gridFilterModelSelector(apiRef);
357
- if (filterModel.quickFilterValues && shouldQuickFilterExcludeHiddenColumns(filterModel)) {
358
- // re-apply filters because the quick filter results may have changed
359
- apiRef.current.unstable_applyFilters();
360
- }
361
- });
362
-
363
- /**
364
- * 1ST RENDER
365
- */
366
- useFirstRender(function () {
367
- apiRef.current.unstable_applyFilters();
368
- });
369
-
370
- /**
371
- * EFFECTS
372
- */
373
- useEnhancedEffect(function () {
374
- if (props.filterModel !== undefined) {
375
- apiRef.current.setFilterModel(props.filterModel);
376
- }
377
- }, [apiRef, logger, props.filterModel]);
378
- };
@@ -1 +0,0 @@
1
- export {};
@@ -1,31 +0,0 @@
1
- import { createSelector } from '../../../utils/createSelector';
2
- export var gridFocusStateSelector = function gridFocusStateSelector(state) {
3
- return state.focus;
4
- };
5
- export var gridFocusCellSelector = createSelector(gridFocusStateSelector, function (focusState) {
6
- return focusState.cell;
7
- });
8
- export var gridFocusColumnHeaderSelector = createSelector(gridFocusStateSelector, function (focusState) {
9
- return focusState.columnHeader;
10
- });
11
- export var gridFocusColumnHeaderFilterSelector = createSelector(gridFocusStateSelector, function (focusState) {
12
- return focusState.columnHeaderFilter;
13
- });
14
- export var gridFocusColumnGroupHeaderSelector = createSelector(gridFocusStateSelector, function (focusState) {
15
- return focusState.columnGroupHeader;
16
- });
17
- export var gridTabIndexStateSelector = function gridTabIndexStateSelector(state) {
18
- return state.tabIndex;
19
- };
20
- export var gridTabIndexCellSelector = createSelector(gridTabIndexStateSelector, function (state) {
21
- return state.cell;
22
- });
23
- export var gridTabIndexColumnHeaderSelector = createSelector(gridTabIndexStateSelector, function (state) {
24
- return state.columnHeader;
25
- });
26
- export var gridTabIndexColumnHeaderFilterSelector = createSelector(gridTabIndexStateSelector, function (state) {
27
- return state.columnHeaderFilter;
28
- });
29
- export var gridTabIndexColumnGroupHeaderSelector = createSelector(gridTabIndexStateSelector, function (state) {
30
- return state.columnGroupHeader;
31
- });
@@ -1,2 +0,0 @@
1
- export * from './gridFocusStateSelector';
2
- export * from './gridFocusState';