wumpus-slash
TypeScript icon, indicating that this package has built-in type declarations

1.0.2 • Public • Published

Install with: npm i wumpus-slash

A framework to use slash-commands easily in discord.js. The framework is mostly documented, if you are confused with what data to fill in see this

Setup

const CommandManager = require('slashcommands');
const { Client, Intents } = require('discord.js');
const client = new Client({ ws: { intents: Intents.ALL } });

client.on('ready', () => {
    const slashManager = CommandManager(client);
});
client.login('VERY_SECRET_TOKEN');

NOTE: you can only create command manager in a ready event or once the client is ready. The package requires your Client ID which is sent once your client is ready.

Create a command

slashManager.create({
    name: "ping",
    description: "Ping pong command"
});

Edit a command

slashManager.edit('805404611866394644', {
   name: 'ping',
   description: 'An edited ping pong command!',
});

Delete a command

slashManager.delete('805404611866394644');

Overwrite commands

slashManager.bulkOverwrite([
   {
      name: 'ping',
      description: 'Overwritten ping pong command',
   },
]);

Get a command(s)

// get one command by id
slashManager.getCommand('805404611866394644');

// get all application commands
slashManager.getCommands();

Interactions

When a user invoked a slash command an Interaction event will trigger. If you need interaction's properties: here Here's an example:

slashManager.on('interaction', (interaction) => {
   if (interaction.data.name === 'ping') {
      interaction.reply({
         type: 'ChannelMessageWithSource',
         data: { content: 'Pong!' },
      });
   }
});

Guild Commands

In order to modify a specific guild's commands use: slashManager.guilds('GUILD_ID'). This will return a Command Manager for that guild, all of the methods above are the same.

Package Sidebar

Install

npm i wumpus-slash

Weekly Downloads

3

Version

1.0.2

License

Apache-2.0

Unpacked Size

30.2 kB

Total Files

15

Last publish

Collaborators

  • linker-123