"use client"; import { IconPointFilled } from "@tabler/icons-react"; import { Tooltip, TooltipContent, TooltipTrigger } from "@kandev/ui/tooltip"; import { CompositorPulse } from "@kandev/ui/compositor-pulse"; import { cn } from "@/lib/utils"; import { useTranslation } from "react-i18next"; type ExecutionIndicatorProps = { status: string; className?: string; }; /** * Shows a live/ready indicator for tasks with an active agent execution. * - IN_PROGRESS / SCHEDULING: pulsing green dot + "Live" * - REVIEW / WAITING: solid amber dot + "Ready" * - Otherwise: hidden */ export function ExecutionIndicator({ status, className }: ExecutionIndicatorProps) { const { t } = useTranslation(); const normalized = status?.toLowerCase().replace(/ /g, "_"); if (normalized === "in_progress" || normalized === "scheduling") { return ( {t("office:live")} {t("office:agentIsActivelyWorkingOnThis")} ); } if (normalized === "in_review" || normalized === "review") { return ( {t("office:ready")} {t("office:agentFinishedWorkspaceReadyForReview")} ); } return null; }