You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
730 B

4 years ago
import Sequelize from 'sequelize';
4 years ago
/**
* @param {Object} props
* @param {import('sequelize/types').Sequelize} props.db
*/
4 years ago
const UserEntity = ({db}) => (
db.define('Users', {
uuid: {type: Sequelize.DataTypes.UUID, defaultValue: Sequelize.UUIDV4},
token: Sequelize.TEXT,
tokenExpiry: Sequelize.DATE,
email: Sequelize.TEXT,
username: Sequelize.TEXT,
paswd: Sequelize.TEXT,
role: Sequelize.TEXT,
firstIp: Sequelize.TEXT,
bannedUntil: Sequelize.DATE,
banReason: Sequelize.TEXT,
4 years ago
restoreCode: Sequelize.TEXT,
restoreExpiry: Sequelize.DATE
4 years ago
}, {
indexes: [
{ fields: ['token'], unique: true },
{ fields: ['email'], unique: true }
]
4 years ago
})
);
export default UserEntity;