From 24558d6d6f5c83c4ff5a2ac2149febb09bcda7bf Mon Sep 17 00:00:00 2001 From: Almeida Date: Wed, 22 Sep 2021 20:31:26 +0100 Subject: [PATCH] Remove map and extra iteration --- backend/src/plugins/Utility/commands/RolesCmd.ts | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/backend/src/plugins/Utility/commands/RolesCmd.ts b/backend/src/plugins/Utility/commands/RolesCmd.ts index 5e7726dd..c42d4b54 100644 --- a/backend/src/plugins/Utility/commands/RolesCmd.ts +++ b/backend/src/plugins/Utility/commands/RolesCmd.ts @@ -34,19 +34,17 @@ export const RolesCmd = utilityCmd({ if (args.counts) { await refreshMembersIfNeeded(guild); - const roleCounts = new Map(); for (const member of guild.members.cache.values()) { - for (const id of member.roles.cache.keys()) { - roleCounts.set(id, (roleCounts.get(id) ?? 0) + 1); + for (const role of member.roles.cache.values()) { + // @ts-expect-error + role._memberCount ??= 0; + // @ts-expect-error + role._memberCount++; } } - // The "everyone" role always has all members in it - roleCounts.set(guild.id, guild.memberCount); - - for (const role of roles) { - role._memberCount = roleCounts.get(role.id) ?? 0; - } + // The "@everyone" role always has all members in it + roles.find((r) => r.id === guild.id)!._memberCount = guild.memberCount; if (!sort) sort = "-memberCount"; roles.sort((a, b) => {