Files
Webka/frontend/middleware/auth.global.ts
2026-09-06 16:23:09 +05:00

13 lines
448 B
TypeScript

export default defineNuxtRouteMiddleware(async (to) => {
if (to.path === "/login") return;
const session = useSessionStore();
if (!(await session.refresh())) return navigateTo("/login");
if (
(to.path === "/host" || to.path.startsWith("/settings/accounts")) &&
session.user?.role !== "admin"
)
return navigateTo("/watch");
if (to.path === "/")
return navigateTo(session.user?.role === "admin" ? "/host" : "/watch");
});