summaryrefslogtreecommitdiff
path: root/dist/commands/server
diff options
context:
space:
mode:
Diffstat (limited to 'dist/commands/server')
-rw-r--r--dist/commands/server/oldestmember.js55
-rw-r--r--dist/commands/server/quotemessage.js78
-rw-r--r--dist/commands/server/randommember.js39
-rw-r--r--dist/commands/server/roleinfo.js62
-rw-r--r--dist/commands/server/roles.js43
5 files changed, 277 insertions, 0 deletions
diff --git a/dist/commands/server/oldestmember.js b/dist/commands/server/oldestmember.js
new file mode 100644
index 0000000..5e4b962
--- /dev/null
+++ b/dist/commands/server/oldestmember.js
@@ -0,0 +1,55 @@
+"use strict";
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+const discord_js_commando_1 = require("discord.js-commando");
+const emoji_random_1 = __importDefault(require("emoji-random"));
+const date_fns_1 = require("date-fns");
+const common_tags_1 = require("common-tags");
+module.exports = class OldestMemberServer extends discord_js_commando_1.Command {
+ constructor(client) {
+ super(client, {
+ name: 'oldestmember',
+ aliases: [
+ 'oldest-member',
+ 'oldestuser',
+ 'oldest-user',
+ 'oldest'
+ ],
+ group: 'fun',
+ memberName: 'oldestmember',
+ description: 'Checks who the oldest member on the server is.',
+ examples: ['uwu!oldestmember'],
+ throttling: {
+ usages: 5,
+ duration: 30
+ },
+ userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
+ clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
+ guildOnly: true
+ });
+ }
+ run(msg) {
+ var _a;
+ const oldest = (_a = msg.guild.members
+ .cache.sort((member1, member2) => {
+ const timestamp1 = member1.user.createdTimestamp;
+ const timestamp2 = member2.user.createdTimestamp;
+ if (timestamp1 > timestamp2) {
+ return 1;
+ }
+ else if (timestamp1 < timestamp2) {
+ return -1;
+ }
+ return 0;
+ })
+ .first()) === null || _a === void 0 ? void 0 : _a.user;
+ const { createdAt } = oldest;
+ const age = date_fns_1.formatDistance(createdAt, new Date());
+ const date = date_fns_1.formatRelative(createdAt, new Date());
+ msg.reply(common_tags_1.stripIndents `${oldest.tag} is the oldest member in this server.
+ Their account is **${age}** old (created **${date}**).` + ' ' + emoji_random_1.default.random());
+ }
+};
+//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2xkZXN0bWVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL3NlcnZlci9vbGRlc3RtZW1iZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2REFBK0Q7QUFDL0QsZ0VBQWdDO0FBQ2hDLHVDQUF5RDtBQUN6RCw2Q0FBMEM7QUFFMUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxNQUFNLGtCQUFtQixTQUFRLDZCQUFPO0lBQ3JELFlBQVksTUFBTTtRQUNkLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDVixJQUFJLEVBQUUsY0FBYztZQUNwQixPQUFPLEVBQUU7Z0JBQ0wsZUFBZTtnQkFDZixZQUFZO2dCQUNaLGFBQWE7Z0JBQ2IsUUFBUTthQUNYO1lBQ0QsS0FBSyxFQUFFLEtBQUs7WUFDWixVQUFVLEVBQUUsY0FBYztZQUMxQixXQUFXLEVBQUUsZ0RBQWdEO1lBQzdELFFBQVEsRUFBRSxDQUFDLGtCQUFrQixDQUFDO1lBQzlCLFVBQVUsRUFBRTtnQkFDUixNQUFNLEVBQUUsQ0FBQztnQkFDVCxRQUFRLEVBQUUsRUFBRTthQUNmO1lBQ0QsZUFBZSxFQUFFLENBQUMsZUFBZSxFQUFFLHNCQUFzQixDQUFDO1lBQzFELGlCQUFpQixFQUFFLENBQUMsZUFBZSxFQUFFLHNCQUFzQixDQUFDO1lBQzVELFNBQVMsRUFBRSxJQUFJO1NBQ2xCLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRCxHQUFHLENBQUMsR0FBb0I7O1FBQ3BCLE1BQU0sTUFBTSxTQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTzthQUMzQixLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUFFO1lBQzdCLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUE7WUFDaEQsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQTtZQUVoRCxJQUFJLFVBQVUsR0FBRyxVQUFVLEVBQUU7Z0JBQ3pCLE9BQU8sQ0FBQyxDQUFBO2FBQ1g7aUJBQU0sSUFBSSxVQUFVLEdBQUcsVUFBVSxFQUFFO2dCQUNoQyxPQUFPLENBQUMsQ0FBQyxDQUFBO2FBQ1o7WUFDRCxPQUFPLENBQUMsQ0FBQTtRQUNaLENBQUMsQ0FBQzthQUNHLEtBQUssRUFBRSwwQ0FBRSxJQUFJLENBQUE7UUFFdEIsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLE1BQU0sQ0FBQTtRQUM1QixNQUFNLEdBQUcsR0FBRyx5QkFBYyxDQUFDLFNBQVMsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLENBQUE7UUFDakQsTUFBTSxJQUFJLEdBQUcseUJBQWMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFBO1FBQ2xELEdBQUcsQ0FBQyxLQUFLLENBQUMsMEJBQVksQ0FBQSxHQUFHLE1BQU0sQ0FBQyxHQUFHOzZCQUNkLEdBQUcscUJBQXFCLElBQUksTUFBTSxHQUFHLEdBQUcsR0FBRyxzQkFBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUE7SUFDbkYsQ0FBQztDQUNKLENBQUMifQ== \ No newline at end of file
diff --git a/dist/commands/server/quotemessage.js b/dist/commands/server/quotemessage.js
new file mode 100644
index 0000000..e61cdb6
--- /dev/null
+++ b/dist/commands/server/quotemessage.js
@@ -0,0 +1,78 @@
+"use strict";
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+const discord_js_commando_1 = require("discord.js-commando");
+const discord_js_1 = require("discord.js");
+const truncateText_js_1 = __importDefault(require("../../utils/truncateText.js"));
+const path_1 = __importDefault(require("path"));
+module.exports = class QuoteMessageServer extends discord_js_commando_1.Command {
+ constructor(client) {
+ super(client, {
+ name: 'quotemessage',
+ aliases: [
+ 'quote-message',
+ 'quotemsg',
+ 'quote-msg'
+ ],
+ group: 'fun',
+ memberName: 'quotemessage',
+ description: 'Quote a message from a text channel.',
+ examples: ['uwu!quotemessage 424936127154094080'],
+ throttling: {
+ usages: 5,
+ duration: 30
+ },
+ userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
+ clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
+ args: [
+ {
+ key: 'mMsg',
+ prompt: 'What message would you like to quote?',
+ type: 'message',
+ label: 'message ID'
+ }
+ ]
+ });
+ }
+ run(msg, { mMsg }) {
+ let emb = new discord_js_1.MessageEmbed()
+ .setColor(0xFFCC4D)
+ .setTimestamp(mMsg.createdAt)
+ .setAuthor(mMsg.author.tag, mMsg.author.avatarUrl)
+ .addFields([
+ {
+ name: 'Channel',
+ value: mMsg.channel.toString()
+ },
+ {
+ name: 'Message',
+ value: `[Jump to](https://discordapp.com/channels/${mMsg.guild.id}/${mMsg.channel.id}/${mMsg.id})`
+ }
+ ]);
+ console.debug('Does the message have content:', Boolean(mMsg.content));
+ if (mMsg.content)
+ emb.setDescription(truncateText_js_1.default(mMsg.content));
+ let messageImage;
+ const extensions = ['.png', '.jpg', '.jpeg', '.gif', '.webp'];
+ const linkRegex = /https?:\/\/(?:\w+\.)?[\w-]+\.[\w]{2,3}(?:\/[\w-_.]+)+\.(?:png|jpg|jpeg|gif|webp)/;
+ const imageEmbed = mMsg.embeds.find(msgEmbed => msgEmbed.type === 'rich' && msgEmbed.image && extensions.includes(path_1.default.extname(msgEmbed.image.url)));
+ if (imageEmbed)
+ messageImage = imageEmbed.image.url;
+ const attachment = mMsg.attachments.find(file => extensions.includes(path_1.default.extname(file.url)));
+ if (attachment) {
+ messageImage = attachment.url;
+ }
+ if (!messageImage) {
+ const linkMatch = mMsg.content.match(linkRegex);
+ if (linkMatch && extensions.includes(path_1.default.extname(linkMatch[0]))) {
+ [messageImage] = linkMatch;
+ }
+ }
+ if (messageImage)
+ emb.setImage(messageImage);
+ msg.say(emb);
+ }
+};
+//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVvdGVtZXNzYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL3NlcnZlci9xdW90ZW1lc3NhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2REFBK0Q7QUFFL0QsMkNBQTBDO0FBQzFDLGtGQUE0QztBQUM1QyxnREFBdUI7QUFFdkIsTUFBTSxDQUFDLE9BQU8sR0FBRyxNQUFNLGtCQUFtQixTQUFRLDZCQUFPO0lBQ3JELFlBQVksTUFBTTtRQUNkLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDVixJQUFJLEVBQUUsY0FBYztZQUNwQixPQUFPLEVBQUU7Z0JBQ0wsZUFBZTtnQkFDZixVQUFVO2dCQUNWLFdBQVc7YUFDZDtZQUNELEtBQUssRUFBRSxLQUFLO1lBQ1osVUFBVSxFQUFFLGNBQWM7WUFDMUIsV0FBVyxFQUFFLHNDQUFzQztZQUNuRCxRQUFRLEVBQUUsQ0FBQyxxQ0FBcUMsQ0FBQztZQUNqRCxVQUFVLEVBQUU7Z0JBQ1IsTUFBTSxFQUFFLENBQUM7Z0JBQ1QsUUFBUSxFQUFFLEVBQUU7YUFDZjtZQUNELGVBQWUsRUFBRSxDQUFDLGVBQWUsRUFBRSxzQkFBc0IsQ0FBQztZQUMxRCxpQkFBaUIsRUFBRSxDQUFDLGVBQWUsRUFBRSxzQkFBc0IsQ0FBQztZQUM1RCxJQUFJLEVBQUU7Z0JBQ0Y7b0JBQ0ksR0FBRyxFQUFFLE1BQU07b0JBQ1gsTUFBTSxFQUFFLHVDQUF1QztvQkFDL0MsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsS0FBSyxFQUFFLFlBQVk7aUJBQ3RCO2FBQ0o7U0FDSixDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsR0FBRyxDQUFDLEdBQW9CLEVBQUUsRUFBRSxJQUFJLEVBQUU7UUFDOUIsSUFBSSxHQUFHLEdBQUcsSUFBSSx5QkFBWSxFQUFFO2FBQ3ZCLFFBQVEsQ0FBQyxRQUFRLENBQUM7YUFDbEIsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7YUFDNUIsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO2FBQ2pELFNBQVMsQ0FBQztZQUNQO2dCQUNJLElBQUksRUFBRSxTQUFTO2dCQUNmLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRTthQUNqQztZQUNEO2dCQUNJLElBQUksRUFBRSxTQUFTO2dCQUNmLEtBQUssRUFBRSw2Q0FBNkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLEVBQUUsR0FBRzthQUNyRztTQUNKLENBQUMsQ0FBQTtRQUdOLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFBO1FBQ3RFLElBQUksSUFBSSxDQUFDLE9BQU87WUFBRSxHQUFHLENBQUMsY0FBYyxDQUFDLHlCQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUE7UUFHdEQsSUFBSSxZQUFZLENBQUE7UUFFaEIsTUFBTSxVQUFVLEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFFN0QsTUFBTSxTQUFTLEdBQUcsa0ZBQWtGLENBQUM7UUFHckcsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQy9CLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxNQUFNLElBQUksUUFBUSxDQUFDLEtBQUssSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLGNBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUNsSCxDQUFBO1FBQ0QsSUFBSSxVQUFVO1lBQUUsWUFBWSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFBO1FBR25ELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxjQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDN0YsSUFBSSxVQUFVLEVBQUU7WUFDWixZQUFZLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQTtTQUNoQztRQUdELElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDZixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQTtZQUMvQyxJQUFJLFNBQVMsSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLGNBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDOUQsQ0FBQyxZQUFZLENBQUMsR0FBRyxTQUFTLENBQUE7YUFDN0I7U0FDSjtRQUdELElBQUksWUFBWTtZQUFFLEdBQUcsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUE7UUFFNUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNoQixDQUFDO0NBQ0osQ0FBQyJ9 \ No newline at end of file
diff --git a/dist/commands/server/randommember.js b/dist/commands/server/randommember.js
new file mode 100644
index 0000000..a64f25f
--- /dev/null
+++ b/dist/commands/server/randommember.js
@@ -0,0 +1,39 @@
+"use strict";
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+const discord_js_commando_1 = require("discord.js-commando");
+const emoji_random_1 = __importDefault(require("emoji-random"));
+module.exports = class RandomMemberServer extends discord_js_commando_1.Command {
+ constructor(client) {
+ super(client, {
+ name: 'randommember',
+ aliases: [
+ 'random-member',
+ 'randomuser',
+ 'random-user',
+ 'someone',
+ '@someone',
+ ],
+ group: 'fun',
+ memberName: 'randommember',
+ description: 'Gets a random member from the server.',
+ examples: ['uwu!randommember'],
+ throttling: {
+ usages: 5,
+ duration: 30
+ },
+ userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
+ clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY']
+ });
+ }
+ run(msg) {
+ if (msg.channel.type === 'dm') {
+ const members = [this.client.user, msg.channel.recipient];
+ return msg.reply(`I choose ${members[Math.floor(Math.random() * members.length)].username}! ${emoji_random_1.default.random()}`);
+ }
+ return msg.reply(`I choose ${msg.guild.members.cache.random().displayName}! ${emoji_random_1.default.random()}`);
+ }
+};
+//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZG9tbWVtYmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL3NlcnZlci9yYW5kb21tZW1iZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2REFBK0Q7QUFDL0QsZ0VBQWdDO0FBRWhDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsTUFBTSxrQkFBbUIsU0FBUSw2QkFBTztJQUNyRCxZQUFZLE1BQU07UUFDZCxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ1YsSUFBSSxFQUFFLGNBQWM7WUFDcEIsT0FBTyxFQUFFO2dCQUNMLGVBQWU7Z0JBQ2YsWUFBWTtnQkFDWixhQUFhO2dCQUNiLFNBQVM7Z0JBQ1QsVUFBVTthQUNiO1lBQ0QsS0FBSyxFQUFFLEtBQUs7WUFDWixVQUFVLEVBQUUsY0FBYztZQUMxQixXQUFXLEVBQUUsdUNBQXVDO1lBQ3BELFFBQVEsRUFBRSxDQUFDLGtCQUFrQixDQUFDO1lBQzlCLFVBQVUsRUFBRTtnQkFDUixNQUFNLEVBQUUsQ0FBQztnQkFDVCxRQUFRLEVBQUUsRUFBRTthQUNmO1lBQ0QsZUFBZSxFQUFFLENBQUMsZUFBZSxFQUFFLHNCQUFzQixDQUFDO1lBQzFELGlCQUFpQixFQUFFLENBQUMsZUFBZSxFQUFFLHNCQUFzQixDQUFDO1NBQy9ELENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRCxHQUFHLENBQUMsR0FBb0I7UUFDcEIsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUU7WUFDM0IsTUFBTSxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzFELE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FBQyxZQUFZLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxRQUFRLEtBQUssc0JBQUssQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDbkg7UUFDRCxPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsWUFBWSxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsV0FBVyxLQUFLLHNCQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7Q0FDSixDQUFDIn0= \ No newline at end of file
diff --git a/dist/commands/server/roleinfo.js b/dist/commands/server/roleinfo.js
new file mode 100644
index 0000000..7e12a10
--- /dev/null
+++ b/dist/commands/server/roleinfo.js
@@ -0,0 +1,62 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+const discord_js_commando_1 = require("discord.js-commando");
+const discord_js_1 = require("discord.js");
+module.exports = class RoleInfoServer extends discord_js_commando_1.Command {
+ constructor(client) {
+ super(client, {
+ name: 'roleinfo',
+ aliases: [
+ 'role-info'
+ ],
+ group: 'fun',
+ memberName: 'roleinfo',
+ description: 'Gets information on a specified role.',
+ examples: ['uwu!roleinfo @Role'],
+ throttling: {
+ usages: 5,
+ duration: 30
+ },
+ userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
+ clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
+ guildOnly: true,
+ args: [
+ {
+ key: 'rRole',
+ prompt: 'What role would you like to get information on?',
+ type: 'role'
+ }
+ ]
+ });
+ }
+ run(msg, { rRole }) {
+ let emb = new discord_js_1.MessageEmbed()
+ .setColor(0xFFCC4D)
+ .setTitle(`${rRole.name} (${rRole.id})`)
+ .setTimestamp(rRole.createdAt)
+ .addFields([
+ {
+ name: '🔢 Position',
+ value: `${rRole.position + 1} (raw position: ${rRole.rawPosition})`
+ },
+ {
+ name: '**@** Mentionable',
+ value: rRole.mentionable ? 'Yes' : 'No'
+ },
+ {
+ name: "💡 Display separately",
+ value: rRole.hoist ? "Yes" : "No"
+ },
+ {
+ name: "👥 Members",
+ value: rRole.members.size
+ },
+ {
+ name: "🔍 Color",
+ value: `Use ${msg.anyUsage(`color ${rRole.hexColor}`)}`
+ }
+ ]);
+ msg.say(emb);
+ }
+};
+//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZWluZm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbWFuZHMvc2VydmVyL3JvbGVpbmZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsNkRBQStEO0FBRS9ELDJDQUEwQztBQUUxQyxNQUFNLENBQUMsT0FBTyxHQUFHLE1BQU0sY0FBZSxTQUFRLDZCQUFPO0lBQ2pELFlBQVksTUFBTTtRQUNkLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDVixJQUFJLEVBQUUsVUFBVTtZQUNoQixPQUFPLEVBQUU7Z0JBQ0wsV0FBVzthQUNkO1lBQ0QsS0FBSyxFQUFFLEtBQUs7WUFDWixVQUFVLEVBQUUsVUFBVTtZQUN0QixXQUFXLEVBQUUsdUNBQXVDO1lBQ3BELFFBQVEsRUFBRSxDQUFDLG9CQUFvQixDQUFDO1lBQ2hDLFVBQVUsRUFBRTtnQkFDUixNQUFNLEVBQUUsQ0FBQztnQkFDVCxRQUFRLEVBQUUsRUFBRTthQUNmO1lBQ0QsZUFBZSxFQUFFLENBQUMsZUFBZSxFQUFFLHNCQUFzQixDQUFDO1lBQzFELGlCQUFpQixFQUFFLENBQUMsZUFBZSxFQUFFLHNCQUFzQixDQUFDO1lBQzVELFNBQVMsRUFBRSxJQUFJO1lBQ2YsSUFBSSxFQUFFO2dCQUNGO29CQUNJLEdBQUcsRUFBRSxPQUFPO29CQUNaLE1BQU0sRUFBRSxpREFBaUQ7b0JBQ3pELElBQUksRUFBRSxNQUFNO2lCQUNmO2FBQ0o7U0FDSixDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsR0FBRyxDQUFDLEdBQW9CLEVBQUUsRUFBRSxLQUFLLEVBQUU7UUFDL0IsSUFBSSxHQUFHLEdBQUcsSUFBSSx5QkFBWSxFQUFFO2FBQ3ZCLFFBQVEsQ0FBQyxRQUFRLENBQUM7YUFDbEIsUUFBUSxDQUFDLEdBQUcsS0FBSyxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRSxHQUFHLENBQUM7YUFDdkMsWUFBWSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUM7YUFDN0IsU0FBUyxDQUFDO1lBQ1A7Z0JBQ0ksSUFBSSxFQUFFLGFBQWE7Z0JBQ25CLEtBQUssRUFBRSxHQUFHLEtBQUssQ0FBQyxRQUFRLEdBQUcsQ0FBQyxtQkFBbUIsS0FBSyxDQUFDLFdBQVcsR0FBRzthQUN0RTtZQUNEO2dCQUNJLElBQUksRUFBRSxtQkFBbUI7Z0JBQ3pCLEtBQUssRUFBRSxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUk7YUFDMUM7WUFDRDtnQkFDSSxJQUFJLEVBQUUsdUJBQXVCO2dCQUM3QixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJO2FBQ3BDO1lBQ0Q7Z0JBQ0ksSUFBSSxFQUFFLFlBQVk7Z0JBQ2xCLEtBQUssRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUk7YUFDNUI7WUFDRDtnQkFDSSxJQUFJLEVBQUUsVUFBVTtnQkFDaEIsS0FBSyxFQUFFLE9BQU8sR0FBRyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFO2FBQzFEO1NBQ0osQ0FBQyxDQUFBO1FBQ04sR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNoQixDQUFDO0NBQ0osQ0FBQyJ9 \ No newline at end of file
diff --git a/dist/commands/server/roles.js b/dist/commands/server/roles.js
new file mode 100644
index 0000000..cb2f6b7
--- /dev/null
+++ b/dist/commands/server/roles.js
@@ -0,0 +1,43 @@
+"use strict";
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+const discord_js_commando_1 = require("discord.js-commando");
+const discord_js_1 = require("discord.js");
+const truncateText_js_1 = __importDefault(require("../../utils/truncateText.js"));
+module.exports = class RolesServer extends discord_js_commando_1.Command {
+ constructor(client) {
+ super(client, {
+ name: 'roles',
+ aliases: [
+ 'list-roles',
+ 'listroles',
+ 'roles-list',
+ 'roleslist'
+ ],
+ group: 'fun',
+ memberName: 'roles',
+ description: 'Lists all the roles on the current server.',
+ examples: ['uwu!roles'],
+ throttling: {
+ usages: 5,
+ duration: 30
+ },
+ userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
+ clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
+ guildOnly: true
+ });
+ }
+ run(msg) {
+ let emb = new discord_js_1.MessageEmbed()
+ .setColor(0xFFCC4D)
+ .setTitle('All Roles')
+ .setDescription(truncateText_js_1.default(msg.guild.roles
+ .cache.sort((role1, role2) => role2.position - role1.position)
+ .array()
+ .join(', ')));
+ msg.say(emb);
+ }
+};
+//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbWFuZHMvc2VydmVyL3JvbGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkRBQStEO0FBRS9ELDJDQUEwQztBQUMxQyxrRkFBNEM7QUFFNUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxNQUFNLFdBQVksU0FBUSw2QkFBTztJQUM5QyxZQUFZLE1BQU07UUFDZCxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ1YsSUFBSSxFQUFFLE9BQU87WUFDYixPQUFPLEVBQUU7Z0JBQ0wsWUFBWTtnQkFDWixXQUFXO2dCQUNYLFlBQVk7Z0JBQ1osV0FBVzthQUNkO1lBQ0QsS0FBSyxFQUFFLEtBQUs7WUFDWixVQUFVLEVBQUUsT0FBTztZQUNuQixXQUFXLEVBQUUsNENBQTRDO1lBQ3pELFFBQVEsRUFBRSxDQUFDLFdBQVcsQ0FBQztZQUN2QixVQUFVLEVBQUU7Z0JBQ1IsTUFBTSxFQUFFLENBQUM7Z0JBQ1QsUUFBUSxFQUFFLEVBQUU7YUFDZjtZQUNELGVBQWUsRUFBRSxDQUFDLGVBQWUsRUFBRSxzQkFBc0IsQ0FBQztZQUMxRCxpQkFBaUIsRUFBRSxDQUFDLGVBQWUsRUFBRSxzQkFBc0IsQ0FBQztZQUM1RCxTQUFTLEVBQUUsSUFBSTtTQUNsQixDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsR0FBRyxDQUFDLEdBQW9CO1FBQ3BCLElBQUksR0FBRyxHQUFHLElBQUkseUJBQVksRUFBRTthQUN2QixRQUFRLENBQUMsUUFBUSxDQUFDO2FBQ2xCLFFBQVEsQ0FBQyxXQUFXLENBQUM7YUFDckIsY0FBYyxDQUFDLHlCQUFFLENBQ2QsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLO2FBQ1YsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQzthQUM3RCxLQUFLLEVBQUU7YUFDUCxJQUFJLENBQUMsSUFBSSxDQUFDLENBQ2xCLENBQUMsQ0FBQTtRQUNOLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDaEIsQ0FBQztDQUNKLENBQUMifQ== \ No newline at end of file