@mui/x-data-grid 7.0.0-beta.2 → 7.0.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +298 -23
- package/DataGrid/DataGrid.js +0 -6
- package/colDef/gridActionsColDef.js +1 -0
- package/colDef/gridBooleanColDef.js +1 -0
- package/colDef/gridCheckboxSelectionColDef.js +1 -0
- package/components/GridRow.d.ts +3 -1
- package/components/GridRow.js +10 -2
- package/components/GridScrollbarFillerCell.js +6 -21
- package/components/cell/GridCell.js +10 -12
- package/components/columnSelection/GridCellCheckboxRenderer.js +1 -2
- package/components/containers/GridRootStyles.js +51 -23
- package/components/panel/GridPanel.d.ts +1 -1
- package/components/panel/filterPanel/GridFilterInputBoolean.js +6 -4
- package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +8 -2
- package/components/panel/filterPanel/GridFilterInputSingleSelect.js +6 -4
- package/components/panel/filterPanel/GridFilterInputValue.js +4 -3
- package/components/virtualization/GridVirtualScrollerRenderZone.js +10 -3
- package/constants/gridClasses.d.ts +24 -8
- package/constants/gridClasses.js +1 -1
- package/hooks/features/clipboard/useGridClipboard.js +1 -1
- package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +5 -5
- package/hooks/features/columnHeaders/useGridColumnHeaders.js +46 -48
- package/hooks/features/editing/useGridCellEditing.js +3 -4
- package/hooks/features/editing/useGridRowEditing.js +3 -4
- package/hooks/features/sorting/useGridSorting.js +1 -2
- package/hooks/features/virtualization/gridVirtualizationSelectors.d.ts +9 -0
- package/hooks/features/virtualization/gridVirtualizationSelectors.js +7 -0
- package/hooks/features/virtualization/useGridVirtualScroller.js +19 -16
- package/hooks/features/virtualization/useGridVirtualization.d.ts +8 -0
- package/hooks/features/virtualization/useGridVirtualization.js +6 -1
- package/index.js +1 -1
- package/internals/index.d.ts +1 -1
- package/internals/index.js +1 -1
- package/models/colDef/gridColDef.d.ts +6 -0
- package/models/events/gridEventLookup.d.ts +1 -8
- package/models/props/DataGridProps.d.ts +0 -6
- package/modern/DataGrid/DataGrid.js +0 -6
- package/modern/colDef/gridActionsColDef.js +1 -0
- package/modern/colDef/gridBooleanColDef.js +1 -0
- package/modern/colDef/gridCheckboxSelectionColDef.js +1 -0
- package/modern/components/GridRow.js +10 -2
- package/modern/components/GridScrollbarFillerCell.js +6 -21
- package/modern/components/cell/GridCell.js +10 -12
- package/modern/components/columnSelection/GridCellCheckboxRenderer.js +1 -2
- package/modern/components/containers/GridRootStyles.js +51 -23
- package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +6 -4
- package/modern/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +8 -2
- package/modern/components/panel/filterPanel/GridFilterInputSingleSelect.js +6 -4
- package/modern/components/panel/filterPanel/GridFilterInputValue.js +4 -3
- package/modern/components/virtualization/GridVirtualScrollerRenderZone.js +10 -3
- package/modern/constants/gridClasses.js +1 -1
- package/modern/hooks/features/clipboard/useGridClipboard.js +1 -1
- package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +46 -48
- package/modern/hooks/features/editing/useGridCellEditing.js +3 -4
- package/modern/hooks/features/editing/useGridRowEditing.js +3 -4
- package/modern/hooks/features/sorting/useGridSorting.js +1 -2
- package/modern/hooks/features/virtualization/gridVirtualizationSelectors.js +7 -0
- package/modern/hooks/features/virtualization/useGridVirtualScroller.js +18 -14
- package/modern/hooks/features/virtualization/useGridVirtualization.js +6 -1
- package/modern/index.js +1 -1
- package/modern/internals/index.js +1 -1
- package/modern/utils/keyboardUtils.js +20 -11
- package/node/DataGrid/DataGrid.js +0 -6
- package/node/colDef/gridActionsColDef.js +1 -0
- package/node/colDef/gridBooleanColDef.js +1 -0
- package/node/colDef/gridCheckboxSelectionColDef.js +1 -0
- package/node/components/GridRow.js +10 -2
- package/node/components/GridScrollbarFillerCell.js +5 -20
- package/node/components/cell/GridCell.js +10 -12
- package/node/components/columnSelection/GridCellCheckboxRenderer.js +1 -2
- package/node/components/containers/GridRootStyles.js +51 -23
- package/node/components/panel/filterPanel/GridFilterInputBoolean.js +6 -4
- package/node/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +8 -2
- package/node/components/panel/filterPanel/GridFilterInputSingleSelect.js +6 -4
- package/node/components/panel/filterPanel/GridFilterInputValue.js +4 -3
- package/node/components/virtualization/GridVirtualScrollerRenderZone.js +10 -3
- package/node/constants/gridClasses.js +1 -1
- package/node/hooks/features/clipboard/useGridClipboard.js +1 -1
- package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +45 -47
- package/node/hooks/features/editing/useGridCellEditing.js +2 -3
- package/node/hooks/features/editing/useGridRowEditing.js +2 -3
- package/node/hooks/features/sorting/useGridSorting.js +1 -2
- package/node/hooks/features/virtualization/gridVirtualizationSelectors.js +8 -1
- package/node/hooks/features/virtualization/useGridVirtualScroller.js +17 -13
- package/node/hooks/features/virtualization/useGridVirtualization.js +7 -2
- package/node/index.js +1 -1
- package/node/internals/index.js +7 -0
- package/node/utils/keyboardUtils.js +25 -20
- package/package.json +3 -3
- package/utils/keyboardUtils.d.ts +7 -6
- package/utils/keyboardUtils.js +20 -11
- package/legacy/DataGrid/DataGrid.js +0 -670
- package/legacy/DataGrid/index.js +0 -2
- package/legacy/DataGrid/useDataGridComponent.js +0 -81
- package/legacy/DataGrid/useDataGridProps.js +0 -98
- package/legacy/colDef/gridActionsColDef.js +0 -18
- package/legacy/colDef/gridBooleanColDef.js +0 -42
- package/legacy/colDef/gridBooleanOperators.js +0 -16
- package/legacy/colDef/gridCheckboxSelectionColDef.js +0 -33
- package/legacy/colDef/gridDateColDef.js +0 -62
- package/legacy/colDef/gridDateOperators.js +0 -115
- package/legacy/colDef/gridDefaultColumnTypes.js +0 -19
- package/legacy/colDef/gridNumericColDef.js +0 -19
- package/legacy/colDef/gridNumericOperators.js +0 -145
- package/legacy/colDef/gridSingleSelectColDef.js +0 -64
- package/legacy/colDef/gridSingleSelectOperators.js +0 -46
- package/legacy/colDef/gridStringColDef.js +0 -27
- package/legacy/colDef/gridStringOperators.js +0 -112
- package/legacy/colDef/index.js +0 -13
- package/legacy/components/GridApiContext.js +0 -5
- package/legacy/components/GridColumnHeaders.js +0 -94
- package/legacy/components/GridDetailPanels.js +0 -4
- package/legacy/components/GridFooter.js +0 -42
- package/legacy/components/GridHeader.js +0 -13
- package/legacy/components/GridHeaders.js +0 -53
- package/legacy/components/GridLoadingOverlay.js +0 -21
- package/legacy/components/GridNoResultsOverlay.js +0 -14
- package/legacy/components/GridNoRowsOverlay.js +0 -23
- package/legacy/components/GridPagination.js +0 -85
- package/legacy/components/GridPinnedRows.js +0 -4
- package/legacy/components/GridRow.js +0 -457
- package/legacy/components/GridRowCount.js +0 -63
- package/legacy/components/GridScrollbarFillerCell.js +0 -34
- package/legacy/components/GridSelectedRowCount.js +0 -66
- package/legacy/components/base/GridBody.js +0 -2
- package/legacy/components/base/GridFooterPlaceholder.js +0 -12
- package/legacy/components/base/GridOverlays.js +0 -122
- package/legacy/components/base/index.js +0 -3
- package/legacy/components/cell/GridActionsCell.js +0 -294
- package/legacy/components/cell/GridActionsCellItem.js +0 -69
- package/legacy/components/cell/GridBooleanCell.js +0 -121
- package/legacy/components/cell/GridCell.js +0 -350
- package/legacy/components/cell/GridEditBooleanCell.js +0 -174
- package/legacy/components/cell/GridEditDateCell.js +0 -230
- package/legacy/components/cell/GridEditInputCell.js +0 -198
- package/legacy/components/cell/GridEditSingleSelectCell.js +0 -231
- package/legacy/components/cell/GridSkeletonCell.js +0 -52
- package/legacy/components/cell/index.js +0 -9
- package/legacy/components/columnHeaders/ColumnHeaderMenuIcon.js +0 -59
- package/legacy/components/columnHeaders/GridBaseColumnHeaders.js +0 -41
- package/legacy/components/columnHeaders/GridColumnGroupHeader.js +0 -132
- package/legacy/components/columnHeaders/GridColumnHeaderFilterIconButton.js +0 -93
- package/legacy/components/columnHeaders/GridColumnHeaderItem.js +0 -212
- package/legacy/components/columnHeaders/GridColumnHeaderSeparator.js +0 -71
- package/legacy/components/columnHeaders/GridColumnHeaderSortIcon.js +0 -79
- package/legacy/components/columnHeaders/GridColumnHeaderTitle.js +0 -84
- package/legacy/components/columnHeaders/GridColumnHeadersInner.js +0 -55
- package/legacy/components/columnHeaders/GridGenericColumnHeaderItem.js +0 -107
- package/legacy/components/columnHeaders/GridIconButtonContainer.js +0 -41
- package/legacy/components/columnHeaders/index.js +0 -5
- package/legacy/components/columnSelection/GridCellCheckboxRenderer.js +0 -160
- package/legacy/components/columnSelection/GridHeaderCheckbox.js +0 -134
- package/legacy/components/columnSelection/index.js +0 -2
- package/legacy/components/columnsManagement/GridColumnsManagement.js +0 -307
- package/legacy/components/columnsManagement/index.js +0 -1
- package/legacy/components/columnsManagement/utils.js +0 -22
- package/legacy/components/containers/GridFooterContainer.js +0 -50
- package/legacy/components/containers/GridOverlay.js +0 -52
- package/legacy/components/containers/GridRoot.js +0 -79
- package/legacy/components/containers/GridRootStyles.js +0 -398
- package/legacy/components/containers/GridToolbarContainer.js +0 -59
- package/legacy/components/containers/index.js +0 -4
- package/legacy/components/index.js +0 -19
- package/legacy/components/menu/GridMenu.js +0 -132
- package/legacy/components/menu/columnMenu/GridColumnHeaderMenu.js +0 -61
- package/legacy/components/menu/columnMenu/GridColumnMenu.js +0 -81
- package/legacy/components/menu/columnMenu/GridColumnMenuContainer.js +0 -56
- package/legacy/components/menu/columnMenu/GridColumnMenuItemProps.js +0 -1
- package/legacy/components/menu/columnMenu/GridColumnMenuProps.js +0 -1
- package/legacy/components/menu/columnMenu/index.js +0 -9
- package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuColumnsItem.js +0 -21
- package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuFilterItem.js +0 -41
- package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuHideItem.js +0 -60
- package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuManageItem.js +0 -41
- package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +0 -80
- package/legacy/components/menu/columnMenu/menuItems/index.js +0 -5
- package/legacy/components/menu/index.js +0 -2
- package/legacy/components/panel/GridColumnsPanel.js +0 -22
- package/legacy/components/panel/GridPanel.js +0 -137
- package/legacy/components/panel/GridPanelContent.js +0 -49
- package/legacy/components/panel/GridPanelFooter.js +0 -50
- package/legacy/components/panel/GridPanelHeader.js +0 -48
- package/legacy/components/panel/GridPanelWrapper.js +0 -64
- package/legacy/components/panel/GridPreferencesPanel.js +0 -26
- package/legacy/components/panel/filterPanel/GridFilterForm.js +0 -528
- package/legacy/components/panel/filterPanel/GridFilterInputBoolean.js +0 -115
- package/legacy/components/panel/filterPanel/GridFilterInputDate.js +0 -121
- package/legacy/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +0 -116
- package/legacy/components/panel/filterPanel/GridFilterInputMultipleValue.js +0 -102
- package/legacy/components/panel/filterPanel/GridFilterInputSingleSelect.js +0 -146
- package/legacy/components/panel/filterPanel/GridFilterInputValue.js +0 -104
- package/legacy/components/panel/filterPanel/GridFilterInputValueProps.js +0 -1
- package/legacy/components/panel/filterPanel/GridFilterPanel.js +0 -264
- package/legacy/components/panel/filterPanel/filterPanelUtils.js +0 -22
- package/legacy/components/panel/filterPanel/index.js +0 -9
- package/legacy/components/panel/index.js +0 -7
- package/legacy/components/reexportable.js +0 -1
- package/legacy/components/toolbar/GridToolbar.js +0 -64
- package/legacy/components/toolbar/GridToolbarColumnsButton.js +0 -68
- package/legacy/components/toolbar/GridToolbarDensitySelector.js +0 -142
- package/legacy/components/toolbar/GridToolbarExport.js +0 -80
- package/legacy/components/toolbar/GridToolbarExportContainer.js +0 -105
- package/legacy/components/toolbar/GridToolbarFilterButton.js +0 -136
- package/legacy/components/toolbar/GridToolbarQuickFilter.js +0 -164
- package/legacy/components/toolbar/index.js +0 -7
- package/legacy/components/virtualization/GridBottomContainer.js +0 -25
- package/legacy/components/virtualization/GridMainContainer.js +0 -20
- package/legacy/components/virtualization/GridTopContainer.js +0 -35
- package/legacy/components/virtualization/GridVirtualScrollbar.js +0 -129
- package/legacy/components/virtualization/GridVirtualScroller.js +0 -93
- package/legacy/components/virtualization/GridVirtualScrollerContent.js +0 -35
- package/legacy/components/virtualization/GridVirtualScrollerFiller.js +0 -70
- package/legacy/components/virtualization/GridVirtualScrollerRenderZone.js +0 -42
- package/legacy/constants/defaultGridSlotsComponents.js +0 -33
- package/legacy/constants/envConstants.js +0 -19
- package/legacy/constants/gridClasses.js +0 -5
- package/legacy/constants/gridDetailPanelToggleField.js +0 -2
- package/legacy/constants/index.js +0 -3
- package/legacy/constants/localeTextConstants.js +0 -158
- package/legacy/context/GridContextProvider.js +0 -21
- package/legacy/context/GridRootPropsContext.js +0 -6
- package/legacy/context/index.js +0 -1
- package/legacy/hooks/core/gridCoreSelector.js +0 -7
- package/legacy/hooks/core/index.js +0 -1
- package/legacy/hooks/core/pipeProcessing/gridPipeProcessingApi.js +0 -1
- package/legacy/hooks/core/pipeProcessing/index.js +0 -4
- package/legacy/hooks/core/pipeProcessing/useGridPipeProcessing.js +0 -114
- package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +0 -26
- package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +0 -26
- package/legacy/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +0 -1
- package/legacy/hooks/core/strategyProcessing/index.js +0 -3
- package/legacy/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +0 -18
- package/legacy/hooks/core/strategyProcessing/useGridStrategyProcessing.js +0 -116
- package/legacy/hooks/core/useGridApiInitialization.js +0 -124
- package/legacy/hooks/core/useGridInitialization.js +0 -26
- package/legacy/hooks/core/useGridLocaleText.js +0 -12
- package/legacy/hooks/core/useGridLoggerFactory.js +0 -51
- package/legacy/hooks/core/useGridRefs.js +0 -13
- package/legacy/hooks/core/useGridStateInitialization.js +0 -106
- package/legacy/hooks/core/useGridTheme.js +0 -21
- package/legacy/hooks/features/clipboard/useGridClipboard.js +0 -92
- package/legacy/hooks/features/columnGrouping/gridColumnGroupsInterfaces.js +0 -1
- package/legacy/hooks/features/columnGrouping/gridColumnGroupsSelector.js +0 -24
- package/legacy/hooks/features/columnGrouping/gridColumnGroupsUtils.js +0 -92
- package/legacy/hooks/features/columnGrouping/index.js +0 -2
- package/legacy/hooks/features/columnGrouping/useGridColumnGrouping.js +0 -140
- package/legacy/hooks/features/columnHeaders/useGridColumnHeaders.js +0 -275
- package/legacy/hooks/features/columnMenu/columnMenuInterfaces.js +0 -1
- package/legacy/hooks/features/columnMenu/columnMenuSelector.js +0 -3
- package/legacy/hooks/features/columnMenu/index.js +0 -2
- package/legacy/hooks/features/columnMenu/useGridColumnMenu.js +0 -108
- package/legacy/hooks/features/columnMenu/useGridColumnMenuSlots.js +0 -71
- package/legacy/hooks/features/columns/gridColumnsInterfaces.js +0 -9
- package/legacy/hooks/features/columns/gridColumnsSelector.js +0 -174
- package/legacy/hooks/features/columns/gridColumnsUtils.js +0 -338
- package/legacy/hooks/features/columns/index.js +0 -2
- package/legacy/hooks/features/columns/useGridColumnSpanning.js +0 -105
- package/legacy/hooks/features/columns/useGridColumns.js +0 -319
- package/legacy/hooks/features/density/densitySelector.js +0 -10
- package/legacy/hooks/features/density/densityState.js +0 -1
- package/legacy/hooks/features/density/index.js +0 -2
- package/legacy/hooks/features/density/useGridDensity.js +0 -48
- package/legacy/hooks/features/dimensions/gridDimensionsApi.js +0 -1
- package/legacy/hooks/features/dimensions/gridDimensionsSelectors.js +0 -3
- package/legacy/hooks/features/dimensions/index.js +0 -2
- package/legacy/hooks/features/dimensions/useGridDimensions.js +0 -302
- package/legacy/hooks/features/editing/gridEditingSelectors.js +0 -4
- package/legacy/hooks/features/editing/useGridCellEditing.js +0 -456
- package/legacy/hooks/features/editing/useGridEditing.js +0 -145
- package/legacy/hooks/features/editing/useGridRowEditing.js +0 -567
- package/legacy/hooks/features/events/useGridEvents.js +0 -23
- package/legacy/hooks/features/export/serializers/csvSerializer.js +0 -155
- package/legacy/hooks/features/export/useGridCsvExport.js +0 -75
- package/legacy/hooks/features/export/useGridPrintExport.js +0 -313
- package/legacy/hooks/features/export/utils.js +0 -49
- package/legacy/hooks/features/filter/gridFilterSelector.js +0 -165
- package/legacy/hooks/features/filter/gridFilterState.js +0 -20
- package/legacy/hooks/features/filter/gridFilterUtils.js +0 -330
- package/legacy/hooks/features/filter/index.js +0 -2
- package/legacy/hooks/features/filter/useGridFilter.js +0 -378
- package/legacy/hooks/features/focus/gridFocusState.js +0 -1
- package/legacy/hooks/features/focus/gridFocusStateSelector.js +0 -31
- package/legacy/hooks/features/focus/index.js +0 -2
- package/legacy/hooks/features/focus/useGridFocus.js +0 -408
- package/legacy/hooks/features/headerFiltering/gridHeaderFilteringSelectors.js +0 -10
- package/legacy/hooks/features/headerFiltering/index.js +0 -1
- package/legacy/hooks/features/headerFiltering/useGridHeaderFiltering.js +0 -93
- package/legacy/hooks/features/index.js +0 -16
- package/legacy/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +0 -565
- package/legacy/hooks/features/pagination/gridPaginationInterfaces.js +0 -1
- package/legacy/hooks/features/pagination/gridPaginationSelector.js +0 -115
- package/legacy/hooks/features/pagination/gridPaginationUtils.js +0 -31
- package/legacy/hooks/features/pagination/index.js +0 -2
- package/legacy/hooks/features/pagination/useGridPagination.js +0 -175
- package/legacy/hooks/features/preferencesPanel/gridPreferencePanelSelector.js +0 -3
- package/legacy/hooks/features/preferencesPanel/gridPreferencePanelState.js +0 -1
- package/legacy/hooks/features/preferencesPanel/gridPreferencePanelsValue.js +0 -6
- package/legacy/hooks/features/preferencesPanel/index.js +0 -3
- package/legacy/hooks/features/preferencesPanel/useGridPreferencesPanel.js +0 -125
- package/legacy/hooks/features/rowSelection/gridRowSelectionSelector.js +0 -19
- package/legacy/hooks/features/rowSelection/index.js +0 -1
- package/legacy/hooks/features/rowSelection/useGridRowSelection.js +0 -419
- package/legacy/hooks/features/rowSelection/useGridRowSelectionPreProcessors.js +0 -45
- package/legacy/hooks/features/rowSelection/utils.js +0 -8
- package/legacy/hooks/features/rows/gridRowsInterfaces.js +0 -1
- package/legacy/hooks/features/rows/gridRowsMetaSelector.js +0 -3
- package/legacy/hooks/features/rows/gridRowsMetaState.js +0 -1
- package/legacy/hooks/features/rows/gridRowsSelector.js +0 -90
- package/legacy/hooks/features/rows/gridRowsUtils.js +0 -294
- package/legacy/hooks/features/rows/index.js +0 -4
- package/legacy/hooks/features/rows/useGridParamsApi.js +0 -142
- package/legacy/hooks/features/rows/useGridRows.js +0 -466
- package/legacy/hooks/features/rows/useGridRowsMeta.js +0 -236
- package/legacy/hooks/features/rows/useGridRowsPreProcessors.js +0 -82
- package/legacy/hooks/features/scroll/useGridScroll.js +0 -133
- package/legacy/hooks/features/sorting/gridSortingSelector.js +0 -56
- package/legacy/hooks/features/sorting/gridSortingState.js +0 -1
- package/legacy/hooks/features/sorting/gridSortingUtils.js +0 -154
- package/legacy/hooks/features/sorting/index.js +0 -2
- package/legacy/hooks/features/sorting/useGridSorting.js +0 -276
- package/legacy/hooks/features/statePersistence/gridStatePersistenceInterface.js +0 -1
- package/legacy/hooks/features/statePersistence/index.js +0 -1
- package/legacy/hooks/features/statePersistence/useGridStatePersistence.js +0 -25
- package/legacy/hooks/features/virtualization/gridVirtualizationSelectors.js +0 -52
- package/legacy/hooks/features/virtualization/index.js +0 -2
- package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +0 -643
- package/legacy/hooks/features/virtualization/useGridVirtualization.js +0 -58
- package/legacy/hooks/index.js +0 -3
- package/legacy/hooks/utils/index.js +0 -9
- package/legacy/hooks/utils/useFirstRender.js +0 -8
- package/legacy/hooks/utils/useGridApiContext.js +0 -9
- package/legacy/hooks/utils/useGridApiEventHandler.js +0 -105
- package/legacy/hooks/utils/useGridApiMethod.js +0 -11
- package/legacy/hooks/utils/useGridApiRef.js +0 -7
- package/legacy/hooks/utils/useGridAriaAttributes.js +0 -25
- package/legacy/hooks/utils/useGridInitializeState.js +0 -8
- package/legacy/hooks/utils/useGridLogger.js +0 -10
- package/legacy/hooks/utils/useGridNativeEventListener.js +0 -32
- package/legacy/hooks/utils/useGridPrivateApiContext.js +0 -12
- package/legacy/hooks/utils/useGridRootProps.js +0 -9
- package/legacy/hooks/utils/useGridSelector.js +0 -54
- package/legacy/hooks/utils/useGridVisibleRows.js +0 -42
- package/legacy/hooks/utils/useLazyRef.js +0 -11
- package/legacy/hooks/utils/useOnMount.js +0 -7
- package/legacy/hooks/utils/useResizeObserver.js +0 -36
- package/legacy/hooks/utils/useRunOnce.js +0 -18
- package/legacy/hooks/utils/useTimeout.js +0 -38
- package/legacy/index.js +0 -38
- package/legacy/internals/index.js +0 -68
- package/legacy/internals/utils/computeSlots.js +0 -17
- package/legacy/internals/utils/index.js +0 -3
- package/legacy/internals/utils/propValidation.js +0 -21
- package/legacy/internals/utils/useProps.js +0 -32
- package/legacy/joy/icons.js +0 -432
- package/legacy/joy/index.js +0 -2
- package/legacy/joy/joySlots.js +0 -420
- package/legacy/locales/arSD.js +0 -160
- package/legacy/locales/beBY.js +0 -184
- package/legacy/locales/bgBG.js +0 -160
- package/legacy/locales/coreLocales.js +0 -62
- package/legacy/locales/csCZ.js +0 -181
- package/legacy/locales/daDK.js +0 -160
- package/legacy/locales/deDE.js +0 -160
- package/legacy/locales/elGR.js +0 -160
- package/legacy/locales/enUS.js +0 -4
- package/legacy/locales/esES.js +0 -160
- package/legacy/locales/faIR.js +0 -160
- package/legacy/locales/fiFI.js +0 -160
- package/legacy/locales/frFR.js +0 -160
- package/legacy/locales/heIL.js +0 -160
- package/legacy/locales/hrHR.js +0 -160
- package/legacy/locales/huHU.js +0 -160
- package/legacy/locales/index.js +0 -35
- package/legacy/locales/itIT.js +0 -160
- package/legacy/locales/jaJP.js +0 -160
- package/legacy/locales/koKR.js +0 -162
- package/legacy/locales/nbNO.js +0 -162
- package/legacy/locales/nlNL.js +0 -160
- package/legacy/locales/plPL.js +0 -163
- package/legacy/locales/ptBR.js +0 -160
- package/legacy/locales/ptPT.js +0 -160
- package/legacy/locales/roRO.js +0 -160
- package/legacy/locales/ruRU.js +0 -181
- package/legacy/locales/skSK.js +0 -181
- package/legacy/locales/svSE.js +0 -160
- package/legacy/locales/trTR.js +0 -161
- package/legacy/locales/ukUA.js +0 -182
- package/legacy/locales/urPK.js +0 -160
- package/legacy/locales/viVN.js +0 -160
- package/legacy/locales/zhCN.js +0 -160
- package/legacy/locales/zhHK.js +0 -160
- package/legacy/locales/zhTW.js +0 -160
- package/legacy/material/components/MUISelectOption.js +0 -14
- package/legacy/material/icons/GridColumnUnsortedIcon.js +0 -16
- package/legacy/material/icons/index.js +0 -89
- package/legacy/material/index.js +0 -69
- package/legacy/models/api/gridApiCommon.js +0 -1
- package/legacy/models/api/gridApiCommunity.js +0 -1
- package/legacy/models/api/gridCallbackDetails.js +0 -1
- package/legacy/models/api/gridColumnApi.js +0 -1
- package/legacy/models/api/gridColumnGroupingApi.js +0 -1
- package/legacy/models/api/gridColumnMenuApi.js +0 -1
- package/legacy/models/api/gridColumnSpanning.js +0 -1
- package/legacy/models/api/gridCoreApi.js +0 -1
- package/legacy/models/api/gridCsvExportApi.js +0 -1
- package/legacy/models/api/gridDensityApi.js +0 -1
- package/legacy/models/api/gridEditingApi.js +0 -1
- package/legacy/models/api/gridFilterApi.js +0 -1
- package/legacy/models/api/gridFocusApi.js +0 -1
- package/legacy/models/api/gridHeaderFilteringApi.js +0 -1
- package/legacy/models/api/gridLocaleTextApi.js +0 -1
- package/legacy/models/api/gridLoggerApi.js +0 -1
- package/legacy/models/api/gridParamsApi.js +0 -1
- package/legacy/models/api/gridPreferencesPanelApi.js +0 -1
- package/legacy/models/api/gridPrintExportApi.js +0 -1
- package/legacy/models/api/gridRowApi.js +0 -1
- package/legacy/models/api/gridRowSelectionApi.js +0 -1
- package/legacy/models/api/gridRowsMetaApi.js +0 -1
- package/legacy/models/api/gridScrollApi.js +0 -1
- package/legacy/models/api/gridSortApi.js +0 -1
- package/legacy/models/api/gridStateApi.js +0 -1
- package/legacy/models/api/gridVirtualizationApi.js +0 -1
- package/legacy/models/api/index.js +0 -16
- package/legacy/models/colDef/gridColDef.js +0 -1
- package/legacy/models/colDef/gridColType.js +0 -1
- package/legacy/models/colDef/gridColumnTypesRecord.js +0 -1
- package/legacy/models/colDef/index.js +0 -6
- package/legacy/models/controlStateItem.js +0 -1
- package/legacy/models/cursorCoordinates.js +0 -1
- package/legacy/models/elementSize.js +0 -1
- package/legacy/models/events/gridEventListener.js +0 -1
- package/legacy/models/events/gridEventLookup.js +0 -1
- package/legacy/models/events/gridEventPublisher.js +0 -1
- package/legacy/models/events/index.js +0 -3
- package/legacy/models/gridApiCaches.js +0 -1
- package/legacy/models/gridCell.js +0 -1
- package/legacy/models/gridCellClass.js +0 -1
- package/legacy/models/gridColumnGrouping.js +0 -11
- package/legacy/models/gridColumnHeaderClass.js +0 -1
- package/legacy/models/gridColumnSpanning.js +0 -1
- package/legacy/models/gridDensity.js +0 -1
- package/legacy/models/gridEditRowModel.js +0 -16
- package/legacy/models/gridExport.js +0 -1
- package/legacy/models/gridFeatureMode.js +0 -1
- package/legacy/models/gridFilterItem.js +0 -11
- package/legacy/models/gridFilterModel.js +0 -1
- package/legacy/models/gridFilterOperator.js +0 -1
- package/legacy/models/gridHeaderFilteringModel.js +0 -1
- package/legacy/models/gridIconSlotsComponent.js +0 -1
- package/legacy/models/gridPaginationProps.js +0 -1
- package/legacy/models/gridRenderContextProps.js +0 -1
- package/legacy/models/gridRowSelectionModel.js +0 -1
- package/legacy/models/gridRows.js +0 -1
- package/legacy/models/gridSlotsComponent.js +0 -1
- package/legacy/models/gridSlotsComponentsProps.js +0 -1
- package/legacy/models/gridSortModel.js +0 -1
- package/legacy/models/gridStateCommunity.js +0 -1
- package/legacy/models/index.js +0 -29
- package/legacy/models/logger.js +0 -1
- package/legacy/models/muiEvent.js +0 -1
- package/legacy/models/params/gridCellParams.js +0 -1
- package/legacy/models/params/gridColumnGroupHeaderParams.js +0 -1
- package/legacy/models/params/gridColumnHeaderParams.js +0 -1
- package/legacy/models/params/gridColumnOrderChangeParams.js +0 -1
- package/legacy/models/params/gridColumnResizeParams.js +0 -1
- package/legacy/models/params/gridEditCellParams.js +0 -27
- package/legacy/models/params/gridHeaderSelectionCheckboxParams.js +0 -1
- package/legacy/models/params/gridMenuParams.js +0 -1
- package/legacy/models/params/gridPreferencePanelParams.js +0 -1
- package/legacy/models/params/gridRowParams.js +0 -44
- package/legacy/models/params/gridRowSelectionCheckboxParams.js +0 -1
- package/legacy/models/params/gridScrollParams.js +0 -1
- package/legacy/models/params/gridValueOptionsParams.js +0 -1
- package/legacy/models/params/index.js +0 -13
- package/legacy/models/props/DataGridProps.js +0 -1
- package/legacy/themeAugmentation/index.js +0 -4
- package/legacy/themeAugmentation/overrides.js +0 -1
- package/legacy/themeAugmentation/props.js +0 -1
- package/legacy/utils/EventManager.js +0 -91
- package/legacy/utils/Store.js +0 -34
- package/legacy/utils/cleanupTracking/CleanupTracking.js +0 -1
- package/legacy/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +0 -29
- package/legacy/utils/cleanupTracking/TimerBasedCleanupTracking.js +0 -52
- package/legacy/utils/createControllablePromise.js +0 -11
- package/legacy/utils/createSelector.js +0 -120
- package/legacy/utils/doesSupportPreventScroll.js +0 -13
- package/legacy/utils/domUtils.js +0 -49
- package/legacy/utils/exportAs.js +0 -40
- package/legacy/utils/fastMemo.js +0 -5
- package/legacy/utils/fastObjectShallowCompare.js +0 -32
- package/legacy/utils/getGridLocalization.js +0 -15
- package/legacy/utils/getPublicApiRef.js +0 -5
- package/legacy/utils/index.js +0 -1
- package/legacy/utils/keyboardUtils.js +0 -60
- package/legacy/utils/utils.js +0 -189
- package/legacy/utils/warning.js +0 -25
|
@@ -15,7 +15,7 @@ var _styles = require("@mui/material/styles");
|
|
|
15
15
|
var _useGridRootProps = require("../../../hooks/utils/useGridRootProps");
|
|
16
16
|
var _filterPanelUtils = require("./filterPanelUtils");
|
|
17
17
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
|
-
const _excluded = ["item", "applyValue", "type", "apiRef", "focusElementRef", "placeholder", "tabIndex", "label", "isFilterActive", "clearButton", "InputLabelProps"];
|
|
18
|
+
const _excluded = ["item", "applyValue", "type", "apiRef", "focusElementRef", "placeholder", "tabIndex", "label", "variant", "isFilterActive", "clearButton", "InputLabelProps"];
|
|
19
19
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
20
20
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
21
21
|
const renderSingleSelectOptions = ({
|
|
@@ -58,6 +58,7 @@ function GridFilterInputSingleSelect(props) {
|
|
|
58
58
|
placeholder,
|
|
59
59
|
tabIndex,
|
|
60
60
|
label: labelProp,
|
|
61
|
+
variant = 'standard',
|
|
61
62
|
clearButton
|
|
62
63
|
} = props,
|
|
63
64
|
others = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
|
|
@@ -98,7 +99,7 @@ function GridFilterInputSingleSelect(props) {
|
|
|
98
99
|
id: labelId,
|
|
99
100
|
htmlFor: id,
|
|
100
101
|
shrink: true,
|
|
101
|
-
variant:
|
|
102
|
+
variant: variant,
|
|
102
103
|
children: label
|
|
103
104
|
})), /*#__PURE__*/(0, _jsxRuntime.jsx)(rootProps.slots.baseSelect, (0, _extends2.default)({
|
|
104
105
|
id: id,
|
|
@@ -106,14 +107,15 @@ function GridFilterInputSingleSelect(props) {
|
|
|
106
107
|
labelId: labelId,
|
|
107
108
|
value: filterValue,
|
|
108
109
|
onChange: onFilterChange,
|
|
109
|
-
variant:
|
|
110
|
+
variant: variant,
|
|
110
111
|
type: type || 'text',
|
|
111
112
|
inputProps: {
|
|
112
113
|
tabIndex,
|
|
113
114
|
ref: focusElementRef,
|
|
114
115
|
placeholder: placeholder ?? apiRef.current.getLocaleText('filterPanelInputPlaceholder')
|
|
115
116
|
},
|
|
116
|
-
native: isSelectNative
|
|
117
|
+
native: isSelectNative,
|
|
118
|
+
notched: variant === 'outlined' ? true : undefined
|
|
117
119
|
}, others /* FIXME: typing error */, rootProps.slotProps?.baseSelect, {
|
|
118
120
|
children: renderSingleSelectOptions({
|
|
119
121
|
column: resolvedColumn,
|
|
@@ -13,7 +13,7 @@ var _utils = require("@mui/utils");
|
|
|
13
13
|
var _useTimeout = require("../../../hooks/utils/useTimeout");
|
|
14
14
|
var _useGridRootProps = require("../../../hooks/utils/useGridRootProps");
|
|
15
15
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
|
-
const _excluded = ["item", "applyValue", "type", "apiRef", "focusElementRef", "tabIndex", "disabled", "isFilterActive", "clearButton", "InputProps"];
|
|
16
|
+
const _excluded = ["item", "applyValue", "type", "apiRef", "focusElementRef", "tabIndex", "disabled", "isFilterActive", "clearButton", "InputProps", "variant"];
|
|
17
17
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
18
18
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
19
19
|
function GridFilterInputValue(props) {
|
|
@@ -26,7 +26,8 @@ function GridFilterInputValue(props) {
|
|
|
26
26
|
tabIndex,
|
|
27
27
|
disabled,
|
|
28
28
|
clearButton,
|
|
29
|
-
InputProps
|
|
29
|
+
InputProps,
|
|
30
|
+
variant = 'standard'
|
|
30
31
|
} = props,
|
|
31
32
|
others = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
|
|
32
33
|
const filterTimeout = (0, _useTimeout.useTimeout)();
|
|
@@ -61,7 +62,7 @@ function GridFilterInputValue(props) {
|
|
|
61
62
|
placeholder: apiRef.current.getLocaleText('filterPanelInputPlaceholder'),
|
|
62
63
|
value: filterValueState,
|
|
63
64
|
onChange: onFilterChange,
|
|
64
|
-
variant:
|
|
65
|
+
variant: variant,
|
|
65
66
|
type: type || 'text',
|
|
66
67
|
InputProps: (0, _extends2.default)({}, applying || clearButton ? {
|
|
67
68
|
endAdornment: applying ? /*#__PURE__*/(0, _jsxRuntime.jsx)(rootProps.slots.loadIcon, {
|
|
@@ -11,6 +11,9 @@ var React = _interopRequireWildcard(require("react"));
|
|
|
11
11
|
var _clsx = _interopRequireDefault(require("clsx"));
|
|
12
12
|
var _system = require("@mui/system");
|
|
13
13
|
var _utils = require("@mui/utils");
|
|
14
|
+
var _useGridApiContext = require("../../hooks/utils/useGridApiContext");
|
|
15
|
+
var _useGridSelector = require("../../hooks/utils/useGridSelector");
|
|
16
|
+
var _virtualization = require("../../hooks/features/virtualization");
|
|
14
17
|
var _useGridRootProps = require("../../hooks/utils/useGridRootProps");
|
|
15
18
|
var _gridClasses = require("../../constants/gridClasses");
|
|
16
19
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
@@ -34,19 +37,23 @@ const VirtualScrollerRenderZoneRoot = (0, _system.styled)('div', {
|
|
|
34
37
|
position: 'absolute',
|
|
35
38
|
display: 'flex',
|
|
36
39
|
// Prevents margin collapsing when using `getRowSpacing`
|
|
37
|
-
flexDirection: 'column'
|
|
38
|
-
transform: 'translate3d(0, var(--DataGrid-offsetTop), 0)'
|
|
40
|
+
flexDirection: 'column'
|
|
39
41
|
});
|
|
40
42
|
const GridVirtualScrollerRenderZone = exports.GridVirtualScrollerRenderZone = /*#__PURE__*/React.forwardRef(function GridVirtualScrollerRenderZone(props, ref) {
|
|
41
43
|
const {
|
|
42
44
|
className
|
|
43
45
|
} = props,
|
|
44
46
|
other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
|
|
47
|
+
const apiRef = (0, _useGridApiContext.useGridApiContext)();
|
|
45
48
|
const rootProps = (0, _useGridRootProps.useGridRootProps)();
|
|
46
49
|
const classes = useUtilityClasses(rootProps);
|
|
50
|
+
const offsets = (0, _useGridSelector.useGridSelector)(apiRef, _virtualization.gridOffsetsSelector);
|
|
47
51
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(VirtualScrollerRenderZoneRoot, (0, _extends2.default)({
|
|
48
52
|
ref: ref,
|
|
49
53
|
className: (0, _clsx.default)(classes.root, className),
|
|
50
|
-
ownerState: rootProps
|
|
54
|
+
ownerState: rootProps,
|
|
55
|
+
style: {
|
|
56
|
+
transform: `translate3d(0, ${offsets.top}px, 0)`
|
|
57
|
+
}
|
|
51
58
|
}, other));
|
|
52
59
|
});
|
|
@@ -9,4 +9,4 @@ var _utils = require("@mui/utils");
|
|
|
9
9
|
function getDataGridUtilityClass(slot) {
|
|
10
10
|
return (0, _utils.unstable_generateUtilityClass)('MuiDataGrid', slot);
|
|
11
11
|
}
|
|
12
|
-
const gridClasses = exports.gridClasses = (0, _utils.unstable_generateUtilityClasses)('MuiDataGrid', ['actionsCell', 'aggregationColumnHeader', 'aggregationColumnHeader--alignLeft', 'aggregationColumnHeader--alignCenter', 'aggregationColumnHeader--alignRight', 'aggregationColumnHeaderLabel', 'autoHeight', 'autosizing', 'booleanCell', 'cell--editable', 'cell--editing', 'cell--
|
|
12
|
+
const gridClasses = exports.gridClasses = (0, _utils.unstable_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--alignCenter', 'columnHeader--alignLeft', 'columnHeader--alignRight', 'columnHeader--dragging', 'columnHeader--moving', 'columnHeader--numeric', 'columnHeader--sortable', 'columnHeader--sorted', 'columnHeader--filtered', 'columnHeader', 'columnHeaderCheckbox', 'columnHeaderDraggableContainer', 'columnHeaderDropZone', 'columnHeaderTitle', 'columnHeaderTitleContainer', 'columnHeaderTitleContainerContent', 'columnGroupHeader', 'columnHeader--filledGroup', 'columnHeader--emptyGroup', 'columnHeader--showColumnBorder', 'columnHeaders', 'columnHeadersInner', 'columnHeadersInner--scrollable', 'columnSeparator--resizable', 'columnSeparator--resizing', 'columnSeparator--sideLeft', 'columnSeparator--sideRight', 'columnSeparator', 'columnsManagement', 'columnsManagementRow', 'columnsManagementHeader', 'columnsManagementFooter', 'container--top', 'container--bottom', 'detailPanel', 'detailPanels', 'detailPanelToggleCell', 'detailPanelToggleCell--expanded', 'footerCell', 'panel', 'panelHeader', 'panelWrapper', 'panelContent', 'panelFooter', 'paper', 'editBooleanCell', 'editInputCell', 'filler', 'filler--pinnedLeft', 'filler--pinnedRight', 'filterForm', 'filterFormDeleteIcon', 'filterFormLogicOperatorInput', 'filterFormColumnInput', 'filterFormOperatorInput', 'filterFormValueInput', 'filterIcon', 'footerContainer', 'headerFilterRow', 'iconButtonContainer', 'iconSeparator', 'main', 'main--hasPinnedRight', 'menu', 'menuIcon', 'menuIconButton', 'menuOpen', 'menuList', 'overlay', 'overlayWrapper', 'overlayWrapperInner', 'root', 'root--densityStandard', 'root--densityComfortable', 'root--densityCompact', 'root--disableUserSelection', 'row', 'row--editable', 'row--editing', 'row--firstVisible', 'row--lastVisible', 'row--dragging', 'row--dynamicHeight', 'row--detailPanelExpanded', 'rowReorderCellPlaceholder', 'rowCount', 'rowReorderCellContainer', 'rowReorderCell', 'rowReorderCell--draggable', 'scrollArea--left', 'scrollArea--right', 'scrollArea', 'scrollbar', 'scrollbar--vertical', 'scrollbar--horizontal', 'scrollbarFiller', 'scrollbarFiller--header', 'scrollbarFiller--borderTop', 'scrollbarFiller--pinnedRight', 'selectedRowCount', 'sortIcon', 'toolbarContainer', 'toolbarFilterList', 'virtualScroller', 'virtualScrollerContent', 'virtualScrollerContent--overflowed', 'virtualScrollerRenderZone', 'pinnedColumns', 'pinnedColumnHeaders', 'pinnedColumnHeaders--left', 'pinnedColumnHeaders--right', 'withVerticalBorder', 'withBorderColor', 'cell--withRightBorder', 'cell--withLeftBorder', 'columnHeader--withRightBorder', 'treeDataGroupingCell', 'treeDataGroupingCellToggle', 'groupingCriteriaCell', 'groupingCriteriaCellToggle', 'pinnedRows', 'pinnedRows--top', 'pinnedRows--bottom', 'pinnedRowsRenderZone']);
|
|
@@ -61,7 +61,7 @@ const useGridClipboard = (apiRef, props) => {
|
|
|
61
61
|
const ignoreValueFormatter = (typeof ignoreValueFormatterProp === 'object' ? ignoreValueFormatterProp?.clipboardExport : ignoreValueFormatterProp) || false;
|
|
62
62
|
const clipboardCopyCellDelimiter = props.clipboardCopyCellDelimiter;
|
|
63
63
|
const handleCopy = React.useCallback(event => {
|
|
64
|
-
if (!((event.ctrlKey || event.metaKey) && event.key === 'c')) {
|
|
64
|
+
if (!((event.ctrlKey || event.metaKey) && event.key.toLowerCase() === 'c' && !event.shiftKey && !event.altKey)) {
|
|
65
65
|
return;
|
|
66
66
|
}
|
|
67
67
|
|
|
@@ -10,6 +10,7 @@ var React = _interopRequireWildcard(require("react"));
|
|
|
10
10
|
var _utils = require("@mui/utils");
|
|
11
11
|
var _styles = require("@mui/material/styles");
|
|
12
12
|
var _utils2 = require("../../utils");
|
|
13
|
+
var _useGridRootProps = require("../../utils/useGridRootProps");
|
|
13
14
|
var _useGridPrivateApiContext = require("../../utils/useGridPrivateApiContext");
|
|
14
15
|
var _useGridApiEventHandler = require("../../utils/useGridApiEventHandler");
|
|
15
16
|
var _GridColumnHeaderItem = require("../../../components/columnHeaders/GridColumnHeaderItem");
|
|
@@ -32,19 +33,11 @@ const SpaceFiller = (0, _styles.styled)('div')({
|
|
|
32
33
|
const GridColumnHeaderRow = exports.GridColumnHeaderRow = (0, _styles.styled)('div', {
|
|
33
34
|
name: 'MuiDataGrid',
|
|
34
35
|
slot: 'ColumnHeaderRow',
|
|
35
|
-
overridesResolver: (
|
|
36
|
-
})(
|
|
37
|
-
ownerState: {
|
|
38
|
-
params: {
|
|
39
|
-
position
|
|
40
|
-
} = {},
|
|
41
|
-
leftOverflow = 0
|
|
42
|
-
}
|
|
43
|
-
}) => ({
|
|
36
|
+
overridesResolver: (_, styles) => styles.columnHeaderRow
|
|
37
|
+
})({
|
|
44
38
|
display: 'flex',
|
|
45
|
-
height: 'var(--DataGrid-headerHeight)'
|
|
46
|
-
|
|
47
|
-
}));
|
|
39
|
+
height: 'var(--DataGrid-headerHeight)'
|
|
40
|
+
});
|
|
48
41
|
const useGridColumnHeaders = props => {
|
|
49
42
|
const {
|
|
50
43
|
innerRef: innerRefProp,
|
|
@@ -64,10 +57,12 @@ const useGridColumnHeaders = props => {
|
|
|
64
57
|
const [dragCol, setDragCol] = React.useState('');
|
|
65
58
|
const [resizeCol, setResizeCol] = React.useState('');
|
|
66
59
|
const apiRef = (0, _useGridPrivateApiContext.useGridPrivateApiContext)();
|
|
60
|
+
const rootProps = (0, _useGridRootProps.useGridRootProps)();
|
|
67
61
|
const hasVirtualization = (0, _utils2.useGridSelector)(apiRef, _virtualization.gridVirtualizationColumnEnabledSelector);
|
|
68
62
|
const innerRef = React.useRef(null);
|
|
69
63
|
const handleInnerRef = (0, _utils.unstable_useForkRef)(innerRefProp, innerRef);
|
|
70
64
|
const dimensions = (0, _utils2.useGridSelector)(apiRef, _dimensions.gridDimensionsSelector);
|
|
65
|
+
const offsets = (0, _utils2.useGridSelector)(apiRef, _virtualization.gridOffsetsSelector);
|
|
71
66
|
const renderContext = (0, _utils2.useGridSelector)(apiRef, _virtualization.gridRenderContextColumnsSelector);
|
|
72
67
|
const visiblePinnedColumns = (0, _utils2.useGridSelector)(apiRef, _columns.gridVisiblePinnedColumnDefinitionsSelector);
|
|
73
68
|
React.useEffect(() => {
|
|
@@ -98,11 +93,18 @@ const useGridColumnHeaders = props => {
|
|
|
98
93
|
lastColumnToRender
|
|
99
94
|
};
|
|
100
95
|
};
|
|
101
|
-
const
|
|
96
|
+
const getFillers = (params, children, leftOverflow, borderTop = false) => {
|
|
102
97
|
const isPinnedRight = params?.position === _columns.GridPinnedColumnPosition.RIGHT;
|
|
103
|
-
const
|
|
98
|
+
const isNotPinned = params?.position === undefined;
|
|
99
|
+
const hasScrollbarFiller = visiblePinnedColumns.right.length > 0 && isPinnedRight || visiblePinnedColumns.right.length === 0 && isNotPinned;
|
|
100
|
+
const leftOffsetWidth = offsets.left - leftOverflow;
|
|
104
101
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(React.Fragment, {
|
|
105
|
-
children: [
|
|
102
|
+
children: [isNotPinned && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
103
|
+
role: "presentation",
|
|
104
|
+
style: {
|
|
105
|
+
width: leftOffsetWidth
|
|
106
|
+
}
|
|
107
|
+
}), children, isNotPinned && /*#__PURE__*/(0, _jsxRuntime.jsx)(SpaceFiller, {
|
|
106
108
|
className: _gridClasses.gridClasses.columnHeader
|
|
107
109
|
}), hasScrollbarFiller && /*#__PURE__*/(0, _jsxRuntime.jsx)(_GridScrollbarFillerCell.GridScrollbarFillerCell, {
|
|
108
110
|
header: true,
|
|
@@ -136,13 +138,11 @@ const useGridColumnHeaders = props => {
|
|
|
136
138
|
tabIndex: tabIndex
|
|
137
139
|
}, other), colDef.field));
|
|
138
140
|
}
|
|
139
|
-
return /*#__PURE__*/(0, _jsxRuntime.
|
|
141
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(GridColumnHeaderRow, {
|
|
140
142
|
role: "row",
|
|
141
143
|
"aria-rowindex": headerGroupingMaxDepth + 1,
|
|
142
|
-
ownerState:
|
|
143
|
-
|
|
144
|
-
},
|
|
145
|
-
children: [columns, getFiller(params)]
|
|
144
|
+
ownerState: rootProps,
|
|
145
|
+
children: getFillers(params, columns, 0)
|
|
146
146
|
});
|
|
147
147
|
};
|
|
148
148
|
const getColumnGroupHeaders = params => {
|
|
@@ -208,41 +208,39 @@ const useGridColumnHeaders = props => {
|
|
|
208
208
|
});
|
|
209
209
|
}
|
|
210
210
|
headerToRender.forEach((depthInfo, depthIndex) => {
|
|
211
|
-
|
|
211
|
+
const children = depthInfo.elements.map(({
|
|
212
|
+
groupId,
|
|
213
|
+
width,
|
|
214
|
+
fields,
|
|
215
|
+
colIndex,
|
|
216
|
+
hasFocus,
|
|
217
|
+
tabIndex
|
|
218
|
+
}, groupIndex) => {
|
|
219
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_GridColumnGroupHeader.GridColumnGroupHeader, {
|
|
220
|
+
groupId: groupId,
|
|
221
|
+
width: width,
|
|
222
|
+
fields: fields,
|
|
223
|
+
colIndex: colIndex,
|
|
224
|
+
depth: depthIndex,
|
|
225
|
+
isLastColumn: colIndex === visibleColumns.length - fields.length,
|
|
226
|
+
maxDepth: headerToRender.length,
|
|
227
|
+
height: dimensions.headerHeight,
|
|
228
|
+
hasFocus: hasFocus,
|
|
229
|
+
tabIndex: tabIndex
|
|
230
|
+
}, groupIndex);
|
|
231
|
+
});
|
|
232
|
+
columns.push( /*#__PURE__*/(0, _jsxRuntime.jsx)(GridColumnHeaderRow, {
|
|
212
233
|
role: "row",
|
|
213
234
|
"aria-rowindex": depthIndex + 1,
|
|
214
|
-
ownerState:
|
|
215
|
-
|
|
216
|
-
leftOverflow: depthInfo.leftOverflow
|
|
217
|
-
},
|
|
218
|
-
children: [depthInfo.elements.map(({
|
|
219
|
-
groupId,
|
|
220
|
-
width,
|
|
221
|
-
fields,
|
|
222
|
-
colIndex,
|
|
223
|
-
hasFocus,
|
|
224
|
-
tabIndex
|
|
225
|
-
}, groupIndex) => {
|
|
226
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_GridColumnGroupHeader.GridColumnGroupHeader, {
|
|
227
|
-
groupId: groupId,
|
|
228
|
-
width: width,
|
|
229
|
-
fields: fields,
|
|
230
|
-
colIndex: colIndex,
|
|
231
|
-
depth: depthIndex,
|
|
232
|
-
isLastColumn: colIndex === visibleColumns.length - fields.length,
|
|
233
|
-
maxDepth: headerToRender.length,
|
|
234
|
-
height: dimensions.headerHeight,
|
|
235
|
-
hasFocus: hasFocus,
|
|
236
|
-
tabIndex: tabIndex
|
|
237
|
-
}, groupIndex);
|
|
238
|
-
}), getFiller(params)]
|
|
235
|
+
ownerState: rootProps,
|
|
236
|
+
children: getFillers(params, children, depthInfo.leftOverflow)
|
|
239
237
|
}, depthIndex));
|
|
240
238
|
});
|
|
241
239
|
return columns;
|
|
242
240
|
};
|
|
243
241
|
return {
|
|
244
242
|
renderContext,
|
|
245
|
-
|
|
243
|
+
getFillers,
|
|
246
244
|
getColumnHeaders,
|
|
247
245
|
getColumnsToRender,
|
|
248
246
|
getColumnGroupHeaders,
|
|
@@ -108,12 +108,11 @@ const useGridCellEditing = (apiRef, props) => {
|
|
|
108
108
|
}
|
|
109
109
|
if ((0, _keyboardUtils.isPrintableKey)(event)) {
|
|
110
110
|
reason = _gridEditCellParams.GridCellEditStartReasons.printableKeyDown;
|
|
111
|
-
} else if ((
|
|
111
|
+
} else if ((0, _keyboardUtils.isPasteShortcut)(event)) {
|
|
112
112
|
reason = _gridEditCellParams.GridCellEditStartReasons.pasteKeyDown;
|
|
113
113
|
} else if (event.key === 'Enter') {
|
|
114
114
|
reason = _gridEditCellParams.GridCellEditStartReasons.enterKeyDown;
|
|
115
|
-
} else if (event.key === '
|
|
116
|
-
// Delete on Windows, Backspace on macOS
|
|
115
|
+
} else if (event.key === 'Backspace' || event.key === 'Delete') {
|
|
117
116
|
reason = _gridEditCellParams.GridCellEditStartReasons.deleteKeyDown;
|
|
118
117
|
}
|
|
119
118
|
if (reason) {
|
|
@@ -168,12 +168,11 @@ const useGridRowEditing = (apiRef, props) => {
|
|
|
168
168
|
}
|
|
169
169
|
if ((0, _keyboardUtils.isPrintableKey)(event)) {
|
|
170
170
|
reason = _gridRowParams.GridRowEditStartReasons.printableKeyDown;
|
|
171
|
-
} else if ((
|
|
171
|
+
} else if ((0, _keyboardUtils.isPasteShortcut)(event)) {
|
|
172
172
|
reason = _gridRowParams.GridRowEditStartReasons.printableKeyDown;
|
|
173
173
|
} else if (event.key === 'Enter') {
|
|
174
174
|
reason = _gridRowParams.GridRowEditStartReasons.enterKeyDown;
|
|
175
|
-
} else if (event.key === '
|
|
176
|
-
// Delete on Windows, Backspace on macOS
|
|
175
|
+
} else if (event.key === 'Backspace' || event.key === 'Delete') {
|
|
177
176
|
reason = _gridRowParams.GridRowEditStartReasons.deleteKeyDown;
|
|
178
177
|
}
|
|
179
178
|
if (reason) {
|
|
@@ -8,7 +8,6 @@ exports.useGridSorting = exports.sortingStateInitializer = void 0;
|
|
|
8
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
9
|
var React = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _utils = require("@mui/utils");
|
|
11
|
-
var _keyboardUtils = require("../../../utils/keyboardUtils");
|
|
12
11
|
var _useGridApiEventHandler = require("../../utils/useGridApiEventHandler");
|
|
13
12
|
var _useGridApiMethod = require("../../utils/useGridApiMethod");
|
|
14
13
|
var _useGridLogger = require("../../utils/useGridLogger");
|
|
@@ -218,7 +217,7 @@ const useGridSorting = (apiRef, props) => {
|
|
|
218
217
|
return;
|
|
219
218
|
}
|
|
220
219
|
// Ctrl + Enter opens the column menu
|
|
221
|
-
if (
|
|
220
|
+
if (event.key === 'Enter' && !event.ctrlKey && !event.metaKey) {
|
|
222
221
|
sortColumn(field, undefined, event.shiftKey);
|
|
223
222
|
}
|
|
224
223
|
}, [sortColumn, props.disableColumnSorting]);
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.gridVirtualizationSelector = exports.gridVirtualizationEnabledSelector = exports.gridVirtualizationColumnEnabledSelector = exports.gridRenderContextSelector = exports.gridRenderContextColumnsSelector = void 0;
|
|
6
|
+
exports.gridVirtualizationSelector = exports.gridVirtualizationEnabledSelector = exports.gridVirtualizationColumnEnabledSelector = exports.gridRenderContextSelector = exports.gridRenderContextColumnsSelector = exports.gridOffsetsSelector = void 0;
|
|
7
7
|
var _createSelector = require("../../../utils/createSelector");
|
|
8
8
|
/**
|
|
9
9
|
* Get the columns state
|
|
@@ -31,6 +31,13 @@ const gridVirtualizationColumnEnabledSelector = exports.gridVirtualizationColumn
|
|
|
31
31
|
*/
|
|
32
32
|
const gridRenderContextSelector = exports.gridRenderContextSelector = (0, _createSelector.createSelector)(gridVirtualizationSelector, state => state.renderContext);
|
|
33
33
|
|
|
34
|
+
/**
|
|
35
|
+
* Get the offsets
|
|
36
|
+
* @category Virtualization
|
|
37
|
+
* @ignore - do not document.
|
|
38
|
+
*/
|
|
39
|
+
const gridOffsetsSelector = exports.gridOffsetsSelector = (0, _createSelector.createSelector)(gridVirtualizationSelector, state => state.offsets);
|
|
40
|
+
|
|
34
41
|
/**
|
|
35
42
|
* Get the render context, with only columns filled in.
|
|
36
43
|
* This is cached, so it can be used to only re-render when the column interval changes.
|
|
@@ -48,7 +48,6 @@ const useGridVirtualScroller = () => {
|
|
|
48
48
|
const hasBottomPinnedRows = pinnedRows.bottom.length > 0;
|
|
49
49
|
const [panels, setPanels] = React.useState(EMPTY_DETAIL_PANELS);
|
|
50
50
|
const theme = (0, _styles.useTheme)();
|
|
51
|
-
const columnPositions = (0, _useGridSelector.useGridSelector)(apiRef, _gridColumnsSelector.gridColumnPositionsSelector);
|
|
52
51
|
const cellFocus = (0, _useGridSelector.useGridSelector)(apiRef, _gridFocusStateSelector.gridFocusCellSelector);
|
|
53
52
|
const cellTabIndex = (0, _useGridSelector.useGridSelector)(apiRef, _gridFocusStateSelector.gridTabIndexCellSelector);
|
|
54
53
|
const rowsMeta = (0, _useGridSelector.useGridSelector)(apiRef, _gridRowsMetaSelector.gridRowsMetaSelector);
|
|
@@ -64,6 +63,7 @@ const useGridVirtualScroller = () => {
|
|
|
64
63
|
(0, _useResizeObserver.useResizeObserver)(mainRef, () => apiRef.current.resize());
|
|
65
64
|
const previousContext = React.useRef(_useGridVirtualization.EMPTY_RENDER_CONTEXT);
|
|
66
65
|
const previousRowContext = React.useRef(_useGridVirtualization.EMPTY_RENDER_CONTEXT);
|
|
66
|
+
const offsets = (0, _useGridSelector.useGridSelector)(apiRef, _gridVirtualizationSelectors.gridOffsetsSelector);
|
|
67
67
|
const renderContext = (0, _useGridSelector.useGridSelector)(apiRef, _gridVirtualizationSelectors.gridRenderContextSelector);
|
|
68
68
|
const scrollPosition = React.useRef({
|
|
69
69
|
top: 0,
|
|
@@ -83,22 +83,17 @@ const useGridVirtualScroller = () => {
|
|
|
83
83
|
}
|
|
84
84
|
return -1;
|
|
85
85
|
}, [cellFocus, visibleColumns]);
|
|
86
|
-
React.useEffect(() => {
|
|
87
|
-
const direction = theme.direction === 'ltr' ? 1 : -1;
|
|
88
|
-
const top = (0, _gridRowsMetaSelector.gridRowsMetaSelector)(apiRef.current.state).positions[renderContext.firstRowIndex];
|
|
89
|
-
const left = direction * columnPositions[renderContext.firstColumnIndex] - columnPositions[pinnedColumns.left.length];
|
|
90
|
-
gridRootRef.current?.style.setProperty('--DataGrid-offsetTop', `${top}px`);
|
|
91
|
-
gridRootRef.current?.style.setProperty('--DataGrid-offsetLeft', `${left}px`);
|
|
92
|
-
}, [apiRef, gridRootRef, theme.direction, columnPositions, pinnedColumns.left.length, renderContext]);
|
|
93
86
|
const updateRenderContext = React.useCallback((nextRenderContext, rawRenderContext) => {
|
|
94
87
|
if (areRenderContextsEqual(nextRenderContext, apiRef.current.state.virtualization.renderContext)) {
|
|
95
88
|
return;
|
|
96
89
|
}
|
|
97
90
|
const didRowsIntervalChange = nextRenderContext.firstRowIndex !== previousRowContext.current.firstRowIndex || nextRenderContext.lastRowIndex !== previousRowContext.current.lastRowIndex;
|
|
91
|
+
const nextOffsets = computeOffsets(apiRef, nextRenderContext, theme.direction, pinnedColumns.left.length);
|
|
98
92
|
apiRef.current.setState(state => {
|
|
99
93
|
return (0, _extends2.default)({}, state, {
|
|
100
94
|
virtualization: (0, _extends2.default)({}, state.virtualization, {
|
|
101
|
-
renderContext: nextRenderContext
|
|
95
|
+
renderContext: nextRenderContext,
|
|
96
|
+
offsets: nextOffsets
|
|
102
97
|
})
|
|
103
98
|
});
|
|
104
99
|
});
|
|
@@ -112,7 +107,7 @@ const useGridVirtualScroller = () => {
|
|
|
112
107
|
}
|
|
113
108
|
previousContext.current = rawRenderContext;
|
|
114
109
|
prevTotalWidth.current = dimensions.columnsTotalWidth;
|
|
115
|
-
}, [apiRef, dimensions.isReady, dimensions.columnsTotalWidth]);
|
|
110
|
+
}, [apiRef, pinnedColumns.left.length, theme.direction, dimensions.isReady, dimensions.columnsTotalWidth]);
|
|
116
111
|
const triggerUpdateRenderContext = () => {
|
|
117
112
|
const inputs = inputsSelector(apiRef, rootProps, enabled, enabledForColumns);
|
|
118
113
|
const [nextRenderContext, rawRenderContext] = computeRenderContext(inputs, scrollPosition);
|
|
@@ -308,6 +303,7 @@ const useGridVirtualScroller = () => {
|
|
|
308
303
|
firstColumnToRender: firstColumnToRender,
|
|
309
304
|
lastColumnToRender: lastColumnToRender,
|
|
310
305
|
selected: isSelected,
|
|
306
|
+
offsets: offsets,
|
|
311
307
|
dimensions: dimensions,
|
|
312
308
|
isFirstVisible: isFirstVisible,
|
|
313
309
|
isLastVisible: isLastVisible,
|
|
@@ -355,9 +351,6 @@ const useGridVirtualScroller = () => {
|
|
|
355
351
|
// TODO a scroll reset should not be necessary
|
|
356
352
|
scrollerRef.current.scrollLeft = 0;
|
|
357
353
|
scrollerRef.current.scrollTop = 0;
|
|
358
|
-
} else {
|
|
359
|
-
gridRootRef.current?.style.setProperty('--DataGrid-offsetTop', '0px');
|
|
360
|
-
gridRootRef.current?.style.setProperty('--DataGrid-offsetLeft', '0px');
|
|
361
354
|
}
|
|
362
355
|
}, [enabled, gridRootRef, scrollerRef]);
|
|
363
356
|
(0, _useRunOnce.useRunOnce)(outerSize.width !== 0, () => {
|
|
@@ -606,4 +599,15 @@ function areRenderContextsEqual(context1, context2) {
|
|
|
606
599
|
return true;
|
|
607
600
|
}
|
|
608
601
|
return context1.firstRowIndex === context2.firstRowIndex && context1.lastRowIndex === context2.lastRowIndex && context1.firstColumnIndex === context2.firstColumnIndex && context1.lastColumnIndex === context2.lastColumnIndex;
|
|
602
|
+
}
|
|
603
|
+
function computeOffsets(apiRef, renderContext, direction, pinnedLeftLength) {
|
|
604
|
+
const factor = direction === 'ltr' ? 1 : -1;
|
|
605
|
+
const rowPositions = (0, _gridRowsMetaSelector.gridRowsMetaSelector)(apiRef.current.state).positions;
|
|
606
|
+
const columnPositions = (0, _gridColumnsSelector.gridColumnPositionsSelector)(apiRef);
|
|
607
|
+
const top = rowPositions[renderContext.firstRowIndex] ?? 0;
|
|
608
|
+
const left = factor * (columnPositions[renderContext.firstColumnIndex] ?? 0) - (columnPositions[pinnedLeftLength] ?? 0);
|
|
609
|
+
return {
|
|
610
|
+
top,
|
|
611
|
+
left
|
|
612
|
+
};
|
|
609
613
|
}
|
|
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.EMPTY_RENDER_CONTEXT = void 0;
|
|
7
|
+
exports.EMPTY_RENDER_CONTEXT = exports.EMPTY_OFFSETS = void 0;
|
|
8
8
|
exports.useGridVirtualization = useGridVirtualization;
|
|
9
9
|
exports.virtualizationStateInitializer = void 0;
|
|
10
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
@@ -12,6 +12,10 @@ var React = _interopRequireWildcard(require("react"));
|
|
|
12
12
|
var _useGridApiMethod = require("../../utils/useGridApiMethod");
|
|
13
13
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
14
14
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
15
|
+
const EMPTY_OFFSETS = exports.EMPTY_OFFSETS = {
|
|
16
|
+
top: 0,
|
|
17
|
+
left: 0
|
|
18
|
+
};
|
|
15
19
|
const EMPTY_RENDER_CONTEXT = exports.EMPTY_RENDER_CONTEXT = {
|
|
16
20
|
firstRowIndex: 0,
|
|
17
21
|
lastRowIndex: 0,
|
|
@@ -22,7 +26,8 @@ const virtualizationStateInitializer = (state, props) => {
|
|
|
22
26
|
const virtualization = {
|
|
23
27
|
enabled: !props.disableVirtualization,
|
|
24
28
|
enabledForColumns: true,
|
|
25
|
-
renderContext: EMPTY_RENDER_CONTEXT
|
|
29
|
+
renderContext: EMPTY_RENDER_CONTEXT,
|
|
30
|
+
offsets: EMPTY_OFFSETS
|
|
26
31
|
};
|
|
27
32
|
return (0, _extends2.default)({}, state, {
|
|
28
33
|
virtualization
|
package/node/index.js
CHANGED
package/node/internals/index.js
CHANGED
|
@@ -85,6 +85,7 @@ var _exportNames = {
|
|
|
85
85
|
getActiveElement: true,
|
|
86
86
|
isEventTargetInPortal: true,
|
|
87
87
|
isNavigationKey: true,
|
|
88
|
+
isPasteShortcut: true,
|
|
88
89
|
buildWarning: true,
|
|
89
90
|
exportAs: true,
|
|
90
91
|
useGridPrivateApiContext: true,
|
|
@@ -330,6 +331,12 @@ Object.defineProperty(exports, "isNavigationKey", {
|
|
|
330
331
|
return _keyboardUtils.isNavigationKey;
|
|
331
332
|
}
|
|
332
333
|
});
|
|
334
|
+
Object.defineProperty(exports, "isPasteShortcut", {
|
|
335
|
+
enumerable: true,
|
|
336
|
+
get: function () {
|
|
337
|
+
return _keyboardUtils.isPasteShortcut;
|
|
338
|
+
}
|
|
339
|
+
});
|
|
333
340
|
Object.defineProperty(exports, "isSingleSelectColDef", {
|
|
334
341
|
enumerable: true,
|
|
335
342
|
get: function () {
|
|
@@ -3,24 +3,20 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.isNavigationKey = exports.isMultipleKey = exports.isKeyboardEvent = exports.isHideMenuKey = exports.isEscapeKey = exports.isCellExitEditModeKeys = exports.isCellEnterEditModeKeys = exports.isCellEditCommitKeys = exports.GRID_MULTIPLE_SELECTION_KEYS = exports.GRID_CELL_EXIT_EDIT_MODE_KEYS = exports.GRID_CELL_EDIT_COMMIT_KEYS = void 0;
|
|
7
|
+
exports.isPasteShortcut = isPasteShortcut;
|
|
7
8
|
exports.isPrintableKey = isPrintableKey;
|
|
8
|
-
exports.isTabKey =
|
|
9
|
-
|
|
9
|
+
exports.isTabKey = void 0;
|
|
10
|
+
/**
|
|
11
|
+
* @deprecated there is no meaninfuly logic abstracted, use event.key directly.
|
|
12
|
+
*/
|
|
13
|
+
const isEscapeKey = key => key === 'Escape';
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @deprecated there is no meaninfuly logic abstracted, use event.key directly.
|
|
17
|
+
*/
|
|
10
18
|
exports.isEscapeKey = isEscapeKey;
|
|
11
|
-
const
|
|
12
|
-
exports.isEnterKey = isEnterKey;
|
|
13
|
-
const isTabKey = key => key === 'Tab'; // TODO remove
|
|
14
|
-
exports.isTabKey = isTabKey;
|
|
15
|
-
const isSpaceKey = key => key === ' ';
|
|
16
|
-
exports.isSpaceKey = isSpaceKey;
|
|
17
|
-
const isArrowKeys = key => key.indexOf('Arrow') === 0;
|
|
18
|
-
exports.isArrowKeys = isArrowKeys;
|
|
19
|
-
const isHomeOrEndKeys = key => key === 'Home' || key === 'End';
|
|
20
|
-
exports.isHomeOrEndKeys = isHomeOrEndKeys;
|
|
21
|
-
const isPageKeys = key => key.indexOf('Page') === 0;
|
|
22
|
-
exports.isPageKeys = isPageKeys;
|
|
23
|
-
const isDeleteKeys = key => key === 'Delete' || key === 'Backspace';
|
|
19
|
+
const isTabKey = key => key === 'Tab';
|
|
24
20
|
|
|
25
21
|
// Non printable keys have a name, e.g. "ArrowRight", see the whole list:
|
|
26
22
|
// https://developer.mozilla.org/en-US/docs/Web/API/UI_Events/Keyboard_event_key_values
|
|
@@ -29,7 +25,7 @@ const isDeleteKeys = key => key === 'Delete' || key === 'Backspace';
|
|
|
29
25
|
// However, we also need to ignore shortcuts, for example: select all:
|
|
30
26
|
// - Windows: Ctrl+A, event.ctrlKey is true
|
|
31
27
|
// - macOS: ⌘ Command+A, event.metaKey is true
|
|
32
|
-
exports.
|
|
28
|
+
exports.isTabKey = isTabKey;
|
|
33
29
|
function isPrintableKey(event) {
|
|
34
30
|
return event.key.length === 1 && !event.ctrlKey && !event.metaKey;
|
|
35
31
|
}
|
|
@@ -38,15 +34,24 @@ const GRID_CELL_EXIT_EDIT_MODE_KEYS = exports.GRID_CELL_EXIT_EDIT_MODE_KEYS = ['
|
|
|
38
34
|
const GRID_CELL_EDIT_COMMIT_KEYS = exports.GRID_CELL_EDIT_COMMIT_KEYS = ['Enter', 'Tab'];
|
|
39
35
|
const isMultipleKey = key => GRID_MULTIPLE_SELECTION_KEYS.indexOf(key) > -1;
|
|
40
36
|
exports.isMultipleKey = isMultipleKey;
|
|
41
|
-
const isCellEnterEditModeKeys = event =>
|
|
37
|
+
const isCellEnterEditModeKeys = event => isPrintableKey(event) || event.key === 'Enter' || event.key === 'Backspace' || event.key === 'Delete';
|
|
42
38
|
exports.isCellEnterEditModeKeys = isCellEnterEditModeKeys;
|
|
43
39
|
const isCellExitEditModeKeys = key => GRID_CELL_EXIT_EDIT_MODE_KEYS.indexOf(key) > -1;
|
|
44
40
|
exports.isCellExitEditModeKeys = isCellExitEditModeKeys;
|
|
45
41
|
const isCellEditCommitKeys = key => GRID_CELL_EDIT_COMMIT_KEYS.indexOf(key) > -1;
|
|
46
42
|
exports.isCellEditCommitKeys = isCellEditCommitKeys;
|
|
47
|
-
const isNavigationKey = key =>
|
|
43
|
+
const isNavigationKey = key => key.indexOf('Arrow') === 0 || key.indexOf('Page') === 0 || key === ' ' || key === 'Home' || key === 'End';
|
|
48
44
|
exports.isNavigationKey = isNavigationKey;
|
|
49
45
|
const isKeyboardEvent = event => !!event.key;
|
|
50
46
|
exports.isKeyboardEvent = isKeyboardEvent;
|
|
51
47
|
const isHideMenuKey = key => isTabKey(key) || isEscapeKey(key);
|
|
52
|
-
|
|
48
|
+
|
|
49
|
+
// In theory, on macOS, ctrl + v doesn't trigger a paste, so the function should return false.
|
|
50
|
+
// However, maybe it's overkill to fix, so let's be lazy.
|
|
51
|
+
exports.isHideMenuKey = isHideMenuKey;
|
|
52
|
+
function isPasteShortcut(event) {
|
|
53
|
+
if ((event.ctrlKey || event.metaKey) && event.key.toLowerCase() === 'v' && !event.shiftKey && !event.altKey) {
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
return false;
|
|
57
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mui/x-data-grid",
|
|
3
|
-
"version": "7.0.0-beta.
|
|
3
|
+
"version": "7.0.0-beta.4",
|
|
4
4
|
"description": "The community edition of the data grid component (MUI X).",
|
|
5
5
|
"author": "MUI Team",
|
|
6
6
|
"main": "./node/index.js",
|
|
@@ -37,8 +37,8 @@
|
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
39
|
"@babel/runtime": "^7.23.9",
|
|
40
|
-
"@mui/system": "^5.15.
|
|
41
|
-
"@mui/utils": "^5.15.
|
|
40
|
+
"@mui/system": "^5.15.9",
|
|
41
|
+
"@mui/utils": "^5.15.9",
|
|
42
42
|
"clsx": "^2.1.0",
|
|
43
43
|
"prop-types": "^15.8.1",
|
|
44
44
|
"reselect": "^4.1.8"
|
package/utils/keyboardUtils.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* @deprecated there is no meaninfuly logic abstracted, use event.key directly.
|
|
4
|
+
*/
|
|
2
5
|
export declare const isEscapeKey: (key: string) => boolean;
|
|
3
|
-
|
|
6
|
+
/**
|
|
7
|
+
* @deprecated there is no meaninfuly logic abstracted, use event.key directly.
|
|
8
|
+
*/
|
|
4
9
|
export declare const isTabKey: (key: string) => boolean;
|
|
5
|
-
export declare const isSpaceKey: (key: string) => boolean;
|
|
6
|
-
export declare const isArrowKeys: (key: string) => boolean;
|
|
7
|
-
export declare const isHomeOrEndKeys: (key: string) => boolean;
|
|
8
|
-
export declare const isPageKeys: (key: string) => boolean;
|
|
9
|
-
export declare const isDeleteKeys: (key: string) => boolean;
|
|
10
10
|
export declare function isPrintableKey(event: React.KeyboardEvent<HTMLElement>): boolean;
|
|
11
11
|
export declare const GRID_MULTIPLE_SELECTION_KEYS: string[];
|
|
12
12
|
export declare const GRID_CELL_EXIT_EDIT_MODE_KEYS: string[];
|
|
@@ -18,3 +18,4 @@ export declare const isCellEditCommitKeys: (key: string) => boolean;
|
|
|
18
18
|
export declare const isNavigationKey: (key: string) => boolean;
|
|
19
19
|
export declare const isKeyboardEvent: (event: any) => event is React.KeyboardEvent<HTMLElement>;
|
|
20
20
|
export declare const isHideMenuKey: (key: React.KeyboardEvent['key']) => boolean;
|
|
21
|
+
export declare function isPasteShortcut(event: React.KeyboardEvent): boolean;
|