@mui/x-data-grid 8.0.0-alpha.1 → 8.0.0-alpha.10

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 (762) hide show
  1. package/CHANGELOG.md +1903 -231
  2. package/DataGrid/DataGrid.js +20 -38
  3. package/DataGrid/useDataGridComponent.d.ts +2 -1
  4. package/DataGrid/useDataGridComponent.js +1 -1
  5. package/DataGrid/useDataGridProps.js +3 -3
  6. package/README.md +1 -1
  7. package/colDef/gridDateOperators.d.ts +2 -1
  8. package/colDef/gridNumericOperators.d.ts +4 -1
  9. package/components/GridApiContext.js +2 -0
  10. package/components/GridColumnHeaders.d.ts +1 -1
  11. package/components/GridColumnHeaders.js +4 -4
  12. package/components/GridConfigurationContext.js +2 -0
  13. package/components/GridFooter.d.ts +2 -1
  14. package/components/GridFooter.js +4 -4
  15. package/components/GridHeaders.js +2 -2
  16. package/components/GridLoadingOverlay.d.ts +1 -1
  17. package/components/GridLoadingOverlay.js +10 -8
  18. package/components/GridNoResultsOverlay.d.ts +2 -1
  19. package/components/GridNoResultsOverlay.js +4 -4
  20. package/components/GridNoRowsOverlay.d.ts +2 -1
  21. package/components/GridNoRowsOverlay.js +4 -4
  22. package/components/GridPagination.d.ts +1 -1
  23. package/components/GridPagination.js +7 -4
  24. package/components/GridRow.d.ts +6 -11
  25. package/components/GridRow.js +55 -87
  26. package/components/GridRowCount.d.ts +1 -1
  27. package/components/GridRowCount.js +3 -2
  28. package/components/GridScrollArea.js +2 -0
  29. package/components/GridSelectedRowCount.d.ts +4 -1
  30. package/components/GridSelectedRowCount.js +3 -2
  31. package/components/GridSkeletonLoadingOverlay.d.ts +1 -1
  32. package/components/GridSkeletonLoadingOverlay.js +22 -21
  33. package/components/base/GridOverlays.d.ts +4 -3
  34. package/components/base/GridOverlays.js +2 -24
  35. package/components/base/index.d.ts +0 -1
  36. package/components/base/index.js +1 -2
  37. package/components/cell/GridActionsCell.js +8 -1
  38. package/components/cell/GridActionsCellItem.d.ts +17 -10
  39. package/components/cell/GridActionsCellItem.js +9 -8
  40. package/components/cell/GridCell.d.ts +19 -23
  41. package/components/cell/GridCell.js +49 -92
  42. package/components/cell/GridEditDateCell.js +1 -1
  43. package/components/cell/GridEditInputCell.d.ts +1 -1
  44. package/components/cell/GridEditInputCell.js +73 -4
  45. package/components/cell/GridEditSingleSelectCell.js +2 -2
  46. package/components/cell/GridSkeletonCell.js +1 -2
  47. package/components/columnHeaders/ColumnHeaderMenuIcon.d.ts +1 -1
  48. package/components/columnHeaders/GridBaseColumnHeaders.d.ts +1 -1
  49. package/components/columnHeaders/GridBaseColumnHeaders.js +4 -3
  50. package/components/columnHeaders/GridColumnGroupHeader.d.ts +5 -5
  51. package/components/columnHeaders/GridColumnGroupHeader.js +7 -10
  52. package/components/columnHeaders/GridColumnHeaderFilterIconButton.d.ts +3 -3
  53. package/components/columnHeaders/GridColumnHeaderFilterIconButton.js +20 -7
  54. package/components/columnHeaders/GridColumnHeaderItem.d.ts +5 -5
  55. package/components/columnHeaders/GridColumnHeaderItem.js +13 -12
  56. package/components/columnHeaders/GridColumnHeaderTitle.js +5 -3
  57. package/components/columnHeaders/GridGenericColumnHeaderItem.d.ts +1 -1
  58. package/components/columnHeaders/GridGenericColumnHeaderItem.js +3 -2
  59. package/components/columnHeaders/GridIconButtonContainer.d.ts +1 -1
  60. package/components/columnHeaders/GridIconButtonContainer.js +5 -3
  61. package/components/columnSelection/GridCellCheckboxRenderer.d.ts +2 -2
  62. package/components/columnSelection/GridCellCheckboxRenderer.js +11 -9
  63. package/components/columnSelection/GridHeaderCheckbox.d.ts +1 -1
  64. package/components/columnSelection/GridHeaderCheckbox.js +17 -9
  65. package/components/columnsManagement/GridColumnsManagement.d.ts +1 -1
  66. package/components/columnsManagement/GridColumnsManagement.js +50 -27
  67. package/components/containers/GridFooterContainer.d.ts +1 -1
  68. package/components/containers/GridFooterContainer.js +5 -3
  69. package/components/containers/GridOverlay.d.ts +1 -1
  70. package/components/containers/GridOverlay.js +5 -3
  71. package/components/containers/GridRoot.d.ts +2 -2
  72. package/components/containers/GridRoot.js +18 -8
  73. package/components/containers/GridRootStyles.js +160 -50
  74. package/components/containers/GridToolbarContainer.d.ts +1 -1
  75. package/components/containers/GridToolbarContainer.js +3 -2
  76. package/components/menu/columnMenu/GridColumnMenu.d.ts +2 -2
  77. package/components/menu/columnMenu/GridColumnMenu.js +5 -5
  78. package/components/menu/columnMenu/GridColumnMenuContainer.d.ts +1 -1
  79. package/components/menu/columnMenu/GridColumnMenuContainer.js +3 -2
  80. package/components/menu/columnMenu/menuItems/GridColumnMenuFilterItem.js +6 -11
  81. package/components/menu/columnMenu/menuItems/GridColumnMenuHideItem.js +6 -11
  82. package/components/menu/columnMenu/menuItems/GridColumnMenuManageItem.js +6 -11
  83. package/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +13 -22
  84. package/components/panel/GridColumnsPanel.js +1 -2
  85. package/components/panel/GridPanel.d.ts +2 -2
  86. package/components/panel/GridPanel.js +5 -3
  87. package/components/panel/GridPanelContent.js +7 -3
  88. package/components/panel/GridPanelFooter.d.ts +1 -1
  89. package/components/panel/GridPanelFooter.js +4 -3
  90. package/components/panel/GridPanelWrapper.d.ts +1 -1
  91. package/components/panel/GridPanelWrapper.js +5 -3
  92. package/components/panel/filterPanel/GridFilterForm.d.ts +1 -1
  93. package/components/panel/filterPanel/GridFilterForm.js +22 -18
  94. package/components/panel/filterPanel/GridFilterInputBoolean.d.ts +4 -11
  95. package/components/panel/filterPanel/GridFilterInputBoolean.js +41 -31
  96. package/components/panel/filterPanel/GridFilterInputDate.d.ts +3 -9
  97. package/components/panel/filterPanel/GridFilterInputDate.js +50 -31
  98. package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.d.ts +3 -3
  99. package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +49 -24
  100. package/components/panel/filterPanel/GridFilterInputMultipleValue.d.ts +3 -3
  101. package/components/panel/filterPanel/GridFilterInputMultipleValue.js +55 -33
  102. package/components/panel/filterPanel/GridFilterInputSingleSelect.d.ts +3 -9
  103. package/components/panel/filterPanel/GridFilterInputSingleSelect.js +34 -25
  104. package/components/panel/filterPanel/GridFilterInputValue.d.ts +3 -9
  105. package/components/panel/filterPanel/GridFilterInputValue.js +63 -38
  106. package/components/panel/filterPanel/GridFilterPanel.d.ts +1 -1
  107. package/components/panel/filterPanel/GridFilterPanel.js +4 -4
  108. package/components/panel/filterPanel/index.d.ts +2 -2
  109. package/components/panel/filterPanel/index.js +1 -2
  110. package/components/toolbar/GridToolbar.d.ts +1 -1
  111. package/components/toolbar/GridToolbar.js +11 -5
  112. package/components/toolbar/GridToolbarColumnsButton.d.ts +1 -1
  113. package/components/toolbar/GridToolbarColumnsButton.js +12 -6
  114. package/components/toolbar/GridToolbarDensitySelector.d.ts +1 -1
  115. package/components/toolbar/GridToolbarDensitySelector.js +9 -11
  116. package/components/toolbar/GridToolbarExport.d.ts +1 -1
  117. package/components/toolbar/GridToolbarExport.js +2 -1
  118. package/components/toolbar/GridToolbarExportContainer.d.ts +1 -1
  119. package/components/toolbar/GridToolbarExportContainer.js +6 -6
  120. package/components/toolbar/GridToolbarFilterButton.d.ts +3 -1
  121. package/components/toolbar/GridToolbarFilterButton.js +20 -9
  122. package/components/toolbar/GridToolbarQuickFilter.d.ts +6 -2
  123. package/components/toolbar/GridToolbarQuickFilter.js +39 -31
  124. package/components/virtualization/GridMainContainer.d.ts +13 -1
  125. package/components/virtualization/GridMainContainer.js +14 -5
  126. package/components/virtualization/GridVirtualScrollbar.d.ts +5 -1
  127. package/components/virtualization/GridVirtualScrollbar.js +17 -17
  128. package/components/virtualization/GridVirtualScroller.js +27 -12
  129. package/components/virtualization/GridVirtualScrollerContent.d.ts +2 -0
  130. package/components/virtualization/GridVirtualScrollerContent.js +15 -6
  131. package/components/virtualization/GridVirtualScrollerRenderZone.d.ts +2 -0
  132. package/components/virtualization/GridVirtualScrollerRenderZone.js +5 -3
  133. package/constants/dataGridPropsDefaultValues.js +2 -4
  134. package/constants/gridClasses.d.ts +12 -12
  135. package/constants/gridClasses.js +1 -1
  136. package/constants/localeTextConstants.js +1 -1
  137. package/context/GridContextProvider.d.ts +2 -1
  138. package/context/GridRootPropsContext.js +2 -0
  139. package/hooks/core/pipeProcessing/gridPipeProcessingApi.d.ts +9 -2
  140. package/hooks/core/pipeProcessing/useGridPipeProcessing.d.ts +2 -2
  141. package/hooks/core/pipeProcessing/useGridRegisterPipeApplier.d.ts +2 -2
  142. package/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +1 -1
  143. package/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.d.ts +2 -2
  144. package/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +1 -1
  145. package/hooks/core/strategyProcessing/gridStrategyProcessingApi.d.ts +25 -9
  146. package/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +5 -1
  147. package/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.d.ts +2 -2
  148. package/hooks/core/strategyProcessing/useGridStrategyProcessing.d.ts +5 -8
  149. package/hooks/core/strategyProcessing/useGridStrategyProcessing.js +7 -8
  150. package/hooks/core/useGridApiInitialization.d.ts +2 -2
  151. package/hooks/core/useGridApiInitialization.js +2 -2
  152. package/hooks/core/useGridInitialization.d.ts +2 -2
  153. package/hooks/core/useGridIsRtl.d.ts +2 -2
  154. package/hooks/core/useGridLocaleText.d.ts +2 -2
  155. package/hooks/core/useGridLoggerFactory.d.ts +2 -2
  156. package/hooks/core/useGridRefs.d.ts +2 -2
  157. package/hooks/core/useGridStateInitialization.d.ts +2 -2
  158. package/hooks/core/useGridStateInitialization.js +3 -3
  159. package/hooks/features/clipboard/useGridClipboard.d.ts +2 -2
  160. package/hooks/features/columnGrouping/gridColumnGroupsSelector.d.ts +4 -4
  161. package/hooks/features/columnGrouping/useGridColumnGrouping.d.ts +2 -2
  162. package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +5 -7
  163. package/hooks/features/columnHeaders/useGridColumnHeaders.js +33 -68
  164. package/hooks/features/columnMenu/useGridColumnMenu.d.ts +2 -2
  165. package/hooks/features/columnMenu/useGridColumnMenu.js +0 -2
  166. package/hooks/features/columnResize/columnResizeSelector.d.ts +1 -1
  167. package/hooks/features/columnResize/gridColumnResizeApi.d.ts +6 -0
  168. package/hooks/features/columnResize/gridColumnResizeApi.js +2 -1
  169. package/hooks/features/columnResize/useGridColumnResize.d.ts +2 -2
  170. package/hooks/features/columnResize/useGridColumnResize.js +17 -10
  171. package/hooks/features/columns/gridColumnsSelector.d.ts +12 -12
  172. package/hooks/features/columns/gridColumnsUtils.d.ts +4 -4
  173. package/hooks/features/columns/gridColumnsUtils.js +2 -1
  174. package/hooks/features/columns/useGridColumnSpanning.d.ts +2 -2
  175. package/hooks/features/columns/useGridColumns.d.ts +2 -2
  176. package/hooks/features/columns/useGridColumns.js +7 -3
  177. package/hooks/features/density/densitySelector.d.ts +1 -1
  178. package/hooks/features/density/useGridDensity.d.ts +2 -2
  179. package/hooks/features/dimensions/gridDimensionsApi.d.ts +0 -4
  180. package/hooks/features/dimensions/useGridDimensions.d.ts +2 -2
  181. package/hooks/features/dimensions/useGridDimensions.js +11 -32
  182. package/hooks/features/editing/gridEditingSelectors.d.ts +6 -0
  183. package/hooks/features/editing/gridEditingSelectors.js +7 -1
  184. package/hooks/features/editing/useGridCellEditing.d.ts +2 -2
  185. package/hooks/features/editing/useGridCellEditing.js +4 -4
  186. package/hooks/features/editing/useGridEditing.d.ts +2 -2
  187. package/hooks/features/editing/useGridRowEditing.d.ts +2 -2
  188. package/hooks/features/editing/useGridRowEditing.js +7 -8
  189. package/hooks/features/events/useGridEvents.d.ts +2 -2
  190. package/hooks/features/export/serializers/csvSerializer.d.ts +2 -1
  191. package/hooks/features/export/useGridCsvExport.d.ts +2 -2
  192. package/hooks/features/export/useGridPrintExport.d.ts +2 -2
  193. package/hooks/features/export/useGridPrintExport.js +1 -1
  194. package/hooks/features/export/utils.d.ts +2 -2
  195. package/hooks/features/filter/gridFilterSelector.d.ts +17 -17
  196. package/hooks/features/filter/gridFilterSelector.js +6 -1
  197. package/hooks/features/filter/gridFilterUtils.d.ts +7 -7
  198. package/hooks/features/filter/gridFilterUtils.js +3 -3
  199. package/hooks/features/filter/useGridFilter.d.ts +2 -2
  200. package/hooks/features/filter/useGridFilter.js +1 -1
  201. package/hooks/features/focus/gridFocusStateSelector.d.ts +8 -8
  202. package/hooks/features/focus/useGridFocus.d.ts +2 -2
  203. package/hooks/features/focus/useGridFocus.js +3 -2
  204. package/hooks/features/headerFiltering/gridHeaderFilteringSelectors.d.ts +3 -3
  205. package/hooks/features/headerFiltering/useGridHeaderFiltering.d.ts +2 -2
  206. package/hooks/features/index.d.ts +1 -0
  207. package/hooks/features/index.js +1 -0
  208. package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.d.ts +2 -2
  209. package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +24 -16
  210. package/hooks/features/keyboardNavigation/utils.d.ts +3 -4
  211. package/hooks/features/keyboardNavigation/utils.js +0 -5
  212. package/hooks/features/listView/gridListViewSelectors.d.ts +3 -1
  213. package/hooks/features/listView/gridListViewSelectors.js +3 -1
  214. package/hooks/features/listView/index.d.ts +1 -0
  215. package/hooks/features/listView/index.js +1 -0
  216. package/hooks/features/listView/useGridListView.d.ts +2 -2
  217. package/hooks/features/listView/useGridListView.js +2 -1
  218. package/hooks/features/overlays/useGridOverlays.d.ts +7 -4
  219. package/hooks/features/overlays/useGridOverlays.js +22 -2
  220. package/hooks/features/pagination/gridPaginationInterfaces.d.ts +3 -0
  221. package/hooks/features/pagination/gridPaginationSelector.d.ts +34 -9
  222. package/hooks/features/pagination/gridPaginationSelector.js +39 -1
  223. package/hooks/features/pagination/useGridPagination.d.ts +3 -3
  224. package/hooks/features/pagination/useGridPagination.js +5 -3
  225. package/hooks/features/pagination/useGridPaginationMeta.d.ts +2 -2
  226. package/hooks/features/pagination/useGridPaginationModel.d.ts +2 -2
  227. package/hooks/features/pagination/useGridPaginationModel.js +23 -1
  228. package/hooks/features/pagination/useGridRowCount.d.ts +2 -2
  229. package/hooks/features/preferencesPanel/gridPreferencePanelSelector.d.ts +1 -0
  230. package/hooks/features/preferencesPanel/gridPreferencePanelSelector.js +8 -1
  231. package/hooks/features/preferencesPanel/index.d.ts +1 -1
  232. package/hooks/features/preferencesPanel/index.js +1 -1
  233. package/hooks/features/preferencesPanel/useGridPreferencesPanel.d.ts +2 -2
  234. package/hooks/features/preferencesPanel/useGridPreferencesPanel.js +14 -38
  235. package/hooks/features/rowSelection/gridRowSelectionSelector.d.ts +3 -3
  236. package/hooks/features/rowSelection/useGridRowSelection.d.ts +2 -2
  237. package/hooks/features/rowSelection/useGridRowSelection.js +8 -16
  238. package/hooks/features/rowSelection/useGridRowSelectionPreProcessors.d.ts +2 -2
  239. package/hooks/features/rowSelection/utils.d.ts +4 -3
  240. package/hooks/features/rowSelection/utils.js +2 -2
  241. package/hooks/features/rows/gridRowSpanningSelectors.d.ts +3 -3
  242. package/hooks/features/rows/gridRowSpanningUtils.d.ts +2 -2
  243. package/hooks/features/rows/gridRowsInterfaces.d.ts +1 -8
  244. package/hooks/features/rows/gridRowsSelector.d.ts +23 -13
  245. package/hooks/features/rows/gridRowsSelector.js +1 -2
  246. package/hooks/features/rows/gridRowsUtils.d.ts +4 -4
  247. package/hooks/features/rows/gridRowsUtils.js +0 -9
  248. package/hooks/features/rows/index.d.ts +1 -1
  249. package/hooks/features/rows/index.js +1 -1
  250. package/hooks/features/rows/useGridParamsApi.d.ts +2 -2
  251. package/hooks/features/rows/useGridParamsApi.js +33 -14
  252. package/hooks/features/rows/useGridRowSpanning.d.ts +2 -2
  253. package/hooks/features/rows/useGridRowSpanning.js +97 -86
  254. package/hooks/features/rows/useGridRows.d.ts +2 -2
  255. package/hooks/features/rows/useGridRows.js +23 -27
  256. package/hooks/features/rows/useGridRowsMeta.d.ts +2 -2
  257. package/hooks/features/rows/useGridRowsMeta.js +3 -2
  258. package/hooks/features/rows/useGridRowsPreProcessors.d.ts +2 -2
  259. package/hooks/features/scroll/useGridScroll.d.ts +2 -2
  260. package/hooks/features/sorting/gridSortingSelector.d.ts +10 -5
  261. package/hooks/features/sorting/gridSortingSelector.js +11 -0
  262. package/hooks/features/sorting/gridSortingUtils.d.ts +3 -3
  263. package/hooks/features/sorting/gridSortingUtils.js +2 -2
  264. package/hooks/features/sorting/index.d.ts +2 -1
  265. package/hooks/features/sorting/index.js +1 -1
  266. package/hooks/features/sorting/useGridSorting.d.ts +2 -2
  267. package/hooks/features/sorting/useGridSorting.js +1 -1
  268. package/hooks/features/statePersistence/useGridStatePersistence.d.ts +2 -2
  269. package/hooks/features/virtualization/gridFocusedVirtualCellSelector.d.ts +6 -0
  270. package/hooks/features/virtualization/gridFocusedVirtualCellSelector.js +33 -0
  271. package/hooks/features/virtualization/gridVirtualizationSelectors.d.ts +5 -5
  272. package/hooks/features/virtualization/useGridVirtualScroller.d.ts +15 -6
  273. package/hooks/features/virtualization/useGridVirtualScroller.js +169 -94
  274. package/hooks/features/virtualization/useGridVirtualization.d.ts +2 -2
  275. package/hooks/utils/useGridApiContext.d.ts +2 -2
  276. package/hooks/utils/useGridApiEventHandler.d.ts +4 -4
  277. package/hooks/utils/useGridApiEventHandler.js +1 -1
  278. package/hooks/utils/useGridApiMethod.d.ts +2 -2
  279. package/hooks/utils/useGridApiRef.d.ts +2 -2
  280. package/hooks/utils/useGridApiRef.js +1 -1
  281. package/hooks/utils/useGridInitializeState.d.ts +3 -3
  282. package/hooks/utils/useGridLogger.d.ts +2 -2
  283. package/hooks/utils/useGridNativeEventListener.d.ts +2 -1
  284. package/hooks/utils/useGridPrivateApiContext.d.ts +2 -1
  285. package/hooks/utils/useGridSelector.d.ts +5 -7
  286. package/hooks/utils/useGridSelector.js +6 -44
  287. package/hooks/utils/useGridVisibleRows.d.ts +8 -6
  288. package/hooks/utils/useGridVisibleRows.js +5 -28
  289. package/index.js +1 -1
  290. package/internals/constants.d.ts +6 -0
  291. package/internals/constants.js +8 -1
  292. package/internals/index.d.ts +6 -4
  293. package/internals/index.js +4 -3
  294. package/internals/utils/attachPinnedStyle.d.ts +2 -0
  295. package/internals/utils/attachPinnedStyle.js +9 -0
  296. package/internals/utils/getPinnedCellOffset.d.ts +3 -3
  297. package/internals/utils/getPinnedCellOffset.js +6 -7
  298. package/internals/utils/index.d.ts +1 -1
  299. package/internals/utils/index.js +2 -2
  300. package/locales/arSD.js +2 -1
  301. package/locales/beBY.js +1 -1
  302. package/locales/bgBG.js +2 -1
  303. package/locales/csCZ.js +2 -1
  304. package/locales/daDK.js +2 -1
  305. package/locales/deDE.js +12 -13
  306. package/locales/elGR.js +2 -1
  307. package/locales/esES.js +12 -13
  308. package/locales/faIR.js +7 -7
  309. package/locales/fiFI.js +2 -1
  310. package/locales/frFR.js +2 -1
  311. package/locales/heIL.js +16 -17
  312. package/locales/hrHR.js +2 -1
  313. package/locales/huHU.js +2 -1
  314. package/locales/isIS.js +2 -1
  315. package/locales/itIT.js +2 -1
  316. package/locales/jaJP.js +2 -1
  317. package/locales/koKR.js +46 -49
  318. package/locales/nbNO.js +2 -1
  319. package/locales/nlNL.js +7 -7
  320. package/locales/nnNO.js +2 -1
  321. package/locales/plPL.js +2 -1
  322. package/locales/ptBR.js +12 -13
  323. package/locales/ptPT.js +12 -13
  324. package/locales/roRO.js +20 -21
  325. package/locales/ruRU.js +2 -1
  326. package/locales/skSK.js +2 -1
  327. package/locales/svSE.js +2 -1
  328. package/locales/trTR.js +14 -15
  329. package/locales/ukUA.js +2 -1
  330. package/locales/urPK.js +11 -11
  331. package/locales/viVN.js +2 -1
  332. package/locales/zhCN.js +12 -13
  333. package/locales/zhHK.js +2 -1
  334. package/locales/zhTW.js +2 -1
  335. package/material/index.js +58 -7
  336. package/models/api/gridApiCommon.d.ts +2 -2
  337. package/models/api/gridCoreApi.d.ts +7 -7
  338. package/models/api/gridDensityApi.d.ts +1 -1
  339. package/models/api/gridLocaleTextApi.d.ts +1 -1
  340. package/models/api/gridParamsApi.d.ts +29 -2
  341. package/models/api/gridStateApi.d.ts +1 -1
  342. package/models/api/index.d.ts +1 -1
  343. package/models/api/index.js +0 -1
  344. package/models/colDef/gridColDef.d.ts +34 -33
  345. package/models/controlStateItem.d.ts +2 -2
  346. package/models/events/gridEventLookup.d.ts +7 -1
  347. package/models/gridBaseSlots.d.ts +95 -0
  348. package/models/gridDataSource.d.ts +1 -1
  349. package/models/gridExport.d.ts +2 -2
  350. package/models/gridFilterInputComponent.d.ts +32 -0
  351. package/models/gridFilterOperator.d.ts +6 -4
  352. package/models/gridIconSlotsComponent.d.ts +5 -0
  353. package/models/gridSlotsComponent.d.ts +16 -1
  354. package/models/gridSlotsComponentsProps.d.ts +45 -9
  355. package/models/gridStateCommunity.d.ts +4 -0
  356. package/models/index.d.ts +1 -0
  357. package/models/props/DataGridProps.d.ts +12 -24
  358. package/modern/DataGrid/DataGrid.js +20 -38
  359. package/modern/DataGrid/useDataGridComponent.js +1 -1
  360. package/modern/DataGrid/useDataGridProps.js +3 -3
  361. package/modern/components/GridApiContext.js +2 -0
  362. package/modern/components/GridColumnHeaders.js +4 -4
  363. package/modern/components/GridConfigurationContext.js +2 -0
  364. package/modern/components/GridFooter.js +4 -4
  365. package/modern/components/GridHeaders.js +2 -2
  366. package/modern/components/GridLoadingOverlay.js +10 -8
  367. package/modern/components/GridNoResultsOverlay.js +4 -4
  368. package/modern/components/GridNoRowsOverlay.js +4 -4
  369. package/modern/components/GridPagination.js +7 -4
  370. package/modern/components/GridRow.js +55 -87
  371. package/modern/components/GridRowCount.js +3 -2
  372. package/modern/components/GridScrollArea.js +2 -0
  373. package/modern/components/GridSelectedRowCount.js +3 -2
  374. package/modern/components/GridSkeletonLoadingOverlay.js +22 -21
  375. package/modern/components/base/GridOverlays.js +2 -24
  376. package/modern/components/base/index.js +1 -2
  377. package/modern/components/cell/GridActionsCell.js +8 -1
  378. package/modern/components/cell/GridActionsCellItem.js +9 -8
  379. package/modern/components/cell/GridCell.js +49 -92
  380. package/modern/components/cell/GridEditDateCell.js +1 -1
  381. package/modern/components/cell/GridEditInputCell.js +73 -4
  382. package/modern/components/cell/GridEditSingleSelectCell.js +2 -2
  383. package/modern/components/cell/GridSkeletonCell.js +1 -2
  384. package/modern/components/columnHeaders/GridBaseColumnHeaders.js +4 -3
  385. package/modern/components/columnHeaders/GridColumnGroupHeader.js +7 -10
  386. package/modern/components/columnHeaders/GridColumnHeaderFilterIconButton.js +20 -7
  387. package/modern/components/columnHeaders/GridColumnHeaderItem.js +13 -12
  388. package/modern/components/columnHeaders/GridColumnHeaderTitle.js +5 -3
  389. package/modern/components/columnHeaders/GridGenericColumnHeaderItem.js +3 -2
  390. package/modern/components/columnHeaders/GridIconButtonContainer.js +5 -3
  391. package/modern/components/columnSelection/GridCellCheckboxRenderer.js +11 -9
  392. package/modern/components/columnSelection/GridHeaderCheckbox.js +17 -9
  393. package/modern/components/columnsManagement/GridColumnsManagement.js +50 -27
  394. package/modern/components/containers/GridFooterContainer.js +5 -3
  395. package/modern/components/containers/GridOverlay.js +5 -3
  396. package/modern/components/containers/GridRoot.js +18 -8
  397. package/modern/components/containers/GridRootStyles.js +160 -50
  398. package/modern/components/containers/GridToolbarContainer.js +3 -2
  399. package/modern/components/menu/columnMenu/GridColumnMenu.js +5 -5
  400. package/modern/components/menu/columnMenu/GridColumnMenuContainer.js +3 -2
  401. package/modern/components/menu/columnMenu/menuItems/GridColumnMenuFilterItem.js +6 -11
  402. package/modern/components/menu/columnMenu/menuItems/GridColumnMenuHideItem.js +6 -11
  403. package/modern/components/menu/columnMenu/menuItems/GridColumnMenuManageItem.js +6 -11
  404. package/modern/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +13 -22
  405. package/modern/components/panel/GridColumnsPanel.js +1 -2
  406. package/modern/components/panel/GridPanel.js +5 -3
  407. package/modern/components/panel/GridPanelContent.js +7 -3
  408. package/modern/components/panel/GridPanelFooter.js +4 -3
  409. package/modern/components/panel/GridPanelWrapper.js +5 -3
  410. package/modern/components/panel/filterPanel/GridFilterForm.js +22 -18
  411. package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +41 -31
  412. package/modern/components/panel/filterPanel/GridFilterInputDate.js +50 -31
  413. package/modern/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +49 -24
  414. package/modern/components/panel/filterPanel/GridFilterInputMultipleValue.js +55 -33
  415. package/modern/components/panel/filterPanel/GridFilterInputSingleSelect.js +34 -25
  416. package/modern/components/panel/filterPanel/GridFilterInputValue.js +63 -38
  417. package/modern/components/panel/filterPanel/GridFilterPanel.js +4 -4
  418. package/modern/components/panel/filterPanel/index.js +1 -2
  419. package/modern/components/toolbar/GridToolbar.js +11 -5
  420. package/modern/components/toolbar/GridToolbarColumnsButton.js +12 -6
  421. package/modern/components/toolbar/GridToolbarDensitySelector.js +9 -11
  422. package/modern/components/toolbar/GridToolbarExport.js +2 -1
  423. package/modern/components/toolbar/GridToolbarExportContainer.js +6 -6
  424. package/modern/components/toolbar/GridToolbarFilterButton.js +20 -9
  425. package/modern/components/toolbar/GridToolbarQuickFilter.js +39 -31
  426. package/modern/components/virtualization/GridMainContainer.js +14 -5
  427. package/modern/components/virtualization/GridVirtualScrollbar.js +17 -17
  428. package/modern/components/virtualization/GridVirtualScroller.js +27 -12
  429. package/modern/components/virtualization/GridVirtualScrollerContent.js +15 -6
  430. package/modern/components/virtualization/GridVirtualScrollerRenderZone.js +5 -3
  431. package/modern/constants/dataGridPropsDefaultValues.js +2 -4
  432. package/modern/constants/gridClasses.js +1 -1
  433. package/modern/constants/localeTextConstants.js +1 -1
  434. package/modern/context/GridRootPropsContext.js +2 -0
  435. package/modern/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +1 -1
  436. package/modern/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +1 -1
  437. package/modern/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +5 -1
  438. package/modern/hooks/core/strategyProcessing/useGridStrategyProcessing.js +7 -8
  439. package/modern/hooks/core/useGridApiInitialization.js +2 -2
  440. package/modern/hooks/core/useGridStateInitialization.js +3 -3
  441. package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +33 -68
  442. package/modern/hooks/features/columnMenu/useGridColumnMenu.js +0 -2
  443. package/modern/hooks/features/columnResize/gridColumnResizeApi.js +2 -1
  444. package/modern/hooks/features/columnResize/useGridColumnResize.js +17 -10
  445. package/modern/hooks/features/columns/gridColumnsUtils.js +2 -1
  446. package/modern/hooks/features/columns/useGridColumns.js +7 -3
  447. package/modern/hooks/features/dimensions/useGridDimensions.js +11 -32
  448. package/modern/hooks/features/editing/gridEditingSelectors.js +7 -1
  449. package/modern/hooks/features/editing/useGridCellEditing.js +4 -4
  450. package/modern/hooks/features/editing/useGridRowEditing.js +7 -8
  451. package/modern/hooks/features/export/useGridPrintExport.js +1 -1
  452. package/modern/hooks/features/filter/gridFilterSelector.js +6 -1
  453. package/modern/hooks/features/filter/gridFilterUtils.js +3 -3
  454. package/modern/hooks/features/filter/useGridFilter.js +1 -1
  455. package/modern/hooks/features/focus/useGridFocus.js +3 -2
  456. package/modern/hooks/features/index.js +1 -0
  457. package/modern/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +24 -16
  458. package/modern/hooks/features/keyboardNavigation/utils.js +0 -5
  459. package/modern/hooks/features/listView/gridListViewSelectors.js +3 -1
  460. package/modern/hooks/features/listView/index.js +1 -0
  461. package/modern/hooks/features/listView/useGridListView.js +2 -1
  462. package/modern/hooks/features/overlays/useGridOverlays.js +22 -2
  463. package/modern/hooks/features/pagination/gridPaginationSelector.js +39 -1
  464. package/modern/hooks/features/pagination/useGridPagination.js +5 -3
  465. package/modern/hooks/features/pagination/useGridPaginationModel.js +23 -1
  466. package/modern/hooks/features/preferencesPanel/gridPreferencePanelSelector.js +8 -1
  467. package/modern/hooks/features/preferencesPanel/index.js +1 -1
  468. package/modern/hooks/features/preferencesPanel/useGridPreferencesPanel.js +14 -38
  469. package/modern/hooks/features/rowSelection/useGridRowSelection.js +8 -16
  470. package/modern/hooks/features/rowSelection/utils.js +2 -2
  471. package/modern/hooks/features/rows/gridRowsSelector.js +1 -2
  472. package/modern/hooks/features/rows/gridRowsUtils.js +0 -9
  473. package/modern/hooks/features/rows/index.js +1 -1
  474. package/modern/hooks/features/rows/useGridParamsApi.js +33 -14
  475. package/modern/hooks/features/rows/useGridRowSpanning.js +97 -86
  476. package/modern/hooks/features/rows/useGridRows.js +23 -27
  477. package/modern/hooks/features/rows/useGridRowsMeta.js +3 -2
  478. package/modern/hooks/features/sorting/gridSortingSelector.js +11 -0
  479. package/modern/hooks/features/sorting/gridSortingUtils.js +2 -2
  480. package/modern/hooks/features/sorting/index.js +1 -1
  481. package/modern/hooks/features/sorting/useGridSorting.js +1 -1
  482. package/modern/hooks/features/virtualization/gridFocusedVirtualCellSelector.js +33 -0
  483. package/modern/hooks/features/virtualization/useGridVirtualScroller.js +169 -94
  484. package/modern/hooks/utils/useGridApiEventHandler.js +1 -1
  485. package/modern/hooks/utils/useGridApiRef.js +1 -1
  486. package/modern/hooks/utils/useGridSelector.js +6 -44
  487. package/modern/hooks/utils/useGridVisibleRows.js +5 -28
  488. package/modern/index.js +1 -1
  489. package/modern/internals/constants.js +8 -1
  490. package/modern/internals/index.js +4 -3
  491. package/modern/internals/utils/attachPinnedStyle.js +9 -0
  492. package/modern/internals/utils/getPinnedCellOffset.js +6 -7
  493. package/modern/internals/utils/index.js +2 -2
  494. package/modern/locales/arSD.js +2 -1
  495. package/modern/locales/beBY.js +1 -1
  496. package/modern/locales/bgBG.js +2 -1
  497. package/modern/locales/csCZ.js +2 -1
  498. package/modern/locales/daDK.js +2 -1
  499. package/modern/locales/deDE.js +12 -13
  500. package/modern/locales/elGR.js +2 -1
  501. package/modern/locales/esES.js +12 -13
  502. package/modern/locales/faIR.js +7 -7
  503. package/modern/locales/fiFI.js +2 -1
  504. package/modern/locales/frFR.js +2 -1
  505. package/modern/locales/heIL.js +16 -17
  506. package/modern/locales/hrHR.js +2 -1
  507. package/modern/locales/huHU.js +2 -1
  508. package/modern/locales/isIS.js +2 -1
  509. package/modern/locales/itIT.js +2 -1
  510. package/modern/locales/jaJP.js +2 -1
  511. package/modern/locales/koKR.js +46 -49
  512. package/modern/locales/nbNO.js +2 -1
  513. package/modern/locales/nlNL.js +7 -7
  514. package/modern/locales/nnNO.js +2 -1
  515. package/modern/locales/plPL.js +2 -1
  516. package/modern/locales/ptBR.js +12 -13
  517. package/modern/locales/ptPT.js +12 -13
  518. package/modern/locales/roRO.js +20 -21
  519. package/modern/locales/ruRU.js +2 -1
  520. package/modern/locales/skSK.js +2 -1
  521. package/modern/locales/svSE.js +2 -1
  522. package/modern/locales/trTR.js +14 -15
  523. package/modern/locales/ukUA.js +2 -1
  524. package/modern/locales/urPK.js +11 -11
  525. package/modern/locales/viVN.js +2 -1
  526. package/modern/locales/zhCN.js +12 -13
  527. package/modern/locales/zhHK.js +2 -1
  528. package/modern/locales/zhTW.js +2 -1
  529. package/modern/material/index.js +58 -7
  530. package/modern/models/api/index.js +0 -1
  531. package/modern/models/gridBaseSlots.js +1 -0
  532. package/modern/models/gridFilterInputComponent.js +1 -0
  533. package/modern/utils/assert.js +3 -0
  534. package/modern/utils/cellBorderUtils.js +5 -5
  535. package/modern/utils/createSelector.js +1 -120
  536. package/modern/utils/domUtils.js +7 -2
  537. package/modern/utils/isJSDOM.js +1 -0
  538. package/modern/utils/roundToDecimalPlaces.js +3 -0
  539. package/modern/utils/rtlFlipSide.js +22 -0
  540. package/modern/utils/utils.js +6 -1
  541. package/node/DataGrid/DataGrid.js +18 -36
  542. package/node/DataGrid/useDataGridComponent.js +1 -1
  543. package/node/DataGrid/useDataGridProps.js +2 -2
  544. package/node/components/GridApiContext.js +1 -0
  545. package/node/components/GridColumnHeaders.js +4 -4
  546. package/node/components/GridConfigurationContext.js +1 -0
  547. package/node/components/GridFooter.js +4 -4
  548. package/node/components/GridHeaders.js +2 -2
  549. package/node/components/GridLoadingOverlay.js +10 -8
  550. package/node/components/GridNoResultsOverlay.js +4 -4
  551. package/node/components/GridNoRowsOverlay.js +4 -4
  552. package/node/components/GridPagination.js +7 -4
  553. package/node/components/GridRow.js +51 -84
  554. package/node/components/GridRowCount.js +3 -2
  555. package/node/components/GridScrollArea.js +1 -0
  556. package/node/components/GridSelectedRowCount.js +3 -2
  557. package/node/components/GridSkeletonLoadingOverlay.js +21 -20
  558. package/node/components/base/GridOverlays.js +2 -24
  559. package/node/components/base/index.js +0 -11
  560. package/node/components/cell/GridActionsCell.js +8 -1
  561. package/node/components/cell/GridActionsCellItem.js +7 -8
  562. package/node/components/cell/GridCell.js +48 -91
  563. package/node/components/cell/GridEditDateCell.js +1 -1
  564. package/node/components/cell/GridEditInputCell.js +73 -4
  565. package/node/components/cell/GridEditSingleSelectCell.js +2 -2
  566. package/node/components/cell/GridSkeletonCell.js +1 -2
  567. package/node/components/columnHeaders/GridBaseColumnHeaders.js +4 -3
  568. package/node/components/columnHeaders/GridColumnGroupHeader.js +7 -10
  569. package/node/components/columnHeaders/GridColumnHeaderFilterIconButton.js +19 -6
  570. package/node/components/columnHeaders/GridColumnHeaderItem.js +13 -12
  571. package/node/components/columnHeaders/GridColumnHeaderTitle.js +5 -3
  572. package/node/components/columnHeaders/GridGenericColumnHeaderItem.js +3 -2
  573. package/node/components/columnHeaders/GridIconButtonContainer.js +5 -3
  574. package/node/components/columnSelection/GridCellCheckboxRenderer.js +10 -8
  575. package/node/components/columnSelection/GridHeaderCheckbox.js +17 -9
  576. package/node/components/columnsManagement/GridColumnsManagement.js +50 -27
  577. package/node/components/containers/GridFooterContainer.js +5 -3
  578. package/node/components/containers/GridOverlay.js +5 -3
  579. package/node/components/containers/GridRoot.js +17 -7
  580. package/node/components/containers/GridRootStyles.js +160 -50
  581. package/node/components/containers/GridToolbarContainer.js +3 -2
  582. package/node/components/menu/columnMenu/GridColumnMenu.js +5 -5
  583. package/node/components/menu/columnMenu/GridColumnMenuContainer.js +3 -2
  584. package/node/components/menu/columnMenu/menuItems/GridColumnMenuFilterItem.js +5 -10
  585. package/node/components/menu/columnMenu/menuItems/GridColumnMenuHideItem.js +5 -10
  586. package/node/components/menu/columnMenu/menuItems/GridColumnMenuManageItem.js +5 -10
  587. package/node/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +13 -22
  588. package/node/components/panel/GridColumnsPanel.js +1 -2
  589. package/node/components/panel/GridPanel.js +5 -3
  590. package/node/components/panel/GridPanelContent.js +7 -3
  591. package/node/components/panel/GridPanelFooter.js +5 -4
  592. package/node/components/panel/GridPanelWrapper.js +5 -3
  593. package/node/components/panel/filterPanel/GridFilterForm.js +22 -18
  594. package/node/components/panel/filterPanel/GridFilterInputBoolean.js +42 -33
  595. package/node/components/panel/filterPanel/GridFilterInputDate.js +49 -30
  596. package/node/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +49 -24
  597. package/node/components/panel/filterPanel/GridFilterInputMultipleValue.js +55 -33
  598. package/node/components/panel/filterPanel/GridFilterInputSingleSelect.js +34 -25
  599. package/node/components/panel/filterPanel/GridFilterInputValue.js +62 -37
  600. package/node/components/panel/filterPanel/GridFilterPanel.js +4 -4
  601. package/node/components/panel/filterPanel/index.js +7 -23
  602. package/node/components/toolbar/GridToolbar.js +11 -5
  603. package/node/components/toolbar/GridToolbarColumnsButton.js +12 -6
  604. package/node/components/toolbar/GridToolbarDensitySelector.js +9 -11
  605. package/node/components/toolbar/GridToolbarExport.js +2 -1
  606. package/node/components/toolbar/GridToolbarExportContainer.js +6 -6
  607. package/node/components/toolbar/GridToolbarFilterButton.js +20 -9
  608. package/node/components/toolbar/GridToolbarQuickFilter.js +39 -31
  609. package/node/components/virtualization/GridMainContainer.js +14 -5
  610. package/node/components/virtualization/GridVirtualScrollbar.js +17 -17
  611. package/node/components/virtualization/GridVirtualScroller.js +27 -12
  612. package/node/components/virtualization/GridVirtualScrollerContent.js +15 -6
  613. package/node/components/virtualization/GridVirtualScrollerRenderZone.js +5 -3
  614. package/node/constants/dataGridPropsDefaultValues.js +2 -4
  615. package/node/constants/gridClasses.js +1 -1
  616. package/node/constants/localeTextConstants.js +1 -1
  617. package/node/context/GridRootPropsContext.js +1 -0
  618. package/node/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +1 -1
  619. package/node/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +1 -1
  620. package/node/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +7 -1
  621. package/node/hooks/core/strategyProcessing/useGridStrategyProcessing.js +7 -8
  622. package/node/hooks/core/useGridApiInitialization.js +2 -2
  623. package/node/hooks/core/useGridStateInitialization.js +3 -3
  624. package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +31 -66
  625. package/node/hooks/features/columnMenu/useGridColumnMenu.js +0 -2
  626. package/node/hooks/features/columnResize/gridColumnResizeApi.js +2 -1
  627. package/node/hooks/features/columnResize/useGridColumnResize.js +17 -10
  628. package/node/hooks/features/columns/gridColumnsUtils.js +2 -1
  629. package/node/hooks/features/columns/useGridColumns.js +7 -3
  630. package/node/hooks/features/dimensions/useGridDimensions.js +12 -33
  631. package/node/hooks/features/editing/gridEditingSelectors.js +8 -2
  632. package/node/hooks/features/editing/useGridCellEditing.js +3 -3
  633. package/node/hooks/features/editing/useGridRowEditing.js +5 -6
  634. package/node/hooks/features/export/useGridPrintExport.js +1 -1
  635. package/node/hooks/features/filter/gridFilterSelector.js +6 -1
  636. package/node/hooks/features/filter/gridFilterUtils.js +3 -3
  637. package/node/hooks/features/filter/useGridFilter.js +1 -1
  638. package/node/hooks/features/focus/useGridFocus.js +3 -2
  639. package/node/hooks/features/index.js +11 -0
  640. package/node/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +24 -15
  641. package/node/hooks/features/keyboardNavigation/utils.js +0 -6
  642. package/node/hooks/features/listView/gridListViewSelectors.js +3 -1
  643. package/node/hooks/features/listView/index.js +16 -0
  644. package/node/hooks/features/listView/useGridListView.js +2 -1
  645. package/node/hooks/features/overlays/useGridOverlays.js +24 -2
  646. package/node/hooks/features/pagination/gridPaginationSelector.js +41 -3
  647. package/node/hooks/features/pagination/useGridPagination.js +5 -3
  648. package/node/hooks/features/pagination/useGridPaginationModel.js +23 -1
  649. package/node/hooks/features/preferencesPanel/gridPreferencePanelSelector.js +9 -2
  650. package/node/hooks/features/preferencesPanel/index.js +11 -10
  651. package/node/hooks/features/preferencesPanel/useGridPreferencesPanel.js +14 -38
  652. package/node/hooks/features/rowSelection/useGridRowSelection.js +7 -15
  653. package/node/hooks/features/rowSelection/utils.js +2 -2
  654. package/node/hooks/features/rows/gridRowsSelector.js +2 -3
  655. package/node/hooks/features/rows/gridRowsUtils.js +0 -9
  656. package/node/hooks/features/rows/index.js +0 -7
  657. package/node/hooks/features/rows/useGridParamsApi.js +33 -14
  658. package/node/hooks/features/rows/useGridRowSpanning.js +95 -84
  659. package/node/hooks/features/rows/useGridRows.js +21 -25
  660. package/node/hooks/features/rows/useGridRowsMeta.js +5 -4
  661. package/node/hooks/features/sorting/gridSortingSelector.js +12 -1
  662. package/node/hooks/features/sorting/gridSortingUtils.js +2 -2
  663. package/node/hooks/features/sorting/index.js +24 -16
  664. package/node/hooks/features/sorting/useGridSorting.js +1 -1
  665. package/node/hooks/features/virtualization/gridFocusedVirtualCellSelector.js +40 -0
  666. package/node/hooks/features/virtualization/useGridVirtualScroller.js +171 -96
  667. package/node/hooks/utils/useGridApiEventHandler.js +1 -1
  668. package/node/hooks/utils/useGridApiRef.js +1 -1
  669. package/node/hooks/utils/useGridSelector.js +8 -47
  670. package/node/hooks/utils/useGridVisibleRows.js +3 -28
  671. package/node/index.js +1 -1
  672. package/node/internals/constants.js +9 -2
  673. package/node/internals/index.js +27 -22
  674. package/node/internals/utils/attachPinnedStyle.js +15 -0
  675. package/node/internals/utils/getPinnedCellOffset.js +6 -7
  676. package/node/internals/utils/index.js +11 -11
  677. package/node/locales/arSD.js +2 -1
  678. package/node/locales/beBY.js +1 -1
  679. package/node/locales/bgBG.js +2 -1
  680. package/node/locales/csCZ.js +2 -1
  681. package/node/locales/daDK.js +2 -1
  682. package/node/locales/deDE.js +12 -13
  683. package/node/locales/elGR.js +2 -1
  684. package/node/locales/esES.js +12 -13
  685. package/node/locales/faIR.js +7 -7
  686. package/node/locales/fiFI.js +2 -1
  687. package/node/locales/frFR.js +2 -1
  688. package/node/locales/heIL.js +16 -17
  689. package/node/locales/hrHR.js +2 -1
  690. package/node/locales/huHU.js +2 -1
  691. package/node/locales/isIS.js +2 -1
  692. package/node/locales/itIT.js +2 -1
  693. package/node/locales/jaJP.js +2 -1
  694. package/node/locales/koKR.js +46 -49
  695. package/node/locales/nbNO.js +2 -1
  696. package/node/locales/nlNL.js +7 -7
  697. package/node/locales/nnNO.js +2 -1
  698. package/node/locales/plPL.js +2 -1
  699. package/node/locales/ptBR.js +12 -13
  700. package/node/locales/ptPT.js +12 -13
  701. package/node/locales/roRO.js +20 -21
  702. package/node/locales/ruRU.js +2 -1
  703. package/node/locales/skSK.js +2 -1
  704. package/node/locales/svSE.js +2 -1
  705. package/node/locales/trTR.js +14 -15
  706. package/node/locales/ukUA.js +2 -1
  707. package/node/locales/urPK.js +11 -11
  708. package/node/locales/viVN.js +2 -1
  709. package/node/locales/zhCN.js +12 -13
  710. package/node/locales/zhHK.js +2 -1
  711. package/node/locales/zhTW.js +2 -1
  712. package/node/material/index.js +59 -7
  713. package/node/models/api/index.js +0 -11
  714. package/node/models/gridFilterInputComponent.js +5 -0
  715. package/node/utils/assert.js +9 -0
  716. package/node/utils/cellBorderUtils.js +5 -5
  717. package/node/utils/createSelector.js +4 -125
  718. package/node/utils/domUtils.js +7 -2
  719. package/node/utils/isJSDOM.js +7 -0
  720. package/node/utils/roundToDecimalPlaces.js +9 -0
  721. package/node/utils/rtlFlipSide.js +29 -0
  722. package/node/utils/utils.js +8 -1
  723. package/package.json +3 -3
  724. package/themeAugmentation/overrides.d.ts +10 -5
  725. package/utils/assert.d.ts +2 -0
  726. package/utils/assert.js +3 -0
  727. package/utils/cellBorderUtils.d.ts +3 -3
  728. package/utils/cellBorderUtils.js +5 -5
  729. package/utils/createSelector.d.ts +7 -19
  730. package/utils/createSelector.js +1 -120
  731. package/utils/domUtils.js +7 -2
  732. package/utils/getPublicApiRef.d.ts +2 -1
  733. package/utils/isJSDOM.d.ts +1 -0
  734. package/utils/isJSDOM.js +1 -0
  735. package/utils/keyboardUtils.d.ts +1 -1
  736. package/utils/roundToDecimalPlaces.d.ts +1 -0
  737. package/utils/roundToDecimalPlaces.js +3 -0
  738. package/utils/rtlFlipSide.d.ts +2 -0
  739. package/utils/rtlFlipSide.js +22 -0
  740. package/utils/utils.d.ts +1 -0
  741. package/utils/utils.js +6 -1
  742. package/components/panel/filterPanel/GridFilterInputValueProps.d.ts +0 -11
  743. package/internals/utils/useProps.d.ts +0 -1
  744. package/internals/utils/useProps.js +0 -24
  745. package/joy/icons.d.ts +0 -32
  746. package/joy/icons.js +0 -431
  747. package/joy/index.d.ts +0 -2
  748. package/joy/index.js +0 -2
  749. package/joy/joySlots.d.ts +0 -3
  750. package/joy/joySlots.js +0 -389
  751. package/joy/package.json +0 -6
  752. package/modern/internals/utils/useProps.js +0 -24
  753. package/modern/joy/icons.js +0 -431
  754. package/modern/joy/index.js +0 -2
  755. package/modern/joy/joySlots.js +0 -389
  756. package/node/internals/utils/useProps.js +0 -30
  757. package/node/joy/icons.js +0 -439
  758. package/node/joy/index.js +0 -13
  759. package/node/joy/joySlots.js +0 -397
  760. /package/{components/panel/filterPanel/GridFilterInputValueProps.js → models/gridBaseSlots.js} +0 -0
  761. /package/{modern/components/panel/filterPanel/GridFilterInputValueProps.js → models/gridFilterInputComponent.js} +0 -0
  762. /package/node/{components/panel/filterPanel/GridFilterInputValueProps.js → models/gridBaseSlots.js} +0 -0
@@ -1,4 +1,5 @@
1
1
  import * as React from 'react';
2
+ import { RefObject } from '@mui/x-internals/types';
2
3
  import { GridCellClassNamePropType } from '../gridCellClass';
3
4
  import { GridColumnHeaderClassNamePropType } from '../gridColumnHeaderClass';
4
5
  import type { GridFilterOperator } from '../gridFilterOperator';
@@ -24,55 +25,55 @@ export type ValueOptions = string | number | {
24
25
  * Value that can be used as a key for grouping rows
25
26
  */
26
27
  export type GridKeyValue = string | number | boolean;
27
- export type GridApplyQuickFilter<R extends GridValidRowModel = GridValidRowModel, V = any> = (value: V, row: R, column: GridColDef, apiRef: React.MutableRefObject<GridApiCommunity>) => boolean;
28
- export type GetApplyQuickFilterFn<R extends GridValidRowModel = GridValidRowModel, V = any> = (value: any, colDef: GridStateColDef<R, V>, apiRef: React.MutableRefObject<GridApiCommunity>) => null | GridApplyQuickFilter<R, V>;
29
- export type GridValueGetter<R extends GridValidRowModel = GridValidRowModel, V = any, F = V, TValue = never> = (value: TValue, row: R, column: GridColDef<R, V, F>, apiRef: React.MutableRefObject<GridApiCommunity>) => V;
30
- export type GridValueFormatter<R extends GridValidRowModel = GridValidRowModel, V = any, F = V, TValue = never> = (value: TValue, row: R, column: GridColDef<R, V, F>, apiRef: React.MutableRefObject<GridApiCommunity>) => F;
31
- export type GridValueSetter<R extends GridValidRowModel = GridValidRowModel, V = any, F = V> = (value: V, row: R, column: GridColDef<R, V, F>, apiRef: React.MutableRefObject<GridApiCommunity>) => R;
32
- export type GridValueParser<R extends GridValidRowModel = GridValidRowModel, V = any, F = V> = (value: F | undefined, row: R | undefined, column: GridColDef<R, V, F>, apiRef: React.MutableRefObject<GridApiCommunity>) => V;
33
- export type GridColSpanFn<R extends GridValidRowModel = GridValidRowModel, V = any, F = V> = (value: V, row: R, column: GridColDef<R, V, F>, apiRef: React.MutableRefObject<GridApiCommunity>) => number | undefined;
28
+ export type GridApplyQuickFilter<R extends GridValidRowModel = GridValidRowModel, V = any> = (value: V, row: R, column: GridColDef, apiRef: RefObject<GridApiCommunity>) => boolean;
29
+ export type GetApplyQuickFilterFn<R extends GridValidRowModel = GridValidRowModel, V = any> = (value: any, colDef: GridStateColDef<R, V>, apiRef: RefObject<GridApiCommunity>) => null | GridApplyQuickFilter<R, V>;
30
+ export type GridValueGetter<R extends GridValidRowModel = GridValidRowModel, V = any, F = V, TValue = never> = (value: TValue, row: R, column: GridColDef<R, V, F>, apiRef: RefObject<GridApiCommunity>) => V;
31
+ export type GridValueFormatter<R extends GridValidRowModel = GridValidRowModel, V = any, F = V, TValue = never> = (value: TValue, row: R, column: GridColDef<R, V, F>, apiRef: RefObject<GridApiCommunity>) => F;
32
+ export type GridValueSetter<R extends GridValidRowModel = GridValidRowModel, V = any, F = V> = (value: V, row: R, column: GridColDef<R, V, F>, apiRef: RefObject<GridApiCommunity>) => R;
33
+ export type GridValueParser<R extends GridValidRowModel = GridValidRowModel, V = any, F = V> = (value: F | undefined, row: R | undefined, column: GridColDef<R, V, F>, apiRef: RefObject<GridApiCommunity>) => V;
34
+ export type GridColSpanFn<R extends GridValidRowModel = GridValidRowModel, V = any, F = V> = (value: V, row: R, column: GridColDef<R, V, F>, apiRef: RefObject<GridApiCommunity>) => number | undefined;
34
35
  /**
35
36
  * Column Definition base interface.
36
37
  */
37
38
  export interface GridBaseColDef<R extends GridValidRowModel = GridValidRowModel, V = any, F = V> {
38
39
  /**
39
- * The column identifier. It's used to map with [[GridRowModel]] values.
40
+ * The unique identifier of the column. Used to map with [[GridRowModel]] values.
40
41
  */
41
42
  field: string;
42
43
  /**
43
- * The title of the column rendered in the column header cell.
44
+ * The title displayed in the column header cell.
44
45
  */
45
46
  headerName?: string;
46
47
  /**
47
- * The description of the column rendered as tooltip if the column header name is not fully displayed.
48
+ * The tooltip text shown when the column header name is truncated.
48
49
  */
49
50
  description?: string;
50
51
  /**
51
- * Set the width of the column.
52
+ * The width of the column in pixels.
52
53
  * @default 100
53
54
  */
54
55
  width?: number;
55
56
  /**
56
- * If set, it indicates that a column has fluid width. Range [0, ∞).
57
+ * The flex grow factor of the column. Must be a positive number.
57
58
  */
58
59
  flex?: number;
59
60
  /**
60
- * Sets the minimum width of a column.
61
+ * The minimum width of the column in pixels.
61
62
  * @default 50
62
63
  */
63
64
  minWidth?: number;
64
65
  /**
65
- * Sets the maximum width of a column.
66
+ * The maximum width of the column in pixels.
66
67
  * @default Infinity
67
68
  */
68
69
  maxWidth?: number;
69
70
  /**
70
- * If `false`, removes the buttons for hiding this column.
71
+ * If `false`, removes the option to hide this column.
71
72
  * @default true
72
73
  */
73
74
  hideable?: boolean;
74
75
  /**
75
- * If `true`, the column is sortable.
76
+ * If `false`, disables sorting for this column.
76
77
  * @default true
77
78
  */
78
79
  sortable?: boolean;
@@ -81,7 +82,7 @@ export interface GridBaseColDef<R extends GridValidRowModel = GridValidRowModel,
81
82
  */
82
83
  sortingOrder?: readonly GridSortDirection[];
83
84
  /**
84
- * If `true`, the column is resizable.
85
+ * If `false`, disables resizing for this column.
85
86
  * @default true
86
87
  */
87
88
  resizable?: boolean;
@@ -109,7 +110,7 @@ export interface GridBaseColDef<R extends GridValidRowModel = GridValidRowModel,
109
110
  */
110
111
  sortComparator?: GridComparatorFn<V>;
111
112
  /**
112
- * Allows to use a different comparator function depending on the sort direction.
113
+ * Provide an alternative comparator function for sorting.
113
114
  * Takes precedence over `sortComparator`.
114
115
  * @param {GridSortDirection} sortDirection The direction of the sort.
115
116
  * @returns {GridComparatorFn<V>} The comparator function to use.
@@ -122,25 +123,25 @@ export interface GridBaseColDef<R extends GridValidRowModel = GridValidRowModel,
122
123
  */
123
124
  type?: GridColType;
124
125
  /**
125
- * Allows to align the column values in cells.
126
+ * Align cell content.
126
127
  */
127
128
  align?: GridAlignment;
128
129
  /**
129
- * Function that allows to get a specific data instead of field to render in the cell.
130
+ * Function that returns specific data to render in the cell instead of using the field value.
130
131
  */
131
132
  valueGetter?: GridValueGetter<R, V, F>;
132
133
  /**
133
- * Function that allows to provide a specific value to be used in row spanning.
134
+ * Function that returns a specific value to be used in row spanning.
134
135
  */
135
136
  rowSpanValueGetter?: GridValueGetter<R, V, F>;
136
137
  /**
137
- * Function that allows to customize how the entered value is stored in the row.
138
- * It only works with cell/row editing.
138
+ * Function that customizes how the entered value is stored in the row.
139
+ * Only works with cell/row editing.
139
140
  * @returns {R} The row with the updated field.
140
141
  */
141
142
  valueSetter?: GridValueSetter<R, V, F>;
142
143
  /**
143
- * Function that allows to apply a formatter before rendering its value.
144
+ * Formats the cell value before rendering.
144
145
  */
145
146
  valueFormatter?: GridValueFormatter<R, V, F>;
146
147
  /**
@@ -149,7 +150,7 @@ export interface GridBaseColDef<R extends GridValidRowModel = GridValidRowModel,
149
150
  */
150
151
  valueParser?: GridValueParser<R, V, F>;
151
152
  /**
152
- * Class name that will be added in cells for that column.
153
+ * Class name added to cells in this column.
153
154
  */
154
155
  cellClassName?: GridCellClassNamePropType<R, V>;
155
156
  /**
@@ -159,38 +160,38 @@ export interface GridBaseColDef<R extends GridValidRowModel = GridValidRowModel,
159
160
  */
160
161
  display?: 'text' | 'flex';
161
162
  /**
162
- * Allows to override the component rendered as cell for this column.
163
+ * Override the component rendered as cell for this column.
163
164
  * @template R, V, F
164
165
  * @param {GridRenderCellParams<R, V, F>} params Object containing parameters for the renderer.
165
166
  * @returns {React.ReactNode} The element to be rendered.
166
167
  */
167
168
  renderCell?: (params: GridRenderCellParams<R, V, F>) => React.ReactNode;
168
169
  /**
169
- * Allows to override the component rendered in edit cell mode for this column.
170
+ * Override the component rendered in edit cell mode for this column.
170
171
  * @param {GridRenderEditCellParams} params Object containing parameters for the renderer.
171
172
  * @returns {React.ReactNode} The element to be rendered.
172
173
  */
173
174
  renderEditCell?: (params: GridRenderEditCellParams<R, V, F>) => React.ReactNode;
174
175
  /**
175
176
  * Callback fired when the edit props of the cell changes.
176
- * It allows to process the props that saved into the state.
177
+ * Processes the props before being saved into the state.
177
178
  * @param {GridPreProcessEditCellProps} params Object containing parameters of the cell being edited.
178
179
  * @returns {GridEditCellProps | Promise<GridEditCellProps>} The new edit cell props.
179
180
  */
180
181
  preProcessEditCellProps?: (params: GridPreProcessEditCellProps) => GridEditCellProps | Promise<GridEditCellProps>;
181
182
  /**
182
- * Class name that will be added in the column header cell.
183
+ * Class name added to the column header cell.
183
184
  */
184
185
  headerClassName?: GridColumnHeaderClassNamePropType;
185
186
  /**
186
- * Allows to render a component in the column header cell.
187
+ * Override the component rendered in the column header cell.
187
188
  * @template R, V, F
188
189
  * @param {GridColumnHeaderParams<R, V, F>} params Object containing parameters for the renderer.
189
190
  * @returns {React.ReactNode} The element to be rendered.
190
191
  */
191
192
  renderHeader?: (params: GridColumnHeaderParams<R, V, F>) => React.ReactNode;
192
193
  /**
193
- * Header cell element alignment.
194
+ * Align column header content.
194
195
  */
195
196
  headerAlign?: GridAlignment;
196
197
  /**
@@ -211,13 +212,13 @@ export interface GridBaseColDef<R extends GridValidRowModel = GridValidRowModel,
211
212
  /**
212
213
  * Allows setting the filter operators for this column.
213
214
  */
214
- filterOperators?: readonly GridFilterOperator<R, V, F>[];
215
+ filterOperators?: readonly GridFilterOperator<R, V, F, any>[];
215
216
  /**
216
217
  * The callback that generates a filtering function for a given quick filter value.
217
218
  * This function can return `null` to skip filtering for this value and column.
218
219
  * @param {any} value The value with which we want to filter the column.
219
220
  * @param {GridStateColDef} colDef The column from which we want to filter the rows.
220
- * @param {React.MutableRefObject<GridApiCommunity>} apiRef Deprecated: The API of the grid.
221
+ * @param {RefObject<GridApiCommunity>} apiRef Deprecated: The API of the grid.
221
222
  * @returns {null | GridApplyQuickFilter} The function to call to check if a row pass this filter value or not.
222
223
  */
223
224
  getApplyQuickFilterFn?: GetApplyQuickFilterFn<R, V>;
@@ -2,10 +2,10 @@ import { GridCallbackDetails } from './api/gridCallbackDetails';
2
2
  import type { GridEventLookup, GridControlledStateEventLookup } from './events';
3
3
  import type { OutputSelector } from '../utils/createSelector';
4
4
  import { GridStateCommunity } from './gridStateCommunity';
5
- export interface GridControlStateItem<State extends GridStateCommunity, E extends keyof GridControlledStateEventLookup> {
5
+ export interface GridControlStateItem<State extends GridStateCommunity, Args, E extends keyof GridControlledStateEventLookup> {
6
6
  stateId: string;
7
7
  propModel?: GridEventLookup[E]['params'];
8
- stateSelector: OutputSelector<State, GridControlledStateEventLookup[E]['params']> | ((state: State) => GridControlledStateEventLookup[E]['params']);
8
+ stateSelector: OutputSelector<State, Args, GridControlledStateEventLookup[E]['params']> | ((state: State) => GridControlledStateEventLookup[E]['params']);
9
9
  propOnChange?: (model: GridControlledStateEventLookup[E]['params'], details: GridCallbackDetails) => void;
10
10
  changeEvent: E;
11
11
  }
@@ -399,6 +399,7 @@ export interface GridControlledStateEventLookup {
399
399
  export interface GridControlledStateReasonLookup {
400
400
  filter: 'upsertFilterItem' | 'upsertFilterItems' | 'deleteFilterItem' | 'changeLogicOperator' | 'restoreState' | 'removeAllFilterItems';
401
401
  pagination: 'setPaginationModel' | 'stateRestorePreProcessing';
402
+ rows: 'addSkeletonRows';
402
403
  }
403
404
  export interface GridEventLookup extends GridRowEventLookup, GridColumnHeaderEventLookup, GridHeaderFilterEventLookup, GridColumnGroupHeaderEventLookup, GridCellEventLookup, GridControlledStateEventLookup {
404
405
  /**
@@ -583,7 +584,12 @@ export interface GridEventLookup extends GridRowEventLookup, GridColumnHeaderEve
583
584
  * Fired when the content size used by the `GridVirtualScroller` changes.
584
585
  * @ignore - do not document.
585
586
  */
586
- virtualScrollerContentSizeChange: {};
587
+ virtualScrollerContentSizeChange: {
588
+ params: {
589
+ columnsTotalWidth: number;
590
+ contentHeight: number;
591
+ };
592
+ };
587
593
  /**
588
594
  * Fired when the content is scrolled by the mouse wheel.
589
595
  * It's attached to the "mousewheel" event.
@@ -0,0 +1,95 @@
1
+ type Ref<T = HTMLElement> = React.RefCallback<T | null> | React.RefObject<T | null> | null;
2
+ export type BadgeProps = {
3
+ badgeContent?: React.ReactNode;
4
+ children: React.ReactNode;
5
+ color?: 'primary' | 'default' | 'error';
6
+ invisible?: boolean;
7
+ overlap?: 'circular';
8
+ variant?: 'dot';
9
+ style?: React.CSSProperties;
10
+ };
11
+ export type ButtonProps = {
12
+ ref?: Ref;
13
+ children?: React.ReactNode;
14
+ className?: string;
15
+ disabled?: boolean;
16
+ id?: string;
17
+ onClick?: React.MouseEventHandler<HTMLElement>;
18
+ onKeyDown?: React.KeyboardEventHandler<HTMLElement>;
19
+ role?: string;
20
+ size?: 'small' | 'medium' | 'large';
21
+ startIcon?: React.ReactNode;
22
+ style?: React.CSSProperties;
23
+ tabIndex?: number;
24
+ title?: string;
25
+ touchRippleRef?: any;
26
+ };
27
+ export type IconButtonProps = Omit<ButtonProps, 'startIcon'> & {
28
+ label?: string;
29
+ color?: 'default' | 'inherit' | 'primary';
30
+ edge?: 'start' | 'end' | false;
31
+ };
32
+ export type DividerProps = {};
33
+ export type MenuItemProps = {
34
+ autoFocus?: boolean;
35
+ children?: React.ReactNode;
36
+ /** For items that aren't interactive themselves (but may contain an interactive widget) */
37
+ inert?: boolean;
38
+ disabled?: boolean;
39
+ onClick?: React.MouseEventHandler<HTMLElement>;
40
+ iconStart?: React.ReactNode;
41
+ iconEnd?: React.ReactNode;
42
+ selected?: boolean;
43
+ value?: number | string | readonly string[];
44
+ style?: React.CSSProperties;
45
+ };
46
+ export type CircularProgressProps = {
47
+ /**
48
+ * Pixels or CSS value.
49
+ * @default 40
50
+ */
51
+ size?: number | string;
52
+ /** @default 'primary' */
53
+ color?: 'inherit' | 'primary';
54
+ };
55
+ export type LinearProgressProps = {};
56
+ export type SkeletonProps = {
57
+ variant?: 'circular' | 'text';
58
+ width?: number | string;
59
+ height?: number | string;
60
+ };
61
+ export type TextFieldProps = {
62
+ autoComplete?: string;
63
+ className?: string;
64
+ color?: 'primary' | 'error';
65
+ disabled?: boolean;
66
+ error?: boolean;
67
+ fullWidth?: boolean;
68
+ helperText?: string | null;
69
+ id?: string;
70
+ inputRef?: React.Ref<HTMLInputElement>;
71
+ label?: React.ReactNode;
72
+ onChange?: React.ChangeEventHandler;
73
+ onKeyDown?: React.KeyboardEventHandler;
74
+ placeholder?: string;
75
+ size?: 'small' | 'medium';
76
+ slotProps?: {
77
+ input?: {
78
+ disabled?: boolean;
79
+ endAdornment?: React.ReactNode;
80
+ startAdornment?: React.ReactNode;
81
+ };
82
+ inputLabel?: {};
83
+ htmlInput?: React.InputHTMLAttributes<HTMLInputElement>;
84
+ };
85
+ style?: React.CSSProperties;
86
+ tabIndex?: number;
87
+ type?: React.HTMLInputTypeAttribute;
88
+ value?: string;
89
+ };
90
+ export type TooltipProps = {
91
+ children: React.ReactElement<any, any>;
92
+ enterDelay?: number;
93
+ title: React.ReactNode;
94
+ };
95
+ export {};
@@ -5,7 +5,7 @@ export interface GridGetRowsParams {
5
5
  /**
6
6
  * Alternate to `start` and `end`, maps to `GridPaginationModel` interface.
7
7
  */
8
- paginationModel: GridPaginationModel;
8
+ paginationModel?: GridPaginationModel;
9
9
  /**
10
10
  * First row index to fetch (number) or cursor information (number | string).
11
11
  */
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import { RefObject } from '@mui/x-internals/types';
2
2
  import { GridRowId } from './gridRows';
3
3
  import type { GridApiCommon } from './api';
4
4
  import type { GridApiCommunity } from './api/gridApiCommunity';
@@ -49,7 +49,7 @@ export interface GridGetRowsToExportParams<Api extends GridApiCommon = GridApiCo
49
49
  /**
50
50
  * The API of the grid.
51
51
  */
52
- apiRef: React.MutableRefObject<Api>;
52
+ apiRef: RefObject<Api>;
53
53
  }
54
54
  export interface GridCsvGetRowsToExportParams<Api extends GridApiCommon = GridApiCommunity> extends GridGetRowsToExportParams<Api> {
55
55
  }
@@ -0,0 +1,32 @@
1
+ import * as React from 'react';
2
+ import { RefObject } from '@mui/x-internals/types';
3
+ import { GridFilterItem } from './gridFilterItem';
4
+ import type { GridApiCommon } from './api/gridApiCommon';
5
+ import type { GridApiCommunity } from './api/gridApiCommunity';
6
+ export type GridFilterInputSlotProps = {
7
+ size?: 'small' | 'medium';
8
+ label?: React.ReactNode;
9
+ placeholder?: string;
10
+ };
11
+ export type GridFilterInputValueProps<T extends GridFilterInputSlotProps = GridFilterInputSlotProps, Api extends GridApiCommon = GridApiCommunity> = {
12
+ item: GridFilterItem;
13
+ applyValue: (value: GridFilterItem) => void;
14
+ apiRef: RefObject<Api>;
15
+ inputRef?: React.Ref<HTMLElement | null>;
16
+ focusElementRef?: React.Ref<any>;
17
+ headerFilterMenu?: React.ReactNode;
18
+ clearButton?: React.ReactNode | null;
19
+ /**
20
+ * It is `true` if the filter either has a value or an operator with no value
21
+ * required is selected (for example `isEmpty`)
22
+ */
23
+ isFilterActive?: boolean;
24
+ onFocus?: React.FocusEventHandler;
25
+ onBlur?: React.FocusEventHandler;
26
+ tabIndex?: number;
27
+ disabled?: boolean;
28
+ className?: string;
29
+ slotProps?: {
30
+ root: T;
31
+ };
32
+ };
@@ -1,16 +1,18 @@
1
1
  import * as React from 'react';
2
+ import { RefObject } from '@mui/x-internals/types';
2
3
  import { GridFilterItem } from './gridFilterItem';
3
4
  import type { GridColDef } from './colDef/gridColDef';
4
5
  import type { GridValidRowModel } from './gridRows';
5
6
  import type { GridApiCommunity } from './api/gridApiCommunity';
6
- type ApplyFilterFn<R extends GridValidRowModel = any, V = any, F = V> = (value: V, row: R, column: GridColDef<R, V, F>, apiRef: React.MutableRefObject<GridApiCommunity>) => boolean;
7
+ import type { GridFilterInputValueProps } from './gridFilterInputComponent';
8
+ type ApplyFilterFn<R extends GridValidRowModel = any, V = any, F = V> = (value: V, row: R, column: GridColDef<R, V, F>, apiRef: RefObject<GridApiCommunity>) => boolean;
7
9
  export type GetApplyFilterFn<R extends GridValidRowModel = any, V = any, F = V> = (filterItem: GridFilterItem, column: GridColDef<R, V, F>) => null | ApplyFilterFn<R, V, F>;
8
10
  /**
9
11
  * Filter operator definition interface.
10
12
  * @demos
11
13
  * - [Custom filter operator](/x/react-data-grid/filtering/customization/#create-a-custom-operator)
12
14
  */
13
- export interface GridFilterOperator<R extends GridValidRowModel = any, V = any, F = V> {
15
+ export interface GridFilterOperator<R extends GridValidRowModel = any, V = any, F = V, I extends GridFilterInputValueProps<any> = GridFilterInputValueProps> {
14
16
  /**
15
17
  * The label of the filter operator.
16
18
  */
@@ -35,11 +37,11 @@ export interface GridFilterOperator<R extends GridValidRowModel = any, V = any,
35
37
  /**
36
38
  * The input component to render in the filter panel for this filter operator.
37
39
  */
38
- InputComponent?: React.JSXElementConstructor<any>;
40
+ InputComponent?: React.JSXElementConstructor<I>;
39
41
  /**
40
42
  * The props to pass to the input component in the filter panel for this filter operator.
41
43
  */
42
- InputComponentProps?: Record<string, any>;
44
+ InputComponentProps?: Partial<I>;
43
45
  /**
44
46
  * Converts the value of a filter item to a human-readable form.
45
47
  * @param {GridFilterItem['value']} value The filter item value.
@@ -178,4 +178,9 @@ export interface GridIconSlotsComponent {
178
178
  * @default GridDragIcon
179
179
  */
180
180
  columnReorderIcon: React.JSXElementConstructor<any>;
181
+ /**
182
+ * Icon displayed to indicate that a menu item is selected.
183
+ * @default GridCheckIcon
184
+ */
185
+ menuItemCheckIcon: React.JSXElementConstructor<any>;
181
186
  }
@@ -13,6 +13,11 @@ export interface GridBaseSlots {
13
13
  * @default Checkbox
14
14
  */
15
15
  baseCheckbox: React.JSXElementConstructor<GridSlotProps['baseCheckbox']>;
16
+ /**
17
+ * The custom CircularProgress component used in the grid.
18
+ * @default CircularProgress
19
+ */
20
+ baseCircularProgress: React.JSXElementConstructor<GridSlotProps['baseCircularProgress']>;
16
21
  /**
17
22
  * The custom Chip component used in the grid.
18
23
  * @default Chip
@@ -23,6 +28,11 @@ export interface GridBaseSlots {
23
28
  * @default Divider
24
29
  */
25
30
  baseDivider: React.JSXElementConstructor<GridSlotProps['baseDivider']>;
31
+ /**
32
+ * The custom LinearProgress component used in the grid.
33
+ * @default LinearProgress
34
+ */
35
+ baseLinearProgress: React.JSXElementConstructor<GridSlotProps['baseLinearProgress']>;
26
36
  /**
27
37
  * The custom MenuList component used in the grid.
28
38
  * @default MenuList
@@ -80,9 +90,14 @@ export interface GridBaseSlots {
80
90
  baseInputLabel: React.JSXElementConstructor<GridSlotProps['baseInputLabel']>;
81
91
  /**
82
92
  * The custom SelectOption component used in the grid.
83
- * @default MenuItem
93
+ * @default SelectOption
84
94
  */
85
95
  baseSelectOption: React.JSXElementConstructor<GridSlotProps['baseSelectOption']>;
96
+ /**
97
+ * The custom Skeleton component used in the grid.
98
+ * @default Skeleton
99
+ */
100
+ baseSkeleton: React.JSXElementConstructor<GridSlotProps['baseSkeleton']>;
86
101
  }
87
102
  /**
88
103
  * Grid components React prop interface containing all the overridable components.
@@ -1,16 +1,17 @@
1
1
  import * as React from 'react';
2
- import type { BadgeProps } from '@mui/material/Badge';
2
+ import type { BadgeProps as MUIBadgeProps } from '@mui/material/Badge';
3
+ import type { ButtonProps as MUIButtonProps } from '@mui/material/Button';
3
4
  import type { CheckboxProps } from '@mui/material/Checkbox';
5
+ import type { CircularProgressProps as MUICircularProgressProps } from '@mui/material/CircularProgress';
6
+ import type { LinearProgressProps as MUILinearProgressProps } from '@mui/material/LinearProgress';
4
7
  import type { MenuListProps } from '@mui/material/MenuList';
5
- import type { MenuItemProps } from '@mui/material/MenuItem';
6
- import type { TextFieldProps } from '@mui/material/TextField';
8
+ import type { MenuItemProps as MUIMenuItemProps } from '@mui/material/MenuItem';
7
9
  import type { FormControlProps } from '@mui/material/FormControl';
8
10
  import type { SelectProps } from '@mui/material/Select';
9
11
  import type { SwitchProps } from '@mui/material/Switch';
10
- import type { ButtonProps } from '@mui/material/Button';
11
- import type { IconButtonProps } from '@mui/material/IconButton';
12
+ import type { IconButtonProps as MUIIconButtonProps } from '@mui/material/IconButton';
12
13
  import type { InputAdornmentProps } from '@mui/material/InputAdornment';
13
- import type { TooltipProps } from '@mui/material/Tooltip';
14
+ import type { TooltipProps as MUITooltipProps } from '@mui/material/Tooltip';
14
15
  import type { InputLabelProps } from '@mui/material/InputLabel';
15
16
  import type { PopperProps } from '@mui/material/Popper';
16
17
  import type { TablePaginationProps } from '@mui/material/TablePagination';
@@ -33,13 +34,19 @@ import type { GridColumnsManagementProps } from '../components/columnsManagement
33
34
  import type { GridLoadingOverlayProps } from '../components/GridLoadingOverlay';
34
35
  import type { GridRowCountProps } from '../components/GridRowCount';
35
36
  import type { GridColumnHeaderSortIconProps } from '../components/columnHeaders/GridColumnHeaderSortIcon';
36
- type DividerProps = {};
37
+ import type { BadgeProps, ButtonProps, CircularProgressProps, DividerProps, IconButtonProps, LinearProgressProps, MenuItemProps, SkeletonProps, TooltipProps, TextFieldProps } from './gridBaseSlots';
38
+ type RootProps = React.HTMLAttributes<HTMLDivElement> & Record<`data-${string}`, string>;
39
+ type MainProps = React.HTMLAttributes<HTMLDivElement> & Record<`data-${string}`, string>;
37
40
  export interface BaseBadgePropsOverrides {
38
41
  }
39
42
  export interface BaseCheckboxPropsOverrides {
40
43
  }
44
+ export interface BaseCircularProgressPropsOverrides {
45
+ }
41
46
  export interface BaseDividerPropsOverrides {
42
47
  }
48
+ export interface BaseLinearProgressPropsOverrides {
49
+ }
43
50
  export interface BaseMenuListPropsOverrides {
44
51
  }
45
52
  export interface BaseMenuItemPropsOverrides {
@@ -66,6 +73,8 @@ export interface BaseInputLabelPropsOverrides {
66
73
  }
67
74
  export interface BaseSelectOptionPropsOverrides {
68
75
  }
76
+ export interface BaseSkeletonPropsOverrides {
77
+ }
69
78
  export interface BaseChipPropsOverrides {
70
79
  }
71
80
  export interface CellPropsOverrides {
@@ -106,10 +115,12 @@ export interface SkeletonCellPropsOverrides {
106
115
  }
107
116
  export interface RowPropsOverrides {
108
117
  }
109
- export interface GridSlotProps {
118
+ interface BaseSlotProps {
110
119
  baseBadge: BadgeProps & BaseBadgePropsOverrides;
111
120
  baseCheckbox: CheckboxProps & BaseCheckboxPropsOverrides;
121
+ baseCircularProgress: CircularProgressProps & BaseCircularProgressPropsOverrides;
112
122
  baseDivider: DividerProps & BaseDividerPropsOverrides;
123
+ baseLinearProgress: LinearProgressProps & BaseLinearProgressPropsOverrides;
113
124
  baseMenuList: MenuListProps & BaseMenuListPropsOverrides;
114
125
  baseMenuItem: MenuItemProps & BaseMenuItemPropsOverrides;
115
126
  baseTextField: TextFieldProps & BaseTextFieldPropsOverrides;
@@ -127,7 +138,19 @@ export interface GridSlotProps {
127
138
  value: any;
128
139
  children?: React.ReactNode;
129
140
  } & BaseSelectOptionPropsOverrides;
141
+ baseSkeleton: SkeletonProps & BaseSkeletonPropsOverrides;
130
142
  baseChip: ChipProps & BaseChipPropsOverrides;
143
+ }
144
+ interface MaterialSlotProps {
145
+ baseBadge: MUIBadgeProps;
146
+ baseButton: MUIButtonProps;
147
+ baseIconButton: MUIIconButtonProps;
148
+ baseLinearProgress: MUILinearProgressProps;
149
+ baseCircularProgress: MUICircularProgressProps;
150
+ baseMenuItem: MUIMenuItemProps;
151
+ baseTooltip: MUITooltipProps;
152
+ }
153
+ interface ElementSlotProps {
131
154
  cell: GridCellProps & CellPropsOverrides;
132
155
  columnHeaders: GridColumnHeadersProps;
133
156
  columnHeaderFilterIconButton: ColumnHeaderFilterIconButtonProps & ColumnHeaderFilterIconButtonPropsOverrides;
@@ -148,7 +171,20 @@ export interface GridSlotProps {
148
171
  row: GridRowProps & RowPropsOverrides;
149
172
  skeletonCell: GridSkeletonCellProps & SkeletonCellPropsOverrides;
150
173
  toolbar: GridToolbarProps & ToolbarPropsOverrides;
151
- }
174
+ /**
175
+ * Props passed to the `.main` (role="grid") element.
176
+ */
177
+ main: MainProps;
178
+ /**
179
+ * Props passed to the `.root` element.
180
+ */
181
+ root: RootProps;
182
+ }
183
+ type Select<A, B, K> = K extends keyof A ? A[K] : K extends keyof B ? B[K] : never;
184
+ type Merge<A, B> = {
185
+ [K in keyof A | keyof B]: K extends 'ref' ? Select<A, B, 'ref'> : K extends keyof A & keyof B ? A[K] & B[K] : K extends keyof B ? B[K] : K extends keyof A ? A[K] : never;
186
+ };
187
+ export type GridSlotProps = Merge<BaseSlotProps, MaterialSlotProps> & ElementSlotProps;
152
188
  /**
153
189
  * Overridable components props dynamically passed to the component at rendering.
154
190
  */
@@ -45,4 +45,8 @@ export interface GridInitialStateCommunity {
45
45
  columns?: GridColumnsInitialState;
46
46
  preferencePanel?: GridPreferencePanelInitialState;
47
47
  density?: GridDensityState;
48
+ scroll?: {
49
+ top: number;
50
+ left: number;
51
+ };
48
52
  }
package/models/index.d.ts CHANGED
@@ -5,6 +5,7 @@ export * from './gridEditRowModel';
5
5
  export * from './gridFeatureMode';
6
6
  export * from './gridFilterItem';
7
7
  export * from './gridFilterModel';
8
+ export type { GridFilterInputValueProps } from './gridFilterInputComponent';
8
9
  export * from './gridPaginationProps';
9
10
  export * from './gridRenderContextProps';
10
11
  export * from './gridRows';