onOpenChange={keys=>{setResourceNavOpen(keys.includes("resources"));setSystemNavOpen(keys.includes("system"));}}
onClick={({key})=>{if(key==="domains")setDomainFilter(null);go(key as PageKey);}}
items={[
- {key:"domains",label:"领域方案",icon:<SvgIcon name="Apps" size={16}/>},
- {key:"projects",label:"站点管理",icon:<SvgIcon name="manage" size={16}/>},
- {key:"resources",label:"建站资源",icon:<SvgIcon name="iot_suite" size={16}/>,children:[
- {key:"deviceTemplates",label:"设备模板",icon:<SvgIcon name="manage" size={16}/>},
- {key:"monitor-dashboard",label:"监控仪表板",icon:<SvgIcon name="notifications" size={16}/>},
- {key:"twin-model",label:"数字孪生模型",icon:<SvgIcon name="support" size={16}/>},
- {key:"ops-template",label:"运维模板",icon:<SvgIcon name="config" size={16}/>},
- {key:"knowledge-template",label:"知识模板",icon:<SvgIcon name="file" size={16}/>},
+ {key:"domains",label:"领域方案",icon:<SvgIcon name="domain-solutions" size={16}/>},
+ {key:"projects",label:"站点管理",icon:<SvgIcon name="site-management" size={16}/>},
+ {key:"resources",label:"建站资源",icon:<SvgIcon name="building-resources" size={16}/>,children:[
+ {key:"deviceTemplates",label:"设备模板",icon:<SvgIcon name="device-templates" size={16}/>},
+ {key:"monitor-dashboard",label:"监控仪表板",icon:<SvgIcon name="monitoring-dashboards" size={16}/>},
+ {key:"twin-model",label:"数字孪生模型",icon:<SvgIcon name="digital-twin-models" size={16}/>},
+ {key:"ops-template",label:"运维模板",icon:<SvgIcon name="operations-templates" size={16}/>},
+ {key:"knowledge-template",label:"知识模板",icon:<SvgIcon name="knowledge-templates" size={16}/>},
]},
- {key:"system",label:"系统设定",icon:<SvgIcon name="config" size={16}/>,children:[
- {key:"toolSettings",label:"内部工具配置",icon:<SvgIcon name="support" size={16}/>},
- {key:"domainSettings",label:"领域配置",icon:<SvgIcon name="manage" size={16}/>},
+ {key:"system",label:"系统设定",icon:<SvgIcon name="system-settings" size={16}/>,children:[
+ {key:"toolSettings",label:"内部工具配置",icon:<SvgIcon name="internal-tools" size={16}/>},
+ {key:"domainSettings",label:"领域配置",icon:<SvgIcon name="domain-settings" size={16}/>},
]},
]}
/>
import notifications from '@/assets/icons/notifications.svg?react';
import search from '@/assets/icons/search.svg?react';
import support from '@/assets/icons/support.svg?react';
+import domainSolutions from '@/assets/icons/domain-solutions.svg?react';
+import siteManagement from '@/assets/icons/site-management.svg?react';
+import buildingResources from '@/assets/icons/building-resources.svg?react';
+import deviceTemplates from '@/assets/icons/device-templates.svg?react';
+import monitoringDashboards from '@/assets/icons/monitoring-dashboards.svg?react';
+import digitalTwinModels from '@/assets/icons/digital-twin-models.svg?react';
+import operationsTemplates from '@/assets/icons/operations-templates.svg?react';
+import knowledgeTemplates from '@/assets/icons/knowledge-templates.svg?react';
+import systemSettings from '@/assets/icons/system-settings.svg?react';
+import internalTools from '@/assets/icons/internal-tools.svg?react';
+import domainSettings from '@/assets/icons/domain-settings.svg?react';
/** 图标名 → 组件。key 必须与 src/assets/icons/<key>.svg 文件名一致 */
const ICONS = {
notifications,
search,
support,
+ 'domain-solutions': domainSolutions,
+ 'site-management': siteManagement,
+ 'building-resources': buildingResources,
+ 'device-templates': deviceTemplates,
+ 'monitoring-dashboards': monitoringDashboards,
+ 'digital-twin-models': digitalTwinModels,
+ 'operations-templates': operationsTemplates,
+ 'knowledge-templates': knowledgeTemplates,
+ 'system-settings': systemSettings,
+ 'internal-tools': internalTools,
+ 'domain-settings': domainSettings,
};
export type IconName = keyof typeof ICONS;