Vista previa#
Hitos alternados. Demo completa con datos realistas, renderizada en el servidor. Más abajo están las configuraciones, una por una.
Ejemplos#
Todas las configuraciones del componente, cada una viva y con datos propios. Cambia entre Preview y Code en cada tarjeta y copia lo que necesites.
Uso#
Ejemplo mínimo con las props requeridas. Copia, pega y cambia los datos:
import { ChartTooltipPortal, TimelineChart } from "@carlos-burelo/klin";
import "@carlos-burelo/klin/styles.css";
<ChartTooltipPortal>
<TimelineChart
events={/* … */}
ariaLabel="Timeline Chart"
/>
</ChartTooltipPortal>La gráfica es función pura de props a SVG: el HTML llega renderizado y sin JS se ve completa.
Envuelve en ChartTooltipPortal solo si quieres tooltip rico; sin JS queda \<title\> nativo.
Lee la guía /docs/ssr-first una vez y listo.
Código de esta demo#
Ver fuente (src/demos/timeline-chart.tsx)
import type { TimelineEvent } from "@carlos-burelo/klin";
import { ChartTooltipPortal, TimelineChart } from "@carlos-burelo/klin";
const events: TimelineEvent[] = [
{
date: "ene 2026",
label: "Levantamiento",
detail: "Censo de actas y diagnóstico de módulos",
done: true,
},
{
date: "mar 2026",
label: "Digitalización",
detail: "Escaneo de 40 mil fojas históricas",
done: true,
},
{
date: "may 2026",
label: "Ventanilla única",
detail: "Apertura del módulo piloto en el centro",
done: true,
},
{
date: "jul 2026",
label: "Citas en línea",
detail: "Portal de turnos con confirmación por mensaje",
},
{
date: "sep 2026",
label: "Firma electrónica",
detail: "Actas firmadas con validez oficial",
},
{
date: "nov 2026",
label: "Cierre y auditoría",
detail: "Evaluación de tiempos de espera",
},
];
export default function TimelineChartDemo() {
return (
<ChartTooltipPortal>
<TimelineChart
events={events}
ariaLabel="Hitos del programa de modernización del registro civil en 2026"
/>
</ChartTooltipPortal>
);
}Props#
12 props · 2 requeridas
Tipo completo: TimelineChartProps en timeline-chart.tsx.
Accesibilidad#
- Toda gráfica exige
ariaLabeldescriptivo; el SVG usarole="img"con\<title\>. - Cada forma lleva
\<title\>nativo (tooltip sin JS) ydata-chart-tippara el portal rico. - Sin datos se renderiza estado vacío homogéneo (
ChartEmpty), nunca SVG roto. - Detalle del contrato en /docs/accesibilidad.
Recursos#
- Fuente del componente:
timeline-chart.tsx - Guías: SSR-first · Tema · Tooltip