2024-04-15 19:39:03 +02:00
|
|
|
import { fetchAllWorkspaces } from "~/stores/workspaces.js"
|
2023-12-19 13:46:55 +01:00
|
|
|
|
2024-04-15 19:39:03 +02:00
|
|
|
export default defineNuxtRouteMiddleware(async () => {
|
2023-12-16 19:21:03 +01:00
|
|
|
const authStore = useAuthStore()
|
2024-04-15 19:39:03 +02:00
|
|
|
authStore.initStore(useCookie("token").value, useCookie("admin_token").value)
|
2023-12-16 19:21:03 +01:00
|
|
|
|
|
|
|
|
if (authStore.token && !authStore.user) {
|
2023-12-19 18:57:31 +01:00
|
|
|
const workspaceStore = useWorkspacesStore()
|
2024-01-25 05:12:45 +01:00
|
|
|
|
|
|
|
|
// Load user data and workspaces
|
2024-04-15 19:39:03 +02:00
|
|
|
const [userDataResponse, workspacesResponse] = await Promise.all([
|
|
|
|
|
useOpnApi("user"),
|
|
|
|
|
fetchAllWorkspaces(),
|
|
|
|
|
])
|
2024-01-25 05:12:45 +01:00
|
|
|
authStore.setUser(userDataResponse.data.value)
|
|
|
|
|
workspaceStore.save(workspacesResponse.data.value)
|
2023-12-16 19:21:03 +01:00
|
|
|
}
|
2024-05-27 15:32:15 +02:00
|
|
|
authStore.initServiceClients()
|
2023-12-16 19:21:03 +01:00
|
|
|
})
|