Saltar al contenido
Alea0.1
Pro
  1. Alea
  2. Componentes
  3. Formularios
  4. EmojiPicker

Formularios

EmojiPicker

Elige un emoji: busca por nombre en inglés o español, salta por categoría, los recientes primero, y una grilla que recorres con las flechas.

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

Ejemplos

EmojiPicker

Busca en inglés o español ("heart", "corazón"), salta con la fila de categorías, muévete con las flechas y elige con Enter. Lo que eliges aparece primero la próxima vez.

Nothing picked yet

En un popover

El lugar habitual: un botón que dice qué hace abre el selector a su lado, y al elegir se cierra.

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-focus…
  • --alea-surface…
  • --alea-surface-hover…
  • --alea-text-muted…

Space

  • --alea-space-1…
  • --alea-space-2…
  • --alea-space-6…

Radius

  • --alea-radius-sm…

Type

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

Motion

  • --alea-motion-duration-fast…
  • --alea-motion-ease-emphasized…

Component

  • --alea-emoji-cols…

Props

EmojiPicker props

Elige un emoji: busca por nombre (inglés o español), salta por categoría, los recientes primero. La grilla es un listbox en disposición de grilla: las flechas se mueven en dos direcciones, Enter elige, y cada emoji tiene un nombre para lectores de pantalla.

PropTipoPor defectoDescripción
onSelectobligatoria(emoji: string, name: string) => void-Se llama con el emoji elegido y su nombre.
autoFocusSearchbooleantruePone el cursor en el campo de búsqueda al abrirse. Por defecto true.
classNamestring-Clases extra.
columnsnumber8Columnas de la grilla. Por defecto 8.
heightnumber280Altura de la grilla con scroll en px. Por defecto 280.
showRecentbooleantrueRecuerda lo último elegido (en este navegador) y lo muestra primero. Por defecto true.

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 (CSS)HoverKeyboard focusPressed
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-emoji.alea-emoji-cats.alea-emoji-cat.alea-emoji-scroll.alea-emoji-empty.alea-emoji-grid.alea-emoji-section.alea-emoji-header.alea-emoji-item

Accesibilidad

  • La grilla es un listbox en disposición de grilla: las flechas se mueven en dos direcciones, Enter elige.
  • Cada emoji tiene un nombre (en el idioma de la página), así los lectores de pantalla dicen "pulgar arriba", no el carácter.
  • Los botones de categoría tienen nombre y llevan la grilla a su sección; los resultados de búsqueda reemplazan las secciones.
  • Cuando nada coincide, un estado lo indica.

Teclado

TeclaAcción
FlechasRecorren la grilla
EnterElige el emoji
TabSe mueve entre la búsqueda, las categorías y la grilla

Qué hacer y qué evitar

Hacer

  • Ábrelo en un Popover junto a lo que agrega (una reacción, un mensaje, el ícono de una página).
  • Deja activados los recientes: la gente reusa los mismos pocos emojis.

Evitar

  • No uses emojis como la única forma de decir algo importante.
  • No lo abras sin un disparador que diga qué hace ("Agregar reacción").

En Figma

EmojiPicker con la búsqueda, la fila de categorías y una grilla de emojis.

Probado con axe, teclado y roles de lector de pantalla