diff --git a/www/app/[domain]/transcripts/[transcriptId]/page.tsx b/www/app/[domain]/transcripts/[transcriptId]/page.tsx index 472c573b..54eca9f9 100644 --- a/www/app/[domain]/transcripts/[transcriptId]/page.tsx +++ b/www/app/[domain]/transcripts/[transcriptId]/page.tsx @@ -15,6 +15,8 @@ import TranscriptTitle from "../transcriptTitle"; import Player from "../player"; import WaveformLoading from "../waveformLoading"; import { useRouter } from "next/navigation"; +import { faSpinner } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; type TranscriptDetails = { params: { diff --git a/www/app/[domain]/transcripts/shareLink.tsx b/www/app/[domain]/transcripts/shareLink.tsx index e6449bd3..dd66d6cb 100644 --- a/www/app/[domain]/transcripts/shareLink.tsx +++ b/www/app/[domain]/transcripts/shareLink.tsx @@ -6,6 +6,8 @@ import SelectSearch from "react-select-search"; import "react-select-search/style.css"; import "../../styles/button.css"; import "../../styles/form.scss"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { faSpinner } from "@fortawesome/free-solid-svg-icons"; type ShareLinkProps = { transcriptId: string; @@ -20,6 +22,7 @@ const ShareLink = (props: ShareLinkProps) => { const requireLogin = featureEnabled("requireLogin"); const [isOwner, setIsOwner] = useState(false); const [shareMode, setShareMode] = useState(props.shareMode); + const [shareLoading, setShareLoading] = useState(false); const userinfo = useFiefUserinfo(); const api = getApi(); @@ -46,6 +49,7 @@ const ShareLink = (props: ShareLinkProps) => { const updateShareMode = async (selectedShareMode: string) => { if (!api) return; + setShareLoading(true); const updatedTranscript = await api.v1TranscriptUpdate({ transcriptId: props.transcriptId, updateTranscript: { @@ -53,6 +57,7 @@ const ShareLink = (props: ShareLinkProps) => { }, }); setShareMode(updatedTranscript.shareMode); + setShareLoading(false); }; const privacyEnabled = featureEnabled("privacy"); @@ -62,7 +67,7 @@ const ShareLink = (props: ShareLinkProps) => { style={{ background: "rgba(96, 165, 250, 0.2)" }} > {requireLogin && ( -
+
This transcript is private and can only be accessed by you.
)} @@ -76,7 +81,7 @@ const ShareLink = (props: ShareLinkProps) => { )} {isOwner && api && ( -+