@mui/x-data-grid 5.5.1 → 5.7.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 +229 -0
- package/DataGrid/DataGrid.d.ts +4 -0
- package/DataGrid/DataGrid.js +708 -0
- package/DataGrid/index.d.ts +2 -0
- package/DataGrid/index.js +2 -0
- package/DataGrid/package.json +6 -0
- package/DataGrid/useDataGridComponent.d.ts +4 -0
- package/DataGrid/useDataGridComponent.js +78 -0
- package/DataGrid/useDataGridProps.d.ts +7 -0
- package/DataGrid/useDataGridProps.js +93 -0
- package/colDef/gridActionsColDef.d.ts +3 -0
- package/colDef/gridActionsColDef.js +15 -0
- package/colDef/gridBooleanColDef.d.ts +2 -0
- package/colDef/gridBooleanColDef.js +24 -0
- package/colDef/gridBooleanOperators.d.ts +2 -0
- package/colDef/gridBooleanOperators.js +17 -0
- package/colDef/gridCheckboxSelectionColDef.d.ts +2 -0
- package/colDef/gridCheckboxSelectionColDef.js +24 -0
- package/colDef/gridDateColDef.d.ts +10 -0
- package/colDef/gridDateColDef.js +37 -0
- package/colDef/gridDateOperators.d.ts +2 -0
- package/colDef/gridDateOperators.js +104 -0
- package/colDef/gridNumericColDef.d.ts +2 -0
- package/colDef/gridNumericColDef.js +16 -0
- package/colDef/gridNumericOperators.d.ts +6 -0
- package/colDef/gridNumericOperators.js +177 -0
- package/colDef/gridSingleSelectColDef.d.ts +2 -0
- package/colDef/gridSingleSelectColDef.js +9 -0
- package/colDef/gridSingleSelectOperators.d.ts +2 -0
- package/colDef/gridSingleSelectOperators.js +49 -0
- package/colDef/gridStringColDef.d.ts +2 -0
- package/colDef/gridStringColDef.js +21 -0
- package/colDef/gridStringOperators.d.ts +2 -0
- package/colDef/gridStringOperators.js +103 -0
- package/colDef/index.d.ts +12 -0
- package/colDef/index.js +12 -0
- package/colDef/package.json +6 -0
- package/components/DataGridColumnHeaders.d.ts +6 -0
- package/components/DataGridColumnHeaders.js +38 -0
- package/components/DataGridVirtualScroller.d.ts +6 -0
- package/components/DataGridVirtualScroller.js +36 -0
- package/components/ErrorBoundary.d.ts +20 -0
- package/components/ErrorBoundary.js +37 -0
- package/components/ErrorOverlay.d.ts +8 -0
- package/components/ErrorOverlay.js +29 -0
- package/components/GridApiContext.d.ts +2 -0
- package/components/GridApiContext.js +6 -0
- package/components/GridAutoSizer.d.ts +44 -0
- package/components/GridAutoSizer.js +144 -0
- package/components/GridFooter.d.ts +3 -0
- package/components/GridFooter.js +37 -0
- package/components/GridHeader.d.ts +2 -0
- package/components/GridHeader.js +15 -0
- package/components/GridLoadingOverlay.d.ts +5 -0
- package/components/GridLoadingOverlay.js +21 -0
- package/components/GridNoResultsOverlay.d.ts +4 -0
- package/components/GridNoResultsOverlay.js +14 -0
- package/components/GridNoRowsOverlay.d.ts +5 -0
- package/components/GridNoRowsOverlay.js +23 -0
- package/components/GridPagination.d.ts +2 -0
- package/components/GridPagination.js +66 -0
- package/components/GridRow.d.ts +30 -0
- package/components/GridRow.js +295 -0
- package/components/GridRowCount.d.ts +7 -0
- package/components/GridRowCount.js +70 -0
- package/components/GridScrollArea.d.ts +10 -0
- package/components/GridScrollArea.js +124 -0
- package/components/GridSelectedRowCount.d.ts +6 -0
- package/components/GridSelectedRowCount.js +71 -0
- package/components/base/GridBody.d.ts +17 -0
- package/components/base/GridBody.js +86 -0
- package/components/base/GridErrorHandler.d.ts +8 -0
- package/components/base/GridErrorHandler.js +42 -0
- package/components/base/GridFooterPlaceholder.d.ts +2 -0
- package/components/base/GridFooterPlaceholder.js +22 -0
- package/components/base/GridHeaderPlaceholder.d.ts +2 -0
- package/components/base/GridHeaderPlaceholder.js +17 -0
- package/components/base/GridOverlays.d.ts +2 -0
- package/components/base/GridOverlays.js +87 -0
- package/components/base/index.d.ts +5 -0
- package/components/base/index.js +5 -0
- package/components/cell/GridActionsCell.d.ts +10 -0
- package/components/cell/GridActionsCell.js +120 -0
- package/components/cell/GridActionsCellItem.d.ts +17 -0
- package/components/cell/GridActionsCellItem.js +56 -0
- package/components/cell/GridBooleanCell.d.ts +9 -0
- package/components/cell/GridBooleanCell.js +46 -0
- package/components/cell/GridCell.d.ts +33 -0
- package/components/cell/GridCell.js +218 -0
- package/components/cell/GridEditBooleanCell.d.ts +5 -0
- package/components/cell/GridEditBooleanCell.js +73 -0
- package/components/cell/GridEditDateCell.d.ts +6 -0
- package/components/cell/GridEditDateCell.js +124 -0
- package/components/cell/GridEditInputCell.d.ts +13 -0
- package/components/cell/GridEditInputCell.js +162 -0
- package/components/cell/GridEditSingleSelectCell.d.ts +10 -0
- package/components/cell/GridEditSingleSelectCell.js +223 -0
- package/components/cell/index.d.ts +5 -0
- package/components/cell/index.js +5 -0
- package/components/columnHeaders/ColumnHeaderFilterIcon.d.ts +5 -0
- package/components/columnHeaders/ColumnHeaderFilterIcon.js +82 -0
- package/components/columnHeaders/ColumnHeaderMenuIcon.d.ts +10 -0
- package/components/columnHeaders/ColumnHeaderMenuIcon.js +62 -0
- package/components/columnHeaders/GridColumnHeaderItem.d.ts +26 -0
- package/components/columnHeaders/GridColumnHeaderItem.js +242 -0
- package/components/columnHeaders/GridColumnHeaderSeparator.d.ts +17 -0
- package/components/columnHeaders/GridColumnHeaderSeparator.js +80 -0
- package/components/columnHeaders/GridColumnHeaderSortIcon.d.ts +13 -0
- package/components/columnHeaders/GridColumnHeaderSortIcon.js +90 -0
- package/components/columnHeaders/GridColumnHeaderTitle.d.ts +11 -0
- package/components/columnHeaders/GridColumnHeaderTitle.js +95 -0
- package/components/columnHeaders/GridColumnHeaders.d.ts +6 -0
- package/components/columnHeaders/GridColumnHeaders.js +58 -0
- package/components/columnHeaders/GridColumnHeadersInner.d.ts +6 -0
- package/components/columnHeaders/GridColumnHeadersInner.js +62 -0
- package/components/columnHeaders/GridColumnUnsortedIcon.d.ts +8 -0
- package/components/columnHeaders/GridColumnUnsortedIcon.js +17 -0
- package/components/columnHeaders/GridIconButtonContainer.d.ts +3 -0
- package/components/columnHeaders/GridIconButtonContainer.js +46 -0
- package/components/columnHeaders/index.d.ts +4 -0
- package/components/columnHeaders/index.js +4 -0
- package/components/columnSelection/GridCellCheckboxRenderer.d.ts +5 -0
- package/components/columnSelection/GridCellCheckboxRenderer.js +169 -0
- package/components/columnSelection/GridHeaderCheckbox.d.ts +4 -0
- package/components/columnSelection/GridHeaderCheckbox.js +139 -0
- package/components/columnSelection/index.d.ts +2 -0
- package/components/columnSelection/index.js +2 -0
- package/components/containers/GridFooterContainer.d.ts +3 -0
- package/components/containers/GridFooterContainer.js +54 -0
- package/components/containers/GridMainContainer.d.ts +2 -0
- package/components/containers/GridMainContainer.js +39 -0
- package/components/containers/GridOverlay.d.ts +10 -0
- package/components/containers/GridOverlay.js +60 -0
- package/components/containers/GridRoot.d.ts +11 -0
- package/components/containers/GridRoot.js +60 -0
- package/components/containers/GridRootStyles.d.ts +2 -0
- package/components/containers/GridRootStyles.js +357 -0
- package/components/containers/GridToolbarContainer.d.ts +3 -0
- package/components/containers/GridToolbarContainer.js +56 -0
- package/components/containers/index.d.ts +4 -0
- package/components/containers/index.js +4 -0
- package/components/icons/index.d.ts +69 -0
- package/components/icons/index.js +72 -0
- package/components/index.d.ts +20 -0
- package/components/index.js +20 -0
- package/components/menu/GridMenu.d.ts +17 -0
- package/components/menu/GridMenu.js +126 -0
- package/components/menu/columnMenu/GridColumnHeaderMenu.d.ts +17 -0
- package/components/menu/columnMenu/GridColumnHeaderMenu.js +61 -0
- package/components/menu/columnMenu/GridColumnMenu.d.ts +4 -0
- package/components/menu/columnMenu/GridColumnMenu.js +55 -0
- package/components/menu/columnMenu/GridColumnMenuContainer.d.ts +4 -0
- package/components/menu/columnMenu/GridColumnMenuContainer.js +53 -0
- package/components/menu/columnMenu/GridColumnMenuProps.d.ts +9 -0
- package/components/menu/columnMenu/GridColumnMenuProps.js +1 -0
- package/components/menu/columnMenu/GridColumnsMenuItem.d.ts +7 -0
- package/components/menu/columnMenu/GridColumnsMenuItem.js +38 -0
- package/components/menu/columnMenu/GridFilterItemProps.d.ts +6 -0
- package/components/menu/columnMenu/GridFilterItemProps.js +1 -0
- package/components/menu/columnMenu/GridFilterMenuItem.d.ts +7 -0
- package/components/menu/columnMenu/GridFilterMenuItem.js +38 -0
- package/components/menu/columnMenu/HideGridColMenuItem.d.ts +7 -0
- package/components/menu/columnMenu/HideGridColMenuItem.js +64 -0
- package/components/menu/columnMenu/SortGridMenuItems.d.ts +7 -0
- package/components/menu/columnMenu/SortGridMenuItems.js +62 -0
- package/components/menu/columnMenu/index.d.ts +9 -0
- package/components/menu/columnMenu/index.js +9 -0
- package/components/menu/index.d.ts +2 -0
- package/components/menu/index.js +2 -0
- package/components/package.json +6 -0
- package/components/panel/GridColumnsPanel.d.ts +5 -0
- package/components/panel/GridColumnsPanel.js +159 -0
- package/components/panel/GridPanel.d.ts +22 -0
- package/components/panel/GridPanel.js +111 -0
- package/components/panel/GridPanelContent.d.ts +2 -0
- package/components/panel/GridPanelContent.js +47 -0
- package/components/panel/GridPanelFooter.d.ts +2 -0
- package/components/panel/GridPanelFooter.js +47 -0
- package/components/panel/GridPanelHeader.d.ts +2 -0
- package/components/panel/GridPanelHeader.js +45 -0
- package/components/panel/GridPanelWrapper.d.ts +7 -0
- package/components/panel/GridPanelWrapper.js +60 -0
- package/components/panel/GridPreferencesPanel.d.ts +2 -0
- package/components/panel/GridPreferencesPanel.js +25 -0
- package/components/panel/filterPanel/GridFilterForm.d.ts +25 -0
- package/components/panel/filterPanel/GridFilterForm.js +350 -0
- package/components/panel/filterPanel/GridFilterInputBoolean.d.ts +4 -0
- package/components/panel/filterPanel/GridFilterInputBoolean.js +56 -0
- package/components/panel/filterPanel/GridFilterInputDate.d.ts +12 -0
- package/components/panel/filterPanel/GridFilterInputDate.js +92 -0
- package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.d.ts +16 -0
- package/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +136 -0
- package/components/panel/filterPanel/GridFilterInputMultipleValue.d.ts +15 -0
- package/components/panel/filterPanel/GridFilterInputMultipleValue.js +88 -0
- package/components/panel/filterPanel/GridFilterInputSingleSelect.d.ts +11 -0
- package/components/panel/filterPanel/GridFilterInputSingleSelect.js +122 -0
- package/components/panel/filterPanel/GridFilterInputValue.d.ts +12 -0
- package/components/panel/filterPanel/GridFilterInputValue.js +138 -0
- package/components/panel/filterPanel/GridFilterInputValueProps.d.ts +8 -0
- package/components/panel/filterPanel/GridFilterInputValueProps.js +1 -0
- package/components/panel/filterPanel/GridFilterPanel.d.ts +12 -0
- package/components/panel/filterPanel/GridFilterPanel.js +143 -0
- package/components/panel/filterPanel/filterPanelUtils.d.ts +2 -0
- package/components/panel/filterPanel/filterPanelUtils.js +18 -0
- package/components/panel/filterPanel/index.d.ts +8 -0
- package/components/panel/filterPanel/index.js +8 -0
- package/components/panel/index.d.ts +8 -0
- package/components/panel/index.js +8 -0
- package/components/toolbar/GridToolbar.d.ts +7 -0
- package/components/toolbar/GridToolbar.js +44 -0
- package/components/toolbar/GridToolbarColumnsButton.d.ts +3 -0
- package/components/toolbar/GridToolbarColumnsButton.js +52 -0
- package/components/toolbar/GridToolbarDensitySelector.d.ts +3 -0
- package/components/toolbar/GridToolbarDensitySelector.js +125 -0
- package/components/toolbar/GridToolbarExport.d.ts +24 -0
- package/components/toolbar/GridToolbarExport.js +77 -0
- package/components/toolbar/GridToolbarExportContainer.d.ts +3 -0
- package/components/toolbar/GridToolbarExportContainer.js +90 -0
- package/components/toolbar/GridToolbarFilterButton.d.ts +14 -0
- package/components/toolbar/GridToolbarFilterButton.js +137 -0
- package/components/toolbar/index.d.ts +6 -0
- package/components/toolbar/index.js +6 -0
- package/components/virtualization/GridVirtualScroller.d.ts +3 -0
- package/components/virtualization/GridVirtualScroller.js +48 -0
- package/components/virtualization/GridVirtualScrollerContent.d.ts +3 -0
- package/components/virtualization/GridVirtualScrollerContent.js +49 -0
- package/components/virtualization/GridVirtualScrollerRenderZone.d.ts +3 -0
- package/components/virtualization/GridVirtualScrollerRenderZone.js +48 -0
- package/constants/defaultGridSlotsComponents.d.ts +5 -0
- package/constants/defaultGridSlotsComponents.js +66 -0
- package/constants/envConstants.d.ts +1 -0
- package/constants/envConstants.js +27 -0
- package/constants/gridClasses.d.ts +378 -0
- package/constants/gridClasses.js +5 -0
- package/constants/index.d.ts +4 -0
- package/constants/index.js +4 -0
- package/constants/localeTextConstants.d.ts +2 -0
- package/constants/localeTextConstants.js +107 -0
- package/constants/package.json +6 -0
- package/context/GridContextProvider.d.ts +9 -0
- package/context/GridContextProvider.js +17 -0
- package/context/GridRootPropsContext.d.ts +3 -0
- package/context/GridRootPropsContext.js +8 -0
- package/context/index.d.ts +1 -0
- package/context/index.js +1 -0
- package/context/package.json +6 -0
- package/hooks/core/index.d.ts +1 -0
- package/hooks/core/index.js +1 -0
- package/hooks/core/preProcessing/gridPreProcessingApi.d.ts +67 -0
- package/hooks/core/preProcessing/gridPreProcessingApi.js +1 -0
- package/hooks/core/preProcessing/index.d.ts +3 -0
- package/hooks/core/preProcessing/index.js +3 -0
- package/hooks/core/preProcessing/useGridPreProcessing.d.ts +6 -0
- package/hooks/core/preProcessing/useGridPreProcessing.js +53 -0
- package/hooks/core/preProcessing/useGridRegisterPreProcessor.d.ts +7 -0
- package/hooks/core/preProcessing/useGridRegisterPreProcessor.js +31 -0
- package/hooks/core/strategyProcessing/gridStrategyProcessingApi.d.ts +58 -0
- package/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +1 -0
- package/hooks/core/strategyProcessing/index.d.ts +3 -0
- package/hooks/core/strategyProcessing/index.js +3 -0
- package/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.d.ts +4 -0
- package/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +18 -0
- package/hooks/core/strategyProcessing/useGridStrategyProcessing.d.ts +37 -0
- package/hooks/core/strategyProcessing/useGridStrategyProcessing.js +114 -0
- package/hooks/core/useGridApiInitialization.d.ts +4 -0
- package/hooks/core/useGridApiInitialization.js +60 -0
- package/hooks/core/useGridErrorHandler.d.ts +4 -0
- package/hooks/core/useGridErrorHandler.js +16 -0
- package/hooks/core/useGridInitialization.d.ts +7 -0
- package/hooks/core/useGridInitialization.js +21 -0
- package/hooks/core/useGridLocaleText.d.ts +4 -0
- package/hooks/core/useGridLocaleText.js +15 -0
- package/hooks/core/useGridLoggerFactory.d.ts +4 -0
- package/hooks/core/useGridLoggerFactory.js +49 -0
- package/hooks/core/useGridStateInitialization.d.ts +4 -0
- package/hooks/core/useGridStateInitialization.js +102 -0
- package/hooks/features/clipboard/useGridClipboard.d.ts +7 -0
- package/hooks/features/clipboard/useGridClipboard.js +71 -0
- package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +29 -0
- package/hooks/features/columnHeaders/useGridColumnHeaders.js +147 -0
- package/hooks/features/columnMenu/columnMenuSelector.d.ts +2 -0
- package/hooks/features/columnMenu/columnMenuSelector.js +1 -0
- package/hooks/features/columnMenu/columnMenuState.d.ts +4 -0
- package/hooks/features/columnMenu/columnMenuState.js +1 -0
- package/hooks/features/columnMenu/index.d.ts +2 -0
- package/hooks/features/columnMenu/index.js +2 -0
- package/hooks/features/columnMenu/useGridColumnMenu.d.ts +9 -0
- package/hooks/features/columnMenu/useGridColumnMenu.js +83 -0
- package/hooks/features/columns/gridColumnsInterfaces.d.ts +28 -0
- package/hooks/features/columns/gridColumnsInterfaces.js +1 -0
- package/hooks/features/columns/gridColumnsSelector.d.ts +106 -0
- package/hooks/features/columns/gridColumnsSelector.js +148 -0
- package/hooks/features/columns/gridColumnsUtils.d.ts +54 -0
- package/hooks/features/columns/gridColumnsUtils.js +365 -0
- package/hooks/features/columns/index.d.ts +3 -0
- package/hooks/features/columns/index.js +2 -0
- package/hooks/features/columns/useGridColumns.d.ts +11 -0
- package/hooks/features/columns/useGridColumns.js +331 -0
- package/hooks/features/density/densitySelector.d.ts +6 -0
- package/hooks/features/density/densitySelector.js +6 -0
- package/hooks/features/density/densityState.d.ts +7 -0
- package/hooks/features/density/densityState.js +1 -0
- package/hooks/features/density/index.d.ts +2 -0
- package/hooks/features/density/index.js +2 -0
- package/hooks/features/density/useGridDensity.d.ts +8 -0
- package/hooks/features/density/useGridDensity.js +67 -0
- package/hooks/features/dimensions/gridDimensionsApi.d.ts +36 -0
- package/hooks/features/dimensions/gridDimensionsApi.js +1 -0
- package/hooks/features/dimensions/index.d.ts +1 -0
- package/hooks/features/dimensions/index.js +1 -0
- package/hooks/features/dimensions/useGridDimensions.d.ts +4 -0
- package/hooks/features/dimensions/useGridDimensions.js +180 -0
- package/hooks/features/editRows/gridEditRowsSelector.d.ts +2 -0
- package/hooks/features/editRows/gridEditRowsSelector.js +2 -0
- package/hooks/features/editRows/index.d.ts +1 -0
- package/hooks/features/editRows/index.js +1 -0
- package/hooks/features/editRows/useGridCellEditing.new.d.ts +4 -0
- package/hooks/features/editRows/useGridCellEditing.new.js +315 -0
- package/hooks/features/editRows/useGridCellEditing.old.d.ts +4 -0
- package/hooks/features/editRows/useGridCellEditing.old.js +354 -0
- package/hooks/features/editRows/useGridEditing.new.d.ts +6 -0
- package/hooks/features/editRows/useGridEditing.new.js +118 -0
- package/hooks/features/editRows/useGridEditing.old.d.ts +11 -0
- package/hooks/features/editRows/useGridEditing.old.js +167 -0
- package/hooks/features/editRows/useGridRowEditing.new.d.ts +4 -0
- package/hooks/features/editRows/useGridRowEditing.new.js +486 -0
- package/hooks/features/editRows/useGridRowEditing.old.d.ts +4 -0
- package/hooks/features/editRows/useGridRowEditing.old.js +329 -0
- package/hooks/features/events/useGridEvents.d.ts +8 -0
- package/hooks/features/events/useGridEvents.js +24 -0
- package/hooks/features/export/serializers/csvSerializer.d.ts +12 -0
- package/hooks/features/export/serializers/csvSerializer.js +48 -0
- package/hooks/features/export/useGridCsvExport.d.ts +10 -0
- package/hooks/features/export/useGridCsvExport.js +65 -0
- package/hooks/features/export/useGridPrintExport.d.ts +10 -0
- package/hooks/features/export/useGridPrintExport.js +227 -0
- package/hooks/features/export/utils.d.ts +13 -0
- package/hooks/features/export/utils.js +14 -0
- package/hooks/features/filter/gridFilterSelector.d.ts +100 -0
- package/hooks/features/filter/gridFilterSelector.js +144 -0
- package/hooks/features/filter/gridFilterState.d.ts +39 -0
- package/hooks/features/filter/gridFilterState.js +5 -0
- package/hooks/features/filter/gridFilterUtils.d.ts +14 -0
- package/hooks/features/filter/gridFilterUtils.js +156 -0
- package/hooks/features/filter/index.d.ts +3 -0
- package/hooks/features/filter/index.js +2 -0
- package/hooks/features/filter/useGridFilter.d.ts +11 -0
- package/hooks/features/filter/useGridFilter.js +269 -0
- package/hooks/features/focus/gridFocusState.d.ts +16 -0
- package/hooks/features/focus/gridFocusState.js +1 -0
- package/hooks/features/focus/gridFocusStateSelector.d.ts +8 -0
- package/hooks/features/focus/gridFocusStateSelector.js +7 -0
- package/hooks/features/focus/index.d.ts +2 -0
- package/hooks/features/focus/index.js +2 -0
- package/hooks/features/focus/useGridFocus.d.ts +11 -0
- package/hooks/features/focus/useGridFocus.js +248 -0
- package/hooks/features/index.d.ts +13 -0
- package/hooks/features/index.js +14 -0
- package/hooks/features/keyboard/useGridKeyboard.d.ts +10 -0
- package/hooks/features/keyboard/useGridKeyboard.js +70 -0
- package/hooks/features/keyboard/useGridKeyboardNavigation.d.ts +15 -0
- package/hooks/features/keyboard/useGridKeyboardNavigation.js +272 -0
- package/hooks/features/pagination/gridPaginationInterfaces.d.ts +35 -0
- package/hooks/features/pagination/gridPaginationInterfaces.js +1 -0
- package/hooks/features/pagination/gridPaginationSelector.d.ts +44 -0
- package/hooks/features/pagination/gridPaginationSelector.js +97 -0
- package/hooks/features/pagination/index.d.ts +2 -0
- package/hooks/features/pagination/index.js +2 -0
- package/hooks/features/pagination/useGridPage.d.ts +8 -0
- package/hooks/features/pagination/useGridPage.js +140 -0
- package/hooks/features/pagination/useGridPageSize.d.ts +8 -0
- package/hooks/features/pagination/useGridPageSize.js +116 -0
- package/hooks/features/pagination/useGridPagination.d.ts +10 -0
- package/hooks/features/pagination/useGridPagination.js +34 -0
- package/hooks/features/preferencesPanel/gridPreferencePanelSelector.d.ts +2 -0
- package/hooks/features/preferencesPanel/gridPreferencePanelSelector.js +1 -0
- package/hooks/features/preferencesPanel/gridPreferencePanelState.d.ts +11 -0
- package/hooks/features/preferencesPanel/gridPreferencePanelState.js +1 -0
- package/hooks/features/preferencesPanel/gridPreferencePanelsValue.d.ts +5 -0
- package/hooks/features/preferencesPanel/gridPreferencePanelsValue.js +8 -0
- package/hooks/features/preferencesPanel/index.d.ts +3 -0
- package/hooks/features/preferencesPanel/index.js +3 -0
- package/hooks/features/preferencesPanel/useGridPreferencesPanel.d.ts +9 -0
- package/hooks/features/preferencesPanel/useGridPreferencesPanel.js +100 -0
- package/hooks/features/rows/gridRowsMetaSelector.d.ts +2 -0
- package/hooks/features/rows/gridRowsMetaSelector.js +1 -0
- package/hooks/features/rows/gridRowsMetaState.d.ts +13 -0
- package/hooks/features/rows/gridRowsMetaState.js +1 -0
- package/hooks/features/rows/gridRowsSelector.d.ts +9 -0
- package/hooks/features/rows/gridRowsSelector.js +9 -0
- package/hooks/features/rows/gridRowsState.d.ts +44 -0
- package/hooks/features/rows/gridRowsState.js +1 -0
- package/hooks/features/rows/index.d.ts +4 -0
- package/hooks/features/rows/index.js +4 -0
- package/hooks/features/rows/useGridParamsApi.d.ts +11 -0
- package/hooks/features/rows/useGridParamsApi.js +175 -0
- package/hooks/features/rows/useGridRows.d.ts +6 -0
- package/hooks/features/rows/useGridRows.js +319 -0
- package/hooks/features/rows/useGridRowsMeta.d.ts +10 -0
- package/hooks/features/rows/useGridRowsMeta.js +137 -0
- package/hooks/features/rows/useGridRowsPreProcessors.d.ts +3 -0
- package/hooks/features/rows/useGridRowsPreProcessors.js +37 -0
- package/hooks/features/scroll/useGridScroll.d.ts +10 -0
- package/hooks/features/scroll/useGridScroll.js +128 -0
- package/hooks/features/selection/gridSelectionSelector.d.ts +8 -0
- package/hooks/features/selection/gridSelectionSelector.js +9 -0
- package/hooks/features/selection/index.d.ts +1 -0
- package/hooks/features/selection/index.js +1 -0
- package/hooks/features/selection/useGridSelection.d.ts +10 -0
- package/hooks/features/selection/useGridSelection.js +364 -0
- package/hooks/features/selection/useGridSelectionPreProcessors.d.ts +4 -0
- package/hooks/features/selection/useGridSelectionPreProcessors.js +47 -0
- package/hooks/features/sorting/gridSortingSelector.d.ts +36 -0
- package/hooks/features/sorting/gridSortingSelector.js +44 -0
- package/hooks/features/sorting/gridSortingState.d.ts +14 -0
- package/hooks/features/sorting/gridSortingState.js +1 -0
- package/hooks/features/sorting/gridSortingUtils.d.ts +18 -0
- package/hooks/features/sorting/gridSortingUtils.js +157 -0
- package/hooks/features/sorting/index.d.ts +3 -0
- package/hooks/features/sorting/index.js +2 -0
- package/hooks/features/sorting/useGridSorting.d.ts +10 -0
- package/hooks/features/sorting/useGridSorting.js +251 -0
- package/hooks/features/statePersistence/gridStatePersistenceInterface.d.ts +24 -0
- package/hooks/features/statePersistence/gridStatePersistenceInterface.js +1 -0
- package/hooks/features/statePersistence/index.d.ts +1 -0
- package/hooks/features/statePersistence/index.js +1 -0
- package/hooks/features/statePersistence/useGridStatePersistence.d.ts +3 -0
- package/hooks/features/statePersistence/useGridStatePersistence.js +24 -0
- package/hooks/features/virtualization/useGridVirtualScroller.d.ts +837 -0
- package/hooks/features/virtualization/useGridVirtualScroller.js +352 -0
- package/hooks/index.d.ts +3 -0
- package/hooks/index.js +3 -0
- package/hooks/package.json +6 -0
- package/hooks/utils/index.d.ts +9 -0
- package/hooks/utils/index.js +9 -0
- package/hooks/utils/useFirstRender.d.ts +1 -0
- package/hooks/utils/useFirstRender.js +9 -0
- package/hooks/utils/useGridApi.d.ts +6 -0
- package/hooks/utils/useGridApi.js +13 -0
- package/hooks/utils/useGridApiContext.d.ts +4 -0
- package/hooks/utils/useGridApiContext.js +11 -0
- package/hooks/utils/useGridApiEventHandler.d.ts +18 -0
- package/hooks/utils/useGridApiEventHandler.js +101 -0
- package/hooks/utils/useGridApiMethod.d.ts +3 -0
- package/hooks/utils/useGridApiMethod.js +25 -0
- package/hooks/utils/useGridApiRef.d.ts +7 -0
- package/hooks/utils/useGridApiRef.js +6 -0
- package/hooks/utils/useGridInitializeState.d.ts +10 -0
- package/hooks/utils/useGridInitializeState.js +9 -0
- package/hooks/utils/useGridLogger.d.ts +4 -0
- package/hooks/utils/useGridLogger.js +12 -0
- package/hooks/utils/useGridNativeEventListener.d.ts +3 -0
- package/hooks/utils/useGridNativeEventListener.js +38 -0
- package/hooks/utils/useGridRootProps.d.ts +2 -0
- package/hooks/utils/useGridRootProps.js +11 -0
- package/hooks/utils/useGridScrollFn.d.ts +4 -0
- package/hooks/utils/useGridScrollFn.js +22 -0
- package/hooks/utils/useGridSelector.d.ts +4 -0
- package/hooks/utils/useGridSelector.js +20 -0
- package/hooks/utils/useGridState.d.ts +7 -0
- package/hooks/utils/useGridState.js +13 -0
- package/hooks/utils/useGridVisibleRows.d.ts +24 -0
- package/hooks/utils/useGridVisibleRows.js +43 -0
- package/index.d.ts +32 -0
- package/index.js +17 -0
- package/internals/index.d.ts +53 -0
- package/internals/index.js +41 -0
- package/internals/package.json +6 -0
- package/legacy/DataGrid/DataGrid.js +710 -0
- package/legacy/DataGrid/index.js +2 -0
- package/legacy/DataGrid/useDataGridComponent.js +78 -0
- package/legacy/DataGrid/useDataGridProps.js +102 -0
- package/legacy/colDef/gridActionsColDef.js +15 -0
- package/legacy/colDef/gridBooleanColDef.js +23 -0
- package/legacy/colDef/gridBooleanOperators.js +18 -0
- package/legacy/colDef/gridCheckboxSelectionColDef.js +28 -0
- package/legacy/colDef/gridDateColDef.js +37 -0
- package/legacy/colDef/gridDateOperators.js +124 -0
- package/legacy/colDef/gridNumericColDef.js +19 -0
- package/legacy/colDef/gridNumericOperators.js +174 -0
- package/legacy/colDef/gridSingleSelectColDef.js +9 -0
- package/legacy/colDef/gridSingleSelectOperators.js +55 -0
- package/legacy/colDef/gridStringColDef.js +21 -0
- package/legacy/colDef/gridStringOperators.js +100 -0
- package/legacy/colDef/index.js +12 -0
- package/legacy/components/DataGridColumnHeaders.js +37 -0
- package/legacy/components/DataGridVirtualScroller.js +34 -0
- package/legacy/components/ErrorBoundary.js +64 -0
- package/legacy/components/ErrorOverlay.js +29 -0
- package/legacy/components/GridApiContext.js +6 -0
- package/legacy/components/GridAutoSizer.js +151 -0
- package/legacy/components/GridFooter.js +37 -0
- package/legacy/components/GridHeader.js +15 -0
- package/legacy/components/GridLoadingOverlay.js +21 -0
- package/legacy/components/GridNoResultsOverlay.js +14 -0
- package/legacy/components/GridNoRowsOverlay.js +23 -0
- package/legacy/components/GridPagination.js +67 -0
- package/legacy/components/GridRow.js +298 -0
- package/legacy/components/GridRowCount.js +69 -0
- package/legacy/components/GridScrollArea.js +129 -0
- package/legacy/components/GridSelectedRowCount.js +70 -0
- package/legacy/components/base/GridBody.js +90 -0
- package/legacy/components/base/GridErrorHandler.js +40 -0
- package/legacy/components/base/GridFooterPlaceholder.js +22 -0
- package/legacy/components/base/GridHeaderPlaceholder.js +17 -0
- package/legacy/components/base/GridOverlays.js +93 -0
- package/legacy/components/base/index.js +5 -0
- package/legacy/components/cell/GridActionsCell.js +146 -0
- package/legacy/components/cell/GridActionsCellItem.js +54 -0
- package/legacy/components/cell/GridBooleanCell.js +55 -0
- package/legacy/components/cell/GridCell.js +220 -0
- package/legacy/components/cell/GridEditBooleanCell.js +88 -0
- package/legacy/components/cell/GridEditDateCell.js +150 -0
- package/legacy/components/cell/GridEditInputCell.js +178 -0
- package/legacy/components/cell/GridEditSingleSelectCell.js +276 -0
- package/legacy/components/cell/index.js +5 -0
- package/legacy/components/columnHeaders/ColumnHeaderFilterIcon.js +78 -0
- package/legacy/components/columnHeaders/ColumnHeaderMenuIcon.js +58 -0
- package/legacy/components/columnHeaders/GridColumnHeaderItem.js +246 -0
- package/legacy/components/columnHeaders/GridColumnHeaderSeparator.js +79 -0
- package/legacy/components/columnHeaders/GridColumnHeaderSortIcon.js +86 -0
- package/legacy/components/columnHeaders/GridColumnHeaderTitle.js +98 -0
- package/legacy/components/columnHeaders/GridColumnHeaders.js +56 -0
- package/legacy/components/columnHeaders/GridColumnHeadersInner.js +61 -0
- package/legacy/components/columnHeaders/GridColumnUnsortedIcon.js +19 -0
- package/legacy/components/columnHeaders/GridIconButtonContainer.js +46 -0
- package/legacy/components/columnHeaders/index.js +4 -0
- package/legacy/components/columnSelection/GridCellCheckboxRenderer.js +172 -0
- package/legacy/components/columnSelection/GridHeaderCheckbox.js +149 -0
- package/legacy/components/columnSelection/index.js +2 -0
- package/legacy/components/containers/GridFooterContainer.js +51 -0
- package/legacy/components/containers/GridMainContainer.js +41 -0
- package/legacy/components/containers/GridOverlay.js +59 -0
- package/legacy/components/containers/GridRoot.js +58 -0
- package/legacy/components/containers/GridRootStyles.js +227 -0
- package/legacy/components/containers/GridToolbarContainer.js +55 -0
- package/legacy/components/containers/index.js +4 -0
- package/legacy/components/icons/index.js +72 -0
- package/legacy/components/index.js +20 -0
- package/legacy/components/menu/GridMenu.js +128 -0
- package/legacy/components/menu/columnMenu/GridColumnHeaderMenu.js +60 -0
- package/legacy/components/menu/columnMenu/GridColumnMenu.js +55 -0
- package/legacy/components/menu/columnMenu/GridColumnMenuContainer.js +52 -0
- package/legacy/components/menu/columnMenu/GridColumnMenuProps.js +1 -0
- package/legacy/components/menu/columnMenu/GridColumnsMenuItem.js +36 -0
- package/legacy/components/menu/columnMenu/GridFilterItemProps.js +1 -0
- package/legacy/components/menu/columnMenu/GridFilterMenuItem.js +36 -0
- package/legacy/components/menu/columnMenu/HideGridColMenuItem.js +66 -0
- package/legacy/components/menu/columnMenu/SortGridMenuItems.js +62 -0
- package/legacy/components/menu/columnMenu/index.js +9 -0
- package/legacy/components/menu/index.js +2 -0
- package/legacy/components/panel/GridColumnsPanel.js +175 -0
- package/legacy/components/panel/GridPanel.js +126 -0
- package/legacy/components/panel/GridPanelContent.js +45 -0
- package/legacy/components/panel/GridPanelFooter.js +46 -0
- package/legacy/components/panel/GridPanelHeader.js +44 -0
- package/legacy/components/panel/GridPanelWrapper.js +60 -0
- package/legacy/components/panel/GridPreferencesPanel.js +25 -0
- package/legacy/components/panel/filterPanel/GridFilterForm.js +386 -0
- package/legacy/components/panel/filterPanel/GridFilterInputBoolean.js +59 -0
- package/legacy/components/panel/filterPanel/GridFilterInputDate.js +100 -0
- package/legacy/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +151 -0
- package/legacy/components/panel/filterPanel/GridFilterInputMultipleValue.js +96 -0
- package/legacy/components/panel/filterPanel/GridFilterInputSingleSelect.js +128 -0
- package/legacy/components/panel/filterPanel/GridFilterInputValue.js +149 -0
- package/legacy/components/panel/filterPanel/GridFilterInputValueProps.js +1 -0
- package/legacy/components/panel/filterPanel/GridFilterPanel.js +145 -0
- package/legacy/components/panel/filterPanel/filterPanelUtils.js +19 -0
- package/legacy/components/panel/filterPanel/index.js +8 -0
- package/legacy/components/panel/index.js +8 -0
- package/legacy/components/toolbar/GridToolbar.js +43 -0
- package/legacy/components/toolbar/GridToolbarColumnsButton.js +50 -0
- package/legacy/components/toolbar/GridToolbarDensitySelector.js +135 -0
- package/legacy/components/toolbar/GridToolbarExport.js +73 -0
- package/legacy/components/toolbar/GridToolbarExportContainer.js +96 -0
- package/legacy/components/toolbar/GridToolbarFilterButton.js +139 -0
- package/legacy/components/toolbar/index.js +6 -0
- package/legacy/components/virtualization/GridVirtualScroller.js +46 -0
- package/legacy/components/virtualization/GridVirtualScrollerContent.js +47 -0
- package/legacy/components/virtualization/GridVirtualScrollerRenderZone.js +46 -0
- package/legacy/constants/defaultGridSlotsComponents.js +66 -0
- package/legacy/constants/envConstants.js +27 -0
- package/legacy/constants/gridClasses.js +5 -0
- package/legacy/constants/index.js +4 -0
- package/legacy/constants/localeTextConstants.js +119 -0
- package/legacy/context/GridContextProvider.js +16 -0
- package/legacy/context/GridRootPropsContext.js +8 -0
- package/legacy/context/index.js +1 -0
- package/legacy/hooks/core/index.js +1 -0
- package/legacy/hooks/core/preProcessing/gridPreProcessingApi.js +1 -0
- package/legacy/hooks/core/preProcessing/index.js +3 -0
- package/legacy/hooks/core/preProcessing/useGridPreProcessing.js +62 -0
- package/legacy/hooks/core/preProcessing/useGridRegisterPreProcessor.js +31 -0
- package/legacy/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +1 -0
- package/legacy/hooks/core/strategyProcessing/index.js +3 -0
- package/legacy/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +18 -0
- package/legacy/hooks/core/strategyProcessing/useGridStrategyProcessing.js +119 -0
- package/legacy/hooks/core/useGridApiInitialization.js +69 -0
- package/legacy/hooks/core/useGridErrorHandler.js +18 -0
- package/legacy/hooks/core/useGridInitialization.js +21 -0
- package/legacy/hooks/core/useGridLocaleText.js +15 -0
- package/legacy/hooks/core/useGridLoggerFactory.js +59 -0
- package/legacy/hooks/core/useGridStateInitialization.js +110 -0
- package/legacy/hooks/features/clipboard/useGridClipboard.js +73 -0
- package/legacy/hooks/features/columnHeaders/useGridColumnHeaders.js +179 -0
- package/legacy/hooks/features/columnMenu/columnMenuSelector.js +3 -0
- package/legacy/hooks/features/columnMenu/columnMenuState.js +1 -0
- package/legacy/hooks/features/columnMenu/index.js +2 -0
- package/legacy/hooks/features/columnMenu/useGridColumnMenu.js +85 -0
- package/legacy/hooks/features/columns/gridColumnsInterfaces.js +1 -0
- package/legacy/hooks/features/columns/gridColumnsSelector.js +182 -0
- package/legacy/hooks/features/columns/gridColumnsUtils.js +381 -0
- package/legacy/hooks/features/columns/index.js +2 -0
- package/legacy/hooks/features/columns/useGridColumns.js +354 -0
- package/legacy/hooks/features/density/densitySelector.js +16 -0
- package/legacy/hooks/features/density/densityState.js +1 -0
- package/legacy/hooks/features/density/index.js +2 -0
- package/legacy/hooks/features/density/useGridDensity.js +71 -0
- package/legacy/hooks/features/dimensions/gridDimensionsApi.js +1 -0
- package/legacy/hooks/features/dimensions/index.js +1 -0
- package/legacy/hooks/features/dimensions/useGridDimensions.js +186 -0
- package/legacy/hooks/features/editRows/gridEditRowsSelector.js +4 -0
- package/legacy/hooks/features/editRows/index.js +1 -0
- package/legacy/hooks/features/editRows/useGridCellEditing.new.js +329 -0
- package/legacy/hooks/features/editRows/useGridCellEditing.old.js +404 -0
- package/legacy/hooks/features/editRows/useGridEditing.new.js +152 -0
- package/legacy/hooks/features/editRows/useGridEditing.old.js +184 -0
- package/legacy/hooks/features/editRows/useGridRowEditing.new.js +493 -0
- package/legacy/hooks/features/editRows/useGridRowEditing.old.js +498 -0
- package/legacy/hooks/features/events/useGridEvents.js +24 -0
- package/legacy/hooks/features/export/serializers/csvSerializer.js +56 -0
- package/legacy/hooks/features/export/useGridCsvExport.js +67 -0
- package/legacy/hooks/features/export/useGridPrintExport.js +265 -0
- package/legacy/hooks/features/export/utils.js +21 -0
- package/legacy/hooks/features/filter/gridFilterSelector.js +176 -0
- package/legacy/hooks/features/filter/gridFilterState.js +7 -0
- package/legacy/hooks/features/filter/gridFilterUtils.js +177 -0
- package/legacy/hooks/features/filter/index.js +2 -0
- package/legacy/hooks/features/filter/useGridFilter.js +284 -0
- package/legacy/hooks/features/focus/gridFocusState.js +1 -0
- package/legacy/hooks/features/focus/gridFocusStateSelector.js +19 -0
- package/legacy/hooks/features/focus/index.js +2 -0
- package/legacy/hooks/features/focus/useGridFocus.js +256 -0
- package/legacy/hooks/features/index.js +14 -0
- package/legacy/hooks/features/keyboard/useGridKeyboard.js +70 -0
- package/legacy/hooks/features/keyboard/useGridKeyboardNavigation.js +274 -0
- package/legacy/hooks/features/pagination/gridPaginationInterfaces.js +1 -0
- package/legacy/hooks/features/pagination/gridPaginationSelector.js +107 -0
- package/legacy/hooks/features/pagination/index.js +2 -0
- package/legacy/hooks/features/pagination/useGridPage.js +144 -0
- package/legacy/hooks/features/pagination/useGridPageSize.js +122 -0
- package/legacy/hooks/features/pagination/useGridPagination.js +34 -0
- package/legacy/hooks/features/preferencesPanel/gridPreferencePanelSelector.js +3 -0
- package/legacy/hooks/features/preferencesPanel/gridPreferencePanelState.js +1 -0
- package/legacy/hooks/features/preferencesPanel/gridPreferencePanelsValue.js +8 -0
- package/legacy/hooks/features/preferencesPanel/index.js +3 -0
- package/legacy/hooks/features/preferencesPanel/useGridPreferencesPanel.js +108 -0
- package/legacy/hooks/features/rows/gridRowsMetaSelector.js +3 -0
- package/legacy/hooks/features/rows/gridRowsMetaState.js +1 -0
- package/legacy/hooks/features/rows/gridRowsSelector.js +25 -0
- package/legacy/hooks/features/rows/gridRowsState.js +1 -0
- package/legacy/hooks/features/rows/index.js +4 -0
- package/legacy/hooks/features/rows/useGridParamsApi.js +179 -0
- package/legacy/hooks/features/rows/useGridRows.js +331 -0
- package/legacy/hooks/features/rows/useGridRowsMeta.js +139 -0
- package/legacy/hooks/features/rows/useGridRowsPreProcessors.js +36 -0
- package/legacy/hooks/features/scroll/useGridScroll.js +127 -0
- package/legacy/hooks/features/selection/gridSelectionSelector.js +19 -0
- package/legacy/hooks/features/selection/index.js +1 -0
- package/legacy/hooks/features/selection/useGridSelection.js +390 -0
- package/legacy/hooks/features/selection/useGridSelectionPreProcessors.js +48 -0
- package/legacy/hooks/features/sorting/gridSortingSelector.js +54 -0
- package/legacy/hooks/features/sorting/gridSortingState.js +1 -0
- package/legacy/hooks/features/sorting/gridSortingUtils.js +181 -0
- package/legacy/hooks/features/sorting/index.js +2 -0
- package/legacy/hooks/features/sorting/useGridSorting.js +270 -0
- package/legacy/hooks/features/statePersistence/gridStatePersistenceInterface.js +1 -0
- package/legacy/hooks/features/statePersistence/index.js +1 -0
- package/legacy/hooks/features/statePersistence/useGridStatePersistence.js +24 -0
- package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +385 -0
- package/legacy/hooks/index.js +3 -0
- package/legacy/hooks/utils/index.js +9 -0
- package/legacy/hooks/utils/useFirstRender.js +9 -0
- package/legacy/hooks/utils/useGridApi.js +13 -0
- package/legacy/hooks/utils/useGridApiContext.js +11 -0
- package/legacy/hooks/utils/useGridApiEventHandler.js +111 -0
- package/legacy/hooks/utils/useGridApiMethod.js +34 -0
- package/legacy/hooks/utils/useGridApiRef.js +8 -0
- package/legacy/hooks/utils/useGridInitializeState.js +9 -0
- package/legacy/hooks/utils/useGridLogger.js +12 -0
- package/legacy/hooks/utils/useGridNativeEventListener.js +44 -0
- package/legacy/hooks/utils/useGridRootProps.js +11 -0
- package/legacy/hooks/utils/useGridScrollFn.js +22 -0
- package/legacy/hooks/utils/useGridSelector.js +20 -0
- package/legacy/hooks/utils/useGridState.js +13 -0
- package/legacy/hooks/utils/useGridVisibleRows.js +45 -0
- package/legacy/index.js +17 -0
- package/legacy/internals/index.js +41 -0
- package/legacy/lib/createDetectElementResize/index.js +168 -0
- package/legacy/locales/arSD.js +120 -0
- package/legacy/locales/bgBG.js +120 -0
- package/legacy/locales/csCZ.js +147 -0
- package/legacy/locales/daDK.js +116 -0
- package/legacy/locales/deDE.js +120 -0
- package/legacy/locales/elGR.js +115 -0
- package/legacy/locales/enUS.js +4 -0
- package/legacy/locales/esES.js +116 -0
- package/legacy/locales/faIR.js +120 -0
- package/legacy/locales/fiFI.js +116 -0
- package/legacy/locales/frFR.js +120 -0
- package/legacy/locales/heIL.js +120 -0
- package/legacy/locales/index.js +25 -0
- package/legacy/locales/itIT.js +120 -0
- package/legacy/locales/jaJP.js +116 -0
- package/legacy/locales/koKR.js +116 -0
- package/legacy/locales/nlNL.js +120 -0
- package/legacy/locales/plPL.js +120 -0
- package/legacy/locales/ptBR.js +120 -0
- package/legacy/locales/ruRU.js +147 -0
- package/legacy/locales/skSK.js +147 -0
- package/legacy/locales/trTR.js +120 -0
- package/legacy/locales/ukUA.js +142 -0
- package/legacy/locales/viVN.js +116 -0
- package/legacy/locales/zhCN.js +116 -0
- package/legacy/models/api/gridApiCommon.js +1 -0
- package/legacy/models/api/gridApiCommunity.js +1 -0
- package/legacy/models/api/gridCallbackDetails.js +1 -0
- package/legacy/models/api/gridClipboardApi.js +1 -0
- package/legacy/models/api/gridColumnApi.js +1 -0
- package/legacy/models/api/gridColumnMenuApi.js +1 -0
- package/legacy/models/api/gridCoreApi.js +1 -0
- package/legacy/models/api/gridCsvExportApi.js +1 -0
- package/legacy/models/api/gridDensityApi.js +1 -0
- package/legacy/models/api/gridDisableVirtualizationApi.js +1 -0
- package/legacy/models/api/gridEditingApi.js +1 -0
- package/legacy/models/api/gridFilterApi.js +1 -0
- package/legacy/models/api/gridFocusApi.js +1 -0
- package/legacy/models/api/gridLocaleTextApi.js +1 -0
- package/legacy/models/api/gridLoggerApi.js +1 -0
- package/legacy/models/api/gridParamsApi.js +1 -0
- package/legacy/models/api/gridPreferencesPanelApi.js +1 -0
- package/legacy/models/api/gridPrintExportApi.js +1 -0
- package/legacy/models/api/gridRowApi.js +1 -0
- package/legacy/models/api/gridRowsMetaApi.js +1 -0
- package/legacy/models/api/gridScrollApi.js +1 -0
- package/legacy/models/api/gridSelectionApi.js +1 -0
- package/legacy/models/api/gridSortApi.js +1 -0
- package/legacy/models/api/gridStateApi.js +1 -0
- package/legacy/models/api/gridVirtualScrollerApi.js +1 -0
- package/legacy/models/api/index.js +23 -0
- package/legacy/models/colDef/gridColDef.js +1 -0
- package/legacy/models/colDef/gridColType.js +1 -0
- package/legacy/models/colDef/gridColumnTypesRecord.js +1 -0
- package/legacy/models/colDef/gridDefaultColumnTypes.js +21 -0
- package/legacy/models/colDef/index.js +6 -0
- package/legacy/models/controlStateItem.js +1 -0
- package/legacy/models/cursorCoordinates.js +1 -0
- package/legacy/models/elementSize.js +1 -0
- package/legacy/models/events/gridEventListener.js +1 -0
- package/legacy/models/events/gridEventLookup.js +1 -0
- package/legacy/models/events/gridEventPublisher.js +1 -0
- package/legacy/models/events/gridEvents.js +78 -0
- package/legacy/models/events/index.js +4 -0
- package/legacy/models/gridCell.js +1 -0
- package/legacy/models/gridCellClass.js +1 -0
- package/legacy/models/gridColumnHeaderClass.js +1 -0
- package/legacy/models/gridDensity.js +16 -0
- package/legacy/models/gridEditRowModel.js +23 -0
- package/legacy/models/gridExport.js +1 -0
- package/legacy/models/gridFeatureMode.js +4 -0
- package/legacy/models/gridFilterItem.js +11 -0
- package/legacy/models/gridFilterModel.js +1 -0
- package/legacy/models/gridFilterOperator.js +1 -0
- package/legacy/models/gridIconSlotsComponent.js +1 -0
- package/legacy/models/gridPaginationProps.js +1 -0
- package/legacy/models/gridRenderContextProps.js +1 -0
- package/legacy/models/gridRootContainerRef.js +1 -0
- package/legacy/models/gridRows.js +33 -0
- package/legacy/models/gridSelectionModel.js +1 -0
- package/legacy/models/gridSlotsComponent.js +1 -0
- package/legacy/models/gridSlotsComponentsProps.js +1 -0
- package/legacy/models/gridSortModel.js +1 -0
- package/legacy/models/gridStateCommunity.js +1 -0
- package/legacy/models/index.js +26 -0
- package/legacy/models/logger.js +1 -0
- package/legacy/models/muiEvent.js +1 -0
- package/legacy/models/params/gridCellParams.js +1 -0
- package/legacy/models/params/gridColumnHeaderParams.js +1 -0
- package/legacy/models/params/gridColumnOrderChangeParams.js +1 -0
- package/legacy/models/params/gridColumnResizeParams.js +1 -0
- package/legacy/models/params/gridColumnVisibilityChangeParams.js +1 -0
- package/legacy/models/params/gridEditCellParams.js +34 -0
- package/legacy/models/params/gridHeaderSelectionCheckboxParams.js +1 -0
- package/legacy/models/params/gridRowParams.js +39 -0
- package/legacy/models/params/gridRowSelectionCheckboxParams.js +1 -0
- package/legacy/models/params/gridScrollParams.js +1 -0
- package/legacy/models/params/gridSortModelParams.js +1 -0
- package/legacy/models/params/gridValueOptionsParams.js +1 -0
- package/legacy/models/params/index.js +12 -0
- package/legacy/models/props/DataGridProps.js +1 -0
- package/legacy/themeAugmentation/index.js +3 -0
- package/legacy/themeAugmentation/overrides.js +1 -0
- package/legacy/themeAugmentation/props.js +1 -0
- package/legacy/utils/EventManager.js +107 -0
- package/legacy/utils/cleanupTracking/CleanupTracking.js +1 -0
- package/legacy/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +31 -0
- package/legacy/utils/cleanupTracking/TimerBasedCleanupTracking.js +61 -0
- package/legacy/utils/createSelector.js +47 -0
- package/legacy/utils/domUtils.js +43 -0
- package/legacy/utils/exportAs.js +36 -0
- package/legacy/utils/getGridLocalization.js +16 -0
- package/legacy/utils/index.js +1 -0
- package/legacy/utils/keyboardUtils.js +55 -0
- package/legacy/utils/utils.js +183 -0
- package/legacy/utils/warning.js +27 -0
- package/lib/createDetectElementResize/index.d.ts +18 -0
- package/lib/createDetectElementResize/index.js +168 -0
- package/lib/createDetectElementResize/types.d.ts +9 -0
- package/locales/arSD.d.ts +2 -0
- package/locales/arSD.js +108 -0
- package/locales/bgBG.d.ts +2 -0
- package/locales/bgBG.js +108 -0
- package/locales/csCZ.d.ts +2 -0
- package/locales/csCZ.js +143 -0
- package/locales/daDK.d.ts +2 -0
- package/locales/daDK.js +108 -0
- package/locales/deDE.d.ts +2 -0
- package/locales/deDE.js +108 -0
- package/locales/elGR.d.ts +2 -0
- package/locales/elGR.js +107 -0
- package/locales/enUS.d.ts +2 -0
- package/locales/enUS.js +4 -0
- package/locales/esES.d.ts +2 -0
- package/locales/esES.js +108 -0
- package/locales/faIR.d.ts +2 -0
- package/locales/faIR.js +108 -0
- package/locales/fiFI.d.ts +2 -0
- package/locales/fiFI.js +108 -0
- package/locales/frFR.d.ts +2 -0
- package/locales/frFR.js +108 -0
- package/locales/heIL.d.ts +2 -0
- package/locales/heIL.js +108 -0
- package/locales/index.d.ts +24 -0
- package/locales/index.js +25 -0
- package/locales/itIT.d.ts +2 -0
- package/locales/itIT.js +108 -0
- package/locales/jaJP.d.ts +2 -0
- package/locales/jaJP.js +108 -0
- package/locales/koKR.d.ts +2 -0
- package/locales/koKR.js +108 -0
- package/locales/nlNL.d.ts +2 -0
- package/locales/nlNL.js +108 -0
- package/locales/package.json +6 -0
- package/locales/plPL.d.ts +2 -0
- package/locales/plPL.js +108 -0
- package/locales/ptBR.d.ts +2 -0
- package/locales/ptBR.js +108 -0
- package/locales/ruRU.d.ts +2 -0
- package/locales/ruRU.js +141 -0
- package/locales/skSK.d.ts +2 -0
- package/locales/skSK.js +143 -0
- package/locales/trTR.d.ts +2 -0
- package/locales/trTR.js +108 -0
- package/locales/ukUA.d.ts +2 -0
- package/locales/ukUA.js +134 -0
- package/locales/viVN.d.ts +2 -0
- package/locales/viVN.js +108 -0
- package/locales/zhCN.d.ts +2 -0
- package/locales/zhCN.js +108 -0
- package/models/api/gridApiCommon.d.ts +33 -0
- package/models/api/gridApiCommon.js +1 -0
- package/models/api/gridApiCommunity.d.ts +13 -0
- package/models/api/gridApiCommunity.js +1 -0
- package/models/api/gridCallbackDetails.d.ts +10 -0
- package/models/api/gridCallbackDetails.js +1 -0
- package/models/api/gridClipboardApi.d.ts +12 -0
- package/models/api/gridClipboardApi.js +1 -0
- package/models/api/gridColumnApi.d.ts +78 -0
- package/models/api/gridColumnApi.js +1 -0
- package/models/api/gridColumnMenuApi.d.ts +19 -0
- package/models/api/gridColumnMenuApi.js +1 -0
- package/models/api/gridCoreApi.d.ts +73 -0
- package/models/api/gridCoreApi.js +1 -0
- package/models/api/gridCsvExportApi.d.ts +18 -0
- package/models/api/gridCsvExportApi.js +1 -0
- package/models/api/gridDensityApi.d.ts +19 -0
- package/models/api/gridDensityApi.js +1 -0
- package/models/api/gridDisableVirtualizationApi.d.ts +15 -0
- package/models/api/gridDisableVirtualizationApi.js +1 -0
- package/models/api/gridEditingApi.d.ts +240 -0
- package/models/api/gridEditingApi.js +1 -0
- package/models/api/gridFilterApi.d.ts +47 -0
- package/models/api/gridFilterApi.js +1 -0
- package/models/api/gridFocusApi.d.ts +25 -0
- package/models/api/gridFocusApi.js +1 -0
- package/models/api/gridLocaleTextApi.d.ts +101 -0
- package/models/api/gridLocaleTextApi.js +1 -0
- package/models/api/gridLoggerApi.d.ts +12 -0
- package/models/api/gridLoggerApi.js +1 -0
- package/models/api/gridParamsApi.d.ts +53 -0
- package/models/api/gridParamsApi.js +1 -0
- package/models/api/gridPreferencesPanelApi.d.ts +15 -0
- package/models/api/gridPreferencesPanelApi.js +1 -0
- package/models/api/gridPrintExportApi.d.ts +11 -0
- package/models/api/gridPrintExportApi.js +1 -0
- package/models/api/gridRowApi.d.ts +55 -0
- package/models/api/gridRowApi.js +1 -0
- package/models/api/gridRowsMetaApi.d.ts +27 -0
- package/models/api/gridRowsMetaApi.js +1 -0
- package/models/api/gridScrollApi.d.ts +24 -0
- package/models/api/gridScrollApi.js +1 -0
- package/models/api/gridSelectionApi.d.ts +49 -0
- package/models/api/gridSelectionApi.js +1 -0
- package/models/api/gridSortApi.d.ts +54 -0
- package/models/api/gridSortApi.js +1 -0
- package/models/api/gridStateApi.d.ts +26 -0
- package/models/api/gridStateApi.js +1 -0
- package/models/api/gridVirtualScrollerApi.d.ts +9 -0
- package/models/api/gridVirtualScrollerApi.js +1 -0
- package/models/api/index.d.ts +25 -0
- package/models/api/index.js +23 -0
- package/models/colDef/gridColDef.d.ts +244 -0
- package/models/colDef/gridColDef.js +1 -0
- package/models/colDef/gridColType.d.ts +2 -0
- package/models/colDef/gridColType.js +1 -0
- package/models/colDef/gridColumnTypesRecord.d.ts +3 -0
- package/models/colDef/gridColumnTypesRecord.js +1 -0
- package/models/colDef/gridDefaultColumnTypes.d.ts +3 -0
- package/models/colDef/gridDefaultColumnTypes.js +20 -0
- package/models/colDef/index.d.ts +4 -0
- package/models/colDef/index.js +6 -0
- package/models/controlStateItem.d.ts +14 -0
- package/models/controlStateItem.js +1 -0
- package/models/cursorCoordinates.d.ts +4 -0
- package/models/cursorCoordinates.js +1 -0
- package/models/elementSize.d.ts +13 -0
- package/models/elementSize.js +1 -0
- package/models/events/gridEventListener.d.ts +9 -0
- package/models/events/gridEventListener.js +1 -0
- package/models/events/gridEventLookup.d.ts +264 -0
- package/models/events/gridEventLookup.js +1 -0
- package/models/events/gridEventPublisher.d.ts +30 -0
- package/models/events/gridEventPublisher.js +1 -0
- package/models/events/gridEvents.d.ts +328 -0
- package/models/events/gridEvents.js +78 -0
- package/models/events/index.d.ts +4 -0
- package/models/events/index.js +4 -0
- package/models/gridCell.d.ts +25 -0
- package/models/gridCell.js +1 -0
- package/models/gridCellClass.d.ts +9 -0
- package/models/gridCellClass.js +1 -0
- package/models/gridColumnHeaderClass.d.ts +9 -0
- package/models/gridColumnHeaderClass.js +1 -0
- package/models/gridDensity.d.ts +13 -0
- package/models/gridDensity.js +16 -0
- package/models/gridEditRowModel.d.ts +27 -0
- package/models/gridEditRowModel.js +23 -0
- package/models/gridExport.d.ts +95 -0
- package/models/gridExport.js +1 -0
- package/models/gridFeatureMode.d.ts +5 -0
- package/models/gridFeatureMode.js +4 -0
- package/models/gridFilterItem.d.ts +29 -0
- package/models/gridFilterItem.js +11 -0
- package/models/gridFilterModel.d.ts +16 -0
- package/models/gridFilterModel.js +1 -0
- package/models/gridFilterOperator.d.ts +37 -0
- package/models/gridFilterOperator.js +1 -0
- package/models/gridIconSlotsComponent.d.ts +117 -0
- package/models/gridIconSlotsComponent.js +1 -0
- package/models/gridPaginationProps.d.ts +8 -0
- package/models/gridPaginationProps.js +1 -0
- package/models/gridRenderContextProps.d.ts +55 -0
- package/models/gridRenderContextProps.js +1 -0
- package/models/gridRootContainerRef.d.ts +5 -0
- package/models/gridRootContainerRef.js +1 -0
- package/models/gridRows.d.ts +96 -0
- package/models/gridRows.js +31 -0
- package/models/gridSelectionModel.d.ts +3 -0
- package/models/gridSelectionModel.js +1 -0
- package/models/gridSlotsComponent.d.ts +124 -0
- package/models/gridSlotsComponent.js +1 -0
- package/models/gridSlotsComponentsProps.d.ts +28 -0
- package/models/gridSlotsComponentsProps.js +1 -0
- package/models/gridSortModel.d.ts +34 -0
- package/models/gridSortModel.js +1 -0
- package/models/gridStateCommunity.d.ts +35 -0
- package/models/gridStateCommunity.js +1 -0
- package/models/index.d.ts +26 -0
- package/models/index.js +26 -0
- package/models/logger.d.ts +6 -0
- package/models/logger.js +1 -0
- package/models/muiEvent.d.ts +5 -0
- package/models/muiEvent.js +1 -0
- package/models/package.json +6 -0
- package/models/params/gridCellParams.d.ts +157 -0
- package/models/params/gridCellParams.js +1 -0
- package/models/params/gridColumnHeaderParams.d.ts +14 -0
- package/models/params/gridColumnHeaderParams.js +1 -0
- package/models/params/gridColumnOrderChangeParams.d.ts +26 -0
- package/models/params/gridColumnOrderChangeParams.js +1 -0
- package/models/params/gridColumnResizeParams.d.ts +19 -0
- package/models/params/gridColumnResizeParams.js +1 -0
- package/models/params/gridColumnVisibilityChangeParams.d.ts +18 -0
- package/models/params/gridColumnVisibilityChangeParams.js +1 -0
- package/models/params/gridEditCellParams.d.ts +73 -0
- package/models/params/gridEditCellParams.js +34 -0
- package/models/params/gridHeaderSelectionCheckboxParams.d.ts +3 -0
- package/models/params/gridHeaderSelectionCheckboxParams.js +1 -0
- package/models/params/gridRowParams.d.ts +109 -0
- package/models/params/gridRowParams.js +39 -0
- package/models/params/gridRowSelectionCheckboxParams.d.ts +5 -0
- package/models/params/gridRowSelectionCheckboxParams.js +1 -0
- package/models/params/gridScrollParams.d.ts +12 -0
- package/models/params/gridScrollParams.js +1 -0
- package/models/params/gridSortModelParams.d.ts +20 -0
- package/models/params/gridSortModelParams.js +1 -0
- package/models/params/gridValueOptionsParams.d.ts +18 -0
- package/models/params/gridValueOptionsParams.js +1 -0
- package/models/params/index.d.ts +12 -0
- package/models/params/index.js +12 -0
- package/models/props/DataGridProps.d.ts +669 -0
- package/models/props/DataGridProps.js +1 -0
- package/modern/DataGrid/DataGrid.js +708 -0
- package/modern/DataGrid/index.js +2 -0
- package/modern/DataGrid/useDataGridComponent.js +76 -0
- package/modern/DataGrid/useDataGridProps.js +93 -0
- package/modern/colDef/gridActionsColDef.js +15 -0
- package/modern/colDef/gridBooleanColDef.js +24 -0
- package/modern/colDef/gridBooleanOperators.js +17 -0
- package/modern/colDef/gridCheckboxSelectionColDef.js +24 -0
- package/modern/colDef/gridDateColDef.js +37 -0
- package/modern/colDef/gridDateOperators.js +104 -0
- package/modern/colDef/gridNumericColDef.js +16 -0
- package/modern/colDef/gridNumericOperators.js +177 -0
- package/modern/colDef/gridSingleSelectColDef.js +9 -0
- package/modern/colDef/gridSingleSelectOperators.js +49 -0
- package/modern/colDef/gridStringColDef.js +21 -0
- package/modern/colDef/gridStringOperators.js +103 -0
- package/modern/colDef/index.js +12 -0
- package/modern/components/DataGridColumnHeaders.js +38 -0
- package/modern/components/DataGridVirtualScroller.js +36 -0
- package/modern/components/ErrorBoundary.js +35 -0
- package/modern/components/ErrorOverlay.js +29 -0
- package/modern/components/GridApiContext.js +6 -0
- package/modern/components/GridAutoSizer.js +142 -0
- package/modern/components/GridFooter.js +35 -0
- package/modern/components/GridHeader.js +13 -0
- package/modern/components/GridLoadingOverlay.js +21 -0
- package/modern/components/GridNoResultsOverlay.js +14 -0
- package/modern/components/GridNoRowsOverlay.js +23 -0
- package/modern/components/GridPagination.js +60 -0
- package/modern/components/GridRow.js +287 -0
- package/modern/components/GridRowCount.js +70 -0
- package/modern/components/GridScrollArea.js +124 -0
- package/modern/components/GridSelectedRowCount.js +71 -0
- package/modern/components/base/GridBody.js +86 -0
- package/modern/components/base/GridErrorHandler.js +38 -0
- package/modern/components/base/GridFooterPlaceholder.js +20 -0
- package/modern/components/base/GridHeaderPlaceholder.js +15 -0
- package/modern/components/base/GridOverlays.js +73 -0
- package/modern/components/base/index.js +5 -0
- package/modern/components/cell/GridActionsCell.js +120 -0
- package/modern/components/cell/GridActionsCellItem.js +56 -0
- package/modern/components/cell/GridBooleanCell.js +46 -0
- package/modern/components/cell/GridCell.js +216 -0
- package/modern/components/cell/GridEditBooleanCell.js +71 -0
- package/modern/components/cell/GridEditDateCell.js +122 -0
- package/modern/components/cell/GridEditInputCell.js +160 -0
- package/modern/components/cell/GridEditSingleSelectCell.js +217 -0
- package/modern/components/cell/index.js +5 -0
- package/modern/components/columnHeaders/ColumnHeaderFilterIcon.js +80 -0
- package/modern/components/columnHeaders/ColumnHeaderMenuIcon.js +62 -0
- package/modern/components/columnHeaders/GridColumnHeaderItem.js +240 -0
- package/modern/components/columnHeaders/GridColumnHeaderSeparator.js +80 -0
- package/modern/components/columnHeaders/GridColumnHeaderSortIcon.js +90 -0
- package/modern/components/columnHeaders/GridColumnHeaderTitle.js +93 -0
- package/modern/components/columnHeaders/GridColumnHeaders.js +58 -0
- package/modern/components/columnHeaders/GridColumnHeadersInner.js +60 -0
- package/modern/components/columnHeaders/GridColumnUnsortedIcon.js +17 -0
- package/modern/components/columnHeaders/GridIconButtonContainer.js +46 -0
- package/modern/components/columnHeaders/index.js +4 -0
- package/modern/components/columnSelection/GridCellCheckboxRenderer.js +165 -0
- package/modern/components/columnSelection/GridHeaderCheckbox.js +137 -0
- package/modern/components/columnSelection/index.js +2 -0
- package/modern/components/containers/GridFooterContainer.js +54 -0
- package/modern/components/containers/GridMainContainer.js +39 -0
- package/modern/components/containers/GridOverlay.js +60 -0
- package/modern/components/containers/GridRoot.js +58 -0
- package/modern/components/containers/GridRootStyles.js +357 -0
- package/modern/components/containers/GridToolbarContainer.js +56 -0
- package/modern/components/containers/index.js +4 -0
- package/modern/components/icons/index.js +72 -0
- package/modern/components/index.js +20 -0
- package/modern/components/menu/GridMenu.js +124 -0
- package/modern/components/menu/columnMenu/GridColumnHeaderMenu.js +61 -0
- package/modern/components/menu/columnMenu/GridColumnMenu.js +55 -0
- package/modern/components/menu/columnMenu/GridColumnMenuContainer.js +53 -0
- package/modern/components/menu/columnMenu/GridColumnMenuProps.js +1 -0
- package/modern/components/menu/columnMenu/GridColumnsMenuItem.js +38 -0
- package/modern/components/menu/columnMenu/GridFilterItemProps.js +1 -0
- package/modern/components/menu/columnMenu/GridFilterMenuItem.js +38 -0
- package/modern/components/menu/columnMenu/HideGridColMenuItem.js +64 -0
- package/modern/components/menu/columnMenu/SortGridMenuItems.js +62 -0
- package/modern/components/menu/columnMenu/index.js +9 -0
- package/modern/components/menu/index.js +2 -0
- package/modern/components/panel/GridColumnsPanel.js +153 -0
- package/modern/components/panel/GridPanel.js +109 -0
- package/modern/components/panel/GridPanelContent.js +47 -0
- package/modern/components/panel/GridPanelFooter.js +47 -0
- package/modern/components/panel/GridPanelHeader.js +45 -0
- package/modern/components/panel/GridPanelWrapper.js +60 -0
- package/modern/components/panel/GridPreferencesPanel.js +23 -0
- package/modern/components/panel/filterPanel/GridFilterForm.js +344 -0
- package/modern/components/panel/filterPanel/GridFilterInputBoolean.js +54 -0
- package/modern/components/panel/filterPanel/GridFilterInputDate.js +88 -0
- package/modern/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +136 -0
- package/modern/components/panel/filterPanel/GridFilterInputMultipleValue.js +86 -0
- package/modern/components/panel/filterPanel/GridFilterInputSingleSelect.js +118 -0
- package/modern/components/panel/filterPanel/GridFilterInputValue.js +134 -0
- package/modern/components/panel/filterPanel/GridFilterInputValueProps.js +1 -0
- package/modern/components/panel/filterPanel/GridFilterPanel.js +137 -0
- package/modern/components/panel/filterPanel/filterPanelUtils.js +18 -0
- package/modern/components/panel/filterPanel/index.js +8 -0
- package/modern/components/panel/index.js +8 -0
- package/modern/components/toolbar/GridToolbar.js +44 -0
- package/modern/components/toolbar/GridToolbarColumnsButton.js +50 -0
- package/modern/components/toolbar/GridToolbarDensitySelector.js +123 -0
- package/modern/components/toolbar/GridToolbarExport.js +77 -0
- package/modern/components/toolbar/GridToolbarExportContainer.js +88 -0
- package/modern/components/toolbar/GridToolbarFilterButton.js +133 -0
- package/modern/components/toolbar/index.js +6 -0
- package/modern/components/virtualization/GridVirtualScroller.js +48 -0
- package/modern/components/virtualization/GridVirtualScrollerContent.js +49 -0
- package/modern/components/virtualization/GridVirtualScrollerRenderZone.js +48 -0
- package/modern/constants/defaultGridSlotsComponents.js +66 -0
- package/modern/constants/envConstants.js +27 -0
- package/modern/constants/gridClasses.js +5 -0
- package/modern/constants/index.js +4 -0
- package/modern/constants/localeTextConstants.js +107 -0
- package/modern/context/GridContextProvider.js +17 -0
- package/modern/context/GridRootPropsContext.js +8 -0
- package/modern/context/index.js +1 -0
- package/modern/hooks/core/index.js +1 -0
- package/modern/hooks/core/preProcessing/gridPreProcessingApi.js +1 -0
- package/modern/hooks/core/preProcessing/index.js +3 -0
- package/modern/hooks/core/preProcessing/useGridPreProcessing.js +53 -0
- package/modern/hooks/core/preProcessing/useGridRegisterPreProcessor.js +31 -0
- package/modern/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +1 -0
- package/modern/hooks/core/strategyProcessing/index.js +3 -0
- package/modern/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +18 -0
- package/modern/hooks/core/strategyProcessing/useGridStrategyProcessing.js +112 -0
- package/modern/hooks/core/useGridApiInitialization.js +60 -0
- package/modern/hooks/core/useGridErrorHandler.js +16 -0
- package/modern/hooks/core/useGridInitialization.js +21 -0
- package/modern/hooks/core/useGridLocaleText.js +15 -0
- package/modern/hooks/core/useGridLoggerFactory.js +49 -0
- package/modern/hooks/core/useGridStateInitialization.js +102 -0
- package/modern/hooks/features/clipboard/useGridClipboard.js +69 -0
- package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +145 -0
- package/modern/hooks/features/columnMenu/columnMenuSelector.js +1 -0
- package/modern/hooks/features/columnMenu/columnMenuState.js +1 -0
- package/modern/hooks/features/columnMenu/index.js +2 -0
- package/modern/hooks/features/columnMenu/useGridColumnMenu.js +83 -0
- package/modern/hooks/features/columns/gridColumnsInterfaces.js +1 -0
- package/modern/hooks/features/columns/gridColumnsSelector.js +148 -0
- package/modern/hooks/features/columns/gridColumnsUtils.js +363 -0
- package/modern/hooks/features/columns/index.js +2 -0
- package/modern/hooks/features/columns/useGridColumns.js +321 -0
- package/modern/hooks/features/density/densitySelector.js +6 -0
- package/modern/hooks/features/density/densityState.js +1 -0
- package/modern/hooks/features/density/index.js +2 -0
- package/modern/hooks/features/density/useGridDensity.js +67 -0
- package/modern/hooks/features/dimensions/gridDimensionsApi.js +1 -0
- package/modern/hooks/features/dimensions/index.js +1 -0
- package/modern/hooks/features/dimensions/useGridDimensions.js +178 -0
- package/modern/hooks/features/editRows/gridEditRowsSelector.js +2 -0
- package/modern/hooks/features/editRows/index.js +1 -0
- package/modern/hooks/features/editRows/useGridCellEditing.new.js +315 -0
- package/modern/hooks/features/editRows/useGridCellEditing.old.js +350 -0
- package/modern/hooks/features/editRows/useGridEditing.new.js +118 -0
- package/modern/hooks/features/editRows/useGridEditing.old.js +163 -0
- package/modern/hooks/features/editRows/useGridRowEditing.new.js +484 -0
- package/modern/hooks/features/editRows/useGridRowEditing.old.js +321 -0
- package/modern/hooks/features/events/useGridEvents.js +24 -0
- package/modern/hooks/features/export/serializers/csvSerializer.js +48 -0
- package/modern/hooks/features/export/useGridCsvExport.js +63 -0
- package/modern/hooks/features/export/useGridPrintExport.js +219 -0
- package/modern/hooks/features/export/utils.js +14 -0
- package/modern/hooks/features/filter/gridFilterSelector.js +134 -0
- package/modern/hooks/features/filter/gridFilterState.js +5 -0
- package/modern/hooks/features/filter/gridFilterUtils.js +154 -0
- package/modern/hooks/features/filter/index.js +2 -0
- package/modern/hooks/features/filter/useGridFilter.js +261 -0
- package/modern/hooks/features/focus/gridFocusState.js +1 -0
- package/modern/hooks/features/focus/gridFocusStateSelector.js +7 -0
- package/modern/hooks/features/focus/index.js +2 -0
- package/modern/hooks/features/focus/useGridFocus.js +248 -0
- package/modern/hooks/features/index.js +14 -0
- package/modern/hooks/features/keyboard/useGridKeyboard.js +70 -0
- package/modern/hooks/features/keyboard/useGridKeyboardNavigation.js +270 -0
- package/modern/hooks/features/pagination/gridPaginationInterfaces.js +1 -0
- package/modern/hooks/features/pagination/gridPaginationSelector.js +97 -0
- package/modern/hooks/features/pagination/index.js +2 -0
- package/modern/hooks/features/pagination/useGridPage.js +134 -0
- package/modern/hooks/features/pagination/useGridPageSize.js +110 -0
- package/modern/hooks/features/pagination/useGridPagination.js +32 -0
- package/modern/hooks/features/preferencesPanel/gridPreferencePanelSelector.js +1 -0
- package/modern/hooks/features/preferencesPanel/gridPreferencePanelState.js +1 -0
- package/modern/hooks/features/preferencesPanel/gridPreferencePanelsValue.js +8 -0
- package/modern/hooks/features/preferencesPanel/index.js +3 -0
- package/modern/hooks/features/preferencesPanel/useGridPreferencesPanel.js +96 -0
- package/modern/hooks/features/rows/gridRowsMetaSelector.js +1 -0
- package/modern/hooks/features/rows/gridRowsMetaState.js +1 -0
- package/modern/hooks/features/rows/gridRowsSelector.js +9 -0
- package/modern/hooks/features/rows/gridRowsState.js +1 -0
- package/modern/hooks/features/rows/index.js +4 -0
- package/modern/hooks/features/rows/useGridParamsApi.js +175 -0
- package/modern/hooks/features/rows/useGridRows.js +311 -0
- package/modern/hooks/features/rows/useGridRowsMeta.js +125 -0
- package/modern/hooks/features/rows/useGridRowsPreProcessors.js +37 -0
- package/modern/hooks/features/scroll/useGridScroll.js +124 -0
- package/modern/hooks/features/selection/gridSelectionSelector.js +9 -0
- package/modern/hooks/features/selection/index.js +1 -0
- package/modern/hooks/features/selection/useGridSelection.js +356 -0
- package/modern/hooks/features/selection/useGridSelectionPreProcessors.js +47 -0
- package/modern/hooks/features/sorting/gridSortingSelector.js +44 -0
- package/modern/hooks/features/sorting/gridSortingState.js +1 -0
- package/modern/hooks/features/sorting/gridSortingUtils.js +157 -0
- package/modern/hooks/features/sorting/index.js +2 -0
- package/modern/hooks/features/sorting/useGridSorting.js +243 -0
- package/modern/hooks/features/statePersistence/gridStatePersistenceInterface.js +1 -0
- package/modern/hooks/features/statePersistence/index.js +1 -0
- package/modern/hooks/features/statePersistence/useGridStatePersistence.js +24 -0
- package/modern/hooks/features/virtualization/useGridVirtualScroller.js +346 -0
- package/modern/hooks/index.js +3 -0
- package/modern/hooks/utils/index.js +9 -0
- package/modern/hooks/utils/useFirstRender.js +9 -0
- package/modern/hooks/utils/useGridApi.js +13 -0
- package/modern/hooks/utils/useGridApiContext.js +11 -0
- package/modern/hooks/utils/useGridApiEventHandler.js +93 -0
- package/modern/hooks/utils/useGridApiMethod.js +25 -0
- package/modern/hooks/utils/useGridApiRef.js +6 -0
- package/modern/hooks/utils/useGridInitializeState.js +9 -0
- package/modern/hooks/utils/useGridLogger.js +12 -0
- package/modern/hooks/utils/useGridNativeEventListener.js +38 -0
- package/modern/hooks/utils/useGridRootProps.js +11 -0
- package/modern/hooks/utils/useGridScrollFn.js +20 -0
- package/modern/hooks/utils/useGridSelector.js +20 -0
- package/modern/hooks/utils/useGridState.js +13 -0
- package/modern/hooks/utils/useGridVisibleRows.js +43 -0
- package/modern/index.js +17 -0
- package/modern/internals/index.js +41 -0
- package/modern/lib/createDetectElementResize/index.js +168 -0
- package/modern/locales/arSD.js +108 -0
- package/modern/locales/bgBG.js +108 -0
- package/modern/locales/csCZ.js +143 -0
- package/modern/locales/daDK.js +108 -0
- package/modern/locales/deDE.js +108 -0
- package/modern/locales/elGR.js +107 -0
- package/modern/locales/enUS.js +4 -0
- package/modern/locales/esES.js +108 -0
- package/modern/locales/faIR.js +108 -0
- package/modern/locales/fiFI.js +108 -0
- package/modern/locales/frFR.js +108 -0
- package/modern/locales/heIL.js +108 -0
- package/modern/locales/index.js +25 -0
- package/modern/locales/itIT.js +108 -0
- package/modern/locales/jaJP.js +108 -0
- package/modern/locales/koKR.js +108 -0
- package/modern/locales/nlNL.js +108 -0
- package/modern/locales/plPL.js +108 -0
- package/modern/locales/ptBR.js +108 -0
- package/modern/locales/ruRU.js +141 -0
- package/modern/locales/skSK.js +143 -0
- package/modern/locales/trTR.js +108 -0
- package/modern/locales/ukUA.js +134 -0
- package/modern/locales/viVN.js +108 -0
- package/modern/locales/zhCN.js +108 -0
- package/modern/models/api/gridApiCommon.js +1 -0
- package/modern/models/api/gridApiCommunity.js +1 -0
- package/modern/models/api/gridCallbackDetails.js +1 -0
- package/modern/models/api/gridClipboardApi.js +1 -0
- package/modern/models/api/gridColumnApi.js +1 -0
- package/modern/models/api/gridColumnMenuApi.js +1 -0
- package/modern/models/api/gridCoreApi.js +1 -0
- package/modern/models/api/gridCsvExportApi.js +1 -0
- package/modern/models/api/gridDensityApi.js +1 -0
- package/modern/models/api/gridDisableVirtualizationApi.js +1 -0
- package/modern/models/api/gridEditingApi.js +1 -0
- package/modern/models/api/gridFilterApi.js +1 -0
- package/modern/models/api/gridFocusApi.js +1 -0
- package/modern/models/api/gridLocaleTextApi.js +1 -0
- package/modern/models/api/gridLoggerApi.js +1 -0
- package/modern/models/api/gridParamsApi.js +1 -0
- package/modern/models/api/gridPreferencesPanelApi.js +1 -0
- package/modern/models/api/gridPrintExportApi.js +1 -0
- package/modern/models/api/gridRowApi.js +1 -0
- package/modern/models/api/gridRowsMetaApi.js +1 -0
- package/modern/models/api/gridScrollApi.js +1 -0
- package/modern/models/api/gridSelectionApi.js +1 -0
- package/modern/models/api/gridSortApi.js +1 -0
- package/modern/models/api/gridStateApi.js +1 -0
- package/modern/models/api/gridVirtualScrollerApi.js +1 -0
- package/modern/models/api/index.js +23 -0
- package/modern/models/colDef/gridColDef.js +1 -0
- package/modern/models/colDef/gridColType.js +1 -0
- package/modern/models/colDef/gridColumnTypesRecord.js +1 -0
- package/modern/models/colDef/gridDefaultColumnTypes.js +20 -0
- package/modern/models/colDef/index.js +6 -0
- package/modern/models/controlStateItem.js +1 -0
- package/modern/models/cursorCoordinates.js +1 -0
- package/modern/models/elementSize.js +1 -0
- package/modern/models/events/gridEventListener.js +1 -0
- package/modern/models/events/gridEventLookup.js +1 -0
- package/modern/models/events/gridEventPublisher.js +1 -0
- package/modern/models/events/gridEvents.js +78 -0
- package/modern/models/events/index.js +4 -0
- package/modern/models/gridCell.js +1 -0
- package/modern/models/gridCellClass.js +1 -0
- package/modern/models/gridColumnHeaderClass.js +1 -0
- package/modern/models/gridDensity.js +16 -0
- package/modern/models/gridEditRowModel.js +23 -0
- package/modern/models/gridExport.js +1 -0
- package/modern/models/gridFeatureMode.js +4 -0
- package/modern/models/gridFilterItem.js +11 -0
- package/modern/models/gridFilterModel.js +1 -0
- package/modern/models/gridFilterOperator.js +1 -0
- package/modern/models/gridIconSlotsComponent.js +1 -0
- package/modern/models/gridPaginationProps.js +1 -0
- package/modern/models/gridRenderContextProps.js +1 -0
- package/modern/models/gridRootContainerRef.js +1 -0
- package/modern/models/gridRows.js +31 -0
- package/modern/models/gridSelectionModel.js +1 -0
- package/modern/models/gridSlotsComponent.js +1 -0
- package/modern/models/gridSlotsComponentsProps.js +1 -0
- package/modern/models/gridSortModel.js +1 -0
- package/modern/models/gridStateCommunity.js +1 -0
- package/modern/models/index.js +26 -0
- package/modern/models/logger.js +1 -0
- package/modern/models/muiEvent.js +1 -0
- package/modern/models/params/gridCellParams.js +1 -0
- package/modern/models/params/gridColumnHeaderParams.js +1 -0
- package/modern/models/params/gridColumnOrderChangeParams.js +1 -0
- package/modern/models/params/gridColumnResizeParams.js +1 -0
- package/modern/models/params/gridColumnVisibilityChangeParams.js +1 -0
- package/modern/models/params/gridEditCellParams.js +34 -0
- package/modern/models/params/gridHeaderSelectionCheckboxParams.js +1 -0
- package/modern/models/params/gridRowParams.js +39 -0
- package/modern/models/params/gridRowSelectionCheckboxParams.js +1 -0
- package/modern/models/params/gridScrollParams.js +1 -0
- package/modern/models/params/gridSortModelParams.js +1 -0
- package/modern/models/params/gridValueOptionsParams.js +1 -0
- package/modern/models/params/index.js +12 -0
- package/modern/models/props/DataGridProps.js +1 -0
- package/modern/themeAugmentation/index.js +3 -0
- package/modern/themeAugmentation/overrides.js +1 -0
- package/modern/themeAugmentation/props.js +1 -0
- package/modern/utils/EventManager.js +85 -0
- package/modern/utils/cleanupTracking/CleanupTracking.js +1 -0
- package/modern/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +21 -0
- package/modern/utils/cleanupTracking/TimerBasedCleanupTracking.js +45 -0
- package/modern/utils/createSelector.js +38 -0
- package/modern/utils/domUtils.js +44 -0
- package/modern/utils/exportAs.js +34 -0
- package/modern/utils/getGridLocalization.js +12 -0
- package/modern/utils/index.js +1 -0
- package/modern/utils/keyboardUtils.js +23 -0
- package/modern/utils/utils.js +180 -0
- package/modern/utils/warning.js +26 -0
- package/node/DataGrid/DataGrid.js +731 -0
- package/node/DataGrid/index.js +37 -0
- package/node/DataGrid/useDataGridComponent.js +114 -0
- package/node/DataGrid/useDataGridProps.js +116 -0
- package/node/colDef/gridActionsColDef.js +29 -0
- package/node/colDef/gridBooleanColDef.js +39 -0
- package/node/colDef/gridBooleanOperators.js +27 -0
- package/node/colDef/gridCheckboxSelectionColDef.js +45 -0
- package/node/colDef/gridDateColDef.js +57 -0
- package/node/colDef/gridDateOperators.js +114 -0
- package/node/colDef/gridNumericColDef.js +31 -0
- package/node/colDef/gridNumericOperators.js +189 -0
- package/node/colDef/gridSingleSelectColDef.js +23 -0
- package/node/colDef/gridSingleSelectOperators.js +59 -0
- package/node/colDef/gridStringColDef.js +32 -0
- package/node/colDef/gridStringOperators.js +115 -0
- package/node/colDef/index.js +161 -0
- package/node/components/DataGridColumnHeaders.js +59 -0
- package/node/components/DataGridVirtualScroller.js +57 -0
- package/node/components/ErrorBoundary.js +51 -0
- package/node/components/ErrorOverlay.js +51 -0
- package/node/components/GridApiContext.js +19 -0
- package/node/components/GridAutoSizer.js +163 -0
- package/node/components/GridFooter.js +60 -0
- package/node/components/GridHeader.js +32 -0
- package/node/components/GridLoadingOverlay.js +40 -0
- package/node/components/GridNoResultsOverlay.js +33 -0
- package/node/components/GridNoRowsOverlay.js +42 -0
- package/node/components/GridPagination.js +89 -0
- package/node/components/GridRow.js +314 -0
- package/node/components/GridRowCount.js +93 -0
- package/node/components/GridScrollArea.js +149 -0
- package/node/components/GridSelectedRowCount.js +94 -0
- package/node/components/base/GridBody.js +107 -0
- package/node/components/base/GridErrorHandler.js +62 -0
- package/node/components/base/GridFooterPlaceholder.js +40 -0
- package/node/components/base/GridHeaderPlaceholder.js +35 -0
- package/node/components/base/GridOverlays.js +110 -0
- package/node/components/base/index.js +70 -0
- package/node/components/cell/GridActionsCell.js +144 -0
- package/node/components/cell/GridActionsCellItem.js +76 -0
- package/node/components/cell/GridBooleanCell.js +69 -0
- package/node/components/cell/GridCell.js +241 -0
- package/node/components/cell/GridEditBooleanCell.js +98 -0
- package/node/components/cell/GridEditDateCell.js +149 -0
- package/node/components/cell/GridEditInputCell.js +189 -0
- package/node/components/cell/GridEditSingleSelectCell.js +249 -0
- package/node/components/cell/index.js +70 -0
- package/node/components/columnHeaders/ColumnHeaderFilterIcon.js +102 -0
- package/node/components/columnHeaders/ColumnHeaderMenuIcon.js +81 -0
- package/node/components/columnHeaders/GridColumnHeaderItem.js +263 -0
- package/node/components/columnHeaders/GridColumnHeaderSeparator.js +101 -0
- package/node/components/columnHeaders/GridColumnHeaderSortIcon.js +109 -0
- package/node/components/columnHeaders/GridColumnHeaderTitle.js +117 -0
- package/node/components/columnHeaders/GridColumnHeaders.js +80 -0
- package/node/components/columnHeaders/GridColumnHeadersInner.js +85 -0
- package/node/components/columnHeaders/GridColumnUnsortedIcon.js +36 -0
- package/node/components/columnHeaders/GridIconButtonContainer.js +68 -0
- package/node/components/columnHeaders/index.js +57 -0
- package/node/components/columnSelection/GridCellCheckboxRenderer.js +194 -0
- package/node/components/columnSelection/GridHeaderCheckbox.js +167 -0
- package/node/components/columnSelection/index.js +31 -0
- package/node/components/containers/GridFooterContainer.js +76 -0
- package/node/components/containers/GridMainContainer.js +56 -0
- package/node/components/containers/GridOverlay.js +82 -0
- package/node/components/containers/GridRoot.js +87 -0
- package/node/components/containers/GridRootStyles.js +368 -0
- package/node/components/containers/GridToolbarContainer.js +78 -0
- package/node/components/containers/index.js +57 -0
- package/node/components/icons/index.js +109 -0
- package/node/components/index.js +265 -0
- package/node/components/menu/GridMenu.js +153 -0
- package/node/components/menu/columnMenu/GridColumnHeaderMenu.js +79 -0
- package/node/components/menu/columnMenu/GridColumnMenu.js +78 -0
- package/node/components/menu/columnMenu/GridColumnMenuContainer.js +75 -0
- package/node/components/menu/columnMenu/GridColumnMenuProps.js +5 -0
- package/node/components/menu/columnMenu/GridColumnsMenuItem.js +57 -0
- package/node/components/menu/columnMenu/GridFilterItemProps.js +5 -0
- package/node/components/menu/columnMenu/GridFilterMenuItem.js +56 -0
- package/node/components/menu/columnMenu/HideGridColMenuItem.js +83 -0
- package/node/components/menu/columnMenu/SortGridMenuItems.js +80 -0
- package/node/components/menu/columnMenu/index.js +122 -0
- package/node/components/menu/index.js +31 -0
- package/node/components/panel/GridColumnsPanel.js +190 -0
- package/node/components/panel/GridPanel.js +138 -0
- package/node/components/panel/GridPanelContent.js +69 -0
- package/node/components/panel/GridPanelFooter.js +69 -0
- package/node/components/panel/GridPanelHeader.js +67 -0
- package/node/components/panel/GridPanelWrapper.js +80 -0
- package/node/components/panel/GridPreferencesPanel.js +48 -0
- package/node/components/panel/filterPanel/GridFilterForm.js +377 -0
- package/node/components/panel/filterPanel/GridFilterInputBoolean.js +73 -0
- package/node/components/panel/filterPanel/GridFilterInputDate.js +114 -0
- package/node/components/panel/filterPanel/GridFilterInputMultipleSingleSelect.js +157 -0
- package/node/components/panel/filterPanel/GridFilterInputMultipleValue.js +108 -0
- package/node/components/panel/filterPanel/GridFilterInputSingleSelect.js +141 -0
- package/node/components/panel/filterPanel/GridFilterInputValue.js +162 -0
- package/node/components/panel/filterPanel/GridFilterInputValueProps.js +5 -0
- package/node/components/panel/filterPanel/GridFilterPanel.js +168 -0
- package/node/components/panel/filterPanel/filterPanelUtils.js +27 -0
- package/node/components/panel/filterPanel/index.js +109 -0
- package/node/components/panel/index.js +109 -0
- package/node/components/toolbar/GridToolbar.js +67 -0
- package/node/components/toolbar/GridToolbarColumnsButton.js +75 -0
- package/node/components/toolbar/GridToolbarDensitySelector.js +154 -0
- package/node/components/toolbar/GridToolbarExport.js +103 -0
- package/node/components/toolbar/GridToolbarExportContainer.js +114 -0
- package/node/components/toolbar/GridToolbarFilterButton.js +165 -0
- package/node/components/toolbar/index.js +83 -0
- package/node/components/virtualization/GridVirtualScroller.js +69 -0
- package/node/components/virtualization/GridVirtualScrollerContent.js +70 -0
- package/node/components/virtualization/GridVirtualScrollerRenderZone.js +69 -0
- package/node/constants/defaultGridSlotsComponents.js +89 -0
- package/node/constants/envConstants.js +36 -0
- package/node/constants/gridClasses.js +16 -0
- package/node/constants/index.js +57 -0
- package/node/constants/localeTextConstants.js +114 -0
- package/node/context/GridContextProvider.js +34 -0
- package/node/context/GridRootPropsContext.js +19 -0
- package/node/context/index.js +18 -0
- package/node/hooks/core/index.js +5 -0
- package/node/hooks/core/preProcessing/gridPreProcessingApi.js +5 -0
- package/node/hooks/core/preProcessing/index.js +44 -0
- package/node/hooks/core/preProcessing/useGridPreProcessing.js +72 -0
- package/node/hooks/core/preProcessing/useGridRegisterPreProcessor.js +45 -0
- package/node/hooks/core/strategyProcessing/gridStrategyProcessingApi.js +5 -0
- package/node/hooks/core/strategyProcessing/index.js +44 -0
- package/node/hooks/core/strategyProcessing/useGridRegisterStrategyProcessor.js +33 -0
- package/node/hooks/core/strategyProcessing/useGridStrategyProcessing.js +135 -0
- package/node/hooks/core/useGridApiInitialization.js +76 -0
- package/node/hooks/core/useGridErrorHandler.js +33 -0
- package/node/hooks/core/useGridInitialization.js +36 -0
- package/node/hooks/core/useGridLocaleText.js +30 -0
- package/node/hooks/core/useGridLoggerFactory.js +64 -0
- package/node/hooks/core/useGridStateInitialization.js +124 -0
- package/node/hooks/features/clipboard/useGridClipboard.js +85 -0
- package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +178 -0
- package/node/hooks/features/columnMenu/columnMenuSelector.js +10 -0
- package/node/hooks/features/columnMenu/columnMenuState.js +5 -0
- package/node/hooks/features/columnMenu/index.js +31 -0
- package/node/hooks/features/columnMenu/useGridColumnMenu.js +106 -0
- package/node/hooks/features/columns/gridColumnsInterfaces.js +5 -0
- package/node/hooks/features/columns/gridColumnsSelector.js +175 -0
- package/node/hooks/features/columns/gridColumnsUtils.js +392 -0
- package/node/hooks/features/columns/index.js +30 -0
- package/node/hooks/features/columns/useGridColumns.js +356 -0
- package/node/hooks/features/density/densitySelector.js +20 -0
- package/node/hooks/features/density/densityState.js +5 -0
- package/node/hooks/features/density/index.js +31 -0
- package/node/hooks/features/density/useGridDensity.js +95 -0
- package/node/hooks/features/dimensions/gridDimensionsApi.js +5 -0
- package/node/hooks/features/dimensions/index.js +18 -0
- package/node/hooks/features/dimensions/useGridDimensions.js +202 -0
- package/node/hooks/features/editRows/gridEditRowsSelector.js +11 -0
- package/node/hooks/features/editRows/index.js +18 -0
- package/node/hooks/features/editRows/useGridCellEditing.new.js +334 -0
- package/node/hooks/features/editRows/useGridCellEditing.old.js +376 -0
- package/node/hooks/features/editRows/useGridEditing.new.js +142 -0
- package/node/hooks/features/editRows/useGridEditing.old.js +193 -0
- package/node/hooks/features/editRows/useGridRowEditing.new.js +499 -0
- package/node/hooks/features/editRows/useGridRowEditing.old.js +354 -0
- package/node/hooks/features/events/useGridEvents.js +32 -0
- package/node/hooks/features/export/serializers/csvSerializer.js +56 -0
- package/node/hooks/features/export/useGridCsvExport.js +84 -0
- package/node/hooks/features/export/useGridPrintExport.js +251 -0
- package/node/hooks/features/export/utils.js +24 -0
- package/node/hooks/features/filter/gridFilterSelector.js +170 -0
- package/node/hooks/features/filter/gridFilterState.js +15 -0
- package/node/hooks/features/filter/gridFilterUtils.js +175 -0
- package/node/hooks/features/filter/index.js +30 -0
- package/node/hooks/features/filter/useGridFilter.js +304 -0
- package/node/hooks/features/focus/gridFocusState.js +5 -0
- package/node/hooks/features/focus/gridFocusStateSelector.js +24 -0
- package/node/hooks/features/focus/index.js +31 -0
- package/node/hooks/features/focus/useGridFocus.js +278 -0
- package/node/hooks/features/index.js +174 -0
- package/node/hooks/features/keyboard/useGridKeyboard.js +91 -0
- package/node/hooks/features/keyboard/useGridKeyboardNavigation.js +293 -0
- package/node/hooks/features/pagination/gridPaginationInterfaces.js +5 -0
- package/node/hooks/features/pagination/gridPaginationSelector.js +114 -0
- package/node/hooks/features/pagination/index.js +18 -0
- package/node/hooks/features/pagination/useGridPage.js +165 -0
- package/node/hooks/features/pagination/useGridPageSize.js +140 -0
- package/node/hooks/features/pagination/useGridPagination.js +51 -0
- package/node/hooks/features/preferencesPanel/gridPreferencePanelSelector.js +10 -0
- package/node/hooks/features/preferencesPanel/gridPreferencePanelState.js +5 -0
- package/node/hooks/features/preferencesPanel/gridPreferencePanelsValue.js +13 -0
- package/node/hooks/features/preferencesPanel/index.js +44 -0
- package/node/hooks/features/preferencesPanel/useGridPreferencesPanel.js +124 -0
- package/node/hooks/features/rows/gridRowsMetaSelector.js +10 -0
- package/node/hooks/features/rows/gridRowsMetaState.js +5 -0
- package/node/hooks/features/rows/gridRowsSelector.js +26 -0
- package/node/hooks/features/rows/gridRowsState.js +5 -0
- package/node/hooks/features/rows/index.js +44 -0
- package/node/hooks/features/rows/useGridParamsApi.js +191 -0
- package/node/hooks/features/rows/useGridRows.js +343 -0
- package/node/hooks/features/rows/useGridRowsMeta.js +166 -0
- package/node/hooks/features/rows/useGridRowsPreProcessors.js +46 -0
- package/node/hooks/features/scroll/useGridScroll.js +149 -0
- package/node/hooks/features/selection/gridSelectionSelector.js +23 -0
- package/node/hooks/features/selection/index.js +18 -0
- package/node/hooks/features/selection/useGridSelection.js +394 -0
- package/node/hooks/features/selection/useGridSelectionPreProcessors.js +66 -0
- package/node/hooks/features/sorting/gridSortingSelector.js +58 -0
- package/node/hooks/features/sorting/gridSortingState.js +5 -0
- package/node/hooks/features/sorting/gridSortingUtils.js +188 -0
- package/node/hooks/features/sorting/index.js +44 -0
- package/node/hooks/features/sorting/useGridSorting.js +284 -0
- package/node/hooks/features/statePersistence/gridStatePersistenceInterface.js +5 -0
- package/node/hooks/features/statePersistence/index.js +5 -0
- package/node/hooks/features/statePersistence/useGridStatePersistence.js +39 -0
- package/node/hooks/features/virtualization/useGridVirtualScroller.js +387 -0
- package/node/hooks/index.js +44 -0
- package/node/hooks/utils/index.js +122 -0
- package/node/hooks/utils/useFirstRender.js +23 -0
- package/node/hooks/utils/useGridApi.js +23 -0
- package/node/hooks/utils/useGridApiContext.js +24 -0
- package/node/hooks/utils/useGridApiEventHandler.js +123 -0
- package/node/hooks/utils/useGridApiMethod.js +37 -0
- package/node/hooks/utils/useGridApiRef.js +19 -0
- package/node/hooks/utils/useGridInitializeState.js +23 -0
- package/node/hooks/utils/useGridLogger.js +24 -0
- package/node/hooks/utils/useGridNativeEventListener.js +55 -0
- package/node/hooks/utils/useGridRootProps.js +26 -0
- package/node/hooks/utils/useGridScrollFn.js +35 -0
- package/node/hooks/utils/useGridSelector.js +30 -0
- package/node/hooks/utils/useGridState.js +23 -0
- package/node/hooks/utils/useGridVisibleRows.js +62 -0
- package/node/index.js +165 -0
- package/node/internals/index.js +417 -0
- package/node/lib/createDetectElementResize/index.js +175 -0
- package/node/locales/arSD.js +118 -0
- package/node/locales/bgBG.js +118 -0
- package/node/locales/csCZ.js +153 -0
- package/node/locales/daDK.js +118 -0
- package/node/locales/deDE.js +118 -0
- package/node/locales/elGR.js +116 -0
- package/node/locales/enUS.js +15 -0
- package/node/locales/esES.js +118 -0
- package/node/locales/faIR.js +118 -0
- package/node/locales/fiFI.js +118 -0
- package/node/locales/frFR.js +118 -0
- package/node/locales/heIL.js +118 -0
- package/node/locales/index.js +317 -0
- package/node/locales/itIT.js +118 -0
- package/node/locales/jaJP.js +118 -0
- package/node/locales/koKR.js +118 -0
- package/node/locales/nlNL.js +118 -0
- package/node/locales/plPL.js +118 -0
- package/node/locales/ptBR.js +118 -0
- package/node/locales/ruRU.js +151 -0
- package/node/locales/skSK.js +153 -0
- package/node/locales/trTR.js +118 -0
- package/node/locales/ukUA.js +143 -0
- package/node/locales/viVN.js +118 -0
- package/node/locales/zhCN.js +118 -0
- package/node/models/api/gridApiCommon.js +5 -0
- package/node/models/api/gridApiCommunity.js +5 -0
- package/node/models/api/gridCallbackDetails.js +5 -0
- package/node/models/api/gridClipboardApi.js +5 -0
- package/node/models/api/gridColumnApi.js +5 -0
- package/node/models/api/gridColumnMenuApi.js +5 -0
- package/node/models/api/gridCoreApi.js +5 -0
- package/node/models/api/gridCsvExportApi.js +5 -0
- package/node/models/api/gridDensityApi.js +5 -0
- package/node/models/api/gridDisableVirtualizationApi.js +5 -0
- package/node/models/api/gridEditingApi.js +5 -0
- package/node/models/api/gridFilterApi.js +5 -0
- package/node/models/api/gridFocusApi.js +5 -0
- package/node/models/api/gridLocaleTextApi.js +5 -0
- package/node/models/api/gridLoggerApi.js +5 -0
- package/node/models/api/gridParamsApi.js +5 -0
- package/node/models/api/gridPreferencesPanelApi.js +5 -0
- package/node/models/api/gridPrintExportApi.js +5 -0
- package/node/models/api/gridRowApi.js +5 -0
- package/node/models/api/gridRowsMetaApi.js +5 -0
- package/node/models/api/gridScrollApi.js +5 -0
- package/node/models/api/gridSelectionApi.js +5 -0
- package/node/models/api/gridSortApi.js +5 -0
- package/node/models/api/gridStateApi.js +5 -0
- package/node/models/api/gridVirtualScrollerApi.js +5 -0
- package/node/models/api/index.js +291 -0
- package/node/models/colDef/gridColDef.js +5 -0
- package/node/models/colDef/gridColType.js +5 -0
- package/node/models/colDef/gridColumnTypesRecord.js +5 -0
- package/node/models/colDef/gridDefaultColumnTypes.js +37 -0
- package/node/models/colDef/index.js +57 -0
- package/node/models/controlStateItem.js +5 -0
- package/node/models/cursorCoordinates.js +5 -0
- package/node/models/elementSize.js +5 -0
- package/node/models/events/gridEventListener.js +5 -0
- package/node/models/events/gridEventLookup.js +5 -0
- package/node/models/events/gridEventPublisher.js +5 -0
- package/node/models/events/gridEvents.js +83 -0
- package/node/models/events/index.js +57 -0
- package/node/models/gridCell.js +5 -0
- package/node/models/gridCellClass.js +5 -0
- package/node/models/gridColumnHeaderClass.js +5 -0
- package/node/models/gridDensity.js +22 -0
- package/node/models/gridEditRowModel.js +30 -0
- package/node/models/gridExport.js +5 -0
- package/node/models/gridFeatureMode.js +11 -0
- package/node/models/gridFilterItem.js +17 -0
- package/node/models/gridFilterModel.js +5 -0
- package/node/models/gridFilterOperator.js +5 -0
- package/node/models/gridIconSlotsComponent.js +5 -0
- package/node/models/gridPaginationProps.js +5 -0
- package/node/models/gridRenderContextProps.js +5 -0
- package/node/models/gridRootContainerRef.js +5 -0
- package/node/models/gridRows.js +38 -0
- package/node/models/gridSelectionModel.js +5 -0
- package/node/models/gridSlotsComponent.js +5 -0
- package/node/models/gridSlotsComponentsProps.js +5 -0
- package/node/models/gridSortModel.js +5 -0
- package/node/models/gridStateCommunity.js +5 -0
- package/node/models/index.js +343 -0
- package/node/models/logger.js +5 -0
- package/node/models/muiEvent.js +5 -0
- package/node/models/params/gridCellParams.js +5 -0
- package/node/models/params/gridColumnHeaderParams.js +5 -0
- package/node/models/params/gridColumnOrderChangeParams.js +5 -0
- package/node/models/params/gridColumnResizeParams.js +5 -0
- package/node/models/params/gridColumnVisibilityChangeParams.js +5 -0
- package/node/models/params/gridEditCellParams.js +41 -0
- package/node/models/params/gridHeaderSelectionCheckboxParams.js +5 -0
- package/node/models/params/gridRowParams.js +46 -0
- package/node/models/params/gridRowSelectionCheckboxParams.js +5 -0
- package/node/models/params/gridScrollParams.js +5 -0
- package/node/models/params/gridSortModelParams.js +5 -0
- package/node/models/params/gridValueOptionsParams.js +5 -0
- package/node/models/params/index.js +161 -0
- package/node/models/props/DataGridProps.js +5 -0
- package/node/themeAugmentation/index.js +31 -0
- package/node/themeAugmentation/overrides.js +5 -0
- package/node/themeAugmentation/props.js +5 -0
- package/node/utils/EventManager.js +94 -0
- package/node/utils/cleanupTracking/CleanupTracking.js +5 -0
- package/node/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +30 -0
- package/node/utils/cleanupTracking/TimerBasedCleanupTracking.js +54 -0
- package/node/utils/createSelector.js +50 -0
- package/node/utils/domUtils.js +65 -0
- package/node/utils/exportAs.js +41 -0
- package/node/utils/getGridLocalization.js +28 -0
- package/node/utils/index.js +5 -0
- package/node/utils/keyboardUtils.js +80 -0
- package/node/utils/utils.js +201 -0
- package/node/utils/warning.js +38 -0
- package/package.json +8 -11
- package/themeAugmentation/index.d.ts +2 -2
- package/themeAugmentation/index.js +3 -0
- package/themeAugmentation/overrides.d.ts +8 -8
- package/themeAugmentation/overrides.js +1 -0
- package/themeAugmentation/package.json +6 -0
- package/themeAugmentation/props.d.ts +19 -19
- package/themeAugmentation/props.js +1 -0
- package/utils/EventManager.d.ts +29 -0
- package/utils/EventManager.js +85 -0
- package/utils/cleanupTracking/CleanupTracking.d.ts +9 -0
- package/utils/cleanupTracking/CleanupTracking.js +1 -0
- package/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.d.ts +7 -0
- package/utils/cleanupTracking/FinalizationRegistryBasedCleanupTracking.js +21 -0
- package/utils/cleanupTracking/TimerBasedCleanupTracking.d.ts +10 -0
- package/utils/cleanupTracking/TimerBasedCleanupTracking.js +45 -0
- package/utils/createSelector.d.ts +21 -0
- package/utils/createSelector.js +38 -0
- package/utils/domUtils.d.ts +12 -0
- package/utils/domUtils.js +44 -0
- package/utils/exportAs.d.ts +12 -0
- package/utils/exportAs.js +34 -0
- package/utils/getGridLocalization.d.ts +12 -0
- package/utils/getGridLocalization.js +16 -0
- package/utils/index.d.ts +1 -0
- package/utils/index.js +1 -0
- package/utils/keyboardUtils.d.ts +20 -0
- package/utils/keyboardUtils.js +23 -0
- package/utils/package.json +6 -0
- package/utils/utils.d.ts +37 -0
- package/utils/utils.js +180 -0
- package/utils/warning.d.ts +2 -0
- package/utils/warning.js +26 -0
- package/LICENSE +0 -21
- package/index-cjs.js +0 -15
- package/index-esm.js +0 -15
- package/x-data-grid.d.ts +0 -5494
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
2
|
+
import _toPropertyKey from "@babel/runtime/helpers/esm/toPropertyKey";
|
|
3
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
import { useGridApiMethod } from '../../utils/useGridApiMethod';
|
|
6
|
+
import { GridEvents } from '../../../models/events';
|
|
7
|
+
/**
|
|
8
|
+
* TODO: Rename `useGridPipProcessing`
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
export const useGridPreProcessing = apiRef => {
|
|
12
|
+
const preProcessorsRef = React.useRef({});
|
|
13
|
+
const registerPreProcessor = React.useCallback((group, id, callback) => {
|
|
14
|
+
if (!preProcessorsRef.current[group]) {
|
|
15
|
+
preProcessorsRef.current[group] = {};
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
const preProcessors = preProcessorsRef.current[group];
|
|
19
|
+
const oldCallback = preProcessors[id];
|
|
20
|
+
|
|
21
|
+
if (oldCallback !== callback) {
|
|
22
|
+
preProcessorsRef.current[group] = _extends({}, preProcessors, {
|
|
23
|
+
[id]: callback
|
|
24
|
+
});
|
|
25
|
+
apiRef.current.publishEvent(GridEvents.preProcessorRegister, group);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
return () => {
|
|
29
|
+
const _ref = preProcessorsRef.current[group],
|
|
30
|
+
otherProcessors = _objectWithoutPropertiesLoose(_ref, [id].map(_toPropertyKey));
|
|
31
|
+
|
|
32
|
+
preProcessorsRef.current[group] = otherProcessors;
|
|
33
|
+
apiRef.current.publishEvent(GridEvents.preProcessorUnregister, group);
|
|
34
|
+
};
|
|
35
|
+
}, [apiRef]);
|
|
36
|
+
const applyPreProcessors = React.useCallback((...args) => {
|
|
37
|
+
const [group, value, params] = args;
|
|
38
|
+
|
|
39
|
+
if (!preProcessorsRef.current[group]) {
|
|
40
|
+
return value;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
const preProcessors = Object.values(preProcessorsRef.current[group]);
|
|
44
|
+
return preProcessors.reduce((acc, preProcessor) => {
|
|
45
|
+
return preProcessor(acc, params);
|
|
46
|
+
}, value);
|
|
47
|
+
}, []);
|
|
48
|
+
const preProcessingApi = {
|
|
49
|
+
unstable_registerPreProcessor: registerPreProcessor,
|
|
50
|
+
unstable_applyPreProcessors: applyPreProcessors
|
|
51
|
+
};
|
|
52
|
+
useGridApiMethod(apiRef, preProcessingApi, 'GridPreProcessing');
|
|
53
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { GridApiCommon } from '../../../models/api/gridApiCommon';
|
|
3
|
+
import { GridPreProcessor } from './gridPreProcessingApi';
|
|
4
|
+
/**
|
|
5
|
+
* TODO: Rename `useGridRegisterPipeProcessor`
|
|
6
|
+
*/
|
|
7
|
+
export declare const useGridRegisterPreProcessor: <Api extends GridApiCommon, G extends keyof import("./gridPreProcessingApi").GridPreProcessingGroupLookup>(apiRef: React.MutableRefObject<Api>, group: G, callback: GridPreProcessor<G>) => void;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { useFirstRender } from '../../utils/useFirstRender';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* TODO: Rename `useGridRegisterPipeProcessor`
|
|
6
|
+
*/
|
|
7
|
+
export const useGridRegisterPreProcessor = (apiRef, group, callback) => {
|
|
8
|
+
const cleanup = React.useRef();
|
|
9
|
+
const id = React.useRef(`mui-${Math.round(Math.random() * 1e9)}`);
|
|
10
|
+
const registerPreProcessor = React.useCallback(() => {
|
|
11
|
+
cleanup.current = apiRef.current.unstable_registerPreProcessor(group, id.current, callback);
|
|
12
|
+
}, [apiRef, callback, group]);
|
|
13
|
+
useFirstRender(() => {
|
|
14
|
+
registerPreProcessor();
|
|
15
|
+
});
|
|
16
|
+
const isFirstRender = React.useRef(true);
|
|
17
|
+
React.useEffect(() => {
|
|
18
|
+
if (isFirstRender.current) {
|
|
19
|
+
isFirstRender.current = false;
|
|
20
|
+
} else {
|
|
21
|
+
registerPreProcessor();
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
return () => {
|
|
25
|
+
if (cleanup.current) {
|
|
26
|
+
cleanup.current();
|
|
27
|
+
cleanup.current = null;
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
}, [registerPreProcessor]);
|
|
31
|
+
};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { GridRowTreeCreationParams, GridRowTreeCreationValue } from '../../features/rows/gridRowsState';
|
|
2
|
+
import { GridFilteringMethodParams, GridFilteringMethodValue } from '../../features/filter/gridFilterState';
|
|
3
|
+
import { GridSortingMethodParams, GridSortingMethodValue } from '../../features/sorting/gridSortingState';
|
|
4
|
+
export declare type GridStrategyProcessorName = keyof GridStrategyProcessingLookup;
|
|
5
|
+
export declare type GridStrategyGroup = GridStrategyProcessingLookup[keyof GridStrategyProcessingLookup]['group'];
|
|
6
|
+
export interface GridStrategyProcessingLookup {
|
|
7
|
+
rowTreeCreation: {
|
|
8
|
+
group: 'rowTree';
|
|
9
|
+
params: GridRowTreeCreationParams;
|
|
10
|
+
value: GridRowTreeCreationValue;
|
|
11
|
+
};
|
|
12
|
+
filtering: {
|
|
13
|
+
group: 'rowTree';
|
|
14
|
+
params: GridFilteringMethodParams;
|
|
15
|
+
value: GridFilteringMethodValue;
|
|
16
|
+
};
|
|
17
|
+
sorting: {
|
|
18
|
+
group: 'rowTree';
|
|
19
|
+
params: GridSortingMethodParams;
|
|
20
|
+
value: GridSortingMethodValue;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export declare type GridStrategyProcessor<P extends GridStrategyProcessorName> = (params: GridStrategyProcessingLookup[P]['params']) => GridStrategyProcessingLookup[P]['value'];
|
|
24
|
+
export interface GridStrategyProcessingApi {
|
|
25
|
+
/**
|
|
26
|
+
* Registers a strategy processor.
|
|
27
|
+
* If the strategy is active, it emits an event to notify the agents to re-apply the processor.
|
|
28
|
+
* @template P
|
|
29
|
+
* @param {string} strategyName The name of the strategy on which this processor should be applied.
|
|
30
|
+
* @param {GridStrategyProcessorName} processorName The name of the processor.
|
|
31
|
+
* @param {GridStrategyProcessor<P>} processor The processor to register.
|
|
32
|
+
* @returns {() => void} A function to unregister the processor.
|
|
33
|
+
* @ignore - do not document.
|
|
34
|
+
*/
|
|
35
|
+
unstable_registerStrategyProcessor: <P extends GridStrategyProcessorName>(strategyName: string, processorName: P, callback: GridStrategyProcessor<P>) => () => void;
|
|
36
|
+
/**
|
|
37
|
+
* Set a callback to know if a strategy is available.
|
|
38
|
+
* @param {string} strategyName The name of the strategy.
|
|
39
|
+
* @param {boolean} callback A callback to know if this strategy is available.
|
|
40
|
+
* @ignore - do not document.
|
|
41
|
+
*/
|
|
42
|
+
unstable_setStrategyAvailability: (strategyGroup: GridStrategyGroup, strategyName: string, callback: () => boolean) => void;
|
|
43
|
+
/**
|
|
44
|
+
* Returns the name of the active strategy of a given strategy group
|
|
45
|
+
* @param {GridStrategyGroup} strategyGroup The group from which we want the active strategy.
|
|
46
|
+
* @returns {string} The name of the active strategy.
|
|
47
|
+
* @ignore - do not document.
|
|
48
|
+
*/
|
|
49
|
+
unstable_getActiveStrategy: (strategyGroup: GridStrategyGroup) => string;
|
|
50
|
+
/**
|
|
51
|
+
* Run the processor registered for the active strategy.
|
|
52
|
+
* @param {GridStrategyProcessorName} processorName The name of the processor to run.
|
|
53
|
+
* @param {GridStrategyProcessingLookup[P]['params']} params Additional params to pass to the processor.
|
|
54
|
+
* @returns {GridStrategyProcessingLookup[P]['value']} The value returned by the processor.
|
|
55
|
+
* @ignore - do not document.
|
|
56
|
+
*/
|
|
57
|
+
unstable_applyStrategyProcessor: <P extends GridStrategyProcessorName>(processorName: P, params: GridStrategyProcessingLookup[P]['params']) => GridStrategyProcessingLookup[P]['value'];
|
|
58
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { GridApiCommon } from '../../../models/api/gridApiCommon';
|
|
3
|
+
import { GridStrategyProcessor } from './gridStrategyProcessingApi';
|
|
4
|
+
export declare const useGridRegisterStrategyProcessor: <Api extends GridApiCommon, G extends keyof import("./gridStrategyProcessingApi").GridStrategyProcessingLookup>(apiRef: React.MutableRefObject<Api>, strategyName: string, group: G, processor: GridStrategyProcessor<G>) => void;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { useFirstRender } from '../../utils/useFirstRender';
|
|
3
|
+
export const useGridRegisterStrategyProcessor = (apiRef, strategyName, group, processor) => {
|
|
4
|
+
const registerPreProcessor = React.useCallback(() => {
|
|
5
|
+
apiRef.current.unstable_registerStrategyProcessor(strategyName, group, processor);
|
|
6
|
+
}, [apiRef, processor, group, strategyName]);
|
|
7
|
+
useFirstRender(() => {
|
|
8
|
+
registerPreProcessor();
|
|
9
|
+
});
|
|
10
|
+
const isFirstRender = React.useRef(true);
|
|
11
|
+
React.useEffect(() => {
|
|
12
|
+
if (isFirstRender.current) {
|
|
13
|
+
isFirstRender.current = false;
|
|
14
|
+
} else {
|
|
15
|
+
registerPreProcessor();
|
|
16
|
+
}
|
|
17
|
+
}, [registerPreProcessor]);
|
|
18
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { GridApiCommunity } from '../../../models/api/gridApiCommunity';
|
|
3
|
+
import { GridStrategyProcessorName, GridStrategyProcessingLookup } from './gridStrategyProcessingApi';
|
|
4
|
+
export declare const GRID_DEFAULT_STRATEGY = "none";
|
|
5
|
+
export declare const GRID_STRATEGIES_PROCESSORS: {
|
|
6
|
+
[P in GridStrategyProcessorName]: GridStrategyProcessingLookup[P]['group'];
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Implements a variant of the Strategy Pattern (see https://en.wikipedia.org/wiki/Strategy_pattern)
|
|
10
|
+
*
|
|
11
|
+
* Some plugins contain custom logic that must only be run if the right strategy is active.
|
|
12
|
+
* For instance, the tree data plugin has:
|
|
13
|
+
* - custom row tree creation algorithm.
|
|
14
|
+
* - custom sorting algorithm.
|
|
15
|
+
* - custom filtering algorithm.
|
|
16
|
+
*
|
|
17
|
+
* These plugins must use:
|
|
18
|
+
* - `apiRef.current.unstable_registerStrategyProcessor` to register their processors.
|
|
19
|
+
* - `apiRef.current.unstable_setStrategyAvailability` to tell if their strategy can be used.
|
|
20
|
+
*
|
|
21
|
+
* Some hooks need to run the custom logic of the active strategy.
|
|
22
|
+
* For instance, the `useGridFiltering` wants to run:
|
|
23
|
+
* - the tree data filtering if the tree data is the current way of grouping rows.
|
|
24
|
+
* - the row grouping filtering if the row grouping is the current way of grouping rows.
|
|
25
|
+
* - the flat filtering if there is no grouping of the rows (equivalent to the "none" strategy).
|
|
26
|
+
*
|
|
27
|
+
* These hooks must use:
|
|
28
|
+
* - `apiRef.current.unstable_applyStrategyProcessor` to run a processor.
|
|
29
|
+
* - `GridEvents.strategyAvailabilityChange` to update something when the active strategy changes.
|
|
30
|
+
* Warning: Be careful not to apply the processor several times.
|
|
31
|
+
* For instance `GridEvents.rowsSet` is fired by `useGridRows` whenever the active strategy changes.
|
|
32
|
+
* So listening to both would most likely run your logic twice.
|
|
33
|
+
* - `GridEvents.activeStrategyProcessorChange` to update something when the processor of the active strategy changes
|
|
34
|
+
*
|
|
35
|
+
* Each processor name is part of a strategy group which can only have one active strategy at the time.
|
|
36
|
+
*/
|
|
37
|
+
export declare const useGridStrategyProcessing: (apiRef: React.MutableRefObject<GridApiCommunity>) => void;
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
2
|
+
import _toPropertyKey from "@babel/runtime/helpers/esm/toPropertyKey";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { useGridApiMethod } from '../../utils/useGridApiMethod';
|
|
5
|
+
import { GridEvents } from '../../../models/events';
|
|
6
|
+
export const GRID_DEFAULT_STRATEGY = 'none';
|
|
7
|
+
export const GRID_STRATEGIES_PROCESSORS = {
|
|
8
|
+
rowTreeCreation: 'rowTree',
|
|
9
|
+
filtering: 'rowTree',
|
|
10
|
+
sorting: 'rowTree'
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Implements a variant of the Strategy Pattern (see https://en.wikipedia.org/wiki/Strategy_pattern)
|
|
15
|
+
*
|
|
16
|
+
* Some plugins contain custom logic that must only be run if the right strategy is active.
|
|
17
|
+
* For instance, the tree data plugin has:
|
|
18
|
+
* - custom row tree creation algorithm.
|
|
19
|
+
* - custom sorting algorithm.
|
|
20
|
+
* - custom filtering algorithm.
|
|
21
|
+
*
|
|
22
|
+
* These plugins must use:
|
|
23
|
+
* - `apiRef.current.unstable_registerStrategyProcessor` to register their processors.
|
|
24
|
+
* - `apiRef.current.unstable_setStrategyAvailability` to tell if their strategy can be used.
|
|
25
|
+
*
|
|
26
|
+
* Some hooks need to run the custom logic of the active strategy.
|
|
27
|
+
* For instance, the `useGridFiltering` wants to run:
|
|
28
|
+
* - the tree data filtering if the tree data is the current way of grouping rows.
|
|
29
|
+
* - the row grouping filtering if the row grouping is the current way of grouping rows.
|
|
30
|
+
* - the flat filtering if there is no grouping of the rows (equivalent to the "none" strategy).
|
|
31
|
+
*
|
|
32
|
+
* These hooks must use:
|
|
33
|
+
* - `apiRef.current.unstable_applyStrategyProcessor` to run a processor.
|
|
34
|
+
* - `GridEvents.strategyAvailabilityChange` to update something when the active strategy changes.
|
|
35
|
+
* Warning: Be careful not to apply the processor several times.
|
|
36
|
+
* For instance `GridEvents.rowsSet` is fired by `useGridRows` whenever the active strategy changes.
|
|
37
|
+
* So listening to both would most likely run your logic twice.
|
|
38
|
+
* - `GridEvents.activeStrategyProcessorChange` to update something when the processor of the active strategy changes
|
|
39
|
+
*
|
|
40
|
+
* Each processor name is part of a strategy group which can only have one active strategy at the time.
|
|
41
|
+
*/
|
|
42
|
+
export const useGridStrategyProcessing = apiRef => {
|
|
43
|
+
const availableStrategies = React.useRef(new Map());
|
|
44
|
+
const strategiesCache = React.useRef({});
|
|
45
|
+
const registerStrategyProcessor = React.useCallback((strategyName, processorName, processor) => {
|
|
46
|
+
const cleanup = () => {
|
|
47
|
+
const _ref = strategiesCache.current[processorName],
|
|
48
|
+
otherProcessors = _objectWithoutPropertiesLoose(_ref, [strategyName].map(_toPropertyKey));
|
|
49
|
+
|
|
50
|
+
strategiesCache.current[processorName] = otherProcessors;
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
if (!strategiesCache.current[processorName]) {
|
|
54
|
+
strategiesCache.current[processorName] = {};
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
const groupPreProcessors = strategiesCache.current[processorName];
|
|
58
|
+
const previousProcessor = groupPreProcessors[strategyName];
|
|
59
|
+
groupPreProcessors[strategyName] = processor;
|
|
60
|
+
|
|
61
|
+
if (!previousProcessor || previousProcessor === processor) {
|
|
62
|
+
return cleanup;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
if (strategyName === apiRef.current.unstable_getActiveStrategy(GRID_STRATEGIES_PROCESSORS[processorName])) {
|
|
66
|
+
apiRef.current.publishEvent(GridEvents.activeStrategyProcessorChange, processorName);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
return cleanup;
|
|
70
|
+
}, [apiRef]);
|
|
71
|
+
const applyStrategyProcessor = React.useCallback((processorName, params) => {
|
|
72
|
+
const activeStrategy = apiRef.current.unstable_getActiveStrategy(GRID_STRATEGIES_PROCESSORS[processorName]);
|
|
73
|
+
|
|
74
|
+
if (activeStrategy == null) {
|
|
75
|
+
throw new Error("Can't apply a strategy processor before defining an active strategy");
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
const groupCache = strategiesCache.current[processorName];
|
|
79
|
+
|
|
80
|
+
if (!groupCache || !groupCache[activeStrategy]) {
|
|
81
|
+
throw new Error(`No processor found for processor "${processorName}" on strategy "${activeStrategy}"`);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
const processor = groupCache[activeStrategy];
|
|
85
|
+
return processor(params);
|
|
86
|
+
}, [apiRef]);
|
|
87
|
+
const getActiveStrategy = React.useCallback(strategyGroup => {
|
|
88
|
+
var _availableStrategyEnt;
|
|
89
|
+
|
|
90
|
+
const strategyEntries = Array.from(availableStrategies.current.entries());
|
|
91
|
+
const availableStrategyEntry = strategyEntries.find(([, strategy]) => {
|
|
92
|
+
if (strategy.group !== strategyGroup) {
|
|
93
|
+
return false;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
return strategy.isAvailable();
|
|
97
|
+
});
|
|
98
|
+
return (_availableStrategyEnt = availableStrategyEntry == null ? void 0 : availableStrategyEntry[0]) != null ? _availableStrategyEnt : GRID_DEFAULT_STRATEGY;
|
|
99
|
+
}, []);
|
|
100
|
+
const setStrategyAvailability = React.useCallback((strategyGroup, strategyName, isAvailable) => {
|
|
101
|
+
availableStrategies.current.set(strategyName, {
|
|
102
|
+
group: strategyGroup,
|
|
103
|
+
isAvailable
|
|
104
|
+
});
|
|
105
|
+
apiRef.current.publishEvent(GridEvents.strategyAvailabilityChange);
|
|
106
|
+
}, [apiRef]);
|
|
107
|
+
const strategyProcessingApi = {
|
|
108
|
+
unstable_registerStrategyProcessor: registerStrategyProcessor,
|
|
109
|
+
unstable_applyStrategyProcessor: applyStrategyProcessor,
|
|
110
|
+
unstable_getActiveStrategy: getActiveStrategy,
|
|
111
|
+
unstable_setStrategyAvailability: setStrategyAvailability
|
|
112
|
+
};
|
|
113
|
+
useGridApiMethod(apiRef, strategyProcessingApi, 'GridStrategyProcessing');
|
|
114
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { DataGridProcessedProps } from '../../models/props/DataGridProps';
|
|
3
|
+
import { GridApiCommon } from '../../models';
|
|
4
|
+
export declare function useGridApiInitialization<Api extends GridApiCommon>(inputApiRef: React.MutableRefObject<Api> | undefined, props: Pick<DataGridProcessedProps, 'signature'>): React.MutableRefObject<Api>;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { GridEvents } from '../../models/events';
|
|
3
|
+
import { useGridApiMethod } from '../utils/useGridApiMethod';
|
|
4
|
+
import { GridSignature } from '../utils/useGridApiEventHandler';
|
|
5
|
+
import { EventManager } from '../../utils/EventManager';
|
|
6
|
+
|
|
7
|
+
const isSyntheticEvent = event => {
|
|
8
|
+
return event.isPropagationStopped !== undefined;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
let globalId = 0;
|
|
12
|
+
export function useGridApiInitialization(inputApiRef, props) {
|
|
13
|
+
const apiRef = React.useRef();
|
|
14
|
+
|
|
15
|
+
if (!apiRef.current) {
|
|
16
|
+
apiRef.current = {
|
|
17
|
+
unstable_eventManager: new EventManager(),
|
|
18
|
+
state: {},
|
|
19
|
+
instanceId: globalId
|
|
20
|
+
};
|
|
21
|
+
globalId += 1;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
React.useImperativeHandle(inputApiRef, () => apiRef.current, [apiRef]);
|
|
25
|
+
const publishEvent = React.useCallback((...args) => {
|
|
26
|
+
const [name, params, event = {}] = args;
|
|
27
|
+
event.defaultMuiPrevented = false;
|
|
28
|
+
|
|
29
|
+
if (isSyntheticEvent(event) && event.isPropagationStopped()) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const details = props.signature === GridSignature.DataGridPro ? {
|
|
34
|
+
api: apiRef.current
|
|
35
|
+
} : {};
|
|
36
|
+
apiRef.current.unstable_eventManager.emit(name, params, event, details);
|
|
37
|
+
}, [apiRef, props.signature]);
|
|
38
|
+
const subscribeEvent = React.useCallback((event, handler, options) => {
|
|
39
|
+
apiRef.current.unstable_eventManager.on(event, handler, options);
|
|
40
|
+
const api = apiRef.current;
|
|
41
|
+
return () => {
|
|
42
|
+
api.unstable_eventManager.removeListener(event, handler);
|
|
43
|
+
};
|
|
44
|
+
}, [apiRef]);
|
|
45
|
+
const showError = React.useCallback(args => {
|
|
46
|
+
apiRef.current.publishEvent(GridEvents.componentError, args);
|
|
47
|
+
}, [apiRef]);
|
|
48
|
+
useGridApiMethod(apiRef, {
|
|
49
|
+
subscribeEvent,
|
|
50
|
+
publishEvent,
|
|
51
|
+
showError
|
|
52
|
+
}, 'GridCoreApi');
|
|
53
|
+
React.useEffect(() => {
|
|
54
|
+
const api = apiRef.current;
|
|
55
|
+
return () => {
|
|
56
|
+
api.publishEvent(GridEvents.unmount);
|
|
57
|
+
};
|
|
58
|
+
}, [apiRef]);
|
|
59
|
+
return apiRef;
|
|
60
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { GridApiCommunity } from '../../models/api/gridApiCommunity';
|
|
3
|
+
import { DataGridProcessedProps } from '../../models/props/DataGridProps';
|
|
4
|
+
export declare function useGridErrorHandler(apiRef: React.MutableRefObject<GridApiCommunity>, props: Pick<DataGridProcessedProps, 'error'>): void;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { GridEvents } from '../../models/events';
|
|
4
|
+
import { useGridApiEventHandler } from '../utils/useGridApiEventHandler';
|
|
5
|
+
export function useGridErrorHandler(apiRef, props) {
|
|
6
|
+
const handleError = React.useCallback(args => {
|
|
7
|
+
// We are handling error here, to set up the handler as early as possible and be able to catch error thrown at init time.
|
|
8
|
+
apiRef.current.setState(state => _extends({}, state, {
|
|
9
|
+
error: args
|
|
10
|
+
}));
|
|
11
|
+
}, [apiRef]);
|
|
12
|
+
React.useEffect(() => {
|
|
13
|
+
handleError(props.error);
|
|
14
|
+
}, [handleError, props.error]);
|
|
15
|
+
useGridApiEventHandler(apiRef, GridEvents.componentError, handleError);
|
|
16
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import type { GridApiCommon } from '../../models/api/gridApiCommon';
|
|
3
|
+
import { DataGridProcessedProps } from '../../models/props/DataGridProps';
|
|
4
|
+
/**
|
|
5
|
+
* Initialize the technical pieces of the DataGrid (logger, state, ...) that any DataGrid implementation needs
|
|
6
|
+
*/
|
|
7
|
+
export declare const useGridInitialization: <Api extends GridApiCommon>(inputApiRef: React.MutableRefObject<Api> | undefined, props: Pick<DataGridProcessedProps, 'signature' | 'logger' | 'logLevel' | 'error' | 'localeText'>) => React.MutableRefObject<Api>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { useGridLoggerFactory } from './useGridLoggerFactory';
|
|
2
|
+
import { useGridApiInitialization } from './useGridApiInitialization';
|
|
3
|
+
import { useGridErrorHandler } from './useGridErrorHandler';
|
|
4
|
+
import { useGridLocaleText } from './useGridLocaleText';
|
|
5
|
+
import { useGridPreProcessing } from './preProcessing';
|
|
6
|
+
import { useGridStrategyProcessing } from './strategyProcessing';
|
|
7
|
+
import { useGridStateInitialization } from './useGridStateInitialization';
|
|
8
|
+
/**
|
|
9
|
+
* Initialize the technical pieces of the DataGrid (logger, state, ...) that any DataGrid implementation needs
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
export const useGridInitialization = (inputApiRef, props) => {
|
|
13
|
+
const apiRef = useGridApiInitialization(inputApiRef, props);
|
|
14
|
+
useGridLoggerFactory(apiRef, props);
|
|
15
|
+
useGridErrorHandler(apiRef, props);
|
|
16
|
+
useGridStateInitialization(apiRef, props);
|
|
17
|
+
useGridPreProcessing(apiRef);
|
|
18
|
+
useGridStrategyProcessing(apiRef);
|
|
19
|
+
useGridLocaleText(apiRef, props);
|
|
20
|
+
return apiRef;
|
|
21
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { GridApiCommunity } from '../../models/api/gridApiCommunity';
|
|
3
|
+
import { DataGridProcessedProps } from '../../models/props/DataGridProps';
|
|
4
|
+
export declare const useGridLocaleText: (apiRef: React.MutableRefObject<GridApiCommunity>, props: Pick<DataGridProcessedProps, 'localeText'>) => void;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { useGridApiMethod } from '../utils/useGridApiMethod';
|
|
3
|
+
export const useGridLocaleText = (apiRef, props) => {
|
|
4
|
+
const getLocaleText = React.useCallback(key => {
|
|
5
|
+
if (props.localeText[key] == null) {
|
|
6
|
+
throw new Error(`Missing translation for key ${key}.`);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
return props.localeText[key];
|
|
10
|
+
}, [props.localeText]);
|
|
11
|
+
const localeTextApi = {
|
|
12
|
+
getLocaleText
|
|
13
|
+
};
|
|
14
|
+
useGridApiMethod(apiRef, localeTextApi, 'LocaleTextApi');
|
|
15
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { GridApiCommunity } from '../../models/api/gridApiCommunity';
|
|
3
|
+
import { DataGridProcessedProps } from '../../models/props/DataGridProps';
|
|
4
|
+
export declare const useGridLoggerFactory: (apiRef: React.MutableRefObject<GridApiCommunity>, props: Pick<DataGridProcessedProps, 'logger' | 'logLevel'>) => void;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { localStorageAvailable } from '../../utils/utils';
|
|
3
|
+
const forceDebug = localStorageAvailable() && window.localStorage.getItem('DEBUG') != null;
|
|
4
|
+
|
|
5
|
+
const noop = () => {};
|
|
6
|
+
|
|
7
|
+
const noopLogger = {
|
|
8
|
+
debug: noop,
|
|
9
|
+
info: noop,
|
|
10
|
+
warn: noop,
|
|
11
|
+
error: noop
|
|
12
|
+
};
|
|
13
|
+
const LOG_LEVELS = ['debug', 'info', 'warn', 'error'];
|
|
14
|
+
|
|
15
|
+
function getAppender(name, logLevel, appender = console) {
|
|
16
|
+
const minLogLevelIdx = LOG_LEVELS.indexOf(logLevel);
|
|
17
|
+
|
|
18
|
+
if (minLogLevelIdx === -1) {
|
|
19
|
+
throw new Error(`MUI: Log level ${logLevel} not recognized.`);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
const logger = LOG_LEVELS.reduce((loggerObj, method, idx) => {
|
|
23
|
+
if (idx >= minLogLevelIdx) {
|
|
24
|
+
loggerObj[method] = (...args) => {
|
|
25
|
+
const [message, ...other] = args;
|
|
26
|
+
appender[method](`MUI: ${name} - ${message}`, ...other);
|
|
27
|
+
};
|
|
28
|
+
} else {
|
|
29
|
+
loggerObj[method] = noop;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
return loggerObj;
|
|
33
|
+
}, {});
|
|
34
|
+
return logger;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export const useGridLoggerFactory = (apiRef, props) => {
|
|
38
|
+
apiRef.current.getLogger = React.useCallback(name => {
|
|
39
|
+
if (forceDebug) {
|
|
40
|
+
return getAppender(name, 'debug', props.logger);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
if (!props.logLevel) {
|
|
44
|
+
return noopLogger;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
return getAppender(name, props.logLevel.toString(), props.logger);
|
|
48
|
+
}, [props.logLevel, props.logger]);
|
|
49
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { DataGridProcessedProps } from '../../models/props/DataGridProps';
|
|
3
|
+
import { GridApiCommon } from '../../models/api/gridApiCommon';
|
|
4
|
+
export declare const useGridStateInitialization: <Api extends GridApiCommon>(apiRef: React.MutableRefObject<Api>, props: Pick<DataGridProcessedProps, 'signature'>) => void;
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
+
const _excluded = ["stateId"];
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
import { GridSignature } from '../utils/useGridApiEventHandler';
|
|
6
|
+
import { GridEvents } from '../../models/events';
|
|
7
|
+
import { useGridApiMethod } from '../utils';
|
|
8
|
+
import { isFunction } from '../../utils/utils';
|
|
9
|
+
export const useGridStateInitialization = (apiRef, props) => {
|
|
10
|
+
const controlStateMapRef = React.useRef({});
|
|
11
|
+
const [, rawForceUpdate] = React.useState();
|
|
12
|
+
const updateControlState = React.useCallback(controlStateItem => {
|
|
13
|
+
const {
|
|
14
|
+
stateId
|
|
15
|
+
} = controlStateItem,
|
|
16
|
+
others = _objectWithoutPropertiesLoose(controlStateItem, _excluded);
|
|
17
|
+
|
|
18
|
+
controlStateMapRef.current[stateId] = _extends({}, others, {
|
|
19
|
+
stateId
|
|
20
|
+
});
|
|
21
|
+
}, []);
|
|
22
|
+
const setState = React.useCallback(state => {
|
|
23
|
+
let newState;
|
|
24
|
+
|
|
25
|
+
if (isFunction(state)) {
|
|
26
|
+
newState = state(apiRef.current.state);
|
|
27
|
+
} else {
|
|
28
|
+
newState = state;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
if (apiRef.current.state === newState) {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
let ignoreSetState = false; // Apply the control state constraints
|
|
36
|
+
|
|
37
|
+
const updatedControlStateIds = [];
|
|
38
|
+
Object.keys(controlStateMapRef.current).forEach(stateId => {
|
|
39
|
+
const controlState = controlStateMapRef.current[stateId];
|
|
40
|
+
const oldSubState = controlState.stateSelector(apiRef.current.state, apiRef.current.instanceId);
|
|
41
|
+
const newSubState = controlState.stateSelector(newState, apiRef.current.instanceId);
|
|
42
|
+
|
|
43
|
+
if (newSubState === oldSubState) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
updatedControlStateIds.push({
|
|
48
|
+
stateId: controlState.stateId,
|
|
49
|
+
hasPropChanged: newSubState !== controlState.propModel
|
|
50
|
+
}); // The state is controlled, the prop should always win
|
|
51
|
+
|
|
52
|
+
if (controlState.propModel !== undefined && newSubState !== controlState.propModel) {
|
|
53
|
+
ignoreSetState = true;
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
if (updatedControlStateIds.length > 1) {
|
|
58
|
+
// Each hook modify its own state, and it should not leak
|
|
59
|
+
// Events are here to forward to other hooks and apply changes.
|
|
60
|
+
// You are trying to update several states in a no isolated way.
|
|
61
|
+
throw new Error(`You're not allowed to update several sub-state in one transaction. You already updated ${updatedControlStateIds[0].stateId}, therefore, you're not allowed to update ${updatedControlStateIds.map(el => el.stateId).join(', ')} in the same transaction.`);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
if (!ignoreSetState) {
|
|
65
|
+
// We always assign it as we mutate rows for perf reason.
|
|
66
|
+
apiRef.current.state = newState;
|
|
67
|
+
|
|
68
|
+
if (apiRef.current.publishEvent) {
|
|
69
|
+
apiRef.current.publishEvent(GridEvents.stateChange, newState);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
if (updatedControlStateIds.length === 1) {
|
|
74
|
+
const {
|
|
75
|
+
stateId,
|
|
76
|
+
hasPropChanged
|
|
77
|
+
} = updatedControlStateIds[0];
|
|
78
|
+
const controlState = controlStateMapRef.current[stateId];
|
|
79
|
+
const model = controlState.stateSelector(newState, apiRef.current.instanceId);
|
|
80
|
+
|
|
81
|
+
if (controlState.propOnChange && hasPropChanged) {
|
|
82
|
+
const details = props.signature === GridSignature.DataGridPro ? {
|
|
83
|
+
api: apiRef.current
|
|
84
|
+
} : {};
|
|
85
|
+
controlState.propOnChange(model, details);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
if (!ignoreSetState) {
|
|
89
|
+
apiRef.current.publishEvent(controlState.changeEvent, model);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
return !ignoreSetState;
|
|
94
|
+
}, [apiRef, props.signature]);
|
|
95
|
+
const forceUpdate = React.useCallback(() => rawForceUpdate(() => apiRef.current.state), [apiRef]);
|
|
96
|
+
const stateApi = {
|
|
97
|
+
setState,
|
|
98
|
+
forceUpdate,
|
|
99
|
+
unstable_updateControlState: updateControlState
|
|
100
|
+
};
|
|
101
|
+
useGridApiMethod(apiRef, stateApi, 'GridStateApi');
|
|
102
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { GridApiCommunity } from '../../../models/api/gridApiCommunity';
|
|
3
|
+
/**
|
|
4
|
+
* @requires useGridCsvExport (method)
|
|
5
|
+
* @requires useGridSelection (method)
|
|
6
|
+
*/
|
|
7
|
+
export declare const useGridClipboard: (apiRef: React.MutableRefObject<GridApiCommunity>) => void;
|