import { Badge } from "@/components/ui/badge"
import { cn } from "@/lib/utils"

const ACTIVE_BADGE_CLASS =
  "border-emerald-500/30 bg-emerald-500/10 text-emerald-700 dark:text-emerald-300"
const INACTIVE_BADGE_CLASS =
  "border-amber-500/30 bg-amber-500/10 text-amber-700 dark:text-amber-300"

type StatusBadgeProps = {
  status: string
  label?: string
  className?: string
}

function StatusBadge({ status, label, className }: StatusBadgeProps) {
  const isActive = status === "active"
  const isInactive = status === "inactive"
  const displayLabel = label ?? status

  return (
    <Badge
      variant="outline"
      className={cn(
        isActive && ACTIVE_BADGE_CLASS,
        isInactive && INACTIVE_BADGE_CLASS,
        className
      )}
    >
      {displayLabel}
    </Badge>
  )
}

export { StatusBadge }
