mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-16 11:28:15 +00:00
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:
@@ -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);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user