@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
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { zhHK as zhHKCore } from '@mui/material/locale';
|
|
2
|
+
import { getGridLocalization } from '../utils/getGridLocalization';
|
|
3
|
+
const zhHKGrid = {
|
|
4
|
+
// Root
|
|
5
|
+
noRowsLabel: '沒有行',
|
|
6
|
+
noResultsOverlayLabel: '未找到結果。',
|
|
7
|
+
// Density selector toolbar button text
|
|
8
|
+
toolbarDensity: '密度',
|
|
9
|
+
toolbarDensityLabel: '密度',
|
|
10
|
+
toolbarDensityCompact: '袖珍的',
|
|
11
|
+
toolbarDensityStandard: '標準',
|
|
12
|
+
toolbarDensityComfortable: '舒服的',
|
|
13
|
+
// Columns selector toolbar button text
|
|
14
|
+
toolbarColumns: '列',
|
|
15
|
+
toolbarColumnsLabel: '選擇列',
|
|
16
|
+
// Filters toolbar button text
|
|
17
|
+
toolbarFilters: '過濾器',
|
|
18
|
+
toolbarFiltersLabel: '顯示過濾器',
|
|
19
|
+
toolbarFiltersTooltipHide: '隱藏過濾器',
|
|
20
|
+
toolbarFiltersTooltipShow: '顯示過濾器',
|
|
21
|
+
toolbarFiltersTooltipActive: count => count !== 1 ? `${count} 個有效過濾器` : `${count} 個活動過濾器`,
|
|
22
|
+
// Quick filter toolbar field
|
|
23
|
+
toolbarQuickFilterPlaceholder: '搜尋…',
|
|
24
|
+
toolbarQuickFilterLabel: '搜尋',
|
|
25
|
+
toolbarQuickFilterDeleteIconLabel: '清除',
|
|
26
|
+
// Export selector toolbar button text
|
|
27
|
+
toolbarExport: '出口',
|
|
28
|
+
toolbarExportLabel: '出口',
|
|
29
|
+
toolbarExportCSV: '下載為 CSV',
|
|
30
|
+
toolbarExportPrint: '列印',
|
|
31
|
+
toolbarExportExcel: '下載為 Excel',
|
|
32
|
+
// Columns panel text
|
|
33
|
+
columnsPanelTextFieldLabel: '查找欄目',
|
|
34
|
+
columnsPanelTextFieldPlaceholder: '欄目標題',
|
|
35
|
+
columnsPanelDragIconLabel: '重新排序列',
|
|
36
|
+
columnsPanelShowAllButton: '顯示所有',
|
|
37
|
+
columnsPanelHideAllButton: '全部藏起來',
|
|
38
|
+
// Filter panel text
|
|
39
|
+
filterPanelAddFilter: '新增過濾器',
|
|
40
|
+
filterPanelRemoveAll: '移除所有',
|
|
41
|
+
filterPanelDeleteIconLabel: '刪除',
|
|
42
|
+
filterPanelLogicOperator: '邏輯運算符',
|
|
43
|
+
filterPanelOperator: '操作員',
|
|
44
|
+
filterPanelOperatorAnd: '和',
|
|
45
|
+
filterPanelOperatorOr: '或者',
|
|
46
|
+
filterPanelColumns: '列',
|
|
47
|
+
filterPanelInputLabel: '價值',
|
|
48
|
+
filterPanelInputPlaceholder: '過濾值',
|
|
49
|
+
// Filter operators text
|
|
50
|
+
filterOperatorContains: '包含',
|
|
51
|
+
filterOperatorEquals: '等於',
|
|
52
|
+
filterOperatorStartsWith: '以。。開始',
|
|
53
|
+
filterOperatorEndsWith: '以。。結束',
|
|
54
|
+
filterOperatorIs: '是',
|
|
55
|
+
filterOperatorNot: '不是',
|
|
56
|
+
filterOperatorAfter: '是在之後',
|
|
57
|
+
filterOperatorOnOrAfter: '是在或之後',
|
|
58
|
+
filterOperatorBefore: '是在之前',
|
|
59
|
+
filterOperatorOnOrBefore: '是在或之前',
|
|
60
|
+
filterOperatorIsEmpty: '是空的',
|
|
61
|
+
filterOperatorIsNotEmpty: '不為空',
|
|
62
|
+
filterOperatorIsAnyOf: '是以下任一個',
|
|
63
|
+
'filterOperator=': '=',
|
|
64
|
+
'filterOperator!=': '!=',
|
|
65
|
+
'filterOperator>': '>',
|
|
66
|
+
'filterOperator>=': '>=',
|
|
67
|
+
'filterOperator<': '<',
|
|
68
|
+
'filterOperator<=': '<=',
|
|
69
|
+
// Header filter operators text
|
|
70
|
+
headerFilterOperatorContains: '包含',
|
|
71
|
+
headerFilterOperatorEquals: '等於',
|
|
72
|
+
headerFilterOperatorStartsWith: '以。。開始',
|
|
73
|
+
headerFilterOperatorEndsWith: '以。。結束',
|
|
74
|
+
headerFilterOperatorIs: '是',
|
|
75
|
+
headerFilterOperatorNot: '不是',
|
|
76
|
+
headerFilterOperatorAfter: '是在之後',
|
|
77
|
+
headerFilterOperatorOnOrAfter: '是在或之後',
|
|
78
|
+
headerFilterOperatorBefore: '是之前',
|
|
79
|
+
headerFilterOperatorOnOrBefore: '是在或之前',
|
|
80
|
+
headerFilterOperatorIsEmpty: '是空的',
|
|
81
|
+
headerFilterOperatorIsNotEmpty: '不為空',
|
|
82
|
+
headerFilterOperatorIsAnyOf: '是以下任一個',
|
|
83
|
+
'headerFilterOperator=': '等於',
|
|
84
|
+
'headerFilterOperator!=': '不等於',
|
|
85
|
+
'headerFilterOperator>': '比...更棒',
|
|
86
|
+
'headerFilterOperator>=': '大於或等於',
|
|
87
|
+
'headerFilterOperator<': '少於',
|
|
88
|
+
'headerFilterOperator<=': '小於或等於',
|
|
89
|
+
// Filter values text
|
|
90
|
+
filterValueAny: '任何',
|
|
91
|
+
filterValueTrue: '真的',
|
|
92
|
+
filterValueFalse: '錯誤的',
|
|
93
|
+
// Column menu text
|
|
94
|
+
columnMenuLabel: '選單',
|
|
95
|
+
columnMenuShowColumns: '顯示欄目',
|
|
96
|
+
columnMenuManageColumns: '管理欄目',
|
|
97
|
+
columnMenuFilter: '篩選',
|
|
98
|
+
columnMenuHideColumn: '隱藏列',
|
|
99
|
+
columnMenuUnsort: '取消排序',
|
|
100
|
+
columnMenuSortAsc: '按升序排序',
|
|
101
|
+
columnMenuSortDesc: '按降序排序',
|
|
102
|
+
// Column header text
|
|
103
|
+
columnHeaderFiltersTooltipActive: count => count !== 1 ? `${count} 個有效過濾器` : `${count} 個活動過濾器`,
|
|
104
|
+
columnHeaderFiltersLabel: '顯示過濾器',
|
|
105
|
+
columnHeaderSortIconLabel: '種類',
|
|
106
|
+
// Rows selected footer text
|
|
107
|
+
footerRowSelected: count => count !== 1 ? `已選擇 ${count.toLocaleString()} 行` : `已選擇 ${count.toLocaleString()} 行`,
|
|
108
|
+
// Total row amount footer text
|
|
109
|
+
footerTotalRows: '總行數:',
|
|
110
|
+
// Total visible row amount footer text
|
|
111
|
+
footerTotalVisibleRows: (visibleCount, totalCount) => `${totalCount.toLocaleString()} 的 ${visibleCount.toLocaleString()}`,
|
|
112
|
+
// Checkbox selection text
|
|
113
|
+
checkboxSelectionHeaderName: '複選框選擇',
|
|
114
|
+
checkboxSelectionSelectAllRows: '選擇所有行',
|
|
115
|
+
checkboxSelectionUnselectAllRows: '取消選擇所有行',
|
|
116
|
+
checkboxSelectionSelectRow: '選擇行',
|
|
117
|
+
checkboxSelectionUnselectRow: '取消選擇行',
|
|
118
|
+
// Boolean cell text
|
|
119
|
+
booleanCellTrueLabel: '是的',
|
|
120
|
+
booleanCellFalseLabel: '不',
|
|
121
|
+
// Actions cell more text
|
|
122
|
+
actionsCellMore: '更多的',
|
|
123
|
+
// Column pinning text
|
|
124
|
+
pinToLeft: '固定到左側',
|
|
125
|
+
pinToRight: '固定到右側',
|
|
126
|
+
unpin: '取消固定',
|
|
127
|
+
// Tree Data
|
|
128
|
+
treeDataGroupingHeaderName: 'Group',
|
|
129
|
+
treeDataExpand: '看看孩子們',
|
|
130
|
+
treeDataCollapse: '隱藏孩子',
|
|
131
|
+
// Grouping columns
|
|
132
|
+
groupingColumnHeaderName: '團體',
|
|
133
|
+
groupColumn: name => `按 ${name} 分組`,
|
|
134
|
+
unGroupColumn: name => `停止以 ${name} 分組`,
|
|
135
|
+
// Master/detail
|
|
136
|
+
detailPanelToggle: '詳細資訊面板切換',
|
|
137
|
+
expandDetailPanel: '擴張',
|
|
138
|
+
collapseDetailPanel: '坍塌',
|
|
139
|
+
// Row reordering text
|
|
140
|
+
rowReorderingHeaderName: '行重新排序',
|
|
141
|
+
// Aggregation
|
|
142
|
+
aggregationMenuItemHeader: '聚合',
|
|
143
|
+
aggregationFunctionLabelSum: '和',
|
|
144
|
+
aggregationFunctionLabelAvg: '平均',
|
|
145
|
+
aggregationFunctionLabelMin: '分分鐘',
|
|
146
|
+
aggregationFunctionLabelMax: '最大限度',
|
|
147
|
+
aggregationFunctionLabelSize: '尺寸'
|
|
148
|
+
};
|
|
149
|
+
export const zhHK = getGridLocalization(zhHKGrid, zhHKCore);
|
package/modern/models/index.js
CHANGED
|
@@ -6,7 +6,6 @@ export * from './gridFeatureMode';
|
|
|
6
6
|
export * from './gridFilterItem';
|
|
7
7
|
export * from './gridFilterModel';
|
|
8
8
|
export * from './gridPaginationProps';
|
|
9
|
-
export * from './gridRootContainerRef';
|
|
10
9
|
export * from './gridRenderContextProps';
|
|
11
10
|
export * from './gridRows';
|
|
12
11
|
export * from './gridRowSelectionModel';
|
|
@@ -10,5 +10,4 @@ export * from './gridHeaderSelectionCheckboxParams';
|
|
|
10
10
|
export * from './gridValueOptionsParams';
|
|
11
11
|
export * from './gridCellParams';
|
|
12
12
|
export * from './gridPreferencePanelParams';
|
|
13
|
-
export * from './gridMenuParams';
|
|
14
|
-
export * from './gridRenderedRowsIntervalChangeParams';
|
|
13
|
+
export * from './gridMenuParams';
|
|
@@ -3,7 +3,7 @@ import { buildWarning } from './warning';
|
|
|
3
3
|
const cacheContainer = {
|
|
4
4
|
cache: new WeakMap()
|
|
5
5
|
};
|
|
6
|
-
const missingInstanceIdWarning = buildWarning(['MUI: A selector was called without passing the instance ID, which may impact the performance of the grid.', 'To fix, call it with `apiRef`, e.g. `mySelector(apiRef)`, or pass the instance ID explicitly, e.g. `mySelector(state, apiRef.current.instanceId)`.']);
|
|
6
|
+
const missingInstanceIdWarning = buildWarning(['MUI X: A selector was called without passing the instance ID, which may impact the performance of the grid.', 'To fix, call it with `apiRef`, e.g. `mySelector(apiRef)`, or pass the instance ID explicitly, e.g. `mySelector(state, apiRef.current.instanceId)`.']);
|
|
7
7
|
function checkIsAPIRef(value) {
|
|
8
8
|
return 'current' in value && 'instanceId' in value.current;
|
|
9
9
|
}
|
package/modern/utils/exportAs.js
CHANGED
package/modern/utils/utils.js
CHANGED
|
@@ -172,4 +172,13 @@ export function deepClone(obj) {
|
|
|
172
172
|
return structuredClone(obj);
|
|
173
173
|
}
|
|
174
174
|
return JSON.parse(JSON.stringify(obj));
|
|
175
|
-
}
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
178
|
+
/**
|
|
179
|
+
* Mark a value as used so eslint doesn't complain. Use this instead
|
|
180
|
+
* of a `eslint-disable-next-line react-hooks/exhaustive-deps` because
|
|
181
|
+
* that hint disables checks on all values instead of just one.
|
|
182
|
+
*/
|
|
183
|
+
export function eslintUseValue(_) {}
|
|
184
|
+
/* eslint-enable @typescript-eslint/no-unused-vars */
|
|
@@ -8,18 +8,21 @@ exports.DataGrid = void 0;
|
|
|
8
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
9
|
var React = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
-
var _utils = require("@mui/utils");
|
|
12
11
|
var _components = require("../components");
|
|
13
12
|
var _GridContextProvider = require("../context/GridContextProvider");
|
|
14
13
|
var _useDataGridComponent = require("./useDataGridComponent");
|
|
15
14
|
var _useDataGridProps = require("./useDataGridProps");
|
|
16
|
-
var
|
|
15
|
+
var _propValidation = require("../internals/utils/propValidation");
|
|
17
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
17
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
19
18
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
19
|
+
const propValidators = [..._propValidation.propValidatorsDataGrid,
|
|
20
|
+
// Only validate in MIT version
|
|
21
|
+
props => props.columns && props.columns.some(column => column.resizable) && [`MUI X: \`column.resizable = true\` is not a valid prop.`, 'Column resizing is not available in the MIT version.', '', 'You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature.'].join('\n') || undefined];
|
|
20
22
|
const DataGridRaw = /*#__PURE__*/React.forwardRef(function DataGrid(inProps, ref) {
|
|
21
23
|
const props = (0, _useDataGridProps.useDataGridProps)(inProps);
|
|
22
24
|
const privateApiRef = (0, _useDataGridComponent.useDataGridComponent)(props.apiRef, props);
|
|
25
|
+
(0, _propValidation.validateProps)(props, propValidators);
|
|
23
26
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_GridContextProvider.GridContextProvider, {
|
|
24
27
|
privateApiRef: privateApiRef,
|
|
25
28
|
props: props,
|
|
@@ -29,9 +32,7 @@ const DataGridRaw = /*#__PURE__*/React.forwardRef(function DataGrid(inProps, ref
|
|
|
29
32
|
sx: props.sx,
|
|
30
33
|
ref: ref
|
|
31
34
|
}, props.forwardedProps, {
|
|
32
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.GridHeader, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.GridBody, {
|
|
33
|
-
VirtualScrollerComponent: _DataGridVirtualScroller.DataGridVirtualScroller
|
|
34
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.GridFooterPlaceholder, {})]
|
|
35
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.GridHeader, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.GridBody, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.GridFooterPlaceholder, {})]
|
|
35
36
|
}))
|
|
36
37
|
});
|
|
37
38
|
});
|
|
@@ -71,12 +72,7 @@ DataGridRaw.propTypes = {
|
|
|
71
72
|
* If `true`, the pageSize is calculated according to the container size and the max number of rows to avoid rendering a vertical scroll bar.
|
|
72
73
|
* @default false
|
|
73
74
|
*/
|
|
74
|
-
autoPageSize:
|
|
75
|
-
if (props.autoHeight && props.autoPageSize) {
|
|
76
|
-
return new Error(['MUI: `<DataGrid autoPageSize={true} autoHeight={true} />` are not valid props.', 'You can not use both the `autoPageSize` and `autoHeight` props at the same time because `autoHeight` scales the height of the Data Grid according to the `pageSize`.', '', 'Please remove one of these two props.'].join('\n'));
|
|
77
|
-
}
|
|
78
|
-
return null;
|
|
79
|
-
}),
|
|
75
|
+
autoPageSize: _propTypes.default.bool,
|
|
80
76
|
/**
|
|
81
77
|
* Controls the modes of the cells.
|
|
82
78
|
*/
|
|
@@ -107,15 +103,9 @@ DataGridRaw.propTypes = {
|
|
|
107
103
|
*/
|
|
108
104
|
columnHeaderHeight: _propTypes.default.number,
|
|
109
105
|
/**
|
|
110
|
-
* Set of columns of type [[GridColDef
|
|
106
|
+
* Set of columns of type [[GridColDef]][].
|
|
111
107
|
*/
|
|
112
|
-
columns:
|
|
113
|
-
// @ts-ignore because otherwise `build:api` doesn't work
|
|
114
|
-
if (props.columns && props.columns.some(column => column.resizable)) {
|
|
115
|
-
return new Error([`MUI: \`column.resizable = true\` is not a valid prop.`, 'Column resizing is not available in the MIT version.', '', 'You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature.'].join('\n'));
|
|
116
|
-
}
|
|
117
|
-
return null;
|
|
118
|
-
}),
|
|
108
|
+
columns: _propTypes.default.arrayOf(_propTypes.default.object).isRequired,
|
|
119
109
|
/**
|
|
120
110
|
* Number of rows from the `columnBuffer` that can be visible before a new slice is rendered.
|
|
121
111
|
* @default 3
|
|
@@ -146,6 +136,11 @@ DataGridRaw.propTypes = {
|
|
|
146
136
|
* @default false
|
|
147
137
|
*/
|
|
148
138
|
disableColumnSelector: _propTypes.default.bool,
|
|
139
|
+
/**
|
|
140
|
+
* If `true`, the column sorting feature will be disabled.
|
|
141
|
+
* @default false
|
|
142
|
+
*/
|
|
143
|
+
disableColumnSorting: _propTypes.default.bool,
|
|
149
144
|
/**
|
|
150
145
|
* If `true`, the density selector is disabled.
|
|
151
146
|
* @default false
|
|
@@ -182,8 +177,6 @@ DataGridRaw.propTypes = {
|
|
|
182
177
|
* For each feature, if the flag is not explicitly set to `true`, the feature will be fully disabled and any property / method call will not have any effect.
|
|
183
178
|
*/
|
|
184
179
|
experimentalFeatures: _propTypes.default.shape({
|
|
185
|
-
ariaV7: _propTypes.default.bool,
|
|
186
|
-
columnGrouping: _propTypes.default.bool,
|
|
187
180
|
warnIfFocusStateIsNotSynced: _propTypes.default.bool
|
|
188
181
|
}),
|
|
189
182
|
/**
|
|
@@ -560,12 +553,7 @@ DataGridRaw.propTypes = {
|
|
|
560
553
|
label: _propTypes.default.string.isRequired,
|
|
561
554
|
value: _propTypes.default.number.isRequired
|
|
562
555
|
})]).isRequired),
|
|
563
|
-
pagination:
|
|
564
|
-
if (props.pagination === false) {
|
|
565
|
-
return new Error(['MUI: `<DataGrid pagination={false} />` is not a valid prop.', 'Infinite scrolling is not available in the MIT version.', '', 'You need to upgrade to DataGridPro or DataGridPremium component to disable the pagination.'].join('\n'));
|
|
566
|
-
}
|
|
567
|
-
return null;
|
|
568
|
-
},
|
|
556
|
+
pagination: _propTypes.default.oneOf([true]),
|
|
569
557
|
/**
|
|
570
558
|
* Pagination can be processed on the server or client-side.
|
|
571
559
|
* Set it to 'client' if you would like to handle the pagination on the client-side.
|
|
@@ -44,6 +44,7 @@ const useDataGridComponent = (inputApiRef, props) => {
|
|
|
44
44
|
/**
|
|
45
45
|
* Register all state initializers here.
|
|
46
46
|
*/
|
|
47
|
+
(0, _useGridInitializeState.useGridInitializeState)(_useGridDimensions.dimensionsStateInitializer, apiRef, props);
|
|
47
48
|
(0, _useGridInitializeState.useGridInitializeState)(_useGridRowSelection.rowSelectionStateInitializer, apiRef, props);
|
|
48
49
|
(0, _useGridInitializeState.useGridInitializeState)(_useGridColumns.columnsStateInitializer, apiRef, props);
|
|
49
50
|
(0, _useGridInitializeState.useGridInitializeState)(_useGridRows.rowsStateInitializer, apiRef, props);
|
|
@@ -48,6 +48,7 @@ const DATA_GRID_PROPS_DEFAULT_VALUES = exports.DATA_GRID_PROPS_DEFAULT_VALUES =
|
|
|
48
48
|
disableEval: false,
|
|
49
49
|
disableMultipleColumnsFiltering: false,
|
|
50
50
|
disableMultipleRowSelection: false,
|
|
51
|
+
disableColumnSorting: false,
|
|
51
52
|
disableMultipleColumnsSorting: false,
|
|
52
53
|
disableRowSelectionOnClick: false,
|
|
53
54
|
disableVirtualization: false,
|
|
@@ -19,7 +19,7 @@ function throwIfNotDateObject({
|
|
|
19
19
|
field
|
|
20
20
|
}) {
|
|
21
21
|
if (!(value instanceof Date)) {
|
|
22
|
-
throw new Error([`MUI: \`${columnType}\` column type only accepts \`Date\` objects as values.`, 'Use `valueGetter` to transform the value into a `Date` object.', `Row ID: ${rowId}, field: "${field}".`].join('\n'));
|
|
22
|
+
throw new Error([`MUI X: \`${columnType}\` column type only accepts \`Date\` objects as values.`, 'Use `valueGetter` to transform the value into a `Date` object.', `Row ID: ${rowId}, field: "${field}".`].join('\n'));
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
function gridDateFormatter({
|
|
@@ -15,21 +15,19 @@ var _useGridColumnHeaders = require("../hooks/features/columnHeaders/useGridColu
|
|
|
15
15
|
var _GridBaseColumnHeaders = require("./columnHeaders/GridBaseColumnHeaders");
|
|
16
16
|
var _GridColumnHeadersInner = require("./columnHeaders/GridColumnHeadersInner");
|
|
17
17
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
|
-
const _excluded = ["innerRef", "className", "visibleColumns", "sortColumnLookup", "filterColumnLookup", "
|
|
18
|
+
const _excluded = ["innerRef", "className", "visibleColumns", "sortColumnLookup", "filterColumnLookup", "columnHeaderTabIndexState", "columnGroupHeaderTabIndexState", "columnHeaderFocus", "columnGroupHeaderFocus", "headerGroupingMaxDepth", "columnMenuState", "columnVisibility", "columnGroupsHeaderStructure", "hasOtherElementInTabSequence"];
|
|
19
19
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
20
20
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
21
|
-
const GridColumnHeaders = /*#__PURE__*/React.forwardRef(function
|
|
21
|
+
const GridColumnHeaders = /*#__PURE__*/React.forwardRef(function GridColumnHeaders(props, ref) {
|
|
22
22
|
const {
|
|
23
23
|
innerRef,
|
|
24
24
|
visibleColumns,
|
|
25
25
|
sortColumnLookup,
|
|
26
26
|
filterColumnLookup,
|
|
27
|
-
columnPositions,
|
|
28
27
|
columnHeaderTabIndexState,
|
|
29
28
|
columnGroupHeaderTabIndexState,
|
|
30
29
|
columnHeaderFocus,
|
|
31
30
|
columnGroupHeaderFocus,
|
|
32
|
-
densityFactor,
|
|
33
31
|
headerGroupingMaxDepth,
|
|
34
32
|
columnMenuState,
|
|
35
33
|
columnVisibility,
|
|
@@ -39,7 +37,6 @@ const GridColumnHeaders = /*#__PURE__*/React.forwardRef(function GridColumnsHead
|
|
|
39
37
|
other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded);
|
|
40
38
|
const {
|
|
41
39
|
isDragging,
|
|
42
|
-
getRootProps,
|
|
43
40
|
getInnerProps,
|
|
44
41
|
getColumnHeaders,
|
|
45
42
|
getColumnGroupHeaders
|
|
@@ -48,12 +45,10 @@ const GridColumnHeaders = /*#__PURE__*/React.forwardRef(function GridColumnsHead
|
|
|
48
45
|
visibleColumns,
|
|
49
46
|
sortColumnLookup,
|
|
50
47
|
filterColumnLookup,
|
|
51
|
-
columnPositions,
|
|
52
48
|
columnHeaderTabIndexState,
|
|
53
49
|
columnGroupHeaderTabIndexState,
|
|
54
50
|
columnHeaderFocus,
|
|
55
51
|
columnGroupHeaderFocus,
|
|
56
|
-
densityFactor,
|
|
57
52
|
headerGroupingMaxDepth,
|
|
58
53
|
columnMenuState,
|
|
59
54
|
columnVisibility,
|
|
@@ -62,7 +57,7 @@ const GridColumnHeaders = /*#__PURE__*/React.forwardRef(function GridColumnsHead
|
|
|
62
57
|
});
|
|
63
58
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_GridBaseColumnHeaders.GridBaseColumnHeaders, (0, _extends2.default)({
|
|
64
59
|
ref: ref
|
|
65
|
-
},
|
|
60
|
+
}, other, {
|
|
66
61
|
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_GridColumnHeadersInner.GridColumnHeadersInner, (0, _extends2.default)({
|
|
67
62
|
isDragging: isDragging
|
|
68
63
|
}, getInnerProps(), {
|
|
@@ -97,14 +92,11 @@ process.env.NODE_ENV !== "production" ? GridColumnHeaders.propTypes = {
|
|
|
97
92
|
field: _propTypes.default.string,
|
|
98
93
|
open: _propTypes.default.bool.isRequired
|
|
99
94
|
}).isRequired,
|
|
100
|
-
columnPositions: _propTypes.default.arrayOf(_propTypes.default.number).isRequired,
|
|
101
95
|
columnVisibility: _propTypes.default.object.isRequired,
|
|
102
|
-
densityFactor: _propTypes.default.number.isRequired,
|
|
103
96
|
filterColumnLookup: _propTypes.default.object.isRequired,
|
|
104
97
|
hasOtherElementInTabSequence: _propTypes.default.bool.isRequired,
|
|
105
98
|
headerGroupingMaxDepth: _propTypes.default.number.isRequired,
|
|
106
99
|
innerRef: _utils.refType,
|
|
107
|
-
minColumnIndex: _propTypes.default.number,
|
|
108
100
|
sortColumnLookup: _propTypes.default.object.isRequired,
|
|
109
101
|
visibleColumns: _propTypes.default.arrayOf(_propTypes.default.object).isRequired
|
|
110
102
|
} : void 0;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.GridHeaders = void 0;
|
|
7
|
+
var React = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _fastMemo = require("../utils/fastMemo");
|
|
9
|
+
var _useGridPrivateApiContext = require("../hooks/utils/useGridPrivateApiContext");
|
|
10
|
+
var _useGridSelector = require("../hooks/utils/useGridSelector");
|
|
11
|
+
var _useGridRootProps = require("../hooks/utils/useGridRootProps");
|
|
12
|
+
var _gridColumnsSelector = require("../hooks/features/columns/gridColumnsSelector");
|
|
13
|
+
var _gridFilterSelector = require("../hooks/features/filter/gridFilterSelector");
|
|
14
|
+
var _gridSortingSelector = require("../hooks/features/sorting/gridSortingSelector");
|
|
15
|
+
var _gridFocusStateSelector = require("../hooks/features/focus/gridFocusStateSelector");
|
|
16
|
+
var _gridColumnGroupsSelector = require("../hooks/features/columnGrouping/gridColumnGroupsSelector");
|
|
17
|
+
var _columnMenuSelector = require("../hooks/features/columnMenu/columnMenuSelector");
|
|
18
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
19
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
20
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
21
|
+
function GridHeaders() {
|
|
22
|
+
const apiRef = (0, _useGridPrivateApiContext.useGridPrivateApiContext)();
|
|
23
|
+
const rootProps = (0, _useGridRootProps.useGridRootProps)();
|
|
24
|
+
const visibleColumns = (0, _useGridSelector.useGridSelector)(apiRef, _gridColumnsSelector.gridVisibleColumnDefinitionsSelector);
|
|
25
|
+
const filterColumnLookup = (0, _useGridSelector.useGridSelector)(apiRef, _gridFilterSelector.gridFilterActiveItemsLookupSelector);
|
|
26
|
+
const sortColumnLookup = (0, _useGridSelector.useGridSelector)(apiRef, _gridSortingSelector.gridSortColumnLookupSelector);
|
|
27
|
+
const columnHeaderTabIndexState = (0, _useGridSelector.useGridSelector)(apiRef, _gridFocusStateSelector.gridTabIndexColumnHeaderSelector);
|
|
28
|
+
const cellTabIndexState = (0, _useGridSelector.useGridSelector)(apiRef, _gridFocusStateSelector.gridTabIndexCellSelector);
|
|
29
|
+
const columnGroupHeaderTabIndexState = (0, _useGridSelector.useGridSelector)(apiRef, _gridFocusStateSelector.gridTabIndexColumnGroupHeaderSelector);
|
|
30
|
+
const columnHeaderFocus = (0, _useGridSelector.useGridSelector)(apiRef, _gridFocusStateSelector.gridFocusColumnHeaderSelector);
|
|
31
|
+
const columnGroupHeaderFocus = (0, _useGridSelector.useGridSelector)(apiRef, _gridFocusStateSelector.gridFocusColumnGroupHeaderSelector);
|
|
32
|
+
const headerGroupingMaxDepth = (0, _useGridSelector.useGridSelector)(apiRef, _gridColumnGroupsSelector.gridColumnGroupsHeaderMaxDepthSelector);
|
|
33
|
+
const columnMenuState = (0, _useGridSelector.useGridSelector)(apiRef, _columnMenuSelector.gridColumnMenuSelector);
|
|
34
|
+
const columnVisibility = (0, _useGridSelector.useGridSelector)(apiRef, _gridColumnsSelector.gridColumnVisibilityModelSelector);
|
|
35
|
+
const columnGroupsHeaderStructure = (0, _useGridSelector.useGridSelector)(apiRef, _gridColumnGroupsSelector.gridColumnGroupsHeaderStructureSelector);
|
|
36
|
+
const hasOtherElementInTabSequence = !(columnGroupHeaderTabIndexState === null && columnHeaderTabIndexState === null && cellTabIndexState === null);
|
|
37
|
+
const columnHeadersRef = React.useRef(null);
|
|
38
|
+
const columnsContainerRef = React.useRef(null);
|
|
39
|
+
apiRef.current.register('private', {
|
|
40
|
+
columnHeadersContainerElementRef: columnsContainerRef,
|
|
41
|
+
columnHeadersElementRef: columnHeadersRef
|
|
42
|
+
});
|
|
43
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(rootProps.slots.columnHeaders, {
|
|
44
|
+
ref: columnsContainerRef,
|
|
45
|
+
innerRef: columnHeadersRef,
|
|
46
|
+
visibleColumns: visibleColumns,
|
|
47
|
+
filterColumnLookup: filterColumnLookup,
|
|
48
|
+
sortColumnLookup: sortColumnLookup,
|
|
49
|
+
columnHeaderTabIndexState: columnHeaderTabIndexState,
|
|
50
|
+
columnGroupHeaderTabIndexState: columnGroupHeaderTabIndexState,
|
|
51
|
+
columnHeaderFocus: columnHeaderFocus,
|
|
52
|
+
columnGroupHeaderFocus: columnGroupHeaderFocus,
|
|
53
|
+
headerGroupingMaxDepth: headerGroupingMaxDepth,
|
|
54
|
+
columnMenuState: columnMenuState,
|
|
55
|
+
columnVisibility: columnVisibility,
|
|
56
|
+
columnGroupsHeaderStructure: columnGroupsHeaderStructure,
|
|
57
|
+
hasOtherElementInTabSequence: hasOtherElementInTabSequence
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
const MemoizedGridHeaders = exports.GridHeaders = (0, _fastMemo.fastMemo)(GridHeaders);
|
|
@@ -65,7 +65,7 @@ const GridPagination = exports.GridPagination = /*#__PURE__*/React.forwardRef(fu
|
|
|
65
65
|
const warnedOnceMissingInPageSizeOptions = React.useRef(false);
|
|
66
66
|
const pageSize = rootProps.paginationModel?.pageSize ?? paginationModel.pageSize;
|
|
67
67
|
if (!warnedOnceMissingInPageSizeOptions.current && !rootProps.autoPageSize && !isPageSizeIncludedInPageSizeOptions(pageSize)) {
|
|
68
|
-
console.warn([`MUI: The page size \`${paginationModel.pageSize}\` is not preset in the \`pageSizeOptions
|
|
68
|
+
console.warn([`MUI X: The page size \`${paginationModel.pageSize}\` is not preset in the \`pageSizeOptions\`.`, `Add it to show the pagination select.`].join('\n'));
|
|
69
69
|
warnedOnceMissingInPageSizeOptions.current = true;
|
|
70
70
|
}
|
|
71
71
|
}
|