"use client"; import { memo, useCallback, type MouseEvent } from "react"; import { Handle, Position, type NodeProps } from "reactflow"; import type { GraphNodeData } from "@/types/mindmap"; function MindmapNodeCard({ data }: NodeProps) { const isRoot = data.level === 0; const canOpenChat = typeof data.onOpenChat === "function"; const handleToggleClick = useCallback( (event: MouseEvent) => { event.preventDefault(); event.stopPropagation(); data.onToggle?.(); }, [data], ); const handleContentDoubleClick = useCallback( (event: MouseEvent) => { event.preventDefault(); event.stopPropagation(); data.onOpenChat?.(); }, [data], ); return (
{data.hasChildren ? ( <> ) : ( )}
); } export default memo(MindmapNodeCard);