import { Activity, CheckCircle, ListTodo, Zap } from "lucide-react"; import type { AgentStats } from "../api"; interface AgentMetricsBarProps { stats: AgentStats | null; } const METRIC_CARDS = [ { icon: Activity, label: "Active Agents", valueKey: "activeCount", className: "agent-metric-card--active" }, { icon: ListTodo, label: "Assigned Tasks", valueKey: "assignedTaskCount", className: "agent-metric-card--tasks" }, { icon: CheckCircle, label: "Success Rate", valueKey: "successRate", className: "agent-metric-card--success" }, { icon: Zap, label: "Total Runs", valueKey: "completedRuns", className: "agent-metric-card--runs" }, ] as const; export function AgentMetricsBar({ stats }: AgentMetricsBarProps) { if (!stats) return null; return (
{METRIC_CARDS.map((card) => { const value = card.valueKey === "successRate" ? `${Math.round(stats.successRate * 100)}%` : stats[card.valueKey]; return (
{value} {card.label}
); })}
); }