import { useRef, useState } from "react"; import * as Popover from "@radix-ui/react-popover"; import { copyTextToSystemClipboard } from "../clipboard"; import { useI18n } from "../i18n"; import { Dialog } from "./Dialog"; import { TextField } from "./TextField"; import { FilledButton } from "./FilledButton"; import { copyIcon, tablerCheckIcon } from "./icons"; import "./ShareableLinkDialog.scss"; export type ShareableLinkDialogProps = { link: string; onCloseRequest: () => void; setErrorMessage: (error: string) => void; }; export const ShareableLinkDialog = ({ link, onCloseRequest, setErrorMessage, }: ShareableLinkDialogProps) => { const { t } = useI18n(); const [justCopied, setJustCopied] = useState(false); const timerRef = useRef(0); const ref = useRef(null); const copyRoomLink = async () => { try { await copyTextToSystemClipboard(link); setJustCopied(true); if (timerRef.current) { window.clearTimeout(timerRef.current); } timerRef.current = window.setTimeout(() => { setJustCopied(false); }, 3000); } catch (error: any) { setErrorMessage(error.message); } ref.current?.select(); }; return (

Shareable link

event.preventDefault()} onCloseAutoFocus={(event) => event.preventDefault()} className="ShareableLinkDialog__popover" side="top" align="end" sideOffset={5.5} > {tablerCheckIcon} copied
🔒 {t("alerts.uploadedSecurly")}
); };