UNPKG

@mui/x-data-grid-premium

Version:

The Premium plan edition of the MUI X Data Grid Components.

57 lines 1.79 kB
import _extends from "@babel/runtime/helpers/esm/extends"; import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose"; const _excluded = ["aria-label", "children", "className"]; import * as React from 'react'; import { styled } from '@mui/material/styles'; import { vars } from '@mui/x-data-grid-pro/internals'; import useId from '@mui/utils/useId'; import composeClasses from '@mui/utils/composeClasses'; import { getDataGridUtilityClass } from '@mui/x-data-grid-pro'; import clsx from 'clsx'; import { useGridRootProps } from "../../hooks/utils/useGridRootProps.mjs"; import { useCollapsibleContext } from "./CollapsibleContext.mjs"; import { jsx as _jsx } from "react/jsx-runtime"; const useUtilityClasses = ownerState => { const { classes } = ownerState; const slots = { root: ['collapsiblePanel'] }; return composeClasses(slots, getDataGridUtilityClass, classes); }; const CollapsiblePanelRoot = styled('div', { name: 'MuiDataGrid', slot: 'CollapsiblePanel' })({ border: `1px solid ${vars.colors.border.base}`, borderTop: 'none', borderBottomLeftRadius: vars.radius.base, borderBottomRightRadius: vars.radius.base, flex: 1, overflow: 'hidden' }); function CollapsiblePanel(props) { const { children, className } = props, other = _objectWithoutPropertiesLoose(props, _excluded); const rootProps = useGridRootProps(); const classes = useUtilityClasses(rootProps); const id = useId(); const { open } = useCollapsibleContext(); if (!open) { return null; } return /*#__PURE__*/_jsx(CollapsiblePanelRoot, _extends({ ownerState: rootProps, className: clsx(classes.root, className), id: id }, other, { children: children })); } export { CollapsiblePanel };