import * as React from "react";
import { cn } from "@/lib/utils";

interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement> {
  variant?: "default" | "ok" | "warn" | "err" | "neutral";
}

function Badge({ className, variant = "default", ...props }: BadgeProps) {
  return (
    <span
      className={cn(
        "inline-flex items-center gap-1 rounded-full px-2 py-0.5 text-xs font-medium",
        variant === "default" && "badge-neutral",
        variant === "ok" && "badge-ok",
        variant === "warn" && "badge-warn",
        variant === "err" && "badge-err",
        variant === "neutral" && "badge-neutral",
        className
      )}
      {...props}
    />
  );
}

export { Badge };
