UNPKG

@mui/x-data-grid

Version:

The community edition of the data grid component (MUI X).

61 lines (60 loc) 2.3 kB
import { GridRowId, GridRowsLookup, GridRowTreeConfig, GridRowEntry } from '../../../models/gridRows'; import type { DataGridProcessedProps } from '../../../models/props/DataGridProps'; export interface GridRowTreeCreationParams { ids: GridRowId[]; idRowsLookup: GridRowsLookup; idToIdLookup: Record<string, GridRowId>; previousTree: GridRowTreeConfig | null; } export interface GridRowTreeCreationValue { /** * Name of the algorithm used to group the rows * It is useful to decide which filtering / sorting algorithm to apply, to avoid applying tree-data filtering on a grouping-by-column dataset for instance. */ groupingName: string; tree: GridRowTreeConfig; treeDepth: number; ids: GridRowId[]; idRowsLookup: GridRowsLookup; idToIdLookup: Record<string, GridRowId>; additionalRowGroups?: { pinnedRows?: GridPinnedRowsState; }; } export interface GridRowsInternalCache extends Omit<GridRowTreeCreationParams, 'previousTree'> { /** * The rows as they were the last time all the rows have been updated at once * It is used to avoid processing several time the same set of rows */ rowsBeforePartialUpdates: DataGridProcessedProps['rows']; /** * The value of the `loading` prop since the last time that the rows state was updated. */ loadingPropBeforePartialUpdates: DataGridProcessedProps['loading']; } export interface GridRowsState extends GridRowTreeCreationValue { /** * Matches the value of the `loading` prop. */ loading?: boolean; /** * Amount of rows before applying the filtering. * It also counts the expanded and collapsed children rows. */ totalRowCount: number; /** * Amount of rows before applying the filtering. * It does not count the expanded children rows. */ totalTopLevelRowCount: number; /** * Tree returned by the `rowTreeCreation` strategy processor. * It is used to re-apply the `hydrateRows` pipe processor without having to recreate the tree. */ groupingResponseBeforeRowHydration: GridRowTreeCreationValue; } export declare type GridHydrateRowsValue = GridRowTreeCreationValue; export interface GridPinnedRowsState { top?: GridRowEntry[]; bottom?: GridRowEntry[]; }