nyx/util/dist/cmds.js

40 lines
1.1 KiB
JavaScript
Raw Normal View History

2021-06-24 09:53:19 +02:00
const { readdirSync } = require("fs");
const ms = require("ms");
function cmds() {
let categories = [];
readdirSync("./commands").forEach(dir => {
const dirs = readdirSync(`./commands/${dir}`).filter(file =>
file.endsWith(".js")
);
let commands = [];
dirs.map(cmd => {
const file = require(`../../commands/${dir}/${cmd}`);
commands.push({
name: file.name ? file.name : "No command name",
description: file.description
? file.description
: "No command description",
aliases: file.aliases ? file.aliases : "No command aliases",
usage: file.usage ? `C.${file.name} ${file.usage}` : `C.${file.name}`,
timeout: file.timeout
? ms(file.timeout, { long: true })
: "No command cooldown",
BotPermission: file.BotPerm
? file.BotPerm
: "No required bot permission",
UserPermission: file.UserPerm
? file.UserPerm
: "No required user permission",
});
});
let data = {
name: dir,
commands,
};
categories.push(data);
});
return categories;
}
module.exports = { cmds };