Ethan Lane
58d1541e47
#5 Reviewed-on: https://gitea.vylpes.xyz/External/card-drop/pulls/17 Co-authored-by: Ethan Lane <ethan@vylpes.com> Co-committed-by: Ethan Lane <ethan@vylpes.com>
37 lines
No EOL
753 B
TypeScript
37 lines
No EOL
753 B
TypeScript
import * as dotenv from "dotenv";
|
|
import { CoreClient } from "./client/client";
|
|
import { IntentsBitField } from "discord.js";
|
|
import Registry from "./registry";
|
|
|
|
dotenv.config();
|
|
|
|
const requiredConfigs: string[] = [
|
|
"BOT_TOKEN",
|
|
"BOT_VER",
|
|
"BOT_AUTHOR",
|
|
"BOT_OWNERID",
|
|
"BOT_CLIENTID",
|
|
"DB_HOST",
|
|
"DB_PORT",
|
|
"DB_AUTH_USER",
|
|
"DB_AUTH_PASS",
|
|
"DB_SYNC",
|
|
"DB_LOGGING",
|
|
]
|
|
|
|
requiredConfigs.forEach(config => {
|
|
if (!process.env[config]) {
|
|
throw `${config} is required in .env`;
|
|
}
|
|
});
|
|
|
|
const client = new CoreClient([
|
|
IntentsBitField.Flags.Guilds,
|
|
IntentsBitField.Flags.GuildMembers,
|
|
]);
|
|
|
|
Registry.RegisterCommands();
|
|
Registry.RegisterEvents();
|
|
Registry.RegisterButtonEvents();
|
|
|
|
client.start(); |