{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "switch",
  "title": "Switch",
  "description": "On/off toggle switch built on Base UI Switch.",
  "dependencies": [
    "@base-ui/react@^1.8.0"
  ],
  "files": [
    {
      "path": "registry/rapid/ui/switch/switch.tsx",
      "content": "'use client'\n\nimport { Switch as SwitchPrimitive } from '@base-ui/react/switch'\nimport { cn } from '@/lib/utils'\n\nfunction Switch({\n\tclassName,\n\tsize = 'default',\n\t...props\n}: SwitchPrimitive.Root.Props & {\n\tsize?: 'sm' | 'default'\n}) {\n\treturn (\n\t\t<SwitchPrimitive.Root\n\t\t\tdata-slot=\"switch\"\n\t\t\tdata-size={size}\n\t\t\tclassName={cn(\n\t\t\t\t'peer group/switch relative inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent transition-all outline-none group-has-[:focus-visible]/field-label:border-transparent group-has-[:focus-visible]/field-label:ring-0 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 p-0.5 data-[size=default]:h-5 data-[size=default]:w-9 data-[size=sm]:h-4 data-[size=sm]:w-7 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:bg-primary data-checked:hover:bg-primary/90 data-unchecked:border-input data-unchecked:bg-background data-unchecked:hover:border-primary/90 data-disabled:cursor-not-allowed data-disabled:opacity-50',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<SwitchPrimitive.Thumb\n\t\t\t\tdata-slot=\"switch-thumb\"\n\t\t\t\tclassName=\"pointer-events-none block rounded-full ring-0 transition-transform group-data-[size=default]/switch:size-3.5 group-data-[size=sm]/switch:size-2.5 group-data-[size=default]/switch:data-checked:translate-x-4 group-data-[size=sm]/switch:data-checked:translate-x-3 data-checked:bg-background group-data-[size=default]/switch:data-unchecked:translate-x-0 group-data-[size=sm]/switch:data-unchecked:translate-x-0 data-unchecked:bg-foreground group-hover/switch:data-unchecked:bg-primary/90\"\n\t\t\t/>\n\t\t</SwitchPrimitive.Root>\n\t)\n}\n\nexport { Switch }\n",
      "type": "registry:ui",
      "target": "components/ui/switch.tsx"
    }
  ],
  "type": "registry:ui"
}