This commit is contained in:
2026-08-11 15:03:02 +08:00
parent c97304b786
commit fb8f52fe76
40 changed files with 376 additions and 787 deletions
+36 -62
View File
@@ -6,6 +6,40 @@ const { t } = i18n.global;
const APP_NAME = 'Yoresee';
const makeDocumentChildRoutes = (basePath, namePrefix, propsFactory) => [
{
path: `${basePath}/:docId`,
name: `${namePrefix}Editor`,
component: () => import('../views/document/DocumentEditor.vue'),
meta: { requiresAuth: true, dynamicTitle: true },
props: propsFactory
},
{
path: `${basePath}/:docId/attachments`,
name: `${namePrefix}Attachments`,
component: () => import('../views/document/DocumentAttachments.vue'),
meta: { requiresAuth: true, titleKey: 'document.attachments.title' }
},
{
path: `${basePath}/:docId/history`,
name: `${namePrefix}History`,
component: () => import('../views/document/DocumentHistory.vue'),
meta: { requiresAuth: true, titleKey: 'history.title' }
},
{
path: `${basePath}/:docId/setting`,
name: `${namePrefix}Settings`,
component: () => import('../views/document/DocumentSettings.vue'),
meta: { requiresAuth: true, titleKey: 'document.settings.title' }
},
{
path: `${basePath}/:docId/attachment/:attachmentId`,
name: `${namePrefix}AttachmentOpen`,
component: () => import('../views/document/DocumentAttachmentOpen.vue'),
meta: { requiresAuth: true, titleKey: 'document.attachments.previewTitle' }
}
];
const router = createRouter({
history: createWebHistory(),
routes: [
@@ -38,37 +72,7 @@ const router = createRouter({
name: 'MyDocumentsAlias',
redirect: '/mydocuments'
},
{
path: '/mydocument/:docId',
name: 'MyDocumentEditor',
component: () => import('../views/document/DocumentEditor.vue'),
meta: { requiresAuth: true, dynamicTitle: true },
props: (route) => ({ kbId: 'personal', docId: route.params.docId })
},
{
path: '/mydocument/:docId/attachments',
name: 'MyDocumentAttachments',
component: () => import('../views/document/DocumentAttachments.vue'),
meta: { requiresAuth: true, titleKey: 'document.attachments.title' }
},
{
path: '/mydocument/:docId/history',
name: 'MyDocumentHistory',
component: () => import('../views/document/DocumentHistory.vue'),
meta: { requiresAuth: true, titleKey: 'history.title' }
},
{
path: '/mydocument/:docId/setting',
name: 'MyDocumentSettings',
component: () => import('../views/document/DocumentSettings.vue'),
meta: { requiresAuth: true, titleKey: 'document.settings.title' }
},
{
path: '/mydocument/:docId/attachment/:attachmentId',
name: 'MyDocumentAttachmentOpen',
component: () => import('../views/document/DocumentAttachmentOpen.vue'),
meta: { requiresAuth: true, titleKey: 'document.attachments.previewTitle' }
},
...makeDocumentChildRoutes('/mydocument', 'MyDocument', (route) => ({ kbId: 'personal', docId: route.params.docId })),
{
path: '/knowledge-base',
name: 'KnowledgeBase',
@@ -100,37 +104,7 @@ const router = createRouter({
meta: { requiresAuth: true, dynamicTitle: true },
props: true
},
{
path: '/knowledge-base/:kbId/document/:docId',
name: 'KnowledgeBaseDocumentEditor',
component: () => import('../views/document/DocumentEditor.vue'),
meta: { requiresAuth: true, dynamicTitle: true },
props: true
},
{
path: '/knowledge-base/:kbId/document/:docId/attachments',
name: 'KnowledgeBaseDocumentAttachments',
component: () => import('../views/document/DocumentAttachments.vue'),
meta: { requiresAuth: true, titleKey: 'document.attachments.title' }
},
{
path: '/knowledge-base/:kbId/document/:docId/history',
name: 'KnowledgeBaseDocumentHistory',
component: () => import('../views/document/DocumentHistory.vue'),
meta: { requiresAuth: true, titleKey: 'history.title' }
},
{
path: '/knowledge-base/:kbId/document/:docId/setting',
name: 'KnowledgeBaseDocumentSettings',
component: () => import('../views/document/DocumentSettings.vue'),
meta: { requiresAuth: true, titleKey: 'document.settings.title' }
},
{
path: '/knowledge-base/:kbId/document/:docId/attachment/:attachmentId',
name: 'KnowledgeBaseDocumentAttachmentOpen',
component: () => import('../views/document/DocumentAttachmentOpen.vue'),
meta: { requiresAuth: true, titleKey: 'document.attachments.previewTitle' }
},
...makeDocumentChildRoutes('/knowledge-base/:kbId/document', 'KnowledgeBaseDocument', true),
{
path: '/user_info/profile',
name: 'UserProfile',