@mui/x-data-grid 8.0.0-alpha.6 → 8.0.0-alpha.8
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 +242 -1
- package/DataGrid/DataGrid.js +4 -5
- package/DataGrid/useDataGridComponent.d.ts +1 -1
- package/DataGrid/useDataGridComponent.js +1 -1
- package/components/GridHeaders.js +2 -2
- package/components/GridRow.d.ts +5 -9
- package/components/GridRow.js +26 -78
- package/components/GridSkeletonLoadingOverlay.js +18 -18
- package/components/cell/GridActionsCellItem.d.ts +16 -9
- package/components/cell/GridActionsCellItem.js +2 -0
- package/components/cell/GridCell.d.ts +9 -16
- package/components/cell/GridCell.js +17 -35
- package/components/cell/GridEditDateCell.js +1 -1
- package/components/cell/GridEditInputCell.js +1 -1
- package/components/cell/GridEditSingleSelectCell.js +2 -2
- package/components/columnHeaders/ColumnHeaderMenuIcon.d.ts +1 -1
- package/components/columnHeaders/GridColumnGroupHeader.d.ts +5 -5
- package/components/columnHeaders/GridColumnGroupHeader.js +7 -10
- package/components/columnHeaders/GridColumnHeaderFilterIconButton.js +0 -1
- package/components/columnHeaders/GridColumnHeaderItem.d.ts +5 -5
- package/components/columnHeaders/GridColumnHeaderItem.js +13 -12
- package/components/columnSelection/GridCellCheckboxRenderer.js +4 -3
- package/components/columnSelection/GridHeaderCheckbox.js +6 -2
- package/components/columnsManagement/GridColumnsManagement.js +2 -2
- package/components/containers/GridRoot.d.ts +2 -2
- package/components/containers/GridRoot.js +14 -6
- package/components/containers/GridRootStyles.js +7 -0
- package/components/panel/GridPanel.d.ts +1 -1
- package/components/panel/filterPanel/GridFilterInputBoolean.d.ts +1 -0
- package/components/panel/filterPanel/GridFilterInputBoolean.js +12 -16
- package/components/panel/filterPanel/GridFilterInputDate.d.ts +2 -1
- package/components/panel/filterPanel/GridFilterInputDate.js +32 -29
- package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +1 -1
- package/components/panel/filterPanel/GridFilterInputMultipleValue.js +1 -1
- package/components/panel/filterPanel/GridFilterInputSingleSelect.d.ts +1 -0
- package/components/panel/filterPanel/GridFilterInputSingleSelect.js +13 -17
- package/components/panel/filterPanel/GridFilterInputValue.d.ts +1 -0
- package/components/panel/filterPanel/GridFilterInputValue.js +40 -37
- package/components/panel/filterPanel/GridFilterInputValueProps.d.ts +1 -1
- package/components/toolbar/GridToolbarQuickFilter.js +2 -2
- package/components/virtualization/GridVirtualScrollbar.js +11 -12
- package/components/virtualization/GridVirtualScroller.js +4 -4
- package/constants/gridClasses.d.ts +12 -0
- package/constants/gridClasses.js +1 -1
- package/constants/localeTextConstants.js +1 -0
- package/context/GridContextProvider.d.ts +1 -1
- package/hooks/core/pipeProcessing/gridPipeProcessingApi.d.ts +9 -2
- package/hooks/core/pipeProcessing/useGridPipeProcessing.d.ts +1 -1
- package/hooks/core/pipeProcessing/useGridRegisterPipeApplier.d.ts +1 -1
- package/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +1 -1
- package/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.d.ts +1 -1
- package/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +1 -1
- package/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.d.ts +1 -1
- package/hooks/core/strategyProcessing/useGridStrategyProcessing.d.ts +1 -1
- package/hooks/core/useGridApiInitialization.d.ts +1 -1
- package/hooks/core/useGridApiInitialization.js +2 -2
- package/hooks/core/useGridInitialization.d.ts +1 -1
- package/hooks/core/useGridIsRtl.d.ts +1 -1
- package/hooks/core/useGridLocaleText.d.ts +1 -1
- package/hooks/core/useGridLoggerFactory.d.ts +1 -1
- package/hooks/core/useGridRefs.d.ts +1 -1
- package/hooks/core/useGridStateInitialization.d.ts +1 -1
- package/hooks/features/clipboard/useGridClipboard.d.ts +1 -1
- package/hooks/features/columnGrouping/useGridColumnGrouping.d.ts +1 -1
- package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +5 -7
- package/hooks/features/columnHeaders/useGridColumnHeaders.js +34 -76
- package/hooks/features/columnMenu/useGridColumnMenu.d.ts +1 -1
- package/hooks/features/columnResize/useGridColumnResize.d.ts +1 -1
- package/hooks/features/columnResize/useGridColumnResize.js +4 -4
- package/hooks/features/columns/gridColumnsUtils.d.ts +3 -3
- package/hooks/features/columns/useGridColumnSpanning.d.ts +1 -1
- package/hooks/features/columns/useGridColumns.d.ts +1 -1
- package/hooks/features/density/useGridDensity.d.ts +1 -1
- package/hooks/features/dimensions/useGridDimensions.d.ts +1 -1
- package/hooks/features/editing/useGridCellEditing.d.ts +1 -1
- package/hooks/features/editing/useGridCellEditing.js +1 -1
- package/hooks/features/editing/useGridEditing.d.ts +1 -1
- package/hooks/features/editing/useGridRowEditing.d.ts +1 -1
- package/hooks/features/editing/useGridRowEditing.js +2 -2
- package/hooks/features/events/useGridEvents.d.ts +1 -1
- package/hooks/features/export/serializers/csvSerializer.d.ts +1 -1
- package/hooks/features/export/useGridCsvExport.d.ts +1 -1
- package/hooks/features/export/useGridPrintExport.d.ts +1 -1
- package/hooks/features/export/useGridPrintExport.js +1 -1
- package/hooks/features/export/utils.d.ts +1 -1
- package/hooks/features/filter/gridFilterSelector.d.ts +1 -1
- package/hooks/features/filter/gridFilterSelector.js +6 -1
- package/hooks/features/filter/gridFilterUtils.d.ts +6 -6
- package/hooks/features/filter/gridFilterUtils.js +3 -3
- package/hooks/features/filter/useGridFilter.d.ts +1 -1
- package/hooks/features/focus/useGridFocus.d.ts +1 -1
- package/hooks/features/headerFiltering/useGridHeaderFiltering.d.ts +1 -1
- package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.d.ts +1 -1
- package/hooks/features/keyboardNavigation/utils.d.ts +2 -2
- package/hooks/features/listView/useGridListView.d.ts +1 -1
- package/hooks/features/pagination/gridPaginationInterfaces.d.ts +3 -0
- package/hooks/features/pagination/gridPaginationSelector.d.ts +21 -2
- package/hooks/features/pagination/gridPaginationSelector.js +39 -1
- package/hooks/features/pagination/useGridPagination.d.ts +2 -2
- package/hooks/features/pagination/useGridPagination.js +5 -3
- package/hooks/features/pagination/useGridPaginationMeta.d.ts +1 -1
- package/hooks/features/pagination/useGridPaginationModel.d.ts +1 -1
- package/hooks/features/pagination/useGridPaginationModel.js +23 -1
- package/hooks/features/pagination/useGridRowCount.d.ts +1 -1
- package/hooks/features/preferencesPanel/useGridPreferencesPanel.d.ts +1 -1
- package/hooks/features/preferencesPanel/useGridPreferencesPanel.js +2 -2
- package/hooks/features/rowSelection/useGridRowSelection.d.ts +1 -1
- package/hooks/features/rowSelection/useGridRowSelectionPreProcessors.d.ts +1 -1
- package/hooks/features/rowSelection/utils.d.ts +2 -2
- package/hooks/features/rows/gridRowSpanningUtils.d.ts +1 -1
- package/hooks/features/rows/gridRowsSelector.js +1 -1
- package/hooks/features/rows/gridRowsUtils.d.ts +3 -3
- package/hooks/features/rows/useGridParamsApi.d.ts +1 -1
- package/hooks/features/rows/useGridRowSpanning.d.ts +1 -1
- package/hooks/features/rows/useGridRows.d.ts +1 -1
- package/hooks/features/rows/useGridRows.js +2 -2
- package/hooks/features/rows/useGridRowsMeta.d.ts +1 -1
- package/hooks/features/rows/useGridRowsPreProcessors.d.ts +1 -1
- package/hooks/features/scroll/useGridScroll.d.ts +1 -1
- package/hooks/features/sorting/gridSortingUtils.d.ts +2 -2
- package/hooks/features/sorting/gridSortingUtils.js +2 -2
- package/hooks/features/sorting/useGridSorting.d.ts +1 -1
- package/hooks/features/statePersistence/useGridStatePersistence.d.ts +1 -1
- package/hooks/features/virtualization/gridFocusedVirtualCellSelector.d.ts +6 -0
- package/hooks/features/virtualization/gridFocusedVirtualCellSelector.js +42 -0
- package/hooks/features/virtualization/useGridVirtualScroller.d.ts +5 -4
- package/hooks/features/virtualization/useGridVirtualScroller.js +96 -43
- package/hooks/features/virtualization/useGridVirtualization.d.ts +1 -1
- package/hooks/utils/useGridApiContext.d.ts +1 -1
- package/hooks/utils/useGridApiEventHandler.d.ts +3 -3
- package/hooks/utils/useGridApiEventHandler.js +1 -1
- package/hooks/utils/useGridApiMethod.d.ts +1 -1
- package/hooks/utils/useGridApiRef.d.ts +1 -1
- package/hooks/utils/useGridInitializeState.d.ts +2 -2
- package/hooks/utils/useGridLogger.d.ts +1 -1
- package/hooks/utils/useGridNativeEventListener.d.ts +1 -1
- package/hooks/utils/useGridPrivateApiContext.d.ts +1 -1
- package/hooks/utils/useGridSelector.d.ts +1 -1
- package/hooks/utils/useGridVisibleRows.d.ts +7 -5
- package/hooks/utils/useGridVisibleRows.js +5 -28
- package/index.js +1 -1
- package/internals/constants.d.ts +6 -0
- package/internals/constants.js +8 -1
- package/internals/index.d.ts +2 -1
- package/internals/index.js +1 -0
- package/internals/utils/attachPinnedStyle.d.ts +2 -0
- package/internals/utils/attachPinnedStyle.js +9 -0
- package/internals/utils/getPinnedCellOffset.d.ts +3 -3
- package/internals/utils/getPinnedCellOffset.js +6 -7
- package/internals/utils/index.d.ts +1 -0
- package/internals/utils/index.js +2 -1
- package/locales/arSD.js +2 -0
- package/locales/beBY.js +1 -0
- package/locales/bgBG.js +2 -0
- package/locales/csCZ.js +2 -0
- package/locales/daDK.js +2 -0
- package/locales/deDE.js +2 -0
- package/locales/elGR.js +2 -0
- package/locales/esES.js +2 -0
- package/locales/faIR.js +2 -0
- package/locales/fiFI.js +2 -0
- package/locales/frFR.js +2 -0
- package/locales/heIL.js +2 -0
- package/locales/hrHR.js +2 -0
- package/locales/huHU.js +2 -0
- package/locales/isIS.js +2 -0
- package/locales/itIT.js +2 -0
- package/locales/jaJP.js +2 -0
- package/locales/koKR.js +2 -0
- package/locales/nbNO.js +2 -0
- package/locales/nlNL.js +2 -0
- package/locales/nnNO.js +2 -0
- package/locales/plPL.js +2 -0
- package/locales/ptBR.js +2 -0
- package/locales/ptPT.js +2 -0
- package/locales/roRO.js +2 -0
- package/locales/ruRU.js +2 -0
- package/locales/skSK.js +2 -0
- package/locales/svSE.js +2 -0
- package/locales/trTR.js +2 -0
- package/locales/ukUA.js +2 -0
- package/locales/urPK.js +2 -0
- package/locales/viVN.js +2 -0
- package/locales/zhCN.js +2 -0
- package/locales/zhHK.js +2 -0
- package/locales/zhTW.js +2 -0
- package/material/index.js +2 -1
- package/models/api/gridCoreApi.d.ts +7 -7
- package/models/api/gridDensityApi.d.ts +1 -1
- package/models/api/gridLocaleTextApi.d.ts +1 -0
- package/models/colDef/gridColDef.d.ts +8 -8
- package/models/events/gridEventLookup.d.ts +6 -1
- package/models/gridBaseSlots.d.ts +32 -2
- package/models/gridExport.d.ts +1 -1
- package/models/gridFilterOperator.d.ts +1 -1
- package/models/gridIconSlotsComponent.d.ts +5 -0
- package/models/gridSlotsComponentsProps.d.ts +12 -8
- package/models/gridStateCommunity.d.ts +4 -0
- package/models/props/DataGridProps.d.ts +1 -1
- package/modern/DataGrid/DataGrid.js +4 -5
- package/modern/DataGrid/useDataGridComponent.js +1 -1
- package/modern/components/GridHeaders.js +2 -2
- package/modern/components/GridRow.js +26 -78
- package/modern/components/GridSkeletonLoadingOverlay.js +18 -18
- package/modern/components/cell/GridActionsCellItem.js +2 -0
- package/modern/components/cell/GridCell.js +17 -35
- package/modern/components/cell/GridEditDateCell.js +1 -1
- package/modern/components/cell/GridEditInputCell.js +1 -1
- package/modern/components/cell/GridEditSingleSelectCell.js +2 -2
- package/modern/components/columnHeaders/GridColumnGroupHeader.js +7 -10
- package/modern/components/columnHeaders/GridColumnHeaderFilterIconButton.js +0 -1
- package/modern/components/columnHeaders/GridColumnHeaderItem.js +13 -12
- package/modern/components/columnSelection/GridCellCheckboxRenderer.js +4 -3
- package/modern/components/columnSelection/GridHeaderCheckbox.js +6 -2
- package/modern/components/columnsManagement/GridColumnsManagement.js +2 -2
- package/modern/components/containers/GridRoot.js +14 -6
- package/modern/components/containers/GridRootStyles.js +7 -0
- package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +12 -16
- package/modern/components/panel/filterPanel/GridFilterInputDate.js +32 -29
- package/modern/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +1 -1
- package/modern/components/panel/filterPanel/GridFilterInputMultipleValue.js +1 -1
- package/modern/components/panel/filterPanel/GridFilterInputSingleSelect.js +13 -17
- package/modern/components/panel/filterPanel/GridFilterInputValue.js +40 -37
- package/modern/components/toolbar/GridToolbarQuickFilter.js +2 -2
- package/modern/components/virtualization/GridVirtualScrollbar.js +11 -12
- package/modern/components/virtualization/GridVirtualScroller.js +4 -4
- package/modern/constants/gridClasses.js +1 -1
- package/modern/constants/localeTextConstants.js +1 -0
- package/modern/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +1 -1
- package/modern/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +1 -1
- package/modern/hooks/core/useGridApiInitialization.js +2 -2
- package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +34 -76
- package/modern/hooks/features/columnResize/useGridColumnResize.js +4 -4
- package/modern/hooks/features/editing/useGridCellEditing.js +1 -1
- package/modern/hooks/features/editing/useGridRowEditing.js +2 -2
- package/modern/hooks/features/export/useGridPrintExport.js +1 -1
- package/modern/hooks/features/filter/gridFilterSelector.js +6 -1
- package/modern/hooks/features/filter/gridFilterUtils.js +3 -3
- package/modern/hooks/features/pagination/gridPaginationSelector.js +39 -1
- package/modern/hooks/features/pagination/useGridPagination.js +5 -3
- package/modern/hooks/features/pagination/useGridPaginationModel.js +23 -1
- package/modern/hooks/features/preferencesPanel/useGridPreferencesPanel.js +2 -2
- package/modern/hooks/features/rows/gridRowsSelector.js +1 -1
- package/modern/hooks/features/rows/useGridRows.js +2 -2
- package/modern/hooks/features/sorting/gridSortingUtils.js +2 -2
- package/modern/hooks/features/virtualization/gridFocusedVirtualCellSelector.js +42 -0
- package/modern/hooks/features/virtualization/useGridVirtualScroller.js +96 -43
- package/modern/hooks/utils/useGridApiEventHandler.js +1 -1
- package/modern/hooks/utils/useGridVisibleRows.js +5 -28
- package/modern/index.js +1 -1
- package/modern/internals/constants.js +8 -1
- package/modern/internals/index.js +1 -0
- package/modern/internals/utils/attachPinnedStyle.js +9 -0
- package/modern/internals/utils/getPinnedCellOffset.js +6 -7
- package/modern/internals/utils/index.js +2 -1
- package/modern/locales/arSD.js +2 -0
- package/modern/locales/beBY.js +1 -0
- package/modern/locales/bgBG.js +2 -0
- package/modern/locales/csCZ.js +2 -0
- package/modern/locales/daDK.js +2 -0
- package/modern/locales/deDE.js +2 -0
- package/modern/locales/elGR.js +2 -0
- package/modern/locales/esES.js +2 -0
- package/modern/locales/faIR.js +2 -0
- package/modern/locales/fiFI.js +2 -0
- package/modern/locales/frFR.js +2 -0
- package/modern/locales/heIL.js +2 -0
- package/modern/locales/hrHR.js +2 -0
- package/modern/locales/huHU.js +2 -0
- package/modern/locales/isIS.js +2 -0
- package/modern/locales/itIT.js +2 -0
- package/modern/locales/jaJP.js +2 -0
- package/modern/locales/koKR.js +2 -0
- package/modern/locales/nbNO.js +2 -0
- package/modern/locales/nlNL.js +2 -0
- package/modern/locales/nnNO.js +2 -0
- package/modern/locales/plPL.js +2 -0
- package/modern/locales/ptBR.js +2 -0
- package/modern/locales/ptPT.js +2 -0
- package/modern/locales/roRO.js +2 -0
- package/modern/locales/ruRU.js +2 -0
- package/modern/locales/skSK.js +2 -0
- package/modern/locales/svSE.js +2 -0
- package/modern/locales/trTR.js +2 -0
- package/modern/locales/ukUA.js +2 -0
- package/modern/locales/urPK.js +2 -0
- package/modern/locales/viVN.js +2 -0
- package/modern/locales/zhCN.js +2 -0
- package/modern/locales/zhHK.js +2 -0
- package/modern/locales/zhTW.js +2 -0
- package/modern/material/index.js +2 -1
- package/modern/utils/cellBorderUtils.js +5 -5
- package/modern/utils/domUtils.js +7 -2
- package/modern/utils/rtlFlipSide.js +22 -0
- package/node/DataGrid/DataGrid.js +2 -3
- package/node/DataGrid/useDataGridComponent.js +1 -1
- package/node/components/GridHeaders.js +2 -2
- package/node/components/GridRow.js +25 -77
- package/node/components/GridSkeletonLoadingOverlay.js +17 -17
- package/node/components/cell/GridActionsCellItem.js +1 -1
- package/node/components/cell/GridCell.js +18 -36
- package/node/components/cell/GridEditDateCell.js +1 -1
- package/node/components/cell/GridEditInputCell.js +1 -1
- package/node/components/cell/GridEditSingleSelectCell.js +2 -2
- package/node/components/columnHeaders/GridColumnGroupHeader.js +7 -10
- package/node/components/columnHeaders/GridColumnHeaderFilterIconButton.js +0 -1
- package/node/components/columnHeaders/GridColumnHeaderItem.js +13 -12
- package/node/components/columnSelection/GridCellCheckboxRenderer.js +3 -2
- package/node/components/columnSelection/GridHeaderCheckbox.js +6 -2
- package/node/components/columnsManagement/GridColumnsManagement.js +2 -2
- package/node/components/containers/GridRoot.js +14 -6
- package/node/components/containers/GridRootStyles.js +7 -0
- package/node/components/panel/filterPanel/GridFilterInputBoolean.js +12 -16
- package/node/components/panel/filterPanel/GridFilterInputDate.js +31 -28
- package/node/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +1 -1
- package/node/components/panel/filterPanel/GridFilterInputMultipleValue.js +1 -1
- package/node/components/panel/filterPanel/GridFilterInputSingleSelect.js +13 -17
- package/node/components/panel/filterPanel/GridFilterInputValue.js +39 -36
- package/node/components/toolbar/GridToolbarQuickFilter.js +2 -2
- package/node/components/virtualization/GridVirtualScrollbar.js +11 -12
- package/node/components/virtualization/GridVirtualScroller.js +4 -4
- package/node/constants/gridClasses.js +1 -1
- package/node/constants/localeTextConstants.js +1 -0
- package/node/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +1 -1
- package/node/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +1 -1
- package/node/hooks/core/useGridApiInitialization.js +2 -2
- package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +32 -74
- package/node/hooks/features/columnResize/useGridColumnResize.js +4 -4
- package/node/hooks/features/editing/useGridCellEditing.js +1 -1
- package/node/hooks/features/editing/useGridRowEditing.js +2 -2
- package/node/hooks/features/export/useGridPrintExport.js +1 -1
- package/node/hooks/features/filter/gridFilterSelector.js +6 -1
- package/node/hooks/features/filter/gridFilterUtils.js +3 -3
- package/node/hooks/features/pagination/gridPaginationSelector.js +41 -3
- package/node/hooks/features/pagination/useGridPagination.js +5 -3
- package/node/hooks/features/pagination/useGridPaginationModel.js +23 -1
- package/node/hooks/features/preferencesPanel/useGridPreferencesPanel.js +2 -2
- package/node/hooks/features/rows/gridRowsSelector.js +1 -1
- package/node/hooks/features/rows/useGridRows.js +1 -1
- package/node/hooks/features/sorting/gridSortingUtils.js +2 -2
- package/node/hooks/features/virtualization/gridFocusedVirtualCellSelector.js +49 -0
- package/node/hooks/features/virtualization/useGridVirtualScroller.js +96 -43
- package/node/hooks/utils/useGridApiEventHandler.js +1 -1
- package/node/hooks/utils/useGridVisibleRows.js +3 -28
- package/node/index.js +1 -1
- package/node/internals/constants.js +9 -2
- package/node/internals/index.js +12 -0
- package/node/internals/utils/attachPinnedStyle.js +15 -0
- package/node/internals/utils/getPinnedCellOffset.js +6 -7
- package/node/internals/utils/index.js +11 -0
- package/node/locales/arSD.js +2 -0
- package/node/locales/beBY.js +1 -0
- package/node/locales/bgBG.js +2 -0
- package/node/locales/csCZ.js +2 -0
- package/node/locales/daDK.js +2 -0
- package/node/locales/deDE.js +2 -0
- package/node/locales/elGR.js +2 -0
- package/node/locales/esES.js +2 -0
- package/node/locales/faIR.js +2 -0
- package/node/locales/fiFI.js +2 -0
- package/node/locales/frFR.js +2 -0
- package/node/locales/heIL.js +2 -0
- package/node/locales/hrHR.js +2 -0
- package/node/locales/huHU.js +2 -0
- package/node/locales/isIS.js +2 -0
- package/node/locales/itIT.js +2 -0
- package/node/locales/jaJP.js +2 -0
- package/node/locales/koKR.js +2 -0
- package/node/locales/nbNO.js +2 -0
- package/node/locales/nlNL.js +2 -0
- package/node/locales/nnNO.js +2 -0
- package/node/locales/plPL.js +2 -0
- package/node/locales/ptBR.js +2 -0
- package/node/locales/ptPT.js +2 -0
- package/node/locales/roRO.js +2 -0
- package/node/locales/ruRU.js +2 -0
- package/node/locales/skSK.js +2 -0
- package/node/locales/svSE.js +2 -0
- package/node/locales/trTR.js +2 -0
- package/node/locales/ukUA.js +2 -0
- package/node/locales/urPK.js +2 -0
- package/node/locales/viVN.js +2 -0
- package/node/locales/zhCN.js +2 -0
- package/node/locales/zhHK.js +2 -0
- package/node/locales/zhTW.js +2 -0
- package/node/material/index.js +2 -1
- package/node/utils/cellBorderUtils.js +5 -5
- package/node/utils/domUtils.js +7 -2
- package/node/utils/rtlFlipSide.js +29 -0
- package/package.json +2 -2
- package/utils/cellBorderUtils.d.ts +3 -3
- package/utils/cellBorderUtils.js +5 -5
- package/utils/createSelector.d.ts +1 -1
- package/utils/domUtils.js +7 -2
- package/utils/getPublicApiRef.d.ts +1 -1
- package/utils/rtlFlipSide.d.ts +2 -0
- package/utils/rtlFlipSide.js +22 -0
|
@@ -22,6 +22,9 @@ const Scrollbar = styled('div')({
|
|
|
22
22
|
position: 'absolute',
|
|
23
23
|
display: 'inline-block',
|
|
24
24
|
zIndex: 6,
|
|
25
|
+
'&:hover': {
|
|
26
|
+
zIndex: 7
|
|
27
|
+
},
|
|
25
28
|
// In macOS Safari and Gnome Web, scrollbars are overlaid and don't affect the layout. So we consider
|
|
26
29
|
// their size to be 0px throughout all the calculations, but the floating scrollbar container does need
|
|
27
30
|
// to appear and have a real size. We set it to 14px because it seems like an acceptable value and we
|
|
@@ -103,19 +106,15 @@ const GridVirtualScrollbar = forwardRef(function GridVirtualScrollbar(props, ref
|
|
|
103
106
|
useOnMount(() => {
|
|
104
107
|
const scroller = apiRef.current.virtualScrollerRef.current;
|
|
105
108
|
const scrollbar = scrollbarRef.current;
|
|
106
|
-
|
|
107
|
-
capture: true
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
109
|
+
const options = {
|
|
110
|
+
capture: true,
|
|
111
|
+
passive: true
|
|
112
|
+
};
|
|
113
|
+
scroller.addEventListener('scroll', onScrollerScroll, options);
|
|
114
|
+
scrollbar.addEventListener('scroll', onScrollbarScroll, options);
|
|
112
115
|
return () => {
|
|
113
|
-
scroller.removeEventListener('scroll', onScrollerScroll,
|
|
114
|
-
|
|
115
|
-
});
|
|
116
|
-
scrollbar.removeEventListener('scroll', onScrollbarScroll, {
|
|
117
|
-
capture: true
|
|
118
|
-
});
|
|
116
|
+
scroller.removeEventListener('scroll', onScrollerScroll, options);
|
|
117
|
+
scrollbar.removeEventListener('scroll', onScrollbarScroll, options);
|
|
119
118
|
};
|
|
120
119
|
});
|
|
121
120
|
React.useEffect(() => {
|
|
@@ -100,11 +100,11 @@ function GridVirtualScroller(props) {
|
|
|
100
100
|
virtualScroller: virtualScroller
|
|
101
101
|
})
|
|
102
102
|
})]
|
|
103
|
-
})), dimensions.
|
|
104
|
-
position: "vertical"
|
|
105
|
-
}, getScrollbarVerticalProps())), dimensions.hasScrollX && !rootProps.unstable_listView && /*#__PURE__*/_jsx(Scrollbar, _extends({
|
|
103
|
+
})), dimensions.hasScrollX && !rootProps.unstable_listView && /*#__PURE__*/_jsx(Scrollbar, _extends({
|
|
106
104
|
position: "horizontal"
|
|
107
|
-
}, getScrollbarHorizontalProps())),
|
|
105
|
+
}, getScrollbarHorizontalProps())), dimensions.hasScrollY && /*#__PURE__*/_jsx(Scrollbar, _extends({
|
|
106
|
+
position: "vertical"
|
|
107
|
+
}, getScrollbarVerticalProps())), props.children]
|
|
108
108
|
}));
|
|
109
109
|
}
|
|
110
110
|
export { GridVirtualScroller };
|
|
@@ -168,6 +168,14 @@ export interface GridClasses {
|
|
|
168
168
|
* @ignore - do not document.
|
|
169
169
|
*/
|
|
170
170
|
'columnHeader--siblingFocused': string;
|
|
171
|
+
/**
|
|
172
|
+
* Styles applied to the header filter input element.
|
|
173
|
+
*/
|
|
174
|
+
columnHeaderFilterInput: string;
|
|
175
|
+
/**
|
|
176
|
+
* Styles applied to the header filter operator label element.
|
|
177
|
+
*/
|
|
178
|
+
columnHeaderFilterOperatorLabel: string;
|
|
171
179
|
/**
|
|
172
180
|
* Styles applied to the header checkbox cell element.
|
|
173
181
|
*/
|
|
@@ -200,6 +208,10 @@ export interface GridClasses {
|
|
|
200
208
|
* Styles applied to the empty column group header cell.
|
|
201
209
|
*/
|
|
202
210
|
'columnHeader--emptyGroup': string;
|
|
211
|
+
/**
|
|
212
|
+
* Styles applied to the header filter cell.
|
|
213
|
+
*/
|
|
214
|
+
'columnHeader--filter': string;
|
|
203
215
|
/**
|
|
204
216
|
* Styles applied to the column headers.
|
|
205
217
|
*/
|
package/constants/gridClasses.js
CHANGED
|
@@ -2,4 +2,4 @@ import { unstable_generateUtilityClasses as generateUtilityClasses, unstable_gen
|
|
|
2
2
|
export function getDataGridUtilityClass(slot) {
|
|
3
3
|
return generateUtilityClass('MuiDataGrid', slot);
|
|
4
4
|
}
|
|
5
|
-
export const gridClasses = generateUtilityClasses('MuiDataGrid', ['actionsCell', 'aggregationColumnHeader', 'aggregationColumnHeader--alignLeft', 'aggregationColumnHeader--alignCenter', 'aggregationColumnHeader--alignRight', 'aggregationColumnHeaderLabel', 'autoHeight', 'autosizing', 'booleanCell', 'cell--editable', 'cell--editing', 'cell--flex', 'cell--textCenter', 'cell--textLeft', 'cell--textRight', 'cell--rangeTop', 'cell--rangeBottom', 'cell--rangeLeft', 'cell--rangeRight', 'cell--pinnedLeft', 'cell--pinnedRight', 'cell--selectionMode', 'cell', 'cellCheckbox', 'cellEmpty', 'cellSkeleton', 'cellOffsetLeft', 'checkboxInput', 'columnHeader', 'columnHeader--alignCenter', 'columnHeader--alignLeft', 'columnHeader--alignRight', 'columnHeader--dragging', 'columnHeader--moving', 'columnHeader--numeric', 'columnHeader--sortable', 'columnHeader--sorted', 'columnHeader--filtered', 'columnHeader--pinnedLeft', 'columnHeader--pinnedRight', 'columnHeader--last', 'columnHeader--lastUnpinned', 'columnHeader--siblingFocused', 'columnHeaderCheckbox', 'columnHeaderDraggableContainer', 'columnHeaderTitle', 'columnHeaderTitleContainer', 'columnHeaderTitleContainerContent', 'columnHeader--filledGroup', 'columnHeader--emptyGroup', 'columnHeaders', 'columnSeparator--resizable', 'columnSeparator--resizing', 'columnSeparator--sideLeft', 'columnSeparator--sideRight', 'columnSeparator', 'columnsManagement', 'columnsManagementRow', 'columnsManagementHeader', 'columnsManagementSearchInput', 'columnsManagementFooter', 'container--top', 'container--bottom', 'detailPanel', 'detailPanels', 'detailPanelToggleCell', 'detailPanelToggleCell--expanded', 'footerCell', 'panel', 'panelHeader', 'panelWrapper', 'panelContent', 'panelFooter', 'paper', 'editBooleanCell', 'editInputCell', 'filler', 'filler--borderBottom', 'filler--pinnedLeft', 'filler--pinnedRight', 'filterForm', 'filterFormDeleteIcon', 'filterFormLogicOperatorInput', 'filterFormColumnInput', 'filterFormOperatorInput', 'filterFormValueInput', 'filterIcon', 'footerContainer', 'headerFilterRow', 'iconButtonContainer', 'iconSeparator', 'main', 'main--hasPinnedRight', 'main--hasSkeletonLoadingOverlay', 'menu', 'menuIcon', 'menuIconButton', 'menuOpen', 'menuList', 'overlay', 'overlayWrapper', 'overlayWrapperInner', 'root', 'root--densityStandard', 'root--densityComfortable', 'root--densityCompact', 'root--disableUserSelection', 'root--noToolbar', 'row', 'row--editable', 'row--editing', 'row--firstVisible', 'row--lastVisible', 'row--dragging', 'row--dynamicHeight', 'row--detailPanelExpanded', 'row--borderBottom', 'rowReorderCellPlaceholder', 'rowCount', 'rowReorderCellContainer', 'rowReorderCell', 'rowReorderCell--draggable', 'rowSkeleton', 'scrollArea--left', 'scrollArea--right', 'scrollArea', 'scrollbar', 'scrollbar--vertical', 'scrollbar--horizontal', 'scrollbarFiller', 'scrollbarFiller--header', 'scrollbarFiller--borderTop', 'scrollbarFiller--borderBottom', 'scrollbarFiller--pinnedRight', 'selectedRowCount', 'sortIcon', 'toolbarContainer', 'toolbarFilterList', 'toolbarPromptControl', 'toolbarPromptControl--recording', 'toolbarPromptControlRecordingIndicator', 'toolbarPromptControlRecordButton', 'toolbarPromptControlSendButton', 'virtualScroller', 'virtualScroller--hasScrollX', 'virtualScrollerContent', 'virtualScrollerContent--overflowed', 'virtualScrollerRenderZone', 'pinnedColumns', 'withVerticalBorder', 'withBorderColor', 'cell--withRightBorder', 'cell--withLeftBorder', 'columnHeader--withRightBorder', 'columnHeader--withLeftBorder', 'treeDataGroupingCell', 'treeDataGroupingCellToggle', 'treeDataGroupingCellLoadingContainer', 'groupingCriteriaCell', 'groupingCriteriaCellToggle', 'groupingCriteriaCellLoadingContainer', 'pinnedRows', 'pinnedRows--top', 'pinnedRows--bottom', 'pinnedRowsRenderZone']);
|
|
5
|
+
export const gridClasses = generateUtilityClasses('MuiDataGrid', ['actionsCell', 'aggregationColumnHeader', 'aggregationColumnHeader--alignLeft', 'aggregationColumnHeader--alignCenter', 'aggregationColumnHeader--alignRight', 'aggregationColumnHeaderLabel', 'autoHeight', 'autosizing', 'booleanCell', 'cell--editable', 'cell--editing', 'cell--flex', 'cell--textCenter', 'cell--textLeft', 'cell--textRight', 'cell--rangeTop', 'cell--rangeBottom', 'cell--rangeLeft', 'cell--rangeRight', 'cell--pinnedLeft', 'cell--pinnedRight', 'cell--selectionMode', 'cell', 'cellCheckbox', 'cellEmpty', 'cellSkeleton', 'cellOffsetLeft', 'checkboxInput', 'columnHeader', 'columnHeader--alignCenter', 'columnHeader--alignLeft', 'columnHeader--alignRight', 'columnHeader--dragging', 'columnHeader--moving', 'columnHeader--numeric', 'columnHeader--sortable', 'columnHeader--sorted', 'columnHeader--filtered', 'columnHeader--pinnedLeft', 'columnHeader--pinnedRight', 'columnHeader--last', 'columnHeader--lastUnpinned', 'columnHeader--siblingFocused', 'columnHeader--filter', 'columnHeaderFilterInput', 'columnHeaderFilterOperatorLabel', 'columnHeaderCheckbox', 'columnHeaderDraggableContainer', 'columnHeaderTitle', 'columnHeaderTitleContainer', 'columnHeaderTitleContainerContent', 'columnHeader--filledGroup', 'columnHeader--emptyGroup', 'columnHeaders', 'columnSeparator--resizable', 'columnSeparator--resizing', 'columnSeparator--sideLeft', 'columnSeparator--sideRight', 'columnSeparator', 'columnsManagement', 'columnsManagementRow', 'columnsManagementHeader', 'columnsManagementSearchInput', 'columnsManagementFooter', 'container--top', 'container--bottom', 'detailPanel', 'detailPanels', 'detailPanelToggleCell', 'detailPanelToggleCell--expanded', 'footerCell', 'panel', 'panelHeader', 'panelWrapper', 'panelContent', 'panelFooter', 'paper', 'editBooleanCell', 'editInputCell', 'filler', 'filler--borderBottom', 'filler--pinnedLeft', 'filler--pinnedRight', 'filterForm', 'filterFormDeleteIcon', 'filterFormLogicOperatorInput', 'filterFormColumnInput', 'filterFormOperatorInput', 'filterFormValueInput', 'filterIcon', 'footerContainer', 'headerFilterRow', 'iconButtonContainer', 'iconSeparator', 'main', 'main--hasPinnedRight', 'main--hasSkeletonLoadingOverlay', 'menu', 'menuIcon', 'menuIconButton', 'menuOpen', 'menuList', 'overlay', 'overlayWrapper', 'overlayWrapperInner', 'root', 'root--densityStandard', 'root--densityComfortable', 'root--densityCompact', 'root--disableUserSelection', 'root--noToolbar', 'row', 'row--editable', 'row--editing', 'row--firstVisible', 'row--lastVisible', 'row--dragging', 'row--dynamicHeight', 'row--detailPanelExpanded', 'row--borderBottom', 'rowReorderCellPlaceholder', 'rowCount', 'rowReorderCellContainer', 'rowReorderCell', 'rowReorderCell--draggable', 'rowSkeleton', 'scrollArea--left', 'scrollArea--right', 'scrollArea', 'scrollbar', 'scrollbar--vertical', 'scrollbar--horizontal', 'scrollbarFiller', 'scrollbarFiller--header', 'scrollbarFiller--borderTop', 'scrollbarFiller--borderBottom', 'scrollbarFiller--pinnedRight', 'selectedRowCount', 'sortIcon', 'toolbarContainer', 'toolbarFilterList', 'toolbarPromptControl', 'toolbarPromptControl--recording', 'toolbarPromptControlRecordingIndicator', 'toolbarPromptControlRecordButton', 'toolbarPromptControlSendButton', 'virtualScroller', 'virtualScroller--hasScrollX', 'virtualScrollerContent', 'virtualScrollerContent--overflowed', 'virtualScrollerRenderZone', 'pinnedColumns', 'withVerticalBorder', 'withBorderColor', 'cell--withRightBorder', 'cell--withLeftBorder', 'columnHeader--withRightBorder', 'columnHeader--withLeftBorder', 'treeDataGroupingCell', 'treeDataGroupingCellToggle', 'treeDataGroupingCellLoadingContainer', 'groupingCriteriaCell', 'groupingCriteriaCellToggle', 'groupingCriteriaCellLoadingContainer', 'pinnedRows', 'pinnedRows--top', 'pinnedRows--bottom', 'pinnedRowsRenderZone']);
|
|
@@ -98,6 +98,7 @@ export const GRID_DEFAULT_LOCALE_TEXT = {
|
|
|
98
98
|
'headerFilterOperator>=': 'Greater than or equal to',
|
|
99
99
|
'headerFilterOperator<': 'Less than',
|
|
100
100
|
'headerFilterOperator<=': 'Less than or equal to',
|
|
101
|
+
headerFilterClear: 'Clear filter',
|
|
101
102
|
// Filter values text
|
|
102
103
|
filterValueAny: 'any',
|
|
103
104
|
filterValueTrue: 'true',
|
|
@@ -2,7 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import { GridPrivateApiCommunity } from '../models/api/gridApiCommunity';
|
|
3
3
|
import { GridConfiguration } from '../models/configuration/gridConfiguration';
|
|
4
4
|
type GridContextProviderProps = {
|
|
5
|
-
privateApiRef: React.
|
|
5
|
+
privateApiRef: React.RefObject<GridPrivateApiCommunity>;
|
|
6
6
|
configuration: GridConfiguration;
|
|
7
7
|
props: {};
|
|
8
8
|
children: React.ReactNode;
|
|
@@ -6,7 +6,7 @@ import { GridHydrateColumnsValue, GridPinnedColumnPosition } from '../../feature
|
|
|
6
6
|
import { GridRowEntry, GridRowId } from '../../../models/gridRows';
|
|
7
7
|
import { GridHydrateRowsValue } from '../../features/rows/gridRowsInterfaces';
|
|
8
8
|
import { GridPreferencePanelsValue } from '../../features/preferencesPanel';
|
|
9
|
-
import { GridGetRowsParams } from '../../../models/gridDataSource';
|
|
9
|
+
import { GridGetRowsParams, GridGetRowsResponse } from '../../../models/gridDataSource';
|
|
10
10
|
import { HeightEntry } from '../../features/rows/gridRowsMetaInterfaces';
|
|
11
11
|
export type GridPipeProcessorGroup = keyof GridPipeProcessingLookup;
|
|
12
12
|
export interface GridPipeProcessingLookup {
|
|
@@ -29,7 +29,7 @@ export interface GridPipeProcessingLookup {
|
|
|
29
29
|
};
|
|
30
30
|
exportMenu: {
|
|
31
31
|
value: {
|
|
32
|
-
component: React.ReactElement
|
|
32
|
+
component: React.ReactElement<any>;
|
|
33
33
|
componentName: string;
|
|
34
34
|
}[];
|
|
35
35
|
context: any;
|
|
@@ -84,6 +84,13 @@ export interface GridPipeProcessingLookup {
|
|
|
84
84
|
value: GridPinnedColumnPosition | false;
|
|
85
85
|
context: string;
|
|
86
86
|
};
|
|
87
|
+
processDataSourceRows: {
|
|
88
|
+
value: {
|
|
89
|
+
params: GridGetRowsParams;
|
|
90
|
+
response: GridGetRowsResponse;
|
|
91
|
+
};
|
|
92
|
+
context: boolean;
|
|
93
|
+
};
|
|
87
94
|
}
|
|
88
95
|
export type GridPipeProcessor<P extends GridPipeProcessorGroup> = (value: GridPipeProcessingLookup[P]['value'], context: GridPipeProcessingLookup[P] extends {
|
|
89
96
|
context: any;
|
|
@@ -29,4 +29,4 @@ import { GridPrivateApiCommon } from '../../../models/api/gridApiCommon';
|
|
|
29
29
|
* * a processor is registered.
|
|
30
30
|
* * `apiRef.current.requestPipeProcessorsApplication` is called for the given group.
|
|
31
31
|
*/
|
|
32
|
-
export declare const useGridPipeProcessing: (apiRef: React.
|
|
32
|
+
export declare const useGridPipeProcessing: (apiRef: React.RefObject<GridPrivateApiCommon>) => void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { GridPrivateApiCommon } from '../../../models/api/gridApiCommon';
|
|
3
3
|
import { GridPipeProcessorGroup } from './gridPipeProcessingApi';
|
|
4
|
-
export declare const useGridRegisterPipeApplier: <PrivateApi extends GridPrivateApiCommon, G extends GridPipeProcessorGroup>(apiRef: React.
|
|
4
|
+
export declare const useGridRegisterPipeApplier: <PrivateApi extends GridPrivateApiCommon, G extends GridPipeProcessorGroup>(apiRef: React.RefObject<PrivateApi>, group: G, callback: () => void) => void;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { useFirstRender } from "../../utils/useFirstRender.js";
|
|
3
3
|
export const useGridRegisterPipeApplier = (apiRef, group, callback) => {
|
|
4
|
-
const cleanup = React.useRef();
|
|
4
|
+
const cleanup = React.useRef(null);
|
|
5
5
|
const id = React.useRef(`mui-${Math.round(Math.random() * 1e9)}`);
|
|
6
6
|
const registerPreProcessor = React.useCallback(() => {
|
|
7
7
|
cleanup.current = apiRef.current.registerPipeApplier(group, id.current, callback);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { GridPrivateApiCommon } from '../../../models/api/gridApiCommon';
|
|
3
3
|
import { GridPipeProcessorGroup, GridPipeProcessor } from './gridPipeProcessingApi';
|
|
4
|
-
export declare const useGridRegisterPipeProcessor: <PrivateApi extends GridPrivateApiCommon, G extends GridPipeProcessorGroup>(apiRef: React.
|
|
4
|
+
export declare const useGridRegisterPipeProcessor: <PrivateApi extends GridPrivateApiCommon, G extends GridPipeProcessorGroup>(apiRef: React.RefObject<PrivateApi>, group: G, callback: GridPipeProcessor<G>) => void;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { useFirstRender } from "../../utils/useFirstRender.js";
|
|
3
3
|
export const useGridRegisterPipeProcessor = (apiRef, group, callback) => {
|
|
4
|
-
const cleanup = React.useRef();
|
|
4
|
+
const cleanup = React.useRef(null);
|
|
5
5
|
const id = React.useRef(`mui-${Math.round(Math.random() * 1e9)}`);
|
|
6
6
|
const registerPreProcessor = React.useCallback(() => {
|
|
7
7
|
cleanup.current = apiRef.current.registerPipeProcessor(group, id.current, callback);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { GridPrivateApiCommon } from '../../../models/api/gridApiCommon';
|
|
3
3
|
import { GridStrategyProcessorName, GridStrategyProcessor } from './gridStrategyProcessingApi';
|
|
4
|
-
export declare const useGridRegisterStrategyProcessor: <Api extends GridPrivateApiCommon, G extends GridStrategyProcessorName>(apiRef: React.
|
|
4
|
+
export declare const useGridRegisterStrategyProcessor: <Api extends GridPrivateApiCommon, G extends GridStrategyProcessorName>(apiRef: React.RefObject<Api>, strategyName: string, group: G, processor: GridStrategyProcessor<G>) => void;
|
|
@@ -42,4 +42,4 @@ export declare const GRID_STRATEGIES_PROCESSORS: {
|
|
|
42
42
|
* Each processor name is part of a strategy group which can only have one active strategy at the time.
|
|
43
43
|
* There are two active groups named `rowTree` and `dataSource`.
|
|
44
44
|
*/
|
|
45
|
-
export declare const useGridStrategyProcessing: (apiRef: React.
|
|
45
|
+
export declare const useGridStrategyProcessing: (apiRef: React.RefObject<GridPrivateApiCommon>) => void;
|
|
@@ -2,4 +2,4 @@ import * as React from 'react';
|
|
|
2
2
|
import { DataGridProcessedProps } from '../../models/props/DataGridProps';
|
|
3
3
|
import type { GridApiCommon, GridPrivateApiCommon } from '../../models/api/gridApiCommon';
|
|
4
4
|
export declare function unwrapPrivateAPI<PrivateApi extends GridPrivateApiCommon, Api extends GridApiCommon>(publicApi: Api): PrivateApi;
|
|
5
|
-
export declare function useGridApiInitialization<PrivateApi extends GridPrivateApiCommon, Api extends GridApiCommon>(inputApiRef: React.
|
|
5
|
+
export declare function useGridApiInitialization<PrivateApi extends GridPrivateApiCommon, Api extends GridApiCommon>(inputApiRef: React.RefObject<Api> | undefined, props: Pick<DataGridProcessedProps, 'signature'>): React.RefObject<PrivateApi>;
|
|
@@ -68,8 +68,8 @@ function createPublicAPI(privateApiRef) {
|
|
|
68
68
|
return publicApi;
|
|
69
69
|
}
|
|
70
70
|
export function useGridApiInitialization(inputApiRef, props) {
|
|
71
|
-
const publicApiRef = React.useRef();
|
|
72
|
-
const privateApiRef = React.useRef();
|
|
71
|
+
const publicApiRef = React.useRef(null);
|
|
72
|
+
const privateApiRef = React.useRef(null);
|
|
73
73
|
if (!privateApiRef.current) {
|
|
74
74
|
privateApiRef.current = createPrivateAPI(publicApiRef);
|
|
75
75
|
}
|
|
@@ -4,4 +4,4 @@ import { DataGridProcessedProps } from '../../models/props/DataGridProps';
|
|
|
4
4
|
/**
|
|
5
5
|
* Initialize the technical pieces of the DataGrid (logger, state, ...) that any DataGrid implementation needs
|
|
6
6
|
*/
|
|
7
|
-
export declare const useGridInitialization: <PrivateApi extends GridPrivateApiCommon, Api extends GridApiCommon>(inputApiRef: React.
|
|
7
|
+
export declare const useGridInitialization: <PrivateApi extends GridPrivateApiCommon, Api extends GridApiCommon>(inputApiRef: React.RefObject<Api> | undefined, props: DataGridProcessedProps) => React.RefObject<PrivateApi>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { GridPrivateApiCommon } from '../../models/api/gridApiCommon';
|
|
3
|
-
export declare const useGridIsRtl: (apiRef: React.
|
|
3
|
+
export declare const useGridIsRtl: (apiRef: React.RefObject<GridPrivateApiCommon>) => void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { GridPrivateApiCommon } from '../../models/api/gridApiCommon';
|
|
3
3
|
import { DataGridProcessedProps } from '../../models/props/DataGridProps';
|
|
4
|
-
export declare const useGridLocaleText: (apiRef: React.
|
|
4
|
+
export declare const useGridLocaleText: (apiRef: React.RefObject<GridPrivateApiCommon>, props: Pick<DataGridProcessedProps, "localeText">) => void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { GridPrivateApiCommon } from '../../models/api/gridApiCommon';
|
|
3
3
|
import { DataGridProcessedProps } from '../../models/props/DataGridProps';
|
|
4
|
-
export declare const useGridLoggerFactory: (apiRef: React.
|
|
4
|
+
export declare const useGridLoggerFactory: (apiRef: React.RefObject<GridPrivateApiCommon>, props: Pick<DataGridProcessedProps, "logger" | "logLevel">) => void;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import type { GridPrivateApiCommon } from '../../models/api/gridApiCommon';
|
|
3
|
-
export declare const useGridRefs: <PrivateApi extends GridPrivateApiCommon>(apiRef: React.
|
|
3
|
+
export declare const useGridRefs: <PrivateApi extends GridPrivateApiCommon>(apiRef: React.RefObject<PrivateApi>) => void;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import type { GridPrivateApiCommon } from '../../models/api/gridApiCommon';
|
|
3
|
-
export declare const useGridStateInitialization: <PrivateApi extends GridPrivateApiCommon>(apiRef: React.
|
|
3
|
+
export declare const useGridStateInitialization: <PrivateApi extends GridPrivateApiCommon>(apiRef: React.RefObject<PrivateApi>) => void;
|
|
@@ -5,4 +5,4 @@ import type { DataGridProcessedProps } from '../../../models/props/DataGridProps
|
|
|
5
5
|
* @requires useGridCsvExport (method)
|
|
6
6
|
* @requires useGridSelection (method)
|
|
7
7
|
*/
|
|
8
|
-
export declare const useGridClipboard: (apiRef: React.
|
|
8
|
+
export declare const useGridClipboard: (apiRef: React.RefObject<GridPrivateApiCommunity>, props: Pick<DataGridProcessedProps, "ignoreValueFormatterDuringExport" | "onClipboardCopy" | "clipboardCopyCellDelimiter">) => void;
|
|
@@ -7,4 +7,4 @@ export declare const columnGroupsStateInitializer: GridStateInitializer<Pick<Dat
|
|
|
7
7
|
* @requires useGridColumns (method, event)
|
|
8
8
|
* @requires useGridParamsApi (method)
|
|
9
9
|
*/
|
|
10
|
-
export declare const useGridColumnGrouping: (apiRef: React.
|
|
10
|
+
export declare const useGridColumnGrouping: (apiRef: React.RefObject<GridPrivateApiCommunity>, props: Pick<DataGridProcessedProps, "columnGroupingModel">) => void;
|
|
@@ -6,8 +6,9 @@ import { GridSortColumnLookup } from '../sorting';
|
|
|
6
6
|
import { GridFilterActiveItemsLookup } from '../filter';
|
|
7
7
|
import { GridColumnGroupIdentifier, GridColumnIdentifier } from '../focus';
|
|
8
8
|
import { GridColumnMenuState } from '../columnMenu';
|
|
9
|
-
import {
|
|
9
|
+
import { GridColumnVisibilityModel, gridColumnPositionsSelector } from '../columns';
|
|
10
10
|
import { GridGroupingStructure } from '../columnGrouping/gridColumnGroupsInterfaces';
|
|
11
|
+
import { PinnedColumnPosition } from '../../../internals/constants';
|
|
11
12
|
export interface UseGridColumnHeadersProps {
|
|
12
13
|
visibleColumns: GridStateColDef[];
|
|
13
14
|
sortColumnLookup: GridSortColumnLookup;
|
|
@@ -23,7 +24,7 @@ export interface UseGridColumnHeadersProps {
|
|
|
23
24
|
hasOtherElementInTabSequence: boolean;
|
|
24
25
|
}
|
|
25
26
|
export interface GetHeadersParams {
|
|
26
|
-
position?:
|
|
27
|
+
position?: PinnedColumnPosition;
|
|
27
28
|
renderContext?: GridColumnsRenderContext;
|
|
28
29
|
maxLastColumn?: number;
|
|
29
30
|
}
|
|
@@ -46,11 +47,7 @@ export declare const useGridColumnHeaders: (props: UseGridColumnHeadersProps) =>
|
|
|
46
47
|
right: GridStateColDef[];
|
|
47
48
|
};
|
|
48
49
|
visibleColumns: GridStateColDef[];
|
|
49
|
-
|
|
50
|
-
pinnedPosition?: GridPinnedColumnPosition;
|
|
51
|
-
columnIndex: number;
|
|
52
|
-
computedWidth: number;
|
|
53
|
-
}) => React.CSSProperties | undefined;
|
|
50
|
+
columnPositions: number[];
|
|
54
51
|
getFillers: (params: GetHeadersParams | undefined, children: React.ReactNode, leftOverflow: number, borderBottom?: boolean) => React.JSX.Element;
|
|
55
52
|
getColumnHeadersRow: () => React.JSX.Element;
|
|
56
53
|
getColumnsToRender: (params?: GetHeadersParams) => {
|
|
@@ -59,6 +56,7 @@ export declare const useGridColumnHeaders: (props: UseGridColumnHeadersProps) =>
|
|
|
59
56
|
lastColumnToRender: number;
|
|
60
57
|
};
|
|
61
58
|
getColumnGroupHeadersRows: () => React.JSX.Element[] | null;
|
|
59
|
+
getPinnedCellOffset: (pinnedPosition: PinnedColumnPosition | undefined, computedWidth: number, columnIndex: number, columnPositions: ReturnType<typeof gridColumnPositionsSelector>, columnsTotalWidth: number, scrollbarWidth: number) => number | undefined;
|
|
62
60
|
isDragging: boolean;
|
|
63
61
|
getInnerProps: () => {
|
|
64
62
|
role: string;
|
|
@@ -2,22 +2,23 @@ import _extends from "@babel/runtime/helpers/esm/extends";
|
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import clsx from 'clsx';
|
|
4
4
|
import { styled } from '@mui/material/styles';
|
|
5
|
-
import { useRtl } from '@mui/system/RtlProvider';
|
|
6
5
|
import { useGridSelector } from "../../utils/index.js";
|
|
7
6
|
import { useGridRootProps } from "../../utils/useGridRootProps.js";
|
|
8
7
|
import { useGridPrivateApiContext } from "../../utils/useGridPrivateApiContext.js";
|
|
9
8
|
import { useGridApiEventHandler } from "../../utils/useGridApiEventHandler.js";
|
|
10
9
|
import { GridColumnHeaderItem } from "../../../components/columnHeaders/GridColumnHeaderItem.js";
|
|
11
10
|
import { gridDimensionsSelector } from "../dimensions/index.js";
|
|
12
|
-
import { gridRenderContextColumnsSelector
|
|
11
|
+
import { gridRenderContextColumnsSelector } from "../virtualization/index.js";
|
|
13
12
|
import { computeOffsetLeft } from "../virtualization/useGridVirtualScroller.js";
|
|
14
13
|
import { GridColumnGroupHeader } from "../../../components/columnHeaders/GridColumnGroupHeader.js";
|
|
15
|
-
import {
|
|
14
|
+
import { gridColumnPositionsSelector, gridVisiblePinnedColumnDefinitionsSelector, gridColumnLookupSelector } from "../columns/index.js";
|
|
16
15
|
import { gridColumnGroupsUnwrappedModelSelector } from "../columnGrouping/gridColumnGroupsSelector.js";
|
|
17
16
|
import { GridScrollbarFillerCell as ScrollbarFiller } from "../../../components/GridScrollbarFillerCell.js";
|
|
18
17
|
import { getPinnedCellOffset } from "../../../internals/utils/getPinnedCellOffset.js";
|
|
19
18
|
import { GridColumnHeaderSeparatorSides } from "../../../components/columnHeaders/GridColumnHeaderSeparator.js";
|
|
20
19
|
import { gridClasses } from "../../../constants/gridClasses.js";
|
|
20
|
+
import { shouldCellShowLeftBorder, shouldCellShowRightBorder } from "../../../utils/cellBorderUtils.js";
|
|
21
|
+
import { PinnedColumnPosition } from "../../../internals/constants.js";
|
|
21
22
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
22
23
|
export const GridColumnHeaderRow = styled('div', {
|
|
23
24
|
name: 'MuiDataGrid',
|
|
@@ -44,10 +45,8 @@ export const useGridColumnHeaders = props => {
|
|
|
44
45
|
const [dragCol, setDragCol] = React.useState('');
|
|
45
46
|
const [resizeCol, setResizeCol] = React.useState('');
|
|
46
47
|
const apiRef = useGridPrivateApiContext();
|
|
47
|
-
const isRtl = useRtl();
|
|
48
48
|
const rootProps = useGridRootProps();
|
|
49
49
|
const dimensions = useGridSelector(apiRef, gridDimensionsSelector);
|
|
50
|
-
const hasColumnVirtualization = useGridSelector(apiRef, gridVirtualizationColumnEnabledSelector);
|
|
51
50
|
const columnGroupsModel = useGridSelector(apiRef, gridColumnGroupsUnwrappedModelSelector);
|
|
52
51
|
const columnPositions = useGridSelector(apiRef, gridColumnPositionsSelector);
|
|
53
52
|
const renderContext = useGridSelector(apiRef, gridRenderContextColumnsSelector);
|
|
@@ -84,18 +83,10 @@ export const useGridColumnHeaders = props => {
|
|
|
84
83
|
// Helper for computation common between getColumnHeaders and getColumnGroupHeaders
|
|
85
84
|
const getColumnsToRender = params => {
|
|
86
85
|
const {
|
|
87
|
-
renderContext: currentContext = renderContext
|
|
88
|
-
maxLastColumn = visibleColumns.length
|
|
86
|
+
renderContext: currentContext = renderContext
|
|
89
87
|
} = params || {};
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
if (!rootProps.disableVirtualization && !hasColumnVirtualization) {
|
|
93
|
-
firstColumnToRender = 0;
|
|
94
|
-
lastColumnToRender = maxLastColumn;
|
|
95
|
-
} else {
|
|
96
|
-
firstColumnToRender = currentContext.firstColumnIndex;
|
|
97
|
-
lastColumnToRender = currentContext.lastColumnIndex;
|
|
98
|
-
}
|
|
88
|
+
const firstColumnToRender = currentContext.firstColumnIndex;
|
|
89
|
+
const lastColumnToRender = currentContext.lastColumnIndex;
|
|
99
90
|
const renderedColumns = visibleColumns.slice(firstColumnToRender, lastColumnToRender);
|
|
100
91
|
return {
|
|
101
92
|
renderedColumns,
|
|
@@ -104,7 +95,7 @@ export const useGridColumnHeaders = props => {
|
|
|
104
95
|
};
|
|
105
96
|
};
|
|
106
97
|
const getFillers = (params, children, leftOverflow, borderBottom = false) => {
|
|
107
|
-
const isPinnedRight = params?.position ===
|
|
98
|
+
const isPinnedRight = params?.position === PinnedColumnPosition.RIGHT;
|
|
108
99
|
const isNotPinned = params?.position === undefined;
|
|
109
100
|
const hasScrollbarFiller = pinnedColumns.right.length > 0 && isPinnedRight || pinnedColumns.right.length === 0 && isNotPinned;
|
|
110
101
|
const leftOffsetWidth = offsetLeft - leftOverflow;
|
|
@@ -125,33 +116,6 @@ export const useGridColumnHeaders = props => {
|
|
|
125
116
|
})]
|
|
126
117
|
});
|
|
127
118
|
};
|
|
128
|
-
const getCellOffsetStyle = ({
|
|
129
|
-
pinnedPosition,
|
|
130
|
-
columnIndex,
|
|
131
|
-
computedWidth
|
|
132
|
-
}) => {
|
|
133
|
-
let style;
|
|
134
|
-
const isLeftPinned = pinnedPosition === GridPinnedColumnPosition.LEFT;
|
|
135
|
-
const isRightPinned = pinnedPosition === GridPinnedColumnPosition.RIGHT;
|
|
136
|
-
if (isLeftPinned || isRightPinned) {
|
|
137
|
-
const pinnedOffset = getPinnedCellOffset(pinnedPosition, computedWidth, columnIndex, columnPositions, dimensions);
|
|
138
|
-
let side = isLeftPinned ? 'left' : 'right';
|
|
139
|
-
if (isRtl) {
|
|
140
|
-
side = isLeftPinned ? 'right' : 'left';
|
|
141
|
-
}
|
|
142
|
-
if (pinnedPosition === 'left') {
|
|
143
|
-
style = {
|
|
144
|
-
[side]: pinnedOffset
|
|
145
|
-
};
|
|
146
|
-
}
|
|
147
|
-
if (pinnedPosition === 'right') {
|
|
148
|
-
style = {
|
|
149
|
-
[side]: pinnedOffset
|
|
150
|
-
};
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
return style;
|
|
154
|
-
};
|
|
155
119
|
const getColumnHeaders = (params, other = {}) => {
|
|
156
120
|
const {
|
|
157
121
|
renderedColumns,
|
|
@@ -166,14 +130,15 @@ export const useGridColumnHeaders = props => {
|
|
|
166
130
|
const hasFocus = columnHeaderFocus !== null && columnHeaderFocus.field === colDef.field;
|
|
167
131
|
const open = columnMenuState.open && columnMenuState.field === colDef.field;
|
|
168
132
|
const pinnedPosition = params?.position;
|
|
169
|
-
const
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
computedWidth: colDef.computedWidth
|
|
173
|
-
});
|
|
174
|
-
const siblingWithBorderingSeparator = pinnedPosition === GridPinnedColumnPosition.RIGHT ? renderedColumns[i - 1] : renderedColumns[i + 1];
|
|
133
|
+
const scrollbarWidth = dimensions.hasScrollY ? dimensions.scrollbarSize : 0;
|
|
134
|
+
const pinnedOffset = getPinnedCellOffset(pinnedPosition, colDef.computedWidth, columnIndex, columnPositions, dimensions.columnsTotalWidth, scrollbarWidth);
|
|
135
|
+
const siblingWithBorderingSeparator = pinnedPosition === PinnedColumnPosition.RIGHT ? renderedColumns[i - 1] : renderedColumns[i + 1];
|
|
175
136
|
const isSiblingFocused = siblingWithBorderingSeparator ? columnHeaderFocus !== null && columnHeaderFocus.field === siblingWithBorderingSeparator.field : false;
|
|
176
137
|
const isLastUnpinned = columnIndex + 1 === columnPositions.length - pinnedColumns.right.length;
|
|
138
|
+
const indexInSection = i;
|
|
139
|
+
const sectionLength = renderedColumns.length;
|
|
140
|
+
const showLeftBorder = shouldCellShowLeftBorder(pinnedPosition, indexInSection);
|
|
141
|
+
const showRightBorder = shouldCellShowRightBorder(pinnedPosition, indexInSection, sectionLength, rootProps.showCellVerticalBorder, gridHasFiller);
|
|
177
142
|
columns.push(/*#__PURE__*/_jsx(GridColumnHeaderItem, _extends({}, sortColumnLookup[colDef.field], {
|
|
178
143
|
columnMenuOpen: open,
|
|
179
144
|
filterItemsCounter: filterColumnLookup[colDef.field] && filterColumnLookup[colDef.field].length,
|
|
@@ -186,12 +151,11 @@ export const useGridColumnHeaders = props => {
|
|
|
186
151
|
hasFocus: hasFocus,
|
|
187
152
|
tabIndex: tabIndex,
|
|
188
153
|
pinnedPosition: pinnedPosition,
|
|
189
|
-
|
|
190
|
-
indexInSection: i,
|
|
191
|
-
sectionLength: renderedColumns.length,
|
|
192
|
-
gridHasFiller: gridHasFiller,
|
|
154
|
+
pinnedOffset: pinnedOffset,
|
|
193
155
|
isLastUnpinned: isLastUnpinned,
|
|
194
|
-
isSiblingFocused: isSiblingFocused
|
|
156
|
+
isSiblingFocused: isSiblingFocused,
|
|
157
|
+
showLeftBorder: showLeftBorder,
|
|
158
|
+
showRightBorder: showRightBorder
|
|
195
159
|
}, other), colDef.field));
|
|
196
160
|
}
|
|
197
161
|
return getFillers(params, columns, 0);
|
|
@@ -203,18 +167,15 @@ export const useGridColumnHeaders = props => {
|
|
|
203
167
|
ownerState: rootProps,
|
|
204
168
|
className: gridClasses['row--borderBottom'],
|
|
205
169
|
children: [leftRenderContext && getColumnHeaders({
|
|
206
|
-
position:
|
|
207
|
-
renderContext: leftRenderContext
|
|
208
|
-
maxLastColumn: leftRenderContext.lastColumnIndex
|
|
170
|
+
position: PinnedColumnPosition.LEFT,
|
|
171
|
+
renderContext: leftRenderContext
|
|
209
172
|
}, {
|
|
210
173
|
disableReorder: true
|
|
211
174
|
}), getColumnHeaders({
|
|
212
|
-
renderContext
|
|
213
|
-
maxLastColumn: visibleColumns.length - pinnedColumns.right.length
|
|
175
|
+
renderContext
|
|
214
176
|
}), rightRenderContext && getColumnHeaders({
|
|
215
|
-
position:
|
|
216
|
-
renderContext: rightRenderContext
|
|
217
|
-
maxLastColumn: rightRenderContext.lastColumnIndex
|
|
177
|
+
position: PinnedColumnPosition.RIGHT,
|
|
178
|
+
renderContext: rightRenderContext
|
|
218
179
|
}, {
|
|
219
180
|
disableReorder: true,
|
|
220
181
|
separatorSide: GridColumnHeaderSeparatorSides.Left
|
|
@@ -273,14 +234,11 @@ export const useGridColumnHeaders = props => {
|
|
|
273
234
|
tabIndex
|
|
274
235
|
};
|
|
275
236
|
const pinnedPosition = params.position;
|
|
276
|
-
const
|
|
277
|
-
|
|
278
|
-
columnIndex,
|
|
279
|
-
computedWidth: headerInfo.width
|
|
280
|
-
});
|
|
237
|
+
const scrollbarWidth = dimensions.hasScrollY ? dimensions.scrollbarSize : 0;
|
|
238
|
+
const pinnedOffset = getPinnedCellOffset(pinnedPosition, headerInfo.width, columnIndex, columnPositions, dimensions.columnsTotalWidth, scrollbarWidth);
|
|
281
239
|
columnIndex += columnFields.length;
|
|
282
240
|
let indexInSection = index;
|
|
283
|
-
if (pinnedPosition ===
|
|
241
|
+
if (pinnedPosition === PinnedColumnPosition.LEFT) {
|
|
284
242
|
// Group headers can expand to multiple columns, we need to adjust the index
|
|
285
243
|
indexInSection = columnIndex - 1;
|
|
286
244
|
}
|
|
@@ -296,10 +254,9 @@ export const useGridColumnHeaders = props => {
|
|
|
296
254
|
hasFocus: hasFocus,
|
|
297
255
|
tabIndex: tabIndex,
|
|
298
256
|
pinnedPosition: pinnedPosition,
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
gridHasFiller: gridHasFiller
|
|
257
|
+
pinnedOffset: pinnedOffset,
|
|
258
|
+
showLeftBorder: shouldCellShowLeftBorder(pinnedPosition, indexInSection),
|
|
259
|
+
showRightBorder: shouldCellShowRightBorder(pinnedPosition, indexInSection, visibleColumnGroupHeader.length, rootProps.showCellVerticalBorder, gridHasFiller)
|
|
303
260
|
}, index);
|
|
304
261
|
});
|
|
305
262
|
return getFillers(params, children, leftOverflow);
|
|
@@ -317,7 +274,7 @@ export const useGridColumnHeaders = props => {
|
|
|
317
274
|
children: [leftRenderContext && getColumnGroupHeaders({
|
|
318
275
|
depth,
|
|
319
276
|
params: {
|
|
320
|
-
position:
|
|
277
|
+
position: PinnedColumnPosition.LEFT,
|
|
321
278
|
renderContext: leftRenderContext,
|
|
322
279
|
maxLastColumn: leftRenderContext.lastColumnIndex
|
|
323
280
|
}
|
|
@@ -329,7 +286,7 @@ export const useGridColumnHeaders = props => {
|
|
|
329
286
|
}), rightRenderContext && getColumnGroupHeaders({
|
|
330
287
|
depth,
|
|
331
288
|
params: {
|
|
332
|
-
position:
|
|
289
|
+
position: PinnedColumnPosition.RIGHT,
|
|
333
290
|
renderContext: rightRenderContext,
|
|
334
291
|
maxLastColumn: rightRenderContext.lastColumnIndex
|
|
335
292
|
}
|
|
@@ -344,11 +301,12 @@ export const useGridColumnHeaders = props => {
|
|
|
344
301
|
rightRenderContext,
|
|
345
302
|
pinnedColumns,
|
|
346
303
|
visibleColumns,
|
|
347
|
-
|
|
304
|
+
columnPositions,
|
|
348
305
|
getFillers,
|
|
349
306
|
getColumnHeadersRow,
|
|
350
307
|
getColumnsToRender,
|
|
351
308
|
getColumnGroupHeadersRows,
|
|
309
|
+
getPinnedCellOffset,
|
|
352
310
|
isDragging: !!dragCol,
|
|
353
311
|
getInnerProps: () => ({
|
|
354
312
|
role: 'rowgroup'
|
|
@@ -6,4 +6,4 @@ export declare const columnMenuStateInitializer: GridStateInitializer;
|
|
|
6
6
|
* @requires useGridColumnResize (event)
|
|
7
7
|
* @requires useGridInfiniteLoader (event)
|
|
8
8
|
*/
|
|
9
|
-
export declare const useGridColumnMenu: (apiRef: React.
|
|
9
|
+
export declare const useGridColumnMenu: (apiRef: React.RefObject<GridPrivateApiCommunity>) => void;
|
|
@@ -7,4 +7,4 @@ export declare const columnResizeStateInitializer: GridStateInitializer;
|
|
|
7
7
|
* @requires useGridColumns (method, event)
|
|
8
8
|
* TODO: improve experience for last column
|
|
9
9
|
*/
|
|
10
|
-
export declare const useGridColumnResize: (apiRef: React.
|
|
10
|
+
export declare const useGridColumnResize: (apiRef: React.RefObject<GridPrivateApiCommunity>, props: Pick<DataGridProcessedProps, "autosizeOptions" | "autosizeOnMount" | "disableAutosize" | "onColumnResize" | "onColumnWidthChange" | "disableVirtualization">) => void;
|
|
@@ -70,7 +70,7 @@ function preventClick(event) {
|
|
|
70
70
|
* is disabled.
|
|
71
71
|
*/
|
|
72
72
|
function useColumnVirtualizationDisabled(apiRef) {
|
|
73
|
-
const promise = React.useRef();
|
|
73
|
+
const promise = React.useRef(undefined);
|
|
74
74
|
const selector = () => gridVirtualizationColumnEnabledSelector(apiRef);
|
|
75
75
|
const value = useGridSelector(apiRef, selector);
|
|
76
76
|
React.useEffect(() => {
|
|
@@ -184,10 +184,10 @@ export const useGridColumnResize = (apiRef, props) => {
|
|
|
184
184
|
// To improve accessibility, the separator has padding on both sides.
|
|
185
185
|
// Clicking inside the padding area should be treated as a click in the separator.
|
|
186
186
|
// This ref stores the offset between the click and the separator.
|
|
187
|
-
const initialOffsetToSeparator = React.useRef();
|
|
188
|
-
const resizeDirection = React.useRef();
|
|
187
|
+
const initialOffsetToSeparator = React.useRef(null);
|
|
188
|
+
const resizeDirection = React.useRef(null);
|
|
189
189
|
const stopResizeEventTimeout = useTimeout();
|
|
190
|
-
const touchId = React.useRef();
|
|
190
|
+
const touchId = React.useRef(undefined);
|
|
191
191
|
const updateWidth = newWidth => {
|
|
192
192
|
logger.debug(`Updating width to ${newWidth} for col ${refs.colDef.field}`);
|
|
193
193
|
const prevWidth = refs.columnHeaderElement.offsetWidth;
|
|
@@ -44,13 +44,13 @@ export declare const createColumnsState: ({ apiRef, columnsToUpsert, initialStat
|
|
|
44
44
|
initialState: GridColumnsInitialState | undefined;
|
|
45
45
|
columnVisibilityModel?: GridColumnVisibilityModel;
|
|
46
46
|
keepOnlyColumnsToUpsert: boolean;
|
|
47
|
-
apiRef: React.
|
|
47
|
+
apiRef: React.RefObject<GridApiCommunity>;
|
|
48
48
|
}) => GridColumnsState;
|
|
49
49
|
export declare function getFirstNonSpannedColumnToRender({ firstColumnToRender, apiRef, firstRowToRender, lastRowToRender, visibleRows, }: {
|
|
50
50
|
firstColumnToRender: number;
|
|
51
|
-
apiRef: React.
|
|
51
|
+
apiRef: React.RefObject<GridApiCommon>;
|
|
52
52
|
firstRowToRender: number;
|
|
53
53
|
lastRowToRender: number;
|
|
54
54
|
visibleRows: GridRowEntry[];
|
|
55
55
|
}): number;
|
|
56
|
-
export declare function getTotalHeaderHeight(apiRef: React.
|
|
56
|
+
export declare function getTotalHeaderHeight(apiRef: React.RefObject<GridApiCommunity>, props: Pick<DataGridProcessedProps, 'columnHeaderHeight' | 'headerFilterHeight' | 'unstable_listView' | 'columnGroupHeaderHeight'>): number;
|