mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-12 17:43:30 +01:00
feat(GuildMemberStore): make timeout refresh after every GUILD_MEMBERS_CHUNK (#3645)
This commit is contained in:
@@ -207,6 +207,7 @@ class GuildMemberStore extends DataStore {
|
|||||||
const fetchedMembers = new Collection();
|
const fetchedMembers = new Collection();
|
||||||
const handler = (members, guild) => {
|
const handler = (members, guild) => {
|
||||||
if (guild.id !== this.guild.id) return;
|
if (guild.id !== this.guild.id) return;
|
||||||
|
timeout.refresh();
|
||||||
for (const member of members.values()) {
|
for (const member of members.values()) {
|
||||||
if (query || limit) fetchedMembers.set(member.id, member);
|
if (query || limit) fetchedMembers.set(member.id, member);
|
||||||
}
|
}
|
||||||
@@ -217,11 +218,11 @@ class GuildMemberStore extends DataStore {
|
|||||||
resolve(query || limit ? fetchedMembers : this);
|
resolve(query || limit ? fetchedMembers : this);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
this.guild.client.on(Events.GUILD_MEMBERS_CHUNK, handler);
|
const timeout = this.guild.client.setTimeout(() => {
|
||||||
this.guild.client.setTimeout(() => {
|
|
||||||
this.guild.client.removeListener(Events.GUILD_MEMBERS_CHUNK, handler);
|
this.guild.client.removeListener(Events.GUILD_MEMBERS_CHUNK, handler);
|
||||||
reject(new Error('GUILD_MEMBERS_TIMEOUT'));
|
reject(new Error('GUILD_MEMBERS_TIMEOUT'));
|
||||||
}, 120e3);
|
}, 120e3);
|
||||||
|
this.guild.client.on(Events.GUILD_MEMBERS_CHUNK, handler);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user