import { useRef, useState } from "react"; interface Props extends React.PropsWithChildren { className?: string; } export const Pre: React.FC = ({ children, ...props }) => { const ref = useRef(); // TODO type const [hovered, setHovered] = useState(false); const [copied, setCopied] = useState(false); const onEnter = () => { setHovered(true); }; const onExit = () => { setHovered(false); setCopied(false); }; const onCopy = () => { setCopied(true); navigator.clipboard.writeText(ref.current.textContent); setTimeout(() => { setCopied(false); }, 2000); }; return (
{hovered && ( )}
{children}
); };