# Toast Stack

Avisos que se empilham no canto e abrem em leque quando o ponteiro chega, com o carregando que vira feito no lugar.

- Nome no registry: `toast-stack`
- Tipo: componente
- Dependências npm: lucide-react, motion
- Demo: https://ui.visantlabs.com/c/toast-stack
- Categorias: feedback, avisos, toast, notificacao, pilha

## Quando usar

- Use quando: Avisos passageiros empilhados no canto, com o carregando que vira feito no lugar
- Evite quando: Atividade em curso com controles: dynamic-island; erro de formulário vai no próprio campo

## Instalar

```bash
npx shadcn@latest add @visant/toast-stack
```

## Usar

```tsx
<ToastStackProvider />
```

## API

### ToastStackProvider

Escopo de uma fila. Duas pilhas na mesma página nunca dividem toasts.

- `duration?: number = 5000` — Vida base de um toast, em ms. Aviso e erro ficam 1,6 vez mais.
- `limit?: number = 12` — Acima disso, os mais antigos saem da fila.

### ToastStack

- `className?: string`
- `contained?: boolean = false` — Prende a pilha no ancestral posicionado em vez da janela.
- `defaultExpanded?: boolean = false` — Abre o leque sem precisar de ponteiro. Útil para vitrine e documentação.
- `label?: string = "Avisos"` — Nome acessível da região.
- `position?: "bottom-right" | "bottom-center" | "bottom-left" = "bottom-right"`
- `visibleToasts?: number = 3` — Quantos aparecem de uma vez. Os demais esperam atrás.
