diff --git a/package.json b/package.json index 373968f..434a284 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,8 @@ "main": "index.js", "scripts": { "build": "tsc", - "prepare": "ts-patch install -s" + "prepare": "ts-patch install -s", + "lint": "eslint" }, "keywords": [], "author": "", diff --git a/src/index.ts b/src/index.ts index b824368..86a8702 100644 --- a/src/index.ts +++ b/src/index.ts @@ -4,14 +4,11 @@ import path from "path"; import pino, { transport } from "pino"; import { Sequelize } from "sequelize-typescript"; -config({ - quiet:true -}) - +// Setup logger const logger = pino(transport({ targets: [ { - target: path.resolve(__dirname,"logger"), + target: path.resolve(__dirname, "logger"), }, { target: "pino-pretty" @@ -19,6 +16,27 @@ const logger = pino(transport({ ] })) +// Load env +const env = config({ + quiet: true +}) +if (env.error) { + logger.error(env.error) +} else { + logger.info(`🗃️ Load .env with ${Object.keys(env.parsed ?? {}).length} keys.`) +} + +// Database Setup +const sequelize = new Sequelize({ + models: [path.join(__dirname + 'database/**/*.model.ts')], + dialect: "sqlite", + storage: "database.sqlite", + logging(sql) { + logger.info(sql) + } +}) + +// Setup discord bot const intents = new IntentsBitField() .add(GatewayIntentBits.Guilds) .add(GatewayIntentBits.GuildMembers) @@ -31,19 +49,13 @@ const client = new Client({ intents: intents }) -const sequelize = new Sequelize({ - models: [path.join(__dirname + 'database/**/*.model.ts')], - dialect: "sqlite", - storage: "database.sqlite", - logging(sql, timing) { - logger.info(sql) - }, -}) - client.on(Events.Debug, (info) => logger.debug(info)); client.on(Events.Warn, (info) => logger.warn(info)); client.on(Events.Error, (error) => logger.error(error)); -Promise.all([/*client.login(process.env.TOKEN),*/ sequelize.authenticate().then(()=>sequelize.sync({alter:true}))]).then(async () => { - +// Start all (database and bot) +Promise.all([client.login(process.env.TOKEN), sequelize.authenticate().then(() => sequelize.sync({ alter: true }))]).then(async () => { + logger.info("🎉 Bot started Successfully !") +}, (error) => { + logger.fatal(error) }) \ No newline at end of file diff --git a/src/interactions/index.ts b/src/interactions/index.ts new file mode 100644 index 0000000..7e8f980 --- /dev/null +++ b/src/interactions/index.ts @@ -0,0 +1,5 @@ +import { Client } from "discord.js"; + +export default function registerInteraction(client: Client) { + client.application +} \ No newline at end of file