UNPKG

@engie-group/fluid-design-system-react

Version:

Fluid Design System React

23 lines (20 loc) 1.24 kB
import { jsx } from 'react/jsx-runtime'; import { useMergeRefs } from '../../../node_modules/.pnpm/@floating-ui_react@0.27.3_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/@floating-ui/react/dist/floating-ui.react.js'; import { Root as Slot } from '../../../node_modules/.pnpm/@radix-ui_react-slot@1.2.3_@types_react@19.2.6_react@19.2.0/node_modules/@radix-ui/react-slot/dist/index.js'; import React__default, { useEffect } from 'react'; import { usePopoverContext } from '../NJPopoverContext.js'; import { usePopoverInteractionContext } from '../NJPopoverInteractionContext.js'; const NJPopoverAnchor = React__default.forwardRef(({ onOpen, children }, forwardedRef) => { const { refs, isOpen } = usePopoverContext(); useEffect(() => { if (onOpen) { onOpen(isOpen ?? false); } }, [isOpen, onOpen]); const popoverInteractionContext = usePopoverInteractionContext(); const getReferenceProps = popoverInteractionContext?.getReferenceProps; const anchorRef = useMergeRefs([forwardedRef, refs.setReference]); return jsx(Slot, { ...getReferenceProps?.({ ref: anchorRef }), children: children }); }); NJPopoverAnchor.displayName = 'NJPopoverAnchor'; export { NJPopoverAnchor };