Ravox KitSobreposição

Notificação

Chame notificar() de qualquer lugar e ponha <Notificacoes /> uma vez no layout. Sucesso, erro, info, aviso, carregando e promessa; botão de ação (Desfazer); empilha em leque, abre em lista no hover, pausa o tempo e dispensa arrastando para o lado.

Clique algumas vezes para empilhar; passe o mouse na pilha para abrir a lista. Alt+N leva o foco até ela.

Ajustes

Tipo
Posição

Exemplos

Os tipos

Promessa

Desfazer

Atualizar no lugar

Instalação

O shadcn cria components/ui/notificacao.tsx no seu projeto e instala o tema junto. O arquivo é seu: edite à vontade.

npx shadcn@latest add https://ui.ravoxlabs.com/r/notificacao.json

Opções

OpçãoTipoPadrãoO que faz
notificar(titulo, opcoes)(ReactNode, OpcoesNotificacao) => id—Mostra uma notificação e devolve o id. Também: notificar.sucesso, .erro, .info, .aviso e .carregando.
notificar.promessa(p, msgs)(Promise | () => Promise, { carregando, sucesso, erro }) => Promise—Mostra carregando e troca por sucesso ou erro quando a promessa termina. sucesso e erro podem ser funções do resultado.
notificar.dispensar(id?)(id?) => void—Tira uma notificação. Sem id, tira todas.
opcoes.descricaoReactNode—Segunda linha, mais apagada.
opcoes.acao{ rotulo, aoClicar }—Um botão (ex.: Desfazer). Com ação, a notificação fica no mínimo 8 s.
opcoes.idstring | number—Reusar o id atualiza no lugar (ex.: carregando → pronto).
opcoes.duracaonumber5000Tempo na tela em ms; Infinity fica até dispensar.
opcoes.aoSumir() => void—Chamado quando a notificação sai (tempo, X, arraste ou dispensar).
<Notificacoes posicao>"cima-esquerda" | "cima-centro" | "cima-direita" | "baixo-esquerda" | "baixo-centro" | "baixo-direita""baixo-direita"Onde a pilha fica. No celular, sempre na largura da tela.
<Notificacoes maximo duracao fechar expandidas>number / number / boolean / boolean3 / 5000 / true / falseQuantas aparecem no leque, o tempo padrão, o X em todas e a lista sempre aberta.