Padrão de Criação com Sucesso
Este padrão define o comportamento e a apresentação visual para feedback positivo após a criação bem-sucedida de uma entidade pelo usuário. O sistema deve informar a conclusão da ação, reduzir incertezas e permitir ao usuário acessar facilmente o que foi criado.
Contexto & Problema
Section titled “Contexto & Problema”Ao criar um item (p.ex: workload, network list, digital certificate), usuários podem não ter certeza sobre o sucesso da operação. Notificações genéricas ou ausência de feedback aumentam a insegurança e dificultam encontrar rapidamente a nova entidade.
Quando Usar
Section titled “Quando Usar”- Após a conclusão bem-sucedida de ações de criação (CRUD - Create).
Componentes Utilizados
Section titled “Componentes Utilizados”- Toast (Block Console Kit)
Exemplo Visual
Section titled “Exemplo Visual”
Workloads > Create Workload
Comportamento Esperado
Section titled “Comportamento Esperado”- Exibição de toast de sucesso: O sistema mostra um toast (notificação temporária) afirmando que a criação foi realizada.
- Mensagem clara: “Entidade criada com sucesso!” ou equivalente, contendo o nome da entidade.
- Link para visualizar: O toast apresenta um link direto para os detalhes da nova entidade.
- Botão de ação opcional: Quando aplicável, mostra um botão com ação relevante (ex: “Iniciar configuração”).
- Desaparecimento automático: O toast se fecha sozinho após alguns segundos ou pode ser fechado manualmente.
- Sucesso: Toast verde com ícone de check
- Ação primária: Link destacado para visualizar
- Ação secundária: Botão opcional para próximos passos
- Auto-dismiss: Fechamento automático em 5-8 segundos
Implementação
Section titled “Implementação”const handleToast = (response) => { const toast = { feedback: response.feedback, actions: { link: { label: 'View Workload', callback: () => response.redirectToUrl(response.urlToEditView) }, secondary: { label: 'Copy Workload URL', icon: 'pi pi-copy', animation: { time: 3000, icon: 'pi pi-check', label: 'Copied' }, callback: () => props.clipboardWrite(response.domainName) } } } response.showToastWithActions(toast)}Boas Práticas
Section titled “Boas Práticas”Anti-padrões
Section titled “Anti-padrões”Acessibilidade
Section titled “Acessibilidade”- Utilize
aria-live="polite"em componentes de toast para leitores de tela - Verifique contraste entre cores de fundo, ícone e texto
- Garanta navegação por teclado até os botões de ação