const { Client, GatewayIntentBits, Partials, Collection } = require('discord.js'); const { loadSlashCommandsEvents, loadContextMenuEvents, loadModalEvents, loadButtonEvents, loadEvents } = require('./utils/eventHandler.js') const { autoDeployCommands } = require('./utils/autodeploy.js'); require('dotenv').config(); const mongoURI = process.env.MONGOURI; const { connect } = require('mongoose'); const client = new Client({ intents: [ GatewayIntentBits.Guilds, GatewayIntentBits.GuildMessages, GatewayIntentBits.GuildMembers, GatewayIntentBits.MessageContent, GatewayIntentBits.DirectMessages, GatewayIntentBits.GuildVoiceStates ], partials: [ Partials.GuildMember, Partials.User, Partials.Message, Partials.Channel ] }); client.commands = new Collection(); client.events = new Collection(); client.modals = new Collection(); loadSlashCommandsEvents(client); loadContextMenuEvents(client); loadButtonEvents(client); loadModalEvents(client); loadEvents(client); let token = "" if (process.env.NODE_ENV === 'dev') { console.log("Running in development mode."); token = process.env.DEVTOKEN; autoDeployCommands() } else { console.log("Running in production mode."); token = process.env.PRODTOKEN; } client.login(token); connect(mongoURI, {}).then(() => { console.log('Connected to MongoDB'); })