Pular para o conteúdo

DocsNavegaçãoSeletor de período

Navegação

Seletor de período

Setas que andam por semanas, meses ou uma lista sua, com o rótulo entrando na direção do clique.

data-u="period"

Exemplo

Instalação

Seletor de período vem no pacote completo, em unslop.css e unslop.js:

curl -fsSL unslop.leallabs.dev/i | sh

Um bloco pronto que usa seletor de período:

curl -fsSL unslop.leallabs.dev/i | sh -s add wall-alerts

Sem build O add por nome serve pra gráficos e blocos. Componentes com JS moram em unslop.js, que monta sozinho todo data-u da página.

Props

Vão em data-u-props, como JSON.

PropTipoPadrãoO que faz
modestringsemanas"month" lista os 12 meses e abre em junho. Sem mode, são 14 semanas a partir de junho de 2026.
itemsarraysem padrãoLista própria de rótulos. Tem prioridade sobre mode.
indexnumbersem padrãoPosição inicial.
labelstringPeríodoNome do grupo (aria-label).

Acessibilidade e teclado

Estado e papéis

OndeAtributoO que diz
hostrole="group", aria-labelPostos pelo JS.
setasaria-label, aria-disabled"Período anterior" e "Próximo período". Na ponta da lista, a seta fica com aria-disabled="true".
rótuloaria-live="polite"O leitor de tela anuncia o período novo.

Teclado

TeclaFaz
Tabfoca as setas
Enter ou Espaçoanda um período

Eventos e API

EventodetailQuando
u:change{ index, label }A cada troca de período. Barras no mesmo card escutam e trocam a série.

Todo evento sobe pela página (bubbles). Escute no próprio elemento: el.addEventListener("u:change", (e) => e.detail).

el._u.index lê a posição atual.

Digite pra buscar. Setas escolhem, Enter abre.