From db755ef3004c345e5eb649d1d8b93aa67a287e60 Mon Sep 17 00:00:00 2001 From: pierrbt Date: Thu, 22 Jun 2023 22:36:56 +0200 Subject: [PATCH] Adding copy to keyboard when clicking the link --- .../components/upload/modals/showCompletedUploadModal.tsx | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/frontend/src/components/upload/modals/showCompletedUploadModal.tsx b/frontend/src/components/upload/modals/showCompletedUploadModal.tsx index 43c5fd1..ba47f01 100644 --- a/frontend/src/components/upload/modals/showCompletedUploadModal.tsx +++ b/frontend/src/components/upload/modals/showCompletedUploadModal.tsx @@ -5,6 +5,7 @@ import { ModalsContextProps } from "@mantine/modals/lib/context"; import moment from "moment"; import { useRouter } from "next/router"; import { TbCopy } from "react-icons/tb"; +import { useState } from "react"; import { Share } from "../../../types/share.type"; import toast from "../../../utils/toast.util"; @@ -26,6 +27,7 @@ const Body = ({ share, appUrl }: { share: Share; appUrl: string }) => { const clipboard = useClipboard({ timeout: 500 }); const modals = useModals(); const router = useRouter(); + const [linkClicked, setLinkClicked] = useState(false); const link = `${appUrl}/share/${share.id}`; return ( @@ -34,6 +36,12 @@ const Body = ({ share, appUrl }: { share: Share; appUrl: string }) => { readOnly variant="filled" value={link} + onClick={() => { + if (linkClicked) return; + clipboard.copy(link); + toast.success("Your link was copied to the keyboard."); + setLinkClicked(true); + }} rightSection={ window.isSecureContext && (