/** * GraphOverlay — minimal built-in popover fallback. * Used ONLY when host app doesn't provide renderOverlay prop. * For full-featured popovers, use renderOverlay with project UI components. */ import type { GraphNode } from '../ports/types'; import type { GraphEventPort } from '../ports/GraphEventPort'; export interface GraphOverlayProps { selectedNode: GraphNode | null; events?: GraphEventPort; onDeselect: () => void; } export function GraphOverlay({ selectedNode, events, onDeselect, }: GraphOverlayProps): React.JSX.Element | null { if (!selectedNode) return null; return (