26 lines
777 B
TypeScript
26 lines
777 B
TypeScript
import { cn } from "@/lib/utils"
|
|
|
|
interface BadgeProps {
|
|
className?: string
|
|
children: React.ReactNode
|
|
variant?: "default" | "secondary" | "outline" | "accent"
|
|
}
|
|
|
|
export default function Badge({ variant = "default", className, children }: BadgeProps) {
|
|
return (
|
|
<span
|
|
className={cn(
|
|
"inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium transition-colors",
|
|
{
|
|
"bg-primary text-primary-foreground": variant === "default",
|
|
"bg-secondary text-secondary-foreground": variant === "secondary",
|
|
"border border-border text-foreground": variant === "outline",
|
|
"bg-accent text-accent-foreground": variant === "accent"
|
|
},
|
|
className
|
|
)}
|
|
>
|
|
{children}
|
|
</span>
|
|
)
|
|
} |