@dreesq/serpent
Version:
An express wrapper for developing fast web applications
64 lines (61 loc) • 1.1 kB
JavaScript
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const {USER_STATUS_ACTIVE} = require('../constants');
/**
* User model
*/
const schema = new Schema({
email: {
type: String,
unique: true,
trim: true,
lowercase: true
},
name: {
type: String,
required: true
},
password: {
type: String,
required: true
},
stripeId: {
type: String
},
facebookId: {
type: Number
},
googleId: {
type: Number
},
ts: {
type: Number
},
locale: {
type: String,
required: true,
default: 'en'
},
role: {
type: Schema.ObjectId,
default: null,
ref: 'Role'
},
permissions: {
type: [
{
type: Schema.ObjectId,
ref: 'Permission'
}
],
default: []
},
status: {
type: Number,
required: true,
default: USER_STATUS_ACTIVE
}
}, {
timestamps: true
});
module.exports = schema;