summary refs log tree commit diff
path: root/dist/models/Message.js
diff options
context:
space:
mode:
Diffstat (limited to 'dist/models/Message.js')
-rw-r--r--dist/models/Message.js54
1 files changed, 44 insertions, 10 deletions
diff --git a/dist/models/Message.js b/dist/models/Message.js

index 2a10d7c3..a8e2e64a 100644 --- a/dist/models/Message.js +++ b/dist/models/Message.js
@@ -6,6 +6,9 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.MessageModel = exports.MessageSchema = exports.MessageType = void 0; const mongoose_1 = require("mongoose"); const Database_1 = __importDefault(require("../util/Database")); +const User_1 = require("./User"); +const Member_1 = require("./Member"); +const Role_1 = require("./Role"); var MessageType; (function (MessageType) { MessageType[MessageType["DEFAULT"] = 0] = "DEFAULT"; @@ -87,22 +90,16 @@ exports.MessageSchema = new mongoose_1.Schema({ channel_id: mongoose_1.Types.Long, author_id: mongoose_1.Types.Long, webhook_id: mongoose_1.Types.Long, + guild_id: mongoose_1.Types.Long, application_id: mongoose_1.Types.Long, content: String, timestamp: Number, edited_timestamp: Number, tts: Boolean, mention_everyone: Boolean, - mentions: [mongoose_1.Types.Long], - mention_roles: [mongoose_1.Types.Long], - mention_channels: [ - { - id: mongoose_1.Types.Long, - guild_id: mongoose_1.Types.Long, - type: { type: Number }, - name: String, - }, - ], + mention_user_ids: [mongoose_1.Types.Long], + mention_role_ids: [mongoose_1.Types.Long], + mention_channel_ids: [mongoose_1.Types.Long], attachments: [Attachment], embeds: [Embed], reactions: [Reaction], @@ -121,6 +118,43 @@ exports.MessageSchema = new mongoose_1.Schema({ guild_id: mongoose_1.Types.Long, }, }); +exports.MessageSchema.virtual("author", { + ref: User_1.UserModel, + localField: "author_id", + foreignField: "id", + justOne: true, +}); +exports.MessageSchema.virtual("member", { + ref: Member_1.MemberModel, + localField: "author_id", + foreignField: "id", + justOne: true, +}); +exports.MessageSchema.virtual("mentions", { + ref: User_1.UserModel, + localField: "mention_user_ids", + foreignField: "id", + justOne: true, +}); +exports.MessageSchema.virtual("mention_roles", { + ref: Role_1.RoleModel, + localField: "mention_role_ids", + foreignField: "id", + justOne: true, +}); +exports.MessageSchema.virtual("mention_channels", { + ref: Role_1.RoleModel, + localField: "mention_role_ids", + foreignField: "id", + justOne: true, +}); +// TODO: missing Application Model +// MessageSchema.virtual("application", { +// ref: Application, +// localField: "mention_role_ids", +// foreignField: "id", +// justOne: true, +// }); // @ts-ignore exports.MessageModel = Database_1.default.model("Message", exports.MessageSchema, "messages"); //# sourceMappingURL=Message.js.map \ No newline at end of file