import { Switch } from '@headlessui/react'; import React, { useEffect, useState } from 'react'; type ToggleSwitchProps = { isChecked?: boolean; onChange?: (checked: boolean) => void; }; /** * A custom switch button component. * * @param isChecked - The initial checked state of the switch button. * @param onChange - The callback function to be called when the switch button is toggled. * @returns The rendered SwitchButton component. */ const SwitchButton = ({ isChecked = true, onChange }: ToggleSwitchProps): JSX.Element => { const [enabled, setEnabled] = useState(isChecked); useEffect(() => { setEnabled(isChecked); }, [isChecked]); const handleChange = (checked: boolean) => { setEnabled(checked); if (onChange) { onChange(checked); } }; return ( ); }; export default SwitchButton;