{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "toggle",
  "title": "Toggle",
  "description": "A pill toggle with a quiet pressed state, shared focus and invalid recipes.",
  "dependencies": [
    "@base-ui/react@1.9.0",
    "class-variance-authority@0.7.1"
  ],
  "registryDependencies": [
    "@waimakers/utils",
    "@waimakers/theme"
  ],
  "files": [
    {
      "path": "src/components/ui/toggle.tsx",
      "content": "import { Toggle as TogglePrimitive } from \"@base-ui/react/toggle\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn, focusRing, invalidRing } from \"../../lib/utils\";\n\nconst toggleVariants = cva(\n  cn(\n    \"group/toggle inline-flex shrink-0 items-center justify-center gap-2 whitespace-nowrap rounded-full text-sm font-medium text-foreground transition-colors duration-[var(--dur-fast,120ms)] ease-brand hover:bg-muted aria-pressed:bg-secondary aria-pressed:text-secondary-foreground disabled:cursor-not-allowed disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n    focusRing,\n    invalidRing,\n  ),\n  {\n    variants: {\n      variant: { default: \"border border-transparent\", outline: \"border border-input\" },\n      size: { default: \"h-11 min-w-11 px-4\", sm: \"h-9 min-w-9 px-3\", lg: \"h-12 min-w-12 px-5\" },\n    },\n    defaultVariants: { variant: \"default\", size: \"default\" },\n  },\n);\n\nfunction Toggle({\n  className,\n  variant = \"default\",\n  size = \"default\",\n  ...props\n}: TogglePrimitive.Props & VariantProps<typeof toggleVariants>) {\n  return (\n    <TogglePrimitive\n      data-slot=\"toggle\"\n      className={cn(toggleVariants({ variant, size, className }))}\n      {...props}\n    />\n  );\n}\n\nexport { Toggle, toggleVariants };\n",
      "type": "registry:ui",
      "target": "components/ui/toggle.tsx"
    }
  ],
  "type": "registry:ui"
}