{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "badge",
  "title": "Badge",
  "description": "Small labels for categorizing or highlighting content.",
  "dependencies": ["class-variance-authority"],
  "registryDependencies": [],
  "files": [
    {
      "path": "registry/glasswave/ui/badge.tsx",
      "content": "import { cva, type VariantProps } from \"class-variance-authority\";\nimport { forwardRef, type HTMLAttributes } from \"react\";\nimport { cn } from \"@/lib/utils\";\n\nconst badgeVariants = cva(\n  \"inline-flex items-center gap-1 rounded-full border px-2.5 py-0.5 text-xs font-semibold backdrop-blur-md transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-blue-500/40 focus-visible:ring-offset-2 focus-visible:ring-offset-transparent [&>svg]:size-3 [&>svg]:shrink-0\",\n  {\n    variants: {\n      variant: {\n        default:\n          \"border-white/25 bg-[#007AFF] text-white shadow-sm hover:bg-[#0070ec]\",\n        // Inverted default: blue text + blue ring on a transparent fill.\n        outline:\n          \"border-[#007AFF]/55 bg-transparent text-[#007AFF] hover:bg-[#007AFF]/10 dark:border-[#409cff]/55 dark:text-[#409cff] dark:hover:bg-[#409cff]/10\",\n        // Real frosted glass: visible white fill + top highlight so it reads as\n        // glass on light backgrounds instead of flat grey.\n        glass:\n          \"border-black/[0.06] bg-white/45 text-current shadow-[inset_0_1px_0_0_rgba(255,255,255,0.7)] hover:bg-white/60 dark:border-white/15 dark:bg-white/[0.1] dark:text-current/90 dark:shadow-[inset_0_1px_0_0_rgba(255,255,255,0.18)] dark:hover:bg-white/[0.16]\",\n        destructive:\n          \"border-white/25 bg-[#FF3B30] text-white shadow-sm hover:bg-[#ec352b]\",\n      },\n    },\n    defaultVariants: {\n      variant: \"default\",\n    },\n  },\n);\n\nexport interface BadgeProps\n  extends HTMLAttributes<HTMLDivElement>,\n    VariantProps<typeof badgeVariants> {}\n\nexport const Badge = forwardRef<HTMLDivElement, BadgeProps>(\n  ({ className, variant, ...props }, ref) => {\n    return (\n      <div\n        ref={ref}\n        className={cn(badgeVariants({ variant }), className)}\n        {...props}\n      />\n    );\n  },\n);\nBadge.displayName = \"Badge\";\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}
