import { cva, type VariantProps } from 'class-variance-authority' import { Switch as SwitchPrimitive } from 'radix-ui' import * as React from 'react' import { cn } from '@/lib/utils' const switchVariants = cva( 'peer inline-flex shrink-0 items-center rounded-full border border-[color-mix(in_srgb,var(--dt-foreground)_18%,transparent)] bg-[color-mix(in_srgb,var(--dt-background)_58%,var(--dt-input))] shadow-[inset_0_0_0_0.0625rem_color-mix(in_srgb,var(--dt-foreground)_8%,transparent)] transition-colors outline-none focus-visible:border-ring focus-visible:ring-[0.1875rem] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:border-transparent data-[state=checked]:bg-primary', { variants: { size: { default: 'h-5 w-9', xs: 'h-4 w-7' } }, defaultVariants: { size: 'default' } } ) const switchThumbVariants = cva( 'pointer-events-none block rounded-full bg-foreground shadow-[0_0.0625rem_0.1875rem_color-mix(in_srgb,var(--dt-background)_50%,transparent)] ring-0 transition-transform data-[state=unchecked]:translate-x-0 data-[state=checked]:bg-background', { variants: { size: { default: 'size-4 data-[state=checked]:translate-x-4', xs: 'size-3 data-[state=checked]:translate-x-3.5' } }, defaultVariants: { size: 'default' } } ) function Switch({ className, size, ...props }: React.ComponentProps & VariantProps) { return ( ) } export { Switch }