import { useEffect, useState } from 'react'; export function useCopyText() { const [isCopied, setIsCopied] = useState(false); const copyText = (text: string) => { navigator.clipboard.writeText(text).then(); setIsCopied(true); }; useEffect(() => { let timeout: ReturnType; if (isCopied) { timeout = setTimeout(() => { setIsCopied(false); }, 2000); } return () => clearTimeout(timeout); }, [isCopied]); return { isCopied, copyText }; }