fix(GuildEmojiRoleManager): bug in #remove (#5666)

This commit is contained in:
Shubham Parihar
2021-05-28 15:39:51 +05:30
committed by GitHub
parent b90b0c3cfa
commit c89bdd7566

View File

@@ -74,16 +74,16 @@ class GuildEmojiRoleManager {
remove(roleOrRoles) { remove(roleOrRoles) {
if (!Array.isArray(roleOrRoles) && !(roleOrRoles instanceof Collection)) roleOrRoles = [roleOrRoles]; if (!Array.isArray(roleOrRoles) && !(roleOrRoles instanceof Collection)) roleOrRoles = [roleOrRoles];
const resolvedRoles = []; const resolvedRoleIDs = [];
for (const role of roleOrRoles.values()) { for (const role of roleOrRoles.values()) {
const resolvedRole = this.guild.roles.resolveID(role); const roleID = this.guild.roles.resolveID(role);
if (!resolvedRole) { if (!roleID) {
return Promise.reject(new TypeError('INVALID_ELEMENT', 'Array or Collection', 'roles', role)); return Promise.reject(new TypeError('INVALID_ELEMENT', 'Array or Collection', 'roles', role));
} }
resolvedRoles.push(resolvedRole); resolvedRoleIDs.push(roleID);
} }
const newRoles = this._roles.keyArray().filter(role => !resolvedRoles.includes(role.id)); const newRoles = this._roles.keyArray().filter(id => !resolvedRoleIDs.includes(id));
return this.set(newRoles); return this.set(newRoles);
} }