From b88ad0545c0a16d9725dd5c3745cefc33c903e32 Mon Sep 17 00:00:00 2001 From: Jeannot Damoiseaux <62134006+jeannotdamoiseaux@users.noreply.github.com> Date: Fri, 8 Nov 2024 14:57:10 +0000 Subject: [PATCH 1/8] add-copy-button --- app/frontend/src/components/Answer/Answer.tsx | 23 ++++++++++++++++++- app/frontend/src/locales/da/translation.json | 4 +++- app/frontend/src/locales/en/translation.json | 4 +++- app/frontend/src/locales/es/translation.json | 4 +++- app/frontend/src/locales/fr/translation.json | 4 +++- app/frontend/src/locales/ja/translation.json | 4 +++- app/frontend/src/locales/nl/translation.json | 4 +++- .../src/locales/ptBR/translation.json | 4 +++- 8 files changed, 43 insertions(+), 8 deletions(-) diff --git a/app/frontend/src/components/Answer/Answer.tsx b/app/frontend/src/components/Answer/Answer.tsx index e5619e0c33..75b0a03504 100644 --- a/app/frontend/src/components/Answer/Answer.tsx +++ b/app/frontend/src/components/Answer/Answer.tsx @@ -1,4 +1,4 @@ -import { useMemo } from "react"; +import { useMemo, useState } from "react"; import { Stack, IconButton } from "@fluentui/react"; import { useTranslation } from "react-i18next"; import DOMPurify from "dompurify"; @@ -46,6 +46,20 @@ export const Answer = ({ const parsedAnswer = useMemo(() => parseAnswerToHtml(answer, isStreaming, onCitationClicked), [answer]); const { t } = useTranslation(); const sanitizedAnswerHtml = DOMPurify.sanitize(parsedAnswer.answerHtml); + const [copied, setCopied] = useState(false); + + const handleCopy = () => { + // Single replace to remove all HTML tags to remove the citations + const textToCopy = sanitizedAnswerHtml.replace(/]*>\d+<\/sup><\/a>|<[^>]+>/g, ""); + + navigator.clipboard + .writeText(textToCopy) + .then(() => { + setCopied(true); + setTimeout(() => setCopied(false), 2000); + }) + .catch(err => console.error("Failed to copy text: ", err)); + }; return ( @@ -53,6 +67,13 @@ export const Answer = ({
+ Date: Wed, 13 Nov 2024 08:48:42 +0100 Subject: [PATCH 2/8] Update ptBR/translation.json Co-authored-by: Pamela Fox --- app/frontend/src/locales/ptBR/translation.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/frontend/src/locales/ptBR/translation.json b/app/frontend/src/locales/ptBR/translation.json index 128606fed6..3a57581e07 100644 --- a/app/frontend/src/locales/ptBR/translation.json +++ b/app/frontend/src/locales/ptBR/translation.json @@ -62,7 +62,7 @@ "speakAnswer": "Falar a resposta", "info": "Info", "save": "Save", - "copy": "Copiar resposta", + "copy": "Copiar", "copied": "Copiado!" }, From d0745222e6b6d94bbf8bbaea88da39e3d6495779 Mon Sep 17 00:00:00 2001 From: Jeannot Damoiseaux <62134006+jeannotdamoiseaux@users.noreply.github.com> Date: Wed, 13 Nov 2024 08:49:00 +0100 Subject: [PATCH 3/8] Update fr/translation.json Co-authored-by: Pamela Fox --- app/frontend/src/locales/fr/translation.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/frontend/src/locales/fr/translation.json b/app/frontend/src/locales/fr/translation.json index 6791fef599..26a9d1ffaf 100644 --- a/app/frontend/src/locales/fr/translation.json +++ b/app/frontend/src/locales/fr/translation.json @@ -62,7 +62,7 @@ "speakAnswer": "Parler réponse", "info": "Info", "save": "Sauvegarder", - "copy": "Copier la réponse", + "copy": "Copier", "copied": "Copié!" }, From f73c0b6386e3611218a23ca747bcc7f60bd72e76 Mon Sep 17 00:00:00 2001 From: Jeannot Damoiseaux <62134006+jeannotdamoiseaux@users.noreply.github.com> Date: Wed, 13 Nov 2024 09:24:43 +0100 Subject: [PATCH 4/8] Update es/translation.json Co-authored-by: Pamela Fox --- app/frontend/src/locales/es/translation.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/frontend/src/locales/es/translation.json b/app/frontend/src/locales/es/translation.json index e44deb14d4..1833b63af5 100644 --- a/app/frontend/src/locales/es/translation.json +++ b/app/frontend/src/locales/es/translation.json @@ -62,7 +62,7 @@ "speakAnswer": "Hablar respuesta", "info": "Información", "save": "Guardar", - "copy": "Copiar respuesta", + "copy": "Copiar", "copied": "¡Copiado!" }, From 60df4422c08bf0ba126851b3401418cad68d3961 Mon Sep 17 00:00:00 2001 From: Jeannot Damoiseaux <62134006+jeannotdamoiseaux@users.noreply.github.com> Date: Wed, 13 Nov 2024 09:29:24 +0100 Subject: [PATCH 5/8] Update da/translation.json --- app/frontend/src/locales/da/translation.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/frontend/src/locales/da/translation.json b/app/frontend/src/locales/da/translation.json index 9287e6e8c6..aa2b556135 100644 --- a/app/frontend/src/locales/da/translation.json +++ b/app/frontend/src/locales/da/translation.json @@ -60,7 +60,7 @@ "speakAnswer": "Afspil svar", "info": "Info", "save": "Gem", - "copy": "Kopier svar", + "copy": "Kopier", "copied": "Kopieret!" }, "headerTexts": { From 6ec3021a80e0e2253e887e8ba9a6c6e470f18919 Mon Sep 17 00:00:00 2001 From: Jeannot Damoiseaux <62134006+jeannotdamoiseaux@users.noreply.github.com> Date: Wed, 13 Nov 2024 09:29:58 +0100 Subject: [PATCH 6/8] Update nl/translation.json --- app/frontend/src/locales/nl/translation.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/frontend/src/locales/nl/translation.json b/app/frontend/src/locales/nl/translation.json index 597f049a92..d871ea1bfe 100644 --- a/app/frontend/src/locales/nl/translation.json +++ b/app/frontend/src/locales/nl/translation.json @@ -62,7 +62,7 @@ "speakAnswer": "Antwoord uitspreken", "info": "Info", "save": "Opslaan", - "copy": "Kopieer antwoord", + "copy": "Kopieer", "copied": "Gekopieerd!" }, From 073d87c5dc2f388de05cc658178c72dfbb25997d Mon Sep 17 00:00:00 2001 From: Jeannot Damoiseaux <62134006+jeannotdamoiseaux@users.noreply.github.com> Date: Wed, 13 Nov 2024 09:42:43 +0100 Subject: [PATCH 7/8] Update ja/translation.json --- app/frontend/src/locales/ja/translation.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/frontend/src/locales/ja/translation.json b/app/frontend/src/locales/ja/translation.json index 6c4c9d3709..a69c7cdc0f 100644 --- a/app/frontend/src/locales/ja/translation.json +++ b/app/frontend/src/locales/ja/translation.json @@ -62,7 +62,7 @@ "speakAnswer": "音声による回答", "info": "情報", "save": "保存", - "copy": "回答をコピー", + "copy": "コピー", "copied": "コピーしました!" }, From 62a5e6c5bcdf452819499e1daf68b63bd81e7476 Mon Sep 17 00:00:00 2001 From: Pamela Fox Date: Wed, 13 Nov 2024 07:21:03 -0800 Subject: [PATCH 8/8] Update app/frontend/src/locales/en/translation.json --- app/frontend/src/locales/en/translation.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/frontend/src/locales/en/translation.json b/app/frontend/src/locales/en/translation.json index 60f3e09820..07f657da8b 100644 --- a/app/frontend/src/locales/en/translation.json +++ b/app/frontend/src/locales/en/translation.json @@ -62,7 +62,7 @@ "speakAnswer": "Speak answer", "info": "Info", "save": "Save", - "copy": "Copy answer", + "copy": "Copy", "copied": "Copied!" },