);
}
// ---------------- Sparkline (evolution) ----------------
function Sparkline({ data, w = 320, h = 100 }) {
if (!data.length) return null;
const pad = 4;
const min = Math.min(...data.map(d => d.v)) - 4;
const max = Math.max(...data.map(d => d.v)) + 4;
const step = (w - pad * 2) / (data.length - 1);
const pts = data.map((d, i) => {
const x = pad + i * step;
const y = h - pad - ((d.v - min) / (max - min)) * (h - pad * 2);
return [x, y];
});
const pathD = pts.map((p, i) => (i === 0 ? 'M' : 'L') + p[0].toFixed(1) + ' ' + p[1].toFixed(1)).join(' ');
const areaD = pathD + ` L${pts[pts.length - 1][0]} ${h - pad} L${pts[0][0]} ${h - pad} Z`;
const last = pts[pts.length - 1];
return (
);
}
// ---------------- Filter chip / select ----------------
function FilterSelect({ icon, label, value }) {
const I = window.Icons;
return (
);
}
// ---------------- Status pill mapping ----------------
function StatusPill({ estado }) {
const I = window.Icons;
const map = {
pending: { cls: 'is-info', icon: 'Clock', label: 'Pendiente' },
ok: { cls: 'is-ok', icon: 'CheckCircle2', label: 'Cumplido' },
partial: { cls: 'is-warn', icon: 'AlertCircle', label: 'Parcial' },
bad: { cls: 'is-danger', icon: 'XCircle', label: 'No cumplido' },
overdue: { cls: 'is-dark', icon: 'AlertTriangle',label: 'Vencido s/avance' },
};
const s = map[estado] || map.pending;
return (
{React.createElement(I[s.icon], { size: 11 })}
{s.label}
);
}
// ---------------- TABLERO SCREEN ----------------
function TableroScreen({ onOpenDetalle }) {
const I = window.Icons;
const [filter, setFilter] = useStateT('todos');
const compromisos = window.COMPROMISOS;
const maxInst = Math.max(...window.INST_RANKING.map(i => i.total));
return (
{/* Page header */}
CGR · Dirección de Análisis de Datos
Tablero de Control
Estado consolidado del cumplimiento país en los tres mecanismos
anticorrupción evaluados a Paraguay — MESICIC (OEA), UNCAC (ONU) y OCDE —
con semáforo verde / amarillo / rojo segmentado por mecanismo,
institución responsable y eje temático. Los indicadores se recalculan
en tiempo real cada vez que la CGR actualiza el estado de una
recomendación. Datos al 21 de mayo de 2026.
{/* Filters */}
{/* KPI bento */}
{/* Charts row */}
Distribución por mecanismo
3 mecanismos activos
Top 6 instituciones con más compromisos
Evolución del cumplimiento
17 meses
62%
↑ 21 pts vs. ene 2025
{/* Tabla principal */}
Compromisos · vista detallada
Mostrando {compromisos.length} de 527 · ordenados por proximidad de vencimiento