djs-selfbot-v13 3.1.8 → 3.7.1
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 +1 -1
- package/README.md +48 -37
- package/package.json +44 -26
- package/src/WebSocket.js +39 -39
- package/src/client/BaseClient.js +86 -86
- package/src/client/Client.js +934 -765
- package/src/client/WebhookClient.js +61 -61
- package/src/client/actions/Action.js +116 -120
- package/src/client/actions/ActionsManager.js +80 -78
- package/src/client/actions/ApplicationCommandPermissionsUpdate.js +34 -34
- package/src/client/actions/AutoModerationActionExecution.js +27 -27
- package/src/client/actions/AutoModerationRuleCreate.js +28 -28
- package/src/client/actions/AutoModerationRuleDelete.js +32 -32
- package/src/client/actions/AutoModerationRuleUpdate.js +30 -30
- package/src/client/actions/ChannelCreate.js +23 -23
- package/src/client/actions/ChannelDelete.js +39 -39
- package/src/client/actions/ChannelUpdate.js +43 -43
- package/src/client/actions/GuildAuditLogEntryCreate.js +29 -29
- package/src/client/actions/GuildBanAdd.js +20 -20
- package/src/client/actions/GuildBanRemove.js +25 -25
- package/src/client/actions/GuildChannelsPositionUpdate.js +21 -21
- package/src/client/actions/GuildDelete.js +65 -65
- package/src/client/actions/GuildEmojiCreate.js +20 -20
- package/src/client/actions/GuildEmojiDelete.js +21 -21
- package/src/client/actions/GuildEmojiUpdate.js +20 -20
- package/src/client/actions/GuildEmojisUpdate.js +34 -34
- package/src/client/actions/GuildIntegrationsUpdate.js +19 -19
- package/src/client/actions/GuildMemberRemove.js +33 -33
- package/src/client/actions/GuildMemberUpdate.js +44 -44
- package/src/client/actions/GuildRoleCreate.js +25 -25
- package/src/client/actions/GuildRoleDelete.js +31 -31
- package/src/client/actions/GuildRoleUpdate.js +39 -39
- package/src/client/actions/GuildRolesPositionUpdate.js +21 -21
- package/src/client/actions/GuildScheduledEventCreate.js +27 -27
- package/src/client/actions/GuildScheduledEventDelete.js +31 -31
- package/src/client/actions/GuildScheduledEventUpdate.js +30 -30
- package/src/client/actions/GuildScheduledEventUserAdd.js +32 -32
- package/src/client/actions/GuildScheduledEventUserRemove.js +32 -32
- package/src/client/actions/GuildStickerCreate.js +20 -20
- package/src/client/actions/GuildStickerDelete.js +21 -21
- package/src/client/actions/GuildStickerUpdate.js +20 -20
- package/src/client/actions/GuildStickersUpdate.js +34 -34
- package/src/client/actions/GuildUpdate.js +33 -33
- package/src/client/actions/InviteCreate.js +28 -28
- package/src/client/actions/InviteDelete.js +30 -30
- package/src/client/actions/MessageCreate.js +50 -46
- package/src/client/actions/MessageDelete.js +32 -32
- package/src/client/actions/MessageDeleteBulk.js +46 -46
- package/src/client/actions/MessagePollVoteAdd.js +33 -0
- package/src/client/actions/MessagePollVoteRemove.js +33 -0
- package/src/client/actions/MessageReactionAdd.js +68 -56
- package/src/client/actions/MessageReactionRemove.js +50 -45
- package/src/client/actions/MessageReactionRemoveAll.js +33 -33
- package/src/client/actions/MessageReactionRemoveEmoji.js +28 -28
- package/src/client/actions/MessageUpdate.js +26 -26
- package/src/client/actions/PresenceUpdate.js +50 -46
- package/src/client/actions/StageInstanceCreate.js +28 -28
- package/src/client/actions/StageInstanceDelete.js +33 -33
- package/src/client/actions/StageInstanceUpdate.js +30 -30
- package/src/client/actions/ThreadCreate.js +24 -24
- package/src/client/actions/ThreadDelete.js +32 -32
- package/src/client/actions/ThreadListSync.js +59 -59
- package/src/client/actions/ThreadMemberUpdate.js +30 -30
- package/src/client/actions/ThreadMembersUpdate.js +34 -34
- package/src/client/actions/TypingStart.js +29 -29
- package/src/client/actions/UserUpdate.js +35 -35
- package/src/client/actions/VoiceStateUpdate.js +50 -57
- package/src/client/actions/WebhooksUpdate.js +20 -20
- package/src/client/voice/ClientVoiceManager.js +151 -51
- package/src/client/voice/VoiceConnection.js +1249 -0
- package/src/client/voice/dispatcher/AnnexBDispatcher.js +120 -0
- package/src/client/voice/dispatcher/AudioDispatcher.js +145 -0
- package/src/client/voice/dispatcher/BaseDispatcher.js +459 -0
- package/src/client/voice/dispatcher/VPxDispatcher.js +54 -0
- package/src/client/voice/dispatcher/VideoDispatcher.js +68 -0
- package/src/client/voice/networking/VoiceUDPClient.js +173 -0
- package/src/client/voice/networking/VoiceWebSocket.js +286 -0
- package/src/client/voice/player/MediaPlayer.js +321 -0
- package/src/client/voice/player/processing/AnnexBNalSplitter.js +244 -0
- package/src/client/voice/player/processing/IvfSplitter.js +106 -0
- package/src/client/voice/player/processing/PCMInsertSilence.js +37 -0
- package/src/client/voice/receiver/PacketHandler.js +260 -0
- package/src/client/voice/receiver/Receiver.js +96 -0
- package/src/client/voice/receiver/Recorder.js +173 -0
- package/src/client/voice/util/Function.js +116 -0
- package/src/client/voice/util/PlayInterface.js +122 -0
- package/src/client/voice/util/Secretbox.js +64 -0
- package/src/client/voice/util/Silence.js +16 -0
- package/src/client/voice/util/Socket.js +62 -0
- package/src/client/voice/util/VolumeInterface.js +104 -0
- package/src/client/websocket/WebSocketManager.js +392 -392
- package/src/client/websocket/WebSocketShard.js +907 -906
- package/src/client/websocket/handlers/APPLICATION_COMMAND_CREATE.js +18 -18
- package/src/client/websocket/handlers/APPLICATION_COMMAND_DELETE.js +20 -20
- package/src/client/websocket/handlers/APPLICATION_COMMAND_PERMISSIONS_UPDATE.js +5 -5
- package/src/client/websocket/handlers/APPLICATION_COMMAND_UPDATE.js +20 -20
- package/src/client/websocket/handlers/AUTO_MODERATION_ACTION_EXECUTION.js +5 -5
- package/src/client/websocket/handlers/AUTO_MODERATION_RULE_CREATE.js +5 -5
- package/src/client/websocket/handlers/AUTO_MODERATION_RULE_DELETE.js +5 -5
- package/src/client/websocket/handlers/AUTO_MODERATION_RULE_UPDATE.js +5 -5
- package/src/client/websocket/handlers/CALL_CREATE.js +14 -14
- package/src/client/websocket/handlers/CALL_DELETE.js +11 -11
- package/src/client/websocket/handlers/CALL_UPDATE.js +11 -11
- package/src/client/websocket/handlers/CHANNEL_CREATE.js +5 -5
- package/src/client/websocket/handlers/CHANNEL_DELETE.js +5 -5
- package/src/client/websocket/handlers/CHANNEL_PINS_UPDATE.js +22 -22
- package/src/client/websocket/handlers/CHANNEL_RECIPIENT_ADD.js +19 -19
- package/src/client/websocket/handlers/CHANNEL_RECIPIENT_REMOVE.js +16 -16
- package/src/client/websocket/handlers/CHANNEL_UPDATE.js +16 -16
- package/src/client/websocket/handlers/GUILD_AUDIT_LOG_ENTRY_CREATE.js +5 -5
- package/src/client/websocket/handlers/GUILD_BAN_ADD.js +5 -5
- package/src/client/websocket/handlers/GUILD_BAN_REMOVE.js +5 -5
- package/src/client/websocket/handlers/GUILD_CREATE.js +52 -53
- package/src/client/websocket/handlers/GUILD_DELETE.js +5 -5
- package/src/client/websocket/handlers/GUILD_EMOJIS_UPDATE.js +5 -5
- package/src/client/websocket/handlers/GUILD_INTEGRATIONS_UPDATE.js +5 -5
- package/src/client/websocket/handlers/GUILD_MEMBERS_CHUNK.js +39 -39
- package/src/client/websocket/handlers/GUILD_MEMBER_ADD.js +20 -20
- package/src/client/websocket/handlers/GUILD_MEMBER_REMOVE.js +5 -5
- package/src/client/websocket/handlers/GUILD_MEMBER_UPDATE.js +5 -5
- package/src/client/websocket/handlers/GUILD_ROLE_CREATE.js +5 -5
- package/src/client/websocket/handlers/GUILD_ROLE_DELETE.js +5 -5
- package/src/client/websocket/handlers/GUILD_ROLE_UPDATE.js +5 -5
- package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_CREATE.js +5 -5
- package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_DELETE.js +5 -5
- package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_UPDATE.js +5 -5
- package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_USER_ADD.js +5 -5
- package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_USER_REMOVE.js +5 -5
- package/src/client/websocket/handlers/GUILD_STICKERS_UPDATE.js +5 -5
- package/src/client/websocket/handlers/GUILD_UPDATE.js +5 -5
- package/src/client/websocket/handlers/INTERACTION_MODAL_CREATE.js +12 -12
- package/src/client/websocket/handlers/INVITE_CREATE.js +5 -5
- package/src/client/websocket/handlers/INVITE_DELETE.js +5 -5
- package/src/client/websocket/handlers/MESSAGE_CREATE.js +5 -5
- package/src/client/websocket/handlers/MESSAGE_DELETE.js +5 -5
- package/src/client/websocket/handlers/MESSAGE_DELETE_BULK.js +5 -5
- package/src/client/websocket/handlers/MESSAGE_POLL_VOTE_ADD.js +5 -0
- package/src/client/websocket/handlers/MESSAGE_POLL_VOTE_REMOVE.js +5 -0
- package/src/client/websocket/handlers/MESSAGE_REACTION_ADD.js +5 -5
- package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE.js +5 -5
- package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE_ALL.js +5 -5
- package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE_EMOJI.js +5 -5
- package/src/client/websocket/handlers/MESSAGE_UPDATE.js +16 -16
- package/src/client/websocket/handlers/PRESENCE_UPDATE.js +5 -5
- package/src/client/websocket/handlers/READY.js +121 -80
- package/src/client/websocket/handlers/RELATIONSHIP_ADD.js +19 -19
- package/src/client/websocket/handlers/RELATIONSHIP_REMOVE.js +17 -17
- package/src/client/websocket/handlers/RELATIONSHIP_UPDATE.js +41 -41
- package/src/client/websocket/handlers/RESUMED.js +14 -14
- package/src/client/websocket/handlers/STAGE_INSTANCE_CREATE.js +5 -5
- package/src/client/websocket/handlers/STAGE_INSTANCE_DELETE.js +5 -5
- package/src/client/websocket/handlers/STAGE_INSTANCE_UPDATE.js +5 -5
- package/src/client/websocket/handlers/THREAD_CREATE.js +5 -5
- package/src/client/websocket/handlers/THREAD_DELETE.js +5 -5
- package/src/client/websocket/handlers/THREAD_LIST_SYNC.js +5 -5
- package/src/client/websocket/handlers/THREAD_MEMBERS_UPDATE.js +5 -5
- package/src/client/websocket/handlers/THREAD_MEMBER_UPDATE.js +5 -5
- package/src/client/websocket/handlers/THREAD_UPDATE.js +16 -16
- package/src/client/websocket/handlers/TYPING_START.js +5 -5
- package/src/client/websocket/handlers/USER_GUILD_SETTINGS_UPDATE.js +6 -6
- package/src/client/websocket/handlers/USER_NOTE_UPDATE.js +5 -5
- package/src/client/websocket/handlers/USER_REQUIRED_ACTION_UPDATE.js +78 -78
- package/src/client/websocket/handlers/USER_SETTINGS_UPDATE.js +5 -5
- package/src/client/websocket/handlers/USER_UPDATE.js +5 -5
- package/src/client/websocket/handlers/VOICE_CHANNEL_EFFECT_SEND.js +16 -0
- package/src/client/websocket/handlers/VOICE_CHANNEL_STATUS_UPDATE.js +12 -12
- package/src/client/websocket/handlers/VOICE_SERVER_UPDATE.js +6 -6
- package/src/client/websocket/handlers/VOICE_STATE_UPDATE.js +5 -5
- package/src/client/websocket/handlers/WEBHOOKS_UPDATE.js +5 -5
- package/src/client/websocket/handlers/index.js +84 -81
- package/src/errors/DJSError.js +61 -61
- package/src/errors/Messages.js +217 -182
- package/src/errors/index.js +4 -4
- package/src/index.js +172 -158
- package/src/managers/ApplicationCommandManager.js +264 -264
- package/src/managers/ApplicationCommandPermissionsManager.js +417 -417
- package/src/managers/AutoModerationRuleManager.js +296 -296
- package/src/managers/BaseGuildEmojiManager.js +80 -80
- package/src/managers/BaseManager.js +19 -19
- package/src/managers/BillingManager.js +66 -66
- package/src/managers/CachedManager.js +71 -71
- package/src/managers/ChannelManager.js +148 -138
- package/src/managers/ClientUserSettingManager.js +372 -372
- package/src/managers/DataManager.js +61 -61
- package/src/managers/GuildBanManager.js +250 -204
- package/src/managers/GuildChannelManager.js +488 -504
- package/src/managers/GuildEmojiManager.js +171 -171
- package/src/managers/GuildEmojiRoleManager.js +118 -118
- package/src/managers/GuildForumThreadManager.js +108 -108
- package/src/managers/GuildInviteManager.js +213 -213
- package/src/managers/GuildManager.js +338 -304
- package/src/managers/GuildMemberManager.js +599 -593
- package/src/managers/GuildMemberRoleManager.js +195 -191
- package/src/managers/GuildScheduledEventManager.js +314 -296
- package/src/managers/GuildSettingManager.js +155 -155
- package/src/managers/GuildStickerManager.js +179 -179
- package/src/managers/GuildTextThreadManager.js +98 -98
- package/src/managers/InteractionManager.js +39 -39
- package/src/managers/MessageManager.js +423 -391
- package/src/managers/PermissionOverwriteManager.js +164 -166
- package/src/managers/PresenceManager.js +71 -58
- package/src/managers/ReactionManager.js +67 -67
- package/src/managers/ReactionUserManager.js +73 -71
- package/src/managers/RelationshipManager.js +278 -265
- package/src/managers/RoleManager.js +448 -352
- package/src/managers/SessionManager.js +66 -0
- package/src/managers/StageInstanceManager.js +162 -162
- package/src/managers/ThreadManager.js +175 -174
- package/src/managers/ThreadMemberManager.js +186 -186
- package/src/managers/UserManager.js +136 -146
- package/src/managers/UserNoteManager.js +53 -53
- package/src/managers/VoiceStateManager.js +59 -37
- package/src/rest/APIRequest.js +154 -154
- package/src/rest/APIRouter.js +53 -53
- package/src/rest/DiscordAPIError.js +119 -104
- package/src/rest/HTTPError.js +62 -62
- package/src/rest/RESTManager.js +67 -62
- package/src/rest/RateLimitError.js +55 -55
- package/src/rest/RequestHandler.js +466 -444
- package/src/sharding/Shard.js +444 -443
- package/src/sharding/ShardClientUtil.js +279 -275
- package/src/sharding/ShardingManager.js +319 -318
- package/src/structures/AnonymousGuild.js +98 -98
- package/src/structures/ApplicationCommand.js +593 -593
- package/src/structures/ApplicationRoleConnectionMetadata.js +48 -48
- package/src/structures/AutoModerationActionExecution.js +89 -89
- package/src/structures/AutoModerationRule.js +294 -294
- package/src/structures/AutocompleteInteraction.js +107 -107
- package/src/structures/Base.js +43 -43
- package/src/structures/BaseCommandInteraction.js +211 -211
- package/src/structures/BaseGuild.js +116 -116
- package/src/structures/BaseGuildEmoji.js +56 -56
- package/src/structures/BaseGuildTextChannel.js +191 -191
- package/src/structures/BaseGuildVoiceChannel.js +241 -241
- package/src/structures/BaseMessageComponent.js +181 -114
- package/src/structures/ButtonInteraction.js +11 -11
- package/src/structures/CallState.js +63 -63
- package/src/structures/CategoryChannel.js +85 -85
- package/src/structures/Channel.js +284 -270
- package/src/structures/ClientPresence.js +77 -88
- package/src/structures/ClientUser.js +479 -450
- package/src/structures/CommandInteraction.js +41 -41
- package/src/structures/CommandInteractionOptionResolver.js +276 -276
- package/src/structures/ContainerComponent.js +68 -0
- package/src/structures/ContextMenuInteraction.js +65 -65
- package/src/structures/DMChannel.js +219 -217
- package/src/structures/DirectoryChannel.js +20 -20
- package/src/structures/Emoji.js +148 -148
- package/src/structures/FileComponent.js +49 -0
- package/src/structures/ForumChannel.js +31 -261
- package/src/structures/GroupDMChannel.js +394 -387
- package/src/structures/Guild.js +1643 -1608
- package/src/structures/GuildAuditLogs.js +746 -729
- package/src/structures/GuildBan.js +59 -59
- package/src/structures/GuildBoost.js +108 -108
- package/src/structures/GuildChannel.js +470 -468
- package/src/structures/GuildEmoji.js +161 -161
- package/src/structures/GuildMember.js +636 -568
- package/src/structures/GuildPreview.js +191 -191
- package/src/structures/GuildPreviewEmoji.js +27 -27
- package/src/structures/GuildScheduledEvent.js +536 -441
- package/src/structures/GuildTemplate.js +236 -236
- package/src/structures/Integration.js +188 -188
- package/src/structures/IntegrationApplication.js +96 -96
- package/src/structures/Interaction.js +290 -290
- package/src/structures/InteractionCollector.js +248 -248
- package/src/structures/InteractionWebhook.js +43 -43
- package/src/structures/Invite.js +358 -358
- package/src/structures/InviteGuild.js +23 -23
- package/src/structures/InviteStageInstance.js +86 -86
- package/src/structures/MediaChannel.js +11 -0
- package/src/structures/MediaGalleryComponent.js +41 -0
- package/src/structures/MediaGalleryItem.js +47 -0
- package/src/structures/Message.js +1252 -1236
- package/src/structures/MessageActionRow.js +105 -103
- package/src/structures/MessageAttachment.js +216 -204
- package/src/structures/MessageButton.js +166 -165
- package/src/structures/MessageCollector.js +146 -146
- package/src/structures/MessageComponentInteraction.js +120 -120
- package/src/structures/MessageContextMenuInteraction.js +20 -20
- package/src/structures/MessageEmbed.js +596 -586
- package/src/structures/MessageMentions.js +273 -273
- package/src/structures/MessagePayload.js +354 -316
- package/src/structures/MessageReaction.js +181 -171
- package/src/structures/MessageSelectMenu.js +141 -140
- package/src/structures/Modal.js +161 -174
- package/src/structures/ModalSubmitFieldsResolver.js +53 -53
- package/src/structures/ModalSubmitInteraction.js +119 -119
- package/src/structures/NewsChannel.js +32 -32
- package/src/structures/OAuth2Guild.js +28 -28
- package/src/structures/PermissionOverwrites.js +198 -196
- package/src/structures/Poll.js +108 -0
- package/src/structures/PollAnswer.js +88 -0
- package/src/structures/Presence.js +1105 -443
- package/src/structures/ReactionCollector.js +229 -229
- package/src/structures/ReactionEmoji.js +31 -31
- package/src/structures/Role.js +590 -531
- package/src/structures/SectionComponent.js +48 -0
- package/src/structures/SelectMenuInteraction.js +21 -21
- package/src/structures/SeparatorComponent.js +48 -0
- package/src/structures/Session.js +81 -0
- package/src/structures/StageChannel.js +104 -104
- package/src/structures/StageInstance.js +208 -208
- package/src/structures/Sticker.js +310 -310
- package/src/structures/StickerPack.js +95 -95
- package/src/structures/StoreChannel.js +56 -56
- package/src/structures/Team.js +118 -118
- package/src/structures/TeamMember.js +80 -71
- package/src/structures/TextChannel.js +33 -33
- package/src/structures/TextDisplayComponent.js +40 -0
- package/src/structures/TextInputComponent.js +132 -131
- package/src/structures/ThreadChannel.js +605 -607
- package/src/structures/ThreadMember.js +105 -105
- package/src/structures/ThreadOnlyChannel.js +249 -0
- package/src/structures/ThumbnailComponent.js +57 -0
- package/src/structures/Typing.js +74 -74
- package/src/structures/UnfurledMediaItem.js +29 -0
- package/src/structures/User.js +640 -509
- package/src/structures/UserContextMenuInteraction.js +29 -29
- package/src/structures/VoiceChannel.js +110 -110
- package/src/structures/VoiceChannelEffect.js +69 -0
- package/src/structures/VoiceRegion.js +53 -53
- package/src/structures/VoiceState.js +354 -341
- package/src/structures/WebEmbed.js +373 -373
- package/src/structures/Webhook.js +478 -467
- package/src/structures/WelcomeChannel.js +60 -60
- package/src/structures/WelcomeScreen.js +48 -48
- package/src/structures/Widget.js +87 -87
- package/src/structures/WidgetMember.js +99 -99
- package/src/structures/interfaces/Application.js +825 -313
- package/src/structures/interfaces/Collector.js +300 -300
- package/src/structures/interfaces/InteractionResponses.js +313 -313
- package/src/structures/interfaces/TextBasedChannel.js +759 -721
- package/src/util/APITypes.js +59 -0
- package/src/util/ActivityFlags.js +44 -44
- package/src/util/ApplicationFlags.js +76 -76
- package/src/util/AttachmentFlags.js +38 -38
- package/src/util/BitField.js +170 -170
- package/src/util/ChannelFlags.js +45 -45
- package/src/util/Constants.js +1914 -1760
- package/src/util/DataResolver.js +146 -145
- package/src/util/Formatters.js +228 -228
- package/src/util/GuildMemberFlags.js +43 -43
- package/src/util/Intents.js +74 -74
- package/src/util/InviteFlags.js +34 -29
- package/src/util/LimitedCollection.js +131 -131
- package/src/util/MessageFlags.js +63 -54
- package/src/util/Options.js +358 -342
- package/src/util/Permissions.js +202 -192
- package/src/util/PremiumUsageFlags.js +31 -31
- package/src/util/PurchasedFlags.js +33 -33
- package/src/util/RemoteAuth.js +382 -379
- package/src/util/RoleFlags.js +37 -37
- package/src/util/SnowflakeUtil.js +92 -92
- package/src/util/Speaking.js +33 -0
- package/src/util/Sweepers.js +466 -466
- package/src/util/SystemChannelFlags.js +55 -55
- package/src/util/ThreadMemberFlags.js +30 -30
- package/src/util/UserFlags.js +104 -104
- package/src/util/Util.js +1048 -803
- package/typings/enums.d.ts +439 -291
- package/typings/index.d.ts +8247 -7390
- package/typings/rawDataTypes.d.ts +403 -342
- package/src/structures/RichPresence.js +0 -702
|
@@ -1,61 +1,61 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
const BaseClient = require('./BaseClient');
|
|
4
|
-
const { Error } = require('../errors');
|
|
5
|
-
const Webhook = require('../structures/Webhook');
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* The webhook client.
|
|
9
|
-
* @implements {Webhook}
|
|
10
|
-
* @extends {BaseClient}
|
|
11
|
-
*/
|
|
12
|
-
class WebhookClient extends BaseClient {
|
|
13
|
-
/**
|
|
14
|
-
* The data for the webhook client containing either an id and token or just a URL
|
|
15
|
-
* @typedef {Object} WebhookClientData
|
|
16
|
-
* @property {Snowflake} [id] The id of the webhook
|
|
17
|
-
* @property {string} [token] The token of the webhook
|
|
18
|
-
* @property {string} [url] The full URL for the webhook client
|
|
19
|
-
*/
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* @param {WebhookClientData} data The data of the webhook
|
|
23
|
-
* @param {ClientOptions} [options] Options for the client
|
|
24
|
-
*/
|
|
25
|
-
constructor(data, options) {
|
|
26
|
-
super(options);
|
|
27
|
-
Object.defineProperty(this, 'client', { value: this });
|
|
28
|
-
let { id, token } = data;
|
|
29
|
-
|
|
30
|
-
if ('url' in data) {
|
|
31
|
-
const url = data.url.match(
|
|
32
|
-
// eslint-disable-next-line no-useless-escape
|
|
33
|
-
/^https?:\/\/(?:canary|ptb)?\.?discord\.com\/api\/webhooks(?:\/v[0-9]\d*)?\/([^\/]+)\/([^\/]+)/i,
|
|
34
|
-
);
|
|
35
|
-
|
|
36
|
-
if (!url || url.length <= 1) throw new Error('WEBHOOK_URL_INVALID');
|
|
37
|
-
|
|
38
|
-
[, id, token] = url;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
this.id = id;
|
|
42
|
-
Object.defineProperty(this, 'token', { value: token, writable: true, configurable: true });
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
// These are here only for documentation purposes - they are implemented by Webhook
|
|
46
|
-
/* eslint-disable no-empty-function */
|
|
47
|
-
send() {}
|
|
48
|
-
sendSlackMessage() {}
|
|
49
|
-
fetchMessage() {}
|
|
50
|
-
edit() {}
|
|
51
|
-
editMessage() {}
|
|
52
|
-
delete() {}
|
|
53
|
-
deleteMessage() {}
|
|
54
|
-
get createdTimestamp() {}
|
|
55
|
-
get createdAt() {}
|
|
56
|
-
get url() {}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
Webhook.applyToClass(WebhookClient);
|
|
60
|
-
|
|
61
|
-
module.exports = WebhookClient;
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const BaseClient = require('./BaseClient');
|
|
4
|
+
const { Error } = require('../errors');
|
|
5
|
+
const Webhook = require('../structures/Webhook');
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* The webhook client.
|
|
9
|
+
* @implements {Webhook}
|
|
10
|
+
* @extends {BaseClient}
|
|
11
|
+
*/
|
|
12
|
+
class WebhookClient extends BaseClient {
|
|
13
|
+
/**
|
|
14
|
+
* The data for the webhook client containing either an id and token or just a URL
|
|
15
|
+
* @typedef {Object} WebhookClientData
|
|
16
|
+
* @property {Snowflake} [id] The id of the webhook
|
|
17
|
+
* @property {string} [token] The token of the webhook
|
|
18
|
+
* @property {string} [url] The full URL for the webhook client
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* @param {WebhookClientData} data The data of the webhook
|
|
23
|
+
* @param {ClientOptions} [options] Options for the client
|
|
24
|
+
*/
|
|
25
|
+
constructor(data, options) {
|
|
26
|
+
super(options);
|
|
27
|
+
Object.defineProperty(this, 'client', { value: this });
|
|
28
|
+
let { id, token } = data;
|
|
29
|
+
|
|
30
|
+
if ('url' in data) {
|
|
31
|
+
const url = data.url.match(
|
|
32
|
+
// eslint-disable-next-line no-useless-escape
|
|
33
|
+
/^https?:\/\/(?:canary|ptb)?\.?discord\.com\/api\/webhooks(?:\/v[0-9]\d*)?\/([^\/]+)\/([^\/]+)/i,
|
|
34
|
+
);
|
|
35
|
+
|
|
36
|
+
if (!url || url.length <= 1) throw new Error('WEBHOOK_URL_INVALID');
|
|
37
|
+
|
|
38
|
+
[, id, token] = url;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
this.id = id;
|
|
42
|
+
Object.defineProperty(this, 'token', { value: token, writable: true, configurable: true });
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// These are here only for documentation purposes - they are implemented by Webhook
|
|
46
|
+
/* eslint-disable no-empty-function */
|
|
47
|
+
send() {}
|
|
48
|
+
sendSlackMessage() {}
|
|
49
|
+
fetchMessage() {}
|
|
50
|
+
edit() {}
|
|
51
|
+
editMessage() {}
|
|
52
|
+
delete() {}
|
|
53
|
+
deleteMessage() {}
|
|
54
|
+
get createdTimestamp() {}
|
|
55
|
+
get createdAt() {}
|
|
56
|
+
get url() {}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
Webhook.applyToClass(WebhookClient);
|
|
60
|
+
|
|
61
|
+
module.exports = WebhookClient;
|
|
@@ -1,120 +1,116 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
const { PartialTypes } = require('../../util/Constants');
|
|
4
|
-
|
|
5
|
-
/*
|
|
6
|
-
|
|
7
|
-
ABOUT ACTIONS
|
|
8
|
-
|
|
9
|
-
Actions are similar to WebSocket Packet Handlers, but since introducing
|
|
10
|
-
the REST API methods, in order to prevent rewriting code to handle data,
|
|
11
|
-
"actions" have been introduced. They're basically what Packet Handlers
|
|
12
|
-
used to be but they're strictly for manipulating data and making sure
|
|
13
|
-
that WebSocket events don't clash with REST methods.
|
|
14
|
-
|
|
15
|
-
*/
|
|
16
|
-
|
|
17
|
-
class GenericAction {
|
|
18
|
-
constructor(client) {
|
|
19
|
-
this.client = client;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
handle(data) {
|
|
23
|
-
return data;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
getPayload(data, manager, id, partialType, cache) {
|
|
27
|
-
const existing = manager.cache.get(id);
|
|
28
|
-
if (!existing && this.client.options.partials.includes(partialType)) {
|
|
29
|
-
return manager._add(data, cache);
|
|
30
|
-
}
|
|
31
|
-
return existing;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
getChannel(data) {
|
|
35
|
-
const payloadData = {};
|
|
36
|
-
const id = data.channel_id ?? data.id;
|
|
37
|
-
|
|
38
|
-
if ('recipients' in data) {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
);
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
);
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
module.exports = GenericAction;
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const { PartialTypes } = require('../../util/Constants');
|
|
4
|
+
|
|
5
|
+
/*
|
|
6
|
+
|
|
7
|
+
ABOUT ACTIONS
|
|
8
|
+
|
|
9
|
+
Actions are similar to WebSocket Packet Handlers, but since introducing
|
|
10
|
+
the REST API methods, in order to prevent rewriting code to handle data,
|
|
11
|
+
"actions" have been introduced. They're basically what Packet Handlers
|
|
12
|
+
used to be but they're strictly for manipulating data and making sure
|
|
13
|
+
that WebSocket events don't clash with REST methods.
|
|
14
|
+
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
class GenericAction {
|
|
18
|
+
constructor(client) {
|
|
19
|
+
this.client = client;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
handle(data) {
|
|
23
|
+
return data;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
getPayload(data, manager, id, partialType, cache) {
|
|
27
|
+
const existing = manager.cache.get(id);
|
|
28
|
+
if (!existing && this.client.options.partials.includes(partialType)) {
|
|
29
|
+
return manager._add(data, cache);
|
|
30
|
+
}
|
|
31
|
+
return existing;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
getChannel(data) {
|
|
35
|
+
const payloadData = {};
|
|
36
|
+
const id = data.channel_id ?? data.id;
|
|
37
|
+
|
|
38
|
+
if (!('recipients' in data)) {
|
|
39
|
+
// Try to resolve the recipient, but do not add the client user.
|
|
40
|
+
const recipient = data.author ?? data.user ?? { id: data.user_id };
|
|
41
|
+
if (recipient.id !== this.client.user.id) payloadData.recipients = [recipient];
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
if (id !== undefined) payloadData.id = id;
|
|
45
|
+
|
|
46
|
+
return (
|
|
47
|
+
data[this.client.actions.injectedChannel] ??
|
|
48
|
+
this.getPayload({ ...data, ...payloadData }, this.client.channels, id, PartialTypes.CHANNEL)
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
getMessage(data, channel, cache) {
|
|
53
|
+
const id = data.message_id ?? data.id;
|
|
54
|
+
return (
|
|
55
|
+
data[this.client.actions.injectedMessage] ??
|
|
56
|
+
this.getPayload(
|
|
57
|
+
{
|
|
58
|
+
id,
|
|
59
|
+
channel_id: channel.id,
|
|
60
|
+
guild_id: data.guild_id ?? channel.guild?.id,
|
|
61
|
+
},
|
|
62
|
+
channel.messages,
|
|
63
|
+
id,
|
|
64
|
+
PartialTypes.MESSAGE,
|
|
65
|
+
cache,
|
|
66
|
+
)
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
getReaction(data, message, user) {
|
|
71
|
+
const id = data.emoji.id ?? decodeURIComponent(data.emoji.name);
|
|
72
|
+
return this.getPayload(
|
|
73
|
+
{
|
|
74
|
+
emoji: data.emoji,
|
|
75
|
+
count: message.partial ? null : 0,
|
|
76
|
+
me: user?.id === this.client.user.id,
|
|
77
|
+
},
|
|
78
|
+
message.reactions,
|
|
79
|
+
id,
|
|
80
|
+
PartialTypes.REACTION,
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
getMember(data, guild) {
|
|
85
|
+
return this.getPayload(data, guild.members, data.user.id, PartialTypes.GUILD_MEMBER);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
getUser(data) {
|
|
89
|
+
const id = data.user_id;
|
|
90
|
+
return data[this.client.actions.injectedUser] ?? this.getPayload({ id }, this.client.users, id, PartialTypes.USER);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
getUserFromMember(data) {
|
|
94
|
+
if (data.guild_id && data.member?.user) {
|
|
95
|
+
const guild = this.client.guilds.cache.get(data.guild_id);
|
|
96
|
+
if (guild) {
|
|
97
|
+
return guild.members._add(data.member).user;
|
|
98
|
+
} else {
|
|
99
|
+
return this.client.users._add(data.member.user);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
return this.getUser(data);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
getScheduledEvent(data, guild) {
|
|
106
|
+
const id = data.guild_scheduled_event_id ?? data.id;
|
|
107
|
+
return this.getPayload(
|
|
108
|
+
{ id, guild_id: data.guild_id ?? guild.id },
|
|
109
|
+
guild.scheduledEvents,
|
|
110
|
+
id,
|
|
111
|
+
PartialTypes.GUILD_SCHEDULED_EVENT,
|
|
112
|
+
);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
module.exports = GenericAction;
|
|
@@ -1,78 +1,80 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
class ActionsManager {
|
|
4
|
-
constructor(client) {
|
|
5
|
-
this.client = client;
|
|
6
|
-
|
|
7
|
-
// These symbols represent fully built data that we inject at times when calling actions manually.
|
|
8
|
-
// Action#getUser for example, will return the injected data (which is assumed to be a built structure)
|
|
9
|
-
// instead of trying to make it from provided data
|
|
10
|
-
this.injectedUser = Symbol('djs.actions.injectedUser');
|
|
11
|
-
this.injectedChannel = Symbol('djs.actions.injectedChannel');
|
|
12
|
-
this.injectedMessage = Symbol('djs.actions.injectedMessage');
|
|
13
|
-
|
|
14
|
-
this.register(require('./ApplicationCommandPermissionsUpdate'));
|
|
15
|
-
this.register(require('./AutoModerationActionExecution'));
|
|
16
|
-
this.register(require('./AutoModerationRuleCreate'));
|
|
17
|
-
this.register(require('./AutoModerationRuleDelete'));
|
|
18
|
-
this.register(require('./AutoModerationRuleUpdate'));
|
|
19
|
-
this.register(require('./ChannelCreate'));
|
|
20
|
-
this.register(require('./ChannelDelete'));
|
|
21
|
-
this.register(require('./ChannelUpdate'));
|
|
22
|
-
this.register(require('./GuildAuditLogEntryCreate'));
|
|
23
|
-
this.register(require('./GuildBanAdd'));
|
|
24
|
-
this.register(require('./GuildBanRemove'));
|
|
25
|
-
this.register(require('./GuildChannelsPositionUpdate'));
|
|
26
|
-
this.register(require('./GuildDelete'));
|
|
27
|
-
this.register(require('./GuildEmojiCreate'));
|
|
28
|
-
this.register(require('./GuildEmojiDelete'));
|
|
29
|
-
this.register(require('./GuildEmojiUpdate'));
|
|
30
|
-
this.register(require('./GuildEmojisUpdate'));
|
|
31
|
-
this.register(require('./GuildIntegrationsUpdate'));
|
|
32
|
-
this.register(require('./GuildMemberRemove'));
|
|
33
|
-
this.register(require('./GuildMemberUpdate'));
|
|
34
|
-
this.register(require('./GuildRoleCreate'));
|
|
35
|
-
this.register(require('./GuildRoleDelete'));
|
|
36
|
-
this.register(require('./GuildRoleUpdate'));
|
|
37
|
-
this.register(require('./GuildRolesPositionUpdate'));
|
|
38
|
-
this.register(require('./GuildScheduledEventCreate'));
|
|
39
|
-
this.register(require('./GuildScheduledEventDelete'));
|
|
40
|
-
this.register(require('./GuildScheduledEventUpdate'));
|
|
41
|
-
this.register(require('./GuildScheduledEventUserAdd'));
|
|
42
|
-
this.register(require('./GuildScheduledEventUserRemove'));
|
|
43
|
-
this.register(require('./GuildStickerCreate'));
|
|
44
|
-
this.register(require('./GuildStickerDelete'));
|
|
45
|
-
this.register(require('./GuildStickerUpdate'));
|
|
46
|
-
this.register(require('./GuildStickersUpdate'));
|
|
47
|
-
this.register(require('./GuildUpdate'));
|
|
48
|
-
this.register(require('./InviteCreate'));
|
|
49
|
-
this.register(require('./InviteDelete'));
|
|
50
|
-
this.register(require('./MessageCreate'));
|
|
51
|
-
this.register(require('./MessageDelete'));
|
|
52
|
-
this.register(require('./MessageDeleteBulk'));
|
|
53
|
-
this.register(require('./
|
|
54
|
-
this.register(require('./
|
|
55
|
-
this.register(require('./
|
|
56
|
-
this.register(require('./
|
|
57
|
-
this.register(require('./
|
|
58
|
-
this.register(require('./
|
|
59
|
-
this.register(require('./
|
|
60
|
-
this.register(require('./
|
|
61
|
-
this.register(require('./
|
|
62
|
-
this.register(require('./
|
|
63
|
-
this.register(require('./
|
|
64
|
-
this.register(require('./
|
|
65
|
-
this.register(require('./
|
|
66
|
-
this.register(require('./
|
|
67
|
-
this.register(require('./
|
|
68
|
-
this.register(require('./
|
|
69
|
-
this.register(require('./
|
|
70
|
-
this.register(require('./
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
class ActionsManager {
|
|
4
|
+
constructor(client) {
|
|
5
|
+
this.client = client;
|
|
6
|
+
|
|
7
|
+
// These symbols represent fully built data that we inject at times when calling actions manually.
|
|
8
|
+
// Action#getUser for example, will return the injected data (which is assumed to be a built structure)
|
|
9
|
+
// instead of trying to make it from provided data
|
|
10
|
+
this.injectedUser = Symbol('djs.actions.injectedUser');
|
|
11
|
+
this.injectedChannel = Symbol('djs.actions.injectedChannel');
|
|
12
|
+
this.injectedMessage = Symbol('djs.actions.injectedMessage');
|
|
13
|
+
|
|
14
|
+
this.register(require('./ApplicationCommandPermissionsUpdate'));
|
|
15
|
+
this.register(require('./AutoModerationActionExecution'));
|
|
16
|
+
this.register(require('./AutoModerationRuleCreate'));
|
|
17
|
+
this.register(require('./AutoModerationRuleDelete'));
|
|
18
|
+
this.register(require('./AutoModerationRuleUpdate'));
|
|
19
|
+
this.register(require('./ChannelCreate'));
|
|
20
|
+
this.register(require('./ChannelDelete'));
|
|
21
|
+
this.register(require('./ChannelUpdate'));
|
|
22
|
+
this.register(require('./GuildAuditLogEntryCreate'));
|
|
23
|
+
this.register(require('./GuildBanAdd'));
|
|
24
|
+
this.register(require('./GuildBanRemove'));
|
|
25
|
+
this.register(require('./GuildChannelsPositionUpdate'));
|
|
26
|
+
this.register(require('./GuildDelete'));
|
|
27
|
+
this.register(require('./GuildEmojiCreate'));
|
|
28
|
+
this.register(require('./GuildEmojiDelete'));
|
|
29
|
+
this.register(require('./GuildEmojiUpdate'));
|
|
30
|
+
this.register(require('./GuildEmojisUpdate'));
|
|
31
|
+
this.register(require('./GuildIntegrationsUpdate'));
|
|
32
|
+
this.register(require('./GuildMemberRemove'));
|
|
33
|
+
this.register(require('./GuildMemberUpdate'));
|
|
34
|
+
this.register(require('./GuildRoleCreate'));
|
|
35
|
+
this.register(require('./GuildRoleDelete'));
|
|
36
|
+
this.register(require('./GuildRoleUpdate'));
|
|
37
|
+
this.register(require('./GuildRolesPositionUpdate'));
|
|
38
|
+
this.register(require('./GuildScheduledEventCreate'));
|
|
39
|
+
this.register(require('./GuildScheduledEventDelete'));
|
|
40
|
+
this.register(require('./GuildScheduledEventUpdate'));
|
|
41
|
+
this.register(require('./GuildScheduledEventUserAdd'));
|
|
42
|
+
this.register(require('./GuildScheduledEventUserRemove'));
|
|
43
|
+
this.register(require('./GuildStickerCreate'));
|
|
44
|
+
this.register(require('./GuildStickerDelete'));
|
|
45
|
+
this.register(require('./GuildStickerUpdate'));
|
|
46
|
+
this.register(require('./GuildStickersUpdate'));
|
|
47
|
+
this.register(require('./GuildUpdate'));
|
|
48
|
+
this.register(require('./InviteCreate'));
|
|
49
|
+
this.register(require('./InviteDelete'));
|
|
50
|
+
this.register(require('./MessageCreate'));
|
|
51
|
+
this.register(require('./MessageDelete'));
|
|
52
|
+
this.register(require('./MessageDeleteBulk'));
|
|
53
|
+
this.register(require('./MessagePollVoteAdd'));
|
|
54
|
+
this.register(require('./MessagePollVoteRemove'));
|
|
55
|
+
this.register(require('./MessageReactionAdd'));
|
|
56
|
+
this.register(require('./MessageReactionRemove'));
|
|
57
|
+
this.register(require('./MessageReactionRemoveAll'));
|
|
58
|
+
this.register(require('./MessageReactionRemoveEmoji'));
|
|
59
|
+
this.register(require('./MessageUpdate'));
|
|
60
|
+
this.register(require('./PresenceUpdate'));
|
|
61
|
+
this.register(require('./StageInstanceCreate'));
|
|
62
|
+
this.register(require('./StageInstanceDelete'));
|
|
63
|
+
this.register(require('./StageInstanceUpdate'));
|
|
64
|
+
this.register(require('./ThreadCreate'));
|
|
65
|
+
this.register(require('./ThreadDelete'));
|
|
66
|
+
this.register(require('./ThreadListSync'));
|
|
67
|
+
this.register(require('./ThreadMemberUpdate'));
|
|
68
|
+
this.register(require('./ThreadMembersUpdate'));
|
|
69
|
+
this.register(require('./TypingStart'));
|
|
70
|
+
this.register(require('./UserUpdate'));
|
|
71
|
+
this.register(require('./VoiceStateUpdate'));
|
|
72
|
+
this.register(require('./WebhooksUpdate'));
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
register(Action) {
|
|
76
|
+
this[Action.name.replace(/Action$/, '')] = new Action(this.client);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
module.exports = ActionsManager;
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
const Action = require('./Action');
|
|
4
|
-
const { Events } = require('../../util/Constants');
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* The data received in the {@link Client#event:applicationCommandPermissionsUpdate} event
|
|
8
|
-
* @typedef {Object} ApplicationCommandPermissionsUpdateData
|
|
9
|
-
* @property {Snowflake} id The id of the command or global entity that was updated
|
|
10
|
-
* @property {Snowflake} guildId The id of the guild in which permissions were updated
|
|
11
|
-
* @property {Snowflake} applicationId The id of the application that owns the command or entity being updated
|
|
12
|
-
* @property {ApplicationCommandPermissions[]} permissions The updated permissions
|
|
13
|
-
*/
|
|
14
|
-
|
|
15
|
-
class ApplicationCommandPermissionsUpdateAction extends Action {
|
|
16
|
-
handle(data) {
|
|
17
|
-
const client = this.client;
|
|
18
|
-
/**
|
|
19
|
-
* Emitted whenever permissions for an application command in a guild were updated.
|
|
20
|
-
* <warn>This includes permission updates for other applications in addition to the logged in client,
|
|
21
|
-
* check `data.applicationId` to verify which application the update is for</warn>
|
|
22
|
-
* @event Client#applicationCommandPermissionsUpdate
|
|
23
|
-
* @param {ApplicationCommandPermissionsUpdateData} data The updated permissions
|
|
24
|
-
*/
|
|
25
|
-
client.emit(Events.APPLICATION_COMMAND_PERMISSIONS_UPDATE, {
|
|
26
|
-
permissions: data.permissions,
|
|
27
|
-
id: data.id,
|
|
28
|
-
guildId: data.guild_id,
|
|
29
|
-
applicationId: data.application_id,
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
module.exports = ApplicationCommandPermissionsUpdateAction;
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const Action = require('./Action');
|
|
4
|
+
const { Events } = require('../../util/Constants');
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* The data received in the {@link Client#event:applicationCommandPermissionsUpdate} event
|
|
8
|
+
* @typedef {Object} ApplicationCommandPermissionsUpdateData
|
|
9
|
+
* @property {Snowflake} id The id of the command or global entity that was updated
|
|
10
|
+
* @property {Snowflake} guildId The id of the guild in which permissions were updated
|
|
11
|
+
* @property {Snowflake} applicationId The id of the application that owns the command or entity being updated
|
|
12
|
+
* @property {ApplicationCommandPermissions[]} permissions The updated permissions
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
class ApplicationCommandPermissionsUpdateAction extends Action {
|
|
16
|
+
handle(data) {
|
|
17
|
+
const client = this.client;
|
|
18
|
+
/**
|
|
19
|
+
* Emitted whenever permissions for an application command in a guild were updated.
|
|
20
|
+
* <warn>This includes permission updates for other applications in addition to the logged in client,
|
|
21
|
+
* check `data.applicationId` to verify which application the update is for</warn>
|
|
22
|
+
* @event Client#applicationCommandPermissionsUpdate
|
|
23
|
+
* @param {ApplicationCommandPermissionsUpdateData} data The updated permissions
|
|
24
|
+
*/
|
|
25
|
+
client.emit(Events.APPLICATION_COMMAND_PERMISSIONS_UPDATE, {
|
|
26
|
+
permissions: data.permissions,
|
|
27
|
+
id: data.id,
|
|
28
|
+
guildId: data.guild_id,
|
|
29
|
+
applicationId: data.application_id,
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
module.exports = ApplicationCommandPermissionsUpdateAction;
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
const Action = require('./Action');
|
|
4
|
-
const AutoModerationActionExecution = require('../../structures/AutoModerationActionExecution');
|
|
5
|
-
const { Events } = require('../../util/Constants');
|
|
6
|
-
|
|
7
|
-
class AutoModerationActionExecutionAction extends Action {
|
|
8
|
-
handle(data) {
|
|
9
|
-
const { client } = this;
|
|
10
|
-
const guild = client.guilds.cache.get(data.guild_id);
|
|
11
|
-
|
|
12
|
-
if (guild) {
|
|
13
|
-
/**
|
|
14
|
-
* Emitted whenever an auto moderation rule is triggered.
|
|
15
|
-
* <info>This event requires the {@link Permissions.FLAGS.MANAGE_GUILD} permission.</info>
|
|
16
|
-
* @event Client#autoModerationActionExecution
|
|
17
|
-
* @param {AutoModerationActionExecution} autoModerationActionExecution The data of the execution
|
|
18
|
-
* @deprecated This event is not received by user accounts.
|
|
19
|
-
*/
|
|
20
|
-
client.emit(Events.AUTO_MODERATION_ACTION_EXECUTION, new AutoModerationActionExecution(data, guild));
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
return {};
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
module.exports = AutoModerationActionExecutionAction;
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const Action = require('./Action');
|
|
4
|
+
const AutoModerationActionExecution = require('../../structures/AutoModerationActionExecution');
|
|
5
|
+
const { Events } = require('../../util/Constants');
|
|
6
|
+
|
|
7
|
+
class AutoModerationActionExecutionAction extends Action {
|
|
8
|
+
handle(data) {
|
|
9
|
+
const { client } = this;
|
|
10
|
+
const guild = client.guilds.cache.get(data.guild_id);
|
|
11
|
+
|
|
12
|
+
if (guild) {
|
|
13
|
+
/**
|
|
14
|
+
* Emitted whenever an auto moderation rule is triggered.
|
|
15
|
+
* <info>This event requires the {@link Permissions.FLAGS.MANAGE_GUILD} permission.</info>
|
|
16
|
+
* @event Client#autoModerationActionExecution
|
|
17
|
+
* @param {AutoModerationActionExecution} autoModerationActionExecution The data of the execution
|
|
18
|
+
* @deprecated This event is not received by user accounts.
|
|
19
|
+
*/
|
|
20
|
+
client.emit(Events.AUTO_MODERATION_ACTION_EXECUTION, new AutoModerationActionExecution(data, guild));
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
return {};
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
module.exports = AutoModerationActionExecutionAction;
|