{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "mc-switch",
  "title": "MicroClub Switch",
  "description": "A switch component for MicroClub UI",
  "dependencies": [
    "@base-ui/react"
  ],
  "files": [
    {
      "path": "registry/ui/mc-switch.tsx",
      "content": "'use client';\n\nimport { Switch as SwitchPrimitive } from '@base-ui/react/switch';\nimport { cn } from '@/lib/utils';\n\nfunction McSwitch({\n  className,\n  size = 'default',\n  ...props\n}: SwitchPrimitive.Root.Props & {\n  size?: 'sm' | 'default';\n}) {\n  return (\n    <SwitchPrimitive.Root\n      data-slot=\"switch\"\n      data-size={size}\n      className={cn(\n        'peer group/switch relative inline-flex shrink-0 items-center bg-input ring-1 ring-inset ring-border',\n        'transition-[background-color,ring-color,box-shadow] duration-300 ease-out outline-none',\n        'focus-visible:ring-ring focus-visible:ring-offset-2',\n        'aria-invalid:ring-destructive aria-invalid:ring-offset-2',\n        'dark:aria-invalid:ring-destructive/40',\n        'data-disabled:bg-input/70 data-disabled:opacity-50',\n        'data-checked:bg-primary data-checked:ring-transparent',\n        'data-unchecked:bg-input data-unchecked:ring-border',\n        'data-[size=default]:h-7 data-[size=default]:w-12 data-[size=default]:rounded-full data-[size=default]:p-1',\n        'data-[size=sm]:h-4 data-[size=sm]:w-7 data-[size=sm]:rounded-full data-[size=sm]:p-[2px]',\n        className\n      )}\n      {...props}\n    >\n      <SwitchPrimitive.Thumb\n        data-slot=\"switch-thumb\"\n        className={cn(\n          'pointer-events-none block rounded-full bg-background ring-1 ring-inset ring-border transition-transform duration-300 ease-out',\n          'dark:data-checked:bg-primary-foreground dark:data-unchecked:bg-foreground',\n          'group-data-[size=default]/switch:size-5',\n          'group-data-[size=default]/switch:data-unchecked:translate-x-0',\n          'group-data-[size=default]/switch:data-checked:translate-x-5',\n          'group-data-[size=sm]/switch:size-3',\n          'group-data-[size=sm]/switch:data-unchecked:translate-x-0',\n          'group-data-[size=sm]/switch:data-checked:translate-x-3'\n        )}\n      />\n    </SwitchPrimitive.Root>\n  );\n}\n\nexport { McSwitch };\n",
      "type": "registry:component"
    }
  ],
  "type": "registry:component"
}