fix(handlers/GUILD_MEMBER_ADD): check if guildMember is undefined (#729)

* fix(handlers/GUILD_MEMBER_ADD): check if guildMember is undefined

* Update src/handlers/members/GUILD_MEMBER_UPDATE.ts

Co-authored-by: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com>

* Update src/handlers/members/GUILD_MEMBER_UPDATE.ts

Co-authored-by: ITOH <72305210+itohatweb@users.noreply.github.com>

* Update src/handlers/members/GUILD_MEMBER_UPDATE.ts

Co-authored-by: ITOH <72305210+itohatweb@users.noreply.github.com>

* Update src/handlers/members/GUILD_MEMBER_UPDATE.ts

Co-authored-by: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com>

* Update src/handlers/members/GUILD_MEMBER_UPDATE.ts

Co-authored-by: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com>

Co-authored-by: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com>
Co-authored-by: ITOH <72305210+itohatweb@users.noreply.github.com>
This commit is contained in:
ayntee
2021-04-02 17:31:25 +04:00
committed by GitHub
parent 2502585e8b
commit 455cc6fb24
+25 -23
View File
@@ -27,32 +27,34 @@ export async function handleGuildMemberUpdate(data: DiscordGatewayPayload) {
); );
await cacheHandlers.set("members", memberStruct.id, memberStruct); await cacheHandlers.set("members", memberStruct.id, memberStruct);
if (guildMember?.nick !== payload.nick) { if (guildMember) {
eventHandlers.nicknameUpdate?.( if (guildMember.nick !== payload.nick) {
guild, eventHandlers.nicknameUpdate?.(
memberStruct, guild,
payload.nick!, memberStruct,
guildMember?.nick, payload.nick!,
); guildMember.nick,
} );
if (payload.pending === false && guildMember?.pending === true) {
eventHandlers.membershipScreeningPassed?.(guild, memberStruct);
}
const roleIds = guildMember?.roles || [];
roleIds.forEach((id) => {
if (!payload.roles.includes(id)) {
eventHandlers.roleLost?.(guild, memberStruct, id);
} }
});
payload.roles.forEach((id) => { if (payload.pending === false && guildMember.pending === true) {
if (!roleIds.includes(id)) { eventHandlers.membershipScreeningPassed?.(guild, memberStruct);
eventHandlers.roleGained?.(guild, memberStruct, id);
} }
});
const roleIds = guildMember.roles || [];
roleIds.forEach((id) => {
if (!payload.roles.includes(id)) {
eventHandlers.roleLost?.(guild, memberStruct, id);
}
});
payload.roles.forEach((id) => {
if (!roleIds.includes(id)) {
eventHandlers.roleGained?.(guild, memberStruct, id);
}
});
}
eventHandlers.guildMemberUpdate?.(guild, memberStruct, cachedMember); eventHandlers.guildMemberUpdate?.(guild, memberStruct, cachedMember);
} }