import { createWebHistory, createRouter } from "vue-router"; import Home from "../views/Home.vue"; import Inspirations from "../views/Inspirations.vue"; import { useApiStore } from "../stores/api"; import { usePageStore } from "../stores/page"; import { getActivePinia } from "pinia"; const routes = [ { path: "/", component: Home, }, { path: "/inspirations", component: Inspirations, }, ]; const router = createRouter({ history: createWebHistory(), routes, }); router.beforeEach(async (to, from, next) => { const pinia = getActivePinia(); const api = useApiStore(pinia); const page = usePageStore(pinia); try { const res = await api.fetchPageData(to.path); page.page = res; next(); } catch (error) { console.error(error); next(false); } }); export { router };