@govbr-ds/core
Version:
Padrão Digital de Governo
130 lines (127 loc) • 7.58 kB
HTML
<html lang="pt-BR">
<head>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<meta http-equiv="X-UA-Compatible" content="ie=edge"/>
<title>Mensagem</title>
<!-- Fonte Rawline-->
<link rel="stylesheet" href="https://cdngovbr-ds.estaleiro.serpro.gov.br/design-system/fonts/rawline/css/rawline.css"/>
<!-- Fonte Raleway-->
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Raleway:300,400,500,600,700,800,900&display=swap"/>
<!-- Design System de Governo-->
<link rel="stylesheet" href="../../core.css"/>
<!-- Fontawesome-->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.11.2/css/all.min.css"/>
</head>
<body>
<div class="container-fluid">
<p class="h4 mt-5">Mensagens padrão</p>
<div class="row">
<div class="col-sm pt-3" id="exemplomessage">
<div class="br-message danger">
<div class="icon"><i class="fas fa-times-circle fa-lg" aria-hidden="true"></i>
</div>
<div class="content" aria-label="Data de início do afastamento inválida. A data não pode ser superior à data atual." role="alert"><span class="message-title">Data de início do afastamento inválida.</span><span class="message-body"> A data não pode ser superior à data atual.</span></div>
<div class="close">
<button class="br-button circle small" type="button" aria-label="Fechar a messagem alterta"><i class="fas fa-times" aria-hidden="true"></i>
</button>
</div>
</div>
<div class="br-message success">
<div class="icon"><i class="fas fa-check-circle fa-lg" aria-hidden="true"></i>
</div>
<div class="content" aria-label="Sucesso. Seus dados foram alterados conforme preenchimento do formulário." role="alert"><span class="message-title">Sucesso.</span><span class="message-body"> Seus dados foram alterados conforme preenchimento do formulário.</span></div>
<div class="close">
<button class="br-button circle small" type="button" aria-label="Fechar a messagem alterta"><i class="fas fa-times" aria-hidden="true"></i>
</button>
</div>
</div>
<div class="br-message info">
<div class="icon"><i class="fas fa-info-circle fa-lg" aria-hidden="true"></i>
</div>
<div class="content" aria-label="Informação. Seus dados só serão salvos após o preenchimento do primeiro campo do formulário." role="alert"><span class="message-title">Informação.</span><span class="message-body"> Seus dados só serão salvos após o preenchimento do primeiro campo do formulário.</span></div>
<div class="close">
<button class="br-button circle small" type="button" aria-label="Fechar a messagem alterta"><i class="fas fa-times" aria-hidden="true"></i>
</button>
</div>
</div>
<div class="br-message warning">
<div class="icon"><i class="fas fa-exclamation-triangle fa-lg" aria-hidden="true"></i>
</div>
<div class="content" aria-label="Em caso de dúvida, não compartilhe sua senha com terceiros. Ligue para a Central de atendimento." role="alert"><span class="message-title">Atenção.</span><span class="message-body"> Em caso de dúvida, não compartilhe sua senha com terceiros. Ligue para a Central de atendimento.</span></div>
<div class="close">
<button class="br-button circle small" type="button" aria-label="Fechar a messagem alterta"><i class="fas fa-times" aria-hidden="true"></i>
</button>
</div>
</div>
<button class="br-button primary mr-3" type="button" id="acionamessagemalert">Exemplo de acionamento Mensagens padrão
</button>
</div>
</div>
<p class="h4 mt-5">Mensagens contextuais</p>
<div class="row">
<div class="col-sm pt-3" id="exemplofeedback">
<p><span class="feedback danger" role="alert"><i class="fas fa-times-circle" aria-hidden="true"></i>O CPF deve conter apenas dígitos.</span>
</p>
<p><span class="feedback success" role="alert"><i class="fas fa-check-circle" aria-hidden="true"></i>Campo correto.</span>
</p>
<p><span class="feedback warning" role="alert"><i class="fas fa-exclamation-triangle" aria-hidden="true"></i>A tecla CAPS-LOCK está ativada.</span>
</p>
<p><span class="feedback info" role="alert"><i class="fas fa-info-circle" aria-hidden="true"></i>Os arquivos devem ser no formato PNG, JPG, PDF e ter no máximo 1GB.</span>
</p>
<p>
<button class="br-button primary mr-3" type="button" id="acionamessagemfeedback">Exemplo de acionamento Mensagens contextuais
</button>
</p>
</div>
</div>
<script>
console.log("xx")
document.addEventListener('DOMContentLoaded', function () {
var criarElementoFeedbackBtn = document.getElementById('acionamessagemfeedback');
var criarElementoAlertMBtn = document.getElementById('acionamessagemalert');
var exemplosMessage = document.getElementById('exemplomessage');
let exemplosfeedback = document.getElementById('exemplofeedback');
const mensagemPadrao = "Data de início do afastamento inválida. A data não pode ser superior à data atual."
const iconeMessagem = `
<div class="icon">
<i class="fas fa-info-circle fa-lg" aria-hidden="true"></i>
</div>
<div class="content" role="alert">
<span class="message-title">Data de início do afastamento inválida.</span>
<span class="message-body"> A data não pode ser superior à data atual.</span>
</div>
<div class="close">
<button class="br-button circle small" type="button" aria-label="Fechar a mensagem">
<i class="fas fa-times" aria-hidden="true"></i>
</button>
</div>
`;
criarElementoFeedbackBtn.addEventListener('click', function () {
var messageAcionado = document.createElement('div')
const icone2 = `<i class="fas fa-times-circle" aria-hidden="true"></i>Seus dados só serão salvos após o preenchimento do primeiro campo do formulário.`
messageAcionado.classList.add('feedback', 'info', 'mr-3')
messageAcionado.setAttribute('role', 'alert')
messageAcionado.innerHTML = icone2
console.log("teste",messageAcionado)
exemplosfeedback.appendChild(messageAcionado);
});
criarElementoAlertMBtn.addEventListener('click', function () {
var messageAcionado = document.createElement('div')
messageAcionado.classList.add('br-message', 'info', 'mt-1')
messageAcionado.innerHTML = iconeMessagem
for (const button of messageAcionado.querySelectorAll( '.br-message .close'
)) {
button.addEventListener('click', () => {
messageAcionado.parentNode.removeChild(messageAcionado)
})
}
exemplosMessage.appendChild(messageAcionado);
});
});
</script>
</div>
<script src="../../core-init.js"></script>
</body>
</html>