From 42bc5d2c744d59a63ba2cccff2099092556da49e Mon Sep 17 00:00:00 2001 From: Almeida Date: Sat, 3 Feb 2024 21:49:11 +0000 Subject: [PATCH] fix: invert deletable message types list (#10093) * fix: invert deletable message types list * docs: consistency Co-authored-by: Jiralite <33201955+Jiralite@users.noreply.github.com> --------- Co-authored-by: Jiralite <33201955+Jiralite@users.noreply.github.com> Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com> --- packages/discord.js/src/structures/Message.js | 4 ++-- packages/discord.js/src/util/Constants.js | 20 +++++++++++++++++++ packages/discord.js/typings/index.d.ts | 11 ++++++++++ 3 files changed, 33 insertions(+), 2 deletions(-) diff --git a/packages/discord.js/src/structures/Message.js b/packages/discord.js/src/structures/Message.js index adb5ed541..86e898a8d 100644 --- a/packages/discord.js/src/structures/Message.js +++ b/packages/discord.js/src/structures/Message.js @@ -22,7 +22,7 @@ const { Sticker } = require('./Sticker'); const { DiscordjsError, ErrorCodes } = require('../errors'); const ReactionManager = require('../managers/ReactionManager'); const { createComponent } = require('../util/Components'); -const { NonSystemMessageTypes, MaxBulkDeletableMessageAge, DeletableMessageTypes } = require('../util/Constants'); +const { NonSystemMessageTypes, MaxBulkDeletableMessageAge, UndeletableMessageTypes } = require('../util/Constants'); const MessageFlagsBitField = require('../util/MessageFlagsBitField'); const PermissionsBitField = require('../util/PermissionsBitField'); const { cleanContent, resolvePartialEmoji, transformResolved } = require('../util/Util'); @@ -635,7 +635,7 @@ class Message extends Base { * @readonly */ get deletable() { - if (!DeletableMessageTypes.includes(this.type)) return false; + if (UndeletableMessageTypes.includes(this.type)) return false; if (!this.guild) { return this.author.id === this.client.user.id; diff --git a/packages/discord.js/src/util/Constants.js b/packages/discord.js/src/util/Constants.js index 6ff5f57b6..d08a86dde 100644 --- a/packages/discord.js/src/util/Constants.js +++ b/packages/discord.js/src/util/Constants.js @@ -155,6 +155,25 @@ exports.SelectMenuTypes = [ ComponentType.ChannelSelect, ]; +/** + * The types of messages that cannot be deleted. The available types are: + * * {@link MessageType.RecipientAdd} + * * {@link MessageType.RecipientRemove} + * * {@link MessageType.Call} + * * {@link MessageType.ChannelNameChange} + * * {@link MessageType.ChannelIconChange} + * * {@link MessageType.ThreadStarterMessage} + * @typedef {MessageType[]} UndeletableMessageTypes + */ +exports.UndeletableMessageTypes = [ + MessageType.RecipientAdd, + MessageType.RecipientRemove, + MessageType.Call, + MessageType.ChannelNameChange, + MessageType.ChannelIconChange, + MessageType.ThreadStarterMessage, +]; + /** * The types of messages that can be deleted. The available types are: * * {@link MessageType.AutoModerationAction} @@ -179,6 +198,7 @@ exports.SelectMenuTypes = [ * * {@link MessageType.ThreadCreated} * * {@link MessageType.UserJoin} * @typedef {MessageType[]} DeletableMessageTypes + * @deprecated This list will no longer be updated. Use {@link UndeletableMessageTypes} instead. */ exports.DeletableMessageTypes = [ MessageType.AutoModerationAction, diff --git a/packages/discord.js/typings/index.d.ts b/packages/discord.js/typings/index.d.ts index 2fc9d76f7..d69be3f98 100644 --- a/packages/discord.js/typings/index.d.ts +++ b/packages/discord.js/typings/index.d.ts @@ -3672,6 +3672,15 @@ export type NonSystemMessageType = | MessageType.ChatInputCommand | MessageType.ContextMenuCommand; +export type UndeletableMessageType = + | MessageType.RecipientAdd + | MessageType.RecipientRemove + | MessageType.Call + | MessageType.ChannelNameChange + | MessageType.ChannelIconChange + | MessageType.ThreadStarterMessage; + +/** @deprecated This type will no longer be updated. Use {@link UndeletableMessageType} instead. */ export type DeletableMessageType = | MessageType.AutoModerationAction | MessageType.ChannelFollowAdd @@ -3704,6 +3713,8 @@ export const Constants: { ThreadChannelTypes: ThreadChannelType[]; VoiceBasedChannelTypes: VoiceBasedChannelTypes[]; SelectMenuTypes: SelectMenuType[]; + UndeletableMessageTypes: UndeletableMessageType[]; + /** @deprecated This list will no longer be updated. Use {@link Constants.UndeletableMessageTypes} instead. */ DeletableMessageTypes: DeletableMessageType[]; StickerFormatExtensionMap: Record; };