UNPKG

@intility/bifrost-react

Version:

React library for Intility's design system, Bifrost.

30 lines (29 loc) 895 B
"use client"; import { jsx as _jsx } from "react/jsx-runtime"; import { forwardRef, useLayoutEffect, useRef } from "react"; import setRef from "../../utils/setRef.js"; const Popover = /*#__PURE__*/ forwardRef(({ open, ...props }, ref)=>{ const popoverRef = useRef(null); useLayoutEffect(()=>{ if (!popoverRef.current) return; const stackElement = popoverRef.current; if (!open && stackElement.matches(":popover-open")) { stackElement.hidePopover?.(); } if (open && !stackElement.matches(":popover-open")) { stackElement.showPopover?.(); } }, [ open ]); return /*#__PURE__*/ _jsx("div", { ...props, ref: (r)=>{ setRef(popoverRef, r); setRef(ref, r); }, popover: "manual" }); }); Popover.displayName = "Popover"; export default Popover;