Olá Pessoal,
Gostaria de compartilhar a forma como busquei e mostrei as mensagens de erro.
Como o validity é um objeto, fiz um loop for retornando somente os as chaves com valores true:
function tipoDeErro(dado){
for(let i in dado.target.validity){
if(dado.target.validity[i]) {
return i
}
}
}
Depois inseri a função tipoDeErro no objeto menssagensDeErro para buscar o erro específico:
if(!evento.target.validity.valid){
evento.target.parentElement.classList.add('input-container--invalido');
const elementoAlvo = evento.target.parentElement.querySelector('.input-mensagem-erro');
elementoAlvo.textContent = menssagensDeErro[tipoInput][tipoDeErro(evento)];
}else{
evento.target.parentElement.classList.remove('input-container--invalido');
}
=)