UNPKG

@mui/x-data-grid

Version:

The Community plan edition of the MUI X Data Grid components.

29 lines 1.15 kB
import _formatErrorMessage from "@mui/x-internals/formatErrorMessage"; import * as React from 'react'; import { getRowValue as getRowValueFn } from "./gridRowsUtils.mjs"; export const useGridParamsOverridableMethods = apiRef => { const getCellValue = React.useCallback((id, field) => { const colDef = apiRef.current.getColumn(field); const row = apiRef.current.getRow(id); if (!row) { throw new Error(process.env.NODE_ENV !== "production" ? `MUI X: No row with id #${id} found` : _formatErrorMessage(87, id)); } if (!colDef || !colDef.valueGetter) { return row[field]; } return colDef.valueGetter(row[colDef.field], row, colDef, apiRef); }, [apiRef]); const getRowValue = React.useCallback((row, colDef) => getRowValueFn(row, colDef, apiRef), [apiRef]); const getRowFormattedValue = React.useCallback((row, colDef) => { const value = getRowValue(row, colDef); if (!colDef || !colDef.valueFormatter) { return value; } return colDef.valueFormatter(value, row, colDef, apiRef); }, [apiRef, getRowValue]); return { getCellValue, getRowValue, getRowFormattedValue }; };