const { Client } = require("revolt.js"); const { Collection } = require('@discordjs/collection'); const { token, mongoDB, api } = require("./botconfig.json"); const logger = require('./functions/logger'); const checkPolls = require('./functions/checkPolls') const color = require("./functions/colorCodes"); const client = new Client({ baseURL: api }); const Uploader = require("revolt-uploader"); const fetch = require("wumpfetch"); const TranslationHandler = require('./handlers/translation'); const DatabaseHandler = require('./handlers/database'); client.Uploader = new Uploader(client); client.config = require("./config"); client.translate = new TranslationHandler(); client.logger = require('./functions/logger'); client.botConfig = require("./botconfig.json"); client.database = new DatabaseHandler(mongoDB); client.database.connectToDatabase(); client.database.cacheSweeper(client); client.database.guildSweeper(client); ["reactions", "paginate", "timeout", "polls", "used", "messageCollector", "messageEdit"].forEach(x => client[x] = new Map()); ["aliases", "commands", "event", "functions"].forEach(x => client[x] = new Collection()); ["command", "event", "function"].forEach(x => require(`./handlers/${x}`)(client)); client.once("ready", async () => { logger.success('Bot Ready', `${client.user.username} is ready`); //client.database.connectToDatabase(); //client.database.cacheSweeper(client); //client.database.guildSweeper(client); await checkPolls(client); }); process.on("unhandledRejection", (reason, p) => { console.log(color("%", "%4[Error_Handling] :: Unhandled Rejection/Catch%c")); console.log(reason); console.log(p) }); process.on("uncaughtException", (err, origin) => { console.log(color("%", "%4[Error_Handling] :: Uncaught Exception/Catch%c")); console.log(err); console.log(origin) }); process.on("uncaughtExceptionMonitor", (err, origin) => { console.log(color("%", "%4[Error_Handling] :: Uncaught Exception/Catch (MONITOR)%c")); console.log(err); console.log(origin) }); client.loginBot(token);