-
Notifications
You must be signed in to change notification settings - Fork 296
Expand file tree
/
Copy pathindex.js
More file actions
70 lines (66 loc) · 1.52 KB
/
index.js
File metadata and controls
70 lines (66 loc) · 1.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
import { createRouter, createWebHistory } from 'vue-router'
import { useThemeStore } from '../stores/theme'
const routes = [
{
path: '/',
name: 'dashboard',
component: () => import('../views/Dashboard.vue'),
meta: { title: '仪表盘' }
},
{
path: '/config',
name: 'config',
component: () => import('../views/Config.vue'),
meta: { title: '环境配置' }
},
{
path: '/sources',
name: 'sources',
component: () => import('../views/Sources.vue'),
meta: { title: '源管理' }
},
{
path: '/sources/editor',
name: 'source-editor',
component: () => import('../views/SourceEditor.vue'),
meta: { title: '源编辑器' }
},
{
path: '/logs',
name: 'logs',
component: () => import('../views/Logs.vue'),
meta: { title: '日志查看' }
},
{
path: '/api-docs',
name: 'api',
component: () => import('../views/ApiDocs.vue'),
meta: { title: 'API 文档' }
},
{
path: '/files',
name: 'files',
component: () => import('../views/Files.vue'),
meta: { title: '文件管理' }
},
{
path: '/database',
name: 'database',
component: () => import('../views/Database.vue'),
meta: { title: '数据库' }
}
]
const router = createRouter({
history: createWebHistory(),
routes
})
// Navigation guard
router.beforeEach((to, from, next) => {
const themeStore = useThemeStore()
// Close sidebar on mobile when navigating
if (window.innerWidth < 1024) {
themeStore.closeSidebar()
}
next()
})
export default router