UNPKG

@drivy/cobalt

Version:

Opinionated design system for Drivy's projects.

28 lines (25 loc) 918 B
import { useEffect } from 'react'; import { registerPopover } from './popoverRegistry.js'; import { useDesktopPopoverCore } from './useDesktopPopoverCore.js'; const DesktopPopover = ({ targetRef, children, isOpen, onOpenChange, ...rest }) => { const referenceElement = targetRef && "current" in targetRef ? targetRef.current : targetRef; useEffect(() => { if (!onOpenChange) return; return registerPopover(() => { onOpenChange(false); }); }, [onOpenChange]); const { refs, getReferenceProps, renderFloating } = useDesktopPopoverCore({ isOpen, onOpenChange, referenceElement, ...rest, }); if (typeof children === "function") { return children({ refs, getReferenceProps, renderFloating }); } return renderFloating(children); }; export { DesktopPopover }; //# sourceMappingURL=DesktopPopover.js.map