Fix CSS issue and create missing documentation files Add new data platform and mobile optimization features Co-authored-by: null <4804959+fnvtk@users.noreply.github.com>
124 lines
2.9 KiB
TypeScript
124 lines
2.9 KiB
TypeScript
interface PageInfo {
|
|
path: string
|
|
name: string
|
|
description?: string
|
|
category?: string
|
|
}
|
|
|
|
class PageRegistry {
|
|
private pages: PageInfo[] = [
|
|
{
|
|
path: "/",
|
|
name: "数据概览",
|
|
description: "平台整体数据分析",
|
|
category: "核心功能",
|
|
},
|
|
{
|
|
path: "/data-platform",
|
|
name: "数据中台",
|
|
description: "多源数据整合中心",
|
|
category: "核心功能",
|
|
},
|
|
{
|
|
path: "/user-discovery",
|
|
name: "用户发现",
|
|
description: "用户行为洞察分析",
|
|
category: "用户分析",
|
|
},
|
|
{
|
|
path: "/user-discovery/behavior",
|
|
name: "行为分析",
|
|
description: "用户行为模式分析",
|
|
category: "用户分析",
|
|
},
|
|
{
|
|
path: "/user-discovery/segmentation",
|
|
name: "用户分群",
|
|
description: "智能用户分群",
|
|
category: "用户分析",
|
|
},
|
|
{
|
|
path: "/user-valuation",
|
|
name: "用户估值",
|
|
description: "用户价值评估模型",
|
|
category: "价值分析",
|
|
},
|
|
{
|
|
path: "/user-valuation/model",
|
|
name: "估值模型",
|
|
description: "RFM价值评估",
|
|
category: "价值分析",
|
|
},
|
|
{
|
|
path: "/user-valuation/upgrade-paths",
|
|
name: "升级路径",
|
|
description: "用户价值提升策略",
|
|
category: "价值分析",
|
|
},
|
|
{
|
|
path: "/ai-analysis",
|
|
name: "AI分析",
|
|
description: "智能数据洞察",
|
|
category: "AI功能",
|
|
},
|
|
{
|
|
path: "/ai-analysis/trends",
|
|
name: "趋势识别",
|
|
description: "AI趋势预测",
|
|
category: "AI功能",
|
|
},
|
|
{
|
|
path: "/ai-analysis/anomaly",
|
|
name: "异常检测",
|
|
description: "智能异常监控",
|
|
category: "AI功能",
|
|
},
|
|
{
|
|
path: "/devices",
|
|
name: "设备管理",
|
|
description: "设备状态监控",
|
|
category: "系统管理",
|
|
},
|
|
{
|
|
path: "/traffic-pool",
|
|
name: "流量池",
|
|
description: "流量数据管理",
|
|
category: "系统管理",
|
|
},
|
|
{
|
|
path: "/documentation",
|
|
name: "文档生成",
|
|
description: "自动文档生成",
|
|
category: "工具",
|
|
},
|
|
]
|
|
|
|
getAllPages(): PageInfo[] {
|
|
return this.pages
|
|
}
|
|
|
|
getPagesByCategory(category: string): PageInfo[] {
|
|
return this.pages.filter((page) => page.category === category)
|
|
}
|
|
|
|
getPageByPath(path: string): PageInfo | undefined {
|
|
return this.pages.find((page) => page.path === path)
|
|
}
|
|
|
|
addPage(page: PageInfo): void {
|
|
this.pages.push(page)
|
|
}
|
|
|
|
removePage(path: string): void {
|
|
this.pages = this.pages.filter((page) => page.path !== path)
|
|
}
|
|
|
|
getCategories(): string[] {
|
|
const categories = new Set(this.pages.map((page) => page.category).filter(Boolean))
|
|
return Array.from(categories) as string[]
|
|
}
|
|
}
|
|
|
|
export const pageRegistry = new PageRegistry()
|
|
export type { PageInfo }
|