diff --git a/frontend/src/components/CopyButton.tsx b/frontend/src/components/CopyButton.tsx index f0559f52..c430603f 100644 --- a/frontend/src/components/CopyButton.tsx +++ b/frontend/src/components/CopyButton.tsx @@ -1,18 +1,22 @@ import copy from 'copy-to-clipboard'; import { useState } from 'react'; +import { useTranslation } from 'react-i18next'; import CheckMark from '../assets/checkmark.svg?react'; import Copy from '../assets/copy.svg?react'; -export default function CoppyButton({ +export default function CopyButton({ text, colorLight, colorDark, + showText = false, }: { text: string; colorLight?: string; colorDark?: string; + showText?: boolean; }) { + const { t } = useTranslation(); const [copied, setCopied] = useState(false); const [isCopyHovered, setIsCopyHovered] = useState(false); @@ -25,29 +29,30 @@ export default function CoppyButton({ }; return ( -
handleCopyClick(text)} + onMouseEnter={() => setIsCopyHovered(true)} + onMouseLeave={() => setIsCopyHovered(false)} + className="flex items-center gap-2" > - {copied ? ( - setIsCopyHovered(true)} - onMouseLeave={() => setIsCopyHovered(false)} - /> - ) : ( - { - handleCopyClick(text); - }} - onMouseEnter={() => setIsCopyHovered(true)} - onMouseLeave={() => setIsCopyHovered(false)} - /> +
+ {copied ? ( + + ) : ( + + )} +
+ {showText && ( + + {copied ? t('conversation.copied') : t('conversation.copy')} + )} -
+ ); }