# Empty State

O estado vazio canônico: arte por slot, frase do que vai aparecer ali e no máximo uma ação. Com ou sem caixa.

- Nome no registry: `empty-state`
- Tipo: componente
- Dependências npm: nenhuma
- Demo: https://ui.visantlabs.com/c/empty-state
- Categorias: feedback, vazio, empty, onboarding, primeiro-uso

## Quando usar

- Use quando: Lista, painel ou busca sem conteúdo ainda: frase do que vai aparecer ali e no máximo uma ação
- Evite quando: Conteúdo carregando: skeleton-rail; vazio com personalidade, ponha eye-tracker no slot da arte

## Instalar

```bash
npx shadcn@latest add @visant/empty-state
```

## Usar

```tsx
<EmptyState />
```

## API

### EmptyState

- `title: any`
- `action?: any` — UMA ação. Ver a nota acima.
- `art?: any` — Slot da arte. `next/image`, `<img>`, ou um `@visant/cover-art`.
- `children?: any` — Uma frase que diz o que vai aparecer ali, não que lamenta a ausência.
- `eyebrow?: any`
- `framed?: boolean = true` — Caixa com borda e fundo de card, arte sangrando no topo. `false` tira a caixa: o vazio pousa direto na superfície que o recebeu (painel, coluna, lista), com a arte como um selo pequeno em cima do texto. É o modo certo quando o vazio mora DENTRO de um card, pra não virar caixa dentro de caixa.

### EmptyArt

EmptyArt — a faixa desenhada em código pro slot `art`.

- `intensity?: "quieta" | "cheia" = "quieta"` — Densidade do desenho. Menos é mais em faixa baixa.
- `seed?: string = "vazio"` — A semente. Passe o nome da coleção vazia (`"favoritos"`, `"arquivados"`) e cada tela vazia do app ganha uma composição própria — de graça, e estável.
