{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "ui-button",
  "title": "Ui Button",
  "dependencies": [
    "@radix-ui/react-slot@1.2.3",
    "class-variance-authority@0.7.1"
  ],
  "devDependencies": [],
  "registryDependencies": [
    "https://ui.orchid.ai/r/orchid-foundation.json",
    "https://ui.orchid.ai/r/orchid-theme.json"
  ],
  "files": [
    {
      "path": "registry/ui/orchid/ui/button.tsx",
      "content": "\"use client\";\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { Slot } from '@radix-ui/react-slot';\nimport * as React from 'react';\nimport { cn } from \"../lib/ui-utils\";\nconst buttonVariants = cva('focus-visible:ring-neutral-strong inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0', {\n    variants: {\n        variant: {\n            default: 'bg-primary text-primary-foreground shadow hover:bg-primary/90',\n            destructive: 'bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90',\n            outline: 'border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground',\n            secondary: 'bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80',\n            ghost: 'hover:bg-accent hover:text-accent-foreground',\n            link: 'text-primary underline-offset-4 hover:underline',\n        },\n        size: {\n            default: 'h-9 px-4 py-2',\n            sm: 'h-8 rounded-md px-3 text-xs',\n            lg: 'h-10 rounded-md px-8',\n            icon: 'h-9 w-9',\n        },\n    },\n    defaultVariants: {\n        variant: 'default',\n        size: 'default',\n    },\n});\nexport interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {\n    asChild?: boolean;\n}\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(({ className, variant, size, asChild = false, ...props }, ref) => {\n    const Comp = asChild ? Slot : 'button';\n    return (<Comp className={cn(buttonVariants({ variant, size, className }))} ref={ref} {...(props as any)}/>);\n});\nButton.displayName = 'Button';\nexport { Button, buttonVariants };\n",
      "type": "registry:ui",
      "target": "@ui/orchid/ui/button.tsx"
    }
  ],
  "type": "registry:ui"
}