import { Card, CardBody } from '@heroui/card'; import { useRequest } from 'ahooks'; import { useCallback, useEffect, useState, useRef } from 'react'; import toast from 'react-hot-toast'; import NetworkItemDisplay from '@/components/display_network_item'; import Hitokoto from '@/components/hitokoto'; import QQInfoCard from '@/components/qq_info_card'; import SystemInfo from '@/components/system_info'; import SystemStatusDisplay from '@/components/system_status_display'; import useConfig from '@/hooks/use-config'; import QQManager from '@/controllers/qq_manager'; import WebUIManager from '@/controllers/webui_manager'; const Networks: React.FC = () => { const { config, refreshConfig } = useConfig(); const allNetWorkConfigLength = config.network.httpClients.length + config.network.websocketClients.length + config.network.websocketServers.length + config.network.httpServers.length; useEffect(() => { refreshConfig(); }, []); return (
); }; const QQInfo: React.FC = () => { const { data, loading, error } = useRequest(QQManager.getQQLoginInfo); return ; }; export interface SystemStatusCardProps { setArchInfo: (arch: string | undefined) => void; } const SystemStatusCard: React.FC = ({ setArchInfo }) => { const [systemStatus, setSystemStatus] = useState(); const isSetted = useRef(false); const getStatus = useCallback(() => { try { const event = WebUIManager.getSystemStatus(setSystemStatus); return event; } catch (_error) { toast.error('获取系统状态失败'); } }, []); useEffect(() => { const close = getStatus(); return () => { close?.close(); }; }, [getStatus]); useEffect(() => { if (systemStatus?.arch && !isSetted.current) { setArchInfo(systemStatus.arch); isSetted.current = true; } }, [systemStatus, setArchInfo]); return ; }; const DashboardIndexPage: React.FC = () => { const [archInfo, setArchInfo] = useState(); return ( <> 基础信息 - NapCat WebUI
); }; export default DashboardIndexPage;