import { styled } from '../stitches.config' import * as SwitchPrimitive from '@radix-ui/react-switch' const StyledSwitch = styled(SwitchPrimitive.Root, { all: 'unset', width: 42, height: 25, backgroundColor: '$mauve9', borderRadius: '9999px', position: 'relative', boxShadow: `0 2px 10px $colors$mauve2`, WebkitTapHighlightColor: 'rgba(0, 0, 0, 0)', '&:focus': { boxShadow: `0 0 0 2px $colors$mauveA2` }, '&[data-state="checked"]': { backgroundColor: '$green11' } }) const StyledThumb = styled(SwitchPrimitive.Thumb, { display: 'block', width: 21, height: 21, backgroundColor: 'white', borderRadius: '9999px', boxShadow: `0 2px 2px $colors$mauveA6`, transition: 'transform 100ms', transform: 'translateX(2px)', willChange: 'transform', '&[data-state="checked"]': { transform: 'translateX(19px)' } }) // Exports export const Switch = StyledSwitch export const SwitchThumb = StyledThumb