fix: cache user on message events (#306)

This commit is contained in:
MARCROCK22 2024-12-14 20:05:15 -04:00 committed by GitHub
parent 84effe467c
commit 5309571059
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

32
src/cache/index.ts vendored
View File

@ -198,7 +198,7 @@ export class Cache {
return this.hasIntent('DirectMessages'); return this.hasIntent('DirectMessages');
} }
get hasBansIntent() { get hasModerationIntent() {
return this.hasIntent('GuildModeration'); return this.hasIntent('GuildModeration');
} }
@ -575,10 +575,36 @@ export class Cache {
await this.stageInstances?.remove(event.d.id, event.d.guild_id); await this.stageInstances?.remove(event.d.id, event.d.guild_id);
break; break;
case 'MESSAGE_CREATE': case 'MESSAGE_CREATE':
await this.messages?.set(event.d.id, event.d.channel_id, event.d); {
if (this.messages !== undefined) {
const data: Parameters<Cache['bulkPatch']>[0] = [
['messages', event.d, event.d.id, event.d.channel_id],
['users', event.d.author, event.d.author.id],
];
if (event.d.guild_id) {
if (event.d.member) data.push(['members', event.d.member, event.d.author.id, event.d.guild_id]);
}
await this.bulkPatch(data);
}
}
break; break;
case 'MESSAGE_UPDATE': case 'MESSAGE_UPDATE':
await this.messages?.patch(event.d.id, event.d.channel_id, event.d); {
if (this.messages !== undefined) {
const data: Parameters<Cache['bulkPatch']>[0] = [
['messages', event.d, event.d.id, event.d.channel_id],
['users', event.d.author, event.d.author.id],
];
if (event.d.guild_id) {
if (event.d.member) data.push(['members', event.d.member, event.d.author.id, event.d.guild_id]);
}
await this.bulkPatch(data);
}
}
break; break;
case 'MESSAGE_DELETE': case 'MESSAGE_DELETE':
await this.messages?.remove(event.d.id, event.d.channel_id); await this.messages?.remove(event.d.id, event.d.channel_id);