const { Sequelize, DataTypes } = require('sequelize'); const bcrypt = require('bcrypt'); module.exports = (sequelize) => { const User = sequelize.define('users', { id: { type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true, }, name: { type: DataTypes.STRING, allowNull: false, }, username: { type: DataTypes.STRING, allowNull: false, unique: true, }, email: { type: DataTypes.STRING, allowNull: false, unique: true, }, password: { type: DataTypes.STRING, allowNull: false, }, jobTitle: { type: DataTypes.STRING, allowNull: false, }, reset_token: { type: DataTypes.STRING, }, reset_token_expiry: { type: DataTypes.DATE, }, sessionid: { type: DataTypes.STRING, }, }, { hooks: { beforeCreate: async (user) => { user.password = await bcrypt.hash(user.password, 10); }, }, timestamps: false, // Disabling timestamps here }); return User; };