import { createRouter, createWebHistory } from 'vue-router' import type { RouteRecordRaw } from 'vue-router' import { useUserSettingsStore } from '@/stores/useUserSettingsStore' const routes: RouteRecordRaw[] = [ { path: '/', redirect: '/tasks' }, { path: '/tasks', name: 'tasks', component: () => import('@/views/TaskListView.vue'), meta: { title: '待办列表', view: 'list' } }, { path: '/calendar', name: 'calendar', component: () => import('@/views/CalendarPage.vue'), meta: { title: '日历视图', view: 'calendar' } }, { path: '/quadrant', name: 'quadrant', component: () => import('@/views/QuadrantPage.vue'), meta: { title: '四象限', view: 'quadrant' } }, { path: '/profile', name: 'profile', component: () => import('@/views/ProfileView.vue'), meta: { title: '个人信息', view: 'profile' } }, { path: '/habits', name: 'habits', component: () => import('@/views/HabitPage.vue'), meta: { title: '习惯打卡', view: 'habits' } }, { path: '/anniversaries', name: 'anniversaries', component: () => import('@/views/AnniversaryPage.vue'), meta: { title: '纪念日', view: 'anniversaries' } }, { path: '/assets', name: 'assets', component: () => import('@/views/AssetPage.vue'), meta: { title: '资产总览', view: 'assets' } }, { path: '/settings', name: 'settings', component: () => import('@/views/SettingsView.vue'), meta: { title: '偏好设置', view: 'settings' } } ] const router = createRouter({ history: createWebHistory(), routes, scrollBehavior(_to, _from, savedPosition) { if (savedPosition) { return savedPosition } return { top: 0 } } }) router.beforeEach((to) => { const page = (to.meta.title as string) || '' const userStore = useUserSettingsStore() const siteName = userStore.siteName || '爱莉希雅待办' document.title = page ? `${page} - ${siteName}` : siteName }) export default router