Skip to content
Snippets Groups Projects
RoleMenu.js 1.2 KiB
Newer Older
const {Schema, model} = require('mongoose');

const RoleMenuSchema = new Schema({
    guildID: {
        type: Number,
        required: true,
        validate: {
            validator: Number.isInteger,
            message: '{VALUE} is not an integer value'
        }
    },
    channelID: {
        type: Number,
        required: true,
        validate: {
            validator: Number.isInteger,
            message: '{VALUE} is not an integer value'
        }
    },
    messageID: {
        type: Number,
        required: true,
        validate: {
            validator: Number.isInteger,
            message: '{VALUE} is not an integer value'
        }
    },
    verification: {
        type: Boolean,
        required: true
    },
    type: {
        type: String,
        required: true
    },
    roles: [{
        text: {
            type: String,
            required: true
        },
        value: {
            type: String,
            required: true
        },
        roleID: {
            type: String,
            required: true,
        }
    }]
});

RoleMenuSchema.index({
    guildID: 1,
    channelID: 1,
    messageID: 1,
}, {
    unique: true
});

module.exports = model('rolemenu', RoleMenuSchema);