import { EyeIcon, EyeOffIcon, Clipboard } from "lucide-react"; import { useRef, useState } from "react"; import { Button } from "../ui/button"; import { Input, type InputProps } from "../ui/input"; import { toast } from "sonner"; export const ToggleVisibilityInput = ({ ...props }: InputProps) => { const [isPasswordVisible, setIsPasswordVisible] = useState(false); const inputRef = useRef(null) const togglePasswordVisibility = () => { setIsPasswordVisible((prevVisibility) => !prevVisibility); }; const copyToClipboard = () => { if (!inputRef.current) return; const inputElement = inputRef.current; const text = inputElement.value; inputElement.select(); navigator.clipboard.writeText(text); toast.success("Value is copied to clipboard"); } const inputType = isPasswordVisible ? "text" : "password"; return (
); };