import { Box, Button, Divider, Paper, Typography } from '@mui/material'
import { DataQualityProgress } from './DataQualityProgress'
import { CriticalFieldWarning } from './CriticalFieldWarning'
import { MissingDataList } from './MissingDataList'
import { ProvenancePanel } from './ProvenancePanel'
import { DataQualityBadge } from './DataQualityBadge'
import { getRecommendedActions } from '../../services/dataQualityService'
import type { Property } from '../../domain/property'
interface DataQualityPanelProps {
property: Property
}
function SectionLabel({ children }: { children: React.ReactNode }) {
return (
{children}
)
}
export function DataQualityPanel({ property }: DataQualityPanelProps) {
const q = property.dataQuality
const actions = getRecommendedActions(q, q.freshness)
return (
{/* ── Score & Dimensions ─────────────────────────────────────────── */}
Datenqualität
{q.missingCriticalFields.length === 0 ? 'Alle Pflichtfelder vorhanden' : `${q.missingCriticalFields.length} Pflichtfeld(er) fehlen`}
{q.missingOptionalFields.length} optionale Felder fehlen
{/* ── Critical warnings ──────────────────────────────────────────── */}
{/* ── Missing data with actions ──────────────────────────────────── */}
Fehlende Daten & Massnahmen
{/* ── Provenance ─────────────────────────────────────────────────── */}
Datenherkunft & Verifikation
{/* ── Action button ──────────────────────────────────────────────── */}
{q.missingCriticalFields.length > 0 && (
)}
)
}