Files
fiberops-web/src/components/ui/Badge.tsx

32 lines
839 B
TypeScript

import { cn } from "@/lib/utils";
interface BadgeProps {
children: React.ReactNode;
variant?: "default" | "success" | "warning" | "danger" | "info" | "muted" | "purple";
className?: string;
}
const variantClasses: Record<string, string> = {
default: "bg-blue-100 text-blue-800",
success: "bg-green-100 text-green-800",
warning: "bg-amber-100 text-amber-800",
danger: "bg-red-100 text-red-800",
info: "bg-sky-100 text-sky-800",
muted: "bg-gray-100 text-gray-700",
purple: "bg-purple-100 text-purple-800",
};
export function Badge({ children, variant = "default", className }: BadgeProps) {
return (
<span
className={cn(
"inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium",
variantClasses[variant],
className
)}
>
{children}
</span>
);
}