{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "glass-button",
  "title": "Glass Button",
  "author": "Alex Chih (https://alexchih.com)",
  "description": "Pill button in three registers — korozen primary, quiet secondary outline, ruri tinted.",
  "dependencies": [
    "class-variance-authority",
    "radix-ui"
  ],
  "registryDependencies": [
    "https://washiveil.alexchih.com/r/theme.json"
  ],
  "files": [
    {
      "path": "registry/washiveil/ui/glass-button.tsx",
      "content": "import { Slot } from 'radix-ui';\nimport { cva, type VariantProps } from 'class-variance-authority';\n\nimport { cn } from '@/lib/utils';\n\nexport const glassButtonVariants = cva(\n  'inline-flex items-center justify-center rounded-full text-sm font-medium transition-colors focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background focus-visible:outline-none',\n  {\n    variants: {\n      variant: {\n        primary:\n          'bg-primary font-semibold text-primary-foreground shadow-[0_8px_24px_rgba(208,114,46,0.30)] hover:bg-[#9d4416] dark:font-medium dark:hover:bg-[#F7B888]',\n        secondary:\n          'border border-border text-body hover:border-ruri hover:text-ruri dark:hover:border-ruri-soft dark:hover:text-ruri-soft',\n        tinted:\n          'border border-ruri/25 bg-ruri/10 text-ruri hover:bg-ruri/20 dark:border-ruri-soft/25 dark:bg-ruri-soft/10 dark:text-ruri-soft dark:hover:bg-ruri-soft/20',\n      },\n      size: {\n        md: 'px-6 py-3',\n        sm: 'px-4 py-2',\n      },\n    },\n    defaultVariants: {\n      variant: 'primary',\n      size: 'md',\n    },\n  },\n);\n\nexport interface GlassButtonProps\n  extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n    VariantProps<typeof glassButtonVariants> {\n  asChild?: boolean;\n}\n\nexport function GlassButton({ variant, size, asChild, className, ...props }: GlassButtonProps) {\n  const Comp = asChild ? Slot.Root : 'button';\n  return <Comp className={cn(glassButtonVariants({ variant, size }), className)} {...props} />;\n}\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}