Files
multy-stub/server/routers/smoke-tracker/model/auth.js

34 lines
749 B
JavaScript

const { Schema, model } = require('mongoose')
const {
SMOKE_TRACKER_AUTH_MODEL_NAME,
SMOKE_TRACKER_USER_MODEL_NAME,
} = require('../const')
const schema = new Schema({
login: { type: String, required: true, unique: true },
hash: { type: String, required: true },
salt: { type: String, required: true },
userId: { type: Schema.Types.ObjectId, ref: SMOKE_TRACKER_USER_MODEL_NAME },
created: {
type: Date,
default: () => new Date().toISOString(),
},
})
schema.set('toJSON', {
virtuals: true,
versionKey: false,
transform: function (doc, ret) {
delete ret._id
},
})
schema.virtual('id').get(function () {
return this._id.toHexString()
})
exports.SmokeAuthModel = model(SMOKE_TRACKER_AUTH_MODEL_NAME, schema)