auth persistance
This commit is contained in:
19
src/auth.ts
19
src/auth.ts
@@ -11,7 +11,7 @@ export const useAuthStore = defineStore('auth', () => {
|
||||
client_id: import.meta.env.VITE_AUTH_CLIENT_ID,
|
||||
client_secret: import.meta.env.VITE_AUTH_CLIENT_SECRET,
|
||||
redirect_uri: import.meta.env.VITE_AUTH_REDIRECT_URI,
|
||||
scope: import.meta.env.VITE_AUTH_SCOPE,
|
||||
scope: import.meta.env.VITE_AUTH_SCOPE
|
||||
});
|
||||
|
||||
const user = ref<User>();
|
||||
@@ -23,23 +23,24 @@ export const useAuthStore = defineStore('auth', () => {
|
||||
await userManager.signinRedirect();
|
||||
log.info("Redirecting to login page");
|
||||
}
|
||||
|
||||
const login = async () => {
|
||||
await userManager.signinCallback();
|
||||
log.debug("Logged in");
|
||||
}
|
||||
|
||||
const logout = async () => {
|
||||
await userManager.signoutRedirect();
|
||||
log.debug("Logged out");
|
||||
}
|
||||
|
||||
userManager.events.addUserLoaded(u => {
|
||||
const setUser = (u?: User | null) => {
|
||||
if (u) {
|
||||
user.value = u;
|
||||
log.info("User loaded", u.profile.name);
|
||||
});
|
||||
userManager.events.addAccessTokenExpiring(() => {
|
||||
log.debug("Access token expiring");
|
||||
});
|
||||
log.debug("User loaded", u.profile.name);
|
||||
} else {
|
||||
user.value = undefined;
|
||||
}
|
||||
}
|
||||
userManager.events.addUserLoaded(setUser);
|
||||
userManager.getUser().then(setUser);
|
||||
return { redirect, login, logout, isLoggedIn, accessToken, username };
|
||||
});
|
||||
Reference in New Issue
Block a user