@mui/x-data-grid 7.0.0-alpha.7 → 7.0.0-alpha.9
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 +554 -51
- package/DataGrid/DataGrid.js +15 -27
- package/DataGrid/useDataGridComponent.js +2 -1
- package/DataGrid/useDataGridProps.js +1 -0
- package/README.md +1 -1
- package/colDef/gridDateColDef.js +1 -1
- package/components/GridColumnHeaders.d.ts +3 -2
- package/components/GridColumnHeaders.js +3 -11
- package/components/GridDetailPanels.d.ts +5 -0
- package/components/GridDetailPanels.js +4 -0
- package/components/GridHeaders.d.ts +4 -0
- package/components/GridHeaders.js +53 -0
- package/components/GridPagination.d.ts +4 -4
- package/components/GridPagination.js +1 -1
- package/components/GridPinnedRows.d.ts +7 -0
- package/components/GridPinnedRows.js +4 -0
- package/components/GridRow.d.ts +7 -4
- package/components/GridRow.js +260 -97
- package/components/GridScrollbarFillerCell.d.ts +7 -0
- package/components/GridScrollbarFillerCell.js +39 -0
- package/components/base/GridBody.d.ts +2 -13
- package/components/base/GridBody.js +2 -116
- package/components/base/GridOverlays.js +10 -21
- package/components/cell/GridActionsCell.js +1 -1
- package/components/cell/GridActionsCellItem.d.ts +6 -6
- package/components/cell/GridCell.d.ts +15 -21
- package/components/cell/GridCell.js +68 -373
- package/components/columnHeaders/GridBaseColumnHeaders.js +1 -6
- package/components/columnHeaders/GridColumnHeaderItem.d.ts +2 -1
- package/components/columnHeaders/GridColumnHeaderItem.js +7 -3
- package/components/columnHeaders/GridColumnHeaderSortIcon.d.ts +1 -0
- package/components/columnHeaders/GridColumnHeaderSortIcon.js +5 -2
- package/components/columnHeaders/GridColumnHeadersInner.js +1 -2
- package/components/containers/GridRoot.js +18 -15
- package/components/containers/GridRootStyles.js +307 -204
- package/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +1 -1
- package/components/panel/GridPanel.d.ts +3 -3
- package/components/panel/GridPanel.js +3 -4
- package/components/panel/filterPanel/GridFilterForm.d.ts +6 -4
- package/components/panel/filterPanel/GridFilterForm.js +32 -15
- package/components/panel/filterPanel/GridFilterPanel.js +46 -20
- package/components/toolbar/GridToolbarColumnsButton.d.ts +13 -1
- package/components/toolbar/GridToolbarColumnsButton.js +40 -22
- package/components/toolbar/GridToolbarDensitySelector.d.ts +13 -1
- package/components/toolbar/GridToolbarDensitySelector.js +40 -22
- package/components/toolbar/GridToolbarExport.d.ts +10 -1
- package/components/toolbar/GridToolbarExport.js +6 -1
- package/components/toolbar/GridToolbarExportContainer.d.ts +15 -1
- package/components/toolbar/GridToolbarExportContainer.js +41 -23
- package/components/toolbar/GridToolbarFilterButton.d.ts +5 -4
- package/components/toolbar/GridToolbarFilterButton.js +6 -10
- package/components/toolbar/GridToolbarQuickFilter.d.ts +4 -0
- package/components/toolbar/GridToolbarQuickFilter.js +4 -0
- package/components/virtualization/GridBottomContainer.d.ts +2 -0
- package/components/virtualization/GridBottomContainer.js +25 -0
- package/components/{containers → virtualization}/GridMainContainer.d.ts +2 -0
- package/components/virtualization/GridMainContainer.js +20 -0
- package/components/virtualization/GridTopContainer.d.ts +2 -0
- package/components/virtualization/GridTopContainer.js +35 -0
- package/components/virtualization/GridVirtualScrollbar.d.ts +7 -0
- package/components/virtualization/GridVirtualScrollbar.js +131 -0
- package/components/virtualization/GridVirtualScroller.d.ts +4 -4
- package/components/virtualization/GridVirtualScroller.js +69 -16
- package/components/virtualization/GridVirtualScrollerFiller.d.ts +4 -0
- package/components/virtualization/GridVirtualScrollerFiller.js +71 -0
- package/components/virtualization/GridVirtualScrollerRenderZone.js +2 -1
- package/constants/defaultGridSlotsComponents.js +6 -2
- package/constants/gridClasses.d.ts +60 -8
- package/constants/gridClasses.js +1 -1
- package/hooks/core/gridCoreSelector.d.ts +6 -0
- package/hooks/core/gridCoreSelector.js +5 -0
- package/hooks/core/useGridInitialization.js +4 -0
- package/hooks/core/useGridLoggerFactory.js +2 -2
- package/hooks/core/useGridRefs.d.ts +3 -0
- package/hooks/core/useGridRefs.js +13 -0
- package/hooks/core/useGridTheme.d.ts +3 -0
- package/hooks/core/useGridTheme.js +19 -0
- package/hooks/features/columnGrouping/gridColumnGroupsUtils.js +1 -1
- package/hooks/features/columnGrouping/useGridColumnGrouping.d.ts +1 -1
- package/hooks/features/columnGrouping/useGridColumnGrouping.js +13 -18
- package/hooks/features/columnHeaders/useGridColumnHeaders.d.ts +13 -18
- package/hooks/features/columnHeaders/useGridColumnHeaders.js +68 -162
- package/hooks/features/columnMenu/useGridColumnMenu.js +28 -23
- package/hooks/features/columns/gridColumnsInterfaces.d.ts +17 -0
- package/hooks/features/columns/gridColumnsInterfaces.js +9 -1
- package/hooks/features/columns/gridColumnsSelector.d.ts +14 -1
- package/hooks/features/columns/gridColumnsSelector.js +52 -0
- package/hooks/features/columns/gridColumnsUtils.d.ts +1 -5
- package/hooks/features/columns/gridColumnsUtils.js +10 -12
- package/hooks/features/columns/index.d.ts +2 -2
- package/hooks/features/columns/index.js +2 -1
- package/hooks/features/columns/useGridColumnSpanning.js +62 -61
- package/hooks/features/columns/useGridColumns.js +20 -23
- package/hooks/features/dimensions/gridDimensionsApi.d.ts +60 -11
- package/hooks/features/dimensions/gridDimensionsSelectors.d.ts +2 -0
- package/hooks/features/dimensions/gridDimensionsSelectors.js +1 -0
- package/hooks/features/dimensions/index.d.ts +2 -0
- package/hooks/features/dimensions/index.js +1 -0
- package/hooks/features/dimensions/useGridDimensions.d.ts +7 -1
- package/hooks/features/dimensions/useGridDimensions.js +216 -148
- package/hooks/features/editing/useGridCellEditing.js +4 -4
- package/hooks/features/editing/useGridRowEditing.js +4 -4
- package/hooks/features/export/serializers/csvSerializer.js +3 -3
- package/hooks/features/export/useGridPrintExport.js +1 -1
- package/hooks/features/filter/gridFilterUtils.js +5 -5
- package/hooks/features/filter/useGridFilter.js +3 -3
- package/hooks/features/focus/gridFocusStateSelector.d.ts +2 -2
- package/hooks/features/focus/gridFocusStateSelector.js +2 -6
- package/hooks/features/focus/useGridFocus.js +3 -3
- package/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +3 -16
- package/hooks/features/pagination/gridPaginationUtils.js +2 -2
- package/hooks/features/pagination/useGridPagination.js +3 -5
- package/hooks/features/rowSelection/useGridRowSelection.js +1 -1
- package/hooks/features/rows/gridRowsInterfaces.d.ts +1 -0
- package/hooks/features/rows/gridRowsSelector.d.ts +2 -2
- package/hooks/features/rows/gridRowsSelector.js +5 -5
- package/hooks/features/rows/gridRowsUtils.d.ts +1 -1
- package/hooks/features/rows/gridRowsUtils.js +6 -6
- package/hooks/features/rows/useGridRows.js +7 -7
- package/hooks/features/rows/useGridRowsMeta.js +9 -6
- package/hooks/features/scroll/useGridScroll.js +8 -10
- package/hooks/features/sorting/gridSortingUtils.js +5 -3
- package/hooks/features/sorting/useGridSorting.d.ts +1 -1
- package/hooks/features/sorting/useGridSorting.js +15 -10
- package/hooks/features/virtualization/gridVirtualizationSelectors.d.ts +14 -0
- package/hooks/features/virtualization/gridVirtualizationSelectors.js +22 -2
- package/hooks/features/virtualization/useGridVirtualScroller.d.ts +27 -42
- package/hooks/features/virtualization/useGridVirtualScroller.js +441 -438
- package/hooks/features/virtualization/useGridVirtualization.d.ts +8 -0
- package/hooks/features/virtualization/useGridVirtualization.js +8 -1
- package/hooks/utils/index.d.ts +3 -0
- package/hooks/utils/index.js +4 -1
- package/hooks/utils/useGridApiContext.js +1 -1
- package/hooks/utils/useGridAriaAttributes.js +1 -2
- package/hooks/utils/useGridNativeEventListener.js +4 -9
- package/hooks/utils/useGridPrivateApiContext.js +1 -1
- package/hooks/utils/useGridRootProps.js +1 -1
- package/hooks/utils/useGridSelector.js +1 -1
- package/hooks/utils/useResizeObserver.d.ts +2 -0
- package/hooks/utils/useResizeObserver.js +36 -0
- package/hooks/utils/useRunOnce.d.ts +5 -0
- package/hooks/utils/useRunOnce.js +18 -0
- package/index.d.ts +0 -1
- package/index.js +1 -2
- package/internals/index.d.ts +13 -9
- package/internals/index.js +9 -7
- package/internals/utils/index.d.ts +1 -0
- package/internals/utils/index.js +2 -1
- package/internals/utils/propValidation.d.ts +4 -0
- package/internals/utils/propValidation.js +19 -0
- package/legacy/DataGrid/DataGrid.js +20 -29
- package/legacy/DataGrid/useDataGridComponent.js +2 -1
- package/legacy/DataGrid/useDataGridProps.js +1 -0
- package/legacy/colDef/gridDateColDef.js +1 -1
- package/legacy/components/GridColumnHeaders.js +3 -11
- package/legacy/components/GridDetailPanels.js +4 -0
- package/legacy/components/GridHeaders.js +53 -0
- package/legacy/components/GridPagination.js +1 -1
- package/legacy/components/GridPinnedRows.js +4 -0
- package/legacy/components/GridRow.js +258 -98
- package/legacy/components/GridScrollbarFillerCell.js +36 -0
- package/legacy/components/base/GridBody.js +2 -114
- package/legacy/components/base/GridOverlays.js +10 -25
- package/legacy/components/cell/GridActionsCell.js +1 -1
- package/legacy/components/cell/GridCell.js +70 -378
- package/legacy/components/columnHeaders/GridBaseColumnHeaders.js +1 -6
- package/legacy/components/columnHeaders/GridColumnHeaderItem.js +7 -3
- package/legacy/components/columnHeaders/GridColumnHeaderSortIcon.js +5 -2
- package/legacy/components/columnHeaders/GridColumnHeadersInner.js +1 -2
- package/legacy/components/containers/GridRoot.js +18 -15
- package/legacy/components/containers/GridRootStyles.js +215 -137
- package/legacy/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +1 -1
- package/legacy/components/panel/GridPanel.js +3 -4
- package/legacy/components/panel/filterPanel/GridFilterForm.js +31 -14
- package/legacy/components/panel/filterPanel/GridFilterPanel.js +49 -20
- package/legacy/components/toolbar/GridToolbarColumnsButton.js +40 -21
- package/legacy/components/toolbar/GridToolbarDensitySelector.js +40 -21
- package/legacy/components/toolbar/GridToolbarExport.js +6 -1
- package/legacy/components/toolbar/GridToolbarExportContainer.js +40 -21
- package/legacy/components/toolbar/GridToolbarFilterButton.js +6 -10
- package/legacy/components/toolbar/GridToolbarQuickFilter.js +4 -0
- package/legacy/components/virtualization/GridBottomContainer.js +25 -0
- package/legacy/components/virtualization/GridMainContainer.js +20 -0
- package/legacy/components/virtualization/GridTopContainer.js +35 -0
- package/legacy/components/virtualization/GridVirtualScrollbar.js +129 -0
- package/legacy/components/virtualization/GridVirtualScroller.js +67 -16
- package/legacy/components/virtualization/GridVirtualScrollerFiller.js +70 -0
- package/legacy/components/virtualization/GridVirtualScrollerRenderZone.js +2 -1
- package/legacy/constants/defaultGridSlotsComponents.js +6 -2
- package/legacy/constants/gridClasses.js +1 -1
- package/legacy/hooks/core/gridCoreSelector.js +7 -0
- package/legacy/hooks/core/useGridInitialization.js +4 -0
- package/legacy/hooks/core/useGridLoggerFactory.js +2 -2
- package/legacy/hooks/core/useGridRefs.js +13 -0
- package/legacy/hooks/core/useGridTheme.js +21 -0
- package/legacy/hooks/features/columnGrouping/gridColumnGroupsUtils.js +1 -1
- package/legacy/hooks/features/columnGrouping/useGridColumnGrouping.js +13 -18
- package/legacy/hooks/features/columnHeaders/useGridColumnHeaders.js +69 -181
- package/legacy/hooks/features/columnMenu/useGridColumnMenu.js +28 -23
- package/legacy/hooks/features/columns/gridColumnsInterfaces.js +9 -1
- package/legacy/hooks/features/columns/gridColumnsSelector.js +62 -0
- package/legacy/hooks/features/columns/gridColumnsUtils.js +10 -16
- package/legacy/hooks/features/columns/index.js +2 -1
- package/legacy/hooks/features/columns/useGridColumnSpanning.js +60 -59
- package/legacy/hooks/features/columns/useGridColumns.js +22 -23
- package/legacy/hooks/features/dimensions/gridDimensionsSelectors.js +3 -0
- package/legacy/hooks/features/dimensions/index.js +1 -0
- package/legacy/hooks/features/dimensions/useGridDimensions.js +226 -151
- package/legacy/hooks/features/editing/useGridCellEditing.js +4 -4
- package/legacy/hooks/features/editing/useGridRowEditing.js +4 -4
- package/legacy/hooks/features/export/serializers/csvSerializer.js +3 -3
- package/legacy/hooks/features/export/useGridPrintExport.js +1 -1
- package/legacy/hooks/features/filter/gridFilterUtils.js +5 -5
- package/legacy/hooks/features/filter/useGridFilter.js +3 -3
- package/legacy/hooks/features/focus/gridFocusStateSelector.js +2 -6
- package/legacy/hooks/features/focus/useGridFocus.js +3 -3
- package/legacy/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +3 -16
- package/legacy/hooks/features/pagination/gridPaginationUtils.js +2 -2
- package/legacy/hooks/features/pagination/useGridPagination.js +3 -5
- package/legacy/hooks/features/rowSelection/useGridRowSelection.js +1 -1
- package/legacy/hooks/features/rows/gridRowsSelector.js +5 -5
- package/legacy/hooks/features/rows/gridRowsUtils.js +6 -6
- package/legacy/hooks/features/rows/useGridParamsApi.js +4 -5
- package/legacy/hooks/features/rows/useGridRows.js +7 -7
- package/legacy/hooks/features/rows/useGridRowsMeta.js +9 -6
- package/legacy/hooks/features/scroll/useGridScroll.js +8 -10
- package/legacy/hooks/features/sorting/gridSortingUtils.js +5 -3
- package/legacy/hooks/features/sorting/useGridSorting.js +15 -10
- package/legacy/hooks/features/virtualization/gridVirtualizationSelectors.js +29 -1
- package/legacy/hooks/features/virtualization/useGridVirtualScroller.js +490 -483
- package/legacy/hooks/features/virtualization/useGridVirtualization.js +8 -1
- package/legacy/hooks/utils/index.js +4 -1
- package/legacy/hooks/utils/useGridApiContext.js +1 -1
- package/legacy/hooks/utils/useGridAriaAttributes.js +1 -2
- package/legacy/hooks/utils/useGridNativeEventListener.js +4 -9
- package/legacy/hooks/utils/useGridPrivateApiContext.js +1 -1
- package/legacy/hooks/utils/useGridRootProps.js +1 -1
- package/legacy/hooks/utils/useGridSelector.js +1 -1
- package/legacy/hooks/utils/useResizeObserver.js +36 -0
- package/legacy/hooks/utils/useRunOnce.js +18 -0
- package/legacy/index.js +1 -2
- package/legacy/internals/index.js +9 -7
- package/legacy/internals/utils/index.js +2 -1
- package/legacy/internals/utils/propValidation.js +21 -0
- package/legacy/locales/hrHR.js +161 -0
- package/legacy/locales/index.js +4 -1
- package/legacy/locales/ptPT.js +161 -0
- package/legacy/locales/zhHK.js +161 -0
- package/legacy/models/index.js +0 -1
- package/legacy/models/params/index.js +1 -2
- package/legacy/utils/createSelector.js +1 -1
- package/legacy/utils/exportAs.js +1 -1
- package/legacy/utils/utils.js +10 -1
- package/locales/hrHR.d.ts +1 -0
- package/locales/hrHR.js +149 -0
- package/locales/index.d.ts +3 -0
- package/locales/index.js +4 -1
- package/locales/ptPT.d.ts +1 -0
- package/locales/ptPT.js +149 -0
- package/locales/zhHK.d.ts +1 -0
- package/locales/zhHK.js +149 -0
- package/models/api/gridColumnGroupingApi.d.ts +2 -2
- package/models/api/gridCoreApi.d.ts +16 -16
- package/models/api/gridRowsMetaApi.d.ts +1 -1
- package/models/api/gridVirtualizationApi.d.ts +2 -3
- package/models/events/gridEventLookup.d.ts +3 -3
- package/models/gridFilterModel.d.ts +1 -1
- package/models/gridSlotsComponent.d.ts +16 -2
- package/models/gridStateCommunity.d.ts +5 -1
- package/models/index.d.ts +0 -1
- package/models/index.js +0 -1
- package/models/params/index.d.ts +0 -1
- package/models/params/index.js +1 -2
- package/models/props/DataGridProps.d.ts +7 -12
- package/modern/DataGrid/DataGrid.js +15 -27
- package/modern/DataGrid/useDataGridComponent.js +2 -1
- package/modern/DataGrid/useDataGridProps.js +1 -0
- package/modern/colDef/gridDateColDef.js +1 -1
- package/modern/components/GridColumnHeaders.js +3 -11
- package/modern/components/GridDetailPanels.js +4 -0
- package/modern/components/GridHeaders.js +53 -0
- package/modern/components/GridPagination.js +1 -1
- package/modern/components/GridPinnedRows.js +4 -0
- package/modern/components/GridRow.js +258 -96
- package/modern/components/GridScrollbarFillerCell.js +39 -0
- package/modern/components/base/GridBody.js +2 -116
- package/modern/components/base/GridOverlays.js +10 -16
- package/modern/components/cell/GridActionsCell.js +1 -1
- package/modern/components/cell/GridCell.js +66 -370
- package/modern/components/columnHeaders/GridBaseColumnHeaders.js +1 -6
- package/modern/components/columnHeaders/GridColumnHeaderItem.js +7 -3
- package/modern/components/columnHeaders/GridColumnHeaderSortIcon.js +5 -2
- package/modern/components/columnHeaders/GridColumnHeadersInner.js +1 -1
- package/modern/components/containers/GridRoot.js +18 -14
- package/modern/components/containers/GridRootStyles.js +307 -204
- package/modern/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +1 -1
- package/modern/components/panel/GridPanel.js +3 -4
- package/modern/components/panel/filterPanel/GridFilterForm.js +31 -14
- package/modern/components/panel/filterPanel/GridFilterPanel.js +46 -20
- package/modern/components/toolbar/GridToolbarColumnsButton.js +38 -21
- package/modern/components/toolbar/GridToolbarDensitySelector.js +38 -21
- package/modern/components/toolbar/GridToolbarExport.js +6 -1
- package/modern/components/toolbar/GridToolbarExportContainer.js +39 -22
- package/modern/components/toolbar/GridToolbarFilterButton.js +6 -10
- package/modern/components/toolbar/GridToolbarQuickFilter.js +4 -0
- package/modern/components/virtualization/GridBottomContainer.js +25 -0
- package/modern/components/virtualization/GridMainContainer.js +20 -0
- package/modern/components/virtualization/GridTopContainer.js +35 -0
- package/modern/components/virtualization/GridVirtualScrollbar.js +131 -0
- package/modern/components/virtualization/GridVirtualScroller.js +69 -16
- package/modern/components/virtualization/GridVirtualScrollerFiller.js +71 -0
- package/modern/components/virtualization/GridVirtualScrollerRenderZone.js +2 -1
- package/modern/constants/defaultGridSlotsComponents.js +6 -2
- package/modern/constants/gridClasses.js +1 -1
- package/modern/hooks/core/gridCoreSelector.js +5 -0
- package/modern/hooks/core/useGridInitialization.js +4 -0
- package/modern/hooks/core/useGridLoggerFactory.js +2 -2
- package/modern/hooks/core/useGridRefs.js +13 -0
- package/modern/hooks/core/useGridTheme.js +19 -0
- package/modern/hooks/features/columnGrouping/gridColumnGroupsUtils.js +1 -1
- package/modern/hooks/features/columnGrouping/useGridColumnGrouping.js +11 -16
- package/modern/hooks/features/columnHeaders/useGridColumnHeaders.js +67 -160
- package/modern/hooks/features/columnMenu/useGridColumnMenu.js +28 -23
- package/modern/hooks/features/columns/gridColumnsInterfaces.js +9 -1
- package/modern/hooks/features/columns/gridColumnsSelector.js +51 -0
- package/modern/hooks/features/columns/gridColumnsUtils.js +10 -12
- package/modern/hooks/features/columns/index.js +2 -1
- package/modern/hooks/features/columns/useGridColumnSpanning.js +62 -61
- package/modern/hooks/features/columns/useGridColumns.js +19 -21
- package/modern/hooks/features/dimensions/gridDimensionsSelectors.js +1 -0
- package/modern/hooks/features/dimensions/index.js +1 -0
- package/modern/hooks/features/dimensions/useGridDimensions.js +214 -146
- package/modern/hooks/features/editing/useGridCellEditing.js +4 -4
- package/modern/hooks/features/editing/useGridRowEditing.js +4 -4
- package/modern/hooks/features/export/serializers/csvSerializer.js +3 -3
- package/modern/hooks/features/export/useGridPrintExport.js +1 -1
- package/modern/hooks/features/filter/gridFilterUtils.js +5 -5
- package/modern/hooks/features/filter/useGridFilter.js +3 -3
- package/modern/hooks/features/focus/gridFocusStateSelector.js +2 -6
- package/modern/hooks/features/focus/useGridFocus.js +3 -3
- package/modern/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +3 -16
- package/modern/hooks/features/pagination/gridPaginationUtils.js +2 -2
- package/modern/hooks/features/pagination/useGridPagination.js +3 -5
- package/modern/hooks/features/rowSelection/useGridRowSelection.js +1 -1
- package/modern/hooks/features/rows/gridRowsSelector.js +2 -2
- package/modern/hooks/features/rows/gridRowsUtils.js +6 -6
- package/modern/hooks/features/rows/useGridRows.js +7 -7
- package/modern/hooks/features/rows/useGridRowsMeta.js +9 -6
- package/modern/hooks/features/scroll/useGridScroll.js +8 -9
- package/modern/hooks/features/sorting/gridSortingUtils.js +5 -3
- package/modern/hooks/features/sorting/useGridSorting.js +15 -10
- package/modern/hooks/features/virtualization/gridVirtualizationSelectors.js +22 -2
- package/modern/hooks/features/virtualization/useGridVirtualScroller.js +435 -432
- package/modern/hooks/features/virtualization/useGridVirtualization.js +8 -1
- package/modern/hooks/utils/index.js +4 -1
- package/modern/hooks/utils/useGridApiContext.js +1 -1
- package/modern/hooks/utils/useGridAriaAttributes.js +1 -1
- package/modern/hooks/utils/useGridNativeEventListener.js +3 -9
- package/modern/hooks/utils/useGridPrivateApiContext.js +1 -1
- package/modern/hooks/utils/useGridRootProps.js +1 -1
- package/modern/hooks/utils/useGridSelector.js +1 -1
- package/modern/hooks/utils/useResizeObserver.js +36 -0
- package/modern/hooks/utils/useRunOnce.js +18 -0
- package/modern/index.js +1 -2
- package/modern/internals/index.js +9 -7
- package/modern/internals/utils/index.js +2 -1
- package/modern/internals/utils/propValidation.js +19 -0
- package/modern/locales/hrHR.js +149 -0
- package/modern/locales/index.js +4 -1
- package/modern/locales/ptPT.js +149 -0
- package/modern/locales/zhHK.js +149 -0
- package/modern/models/index.js +0 -1
- package/modern/models/params/index.js +1 -2
- package/modern/utils/createSelector.js +1 -1
- package/modern/utils/exportAs.js +1 -1
- package/modern/utils/utils.js +10 -1
- package/node/DataGrid/DataGrid.js +15 -27
- package/node/DataGrid/useDataGridComponent.js +1 -0
- package/node/DataGrid/useDataGridProps.js +1 -0
- package/node/colDef/gridDateColDef.js +1 -1
- package/node/components/GridColumnHeaders.js +3 -11
- package/node/components/GridDetailPanels.js +10 -0
- package/node/components/GridHeaders.js +60 -0
- package/node/components/GridPagination.js +1 -1
- package/node/components/GridPinnedRows.js +10 -0
- package/node/components/GridRow.js +256 -94
- package/node/components/GridScrollbarFillerCell.js +47 -0
- package/node/components/base/GridBody.js +7 -118
- package/node/components/base/GridOverlays.js +9 -15
- package/node/components/cell/GridActionsCell.js +1 -1
- package/node/components/cell/GridCell.js +67 -370
- package/node/components/columnHeaders/GridBaseColumnHeaders.js +1 -6
- package/node/components/columnHeaders/GridColumnHeaderItem.js +8 -4
- package/node/components/columnHeaders/GridColumnHeaderSortIcon.js +5 -2
- package/node/components/columnHeaders/GridColumnHeadersInner.js +1 -1
- package/node/components/containers/GridRoot.js +17 -14
- package/node/components/containers/GridRootStyles.js +175 -72
- package/node/components/menu/columnMenu/menuItems/GridColumnMenuSortItem.js +1 -1
- package/node/components/panel/GridPanel.js +3 -4
- package/node/components/panel/filterPanel/GridFilterForm.js +30 -13
- package/node/components/panel/filterPanel/GridFilterPanel.js +45 -19
- package/node/components/toolbar/GridToolbarColumnsButton.js +36 -20
- package/node/components/toolbar/GridToolbarDensitySelector.js +36 -20
- package/node/components/toolbar/GridToolbarExport.js +6 -1
- package/node/components/toolbar/GridToolbarExportContainer.js +37 -21
- package/node/components/toolbar/GridToolbarFilterButton.js +6 -10
- package/node/components/toolbar/GridToolbarQuickFilter.js +4 -0
- package/node/components/virtualization/GridBottomContainer.js +34 -0
- package/node/components/{containers → virtualization}/GridMainContainer.js +7 -29
- package/node/components/virtualization/GridTopContainer.js +44 -0
- package/node/components/virtualization/GridVirtualScrollbar.js +138 -0
- package/node/components/virtualization/GridVirtualScroller.js +69 -17
- package/node/components/virtualization/GridVirtualScrollerFiller.js +77 -0
- package/node/components/virtualization/GridVirtualScrollerRenderZone.js +2 -1
- package/node/constants/defaultGridSlotsComponents.js +5 -1
- package/node/constants/gridClasses.js +1 -1
- package/node/hooks/core/gridCoreSelector.js +12 -0
- package/node/hooks/core/useGridInitialization.js +4 -0
- package/node/hooks/core/useGridLoggerFactory.js +2 -2
- package/node/hooks/core/useGridRefs.js +22 -0
- package/node/hooks/core/useGridTheme.js +29 -0
- package/node/hooks/features/columnGrouping/gridColumnGroupsUtils.js +1 -1
- package/node/hooks/features/columnGrouping/useGridColumnGrouping.js +11 -16
- package/node/hooks/features/columnHeaders/useGridColumnHeaders.js +65 -159
- package/node/hooks/features/columnMenu/useGridColumnMenu.js +28 -23
- package/node/hooks/features/columns/gridColumnsInterfaces.js +11 -1
- package/node/hooks/features/columns/gridColumnsSelector.js +52 -1
- package/node/hooks/features/columns/gridColumnsUtils.js +10 -13
- package/node/hooks/features/columns/index.js +22 -61
- package/node/hooks/features/columns/useGridColumnSpanning.js +62 -61
- package/node/hooks/features/columns/useGridColumns.js +20 -22
- package/node/hooks/features/dimensions/gridDimensionsSelectors.js +8 -0
- package/node/hooks/features/dimensions/index.js +11 -0
- package/node/hooks/features/dimensions/useGridDimensions.js +215 -144
- package/node/hooks/features/editing/useGridCellEditing.js +4 -4
- package/node/hooks/features/editing/useGridRowEditing.js +4 -4
- package/node/hooks/features/export/serializers/csvSerializer.js +3 -3
- package/node/hooks/features/export/useGridPrintExport.js +1 -1
- package/node/hooks/features/filter/gridFilterUtils.js +5 -5
- package/node/hooks/features/filter/useGridFilter.js +2 -2
- package/node/hooks/features/focus/gridFocusStateSelector.js +3 -7
- package/node/hooks/features/focus/useGridFocus.js +2 -2
- package/node/hooks/features/keyboardNavigation/useGridKeyboardNavigation.js +2 -15
- package/node/hooks/features/pagination/gridPaginationUtils.js +2 -2
- package/node/hooks/features/pagination/useGridPagination.js +3 -5
- package/node/hooks/features/rowSelection/useGridRowSelection.js +1 -1
- package/node/hooks/features/rows/gridRowsSelector.js +2 -2
- package/node/hooks/features/rows/gridRowsUtils.js +6 -6
- package/node/hooks/features/rows/useGridRows.js +7 -7
- package/node/hooks/features/rows/useGridRowsMeta.js +7 -5
- package/node/hooks/features/scroll/useGridScroll.js +8 -9
- package/node/hooks/features/sorting/gridSortingUtils.js +5 -3
- package/node/hooks/features/sorting/useGridSorting.js +15 -10
- package/node/hooks/features/virtualization/gridVirtualizationSelectors.js +22 -2
- package/node/hooks/features/virtualization/useGridVirtualScroller.js +434 -431
- package/node/hooks/features/virtualization/useGridVirtualization.js +9 -1
- package/node/hooks/utils/index.js +36 -0
- package/node/hooks/utils/useGridApiContext.js +1 -1
- package/node/hooks/utils/useGridAriaAttributes.js +1 -1
- package/node/hooks/utils/useGridNativeEventListener.js +3 -9
- package/node/hooks/utils/useGridPrivateApiContext.js +1 -1
- package/node/hooks/utils/useGridRootProps.js +1 -1
- package/node/hooks/utils/useGridSelector.js +1 -1
- package/node/hooks/utils/useResizeObserver.js +44 -0
- package/node/hooks/utils/useRunOnce.js +27 -0
- package/node/index.js +1 -13
- package/node/internals/index.js +86 -71
- package/node/internals/utils/index.js +11 -0
- package/node/internals/utils/propValidation.js +26 -0
- package/node/locales/hrHR.js +155 -0
- package/node/locales/index.js +33 -0
- package/node/locales/ptPT.js +155 -0
- package/node/locales/zhHK.js +155 -0
- package/node/models/index.js +0 -11
- package/node/models/params/index.js +0 -11
- package/node/utils/createSelector.js +1 -1
- package/node/utils/exportAs.js +1 -1
- package/node/utils/utils.js +11 -1
- package/package.json +6 -6
- package/utils/createSelector.js +1 -1
- package/utils/exportAs.js +1 -1
- package/utils/utils.d.ts +6 -0
- package/utils/utils.js +10 -1
- package/components/DataGridVirtualScroller.d.ts +0 -3
- package/components/DataGridVirtualScroller.js +0 -35
- package/components/containers/GridMainContainer.js +0 -43
- package/legacy/components/DataGridVirtualScroller.js +0 -32
- package/legacy/components/containers/GridMainContainer.js +0 -45
- package/legacy/models/gridRootContainerRef.js +0 -1
- package/legacy/models/params/gridRenderedRowsIntervalChangeParams.js +0 -1
- package/models/gridRootContainerRef.d.ts +0 -5
- package/models/gridRootContainerRef.js +0 -1
- package/models/params/gridRenderedRowsIntervalChangeParams.d.ts +0 -10
- package/models/params/gridRenderedRowsIntervalChangeParams.js +0 -1
- package/modern/components/DataGridVirtualScroller.js +0 -35
- package/modern/components/containers/GridMainContainer.js +0 -42
- package/modern/models/gridRootContainerRef.js +0 -1
- package/modern/models/params/gridRenderedRowsIntervalChangeParams.js +0 -1
- package/node/components/DataGridVirtualScroller.js +0 -42
- package/node/models/gridRootContainerRef.js +0 -5
- package/node/models/params/gridRenderedRowsIntervalChangeParams.js +0 -5
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
-
var _excluded = ["item", "hasMultipleFilters", "deleteFilter", "applyFilterChanges", "
|
|
3
|
+
var _excluded = ["item", "hasMultipleFilters", "deleteFilter", "applyFilterChanges", "showMultiFilterOperators", "disableMultiFilterOperator", "applyMultiFilterOperatorChanges", "focusElementRef", "logicOperators", "columnsSort", "filterColumns", "deleteIconProps", "logicOperatorInputProps", "operatorInputProps", "columnInputProps", "valueInputProps", "readOnly", "children"],
|
|
4
4
|
_excluded2 = ["InputComponentProps"];
|
|
5
5
|
import * as React from 'react';
|
|
6
6
|
import PropTypes from 'prop-types';
|
|
7
7
|
import { unstable_composeClasses as composeClasses, unstable_useId as useId, unstable_capitalize as capitalize } from '@mui/utils';
|
|
8
8
|
import { styled } from '@mui/material/styles';
|
|
9
9
|
import clsx from 'clsx';
|
|
10
|
-
import { gridFilterableColumnDefinitionsSelector } from '../../../hooks/features/columns/gridColumnsSelector';
|
|
10
|
+
import { gridFilterableColumnDefinitionsSelector, gridColumnLookupSelector } from '../../../hooks/features/columns/gridColumnsSelector';
|
|
11
11
|
import { gridFilterModelSelector } from '../../../hooks/features/filter/gridFilterSelector';
|
|
12
12
|
import { useGridSelector } from '../../../hooks/utils/useGridSelector';
|
|
13
13
|
import { GridLogicOperator } from '../../../models/gridFilterItem';
|
|
@@ -103,7 +103,7 @@ var getLogicOperatorLocaleKey = function getLogicOperatorLocaleKey(logicOperator
|
|
|
103
103
|
case GridLogicOperator.Or:
|
|
104
104
|
return 'filterPanelOperatorOr';
|
|
105
105
|
default:
|
|
106
|
-
throw new Error('MUI: Invalid `logicOperator` property in the `GridFilterPanel`.');
|
|
106
|
+
throw new Error('MUI X: Invalid `logicOperator` property in the `GridFilterPanel`.');
|
|
107
107
|
}
|
|
108
108
|
};
|
|
109
109
|
var getColumnLabel = function getColumnLabel(col) {
|
|
@@ -111,12 +111,11 @@ var getColumnLabel = function getColumnLabel(col) {
|
|
|
111
111
|
};
|
|
112
112
|
var collator = new Intl.Collator();
|
|
113
113
|
var GridFilterForm = /*#__PURE__*/React.forwardRef(function GridFilterForm(props, ref) {
|
|
114
|
-
var _rootProps$slotProps, _rootProps$slotProps2, _baseSelectProps$nati, _rootProps$slotProps3, _rootProps$slotProps4, _rootProps$slotProps5, _rootProps$slotProps6, _rootProps$slotProps7, _rootProps$slotProps8, _currentColumn$filter2;
|
|
114
|
+
var _filterModel$logicOpe, _rootProps$slotProps, _rootProps$slotProps2, _baseSelectProps$nati, _rootProps$slotProps3, _rootProps$slotProps4, _rootProps$slotProps5, _rootProps$slotProps6, _rootProps$slotProps7, _rootProps$slotProps8, _currentColumn$filter2;
|
|
115
115
|
var item = props.item,
|
|
116
116
|
hasMultipleFilters = props.hasMultipleFilters,
|
|
117
117
|
deleteFilter = props.deleteFilter,
|
|
118
118
|
applyFilterChanges = props.applyFilterChanges,
|
|
119
|
-
multiFilterOperator = props.multiFilterOperator,
|
|
120
119
|
showMultiFilterOperators = props.showMultiFilterOperators,
|
|
121
120
|
disableMultiFilterOperator = props.disableMultiFilterOperator,
|
|
122
121
|
applyMultiFilterOperatorChanges = props.applyMultiFilterOperatorChanges,
|
|
@@ -135,9 +134,11 @@ var GridFilterForm = /*#__PURE__*/React.forwardRef(function GridFilterForm(props
|
|
|
135
134
|
columnInputProps = _props$columnInputPro === void 0 ? {} : _props$columnInputPro,
|
|
136
135
|
_props$valueInputProp = props.valueInputProps,
|
|
137
136
|
valueInputProps = _props$valueInputProp === void 0 ? {} : _props$valueInputProp,
|
|
137
|
+
readOnly = props.readOnly,
|
|
138
138
|
children = props.children,
|
|
139
139
|
other = _objectWithoutProperties(props, _excluded);
|
|
140
140
|
var apiRef = useGridApiContext();
|
|
141
|
+
var columnLookup = useGridSelector(apiRef, gridColumnLookupSelector);
|
|
141
142
|
var filterableColumns = useGridSelector(apiRef, gridFilterableColumnDefinitionsSelector);
|
|
142
143
|
var filterModel = useGridSelector(apiRef, gridFilterModelSelector);
|
|
143
144
|
var columnSelectId = useId();
|
|
@@ -148,6 +149,7 @@ var GridFilterForm = /*#__PURE__*/React.forwardRef(function GridFilterForm(props
|
|
|
148
149
|
var classes = useUtilityClasses(rootProps);
|
|
149
150
|
var valueRef = React.useRef(null);
|
|
150
151
|
var filterSelectorRef = React.useRef(null);
|
|
152
|
+
var multiFilterOperator = (_filterModel$logicOpe = filterModel.logicOperator) != null ? _filterModel$logicOpe : GridLogicOperator.And;
|
|
151
153
|
var hasLogicOperatorColumn = hasMultipleFilters && logicOperators.length > 0;
|
|
152
154
|
var baseFormControlProps = ((_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.baseFormControl) || {};
|
|
153
155
|
var baseSelectProps = ((_rootProps$slotProps2 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps2.baseSelect) || {};
|
|
@@ -158,6 +160,15 @@ var GridFilterForm = /*#__PURE__*/React.forwardRef(function GridFilterForm(props
|
|
|
158
160
|
valueInputPropsOther = _objectWithoutProperties(valueInputProps, _excluded2);
|
|
159
161
|
var _React$useMemo = React.useMemo(function () {
|
|
160
162
|
var itemField = item.field;
|
|
163
|
+
|
|
164
|
+
// Yields a valid value if the current filter belongs to a column that is not filterable
|
|
165
|
+
var selectedNonFilterableColumn = columnLookup[item.field].filterable === false ? columnLookup[item.field] : null;
|
|
166
|
+
if (selectedNonFilterableColumn) {
|
|
167
|
+
return {
|
|
168
|
+
filteredColumns: [selectedNonFilterableColumn],
|
|
169
|
+
selectedField: itemField
|
|
170
|
+
};
|
|
171
|
+
}
|
|
161
172
|
if (filterColumns === undefined || typeof filterColumns !== 'function') {
|
|
162
173
|
return {
|
|
163
174
|
filteredColumns: filterableColumns,
|
|
@@ -179,7 +190,7 @@ var GridFilterForm = /*#__PURE__*/React.forwardRef(function GridFilterForm(props
|
|
|
179
190
|
}),
|
|
180
191
|
selectedField: itemField
|
|
181
192
|
};
|
|
182
|
-
}, [filterColumns, filterModel == null ? void 0 : filterModel.items, filterableColumns, item.field]),
|
|
193
|
+
}, [filterColumns, filterModel == null ? void 0 : filterModel.items, filterableColumns, item.field, columnLookup]),
|
|
183
194
|
filteredColumns = _React$useMemo.filteredColumns,
|
|
184
195
|
selectedField = _React$useMemo.selectedField;
|
|
185
196
|
var sortedFilteredColumns = React.useMemo(function () {
|
|
@@ -302,7 +313,8 @@ var GridFilterForm = /*#__PURE__*/React.forwardRef(function GridFilterForm(props
|
|
|
302
313
|
"aria-label": apiRef.current.getLocaleText('filterPanelDeleteIconLabel'),
|
|
303
314
|
title: apiRef.current.getLocaleText('filterPanelDeleteIconLabel'),
|
|
304
315
|
onClick: handleDeleteFilter,
|
|
305
|
-
size: "small"
|
|
316
|
+
size: "small",
|
|
317
|
+
disabled: readOnly
|
|
306
318
|
}, (_rootProps$slotProps5 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps5.baseIconButton, {
|
|
307
319
|
children: /*#__PURE__*/_jsx(rootProps.slots.filterPanelDeleteIcon, {
|
|
308
320
|
fontSize: "small"
|
|
@@ -351,7 +363,8 @@ var GridFilterForm = /*#__PURE__*/React.forwardRef(function GridFilterForm(props
|
|
|
351
363
|
label: apiRef.current.getLocaleText('filterPanelColumns'),
|
|
352
364
|
value: selectedField != null ? selectedField : '',
|
|
353
365
|
onChange: changeColumn,
|
|
354
|
-
native: isBaseSelectNative
|
|
366
|
+
native: isBaseSelectNative,
|
|
367
|
+
disabled: readOnly
|
|
355
368
|
}, (_rootProps$slotProps7 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps7.baseSelect, {
|
|
356
369
|
children: sortedFilteredColumns.map(function (col) {
|
|
357
370
|
return /*#__PURE__*/_createElement(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
|
|
@@ -378,7 +391,8 @@ var GridFilterForm = /*#__PURE__*/React.forwardRef(function GridFilterForm(props
|
|
|
378
391
|
value: item.operator,
|
|
379
392
|
onChange: changeOperator,
|
|
380
393
|
native: isBaseSelectNative,
|
|
381
|
-
inputRef: filterSelectorRef
|
|
394
|
+
inputRef: filterSelectorRef,
|
|
395
|
+
disabled: readOnly
|
|
382
396
|
}, (_rootProps$slotProps8 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps8.baseSelect, {
|
|
383
397
|
children: currentColumn == null || (_currentColumn$filter2 = currentColumn.filterOperators) == null ? void 0 : _currentColumn$filter2.map(function (operator) {
|
|
384
398
|
return /*#__PURE__*/_createElement(rootProps.slots.baseSelectOption, _extends({}, baseSelectOptionProps, {
|
|
@@ -398,7 +412,8 @@ var GridFilterForm = /*#__PURE__*/React.forwardRef(function GridFilterForm(props
|
|
|
398
412
|
apiRef: apiRef,
|
|
399
413
|
item: item,
|
|
400
414
|
applyValue: applyFilterChanges,
|
|
401
|
-
focusElementRef: valueRef
|
|
415
|
+
focusElementRef: valueRef,
|
|
416
|
+
disabled: readOnly
|
|
402
417
|
}, currentOperator.InputComponentProps, InputComponentProps), item.field) : null
|
|
403
418
|
}))]
|
|
404
419
|
}));
|
|
@@ -481,15 +496,17 @@ process.env.NODE_ENV !== "production" ? GridFilterForm.propTypes = {
|
|
|
481
496
|
* @default [GridLogicOperator.And, GridLogicOperator.Or]
|
|
482
497
|
*/
|
|
483
498
|
logicOperators: PropTypes.arrayOf(PropTypes.oneOf(['and', 'or']).isRequired),
|
|
484
|
-
/**
|
|
485
|
-
* The current logic operator applied.
|
|
486
|
-
*/
|
|
487
|
-
multiFilterOperator: PropTypes.oneOf(['and', 'or']),
|
|
488
499
|
/**
|
|
489
500
|
* Props passed to the operator input component.
|
|
490
501
|
* @default {}
|
|
491
502
|
*/
|
|
492
503
|
operatorInputProps: PropTypes.any,
|
|
504
|
+
/**
|
|
505
|
+
* `true` if the filter is disabled/read only.
|
|
506
|
+
* i.e. `colDef.fiterable = false` but passed in `filterModel`
|
|
507
|
+
* @default false
|
|
508
|
+
*/
|
|
509
|
+
readOnly: PropTypes.bool,
|
|
493
510
|
/**
|
|
494
511
|
* If `true`, the logic operator field is visible.
|
|
495
512
|
*/
|
|
@@ -13,7 +13,7 @@ import { GridFilterForm } from './GridFilterForm';
|
|
|
13
13
|
import { useGridRootProps } from '../../../hooks/utils/useGridRootProps';
|
|
14
14
|
import { useGridSelector } from '../../../hooks/utils/useGridSelector';
|
|
15
15
|
import { gridFilterModelSelector } from '../../../hooks/features/filter/gridFilterSelector';
|
|
16
|
-
import { gridFilterableColumnDefinitionsSelector } from '../../../hooks/features/columns/gridColumnsSelector';
|
|
16
|
+
import { gridFilterableColumnDefinitionsSelector, gridFilterableColumnLookupSelector } from '../../../hooks/features/columns/gridColumnsSelector';
|
|
17
17
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
18
18
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
19
19
|
var getGridFilter = function getGridFilter(col) {
|
|
@@ -29,6 +29,7 @@ var GridFilterPanel = /*#__PURE__*/React.forwardRef(function GridFilterPanel(pro
|
|
|
29
29
|
var rootProps = useGridRootProps();
|
|
30
30
|
var filterModel = useGridSelector(apiRef, gridFilterModelSelector);
|
|
31
31
|
var filterableColumns = useGridSelector(apiRef, gridFilterableColumnDefinitionsSelector);
|
|
32
|
+
var filterableColumnsLookup = useGridSelector(apiRef, gridFilterableColumnLookupSelector);
|
|
32
33
|
var lastFilterRef = React.useRef(null);
|
|
33
34
|
var placeholderFilter = React.useRef(null);
|
|
34
35
|
var _props$logicOperators = props.logicOperators,
|
|
@@ -105,65 +106,93 @@ var GridFilterPanel = /*#__PURE__*/React.forwardRef(function GridFilterPanel(pro
|
|
|
105
106
|
return placeholderFilter.current ? [placeholderFilter.current] : [];
|
|
106
107
|
}, [filterModel.items, getDefaultFilter]);
|
|
107
108
|
var hasMultipleFilters = items.length > 1;
|
|
108
|
-
var
|
|
109
|
+
var _React$useMemo = React.useMemo(function () {
|
|
110
|
+
return items.reduce(function (acc, item) {
|
|
111
|
+
if (filterableColumnsLookup[item.field]) {
|
|
112
|
+
acc.validFilters.push(item);
|
|
113
|
+
} else {
|
|
114
|
+
acc.readOnlyFilters.push(item);
|
|
115
|
+
}
|
|
116
|
+
return acc;
|
|
117
|
+
}, {
|
|
118
|
+
readOnlyFilters: [],
|
|
119
|
+
validFilters: []
|
|
120
|
+
});
|
|
121
|
+
}, [items, filterableColumnsLookup]),
|
|
122
|
+
readOnlyFilters = _React$useMemo.readOnlyFilters,
|
|
123
|
+
validFilters = _React$useMemo.validFilters;
|
|
124
|
+
var addNewFilter = React.useCallback(function () {
|
|
109
125
|
var newFilter = getNewFilter();
|
|
110
126
|
if (!newFilter) {
|
|
111
127
|
return;
|
|
112
128
|
}
|
|
113
129
|
apiRef.current.upsertFilterItems([].concat(_toConsumableArray(items), [newFilter]));
|
|
114
|
-
};
|
|
130
|
+
}, [apiRef, getNewFilter, items]);
|
|
115
131
|
var deleteFilter = React.useCallback(function (item) {
|
|
116
|
-
var shouldCloseFilterPanel =
|
|
132
|
+
var shouldCloseFilterPanel = validFilters.length === 1;
|
|
117
133
|
apiRef.current.deleteFilterItem(item);
|
|
118
134
|
if (shouldCloseFilterPanel) {
|
|
119
135
|
apiRef.current.hideFilterPanel();
|
|
120
136
|
}
|
|
121
|
-
}, [apiRef,
|
|
122
|
-
var handleRemoveAll = function
|
|
123
|
-
if (
|
|
124
|
-
apiRef.current.deleteFilterItem(
|
|
125
|
-
apiRef.current.hideFilterPanel();
|
|
137
|
+
}, [apiRef, validFilters.length]);
|
|
138
|
+
var handleRemoveAll = React.useCallback(function () {
|
|
139
|
+
if (validFilters.length === 1 && validFilters[0].value === undefined) {
|
|
140
|
+
apiRef.current.deleteFilterItem(validFilters[0]);
|
|
141
|
+
return apiRef.current.hideFilterPanel();
|
|
126
142
|
}
|
|
127
|
-
apiRef.current.setFilterModel(_extends({}, filterModel, {
|
|
128
|
-
items:
|
|
143
|
+
return apiRef.current.setFilterModel(_extends({}, filterModel, {
|
|
144
|
+
items: readOnlyFilters
|
|
129
145
|
}));
|
|
130
|
-
};
|
|
146
|
+
}, [apiRef, readOnlyFilters, filterModel, validFilters]);
|
|
131
147
|
React.useEffect(function () {
|
|
132
148
|
if (logicOperators.length > 0 && filterModel.logicOperator && !logicOperators.includes(filterModel.logicOperator)) {
|
|
133
149
|
applyFilterLogicOperator(logicOperators[0]);
|
|
134
150
|
}
|
|
135
151
|
}, [logicOperators, applyFilterLogicOperator, filterModel.logicOperator]);
|
|
136
152
|
React.useEffect(function () {
|
|
137
|
-
if (
|
|
153
|
+
if (validFilters.length > 0) {
|
|
138
154
|
lastFilterRef.current.focus();
|
|
139
155
|
}
|
|
140
|
-
}, [
|
|
156
|
+
}, [validFilters.length]);
|
|
141
157
|
return /*#__PURE__*/_jsxs(GridPanelWrapper, _extends({
|
|
142
158
|
ref: ref
|
|
143
159
|
}, other, {
|
|
144
|
-
children: [/*#__PURE__*/
|
|
145
|
-
children:
|
|
160
|
+
children: [/*#__PURE__*/_jsxs(GridPanelContent, {
|
|
161
|
+
children: [readOnlyFilters.map(function (item, index) {
|
|
146
162
|
return /*#__PURE__*/_jsx(GridFilterForm, _extends({
|
|
147
163
|
item: item,
|
|
148
164
|
applyFilterChanges: applyFilter,
|
|
149
165
|
deleteFilter: deleteFilter,
|
|
150
166
|
hasMultipleFilters: hasMultipleFilters,
|
|
151
167
|
showMultiFilterOperators: index > 0,
|
|
152
|
-
multiFilterOperator: filterModel.logicOperator,
|
|
153
168
|
disableMultiFilterOperator: index !== 1,
|
|
154
169
|
applyMultiFilterOperatorChanges: applyFilterLogicOperator,
|
|
155
|
-
focusElementRef:
|
|
170
|
+
focusElementRef: null,
|
|
171
|
+
readOnly: true,
|
|
156
172
|
logicOperators: logicOperators,
|
|
157
173
|
columnsSort: columnsSort
|
|
158
174
|
}, filterFormProps), item.id == null ? index : item.id);
|
|
159
|
-
})
|
|
175
|
+
}), validFilters.map(function (item, index) {
|
|
176
|
+
return /*#__PURE__*/_jsx(GridFilterForm, _extends({
|
|
177
|
+
item: item,
|
|
178
|
+
applyFilterChanges: applyFilter,
|
|
179
|
+
deleteFilter: deleteFilter,
|
|
180
|
+
hasMultipleFilters: hasMultipleFilters,
|
|
181
|
+
showMultiFilterOperators: readOnlyFilters.length + index > 0,
|
|
182
|
+
disableMultiFilterOperator: readOnlyFilters.length + index !== 1,
|
|
183
|
+
applyMultiFilterOperatorChanges: applyFilterLogicOperator,
|
|
184
|
+
focusElementRef: index === validFilters.length - 1 ? lastFilterRef : null,
|
|
185
|
+
logicOperators: logicOperators,
|
|
186
|
+
columnsSort: columnsSort
|
|
187
|
+
}, filterFormProps), item.id == null ? index + readOnlyFilters.length : item.id);
|
|
188
|
+
})]
|
|
160
189
|
}), !rootProps.disableMultipleColumnsFiltering && !(disableAddFilterButton && disableRemoveAllButton) ? /*#__PURE__*/_jsxs(GridPanelFooter, {
|
|
161
190
|
children: [!disableAddFilterButton ? /*#__PURE__*/_jsx(rootProps.slots.baseButton, _extends({
|
|
162
191
|
onClick: addNewFilter,
|
|
163
192
|
startIcon: /*#__PURE__*/_jsx(rootProps.slots.filterPanelAddIcon, {})
|
|
164
193
|
}, (_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.baseButton, {
|
|
165
194
|
children: apiRef.current.getLocaleText('filterPanelAddFilter')
|
|
166
|
-
})) : /*#__PURE__*/_jsx("span", {}), !disableRemoveAllButton ? /*#__PURE__*/_jsx(rootProps.slots.baseButton, _extends({
|
|
195
|
+
})) : /*#__PURE__*/_jsx("span", {}), !disableRemoveAllButton && validFilters.length > 0 ? /*#__PURE__*/_jsx(rootProps.slots.baseButton, _extends({
|
|
167
196
|
onClick: handleRemoveAll,
|
|
168
197
|
startIcon: /*#__PURE__*/_jsx(rootProps.slots.filterPanelRemoveAllIcon, {})
|
|
169
198
|
}, (_rootProps$slotProps2 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps2.baseButton, {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
-
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
-
var _excluded = ["onClick"];
|
|
4
2
|
import * as React from 'react';
|
|
3
|
+
import PropTypes from 'prop-types';
|
|
5
4
|
import { unstable_useId as useId } from '@mui/material/utils';
|
|
6
5
|
import { useGridSelector } from '../../hooks/utils/useGridSelector';
|
|
7
6
|
import { gridPreferencePanelStateSelector } from '../../hooks/features/preferencesPanel/gridPreferencePanelSelector';
|
|
@@ -9,22 +8,25 @@ import { GridPreferencePanelsValue } from '../../hooks/features/preferencesPanel
|
|
|
9
8
|
import { useGridApiContext } from '../../hooks/utils/useGridApiContext';
|
|
10
9
|
import { useGridRootProps } from '../../hooks/utils/useGridRootProps';
|
|
11
10
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
12
|
-
|
|
13
|
-
var _rootProps$slotProps;
|
|
14
|
-
var
|
|
15
|
-
|
|
11
|
+
var GridToolbarColumnsButton = /*#__PURE__*/React.forwardRef(function GridToolbarColumnsButton(props, ref) {
|
|
12
|
+
var _rootProps$slotProps, _rootProps$slotProps2;
|
|
13
|
+
var _props$slotProps = props.slotProps,
|
|
14
|
+
slotProps = _props$slotProps === void 0 ? {} : _props$slotProps;
|
|
15
|
+
var buttonProps = slotProps.button || {};
|
|
16
|
+
var tooltipProps = slotProps.tooltip || {};
|
|
16
17
|
var columnButtonId = useId();
|
|
17
18
|
var columnPanelId = useId();
|
|
18
19
|
var apiRef = useGridApiContext();
|
|
19
20
|
var rootProps = useGridRootProps();
|
|
20
21
|
var preferencePanel = useGridSelector(apiRef, gridPreferencePanelStateSelector);
|
|
21
22
|
var showColumns = function showColumns(event) {
|
|
23
|
+
var _buttonProps$onClick;
|
|
22
24
|
if (preferencePanel.open && preferencePanel.openedPanelValue === GridPreferencePanelsValue.columns) {
|
|
23
25
|
apiRef.current.hidePreferences();
|
|
24
26
|
} else {
|
|
25
27
|
apiRef.current.showPreferences(GridPreferencePanelsValue.columns, columnPanelId, columnButtonId);
|
|
26
28
|
}
|
|
27
|
-
onClick == null || onClick(event);
|
|
29
|
+
(_buttonProps$onClick = buttonProps.onClick) == null || _buttonProps$onClick.call(buttonProps, event);
|
|
28
30
|
};
|
|
29
31
|
|
|
30
32
|
// Disable the button if the corresponding is disabled
|
|
@@ -32,18 +34,35 @@ export var GridToolbarColumnsButton = /*#__PURE__*/React.forwardRef(function Gri
|
|
|
32
34
|
return null;
|
|
33
35
|
}
|
|
34
36
|
var isOpen = preferencePanel.open && preferencePanel.panelId === columnPanelId;
|
|
35
|
-
return /*#__PURE__*/_jsx(rootProps.slots.
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
37
|
+
return /*#__PURE__*/_jsx(rootProps.slots.baseTooltip, _extends({
|
|
38
|
+
title: apiRef.current.getLocaleText('toolbarColumnsLabel'),
|
|
39
|
+
enterDelay: 1000
|
|
40
|
+
}, tooltipProps, (_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.baseTooltip, {
|
|
41
|
+
children: /*#__PURE__*/_jsx(rootProps.slots.baseButton, _extends({
|
|
42
|
+
ref: ref,
|
|
43
|
+
id: columnButtonId,
|
|
44
|
+
size: "small",
|
|
45
|
+
"aria-label": apiRef.current.getLocaleText('toolbarColumnsLabel'),
|
|
46
|
+
"aria-haspopup": "menu",
|
|
47
|
+
"aria-expanded": isOpen,
|
|
48
|
+
"aria-controls": isOpen ? columnPanelId : undefined,
|
|
49
|
+
startIcon: /*#__PURE__*/_jsx(rootProps.slots.columnSelectorIcon, {})
|
|
50
|
+
}, buttonProps, {
|
|
51
|
+
onClick: showColumns
|
|
52
|
+
}, (_rootProps$slotProps2 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps2.baseButton, {
|
|
53
|
+
children: apiRef.current.getLocaleText('toolbarColumns')
|
|
54
|
+
}))
|
|
48
55
|
}));
|
|
49
|
-
});
|
|
56
|
+
});
|
|
57
|
+
process.env.NODE_ENV !== "production" ? GridToolbarColumnsButton.propTypes = {
|
|
58
|
+
// ----------------------------- Warning --------------------------------
|
|
59
|
+
// | These PropTypes are generated from the TypeScript type definitions |
|
|
60
|
+
// | To update them edit the TypeScript types and run "yarn proptypes" |
|
|
61
|
+
// ----------------------------------------------------------------------
|
|
62
|
+
/**
|
|
63
|
+
* The props used for each slot inside.
|
|
64
|
+
* @default {}
|
|
65
|
+
*/
|
|
66
|
+
slotProps: PropTypes.object
|
|
67
|
+
} : void 0;
|
|
68
|
+
export { GridToolbarColumnsButton };
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
3
|
-
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
4
|
-
var _excluded = ["onClick"];
|
|
5
3
|
import * as React from 'react';
|
|
4
|
+
import PropTypes from 'prop-types';
|
|
6
5
|
import { unstable_useId as useId, unstable_useForkRef as useForkRef } from '@mui/utils';
|
|
7
6
|
import MenuList from '@mui/material/MenuList';
|
|
8
7
|
import MenuItem from '@mui/material/MenuItem';
|
|
@@ -16,10 +15,12 @@ import { useGridRootProps } from '../../hooks/utils/useGridRootProps';
|
|
|
16
15
|
import { gridClasses } from '../../constants/gridClasses';
|
|
17
16
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
18
17
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
19
|
-
|
|
20
|
-
var _rootProps$slotProps;
|
|
21
|
-
var
|
|
22
|
-
|
|
18
|
+
var GridToolbarDensitySelector = /*#__PURE__*/React.forwardRef(function GridToolbarDensitySelector(props, ref) {
|
|
19
|
+
var _rootProps$slotProps, _rootProps$slotProps2;
|
|
20
|
+
var _props$slotProps = props.slotProps,
|
|
21
|
+
slotProps = _props$slotProps === void 0 ? {} : _props$slotProps;
|
|
22
|
+
var buttonProps = slotProps.button || {};
|
|
23
|
+
var tooltipProps = slotProps.tooltip || {};
|
|
23
24
|
var apiRef = useGridApiContext();
|
|
24
25
|
var rootProps = useGridRootProps();
|
|
25
26
|
var densityValue = useGridSelector(apiRef, gridDensityValueSelector);
|
|
@@ -55,10 +56,11 @@ export var GridToolbarDensitySelector = /*#__PURE__*/React.forwardRef(function G
|
|
|
55
56
|
}
|
|
56
57
|
}, [densityValue, rootProps]);
|
|
57
58
|
var handleDensitySelectorOpen = function handleDensitySelectorOpen(event) {
|
|
59
|
+
var _buttonProps$onClick;
|
|
58
60
|
setOpen(function (prevOpen) {
|
|
59
61
|
return !prevOpen;
|
|
60
62
|
});
|
|
61
|
-
onClick == null || onClick(event);
|
|
63
|
+
(_buttonProps$onClick = buttonProps.onClick) == null || _buttonProps$onClick.call(buttonProps, event);
|
|
62
64
|
};
|
|
63
65
|
var handleDensitySelectorClose = function handleDensitySelectorClose() {
|
|
64
66
|
setOpen(false);
|
|
@@ -92,19 +94,24 @@ export var GridToolbarDensitySelector = /*#__PURE__*/React.forwardRef(function G
|
|
|
92
94
|
}, index);
|
|
93
95
|
});
|
|
94
96
|
return /*#__PURE__*/_jsxs(React.Fragment, {
|
|
95
|
-
children: [/*#__PURE__*/_jsx(rootProps.slots.
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
97
|
+
children: [/*#__PURE__*/_jsx(rootProps.slots.baseTooltip, _extends({
|
|
98
|
+
title: apiRef.current.getLocaleText('toolbarDensityLabel'),
|
|
99
|
+
enterDelay: 1000
|
|
100
|
+
}, tooltipProps, (_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.baseTooltip, {
|
|
101
|
+
children: /*#__PURE__*/_jsx(rootProps.slots.baseButton, _extends({
|
|
102
|
+
ref: handleRef,
|
|
103
|
+
size: "small",
|
|
104
|
+
startIcon: startIcon,
|
|
105
|
+
"aria-label": apiRef.current.getLocaleText('toolbarDensityLabel'),
|
|
106
|
+
"aria-haspopup": "menu",
|
|
107
|
+
"aria-expanded": open,
|
|
108
|
+
"aria-controls": open ? densityMenuId : undefined,
|
|
109
|
+
id: densityButtonId
|
|
110
|
+
}, buttonProps, {
|
|
111
|
+
onClick: handleDensitySelectorOpen
|
|
112
|
+
}, (_rootProps$slotProps2 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps2.baseButton, {
|
|
113
|
+
children: apiRef.current.getLocaleText('toolbarDensity')
|
|
114
|
+
}))
|
|
108
115
|
})), /*#__PURE__*/_jsx(GridMenu, {
|
|
109
116
|
open: open,
|
|
110
117
|
target: buttonRef.current,
|
|
@@ -120,4 +127,16 @@ export var GridToolbarDensitySelector = /*#__PURE__*/React.forwardRef(function G
|
|
|
120
127
|
})
|
|
121
128
|
})]
|
|
122
129
|
});
|
|
123
|
-
});
|
|
130
|
+
});
|
|
131
|
+
process.env.NODE_ENV !== "production" ? GridToolbarDensitySelector.propTypes = {
|
|
132
|
+
// ----------------------------- Warning --------------------------------
|
|
133
|
+
// | These PropTypes are generated from the TypeScript type definitions |
|
|
134
|
+
// | To update them edit the TypeScript types and run "yarn proptypes" |
|
|
135
|
+
// ----------------------------------------------------------------------
|
|
136
|
+
/**
|
|
137
|
+
* The props used for each slot inside.
|
|
138
|
+
* @default {}
|
|
139
|
+
*/
|
|
140
|
+
slotProps: PropTypes.object
|
|
141
|
+
} : void 0;
|
|
142
|
+
export { GridToolbarDensitySelector };
|
|
@@ -70,6 +70,11 @@ process.env.NODE_ENV !== "production" ? GridToolbarExport.propTypes = {
|
|
|
70
70
|
// | To update them edit the TypeScript types and run "yarn proptypes" |
|
|
71
71
|
// ----------------------------------------------------------------------
|
|
72
72
|
csvOptions: PropTypes.object,
|
|
73
|
-
printOptions: PropTypes.object
|
|
73
|
+
printOptions: PropTypes.object,
|
|
74
|
+
/**
|
|
75
|
+
* The props used for each slot inside.
|
|
76
|
+
* @default {}
|
|
77
|
+
*/
|
|
78
|
+
slotProps: PropTypes.object
|
|
74
79
|
} : void 0;
|
|
75
80
|
export { GridToolbarExport };
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
3
|
-
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
4
|
-
var _excluded = ["children", "onClick"];
|
|
5
3
|
import * as React from 'react';
|
|
4
|
+
import PropTypes from 'prop-types';
|
|
6
5
|
import { unstable_useId as useId, unstable_useForkRef as useForkRef } from '@mui/utils';
|
|
7
6
|
import MenuList from '@mui/material/MenuList';
|
|
8
7
|
import { isHideMenuKey, isTabKey } from '../../utils/keyboardUtils';
|
|
@@ -12,11 +11,13 @@ import { useGridRootProps } from '../../hooks/utils/useGridRootProps';
|
|
|
12
11
|
import { gridClasses } from '../../constants/gridClasses';
|
|
13
12
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
13
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
15
|
-
|
|
16
|
-
var _rootProps$slotProps;
|
|
14
|
+
var GridToolbarExportContainer = /*#__PURE__*/React.forwardRef(function GridToolbarExportContainer(props, ref) {
|
|
15
|
+
var _rootProps$slotProps, _rootProps$slotProps2;
|
|
17
16
|
var children = props.children,
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
_props$slotProps = props.slotProps,
|
|
18
|
+
slotProps = _props$slotProps === void 0 ? {} : _props$slotProps;
|
|
19
|
+
var buttonProps = slotProps.button || {};
|
|
20
|
+
var tooltipProps = slotProps.tooltip || {};
|
|
20
21
|
var apiRef = useGridApiContext();
|
|
21
22
|
var rootProps = useGridRootProps();
|
|
22
23
|
var exportButtonId = useId();
|
|
@@ -28,10 +29,11 @@ export var GridToolbarExportContainer = /*#__PURE__*/React.forwardRef(function G
|
|
|
28
29
|
var buttonRef = React.useRef(null);
|
|
29
30
|
var handleRef = useForkRef(ref, buttonRef);
|
|
30
31
|
var handleMenuOpen = function handleMenuOpen(event) {
|
|
32
|
+
var _buttonProps$onClick;
|
|
31
33
|
setOpen(function (prevOpen) {
|
|
32
34
|
return !prevOpen;
|
|
33
35
|
});
|
|
34
|
-
onClick == null || onClick(event);
|
|
36
|
+
(_buttonProps$onClick = buttonProps.onClick) == null || _buttonProps$onClick.call(buttonProps, event);
|
|
35
37
|
};
|
|
36
38
|
var handleMenuClose = function handleMenuClose() {
|
|
37
39
|
return setOpen(false);
|
|
@@ -48,19 +50,24 @@ export var GridToolbarExportContainer = /*#__PURE__*/React.forwardRef(function G
|
|
|
48
50
|
return null;
|
|
49
51
|
}
|
|
50
52
|
return /*#__PURE__*/_jsxs(React.Fragment, {
|
|
51
|
-
children: [/*#__PURE__*/_jsx(rootProps.slots.
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
53
|
+
children: [/*#__PURE__*/_jsx(rootProps.slots.baseTooltip, _extends({
|
|
54
|
+
title: apiRef.current.getLocaleText('toolbarExportLabel'),
|
|
55
|
+
enterDelay: 1000
|
|
56
|
+
}, tooltipProps, (_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.baseTooltip, {
|
|
57
|
+
children: /*#__PURE__*/_jsx(rootProps.slots.baseButton, _extends({
|
|
58
|
+
ref: handleRef,
|
|
59
|
+
size: "small",
|
|
60
|
+
startIcon: /*#__PURE__*/_jsx(rootProps.slots.exportIcon, {}),
|
|
61
|
+
"aria-expanded": open,
|
|
62
|
+
"aria-label": apiRef.current.getLocaleText('toolbarExportLabel'),
|
|
63
|
+
"aria-haspopup": "menu",
|
|
64
|
+
"aria-controls": open ? exportMenuId : undefined,
|
|
65
|
+
id: exportButtonId
|
|
66
|
+
}, buttonProps, {
|
|
67
|
+
onClick: handleMenuOpen
|
|
68
|
+
}, (_rootProps$slotProps2 = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps2.baseButton, {
|
|
69
|
+
children: apiRef.current.getLocaleText('toolbarExport')
|
|
70
|
+
}))
|
|
64
71
|
})), /*#__PURE__*/_jsx(GridMenu, {
|
|
65
72
|
open: open,
|
|
66
73
|
target: buttonRef.current,
|
|
@@ -83,4 +90,16 @@ export var GridToolbarExportContainer = /*#__PURE__*/React.forwardRef(function G
|
|
|
83
90
|
})
|
|
84
91
|
})]
|
|
85
92
|
});
|
|
86
|
-
});
|
|
93
|
+
});
|
|
94
|
+
process.env.NODE_ENV !== "production" ? GridToolbarExportContainer.propTypes = {
|
|
95
|
+
// ----------------------------- Warning --------------------------------
|
|
96
|
+
// | These PropTypes are generated from the TypeScript type definitions |
|
|
97
|
+
// | To update them edit the TypeScript types and run "yarn proptypes" |
|
|
98
|
+
// ----------------------------------------------------------------------
|
|
99
|
+
/**
|
|
100
|
+
* The props used for each slot inside.
|
|
101
|
+
* @default {}
|
|
102
|
+
*/
|
|
103
|
+
slotProps: PropTypes.object
|
|
104
|
+
} : void 0;
|
|
105
|
+
export { GridToolbarExportContainer };
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
-
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
-
var _excluded = ["componentsProps"];
|
|
4
2
|
import * as React from 'react';
|
|
5
3
|
import PropTypes from 'prop-types';
|
|
6
4
|
import { styled } from '@mui/material/styles';
|
|
@@ -38,10 +36,10 @@ var GridToolbarFilterListRoot = styled('ul', {
|
|
|
38
36
|
});
|
|
39
37
|
var GridToolbarFilterButton = /*#__PURE__*/React.forwardRef(function GridToolbarFilterButton(props, ref) {
|
|
40
38
|
var _rootProps$slotProps, _rootProps$slotProps2;
|
|
41
|
-
var _props$
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
var
|
|
39
|
+
var _props$slotProps = props.slotProps,
|
|
40
|
+
slotProps = _props$slotProps === void 0 ? {} : _props$slotProps;
|
|
41
|
+
var buttonProps = slotProps.button || {};
|
|
42
|
+
var tooltipProps = slotProps.tooltip || {};
|
|
45
43
|
var apiRef = useGridApiContext();
|
|
46
44
|
var rootProps = useGridRootProps();
|
|
47
45
|
var activeFilters = useGridSelector(apiRef, gridFilterActiveItemsSelector);
|
|
@@ -103,7 +101,7 @@ var GridToolbarFilterButton = /*#__PURE__*/React.forwardRef(function GridToolbar
|
|
|
103
101
|
return /*#__PURE__*/_jsx(rootProps.slots.baseTooltip, _extends({
|
|
104
102
|
title: tooltipContentNode,
|
|
105
103
|
enterDelay: 1000
|
|
106
|
-
},
|
|
104
|
+
}, tooltipProps, (_rootProps$slotProps = rootProps.slotProps) == null ? void 0 : _rootProps$slotProps.baseTooltip, {
|
|
107
105
|
children: /*#__PURE__*/_jsx(rootProps.slots.baseButton, _extends({
|
|
108
106
|
ref: ref,
|
|
109
107
|
id: filterButtonId,
|
|
@@ -133,8 +131,6 @@ process.env.NODE_ENV !== "production" ? GridToolbarFilterButton.propTypes = {
|
|
|
133
131
|
* The props used for each slot inside.
|
|
134
132
|
* @default {}
|
|
135
133
|
*/
|
|
136
|
-
|
|
137
|
-
button: PropTypes.object
|
|
138
|
-
})
|
|
134
|
+
slotProps: PropTypes.object
|
|
139
135
|
} : void 0;
|
|
140
136
|
export { GridToolbarFilterButton };
|
|
@@ -139,12 +139,16 @@ process.env.NODE_ENV !== "production" ? GridToolbarQuickFilter.propTypes = {
|
|
|
139
139
|
* Function responsible for formatting values of quick filter in a string when the model is modified
|
|
140
140
|
* @param {any[]} values The new values passed to the quick filter model
|
|
141
141
|
* @returns {string} The string to display in the text field
|
|
142
|
+
* @default (values: string[]) => values.join(' ')
|
|
142
143
|
*/
|
|
143
144
|
quickFilterFormatter: PropTypes.func,
|
|
144
145
|
/**
|
|
145
146
|
* Function responsible for parsing text input in an array of independent values for quick filtering.
|
|
146
147
|
* @param {string} input The value entered by the user
|
|
147
148
|
* @returns {any[]} The array of value on which quick filter is applied
|
|
149
|
+
* @default (searchText: string) => searchText
|
|
150
|
+
* .split(' ')
|
|
151
|
+
* .filter((word) => word !== '')
|
|
148
152
|
*/
|
|
149
153
|
quickFilterParser: PropTypes.func
|
|
150
154
|
} : void 0;
|