import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card"; import type { HouseholdRow } from "@/lib/poverty-types"; const LABEL_BADGE: Record = { "SANGAT TINGGI": "bg-red-100 text-red-700 border-red-200", "TINGGI": "bg-orange-100 text-orange-700 border-orange-200", "SEDANG": "bg-amber-100 text-amber-700 border-amber-200", "RENDAH": "bg-emerald-100 text-emerald-700 border-emerald-200", "TIDAK PRIORITAS": "bg-blue-100 text-blue-700 border-blue-200", }; interface PovertyInspectorTopProps { selected: HouseholdRow | null; } export function PovertyInspectorTop({ selected }: PovertyInspectorTopProps) { return ( Inspektur Warga {selected ? `Analisis untuk ${selected.head_name}.` : "Pilih warga dari direktori."} {selected ? ( <>

{selected.head_name}

{selected.fuzzy_label ?? "Belum dianalisis"} ) : (

Belum ada warga dipilih.

)}
); } interface PovertyInspectorBottomProps { selected: HouseholdRow | null; } export function PovertyInspectorBottom({ selected }: PovertyInspectorBottomProps) { const score = selected?.fuzzy_score != null ? Number(selected.fuzzy_score).toFixed(1) : "—"; return (
Skor Fuzzy

{score}

Penghasilan

{selected ? `Rp ${Number(selected.penghasilan).toLocaleString("id-ID")}` : "—"}

Tanggungan

{selected ? `${selected.family_count} jiwa` : "—"}

Rumah · Aset

{selected ? `${selected.kondisi_rumah} · ${selected.kepemilikan_aset}` : "—"}

Skor fuzzy 0–100 dihitung dari penghasilan, tanggungan, kondisi rumah, dan kepemilikan aset. Semakin tinggi skor, semakin prioritas untuk bantuan.

Kondisi rumah dan kepemilikan aset dinilai pada skala 1–10 saat pendataan di peta.

); }