mirror of
https://github.com/revoltchat/revite.git
synced 2024-11-09 16:53:36 -05:00
fix(auth): block render while logging in
This commit is contained in:
parent
74430b1a8f
commit
c31bcd0200
2 changed files with 5 additions and 4 deletions
|
@ -30,7 +30,6 @@ export interface ClientOperations {
|
|||
|
||||
export const AppContext = createContext<Client>(null!);
|
||||
export const StatusContext = createContext<ClientStatus>(null!);
|
||||
export const OperationsContext = createContext<ClientOperations>(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);
|
||||
|
|
|
@ -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",
|
||||
|
|
Loading…
Reference in a new issue