@mui/x-data-grid 7.0.0-alpha.7 → 7.0.0-alpha.9

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 (501) hide show
  1. package/CHANGELOG.md +554 -51
  2. package/DataGrid/DataGrid.js +15 -27
  3. package/DataGrid/useDataGridComponent.js +2 -1
  4. package/DataGrid/useDataGridProps.js +1 -0
  5. package/README.md +1 -1
  6. package/colDef/gridDateColDef.js +1 -1
  7. package/components/GridColumnHeaders.d.ts +3 -2
  8. package/components/GridColumnHeaders.js +3 -11
  9. package/components/GridDetailPanels.d.ts +5 -0
  10. package/components/GridDetailPanels.js +4 -0
  11. package/components/GridHeaders.d.ts +4 -0
  12. package/components/GridHeaders.js +53 -0
  13. package/components/GridPagination.d.ts +4 -4
  14. package/components/GridPagination.js +1 -1
  15. package/components/GridPinnedRows.d.ts +7 -0
  16. package/components/GridPinnedRows.js +4 -0
  17. package/components/GridRow.d.ts +7 -4
  18. package/components/GridRow.js +260 -97
  19. package/components/GridScrollbarFillerCell.d.ts +7 -0
  20. package/components/GridScrollbarFillerCell.js +39 -0
  21. package/components/base/GridBody.d.ts +2 -13
  22. package/components/base/GridBody.js +2 -116
  23. package/components/base/GridOverlays.js +10 -21
  24. package/components/cell/GridActionsCell.js +1 -1
  25. package/components/cell/GridActionsCellItem.d.ts +6 -6
  26. package/components/cell/GridCell.d.ts +15 -21
  27. package/components/cell/GridCell.js +68 -373
  28. package/components/columnHeaders/GridBaseColumnHeaders.js +1 -6
  29. package/components/columnHeaders/GridColumnHeaderItem.d.ts +2 -1
  30. package/components/columnHeaders/GridColumnHeaderItem.js +7 -3
  31. package/components/columnHeaders/GridColumnHeaderSortIcon.d.ts +1 -0
  32. package/components/columnHeaders/GridColumnHeaderSortIcon.js +5 -2
  33. package/components/columnHeaders/GridColumnHeadersInner.js +1 -2
  34. package/components/containers/GridRoot.js +18 -15
  35. package/components/containers/GridRootStyles.js +307 -204
  36. package/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +1 -1
  37. package/components/panel/GridPanel.d.ts +3 -3
  38. package/components/panel/GridPanel.js +3 -4
  39. package/components/panel/filterPanel/GridFilterForm.d.ts +6 -4
  40. package/components/panel/filterPanel/GridFilterForm.js +32 -15
  41. package/components/panel/filterPanel/GridFilterPanel.js +46 -20
  42. package/components/toolbar/GridToolbarColumnsButton.d.ts +13 -1
  43. package/components/toolbar/GridToolbarColumnsButton.js +40 -22
  44. package/components/toolbar/GridToolbarDensitySelector.d.ts +13 -1
  45. package/components/toolbar/GridToolbarDensitySelector.js +40 -22
  46. package/components/toolbar/GridToolbarExport.d.ts +10 -1
  47. package/components/toolbar/GridToolbarExport.js +6 -1
  48. package/components/toolbar/GridToolbarExportContainer.d.ts +15 -1
  49. package/components/toolbar/GridToolbarExportContainer.js +41 -23
  50. package/components/toolbar/GridToolbarFilterButton.d.ts +5 -4
  51. package/components/toolbar/GridToolbarFilterButton.js +6 -10
  52. package/components/toolbar/GridToolbarQuickFilter.d.ts +4 -0
  53. package/components/toolbar/GridToolbarQuickFilter.js +4 -0
  54. package/components/virtualization/GridBottomContainer.d.ts +2 -0
  55. package/components/virtualization/GridBottomContainer.js +25 -0
  56. package/components/{containers → virtualization}/GridMainContainer.d.ts +2 -0
  57. package/components/virtualization/GridMainContainer.js +20 -0
  58. package/components/virtualization/GridTopContainer.d.ts +2 -0
  59. package/components/virtualization/GridTopContainer.js +35 -0
  60. package/components/virtualization/GridVirtualScrollbar.d.ts +7 -0
  61. package/components/virtualization/GridVirtualScrollbar.js +131 -0
  62. package/components/virtualization/GridVirtualScroller.d.ts +4 -4
  63. package/components/virtualization/GridVirtualScroller.js +69 -16
  64. package/components/virtualization/GridVirtualScrollerFiller.d.ts +4 -0
  65. package/components/virtualization/GridVirtualScrollerFiller.js +71 -0
  66. package/components/virtualization/GridVirtualScrollerRenderZone.js +2 -1
  67. package/constants/defaultGridSlotsComponents.js +6 -2
  68. package/constants/gridClasses.d.ts +60 -8
  69. package/constants/gridClasses.js +1 -1
  70. package/hooks/core/gridCoreSelector.d.ts +6 -0
  71. package/hooks/core/gridCoreSelector.js +5 -0
  72. package/hooks/core/useGridInitialization.js +4 -0
  73. package/hooks/core/useGridLoggerFactory.js +2 -2
  74. package/hooks/core/useGridRefs.d.ts +3 -0
  75. package/hooks/core/useGridRefs.js +13 -0
  76. package/hooks/core/useGridTheme.d.ts +3 -0
  77. package/hooks/core/useGridTheme.js +19 -0
  78. package/hooks/features/columnGrouping/gridColumnGroupsUtils.js +1 -1
  79. package/hooks/features/columnGrouping/useGridColumnGrouping.d.ts +1 -1
  80. package/hooks/features/columnGrouping/useGridColumnGrouping.js +13 -18
  81. package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +13 -18
  82. package/hooks/features/columnHeaders/useGridColumnHeaders.js +68 -162
  83. package/hooks/features/columnMenu/useGridColumnMenu.js +28 -23
  84. package/hooks/features/columns/gridColumnsInterfaces.d.ts +17 -0
  85. package/hooks/features/columns/gridColumnsInterfaces.js +9 -1
  86. package/hooks/features/columns/gridColumnsSelector.d.ts +14 -1
  87. package/hooks/features/columns/gridColumnsSelector.js +52 -0
  88. package/hooks/features/columns/gridColumnsUtils.d.ts +1 -5
  89. package/hooks/features/columns/gridColumnsUtils.js +10 -12
  90. package/hooks/features/columns/index.d.ts +2 -2
  91. package/hooks/features/columns/index.js +2 -1
  92. package/hooks/features/columns/useGridColumnSpanning.js +62 -61
  93. package/hooks/features/columns/useGridColumns.js +20 -23
  94. package/hooks/features/dimensions/gridDimensionsApi.d.ts +60 -11
  95. package/hooks/features/dimensions/gridDimensionsSelectors.d.ts +2 -0
  96. package/hooks/features/dimensions/gridDimensionsSelectors.js +1 -0
  97. package/hooks/features/dimensions/index.d.ts +2 -0
  98. package/hooks/features/dimensions/index.js +1 -0
  99. package/hooks/features/dimensions/useGridDimensions.d.ts +7 -1
  100. package/hooks/features/dimensions/useGridDimensions.js +216 -148
  101. package/hooks/features/editing/useGridCellEditing.js +4 -4
  102. package/hooks/features/editing/useGridRowEditing.js +4 -4
  103. package/hooks/features/export/serializers/csvSerializer.js +3 -3
  104. package/hooks/features/export/useGridPrintExport.js +1 -1
  105. package/hooks/features/filter/gridFilterUtils.js +5 -5
  106. package/hooks/features/filter/useGridFilter.js +3 -3
  107. package/hooks/features/focus/gridFocusStateSelector.d.ts +2 -2
  108. package/hooks/features/focus/gridFocusStateSelector.js +2 -6
  109. package/hooks/features/focus/useGridFocus.js +3 -3
  110. package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +3 -16
  111. package/hooks/features/pagination/gridPaginationUtils.js +2 -2
  112. package/hooks/features/pagination/useGridPagination.js +3 -5
  113. package/hooks/features/rowSelection/useGridRowSelection.js +1 -1
  114. package/hooks/features/rows/gridRowsInterfaces.d.ts +1 -0
  115. package/hooks/features/rows/gridRowsSelector.d.ts +2 -2
  116. package/hooks/features/rows/gridRowsSelector.js +5 -5
  117. package/hooks/features/rows/gridRowsUtils.d.ts +1 -1
  118. package/hooks/features/rows/gridRowsUtils.js +6 -6
  119. package/hooks/features/rows/useGridRows.js +7 -7
  120. package/hooks/features/rows/useGridRowsMeta.js +9 -6
  121. package/hooks/features/scroll/useGridScroll.js +8 -10
  122. package/hooks/features/sorting/gridSortingUtils.js +5 -3
  123. package/hooks/features/sorting/useGridSorting.d.ts +1 -1
  124. package/hooks/features/sorting/useGridSorting.js +15 -10
  125. package/hooks/features/virtualization/gridVirtualizationSelectors.d.ts +14 -0
  126. package/hooks/features/virtualization/gridVirtualizationSelectors.js +22 -2
  127. package/hooks/features/virtualization/useGridVirtualScroller.d.ts +27 -42
  128. package/hooks/features/virtualization/useGridVirtualScroller.js +441 -438
  129. package/hooks/features/virtualization/useGridVirtualization.d.ts +8 -0
  130. package/hooks/features/virtualization/useGridVirtualization.js +8 -1
  131. package/hooks/utils/index.d.ts +3 -0
  132. package/hooks/utils/index.js +4 -1
  133. package/hooks/utils/useGridApiContext.js +1 -1
  134. package/hooks/utils/useGridAriaAttributes.js +1 -2
  135. package/hooks/utils/useGridNativeEventListener.js +4 -9
  136. package/hooks/utils/useGridPrivateApiContext.js +1 -1
  137. package/hooks/utils/useGridRootProps.js +1 -1
  138. package/hooks/utils/useGridSelector.js +1 -1
  139. package/hooks/utils/useResizeObserver.d.ts +2 -0
  140. package/hooks/utils/useResizeObserver.js +36 -0
  141. package/hooks/utils/useRunOnce.d.ts +5 -0
  142. package/hooks/utils/useRunOnce.js +18 -0
  143. package/index.d.ts +0 -1
  144. package/index.js +1 -2
  145. package/internals/index.d.ts +13 -9
  146. package/internals/index.js +9 -7
  147. package/internals/utils/index.d.ts +1 -0
  148. package/internals/utils/index.js +2 -1
  149. package/internals/utils/propValidation.d.ts +4 -0
  150. package/internals/utils/propValidation.js +19 -0
  151. package/legacy/DataGrid/DataGrid.js +20 -29
  152. package/legacy/DataGrid/useDataGridComponent.js +2 -1
  153. package/legacy/DataGrid/useDataGridProps.js +1 -0
  154. package/legacy/colDef/gridDateColDef.js +1 -1
  155. package/legacy/components/GridColumnHeaders.js +3 -11
  156. package/legacy/components/GridDetailPanels.js +4 -0
  157. package/legacy/components/GridHeaders.js +53 -0
  158. package/legacy/components/GridPagination.js +1 -1
  159. package/legacy/components/GridPinnedRows.js +4 -0
  160. package/legacy/components/GridRow.js +258 -98
  161. package/legacy/components/GridScrollbarFillerCell.js +36 -0
  162. package/legacy/components/base/GridBody.js +2 -114
  163. package/legacy/components/base/GridOverlays.js +10 -25
  164. package/legacy/components/cell/GridActionsCell.js +1 -1
  165. package/legacy/components/cell/GridCell.js +70 -378
  166. package/legacy/components/columnHeaders/GridBaseColumnHeaders.js +1 -6
  167. package/legacy/components/columnHeaders/GridColumnHeaderItem.js +7 -3
  168. package/legacy/components/columnHeaders/GridColumnHeaderSortIcon.js +5 -2
  169. package/legacy/components/columnHeaders/GridColumnHeadersInner.js +1 -2
  170. package/legacy/components/containers/GridRoot.js +18 -15
  171. package/legacy/components/containers/GridRootStyles.js +215 -137
  172. package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +1 -1
  173. package/legacy/components/panel/GridPanel.js +3 -4
  174. package/legacy/components/panel/filterPanel/GridFilterForm.js +31 -14
  175. package/legacy/components/panel/filterPanel/GridFilterPanel.js +49 -20
  176. package/legacy/components/toolbar/GridToolbarColumnsButton.js +40 -21
  177. package/legacy/components/toolbar/GridToolbarDensitySelector.js +40 -21
  178. package/legacy/components/toolbar/GridToolbarExport.js +6 -1
  179. package/legacy/components/toolbar/GridToolbarExportContainer.js +40 -21
  180. package/legacy/components/toolbar/GridToolbarFilterButton.js +6 -10
  181. package/legacy/components/toolbar/GridToolbarQuickFilter.js +4 -0
  182. package/legacy/components/virtualization/GridBottomContainer.js +25 -0
  183. package/legacy/components/virtualization/GridMainContainer.js +20 -0
  184. package/legacy/components/virtualization/GridTopContainer.js +35 -0
  185. package/legacy/components/virtualization/GridVirtualScrollbar.js +129 -0
  186. package/legacy/components/virtualization/GridVirtualScroller.js +67 -16
  187. package/legacy/components/virtualization/GridVirtualScrollerFiller.js +70 -0
  188. package/legacy/components/virtualization/GridVirtualScrollerRenderZone.js +2 -1
  189. package/legacy/constants/defaultGridSlotsComponents.js +6 -2
  190. package/legacy/constants/gridClasses.js +1 -1
  191. package/legacy/hooks/core/gridCoreSelector.js +7 -0
  192. package/legacy/hooks/core/useGridInitialization.js +4 -0
  193. package/legacy/hooks/core/useGridLoggerFactory.js +2 -2
  194. package/legacy/hooks/core/useGridRefs.js +13 -0
  195. package/legacy/hooks/core/useGridTheme.js +21 -0
  196. package/legacy/hooks/features/columnGrouping/gridColumnGroupsUtils.js +1 -1
  197. package/legacy/hooks/features/columnGrouping/useGridColumnGrouping.js +13 -18
  198. package/legacy/hooks/features/columnHeaders/useGridColumnHeaders.js +69 -181
  199. package/legacy/hooks/features/columnMenu/useGridColumnMenu.js +28 -23
  200. package/legacy/hooks/features/columns/gridColumnsInterfaces.js +9 -1
  201. package/legacy/hooks/features/columns/gridColumnsSelector.js +62 -0
  202. package/legacy/hooks/features/columns/gridColumnsUtils.js +10 -16
  203. package/legacy/hooks/features/columns/index.js +2 -1
  204. package/legacy/hooks/features/columns/useGridColumnSpanning.js +60 -59
  205. package/legacy/hooks/features/columns/useGridColumns.js +22 -23
  206. package/legacy/hooks/features/dimensions/gridDimensionsSelectors.js +3 -0
  207. package/legacy/hooks/features/dimensions/index.js +1 -0
  208. package/legacy/hooks/features/dimensions/useGridDimensions.js +226 -151
  209. package/legacy/hooks/features/editing/useGridCellEditing.js +4 -4
  210. package/legacy/hooks/features/editing/useGridRowEditing.js +4 -4
  211. package/legacy/hooks/features/export/serializers/csvSerializer.js +3 -3
  212. package/legacy/hooks/features/export/useGridPrintExport.js +1 -1
  213. package/legacy/hooks/features/filter/gridFilterUtils.js +5 -5
  214. package/legacy/hooks/features/filter/useGridFilter.js +3 -3
  215. package/legacy/hooks/features/focus/gridFocusStateSelector.js +2 -6
  216. package/legacy/hooks/features/focus/useGridFocus.js +3 -3
  217. package/legacy/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +3 -16
  218. package/legacy/hooks/features/pagination/gridPaginationUtils.js +2 -2
  219. package/legacy/hooks/features/pagination/useGridPagination.js +3 -5
  220. package/legacy/hooks/features/rowSelection/useGridRowSelection.js +1 -1
  221. package/legacy/hooks/features/rows/gridRowsSelector.js +5 -5
  222. package/legacy/hooks/features/rows/gridRowsUtils.js +6 -6
  223. package/legacy/hooks/features/rows/useGridParamsApi.js +4 -5
  224. package/legacy/hooks/features/rows/useGridRows.js +7 -7
  225. package/legacy/hooks/features/rows/useGridRowsMeta.js +9 -6
  226. package/legacy/hooks/features/scroll/useGridScroll.js +8 -10
  227. package/legacy/hooks/features/sorting/gridSortingUtils.js +5 -3
  228. package/legacy/hooks/features/sorting/useGridSorting.js +15 -10
  229. package/legacy/hooks/features/virtualization/gridVirtualizationSelectors.js +29 -1
  230. package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +490 -483
  231. package/legacy/hooks/features/virtualization/useGridVirtualization.js +8 -1
  232. package/legacy/hooks/utils/index.js +4 -1
  233. package/legacy/hooks/utils/useGridApiContext.js +1 -1
  234. package/legacy/hooks/utils/useGridAriaAttributes.js +1 -2
  235. package/legacy/hooks/utils/useGridNativeEventListener.js +4 -9
  236. package/legacy/hooks/utils/useGridPrivateApiContext.js +1 -1
  237. package/legacy/hooks/utils/useGridRootProps.js +1 -1
  238. package/legacy/hooks/utils/useGridSelector.js +1 -1
  239. package/legacy/hooks/utils/useResizeObserver.js +36 -0
  240. package/legacy/hooks/utils/useRunOnce.js +18 -0
  241. package/legacy/index.js +1 -2
  242. package/legacy/internals/index.js +9 -7
  243. package/legacy/internals/utils/index.js +2 -1
  244. package/legacy/internals/utils/propValidation.js +21 -0
  245. package/legacy/locales/hrHR.js +161 -0
  246. package/legacy/locales/index.js +4 -1
  247. package/legacy/locales/ptPT.js +161 -0
  248. package/legacy/locales/zhHK.js +161 -0
  249. package/legacy/models/index.js +0 -1
  250. package/legacy/models/params/index.js +1 -2
  251. package/legacy/utils/createSelector.js +1 -1
  252. package/legacy/utils/exportAs.js +1 -1
  253. package/legacy/utils/utils.js +10 -1
  254. package/locales/hrHR.d.ts +1 -0
  255. package/locales/hrHR.js +149 -0
  256. package/locales/index.d.ts +3 -0
  257. package/locales/index.js +4 -1
  258. package/locales/ptPT.d.ts +1 -0
  259. package/locales/ptPT.js +149 -0
  260. package/locales/zhHK.d.ts +1 -0
  261. package/locales/zhHK.js +149 -0
  262. package/models/api/gridColumnGroupingApi.d.ts +2 -2
  263. package/models/api/gridCoreApi.d.ts +16 -16
  264. package/models/api/gridRowsMetaApi.d.ts +1 -1
  265. package/models/api/gridVirtualizationApi.d.ts +2 -3
  266. package/models/events/gridEventLookup.d.ts +3 -3
  267. package/models/gridFilterModel.d.ts +1 -1
  268. package/models/gridSlotsComponent.d.ts +16 -2
  269. package/models/gridStateCommunity.d.ts +5 -1
  270. package/models/index.d.ts +0 -1
  271. package/models/index.js +0 -1
  272. package/models/params/index.d.ts +0 -1
  273. package/models/params/index.js +1 -2
  274. package/models/props/DataGridProps.d.ts +7 -12
  275. package/modern/DataGrid/DataGrid.js +15 -27
  276. package/modern/DataGrid/useDataGridComponent.js +2 -1
  277. package/modern/DataGrid/useDataGridProps.js +1 -0
  278. package/modern/colDef/gridDateColDef.js +1 -1
  279. package/modern/components/GridColumnHeaders.js +3 -11
  280. package/modern/components/GridDetailPanels.js +4 -0
  281. package/modern/components/GridHeaders.js +53 -0
  282. package/modern/components/GridPagination.js +1 -1
  283. package/modern/components/GridPinnedRows.js +4 -0
  284. package/modern/components/GridRow.js +258 -96
  285. package/modern/components/GridScrollbarFillerCell.js +39 -0
  286. package/modern/components/base/GridBody.js +2 -116
  287. package/modern/components/base/GridOverlays.js +10 -16
  288. package/modern/components/cell/GridActionsCell.js +1 -1
  289. package/modern/components/cell/GridCell.js +66 -370
  290. package/modern/components/columnHeaders/GridBaseColumnHeaders.js +1 -6
  291. package/modern/components/columnHeaders/GridColumnHeaderItem.js +7 -3
  292. package/modern/components/columnHeaders/GridColumnHeaderSortIcon.js +5 -2
  293. package/modern/components/columnHeaders/GridColumnHeadersInner.js +1 -1
  294. package/modern/components/containers/GridRoot.js +18 -14
  295. package/modern/components/containers/GridRootStyles.js +307 -204
  296. package/modern/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +1 -1
  297. package/modern/components/panel/GridPanel.js +3 -4
  298. package/modern/components/panel/filterPanel/GridFilterForm.js +31 -14
  299. package/modern/components/panel/filterPanel/GridFilterPanel.js +46 -20
  300. package/modern/components/toolbar/GridToolbarColumnsButton.js +38 -21
  301. package/modern/components/toolbar/GridToolbarDensitySelector.js +38 -21
  302. package/modern/components/toolbar/GridToolbarExport.js +6 -1
  303. package/modern/components/toolbar/GridToolbarExportContainer.js +39 -22
  304. package/modern/components/toolbar/GridToolbarFilterButton.js +6 -10
  305. package/modern/components/toolbar/GridToolbarQuickFilter.js +4 -0
  306. package/modern/components/virtualization/GridBottomContainer.js +25 -0
  307. package/modern/components/virtualization/GridMainContainer.js +20 -0
  308. package/modern/components/virtualization/GridTopContainer.js +35 -0
  309. package/modern/components/virtualization/GridVirtualScrollbar.js +131 -0
  310. package/modern/components/virtualization/GridVirtualScroller.js +69 -16
  311. package/modern/components/virtualization/GridVirtualScrollerFiller.js +71 -0
  312. package/modern/components/virtualization/GridVirtualScrollerRenderZone.js +2 -1
  313. package/modern/constants/defaultGridSlotsComponents.js +6 -2
  314. package/modern/constants/gridClasses.js +1 -1
  315. package/modern/hooks/core/gridCoreSelector.js +5 -0
  316. package/modern/hooks/core/useGridInitialization.js +4 -0
  317. package/modern/hooks/core/useGridLoggerFactory.js +2 -2
  318. package/modern/hooks/core/useGridRefs.js +13 -0
  319. package/modern/hooks/core/useGridTheme.js +19 -0
  320. package/modern/hooks/features/columnGrouping/gridColumnGroupsUtils.js +1 -1
  321. package/modern/hooks/features/columnGrouping/useGridColumnGrouping.js +11 -16
  322. package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +67 -160
  323. package/modern/hooks/features/columnMenu/useGridColumnMenu.js +28 -23
  324. package/modern/hooks/features/columns/gridColumnsInterfaces.js +9 -1
  325. package/modern/hooks/features/columns/gridColumnsSelector.js +51 -0
  326. package/modern/hooks/features/columns/gridColumnsUtils.js +10 -12
  327. package/modern/hooks/features/columns/index.js +2 -1
  328. package/modern/hooks/features/columns/useGridColumnSpanning.js +62 -61
  329. package/modern/hooks/features/columns/useGridColumns.js +19 -21
  330. package/modern/hooks/features/dimensions/gridDimensionsSelectors.js +1 -0
  331. package/modern/hooks/features/dimensions/index.js +1 -0
  332. package/modern/hooks/features/dimensions/useGridDimensions.js +214 -146
  333. package/modern/hooks/features/editing/useGridCellEditing.js +4 -4
  334. package/modern/hooks/features/editing/useGridRowEditing.js +4 -4
  335. package/modern/hooks/features/export/serializers/csvSerializer.js +3 -3
  336. package/modern/hooks/features/export/useGridPrintExport.js +1 -1
  337. package/modern/hooks/features/filter/gridFilterUtils.js +5 -5
  338. package/modern/hooks/features/filter/useGridFilter.js +3 -3
  339. package/modern/hooks/features/focus/gridFocusStateSelector.js +2 -6
  340. package/modern/hooks/features/focus/useGridFocus.js +3 -3
  341. package/modern/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +3 -16
  342. package/modern/hooks/features/pagination/gridPaginationUtils.js +2 -2
  343. package/modern/hooks/features/pagination/useGridPagination.js +3 -5
  344. package/modern/hooks/features/rowSelection/useGridRowSelection.js +1 -1
  345. package/modern/hooks/features/rows/gridRowsSelector.js +2 -2
  346. package/modern/hooks/features/rows/gridRowsUtils.js +6 -6
  347. package/modern/hooks/features/rows/useGridRows.js +7 -7
  348. package/modern/hooks/features/rows/useGridRowsMeta.js +9 -6
  349. package/modern/hooks/features/scroll/useGridScroll.js +8 -9
  350. package/modern/hooks/features/sorting/gridSortingUtils.js +5 -3
  351. package/modern/hooks/features/sorting/useGridSorting.js +15 -10
  352. package/modern/hooks/features/virtualization/gridVirtualizationSelectors.js +22 -2
  353. package/modern/hooks/features/virtualization/useGridVirtualScroller.js +435 -432
  354. package/modern/hooks/features/virtualization/useGridVirtualization.js +8 -1
  355. package/modern/hooks/utils/index.js +4 -1
  356. package/modern/hooks/utils/useGridApiContext.js +1 -1
  357. package/modern/hooks/utils/useGridAriaAttributes.js +1 -1
  358. package/modern/hooks/utils/useGridNativeEventListener.js +3 -9
  359. package/modern/hooks/utils/useGridPrivateApiContext.js +1 -1
  360. package/modern/hooks/utils/useGridRootProps.js +1 -1
  361. package/modern/hooks/utils/useGridSelector.js +1 -1
  362. package/modern/hooks/utils/useResizeObserver.js +36 -0
  363. package/modern/hooks/utils/useRunOnce.js +18 -0
  364. package/modern/index.js +1 -2
  365. package/modern/internals/index.js +9 -7
  366. package/modern/internals/utils/index.js +2 -1
  367. package/modern/internals/utils/propValidation.js +19 -0
  368. package/modern/locales/hrHR.js +149 -0
  369. package/modern/locales/index.js +4 -1
  370. package/modern/locales/ptPT.js +149 -0
  371. package/modern/locales/zhHK.js +149 -0
  372. package/modern/models/index.js +0 -1
  373. package/modern/models/params/index.js +1 -2
  374. package/modern/utils/createSelector.js +1 -1
  375. package/modern/utils/exportAs.js +1 -1
  376. package/modern/utils/utils.js +10 -1
  377. package/node/DataGrid/DataGrid.js +15 -27
  378. package/node/DataGrid/useDataGridComponent.js +1 -0
  379. package/node/DataGrid/useDataGridProps.js +1 -0
  380. package/node/colDef/gridDateColDef.js +1 -1
  381. package/node/components/GridColumnHeaders.js +3 -11
  382. package/node/components/GridDetailPanels.js +10 -0
  383. package/node/components/GridHeaders.js +60 -0
  384. package/node/components/GridPagination.js +1 -1
  385. package/node/components/GridPinnedRows.js +10 -0
  386. package/node/components/GridRow.js +256 -94
  387. package/node/components/GridScrollbarFillerCell.js +47 -0
  388. package/node/components/base/GridBody.js +7 -118
  389. package/node/components/base/GridOverlays.js +9 -15
  390. package/node/components/cell/GridActionsCell.js +1 -1
  391. package/node/components/cell/GridCell.js +67 -370
  392. package/node/components/columnHeaders/GridBaseColumnHeaders.js +1 -6
  393. package/node/components/columnHeaders/GridColumnHeaderItem.js +8 -4
  394. package/node/components/columnHeaders/GridColumnHeaderSortIcon.js +5 -2
  395. package/node/components/columnHeaders/GridColumnHeadersInner.js +1 -1
  396. package/node/components/containers/GridRoot.js +17 -14
  397. package/node/components/containers/GridRootStyles.js +175 -72
  398. package/node/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +1 -1
  399. package/node/components/panel/GridPanel.js +3 -4
  400. package/node/components/panel/filterPanel/GridFilterForm.js +30 -13
  401. package/node/components/panel/filterPanel/GridFilterPanel.js +45 -19
  402. package/node/components/toolbar/GridToolbarColumnsButton.js +36 -20
  403. package/node/components/toolbar/GridToolbarDensitySelector.js +36 -20
  404. package/node/components/toolbar/GridToolbarExport.js +6 -1
  405. package/node/components/toolbar/GridToolbarExportContainer.js +37 -21
  406. package/node/components/toolbar/GridToolbarFilterButton.js +6 -10
  407. package/node/components/toolbar/GridToolbarQuickFilter.js +4 -0
  408. package/node/components/virtualization/GridBottomContainer.js +34 -0
  409. package/node/components/{containers → virtualization}/GridMainContainer.js +7 -29
  410. package/node/components/virtualization/GridTopContainer.js +44 -0
  411. package/node/components/virtualization/GridVirtualScrollbar.js +138 -0
  412. package/node/components/virtualization/GridVirtualScroller.js +69 -17
  413. package/node/components/virtualization/GridVirtualScrollerFiller.js +77 -0
  414. package/node/components/virtualization/GridVirtualScrollerRenderZone.js +2 -1
  415. package/node/constants/defaultGridSlotsComponents.js +5 -1
  416. package/node/constants/gridClasses.js +1 -1
  417. package/node/hooks/core/gridCoreSelector.js +12 -0
  418. package/node/hooks/core/useGridInitialization.js +4 -0
  419. package/node/hooks/core/useGridLoggerFactory.js +2 -2
  420. package/node/hooks/core/useGridRefs.js +22 -0
  421. package/node/hooks/core/useGridTheme.js +29 -0
  422. package/node/hooks/features/columnGrouping/gridColumnGroupsUtils.js +1 -1
  423. package/node/hooks/features/columnGrouping/useGridColumnGrouping.js +11 -16
  424. package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +65 -159
  425. package/node/hooks/features/columnMenu/useGridColumnMenu.js +28 -23
  426. package/node/hooks/features/columns/gridColumnsInterfaces.js +11 -1
  427. package/node/hooks/features/columns/gridColumnsSelector.js +52 -1
  428. package/node/hooks/features/columns/gridColumnsUtils.js +10 -13
  429. package/node/hooks/features/columns/index.js +22 -61
  430. package/node/hooks/features/columns/useGridColumnSpanning.js +62 -61
  431. package/node/hooks/features/columns/useGridColumns.js +20 -22
  432. package/node/hooks/features/dimensions/gridDimensionsSelectors.js +8 -0
  433. package/node/hooks/features/dimensions/index.js +11 -0
  434. package/node/hooks/features/dimensions/useGridDimensions.js +215 -144
  435. package/node/hooks/features/editing/useGridCellEditing.js +4 -4
  436. package/node/hooks/features/editing/useGridRowEditing.js +4 -4
  437. package/node/hooks/features/export/serializers/csvSerializer.js +3 -3
  438. package/node/hooks/features/export/useGridPrintExport.js +1 -1
  439. package/node/hooks/features/filter/gridFilterUtils.js +5 -5
  440. package/node/hooks/features/filter/useGridFilter.js +2 -2
  441. package/node/hooks/features/focus/gridFocusStateSelector.js +3 -7
  442. package/node/hooks/features/focus/useGridFocus.js +2 -2
  443. package/node/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +2 -15
  444. package/node/hooks/features/pagination/gridPaginationUtils.js +2 -2
  445. package/node/hooks/features/pagination/useGridPagination.js +3 -5
  446. package/node/hooks/features/rowSelection/useGridRowSelection.js +1 -1
  447. package/node/hooks/features/rows/gridRowsSelector.js +2 -2
  448. package/node/hooks/features/rows/gridRowsUtils.js +6 -6
  449. package/node/hooks/features/rows/useGridRows.js +7 -7
  450. package/node/hooks/features/rows/useGridRowsMeta.js +7 -5
  451. package/node/hooks/features/scroll/useGridScroll.js +8 -9
  452. package/node/hooks/features/sorting/gridSortingUtils.js +5 -3
  453. package/node/hooks/features/sorting/useGridSorting.js +15 -10
  454. package/node/hooks/features/virtualization/gridVirtualizationSelectors.js +22 -2
  455. package/node/hooks/features/virtualization/useGridVirtualScroller.js +434 -431
  456. package/node/hooks/features/virtualization/useGridVirtualization.js +9 -1
  457. package/node/hooks/utils/index.js +36 -0
  458. package/node/hooks/utils/useGridApiContext.js +1 -1
  459. package/node/hooks/utils/useGridAriaAttributes.js +1 -1
  460. package/node/hooks/utils/useGridNativeEventListener.js +3 -9
  461. package/node/hooks/utils/useGridPrivateApiContext.js +1 -1
  462. package/node/hooks/utils/useGridRootProps.js +1 -1
  463. package/node/hooks/utils/useGridSelector.js +1 -1
  464. package/node/hooks/utils/useResizeObserver.js +44 -0
  465. package/node/hooks/utils/useRunOnce.js +27 -0
  466. package/node/index.js +1 -13
  467. package/node/internals/index.js +86 -71
  468. package/node/internals/utils/index.js +11 -0
  469. package/node/internals/utils/propValidation.js +26 -0
  470. package/node/locales/hrHR.js +155 -0
  471. package/node/locales/index.js +33 -0
  472. package/node/locales/ptPT.js +155 -0
  473. package/node/locales/zhHK.js +155 -0
  474. package/node/models/index.js +0 -11
  475. package/node/models/params/index.js +0 -11
  476. package/node/utils/createSelector.js +1 -1
  477. package/node/utils/exportAs.js +1 -1
  478. package/node/utils/utils.js +11 -1
  479. package/package.json +6 -6
  480. package/utils/createSelector.js +1 -1
  481. package/utils/exportAs.js +1 -1
  482. package/utils/utils.d.ts +6 -0
  483. package/utils/utils.js +10 -1
  484. package/components/DataGridVirtualScroller.d.ts +0 -3
  485. package/components/DataGridVirtualScroller.js +0 -35
  486. package/components/containers/GridMainContainer.js +0 -43
  487. package/legacy/components/DataGridVirtualScroller.js +0 -32
  488. package/legacy/components/containers/GridMainContainer.js +0 -45
  489. package/legacy/models/gridRootContainerRef.js +0 -1
  490. package/legacy/models/params/gridRenderedRowsIntervalChangeParams.js +0 -1
  491. package/models/gridRootContainerRef.d.ts +0 -5
  492. package/models/gridRootContainerRef.js +0 -1
  493. package/models/params/gridRenderedRowsIntervalChangeParams.d.ts +0 -10
  494. package/models/params/gridRenderedRowsIntervalChangeParams.js +0 -1
  495. package/modern/components/DataGridVirtualScroller.js +0 -35
  496. package/modern/components/containers/GridMainContainer.js +0 -42
  497. package/modern/models/gridRootContainerRef.js +0 -1
  498. package/modern/models/params/gridRenderedRowsIntervalChangeParams.js +0 -1
  499. package/node/components/DataGridVirtualScroller.js +0 -42
  500. package/node/models/gridRootContainerRef.js +0 -5
  501. package/node/models/params/gridRenderedRowsIntervalChangeParams.js +0 -5
@@ -1,10 +1,17 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import * as React from 'react';
3
3
  import { useGridApiMethod } from '../../utils/useGridApiMethod';
4
+ export var EMPTY_RENDER_CONTEXT = {
5
+ firstRowIndex: 0,
6
+ lastRowIndex: 0,
7
+ firstColumnIndex: 0,
8
+ lastColumnIndex: 0
9
+ };
4
10
  export var virtualizationStateInitializer = function virtualizationStateInitializer(state, props) {
5
11
  var virtualization = {
6
12
  enabled: !props.disableVirtualization,
7
- enabledForColumns: true
13
+ enabledForColumns: true,
14
+ renderContext: EMPTY_RENDER_CONTEXT
8
15
  };
9
16
  return _extends({}, state, {
10
17
  virtualization: virtualization
@@ -3,4 +3,7 @@ export * from './useGridApiMethod';
3
3
  export * from './useGridLogger';
4
4
  export { useGridSelector } from './useGridSelector';
5
5
  export * from './useGridNativeEventListener';
6
- export * from './useFirstRender';
6
+ export * from './useFirstRender';
7
+ export * from './useOnMount';
8
+ export * from './useResizeObserver';
9
+ export * from './useRunOnce';
@@ -3,7 +3,7 @@ import { GridApiContext } from '../../components/GridApiContext';
3
3
  export function useGridApiContext() {
4
4
  var apiRef = React.useContext(GridApiContext);
5
5
  if (apiRef === undefined) {
6
- throw new Error(['MUI: Could not find the data grid context.', 'It looks like you rendered your component outside of a DataGrid, DataGridPro or DataGridPremium parent component.', 'This can also happen if you are bundling multiple versions of the data grid.'].join('\n'));
6
+ throw new Error(['MUI X: Could not find the data grid context.', 'It looks like you rendered your component outside of a DataGrid, DataGridPro or DataGridPremium parent component.', 'This can also happen if you are bundling multiple versions of the data grid.'].join('\n'));
7
7
  }
8
8
  return apiRef;
9
9
  }
@@ -6,7 +6,6 @@ import { gridPinnedRowsCountSelector, gridRowCountSelector } from '../features/r
6
6
  import { useGridPrivateApiContext } from './useGridPrivateApiContext';
7
7
  import { isMultipleRowSelectionEnabled } from '../features/rowSelection/utils';
8
8
  export var useGridAriaAttributes = function useGridAriaAttributes() {
9
- var _rootProps$experiment;
10
9
  var apiRef = useGridPrivateApiContext();
11
10
  var rootProps = useGridRootProps();
12
11
  var visibleColumns = useGridSelector(apiRef, gridVisibleColumnDefinitionsSelector);
@@ -14,7 +13,7 @@ export var useGridAriaAttributes = function useGridAriaAttributes() {
14
13
  var headerGroupingMaxDepth = useGridSelector(apiRef, gridColumnGroupsHeaderMaxDepthSelector);
15
14
  var pinnedRowsCount = useGridSelector(apiRef, gridPinnedRowsCountSelector);
16
15
  var role = 'grid';
17
- if ((_rootProps$experiment = rootProps.experimentalFeatures) != null && _rootProps$experiment.ariaV7 && rootProps.treeData) {
16
+ if (rootProps.treeData) {
18
17
  role = 'treegrid';
19
18
  }
20
19
  return {
@@ -3,12 +3,14 @@ import * as React from 'react';
3
3
  import { isFunction } from '../../utils/utils';
4
4
  import { useGridLogger } from './useGridLogger';
5
5
  export var useGridNativeEventListener = function useGridNativeEventListener(apiRef, ref, eventName, handler, options) {
6
+ var _ref$current;
6
7
  var logger = useGridLogger(apiRef, 'useNativeEventListener');
7
8
  var _React$useState = React.useState(false),
8
9
  _React$useState2 = _slicedToArray(_React$useState, 2),
9
10
  added = _React$useState2[0],
10
11
  setAdded = _React$useState2[1];
11
12
  var handlerRef = React.useRef(handler);
13
+ var targetElement = isFunction(ref) ? ref() : (_ref$current = ref == null ? void 0 : ref.current) != null ? _ref$current : null;
12
14
  var wrapHandler = React.useCallback(function (event) {
13
15
  return handlerRef.current && handlerRef.current(event);
14
16
  }, []);
@@ -16,22 +18,15 @@ export var useGridNativeEventListener = function useGridNativeEventListener(apiR
16
18
  handlerRef.current = handler;
17
19
  }, [handler]);
18
20
  React.useEffect(function () {
19
- var targetElement;
20
- if (isFunction(ref)) {
21
- targetElement = ref();
22
- } else {
23
- targetElement = ref && ref.current ? ref.current : null;
24
- }
25
21
  if (targetElement && eventName && !added) {
26
22
  logger.debug("Binding native ".concat(eventName, " event"));
27
23
  targetElement.addEventListener(eventName, wrapHandler, options);
28
- var boundElem = targetElement;
29
24
  setAdded(true);
30
25
  var unsubscribe = function unsubscribe() {
31
26
  logger.debug("Clearing native ".concat(eventName, " event"));
32
- boundElem.removeEventListener(eventName, wrapHandler, options);
27
+ targetElement.removeEventListener(eventName, wrapHandler, options);
33
28
  };
34
29
  apiRef.current.subscribeEvent('unmount', unsubscribe);
35
30
  }
36
- }, [ref, wrapHandler, eventName, added, logger, options, apiRef]);
31
+ }, [targetElement, wrapHandler, eventName, added, logger, options, apiRef]);
37
32
  };
@@ -6,7 +6,7 @@ if (process.env.NODE_ENV !== 'production') {
6
6
  export function useGridPrivateApiContext() {
7
7
  var privateApiRef = React.useContext(GridPrivateApiContext);
8
8
  if (privateApiRef === undefined) {
9
- throw new Error(['MUI: Could not find the data grid private context.', 'It looks like you rendered your component outside of a DataGrid, DataGridPro or DataGridPremium parent component.', 'This can also happen if you are bundling multiple versions of the data grid.'].join('\n'));
9
+ throw new Error(['MUI X: Could not find the data grid private context.', 'It looks like you rendered your component outside of a DataGrid, DataGridPro or DataGridPremium parent component.', 'This can also happen if you are bundling multiple versions of the data grid.'].join('\n'));
10
10
  }
11
11
  return privateApiRef;
12
12
  }
@@ -3,7 +3,7 @@ import { GridRootPropsContext } from '../../context/GridRootPropsContext';
3
3
  export var useGridRootProps = function useGridRootProps() {
4
4
  var contextValue = React.useContext(GridRootPropsContext);
5
5
  if (!contextValue) {
6
- throw new Error('MUI: useGridRootProps should only be used inside the DataGrid, DataGridPro or DataGridPremium component.');
6
+ throw new Error('MUI X: useGridRootProps should only be used inside the DataGrid, DataGridPro or DataGridPremium component.');
7
7
  }
8
8
  return contextValue;
9
9
  };
@@ -4,7 +4,7 @@ import { useLazyRef } from './useLazyRef';
4
4
  import { useOnMount } from './useOnMount';
5
5
  import { buildWarning } from '../../utils/warning';
6
6
  import { fastObjectShallowCompare } from '../../utils/fastObjectShallowCompare';
7
- var stateNotInitializedWarning = buildWarning(['MUI: `useGridSelector` has been called before the initialization of the state.', 'This hook can only be used inside the context of the grid.']);
7
+ var stateNotInitializedWarning = buildWarning(['MUI X: `useGridSelector` has been called before the initialization of the state.', 'This hook can only be used inside the context of the grid.']);
8
8
  function isOutputSelector(selector) {
9
9
  return selector.acceptsApiRef;
10
10
  }
@@ -0,0 +1,36 @@
1
+ import * as React from 'react';
2
+ import { unstable_useEnhancedEffect as useEnhancedEffect } from '@mui/utils';
3
+ var isDevEnvironment = process.env.NODE_ENV === 'development';
4
+ var noop = function noop() {};
5
+ export function useResizeObserver(ref, fn, enabled) {
6
+ var fnRef = React.useRef(null);
7
+ fnRef.current = fn;
8
+ useEnhancedEffect(function () {
9
+ if (enabled === false || typeof ResizeObserver === 'undefined') {
10
+ return noop;
11
+ }
12
+ var frameID = 0;
13
+ var target = ref.current;
14
+ var observer = new ResizeObserver(function (entries) {
15
+ // See https://github.com/mui/mui-x/issues/8733
16
+ // In dev, we avoid the React warning by moving the task to the next frame.
17
+ // In prod, we want the task to run in the same frame as to avoid tear.
18
+ if (isDevEnvironment) {
19
+ frameID = requestAnimationFrame(function () {
20
+ fnRef.current(entries);
21
+ });
22
+ } else {
23
+ fnRef.current(entries);
24
+ }
25
+ });
26
+ if (target) {
27
+ observer.observe(target);
28
+ }
29
+ return function () {
30
+ if (frameID) {
31
+ cancelAnimationFrame(frameID);
32
+ }
33
+ observer.disconnect();
34
+ };
35
+ }, [ref, enabled]);
36
+ }
@@ -0,0 +1,18 @@
1
+ import * as React from 'react';
2
+ import { unstable_useEnhancedEffect as useEnhancedEffect } from '@mui/utils';
3
+ var noop = function noop() {};
4
+
5
+ /**
6
+ * Runs an effect once, when `condition` is true.
7
+ */
8
+ export var useRunOnce = function useRunOnce(condition, effect) {
9
+ var didRun = React.useRef(false);
10
+ useEnhancedEffect(function () {
11
+ if (didRun.current || !condition) {
12
+ return noop;
13
+ }
14
+ didRun.current = true;
15
+ return effect();
16
+ // eslint-disable-next-line react-hooks/exhaustive-deps
17
+ }, [didRun.current || condition]);
18
+ };
package/legacy/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/x-data-grid v7.0.0-alpha.7
2
+ * @mui/x-data-grid v7.0.0-alpha.9
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -12,7 +12,6 @@ export * from './DataGrid';
12
12
  export * from './components';
13
13
  export * from './constants';
14
14
  export * from './hooks';
15
- export * from './locales';
16
15
  export * from './models';
17
16
  export * from './context';
18
17
  export * from './colDef';
@@ -1,6 +1,7 @@
1
1
  export { GridVirtualScroller } from '../components/virtualization/GridVirtualScroller';
2
2
  export { GridVirtualScrollerContent } from '../components/virtualization/GridVirtualScrollerContent';
3
3
  export { GridVirtualScrollerRenderZone } from '../components/virtualization/GridVirtualScrollerRenderZone';
4
+ export { GridHeaders } from '../components/GridHeaders';
4
5
  export { GridBaseColumnHeaders } from '../components/columnHeaders/GridBaseColumnHeaders';
5
6
  export { GridColumnHeadersInner } from '../components/columnHeaders/GridColumnHeadersInner';
6
7
  export { DATA_GRID_DEFAULT_SLOTS_COMPONENTS } from '../constants/defaultGridSlotsComponents';
@@ -10,13 +11,13 @@ export { useGridRegisterStrategyProcessor, GRID_DEFAULT_STRATEGY } from '../hook
10
11
  export { useGridInitialization } from '../hooks/core/useGridInitialization';
11
12
  export { unwrapPrivateAPI } from '../hooks/core/useGridApiInitialization';
12
13
  export { useGridClipboard } from '../hooks/features/clipboard/useGridClipboard';
13
- export { useGridColumnHeaders } from '../hooks/features/columnHeaders/useGridColumnHeaders';
14
+ export * from '../hooks/features/columnHeaders/useGridColumnHeaders';
14
15
  export { gridHeaderFilteringEditFieldSelector, gridHeaderFilteringMenuSelector } from '../hooks/features/headerFiltering/gridHeaderFilteringSelectors';
15
16
  export { useGridColumnMenu, columnMenuStateInitializer } from '../hooks/features/columnMenu/useGridColumnMenu';
16
17
  export { useGridColumns, columnsStateInitializer } from '../hooks/features/columns/useGridColumns';
17
- export { getTotalHeaderHeight } from '../hooks/features/columns/gridColumnsUtils';
18
+ export * from '../hooks/features/columns/gridColumnsUtils';
18
19
  export { useGridColumnSpanning } from '../hooks/features/columns/useGridColumnSpanning';
19
- export { gridColumnsStateSelector } from '../hooks/features/columns/gridColumnsSelector';
20
+ export * from '../hooks/features/columns/gridColumnsSelector';
20
21
  export { useGridColumnGrouping, columnGroupsStateInitializer } from '../hooks/features/columnGrouping/useGridColumnGrouping';
21
22
  export { useGridDensity, densityStateInitializer } from '../hooks/features/density/useGridDensity';
22
23
  export { useGridCsvExport } from '../hooks/features/export/useGridCsvExport';
@@ -44,9 +45,9 @@ export { useGridRowSelectionPreProcessors } from '../hooks/features/rowSelection
44
45
  export { useGridSorting, sortingStateInitializer } from '../hooks/features/sorting/useGridSorting';
45
46
  export { useGridScroll } from '../hooks/features/scroll/useGridScroll';
46
47
  export { useGridEvents } from '../hooks/features/events/useGridEvents';
47
- export { useGridDimensions } from '../hooks/features/dimensions/useGridDimensions';
48
+ export { dimensionsStateInitializer, useGridDimensions } from '../hooks/features/dimensions/useGridDimensions';
48
49
  export { useGridStatePersistence } from '../hooks/features/statePersistence/useGridStatePersistence';
49
- export { useGridVirtualScroller, getRenderableIndexes } from '../hooks/features/virtualization/useGridVirtualScroller';
50
+ export { useGridVirtualScroller, EMPTY_DETAIL_PANELS } from '../hooks/features/virtualization/useGridVirtualScroller';
50
51
  export * from '../hooks/features/virtualization';
51
52
  export { useTimeout } from '../hooks/utils/useTimeout';
52
53
  export { useGridVisibleRows, getVisibleRows } from '../hooks/utils/useGridVisibleRows';
@@ -56,11 +57,12 @@ export * from '../utils/createControllablePromise';
56
57
  export { createSelector, createSelectorMemoized, unstable_resetCreateSelectorCache } from '../utils/createSelector';
57
58
  export { findParentElementFromClassName, getActiveElement, isEventTargetInPortal } from '../utils/domUtils';
58
59
  export { isNavigationKey } from '../utils/keyboardUtils';
59
- export { clamp, isDeepEqual, isNumber, isFunction, isObject } from '../utils/utils';
60
+ export * from '../utils/utils';
61
+ export * from '../utils/fastMemo';
60
62
  export { buildWarning } from '../utils/warning';
61
63
  export { exportAs } from '../utils/exportAs';
62
64
  export * from '../utils/getPublicApiRef';
63
65
  export { useGridPrivateApiContext } from '../hooks/utils/useGridPrivateApiContext';
64
- export * from '../hooks/utils/useOnMount';
66
+ export * from '../hooks/utils';
65
67
  export { serializeCellValue } from '../hooks/features/export/serializers/csvSerializer';
66
68
  export * from './utils';
@@ -1,2 +1,3 @@
1
1
  export * from './computeSlots';
2
- export * from './useProps';
2
+ export * from './useProps';
3
+ export * from './propValidation';
@@ -0,0 +1,21 @@
1
+ export var propValidatorsDataGrid = [function (props) {
2
+ return props.autoPageSize && props.autoHeight && ['MUI X: `<DataGrid autoPageSize={true} autoHeight={true} />` are not valid props.', 'You can not use both the `autoPageSize` and `autoHeight` props at the same time because `autoHeight` scales the height of the Data Grid according to the `pageSize`.', '', 'Please remove one of these two props.'].join('\n') || undefined;
3
+ }];
4
+ var warnedOnceMap = new Set();
5
+ var warnOnce = function warnOnce(message) {
6
+ if (!warnedOnceMap.has(message)) {
7
+ console.error(message);
8
+ warnedOnceMap.add(message);
9
+ }
10
+ };
11
+ export var validateProps = function validateProps(props, validators) {
12
+ if (process.env.NODE_ENV === 'production') {
13
+ return;
14
+ }
15
+ validators.forEach(function (validator) {
16
+ var warning = validator(props);
17
+ if (warning) {
18
+ warnOnce(warning);
19
+ }
20
+ });
21
+ };
@@ -0,0 +1,161 @@
1
+ import { hrHR as hrHRCore } from '@mui/material/locale';
2
+ import { getGridLocalization } from '../utils/getGridLocalization';
3
+ var hrHRGrid = {
4
+ // Root
5
+ noRowsLabel: 'Nema redova',
6
+ noResultsOverlayLabel: 'Nema rezultata.',
7
+ // Density selector toolbar button text
8
+ toolbarDensity: 'Gustoća',
9
+ toolbarDensityLabel: 'Gustoća',
10
+ toolbarDensityCompact: 'Kompaktan',
11
+ toolbarDensityStandard: 'Standard',
12
+ toolbarDensityComfortable: 'Udobno',
13
+ // Columns selector toolbar button text
14
+ toolbarColumns: 'Stupci',
15
+ toolbarColumnsLabel: 'Odaberite stupce',
16
+ // Filters toolbar button text
17
+ toolbarFilters: 'Filteri',
18
+ toolbarFiltersLabel: 'Prikaži filtre',
19
+ toolbarFiltersTooltipHide: 'Sakrij filtre',
20
+ toolbarFiltersTooltipShow: 'Prikaži filtre',
21
+ toolbarFiltersTooltipActive: function toolbarFiltersTooltipActive(count) {
22
+ return count !== 1 ? "".concat(count, " aktivnih filtara") : "".concat(count, " aktivni filter");
23
+ },
24
+ // Quick filter toolbar field
25
+ toolbarQuickFilterPlaceholder: 'Traži…',
26
+ toolbarQuickFilterLabel: 'traži',
27
+ toolbarQuickFilterDeleteIconLabel: 'Čisto',
28
+ // Export selector toolbar button text
29
+ toolbarExport: 'Izvoz',
30
+ toolbarExportLabel: 'Izvoz',
31
+ toolbarExportCSV: 'Preuzmi kao CSV',
32
+ toolbarExportPrint: 'Ispis',
33
+ toolbarExportExcel: 'Preuzmite kao Excel',
34
+ // Columns panel text
35
+ columnsPanelTextFieldLabel: 'Pronađi stupac',
36
+ columnsPanelTextFieldPlaceholder: 'Naslov stupca',
37
+ columnsPanelDragIconLabel: 'Promijeni redoslijed stupca',
38
+ columnsPanelShowAllButton: 'Pokaži sve',
39
+ columnsPanelHideAllButton: 'Sakrij sve',
40
+ // Filter panel text
41
+ filterPanelAddFilter: 'Dodajte filter',
42
+ filterPanelRemoveAll: 'Ukloniti sve',
43
+ filterPanelDeleteIconLabel: 'Izbrisati',
44
+ filterPanelLogicOperator: 'Logički operator',
45
+ filterPanelOperator: 'Operater',
46
+ filterPanelOperatorAnd: 'I',
47
+ filterPanelOperatorOr: 'Ili',
48
+ filterPanelColumns: 'Stupci',
49
+ filterPanelInputLabel: 'Vrijednost',
50
+ filterPanelInputPlaceholder: 'Vrijednost filtra',
51
+ // Filter operators text
52
+ filterOperatorContains: 'sadrži',
53
+ filterOperatorEquals: 'jednaki',
54
+ filterOperatorStartsWith: 'počinje sa',
55
+ filterOperatorEndsWith: 'završava sa',
56
+ filterOperatorIs: 'je',
57
+ filterOperatorNot: 'nije',
58
+ filterOperatorAfter: 'je poslije',
59
+ filterOperatorOnOrAfter: 'je na ili poslije',
60
+ filterOperatorBefore: 'je prije',
61
+ filterOperatorOnOrBefore: 'je na ili prije',
62
+ filterOperatorIsEmpty: 'prazno je',
63
+ filterOperatorIsNotEmpty: 'nije prazna',
64
+ filterOperatorIsAnyOf: 'je bilo koji od',
65
+ 'filterOperator=': '=',
66
+ 'filterOperator!=': '!=',
67
+ 'filterOperator>': '>',
68
+ 'filterOperator>=': '>=',
69
+ 'filterOperator<': '<',
70
+ 'filterOperator<=': '<=',
71
+ // Header filter operators text
72
+ headerFilterOperatorContains: 'Sadrži',
73
+ headerFilterOperatorEquals: 'Jednako',
74
+ headerFilterOperatorStartsWith: 'Počinje sa',
75
+ headerFilterOperatorEndsWith: 'Završava s',
76
+ headerFilterOperatorIs: 'Je',
77
+ headerFilterOperatorNot: 'Nije',
78
+ headerFilterOperatorAfter: 'Je poslije',
79
+ headerFilterOperatorOnOrAfter: 'Je uključeno ili poslije',
80
+ headerFilterOperatorBefore: 'Je li prije',
81
+ headerFilterOperatorOnOrBefore: 'Uključeno je ili prije',
82
+ headerFilterOperatorIsEmpty: 'Prazno je',
83
+ headerFilterOperatorIsNotEmpty: 'Nije prazna',
84
+ headerFilterOperatorIsAnyOf: 'Je li bilo koji od',
85
+ 'headerFilterOperator=': 'Jednako',
86
+ 'headerFilterOperator!=': 'Nije jednako',
87
+ 'headerFilterOperator>': 'Veći od',
88
+ 'headerFilterOperator>=': 'Veće ili jednako',
89
+ 'headerFilterOperator<': 'Manje od',
90
+ 'headerFilterOperator<=': 'Manje od ili jednako',
91
+ // Filter values text
92
+ filterValueAny: 'bilo koji',
93
+ filterValueTrue: 'pravi',
94
+ filterValueFalse: 'lažno',
95
+ // Column menu text
96
+ columnMenuLabel: 'Jelovnik ',
97
+ columnMenuShowColumns: 'Prikaži stupce',
98
+ columnMenuManageColumns: 'Upravljanje stupcima',
99
+ columnMenuFilter: 'filtar',
100
+ columnMenuHideColumn: 'Sakrij stupac',
101
+ columnMenuUnsort: 'Poništi sortiranje',
102
+ columnMenuSortAsc: 'Poredaj uzlazno',
103
+ columnMenuSortDesc: 'Poredaj silaznim redom',
104
+ // Column header text
105
+ columnHeaderFiltersTooltipActive: function columnHeaderFiltersTooltipActive(count) {
106
+ return count !== 1 ? "".concat(count, " aktivnih filtara") : "".concat(count, " aktivni filter");
107
+ },
108
+ columnHeaderFiltersLabel: 'Prikaži filtre',
109
+ columnHeaderSortIconLabel: 'Vrsta',
110
+ // Rows selected footer text
111
+ footerRowSelected: function footerRowSelected(count) {
112
+ return count !== 1 ? "Odabrano je ".concat(count.toLocaleString(), " redaka") : "".concat(count.toLocaleString(), " redak odabran");
113
+ },
114
+ // Total row amount footer text
115
+ footerTotalRows: 'Ukupno redaka:',
116
+ // Total visible row amount footer text
117
+ footerTotalVisibleRows: function footerTotalVisibleRows(visibleCount, totalCount) {
118
+ return "".concat(visibleCount.toLocaleString(), " od ").concat(totalCount.toLocaleString());
119
+ },
120
+ // Checkbox selection text
121
+ checkboxSelectionHeaderName: 'Odabir potvrdnog okvira',
122
+ checkboxSelectionSelectAllRows: 'Odaberite sve retke',
123
+ checkboxSelectionUnselectAllRows: 'Poništi odabir svih redaka',
124
+ checkboxSelectionSelectRow: 'Odaberite red',
125
+ checkboxSelectionUnselectRow: 'Poništi odabir retka',
126
+ // Boolean cell text
127
+ booleanCellTrueLabel: 'Da',
128
+ booleanCellFalseLabel: 'Ne',
129
+ // Actions cell more text
130
+ actionsCellMore: 'više',
131
+ // Column pinning text
132
+ pinToLeft: 'Prikvači lijevo',
133
+ pinToRight: 'Prikvači desno',
134
+ unpin: 'Otkvači',
135
+ // Tree Data
136
+ treeDataGroupingHeaderName: 'Group',
137
+ treeDataExpand: 'vidjeti djecu',
138
+ treeDataCollapse: 'sakriti djecu',
139
+ // Grouping columns
140
+ groupingColumnHeaderName: 'Skupina',
141
+ groupColumn: function groupColumn(name) {
142
+ return "Grupiraj prema ".concat(name);
143
+ },
144
+ unGroupColumn: function unGroupColumn(name) {
145
+ return "Zaustavi grupiranje prema ".concat(name);
146
+ },
147
+ // Master/detail
148
+ detailPanelToggle: 'Prebacivanje ploče s detaljima',
149
+ expandDetailPanel: 'Proširiti',
150
+ collapseDetailPanel: 'Kolaps',
151
+ // Row reordering text
152
+ rowReorderingHeaderName: 'Promjena redoslijeda',
153
+ // Aggregation
154
+ aggregationMenuItemHeader: 'Agregacija',
155
+ aggregationFunctionLabelSum: 'iznos',
156
+ aggregationFunctionLabelAvg: 'prosj',
157
+ aggregationFunctionLabelMin: 'min',
158
+ aggregationFunctionLabelMax: 'max',
159
+ aggregationFunctionLabelSize: 'veličina'
160
+ };
161
+ export var hrHR = getGridLocalization(hrHRGrid, hrHRCore);
@@ -29,4 +29,7 @@ export * from './ukUA';
29
29
  export * from './urPK';
30
30
  export * from './viVN';
31
31
  export * from './zhCN';
32
- export * from './zhTW';
32
+ export * from './zhTW';
33
+ export * from './hrHR';
34
+ export * from './ptPT';
35
+ export * from './zhHK';
@@ -0,0 +1,161 @@
1
+ import { ptPT as ptPTCore } from '@mui/material/locale';
2
+ import { getGridLocalization } from '../utils/getGridLocalization';
3
+ var ptPTGrid = {
4
+ // Root
5
+ noRowsLabel: 'Nenhuma linha',
6
+ noResultsOverlayLabel: 'Nenhum resultado encontrado.',
7
+ // Density selector toolbar button text
8
+ toolbarDensity: 'Densidade',
9
+ toolbarDensityLabel: 'Densidade',
10
+ toolbarDensityCompact: 'Compactar',
11
+ toolbarDensityStandard: 'Padrão',
12
+ toolbarDensityComfortable: 'Confortável',
13
+ // Columns selector toolbar button text
14
+ toolbarColumns: 'Colunas',
15
+ toolbarColumnsLabel: 'Selecione colunas',
16
+ // Filters toolbar button text
17
+ toolbarFilters: 'Filtros',
18
+ toolbarFiltersLabel: 'Mostrar filtros',
19
+ toolbarFiltersTooltipHide: 'Ocultar filtros',
20
+ toolbarFiltersTooltipShow: 'Mostrar filtros',
21
+ toolbarFiltersTooltipActive: function toolbarFiltersTooltipActive(count) {
22
+ return count !== 1 ? "".concat(count, " filtros ativos") : "".concat(count, " filtro ativo");
23
+ },
24
+ // Quick filter toolbar field
25
+ toolbarQuickFilterPlaceholder: 'Procurar…',
26
+ toolbarQuickFilterLabel: 'Procurar',
27
+ toolbarQuickFilterDeleteIconLabel: 'Claro',
28
+ // Export selector toolbar button text
29
+ toolbarExport: 'Exportar',
30
+ toolbarExportLabel: 'Exportar',
31
+ toolbarExportCSV: 'Baixar como CSV',
32
+ toolbarExportPrint: 'Imprimir',
33
+ toolbarExportExcel: 'Baixe como Excel',
34
+ // Columns panel text
35
+ columnsPanelTextFieldLabel: 'Encontrar coluna',
36
+ columnsPanelTextFieldPlaceholder: 'Título da coluna',
37
+ columnsPanelDragIconLabel: 'Reordenar coluna',
38
+ columnsPanelShowAllButton: 'Mostre tudo',
39
+ columnsPanelHideAllButton: 'Esconda tudo',
40
+ // Filter panel text
41
+ filterPanelAddFilter: 'Adicionar filtro',
42
+ filterPanelRemoveAll: 'Deletar tudo',
43
+ filterPanelDeleteIconLabel: 'Excluir',
44
+ filterPanelLogicOperator: 'Operador lógico',
45
+ filterPanelOperator: 'Operador',
46
+ filterPanelOperatorAnd: 'E',
47
+ filterPanelOperatorOr: 'Ou',
48
+ filterPanelColumns: 'Colunas',
49
+ filterPanelInputLabel: 'Valor',
50
+ filterPanelInputPlaceholder: 'Valor do filtro',
51
+ // Filter operators text
52
+ filterOperatorContains: 'contém',
53
+ filterOperatorEquals: 'é igual a',
54
+ filterOperatorStartsWith: 'começa com',
55
+ filterOperatorEndsWith: 'termina com',
56
+ filterOperatorIs: 'é',
57
+ filterOperatorNot: 'não é',
58
+ filterOperatorAfter: 'está depois',
59
+ filterOperatorOnOrAfter: 'está ligado ou depois',
60
+ filterOperatorBefore: 'é antes',
61
+ filterOperatorOnOrBefore: 'está ligado ou antes',
62
+ filterOperatorIsEmpty: 'está vazia',
63
+ filterOperatorIsNotEmpty: 'não está vazio',
64
+ filterOperatorIsAnyOf: 'é qualquer um',
65
+ 'filterOperator=': '=',
66
+ 'filterOperator!=': '!=',
67
+ 'filterOperator>': '>',
68
+ 'filterOperator>=': '>=',
69
+ 'filterOperator<': '<',
70
+ 'filterOperator<=': '<=',
71
+ // Header filter operators text
72
+ headerFilterOperatorContains: 'Contém',
73
+ headerFilterOperatorEquals: 'É igual a',
74
+ headerFilterOperatorStartsWith: 'Começa com',
75
+ headerFilterOperatorEndsWith: 'Termina com',
76
+ headerFilterOperatorIs: 'É',
77
+ headerFilterOperatorNot: 'Não é',
78
+ headerFilterOperatorAfter: 'Está depois',
79
+ headerFilterOperatorOnOrAfter: 'Está ligado ou depois',
80
+ headerFilterOperatorBefore: 'É antes',
81
+ headerFilterOperatorOnOrBefore: 'Está ligado ou antes',
82
+ headerFilterOperatorIsEmpty: 'Está vazia',
83
+ headerFilterOperatorIsNotEmpty: 'Não está vazio',
84
+ headerFilterOperatorIsAnyOf: 'Algum',
85
+ 'headerFilterOperator=': 'É igual a',
86
+ 'headerFilterOperator!=': 'Não é igual',
87
+ 'headerFilterOperator>': 'Maior que',
88
+ 'headerFilterOperator>=': 'Melhor que ou igual a',
89
+ 'headerFilterOperator<': 'Menor que',
90
+ 'headerFilterOperator<=': 'Menos que ou igual a',
91
+ // Filter values text
92
+ filterValueAny: 'qualquer',
93
+ filterValueTrue: 'verdadeiro',
94
+ filterValueFalse: 'falso',
95
+ // Column menu text
96
+ columnMenuLabel: 'Cardápio',
97
+ columnMenuShowColumns: 'Mostrar colunas',
98
+ columnMenuManageColumns: 'Gerenciar colunas',
99
+ columnMenuFilter: 'Filtro',
100
+ columnMenuHideColumn: 'Ocultar coluna',
101
+ columnMenuUnsort: 'Desclassificar',
102
+ columnMenuSortAsc: 'Classificar por ordem crescente',
103
+ columnMenuSortDesc: 'Classificar por ordem decrescente',
104
+ // Column header text
105
+ columnHeaderFiltersTooltipActive: function columnHeaderFiltersTooltipActive(count) {
106
+ return count !== 1 ? "".concat(count, " filtros ativos") : "".concat(count, " filtro ativo");
107
+ },
108
+ columnHeaderFiltersLabel: 'Mostrar filtros',
109
+ columnHeaderSortIconLabel: 'Organizar',
110
+ // Rows selected footer text
111
+ footerRowSelected: function footerRowSelected(count) {
112
+ return count !== 1 ? "".concat(count.toLocaleString(), " linhas selecionadas") : "".concat(count.toLocaleString(), " linha selecionada");
113
+ },
114
+ // Total row amount footer text
115
+ footerTotalRows: 'Total de linhas:',
116
+ // Total visible row amount footer text
117
+ footerTotalVisibleRows: function footerTotalVisibleRows(visibleCount, totalCount) {
118
+ return "".concat(visibleCount.toLocaleString(), " de ").concat(totalCount.toLocaleString());
119
+ },
120
+ // Checkbox selection text
121
+ checkboxSelectionHeaderName: 'Seleção de caixa de seleção',
122
+ checkboxSelectionSelectAllRows: 'Selecione todas as linhas',
123
+ checkboxSelectionUnselectAllRows: 'Desmarque todas as linhas',
124
+ checkboxSelectionSelectRow: 'Selecione a linha',
125
+ checkboxSelectionUnselectRow: 'Desmarcar linha',
126
+ // Boolean cell text
127
+ booleanCellTrueLabel: 'sim',
128
+ booleanCellFalseLabel: 'não',
129
+ // Actions cell more text
130
+ actionsCellMore: 'mais',
131
+ // Column pinning text
132
+ pinToLeft: 'Fixar à esquerda',
133
+ pinToRight: 'Fixar à direita',
134
+ unpin: 'Liberar',
135
+ // Tree Data
136
+ treeDataGroupingHeaderName: 'Group',
137
+ treeDataExpand: 'veja crianças',
138
+ treeDataCollapse: 'esconder crianças',
139
+ // Grouping columns
140
+ groupingColumnHeaderName: 'Grupo',
141
+ groupColumn: function groupColumn(name) {
142
+ return "Agrupar por ".concat(name);
143
+ },
144
+ unGroupColumn: function unGroupColumn(name) {
145
+ return "Pare de agrupar por ".concat(name);
146
+ },
147
+ // Master/detail
148
+ detailPanelToggle: 'Alternar painel de detalhes',
149
+ expandDetailPanel: 'Expandir',
150
+ collapseDetailPanel: 'Colapso',
151
+ // Row reordering text
152
+ rowReorderingHeaderName: 'Reordenação de linhas',
153
+ // Aggregation
154
+ aggregationMenuItemHeader: 'Agregação',
155
+ aggregationFunctionLabelSum: 'soma',
156
+ aggregationFunctionLabelAvg: 'média',
157
+ aggregationFunctionLabelMin: 'min',
158
+ aggregationFunctionLabelMax: 'máx.',
159
+ aggregationFunctionLabelSize: 'tamanho'
160
+ };
161
+ export var ptPT = getGridLocalization(ptPTGrid, ptPTCore);