UNPKG

kritsana135-hooray-server

Version:

for server

39 lines (33 loc) 862 B
import mongoose from "mongoose" import mongooseDelete from "mongoosejs-soft-delete" const permission = new mongoose.Schema({ permissionName: { type: String, trim: true, }, code: { type: String, trim: true, }, scopes: [String], }) const PermissionRole = new mongoose.Schema({ roleKey: { type: String, required: [true, "Role key is required"] }, permissions: [permission], }) const ApplicationSchema = new mongoose.Schema( { _id: { type: mongoose.Schema.Types.ObjectId }, name: { type: String }, appKey: { type: String }, data: Object, rolePermissions: [PermissionRole], updatedBy: { type: mongoose.Schema.Types.ObjectId }, }, { timestamps: true, } ) ApplicationSchema.plugin(mongooseDelete) export default (connection) => connection.model("applications", ApplicationSchema, "applications")