import { HashDriverContract } from "@ioc:Adonis/Core/Hash"; // const bcrypt = require("bcrypt"); import bcrypt from "bcryptjs"; const saltRounds = 10; export class LaravelHash implements HashDriverContract { public async make(value: string) { const _hashedValue = bcrypt.hashSync(value, saltRounds); return _hashedValue; } public async verify(hashedValue: string, plainValue: string) { let newHash: string; if (hashedValue.includes("$2y$10$")) { newHash = hashedValue.replace("$2y$10$", "$2a$10$"); } else { newHash = hashedValue; } return await bcrypt.compareSync(plainValue, newHash); } }