3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-05-12 12:55:02 +00:00

Finish preliminary rework, ready to test

This commit is contained in:
Dark 2021-06-02 04:07:50 +02:00
parent 57893e7f76
commit d0a1beb809
No known key found for this signature in database
GPG key ID: 2CD6ACB6B0A87B8A
177 changed files with 854 additions and 707 deletions

View file

@ -4,6 +4,7 @@ import { commandTypeHelpers as ct } from "../../../commandTypes";
import { chunkArray, sorter, trimLines } from "../../../utils";
import { refreshMembersIfNeeded } from "../refreshMembers";
import { sendErrorMessage } from "../../../pluginUtils";
import { Role, TextChannel } from "discord.js";
export const RolesCmd = utilityCmd({
trigger: "roles",
@ -21,7 +22,9 @@ export const RolesCmd = utilityCmd({
async run({ message: msg, args, pluginData }) {
const { guild } = pluginData;
let roles: Array<{ _memberCount?: number } & Role> = Array.from((msg.channel as TextChannel).guild.roles.values());
let roles: Array<{ _memberCount?: number } & Role> = Array.from(
(msg.channel as TextChannel).guild.roles.cache.values(),
);
let sort = args.sort;
if (args.search) {
@ -33,8 +36,8 @@ export const RolesCmd = utilityCmd({
await refreshMembersIfNeeded(guild);
// If the user requested role member counts as well, calculate them and sort the roles by their member count
const roleCounts: Map<string, number> = Array.from(guild.members.values()).reduce((map, member) => {
for (const roleId of member.roles) {
const roleCounts: Map<string, number> = Array.from(guild.members.cache.values()).reduce((map, member) => {
for (const roleId of member.roles.cache) {
if (!map.has(roleId)) map.set(roleId, 0);
map.set(roleId, map.get(roleId) + 1);
}
@ -97,14 +100,14 @@ export const RolesCmd = utilityCmd({
});
if (i === 0) {
msg.channel.createMessage(
msg.channel.send(
trimLines(`
${args.search ? "Total roles found" : "Total roles"}: ${roles.length}
\`\`\`py\n${roleLines.join("\n")}\`\`\`
`),
);
} else {
msg.channel.createMessage("```py\n" + roleLines.join("\n") + "```");
msg.channel.send("```py\n" + roleLines.join("\n") + "```");
}
}
},