From 3fe762a02cef10981228a66e7a71bb097497d566 Mon Sep 17 00:00:00 2001 From: Sara Date: Tue, 26 Sep 2023 16:32:48 +0200 Subject: [PATCH] adds copy button for final summary --- www/app/transcripts/finalSummary.tsx | 33 ++++++++++++++++++++++++++-- www/app/transcripts/shareLink.tsx | 12 +++++----- 2 files changed, 38 insertions(+), 7 deletions(-) diff --git a/www/app/transcripts/finalSummary.tsx b/www/app/transcripts/finalSummary.tsx index 0e76c869..68869292 100644 --- a/www/app/transcripts/finalSummary.tsx +++ b/www/app/transcripts/finalSummary.tsx @@ -1,12 +1,41 @@ +import { useRef, useState } from "react"; + type FinalSummaryProps = { text: string; }; export default function FinalSummary(props: FinalSummaryProps) { + const finalSummaryRef = useRef(null); + const [isCopied, setIsCopied] = useState(false); + + const handleCopyClick = () => { + let text_to_copy = finalSummaryRef.current?.innerText; + + text_to_copy && + navigator.clipboard.writeText(text_to_copy).then(() => { + setIsCopied(true); + // Reset the copied state after 2 seconds + setTimeout(() => setIsCopied(false), 2000); + }); + }; + return (
-

Final Summary

-

{props.text}

+
+

Final Summary

+ +
+ +

{props.text}

); } diff --git a/www/app/transcripts/shareLink.tsx b/www/app/transcripts/shareLink.tsx index ea64c9e3..d5166d47 100644 --- a/www/app/transcripts/shareLink.tsx +++ b/www/app/transcripts/shareLink.tsx @@ -11,12 +11,14 @@ const ShareLink = () => { const handleCopyClick = () => { if (inputRef.current) { - inputRef.current.select(); - document.execCommand("copy"); - setIsCopied(true); + let text_to_copy = inputRef.current.value; - // Reset the copied state after 2 seconds - setTimeout(() => setIsCopied(false), 2000); + text_to_copy && + navigator.clipboard.writeText(text_to_copy).then(() => { + setIsCopied(true); + // Reset the copied state after 2 seconds + setTimeout(() => setIsCopied(false), 2000); + }); } };