aboutsummaryrefslogtreecommitdiffstats
path: root/src/models/Room.js
blob: 0110b469f0c08503c2ab8f864b583d4688caf6b4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import mongoose from 'mongoose';

const ROOM_TYPE_GROUP = 'group';
const ROOM_TYPE_DIRECT = 'direct';

const roomSchema = new mongoose.Schema({
    name: {
        type: String,
        maxlength: 100
    },
    type: {
        type: String,
        enum: [ROOM_TYPE_GROUP, ROOM_TYPE_DIRECT],
        default: ROOM_TYPE_GROUP
    },
    members: [{
        type: mongoose.Schema.Types.ObjectId,
        ref: 'User'
    }]
}, {
    timestamps: true
});

const Room = mongoose.model('Room', roomSchema);

export default Room;
export { ROOM_TYPE_GROUP, ROOM_TYPE_DIRECT };