From 4226428f582821383e7fb1af06cfbadb919c1f7e Mon Sep 17 00:00:00 2001 From: Sara Date: Wed, 22 Nov 2023 13:53:12 +0100 Subject: [PATCH] minor styling changes --- .../transcripts/[transcriptId]/page.tsx | 2 ++ www/app/[domain]/transcripts/shareLink.tsx | 22 +++++++++++++++---- .../[domain]/transcripts/waveformLoading.tsx | 2 +- 3 files changed, 21 insertions(+), 5 deletions(-) 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 && ( -

+

{shareMode === "private" && (

This transcript is private and can only be accessed by you.

)} @@ -76,7 +81,7 @@ const ShareLink = (props: ShareLinkProps) => { )} {isOwner && api && ( -

+

{ ]} value={shareMode} onChange={updateShareMode} + closeOnSelect={true} /> -

+ {shareLoading && ( +
+ +
+ )} +
)} -

+
)} {!requireLogin && ( <> diff --git a/www/app/[domain]/transcripts/waveformLoading.tsx b/www/app/[domain]/transcripts/waveformLoading.tsx index 68e0c80f..56540927 100644 --- a/www/app/[domain]/transcripts/waveformLoading.tsx +++ b/www/app/[domain]/transcripts/waveformLoading.tsx @@ -5,7 +5,7 @@ export default () => (
);