diff --git a/src/IdentityAuthClient.tsx b/src/IdentityAuthClient.tsx index 82baf6509c..45f924af07 100644 --- a/src/IdentityAuthClient.tsx +++ b/src/IdentityAuthClient.tsx @@ -26,7 +26,7 @@ import { Service, startTermsFlow, TermsNotSignedError } from './Terms'; import { doesAccountDataHaveIdentityServer, doesIdentityServerHaveTerms, - useDefaultIdentityServer, + setToDefaultIdentityServer, } from './utils/IdentityServerUtils'; import QuestionDialog from "./components/views/dialogs/QuestionDialog"; import { abbreviateUrl } from "./utils/UrlUtils"; @@ -164,8 +164,7 @@ export default class IdentityAuthClient { }); const [confirmed] = await finished; if (confirmed) { - // eslint-disable-next-line react-hooks/rules-of-hooks - useDefaultIdentityServer(); + setToDefaultIdentityServer(); } else { throw new AbortedIdentityActionError( "User aborted identity server action without terms", diff --git a/src/SlashCommands.tsx b/src/SlashCommands.tsx index 80fc98f97d..9d3047a275 100644 --- a/src/SlashCommands.tsx +++ b/src/SlashCommands.tsx @@ -39,7 +39,7 @@ import WidgetUtils from "./utils/WidgetUtils"; import { textToHtmlRainbow } from "./utils/colour"; import { AddressType, getAddressType } from './UserAddress'; import { abbreviateUrl } from './utils/UrlUtils'; -import { getDefaultIdentityServerUrl, useDefaultIdentityServer } from './utils/IdentityServerUtils'; +import { getDefaultIdentityServerUrl, setToDefaultIdentityServer } from './utils/IdentityServerUtils'; import { isPermalinkHost, parsePermalink } from "./utils/permalinks/Permalinks"; import { WidgetType } from "./widgets/WidgetType"; import { Jitsi } from "./widgets/Jitsi"; @@ -544,7 +544,7 @@ export const Commands = [ prom = finished.then(([useDefault]) => { if (useDefault) { - useDefaultIdentityServer(); + setToDefaultIdentityServer(); return; } throw newTranslatableError( diff --git a/src/components/views/dialogs/InviteDialog.tsx b/src/components/views/dialogs/InviteDialog.tsx index 295bae79c2..b6c442da1a 100644 --- a/src/components/views/dialogs/InviteDialog.tsx +++ b/src/components/views/dialogs/InviteDialog.tsx @@ -29,7 +29,7 @@ import { makeRoomPermalink, makeUserPermalink } from "../../../utils/permalinks/ import DMRoomMap from "../../../utils/DMRoomMap"; import SdkConfig from "../../../SdkConfig"; import * as Email from "../../../email"; -import { getDefaultIdentityServerUrl, useDefaultIdentityServer } from "../../../utils/IdentityServerUtils"; +import { getDefaultIdentityServerUrl, setToDefaultIdentityServer } from "../../../utils/IdentityServerUtils"; import { buildActivityScores, buildMemberScores, compareMembers } from "../../../utils/SortMembers"; import { abbreviateUrl } from "../../../utils/UrlUtils"; import IdentityAuthClient from "../../../IdentityAuthClient"; @@ -815,7 +815,7 @@ export default class InviteDialog extends React.PureComponent = { + [Phase.Unsent]: _td("Unsent"), + [Phase.Requested]: _td("Requested"), + [Phase.Ready]: _td("Ready"), + [Phase.Done]: _td("Done"), + [Phase.Started]: _td("Started"), + [Phase.Cancelled]: _td("Cancelled"), }; const VerificationRequestExplorer: React.FC<{ @@ -68,7 +63,7 @@ const VerificationRequestExplorer: React.FC<{
{ _t("Transaction") }
{ txnId }
{ _t("Phase") }
-
{ PHASE_MAP[request.phase] || request.phase }
// TODO +
{ PHASE_MAP[request.phase] ? _t(PHASE_MAP[request.phase]) : request.phase }
{ _t("Timeout") }
{ Math.floor(timeout / 1000) }
{ _t("Methods") }
diff --git a/src/components/views/elements/UseCaseSelection.tsx b/src/components/views/elements/UseCaseSelection.tsx index 4e8a1e8342..5a93acf1c6 100644 --- a/src/components/views/elements/UseCaseSelection.tsx +++ b/src/components/views/elements/UseCaseSelection.tsx @@ -32,9 +32,9 @@ const TIMEOUT = 1500; export function UseCaseSelection({ onFinished }: Props) { const [selection, setSelected] = useState(null); + // Call onFinished 1.5s after `selection` becomes truthy, to give time for the animation to run useEffect(() => { if (selection) { - setSelected(selection); let handler: number | null = setTimeout(() => { handler = null; onFinished(selection); diff --git a/src/utils/IdentityServerUtils.ts b/src/utils/IdentityServerUtils.ts index e58750d8df..cb9314e8fe 100644 --- a/src/utils/IdentityServerUtils.ts +++ b/src/utils/IdentityServerUtils.ts @@ -24,7 +24,7 @@ export function getDefaultIdentityServerUrl(): string { return SdkConfig.get("validated_server_config").isUrl; } -export function useDefaultIdentityServer(): void { +export function setToDefaultIdentityServer(): void { const url = getDefaultIdentityServerUrl(); // Account data change will update localstorage, client, etc through dispatcher MatrixClientPeg.get().setAccountData("m.identity_server", {