From f1b494d4eddb511acc875fe71392c397636f644a Mon Sep 17 00:00:00 2001 From: Luca <43251906+LukeIsHereToDevelop@users.noreply.github.com> Date: Mon, 16 Aug 2021 17:42:46 +0200 Subject: [PATCH] =?UTF-8?q?=E2=9C=8F=EF=B8=8F=20v1.0=20Release?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 28 +++++++++++ assets/logo.png | Bin 0 -> 98238 bytes package.json | 33 +++++++++++++ src/OPCommands.js | 65 +++++++++++++++++++++++++ src/handlers/Command.js | 102 ++++++++++++++++++++++++++++++++++++++++ src/handlers/Event.js | 31 ++++++++++++ test/commands/say.js | 20 ++++++++ test/commands/test.js | 12 +++++ test/events/ready.js | 10 ++++ test/index.js | 19 ++++++++ 10 files changed, 320 insertions(+) create mode 100644 README.md create mode 100644 assets/logo.png create mode 100644 package.json create mode 100644 src/OPCommands.js create mode 100644 src/handlers/Command.js create mode 100644 src/handlers/Event.js create mode 100644 test/commands/say.js create mode 100644 test/commands/test.js create mode 100644 test/events/ready.js create mode 100644 test/index.js diff --git a/README.md b/README.md new file mode 100644 index 0000000..6483131 --- /dev/null +++ b/README.md @@ -0,0 +1,28 @@ +

+ OPCommands +

+ +--- + +## What's this? + +OPCommands is an advanced Discord.js Command Handler that supports slash commands and more! + +## Requirements + +* Discord.js v13+ +* Node.js v16.6.0+ + +## Installation + +```bash +npm install --save opcommands +``` + +## Documentation + +Here is the official Documentation of OPCommands: https://opcommands.lukedev.tk + +## Contributing + +Feel free to report bugs, suggest new things or make pull requests to the GitHub repository of OPCommands. It would be really appreciated! \ No newline at end of file diff --git a/assets/logo.png b/assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..618f2f08a5aa84e628d80bcb7fdfeec452bfb4b5 GIT binary patch literal 98238 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%0DPr{f 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 (https://lukedev.tk)", + "homepage": "https://opcommands.lukedev.tk", + "bugs": { + "url": "https://github.com/LukeIsHereToDevelop/opcommands/issues" + }, + "repository": "github:LukeIsHereToDevelop/opcommands", + "license": "GPL-3.0-or-later", + "engines": { + "node": "^16.6.0" + }, + "dependencies": { + "@discordjs/rest": "^0.1.0-canary.0", + "discord-api-types": "^0.22.0", + "discord.js": "^13.0.1", + "humanize-ms": "^1.2.1", + "ms": "^2.1.3" + } +} diff --git a/src/OPCommands.js b/src/OPCommands.js new file mode 100644 index 0000000..40346a2 --- /dev/null +++ b/src/OPCommands.js @@ -0,0 +1,65 @@ +const Discord = require("discord.js"); +const EventHandler = require("./handlers/Event.js"); +const CommandHandler = require("./handlers/Command.js"); + +/** + * The main class of OPCommands. + * @class + * @requires [Node.js v16.6.0](https://nodejs.org/en/download/current/) & Discord.js v13 + * @param {Discord.Client} client + * @param {Object} options + * @example + * const OPCommands = require("opcommands"); + * const Discord = require("discord.js"); + * const client = new Discord.Client(); + * new OPCommands(client, { + * commandsDir: "commands", + * eventsDir: "events" + * }); + */ +class OPCommands { + constructor(client, options) { + if (!client) throw new Error("[OPCommands] Missing Discord client."); + if (!options) throw new Error("[OPCommands] Missing options.") + if (!options.commandsDir) throw new Error("[OPCommands] Missing commands' directory parameter on options."); + if (!options.eventsDir) throw new Error("[OPCommands] Missing events' directory parameter on options."); + this.client = client; + this.options = options; + + new CommandHandler(this, options.commandsDir); + new EventHandler(this, options.eventsDir); + } + + /** + * Sets the owner(s) of the bot. + * @param {*} owner Owner ID(s) + */ + async setBotOwner(owner) { + if (!owner) throw new Error("[OPCommands] Missing Owner ID(s)."); + if (typeof owner === "string") return this.client.owners = [owner]; + if (typeof owner === "array") return this.client.owners = owner; + throw new Error("[OPCommands] Owner parameter must be a String or Array."); + } + + /** + * Adds owner(s) of the bot. + * @param {String} owner Owner ID + */ + async addBotOwner(owner) { + if (!owner) throw new Error("[OPCommands] Missing Owner ID."); + if (typeof owner != "string") throw new Error("[OPCommands] Owner parameter must be a String."); + return this.client.owners.push(owner); + } + + /** + * Sets the limit messages. + * @param {Object} msgs New messages + */ + async setMessages(msgs) { + if (!msgs) throw new Error("[OPCommands] Missing the new messages."); + if (typeof msgs != "object") throw new Error("[OPCommands] Msgs parameter must be an Object."); + return this.client.msgs = msgs; + } +} + +module.exports = OPCommands; \ No newline at end of file diff --git a/src/handlers/Command.js b/src/handlers/Command.js new file mode 100644 index 0000000..5dc7765 --- /dev/null +++ b/src/handlers/Command.js @@ -0,0 +1,102 @@ +const Discord = require("discord.js"); +const { REST } = require('@discordjs/rest'); +const { Routes } = require('discord-api-types/v9'); +const hms = require("humanize-ms"); +const ms = require("ms"); +const fs = require("fs"); +const path = require("path"); +const { time } = require("console"); + +/** + * Command Handler + * @class + * @param {*} _this + * @param {String} commandsDir + */ +class CommandHandler { + constructor (_this, commandsDir) { + if (!this) throw new Error("[OPCommands] Internal error: missing _this parameter on Command Handler."); + if (!commandsDir) throw new Error("[OPCommands] Internal error: missing eventsDir parameter on Command Handler."); + if (!fs.existsSync(commandsDir)) throw new Error("[OPCommands] Unexisting command directory."); + + _this.client.commands = new Discord.Collection(); + const files = fs.readdirSync(commandsDir).filter(file => file.endsWith(".js")); + const commands = []; + + if (_this.options.logs) console.log("[OPCommands] Loaded " + files.length + " commands."); + for (const file of files) { + const commandFile = require(path.join(require.main.path, commandsDir, file)); + _this.client.commands.set(commandFile.name, commandFile); + const commandObj = { + name: commandFile.name, + description: commandFile.description + }; + if (commandFile.options) Object.assign(commandObj, {options: commandFile.options}); + commands.push(JSON.stringify(commandObj)); + }; + + _this.client.on("ready", async () => { + const rest = new REST({ version: "9" }).setToken(_this.client.token); + + (async () => { + try { + await rest.put( + Routes.applicationGuildCommands(_this.client.application?.id, "678352388251451433"), + { body: _this.client.commands }, + ); + } catch (error) { + console.error(error); + } + })(); + }); + + const cooldowns = new Discord.Collection(); + _this.client.on("interactionCreate", (interaction) => { + if (!interaction.isCommand()) return; + if (!_this.client.commands.has(interaction.commandName)) return; + const commandFile = _this.client.commands.get(interaction.commandName); + if (commandFile.limits.owner && !_this.client.owners.includes(interaction.user.id)) { + const ownerOnly = _this.client.msgs.ownerOnly; + if (ownerOnly) { + return ownerOnly(interaction); + } else { + return interaction.reply({ content: "You must be a Bot Owner to execute this command!", ephemeral: true }); + }; + }; + if (commandFile.limits.permissions && !interaction.member?.permissions.has(commandFile.limits.permissions)) { + const permissions = _this.client.msgs.permissions; + if (permissions) { + return permissions(interaction, commandFile.limits.permissions); + } else { + return interaction.reply({ content: "You must have the following permissions: " + commandFile.limits.permissions.join(", "), ephemeral: true }); + }; + }; + if (!cooldowns.has(`${commandFile.name}_${interaction.user.id}`)) { + if (!commandFile.limits.cooldown) return; + cooldowns.set(`${commandFile.name}_${interaction.user.id}`, Date.now()); + setTimeout(() => {cooldowns.delete(`${commandFile.name}_${interaction.user.id}`)}, hms(commandFile.limits.cooldown)) + } else { + const expirationTime = cooldowns.get(`${commandFile.name}_${interaction.user.id}`) + hms(commandFile.limits.cooldown); + if (Date.now() < expirationTime) { + const timeLeft = ms(expirationTime - Date.now()); + const cooldown = _this.client.msgs.cooldown; + if (cooldown) { + return cooldown(interaction, timeLeft); + } else { + return interaction.reply({ content: `You are in a cooldown! Please wait **${timeLeft}**.`, ephemeral: true }); + }; + }; + }; + + try { + if (_this.options.logs) console.log("[OPCommands] Command executed: " + interaction.commandName); + _this.client.commands.get(interaction.commandName).run(_this.client, interaction); + } catch (e) { + if (_this.options.logs) console.log("[OPCommands] Command error: " + interaction.commandName); + console.error(e); + } + }); + } +} + +module.exports = CommandHandler; \ No newline at end of file diff --git a/src/handlers/Event.js b/src/handlers/Event.js new file mode 100644 index 0000000..c480b24 --- /dev/null +++ b/src/handlers/Event.js @@ -0,0 +1,31 @@ +const Discord = require("discord.js"); +const fs = require("fs"); +const path = require("path"); + +/** + * Event Handler. + * @class + * @param {*} _this + * @param {String} eventsDir + */ +class EventHandler { + constructor(_this, eventsDir) { + if (!_this) throw new Error("[OPCommands] Internal error: missing _this parameter on Event Handler."); + if (!eventsDir) throw new Error("[OPCommands] Internal error: missing eventsDir parameter on Event Handler."); + if (!fs.existsSync(eventsDir)) throw new Error("[OPCommands] Unexisting event directory."); + + const files = fs.readdirSync(eventsDir).filter(file => file.endsWith(".js")); + + if (_this.options.logs) console.log("[OPCommands] Loaded " + files.length + " events."); + for (const file of files) { + const eventFile = require(path.join(require.main.path, eventsDir, file)); + if (eventFile.settings.once) { + _this.client.once(eventFile.name, (...args) => eventFile.run(_this.client, ...args)); + } else { + _this.client.on(eventFile.name, (...args) => eventFile.run(_this.client, ...args)); + }; + } + } +} + +module.exports = EventHandler; \ No newline at end of file diff --git a/test/commands/say.js b/test/commands/say.js new file mode 100644 index 0000000..ad0c4c3 --- /dev/null +++ b/test/commands/say.js @@ -0,0 +1,20 @@ +module.exports = { + name: "say", + description: "Says something.", + options: [ + { + type: 3, + name: "input", + description: "The input to return.", + required: true + } + ], + limits: { + owner: false, + permissions: ["MANAGE_MESSAGES"], + cooldown: "3s" + }, + run: (client, interaction) => { + interaction.reply({ content: interaction.options.getString("input") }); + } +} \ No newline at end of file diff --git a/test/commands/test.js b/test/commands/test.js new file mode 100644 index 0000000..5a78538 --- /dev/null +++ b/test/commands/test.js @@ -0,0 +1,12 @@ +module.exports = { + name: "test", + description: "Test command", + limits: { + owner: true, + permissions: ["ADMINISTRATOR"], + cooldown: "20s" + }, + run: (client, interaction) => { + interaction.reply({ content: "test" }); + } +} \ No newline at end of file diff --git a/test/events/ready.js b/test/events/ready.js new file mode 100644 index 0000000..8b8d7b6 --- /dev/null +++ b/test/events/ready.js @@ -0,0 +1,10 @@ +module.exports = { + name: "ready", + settings: { + once: false + }, + run: (client) => { + console.log("I'm online!"); + client.user.setActivity("OPCommands"); + } +} \ No newline at end of file diff --git a/test/index.js b/test/index.js new file mode 100644 index 0000000..7c2db3e --- /dev/null +++ b/test/index.js @@ -0,0 +1,19 @@ +const OPCommands = require("../src/OPCommands.js"); +const Discord = require("discord.js"); +const client = new Discord.Client({ + intents: 32767 +}); + +const handler = new OPCommands(client, { + commandsDir: "commands", + eventsDir: "events", + logs: true +}); +handler.setBotOwner("OWNER_ID"); +handler.setMessages({ + ownerOnly: (interaction) => interaction.reply("Missing **Bot Owner** permission."), + permissions: (interaction, perms) => interaction.reply(`You are missing the following permissions: **${perms.join(", ")}**`), + cooldown: (interaction, cooldown) => interaction.reply(`You must wait **${cooldown}** before executing another command.`) +}); + +client.login("BOT_TOKEN"); \ No newline at end of file