diff --git a/src/context/revoltjs/RevoltClient.tsx b/src/context/revoltjs/RevoltClient.tsx index 9124885b..e3ed971b 100644 --- a/src/context/revoltjs/RevoltClient.tsx +++ b/src/context/revoltjs/RevoltClient.tsx @@ -30,7 +30,6 @@ export interface ClientOperations { export const AppContext = createContext(null!); export const StatusContext = createContext(null!); -export const OperationsContext = createContext(null!); export const LogOutContext = createContext(() => {}); type Props = { @@ -57,12 +56,12 @@ export default observer(({ children }: Props) => { useEffect(() => { if (state.auth.isLoggedIn()) { + setLoaded(false); const client = state.config.createClient(); setClient(client); client .useExistingSession(state.auth.getSession()!) - .then(() => setLoaded(true)) .catch((err) => { const error = takeError(err); if (error === "Forbidden" || error === "Unauthorized") { @@ -72,7 +71,8 @@ export default observer(({ children }: Props) => { setStatus(ClientStatus.DISCONNECTED); openScreen({ id: "error", error }); } - }); + }) + .finally(() => setLoaded(true)); } else { setStatus(ClientStatus.READY); setLoaded(true); diff --git a/src/pages/login/forms/FormLogin.tsx b/src/pages/login/forms/FormLogin.tsx index d196ead7..ee584a4e 100644 --- a/src/pages/login/forms/FormLogin.tsx +++ b/src/pages/login/forms/FormLogin.tsx @@ -50,7 +50,7 @@ export function FormLogin() { "x-session-token": session?.token, }; - function login() { + async function login() { auth.setSession(session); } @@ -58,6 +58,7 @@ export function FormLogin() { "GET", "/onboard/hello", ); + if (onboarding) { openScreen({ id: "onboarding",