feat: Mejoras de usabilidad, filtros y consistencia visual

*   **Filtrado Insensible a Acentos y Mayúsculas:**
    *   Se implementa un filtrado global en todas las tablas (`Equipos`, `Componentes`, `Sectores`) que ignora las tildes y no distingue entre mayúsculas y minúsculas.
    *   Se crea una función de utilidad `accentInsensitiveFilter` para normalizar el texto antes de la comparación.
    *   Se añade la ampliación de módulo (`tanstack-table.d.ts`) para integrar de forma segura el nuevo tipo de filtro con TypeScript.

*   **Refactor y Unificación de la Vista de Sectores:**
    *   Se refactoriza por completo la vista "Gestión de Sectores" para utilizar `React Table` (`@tanstack/react-table`).
    *   Ahora cuenta con las mismas funcionalidades que las otras vistas: ordenación por columnas, filtrado de texto, estado de carga con `TableSkeleton` y un diseño de controles unificado.

*   **Ajustes de Diseño y Layout:**
    *   Se corrige el layout de las tablas en "Gestión de Componentes" y "Gestión de Sectores" para que la columna "Acciones" (y "Nº de Equipos") ocupe solo el espacio mínimo necesario, permitiendo que la columna principal se expanda.
    *   Se eliminan estilos en línea en favor de clases de módulo CSS, asegurando que el diseño sea consistente y respete el sistema de temas (claro/oscuro).

*   **Corrección del Botón "Scroll to Top":**
    *   Se soluciona definitivamente el problema del botón para volver arriba en la tabla de equipos.
    *   Se ajusta la estructura JSX y se corrige el `useEffect` para que el listener de scroll se asigne correctamente después de que los datos hayan cargado, asegurando que el botón aparezca y se posicione de forma fija sobre el contenedor de la tabla.
This commit is contained in:
2025-10-10 20:37:50 -03:00
parent 2b2cc873e5
commit a32f0467ef
6 changed files with 213 additions and 58 deletions

View File

@@ -747,4 +747,23 @@
.columnToggleItem label {
white-space: nowrap;
}
}
/* --- ESTILOS PARA GESTIÓN DE COMPONENTES --- */
/* Estilos para la columna numérica (Nº de Equipos) */
.thNumeric,
.tdNumeric {
text-align: Center; /* Es buena práctica alinear números a la derecha */
padding-right: 2rem; /* Un poco más de espacio para que no se pegue a las acciones */
width: 1%;
white-space: nowrap;
}
/* Estilos para la columna de acciones */
.thActions,
.tdActions {
text-align: center; /* Centramos el título 'Acciones' y los botones */
width: 1%;
white-space: nowrap;
}