@shadow-dev/core
Version:
A modular core framework for Discord bot development, providing commands, buttons, menus, middleware, and more.
41 lines (40 loc) • 1.42 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CommandManager = void 0;
class CommandManager {
constructor(client) {
this.client = client;
}
async registerCommand(command) {
CommandManager.commands.set(command.name, command);
}
getCommand(commandName) {
return CommandManager.commands.get(commandName);
}
async registerCommands(guildId) {
const commandsArray = Array.from(CommandManager.commands.values());
if (commandsArray.length === 0) {
console.log("⚠️ No commands have been registered.");
return;
}
if (guildId) {
const guild = this.client.guilds.cache.get(guildId);
if (guild) {
await guild.commands.set(commandsArray);
console.log(`✅ Commands registered for Guild: ${guildId}`);
}
else {
console.log(`⚠️ Guild ${guildId} not found.`);
}
}
else {
await this.client.application?.commands.set(commandsArray);
console.log("✅ Commands registered globally.");
}
}
static getAllCommands() {
return CommandManager.commands; // Provide a method to access all commands if needed
}
}
exports.CommandManager = CommandManager;
CommandManager.commands = new Map(); // Store commands globally