Pular para o conteúdo

DocsFormulárioSegmented

Formulário

Segmented

Alternador de poucas opções com indicador que desliza até a escolhida.

data-u="segmented"

Exemplo

Instalação

Segmented vem no pacote completo, em unslop.css e unslop.js:

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

Um bloco pronto que usa segmented:

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

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

Sem props. As opções são os botões filhos e a inicial é a que tem aria-checked="true".

Classes e variantes

ClasseO que faz
u-seg--flatNo host: versão chapada, sem o fundo afundado.

Acessibilidade e teclado

Estado e papéis

OndeAtributoO que diz
hostrole="radiogroup"Posto pelo JS. Dê um aria-label ao host.
botõesrole="radio", aria-checkedA escolhida tem aria-checked="true" e é a única com tabindex 0.

Teclado

TeclaFaz
Tabentra no grupo, direto na opção escolhida
Setastrocam a opção e dão a volta no fim

Eventos e API

EventodetailQuando
u:change{ index, label }Só quando a troca vem da pessoa, não na montagem.

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

Digite pra buscar. Setas escolhem, Enter abre.