Updated the Member.ts model
This commit is contained in:
parent
ec4a391cb0
commit
cb2ebde014
@ -1,24 +1,38 @@
|
||||
import {model, ObjectId, Schema, Types} from "mongoose";
|
||||
import {model, ObjectId, Schema} from "mongoose";
|
||||
import { IKeyRole } from "@models/AccessKey";
|
||||
import { fieldEncryption } from "mongoose-field-encryption";
|
||||
|
||||
export interface IMember {
|
||||
projectId: ObjectId,
|
||||
memberId: ObjectId,
|
||||
role: IKeyRole,
|
||||
accepted: boolean
|
||||
}
|
||||
|
||||
const MemberSchema = new Schema<IMember>({
|
||||
projectId: {
|
||||
type: Types.ObjectId,
|
||||
type: String,
|
||||
required: true
|
||||
},
|
||||
memberId: {
|
||||
type: Types.ObjectId,
|
||||
type: String,
|
||||
required: true
|
||||
},
|
||||
role: {
|
||||
type: Number,
|
||||
enum: IKeyRole,
|
||||
default: IKeyRole.MANAGE
|
||||
},
|
||||
accepted: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
}
|
||||
});
|
||||
|
||||
MemberSchema.plugin(fieldEncryption, {
|
||||
fields: ["projectId", "memberId", "role", "accepted"],
|
||||
secret: process.env.ENC_KEY,
|
||||
saltGenerator: () => process.env.SIG_KEY,
|
||||
});
|
||||
|
||||
export const Member = model<IMember>("members", MemberSchema);
|
Loading…
x
Reference in New Issue
Block a user