31 lines
606 B
JavaScript
31 lines
606 B
JavaScript
const mongoose = require('mongoose');
|
|
const mongooseStringQuery = require('mongoose-string-query');
|
|
const mongooseTimestamps = require('mongoose-timestamp');
|
|
|
|
const EmailSchema = new mongoose.Schema(
|
|
{
|
|
user: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
domain: {
|
|
type: String,
|
|
required: true,
|
|
},
|
|
label: {
|
|
type: String,
|
|
},
|
|
},
|
|
|
|
{ minimize: false },
|
|
);
|
|
|
|
EmailSchema.virtual('address').get(function() {
|
|
return this.user + '@' + this.domain;
|
|
});
|
|
|
|
EmailSchema.plugin(mongooseStringQuery);
|
|
EmailSchema.plugin(mongooseTimestamps);
|
|
|
|
module.exports = EmailSchema;
|