76 lines
1.6 KiB
TypeScript

import * as readline from "node:readline/promises";
import { stdin as input, stdout as output } from "node:process";
import pack from "../../package.json";
import { Console } from "node:console";
import moment from "moment";
import startupTime from "../tools/startupTime";
import client from "../client";
import guild from "./guild";
import global from "./global";
const console = new Console(process.stdout);
const rl = readline.createInterface(input, output);
rl.on("line", async (msg) => {
const [command, ...args] = msg.split(" ");
if (!command) return;
switch (command.toLowerCase()) {
case "version": {
console.log(`Channel filter V${pack.version} by AstroGD®`);
break;
}
case "uptime": {
console.log(`Application is running for ${moment(startupTime).fromNow(true)}`);
break;
}
case "clear": {
console.clear();
break;
}
case "guild": {
await guild(args);
break;
}
case "help": {
printHelp();
break;
}
case "global": {
await global(args);
break;
}
case "servercount": {
console.log(`This bot is on ${client.guilds.cache.size} guilds`);
break;
}
default: {
console.log(`Unknown command. Try "help" for help`);
break;
}
}
rl.prompt();
});
function printHelp() {
console.log(`Commands:
version
uptime
guild
global
help
servercount
clear`);
}