Saltar al contenido
Alea0.1
Pro
  1. Alea
  2. Componentes
  3. Datos
  4. FilterBar

Datos

FilterBar

Filtros para listas y tablas: vistas guardadas como pestañas, una búsqueda, filtros activos como chips que editas en un popover o quitas, un menú Agregar filtro, Quitar todo y espacio para ordenar o exportar. Filtros de una opción, varias opciones, texto y sí o no.

import { FilterBar } from '@alea/ui';

Ejemplos

FilterBar

Vistas guardadas, una búsqueda, filtros activos como chips (presiona uno para editarlo, × para quitarlo), Agregar filtro y Quitar todo. El valor son datos simples que envías a tu API.

view: all · search: “” · filters: {"status":["open"]}

Tokens

Los tokens de diseño que usa este componente, con su valor en el tema actual. Cambia cualquiera para darle otro estilo.

Color

  • --alea-border…
  • --alea-border-strong…
  • --alea-surface-hover…
  • --alea-surface-raised…
  • --alea-text…
  • --alea-text-muted…

Space

  • --alea-space-2…
  • --alea-space-3…

Radius

  • --alea-radius-full…

Type

  • --alea-font-family-body…
  • --alea-font-size-sm…
  • --alea-font-weight-medium…
  • --alea-font-weight-semibold…

Motion

  • --alea-motion-duration-base…
  • --alea-motion-ease-out…

Props

FilterBar props

Filtros para una lista o tabla: vistas guardadas, una búsqueda, filtros activos como chips que se pueden editar o quitar, un menú Agregar filtro y Quitar todo.

PropTipoPor defectoDescripción
filtersobligatoriaFilterDef[]-Los filtros que se pueden agregar.
aria-labelstring-Nombre para lectores de pantalla. Por defecto "Filtros".
classNamestring-Clases extra.
defaultValueFilterValue-Los filtros activos al inicio.
endReactNode-Contenido al final de la fila: orden, exportar, un selector de vista.
onChange((value: FilterValue) => void)-Se llama con todos los filtros activos cuando uno cambia.
onSearchChange((q: string) => void)-Se llama mientras se escribe en la búsqueda.
onViewChange((id: string) => void)-Se llama cuando se elige una vista.
searchstring-El texto de búsqueda (controlado). Omite search y onSearchChange para ocultar la búsqueda.
searchPlaceholderstring-Placeholder de la búsqueda.
valueFilterValue-Los filtros activos y sus valores (controlado).
viewstring-La vista actual.
views{ id: string; label: string; count?: number; }[]-Vistas guardadas como pestañas sobre los filtros (Todos, Sin pagar, Míos).

Especificaciones

Generado desde el código: las variantes de los tipos, los estados y tokens del CSS, y los patrones de motion que aplican. Las grillas muestran el componente real en ambos temas; los números se miden en la página.

Estados
Hover
Oscuro y claro
Cada color viene de tokens del tema, así que sigue a data-theme (y a presets como Graphite) en la página o en cualquier contenedor. El contraste se revisa en ambos temas.
Clases para estilos
.alea-filterbar.alea-filterbar-row.alea-filterbar-search.alea-filterbar-chips.alea-filter-chip.alea-filter-chip-main.alea-filter-chip-icon.alea-filter-chip-label.alea-filter-chip-value.alea-filter-popover.alea-filter-chip-remove.alea-filterbar-end
Atributos data
data-empty

Accesibilidad

  • Un grupo con nombre; cada chip es un botón que dice el filtro y su valor, más un botón Quitar con nombre.
  • Editar abre un diálogo en popover con el foco adentro; Escape lo cierra y devuelve el foco al chip.
  • Quitar todo y Agregar filtro son botones reales; las vistas son pestañas.

Teclado

TeclaAcción
TabRecorre la búsqueda, los chips, Agregar filtro y Quitar todo
Enter o EspacioEdita un chip o abre Agregar filtro
EscapeCierra el editor

Qué hacer y qué evitar

Hacer

  • Pon primero los filtros más usados en Agregar filtro.
  • Guarda las combinaciones comunes como vistas.

Evitar

  • No apliques los filtros solo con un botón Aplicar aparte cuando los resultados son rápidos.
Probado con axe, teclado y roles de lector de pantalla