Files
2026-04-01 23:49:19 +02:00

52 lines
1015 B
JavaScript

const { DataTypes } = require('sequelize');
module.exports = sequelize => {
const User = sequelize.define(
'User',
{
id: {
type: DataTypes.INTEGER,
autoIncrement: true,
primaryKey: true,
},
keycloakId: {
type: DataTypes.STRING,
allowNull: true,
unique: true,
},
name: {
type: DataTypes.STRING,
allowNull: false,
},
email: {
type: DataTypes.STRING,
allowNull: false,
unique: true,
validate: {
isEmail: true,
},
},
avatarUrl: {
type: DataTypes.STRING,
allowNull: false,
},
score: {
type: DataTypes.INTEGER,
defaultValue: 0,
},
},
{
timestamps: false,
tableName: 'users',
}
);
User.prototype.toJSON = function () {
const values = { ...this.get() };
if (values.id !== undefined) values.id = String(values.id);
return values;
};
return User;
};