{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "badge",
  "title": "Badge",
  "description": "A bordered rectangle of tracked-out mono for a status or a count. Eight variants.",
  "dependencies": [
    "@base-ui/react",
    "class-variance-authority"
  ],
  "registryDependencies": [
    "@afterglow/theme"
  ],
  "files": [
    {
      "path": "registry/terminal/ui/badge.tsx",
      "content": "import { mergeProps } from \"@base-ui/react/merge-props\";\nimport { useRender } from \"@base-ui/react/use-render\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst badgeVariants = cva(\n  \"inline-flex h-[1.125rem] w-fit shrink-0 items-center justify-center gap-1 overflow-hidden whitespace-nowrap rounded-none border px-1.5 pt-[1.5px] font-mono font-semibold text-2xs uppercase leading-none tracking-terminal-lg transition [&>svg]:pointer-events-none [&>svg]:size-3\",\n  {\n    defaultVariants: { variant: \"default\" },\n    variants: {\n      variant: {\n        amber: \"border-amber/60 bg-amber/10 text-amber\",\n        azure: \"border-azure/60 bg-azure/10 text-azure\",\n        default: \"border-line-strong bg-phosphor/10 text-phosphor\",\n        destructive: \"border-destructive bg-destructive/12 text-destructive\",\n        info: \"border-info/60 bg-info/10 text-info\",\n        outline: \"border-line text-muted-foreground\",\n        signal: \"border-signal bg-signal/12 text-signal\",\n        solid: \"border-phosphor bg-phosphor text-void\",\n        violet: \"border-violet/60 bg-violet/10 text-violet\",\n        warning: \"border-warning/60 bg-warning/10 text-warning\",\n      },\n    },\n  }\n);\n\nfunction Badge({\n  className,\n  variant = \"default\",\n  render,\n  ...props\n}: useRender.ComponentProps<\"span\"> & VariantProps<typeof badgeVariants>) {\n  return useRender({\n    defaultTagName: \"span\",\n    props: mergeProps<\"span\">(\n      { className: cn(badgeVariants({ variant }), className) },\n      props\n    ),\n    render,\n\n    state: { slot: \"badge\", variant },\n  });\n}\n\nexport { Badge, badgeVariants };\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}