File size: 573 Bytes
db764ae | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | interface Option {
value: string;
label: string;
}
interface Props {
options: Option[];
value: string;
onChange: (value: string) => void;
}
export default function Toggle({ options, value, onChange }: Props) {
return (
<div className="toggle">
{options.map((opt) => (
<button
key={opt.value}
className={`toggle-option ${opt.value === value ? "toggle-option-active" : ""}`}
onClick={() => onChange(opt.value)}
type="button"
>
{opt.label}
</button>
))}
</div>
);
}
|