UNPKG

@gravity-ui/uikit

Version:

Gravity UI base styling and components

15 lines (14 loc) 1.14 kB
'use client'; import { jsx as _jsx } from "react/jsx-runtime"; import * as React from 'react'; import { CSSTransition } from 'react-transition-group'; import { getCSSTransitionClassNames } from "../../utils/transition.js"; import { useDisclosureAttributes } from "../DisclosureContext.js"; import { DisclosureQa, b } from "../constants.js"; export function DisclosureDetails({ children, qa }) { const containerRef = React.useRef(null); const { ariaControls, ariaLabelledby, keepMounted, expanded } = useDisclosureAttributes(); return (_jsx(CSSTransition, { nodeRef: containerRef, in: expanded, addEndListener: (done) => containerRef.current?.addEventListener('animationend', done), classNames: getCSSTransitionClassNames(b), mountOnEnter: !keepMounted, unmountOnExit: !keepMounted, appear: true, children: _jsx("div", { ref: containerRef, id: ariaControls, role: "region", "aria-labelledby": ariaLabelledby, className: b('content', { visible: expanded }), "data-qa": qa || DisclosureQa.DETAILS, children: children }) })); } DisclosureDetails.displayName = 'DisclosureDetails'; //# sourceMappingURL=DisclosureDetails.js.map