Ir para o conteúdo principal
WBC - GovBR-DS
Copiar página como Markdown para IA

Wizard

Componente estável e recomendada para novos projetos.
Anatomia, uso, comportamento visual e recomendações conceituais são mantidos pelo Padrão Digital de Governo. Esta página documenta a implementação Web Components e sua API executável.

Visão Geral

Para a documentação completa, incluindo diretrizes de uso, acessibilidade e exemplos visuais, consulte o Design System do GovBR.

Exemplo(s)

Desktop (100%)
Tablet - 768px
iPhone (iOS) - 390x844
Android - 360x800
Compartilhar URL
Mudar fundo
Abrir no StackBlitz
Tela cheia
HTML
Controles
JS
CSS
Console
Angular (Somente leitura)
React (Somente leitura)
Vue (Somente leitura)
Acessibilidade
Recolher controles e código
Formatar código
Resetar código para o estado inicial
Copiar para a área de transferência

Propriedades

currentIndex

Atributocurrent-index
DescriçãoÍndice atual zero-based para controle externo opcional.
Tiponumber
Valor padrão---

customId

Atributocustom-id
DescriçãoIdentificador único do componente.
Quando omitido, um valor é gerado automaticamente.

> Padrão: valor único gerado por generateUniqueId().
Tipostring
Valor padrãogenerateUniqueId()

initialIndex

Atributoinitial-index
DescriçãoÍndice inicial zero-based. Quando informado, tem precedência sobre initialStep.
Tiponumber
Valor padrão---

initialStep Componente mantido por compatibilidade; prefira a alternativa indicada na documentação.

Atributoinitial-step
DepreciaçãoUse initialIndex.
DescriçãoÍndice da etapa inicial do wizard.
Define qual etapa será exibida ao carregar o componente.
A numeração começa em 1 (primeira etapa = 1, segunda = 2, etc).
Tiponumber
Valor padrão1

orientation

Atributoorientation
DescriçãoOrientação visual do wizard.
Define se os indicadores de progresso serão exibidos horizontalmente ou verticalmente.
Tipo"horizontal" | "vertical"
Valor padrão'horizontal'

progressionType

Atributoprogression-type
DescriçãoTipo de progressão entre etapas.
- linear: O usuário deve completar cada etapa sequencialmente. Não é possível pular etapas futuras.
- nonlinear: O usuário pode navegar livremente entre qualquer etapa.
Tipo"linear" | "nonlinear"
Valor padrão'nonlinear'

step

Atributostep
DescriçãoEtapa atual (numeração 1-indexada). Reflete para atributo step.
Tiponumber
Valor padrão1

Slots

NomeDescrição
"cancel-button"Conteúdo customizado do botão de cancelar. Quando utilizado, o texto padrão "Cancelar" é substituído.
"default"Slot para os painéis de etapa (br-wizard-panel) do wizard.
"next-button"Conteúdo customizado do botão de avançar/concluir. Quando utilizado, os textos padrão "Avançar" e "Concluir" são substituídos.
"previous-button"Conteúdo customizado do botão de voltar. Quando utilizado, o texto padrão "Voltar" é substituído.

Eventos

EventoDescriçãoDepreciaçãoPropagação
brWizardBeforeStepChangeEvento emitido ANTES de mudar de etapa (permite validação e cancelamento). Comportamento: - Disparado apenas ao AVANÇAR (targetStep > currentStep) - Não é disparado ao VOLTAR (targetStep < currentStep) - Funciona tanto para cliques nos botões quanto para cliques diretos nos steps - Pode ser cancelado com event.preventDefault() para bloquear a navegação---true
brWizardCancelEvento emitido ao cancelar o wizard.---true
brWizardCompleteEvento emitido ao concluir o wizard (última etapa).---true
brWizardNavigationBlockedEvento emitido quando uma ação é bloqueada (validação falha, progressão linear impedida). Emite uma string indicando o motivo: 'linear-progression' ou 'validation-failed'. Use getCurrentStepIndex() para obter o contexto da etapa atual.---true
brWizardStepChangeEvento emitido APÓS mudar de etapa com sucesso. Este evento é disparado independente da origem da navegação: - Botões "Avançar" ou "Voltar" - Click direto em um step do indicador de progresso - Chamadas programáticas via métodos públicos (goToStep, nextStep, etc)---true

Métodos

getAllSteps

DescriçãoRetorna todos os painéis do wizard.
AssinaturagetAllSteps() => Promise<HTMLElement[]>
Parâmetros---

getCurrentStep

DescriçãoRetorna o elemento HTML do painel ativo no momento.
AssinaturagetCurrentStep() => Promise<HTMLElement | null>
Parâmetros---

getCurrentStepIndex

DescriçãoRetorna o índice (número) da etapa atual.
A numeração começa em 1 (primeira etapa = 1, segunda = 2, etc).
AssinaturagetCurrentStepIndex() => Promise<number>
Parâmetros---

getStepByIndex

DescriçãoRetorna um painel específico pelo índice.
AssinaturagetStepByIndex(stepNumber: number) => Promise<HTMLElement | null>
ParâmetrosstepNumber: - Número da etapa (numeração começa em 1)

getTotalSteps

DescriçãoRetorna o número total de etapas do wizard.
AssinaturagetTotalSteps() => Promise<number>
Parâmetros---

goToStep

DescriçãoNavega para uma etapa específica.
Executa validação se estiver avançando (etapa alvo > etapa atual).
AssinaturagoToStep(stepNumber: number) => Promise<boolean>
ParâmetrosstepNumber: - Número da etapa de destino (numeração começa em 1)

next

DescriçãoAvança para a próxima etapa.
Assinaturanext() => Promise<boolean>
Parâmetros---

nextStep

DescriçãoAvança para a próxima etapa.
Executa validação via evento brWizardBeforeStepChange antes de navegar.
AssinaturanextStep() => Promise<boolean>
Parâmetros---

previous

DescriçãoRetorna para a etapa anterior.
Assinaturaprevious() => Promise<boolean>
Parâmetros---

previousStep

DescriçãoVolta para a etapa anterior.
Não executa validação ao retornar.
AssinaturapreviousStep() => Promise<boolean>
Parâmetros---

reset

DescriçãoRetorna à primeira etapa do wizard.
Não executa validação (útil para reiniciar o fluxo).
Assinaturareset() => Promise<void>
Parâmetros---

CSS Shadow Parts

NomeDescrição
"buttons"Área de botões de navegação.
"content"Conteúdo do painel ativo.
"form"Área do formulário do wizard.
"panel"Painel ativo do wizard.
"progress"Área de progresso do wizard.

Dependências

Subcomponentes

Depende de

Gráfico