summary refs log tree commit diff
path: root/src/models
diff options
context:
space:
mode:
authorFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-04-06 22:06:53 +0200
committerFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-04-06 22:06:53 +0200
commit7d9cc0efbf536bcf9bf596360bd8a12652d85b95 (patch)
treec94b9cb0f8ec402ad5f1ee80d9889d1e315155dd /src/models
parent:bug: fix Message Model (diff)
downloadserver-7d9cc0efbf536bcf9bf596360bd8a12652d85b95.tar.xz
:art: remove _id and __v from response
Diffstat (limited to 'src/models')
-rw-r--r--src/models/Message.ts71
-rw-r--r--src/models/index.ts28
2 files changed, 69 insertions, 30 deletions
diff --git a/src/models/Message.ts b/src/models/Message.ts

index bb3c2d5b..15f00cf4 100644 --- a/src/models/Message.ts +++ b/src/models/Message.ts
@@ -190,39 +190,50 @@ export const Embed = { ], }; -export const MessageSchema = new Schema({ - id: String, - channel_id: String, - author_id: String, - webhook_id: String, - guild_id: String, - application_id: String, - content: String, - timestamp: Date, - edited_timestamp: Date, - tts: Boolean, - mention_everyone: Boolean, - mention_user_ids: [String], - mention_role_ids: [String], - mention_channel_ids: [String], - attachments: [Attachment], - embeds: [Embed], - reactions: [Reaction], - nonce: Schema.Types.Mixed, // can be a long or a string - pinned: Boolean, - type: { type: Number }, - activity: { - type: Number, - party_id: String, - }, - flags: Types.Long, - stickers: [], - message_reference: { - message_id: String, +export const MessageSchema = new Schema( + { + id: String, channel_id: String, + author_id: String, + webhook_id: String, guild_id: String, + application_id: String, + content: String, + timestamp: Date, + edited_timestamp: Date, + tts: Boolean, + mention_everyone: Boolean, + mention_user_ids: [String], + mention_role_ids: [String], + mention_channel_ids: [String], + attachments: [Attachment], + embeds: [Embed], + reactions: [Reaction], + nonce: Schema.Types.Mixed, // can be a long or a string + pinned: Boolean, + type: { type: Number }, + activity: { + type: Number, + party_id: String, + }, + flags: Types.Long, + stickers: [], + message_reference: { + message_id: String, + channel_id: String, + guild_id: String, + }, }, -}); + { + toJSON: { + transform: function (doc, ret) { + delete ret.mention_channel_ids; + delete ret.mention_user_ids; + delete ret.mention_role_ids; + }, + }, + } +); MessageSchema.virtual("author", { ref: UserModel, diff --git a/src/models/index.ts b/src/models/index.ts new file mode 100644
index 00000000..bb6024fe --- /dev/null +++ b/src/models/index.ts
@@ -0,0 +1,28 @@ +import mongoose from "mongoose"; + +export * from "./Ban"; +export * from "./Channel"; +export * from "./Emoji"; +export * from "./Guild"; +export * from "./Invite"; +export * from "./Member"; +export * from "./Role"; +export * from "./User"; +export * from "./Activity"; +export * from "./Application"; +export * from "./Interaction"; +export * from "./Message"; +export * from "./Status"; +export * from "./VoiceState"; +export * from "./Event"; + +mongoose.plugin((schema: any) => { + schema.options.toJSON = { + virtuals: true, + versionKey: false, + transform(doc: any, ret: any) { + delete ret._id; + delete ret.__v; + }, + }; +});