导入 AKSRT 主题开发源码

This commit is contained in:
Claude Code committed 2026-07-03 22:50:34 +08:00
1 parent 9681dd3d48
commit 1268a55dd0
595 files changed
+127705

No files matched your search

+66
View File
@@ -0,0 +1,66 @@
import { createRouter, createWebHashHistory } from 'vue-router'
import { getAllAdminPages } from '@/constants/admin-sections'
import { componentLoaders } from './component-loaders/index.js'
function resolveComponent(page) {
if (componentLoaders[page.component]) {
return componentLoaders[page.component]
}
// Log missing component for debugging — avoids silent fallback to DeferredPage
if (page.component && page.component !== 'DeferredPage') {
console.warn(
`[AKSRT Route] Component "${page.component}" not found in componentLoaders for route "${page.route}". Falling back to DeferredPage.`
)
}
return componentLoaders.DeferredPage
}
function createRouteMeta(page) {
const meta = {
title: page.title,
section: page.sectionKey || '',
desc: page.desc || '',
status: page.status || 'available',
}
if (page.canonicalDomain) {
meta.canonicalDomain = page.canonicalDomain
}
if (page.section) {
meta.section = page.section
}
if (page.component === 'DeferredPage') {
meta.deferred = true
meta.deferredProps = {
title: page.title,
description: page.desc || '',
icon: page.iconClass || 'fas fa-compass-drafting',
phase: page.phase || '',
status: page.status || 'deferred',
dependsOn: page.dependsOn || [],
reason: page.reason || '',
features: page.features || [],
}
}
return meta
}
const routes = [
{ path: '/', redirect: '/global/common' },
...getAllAdminPages().map((page) => ({
path: page.route,
name: page.name,
component: resolveComponent(page),
meta: createRouteMeta(page),
})),
]
export default createRouter({
history: createWebHashHistory(),
routes,
})