@mui/x-data-grid 5.10.0 → 5.11.0
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 +163 -10
- package/DataGrid/DataGrid.js +35 -1
- package/DataGrid/useDataGridProps.js +2 -1
- package/README.md +1 -1
- package/colDef/gridActionsColDef.js +2 -1
- package/colDef/gridBooleanColDef.js +2 -1
- package/colDef/gridCheckboxSelectionColDef.js +1 -0
- package/colDef/gridDateColDef.js +4 -2
- package/colDef/gridNumericColDef.js +3 -2
- package/colDef/gridNumericOperators.d.ts +2 -0
- package/colDef/gridNumericOperators.js +11 -0
- package/colDef/gridSingleSelectColDef.js +3 -2
- package/colDef/gridSingleSelectOperators.d.ts +3 -0
- package/colDef/gridSingleSelectOperators.js +52 -0
- package/colDef/gridStringColDef.js +3 -2
- package/colDef/gridStringOperators.d.ts +2 -0
- package/colDef/gridStringOperators.js +12 -0
- package/components/GridFooter.d.ts +4 -2
- package/components/GridFooter.js +11 -2
- package/components/GridRow.js +4 -5
- package/components/GridRowCount.d.ts +4 -1
- package/components/GridRowCount.js +1 -0
- package/components/GridScrollArea.js +3 -4
- package/components/GridSelectedRowCount.d.ts +4 -1
- package/components/GridSelectedRowCount.js +2 -1
- package/components/base/GridBody.js +1 -2
- package/components/base/GridOverlays.js +1 -2
- package/components/cell/GridActionsCell.js +13 -4
- package/components/cell/GridCell.js +8 -8
- package/components/cell/GridEditBooleanCell.d.ts +15 -3
- package/components/cell/GridEditBooleanCell.js +101 -6
- package/components/cell/GridEditDateCell.d.ts +16 -4
- package/components/cell/GridEditDateCell.js +99 -5
- package/components/cell/GridEditInputCell.d.ts +11 -5
- package/components/cell/GridEditInputCell.js +29 -5
- package/components/cell/GridEditSingleSelectCell.d.ts +12 -4
- package/components/cell/GridEditSingleSelectCell.js +28 -5
- package/components/cell/index.d.ts +2 -0
- package/components/cell/index.js +2 -0
- package/components/columnHeaders/GridColumnHeaderItem.js +15 -16
- package/components/columnHeaders/GridColumnHeaders.d.ts +2 -0
- package/components/columnHeaders/GridColumnHeadersInner.d.ts +2 -0
- package/components/columnSelection/GridCellCheckboxRenderer.js +2 -3
- package/components/columnSelection/GridHeaderCheckbox.js +4 -5
- package/components/containers/GridFooterContainer.d.ts +8 -2
- package/components/containers/GridFooterContainer.js +11 -2
- package/components/containers/GridToolbarContainer.d.ts +8 -2
- package/components/containers/GridToolbarContainer.js +12 -2
- package/components/panel/GridPanelContent.d.ts +8 -1
- package/components/panel/GridPanelContent.js +13 -2
- package/components/panel/GridPanelFooter.d.ts +8 -1
- package/components/panel/GridPanelFooter.js +13 -2
- package/components/panel/GridPanelHeader.d.ts +8 -1
- package/components/panel/GridPanelHeader.js +13 -2
- package/components/toolbar/GridToolbar.d.ts +12 -2
- package/components/toolbar/GridToolbar.js +30 -7
- package/components/toolbar/GridToolbarExport.d.ts +5 -4
- package/components/toolbar/GridToolbarExport.js +15 -20
- package/components/toolbar/GridToolbarQuickFilter.d.ts +20 -0
- package/components/toolbar/GridToolbarQuickFilter.js +88 -0
- package/components/toolbar/index.d.ts +3 -1
- package/components/toolbar/index.js +3 -2
- package/components/virtualization/GridVirtualScroller.d.ts +4 -1
- package/components/virtualization/GridVirtualScrollerContent.d.ts +4 -1
- package/components/virtualization/GridVirtualScrollerRenderZone.d.ts +4 -1
- package/constants/localeTextConstants.js +5 -0
- package/hooks/core/pipeProcessing/gridPipeProcessingApi.d.ts +7 -0
- package/hooks/core/strategyProcessing/useGridStrategyProcessing.d.ts +4 -4
- package/hooks/core/strategyProcessing/useGridStrategyProcessing.js +6 -7
- package/hooks/core/useGridApiInitialization.js +3 -3
- package/hooks/core/useGridErrorHandler.js +1 -2
- package/hooks/core/useGridStateInitialization.js +1 -2
- package/hooks/features/columnHeaders/useGridColumnHeaders.js +5 -6
- package/hooks/features/columnMenu/useGridColumnMenu.js +3 -4
- package/hooks/features/columns/useGridColumnSpanning.js +1 -2
- package/hooks/features/columns/useGridColumns.js +8 -9
- package/hooks/features/dimensions/useGridDimensions.d.ts +1 -1
- package/hooks/features/dimensions/useGridDimensions.js +8 -9
- package/hooks/features/editRows/useGridCellEditing.new.d.ts +1 -1
- package/hooks/features/editRows/useGridCellEditing.new.js +133 -32
- package/hooks/features/editRows/useGridCellEditing.old.js +20 -21
- package/hooks/features/editRows/useGridEditing.old.js +4 -5
- package/hooks/features/editRows/useGridRowEditing.new.d.ts +1 -1
- package/hooks/features/editRows/useGridRowEditing.new.js +122 -42
- package/hooks/features/editRows/useGridRowEditing.old.js +21 -22
- package/hooks/features/events/useGridEvents.js +17 -18
- package/hooks/features/export/serializers/csvSerializer.js +5 -5
- package/hooks/features/export/useGridCsvExport.js +23 -16
- package/hooks/features/export/useGridPrintExport.js +22 -0
- package/hooks/features/export/utils.d.ts +3 -1
- package/hooks/features/export/utils.js +13 -0
- package/hooks/features/filter/gridFilterState.d.ts +1 -2
- package/hooks/features/filter/gridFilterState.js +3 -1
- package/hooks/features/filter/gridFilterUtils.d.ts +8 -0
- package/hooks/features/filter/gridFilterUtils.js +84 -2
- package/hooks/features/filter/useGridFilter.js +20 -8
- package/hooks/features/focus/useGridFocus.d.ts +1 -1
- package/hooks/features/focus/useGridFocus.js +29 -33
- package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +4 -5
- package/hooks/features/pagination/useGridPage.js +3 -4
- package/hooks/features/pagination/useGridPageSize.js +2 -3
- package/hooks/features/preferencesPanel/useGridPreferencesPanel.js +4 -6
- package/hooks/features/rows/gridRowsSelector.d.ts +1 -0
- package/hooks/features/rows/gridRowsSelector.js +1 -0
- package/hooks/features/rows/gridRowsState.d.ts +3 -7
- package/hooks/features/rows/gridRowsUtils.d.ts +2 -1
- package/hooks/features/rows/gridRowsUtils.js +25 -1
- package/hooks/features/rows/useGridRows.js +100 -60
- package/hooks/features/rows/useGridRowsPreProcessors.js +2 -0
- package/hooks/features/scroll/useGridScroll.js +6 -1
- package/hooks/features/selection/useGridSelection.d.ts +1 -1
- package/hooks/features/selection/useGridSelection.js +13 -10
- package/hooks/features/sorting/useGridSorting.js +8 -9
- package/hooks/features/virtualization/useGridVirtualScroller.js +6 -7
- package/hooks/utils/useGridApiEventHandler.d.ts +4 -1
- package/hooks/utils/useGridApiEventHandler.js +22 -9
- package/hooks/utils/useGridNativeEventListener.js +1 -2
- package/hooks/utils/useGridSelector.js +1 -1
- package/index.d.ts +2 -0
- package/index.js +1 -1
- package/internals/index.d.ts +4 -1
- package/internals/index.js +5 -2
- package/legacy/DataGrid/DataGrid.js +35 -1
- package/legacy/DataGrid/useDataGridProps.js +2 -1
- package/legacy/colDef/gridActionsColDef.js +2 -1
- package/legacy/colDef/gridBooleanColDef.js +2 -1
- package/legacy/colDef/gridCheckboxSelectionColDef.js +1 -0
- package/legacy/colDef/gridDateColDef.js +4 -2
- package/legacy/colDef/gridNumericColDef.js +3 -2
- package/legacy/colDef/gridNumericOperators.js +28 -18
- package/legacy/colDef/gridSingleSelectColDef.js +3 -2
- package/legacy/colDef/gridSingleSelectOperators.js +55 -6
- package/legacy/colDef/gridStringColDef.js +3 -2
- package/legacy/colDef/gridStringOperators.js +25 -14
- package/legacy/components/GridFooter.js +11 -2
- package/legacy/components/GridRow.js +4 -5
- package/legacy/components/GridRowCount.js +1 -0
- package/legacy/components/GridScrollArea.js +3 -4
- package/legacy/components/GridSelectedRowCount.js +2 -1
- package/legacy/components/base/GridBody.js +1 -2
- package/legacy/components/base/GridOverlays.js +1 -2
- package/legacy/components/cell/GridActionsCell.js +13 -4
- package/legacy/components/cell/GridCell.js +8 -8
- package/legacy/components/cell/GridEditBooleanCell.js +132 -11
- package/legacy/components/cell/GridEditDateCell.js +148 -42
- package/legacy/components/cell/GridEditInputCell.js +61 -12
- package/legacy/components/cell/GridEditSingleSelectCell.js +41 -13
- package/legacy/components/cell/index.js +2 -0
- package/legacy/components/columnHeaders/GridColumnHeaderItem.js +15 -16
- package/legacy/components/columnSelection/GridCellCheckboxRenderer.js +2 -3
- package/legacy/components/columnSelection/GridHeaderCheckbox.js +4 -5
- package/legacy/components/containers/GridFooterContainer.js +11 -2
- package/legacy/components/containers/GridToolbarContainer.js +12 -2
- package/legacy/components/panel/GridPanelContent.js +13 -2
- package/legacy/components/panel/GridPanelFooter.js +13 -2
- package/legacy/components/panel/GridPanelHeader.js +13 -2
- package/legacy/components/toolbar/GridToolbar.js +31 -6
- package/legacy/components/toolbar/GridToolbarExport.js +18 -19
- package/legacy/components/toolbar/GridToolbarQuickFilter.js +103 -0
- package/legacy/components/toolbar/index.js +3 -2
- package/legacy/constants/localeTextConstants.js +5 -0
- package/legacy/hooks/core/strategyProcessing/useGridStrategyProcessing.js +6 -7
- package/legacy/hooks/core/useGridApiInitialization.js +3 -3
- package/legacy/hooks/core/useGridErrorHandler.js +1 -2
- package/legacy/hooks/core/useGridStateInitialization.js +1 -2
- package/legacy/hooks/features/columnHeaders/useGridColumnHeaders.js +5 -6
- package/legacy/hooks/features/columnMenu/useGridColumnMenu.js +3 -4
- package/legacy/hooks/features/columns/useGridColumnSpanning.js +1 -2
- package/legacy/hooks/features/columns/useGridColumns.js +8 -9
- package/legacy/hooks/features/dimensions/useGridDimensions.js +8 -9
- package/legacy/hooks/features/editRows/useGridCellEditing.new.js +213 -83
- package/legacy/hooks/features/editRows/useGridCellEditing.old.js +20 -21
- package/legacy/hooks/features/editRows/useGridEditing.old.js +4 -5
- package/legacy/hooks/features/editRows/useGridRowEditing.new.js +126 -42
- package/legacy/hooks/features/editRows/useGridRowEditing.old.js +20 -21
- package/legacy/hooks/features/events/useGridEvents.js +17 -18
- package/legacy/hooks/features/export/serializers/csvSerializer.js +5 -5
- package/legacy/hooks/features/export/useGridCsvExport.js +24 -17
- package/legacy/hooks/features/export/useGridPrintExport.js +22 -0
- package/legacy/hooks/features/export/utils.js +14 -0
- package/legacy/hooks/features/filter/gridFilterState.js +3 -1
- package/legacy/hooks/features/filter/gridFilterUtils.js +96 -2
- package/legacy/hooks/features/filter/useGridFilter.js +20 -8
- package/legacy/hooks/features/focus/useGridFocus.js +31 -35
- package/legacy/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +4 -5
- package/legacy/hooks/features/pagination/useGridPage.js +3 -4
- package/legacy/hooks/features/pagination/useGridPageSize.js +2 -3
- package/legacy/hooks/features/preferencesPanel/useGridPreferencesPanel.js +4 -6
- package/legacy/hooks/features/rows/gridRowsSelector.js +3 -0
- package/legacy/hooks/features/rows/gridRowsUtils.js +27 -1
- package/legacy/hooks/features/rows/useGridRows.js +104 -60
- package/legacy/hooks/features/rows/useGridRowsPreProcessors.js +2 -0
- package/legacy/hooks/features/scroll/useGridScroll.js +6 -1
- package/legacy/hooks/features/selection/useGridSelection.js +13 -10
- package/legacy/hooks/features/sorting/useGridSorting.js +8 -9
- package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +6 -7
- package/legacy/hooks/utils/useGridApiEventHandler.js +20 -9
- package/legacy/hooks/utils/useGridNativeEventListener.js +1 -2
- package/legacy/hooks/utils/useGridSelector.js +1 -1
- package/legacy/index.js +1 -1
- package/legacy/internals/index.js +5 -2
- package/legacy/locales/arSD.js +5 -0
- package/legacy/locales/bgBG.js +5 -0
- package/legacy/locales/csCZ.js +5 -0
- package/legacy/locales/daDK.js +5 -0
- package/legacy/locales/deDE.js +10 -5
- package/legacy/locales/elGR.js +5 -0
- package/legacy/locales/esES.js +5 -0
- package/legacy/locales/faIR.js +5 -0
- package/legacy/locales/fiFI.js +5 -0
- package/legacy/locales/frFR.js +5 -0
- package/legacy/locales/heIL.js +5 -0
- package/legacy/locales/huHU.js +5 -0
- package/legacy/locales/itIT.js +5 -0
- package/legacy/locales/jaJP.js +5 -0
- package/legacy/locales/koKR.js +5 -0
- package/legacy/locales/nlNL.js +5 -0
- package/legacy/locales/plPL.js +5 -0
- package/legacy/locales/ptBR.js +5 -0
- package/legacy/locales/ruRU.js +5 -0
- package/legacy/locales/skSK.js +5 -0
- package/legacy/locales/trTR.js +5 -0
- package/legacy/locales/ukUA.js +5 -0
- package/legacy/locales/viVN.js +5 -0
- package/legacy/locales/zhCN.js +5 -0
- package/legacy/models/events/gridEvents.js +2 -0
- package/legacy/models/index.js +4 -3
- package/legacy/utils/createSelector.js +18 -2
- package/legacy/utils/exportAs.js +1 -1
- package/locales/arSD.js +5 -0
- package/locales/bgBG.js +5 -0
- package/locales/csCZ.js +5 -0
- package/locales/daDK.js +5 -0
- package/locales/deDE.js +10 -5
- package/locales/elGR.js +5 -0
- package/locales/esES.js +5 -0
- package/locales/faIR.js +5 -0
- package/locales/fiFI.js +5 -0
- package/locales/frFR.js +5 -0
- package/locales/heIL.js +5 -0
- package/locales/huHU.js +5 -0
- package/locales/itIT.js +5 -0
- package/locales/jaJP.js +5 -0
- package/locales/koKR.js +5 -0
- package/locales/nlNL.js +5 -0
- package/locales/plPL.js +5 -0
- package/locales/ptBR.js +5 -0
- package/locales/ruRU.js +5 -0
- package/locales/skSK.js +5 -0
- package/locales/trTR.js +5 -0
- package/locales/ukUA.js +5 -0
- package/locales/viVN.js +5 -0
- package/locales/zhCN.js +5 -0
- package/models/api/gridCoreApi.d.ts +10 -0
- package/models/api/gridEditingApi.d.ts +23 -4
- package/models/api/gridFilterApi.d.ts +5 -0
- package/models/api/gridFocusApi.d.ts +1 -0
- package/models/api/gridLocaleTextApi.d.ts +4 -0
- package/models/api/gridRowApi.d.ts +28 -0
- package/models/api/index.d.ts +1 -1
- package/models/colDef/gridColDef.d.ts +13 -0
- package/models/events/gridEventLookup.d.ts +273 -3
- package/models/events/gridEvents.d.ts +2 -277
- package/models/events/gridEvents.js +2 -0
- package/models/gridExport.d.ts +29 -2
- package/models/gridFilterModel.d.ts +11 -0
- package/models/gridFilterOperator.d.ts +1 -1
- package/models/gridStateCommunity.d.ts +0 -2
- package/models/index.d.ts +1 -1
- package/models/index.js +4 -3
- package/models/props/DataGridProps.d.ts +56 -28
- package/modern/DataGrid/DataGrid.js +35 -1
- package/modern/DataGrid/useDataGridProps.js +2 -1
- package/modern/colDef/gridActionsColDef.js +2 -1
- package/modern/colDef/gridBooleanColDef.js +2 -1
- package/modern/colDef/gridCheckboxSelectionColDef.js +1 -0
- package/modern/colDef/gridDateColDef.js +4 -2
- package/modern/colDef/gridNumericColDef.js +3 -2
- package/modern/colDef/gridNumericOperators.js +11 -0
- package/modern/colDef/gridSingleSelectColDef.js +3 -2
- package/modern/colDef/gridSingleSelectOperators.js +52 -0
- package/modern/colDef/gridStringColDef.js +3 -2
- package/modern/colDef/gridStringOperators.js +12 -0
- package/modern/components/GridFooter.js +11 -2
- package/modern/components/GridRow.js +4 -5
- package/modern/components/GridRowCount.js +1 -0
- package/modern/components/GridScrollArea.js +3 -4
- package/modern/components/GridSelectedRowCount.js +2 -1
- package/modern/components/base/GridBody.js +1 -2
- package/modern/components/base/GridOverlays.js +1 -2
- package/modern/components/cell/GridActionsCell.js +14 -3
- package/modern/components/cell/GridCell.js +8 -8
- package/modern/components/cell/GridEditBooleanCell.js +101 -6
- package/modern/components/cell/GridEditDateCell.js +99 -5
- package/modern/components/cell/GridEditInputCell.js +29 -5
- package/modern/components/cell/GridEditSingleSelectCell.js +28 -5
- package/modern/components/cell/index.js +2 -0
- package/modern/components/columnHeaders/GridColumnHeaderItem.js +15 -16
- package/modern/components/columnSelection/GridCellCheckboxRenderer.js +2 -3
- package/modern/components/columnSelection/GridHeaderCheckbox.js +4 -5
- package/modern/components/containers/GridFooterContainer.js +11 -2
- package/modern/components/containers/GridToolbarContainer.js +12 -2
- package/modern/components/panel/GridPanelContent.js +13 -2
- package/modern/components/panel/GridPanelFooter.js +13 -2
- package/modern/components/panel/GridPanelHeader.js +13 -2
- package/modern/components/toolbar/GridToolbar.js +30 -7
- package/modern/components/toolbar/GridToolbarExport.js +15 -20
- package/modern/components/toolbar/GridToolbarQuickFilter.js +86 -0
- package/modern/components/toolbar/index.js +3 -2
- package/modern/constants/localeTextConstants.js +5 -0
- package/modern/hooks/core/strategyProcessing/useGridStrategyProcessing.js +6 -7
- package/modern/hooks/core/useGridApiInitialization.js +3 -3
- package/modern/hooks/core/useGridErrorHandler.js +1 -2
- package/modern/hooks/core/useGridStateInitialization.js +1 -2
- package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +5 -6
- package/modern/hooks/features/columnMenu/useGridColumnMenu.js +3 -4
- package/modern/hooks/features/columns/useGridColumnSpanning.js +1 -2
- package/modern/hooks/features/columns/useGridColumns.js +8 -9
- package/modern/hooks/features/dimensions/useGridDimensions.js +8 -9
- package/modern/hooks/features/editRows/useGridCellEditing.new.js +131 -32
- package/modern/hooks/features/editRows/useGridCellEditing.old.js +20 -21
- package/modern/hooks/features/editRows/useGridEditing.old.js +4 -5
- package/modern/hooks/features/editRows/useGridRowEditing.new.js +120 -42
- package/modern/hooks/features/editRows/useGridRowEditing.old.js +21 -22
- package/modern/hooks/features/events/useGridEvents.js +17 -18
- package/modern/hooks/features/export/serializers/csvSerializer.js +5 -5
- package/modern/hooks/features/export/useGridCsvExport.js +21 -16
- package/modern/hooks/features/export/useGridPrintExport.js +20 -0
- package/modern/hooks/features/export/utils.js +13 -0
- package/modern/hooks/features/filter/gridFilterState.js +3 -1
- package/modern/hooks/features/filter/gridFilterUtils.js +80 -2
- package/modern/hooks/features/filter/useGridFilter.js +20 -8
- package/modern/hooks/features/focus/useGridFocus.js +29 -33
- package/modern/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +4 -5
- package/modern/hooks/features/pagination/useGridPage.js +3 -4
- package/modern/hooks/features/pagination/useGridPageSize.js +2 -3
- package/modern/hooks/features/preferencesPanel/useGridPreferencesPanel.js +4 -6
- package/modern/hooks/features/rows/gridRowsSelector.js +1 -0
- package/modern/hooks/features/rows/gridRowsUtils.js +23 -1
- package/modern/hooks/features/rows/useGridRows.js +100 -60
- package/modern/hooks/features/rows/useGridRowsPreProcessors.js +2 -0
- package/modern/hooks/features/scroll/useGridScroll.js +6 -1
- package/modern/hooks/features/selection/useGridSelection.js +13 -10
- package/modern/hooks/features/sorting/useGridSorting.js +8 -9
- package/modern/hooks/features/virtualization/useGridVirtualScroller.js +6 -7
- package/modern/hooks/utils/useGridApiEventHandler.js +20 -9
- package/modern/hooks/utils/useGridNativeEventListener.js +1 -2
- package/modern/hooks/utils/useGridSelector.js +1 -1
- package/modern/index.js +1 -1
- package/modern/internals/index.js +5 -2
- package/modern/locales/arSD.js +5 -0
- package/modern/locales/bgBG.js +5 -0
- package/modern/locales/csCZ.js +5 -0
- package/modern/locales/daDK.js +5 -0
- package/modern/locales/deDE.js +10 -5
- package/modern/locales/elGR.js +5 -0
- package/modern/locales/esES.js +5 -0
- package/modern/locales/faIR.js +5 -0
- package/modern/locales/fiFI.js +5 -0
- package/modern/locales/frFR.js +5 -0
- package/modern/locales/heIL.js +5 -0
- package/modern/locales/huHU.js +5 -0
- package/modern/locales/itIT.js +5 -0
- package/modern/locales/jaJP.js +5 -0
- package/modern/locales/koKR.js +5 -0
- package/modern/locales/nlNL.js +5 -0
- package/modern/locales/plPL.js +5 -0
- package/modern/locales/ptBR.js +5 -0
- package/modern/locales/ruRU.js +5 -0
- package/modern/locales/skSK.js +5 -0
- package/modern/locales/trTR.js +5 -0
- package/modern/locales/ukUA.js +5 -0
- package/modern/locales/viVN.js +5 -0
- package/modern/locales/zhCN.js +5 -0
- package/modern/models/events/gridEvents.js +2 -0
- package/modern/models/index.js +4 -3
- package/modern/utils/createSelector.js +20 -2
- package/modern/utils/exportAs.js +1 -1
- package/node/DataGrid/DataGrid.js +35 -1
- package/node/DataGrid/useDataGridProps.js +2 -1
- package/node/colDef/gridActionsColDef.js +2 -1
- package/node/colDef/gridBooleanColDef.js +2 -1
- package/node/colDef/gridCheckboxSelectionColDef.js +1 -0
- package/node/colDef/gridDateColDef.js +4 -2
- package/node/colDef/gridNumericColDef.js +2 -1
- package/node/colDef/gridNumericOperators.js +15 -1
- package/node/colDef/gridSingleSelectColDef.js +2 -1
- package/node/colDef/gridSingleSelectOperators.js +56 -1
- package/node/colDef/gridStringColDef.js +2 -1
- package/node/colDef/gridStringOperators.js +16 -1
- package/node/components/GridFooter.js +10 -1
- package/node/components/GridRow.js +4 -6
- package/node/components/GridRowCount.js +1 -0
- package/node/components/GridScrollArea.js +3 -5
- package/node/components/GridSelectedRowCount.js +2 -1
- package/node/components/base/GridBody.js +1 -3
- package/node/components/base/GridOverlays.js +1 -3
- package/node/components/cell/GridActionsCell.js +13 -4
- package/node/components/cell/GridCell.js +7 -7
- package/node/components/cell/GridEditBooleanCell.js +100 -5
- package/node/components/cell/GridEditDateCell.js +98 -4
- package/node/components/cell/GridEditInputCell.js +29 -5
- package/node/components/cell/GridEditSingleSelectCell.js +28 -6
- package/node/components/cell/index.js +26 -0
- package/node/components/columnHeaders/GridColumnHeaderItem.js +15 -17
- package/node/components/columnSelection/GridCellCheckboxRenderer.js +2 -4
- package/node/components/columnSelection/GridHeaderCheckbox.js +4 -6
- package/node/components/containers/GridFooterContainer.js +10 -1
- package/node/components/containers/GridToolbarContainer.js +11 -1
- package/node/components/panel/GridPanelContent.js +11 -1
- package/node/components/panel/GridPanelFooter.js +11 -1
- package/node/components/panel/GridPanelHeader.js +11 -1
- package/node/components/toolbar/GridToolbar.js +32 -7
- package/node/components/toolbar/GridToolbarExport.js +14 -19
- package/node/components/toolbar/GridToolbarQuickFilter.js +111 -0
- package/node/components/toolbar/index.js +42 -11
- package/node/constants/localeTextConstants.js +5 -0
- package/node/hooks/core/strategyProcessing/useGridStrategyProcessing.js +6 -8
- package/node/hooks/core/useGridApiInitialization.js +3 -4
- package/node/hooks/core/useGridErrorHandler.js +1 -3
- package/node/hooks/core/useGridStateInitialization.js +1 -3
- package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +5 -7
- package/node/hooks/features/columnMenu/useGridColumnMenu.js +3 -5
- package/node/hooks/features/columns/useGridColumnSpanning.js +1 -3
- package/node/hooks/features/columns/useGridColumns.js +8 -10
- package/node/hooks/features/dimensions/useGridDimensions.js +8 -10
- package/node/hooks/features/editRows/useGridCellEditing.new.js +133 -32
- package/node/hooks/features/editRows/useGridCellEditing.old.js +20 -22
- package/node/hooks/features/editRows/useGridEditing.old.js +4 -6
- package/node/hooks/features/editRows/useGridRowEditing.new.js +122 -43
- package/node/hooks/features/editRows/useGridRowEditing.old.js +21 -23
- package/node/hooks/features/events/useGridEvents.js +17 -19
- package/node/hooks/features/export/serializers/csvSerializer.js +5 -5
- package/node/hooks/features/export/useGridCsvExport.js +26 -17
- package/node/hooks/features/export/useGridPrintExport.js +25 -0
- package/node/hooks/features/export/utils.js +19 -2
- package/node/hooks/features/filter/gridFilterState.js +3 -1
- package/node/hooks/features/filter/gridFilterUtils.js +92 -3
- package/node/hooks/features/filter/useGridFilter.js +21 -9
- package/node/hooks/features/focus/useGridFocus.js +29 -34
- package/node/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +4 -6
- package/node/hooks/features/pagination/useGridPage.js +3 -5
- package/node/hooks/features/pagination/useGridPageSize.js +2 -4
- package/node/hooks/features/preferencesPanel/useGridPreferencesPanel.js +4 -8
- package/node/hooks/features/rows/gridRowsSelector.js +3 -1
- package/node/hooks/features/rows/gridRowsUtils.js +29 -1
- package/node/hooks/features/rows/useGridRows.js +101 -60
- package/node/hooks/features/rows/useGridRowsPreProcessors.js +2 -0
- package/node/hooks/features/scroll/useGridScroll.js +6 -1
- package/node/hooks/features/selection/useGridSelection.js +13 -11
- package/node/hooks/features/sorting/useGridSorting.js +8 -10
- package/node/hooks/features/virtualization/useGridVirtualScroller.js +6 -8
- package/node/hooks/utils/useGridApiEventHandler.js +22 -10
- package/node/hooks/utils/useGridNativeEventListener.js +1 -3
- package/node/hooks/utils/useGridSelector.js +1 -1
- package/node/index.js +1 -1
- package/node/internals/index.js +39 -3
- package/node/locales/arSD.js +5 -0
- package/node/locales/bgBG.js +5 -0
- package/node/locales/csCZ.js +5 -0
- package/node/locales/daDK.js +5 -0
- package/node/locales/deDE.js +10 -5
- package/node/locales/elGR.js +5 -0
- package/node/locales/esES.js +5 -0
- package/node/locales/faIR.js +5 -0
- package/node/locales/fiFI.js +5 -0
- package/node/locales/frFR.js +5 -0
- package/node/locales/heIL.js +5 -0
- package/node/locales/huHU.js +5 -0
- package/node/locales/itIT.js +5 -0
- package/node/locales/jaJP.js +5 -0
- package/node/locales/koKR.js +5 -0
- package/node/locales/nlNL.js +5 -0
- package/node/locales/plPL.js +5 -0
- package/node/locales/ptBR.js +5 -0
- package/node/locales/ruRU.js +5 -0
- package/node/locales/skSK.js +5 -0
- package/node/locales/trTR.js +5 -0
- package/node/locales/ukUA.js +5 -0
- package/node/locales/viVN.js +5 -0
- package/node/locales/zhCN.js +5 -0
- package/node/models/events/gridEvents.js +2 -0
- package/node/models/index.js +0 -13
- package/node/utils/createSelector.js +25 -4
- package/node/utils/exportAs.js +1 -1
- package/package.json +1 -1
- package/utils/createSelector.d.ts +2 -1
- package/utils/createSelector.js +20 -2
- package/utils/exportAs.d.ts +2 -2
- package/utils/exportAs.js +1 -1
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
3
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
4
|
+
var _excluded = ["quickFilterParser", "debounceMs"];
|
|
5
|
+
import * as React from 'react';
|
|
6
|
+
import PropTypes from 'prop-types';
|
|
7
|
+
import TextField from '@mui/material/TextField';
|
|
8
|
+
import SearchIcon from '@mui/icons-material/Search';
|
|
9
|
+
import { styled } from '@mui/material/styles';
|
|
10
|
+
import { debounce } from '@mui/material/utils';
|
|
11
|
+
import { useGridApiContext } from '../../hooks/utils/useGridApiContext';
|
|
12
|
+
import { useGridRootProps } from '../../hooks/utils/useGridRootProps';
|
|
13
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
|
+
var GridToolbarQuickFilterRoot = styled(TextField, {
|
|
15
|
+
name: 'MuiDataGrid',
|
|
16
|
+
slot: 'ToolbarQuickFilter',
|
|
17
|
+
overridesResolver: function overridesResolver(props, styles) {
|
|
18
|
+
return styles.toolbarQuickFilter;
|
|
19
|
+
}
|
|
20
|
+
})(function (_ref) {
|
|
21
|
+
var theme = _ref.theme;
|
|
22
|
+
return {
|
|
23
|
+
width: 'auto',
|
|
24
|
+
paddingBottom: theme.spacing(0.5),
|
|
25
|
+
'& .MuiSvgIcon-root': {
|
|
26
|
+
marginRight: theme.spacing(0.5)
|
|
27
|
+
},
|
|
28
|
+
'& .MuiInput-underline:before': {
|
|
29
|
+
borderBottom: "1px solid ".concat(theme.palette.divider)
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
var defaultSearchValueParser = function defaultSearchValueParser(searchText) {
|
|
35
|
+
return searchText.split(' ').filter(function (word) {
|
|
36
|
+
return word !== '';
|
|
37
|
+
});
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
function GridToolbarQuickFilter(props) {
|
|
41
|
+
var _rootProps$components;
|
|
42
|
+
|
|
43
|
+
var _props$quickFilterPar = props.quickFilterParser,
|
|
44
|
+
quickFilterParser = _props$quickFilterPar === void 0 ? defaultSearchValueParser : _props$quickFilterPar,
|
|
45
|
+
_props$debounceMs = props.debounceMs,
|
|
46
|
+
debounceMs = _props$debounceMs === void 0 ? 500 : _props$debounceMs,
|
|
47
|
+
other = _objectWithoutProperties(props, _excluded);
|
|
48
|
+
|
|
49
|
+
var apiRef = useGridApiContext();
|
|
50
|
+
var rootProps = useGridRootProps();
|
|
51
|
+
|
|
52
|
+
var _React$useState = React.useState(''),
|
|
53
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
54
|
+
searchValue = _React$useState2[0],
|
|
55
|
+
setSearchValue = _React$useState2[1];
|
|
56
|
+
|
|
57
|
+
var updateSearchValue = React.useCallback(function (newSearchValue) {
|
|
58
|
+
apiRef.current.setQuickFilterValues(quickFilterParser(newSearchValue));
|
|
59
|
+
}, [apiRef, quickFilterParser]);
|
|
60
|
+
var debouncedUpdateSearchValue = React.useMemo(function () {
|
|
61
|
+
return debounce(updateSearchValue, debounceMs);
|
|
62
|
+
}, [updateSearchValue, debounceMs]);
|
|
63
|
+
var handleSearchValueChange = React.useCallback(function (event) {
|
|
64
|
+
var newSearchValue = event.target.value;
|
|
65
|
+
setSearchValue(newSearchValue);
|
|
66
|
+
debouncedUpdateSearchValue(newSearchValue);
|
|
67
|
+
}, [debouncedUpdateSearchValue]);
|
|
68
|
+
return /*#__PURE__*/_jsx(GridToolbarQuickFilterRoot, _extends({
|
|
69
|
+
as: rootProps.components.BaseTextField,
|
|
70
|
+
variant: "standard",
|
|
71
|
+
value: searchValue,
|
|
72
|
+
onChange: handleSearchValueChange,
|
|
73
|
+
placeholder: apiRef.current.getLocaleText('toolbarQuickFilterPlaceholder'),
|
|
74
|
+
"aria-label": apiRef.current.getLocaleText('toolbarQuickFilterLabel'),
|
|
75
|
+
type: "search",
|
|
76
|
+
InputProps: {
|
|
77
|
+
startAdornment: /*#__PURE__*/_jsx(SearchIcon, {
|
|
78
|
+
fontSize: "small"
|
|
79
|
+
})
|
|
80
|
+
}
|
|
81
|
+
}, other, (_rootProps$components = rootProps.componentsProps) == null ? void 0 : _rootProps$components.baseTextField));
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
process.env.NODE_ENV !== "production" ? GridToolbarQuickFilter.propTypes = {
|
|
85
|
+
// ----------------------------- Warning --------------------------------
|
|
86
|
+
// | These PropTypes are generated from the TypeScript type definitions |
|
|
87
|
+
// | To update them edit the TypeScript types and run "yarn proptypes" |
|
|
88
|
+
// ----------------------------------------------------------------------
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* The debounce time in milliseconds.
|
|
92
|
+
* @default 500
|
|
93
|
+
*/
|
|
94
|
+
debounceMs: PropTypes.number,
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Function responsible for parsing text input in an array of independent values for quick filtering.
|
|
98
|
+
* @param {string} input The value entered by the user
|
|
99
|
+
* @returns {any[]} The array of value on which quick filter is applied
|
|
100
|
+
*/
|
|
101
|
+
quickFilterParser: PropTypes.func
|
|
102
|
+
} : void 0;
|
|
103
|
+
export { GridToolbarQuickFilter };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './GridToolbar';
|
|
2
2
|
export * from './GridToolbarColumnsButton';
|
|
3
3
|
export * from './GridToolbarDensitySelector';
|
|
4
|
-
export
|
|
4
|
+
export { GridCsvExportMenuItem, GridPrintExportMenuItem, GridToolbarExport } from './GridToolbarExport';
|
|
5
5
|
export * from './GridToolbarFilterButton';
|
|
6
|
-
export * from './GridToolbarExportContainer';
|
|
6
|
+
export * from './GridToolbarExportContainer';
|
|
7
|
+
export * from './GridToolbarQuickFilter';
|
|
@@ -20,11 +20,16 @@ export var GRID_DEFAULT_LOCALE_TEXT = {
|
|
|
20
20
|
toolbarFiltersTooltipActive: function toolbarFiltersTooltipActive(count) {
|
|
21
21
|
return count !== 1 ? "".concat(count, " active filters") : "".concat(count, " active filter");
|
|
22
22
|
},
|
|
23
|
+
// Quick filter toolbar field
|
|
24
|
+
toolbarQuickFilterPlaceholder: 'Search...',
|
|
25
|
+
toolbarQuickFilterLabel: 'Search',
|
|
26
|
+
toolbarQuickFilterDeleteIconLabel: 'Clear',
|
|
23
27
|
// Export selector toolbar button text
|
|
24
28
|
toolbarExport: 'Export',
|
|
25
29
|
toolbarExportLabel: 'Export',
|
|
26
30
|
toolbarExportCSV: 'Download as CSV',
|
|
27
31
|
toolbarExportPrint: 'Print',
|
|
32
|
+
toolbarExportExcel: 'Download as Excel',
|
|
28
33
|
// Columns panel text
|
|
29
34
|
columnsPanelTextFieldLabel: 'Find column',
|
|
30
35
|
columnsPanelTextFieldPlaceholder: 'Column title',
|
|
@@ -3,7 +3,6 @@ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutPr
|
|
|
3
3
|
import _toPropertyKey from "@babel/runtime/helpers/esm/toPropertyKey";
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import { useGridApiMethod } from '../../utils/useGridApiMethod';
|
|
6
|
-
import { GridEvents } from '../../../models/events';
|
|
7
6
|
export var GRID_DEFAULT_STRATEGY = 'none';
|
|
8
7
|
export var GRID_STRATEGIES_PROCESSORS = {
|
|
9
8
|
rowTreeCreation: 'rowTree',
|
|
@@ -26,7 +25,7 @@ export var GRID_STRATEGIES_PROCESSORS = {
|
|
|
26
25
|
* The plugin containing the custom logic must use:
|
|
27
26
|
*
|
|
28
27
|
* - `useGridRegisterStrategyProcessor` to register their processor.
|
|
29
|
-
* When the processor of the active strategy changes, it will fire `
|
|
28
|
+
* When the processor of the active strategy changes, it will fire `"activeStrategyProcessorChange"` to re-apply the processor.
|
|
30
29
|
*
|
|
31
30
|
* - `apiRef.current.unstable_setStrategyAvailability` to tell if their strategy can be used.
|
|
32
31
|
*
|
|
@@ -36,12 +35,12 @@ export var GRID_STRATEGIES_PROCESSORS = {
|
|
|
36
35
|
*
|
|
37
36
|
* - `apiRef.current.unstable_applyStrategyProcessor` to run the processor of the active strategy for a given processor name.
|
|
38
37
|
*
|
|
39
|
-
* -
|
|
38
|
+
* - the "strategyAvailabilityChange" event to update something when the active strategy changes.
|
|
40
39
|
* Warning: Be careful not to apply the processor several times.
|
|
41
|
-
* For instance
|
|
40
|
+
* For instance "rowsSet" is fired by `useGridRows` whenever the active strategy changes.
|
|
42
41
|
* So listening to both would most likely run your logic twice.
|
|
43
42
|
*
|
|
44
|
-
* -
|
|
43
|
+
* - The "activeStrategyProcessorChange" event to update something when the processor of the active strategy changes.
|
|
45
44
|
*
|
|
46
45
|
* =====================================================================================================================
|
|
47
46
|
*
|
|
@@ -76,7 +75,7 @@ export var useGridStrategyProcessing = function useGridStrategyProcessing(apiRef
|
|
|
76
75
|
}
|
|
77
76
|
|
|
78
77
|
if (strategyName === apiRef.current.unstable_getActiveStrategy(GRID_STRATEGIES_PROCESSORS[processorName])) {
|
|
79
|
-
apiRef.current.publishEvent(
|
|
78
|
+
apiRef.current.publishEvent('activeStrategyProcessorChange', processorName);
|
|
80
79
|
}
|
|
81
80
|
|
|
82
81
|
return cleanup;
|
|
@@ -118,7 +117,7 @@ export var useGridStrategyProcessing = function useGridStrategyProcessing(apiRef
|
|
|
118
117
|
group: strategyGroup,
|
|
119
118
|
isAvailable: isAvailable
|
|
120
119
|
});
|
|
121
|
-
apiRef.current.publishEvent(
|
|
120
|
+
apiRef.current.publishEvent('strategyAvailabilityChange');
|
|
122
121
|
}, [apiRef]);
|
|
123
122
|
var strategyProcessingApi = {
|
|
124
123
|
unstable_registerStrategyProcessor: registerStrategyProcessor,
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { GridEvents } from '../../models/events';
|
|
3
2
|
import { useGridApiMethod } from '../utils/useGridApiMethod';
|
|
4
3
|
import { GridSignature } from '../utils/useGridApiEventHandler';
|
|
5
4
|
import { EventManager } from '../../utils/EventManager';
|
|
@@ -15,6 +14,7 @@ export function useGridApiInitialization(inputApiRef, props) {
|
|
|
15
14
|
if (!apiRef.current) {
|
|
16
15
|
apiRef.current = {
|
|
17
16
|
unstable_eventManager: new EventManager(),
|
|
17
|
+
unstable_caches: {},
|
|
18
18
|
state: {},
|
|
19
19
|
instanceId: globalId
|
|
20
20
|
};
|
|
@@ -52,7 +52,7 @@ export function useGridApiInitialization(inputApiRef, props) {
|
|
|
52
52
|
};
|
|
53
53
|
}, [apiRef]);
|
|
54
54
|
var showError = React.useCallback(function (args) {
|
|
55
|
-
apiRef.current.publishEvent(
|
|
55
|
+
apiRef.current.publishEvent('componentError', args);
|
|
56
56
|
}, [apiRef]);
|
|
57
57
|
useGridApiMethod(apiRef, {
|
|
58
58
|
subscribeEvent: subscribeEvent,
|
|
@@ -62,7 +62,7 @@ export function useGridApiInitialization(inputApiRef, props) {
|
|
|
62
62
|
React.useEffect(function () {
|
|
63
63
|
var api = apiRef.current;
|
|
64
64
|
return function () {
|
|
65
|
-
api.publishEvent(
|
|
65
|
+
api.publishEvent('unmount');
|
|
66
66
|
};
|
|
67
67
|
}, [apiRef]);
|
|
68
68
|
return apiRef;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import { GridEvents } from '../../models/events';
|
|
4
3
|
import { useGridApiEventHandler } from '../utils/useGridApiEventHandler';
|
|
5
4
|
export function useGridErrorHandler(apiRef, props) {
|
|
6
5
|
var handleError = React.useCallback(function (args) {
|
|
@@ -14,5 +13,5 @@ export function useGridErrorHandler(apiRef, props) {
|
|
|
14
13
|
React.useEffect(function () {
|
|
15
14
|
handleError(props.error);
|
|
16
15
|
}, [handleError, props.error]);
|
|
17
|
-
useGridApiEventHandler(apiRef,
|
|
16
|
+
useGridApiEventHandler(apiRef, 'componentError', handleError);
|
|
18
17
|
}
|
|
@@ -4,7 +4,6 @@ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
|
4
4
|
var _excluded = ["stateId"];
|
|
5
5
|
import * as React from 'react';
|
|
6
6
|
import { GridSignature } from '../utils/useGridApiEventHandler';
|
|
7
|
-
import { GridEvents } from '../../models/events';
|
|
8
7
|
import { useGridApiMethod } from '../utils';
|
|
9
8
|
import { isFunction } from '../../utils/utils';
|
|
10
9
|
export var useGridStateInitialization = function useGridStateInitialization(apiRef, props) {
|
|
@@ -71,7 +70,7 @@ export var useGridStateInitialization = function useGridStateInitialization(apiR
|
|
|
71
70
|
apiRef.current.state = newState;
|
|
72
71
|
|
|
73
72
|
if (apiRef.current.publishEvent) {
|
|
74
|
-
apiRef.current.publishEvent(
|
|
73
|
+
apiRef.current.publishEvent('stateChange', newState);
|
|
75
74
|
}
|
|
76
75
|
}
|
|
77
76
|
|
|
@@ -14,7 +14,6 @@ import { gridSortColumnLookupSelector } from '../sorting/gridSortingSelector';
|
|
|
14
14
|
import { gridColumnMenuSelector } from '../columnMenu/columnMenuSelector';
|
|
15
15
|
import { useGridRootProps } from '../../utils/useGridRootProps';
|
|
16
16
|
import { useGridApiEventHandler } from '../../utils/useGridApiEventHandler';
|
|
17
|
-
import { GridEvents } from '../../../models/events';
|
|
18
17
|
import { GridColumnHeaderItem } from '../../../components/columnHeaders/GridColumnHeaderItem';
|
|
19
18
|
import { getFirstColumnIndexToRender } from '../columns/gridColumnsUtils';
|
|
20
19
|
import { useGridVisibleRows } from '../../utils/useGridVisibleRows';
|
|
@@ -160,11 +159,11 @@ export var useGridColumnHeaders = function useGridColumnHeaders(props) {
|
|
|
160
159
|
var handleColumnReorderStop = React.useCallback(function () {
|
|
161
160
|
return setDragCol('');
|
|
162
161
|
}, []);
|
|
163
|
-
useGridApiEventHandler(apiRef,
|
|
164
|
-
useGridApiEventHandler(apiRef,
|
|
165
|
-
useGridApiEventHandler(apiRef,
|
|
166
|
-
useGridApiEventHandler(apiRef,
|
|
167
|
-
useGridApiEventHandler(apiRef,
|
|
162
|
+
useGridApiEventHandler(apiRef, 'columnResizeStart', handleColumnResizeStart);
|
|
163
|
+
useGridApiEventHandler(apiRef, 'columnResizeStop', handleColumnResizeStop);
|
|
164
|
+
useGridApiEventHandler(apiRef, 'columnHeaderDragStart', handleColumnReorderStart);
|
|
165
|
+
useGridApiEventHandler(apiRef, 'columnHeaderDragEnd', handleColumnReorderStop);
|
|
166
|
+
useGridApiEventHandler(apiRef, 'rowsScroll', handleScroll);
|
|
168
167
|
|
|
169
168
|
var getColumns = function getColumns(params) {
|
|
170
169
|
var other = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import { GridEvents } from '../../../models/events';
|
|
4
3
|
import { useGridLogger, useGridApiMethod, useGridApiEventHandler } from '../../utils';
|
|
5
4
|
import { gridColumnMenuSelector } from './columnMenuSelector';
|
|
6
5
|
export var columnMenuStateInitializer = function columnMenuStateInitializer(state) {
|
|
@@ -80,7 +79,7 @@ export var useGridColumnMenu = function useGridColumnMenu(apiRef) {
|
|
|
80
79
|
* EVENTS
|
|
81
80
|
*/
|
|
82
81
|
|
|
83
|
-
useGridApiEventHandler(apiRef,
|
|
84
|
-
useGridApiEventHandler(apiRef,
|
|
85
|
-
useGridApiEventHandler(apiRef,
|
|
82
|
+
useGridApiEventHandler(apiRef, 'columnResizeStart', hideColumnMenu);
|
|
83
|
+
useGridApiEventHandler(apiRef, 'virtualScrollerWheel', apiRef.current.hideColumnMenu);
|
|
84
|
+
useGridApiEventHandler(apiRef, 'virtualScrollerTouchMove', apiRef.current.hideColumnMenu);
|
|
86
85
|
};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { useGridApiMethod } from '../../utils/useGridApiMethod';
|
|
3
3
|
import { useGridApiEventHandler } from '../../utils/useGridApiEventHandler';
|
|
4
|
-
import { GridEvents } from '../../../models/events/gridEvents';
|
|
5
4
|
|
|
6
5
|
/**
|
|
7
6
|
* @requires useGridColumns (method, event)
|
|
@@ -103,5 +102,5 @@ export var useGridColumnSpanning = function useGridColumnSpanning(apiRef) {
|
|
|
103
102
|
// `colSpan` needs to be recalculated after column reordering
|
|
104
103
|
lookup.current = {};
|
|
105
104
|
}, []);
|
|
106
|
-
useGridApiEventHandler(apiRef,
|
|
105
|
+
useGridApiEventHandler(apiRef, 'columnOrderChange', handleColumnReorderChange);
|
|
107
106
|
};
|
|
@@ -2,7 +2,6 @@ import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
|
2
2
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
3
3
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
4
4
|
import * as React from 'react';
|
|
5
|
-
import { GridEvents } from '../../../models/events';
|
|
6
5
|
import { useGridApiMethod } from '../../utils/useGridApiMethod';
|
|
7
6
|
import { useGridLogger } from '../../utils/useGridLogger';
|
|
8
7
|
import { gridColumnFieldsSelector, gridColumnDefinitionsSelector, gridColumnLookupSelector, gridColumnsMetaSelector, gridColumnsSelector, gridColumnVisibilityModelSelector, gridVisibleColumnDefinitionsSelector, gridColumnPositionsSelector } from './gridColumnsSelector';
|
|
@@ -55,13 +54,13 @@ export function useGridColumns(apiRef, props) {
|
|
|
55
54
|
propModel: props.columnVisibilityModel,
|
|
56
55
|
propOnChange: props.onColumnVisibilityModelChange,
|
|
57
56
|
stateSelector: gridColumnVisibilityModelSelector,
|
|
58
|
-
changeEvent:
|
|
57
|
+
changeEvent: 'columnVisibilityModelChange'
|
|
59
58
|
});
|
|
60
59
|
var setGridColumnsState = React.useCallback(function (columnsState) {
|
|
61
60
|
logger.debug('Updating columns state.');
|
|
62
61
|
apiRef.current.setState(mergeColumnsState(columnsState));
|
|
63
62
|
apiRef.current.forceUpdate();
|
|
64
|
-
apiRef.current.publishEvent(
|
|
63
|
+
apiRef.current.publishEvent('columnsChange', columnsState.all);
|
|
65
64
|
}, [logger, apiRef]);
|
|
66
65
|
/**
|
|
67
66
|
* API METHODS
|
|
@@ -152,7 +151,7 @@ export function useGridColumns(apiRef, props) {
|
|
|
152
151
|
colDef: newColumn,
|
|
153
152
|
isVisible: isVisible
|
|
154
153
|
};
|
|
155
|
-
apiRef.current.publishEvent(
|
|
154
|
+
apiRef.current.publishEvent('columnVisibilityChange', params);
|
|
156
155
|
}
|
|
157
156
|
}, [apiRef]);
|
|
158
157
|
var setColumnIndex = React.useCallback(function (field, targetIndexPosition) {
|
|
@@ -180,7 +179,7 @@ export function useGridColumns(apiRef, props) {
|
|
|
180
179
|
targetIndex: targetIndexPosition,
|
|
181
180
|
oldIndex: oldIndexPosition
|
|
182
181
|
};
|
|
183
|
-
apiRef.current.publishEvent(
|
|
182
|
+
apiRef.current.publishEvent('columnOrderChange', params);
|
|
184
183
|
}, [apiRef, logger, setGridColumnsState]);
|
|
185
184
|
var setColumnWidth = React.useCallback(function (field, width) {
|
|
186
185
|
logger.debug("Updating column ".concat(field, " width to ").concat(width));
|
|
@@ -191,7 +190,7 @@ export function useGridColumns(apiRef, props) {
|
|
|
191
190
|
});
|
|
192
191
|
|
|
193
192
|
apiRef.current.updateColumns([newColumn]);
|
|
194
|
-
apiRef.current.publishEvent(
|
|
193
|
+
apiRef.current.publishEvent('columnWidthChange', {
|
|
195
194
|
element: apiRef.current.getColumnHeaderElement(field),
|
|
196
195
|
colDef: newColumn,
|
|
197
196
|
width: width
|
|
@@ -279,7 +278,7 @@ export function useGridColumns(apiRef, props) {
|
|
|
279
278
|
apiRef.current.setState(mergeColumnsState(columnsState));
|
|
280
279
|
|
|
281
280
|
if (initialState != null) {
|
|
282
|
-
apiRef.current.publishEvent(
|
|
281
|
+
apiRef.current.publishEvent('columnsChange', columnsState.all);
|
|
283
282
|
}
|
|
284
283
|
|
|
285
284
|
return params;
|
|
@@ -310,8 +309,8 @@ export function useGridColumns(apiRef, props) {
|
|
|
310
309
|
}
|
|
311
310
|
};
|
|
312
311
|
|
|
313
|
-
useGridApiEventHandler(apiRef,
|
|
314
|
-
useGridApiOptionHandler(apiRef,
|
|
312
|
+
useGridApiEventHandler(apiRef, 'viewportInnerSizeChange', handleGridSizeChange);
|
|
313
|
+
useGridApiOptionHandler(apiRef, 'columnVisibilityChange', props.onColumnVisibilityChange);
|
|
315
314
|
/**
|
|
316
315
|
* APPLIERS
|
|
317
316
|
*/
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { debounce, ownerDocument, unstable_useEnhancedEffect as useEnhancedEffect } from '@mui/material/utils';
|
|
3
|
-
import { GridEvents } from '../../../models/events';
|
|
4
3
|
import { useGridApiEventHandler, useGridApiOptionHandler } from '../../utils/useGridApiEventHandler';
|
|
5
4
|
import { useGridApiMethod } from '../../utils/useGridApiMethod';
|
|
6
5
|
import { useGridLogger } from '../../utils/useGridLogger';
|
|
@@ -101,12 +100,12 @@ export function useGridDimensions(apiRef, props) {
|
|
|
101
100
|
fullDimensionsRef.current = newFullDimensions;
|
|
102
101
|
|
|
103
102
|
if (newFullDimensions.viewportInnerSize.width !== (prevDimensions == null ? void 0 : prevDimensions.viewportInnerSize.width) || newFullDimensions.viewportInnerSize.height !== (prevDimensions == null ? void 0 : prevDimensions.viewportInnerSize.height)) {
|
|
104
|
-
apiRef.current.publishEvent(
|
|
103
|
+
apiRef.current.publishEvent('viewportInnerSizeChange', newFullDimensions.viewportInnerSize);
|
|
105
104
|
}
|
|
106
105
|
}, [apiRef, props.scrollbarSize, props.autoHeight, headerHeight, rowsMeta.currentPageTotalHeight]);
|
|
107
106
|
var resize = React.useCallback(function () {
|
|
108
107
|
updateGridDimensionsRef();
|
|
109
|
-
apiRef.current.publishEvent(
|
|
108
|
+
apiRef.current.publishEvent('debouncedResize', rootDimensionsRef.current);
|
|
110
109
|
}, [apiRef, updateGridDimensionsRef]);
|
|
111
110
|
var getRootDimensions = React.useCallback(function () {
|
|
112
111
|
return fullDimensionsRef.current;
|
|
@@ -178,10 +177,10 @@ export function useGridDimensions(apiRef, props) {
|
|
|
178
177
|
useEnhancedEffect(function () {
|
|
179
178
|
return updateGridDimensionsRef();
|
|
180
179
|
}, [updateGridDimensionsRef]);
|
|
181
|
-
useGridApiOptionHandler(apiRef,
|
|
182
|
-
useGridApiOptionHandler(apiRef,
|
|
183
|
-
useGridApiOptionHandler(apiRef,
|
|
184
|
-
useGridApiOptionHandler(apiRef,
|
|
185
|
-
useGridApiEventHandler(apiRef,
|
|
186
|
-
useGridApiOptionHandler(apiRef,
|
|
180
|
+
useGridApiOptionHandler(apiRef, 'sortedRowsSet', updateGridDimensionsRef);
|
|
181
|
+
useGridApiOptionHandler(apiRef, 'pageChange', updateGridDimensionsRef);
|
|
182
|
+
useGridApiOptionHandler(apiRef, 'pageSizeChange', updateGridDimensionsRef);
|
|
183
|
+
useGridApiOptionHandler(apiRef, 'columnsChange', updateGridDimensionsRef);
|
|
184
|
+
useGridApiEventHandler(apiRef, 'resize', handleResize);
|
|
185
|
+
useGridApiOptionHandler(apiRef, 'debouncedResize', props.onResize);
|
|
187
186
|
}
|