UNPKG

get-express-starter

Version:

Get production ready express boilerplate with a single command

47 lines (42 loc) 878 B
const mongoose = require('mongoose'); const { toJSON } = require('./plugins'); const { tokenTypes } = require('../config/tokens'); const tokenSchema = mongoose.Schema( { token: { type: String, required: true, index: true, }, user: { type: mongoose.SchemaTypes.ObjectId, ref: 'User', required: true, }, type: { type: String, enum: [ tokenTypes.REFRESH, tokenTypes.RESET_PASSWORD, tokenTypes.VERIFY_EMAIL, tokenTypes.VERIFY_PAYMENT, tokenTypes.THIRD_WEB, ], required: true, }, expires: { type: Date, required: true, }, blacklisted: { type: Boolean, default: false, }, }, { timestamps: true, } ); tokenSchema.plugin(toJSON); const Token = mongoose.model('Token', tokenSchema); module.exports = Token;