'use client' import type { CrawlStats, Category } from '../types' export default function StatsTab({ stats, categories, }: { stats: CrawlStats categories: Category[] }) { return (
{/* Overview Stats */}
{stats.totalDocuments.toLocaleString()}
Dokumente indexiert
{stats.totalSeeds}
Seed-URLs aktiv
{(stats.avgTrustScore * 100).toFixed(0)}%
Ø Trust-Score
{Object.keys(stats.documentsPerDocType).length}
Dokumenttypen
{/* Charts */}

Dokumente nach Kategorie

{Object.entries(stats.documentsPerCategory).map(([cat, count]) => { const category = categories.find(c => c.name === cat) const percentage = stats.totalDocuments > 0 ? (count / stats.totalDocuments) * 100 : 0 return (
{category?.icon || '📁'} {category?.display_name || cat} {count.toLocaleString()} ({percentage.toFixed(1)}%)
) })}

Dokumente nach Typ

{Object.entries(stats.documentsPerDocType) .sort(([,a], [,b]) => b - a) .slice(0, 6) .map(([docType, count]) => { const percentage = (count / stats.totalDocuments) * 100 return (
{docType.replace(/_/g, ' ')} {count.toLocaleString()} ({percentage.toFixed(1)}%)
) })}
) }