Use a pinia store to manage session state

Replace the convoluted useAccountSession composable with a pinia store
that in addition allows for the consolidation of all session related
functions to grouped into one module.
This commit is contained in:
Hornwitser 2025-05-24 17:53:33 +02:00
parent c47452a8b4
commit fae8b4e2e4
21 changed files with 181 additions and 118 deletions

View file

@ -1,14 +1,14 @@
export default defineNuxtRouteMiddleware(async (to, from) => {
const { data: session } = await useAccountSession();
const sessionStore = useSessionStore();
if (!session.value) {
if (!sessionStore.account) {
console.log("Not logged in, redirecting to /login");
return navigateTo("/login");
}
if (
to.meta.allowedAccountTypes
&& !to.meta.allowedAccountTypes.includes(session.value.account.type)
&& !to.meta.allowedAccountTypes.includes(sessionStore.account.type)
) {
throw createError({
status: 403,