@velliajs/discord 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +191 -0
- package/README.md +133 -0
- package/package.json +82 -0
- package/src/client/BaseClient.js +83 -0
- package/src/client/Client.js +591 -0
- package/src/client/WebhookClient.js +103 -0
- package/src/client/actions/Action.js +119 -0
- package/src/client/actions/ActionsManager.js +79 -0
- package/src/client/actions/ApplicationCommandPermissionsUpdate.js +34 -0
- package/src/client/actions/AutoModerationActionExecution.js +26 -0
- package/src/client/actions/AutoModerationRuleCreate.js +27 -0
- package/src/client/actions/AutoModerationRuleDelete.js +31 -0
- package/src/client/actions/AutoModerationRuleUpdate.js +29 -0
- package/src/client/actions/ChannelCreate.js +23 -0
- package/src/client/actions/ChannelDelete.js +23 -0
- package/src/client/actions/ChannelUpdate.js +33 -0
- package/src/client/actions/GuildAuditLogEntryCreate.js +29 -0
- package/src/client/actions/GuildBanAdd.js +20 -0
- package/src/client/actions/GuildBanRemove.js +25 -0
- package/src/client/actions/GuildChannelsPositionUpdate.js +21 -0
- package/src/client/actions/GuildDelete.js +44 -0
- package/src/client/actions/GuildEmojiCreate.js +20 -0
- package/src/client/actions/GuildEmojiDelete.js +19 -0
- package/src/client/actions/GuildEmojiUpdate.js +20 -0
- package/src/client/actions/GuildEmojisUpdate.js +34 -0
- package/src/client/actions/GuildIntegrationsUpdate.js +19 -0
- package/src/client/actions/GuildMemberRemove.js +31 -0
- package/src/client/actions/GuildMemberUpdate.js +44 -0
- package/src/client/actions/GuildRoleCreate.js +25 -0
- package/src/client/actions/GuildRoleDelete.js +29 -0
- package/src/client/actions/GuildRoleUpdate.js +39 -0
- package/src/client/actions/GuildRolesPositionUpdate.js +21 -0
- package/src/client/actions/GuildScheduledEventCreate.js +27 -0
- package/src/client/actions/GuildScheduledEventDelete.js +31 -0
- package/src/client/actions/GuildScheduledEventUpdate.js +30 -0
- package/src/client/actions/GuildScheduledEventUserAdd.js +32 -0
- package/src/client/actions/GuildScheduledEventUserRemove.js +32 -0
- package/src/client/actions/GuildStickerCreate.js +20 -0
- package/src/client/actions/GuildStickerDelete.js +19 -0
- package/src/client/actions/GuildStickerUpdate.js +20 -0
- package/src/client/actions/GuildStickersUpdate.js +34 -0
- package/src/client/actions/GuildUpdate.js +33 -0
- package/src/client/actions/InteractionCreate.js +101 -0
- package/src/client/actions/InviteCreate.js +28 -0
- package/src/client/actions/InviteDelete.js +30 -0
- package/src/client/actions/MessageCreate.js +37 -0
- package/src/client/actions/MessageDelete.js +32 -0
- package/src/client/actions/MessageDeleteBulk.js +47 -0
- package/src/client/actions/MessageReactionAdd.js +55 -0
- package/src/client/actions/MessageReactionRemove.js +45 -0
- package/src/client/actions/MessageReactionRemoveAll.js +33 -0
- package/src/client/actions/MessageReactionRemoveEmoji.js +28 -0
- package/src/client/actions/MessageUpdate.js +26 -0
- package/src/client/actions/PresenceUpdate.js +42 -0
- package/src/client/actions/StageInstanceCreate.js +28 -0
- package/src/client/actions/StageInstanceDelete.js +31 -0
- package/src/client/actions/StageInstanceUpdate.js +30 -0
- package/src/client/actions/ThreadCreate.js +24 -0
- package/src/client/actions/ThreadDelete.js +26 -0
- package/src/client/actions/ThreadListSync.js +60 -0
- package/src/client/actions/ThreadMemberUpdate.js +30 -0
- package/src/client/actions/ThreadMembersUpdate.js +47 -0
- package/src/client/actions/TypingStart.js +29 -0
- package/src/client/actions/UserUpdate.js +36 -0
- package/src/client/actions/VoiceStateUpdate.js +43 -0
- package/src/client/actions/WebhooksUpdate.js +20 -0
- package/src/client/voice/ClientVoiceManager.js +44 -0
- package/src/client/websocket/WebSocketManager.js +393 -0
- package/src/client/websocket/WebSocketShard.js +231 -0
- package/src/client/websocket/handlers/APPLICATION_COMMAND_PERMISSIONS_UPDATE.js +5 -0
- package/src/client/websocket/handlers/AUTO_MODERATION_ACTION_EXECUTION.js +5 -0
- package/src/client/websocket/handlers/AUTO_MODERATION_RULE_CREATE.js +5 -0
- package/src/client/websocket/handlers/AUTO_MODERATION_RULE_DELETE.js +5 -0
- package/src/client/websocket/handlers/AUTO_MODERATION_RULE_UPDATE.js +5 -0
- package/src/client/websocket/handlers/CHANNEL_CREATE.js +5 -0
- package/src/client/websocket/handlers/CHANNEL_DELETE.js +5 -0
- package/src/client/websocket/handlers/CHANNEL_PINS_UPDATE.js +22 -0
- package/src/client/websocket/handlers/CHANNEL_UPDATE.js +16 -0
- package/src/client/websocket/handlers/GUILD_AUDIT_LOG_ENTRY_CREATE.js +5 -0
- package/src/client/websocket/handlers/GUILD_BAN_ADD.js +5 -0
- package/src/client/websocket/handlers/GUILD_BAN_REMOVE.js +5 -0
- package/src/client/websocket/handlers/GUILD_CREATE.js +26 -0
- package/src/client/websocket/handlers/GUILD_DELETE.js +5 -0
- package/src/client/websocket/handlers/GUILD_EMOJIS_UPDATE.js +5 -0
- package/src/client/websocket/handlers/GUILD_INTEGRATIONS_UPDATE.js +5 -0
- package/src/client/websocket/handlers/GUILD_MEMBERS_CHUNK.js +39 -0
- package/src/client/websocket/handlers/GUILD_MEMBER_ADD.js +20 -0
- package/src/client/websocket/handlers/GUILD_MEMBER_REMOVE.js +5 -0
- package/src/client/websocket/handlers/GUILD_MEMBER_UPDATE.js +5 -0
- package/src/client/websocket/handlers/GUILD_ROLE_CREATE.js +5 -0
- package/src/client/websocket/handlers/GUILD_ROLE_DELETE.js +5 -0
- package/src/client/websocket/handlers/GUILD_ROLE_UPDATE.js +5 -0
- package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_CREATE.js +5 -0
- package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_DELETE.js +5 -0
- package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_UPDATE.js +5 -0
- package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_USER_ADD.js +5 -0
- package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_USER_REMOVE.js +5 -0
- package/src/client/websocket/handlers/GUILD_STICKERS_UPDATE.js +5 -0
- package/src/client/websocket/handlers/GUILD_UPDATE.js +5 -0
- package/src/client/websocket/handlers/INTERACTION_CREATE.js +5 -0
- package/src/client/websocket/handlers/INVITE_CREATE.js +5 -0
- package/src/client/websocket/handlers/INVITE_DELETE.js +5 -0
- package/src/client/websocket/handlers/MESSAGE_CREATE.js +5 -0
- package/src/client/websocket/handlers/MESSAGE_DELETE.js +5 -0
- package/src/client/websocket/handlers/MESSAGE_DELETE_BULK.js +5 -0
- package/src/client/websocket/handlers/MESSAGE_REACTION_ADD.js +5 -0
- package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE.js +5 -0
- package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE_ALL.js +5 -0
- package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE_EMOJI.js +5 -0
- package/src/client/websocket/handlers/MESSAGE_UPDATE.js +16 -0
- package/src/client/websocket/handlers/PRESENCE_UPDATE.js +5 -0
- package/src/client/websocket/handlers/READY.js +27 -0
- package/src/client/websocket/handlers/RESUMED.js +14 -0
- package/src/client/websocket/handlers/STAGE_INSTANCE_CREATE.js +5 -0
- package/src/client/websocket/handlers/STAGE_INSTANCE_DELETE.js +5 -0
- package/src/client/websocket/handlers/STAGE_INSTANCE_UPDATE.js +5 -0
- package/src/client/websocket/handlers/THREAD_CREATE.js +5 -0
- package/src/client/websocket/handlers/THREAD_DELETE.js +5 -0
- package/src/client/websocket/handlers/THREAD_LIST_SYNC.js +5 -0
- package/src/client/websocket/handlers/THREAD_MEMBERS_UPDATE.js +5 -0
- package/src/client/websocket/handlers/THREAD_MEMBER_UPDATE.js +5 -0
- package/src/client/websocket/handlers/THREAD_UPDATE.js +16 -0
- package/src/client/websocket/handlers/TYPING_START.js +5 -0
- package/src/client/websocket/handlers/USER_UPDATE.js +5 -0
- package/src/client/websocket/handlers/VOICE_SERVER_UPDATE.js +6 -0
- package/src/client/websocket/handlers/VOICE_STATE_UPDATE.js +5 -0
- package/src/client/websocket/handlers/WEBHOOKS_UPDATE.js +5 -0
- package/src/client/websocket/handlers/index.js +64 -0
- package/src/errors/DJSError.js +48 -0
- package/src/errors/ErrorCodes.js +319 -0
- package/src/errors/Messages.js +170 -0
- package/src/errors/index.js +5 -0
- package/src/index.js +213 -0
- package/src/managers/ApplicationCommandManager.js +263 -0
- package/src/managers/ApplicationCommandPermissionsManager.js +434 -0
- package/src/managers/AutoModerationRuleManager.js +288 -0
- package/src/managers/BaseGuildEmojiManager.js +80 -0
- package/src/managers/BaseManager.js +19 -0
- package/src/managers/CachedManager.js +57 -0
- package/src/managers/CategoryChannelChildManager.js +77 -0
- package/src/managers/ChannelManager.js +128 -0
- package/src/managers/DataManager.js +61 -0
- package/src/managers/GuildApplicationCommandManager.js +28 -0
- package/src/managers/GuildBanManager.js +204 -0
- package/src/managers/GuildChannelManager.js +494 -0
- package/src/managers/GuildEmojiManager.js +174 -0
- package/src/managers/GuildEmojiRoleManager.js +118 -0
- package/src/managers/GuildForumThreadManager.js +83 -0
- package/src/managers/GuildInviteManager.js +213 -0
- package/src/managers/GuildManager.js +283 -0
- package/src/managers/GuildMemberManager.js +540 -0
- package/src/managers/GuildMemberRoleManager.js +204 -0
- package/src/managers/GuildScheduledEventManager.js +297 -0
- package/src/managers/GuildStickerManager.js +182 -0
- package/src/managers/GuildTextThreadManager.js +91 -0
- package/src/managers/MessageManager.js +259 -0
- package/src/managers/PermissionOverwriteManager.js +168 -0
- package/src/managers/PresenceManager.js +58 -0
- package/src/managers/ReactionManager.js +68 -0
- package/src/managers/ReactionUserManager.js +77 -0
- package/src/managers/RoleManager.js +360 -0
- package/src/managers/StageInstanceManager.js +154 -0
- package/src/managers/ThreadManager.js +204 -0
- package/src/managers/ThreadMemberManager.js +182 -0
- package/src/managers/UserManager.js +139 -0
- package/src/managers/VoiceStateManager.js +37 -0
- package/src/sharding/Shard.js +457 -0
- package/src/sharding/ShardClientUtil.js +285 -0
- package/src/sharding/ShardingManager.js +326 -0
- package/src/structures/ActionRow.js +46 -0
- package/src/structures/ActionRowBuilder.js +35 -0
- package/src/structures/AnonymousGuild.js +97 -0
- package/src/structures/ApplicationCommand.js +606 -0
- package/src/structures/ApplicationRoleConnectionMetadata.js +46 -0
- package/src/structures/Attachment.js +140 -0
- package/src/structures/AttachmentBuilder.js +116 -0
- package/src/structures/AutoModerationActionExecution.js +116 -0
- package/src/structures/AutoModerationRule.js +284 -0
- package/src/structures/AutocompleteInteraction.js +97 -0
- package/src/structures/Base.js +43 -0
- package/src/structures/BaseChannel.js +160 -0
- package/src/structures/BaseGuild.js +119 -0
- package/src/structures/BaseGuildEmoji.js +56 -0
- package/src/structures/BaseGuildTextChannel.js +186 -0
- package/src/structures/BaseGuildVoiceChannel.js +234 -0
- package/src/structures/BaseInteraction.js +344 -0
- package/src/structures/BaseSelectMenuComponent.js +56 -0
- package/src/structures/ButtonBuilder.js +44 -0
- package/src/structures/ButtonComponent.js +65 -0
- package/src/structures/ButtonInteraction.js +11 -0
- package/src/structures/CategoryChannel.js +45 -0
- package/src/structures/ChannelSelectMenuBuilder.js +31 -0
- package/src/structures/ChannelSelectMenuComponent.js +20 -0
- package/src/structures/ChannelSelectMenuInteraction.js +33 -0
- package/src/structures/ChatInputCommandInteraction.js +41 -0
- package/src/structures/ClientApplication.js +193 -0
- package/src/structures/ClientPresence.js +82 -0
- package/src/structures/ClientUser.js +185 -0
- package/src/structures/CommandInteraction.js +224 -0
- package/src/structures/CommandInteractionOptionResolver.js +308 -0
- package/src/structures/Component.js +47 -0
- package/src/structures/ContextMenuCommandInteraction.js +64 -0
- package/src/structures/DMChannel.js +129 -0
- package/src/structures/DirectoryChannel.js +36 -0
- package/src/structures/Embed.js +220 -0
- package/src/structures/EmbedBuilder.js +41 -0
- package/src/structures/Emoji.js +108 -0
- package/src/structures/ForumChannel.js +264 -0
- package/src/structures/Guild.js +1361 -0
- package/src/structures/GuildAuditLogs.js +91 -0
- package/src/structures/GuildAuditLogsEntry.js +527 -0
- package/src/structures/GuildBan.js +59 -0
- package/src/structures/GuildChannel.js +457 -0
- package/src/structures/GuildEmoji.js +148 -0
- package/src/structures/GuildMember.js +518 -0
- package/src/structures/GuildPreview.js +193 -0
- package/src/structures/GuildPreviewEmoji.js +27 -0
- package/src/structures/GuildScheduledEvent.js +439 -0
- package/src/structures/GuildTemplate.js +241 -0
- package/src/structures/Integration.js +220 -0
- package/src/structures/IntegrationApplication.js +85 -0
- package/src/structures/InteractionCollector.js +263 -0
- package/src/structures/InteractionResponse.js +102 -0
- package/src/structures/InteractionWebhook.js +59 -0
- package/src/structures/Invite.js +322 -0
- package/src/structures/InviteGuild.js +22 -0
- package/src/structures/InviteStageInstance.js +87 -0
- package/src/structures/MentionableSelectMenuBuilder.js +32 -0
- package/src/structures/MentionableSelectMenuComponent.js +11 -0
- package/src/structures/MentionableSelectMenuInteraction.js +71 -0
- package/src/structures/Message.js +997 -0
- package/src/structures/MessageCollector.js +146 -0
- package/src/structures/MessageComponentInteraction.js +107 -0
- package/src/structures/MessageContextMenuCommandInteraction.js +20 -0
- package/src/structures/MessageMentions.js +297 -0
- package/src/structures/MessagePayload.js +299 -0
- package/src/structures/MessageReaction.js +142 -0
- package/src/structures/ModalBuilder.js +34 -0
- package/src/structures/ModalSubmitFields.js +55 -0
- package/src/structures/ModalSubmitInteraction.js +121 -0
- package/src/structures/NewsChannel.js +32 -0
- package/src/structures/OAuth2Guild.js +28 -0
- package/src/structures/PartialGroupDMChannel.js +60 -0
- package/src/structures/PermissionOverwrites.js +196 -0
- package/src/structures/Presence.js +372 -0
- package/src/structures/ReactionCollector.js +229 -0
- package/src/structures/ReactionEmoji.js +31 -0
- package/src/structures/Role.js +458 -0
- package/src/structures/RoleSelectMenuBuilder.js +31 -0
- package/src/structures/RoleSelectMenuComponent.js +11 -0
- package/src/structures/RoleSelectMenuInteraction.js +33 -0
- package/src/structures/SelectMenuBuilder.js +26 -0
- package/src/structures/SelectMenuComponent.js +26 -0
- package/src/structures/SelectMenuInteraction.js +26 -0
- package/src/structures/SelectMenuOptionBuilder.js +26 -0
- package/src/structures/StageChannel.js +112 -0
- package/src/structures/StageInstance.js +167 -0
- package/src/structures/Sticker.js +272 -0
- package/src/structures/StickerPack.js +95 -0
- package/src/structures/StringSelectMenuBuilder.js +79 -0
- package/src/structures/StringSelectMenuComponent.js +20 -0
- package/src/structures/StringSelectMenuInteraction.js +21 -0
- package/src/structures/StringSelectMenuOptionBuilder.js +49 -0
- package/src/structures/Team.js +117 -0
- package/src/structures/TeamMember.js +70 -0
- package/src/structures/TextChannel.js +33 -0
- package/src/structures/TextInputBuilder.js +31 -0
- package/src/structures/TextInputComponent.js +29 -0
- package/src/structures/ThreadChannel.js +606 -0
- package/src/structures/ThreadMember.js +113 -0
- package/src/structures/Typing.js +74 -0
- package/src/structures/User.js +331 -0
- package/src/structures/UserContextMenuCommandInteraction.js +29 -0
- package/src/structures/UserSelectMenuBuilder.js +31 -0
- package/src/structures/UserSelectMenuComponent.js +11 -0
- package/src/structures/UserSelectMenuInteraction.js +51 -0
- package/src/structures/VoiceChannel.js +96 -0
- package/src/structures/VoiceRegion.js +46 -0
- package/src/structures/VoiceState.js +303 -0
- package/src/structures/Webhook.js +481 -0
- package/src/structures/WelcomeChannel.js +60 -0
- package/src/structures/WelcomeScreen.js +49 -0
- package/src/structures/Widget.js +88 -0
- package/src/structures/WidgetMember.js +99 -0
- package/src/structures/interfaces/Application.js +108 -0
- package/src/structures/interfaces/Collector.js +335 -0
- package/src/structures/interfaces/InteractionResponses.js +320 -0
- package/src/structures/interfaces/TextBasedChannel.js +413 -0
- package/src/util/APITypes.js +456 -0
- package/src/util/ActivityFlagsBitField.js +26 -0
- package/src/util/ApplicationFlagsBitField.js +26 -0
- package/src/util/BitField.js +176 -0
- package/src/util/ChannelFlagsBitField.js +41 -0
- package/src/util/Channels.js +150 -0
- package/src/util/Colors.js +73 -0
- package/src/util/Components.js +152 -0
- package/src/util/Constants.js +230 -0
- package/src/util/DataResolver.js +140 -0
- package/src/util/Enums.js +13 -0
- package/src/util/Events.js +160 -0
- package/src/util/Formatters.js +413 -0
- package/src/util/GuildMemberFlagsBitField.js +41 -0
- package/src/util/IntentsBitField.js +34 -0
- package/src/util/LimitedCollection.js +68 -0
- package/src/util/MessageFlagsBitField.js +32 -0
- package/src/util/Options.js +216 -0
- package/src/util/Partials.js +44 -0
- package/src/util/PermissionsBitField.js +104 -0
- package/src/util/ShardEvents.js +27 -0
- package/src/util/Status.js +33 -0
- package/src/util/Sweepers.js +467 -0
- package/src/util/SystemChannelFlagsBitField.js +43 -0
- package/src/util/ThreadMemberFlagsBitField.js +31 -0
- package/src/util/Transformers.js +36 -0
- package/src/util/UserFlagsBitField.js +32 -0
- package/src/util/Util.js +394 -0
- package/src/util/WebSocketShardEvents.js +25 -0
|
@@ -0,0 +1,413 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const { deprecate } = require('node:util');
|
|
4
|
+
const {
|
|
5
|
+
blockQuote,
|
|
6
|
+
bold,
|
|
7
|
+
channelMention,
|
|
8
|
+
codeBlock,
|
|
9
|
+
formatEmoji,
|
|
10
|
+
hideLinkEmbed,
|
|
11
|
+
hyperlink,
|
|
12
|
+
inlineCode,
|
|
13
|
+
italic,
|
|
14
|
+
quote,
|
|
15
|
+
roleMention,
|
|
16
|
+
spoiler,
|
|
17
|
+
strikethrough,
|
|
18
|
+
time,
|
|
19
|
+
TimestampStyles,
|
|
20
|
+
underscore,
|
|
21
|
+
userMention,
|
|
22
|
+
} = require('@discordjs/builders');
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Formats an application command name and id into an application command mention.
|
|
26
|
+
* @method chatInputApplicationCommandMention
|
|
27
|
+
* @param {string} commandName The name of the application command
|
|
28
|
+
* @param {string|Snowflake} subcommandGroupOrSubOrId
|
|
29
|
+
* The subcommand group name, subcommand name, or application command id
|
|
30
|
+
* @param {string|Snowflake} [subcommandNameOrId] The subcommand name or application command id
|
|
31
|
+
* @param {string} [commandId] The id of the application command
|
|
32
|
+
* @returns {string}
|
|
33
|
+
*/
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Wraps the content inside a code block with an optional language.
|
|
37
|
+
* @method codeBlock
|
|
38
|
+
* @param {string} contentOrLanguage The language to use or content if a second parameter isn't provided
|
|
39
|
+
* @param {string} [content] The content to wrap
|
|
40
|
+
* @returns {string}
|
|
41
|
+
*/
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Wraps the content inside \`backticks\`, which formats it as inline code.
|
|
45
|
+
* @method inlineCode
|
|
46
|
+
* @param {string} content The content to wrap
|
|
47
|
+
* @returns {string}
|
|
48
|
+
*/
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Formats the content into italic text.
|
|
52
|
+
* @method italic
|
|
53
|
+
* @param {string} content The content to wrap
|
|
54
|
+
* @returns {string}
|
|
55
|
+
*/
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Formats the content into bold text.
|
|
59
|
+
* @method bold
|
|
60
|
+
* @param {string} content The content to wrap
|
|
61
|
+
* @returns {string}
|
|
62
|
+
*/
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Formats the content into underscored text.
|
|
66
|
+
* @method underscore
|
|
67
|
+
* @param {string} content The content to wrap
|
|
68
|
+
* @returns {string}
|
|
69
|
+
*/
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Formats the content into strike-through text.
|
|
73
|
+
* @method strikethrough
|
|
74
|
+
* @param {string} content The content to wrap
|
|
75
|
+
* @returns {string}
|
|
76
|
+
*/
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Formats the content into a quote.
|
|
80
|
+
* <info>This needs to be at the start of the line for Discord to format it.</info>
|
|
81
|
+
* @method quote
|
|
82
|
+
* @param {string} content The content to wrap
|
|
83
|
+
* @returns {string}
|
|
84
|
+
*/
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Formats the content into a block quote.
|
|
88
|
+
* <info>This needs to be at the start of the line for Discord to format it.</info>
|
|
89
|
+
* @method blockQuote
|
|
90
|
+
* @param {string} content The content to wrap
|
|
91
|
+
* @returns {string}
|
|
92
|
+
*/
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* Wraps the URL into `<>`, which stops it from embedding.
|
|
96
|
+
* @method hideLinkEmbed
|
|
97
|
+
* @param {string} content The content to wrap
|
|
98
|
+
* @returns {string}
|
|
99
|
+
*/
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Formats the content and the URL into a masked URL with an optional title.
|
|
103
|
+
* @method hyperlink
|
|
104
|
+
* @param {string} content The content to display
|
|
105
|
+
* @param {string} url The URL the content links to
|
|
106
|
+
* @param {string} [title] The title shown when hovering on the masked link
|
|
107
|
+
* @returns {string}
|
|
108
|
+
*/
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Formats the content into spoiler text.
|
|
112
|
+
* @method spoiler
|
|
113
|
+
* @param {string} content The content to spoiler
|
|
114
|
+
* @returns {string}
|
|
115
|
+
*/
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Formats a user id into a user mention.
|
|
119
|
+
* @method userMention
|
|
120
|
+
* @param {Snowflake} userId The user id to format
|
|
121
|
+
* @returns {string}
|
|
122
|
+
*/
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Formats a channel id into a channel mention.
|
|
126
|
+
* @method channelMention
|
|
127
|
+
* @param {Snowflake} channelId The channel id to format
|
|
128
|
+
* @returns {string}
|
|
129
|
+
*/
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Formats a role id into a role mention.
|
|
133
|
+
* @method roleMention
|
|
134
|
+
* @param {Snowflake} roleId The role id to format
|
|
135
|
+
* @returns {string}
|
|
136
|
+
*/
|
|
137
|
+
|
|
138
|
+
/**
|
|
139
|
+
* Formats an emoji id into a fully qualified emoji identifier.
|
|
140
|
+
* @method formatEmoji
|
|
141
|
+
* @param {Snowflake} emojiId The emoji id to format
|
|
142
|
+
* @param {boolean} [animated=false] Whether the emoji is animated
|
|
143
|
+
* @returns {string}
|
|
144
|
+
*/
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* Formats a channel link for a channel.
|
|
148
|
+
* @method channelLink
|
|
149
|
+
* @param {Snowflake} channelId The id of the channel
|
|
150
|
+
* @param {Snowflake} [guildId] The id of the guild
|
|
151
|
+
* @returns {string}
|
|
152
|
+
*/
|
|
153
|
+
|
|
154
|
+
/**
|
|
155
|
+
* Formats a message link for a channel.
|
|
156
|
+
* @method messageLink
|
|
157
|
+
* @param {Snowflake} channelId The id of the channel
|
|
158
|
+
* @param {Snowflake} messageId The id of the message
|
|
159
|
+
* @param {Snowflake} [guildId] The id of the guild
|
|
160
|
+
* @returns {string}
|
|
161
|
+
*/
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* A message formatting timestamp style, as defined in
|
|
165
|
+
* [here](https://discord.com/developers/docs/reference#message-formatting-timestamp-styles).
|
|
166
|
+
* * `t` Short time format, consisting of hours and minutes, e.g. 16:20.
|
|
167
|
+
* * `T` Long time format, consisting of hours, minutes, and seconds, e.g. 16:20:30.
|
|
168
|
+
* * `d` Short date format, consisting of day, month, and year, e.g. 20/04/2021.
|
|
169
|
+
* * `D` Long date format, consisting of day, month, and year, e.g. 20 April 2021.
|
|
170
|
+
* * `f` Short date-time format, consisting of short date and short time formats, e.g. 20 April 2021 16:20.
|
|
171
|
+
* * `F` Long date-time format, consisting of long date and short time formats, e.g. Tuesday, 20 April 2021 16:20.
|
|
172
|
+
* * `R` Relative time format, consisting of a relative duration format, e.g. 2 months ago.
|
|
173
|
+
* @typedef {string} TimestampStylesString
|
|
174
|
+
*/
|
|
175
|
+
|
|
176
|
+
/**
|
|
177
|
+
* Formats a date into a short date-time string.
|
|
178
|
+
* @method time
|
|
179
|
+
* @param {number|Date} [date] The date to format
|
|
180
|
+
* @param {TimestampStylesString} [style] The style to use
|
|
181
|
+
* @returns {string}
|
|
182
|
+
*/
|
|
183
|
+
|
|
184
|
+
/**
|
|
185
|
+
* Contains various Discord-specific functions for formatting messages.
|
|
186
|
+
* @deprecated This class is redundant as all methods of the class can be imported from discord.js directly.
|
|
187
|
+
*/
|
|
188
|
+
class Formatters extends null {
|
|
189
|
+
/**
|
|
190
|
+
* Formats the content into a block quote.
|
|
191
|
+
* <info>This needs to be at the start of the line for Discord to format it.</info>
|
|
192
|
+
* @method blockQuote
|
|
193
|
+
* @memberof Formatters
|
|
194
|
+
* @param {string} content The content to wrap
|
|
195
|
+
* @returns {string}
|
|
196
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
197
|
+
*/
|
|
198
|
+
static blockQuote = deprecate(
|
|
199
|
+
blockQuote,
|
|
200
|
+
'Formatters.blockQuote() is deprecated. Import this method directly from discord.js instead.',
|
|
201
|
+
);
|
|
202
|
+
|
|
203
|
+
/**
|
|
204
|
+
* Formats the content into bold text.
|
|
205
|
+
* @method bold
|
|
206
|
+
* @memberof Formatters
|
|
207
|
+
* @param {string} content The content to wrap
|
|
208
|
+
* @returns {string}
|
|
209
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
210
|
+
*/
|
|
211
|
+
static bold = deprecate(
|
|
212
|
+
bold,
|
|
213
|
+
'Formatters.bold() is deprecated. Import this method directly from discord.js instead.',
|
|
214
|
+
);
|
|
215
|
+
|
|
216
|
+
/**
|
|
217
|
+
* Formats a channel id into a channel mention.
|
|
218
|
+
* @method channelMention
|
|
219
|
+
* @memberof Formatters
|
|
220
|
+
* @param {Snowflake} channelId The channel id to format
|
|
221
|
+
* @returns {string}
|
|
222
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
223
|
+
*/
|
|
224
|
+
static channelMention = deprecate(
|
|
225
|
+
channelMention,
|
|
226
|
+
'Formatters.channelMention() is deprecated. Import this method directly from discord.js instead.',
|
|
227
|
+
);
|
|
228
|
+
|
|
229
|
+
/**
|
|
230
|
+
* Wraps the content inside a code block with an optional language.
|
|
231
|
+
* @method codeBlock
|
|
232
|
+
* @memberof Formatters
|
|
233
|
+
* @param {string} contentOrLanguage The language to use or content if a second parameter isn't provided
|
|
234
|
+
* @param {string} [content] The content to wrap
|
|
235
|
+
* @returns {string}
|
|
236
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
237
|
+
*/
|
|
238
|
+
static codeBlock = deprecate(
|
|
239
|
+
codeBlock,
|
|
240
|
+
'Formatters.codeBlock() is deprecated. Import this method directly from discord.js instead.',
|
|
241
|
+
);
|
|
242
|
+
|
|
243
|
+
/**
|
|
244
|
+
* Formats an emoji id into a fully qualified emoji identifier.
|
|
245
|
+
* @method formatEmoji
|
|
246
|
+
* @memberof Formatters
|
|
247
|
+
* @param {string} emojiId The emoji id to format
|
|
248
|
+
* @param {boolean} [animated=false] Whether the emoji is animated
|
|
249
|
+
* @returns {string}
|
|
250
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
251
|
+
*/
|
|
252
|
+
static formatEmoji = deprecate(
|
|
253
|
+
formatEmoji,
|
|
254
|
+
'Formatters.formatEmoji() is deprecated. Import this method directly from discord.js instead.',
|
|
255
|
+
);
|
|
256
|
+
|
|
257
|
+
/**
|
|
258
|
+
* Wraps the URL into `<>`, which stops it from embedding.
|
|
259
|
+
* @method hideLinkEmbed
|
|
260
|
+
* @memberof Formatters
|
|
261
|
+
* @param {string} content The content to wrap
|
|
262
|
+
* @returns {string}
|
|
263
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
264
|
+
*/
|
|
265
|
+
static hideLinkEmbed = deprecate(
|
|
266
|
+
hideLinkEmbed,
|
|
267
|
+
'Formatters.hideLinkEmbed() is deprecated. Import this method directly from discord.js instead.',
|
|
268
|
+
);
|
|
269
|
+
|
|
270
|
+
/**
|
|
271
|
+
* Formats the content and the URL into a masked URL with an optional title.
|
|
272
|
+
* @method hyperlink
|
|
273
|
+
* @memberof Formatters
|
|
274
|
+
* @param {string} content The content to display
|
|
275
|
+
* @param {string} url The URL the content links to
|
|
276
|
+
* @param {string} [title] The title shown when hovering on the masked link
|
|
277
|
+
* @returns {string}
|
|
278
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
279
|
+
*/
|
|
280
|
+
static hyperlink = deprecate(
|
|
281
|
+
hyperlink,
|
|
282
|
+
'Formatters.hyperlink() is deprecated. Import this method directly from discord.js instead.',
|
|
283
|
+
);
|
|
284
|
+
|
|
285
|
+
/**
|
|
286
|
+
* Wraps the content inside \`backticks\`, which formats it as inline code.
|
|
287
|
+
* @method inlineCode
|
|
288
|
+
* @memberof Formatters
|
|
289
|
+
* @param {string} content The content to wrap
|
|
290
|
+
* @returns {string}
|
|
291
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
292
|
+
*/
|
|
293
|
+
static inlineCode = deprecate(
|
|
294
|
+
inlineCode,
|
|
295
|
+
'Formatters.inlineCode() is deprecated. Import this method directly from discord.js instead.',
|
|
296
|
+
);
|
|
297
|
+
|
|
298
|
+
/**
|
|
299
|
+
* Formats the content into italic text.
|
|
300
|
+
* @method italic
|
|
301
|
+
* @memberof Formatters
|
|
302
|
+
* @param {string} content The content to wrap
|
|
303
|
+
* @returns {string}
|
|
304
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
305
|
+
*/
|
|
306
|
+
static italic = deprecate(
|
|
307
|
+
italic,
|
|
308
|
+
'Formatters.italic() is deprecated. Import this method directly from discord.js instead.',
|
|
309
|
+
);
|
|
310
|
+
|
|
311
|
+
/**
|
|
312
|
+
* Formats the content into a quote. This needs to be at the start of the line for Discord to format it.
|
|
313
|
+
* @method quote
|
|
314
|
+
* @memberof Formatters
|
|
315
|
+
* @param {string} content The content to wrap
|
|
316
|
+
* @returns {string}
|
|
317
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
318
|
+
*/
|
|
319
|
+
static quote = deprecate(
|
|
320
|
+
quote,
|
|
321
|
+
'Formatters.quote() is deprecated. Import this method directly from discord.js instead.',
|
|
322
|
+
);
|
|
323
|
+
|
|
324
|
+
/**
|
|
325
|
+
* Formats a role id into a role mention.
|
|
326
|
+
* @method roleMention
|
|
327
|
+
* @memberof Formatters
|
|
328
|
+
* @param {Snowflake} roleId The role id to format
|
|
329
|
+
* @returns {string}
|
|
330
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
331
|
+
*/
|
|
332
|
+
static roleMention = deprecate(
|
|
333
|
+
roleMention,
|
|
334
|
+
'Formatters.roleMention() is deprecated. Import this method directly from discord.js instead.',
|
|
335
|
+
);
|
|
336
|
+
|
|
337
|
+
/**
|
|
338
|
+
* Formats the content into spoiler text.
|
|
339
|
+
* @method spoiler
|
|
340
|
+
* @memberof Formatters
|
|
341
|
+
* @param {string} content The content to spoiler
|
|
342
|
+
* @returns {string}
|
|
343
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
344
|
+
*/
|
|
345
|
+
static spoiler = deprecate(
|
|
346
|
+
spoiler,
|
|
347
|
+
'Formatters.spoiler() is deprecated. Import this method directly from discord.js instead.',
|
|
348
|
+
);
|
|
349
|
+
|
|
350
|
+
/**
|
|
351
|
+
* Formats the content into strike-through text.
|
|
352
|
+
* @method strikethrough
|
|
353
|
+
* @memberof Formatters
|
|
354
|
+
* @param {string} content The content to wrap
|
|
355
|
+
* @returns {string}
|
|
356
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
357
|
+
*/
|
|
358
|
+
static strikethrough = deprecate(
|
|
359
|
+
strikethrough,
|
|
360
|
+
'Formatters.strikethrough() is deprecated. Import this method directly from discord.js instead.',
|
|
361
|
+
);
|
|
362
|
+
|
|
363
|
+
/**
|
|
364
|
+
* Formats a date into a short date-time string.
|
|
365
|
+
* @method time
|
|
366
|
+
* @memberof Formatters
|
|
367
|
+
* @param {number|Date} [date] The date to format
|
|
368
|
+
* @param {TimestampStylesString} [style] The style to use
|
|
369
|
+
* @returns {string}
|
|
370
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
371
|
+
*/
|
|
372
|
+
static time = deprecate(
|
|
373
|
+
time,
|
|
374
|
+
'Formatters.time() is deprecated. Import this method directly from discord.js instead.',
|
|
375
|
+
);
|
|
376
|
+
|
|
377
|
+
/**
|
|
378
|
+
* The message formatting timestamp
|
|
379
|
+
* [styles](https://discord.com/developers/docs/reference#message-formatting-timestamp-styles) supported by Discord.
|
|
380
|
+
* @type {Object<string, TimestampStylesString>}
|
|
381
|
+
* @memberof Formatters
|
|
382
|
+
* @deprecated Import this property directly from discord.js instead.
|
|
383
|
+
*/
|
|
384
|
+
static TimestampStyles = TimestampStyles;
|
|
385
|
+
|
|
386
|
+
/**
|
|
387
|
+
* Formats the content into underscored text.
|
|
388
|
+
* @method underscore
|
|
389
|
+
* @memberof Formatters
|
|
390
|
+
* @param {string} content The content to wrap
|
|
391
|
+
* @returns {string}
|
|
392
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
393
|
+
*/
|
|
394
|
+
static underscore = deprecate(
|
|
395
|
+
underscore,
|
|
396
|
+
'Formatters.underscore() is deprecated. Import this method directly from discord.js instead.',
|
|
397
|
+
);
|
|
398
|
+
|
|
399
|
+
/**
|
|
400
|
+
* Formats a user id into a user mention.
|
|
401
|
+
* @method userMention
|
|
402
|
+
* @memberof Formatters
|
|
403
|
+
* @param {Snowflake} userId The user id to format
|
|
404
|
+
* @returns {string}
|
|
405
|
+
* @deprecated Import this method directly from discord.js instead.
|
|
406
|
+
*/
|
|
407
|
+
static userMention = deprecate(
|
|
408
|
+
userMention,
|
|
409
|
+
'Formatters.userMention() is deprecated. Import this method directly from discord.js instead.',
|
|
410
|
+
);
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
module.exports = Formatters;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const { GuildMemberFlags } = require('discord-api-types/v10');
|
|
4
|
+
const BitField = require('./BitField');
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Data structure that makes it easy to interact with a {@link GuildMember#flags} bitfield.
|
|
8
|
+
* @extends {BitField}
|
|
9
|
+
*/
|
|
10
|
+
class GuildMemberFlagsBitField extends BitField {
|
|
11
|
+
/**
|
|
12
|
+
* Numeric guild guild member flags.
|
|
13
|
+
* @type {GuildMemberFlags}
|
|
14
|
+
* @memberof GuildMemberFlagsBitField
|
|
15
|
+
*/
|
|
16
|
+
static Flags = GuildMemberFlags;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* @name GuildMemberFlagsBitField
|
|
21
|
+
* @kind constructor
|
|
22
|
+
* @memberof GuildMemberFlagsBitField
|
|
23
|
+
* @param {BitFieldResolvable} [bits=0] Bit(s) to read from
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Bitfield of the packed bits
|
|
28
|
+
* @type {number}
|
|
29
|
+
* @name GuildMemberFlagsBitField#bitfield
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Data that can be resolved to give a guild member flag bitfield. This can be:
|
|
34
|
+
* * A string (see {@link GuildMemberFlagsBitField.Flags})
|
|
35
|
+
* * A guild member flag
|
|
36
|
+
* * An instance of GuildMemberFlagsBitField
|
|
37
|
+
* * An Array of GuildMemberFlagsResolvable
|
|
38
|
+
* @typedef {string|number|GuildMemberFlagsBitField|GuildMemberFlagsResolvable[]} GuildMemberFlagsResolvable
|
|
39
|
+
*/
|
|
40
|
+
|
|
41
|
+
exports.GuildMemberFlagsBitField = GuildMemberFlagsBitField;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
const { GatewayIntentBits } = require('discord-api-types/v10');
|
|
3
|
+
const BitField = require('./BitField');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Data structure that makes it easy to calculate intents.
|
|
7
|
+
* @extends {BitField}
|
|
8
|
+
*/
|
|
9
|
+
class IntentsBitField extends BitField {
|
|
10
|
+
/**
|
|
11
|
+
* Numeric WebSocket intents
|
|
12
|
+
* @type {GatewayIntentBits}
|
|
13
|
+
* @memberof IntentsBitField
|
|
14
|
+
*/
|
|
15
|
+
static Flags = GatewayIntentBits;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @name IntentsBitField
|
|
20
|
+
* @kind constructor
|
|
21
|
+
* @memberof IntentsBitField
|
|
22
|
+
* @param {IntentsResolvable} [bits=0] Bit(s) to read from
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Data that can be resolved to give a permission number. This can be:
|
|
27
|
+
* * A string (see {@link IntentsBitField.Flags})
|
|
28
|
+
* * An intents flag
|
|
29
|
+
* * An instance of {@link IntentsBitField}
|
|
30
|
+
* * An array of IntentsResolvable
|
|
31
|
+
* @typedef {string|number|IntentsBitField|IntentsResolvable[]} IntentsResolvable
|
|
32
|
+
*/
|
|
33
|
+
|
|
34
|
+
module.exports = IntentsBitField;
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const { Collection } = require('@discordjs/collection');
|
|
4
|
+
const { DiscordjsTypeError, ErrorCodes } = require('../errors');
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Options for defining the behavior of a LimitedCollection
|
|
8
|
+
* @typedef {Object} LimitedCollectionOptions
|
|
9
|
+
* @property {?number} [maxSize=Infinity] The maximum size of the Collection
|
|
10
|
+
* @property {?Function} [keepOverLimit=null] A function, which is passed the value and key of an entry, ran to decide
|
|
11
|
+
* to keep an entry past the maximum size
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* A Collection which holds a max amount of entries.
|
|
16
|
+
* @extends {Collection}
|
|
17
|
+
* @param {LimitedCollectionOptions} [options={}] Options for constructing the Collection.
|
|
18
|
+
* @param {Iterable} [iterable=null] Optional entries passed to the Map constructor.
|
|
19
|
+
*/
|
|
20
|
+
class LimitedCollection extends Collection {
|
|
21
|
+
constructor(options = {}, iterable) {
|
|
22
|
+
if (typeof options !== 'object' || options === null) {
|
|
23
|
+
throw new DiscordjsTypeError(ErrorCodes.InvalidType, 'options', 'object', true);
|
|
24
|
+
}
|
|
25
|
+
const { maxSize = Infinity, keepOverLimit = null } = options;
|
|
26
|
+
|
|
27
|
+
if (typeof maxSize !== 'number') {
|
|
28
|
+
throw new DiscordjsTypeError(ErrorCodes.InvalidType, 'maxSize', 'number');
|
|
29
|
+
}
|
|
30
|
+
if (keepOverLimit !== null && typeof keepOverLimit !== 'function') {
|
|
31
|
+
throw new DiscordjsTypeError(ErrorCodes.InvalidType, 'keepOverLimit', 'function');
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
super(iterable);
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* The max size of the Collection.
|
|
38
|
+
* @type {number}
|
|
39
|
+
*/
|
|
40
|
+
this.maxSize = maxSize;
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* A function called to check if an entry should be kept when the Collection is at max size.
|
|
44
|
+
* @type {?Function}
|
|
45
|
+
*/
|
|
46
|
+
this.keepOverLimit = keepOverLimit;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
set(key, value) {
|
|
50
|
+
if (this.maxSize === 0) return this;
|
|
51
|
+
if (this.size >= this.maxSize && !this.has(key)) {
|
|
52
|
+
for (const [k, v] of this.entries()) {
|
|
53
|
+
const keep = this.keepOverLimit?.(v, k, this) ?? false;
|
|
54
|
+
if (!keep) {
|
|
55
|
+
this.delete(k);
|
|
56
|
+
break;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return super.set(key, value);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
static get [Symbol.species]() {
|
|
64
|
+
return Collection;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
module.exports = LimitedCollection;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const { MessageFlags } = require('discord-api-types/v10');
|
|
4
|
+
const BitField = require('./BitField');
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Data structure that makes it easy to interact with a {@link Message#flags} bitfield.
|
|
8
|
+
* @extends {BitField}
|
|
9
|
+
*/
|
|
10
|
+
class MessageFlagsBitField extends BitField {
|
|
11
|
+
/**
|
|
12
|
+
* Numeric message flags.
|
|
13
|
+
* @type {MessageFlags}
|
|
14
|
+
* @memberof MessageFlagsBitField
|
|
15
|
+
*/
|
|
16
|
+
static Flags = MessageFlags;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* @name MessageFlagsBitField
|
|
21
|
+
* @kind constructor
|
|
22
|
+
* @memberof MessageFlagsBitField
|
|
23
|
+
* @param {BitFieldResolvable} [bits=0] Bit(s) to read from
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Bitfield of the packed bits
|
|
28
|
+
* @type {number}
|
|
29
|
+
* @name MessageFlagsBitField#bitfield
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
module.exports = MessageFlagsBitField;
|