@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,31 +0,0 @@
1
- import { buildWarning } from '../../../utils/warning';
2
- import { GridSignature } from '../../utils';
3
- var MAX_PAGE_SIZE = 100;
4
- export var defaultPageSize = function defaultPageSize(autoPageSize) {
5
- return autoPageSize ? 0 : 100;
6
- };
7
- export var getPageCount = function getPageCount(rowCount, pageSize) {
8
- if (pageSize > 0 && rowCount > 0) {
9
- return Math.ceil(rowCount / pageSize);
10
- }
11
- return 0;
12
- };
13
- export var noRowCountInServerMode = buildWarning(["MUI X: the 'rowCount' prop is undefined while using paginationMode='server'", 'For more detail, see http://mui.com/components/data-grid/pagination/#basic-implementation'], 'error');
14
- export var getDefaultGridPaginationModel = function getDefaultGridPaginationModel(autoPageSize) {
15
- return {
16
- page: 0,
17
- pageSize: autoPageSize ? 0 : 100
18
- };
19
- };
20
- export var getValidPage = function getValidPage(page) {
21
- var pageCount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
22
- if (pageCount === 0) {
23
- return page;
24
- }
25
- return Math.max(Math.min(page, pageCount - 1), 0);
26
- };
27
- export var throwIfPageSizeExceedsTheLimit = function throwIfPageSizeExceedsTheLimit(pageSize, signatureProp) {
28
- if (signatureProp === GridSignature.DataGrid && pageSize > MAX_PAGE_SIZE) {
29
- throw new Error(['MUI X: `pageSize` cannot exceed 100 in the MIT version of the DataGrid.', 'You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature.'].join('\n'));
30
- }
31
- };
@@ -1,2 +0,0 @@
1
- export * from './gridPaginationSelector';
2
- export {};
@@ -1,175 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import * as React from 'react';
3
- import { gridFilteredTopLevelRowCountSelector } from '../filter';
4
- import { gridDensityFactorSelector } from '../density';
5
- import { useGridLogger, useGridSelector, useGridApiMethod, useGridApiEventHandler } from '../../utils';
6
- import { useGridRegisterPipeProcessor } from '../../core/pipeProcessing';
7
- import { gridPaginationModelSelector } from './gridPaginationSelector';
8
- import { getPageCount, noRowCountInServerMode, defaultPageSize, throwIfPageSizeExceedsTheLimit, getDefaultGridPaginationModel, getValidPage } from './gridPaginationUtils';
9
- export var paginationStateInitializer = function paginationStateInitializer(state, props) {
10
- var _props$paginationMode, _props$initialState;
11
- var paginationModel = _extends({}, getDefaultGridPaginationModel(props.autoPageSize), (_props$paginationMode = props.paginationModel) != null ? _props$paginationMode : (_props$initialState = props.initialState) == null || (_props$initialState = _props$initialState.pagination) == null ? void 0 : _props$initialState.paginationModel);
12
- throwIfPageSizeExceedsTheLimit(paginationModel.pageSize, props.signature);
13
- return _extends({}, state, {
14
- pagination: {
15
- paginationModel: paginationModel
16
- }
17
- });
18
- };
19
- export var mergeStateWithPaginationModel = function mergeStateWithPaginationModel(rowCount, signature, paginationModelProp) {
20
- return function (paginationState) {
21
- var _paginationModelProp$;
22
- var paginationModel = paginationState.paginationModel;
23
- var pageSize = (_paginationModelProp$ = paginationModelProp == null ? void 0 : paginationModelProp.pageSize) != null ? _paginationModelProp$ : paginationModel.pageSize;
24
- var pageCount = getPageCount(rowCount, pageSize);
25
- if (paginationModelProp && ((paginationModelProp == null ? void 0 : paginationModelProp.page) !== paginationModel.page || (paginationModelProp == null ? void 0 : paginationModelProp.pageSize) !== paginationModel.pageSize)) {
26
- paginationModel = paginationModelProp;
27
- }
28
- var validPage = getValidPage(paginationModel.page, pageCount);
29
- if (validPage !== paginationModel.page) {
30
- paginationModel = _extends({}, paginationModel, {
31
- page: validPage
32
- });
33
- }
34
- throwIfPageSizeExceedsTheLimit(paginationModel.pageSize, signature);
35
- return {
36
- paginationModel: paginationModel
37
- };
38
- };
39
- };
40
-
41
- /**
42
- * @requires useGridFilter (state)
43
- * @requires useGridDimensions (event) - can be after
44
- */
45
- export var useGridPagination = function useGridPagination(apiRef, props) {
46
- var _props$initialState3;
47
- var logger = useGridLogger(apiRef, 'useGridPagination');
48
- var visibleTopLevelRowCount = useGridSelector(apiRef, gridFilteredTopLevelRowCountSelector);
49
- var densityFactor = useGridSelector(apiRef, gridDensityFactorSelector);
50
- var rowHeight = Math.floor(props.rowHeight * densityFactor);
51
- apiRef.current.registerControlState({
52
- stateId: 'pagination',
53
- propModel: props.paginationModel,
54
- propOnChange: props.onPaginationModelChange,
55
- stateSelector: gridPaginationModelSelector,
56
- changeEvent: 'paginationModelChange'
57
- });
58
-
59
- /**
60
- * API METHODS
61
- */
62
- var setPage = React.useCallback(function (page) {
63
- var currentModel = gridPaginationModelSelector(apiRef);
64
- if (page === currentModel.page) {
65
- return;
66
- }
67
- logger.debug("Setting page to ".concat(page));
68
- apiRef.current.setPaginationModel({
69
- page: page,
70
- pageSize: currentModel.pageSize
71
- });
72
- }, [apiRef, logger]);
73
- var setPageSize = React.useCallback(function (pageSize) {
74
- var currentModel = gridPaginationModelSelector(apiRef);
75
- if (pageSize === currentModel.pageSize) {
76
- return;
77
- }
78
- logger.debug("Setting page size to ".concat(pageSize));
79
- apiRef.current.setPaginationModel({
80
- pageSize: pageSize,
81
- page: currentModel.page
82
- });
83
- }, [apiRef, logger]);
84
- var setPaginationModel = React.useCallback(function (paginationModel) {
85
- var _props$rowCount;
86
- var currentModel = gridPaginationModelSelector(apiRef);
87
- if (paginationModel === currentModel) {
88
- return;
89
- }
90
- logger.debug("Setting 'paginationModel' to", paginationModel);
91
- apiRef.current.updateControlState('pagination', mergeStateWithPaginationModel((_props$rowCount = props.rowCount) != null ? _props$rowCount : visibleTopLevelRowCount, props.signature, paginationModel), 'setPaginationModel');
92
- apiRef.current.forceUpdate();
93
- }, [apiRef, logger, props.rowCount, props.signature, visibleTopLevelRowCount]);
94
- var pageApi = {
95
- setPage: setPage,
96
- setPageSize: setPageSize,
97
- setPaginationModel: setPaginationModel
98
- };
99
- useGridApiMethod(apiRef, pageApi, 'public');
100
-
101
- /**
102
- * PRE-PROCESSING
103
- */
104
- var stateExportPreProcessing = React.useCallback(function (prevState, context) {
105
- var _props$initialState2;
106
- var paginationModel = gridPaginationModelSelector(apiRef);
107
- var shouldExportPaginationModel =
108
- // Always export if the `exportOnlyDirtyModels` property is not activated
109
- !context.exportOnlyDirtyModels ||
110
- // Always export if the `paginationModel` is controlled
111
- props.paginationModel != null ||
112
- // Always export if the `paginationModel` has been initialized
113
- ((_props$initialState2 = props.initialState) == null || (_props$initialState2 = _props$initialState2.pagination) == null ? void 0 : _props$initialState2.paginationModel) != null ||
114
- // Export if `page` or `pageSize` is not equal to the default value
115
- paginationModel.page !== 0 && paginationModel.pageSize !== defaultPageSize(props.autoPageSize);
116
- if (!shouldExportPaginationModel) {
117
- return prevState;
118
- }
119
- return _extends({}, prevState, {
120
- pagination: _extends({}, prevState.pagination, {
121
- paginationModel: paginationModel
122
- })
123
- });
124
- }, [apiRef, props.paginationModel, (_props$initialState3 = props.initialState) == null || (_props$initialState3 = _props$initialState3.pagination) == null ? void 0 : _props$initialState3.paginationModel, props.autoPageSize]);
125
- var stateRestorePreProcessing = React.useCallback(function (params, context) {
126
- var _context$stateToResto, _context$stateToResto2, _props$rowCount2;
127
- var paginationModel = (_context$stateToResto = context.stateToRestore.pagination) != null && _context$stateToResto.paginationModel ? _extends({}, getDefaultGridPaginationModel(props.autoPageSize), (_context$stateToResto2 = context.stateToRestore.pagination) == null ? void 0 : _context$stateToResto2.paginationModel) : gridPaginationModelSelector(apiRef);
128
- apiRef.current.updateControlState('pagination', mergeStateWithPaginationModel((_props$rowCount2 = props.rowCount) != null ? _props$rowCount2 : visibleTopLevelRowCount, props.signature, paginationModel), 'stateRestorePreProcessing');
129
- return params;
130
- }, [apiRef, props.autoPageSize, props.rowCount, props.signature, visibleTopLevelRowCount]);
131
- useGridRegisterPipeProcessor(apiRef, 'exportState', stateExportPreProcessing);
132
- useGridRegisterPipeProcessor(apiRef, 'restoreState', stateRestorePreProcessing);
133
-
134
- /**
135
- * EVENTS
136
- */
137
- var handlePaginationModelChange = function handlePaginationModelChange() {
138
- var _apiRef$current$virtu;
139
- var paginationModel = gridPaginationModelSelector(apiRef);
140
- if ((_apiRef$current$virtu = apiRef.current.virtualScrollerRef) != null && _apiRef$current$virtu.current) {
141
- apiRef.current.scrollToIndexes({
142
- rowIndex: paginationModel.page * paginationModel.pageSize
143
- });
144
- }
145
- apiRef.current.forceUpdate();
146
- };
147
- var handleUpdateAutoPageSize = React.useCallback(function () {
148
- if (!props.autoPageSize) {
149
- return;
150
- }
151
- var dimensions = apiRef.current.getRootDimensions();
152
- var maximumPageSizeWithoutScrollBar = Math.floor(dimensions.viewportInnerSize.height / rowHeight);
153
- apiRef.current.setPageSize(maximumPageSizeWithoutScrollBar);
154
- }, [apiRef, props.autoPageSize, rowHeight]);
155
- useGridApiEventHandler(apiRef, 'viewportInnerSizeChange', handleUpdateAutoPageSize);
156
- useGridApiEventHandler(apiRef, 'paginationModelChange', handlePaginationModelChange);
157
-
158
- /**
159
- * EFFECTS
160
- */
161
- React.useEffect(function () {
162
- if (process.env.NODE_ENV !== 'production') {
163
- if (props.paginationMode === 'server' && props.rowCount == null) {
164
- noRowCountInServerMode();
165
- }
166
- }
167
- }, [props.rowCount, props.paginationMode]);
168
- React.useEffect(function () {
169
- var _props$rowCount3;
170
- apiRef.current.updateControlState('pagination', mergeStateWithPaginationModel((_props$rowCount3 = props.rowCount) != null ? _props$rowCount3 : visibleTopLevelRowCount, props.signature, props.paginationModel));
171
- }, [apiRef, props.paginationModel, props.rowCount, props.paginationMode, visibleTopLevelRowCount, props.signature]);
172
- React.useEffect(function () {
173
- handleUpdateAutoPageSize();
174
- }, [handleUpdateAutoPageSize]);
175
- };
@@ -1,3 +0,0 @@
1
- export var gridPreferencePanelStateSelector = function gridPreferencePanelStateSelector(state) {
2
- return state.preferencePanel;
3
- };
@@ -1,6 +0,0 @@
1
- var GridPreferencePanelsValue = /*#__PURE__*/function (GridPreferencePanelsValue) {
2
- GridPreferencePanelsValue["filters"] = "filters";
3
- GridPreferencePanelsValue["columns"] = "columns";
4
- return GridPreferencePanelsValue;
5
- }(GridPreferencePanelsValue || {});
6
- export { GridPreferencePanelsValue };
@@ -1,3 +0,0 @@
1
- export * from './gridPreferencePanelSelector';
2
- export * from './gridPreferencePanelState';
3
- export * from './gridPreferencePanelsValue';
@@ -1,125 +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/useGridLogger';
5
- import { useGridRegisterPipeProcessor } from '../../core/pipeProcessing';
6
- import { gridPreferencePanelStateSelector } from './gridPreferencePanelSelector';
7
- export var preferencePanelStateInitializer = function preferencePanelStateInitializer(state, props) {
8
- var _props$initialState$p, _props$initialState;
9
- return _extends({}, state, {
10
- preferencePanel: (_props$initialState$p = (_props$initialState = props.initialState) == null ? void 0 : _props$initialState.preferencePanel) != null ? _props$initialState$p : {
11
- open: false
12
- }
13
- });
14
- };
15
-
16
- /**
17
- * TODO: Add a single `setPreferencePanel` method to avoid multiple `setState`
18
- */
19
- export var useGridPreferencesPanel = function useGridPreferencesPanel(apiRef, props) {
20
- var _props$initialState3;
21
- var logger = useGridLogger(apiRef, 'useGridPreferencesPanel');
22
- var hideTimeout = React.useRef();
23
- var immediateTimeout = React.useRef();
24
-
25
- /**
26
- * API METHODS
27
- */
28
- var hidePreferences = React.useCallback(function () {
29
- logger.debug('Hiding Preferences Panel');
30
- var preferencePanelState = gridPreferencePanelStateSelector(apiRef.current.state);
31
- if (preferencePanelState.openedPanelValue) {
32
- apiRef.current.publishEvent('preferencePanelClose', {
33
- openedPanelValue: preferencePanelState.openedPanelValue
34
- });
35
- }
36
- apiRef.current.setState(function (state) {
37
- return _extends({}, state, {
38
- preferencePanel: {
39
- open: false
40
- }
41
- });
42
- });
43
- apiRef.current.forceUpdate();
44
- }, [apiRef, logger]);
45
-
46
- // This is to prevent the preferences from closing when you open a select box or another panel,
47
- // The issue is in MUI core V4 => Fixed in V5
48
- var doNotHidePanel = React.useCallback(function () {
49
- immediateTimeout.current = setTimeout(function () {
50
- return clearTimeout(hideTimeout.current);
51
- }, 0);
52
- }, []);
53
-
54
- // This is a hack for the issue with Core V4, by delaying hiding the panel on the clickAwayListener,
55
- // we can cancel the action if the trigger element still need the panel...
56
- var hidePreferencesDelayed = React.useCallback(function () {
57
- hideTimeout.current = setTimeout(hidePreferences, 100);
58
- }, [hidePreferences]);
59
- var showPreferences = React.useCallback(function (newValue, panelId, labelId) {
60
- logger.debug('Opening Preferences Panel');
61
- doNotHidePanel();
62
- apiRef.current.setState(function (state) {
63
- return _extends({}, state, {
64
- preferencePanel: _extends({}, state.preferencePanel, {
65
- open: true,
66
- openedPanelValue: newValue,
67
- panelId: panelId,
68
- labelId: labelId
69
- })
70
- });
71
- });
72
- apiRef.current.publishEvent('preferencePanelOpen', {
73
- openedPanelValue: newValue
74
- });
75
- apiRef.current.forceUpdate();
76
- }, [logger, doNotHidePanel, apiRef]);
77
- useGridApiMethod(apiRef, {
78
- showPreferences: showPreferences,
79
- hidePreferences: hidePreferencesDelayed
80
- }, 'public');
81
-
82
- /**
83
- * PRE-PROCESSING
84
- */
85
- var stateExportPreProcessing = React.useCallback(function (prevState, context) {
86
- var _props$initialState2;
87
- var preferencePanelToExport = gridPreferencePanelStateSelector(apiRef.current.state);
88
- var shouldExportPreferencePanel =
89
- // Always export if the `exportOnlyDirtyModels` property is not activated
90
- !context.exportOnlyDirtyModels ||
91
- // Always export if the panel was initialized
92
- ((_props$initialState2 = props.initialState) == null ? void 0 : _props$initialState2.preferencePanel) != null ||
93
- // Always export if the panel is opened
94
- preferencePanelToExport.open;
95
- if (!shouldExportPreferencePanel) {
96
- return prevState;
97
- }
98
- return _extends({}, prevState, {
99
- preferencePanel: preferencePanelToExport
100
- });
101
- }, [apiRef, (_props$initialState3 = props.initialState) == null ? void 0 : _props$initialState3.preferencePanel]);
102
- var stateRestorePreProcessing = React.useCallback(function (params, context) {
103
- var preferencePanel = context.stateToRestore.preferencePanel;
104
- if (preferencePanel != null) {
105
- apiRef.current.setState(function (state) {
106
- return _extends({}, state, {
107
- preferencePanel: preferencePanel
108
- });
109
- });
110
- }
111
- return params;
112
- }, [apiRef]);
113
- useGridRegisterPipeProcessor(apiRef, 'exportState', stateExportPreProcessing);
114
- useGridRegisterPipeProcessor(apiRef, 'restoreState', stateRestorePreProcessing);
115
-
116
- /**
117
- * EFFECTS
118
- */
119
- React.useEffect(function () {
120
- return function () {
121
- clearTimeout(hideTimeout.current);
122
- clearTimeout(immediateTimeout.current);
123
- };
124
- }, []);
125
- };
@@ -1,19 +0,0 @@
1
- import { createSelector, createSelectorMemoized } from '../../../utils/createSelector';
2
- import { gridRowsLookupSelector } from '../rows/gridRowsSelector';
3
- export var gridRowSelectionStateSelector = function gridRowSelectionStateSelector(state) {
4
- return state.rowSelection;
5
- };
6
- export var selectedGridRowsCountSelector = createSelector(gridRowSelectionStateSelector, function (selection) {
7
- return selection.length;
8
- });
9
- export var selectedGridRowsSelector = createSelectorMemoized(gridRowSelectionStateSelector, gridRowsLookupSelector, function (selectedRows, rowsLookup) {
10
- return new Map(selectedRows.map(function (id) {
11
- return [id, rowsLookup[id]];
12
- }));
13
- });
14
- export var selectedIdsLookupSelector = createSelectorMemoized(gridRowSelectionStateSelector, function (selection) {
15
- return selection.reduce(function (lookup, rowId) {
16
- lookup[rowId] = rowId;
17
- return lookup;
18
- }, {});
19
- });
@@ -1 +0,0 @@
1
- export * from './gridRowSelectionSelector';