import { FC, memo, MouseEventHandler, useCallback, useState } from 'react' import { Button } from 'react-bootstrap' import { useTranslation } from 'react-i18next' import Tooltip from './tooltip' import Icon from './icon' export const CopyToClipboard = memo<{ content: string tooltipId: string kind?: 'text' | 'icon' }>(({ content, tooltipId, kind = 'icon' }) => { const { t } = useTranslation() const [copied, setCopied] = useState(false) const handleClick = useCallback(() => { navigator.clipboard.writeText(content).then(() => { setCopied(true) window.setTimeout(() => { setCopied(false) }, 1500) }) }, [content]) if (!navigator.clipboard?.writeText) { return null } return ( {kind === 'text' ? ( ) : ( )} ) }) CopyToClipboard.displayName = 'CopyToClipboard' const TextButton: FC<{ handleClick: MouseEventHandler ) } const IconButton: FC<{ handleClick: MouseEventHandler ) }