'use client' /** * Alerts Monitoring Admin Page (migrated from website/admin/alerts) * * Google Alerts & Feed-Ueberwachung Dashboard * Provides inbox management, topic configuration, rule builder, and relevance profiles */ import { useState } from 'react' import { PagePurpose } from '@/components/common/PagePurpose' import type { TabId } from './types' import { useAlertsData } from './useAlertsData' import { StatsOverview } from './_components/StatsOverview' import { DashboardTab } from './_components/DashboardTab' import { InboxTab } from './_components/InboxTab' import { TopicsTab } from './_components/TopicsTab' import { RulesTab } from './_components/RulesTab' import { ProfileTab } from './_components/ProfileTab' import { AuditTab } from './_components/AuditTab' import { DocumentationTab } from './_components/DocumentationTab' const TABS: { id: TabId; label: string; hasBadge?: boolean }[] = [ { id: 'dashboard', label: 'Dashboard' }, { id: 'inbox', label: 'Inbox', hasBadge: true }, { id: 'topics', label: 'Topics' }, { id: 'rules', label: 'Regeln' }, { id: 'profile', label: 'Profil' }, { id: 'audit', label: 'Audit' }, { id: 'documentation', label: 'Dokumentation' }, ] export default function AlertsPage() { const [activeTab, setActiveTab] = useState('dashboard') const data = useAlertsData() if (data.loading) { return (
) } return (
{/* Tab Navigation */}
{activeTab === 'dashboard' && ( )} {activeTab === 'inbox' && ( )} {activeTab === 'topics' && } {activeTab === 'rules' && } {activeTab === 'profile' && } {activeTab === 'audit' && } {activeTab === 'documentation' && }
) }