@mui/x-data-grid 5.8.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 +333 -66
- package/DataGrid/DataGrid.js +36 -2
- package/DataGrid/useDataGridComponent.js +3 -1
- package/DataGrid/useDataGridProps.js +2 -1
- package/LICENSE +21 -0
- package/README.md +7 -5
- 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.d.ts +4 -0
- package/components/GridRow.js +58 -28
- 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 +5 -5
- package/components/cell/GridActionsCell.d.ts +5 -1
- package/components/cell/GridActionsCell.js +179 -21
- package/components/cell/GridActionsCellItem.d.ts +66 -4
- package/components/cell/GridActionsCellItem.js +7 -5
- package/components/cell/GridCell.d.ts +1 -0
- package/components/cell/GridCell.js +36 -15
- 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 +30 -6
- package/components/cell/GridEditSingleSelectCell.d.ts +12 -4
- package/components/cell/GridEditSingleSelectCell.js +50 -18
- package/components/cell/index.d.ts +2 -0
- package/components/cell/index.js +2 -0
- package/components/columnHeaders/GridColumnHeaderItem.js +19 -23
- package/components/columnHeaders/GridColumnHeaders.d.ts +2 -1
- package/components/columnHeaders/GridColumnHeaders.js +1 -1
- package/components/columnHeaders/GridColumnHeadersInner.d.ts +2 -0
- package/components/columnSelection/GridCellCheckboxRenderer.d.ts +3 -3
- package/components/columnSelection/GridCellCheckboxRenderer.js +22 -6
- 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/GridRootStyles.js +36 -1
- package/components/containers/GridToolbarContainer.d.ts +8 -2
- package/components/containers/GridToolbarContainer.js +12 -2
- package/components/menu/GridMenu.js +1 -0
- package/components/panel/GridPanel.js +1 -0
- 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/panel/filterPanel/GridFilterForm.js +14 -10
- package/components/panel/filterPanel/GridFilterInputBoolean.js +13 -8
- package/components/panel/filterPanel/GridFilterInputSingleSelect.js +22 -15
- package/components/panel/filterPanel/GridFilterInputValue.js +22 -15
- package/components/toolbar/GridToolbar.d.ts +12 -2
- package/components/toolbar/GridToolbar.js +30 -7
- package/components/toolbar/GridToolbarDensitySelector.js +1 -1
- package/components/toolbar/GridToolbarExport.d.ts +5 -4
- package/components/toolbar/GridToolbarExport.js +15 -20
- package/components/toolbar/GridToolbarFilterButton.d.ts +1 -1
- 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/GridVirtualScroller.js +2 -0
- package/components/virtualization/GridVirtualScrollerContent.d.ts +4 -1
- package/components/virtualization/GridVirtualScrollerContent.js +1 -3
- package/components/virtualization/GridVirtualScrollerRenderZone.d.ts +4 -1
- package/constants/defaultGridSlotsComponents.js +3 -2
- package/constants/gridClasses.d.ts +20 -0
- package/constants/gridClasses.js +1 -1
- package/constants/gridDetailPanelToggleField.d.ts +1 -0
- package/constants/gridDetailPanelToggleField.js +2 -0
- package/constants/localeTextConstants.js +8 -1
- package/hooks/core/pipeProcessing/gridPipeProcessingApi.d.ts +39 -15
- package/hooks/core/pipeProcessing/index.d.ts +1 -0
- package/hooks/core/pipeProcessing/index.js +2 -1
- package/hooks/core/pipeProcessing/useGridPipeProcessing.d.ts +8 -3
- package/hooks/core/pipeProcessing/useGridPipeProcessing.js +53 -19
- package/hooks/core/pipeProcessing/useGridRegisterPipeApplier.d.ts +3 -0
- package/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +27 -0
- package/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.d.ts +0 -3
- package/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +0 -4
- 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.d.ts +0 -1
- package/hooks/features/columnHeaders/useGridColumnHeaders.js +81 -16
- package/hooks/features/columnMenu/useGridColumnMenu.js +3 -3
- package/hooks/features/columns/gridColumnsInterfaces.d.ts +3 -1
- package/hooks/features/columns/gridColumnsUtils.d.ts +19 -1
- package/hooks/features/columns/gridColumnsUtils.js +61 -8
- package/hooks/features/columns/useGridColumnSpanning.d.ts +7 -0
- package/hooks/features/columns/useGridColumnSpanning.js +108 -0
- package/hooks/features/columns/useGridColumns.d.ts +1 -1
- package/hooks/features/columns/useGridColumns.js +30 -25
- package/hooks/features/dimensions/useGridDimensions.d.ts +1 -1
- package/hooks/features/dimensions/useGridDimensions.js +10 -11
- package/hooks/features/editRows/useGridCellEditing.new.d.ts +1 -1
- package/hooks/features/editRows/useGridCellEditing.new.js +151 -42
- package/hooks/features/editRows/useGridCellEditing.old.js +20 -21
- package/hooks/features/editRows/useGridEditing.new.js +7 -3
- 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 +145 -57
- 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 +32 -15
- package/hooks/features/focus/useGridFocus.d.ts +1 -1
- package/hooks/features/focus/useGridFocus.js +48 -42
- package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.d.ts +1 -0
- package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +43 -12
- 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 +2 -0
- package/hooks/features/rows/gridRowsSelector.js +2 -0
- package/hooks/features/rows/gridRowsState.d.ts +7 -7
- package/hooks/features/rows/gridRowsUtils.d.ts +2 -1
- package/hooks/features/rows/gridRowsUtils.js +25 -1
- package/hooks/features/rows/useGridRows.d.ts +2 -2
- package/hooks/features/rows/useGridRows.js +121 -61
- package/hooks/features/rows/useGridRowsMeta.js +6 -13
- package/hooks/features/rows/useGridRowsPreProcessors.js +2 -0
- package/hooks/features/scroll/useGridScroll.d.ts +2 -0
- package/hooks/features/scroll/useGridScroll.js +31 -4
- package/hooks/features/selection/useGridSelection.d.ts +1 -1
- package/hooks/features/selection/useGridSelection.js +15 -11
- package/hooks/features/sorting/useGridSorting.js +17 -18
- package/hooks/features/virtualization/useGridVirtualScroller.d.ts +9 -0
- package/hooks/features/virtualization/useGridVirtualScroller.js +68 -32
- 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 +5 -1
- package/internals/index.js +6 -2
- package/legacy/DataGrid/DataGrid.js +36 -2
- package/legacy/DataGrid/useDataGridComponent.js +3 -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 +56 -28
- 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 +5 -5
- package/legacy/components/cell/GridActionsCell.js +197 -27
- package/legacy/components/cell/GridActionsCellItem.js +7 -5
- package/legacy/components/cell/GridCell.js +37 -15
- package/legacy/components/cell/GridEditBooleanCell.js +132 -11
- package/legacy/components/cell/GridEditDateCell.js +148 -42
- package/legacy/components/cell/GridEditInputCell.js +62 -13
- package/legacy/components/cell/GridEditSingleSelectCell.js +65 -28
- package/legacy/components/cell/index.js +2 -0
- package/legacy/components/columnHeaders/GridColumnHeaderItem.js +19 -23
- package/legacy/components/columnHeaders/GridColumnHeaders.js +2 -3
- package/legacy/components/columnSelection/GridCellCheckboxRenderer.js +23 -6
- package/legacy/components/columnSelection/GridHeaderCheckbox.js +4 -5
- package/legacy/components/containers/GridFooterContainer.js +11 -2
- package/legacy/components/containers/GridRootStyles.js +26 -5
- package/legacy/components/containers/GridToolbarContainer.js +12 -2
- package/legacy/components/menu/GridMenu.js +1 -0
- package/legacy/components/panel/GridPanel.js +1 -0
- 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/panel/filterPanel/GridFilterForm.js +14 -10
- package/legacy/components/panel/filterPanel/GridFilterInputBoolean.js +13 -8
- package/legacy/components/panel/filterPanel/GridFilterInputSingleSelect.js +22 -17
- package/legacy/components/panel/filterPanel/GridFilterInputValue.js +22 -17
- package/legacy/components/toolbar/GridToolbar.js +31 -6
- package/legacy/components/toolbar/GridToolbarDensitySelector.js +1 -1
- 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/components/virtualization/GridVirtualScroller.js +2 -0
- package/legacy/components/virtualization/GridVirtualScrollerContent.js +1 -3
- package/legacy/constants/defaultGridSlotsComponents.js +3 -2
- package/legacy/constants/gridClasses.js +1 -1
- package/legacy/constants/gridDetailPanelToggleField.js +2 -0
- package/legacy/constants/localeTextConstants.js +8 -1
- package/legacy/hooks/core/pipeProcessing/index.js +2 -1
- package/legacy/hooks/core/pipeProcessing/useGridPipeProcessing.js +60 -24
- package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +27 -0
- package/legacy/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +0 -4
- 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 +94 -16
- package/legacy/hooks/features/columnMenu/useGridColumnMenu.js +3 -3
- package/legacy/hooks/features/columns/gridColumnsUtils.js +79 -22
- package/legacy/hooks/features/columns/useGridColumnSpanning.js +106 -0
- package/legacy/hooks/features/columns/useGridColumns.js +30 -25
- package/legacy/hooks/features/dimensions/useGridDimensions.js +10 -11
- package/legacy/hooks/features/editRows/useGridCellEditing.new.js +225 -89
- package/legacy/hooks/features/editRows/useGridCellEditing.old.js +20 -21
- package/legacy/hooks/features/editRows/useGridEditing.new.js +7 -3
- package/legacy/hooks/features/editRows/useGridEditing.old.js +4 -5
- package/legacy/hooks/features/editRows/useGridRowEditing.new.js +157 -65
- 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 +32 -15
- package/legacy/hooks/features/focus/useGridFocus.js +50 -44
- package/legacy/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +43 -11
- 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 +6 -0
- package/legacy/hooks/features/rows/gridRowsUtils.js +27 -1
- package/legacy/hooks/features/rows/useGridRows.js +131 -61
- package/legacy/hooks/features/rows/useGridRowsMeta.js +6 -13
- package/legacy/hooks/features/rows/useGridRowsPreProcessors.js +2 -0
- package/legacy/hooks/features/scroll/useGridScroll.js +31 -4
- package/legacy/hooks/features/selection/useGridSelection.js +15 -11
- package/legacy/hooks/features/sorting/useGridSorting.js +12 -15
- package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +79 -42
- 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 +6 -2
- package/legacy/locales/arSD.js +8 -1
- package/legacy/locales/bgBG.js +8 -1
- package/legacy/locales/csCZ.js +7 -0
- package/legacy/locales/daDK.js +8 -1
- package/legacy/locales/deDE.js +10 -3
- package/legacy/locales/elGR.js +7 -0
- package/legacy/locales/esES.js +7 -0
- package/legacy/locales/faIR.js +8 -1
- package/legacy/locales/fiFI.js +7 -0
- package/legacy/locales/frFR.js +7 -0
- package/legacy/locales/heIL.js +8 -1
- package/legacy/locales/huHU.js +127 -0
- package/legacy/locales/index.js +1 -0
- package/legacy/locales/itIT.js +7 -0
- package/legacy/locales/jaJP.js +7 -0
- package/legacy/locales/koKR.js +7 -0
- package/legacy/locales/nlNL.js +7 -0
- package/legacy/locales/plPL.js +8 -1
- package/legacy/locales/ptBR.js +8 -1
- package/legacy/locales/ruRU.js +7 -0
- package/legacy/locales/skSK.js +7 -0
- package/legacy/locales/trTR.js +8 -1
- package/legacy/locales/ukUA.js +7 -0
- package/legacy/locales/viVN.js +7 -0
- package/legacy/locales/zhCN.js +7 -0
- package/legacy/models/api/gridColumnSpanning.js +1 -0
- package/legacy/models/events/gridEvents.js +10 -3
- package/legacy/models/gridColumnSpanning.js +1 -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 +8 -1
- package/locales/bgBG.js +8 -1
- package/locales/csCZ.js +7 -0
- package/locales/daDK.js +8 -1
- package/locales/deDE.js +10 -3
- package/locales/elGR.js +7 -0
- package/locales/esES.js +7 -0
- package/locales/faIR.js +8 -1
- package/locales/fiFI.js +7 -0
- package/locales/frFR.js +7 -0
- package/locales/heIL.js +8 -1
- package/locales/huHU.d.ts +2 -0
- package/locales/huHU.js +115 -0
- package/locales/index.d.ts +1 -0
- package/locales/index.js +1 -0
- package/locales/itIT.js +7 -0
- package/locales/jaJP.js +7 -0
- package/locales/koKR.js +7 -0
- package/locales/nlNL.js +7 -0
- package/locales/plPL.js +8 -1
- package/locales/ptBR.js +8 -1
- package/locales/ruRU.js +7 -0
- package/locales/skSK.js +7 -0
- package/locales/trTR.js +8 -1
- package/locales/ukUA.js +7 -0
- package/locales/viVN.js +7 -0
- package/locales/zhCN.js +7 -0
- package/models/api/gridApiCommon.d.ts +2 -1
- package/models/api/gridColumnSpanning.d.ts +28 -0
- package/models/api/gridColumnSpanning.js +1 -0
- package/models/api/gridCoreApi.d.ts +10 -0
- package/models/api/gridEditingApi.d.ts +72 -7
- package/models/api/gridFilterApi.d.ts +5 -0
- package/models/api/gridFocusApi.d.ts +1 -0
- package/models/api/gridLocaleTextApi.d.ts +5 -0
- package/models/api/gridRowApi.d.ts +34 -0
- package/models/api/index.d.ts +1 -1
- package/models/colDef/gridColDef.d.ts +18 -0
- package/models/events/gridEventLookup.d.ts +296 -11
- package/models/events/gridEvents.d.ts +10 -258
- package/models/events/gridEvents.js +10 -3
- package/models/gridColumnSpanning.d.ts +12 -0
- package/models/gridColumnSpanning.js +1 -0
- package/models/gridEditRowModel.d.ts +1 -1
- package/models/gridExport.d.ts +29 -2
- package/models/gridFilterModel.d.ts +11 -0
- package/models/gridFilterOperator.d.ts +1 -1
- package/models/gridIconSlotsComponent.d.ts +5 -0
- package/models/gridStateCommunity.d.ts +0 -2
- package/models/index.d.ts +1 -1
- package/models/index.js +4 -3
- package/models/params/gridCellParams.d.ts +12 -2
- package/models/params/gridRowParams.d.ts +5 -0
- package/models/props/DataGridProps.d.ts +57 -29
- package/modern/DataGrid/DataGrid.js +36 -2
- package/modern/DataGrid/useDataGridComponent.js +3 -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 +56 -26
- 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 +5 -5
- package/modern/components/cell/GridActionsCell.js +179 -21
- package/modern/components/cell/GridActionsCellItem.js +7 -5
- package/modern/components/cell/GridCell.js +36 -15
- package/modern/components/cell/GridEditBooleanCell.js +101 -6
- package/modern/components/cell/GridEditDateCell.js +99 -5
- package/modern/components/cell/GridEditInputCell.js +30 -6
- package/modern/components/cell/GridEditSingleSelectCell.js +48 -16
- package/modern/components/cell/index.js +2 -0
- package/modern/components/columnHeaders/GridColumnHeaderItem.js +19 -23
- package/modern/components/columnHeaders/GridColumnHeaders.js +1 -1
- package/modern/components/columnSelection/GridCellCheckboxRenderer.js +22 -6
- package/modern/components/columnSelection/GridHeaderCheckbox.js +4 -5
- package/modern/components/containers/GridFooterContainer.js +11 -2
- package/modern/components/containers/GridRootStyles.js +36 -1
- package/modern/components/containers/GridToolbarContainer.js +12 -2
- package/modern/components/menu/GridMenu.js +1 -0
- package/modern/components/panel/GridPanel.js +1 -0
- 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/panel/filterPanel/GridFilterForm.js +10 -6
- package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +11 -6
- package/modern/components/panel/filterPanel/GridFilterInputSingleSelect.js +20 -13
- package/modern/components/panel/filterPanel/GridFilterInputValue.js +20 -13
- package/modern/components/toolbar/GridToolbar.js +30 -7
- package/modern/components/toolbar/GridToolbarDensitySelector.js +1 -1
- 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/components/virtualization/GridVirtualScroller.js +2 -0
- package/modern/components/virtualization/GridVirtualScrollerContent.js +1 -3
- package/modern/constants/defaultGridSlotsComponents.js +3 -2
- package/modern/constants/gridClasses.js +1 -1
- package/modern/constants/gridDetailPanelToggleField.js +2 -0
- package/modern/constants/localeTextConstants.js +8 -1
- package/modern/hooks/core/pipeProcessing/index.js +2 -1
- package/modern/hooks/core/pipeProcessing/useGridPipeProcessing.js +53 -19
- package/modern/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +27 -0
- package/modern/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +0 -4
- 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 +81 -16
- package/modern/hooks/features/columnMenu/useGridColumnMenu.js +3 -3
- package/modern/hooks/features/columns/gridColumnsUtils.js +61 -8
- package/modern/hooks/features/columns/useGridColumnSpanning.js +106 -0
- package/modern/hooks/features/columns/useGridColumns.js +30 -25
- package/modern/hooks/features/dimensions/useGridDimensions.js +10 -11
- package/modern/hooks/features/editRows/useGridCellEditing.new.js +149 -42
- package/modern/hooks/features/editRows/useGridCellEditing.old.js +20 -21
- package/modern/hooks/features/editRows/useGridEditing.new.js +7 -3
- package/modern/hooks/features/editRows/useGridEditing.old.js +4 -5
- package/modern/hooks/features/editRows/useGridRowEditing.new.js +143 -57
- 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 +32 -15
- package/modern/hooks/features/focus/useGridFocus.js +48 -42
- package/modern/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +41 -12
- 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 +2 -0
- package/modern/hooks/features/rows/gridRowsUtils.js +23 -1
- package/modern/hooks/features/rows/useGridRows.js +121 -61
- package/modern/hooks/features/rows/useGridRowsMeta.js +6 -13
- package/modern/hooks/features/rows/useGridRowsPreProcessors.js +2 -0
- package/modern/hooks/features/scroll/useGridScroll.js +29 -4
- package/modern/hooks/features/selection/useGridSelection.js +15 -11
- package/modern/hooks/features/sorting/useGridSorting.js +17 -18
- package/modern/hooks/features/virtualization/useGridVirtualScroller.js +68 -28
- 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 +6 -2
- package/modern/locales/arSD.js +8 -1
- package/modern/locales/bgBG.js +8 -1
- package/modern/locales/csCZ.js +7 -0
- package/modern/locales/daDK.js +8 -1
- package/modern/locales/deDE.js +10 -3
- package/modern/locales/elGR.js +7 -0
- package/modern/locales/esES.js +7 -0
- package/modern/locales/faIR.js +8 -1
- package/modern/locales/fiFI.js +7 -0
- package/modern/locales/frFR.js +7 -0
- package/modern/locales/heIL.js +8 -1
- package/modern/locales/huHU.js +115 -0
- package/modern/locales/index.js +1 -0
- package/modern/locales/itIT.js +7 -0
- package/modern/locales/jaJP.js +7 -0
- package/modern/locales/koKR.js +7 -0
- package/modern/locales/nlNL.js +7 -0
- package/modern/locales/plPL.js +8 -1
- package/modern/locales/ptBR.js +8 -1
- package/modern/locales/ruRU.js +7 -0
- package/modern/locales/skSK.js +7 -0
- package/modern/locales/trTR.js +8 -1
- package/modern/locales/ukUA.js +7 -0
- package/modern/locales/viVN.js +7 -0
- package/modern/locales/zhCN.js +7 -0
- package/modern/models/api/gridColumnSpanning.js +1 -0
- package/modern/models/events/gridEvents.js +10 -3
- package/modern/models/gridColumnSpanning.js +1 -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 +36 -2
- package/node/DataGrid/useDataGridComponent.js +4 -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 +59 -29
- 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 +4 -5
- package/node/components/cell/GridActionsCell.js +181 -21
- package/node/components/cell/GridActionsCellItem.js +7 -4
- package/node/components/cell/GridCell.js +35 -14
- package/node/components/cell/GridEditBooleanCell.js +100 -5
- package/node/components/cell/GridEditDateCell.js +98 -4
- package/node/components/cell/GridEditInputCell.js +30 -6
- package/node/components/cell/GridEditSingleSelectCell.js +50 -18
- package/node/components/cell/index.js +26 -0
- package/node/components/columnHeaders/GridColumnHeaderItem.js +19 -24
- package/node/components/columnHeaders/GridColumnHeaders.js +1 -1
- package/node/components/columnSelection/GridCellCheckboxRenderer.js +22 -7
- package/node/components/columnSelection/GridHeaderCheckbox.js +4 -6
- package/node/components/containers/GridFooterContainer.js +10 -1
- package/node/components/containers/GridRootStyles.js +36 -1
- package/node/components/containers/GridToolbarContainer.js +11 -1
- package/node/components/menu/GridMenu.js +1 -0
- package/node/components/panel/GridPanel.js +1 -0
- 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/panel/filterPanel/GridFilterForm.js +15 -10
- package/node/components/panel/filterPanel/GridFilterInputBoolean.js +14 -8
- package/node/components/panel/filterPanel/GridFilterInputSingleSelect.js +23 -15
- package/node/components/panel/filterPanel/GridFilterInputValue.js +23 -15
- package/node/components/toolbar/GridToolbar.js +32 -7
- package/node/components/toolbar/GridToolbarDensitySelector.js +1 -1
- 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/components/virtualization/GridVirtualScroller.js +2 -0
- package/node/components/virtualization/GridVirtualScrollerContent.js +1 -3
- package/node/constants/defaultGridSlotsComponents.js +2 -1
- package/node/constants/gridClasses.js +1 -1
- package/node/constants/gridDetailPanelToggleField.js +9 -0
- package/node/constants/localeTextConstants.js +8 -1
- package/node/hooks/core/pipeProcessing/index.js +13 -0
- package/node/hooks/core/pipeProcessing/useGridPipeProcessing.js +51 -20
- package/node/hooks/core/pipeProcessing/useGridRegisterPipeApplier.js +42 -0
- package/node/hooks/core/pipeProcessing/useGridRegisterPipeProcessor.js +0 -3
- 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 +85 -17
- package/node/hooks/features/columnMenu/useGridColumnMenu.js +3 -4
- package/node/hooks/features/columns/gridColumnsUtils.js +65 -9
- package/node/hooks/features/columns/useGridColumnSpanning.js +128 -0
- package/node/hooks/features/columns/useGridColumns.js +29 -25
- package/node/hooks/features/dimensions/useGridDimensions.js +10 -12
- package/node/hooks/features/editRows/useGridCellEditing.new.js +151 -42
- package/node/hooks/features/editRows/useGridCellEditing.old.js +20 -22
- package/node/hooks/features/editRows/useGridEditing.new.js +6 -2
- package/node/hooks/features/editRows/useGridEditing.old.js +4 -6
- package/node/hooks/features/editRows/useGridRowEditing.new.js +143 -57
- 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 +33 -16
- package/node/hooks/features/focus/useGridFocus.js +48 -43
- package/node/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +44 -13
- 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 +5 -1
- package/node/hooks/features/rows/gridRowsUtils.js +29 -1
- package/node/hooks/features/rows/useGridRows.js +122 -61
- package/node/hooks/features/rows/useGridRowsMeta.js +6 -14
- package/node/hooks/features/rows/useGridRowsPreProcessors.js +2 -0
- package/node/hooks/features/scroll/useGridScroll.js +32 -3
- package/node/hooks/features/selection/useGridSelection.js +16 -12
- package/node/hooks/features/sorting/useGridSorting.js +17 -19
- package/node/hooks/features/virtualization/useGridVirtualScroller.js +73 -33
- 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 +47 -3
- package/node/locales/arSD.js +8 -1
- package/node/locales/bgBG.js +8 -1
- package/node/locales/csCZ.js +7 -0
- package/node/locales/daDK.js +8 -1
- package/node/locales/deDE.js +10 -3
- package/node/locales/elGR.js +7 -0
- package/node/locales/esES.js +7 -0
- package/node/locales/faIR.js +8 -1
- package/node/locales/fiFI.js +7 -0
- package/node/locales/frFR.js +7 -0
- package/node/locales/heIL.js +8 -1
- package/node/locales/huHU.js +125 -0
- package/node/locales/index.js +13 -0
- package/node/locales/itIT.js +7 -0
- package/node/locales/jaJP.js +7 -0
- package/node/locales/koKR.js +7 -0
- package/node/locales/nlNL.js +7 -0
- package/node/locales/plPL.js +8 -1
- package/node/locales/ptBR.js +8 -1
- package/node/locales/ruRU.js +7 -0
- package/node/locales/skSK.js +7 -0
- package/node/locales/trTR.js +8 -1
- package/node/locales/ukUA.js +7 -0
- package/node/locales/viVN.js +7 -0
- package/node/locales/zhCN.js +7 -0
- package/node/models/api/gridColumnSpanning.js +5 -0
- package/node/models/events/gridEvents.js +10 -3
- package/node/models/gridColumnSpanning.js +5 -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 +4 -4
- package/utils/createSelector.d.ts +2 -1
- package/utils/createSelector.js +20 -2
- package/utils/domUtils.d.ts +2 -2
- package/utils/exportAs.d.ts +2 -2
- package/utils/exportAs.js +1 -1
|
@@ -11,8 +11,6 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
11
11
|
|
|
12
12
|
var React = _interopRequireWildcard(require("react"));
|
|
13
13
|
|
|
14
|
-
var _events = require("../../../models/events");
|
|
15
|
-
|
|
16
14
|
var _useGridApiEventHandler = require("../../utils/useGridApiEventHandler");
|
|
17
15
|
|
|
18
16
|
var _useGridApiMethod = require("../../utils/useGridApiMethod");
|
|
@@ -37,6 +35,8 @@ var _keyboardUtils = require("../../../utils/keyboardUtils");
|
|
|
37
35
|
|
|
38
36
|
var _useGridVisibleRows = require("../../utils/useGridVisibleRows");
|
|
39
37
|
|
|
38
|
+
var _gridDetailPanelToggleField = require("../../../constants/gridDetailPanelToggleField");
|
|
39
|
+
|
|
40
40
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
41
41
|
|
|
42
42
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -85,7 +85,7 @@ const useGridSelection = (apiRef, props) => {
|
|
|
85
85
|
propModel: propSelectionModel,
|
|
86
86
|
propOnChange: props.onSelectionModelChange,
|
|
87
87
|
stateSelector: _gridSelectionSelector.gridSelectionStateSelector,
|
|
88
|
-
changeEvent:
|
|
88
|
+
changeEvent: 'selectionChange'
|
|
89
89
|
});
|
|
90
90
|
const {
|
|
91
91
|
checkboxSelection,
|
|
@@ -226,6 +226,10 @@ const useGridSelection = (apiRef, props) => {
|
|
|
226
226
|
*/
|
|
227
227
|
|
|
228
228
|
const removeOutdatedSelection = React.useCallback(() => {
|
|
229
|
+
if (props.keepNonExistentRowsSelected) {
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
|
|
229
233
|
const currentSelection = (0, _gridSelectionSelector.gridSelectionStateSelector)(apiRef.current.state);
|
|
230
234
|
const rowsLookup = (0, _gridRowsSelector.gridRowsLookupSelector)(apiRef); // We clone the existing object to avoid mutating the same object returned by the selector to others part of the project
|
|
231
235
|
|
|
@@ -241,12 +245,12 @@ const useGridSelection = (apiRef, props) => {
|
|
|
241
245
|
if (hasChanged) {
|
|
242
246
|
apiRef.current.setSelectionModel(Object.values(selectionLookup));
|
|
243
247
|
}
|
|
244
|
-
}, [apiRef]);
|
|
248
|
+
}, [apiRef, props.keepNonExistentRowsSelected]);
|
|
245
249
|
const handleSingleRowSelection = React.useCallback((id, event) => {
|
|
246
250
|
const hasCtrlKey = event.metaKey || event.ctrlKey; // multiple selection is only allowed if:
|
|
247
251
|
// - it is a checkboxSelection
|
|
248
252
|
// - it is a keyboard selection
|
|
249
|
-
// -
|
|
253
|
+
// - Ctrl is pressed
|
|
250
254
|
|
|
251
255
|
const isMultipleSelectionDisabled = !checkboxSelection && !hasCtrlKey && !(0, _keyboardUtils.isKeyboardEvent)(event);
|
|
252
256
|
const resetSelection = !canHaveMultipleSelection || isMultipleSelectionDisabled;
|
|
@@ -268,7 +272,7 @@ const useGridSelection = (apiRef, props) => {
|
|
|
268
272
|
return;
|
|
269
273
|
}
|
|
270
274
|
|
|
271
|
-
if (params.field ===
|
|
275
|
+
if (params.field === _gridDetailPanelToggleField.GRID_DETAIL_PANEL_TOGGLE_FIELD) {
|
|
272
276
|
// click to open the detail panel should not select the row
|
|
273
277
|
return;
|
|
274
278
|
}
|
|
@@ -376,12 +380,12 @@ const useGridSelection = (apiRef, props) => {
|
|
|
376
380
|
selectRows(apiRef.current.getAllRowIds(), true);
|
|
377
381
|
}
|
|
378
382
|
}, [apiRef, handleSingleRowSelection, selectRows, visibleRows.rows, canHaveMultipleSelection]);
|
|
379
|
-
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef,
|
|
380
|
-
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef,
|
|
381
|
-
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef,
|
|
382
|
-
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef,
|
|
383
|
-
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef,
|
|
384
|
-
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef,
|
|
383
|
+
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'sortedRowsSet', removeOutdatedSelection);
|
|
384
|
+
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'cellClick', handleCellClick);
|
|
385
|
+
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'rowSelectionCheckboxChange', handleRowSelectionCheckboxChange);
|
|
386
|
+
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'headerSelectionCheckboxChange', handleHeaderSelectionCheckboxChange);
|
|
387
|
+
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'cellMouseDown', preventSelectionOnShift);
|
|
388
|
+
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'cellKeyDown', handleCellKeyDown);
|
|
385
389
|
/**
|
|
386
390
|
* EFFECTS
|
|
387
391
|
*/
|
|
@@ -11,8 +11,6 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
11
11
|
|
|
12
12
|
var React = _interopRequireWildcard(require("react"));
|
|
13
13
|
|
|
14
|
-
var _events = require("../../../models/events");
|
|
15
|
-
|
|
16
14
|
var _gridFeatureMode = require("../../../models/gridFeatureMode");
|
|
17
15
|
|
|
18
16
|
var _keyboardUtils = require("../../../utils/keyboardUtils");
|
|
@@ -67,7 +65,7 @@ const useGridSorting = (apiRef, props) => {
|
|
|
67
65
|
propModel: props.sortModel,
|
|
68
66
|
propOnChange: props.onSortModelChange,
|
|
69
67
|
stateSelector: _gridSortingSelector.gridSortModelSelector,
|
|
70
|
-
changeEvent:
|
|
68
|
+
changeEvent: 'sortModelChange'
|
|
71
69
|
});
|
|
72
70
|
const upsertSortModel = React.useCallback((field, sortItem) => {
|
|
73
71
|
const sortModel = (0, _gridSortingSelector.gridSortModelSelector)(apiRef);
|
|
@@ -111,17 +109,16 @@ const useGridSorting = (apiRef, props) => {
|
|
|
111
109
|
*/
|
|
112
110
|
|
|
113
111
|
const applySorting = React.useCallback(() => {
|
|
114
|
-
if (props.sortingMode === _gridFeatureMode.GridFeatureModeConstant.server) {
|
|
115
|
-
logger.debug('Skipping sorting rows as sortingMode = server');
|
|
116
|
-
apiRef.current.setState(state => (0, _extends2.default)({}, state, {
|
|
117
|
-
sorting: (0, _extends2.default)({}, state.sorting, {
|
|
118
|
-
sortedRows: (0, _rows.gridRowIdsSelector)(state, apiRef.current.instanceId)
|
|
119
|
-
})
|
|
120
|
-
}));
|
|
121
|
-
return;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
112
|
apiRef.current.setState(state => {
|
|
113
|
+
if (props.sortingMode === _gridFeatureMode.GridFeatureModeConstant.server) {
|
|
114
|
+
logger.debug('Skipping sorting rows as sortingMode = server');
|
|
115
|
+
return (0, _extends2.default)({}, state, {
|
|
116
|
+
sorting: (0, _extends2.default)({}, state.sorting, {
|
|
117
|
+
sortedRows: (0, _rows.gridRowIdsSelector)(state, apiRef.current.instanceId)
|
|
118
|
+
})
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
|
|
125
122
|
const sortModel = (0, _gridSortingSelector.gridSortModelSelector)(state, apiRef.current.instanceId);
|
|
126
123
|
const sortRowList = (0, _gridSortingUtils.buildAggregatedSortingApplier)(sortModel, apiRef);
|
|
127
124
|
const sortedRows = apiRef.current.unstable_applyStrategyProcessor('sorting', {
|
|
@@ -133,6 +130,7 @@ const useGridSorting = (apiRef, props) => {
|
|
|
133
130
|
})
|
|
134
131
|
});
|
|
135
132
|
});
|
|
133
|
+
apiRef.current.publishEvent('sortedRowsSet');
|
|
136
134
|
apiRef.current.forceUpdate();
|
|
137
135
|
}, [apiRef, logger, props.sortingMode]);
|
|
138
136
|
const setSortModel = React.useCallback(model => {
|
|
@@ -235,7 +233,7 @@ const useGridSorting = (apiRef, props) => {
|
|
|
235
233
|
const handleColumnHeaderKeyDown = React.useCallback(({
|
|
236
234
|
colDef
|
|
237
235
|
}, event) => {
|
|
238
|
-
//
|
|
236
|
+
// Ctrl + Enter opens the column menu
|
|
239
237
|
if ((0, _keyboardUtils.isEnterKey)(event.key) && !event.ctrlKey && !event.metaKey) {
|
|
240
238
|
sortColumn(colDef, undefined, event.shiftKey);
|
|
241
239
|
}
|
|
@@ -258,11 +256,11 @@ const useGridSorting = (apiRef, props) => {
|
|
|
258
256
|
apiRef.current.applySorting();
|
|
259
257
|
}
|
|
260
258
|
}, [apiRef]);
|
|
261
|
-
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef,
|
|
262
|
-
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef,
|
|
263
|
-
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef,
|
|
264
|
-
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef,
|
|
265
|
-
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef,
|
|
259
|
+
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'columnHeaderClick', handleColumnHeaderClick);
|
|
260
|
+
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'columnHeaderKeyDown', handleColumnHeaderKeyDown);
|
|
261
|
+
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'rowsSet', apiRef.current.applySorting);
|
|
262
|
+
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'columnsChange', handleColumnsChange);
|
|
263
|
+
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'activeStrategyProcessorChange', handleStrategyProcessorChange);
|
|
266
264
|
/**
|
|
267
265
|
* 1ST RENDER
|
|
268
266
|
*/
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.getIndexFromScroll = getIndexFromScroll;
|
|
9
|
-
exports.useGridVirtualScroller = void 0;
|
|
9
|
+
exports.useGridVirtualScroller = exports.getRenderableIndexes = void 0;
|
|
10
10
|
|
|
11
11
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
12
12
|
|
|
@@ -14,6 +14,8 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
14
14
|
|
|
15
15
|
var React = _interopRequireWildcard(require("react"));
|
|
16
16
|
|
|
17
|
+
var ReactDOM = _interopRequireWildcard(require("react-dom"));
|
|
18
|
+
|
|
17
19
|
var _utils = require("@mui/material/utils");
|
|
18
20
|
|
|
19
21
|
var _useGridApiContext = require("../../utils/useGridApiContext");
|
|
@@ -32,8 +34,6 @@ var _gridEditRowsSelector = require("../editRows/gridEditRowsSelector");
|
|
|
32
34
|
|
|
33
35
|
var _useGridVisibleRows = require("../../utils/useGridVisibleRows");
|
|
34
36
|
|
|
35
|
-
var _events = require("../../../models/events");
|
|
36
|
-
|
|
37
37
|
var _useGridApiEventHandler = require("../../utils/useGridApiEventHandler");
|
|
38
38
|
|
|
39
39
|
var _utils2 = require("../../../utils/utils");
|
|
@@ -42,6 +42,8 @@ var _gridSelectionSelector = require("../selection/gridSelectionSelector");
|
|
|
42
42
|
|
|
43
43
|
var _gridRowsMetaSelector = require("../rows/gridRowsMetaSelector");
|
|
44
44
|
|
|
45
|
+
var _gridColumnsUtils = require("../columns/gridColumnsUtils");
|
|
46
|
+
|
|
45
47
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
46
48
|
|
|
47
49
|
const _excluded = ["style"];
|
|
@@ -65,9 +67,19 @@ function getIndexFromScroll(offset, positions, sliceStart = 0, sliceEnd = positi
|
|
|
65
67
|
return offset <= itemOffset ? getIndexFromScroll(offset, positions, sliceStart, pivot) : getIndexFromScroll(offset, positions, pivot + 1, sliceEnd);
|
|
66
68
|
}
|
|
67
69
|
|
|
68
|
-
const
|
|
69
|
-
|
|
70
|
+
const getRenderableIndexes = ({
|
|
71
|
+
firstIndex,
|
|
72
|
+
lastIndex,
|
|
73
|
+
buffer,
|
|
74
|
+
minFirstIndex,
|
|
75
|
+
maxLastIndex
|
|
76
|
+
}) => {
|
|
77
|
+
return [(0, _utils2.clamp)(firstIndex - buffer, minFirstIndex, maxLastIndex), (0, _utils2.clamp)(lastIndex + buffer, minFirstIndex, maxLastIndex)];
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
exports.getRenderableIndexes = getRenderableIndexes;
|
|
70
81
|
|
|
82
|
+
const useGridVirtualScroller = props => {
|
|
71
83
|
const apiRef = (0, _useGridApiContext.useGridApiContext)();
|
|
72
84
|
const rootProps = (0, _useGridRootProps.useGridRootProps)();
|
|
73
85
|
const visibleColumns = (0, _useGridSelector.useGridSelector)(apiRef, _gridColumnsSelector.gridVisibleColumnDefinitionsSelector);
|
|
@@ -141,35 +153,29 @@ const useGridVirtualScroller = props => {
|
|
|
141
153
|
setContainerWidth(rootRef.current.clientWidth);
|
|
142
154
|
}
|
|
143
155
|
}, []);
|
|
144
|
-
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef,
|
|
145
|
-
|
|
146
|
-
const getRenderableIndexes = ({
|
|
147
|
-
firstIndex,
|
|
148
|
-
lastIndex,
|
|
149
|
-
buffer,
|
|
150
|
-
minFirstIndex,
|
|
151
|
-
maxLastIndex
|
|
152
|
-
}) => {
|
|
153
|
-
return [(0, _utils2.clamp)(firstIndex - buffer, minFirstIndex, maxLastIndex), (0, _utils2.clamp)(lastIndex + buffer, minFirstIndex, maxLastIndex)];
|
|
154
|
-
};
|
|
155
|
-
|
|
156
|
+
(0, _useGridApiEventHandler.useGridApiEventHandler)(apiRef, 'resize', handleResize);
|
|
156
157
|
const updateRenderZonePosition = React.useCallback(nextRenderContext => {
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
const [firstRowToRender] = getRenderableIndexes({
|
|
158
|
+
const [firstRowToRender, lastRowToRender] = getRenderableIndexes({
|
|
160
159
|
firstIndex: nextRenderContext.firstRowIndex,
|
|
161
160
|
lastIndex: nextRenderContext.lastRowIndex,
|
|
162
161
|
minFirstIndex: 0,
|
|
163
|
-
maxLastIndex:
|
|
162
|
+
maxLastIndex: currentPage.rows.length,
|
|
164
163
|
buffer: rootProps.rowBuffer
|
|
165
164
|
});
|
|
166
|
-
const [
|
|
165
|
+
const [initialFirstColumnToRender] = getRenderableIndexes({
|
|
167
166
|
firstIndex: nextRenderContext.firstColumnIndex,
|
|
168
167
|
lastIndex: nextRenderContext.lastColumnIndex,
|
|
169
168
|
minFirstIndex: renderZoneMinColumnIndex,
|
|
170
169
|
maxLastIndex: renderZoneMaxColumnIndex,
|
|
171
170
|
buffer: rootProps.columnBuffer
|
|
172
171
|
});
|
|
172
|
+
const firstColumnToRender = (0, _gridColumnsUtils.getFirstNonSpannedColumnToRender)({
|
|
173
|
+
firstColumnToRender: initialFirstColumnToRender,
|
|
174
|
+
apiRef,
|
|
175
|
+
firstRowToRender,
|
|
176
|
+
lastRowToRender,
|
|
177
|
+
visibleRows: currentPage.rows
|
|
178
|
+
});
|
|
173
179
|
const top = (0, _gridRowsMetaSelector.gridRowsMetaSelector)(apiRef.current.state).positions[firstRowToRender];
|
|
174
180
|
const left = (0, _gridColumnsSelector.gridColumnPositionsSelector)(apiRef)[firstColumnToRender]; // Call directly the selector because it might be outdated when this method is called
|
|
175
181
|
|
|
@@ -181,19 +187,22 @@ const useGridVirtualScroller = props => {
|
|
|
181
187
|
left
|
|
182
188
|
});
|
|
183
189
|
}
|
|
184
|
-
}, [apiRef,
|
|
190
|
+
}, [apiRef, currentPage.rows, onRenderZonePositioning, renderZoneMinColumnIndex, renderZoneMaxColumnIndex, rootProps.columnBuffer, rootProps.rowBuffer]);
|
|
191
|
+
React.useLayoutEffect(() => {
|
|
192
|
+
if (renderContext) {
|
|
193
|
+
updateRenderZonePosition(renderContext);
|
|
194
|
+
}
|
|
195
|
+
}, [renderContext, updateRenderZonePosition]);
|
|
185
196
|
const updateRenderContext = React.useCallback(nextRenderContext => {
|
|
186
197
|
setRenderContext(nextRenderContext);
|
|
187
|
-
updateRenderZonePosition(nextRenderContext);
|
|
188
198
|
prevRenderContext.current = nextRenderContext;
|
|
189
|
-
}, [setRenderContext, prevRenderContext
|
|
199
|
+
}, [setRenderContext, prevRenderContext]);
|
|
190
200
|
React.useEffect(() => {
|
|
191
201
|
if (containerWidth == null) {
|
|
192
202
|
return;
|
|
193
203
|
}
|
|
194
204
|
|
|
195
205
|
const initialRenderContext = computeRenderContext();
|
|
196
|
-
prevRenderContext.current = initialRenderContext;
|
|
197
206
|
updateRenderContext(initialRenderContext);
|
|
198
207
|
const {
|
|
199
208
|
top,
|
|
@@ -204,7 +213,7 @@ const useGridVirtualScroller = props => {
|
|
|
204
213
|
left,
|
|
205
214
|
renderContext: initialRenderContext
|
|
206
215
|
};
|
|
207
|
-
apiRef.current.publishEvent(
|
|
216
|
+
apiRef.current.publishEvent('rowsScroll', params);
|
|
208
217
|
}, [apiRef, computeRenderContext, containerWidth, updateRenderContext]);
|
|
209
218
|
|
|
210
219
|
const handleScroll = event => {
|
|
@@ -227,18 +236,29 @@ const useGridVirtualScroller = props => {
|
|
|
227
236
|
const bottomColumnsScrolledSincePreviousRender = Math.abs(nextRenderContext.lastColumnIndex - prevRenderContext.current.lastColumnIndex);
|
|
228
237
|
const shouldSetState = topRowsScrolledSincePreviousRender >= rootProps.rowThreshold || bottomRowsScrolledSincePreviousRender >= rootProps.rowThreshold || topColumnsScrolledSincePreviousRender >= rootProps.columnThreshold || bottomColumnsScrolledSincePreviousRender >= rootProps.columnThreshold || prevTotalWidth.current !== columnsTotalWidth; // TODO v6: rename event to a wider name, it's not only fired for row scrolling
|
|
229
238
|
|
|
230
|
-
apiRef.current.publishEvent(
|
|
239
|
+
apiRef.current.publishEvent('rowsScroll', {
|
|
231
240
|
top: scrollTop,
|
|
232
241
|
left: scrollLeft,
|
|
233
242
|
renderContext: shouldSetState ? nextRenderContext : prevRenderContext.current
|
|
234
|
-
});
|
|
243
|
+
}, event);
|
|
235
244
|
|
|
236
245
|
if (shouldSetState) {
|
|
237
|
-
|
|
246
|
+
// Prevents batching render context changes
|
|
247
|
+
ReactDOM.flushSync(() => {
|
|
248
|
+
updateRenderContext(nextRenderContext);
|
|
249
|
+
});
|
|
238
250
|
prevTotalWidth.current = columnsTotalWidth;
|
|
239
251
|
}
|
|
240
252
|
};
|
|
241
253
|
|
|
254
|
+
const handleWheel = event => {
|
|
255
|
+
apiRef.current.publishEvent('virtualScrollerWheel', {}, event);
|
|
256
|
+
};
|
|
257
|
+
|
|
258
|
+
const handleTouchMove = event => {
|
|
259
|
+
apiRef.current.publishEvent('virtualScrollerTouchMove', {}, event);
|
|
260
|
+
};
|
|
261
|
+
|
|
242
262
|
const getRows = (params = {
|
|
243
263
|
renderContext
|
|
244
264
|
}) => {
|
|
@@ -262,14 +282,32 @@ const useGridVirtualScroller = props => {
|
|
|
262
282
|
maxLastIndex: currentPage.rows.length,
|
|
263
283
|
buffer: rowBuffer
|
|
264
284
|
});
|
|
265
|
-
const
|
|
285
|
+
const renderedRows = [];
|
|
286
|
+
|
|
287
|
+
for (let i = firstRowToRender; i < lastRowToRender; i += 1) {
|
|
288
|
+
const row = currentPage.rows[i];
|
|
289
|
+
renderedRows.push(row);
|
|
290
|
+
apiRef.current.unstable_calculateColSpan({
|
|
291
|
+
rowId: row.id,
|
|
292
|
+
minFirstColumn,
|
|
293
|
+
maxLastColumn
|
|
294
|
+
});
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
const [initialFirstColumnToRender, lastColumnToRender] = getRenderableIndexes({
|
|
266
298
|
firstIndex: nextRenderContext.firstColumnIndex,
|
|
267
299
|
lastIndex: nextRenderContext.lastColumnIndex,
|
|
268
300
|
minFirstIndex: minFirstColumn,
|
|
269
301
|
maxLastIndex: maxLastColumn,
|
|
270
302
|
buffer: columnBuffer
|
|
271
303
|
});
|
|
272
|
-
const
|
|
304
|
+
const firstColumnToRender = (0, _gridColumnsUtils.getFirstNonSpannedColumnToRender)({
|
|
305
|
+
firstColumnToRender: initialFirstColumnToRender,
|
|
306
|
+
apiRef,
|
|
307
|
+
firstRowToRender,
|
|
308
|
+
lastRowToRender,
|
|
309
|
+
visibleRows: currentPage.rows
|
|
310
|
+
});
|
|
273
311
|
const renderedColumns = visibleColumns.slice(firstColumnToRender, lastColumnToRender);
|
|
274
312
|
const rows = [];
|
|
275
313
|
|
|
@@ -341,7 +379,7 @@ const useGridVirtualScroller = props => {
|
|
|
341
379
|
return size;
|
|
342
380
|
}, [rootRef, columnsTotalWidth, rowsMeta.currentPageTotalHeight, currentPage.rows.length, needsHorizontalScrollbar, rootProps.autoHeight, rowHeight]);
|
|
343
381
|
React.useEffect(() => {
|
|
344
|
-
apiRef.current.publishEvent(
|
|
382
|
+
apiRef.current.publishEvent('virtualScrollerContentSizeChange');
|
|
345
383
|
}, [apiRef, contentSize]);
|
|
346
384
|
|
|
347
385
|
if (rootProps.autoHeight && currentPage.rows.length === 0) {
|
|
@@ -370,6 +408,8 @@ const useGridVirtualScroller = props => {
|
|
|
370
408
|
return (0, _extends2.default)({
|
|
371
409
|
ref: handleRef,
|
|
372
410
|
onScroll: handleScroll,
|
|
411
|
+
onWheel: handleWheel,
|
|
412
|
+
onTouchMove: handleTouchMove,
|
|
373
413
|
style: (0, _extends2.default)({}, style, rootStyle)
|
|
374
414
|
}, other);
|
|
375
415
|
},
|
|
@@ -22,8 +22,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
22
22
|
* Signal to the underlying logic what version of the public component API
|
|
23
23
|
* of the data grid is exposed.
|
|
24
24
|
*/
|
|
25
|
-
var GridSignature;
|
|
26
|
-
|
|
25
|
+
var GridSignature;
|
|
27
26
|
exports.GridSignature = GridSignature;
|
|
28
27
|
|
|
29
28
|
(function (GridSignature) {
|
|
@@ -31,13 +30,18 @@ exports.GridSignature = GridSignature;
|
|
|
31
30
|
GridSignature["DataGridPro"] = "DataGridPro";
|
|
32
31
|
})(GridSignature || (exports.GridSignature = GridSignature = {}));
|
|
33
32
|
|
|
33
|
+
// We use class to make it easier to detect in heap snapshots by name
|
|
34
34
|
class ObjectToBeRetainedByReact {} // Based on https://github.com/Bnaya/use-dispose-uncommitted/blob/main/src/finalization-registry-based-impl.ts
|
|
35
35
|
// Check https://github.com/facebook/react/issues/15317 to get more information
|
|
36
36
|
|
|
37
37
|
|
|
38
|
-
function createUseGridApiEventHandler(
|
|
38
|
+
function createUseGridApiEventHandler(registryContainer) {
|
|
39
39
|
let cleanupTokensCounter = 0;
|
|
40
40
|
return function useGridApiEventHandler(apiRef, eventName, handler, options) {
|
|
41
|
+
if (registryContainer.registry === null) {
|
|
42
|
+
registryContainer.registry = typeof FinalizationRegistry !== 'undefined' ? new _FinalizationRegistryBasedCleanupTracking.FinalizationRegistryBasedCleanupTracking() : new _TimerBasedCleanupTracking.TimerBasedCleanupTracking();
|
|
43
|
+
}
|
|
44
|
+
|
|
41
45
|
const [objectRetainedByReact] = React.useState(new ObjectToBeRetainedByReact());
|
|
42
46
|
const subscription = React.useRef(null);
|
|
43
47
|
const handlerRef = React.useRef();
|
|
@@ -58,7 +62,7 @@ function createUseGridApiEventHandler(registry) {
|
|
|
58
62
|
cleanupTokenRef.current = {
|
|
59
63
|
cleanupToken: cleanupTokensCounter
|
|
60
64
|
};
|
|
61
|
-
registry.register(objectRetainedByReact, // The callback below will be called once this reference stops being retained
|
|
65
|
+
registryContainer.registry.register(objectRetainedByReact, // The callback below will be called once this reference stops being retained
|
|
62
66
|
() => {
|
|
63
67
|
var _subscription$current;
|
|
64
68
|
|
|
@@ -71,7 +75,7 @@ function createUseGridApiEventHandler(registry) {
|
|
|
71
75
|
subscription.current = null;
|
|
72
76
|
|
|
73
77
|
if (cleanupTokenRef.current) {
|
|
74
|
-
registry.unregister(cleanupTokenRef.current);
|
|
78
|
+
registryContainer.registry.unregister(cleanupTokenRef.current);
|
|
75
79
|
cleanupTokenRef.current = null;
|
|
76
80
|
}
|
|
77
81
|
}
|
|
@@ -89,10 +93,10 @@ function createUseGridApiEventHandler(registry) {
|
|
|
89
93
|
subscription.current = apiRef.current.subscribeEvent(eventName, enhancedHandler, options);
|
|
90
94
|
}
|
|
91
95
|
|
|
92
|
-
if (cleanupTokenRef.current && registry) {
|
|
96
|
+
if (cleanupTokenRef.current && registryContainer.registry) {
|
|
93
97
|
// If the effect was called, it means that this render was committed
|
|
94
98
|
// so we can trust the cleanup function to remove the listener.
|
|
95
|
-
registry.unregister(cleanupTokenRef.current);
|
|
99
|
+
registryContainer.registry.unregister(cleanupTokenRef.current);
|
|
96
100
|
cleanupTokenRef.current = null;
|
|
97
101
|
}
|
|
98
102
|
|
|
@@ -106,12 +110,20 @@ function createUseGridApiEventHandler(registry) {
|
|
|
106
110
|
};
|
|
107
111
|
}
|
|
108
112
|
|
|
109
|
-
const
|
|
113
|
+
const registryContainer = {
|
|
114
|
+
registry: null
|
|
115
|
+
}; // TODO: move to @mui/x-data-grid/internals
|
|
116
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
110
117
|
|
|
111
|
-
const unstable_resetCleanupTracking = () =>
|
|
118
|
+
const unstable_resetCleanupTracking = () => {
|
|
119
|
+
var _registryContainer$re;
|
|
120
|
+
|
|
121
|
+
(_registryContainer$re = registryContainer.registry) == null ? void 0 : _registryContainer$re.reset();
|
|
122
|
+
registryContainer.registry = null;
|
|
123
|
+
};
|
|
112
124
|
|
|
113
125
|
exports.unstable_resetCleanupTracking = unstable_resetCleanupTracking;
|
|
114
|
-
const useGridApiEventHandler = createUseGridApiEventHandler(
|
|
126
|
+
const useGridApiEventHandler = createUseGridApiEventHandler(registryContainer);
|
|
115
127
|
exports.useGridApiEventHandler = useGridApiEventHandler;
|
|
116
128
|
const optionsSubscriberOptions = {
|
|
117
129
|
isFirst: true
|
|
@@ -7,8 +7,6 @@ exports.useGridNativeEventListener = void 0;
|
|
|
7
7
|
|
|
8
8
|
var React = _interopRequireWildcard(require("react"));
|
|
9
9
|
|
|
10
|
-
var _events = require("../../models/events");
|
|
11
|
-
|
|
12
10
|
var _utils = require("../../utils/utils");
|
|
13
11
|
|
|
14
12
|
var _useGridLogger = require("./useGridLogger");
|
|
@@ -47,7 +45,7 @@ const useGridNativeEventListener = (apiRef, ref, eventName, handler, options) =>
|
|
|
47
45
|
boundElem.removeEventListener(eventName, wrapHandler, options);
|
|
48
46
|
};
|
|
49
47
|
|
|
50
|
-
apiRef.current.subscribeEvent(
|
|
48
|
+
apiRef.current.subscribeEvent('unmount', unsubscribe);
|
|
51
49
|
}
|
|
52
50
|
}, [ref, wrapHandler, eventName, added, logger, options, apiRef]);
|
|
53
51
|
};
|
|
@@ -8,7 +8,7 @@ exports.useGridSelector = void 0;
|
|
|
8
8
|
var _warning = require("../../utils/warning");
|
|
9
9
|
|
|
10
10
|
function isOutputSelector(selector) {
|
|
11
|
-
return selector.
|
|
11
|
+
return selector.acceptsApiRef;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
const stateNotInitializedWarning = (0, _warning.buildWarning)(['MUI: `useGridSelector` has been called before the initialization of the state.', 'This hook can only be used inside the context of the grid.']);
|
package/node/index.js
CHANGED
package/node/internals/index.js
CHANGED
|
@@ -33,10 +33,16 @@ Object.defineProperty(exports, "GridVirtualScrollerRenderZone", {
|
|
|
33
33
|
return _GridVirtualScrollerRenderZone.GridVirtualScrollerRenderZone;
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
|
+
Object.defineProperty(exports, "buildWarning", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function () {
|
|
39
|
+
return _warning.buildWarning;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
36
42
|
Object.defineProperty(exports, "clamp", {
|
|
37
43
|
enumerable: true,
|
|
38
44
|
get: function () {
|
|
39
|
-
return
|
|
45
|
+
return _utils2.clamp;
|
|
40
46
|
}
|
|
41
47
|
});
|
|
42
48
|
Object.defineProperty(exports, "columnMenuStateInitializer", {
|
|
@@ -57,6 +63,12 @@ Object.defineProperty(exports, "createSelector", {
|
|
|
57
63
|
return _createSelector.createSelector;
|
|
58
64
|
}
|
|
59
65
|
});
|
|
66
|
+
Object.defineProperty(exports, "defaultGetRowsToExport", {
|
|
67
|
+
enumerable: true,
|
|
68
|
+
get: function () {
|
|
69
|
+
return _utils.defaultGetRowsToExport;
|
|
70
|
+
}
|
|
71
|
+
});
|
|
60
72
|
Object.defineProperty(exports, "densityStateInitializer", {
|
|
61
73
|
enumerable: true,
|
|
62
74
|
get: function () {
|
|
@@ -75,6 +87,12 @@ Object.defineProperty(exports, "editingStateInitializer_old", {
|
|
|
75
87
|
return _useGridEditing2.editingStateInitializer;
|
|
76
88
|
}
|
|
77
89
|
});
|
|
90
|
+
Object.defineProperty(exports, "exportAs", {
|
|
91
|
+
enumerable: true,
|
|
92
|
+
get: function () {
|
|
93
|
+
return _exportAs.exportAs;
|
|
94
|
+
}
|
|
95
|
+
});
|
|
78
96
|
Object.defineProperty(exports, "filterStateInitializer", {
|
|
79
97
|
enumerable: true,
|
|
80
98
|
get: function () {
|
|
@@ -93,10 +111,16 @@ Object.defineProperty(exports, "focusStateInitializer", {
|
|
|
93
111
|
return _useGridFocus.focusStateInitializer;
|
|
94
112
|
}
|
|
95
113
|
});
|
|
114
|
+
Object.defineProperty(exports, "getColumnsToExport", {
|
|
115
|
+
enumerable: true,
|
|
116
|
+
get: function () {
|
|
117
|
+
return _utils.getColumnsToExport;
|
|
118
|
+
}
|
|
119
|
+
});
|
|
96
120
|
Object.defineProperty(exports, "isDeepEqual", {
|
|
97
121
|
enumerable: true,
|
|
98
122
|
get: function () {
|
|
99
|
-
return
|
|
123
|
+
return _utils2.isDeepEqual;
|
|
100
124
|
}
|
|
101
125
|
});
|
|
102
126
|
Object.defineProperty(exports, "isNavigationKey", {
|
|
@@ -141,6 +165,12 @@ Object.defineProperty(exports, "sortingStateInitializer", {
|
|
|
141
165
|
return _useGridSorting.sortingStateInitializer;
|
|
142
166
|
}
|
|
143
167
|
});
|
|
168
|
+
Object.defineProperty(exports, "unstable_resetCreateSelectorCache", {
|
|
169
|
+
enumerable: true,
|
|
170
|
+
get: function () {
|
|
171
|
+
return _createSelector.unstable_resetCreateSelectorCache;
|
|
172
|
+
}
|
|
173
|
+
});
|
|
144
174
|
Object.defineProperty(exports, "useGridClipboard", {
|
|
145
175
|
enumerable: true,
|
|
146
176
|
get: function () {
|
|
@@ -159,6 +189,12 @@ Object.defineProperty(exports, "useGridColumnMenu", {
|
|
|
159
189
|
return _useGridColumnMenu.useGridColumnMenu;
|
|
160
190
|
}
|
|
161
191
|
});
|
|
192
|
+
Object.defineProperty(exports, "useGridColumnSpanning", {
|
|
193
|
+
enumerable: true,
|
|
194
|
+
get: function () {
|
|
195
|
+
return _useGridColumnSpanning.useGridColumnSpanning;
|
|
196
|
+
}
|
|
197
|
+
});
|
|
162
198
|
Object.defineProperty(exports, "useGridColumns", {
|
|
163
199
|
enumerable: true,
|
|
164
200
|
get: function () {
|
|
@@ -352,6 +388,8 @@ var _useGridColumnMenu = require("../hooks/features/columnMenu/useGridColumnMenu
|
|
|
352
388
|
|
|
353
389
|
var _useGridColumns = require("../hooks/features/columns/useGridColumns");
|
|
354
390
|
|
|
391
|
+
var _useGridColumnSpanning = require("../hooks/features/columns/useGridColumnSpanning");
|
|
392
|
+
|
|
355
393
|
var _useGridDensity = require("../hooks/features/density/useGridDensity");
|
|
356
394
|
|
|
357
395
|
var _useGridCsvExport = require("../hooks/features/export/useGridCsvExport");
|
|
@@ -400,10 +438,16 @@ var _useGridVisibleRows = require("../hooks/utils/useGridVisibleRows");
|
|
|
400
438
|
|
|
401
439
|
var _useGridInitializeState = require("../hooks/utils/useGridInitializeState");
|
|
402
440
|
|
|
441
|
+
var _utils = require("../hooks/features/export/utils");
|
|
442
|
+
|
|
403
443
|
var _createSelector = require("../utils/createSelector");
|
|
404
444
|
|
|
405
445
|
var _domUtils = require("../utils/domUtils");
|
|
406
446
|
|
|
407
447
|
var _keyboardUtils = require("../utils/keyboardUtils");
|
|
408
448
|
|
|
409
|
-
var
|
|
449
|
+
var _utils2 = require("../utils/utils");
|
|
450
|
+
|
|
451
|
+
var _warning = require("../utils/warning");
|
|
452
|
+
|
|
453
|
+
var _exportAs = require("../utils/exportAs");
|
package/node/locales/arSD.js
CHANGED
|
@@ -29,11 +29,16 @@ const arSDGrid = {
|
|
|
29
29
|
toolbarFiltersTooltipHide: 'إخفاء المرشِحات',
|
|
30
30
|
toolbarFiltersTooltipShow: 'اظهر المرشِحات',
|
|
31
31
|
toolbarFiltersTooltipActive: count => count !== 1 ? `${count} من المرشِحات النشطة` : `مرشِح نشط`,
|
|
32
|
+
// Quick filter toolbar field
|
|
33
|
+
// toolbarQuickFilterPlaceholder: 'Search...',
|
|
34
|
+
// toolbarQuickFilterLabel: 'Search',
|
|
35
|
+
// toolbarQuickFilterDeleteIconLabel: 'Clear',
|
|
32
36
|
// Export selector toolbar button text
|
|
33
37
|
toolbarExport: 'تصدير',
|
|
34
38
|
toolbarExportLabel: 'تصدير',
|
|
35
39
|
toolbarExportCSV: 'تنزيل كملف CSV',
|
|
36
40
|
// toolbarExportPrint: 'Print',
|
|
41
|
+
// toolbarExportExcel: 'Download as Excel',
|
|
37
42
|
// Columns panel text
|
|
38
43
|
columnsPanelTextFieldLabel: 'البحث عن العمود',
|
|
39
44
|
columnsPanelTextFieldPlaceholder: 'عنوان العمود',
|
|
@@ -112,7 +117,9 @@ const arSDGrid = {
|
|
|
112
117
|
unGroupColumn: name => `إيقاف التجميع حسب ${name}`,
|
|
113
118
|
// Master/detail
|
|
114
119
|
expandDetailPanel: 'توسيع',
|
|
115
|
-
collapseDetailPanel: 'طوي'
|
|
120
|
+
collapseDetailPanel: 'طوي' // Row reordering text
|
|
121
|
+
// rowReorderingHeaderName: 'Row reordering',
|
|
122
|
+
|
|
116
123
|
};
|
|
117
124
|
const arSD = (0, _getGridLocalization.getGridLocalization)(arSDGrid, _locale.arSD);
|
|
118
125
|
exports.arSD = arSD;
|