From ce224e200b437beceecb2bb7e815848b80158c94 Mon Sep 17 00:00:00 2001 From: Madeline <46743919+MaddyUnderStars@users.noreply.github.com> Date: Fri, 22 Jul 2022 22:30:38 +1000 Subject: [PATCH] Bot update --- slowcord/.vscode/launch.json | 20 ----------------- slowcord/bot/.vscode/launch.json | 15 +++++++++++++ slowcord/{ => bot}/.vscode/tasks.json | 0 slowcord/bot/package-lock.json | Bin 18840 -> 25682 bytes slowcord/bot/package.json | 7 +++--- slowcord/bot/src/Bot.ts | 7 +++--- slowcord/bot/src/commands/index.ts | 22 ++++++++++-------- slowcord/bot/src/commands/instance.ts | 31 ++++++++++++++++++++++++-- slowcord/bot/src/index.ts | 6 ++++- slowcord/bot/tsconfig.json | 12 +++++----- slowcord/login/package-lock.json | Bin 358505 -> 358517 bytes 11 files changed, 75 insertions(+), 45 deletions(-) delete mode 100644 slowcord/.vscode/launch.json create mode 100644 slowcord/bot/.vscode/launch.json rename slowcord/{ => bot}/.vscode/tasks.json (100%) diff --git a/slowcord/.vscode/launch.json b/slowcord/.vscode/launch.json deleted file mode 100644 index 6b41b246..00000000 --- a/slowcord/.vscode/launch.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "configurations": [ - { - "name": "ts-node", - "type": "node", - "request": "launch", - "args": [ - "${relativeFile}" - ], - "runtimeArgs": [ - "-r", - "ts-node/register" - ], - "cwd": "${workspaceRoot}", - "protocol": "inspector", - "internalConsoleOptions": "openOnSessionStart" - } - - ] -} \ No newline at end of file diff --git a/slowcord/bot/.vscode/launch.json b/slowcord/bot/.vscode/launch.json new file mode 100644 index 00000000..92765e22 --- /dev/null +++ b/slowcord/bot/.vscode/launch.json @@ -0,0 +1,15 @@ +{ + "configurations": [ + { + "name": "Slowcord Bot", + "program": "${workspaceFolder}/build/index.js", + "request": "launch", + "skipFiles": [ + "/**" + ], + "type": "node", + "preLaunchTask": "npm: build" + } + + ] +} \ No newline at end of file diff --git a/slowcord/.vscode/tasks.json b/slowcord/bot/.vscode/tasks.json similarity index 100% rename from slowcord/.vscode/tasks.json rename to slowcord/bot/.vscode/tasks.json diff --git a/slowcord/bot/package-lock.json b/slowcord/bot/package-lock.json index 4a31bd611b201d31c0f9dbd2a2ab3daf4145d6a1..0d72daabf9e0030bd328251a8af50c971e398106 100644 GIT binary patch literal 25682 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 NMODy({lhvt5x2ij` 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 { + onMessageCreate = async (msg: Message) => { const prefix = process.env.PREFIX as string; - if (msg.content.indexOf(prefix) === -1) return; if (msg.author.bot) return; + if (msg.content && msg.content.indexOf(prefix) === -1) return; const content = msg.content.slice(prefix.length).split(" "); const cmd = content.shift(); @@ -38,7 +37,7 @@ export default class Bot { const command = this.commands[cmd]; if (!command) return; - command.exec({ + await command.exec({ user: msg.author, member: msg.member, guild: msg.guild, diff --git a/slowcord/bot/src/commands/index.ts b/slowcord/bot/src/commands/index.ts index ef2d2a22..d3b39e0f 100644 --- a/slowcord/bot/src/commands/index.ts +++ b/slowcord/bot/src/commands/index.ts @@ -14,20 +14,24 @@ export type Command = { exec: (ctx: CommandContext) => any; }; -const walk = async (path: string): Promise => { +const walk = async (path: string) => { const files = fs.readdirSync(path); - const out: Command[] = []; + const out = []; for (var file of files) { - if (file.indexOf("index") !== -1) continue; - - var imported = await import(`${path}/${file}`); + if (fs.statSync(`${path}/${file}`).isDirectory()) continue; + if (file.indexOf("index") !== -1) + continue; + if (file.indexOf(".js") !== file.length - 3) continue; + var imported = (await import(`./${file}`)).default; + out.push(imported); } - return out; }; export const getCommands = async () => { - const map: { [key: string]: Command; } = {}; - (await walk("./build/commands")).forEach((val) => map[val.name] = val); + const map: { [key: string]: Command } = {}; + for (var cmd of await walk("./build/commands")) { + map[cmd.name] = cmd; + } return map; -}; \ No newline at end of file +}; diff --git a/slowcord/bot/src/commands/instance.ts b/slowcord/bot/src/commands/instance.ts index 7fcfaef4..d1b08cef 100644 --- a/slowcord/bot/src/commands/instance.ts +++ b/slowcord/bot/src/commands/instance.ts @@ -1,8 +1,35 @@ import { Command } from "./index.js"; +import { User, Guild, Message } from "@fosscord/util"; + +const cache: { [key: string]: number; } = { + users: 0, + guilds: 0, + messages: 0, + lastChecked: 0, +}; export default { name: "instance", - exec: ({ message }) => { - message.reply("Test"); + exec: async ({ message }) => { + if (Date.now() > cache.lastChecked + parseInt(process.env.CACHE_TTL as string)) { + cache.users = await User.count(); + cache.guilds = await Guild.count(); + cache.messages = await Message.count(); + cache.lastChecked = Date.now(); + } + + return message.reply({ + embeds: [{ + title: "Instance Stats", + footer: { + text: `Last checked: ${Math.floor((Date.now() - cache.lastChecked) / (1000 * 60))} minutes ago`, + }, + fields: [ + { inline: true, name: "Total Users", value: cache.users.toString() }, + { inline: true, name: "Total Guilds", value: cache.guilds.toString() }, + { inline: true, name: "Total Messages", value: cache.messages.toString() }, + ] + }] + }); } } as Command; \ No newline at end of file diff --git a/slowcord/bot/src/index.ts b/slowcord/bot/src/index.ts index 2113b3a8..ae69111b 100644 --- a/slowcord/bot/src/index.ts +++ b/slowcord/bot/src/index.ts @@ -1,6 +1,7 @@ import "dotenv/config"; import Fosscord from "fosscord-gopnik"; import Bot from "./Bot.js"; // huh? +import { initDatabase } from "@fosscord/util"; const client = new Fosscord.Client({ intents: ["GUILD_MESSAGES"], @@ -17,4 +18,7 @@ const bot = new Bot(client); client.on("ready", bot.onReady); client.on("messageCreate", bot.onMessageCreate); -client.login(process.env.TOKEN); \ No newline at end of file +(async () => { + await initDatabase(); + await client.login(process.env.TOKEN); +})(); \ No newline at end of file diff --git a/slowcord/bot/tsconfig.json b/slowcord/bot/tsconfig.json index 08c1fe6a..05bfc5c7 100644 --- a/slowcord/bot/tsconfig.json +++ b/slowcord/bot/tsconfig.json @@ -11,10 +11,10 @@ // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */ /* Language and Environment */ - "target": "ES2022", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */ - // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */ + "target": "ES6", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */ + "lib": ["ES2021"], /* Specify a set of bundled library declaration files that describe the target runtime environment. */ // "jsx": "preserve", /* Specify what JSX code is generated. */ - // "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */ + "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */ // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */ // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h' */ // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */ @@ -24,7 +24,7 @@ // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */ /* Modules */ - "module": "ES2022", /* Specify what module code is generated. */ + "module": "CommonJS", /* Specify what module code is generated. */ // "rootDir": "./", /* Specify the root folder within your source files. */ "moduleResolution": "node", /* Specify how TypeScript looks up a file from a given module specifier. */ // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */ @@ -45,7 +45,7 @@ // "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */ // "declarationMap": true, /* Create sourcemaps for d.ts files. */ // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */ - // "sourceMap": true, /* Create source map files for emitted JavaScript files. */ + "sourceMap": true, /* Create source map files for emitted JavaScript files. */ // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If `declaration` is true, also designates a file that bundles all .d.ts output. */ "outDir": "./build", /* Specify an output folder for all emitted files. */ // "removeComments": true, /* Disable emitting comments. */ @@ -79,7 +79,7 @@ // "strictNullChecks": true, /* When type checking, take into account `null` and `undefined`. */ // "strictFunctionTypes": true, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */ // "strictBindCallApply": true, /* Check that the arguments for `bind`, `call`, and `apply` methods match the original function. */ - // "strictPropertyInitialization": true, /* Check for class properties that are declared but not set in the constructor. */ + "strictPropertyInitialization": false, /* Check for class properties that are declared but not set in the constructor. */ // "noImplicitThis": true, /* Enable error reporting when `this` is given the type `any`. */ // "useUnknownInCatchVariables": true, /* Type catch clause variables as 'unknown' instead of 'any'. */ // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */ diff --git a/slowcord/login/package-lock.json b/slowcord/login/package-lock.json index 05d385a3d05dff7a5b18d031e02907431d9c4903..82eac102b87cf9b4d37d6e9a7c10d47d93a7d415 100644 GIT binary patch delta 51 zcmaF)LG