import { useState } from "react"; import { Header } from "@/components/Header"; import { Sidebar } from "@/components/Sidebar"; import { SystemStats } from "@/components/SystemStats"; import { TransactionList } from "@/components/TransactionList"; import { SmartContractStatus } from "@/components/SmartContractStatus"; import { BlockchainVisualization } from "@/components/BlockchainVisualization"; import { EvidenceChainPanel } from "@/components/EvidenceChainPanel"; import { AIAnalysisDashboard } from "@/components/ai/AIAnalysisDashboard"; import { EcosystemOverview } from "@/components/ecosystem/EcosystemOverview"; import { ChittyIDDashboard } from "@/components/chittyid/ChittyIDDashboard"; import { BeaconDashboard } from "@/components/beacon/BeaconDashboard"; import { useWebSocket } from "@/hooks/useWebSocket"; import { useBlockchain } from "@/hooks/useBlockchain"; type SectionType = 'dashboard' | 'blockchain' | 'contracts' | 'evidence' | 'cases' | 'property' | 'monitoring' | 'ai-analysis' | 'ecosystem' | 'chittyid' | 'beacon'; export default function Dashboard() { const [activeSection, setActiveSection] = useState('dashboard'); const { isConnected, lastMessage } = useWebSocket(); const { stats, recentTransactions, contracts } = useBlockchain(); const renderMainContent = () => { switch (activeSection) { case 'dashboard': return (
); case 'blockchain': return (
); case 'contracts': return (
); case 'evidence': return (
); case 'cases': return (

Case Management

Case management interface coming soon...

); case 'property': return (

Property NFTs

Property NFT management interface coming soon...

); case 'ai-analysis': return ; case 'ecosystem': return ; case 'chittyid': return ; case 'beacon': return ; case 'monitoring': return (

Performance Metrics

CPU Usage 34%
Memory Usage 67%
Storage Usage 23%
Network I/O 89%

API Status

{[ { endpoint: '/api/blockchain/status', latency: '200ms', status: 'active' }, { endpoint: '/api/evidence/submit', latency: '150ms', status: 'active' }, { endpoint: '/api/property/mint', latency: '320ms', status: 'pending' }, { endpoint: '/api/case/create', latency: '180ms', status: 'active' }, { endpoint: '/api/audit/trail', latency: '95ms', status: 'active' }, ].map((api, index) => (
{api.endpoint}
{api.latency}
))}
); default: return
Section not found
; } }; return (
setActiveSection(section as SectionType)} isConnected={isConnected} />
{renderMainContent()}
{/* WebSocket Connection Status */}
{isConnected ? 'WebSocket Connected' : 'WebSocket Disconnected'} {lastMessage && ( {new Date(lastMessage.timestamp || Date.now()).toLocaleTimeString()} )}
); }