Olá, depois de colocar await em frente ao compare, só me retorna "message": "Usuario ou senha inválido!" no postman, sendo a senha correta ou não.
const database = require("../models");
const {compare} = require("bcryptjs")
const {sign} = require("jsonwebtoken")
const jsonSecret = require("../config/jsonSecret")
// dto = "Data Transfer Object"usado para transportar os dados neste caso o login
class AuthService {
  //criar função de usuario no login 
  async login(dto) {
    const usuario = await database.Usuarios.findOne({
      attributes: ["id", "email", "senha"],
      where: {
        email: dto.email,
      },
    });
    if (!usuario) {
      throw new Error("usuario não cadastrado!");
    }
    //verificando senha
    //compare retorna um valor booleano sendo true ou false
    const senhaIguais = await compare(dto.senha, usuario.senha)
    if(!senhaIguais){
        throw new Error('Usuario ou senha inválido!')
    }
    //autenticação- sign tem 3 infos payload secret e options 
    const accessToken = sign({
        id: usuario.id, 
        email: usuario.email
    }, jsonSecret.secret, {
      expiresIn: 86400
    })
    return { accessToken }
  }
}
module.exports = AuthService;
 
            