import React, { FC, useState } from "react"; import { ColorType } from "../../types/colors"; interface ToggleProps { defaultEnabled?: boolean; enabled?: boolean; onChange?: (value: boolean) => void; color?: ColorType; disabled?: boolean; size?: "sm" | "md" | "lg"; } const toggleSize = { sm: "w-9 h-5 p-0.5", md: "w-11 h-6 p-0.5", lg: "w-14 h-8 p-1", }; const nobSize = { sm: "w-4 h-4", md: "w-5 h-5", lg: "w-6 h-6", }; export const Toggle: FC = ({ defaultEnabled = false, enabled: enabledProp, onChange, color = "primary", disabled = false, size = "md", }) => { const [internalEnabled, setInternalEnabled] = useState(defaultEnabled); let enabled = internalEnabled; let toggleValue = () => setInternalEnabled(prev => !prev); if (enabledProp !== undefined) { enabled = enabledProp; toggleValue = () => onChange?.(!enabled); } return (
); }; export default Toggle;