{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "dependencies": [
    "react-aria-components"
  ],
  "files": [
    {
      "content": "export * from \"./styles\";\nexport * from \"./toggle\";\n",
      "path": "src/registry/ui/toggle/index.ts",
      "type": "registry:ui"
    },
    {
      "content": "\"use client\";\n\nimport type { VariantProps } from \"cva\";\nimport { composeRenderProps, ToggleButton } from \"react-aria-components\";\nimport { ToggleStyles } from \"./styles\";\n\nexport interface ToggleProps\n  extends React.ComponentProps<typeof ToggleButton>,\n    VariantProps<typeof ToggleStyles> {}\n\nexport function Toggle({ className, variant, size, ...props }: ToggleProps) {\n  return (\n    <ToggleButton\n      className={composeRenderProps(className, (className) =>\n        ToggleStyles({ className, size, variant })\n      )}\n      data-slot=\"toggle\"\n      {...props}\n    />\n  );\n}\n",
      "path": "src/registry/ui/toggle/toggle.tsx",
      "type": "registry:ui"
    },
    {
      "content": "import { cva } from \"~/registry/lib/cva\";\n\nexport const ToggleStyles = cva({\n  base: [\n    \"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md font-medium text-sm outline-none transition-[color,box-shadow]\",\n    \"hover:bg-muted hover:text-muted-foreground\",\n    \"focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50\",\n    \"disabled:pointer-events-none disabled:opacity-50\",\n    \"aria-invalid:border-destructive aria-invalid:ring-destructive/20\",\n    \"selected:bg-accent selected:text-accent-foreground dark:aria-invalid:ring-destructive/40\",\n    \"[&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0\",\n  ],\n  defaultVariants: {\n    size: \"default\",\n    variant: \"default\",\n  },\n\n  variants: {\n    size: {\n      default: \"h-9 min-w-9 px-2\",\n      lg: \"h-10 min-w-10 px-2.5\",\n      sm: \"h-8 min-w-8 px-1.5\",\n    },\n    variant: {\n      default: \"bg-transparent\",\n      outline:\n        \"border border-input bg-transparent shadow-xs hover:bg-accent hover:text-accent-foreground\",\n    },\n  },\n});\n",
      "path": "src/registry/ui/toggle/styles.ts",
      "type": "registry:ui"
    }
  ],
  "name": "toggle",
  "registryDependencies": [
    "@kanpeki/cva",
    "@kanpeki/custom-plugin"
  ],
  "type": "registry:ui"
}