fix(Action): Ensure all properties on getChannel() are passed (#10278)

* fix(Action): ensure all properties on `getChannel()` are passed

* refactor: flip `recipient` check
This commit is contained in:
Jiralite 2024-05-16 08:27:00 +01:00 committed by GitHub
parent 35207b0b31
commit 92c1a511dc
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -31,21 +31,17 @@ class GenericAction {
const payloadData = {};
const id = data.channel_id ?? data.id;
if ('recipients' in data) {
payloadData.recipients = data.recipients;
} else {
if (!('recipients' in data)) {
// Try to resolve the recipient, but do not add the client user.
const recipient = data.author ?? data.user ?? { id: data.user_id };
if (recipient.id !== this.client.user.id) payloadData.recipients = [recipient];
}
if (id !== undefined) payloadData.id = id;
if ('guild_id' in data) payloadData.guild_id = data.guild_id;
if ('last_message_id' in data) payloadData.last_message_id = data.last_message_id;
return (
data[this.client.actions.injectedChannel] ??
this.getPayload(payloadData, this.client.channels, id, Partials.Channel)
this.getPayload({ ...data, ...payloadData }, this.client.channels, id, Partials.Channel)
);
}