Skip to main content

Toggle

Toggle provides an animated switch component for boolean values.

Features

  • 🎨 Smooth animations
  • 🎯 Customizable colors
  • 🔒 Disabled state
  • ♿ Accessibility support

Basic Usage

import { Toggle } from '@tansuk/rott-ui';
import { useState } from 'react';

function Example() {
const [isOn, setIsOn] = useState(false);

return (
<Toggle
isOn={isOn}
onToggleChange={setIsOn}
/>
);
}

Disabled State

<Toggle 
isOn={true}
disabled
onToggleChange={() => {}}
/>

Props

PropTypeDefaultDescription
isOnbooleanRequiredToggle state
onToggleChange(value: boolean) => voidRequiredChange handler
disabledbooleanfalseDisabled state

Examples

Settings Toggle

import { Toggle, Item, Label } from '@tansuk/rott-ui';

function SettingsScreen() {
const [notifications, setNotifications] = useState(true);
const [darkMode, setDarkMode] = useState(false);

return (
<>
<Item row justifyContentSpaceBetween paddingVertical={12}>
<Label text="Enable Notifications" />
<Toggle isOn={notifications} onToggleChange={setNotifications} />
</Item>

<Item row justifyContentSpaceBetween paddingVertical={12}>
<Label text="Dark Mode" />
<Toggle isOn={darkMode} onToggleChange={setDarkMode} />
</Item>
</>
);
}

Form Toggle

<Item row alignItemsCenter marginBottom={16}>
<Toggle
isOn={agreedToTerms}
onToggleChange={setAgreedToTerms}
/>
<Label
text="I agree to the terms and conditions"
marginLeft={12}
/>
</Item>