import { Component, ReactNode } from 'react'; import { useAdminGuard } from '@/hooks/useAdminGuard'; import { AdminLayout } from '@/components/layout/AdminLayout'; import { logger } from '@/lib/logger'; import { SystemActivityLog } from '@/components/admin/SystemActivityLog'; import { Skeleton } from '@/components/ui/skeleton'; import { Card, CardContent } from '@/components/ui/card'; import { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert'; import { AlertCircle } from 'lucide-react'; import { useDocumentTitle } from '@/hooks/useDocumentTitle'; interface ErrorBoundaryProps { children: ReactNode; } interface ErrorBoundaryState { hasError: boolean; error: Error | null; } class ErrorBoundary extends Component { constructor(props: ErrorBoundaryProps) { super(props); this.state = { hasError: false, error: null }; } static getDerivedStateFromError(error: Error) { return { hasError: true, error }; } componentDidCatch(error: Error, errorInfo: any) { logger.error('System Activity Log Error', { error, errorInfo }); } render() { if (this.state.hasError) { return ( Error loading system activity log {this.state.error?.message || 'An unexpected error occurred'} ); } return this.props.children; } } export default function AdminSystemLog() { useDocumentTitle('System Activity Log - Admin'); const { isLoading, isAuthorized } = useAdminGuard(false); // No MFA required for viewing logs if (isLoading) { return (

System Activity Log

Complete audit trail of all system changes and administrative actions

{[1, 2, 3, 4, 5].map((i) => (
))}
); } if (!isAuthorized) { return null; } return (

System Activity Log

Complete audit trail of all system changes and administrative actions

); }