import { CheckSquareOutlined, CloudOutlined, ClusterOutlined, CompressOutlined, DatabaseOutlined, FileTextOutlined, GatewayOutlined, InfoCircleOutlined, OpenAIOutlined, QuestionOutlined, SunOutlined, SyncOutlined, TableOutlined, ToolOutlined, } from '@ant-design/icons' import {values} from 'licia' import {Navigate, type RouteObject} from 'react-router' import Conversation from './pages/ai/Conversation.tsx' import Feedback from './pages/ai/feedback/Feedback.tsx' import DataDetail from './pages/ai/knowledge/DataDetail.tsx' import DataImport from './pages/ai/knowledge/DataImport.tsx' import DataSegment from './pages/ai/knowledge/DataSegment.tsx' import Knowledge from './pages/ai/knowledge/Knowledge.tsx' import App from './pages/App.tsx' import Cloud from './pages/overview/Cloud.tsx' import Overview from './pages/overview/Overview.tsx' import Queue from './pages/overview/Queue.tsx' import Table from './pages/overview/Table.tsx' import Task from './pages/overview/Task.tsx' import Tool from './pages/overview/Tool.tsx' import Version from './pages/overview/Version.tsx' import Yarn from './pages/overview/Yarn.tsx' import YarnCluster from './pages/overview/YarnCluster.tsx' import Test from './pages/Test.tsx' import {commonInfo} from './util/amis.tsx' import FlowEditor from './pages/ai/flow/FlowEditor.tsx' import FlowTaskTemplate from './pages/ai/task/template/FlowTaskTemplate.tsx' import FlowTaskTemplateEdit from './pages/ai/task/template/FlowTaskTemplateEdit.tsx' import FlowTask from './pages/ai/task/FlowTask.tsx' import FlowTaskAdd from './pages/ai/task/FlowTaskAdd.tsx' export const routes: RouteObject[] = [ { path: '/', Component: App, children: [ { index: true, element: , }, { path: 'overview', Component: Overview, }, { path: 'table', Component: Table, }, { path: 'queue', Component: Queue, }, { path: 'version', Component: Version, }, { path: 'yarn/:clusters/:queues/:search?', Component: Yarn, }, { path: 'cloud', Component: Cloud, }, { path: 'yarn_cluster', Component: YarnCluster, }, { path: 'tool', Component: Tool, }, { path: 'task', Component: Task, }, { path: 'ai', children: [ { index: true, element: , }, { path: 'conversation', Component: Conversation, }, { path: 'feedback', Component: Feedback, }, { path: 'knowledge', Component: Knowledge, }, { path: 'knowledge/import/:knowledge_id', Component: DataImport, }, { path: 'knowledge/detail/:knowledge_id', Component: DataDetail, }, { path: 'knowledge/detail/:knowledge_id/segment/:group_id', Component: DataSegment, }, { path: 'flow_task', Component: FlowTask, }, { path: 'flow_task/add', Component: FlowTaskAdd, }, { path: 'flow_task_template', Component: FlowTaskTemplate, }, { path: 'flow_task_template/edit/:template_id', Component: FlowTaskTemplateEdit, }, { path: 'flowable', Component: FlowEditor, }, ], }, { path: 'test', Component: Test, } ], }, ] export const menus = { routes: [ { path: '/', name: '概览', icon: , routes: [ { path: '/overview', name: '概览', icon: , }, { path: '/table', name: '表任务', icon: , }, { path: '/queue', name: '压缩队列', icon: , }, { path: '/version', name: '跨天', icon: , }, { path: `/yarn/${commonInfo.clusters.sync_names()}/default/Sync`, name: '同步集群', icon: , }, { path: `/yarn/${commonInfo.clusters.compaction_names()}/${values(commonInfo.clusters.compaction).join(',')}/Compaction`, name: '压缩集群', icon: , }, { path: '/cloud', name: '服务', icon: , }, { path: 'a86f7c51-ae60-4ca4-8c4d-40b86b445a04', name: '集群', icon: , routes: [ { path: '/yarn_cluster', name: '概览', icon: , }, ...Object.keys(commonInfo.clusters.compaction).map(name => ({ // @ts-ignore path: `/yarn/${name}/${commonInfo.clusters.compaction[name]}`, name: `${name} 集群`, icon: , })), ], }, { path: '/tool', name: '工具', icon: , }, { path: '/task', name: '任务', icon: , }, ], }, { path: '/ai', name: 'AI', icon: , routes: [ { path: '/ai/conversation', name: '智慧问答', icon: , }, { path: '/ai/feedback', name: '智慧报障', icon: , }, { path: '/ai/knowledge', name: '知识库', icon: , }, { path: '/ai/flowable', name: '流程编排', icon: , }, { path: '1089caa6-9477-44a5-99f1-a9c179f6cfd3', name: '任务', icon: , routes: [ { path: '/ai/flow_task', name: '任务列表', icon: , }, { path: '/ai/flow_task_template', name: '任务模板', icon: , }, ] }, ], }, ], }