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>
This commit is contained in:
Almeida 2024-02-03 21:49:11 +00:00 committed by GitHub
parent f69165883f
commit 42bc5d2c74
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 33 additions and 2 deletions

View file

@ -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;

View file

@ -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,

View file

@ -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<StickerFormatType, ImageFormat>;
};