@mui/x-data-grid 7.0.0-alpha.8 → 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.
- package/CHANGELOG.md +379 -2
- package/DataGrid/DataGrid.js +6 -6
- package/DataGrid/useDataGridComponent.js +2 -1
- package/DataGrid/useDataGridProps.js +1 -0
- package/README.md +1 -1
- package/components/GridColumnHeaders.d.ts +3 -2
- package/components/GridColumnHeaders.js +3 -11
- package/components/GridDetailPanels.d.ts +5 -0
- package/components/GridDetailPanels.js +4 -0
- package/components/GridHeaders.d.ts +4 -0
- package/components/GridHeaders.js +53 -0
- package/components/GridPinnedRows.d.ts +7 -0
- package/components/GridPinnedRows.js +4 -0
- package/components/GridRow.d.ts +7 -4
- package/components/GridRow.js +260 -97
- package/components/GridScrollbarFillerCell.d.ts +7 -0
- package/components/GridScrollbarFillerCell.js +39 -0
- package/components/base/GridBody.d.ts +2 -13
- package/components/base/GridBody.js +2 -116
- package/components/base/GridOverlays.js +10 -21
- package/components/cell/GridActionsCellItem.d.ts +2 -2
- package/components/cell/GridCell.d.ts +15 -21
- package/components/cell/GridCell.js +67 -372
- package/components/columnHeaders/GridBaseColumnHeaders.js +1 -6
- package/components/columnHeaders/GridColumnHeaderItem.d.ts +2 -1
- package/components/columnHeaders/GridColumnHeaderItem.js +7 -3
- package/components/columnHeaders/GridColumnHeaderSortIcon.d.ts +1 -0
- package/components/columnHeaders/GridColumnHeaderSortIcon.js +5 -2
- package/components/columnHeaders/GridColumnHeadersInner.js +1 -2
- package/components/containers/GridRoot.js +18 -15
- package/components/containers/GridRootStyles.js +307 -204
- package/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +1 -1
- package/components/panel/GridPanel.js +3 -4
- package/components/panel/filterPanel/GridFilterForm.d.ts +6 -4
- package/components/panel/filterPanel/GridFilterForm.js +31 -14
- package/components/panel/filterPanel/GridFilterPanel.js +46 -20
- package/components/toolbar/GridToolbarColumnsButton.d.ts +13 -1
- package/components/toolbar/GridToolbarColumnsButton.js +40 -22
- package/components/toolbar/GridToolbarDensitySelector.d.ts +13 -1
- package/components/toolbar/GridToolbarDensitySelector.js +40 -22
- package/components/toolbar/GridToolbarExport.d.ts +10 -1
- package/components/toolbar/GridToolbarExport.js +6 -1
- package/components/toolbar/GridToolbarExportContainer.d.ts +15 -1
- package/components/toolbar/GridToolbarExportContainer.js +41 -23
- package/components/toolbar/GridToolbarFilterButton.d.ts +5 -4
- package/components/toolbar/GridToolbarFilterButton.js +6 -10
- package/components/virtualization/GridBottomContainer.d.ts +2 -0
- package/components/virtualization/GridBottomContainer.js +25 -0
- package/components/{containers → virtualization}/GridMainContainer.d.ts +2 -0
- package/components/virtualization/GridMainContainer.js +20 -0
- package/components/virtualization/GridTopContainer.d.ts +2 -0
- package/components/virtualization/GridTopContainer.js +35 -0
- package/components/virtualization/GridVirtualScrollbar.d.ts +7 -0
- package/components/virtualization/GridVirtualScrollbar.js +131 -0
- package/components/virtualization/GridVirtualScroller.d.ts +4 -4
- package/components/virtualization/GridVirtualScroller.js +69 -16
- package/components/virtualization/GridVirtualScrollerFiller.d.ts +4 -0
- package/components/virtualization/GridVirtualScrollerFiller.js +71 -0
- package/components/virtualization/GridVirtualScrollerRenderZone.js +2 -1
- package/constants/defaultGridSlotsComponents.js +6 -2
- package/constants/gridClasses.d.ts +60 -8
- package/constants/gridClasses.js +1 -1
- package/hooks/core/gridCoreSelector.d.ts +6 -0
- package/hooks/core/gridCoreSelector.js +5 -0
- package/hooks/core/useGridInitialization.js +4 -0
- package/hooks/core/useGridRefs.d.ts +3 -0
- package/hooks/core/useGridRefs.js +13 -0
- package/hooks/core/useGridTheme.d.ts +3 -0
- package/hooks/core/useGridTheme.js +19 -0
- package/hooks/features/columnGrouping/useGridColumnGrouping.d.ts +1 -1
- package/hooks/features/columnGrouping/useGridColumnGrouping.js +7 -14
- package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +13 -18
- package/hooks/features/columnHeaders/useGridColumnHeaders.js +68 -162
- package/hooks/features/columnMenu/useGridColumnMenu.js +28 -23
- package/hooks/features/columns/gridColumnsInterfaces.d.ts +17 -0
- package/hooks/features/columns/gridColumnsInterfaces.js +9 -1
- package/hooks/features/columns/gridColumnsSelector.d.ts +14 -1
- package/hooks/features/columns/gridColumnsSelector.js +52 -0
- package/hooks/features/columns/gridColumnsUtils.d.ts +1 -5
- package/hooks/features/columns/gridColumnsUtils.js +10 -12
- package/hooks/features/columns/index.d.ts +2 -2
- package/hooks/features/columns/index.js +2 -1
- package/hooks/features/columns/useGridColumnSpanning.js +62 -61
- package/hooks/features/columns/useGridColumns.js +20 -23
- package/hooks/features/dimensions/gridDimensionsApi.d.ts +60 -11
- package/hooks/features/dimensions/gridDimensionsSelectors.d.ts +2 -0
- package/hooks/features/dimensions/gridDimensionsSelectors.js +1 -0
- package/hooks/features/dimensions/index.d.ts +2 -0
- package/hooks/features/dimensions/index.js +1 -0
- package/hooks/features/dimensions/useGridDimensions.d.ts +7 -1
- package/hooks/features/dimensions/useGridDimensions.js +216 -148
- package/hooks/features/export/serializers/csvSerializer.js +2 -2
- package/hooks/features/filter/useGridFilter.js +3 -3
- package/hooks/features/focus/gridFocusStateSelector.d.ts +2 -2
- package/hooks/features/focus/gridFocusStateSelector.js +2 -6
- package/hooks/features/focus/useGridFocus.js +3 -3
- package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +3 -16
- package/hooks/features/pagination/useGridPagination.js +3 -5
- package/hooks/features/rows/gridRowsInterfaces.d.ts +1 -0
- package/hooks/features/rows/gridRowsSelector.d.ts +2 -2
- package/hooks/features/rows/gridRowsSelector.js +5 -5
- package/hooks/features/rows/gridRowsUtils.d.ts +1 -1
- package/hooks/features/rows/gridRowsUtils.js +4 -4
- package/hooks/features/rows/useGridRowsMeta.js +7 -4
- package/hooks/features/scroll/useGridScroll.js +8 -10
- package/hooks/features/sorting/gridSortingUtils.js +1 -1
- package/hooks/features/sorting/useGridSorting.d.ts +1 -1
- package/hooks/features/sorting/useGridSorting.js +15 -10
- package/hooks/features/virtualization/gridVirtualizationSelectors.d.ts +14 -0
- package/hooks/features/virtualization/gridVirtualizationSelectors.js +22 -2
- package/hooks/features/virtualization/useGridVirtualScroller.d.ts +27 -42
- package/hooks/features/virtualization/useGridVirtualScroller.js +441 -438
- package/hooks/features/virtualization/useGridVirtualization.d.ts +8 -0
- package/hooks/features/virtualization/useGridVirtualization.js +8 -1
- package/hooks/utils/index.d.ts +3 -0
- package/hooks/utils/index.js +4 -1
- package/hooks/utils/useGridAriaAttributes.js +1 -2
- package/hooks/utils/useGridNativeEventListener.js +4 -9
- package/hooks/utils/useResizeObserver.d.ts +2 -0
- package/hooks/utils/useResizeObserver.js +36 -0
- package/hooks/utils/useRunOnce.d.ts +5 -0
- package/hooks/utils/useRunOnce.js +18 -0
- package/index.js +1 -1
- package/internals/index.d.ts +12 -9
- package/internals/index.js +9 -7
- package/legacy/DataGrid/DataGrid.js +6 -6
- package/legacy/DataGrid/useDataGridComponent.js +2 -1
- package/legacy/DataGrid/useDataGridProps.js +1 -0
- package/legacy/components/GridColumnHeaders.js +3 -11
- package/legacy/components/GridDetailPanels.js +4 -0
- package/legacy/components/GridHeaders.js +53 -0
- package/legacy/components/GridPinnedRows.js +4 -0
- package/legacy/components/GridRow.js +258 -98
- package/legacy/components/GridScrollbarFillerCell.js +36 -0
- package/legacy/components/base/GridBody.js +2 -114
- package/legacy/components/base/GridOverlays.js +10 -25
- package/legacy/components/cell/GridCell.js +69 -377
- package/legacy/components/columnHeaders/GridBaseColumnHeaders.js +1 -6
- package/legacy/components/columnHeaders/GridColumnHeaderItem.js +7 -3
- package/legacy/components/columnHeaders/GridColumnHeaderSortIcon.js +5 -2
- package/legacy/components/columnHeaders/GridColumnHeadersInner.js +1 -2
- package/legacy/components/containers/GridRoot.js +18 -15
- package/legacy/components/containers/GridRootStyles.js +215 -137
- package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +1 -1
- package/legacy/components/panel/GridPanel.js +3 -4
- package/legacy/components/panel/filterPanel/GridFilterForm.js +30 -13
- package/legacy/components/panel/filterPanel/GridFilterPanel.js +49 -20
- package/legacy/components/toolbar/GridToolbarColumnsButton.js +40 -21
- package/legacy/components/toolbar/GridToolbarDensitySelector.js +40 -21
- package/legacy/components/toolbar/GridToolbarExport.js +6 -1
- package/legacy/components/toolbar/GridToolbarExportContainer.js +40 -21
- package/legacy/components/toolbar/GridToolbarFilterButton.js +6 -10
- package/legacy/components/virtualization/GridBottomContainer.js +25 -0
- package/legacy/components/virtualization/GridMainContainer.js +20 -0
- package/legacy/components/virtualization/GridTopContainer.js +35 -0
- package/legacy/components/virtualization/GridVirtualScrollbar.js +129 -0
- package/legacy/components/virtualization/GridVirtualScroller.js +67 -16
- package/legacy/components/virtualization/GridVirtualScrollerFiller.js +70 -0
- package/legacy/components/virtualization/GridVirtualScrollerRenderZone.js +2 -1
- package/legacy/constants/defaultGridSlotsComponents.js +6 -2
- package/legacy/constants/gridClasses.js +1 -1
- package/legacy/hooks/core/gridCoreSelector.js +7 -0
- package/legacy/hooks/core/useGridInitialization.js +4 -0
- package/legacy/hooks/core/useGridRefs.js +13 -0
- package/legacy/hooks/core/useGridTheme.js +21 -0
- package/legacy/hooks/features/columnGrouping/useGridColumnGrouping.js +7 -14
- package/legacy/hooks/features/columnHeaders/useGridColumnHeaders.js +69 -181
- package/legacy/hooks/features/columnMenu/useGridColumnMenu.js +28 -23
- package/legacy/hooks/features/columns/gridColumnsInterfaces.js +9 -1
- package/legacy/hooks/features/columns/gridColumnsSelector.js +62 -0
- package/legacy/hooks/features/columns/gridColumnsUtils.js +10 -16
- package/legacy/hooks/features/columns/index.js +2 -1
- package/legacy/hooks/features/columns/useGridColumnSpanning.js +60 -59
- package/legacy/hooks/features/columns/useGridColumns.js +22 -23
- package/legacy/hooks/features/dimensions/gridDimensionsSelectors.js +3 -0
- package/legacy/hooks/features/dimensions/index.js +1 -0
- package/legacy/hooks/features/dimensions/useGridDimensions.js +226 -151
- package/legacy/hooks/features/export/serializers/csvSerializer.js +2 -2
- package/legacy/hooks/features/filter/useGridFilter.js +3 -3
- package/legacy/hooks/features/focus/gridFocusStateSelector.js +2 -6
- package/legacy/hooks/features/focus/useGridFocus.js +3 -3
- package/legacy/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +3 -16
- package/legacy/hooks/features/pagination/useGridPagination.js +3 -5
- package/legacy/hooks/features/rows/gridRowsSelector.js +5 -5
- package/legacy/hooks/features/rows/gridRowsUtils.js +4 -4
- package/legacy/hooks/features/rows/useGridRowsMeta.js +7 -4
- package/legacy/hooks/features/scroll/useGridScroll.js +8 -10
- package/legacy/hooks/features/sorting/gridSortingUtils.js +1 -1
- package/legacy/hooks/features/sorting/useGridSorting.js +15 -10
- package/legacy/hooks/features/virtualization/gridVirtualizationSelectors.js +29 -1
- package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +490 -483
- package/legacy/hooks/features/virtualization/useGridVirtualization.js +8 -1
- package/legacy/hooks/utils/index.js +4 -1
- package/legacy/hooks/utils/useGridAriaAttributes.js +1 -2
- package/legacy/hooks/utils/useGridNativeEventListener.js +4 -9
- package/legacy/hooks/utils/useResizeObserver.js +36 -0
- package/legacy/hooks/utils/useRunOnce.js +18 -0
- package/legacy/index.js +1 -1
- package/legacy/internals/index.js +9 -7
- package/legacy/locales/hrHR.js +161 -0
- package/legacy/locales/index.js +4 -1
- package/legacy/locales/ptPT.js +161 -0
- package/legacy/locales/zhHK.js +161 -0
- package/legacy/models/index.js +0 -1
- package/legacy/models/params/index.js +1 -2
- package/legacy/utils/utils.js +10 -1
- package/locales/hrHR.d.ts +1 -0
- package/locales/hrHR.js +149 -0
- package/locales/index.d.ts +3 -0
- package/locales/index.js +4 -1
- package/locales/ptPT.d.ts +1 -0
- package/locales/ptPT.js +149 -0
- package/locales/zhHK.d.ts +1 -0
- package/locales/zhHK.js +149 -0
- package/models/api/gridColumnGroupingApi.d.ts +2 -2
- package/models/api/gridCoreApi.d.ts +16 -16
- package/models/api/gridRowsMetaApi.d.ts +1 -1
- package/models/api/gridVirtualizationApi.d.ts +2 -3
- package/models/events/gridEventLookup.d.ts +3 -3
- package/models/gridFilterModel.d.ts +1 -1
- package/models/gridSlotsComponent.d.ts +16 -2
- package/models/gridStateCommunity.d.ts +5 -1
- package/models/index.d.ts +0 -1
- package/models/index.js +0 -1
- package/models/params/index.d.ts +0 -1
- package/models/params/index.js +1 -2
- package/models/props/DataGridProps.d.ts +6 -11
- package/modern/DataGrid/DataGrid.js +6 -6
- package/modern/DataGrid/useDataGridComponent.js +2 -1
- package/modern/DataGrid/useDataGridProps.js +1 -0
- package/modern/components/GridColumnHeaders.js +3 -11
- package/modern/components/GridDetailPanels.js +4 -0
- package/modern/components/GridHeaders.js +53 -0
- package/modern/components/GridPinnedRows.js +4 -0
- package/modern/components/GridRow.js +258 -96
- package/modern/components/GridScrollbarFillerCell.js +39 -0
- package/modern/components/base/GridBody.js +2 -116
- package/modern/components/base/GridOverlays.js +10 -16
- package/modern/components/cell/GridCell.js +65 -369
- package/modern/components/columnHeaders/GridBaseColumnHeaders.js +1 -6
- package/modern/components/columnHeaders/GridColumnHeaderItem.js +7 -3
- package/modern/components/columnHeaders/GridColumnHeaderSortIcon.js +5 -2
- package/modern/components/columnHeaders/GridColumnHeadersInner.js +1 -1
- package/modern/components/containers/GridRoot.js +18 -14
- package/modern/components/containers/GridRootStyles.js +307 -204
- package/modern/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +1 -1
- package/modern/components/panel/GridPanel.js +3 -4
- package/modern/components/panel/filterPanel/GridFilterForm.js +30 -13
- package/modern/components/panel/filterPanel/GridFilterPanel.js +46 -20
- package/modern/components/toolbar/GridToolbarColumnsButton.js +38 -21
- package/modern/components/toolbar/GridToolbarDensitySelector.js +38 -21
- package/modern/components/toolbar/GridToolbarExport.js +6 -1
- package/modern/components/toolbar/GridToolbarExportContainer.js +39 -22
- package/modern/components/toolbar/GridToolbarFilterButton.js +6 -10
- package/modern/components/virtualization/GridBottomContainer.js +25 -0
- package/modern/components/virtualization/GridMainContainer.js +20 -0
- package/modern/components/virtualization/GridTopContainer.js +35 -0
- package/modern/components/virtualization/GridVirtualScrollbar.js +131 -0
- package/modern/components/virtualization/GridVirtualScroller.js +69 -16
- package/modern/components/virtualization/GridVirtualScrollerFiller.js +71 -0
- package/modern/components/virtualization/GridVirtualScrollerRenderZone.js +2 -1
- package/modern/constants/defaultGridSlotsComponents.js +6 -2
- package/modern/constants/gridClasses.js +1 -1
- package/modern/hooks/core/gridCoreSelector.js +5 -0
- package/modern/hooks/core/useGridInitialization.js +4 -0
- package/modern/hooks/core/useGridRefs.js +13 -0
- package/modern/hooks/core/useGridTheme.js +19 -0
- package/modern/hooks/features/columnGrouping/useGridColumnGrouping.js +5 -12
- package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +67 -160
- package/modern/hooks/features/columnMenu/useGridColumnMenu.js +28 -23
- package/modern/hooks/features/columns/gridColumnsInterfaces.js +9 -1
- package/modern/hooks/features/columns/gridColumnsSelector.js +51 -0
- package/modern/hooks/features/columns/gridColumnsUtils.js +10 -12
- package/modern/hooks/features/columns/index.js +2 -1
- package/modern/hooks/features/columns/useGridColumnSpanning.js +62 -61
- package/modern/hooks/features/columns/useGridColumns.js +19 -21
- package/modern/hooks/features/dimensions/gridDimensionsSelectors.js +1 -0
- package/modern/hooks/features/dimensions/index.js +1 -0
- package/modern/hooks/features/dimensions/useGridDimensions.js +214 -146
- package/modern/hooks/features/export/serializers/csvSerializer.js +2 -2
- package/modern/hooks/features/filter/useGridFilter.js +3 -3
- package/modern/hooks/features/focus/gridFocusStateSelector.js +2 -6
- package/modern/hooks/features/focus/useGridFocus.js +3 -3
- package/modern/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +3 -16
- package/modern/hooks/features/pagination/useGridPagination.js +3 -5
- package/modern/hooks/features/rows/gridRowsSelector.js +2 -2
- package/modern/hooks/features/rows/gridRowsUtils.js +4 -4
- package/modern/hooks/features/rows/useGridRowsMeta.js +7 -4
- package/modern/hooks/features/scroll/useGridScroll.js +8 -9
- package/modern/hooks/features/sorting/gridSortingUtils.js +1 -1
- package/modern/hooks/features/sorting/useGridSorting.js +15 -10
- package/modern/hooks/features/virtualization/gridVirtualizationSelectors.js +22 -2
- package/modern/hooks/features/virtualization/useGridVirtualScroller.js +435 -432
- package/modern/hooks/features/virtualization/useGridVirtualization.js +8 -1
- package/modern/hooks/utils/index.js +4 -1
- package/modern/hooks/utils/useGridAriaAttributes.js +1 -1
- package/modern/hooks/utils/useGridNativeEventListener.js +3 -9
- package/modern/hooks/utils/useResizeObserver.js +36 -0
- package/modern/hooks/utils/useRunOnce.js +18 -0
- package/modern/index.js +1 -1
- package/modern/internals/index.js +9 -7
- package/modern/locales/hrHR.js +149 -0
- package/modern/locales/index.js +4 -1
- package/modern/locales/ptPT.js +149 -0
- package/modern/locales/zhHK.js +149 -0
- package/modern/models/index.js +0 -1
- package/modern/models/params/index.js +1 -2
- package/modern/utils/utils.js +10 -1
- package/node/DataGrid/DataGrid.js +6 -6
- package/node/DataGrid/useDataGridComponent.js +1 -0
- package/node/DataGrid/useDataGridProps.js +1 -0
- package/node/components/GridColumnHeaders.js +3 -11
- package/node/components/GridDetailPanels.js +10 -0
- package/node/components/GridHeaders.js +60 -0
- package/node/components/GridPinnedRows.js +10 -0
- package/node/components/GridRow.js +256 -94
- package/node/components/GridScrollbarFillerCell.js +47 -0
- package/node/components/base/GridBody.js +7 -118
- package/node/components/base/GridOverlays.js +9 -15
- package/node/components/cell/GridCell.js +66 -369
- package/node/components/columnHeaders/GridBaseColumnHeaders.js +1 -6
- package/node/components/columnHeaders/GridColumnHeaderItem.js +8 -4
- package/node/components/columnHeaders/GridColumnHeaderSortIcon.js +5 -2
- package/node/components/columnHeaders/GridColumnHeadersInner.js +1 -1
- package/node/components/containers/GridRoot.js +17 -14
- package/node/components/containers/GridRootStyles.js +175 -72
- package/node/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +1 -1
- package/node/components/panel/GridPanel.js +3 -4
- package/node/components/panel/filterPanel/GridFilterForm.js +29 -12
- package/node/components/panel/filterPanel/GridFilterPanel.js +45 -19
- package/node/components/toolbar/GridToolbarColumnsButton.js +36 -20
- package/node/components/toolbar/GridToolbarDensitySelector.js +36 -20
- package/node/components/toolbar/GridToolbarExport.js +6 -1
- package/node/components/toolbar/GridToolbarExportContainer.js +37 -21
- package/node/components/toolbar/GridToolbarFilterButton.js +6 -10
- package/node/components/virtualization/GridBottomContainer.js +34 -0
- package/node/components/{containers → virtualization}/GridMainContainer.js +7 -29
- package/node/components/virtualization/GridTopContainer.js +44 -0
- package/node/components/virtualization/GridVirtualScrollbar.js +138 -0
- package/node/components/virtualization/GridVirtualScroller.js +69 -17
- package/node/components/virtualization/GridVirtualScrollerFiller.js +77 -0
- package/node/components/virtualization/GridVirtualScrollerRenderZone.js +2 -1
- package/node/constants/defaultGridSlotsComponents.js +5 -1
- package/node/constants/gridClasses.js +1 -1
- package/node/hooks/core/gridCoreSelector.js +12 -0
- package/node/hooks/core/useGridInitialization.js +4 -0
- package/node/hooks/core/useGridRefs.js +22 -0
- package/node/hooks/core/useGridTheme.js +29 -0
- package/node/hooks/features/columnGrouping/useGridColumnGrouping.js +5 -12
- package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +65 -159
- package/node/hooks/features/columnMenu/useGridColumnMenu.js +28 -23
- package/node/hooks/features/columns/gridColumnsInterfaces.js +11 -1
- package/node/hooks/features/columns/gridColumnsSelector.js +52 -1
- package/node/hooks/features/columns/gridColumnsUtils.js +10 -13
- package/node/hooks/features/columns/index.js +22 -61
- package/node/hooks/features/columns/useGridColumnSpanning.js +62 -61
- package/node/hooks/features/columns/useGridColumns.js +20 -22
- package/node/hooks/features/dimensions/gridDimensionsSelectors.js +8 -0
- package/node/hooks/features/dimensions/index.js +11 -0
- package/node/hooks/features/dimensions/useGridDimensions.js +215 -144
- package/node/hooks/features/export/serializers/csvSerializer.js +2 -2
- package/node/hooks/features/filter/useGridFilter.js +2 -2
- package/node/hooks/features/focus/gridFocusStateSelector.js +3 -7
- package/node/hooks/features/focus/useGridFocus.js +2 -2
- package/node/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +2 -15
- package/node/hooks/features/pagination/useGridPagination.js +3 -5
- package/node/hooks/features/rows/gridRowsSelector.js +2 -2
- package/node/hooks/features/rows/gridRowsUtils.js +4 -4
- package/node/hooks/features/rows/useGridRowsMeta.js +5 -3
- package/node/hooks/features/scroll/useGridScroll.js +8 -9
- package/node/hooks/features/sorting/gridSortingUtils.js +1 -1
- package/node/hooks/features/sorting/useGridSorting.js +15 -10
- package/node/hooks/features/virtualization/gridVirtualizationSelectors.js +22 -2
- package/node/hooks/features/virtualization/useGridVirtualScroller.js +434 -431
- package/node/hooks/features/virtualization/useGridVirtualization.js +9 -1
- package/node/hooks/utils/index.js +36 -0
- package/node/hooks/utils/useGridAriaAttributes.js +1 -1
- package/node/hooks/utils/useGridNativeEventListener.js +3 -9
- package/node/hooks/utils/useResizeObserver.js +44 -0
- package/node/hooks/utils/useRunOnce.js +27 -0
- package/node/index.js +1 -1
- package/node/internals/index.js +86 -71
- package/node/locales/hrHR.js +155 -0
- package/node/locales/index.js +33 -0
- package/node/locales/ptPT.js +155 -0
- package/node/locales/zhHK.js +155 -0
- package/node/models/index.js +0 -11
- package/node/models/params/index.js +0 -11
- package/node/utils/utils.js +11 -1
- package/package.json +6 -6
- package/utils/utils.d.ts +6 -0
- package/utils/utils.js +10 -1
- package/components/DataGridVirtualScroller.d.ts +0 -3
- package/components/DataGridVirtualScroller.js +0 -35
- package/components/containers/GridMainContainer.js +0 -43
- package/legacy/components/DataGridVirtualScroller.js +0 -32
- package/legacy/components/containers/GridMainContainer.js +0 -45
- package/legacy/models/gridRootContainerRef.js +0 -1
- package/legacy/models/params/gridRenderedRowsIntervalChangeParams.js +0 -1
- package/models/gridRootContainerRef.d.ts +0 -5
- package/models/gridRootContainerRef.js +0 -1
- package/models/params/gridRenderedRowsIntervalChangeParams.d.ts +0 -10
- package/models/params/gridRenderedRowsIntervalChangeParams.js +0 -1
- package/modern/components/DataGridVirtualScroller.js +0 -35
- package/modern/components/containers/GridMainContainer.js +0 -42
- package/modern/models/gridRootContainerRef.js +0 -1
- package/modern/models/params/gridRenderedRowsIntervalChangeParams.js +0 -1
- package/node/components/DataGridVirtualScroller.js +0 -42
- package/node/models/gridRootContainerRef.js +0 -5
- package/node/models/params/gridRenderedRowsIntervalChangeParams.js +0 -5
|
@@ -35,4 +35,4 @@ export declare function calculatePinnedRowsHeight(apiRef: React.MutableRefObject
|
|
|
35
35
|
top: number;
|
|
36
36
|
bottom: number;
|
|
37
37
|
};
|
|
38
|
-
export declare function getMinimalContentHeight(apiRef: React.MutableRefObject<GridApiCommunity
|
|
38
|
+
export declare function getMinimalContentHeight(apiRef: React.MutableRefObject<GridApiCommunity>): string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import { gridPinnedRowsSelector } from './gridRowsSelector';
|
|
3
|
-
import {
|
|
3
|
+
import { gridDimensionsSelector } from '../dimensions';
|
|
4
4
|
export const GRID_ROOT_GROUP_ID = `auto-generated-group-node-root`;
|
|
5
5
|
export const GRID_ID_AUTOGENERATED = Symbol('mui.id_autogenerated');
|
|
6
6
|
export const buildRootGroup = () => ({
|
|
@@ -277,7 +277,7 @@ export function calculatePinnedRowsHeight(apiRef) {
|
|
|
277
277
|
bottom: bottomPinnedRowsHeight
|
|
278
278
|
};
|
|
279
279
|
}
|
|
280
|
-
export function getMinimalContentHeight(apiRef
|
|
281
|
-
const
|
|
282
|
-
return `var(--DataGrid-overlayHeight, ${2 *
|
|
280
|
+
export function getMinimalContentHeight(apiRef) {
|
|
281
|
+
const dimensions = gridDimensionsSelector(apiRef.current.state);
|
|
282
|
+
return `var(--DataGrid-overlayHeight, ${2 * dimensions.rowHeight}px)`;
|
|
283
283
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import { unstable_debounce as debounce
|
|
3
|
+
import { unstable_debounce as debounce } from '@mui/utils';
|
|
4
4
|
import { useGridVisibleRows } from '../../utils/useGridVisibleRows';
|
|
5
5
|
import { useGridApiMethod } from '../../utils/useGridApiMethod';
|
|
6
6
|
import { useGridSelector } from '../../utils/useGridSelector';
|
|
@@ -11,6 +11,9 @@ import { gridSortModelSelector } from '../sorting/gridSortingSelector';
|
|
|
11
11
|
import { useGridRegisterPipeApplier } from '../../core/pipeProcessing';
|
|
12
12
|
import { gridPinnedRowsSelector } from './gridRowsSelector';
|
|
13
13
|
import { DATA_GRID_PROPS_DEFAULT_VALUES } from '../../../DataGrid/useDataGridProps';
|
|
14
|
+
|
|
15
|
+
// TODO: I think the row heights can now be encoded as a single `size` instead of `sizes.baseXxxx`
|
|
16
|
+
|
|
14
17
|
export const rowsMetaStateInitializer = state => _extends({}, state, {
|
|
15
18
|
rowsMeta: {
|
|
16
19
|
currentPageTotalHeight: 0,
|
|
@@ -179,15 +182,15 @@ export const useGridRowsMeta = (apiRef, props) => {
|
|
|
179
182
|
hydrateRowsMeta();
|
|
180
183
|
}, [hydrateRowsMeta]);
|
|
181
184
|
const debouncedHydrateRowsMeta = React.useMemo(() => debounce(hydrateRowsMeta, props.rowPositionsDebounceMs), [hydrateRowsMeta, props.rowPositionsDebounceMs]);
|
|
182
|
-
const storeMeasuredRowHeight = React.useCallback((id, height
|
|
185
|
+
const storeMeasuredRowHeight = React.useCallback((id, height) => {
|
|
183
186
|
if (!rowsHeightLookup.current[id] || !rowsHeightLookup.current[id].autoHeight) {
|
|
184
187
|
return;
|
|
185
188
|
}
|
|
186
189
|
|
|
187
190
|
// Only trigger hydration if the value is different, otherwise we trigger a loop
|
|
188
|
-
const needsHydration = rowsHeightLookup.current[id].sizes
|
|
191
|
+
const needsHydration = rowsHeightLookup.current[id].sizes.baseCenter !== height;
|
|
189
192
|
rowsHeightLookup.current[id].needsFirstMeasurement = false;
|
|
190
|
-
rowsHeightLookup.current[id].sizes
|
|
193
|
+
rowsHeightLookup.current[id].sizes.baseCenter = height;
|
|
191
194
|
if (needsHydration) {
|
|
192
195
|
debouncedHydrateRowsMeta();
|
|
193
196
|
}
|
|
@@ -8,7 +8,7 @@ import { gridRowCountSelector } from '../rows/gridRowsSelector';
|
|
|
8
8
|
import { gridRowsMetaSelector } from '../rows/gridRowsMetaSelector';
|
|
9
9
|
import { useGridApiMethod } from '../../utils/useGridApiMethod';
|
|
10
10
|
import { gridExpandedSortedRowEntriesSelector } from '../filter/gridFilterSelector';
|
|
11
|
-
import {
|
|
11
|
+
import { gridDimensionsSelector } from '../dimensions';
|
|
12
12
|
|
|
13
13
|
// Logic copied from https://www.w3.org/TR/wai-aria-practices/examples/listbox/js/listbox.js
|
|
14
14
|
// Similar to https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView
|
|
@@ -49,6 +49,7 @@ export const useGridScroll = (apiRef, props) => {
|
|
|
49
49
|
const virtualScrollerRef = apiRef.current.virtualScrollerRef;
|
|
50
50
|
const visibleSortedRows = useGridSelector(apiRef, gridExpandedSortedRowEntriesSelector);
|
|
51
51
|
const scrollToIndexes = React.useCallback(params => {
|
|
52
|
+
const dimensions = gridDimensionsSelector(apiRef.current.state);
|
|
52
53
|
const totalRowCount = gridRowCountSelector(apiRef);
|
|
53
54
|
const visibleColumns = gridVisibleColumnDefinitionsSelector(apiRef);
|
|
54
55
|
const scrollToHeader = params.rowIndex == null;
|
|
@@ -57,7 +58,7 @@ export const useGridScroll = (apiRef, props) => {
|
|
|
57
58
|
}
|
|
58
59
|
logger.debug(`Scrolling to cell at row ${params.rowIndex}, col: ${params.colIndex} `);
|
|
59
60
|
let scrollCoordinates = {};
|
|
60
|
-
if (params.colIndex
|
|
61
|
+
if (params.colIndex !== undefined) {
|
|
61
62
|
const columnPositions = gridColumnPositionsSelector(apiRef);
|
|
62
63
|
let cellWidth;
|
|
63
64
|
if (typeof params.rowIndex !== 'undefined') {
|
|
@@ -73,23 +74,20 @@ export const useGridScroll = (apiRef, props) => {
|
|
|
73
74
|
}
|
|
74
75
|
// When using RTL, `scrollLeft` becomes negative, so we must ensure that we only compare values.
|
|
75
76
|
scrollCoordinates.left = scrollIntoView({
|
|
76
|
-
clientHeight:
|
|
77
|
+
clientHeight: dimensions.viewportInnerSize.width,
|
|
77
78
|
scrollTop: Math.abs(virtualScrollerRef.current.scrollLeft),
|
|
78
79
|
offsetHeight: cellWidth,
|
|
79
80
|
offsetTop: columnPositions[params.colIndex]
|
|
80
81
|
});
|
|
81
82
|
}
|
|
82
|
-
if (params.rowIndex
|
|
83
|
-
var _querySelector, _querySelector2;
|
|
83
|
+
if (params.rowIndex !== undefined) {
|
|
84
84
|
const rowsMeta = gridRowsMetaSelector(apiRef.current.state);
|
|
85
85
|
const page = gridPageSelector(apiRef);
|
|
86
86
|
const pageSize = gridPageSizeSelector(apiRef);
|
|
87
87
|
const elementIndex = !props.pagination ? params.rowIndex : params.rowIndex - page * pageSize;
|
|
88
88
|
const targetOffsetHeight = rowsMeta.positions[elementIndex + 1] ? rowsMeta.positions[elementIndex + 1] - rowsMeta.positions[elementIndex] : rowsMeta.currentPageTotalHeight - rowsMeta.positions[elementIndex];
|
|
89
|
-
const topPinnedRowsHeight = ((_querySelector = virtualScrollerRef.current.querySelector(`.${gridClasses['pinnedRows--top']}`)) == null ? void 0 : _querySelector.clientHeight) || 0;
|
|
90
|
-
const bottomPinnedRowsHeight = ((_querySelector2 = virtualScrollerRef.current.querySelector(`.${gridClasses['pinnedRows--bottom']}`)) == null ? void 0 : _querySelector2.clientHeight) || 0;
|
|
91
89
|
scrollCoordinates.top = scrollIntoView({
|
|
92
|
-
clientHeight:
|
|
90
|
+
clientHeight: dimensions.viewportInnerSize.height,
|
|
93
91
|
scrollTop: virtualScrollerRef.current.scrollTop,
|
|
94
92
|
offsetHeight: targetOffsetHeight,
|
|
95
93
|
offsetTop: rowsMeta.positions[elementIndex]
|
|
@@ -103,13 +101,13 @@ export const useGridScroll = (apiRef, props) => {
|
|
|
103
101
|
return false;
|
|
104
102
|
}, [logger, apiRef, virtualScrollerRef, props.pagination, visibleSortedRows]);
|
|
105
103
|
const scroll = React.useCallback(params => {
|
|
106
|
-
if (virtualScrollerRef.current && params.left
|
|
104
|
+
if (virtualScrollerRef.current && params.left !== undefined && colRef.current) {
|
|
107
105
|
const direction = theme.direction === 'rtl' ? -1 : 1;
|
|
108
106
|
colRef.current.scrollLeft = params.left;
|
|
109
107
|
virtualScrollerRef.current.scrollLeft = direction * params.left;
|
|
110
108
|
logger.debug(`Scrolling left: ${params.left}`);
|
|
111
109
|
}
|
|
112
|
-
if (virtualScrollerRef.current && params.top
|
|
110
|
+
if (virtualScrollerRef.current && params.top !== undefined) {
|
|
113
111
|
virtualScrollerRef.current.scrollTop = params.top;
|
|
114
112
|
logger.debug(`Scrolling top: ${params.top}`);
|
|
115
113
|
}
|
|
@@ -25,7 +25,7 @@ const isDesc = direction => direction === 'desc';
|
|
|
25
25
|
*/
|
|
26
26
|
const parseSortItem = (sortItem, apiRef) => {
|
|
27
27
|
const column = apiRef.current.getColumn(sortItem.field);
|
|
28
|
-
if (!column) {
|
|
28
|
+
if (!column || sortItem.sort === null) {
|
|
29
29
|
return null;
|
|
30
30
|
}
|
|
31
31
|
const comparator = isDesc(sortItem.sort) ? (...args) => -1 * column.sortComparator(...args) : column.sortComparator;
|
|
@@ -7,4 +7,4 @@ export declare const sortingStateInitializer: GridStateInitializer<Pick<DataGrid
|
|
|
7
7
|
* @requires useGridRows (event)
|
|
8
8
|
* @requires useGridColumns (event)
|
|
9
9
|
*/
|
|
10
|
-
export declare const useGridSorting: (apiRef: React.MutableRefObject<GridPrivateApiCommunity>, props: Pick<DataGridProcessedProps, 'initialState' | 'sortModel' | 'onSortModelChange' | 'sortingOrder' | 'sortingMode' | 'disableMultipleColumnsSorting'>) => void;
|
|
10
|
+
export declare const useGridSorting: (apiRef: React.MutableRefObject<GridPrivateApiCommunity>, props: Pick<DataGridProcessedProps, 'initialState' | 'sortModel' | 'onSortModelChange' | 'sortingOrder' | 'sortingMode' | 'disableColumnSorting' | 'disableMultipleColumnsSorting'>) => void;
|
|
@@ -60,7 +60,7 @@ export const useGridSorting = (apiRef, props) => {
|
|
|
60
60
|
if (existing) {
|
|
61
61
|
var _col$sortingOrder;
|
|
62
62
|
const nextSort = directionOverride === undefined ? getNextGridSortDirection((_col$sortingOrder = col.sortingOrder) != null ? _col$sortingOrder : props.sortingOrder, existing.sort) : directionOverride;
|
|
63
|
-
return nextSort
|
|
63
|
+
return nextSort === undefined ? undefined : _extends({}, existing, {
|
|
64
64
|
sort: nextSort
|
|
65
65
|
});
|
|
66
66
|
}
|
|
@@ -70,7 +70,7 @@ export const useGridSorting = (apiRef, props) => {
|
|
|
70
70
|
};
|
|
71
71
|
}, [apiRef, props.sortingOrder]);
|
|
72
72
|
const addColumnMenuItem = React.useCallback((columnMenuItems, colDef) => {
|
|
73
|
-
if (colDef == null || colDef.sortable === false) {
|
|
73
|
+
if (colDef == null || colDef.sortable === false || props.disableColumnSorting) {
|
|
74
74
|
return columnMenuItems;
|
|
75
75
|
}
|
|
76
76
|
const sortingOrder = colDef.sortingOrder || props.sortingOrder;
|
|
@@ -78,7 +78,7 @@ export const useGridSorting = (apiRef, props) => {
|
|
|
78
78
|
return [...columnMenuItems, 'columnMenuSortItem'];
|
|
79
79
|
}
|
|
80
80
|
return columnMenuItems;
|
|
81
|
-
}, [props.sortingOrder]);
|
|
81
|
+
}, [props.sortingOrder, props.disableColumnSorting]);
|
|
82
82
|
|
|
83
83
|
/**
|
|
84
84
|
* API METHODS
|
|
@@ -118,9 +118,6 @@ export const useGridSorting = (apiRef, props) => {
|
|
|
118
118
|
}, [apiRef, logger, props.disableMultipleColumnsSorting]);
|
|
119
119
|
const sortColumn = React.useCallback((field, direction, allowMultipleSorting) => {
|
|
120
120
|
const column = apiRef.current.getColumn(field);
|
|
121
|
-
if (!column.sortable) {
|
|
122
|
-
return;
|
|
123
|
-
}
|
|
124
121
|
const sortItem = createSortItem(column, direction);
|
|
125
122
|
let sortModel;
|
|
126
123
|
if (!allowMultipleSorting || props.disableMultipleColumnsSorting) {
|
|
@@ -200,19 +197,27 @@ export const useGridSorting = (apiRef, props) => {
|
|
|
200
197
|
* EVENTS
|
|
201
198
|
*/
|
|
202
199
|
const handleColumnHeaderClick = React.useCallback(({
|
|
203
|
-
field
|
|
200
|
+
field,
|
|
201
|
+
colDef
|
|
204
202
|
}, event) => {
|
|
203
|
+
if (!colDef.sortable || props.disableColumnSorting) {
|
|
204
|
+
return;
|
|
205
|
+
}
|
|
205
206
|
const allowMultipleSorting = event.shiftKey || event.metaKey || event.ctrlKey;
|
|
206
207
|
sortColumn(field, undefined, allowMultipleSorting);
|
|
207
|
-
}, [sortColumn]);
|
|
208
|
+
}, [sortColumn, props.disableColumnSorting]);
|
|
208
209
|
const handleColumnHeaderKeyDown = React.useCallback(({
|
|
209
|
-
field
|
|
210
|
+
field,
|
|
211
|
+
colDef
|
|
210
212
|
}, event) => {
|
|
213
|
+
if (!colDef.sortable || props.disableColumnSorting) {
|
|
214
|
+
return;
|
|
215
|
+
}
|
|
211
216
|
// Ctrl + Enter opens the column menu
|
|
212
217
|
if (isEnterKey(event.key) && !event.ctrlKey && !event.metaKey) {
|
|
213
218
|
sortColumn(field, undefined, event.shiftKey);
|
|
214
219
|
}
|
|
215
|
-
}, [sortColumn]);
|
|
220
|
+
}, [sortColumn, props.disableColumnSorting]);
|
|
216
221
|
const handleColumnsChange = React.useCallback(() => {
|
|
217
222
|
// When the columns change we check that the sorted columns are still part of the dataset
|
|
218
223
|
const sortModel = gridSortModelSelector(apiRef);
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { GridRenderContext } from '../../../models/params/gridScrollParams';
|
|
1
2
|
import { GridStateCommunity } from '../../../models/gridStateCommunity';
|
|
2
3
|
/**
|
|
3
4
|
* Get the columns state
|
|
@@ -14,3 +15,16 @@ export declare const gridVirtualizationEnabledSelector: import("../../../utils/c
|
|
|
14
15
|
* @category Virtualization
|
|
15
16
|
*/
|
|
16
17
|
export declare const gridVirtualizationColumnEnabledSelector: import("../../../utils/createSelector").OutputSelector<GridStateCommunity, boolean>;
|
|
18
|
+
/**
|
|
19
|
+
* Get the render context
|
|
20
|
+
* @category Virtualization
|
|
21
|
+
* @ignore - do not document.
|
|
22
|
+
*/
|
|
23
|
+
export declare const gridRenderContextSelector: import("../../../utils/createSelector").OutputSelector<GridStateCommunity, GridRenderContext>;
|
|
24
|
+
/**
|
|
25
|
+
* Get the render context, with only columns filled in.
|
|
26
|
+
* This is cached, so it can be used to only re-render when the column interval changes.
|
|
27
|
+
* @category Virtualization
|
|
28
|
+
* @ignore - do not document.
|
|
29
|
+
*/
|
|
30
|
+
export declare const gridRenderContextColumnsSelector: import("../../../utils/createSelector").OutputSelector<GridStateCommunity, GridRenderContext>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createSelector } from '../../../utils/createSelector';
|
|
1
|
+
import { createSelector, createSelectorMemoized } from '../../../utils/createSelector';
|
|
2
2
|
/**
|
|
3
3
|
* Get the columns state
|
|
4
4
|
* @category Virtualization
|
|
@@ -15,4 +15,24 @@ export const gridVirtualizationEnabledSelector = createSelector(gridVirtualizati
|
|
|
15
15
|
* Get the enabled state for virtualization
|
|
16
16
|
* @category Virtualization
|
|
17
17
|
*/
|
|
18
|
-
export const gridVirtualizationColumnEnabledSelector = createSelector(gridVirtualizationSelector, state => state.enabledForColumns);
|
|
18
|
+
export const gridVirtualizationColumnEnabledSelector = createSelector(gridVirtualizationSelector, state => state.enabledForColumns);
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Get the render context
|
|
22
|
+
* @category Virtualization
|
|
23
|
+
* @ignore - do not document.
|
|
24
|
+
*/
|
|
25
|
+
export const gridRenderContextSelector = createSelector(gridVirtualizationSelector, state => state.renderContext);
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Get the render context, with only columns filled in.
|
|
29
|
+
* This is cached, so it can be used to only re-render when the column interval changes.
|
|
30
|
+
* @category Virtualization
|
|
31
|
+
* @ignore - do not document.
|
|
32
|
+
*/
|
|
33
|
+
export const gridRenderContextColumnsSelector = createSelectorMemoized(state => state.virtualization.renderContext.firstColumnIndex, state => state.virtualization.renderContext.lastColumnIndex, (firstColumnIndex, lastColumnIndex) => ({
|
|
34
|
+
firstRowIndex: -1,
|
|
35
|
+
lastRowIndex: -1,
|
|
36
|
+
firstColumnIndex,
|
|
37
|
+
lastColumnIndex
|
|
38
|
+
}));
|
|
@@ -1,51 +1,28 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
export declare
|
|
5
|
-
export
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
minFirstIndex: number;
|
|
10
|
-
maxLastIndex: number;
|
|
11
|
-
}) => number[];
|
|
12
|
-
export declare const areRenderContextsEqual: (context1: GridRenderContext, context2: GridRenderContext) => boolean;
|
|
13
|
-
interface UseGridVirtualScrollerProps {
|
|
14
|
-
ref: React.Ref<HTMLDivElement>;
|
|
15
|
-
renderZoneMinColumnIndex?: number;
|
|
16
|
-
renderZoneMaxColumnIndex?: number;
|
|
17
|
-
onRenderZonePositioning?: (params: {
|
|
18
|
-
top: number;
|
|
19
|
-
left: number;
|
|
20
|
-
}) => void;
|
|
21
|
-
getRowProps?: (id: GridRowId, model: GridRowModel) => any;
|
|
22
|
-
}
|
|
23
|
-
export declare const useGridVirtualScroller: (props: UseGridVirtualScrollerProps) => {
|
|
24
|
-
renderContext: GridRenderContext | null;
|
|
25
|
-
updateRenderZonePosition: (nextRenderContext: GridRenderContext) => void;
|
|
2
|
+
import { GridPinnedRowsPosition } from '../rows/gridRowsInterfaces';
|
|
3
|
+
import { GridRenderContext, GridRowEntry, GridRowId } from '../../../models';
|
|
4
|
+
export declare const EMPTY_DETAIL_PANELS: Readonly<Map<GridRowId, React.ReactNode>>;
|
|
5
|
+
export type VirtualScroller = ReturnType<typeof useGridVirtualScroller>;
|
|
6
|
+
export declare const useGridVirtualScroller: () => {
|
|
7
|
+
renderContext: GridRenderContext;
|
|
8
|
+
setPanels: React.Dispatch<React.SetStateAction<Readonly<Map<GridRowId, React.ReactNode>>>>;
|
|
26
9
|
getRows: (params?: {
|
|
27
|
-
renderContext: GridRenderContext | null;
|
|
28
|
-
position?: string | undefined;
|
|
29
|
-
minFirstColumn?: number | undefined;
|
|
30
|
-
maxLastColumn?: number | undefined;
|
|
31
|
-
availableSpace?: number | null | undefined;
|
|
32
10
|
rows?: GridRowEntry<import("../../../models").GridValidRowModel>[] | undefined;
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
ref: ((instance: HTMLDivElement | null) => void) | null;
|
|
11
|
+
position?: keyof import("../rows/gridRowsInterfaces").GridPinnedRowsState | undefined;
|
|
12
|
+
}) => React.ReactNode[];
|
|
13
|
+
getContainerProps: () => {
|
|
14
|
+
ref: React.RefObject<HTMLDivElement>;
|
|
15
|
+
};
|
|
16
|
+
getScrollerProps: () => {
|
|
17
|
+
ref: React.RefObject<HTMLDivElement>;
|
|
18
|
+
tabIndex: number;
|
|
42
19
|
onScroll: (event: React.UIEvent) => void;
|
|
43
20
|
onWheel: (event: React.WheelEvent) => void;
|
|
44
21
|
onTouchMove: (event: React.TouchEvent) => void;
|
|
22
|
+
style: React.CSSProperties;
|
|
23
|
+
role: string;
|
|
45
24
|
};
|
|
46
|
-
getContentProps: (
|
|
47
|
-
style?: object | undefined;
|
|
48
|
-
}) => {
|
|
25
|
+
getContentProps: () => {
|
|
49
26
|
style: React.CSSProperties;
|
|
50
27
|
role: string;
|
|
51
28
|
};
|
|
@@ -53,5 +30,13 @@ export declare const useGridVirtualScroller: (props: UseGridVirtualScrollerProps
|
|
|
53
30
|
ref: React.RefObject<HTMLDivElement>;
|
|
54
31
|
role: string;
|
|
55
32
|
};
|
|
33
|
+
getScrollbarVerticalProps: () => {
|
|
34
|
+
ref: React.RefObject<HTMLDivElement>;
|
|
35
|
+
role: string;
|
|
36
|
+
};
|
|
37
|
+
getScrollbarHorizontalProps: () => {
|
|
38
|
+
ref: React.RefObject<HTMLDivElement>;
|
|
39
|
+
role: string;
|
|
40
|
+
};
|
|
56
41
|
};
|
|
57
|
-
export
|
|
42
|
+
export declare function areRenderContextsEqual(context1: GridRenderContext, context2: GridRenderContext): boolean;
|