import { createRouter, createWebHistory } from 'vue-router' const routes = [ { path: '/', name: 'home', component: () => import('./views/HomeView.vue') }, { path: '/post/:slug', name: 'post', component: () => import('./views/PostView.vue') }, { path: '/archive', name: 'archive', component: () => import('./views/ArchiveView.vue') }, { path: '/tags', name: 'tags', component: () => import('./views/TagsView.vue') }, { path: '/tag/:slug', name: 'tag', component: () => import('./views/TagView.vue') }, { path: '/about', name: 'about', component: () => import('./views/AboutView.vue') }, { path: '/projects', name: 'projects', component: () => import('./views/ProjectsView.vue') }, { path: '/admin/login', name: 'admin-login', component: () => import('./admin/LoginView.vue') }, { path: '/admin', component: () => import('./admin/AdminLayout.vue'), children: [ { path: '', name: 'admin-dashboard', component: () => import('./admin/DashboardView.vue') }, { path: 'posts', name: 'admin-posts', component: () => import('./admin/PostsView.vue') }, { path: 'new', name: 'admin-new', component: () => import('./admin/EditorView.vue') }, { path: 'files', name: 'admin-files', component: () => import('./admin/FilesView.vue') }, { path: 'comments', name: 'admin-comments', component: () => import('./admin/CommentsView.vue') }, { path: ':id', name: 'admin-edit', component: () => import('./admin/EditorView.vue') }, { path: 'tags', name: 'admin-tags', component: () => import('./admin/TagsView.vue') }, { path: 'projects', name: 'admin-projects', component: () => import('./admin/ProjectsView.vue') }, { path: 'settings', name: 'admin-settings', component: () => import('./admin/SettingsView.vue') }, { path: 'account', name: 'admin-account', component: () => import('./admin/AccountView.vue') }, { path: 'users', name: 'admin-users', component: () => import('./admin/UsersView.vue') } ] }, { path: '/:pathMatch(.*)*', name: 'not-found', component: () => import('./views/NotFoundView.vue') } ] export const router = createRouter({ history: createWebHistory(), routes, scrollBehavior(to, from, saved) { return saved || { top: 0 } } })