{
e.stopPropagation();
onSelect(node.id);
}}
onContextMenu={(e) => {
e.preventDefault();
e.stopPropagation();
useCanvasStore.getState().openContextMenu({ x: e.clientX, y: e.clientY, nodeId: node.id, nodeData: data });
}}
>
{/* Status gradient bar */}
{/* Header: name + badges + extract */}
{hasSubChildren && (
{descendantCount}
)}
{tierCfg.label}
{/* Role */}
{data.role && (
{data.role}
)}
{/* Skills */}
{skills.length > 0 && (
{skills.slice(0, 3).map((skill) => (
{skill}
))}
{skills.length > 3 && (
+{skills.length - 3}
)}
)}
{/* Status + active tasks row */}
{data.status !== "online" ? (
{statusCfg.label}
) :
}
{data.activeTasks > 0 && (
)}
{/* Current task banner for sub-agents */}
{data.currentTask && (
)}
{/* Recursive sub-children rendered inside this card */}
{hasSubChildren && depth < MAX_NESTING_DEPTH && (
Team
= 2 ? "grid grid-cols-2 gap-1" : "space-y-1"}>
{subChildren.map((sub) => (
))}
)}