# ThemeSwitch Documentation for the ThemeSwitch component. ## Installation ```bash deno run -A jsr:@lockness/ui add themeswitch ``` ## Usage ```tsx import { ThemeSwitch, ThemeSwitchScript } from '@lockness/ui/components' // Include the script once in your layout // Classic two-button variant // Toggle icon button // Switch slider ``` ## Props | Prop | Type | Default | Description | | ------------- | ----------------------------------- | ----------- | ----------------------------------------------------------------------- | | class | `string` | - | Additional CSS classes for the container element | | variant | `'classic' \| 'toggle' \| 'switch'` | `'classic'` | Visual variant of the theme switcher | | size | `'sm' \| 'md' \| 'lg'` | `'md'` | Size variant affecting padding, font size, and icon dimensions | | darkLabel | `string` | `'Dark'` | Label displayed on the button when in light mode (classic variant only) | | lightLabel | `string` | `'Light'` | Label displayed on the button when in dark mode (classic variant only) | | sunIconClass | `string` | - | Custom CSS class for the sun icon | | moonIconClass | `string` | - | Custom CSS class for the moon icon | | ...props | `unknown` | - | Additional HTML attributes passed to the root element |