Feat Widgets Controles y Estilos

This commit is contained in:
2025-10-03 13:26:20 -03:00
parent 1719e79723
commit 64d45a7a39
17 changed files with 544 additions and 278 deletions

View File

@@ -12,7 +12,6 @@ const formatVotes = (num: number) => Math.round(num).toLocaleString('es-AR');
const SvgDefs = () => (
<svg style={{ height: 0, width: 0, position: 'absolute' }}>
<defs>
{/* El gradiente ahora se define para que el color oscuro se mantenga en la segunda mitad del recorrido vertical */}
<linearGradient id="participationGradient" gradientTransform="rotate(90)">
<stop offset="0%" stopColor="#e0f3ffff" />
<stop offset="100%" stopColor="#007bff" />
@@ -40,13 +39,13 @@ export const PanelResultados = ({ resultados, estadoRecuento }: PanelResultadosP
value={estadoRecuento.participacionPorcentaje}
text={formatPercent(estadoRecuento.participacionPorcentaje)}
strokeWidth={12}
circleRatio={0.75} /* Se convierte en un arco de 270 grados */
circleRatio={0.75}
styles={buildStyles({
textColor: '#333',
pathColor: 'url(#participationGradient)',
trailColor: '#e9ecef',
textSize: '22px',
rotation: 0.625, /* Rota el inicio para que la apertura quede abajo */
rotation: 0.625,
})}
/>
<span>Participación</span>
@@ -56,13 +55,13 @@ export const PanelResultados = ({ resultados, estadoRecuento }: PanelResultadosP
value={estadoRecuento.mesasTotalizadasPorcentaje}
text={formatPercent(estadoRecuento.mesasTotalizadasPorcentaje)}
strokeWidth={12}
circleRatio={0.75} /* Se convierte en un arco de 270 grados */
circleRatio={0.75}
styles={buildStyles({
textColor: '#333',
pathColor: 'url(#scrutinizedGradient)',
trailColor: '#e9ecef',
textSize: '22px',
rotation: 0.625, /* Rota el inicio para que la apertura quede abajo */
rotation: 0.625,
})}
/>
<span>Escrutado</span>
@@ -76,7 +75,7 @@ export const PanelResultados = ({ resultados, estadoRecuento }: PanelResultadosP
className="partido-fila"
style={{ borderLeftColor: partido.color || '#ccc' }}
>
<div className="partido-logo">
<div className="partido-logo" style={{ backgroundColor: partido.color || '#e9ecef' }}>
<ImageWithFallback src={partido.logoUrl || undefined} fallbackSrc={`${assetBaseUrl}/default-avatar.png`} alt={partido.nombre} />
</div>
<div className="partido-main-content">