Documentação

Buttons

Botões transmitem ações. Use Primary para a ação mais importante por tela.

Princípios de uso

  • Apenas UM botão primary por tela. É a ação mais importante.
  • Secondary acompanha um primary (ex: "Salvar" + "Cancelar").
  • Tertiary para ações de baixa importância (links, "ver mais", "voltar").
  • Danger para ações destrutivas, sempre acompanhado de uma forma de cancelar.
  • Brand é exclusivo de telas de autenticação (login, cadastro, recuperar senha).

Variantes

<Button variant="primary">Primary</Button>
<Button variant="secondary">Secondary</Button>
<Button variant="tertiary">Tertiary</Button>
<Button variant="danger">Danger</Button>
<Button variant="brand">Brand</Button>

Tamanhos

<Button size="sm">Small</Button>
<Button size="md">Medium</Button>
<Button size="lg">Large</Button>

Estados

<Button>Default</Button>
<Button disabled>Disabled</Button>
<Button loading>Loading</Button>

Com ícones

<Button leftIcon={<Plus size={16} />}>Adicionar</Button>
<Button rightIcon={<ArrowRight size={16} />}>Próximo</Button>

iconOnly e fullWidth

<Button variant="tertiary" iconOnly aria-label="Configurações">
  <Settings size={16} />
</Button>
<Button variant="primary" fullWidth>Confirmar</Button>

Tabela de props

PropTipoDefaultDescrição
variant"primary" | "secondary" | "tertiary" | "danger" | "brand""primary"Variante visual do botão
size"sm" | "md" | "lg""md"Tamanho do botão
loadingbooleanfalseMostra spinner e desabilita o botão
leftIconReactNodeÍcone exibido à esquerda do texto
rightIconReactNodeÍcone exibido à direita do texto
iconOnlybooleanfalseBotão quadrado apenas com ícone
fullWidthbooleanfalseOcupa toda a largura disponível
disabledbooleanfalseDesabilita o botão
asChildbooleanfalseRenderiza como Slot (Radix)
Atlas DS · Sistema de Design · 2026