From cf6d1ac81977ad20a59614ed3cbc094e13beaa3c Mon Sep 17 00:00:00 2001 From: MARCROCK22 <57925328+MARCROCK22@users.noreply.github.com> Date: Sat, 20 Apr 2024 23:43:05 -0400 Subject: [PATCH] fix: missing --- src/common/shorters/messages.ts | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/src/common/shorters/messages.ts b/src/common/shorters/messages.ts index 5d941fa..05e625d 100644 --- a/src/common/shorters/messages.ts +++ b/src/common/shorters/messages.ts @@ -20,7 +20,8 @@ export class MessageShorter extends BaseShorter { body: transformedBody, files: parsedFiles, }) - .then(message => { + .then(async message => { + await this.client.cache.messages?.setIfNI('GuildMessages', message.id, message.channel_id, message); return new Message(this.client, message); }); } @@ -34,7 +35,8 @@ export class MessageShorter extends BaseShorter { body: MessagesMethods.transformMessageBody(body), files: parsedFiles, }) - .then(message => { + .then(async message => { + await this.client.cache.messages?.setIfNI('GuildMessages', message.id, message.channel_id, message); return new Message(this.client, message); }); } @@ -44,7 +46,10 @@ export class MessageShorter extends BaseShorter { .channels(channelId) .messages(messageId) .crosspost.post({ reason }) - .then(m => new Message(this.client, m)); + .then(async m => { + await this.client.cache.messages?.setIfNI('GuildMessages', m.id, m.channel_id, m); + return new Message(this.client, m); + }); } delete(messageId: string, channelId: string, reason?: string) { @@ -52,7 +57,8 @@ export class MessageShorter extends BaseShorter { .channels(channelId) .messages(messageId) .delete({ reason }) - .then(() => { + .then(async () => { + await this.client.cache.messages?.removeIfNI('GuildMessages', messageId, channelId); void this.client.components?.onMessageDelete(messageId); }); } @@ -62,11 +68,17 @@ export class MessageShorter extends BaseShorter { .channels(channelId) .messages(messageId) .get() - .then(x => new Message(this.client, x)); + .then(async x => { + await this.client.cache.messages?.set(x.id, x.channel_id, x); + return new Message(this.client, x); + }); } purge(messages: string[], channelId: string, reason?: string) { - return this.client.proxy.channels(channelId).messages['bulk-delete'].post({ body: { messages }, reason }); + return this.client.proxy + .channels(channelId) + .messages['bulk-delete'].post({ body: { messages }, reason }) + .then(() => this.client.cache.messages?.removeIfNI('GuildMessages', messages, channelId)); } thread(