A bare toggle/switch control (built on Radix's `Switch`) — the Radix switch button is this component's own root element. It has no built-in label/hint/error; wrap it in `FormField` for that chrome.
Examples of v0.5.1 are shown as code; only the latest version runs live. Open the live examples →
Basic Toggle
1const BasicToggle = () => {2 const [checked, setChecked] = useState(false);3 return <Toggle checked={checked} onCheckedChange={setChecked} />;4};56render(<BasicToggle />);
Toggle With Form Field
1const ToggleWithFormField = () => {2 const [checked, setChecked] = useState(false);3 return (4 <FormField5 label="Dark mode"6 htmlFor="dark-mode"7 hint="Switch between light and dark color themes"8 >9 <Toggle id="dark-mode" checked={checked} onCheckedChange={setChecked} />10 </FormField>11 );12};1314render(<ToggleWithFormField />);
Toggle With Error
1const ToggleWithError = () => (2 <FormField3 label="Required setting"4 htmlFor="required-setting"5 error="This setting must be enabled"6 >7 <Toggle8 id="required-setting"9 invalid10 checked={false}11 onCheckedChange={() => {}}12 />13 </FormField>14);1516render(<ToggleWithError />);
Disabled Toggle
1const DisabledToggle = () => (2 <Toggle disabled checked={false} onCheckedChange={() => {}} />3);45render(<DisabledToggle />);