wip:milestone 0 fixes
Some checks failed
CI/CD Pipeline / unit-tests (push) Failing after 1m16s
CI/CD Pipeline / integration-tests (push) Failing after 2m32s
CI/CD Pipeline / lint (push) Successful in 5m22s
CI/CD Pipeline / e2e-tests (push) Has been skipped
CI/CD Pipeline / build (push) Has been skipped

This commit is contained in:
2026-03-15 12:35:42 +02:00
parent 6708cf28a7
commit cffdf8af86
61266 changed files with 4511646 additions and 1938 deletions

View File

@@ -0,0 +1,83 @@
export type { GridBaseColDef, GridStateColDef, GridSingleSelectColDef, } from '../models/colDef/gridColDef';
export { GridVirtualScroller } from '../components/virtualization/GridVirtualScroller';
export { GridVirtualScrollerContent } from '../components/virtualization/GridVirtualScrollerContent';
export { GridVirtualScrollerRenderZone } from '../components/virtualization/GridVirtualScrollerRenderZone';
export { GridBaseColumnHeaders } from '../components/columnHeaders/GridBaseColumnHeaders';
export { GridColumnHeadersInner } from '../components/columnHeaders/GridColumnHeadersInner';
export { DATA_GRID_DEFAULT_SLOTS_COMPONENTS } from '../constants/defaultGridSlotsComponents';
export { getGridFilter } from '../components/panel/filterPanel/GridFilterPanel';
export { useGridRegisterPipeProcessor } from '../hooks/core/pipeProcessing';
export type { GridPipeProcessor } from '../hooks/core/pipeProcessing';
export { useGridRegisterStrategyProcessor, GRID_DEFAULT_STRATEGY, } from '../hooks/core/strategyProcessing';
export type { GridStrategyProcessor } from '../hooks/core/strategyProcessing';
export { useGridInitialization } from '../hooks/core/useGridInitialization';
export { unwrapPrivateAPI } from '../hooks/core/useGridApiInitialization';
export { useGridClipboard } from '../hooks/features/clipboard/useGridClipboard';
export { useGridColumnHeaders } from '../hooks/features/columnHeaders/useGridColumnHeaders';
export { unstable_gridHeaderFilteringEditFieldSelector, unstable_gridHeaderFilteringMenuSelector, } from '../hooks/features/headerFiltering/gridHeaderFilteringSelectors';
export type { GridSlotsComponentsProps } from '../models/gridSlotsComponentsProps';
export type { UseGridColumnHeadersProps, GetHeadersParams, } from '../hooks/features/columnHeaders/useGridColumnHeaders';
export { useGridColumnMenu, columnMenuStateInitializer, } from '../hooks/features/columnMenu/useGridColumnMenu';
export { useGridColumns, columnsStateInitializer } from '../hooks/features/columns/useGridColumns';
export { getTotalHeaderHeight } from '../hooks/features/columns/gridColumnsUtils';
export { useGridColumnSpanning } from '../hooks/features/columns/useGridColumnSpanning';
export { gridColumnsStateSelector } from '../hooks/features/columns/gridColumnsSelector';
export { useGridColumnGrouping, columnGroupsStateInitializer, } from '../hooks/features/columnGrouping/useGridColumnGrouping';
export type { GridColumnGroupLookup } from '../hooks/features/columnGrouping/gridColumnGroupsInterfaces';
export type { GridColumnRawLookup, GridColumnsRawState, GridHydrateColumnsValue, } from '../hooks/features/columns/gridColumnsInterfaces';
export { useGridDensity, densityStateInitializer } from '../hooks/features/density/useGridDensity';
export { useGridCsvExport } from '../hooks/features/export/useGridCsvExport';
export { useGridPrintExport } from '../hooks/features/export/useGridPrintExport';
export { useGridFilter, filterStateInitializer } from '../hooks/features/filter/useGridFilter';
export { passFilterLogic } from '../hooks/features/filter/gridFilterUtils';
export { isSingleSelectColDef } from '../components/panel/filterPanel/filterPanelUtils';
export type { GridAggregatedFilterItemApplier, GridAggregatedFilterItemApplierResult, } from '../hooks/features/filter/gridFilterState';
export { useGridFocus, focusStateInitializer } from '../hooks/features/focus/useGridFocus';
export { useGridKeyboardNavigation } from '../hooks/features/keyboardNavigation/useGridKeyboardNavigation';
export { useGridPagination, paginationStateInitializer, } from '../hooks/features/pagination/useGridPagination';
export { useGridPreferencesPanel, preferencePanelStateInitializer, } from '../hooks/features/preferencesPanel/useGridPreferencesPanel';
export { useGridEditing, editingStateInitializer } from '../hooks/features/editing/useGridEditing';
export { gridEditRowsStateSelector } from '../hooks/features/editing/gridEditingSelectors';
export { useGridRows, rowsStateInitializer } from '../hooks/features/rows/useGridRows';
export { useGridRowsPreProcessors } from '../hooks/features/rows/useGridRowsPreProcessors';
export type { GridRowTreeCreationParams, GridRowTreeCreationValue, GridHydrateRowsValue, GridRowsPartialUpdates, GridRowsPartialUpdateAction, GridTreeDepths, GridRowTreeUpdatedGroupsManager, GridRowTreeUpdateGroupAction, GridPinnedRowsState, } from '../hooks/features/rows/gridRowsInterfaces';
export { getTreeNodeDescendants, buildRootGroup } from '../hooks/features/rows/gridRowsUtils';
export { useGridRowsMeta, rowsMetaStateInitializer } from '../hooks/features/rows/useGridRowsMeta';
export { useGridParamsApi } from '../hooks/features/rows/useGridParamsApi';
export { getRowIdFromRowModel, GRID_ID_AUTOGENERATED } from '../hooks/features/rows/gridRowsUtils';
export { gridAdditionalRowGroupsSelector, gridPinnedRowsSelector, } from '../hooks/features/rows/gridRowsSelector';
export { headerFilteringStateInitializer, useGridHeaderFiltering, } from '../hooks/features/headerFiltering/useGridHeaderFiltering';
export { calculatePinnedRowsHeight } from '../hooks/features/rows/gridRowsUtils';
export { useGridRowSelection, rowSelectionStateInitializer, } from '../hooks/features/rowSelection/useGridRowSelection';
export { useGridRowSelectionPreProcessors } from '../hooks/features/rowSelection/useGridRowSelectionPreProcessors';
export { useGridSorting, sortingStateInitializer } from '../hooks/features/sorting/useGridSorting';
export type { GridSortingModelApplier } from '../hooks/features/sorting/gridSortingState';
export { useGridScroll } from '../hooks/features/scroll/useGridScroll';
export { useGridEvents } from '../hooks/features/events/useGridEvents';
export { useGridDimensions } from '../hooks/features/dimensions/useGridDimensions';
export { useGridStatePersistence } from '../hooks/features/statePersistence/useGridStatePersistence';
export type { GridRestoreStatePreProcessingContext } from '../hooks/features/statePersistence/gridStatePersistenceInterface';
export { useGridVirtualScroller, getRenderableIndexes, } from '../hooks/features/virtualization/useGridVirtualScroller';
export * from '../hooks/features/virtualization';
export { useTimeout } from '../hooks/utils/useTimeout';
export { useGridVisibleRows, getVisibleRows } from '../hooks/utils/useGridVisibleRows';
export { useGridInitializeState } from '../hooks/utils/useGridInitializeState';
export type { GridStateInitializer } from '../hooks/utils/useGridInitializeState';
export type { GridExperimentalFeatures, DataGridPropsWithoutDefaultValue, DataGridPropsWithDefaultValues, DataGridPropsWithComplexDefaultValueAfterProcessing, DataGridPropsWithComplexDefaultValueBeforeProcessing, } from '../models/props/DataGridProps';
export { getColumnsToExport, defaultGetRowsToExport } from '../hooks/features/export/utils';
export * from '../utils/createControllablePromise';
export { createSelector, createSelectorMemoized, unstable_resetCreateSelectorCache, } from '../utils/createSelector';
export { findParentElementFromClassName, getActiveElement, isEventTargetInPortal, } from '../utils/domUtils';
export { isNavigationKey } from '../utils/keyboardUtils';
export { clamp, isDeepEqual, isNumber, isFunction, isObject } from '../utils/utils';
export { buildWarning } from '../utils/warning';
export { exportAs } from '../utils/exportAs';
export * from '../utils/getPublicApiRef';
export type { GridPrivateOnlyApiCommon } from '../models/api/gridApiCommon';
export { useGridPrivateApiContext } from '../hooks/utils/useGridPrivateApiContext';
export * from '../hooks/utils/useOnMount';
export type { GridApiCommunity } from '../models/api/gridApiCommunity';
export type { GridApiCaches } from '../models/gridApiCaches';
export { serializeCellValue } from '../hooks/features/export/serializers/csvSerializer';
export * from '../colDef/utils';
export * from './utils';

View File

@@ -0,0 +1,67 @@
export { GridVirtualScroller } from '../components/virtualization/GridVirtualScroller';
export { GridVirtualScrollerContent } from '../components/virtualization/GridVirtualScrollerContent';
export { GridVirtualScrollerRenderZone } from '../components/virtualization/GridVirtualScrollerRenderZone';
export { GridBaseColumnHeaders } from '../components/columnHeaders/GridBaseColumnHeaders';
export { GridColumnHeadersInner } from '../components/columnHeaders/GridColumnHeadersInner';
export { DATA_GRID_DEFAULT_SLOTS_COMPONENTS } from '../constants/defaultGridSlotsComponents';
export { getGridFilter } from '../components/panel/filterPanel/GridFilterPanel';
export { useGridRegisterPipeProcessor } from '../hooks/core/pipeProcessing';
export { useGridRegisterStrategyProcessor, GRID_DEFAULT_STRATEGY } from '../hooks/core/strategyProcessing';
export { useGridInitialization } from '../hooks/core/useGridInitialization';
export { unwrapPrivateAPI } from '../hooks/core/useGridApiInitialization';
export { useGridClipboard } from '../hooks/features/clipboard/useGridClipboard';
export { useGridColumnHeaders } from '../hooks/features/columnHeaders/useGridColumnHeaders';
export { unstable_gridHeaderFilteringEditFieldSelector, unstable_gridHeaderFilteringMenuSelector } from '../hooks/features/headerFiltering/gridHeaderFilteringSelectors';
export { useGridColumnMenu, columnMenuStateInitializer } from '../hooks/features/columnMenu/useGridColumnMenu';
export { useGridColumns, columnsStateInitializer } from '../hooks/features/columns/useGridColumns';
export { getTotalHeaderHeight } from '../hooks/features/columns/gridColumnsUtils';
export { useGridColumnSpanning } from '../hooks/features/columns/useGridColumnSpanning';
export { gridColumnsStateSelector } from '../hooks/features/columns/gridColumnsSelector';
export { useGridColumnGrouping, columnGroupsStateInitializer } from '../hooks/features/columnGrouping/useGridColumnGrouping';
export { useGridDensity, densityStateInitializer } from '../hooks/features/density/useGridDensity';
export { useGridCsvExport } from '../hooks/features/export/useGridCsvExport';
export { useGridPrintExport } from '../hooks/features/export/useGridPrintExport';
export { useGridFilter, filterStateInitializer } from '../hooks/features/filter/useGridFilter';
export { passFilterLogic } from '../hooks/features/filter/gridFilterUtils';
export { isSingleSelectColDef } from '../components/panel/filterPanel/filterPanelUtils';
export { useGridFocus, focusStateInitializer } from '../hooks/features/focus/useGridFocus';
export { useGridKeyboardNavigation } from '../hooks/features/keyboardNavigation/useGridKeyboardNavigation';
export { useGridPagination, paginationStateInitializer } from '../hooks/features/pagination/useGridPagination';
export { useGridPreferencesPanel, preferencePanelStateInitializer } from '../hooks/features/preferencesPanel/useGridPreferencesPanel';
export { useGridEditing, editingStateInitializer } from '../hooks/features/editing/useGridEditing';
export { gridEditRowsStateSelector } from '../hooks/features/editing/gridEditingSelectors';
export { useGridRows, rowsStateInitializer } from '../hooks/features/rows/useGridRows';
export { useGridRowsPreProcessors } from '../hooks/features/rows/useGridRowsPreProcessors';
export { getTreeNodeDescendants, buildRootGroup } from '../hooks/features/rows/gridRowsUtils';
export { useGridRowsMeta, rowsMetaStateInitializer } from '../hooks/features/rows/useGridRowsMeta';
export { useGridParamsApi } from '../hooks/features/rows/useGridParamsApi';
export { getRowIdFromRowModel, GRID_ID_AUTOGENERATED } from '../hooks/features/rows/gridRowsUtils';
export { gridAdditionalRowGroupsSelector, gridPinnedRowsSelector } from '../hooks/features/rows/gridRowsSelector';
export { headerFilteringStateInitializer, useGridHeaderFiltering } from '../hooks/features/headerFiltering/useGridHeaderFiltering';
export { calculatePinnedRowsHeight } from '../hooks/features/rows/gridRowsUtils';
export { useGridRowSelection, rowSelectionStateInitializer } from '../hooks/features/rowSelection/useGridRowSelection';
export { useGridRowSelectionPreProcessors } from '../hooks/features/rowSelection/useGridRowSelectionPreProcessors';
export { useGridSorting, sortingStateInitializer } from '../hooks/features/sorting/useGridSorting';
export { useGridScroll } from '../hooks/features/scroll/useGridScroll';
export { useGridEvents } from '../hooks/features/events/useGridEvents';
export { useGridDimensions } from '../hooks/features/dimensions/useGridDimensions';
export { useGridStatePersistence } from '../hooks/features/statePersistence/useGridStatePersistence';
export { useGridVirtualScroller, getRenderableIndexes } from '../hooks/features/virtualization/useGridVirtualScroller';
export * from '../hooks/features/virtualization';
export { useTimeout } from '../hooks/utils/useTimeout';
export { useGridVisibleRows, getVisibleRows } from '../hooks/utils/useGridVisibleRows';
export { useGridInitializeState } from '../hooks/utils/useGridInitializeState';
export { getColumnsToExport, defaultGetRowsToExport } from '../hooks/features/export/utils';
export * from '../utils/createControllablePromise';
export { createSelector, createSelectorMemoized, unstable_resetCreateSelectorCache } from '../utils/createSelector';
export { findParentElementFromClassName, getActiveElement, isEventTargetInPortal } from '../utils/domUtils';
export { isNavigationKey } from '../utils/keyboardUtils';
export { clamp, isDeepEqual, isNumber, isFunction, isObject } from '../utils/utils';
export { buildWarning } from '../utils/warning';
export { exportAs } from '../utils/exportAs';
export * from '../utils/getPublicApiRef';
export { useGridPrivateApiContext } from '../hooks/utils/useGridPrivateApiContext';
export * from '../hooks/utils/useOnMount';
export { serializeCellValue } from '../hooks/features/export/serializers/csvSerializer';
export * from '../colDef/utils';
export * from './utils';

View File

@@ -0,0 +1,6 @@
{
"sideEffects": false,
"module": "./index.js",
"main": "../node/internals/index.js",
"types": "./index.d.ts"
}

View File

@@ -0,0 +1,6 @@
import { UncapitalizeObjectKeys } from './slotsMigration';
export declare function computeSlots<SlotComponents extends object>({ defaultSlots, slots, components, }: {
defaultSlots: UncapitalizeObjectKeys<SlotComponents>;
slots?: UncapitalizeObjectKeys<Partial<SlotComponents>>;
components?: Partial<SlotComponents>;
}): UncapitalizeObjectKeys<SlotComponents>;

View File

@@ -0,0 +1,24 @@
import _extends from "@babel/runtime/helpers/esm/extends";
import { uncapitalizeObjectKeys } from './slotsMigration';
// TODO v7: Remove `components` and usages of `UncapitalizeObjectKeys` type
// after converting keys in Grid(Pro|Premium)SlotsComponent to camelCase.
// https://github.com/mui/mui-x/issues/7940
export function computeSlots({
defaultSlots,
slots,
components
}) {
const overrides = slots != null ? slots : components ? uncapitalizeObjectKeys(components) : null;
if (!overrides || Object.keys(overrides).length === 0) {
return defaultSlots;
}
const result = _extends({}, defaultSlots);
Object.keys(overrides).forEach(key => {
const k = key;
if (overrides[k] !== undefined) {
result[k] = overrides[k];
}
});
return result;
}

View File

@@ -0,0 +1,3 @@
export * from './computeSlots';
export * from './slotsMigration';
export * from './useProps';

View File

@@ -0,0 +1,3 @@
export * from './computeSlots';
export * from './slotsMigration';
export * from './useProps';

View File

@@ -0,0 +1,4 @@
export type UncapitalizeObjectKeys<T extends object> = {
[K in keyof T as K extends string ? Uncapitalize<K> : K]: T[K];
};
export declare const uncapitalizeObjectKeys: <TInputType extends object>(capitalizedObject: TInputType) => UncapitalizeObjectKeys<TInputType> | undefined;

View File

@@ -0,0 +1,13 @@
import _extends from "@babel/runtime/helpers/esm/extends";
// TODO v7: This file exist only to simplify typing between
// components/componentsProps and slots/slotProps
// Should be deleted when components/componentsProps are removed
export const uncapitalizeObjectKeys = capitalizedObject => {
if (capitalizedObject === undefined) {
return undefined;
}
return Object.keys(capitalizedObject).reduce((acc, key) => _extends({}, acc, {
[`${key.charAt(0).toLowerCase()}${key.slice(1)}`]: capitalizedObject[key]
}), {});
};

View File

@@ -0,0 +1,8 @@
import { GridSlotsComponentsProps } from '../../models/gridSlotsComponentsProps';
import { GridSlotsComponent } from '../../models';
interface WithComponents {
components?: Partial<GridSlotsComponent>;
componentsProps?: GridSlotsComponentsProps;
}
export declare function useProps<T extends WithComponents>(allProps: T): readonly [Partial<GridSlotsComponent> | undefined, GridSlotsComponentsProps | undefined, Omit<T, "components" | "componentsProps">];
export {};

View File

@@ -0,0 +1,33 @@
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
const _excluded = ["components", "componentsProps"];
import * as React from 'react';
/** Gathers props for the root element into a single `.forwardedProps` field */
function groupForwardedProps(props) {
var _props$forwardedProps;
const keys = Object.keys(props);
if (!keys.some(key => key.startsWith('aria-') || key.startsWith('data-'))) {
return props;
}
const newProps = {};
const forwardedProps = (_props$forwardedProps = props.forwardedProps) != null ? _props$forwardedProps : {};
for (let i = 0; i < keys.length; i += 1) {
const key = keys[i];
if (key.startsWith('aria-') || key.startsWith('data-')) {
forwardedProps[key] = props[key];
} else {
newProps[key] = props[key];
}
}
newProps.forwardedProps = forwardedProps;
return newProps;
}
export function useProps(allProps) {
return React.useMemo(() => {
const {
components,
componentsProps
} = allProps,
themedProps = _objectWithoutPropertiesLoose(allProps, _excluded);
return [components, componentsProps, groupForwardedProps(themedProps)];
}, [allProps]);
}