feat(Message): allow editing files into messages (#5718)

This commit is contained in:
SpaceEEC
2021-05-31 21:56:26 +02:00
committed by GitHub
parent 256d1b0dfc
commit b212b64214
3 changed files with 9 additions and 4 deletions

View File

@@ -124,8 +124,10 @@ class MessageManager extends BaseManager {
message = this.resolveID(message);
if (!message) throw new TypeError('INVALID_TYPE', 'message', 'MessageResolvable');
const { data } = (options instanceof APIMessage ? options : APIMessage.create(this, options)).resolveData();
const d = await this.client.api.channels[this.channel.id].messages[message].patch({ data });
const { data, files } = await (options instanceof APIMessage ? options : APIMessage.create(this, options))
.resolveData()
.resolveFiles();
const d = await this.client.api.channels[this.channel.id].messages[message].patch({ data, files });
if (this.cache.has(message)) {
const clone = this.cache.get(message)._clone();

View File

@@ -479,7 +479,9 @@ class Message extends Base {
* @property {string|boolean} [code] Language for optional codeblock formatting to apply
* @property {MessageMentionOptions} [allowedMentions] Which mentions should be parsed from the message content
* @property {MessageFlags} [flags] Which flags to set for the message. Only `SUPPRESS_EMBEDS` can be edited.
* @property {MessageAttachment[]} [attachments] The new attachments of the message (can only be removed, not added)
* @property {MessageAttachment[]} [attachments] An array of attachments to keep,
* all attachments will be kept if omitted
* @property {FileOptions[]|BufferResolvable[]|MessageAttachment[]} [files] Files to add to the message
*/
/**

3
typings/index.d.ts vendored
View File

@@ -3204,12 +3204,13 @@ declare module 'discord.js' {
}
interface MessageEditOptions {
attachments?: MessageAttachment[];
content?: StringResolvable;
embed?: MessageEmbed | MessageEmbedOptions | null;
code?: string | boolean;
files?: (FileOptions | BufferResolvable | Stream | MessageAttachment)[];
flags?: BitFieldResolvable<MessageFlagsString, number>;
allowedMentions?: MessageMentionOptions;
attachments?: MessageAttachment[];
}
interface MessageEmbedAuthor {