fixed login flow inconsistency
This commit is contained in:
parent
998e8f2517
commit
abab0df83f
10 changed files with 65 additions and 45 deletions
|
@ -1,4 +1,22 @@
|
|||
import { writable } from 'svelte/store';
|
||||
import { client } from '$lib/client/client.js';
|
||||
import * as api from '$lib/client/api.js';
|
||||
import { get, writable } from 'svelte/store';
|
||||
|
||||
export let user = writable(0);
|
||||
export let logged_in = writable(false);
|
||||
|
||||
export async function getUser() {
|
||||
// already known
|
||||
if (get(user)) return get(user);
|
||||
|
||||
// cannot provide- not logged in
|
||||
if (!get(client).app || !get(client).app.token) return false;
|
||||
|
||||
// logged in- attempt to retrieve using token
|
||||
const data = await api.verifyCredentials();
|
||||
if (!data) return false;
|
||||
|
||||
user.set(await api.parseUser(data));
|
||||
console.log(`Logged in as @${get(user).username}@${get(user).host}`);
|
||||
return get(user);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue