CHAINR / backend /src /models /Conversation.js
chainr-ai's picture
Upload 8536 files
4888678 verified
const mongoose = require('mongoose');
const conversationSchema = new mongoose.Schema({
title: {
type: String,
required: true,
trim: true,
maxlength: 100
},
userId: {
type: mongoose.Schema.Types.ObjectId,
ref: 'User',
required: true
},
messageCount: {
type: Number,
default: 0
},
lastMessageAt: {
type: Date,
default: Date.now
},
isArchived: {
type: Boolean,
default: false
},
tags: [{
type: String,
trim: true
}]
}, {
timestamps: true
});
// Index for better query performance
conversationSchema.index({ userId: 1, createdAt: -1 });
conversationSchema.index({ userId: 1, lastMessageAt: -1 });
module.exports = mongoose.model('Conversation', conversationSchema);