import { useCallback, useEffect, useState } from "react"; import classes from "./classes.module.scss"; import Typography, { ETypo, ETypoColor } from "../Typography"; type IProps = { onChange?: (checked: boolean) => void; checked?: boolean; label: string; disabled?: boolean; }; export default function Switch({ onChange, checked, label, disabled }: IProps) { const [isChecked, setIsChecked] = useState(checked ? checked : false); useEffect(() => { setIsChecked(checked ? checked : false); }, [checked]); const handleChange = useCallback(() => { setIsChecked(!isChecked); onChange?.(!isChecked); }, [isChecked, onChange]); return (
{} : handleChange}>
{label}
); }