@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,105 +0,0 @@
1
- import * as React from 'react';
2
- import { useGridApiMethod } from '../../utils/useGridApiMethod';
3
- import { useGridApiEventHandler } from '../../utils/useGridApiEventHandler';
4
- /**
5
- * @requires useGridColumns (method, event)
6
- * @requires useGridParamsApi (method)
7
- */
8
- export var useGridColumnSpanning = function useGridColumnSpanning(apiRef) {
9
- var lookup = React.useRef({});
10
- var getCellColSpanInfo = function getCellColSpanInfo(rowId, columnIndex) {
11
- var _lookup$current$rowId;
12
- return (_lookup$current$rowId = lookup.current[rowId]) == null ? void 0 : _lookup$current$rowId[columnIndex];
13
- };
14
-
15
- // Calculate `colSpan` for each cell in the row
16
- var calculateColSpan = React.useCallback(function (_ref) {
17
- var rowId = _ref.rowId,
18
- minFirstColumn = _ref.minFirstColumn,
19
- maxLastColumn = _ref.maxLastColumn,
20
- columns = _ref.columns;
21
- for (var i = minFirstColumn; i < maxLastColumn; i += 1) {
22
- var cellProps = calculateCellColSpan({
23
- apiRef: apiRef,
24
- lookup: lookup.current,
25
- columnIndex: i,
26
- rowId: rowId,
27
- minFirstColumnIndex: minFirstColumn,
28
- maxLastColumnIndex: maxLastColumn,
29
- columns: columns
30
- });
31
- if (cellProps.colSpan > 1) {
32
- i += cellProps.colSpan - 1;
33
- }
34
- }
35
- }, [apiRef]);
36
- var columnSpanningPublicApi = {
37
- unstable_getCellColSpanInfo: getCellColSpanInfo
38
- };
39
- var columnSpanningPrivateApi = {
40
- calculateColSpan: calculateColSpan
41
- };
42
- useGridApiMethod(apiRef, columnSpanningPublicApi, 'public');
43
- useGridApiMethod(apiRef, columnSpanningPrivateApi, 'private');
44
- var handleColumnReorderChange = React.useCallback(function () {
45
- // `colSpan` needs to be recalculated after column reordering
46
- lookup.current = {};
47
- }, []);
48
- useGridApiEventHandler(apiRef, 'columnOrderChange', handleColumnReorderChange);
49
- };
50
- function calculateCellColSpan(params) {
51
- var apiRef = params.apiRef,
52
- lookup = params.lookup,
53
- columnIndex = params.columnIndex,
54
- rowId = params.rowId,
55
- minFirstColumnIndex = params.minFirstColumnIndex,
56
- maxLastColumnIndex = params.maxLastColumnIndex,
57
- columns = params.columns;
58
- var columnsLength = columns.length;
59
- var column = columns[columnIndex];
60
- var row = apiRef.current.getRow(rowId);
61
- var value = apiRef.current.getRowValue(row, column);
62
- var colSpan = typeof column.colSpan === 'function' ? column.colSpan(value, row, column, apiRef) : column.colSpan;
63
- if (!colSpan || colSpan === 1) {
64
- setCellColSpanInfo(lookup, rowId, columnIndex, {
65
- spannedByColSpan: false,
66
- cellProps: {
67
- colSpan: 1,
68
- width: column.computedWidth
69
- }
70
- });
71
- return {
72
- colSpan: 1
73
- };
74
- }
75
- var width = column.computedWidth;
76
- for (var j = 1; j < colSpan; j += 1) {
77
- var nextColumnIndex = columnIndex + j;
78
- // Cells should be spanned only within their column section (left-pinned, right-pinned and unpinned).
79
- if (nextColumnIndex >= minFirstColumnIndex && nextColumnIndex < maxLastColumnIndex) {
80
- var nextColumn = columns[nextColumnIndex];
81
- width += nextColumn.computedWidth;
82
- setCellColSpanInfo(lookup, rowId, columnIndex + j, {
83
- spannedByColSpan: true,
84
- rightVisibleCellIndex: Math.min(columnIndex + colSpan, columnsLength - 1),
85
- leftVisibleCellIndex: columnIndex
86
- });
87
- }
88
- setCellColSpanInfo(lookup, rowId, columnIndex, {
89
- spannedByColSpan: false,
90
- cellProps: {
91
- colSpan: colSpan,
92
- width: width
93
- }
94
- });
95
- }
96
- return {
97
- colSpan: colSpan
98
- };
99
- }
100
- function setCellColSpanInfo(lookup, rowId, columnIndex, cellColSpanInfo) {
101
- if (!lookup[rowId]) {
102
- lookup[rowId] = {};
103
- }
104
- lookup[rowId][columnIndex] = cellColSpanInfo;
105
- }
@@ -1,319 +0,0 @@
1
- import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
- import _extends from "@babel/runtime/helpers/esm/extends";
4
- import * as React from 'react';
5
- import { useGridApiMethod } from '../../utils/useGridApiMethod';
6
- import { useGridLogger } from '../../utils/useGridLogger';
7
- import { gridColumnFieldsSelector, gridColumnDefinitionsSelector, gridColumnLookupSelector, gridColumnsStateSelector, gridColumnVisibilityModelSelector, gridVisibleColumnDefinitionsSelector, gridColumnPositionsSelector } from './gridColumnsSelector';
8
- import { GridSignature, useGridApiEventHandler } from '../../utils/useGridApiEventHandler';
9
- import { useGridRegisterPipeProcessor, useGridRegisterPipeApplier } from '../../core/pipeProcessing';
10
- import { EMPTY_PINNED_COLUMN_FIELDS } from './gridColumnsInterfaces';
11
- import { hydrateColumnsWidth, createColumnsState, COLUMNS_DIMENSION_PROPERTIES } from './gridColumnsUtils';
12
- import { GridPreferencePanelsValue } from '../preferencesPanel';
13
- import { jsx as _jsx } from "react/jsx-runtime";
14
- export var columnsStateInitializer = function columnsStateInitializer(state, props, apiRef) {
15
- var _props$initialState, _ref, _props$columnVisibili, _props$initialState2, _state$pinnedColumns;
16
- var columnsState = createColumnsState({
17
- apiRef: apiRef,
18
- columnsToUpsert: props.columns,
19
- initialState: (_props$initialState = props.initialState) == null ? void 0 : _props$initialState.columns,
20
- columnVisibilityModel: (_ref = (_props$columnVisibili = props.columnVisibilityModel) != null ? _props$columnVisibili : (_props$initialState2 = props.initialState) == null || (_props$initialState2 = _props$initialState2.columns) == null ? void 0 : _props$initialState2.columnVisibilityModel) != null ? _ref : {},
21
- keepOnlyColumnsToUpsert: true
22
- });
23
- return _extends({}, state, {
24
- columns: columnsState,
25
- // In pro/premium, this part of the state is defined. We give it an empty but defined value
26
- // for the community version.
27
- pinnedColumns: (_state$pinnedColumns = state.pinnedColumns) != null ? _state$pinnedColumns : EMPTY_PINNED_COLUMN_FIELDS
28
- });
29
- };
30
-
31
- /**
32
- * @requires useGridParamsApi (method)
33
- * @requires useGridDimensions (method, event) - can be after
34
- * TODO: Impossible priority - useGridParamsApi also needs to be after useGridColumns
35
- */
36
- export function useGridColumns(apiRef, props) {
37
- var _props$initialState4, _props$slotProps2;
38
- var logger = useGridLogger(apiRef, 'useGridColumns');
39
- var previousColumnsProp = React.useRef(props.columns);
40
- apiRef.current.registerControlState({
41
- stateId: 'visibleColumns',
42
- propModel: props.columnVisibilityModel,
43
- propOnChange: props.onColumnVisibilityModelChange,
44
- stateSelector: gridColumnVisibilityModelSelector,
45
- changeEvent: 'columnVisibilityModelChange'
46
- });
47
- var setGridColumnsState = React.useCallback(function (columnsState) {
48
- logger.debug('Updating columns state.');
49
- apiRef.current.setState(mergeColumnsState(columnsState));
50
- apiRef.current.publishEvent('columnsChange', columnsState.orderedFields);
51
- apiRef.current.forceUpdate();
52
- }, [logger, apiRef]);
53
-
54
- /**
55
- * API METHODS
56
- */
57
- var getColumn = React.useCallback(function (field) {
58
- return gridColumnLookupSelector(apiRef)[field];
59
- }, [apiRef]);
60
- var getAllColumns = React.useCallback(function () {
61
- return gridColumnDefinitionsSelector(apiRef);
62
- }, [apiRef]);
63
- var getVisibleColumns = React.useCallback(function () {
64
- return gridVisibleColumnDefinitionsSelector(apiRef);
65
- }, [apiRef]);
66
- var getColumnIndex = React.useCallback(function (field) {
67
- var useVisibleColumns = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
68
- var columns = useVisibleColumns ? gridVisibleColumnDefinitionsSelector(apiRef) : gridColumnDefinitionsSelector(apiRef);
69
- return columns.findIndex(function (col) {
70
- return col.field === field;
71
- });
72
- }, [apiRef]);
73
- var getColumnPosition = React.useCallback(function (field) {
74
- var index = getColumnIndex(field);
75
- return gridColumnPositionsSelector(apiRef)[index];
76
- }, [apiRef, getColumnIndex]);
77
- var setColumnVisibilityModel = React.useCallback(function (model) {
78
- var currentModel = gridColumnVisibilityModelSelector(apiRef);
79
- if (currentModel !== model) {
80
- apiRef.current.setState(function (state) {
81
- return _extends({}, state, {
82
- columns: createColumnsState({
83
- apiRef: apiRef,
84
- columnsToUpsert: [],
85
- initialState: undefined,
86
- columnVisibilityModel: model,
87
- keepOnlyColumnsToUpsert: false
88
- })
89
- });
90
- });
91
- apiRef.current.forceUpdate();
92
- }
93
- }, [apiRef]);
94
- var updateColumns = React.useCallback(function (columns) {
95
- var columnsState = createColumnsState({
96
- apiRef: apiRef,
97
- columnsToUpsert: columns,
98
- initialState: undefined,
99
- keepOnlyColumnsToUpsert: false
100
- });
101
- setGridColumnsState(columnsState);
102
- }, [apiRef, setGridColumnsState]);
103
- var setColumnVisibility = React.useCallback(function (field, isVisible) {
104
- var _columnVisibilityMode;
105
- var columnVisibilityModel = gridColumnVisibilityModelSelector(apiRef);
106
- var isCurrentlyVisible = (_columnVisibilityMode = columnVisibilityModel[field]) != null ? _columnVisibilityMode : true;
107
- if (isVisible !== isCurrentlyVisible) {
108
- var newModel = _extends({}, columnVisibilityModel, _defineProperty({}, field, isVisible));
109
- apiRef.current.setColumnVisibilityModel(newModel);
110
- }
111
- }, [apiRef]);
112
- var getColumnIndexRelativeToVisibleColumns = React.useCallback(function (field) {
113
- var allColumns = gridColumnFieldsSelector(apiRef);
114
- return allColumns.findIndex(function (col) {
115
- return col === field;
116
- });
117
- }, [apiRef]);
118
- var setColumnIndex = React.useCallback(function (field, targetIndexPosition) {
119
- var allColumns = gridColumnFieldsSelector(apiRef);
120
- var oldIndexPosition = getColumnIndexRelativeToVisibleColumns(field);
121
- if (oldIndexPosition === targetIndexPosition) {
122
- return;
123
- }
124
- logger.debug("Moving column ".concat(field, " to index ").concat(targetIndexPosition));
125
- var updatedColumns = _toConsumableArray(allColumns);
126
- var fieldRemoved = updatedColumns.splice(oldIndexPosition, 1)[0];
127
- updatedColumns.splice(targetIndexPosition, 0, fieldRemoved);
128
- setGridColumnsState(_extends({}, gridColumnsStateSelector(apiRef.current.state), {
129
- orderedFields: updatedColumns
130
- }));
131
- var params = {
132
- column: apiRef.current.getColumn(field),
133
- targetIndex: apiRef.current.getColumnIndexRelativeToVisibleColumns(field),
134
- oldIndex: oldIndexPosition
135
- };
136
- apiRef.current.publishEvent('columnIndexChange', params);
137
- }, [apiRef, logger, setGridColumnsState, getColumnIndexRelativeToVisibleColumns]);
138
- var setColumnWidth = React.useCallback(function (field, width) {
139
- logger.debug("Updating column ".concat(field, " width to ").concat(width));
140
- var columnsState = gridColumnsStateSelector(apiRef.current.state);
141
- var column = columnsState.lookup[field];
142
- var newColumn = _extends({}, column, {
143
- width: width,
144
- hasBeenResized: true
145
- });
146
- setGridColumnsState(hydrateColumnsWidth(_extends({}, columnsState, {
147
- lookup: _extends({}, columnsState.lookup, _defineProperty({}, field, newColumn))
148
- }), apiRef.current.getRootDimensions().viewportInnerSize.width));
149
- apiRef.current.publishEvent('columnWidthChange', {
150
- element: apiRef.current.getColumnHeaderElement(field),
151
- colDef: newColumn,
152
- width: width
153
- });
154
- }, [apiRef, logger, setGridColumnsState]);
155
- var columnApi = {
156
- getColumn: getColumn,
157
- getAllColumns: getAllColumns,
158
- getColumnIndex: getColumnIndex,
159
- getColumnPosition: getColumnPosition,
160
- getVisibleColumns: getVisibleColumns,
161
- getColumnIndexRelativeToVisibleColumns: getColumnIndexRelativeToVisibleColumns,
162
- updateColumns: updateColumns,
163
- setColumnVisibilityModel: setColumnVisibilityModel,
164
- setColumnVisibility: setColumnVisibility,
165
- setColumnWidth: setColumnWidth
166
- };
167
- var columnReorderApi = {
168
- setColumnIndex: setColumnIndex
169
- };
170
- useGridApiMethod(apiRef, columnApi, 'public');
171
- useGridApiMethod(apiRef, columnReorderApi, props.signature === GridSignature.DataGrid ? 'private' : 'public');
172
-
173
- /**
174
- * PRE-PROCESSING
175
- */
176
- var stateExportPreProcessing = React.useCallback(function (prevState, context) {
177
- var _props$initialState$c, _props$initialState3;
178
- var columnsStateToExport = {};
179
- var columnVisibilityModelToExport = gridColumnVisibilityModelSelector(apiRef);
180
- var shouldExportColumnVisibilityModel =
181
- // Always export if the `exportOnlyDirtyModels` property is not activated
182
- !context.exportOnlyDirtyModels ||
183
- // Always export if the model is controlled
184
- props.columnVisibilityModel != null ||
185
- // Always export if the model has been initialized
186
- // TODO v6 Do a nullish check instead to export even if the initial model equals "{}"
187
- Object.keys((_props$initialState$c = (_props$initialState3 = props.initialState) == null || (_props$initialState3 = _props$initialState3.columns) == null ? void 0 : _props$initialState3.columnVisibilityModel) != null ? _props$initialState$c : {}).length > 0 ||
188
- // Always export if the model is not empty
189
- Object.keys(columnVisibilityModelToExport).length > 0;
190
- if (shouldExportColumnVisibilityModel) {
191
- columnsStateToExport.columnVisibilityModel = columnVisibilityModelToExport;
192
- }
193
- columnsStateToExport.orderedFields = gridColumnFieldsSelector(apiRef);
194
- var columns = gridColumnDefinitionsSelector(apiRef);
195
- var dimensions = {};
196
- columns.forEach(function (colDef) {
197
- if (colDef.hasBeenResized) {
198
- var colDefDimensions = {};
199
- COLUMNS_DIMENSION_PROPERTIES.forEach(function (propertyName) {
200
- var propertyValue = colDef[propertyName];
201
- if (propertyValue === Infinity) {
202
- propertyValue = -1;
203
- }
204
- colDefDimensions[propertyName] = propertyValue;
205
- });
206
- dimensions[colDef.field] = colDefDimensions;
207
- }
208
- });
209
- if (Object.keys(dimensions).length > 0) {
210
- columnsStateToExport.dimensions = dimensions;
211
- }
212
- return _extends({}, prevState, {
213
- columns: columnsStateToExport
214
- });
215
- }, [apiRef, props.columnVisibilityModel, (_props$initialState4 = props.initialState) == null ? void 0 : _props$initialState4.columns]);
216
- var stateRestorePreProcessing = React.useCallback(function (params, context) {
217
- var _context$stateToResto;
218
- var columnVisibilityModelToImport = (_context$stateToResto = context.stateToRestore.columns) == null ? void 0 : _context$stateToResto.columnVisibilityModel;
219
- var initialState = context.stateToRestore.columns;
220
- if (columnVisibilityModelToImport == null && initialState == null) {
221
- return params;
222
- }
223
- var columnsState = createColumnsState({
224
- apiRef: apiRef,
225
- columnsToUpsert: [],
226
- initialState: initialState,
227
- columnVisibilityModel: columnVisibilityModelToImport,
228
- keepOnlyColumnsToUpsert: false
229
- });
230
- apiRef.current.setState(mergeColumnsState(columnsState));
231
- if (initialState != null) {
232
- apiRef.current.publishEvent('columnsChange', columnsState.orderedFields);
233
- }
234
- return params;
235
- }, [apiRef]);
236
- var preferencePanelPreProcessing = React.useCallback(function (initialValue, value) {
237
- if (value === GridPreferencePanelsValue.columns) {
238
- var _props$slotProps;
239
- var ColumnsPanel = props.slots.columnsPanel;
240
- return /*#__PURE__*/_jsx(ColumnsPanel, _extends({}, (_props$slotProps = props.slotProps) == null ? void 0 : _props$slotProps.columnsPanel));
241
- }
242
- return initialValue;
243
- }, [props.slots.columnsPanel, (_props$slotProps2 = props.slotProps) == null ? void 0 : _props$slotProps2.columnsPanel]);
244
- var addColumnMenuItems = React.useCallback(function (columnMenuItems) {
245
- if (props.disableColumnSelector) {
246
- return columnMenuItems;
247
- }
248
- return [].concat(_toConsumableArray(columnMenuItems), ['columnMenuColumnsItem']);
249
- }, [props.disableColumnSelector]);
250
- useGridRegisterPipeProcessor(apiRef, 'columnMenu', addColumnMenuItems);
251
- useGridRegisterPipeProcessor(apiRef, 'exportState', stateExportPreProcessing);
252
- useGridRegisterPipeProcessor(apiRef, 'restoreState', stateRestorePreProcessing);
253
- useGridRegisterPipeProcessor(apiRef, 'preferencePanel', preferencePanelPreProcessing);
254
-
255
- /**
256
- * EVENTS
257
- */
258
- var prevInnerWidth = React.useRef(null);
259
- var handleGridSizeChange = function handleGridSizeChange(viewportInnerSize) {
260
- if (prevInnerWidth.current !== viewportInnerSize.width) {
261
- prevInnerWidth.current = viewportInnerSize.width;
262
- setGridColumnsState(hydrateColumnsWidth(gridColumnsStateSelector(apiRef.current.state), viewportInnerSize.width));
263
- }
264
- };
265
- useGridApiEventHandler(apiRef, 'viewportInnerSizeChange', handleGridSizeChange);
266
-
267
- /**
268
- * APPLIERS
269
- */
270
- var hydrateColumns = React.useCallback(function () {
271
- logger.info("Columns pipe processing have changed, regenerating the columns");
272
- var columnsState = createColumnsState({
273
- apiRef: apiRef,
274
- columnsToUpsert: [],
275
- initialState: undefined,
276
- keepOnlyColumnsToUpsert: false
277
- });
278
- setGridColumnsState(columnsState);
279
- }, [apiRef, logger, setGridColumnsState]);
280
- useGridRegisterPipeApplier(apiRef, 'hydrateColumns', hydrateColumns);
281
-
282
- /**
283
- * EFFECTS
284
- */
285
- // The effect do not track any value defined synchronously during the 1st render by hooks called after `useGridColumns`
286
- // As a consequence, the state generated by the 1st run of this useEffect will always be equal to the initialization one
287
- var isFirstRender = React.useRef(true);
288
- React.useEffect(function () {
289
- if (isFirstRender.current) {
290
- isFirstRender.current = false;
291
- return;
292
- }
293
- logger.info("GridColumns have changed, new length ".concat(props.columns.length));
294
- if (previousColumnsProp.current === props.columns) {
295
- return;
296
- }
297
- var columnsState = createColumnsState({
298
- apiRef: apiRef,
299
- initialState: undefined,
300
- // If the user provides a model, we don't want to set it in the state here because it has it's dedicated `useEffect` which calls `setColumnVisibilityModel`
301
- columnsToUpsert: props.columns,
302
- keepOnlyColumnsToUpsert: true
303
- });
304
- previousColumnsProp.current = props.columns;
305
- setGridColumnsState(columnsState);
306
- }, [logger, apiRef, setGridColumnsState, props.columns]);
307
- React.useEffect(function () {
308
- if (props.columnVisibilityModel !== undefined) {
309
- apiRef.current.setColumnVisibilityModel(props.columnVisibilityModel);
310
- }
311
- }, [apiRef, logger, props.columnVisibilityModel]);
312
- }
313
- function mergeColumnsState(columnsState) {
314
- return function (state) {
315
- return _extends({}, state, {
316
- columns: columnsState
317
- });
318
- };
319
- }
@@ -1,10 +0,0 @@
1
- import { createSelector } from '../../../utils/createSelector';
2
- export var gridDensitySelector = function gridDensitySelector(state) {
3
- return state.density;
4
- };
5
- export var gridDensityValueSelector = createSelector(gridDensitySelector, function (density) {
6
- return density.value;
7
- });
8
- export var gridDensityFactorSelector = createSelector(gridDensitySelector, function (density) {
9
- return density.factor;
10
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1,2 +0,0 @@
1
- export * from './densityState';
2
- export * from './densitySelector';
@@ -1,48 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import * as React from 'react';
3
- import { useGridLogger } from '../../utils/useGridLogger';
4
- import { useGridApiMethod } from '../../utils/useGridApiMethod';
5
- import { gridDensitySelector } from './densitySelector';
6
- import { isDeepEqual } from '../../../utils/utils';
7
- export var COMPACT_DENSITY_FACTOR = 0.7;
8
- export var COMFORTABLE_DENSITY_FACTOR = 1.3;
9
- var DENSITY_FACTORS = {
10
- compact: COMPACT_DENSITY_FACTOR,
11
- comfortable: COMFORTABLE_DENSITY_FACTOR,
12
- standard: 1
13
- };
14
- export var densityStateInitializer = function densityStateInitializer(state, props) {
15
- return _extends({}, state, {
16
- density: {
17
- value: props.density,
18
- factor: DENSITY_FACTORS[props.density]
19
- }
20
- });
21
- };
22
- export var useGridDensity = function useGridDensity(apiRef, props) {
23
- var logger = useGridLogger(apiRef, 'useDensity');
24
- var setDensity = React.useCallback(function (newDensity) {
25
- logger.debug("Set grid density to ".concat(newDensity));
26
- apiRef.current.setState(function (state) {
27
- var currentDensityState = gridDensitySelector(state);
28
- var newDensityState = {
29
- value: newDensity,
30
- factor: DENSITY_FACTORS[newDensity]
31
- };
32
- if (isDeepEqual(currentDensityState, newDensityState)) {
33
- return state;
34
- }
35
- return _extends({}, state, {
36
- density: newDensityState
37
- });
38
- });
39
- apiRef.current.forceUpdate();
40
- }, [logger, apiRef]);
41
- React.useEffect(function () {
42
- apiRef.current.setDensity(props.density);
43
- }, [apiRef, props.density]);
44
- var densityApi = {
45
- setDensity: setDensity
46
- };
47
- useGridApiMethod(apiRef, densityApi, 'public');
48
- };
@@ -1 +0,0 @@
1
- export {};
@@ -1,3 +0,0 @@
1
- export var gridDimensionsSelector = function gridDimensionsSelector(state) {
2
- return state.dimensions;
3
- };
@@ -1,2 +0,0 @@
1
- export * from './gridDimensionsSelectors';
2
- export {};