Intelligence
Artifacts
Browse the repository, read documents, and manage the governance folders. Source, runtime, and infrastructure are read-only.
Repository
assignment-dispatch-button.tsxassignment-status-badge.tsxassignments-panel.tsxcreate-mission-form.tsxgovernance-panels.tsxmission-dispatch.tsxmission-edit.tsxmission-state-actions.tsxmission-status-badge.tsxobjective-edit.tsxobjective-status-badge.tsxobjective-status-select.tsxobjectives-panel.tsxreport-list.tsxwork-orders-panel.tsx
README.md
CONSTITUTION_COMPLIANCE_AUDIT_V1.mdREADME.md
repositories/aaf-holdings/hq01/components/missions/objective-status-badge.tsx
794 B
import { cn } from "@/lib/utils";
import type { ObjectiveStatus } from "@/lib/missions/types";
const STYLES: Record<ObjectiveStatus, string> = {
Draft: "bg-slate-100 text-slate-600",
Planned: "bg-blue-50 text-blue-700",
Active: "bg-emerald-50 text-emerald-700",
Blocked: "bg-red-50 text-red-700",
Completed: "bg-teal-50 text-teal-700",
Cancelled: "bg-slate-100 text-slate-500",
Archived: "bg-slate-100 text-slate-500",
};
export function ObjectiveStatusBadge({
status,
className,
}: {
status: ObjectiveStatus;
className?: string;
}) {
return (
<span
className={cn(
"inline-flex items-center rounded-full px-2 py-0.5 text-[11px] font-medium",
STYLES[status] ?? STYLES.Draft,
className,
)}
>
{status}
</span>
);
}
root · /srv/aaf