Files
modstagram-back/models/ChatRoomMessageModel.js
payacom 3f416a7a60 full
2026-08-31 20:45:41 +03:30

40 lines
914 B
JavaScript

const mongoose = require('mongoose')
const chatRoomMessageSchema = new mongoose.Schema({
roomId: {
type: mongoose.Schema.Types.ObjectId,
ref: 'ChatRoom',
required: true,
index: true
},
senderId: {
type: mongoose.Schema.Types.ObjectId,
ref: 'User',
required: true,
index: true
},
content: { type: String, trim: true },
file: { type: String },
fileType: {
type: String,
enum: ['image', 'video', 'file', 'voice', 'location']
},
replyToId: {
type: mongoose.Schema.Types.ObjectId,
ref: 'ChatRoomMessage'
},
createdAt: { type: Date, default: Date.now, index: true },
reactions: [
{
userId: {
type: mongoose.Schema.Types.ObjectId,
ref: 'User',
required: true
},
emoji: { type: String, required: true, trim: true }
}
]
})
module.exports = mongoose.model('ChatRoomMessage', chatRoomMessageSchema)