const { pool } = require("../modules/database") const { DefaultError } = require("../errors/errors") async function findByUserId(userId) { try { const sql = "SELECT * FROM credentials WHERE userId = ?" const rows = await pool.query(sql, [userId]) return rows[0] || null } catch (error) { throw new DefaultError(500, "Internal Server Error", error) } } async function create(userId, passwordHash) { try { const sql = "INSERT INTO credentials (userId, passwordHash) VALUES (?, ?)" const rows = await pool.query(sql, [userId, passwordHash]) return rows || null } catch (error) { throw new DefaultError(500, "Internal Server Error", error) } } async function updatePassword(userId, passwordHash) { try { const sql = "UPDATE credentials SET passwordHash = ? WHERE userId = ?" const rows = await pool.query(sql, [passwordHash, userId]) return rows.affectedRows > 0 } catch (error) { throw new DefaultError(500, "Internal Server Error", error) } } async function remove(id) { try { const sql = "DELETE FROM credentials WHERE userId = ?" const rows = await pool.query(sql, [id]) return rows.affectedRows > 0 } catch (error) { throw new DefaultError(500, "Internal Server Error", error) } } module.exports = { create, remove, findByUserId, updatePassword, }