import { useState } from 'react'; import { useCopyToClipboard } from 'react-use'; import { ToastUtils } from '../../session/utils'; import { SessionButton, SessionButtonProps } from '../basic/SessionButton'; type Props = Omit & { copyContent: string; onCopyComplete?: (copiedValue: string | undefined) => void; }; export const CopyToClipboardButton = (props: Props) => { const { copyContent, onCopyComplete } = props; const [copied, setCopied] = useState(false); const [{ value }, copyToClipboard] = useCopyToClipboard(); return ( { copyToClipboard(copyContent); ToastUtils.pushCopiedToClipBoard(); setCopied(true); if (onCopyComplete) { onCopyComplete(value); } }} /> ); };