forked from codacy-badger/realmeme-superfart-discord-bot
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathundeploy.js
45 lines (37 loc) · 1.27 KB
/
undeploy.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
const fs = require("node:fs");
const { REST } = require("@discordjs/rest");
const { Routes } = require("discord-api-types/v9");
require("dotenv").config();
const commands = [];
const commandFiles = fs
.readdirSync("./commands")
.filter((file) => file.endsWith(".js"));
const clientId = process.env.CLIENTID;
const guildId = process.env.GUILDID;
for (const file of commandFiles) {
const command = require(`./commands/${file}`);
commands.push(command.data.toJSON());
}
const rest = new REST({ version: "9" }).setToken(process.env.DISCORD);
// This will only remove guild commands, since guild commands can create duplicated commands in the specified guild.
(async () => {
try {
console.log("Started removing guild application (/) commands.");
await rest
.get(Routes.applicationGuildCommands(clientId, guildId))
.then((data) => {
const promises = [];
for (const command of data) {
const deleteUrl = `${Routes.applicationGuildCommands(
clientId,
guildId
)}/${command.id}`;
promises.push(rest.delete(deleteUrl));
}
return Promise.all(promises);
});
console.log("Successfully removed guild application (/) commands.");
} catch (error) {
console.error(error);
}
})();