@ovencord/discord.js 14.16.3

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.
Files changed (332) hide show
  1. package/LICENSE +191 -0
  2. package/README.md +148 -0
  3. package/package.json +73 -0
  4. package/src/client/Client.ts +967 -0
  5. package/src/client/actions/Action.ts +141 -0
  6. package/src/client/actions/ActionsManager.ts +138 -0
  7. package/src/client/actions/ChannelCreate.ts +21 -0
  8. package/src/client/actions/ChannelDelete.ts +20 -0
  9. package/src/client/actions/ChannelUpdate.ts +38 -0
  10. package/src/client/actions/GuildChannelsPositionUpdate.ts +17 -0
  11. package/src/client/actions/GuildEmojiCreate.ts +17 -0
  12. package/src/client/actions/GuildEmojiDelete.ts +16 -0
  13. package/src/client/actions/GuildEmojiUpdate.ts +17 -0
  14. package/src/client/actions/GuildEmojisUpdate.ts +30 -0
  15. package/src/client/actions/GuildMemberRemove.ts +29 -0
  16. package/src/client/actions/GuildMemberUpdate.ts +41 -0
  17. package/src/client/actions/GuildRoleCreate.ts +23 -0
  18. package/src/client/actions/GuildRoleDelete.ts +26 -0
  19. package/src/client/actions/GuildRolesPositionUpdate.ts +17 -0
  20. package/src/client/actions/GuildScheduledEventDelete.ts +28 -0
  21. package/src/client/actions/GuildScheduledEventUserAdd.ts +29 -0
  22. package/src/client/actions/GuildScheduledEventUserRemove.ts +29 -0
  23. package/src/client/actions/GuildSoundboardSoundDelete.ts +26 -0
  24. package/src/client/actions/GuildStickerCreate.ts +17 -0
  25. package/src/client/actions/GuildStickerDelete.ts +16 -0
  26. package/src/client/actions/GuildStickerUpdate.ts +17 -0
  27. package/src/client/actions/GuildStickersUpdate.ts +30 -0
  28. package/src/client/actions/GuildUpdate.ts +30 -0
  29. package/src/client/actions/InteractionCreate.ts +104 -0
  30. package/src/client/actions/MessageCreate.ts +38 -0
  31. package/src/client/actions/MessageDelete.ts +29 -0
  32. package/src/client/actions/MessageDeleteBulk.ts +45 -0
  33. package/src/client/actions/MessagePollVoteAdd.ts +37 -0
  34. package/src/client/actions/MessagePollVoteRemove.ts +35 -0
  35. package/src/client/actions/MessageReactionAdd.ts +68 -0
  36. package/src/client/actions/MessageReactionRemove.ts +47 -0
  37. package/src/client/actions/MessageReactionRemoveAll.ts +30 -0
  38. package/src/client/actions/MessageReactionRemoveEmoji.ts +25 -0
  39. package/src/client/actions/MessageUpdate.ts +22 -0
  40. package/src/client/actions/StageInstanceCreate.ts +25 -0
  41. package/src/client/actions/StageInstanceDelete.ts +28 -0
  42. package/src/client/actions/StageInstanceUpdate.ts +27 -0
  43. package/src/client/actions/ThreadCreate.ts +22 -0
  44. package/src/client/actions/ThreadMembersUpdate.ts +45 -0
  45. package/src/client/actions/TypingStart.ts +26 -0
  46. package/src/client/actions/UserUpdate.ts +33 -0
  47. package/src/client/voice/ClientVoiceManager.ts +46 -0
  48. package/src/client/websocket/handlers/APPLICATION_COMMAND_PERMISSIONS_UPDATE.ts +19 -0
  49. package/src/client/websocket/handlers/AUTO_MODERATION_ACTION_EXECUTION.ts +17 -0
  50. package/src/client/websocket/handlers/AUTO_MODERATION_RULE_CREATE.ts +18 -0
  51. package/src/client/websocket/handlers/AUTO_MODERATION_RULE_DELETE.ts +21 -0
  52. package/src/client/websocket/handlers/AUTO_MODERATION_RULE_UPDATE.ts +20 -0
  53. package/src/client/websocket/handlers/CHANNEL_CREATE.ts +4 -0
  54. package/src/client/websocket/handlers/CHANNEL_DELETE.ts +4 -0
  55. package/src/client/websocket/handlers/CHANNEL_PINS_UPDATE.ts +22 -0
  56. package/src/client/websocket/handlers/CHANNEL_UPDATE.ts +16 -0
  57. package/src/client/websocket/handlers/ENTITLEMENT_CREATE.ts +14 -0
  58. package/src/client/websocket/handlers/ENTITLEMENT_DELETE.ts +18 -0
  59. package/src/client/websocket/handlers/ENTITLEMENT_UPDATE.ts +16 -0
  60. package/src/client/websocket/handlers/GUILD_AUDIT_LOG_ENTRY_CREATE.ts +19 -0
  61. package/src/client/websocket/handlers/GUILD_BAN_ADD.ts +15 -0
  62. package/src/client/websocket/handlers/GUILD_BAN_REMOVE.ts +20 -0
  63. package/src/client/websocket/handlers/GUILD_CREATE.ts +34 -0
  64. package/src/client/websocket/handlers/GUILD_DELETE.ts +36 -0
  65. package/src/client/websocket/handlers/GUILD_EMOJIS_UPDATE.ts +4 -0
  66. package/src/client/websocket/handlers/GUILD_INTEGRATIONS_UPDATE.ts +15 -0
  67. package/src/client/websocket/handlers/GUILD_MEMBERS_CHUNK.ts +40 -0
  68. package/src/client/websocket/handlers/GUILD_MEMBER_ADD.ts +17 -0
  69. package/src/client/websocket/handlers/GUILD_MEMBER_REMOVE.ts +4 -0
  70. package/src/client/websocket/handlers/GUILD_MEMBER_UPDATE.ts +4 -0
  71. package/src/client/websocket/handlers/GUILD_ROLE_CREATE.ts +4 -0
  72. package/src/client/websocket/handlers/GUILD_ROLE_DELETE.ts +4 -0
  73. package/src/client/websocket/handlers/GUILD_ROLE_UPDATE.ts +21 -0
  74. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_CREATE.ts +17 -0
  75. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_DELETE.ts +4 -0
  76. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_UPDATE.ts +19 -0
  77. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_USER_ADD.ts +4 -0
  78. package/src/client/websocket/handlers/GUILD_SCHEDULED_EVENT_USER_REMOVE.ts +4 -0
  79. package/src/client/websocket/handlers/GUILD_SOUNDBOARD_SOUNDS_UPDATE.ts +24 -0
  80. package/src/client/websocket/handlers/GUILD_SOUNDBOARD_SOUND_CREATE.ts +18 -0
  81. package/src/client/websocket/handlers/GUILD_SOUNDBOARD_SOUND_DELETE.ts +4 -0
  82. package/src/client/websocket/handlers/GUILD_SOUNDBOARD_SOUND_UPDATE.ts +20 -0
  83. package/src/client/websocket/handlers/GUILD_STICKERS_UPDATE.ts +4 -0
  84. package/src/client/websocket/handlers/GUILD_UPDATE.ts +4 -0
  85. package/src/client/websocket/handlers/INTERACTION_CREATE.ts +4 -0
  86. package/src/client/websocket/handlers/INVITE_CREATE.ts +20 -0
  87. package/src/client/websocket/handlers/INVITE_DELETE.ts +23 -0
  88. package/src/client/websocket/handlers/MESSAGE_CREATE.ts +4 -0
  89. package/src/client/websocket/handlers/MESSAGE_DELETE.ts +4 -0
  90. package/src/client/websocket/handlers/MESSAGE_DELETE_BULK.ts +4 -0
  91. package/src/client/websocket/handlers/MESSAGE_POLL_VOTE_ADD.ts +4 -0
  92. package/src/client/websocket/handlers/MESSAGE_POLL_VOTE_REMOVE.ts +4 -0
  93. package/src/client/websocket/handlers/MESSAGE_REACTION_ADD.ts +4 -0
  94. package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE.ts +4 -0
  95. package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE_ALL.ts +4 -0
  96. package/src/client/websocket/handlers/MESSAGE_REACTION_REMOVE_EMOJI.ts +4 -0
  97. package/src/client/websocket/handlers/MESSAGE_UPDATE.ts +16 -0
  98. package/src/client/websocket/handlers/PRESENCE_UPDATE.ts +42 -0
  99. package/src/client/websocket/handlers/RATE_LIMITED.ts +23 -0
  100. package/src/client/websocket/handlers/READY.ts +29 -0
  101. package/src/client/websocket/handlers/SOUNDBOARD_SOUNDS.ts +24 -0
  102. package/src/client/websocket/handlers/STAGE_INSTANCE_CREATE.ts +4 -0
  103. package/src/client/websocket/handlers/STAGE_INSTANCE_DELETE.ts +4 -0
  104. package/src/client/websocket/handlers/STAGE_INSTANCE_UPDATE.ts +4 -0
  105. package/src/client/websocket/handlers/SUBSCRIPTION_CREATE.ts +14 -0
  106. package/src/client/websocket/handlers/SUBSCRIPTION_DELETE.ts +16 -0
  107. package/src/client/websocket/handlers/SUBSCRIPTION_UPDATE.ts +16 -0
  108. package/src/client/websocket/handlers/THREAD_CREATE.ts +4 -0
  109. package/src/client/websocket/handlers/THREAD_DELETE.ts +17 -0
  110. package/src/client/websocket/handlers/THREAD_LIST_SYNC.ts +50 -0
  111. package/src/client/websocket/handlers/THREAD_MEMBERS_UPDATE.ts +4 -0
  112. package/src/client/websocket/handlers/THREAD_MEMBER_UPDATE.ts +25 -0
  113. package/src/client/websocket/handlers/THREAD_UPDATE.ts +16 -0
  114. package/src/client/websocket/handlers/TYPING_START.ts +4 -0
  115. package/src/client/websocket/handlers/USER_UPDATE.ts +4 -0
  116. package/src/client/websocket/handlers/VOICE_CHANNEL_EFFECT_SEND.ts +16 -0
  117. package/src/client/websocket/handlers/VOICE_SERVER_UPDATE.ts +5 -0
  118. package/src/client/websocket/handlers/VOICE_STATE_UPDATE.ts +37 -0
  119. package/src/client/websocket/handlers/WEBHOOKS_UPDATE.ts +16 -0
  120. package/src/client/websocket/handlers/index.ts +74 -0
  121. package/src/errors/DJSError.ts +50 -0
  122. package/src/errors/ErrorCodes.ts +277 -0
  123. package/src/errors/Messages.ts +155 -0
  124. package/src/errors/index.ts +6 -0
  125. package/src/index.ts +241 -0
  126. package/src/managers/ApplicationCommandManager.ts +303 -0
  127. package/src/managers/ApplicationCommandPermissionsManager.ts +453 -0
  128. package/src/managers/ApplicationEmojiManager.ts +149 -0
  129. package/src/managers/AutoModerationRuleManager.ts +307 -0
  130. package/src/managers/BaseManager.ts +13 -0
  131. package/src/managers/CachedManager.ts +56 -0
  132. package/src/managers/CategoryChannelChildManager.ts +81 -0
  133. package/src/managers/ChannelManager.ts +194 -0
  134. package/src/managers/DMMessageManager.ts +15 -0
  135. package/src/managers/DataManager.ts +38 -0
  136. package/src/managers/EntitlementManager.ts +182 -0
  137. package/src/managers/GuildApplicationCommandManager.ts +29 -0
  138. package/src/managers/GuildBanManager.ts +221 -0
  139. package/src/managers/GuildChannelManager.ts +552 -0
  140. package/src/managers/GuildEmojiManager.ts +262 -0
  141. package/src/managers/GuildEmojiRoleManager.ts +134 -0
  142. package/src/managers/GuildForumThreadManager.ts +84 -0
  143. package/src/managers/GuildInviteManager.ts +236 -0
  144. package/src/managers/GuildManager.ts +265 -0
  145. package/src/managers/GuildMemberManager.ts +619 -0
  146. package/src/managers/GuildMemberRoleManager.ts +230 -0
  147. package/src/managers/GuildMessageManager.ts +31 -0
  148. package/src/managers/GuildScheduledEventManager.ts +330 -0
  149. package/src/managers/GuildSoundboardSoundManager.ts +157 -0
  150. package/src/managers/GuildStickerManager.ts +192 -0
  151. package/src/managers/GuildTextThreadManager.ts +91 -0
  152. package/src/managers/MessageManager.ts +352 -0
  153. package/src/managers/PartialGroupDMMessageManager.ts +15 -0
  154. package/src/managers/PermissionOverwriteManager.ts +174 -0
  155. package/src/managers/PollAnswerVoterManager.ts +59 -0
  156. package/src/managers/PresenceManager.ts +60 -0
  157. package/src/managers/ReactionManager.ts +72 -0
  158. package/src/managers/ReactionUserManager.ts +82 -0
  159. package/src/managers/RoleManager.ts +432 -0
  160. package/src/managers/StageInstanceManager.ts +166 -0
  161. package/src/managers/SubscriptionManager.ts +83 -0
  162. package/src/managers/ThreadManager.ts +210 -0
  163. package/src/managers/ThreadMemberManager.ts +194 -0
  164. package/src/managers/UserManager.ts +139 -0
  165. package/src/managers/VoiceStateManager.ts +61 -0
  166. package/src/sharding/Shard.ts +513 -0
  167. package/src/sharding/ShardClientUtil.ts +293 -0
  168. package/src/sharding/ShardingManager.ts +374 -0
  169. package/src/structures/ActionRow.ts +31 -0
  170. package/src/structures/AnnouncementChannel.ts +25 -0
  171. package/src/structures/AnonymousGuild.ts +110 -0
  172. package/src/structures/ApplicationCommand.ts +675 -0
  173. package/src/structures/ApplicationEmoji.ts +189 -0
  174. package/src/structures/ApplicationRoleConnectionMetadata.ts +54 -0
  175. package/src/structures/Attachment.ts +189 -0
  176. package/src/structures/AuthorizingIntegrationOwners.ts +63 -0
  177. package/src/structures/AutoModerationActionExecution.ts +138 -0
  178. package/src/structures/AutoModerationRule.ts +325 -0
  179. package/src/structures/AutocompleteInteraction.ts +115 -0
  180. package/src/structures/Base.ts +37 -0
  181. package/src/structures/BaseChannel.ts +188 -0
  182. package/src/structures/BaseGuild.ts +134 -0
  183. package/src/structures/BaseGuildEmoji.ts +113 -0
  184. package/src/structures/BaseGuildTextChannel.ts +230 -0
  185. package/src/structures/BaseGuildVoiceChannel.ts +270 -0
  186. package/src/structures/BaseInteraction.ts +393 -0
  187. package/src/structures/BaseInvite.ts +192 -0
  188. package/src/structures/BaseSelectMenuComponent.ts +58 -0
  189. package/src/structures/ButtonComponent.ts +68 -0
  190. package/src/structures/ButtonInteraction.ts +8 -0
  191. package/src/structures/CategoryChannel.ts +46 -0
  192. package/src/structures/ChannelSelectMenuComponent.ts +18 -0
  193. package/src/structures/ChannelSelectMenuInteraction.ts +34 -0
  194. package/src/structures/ChatInputCommandInteraction.ts +43 -0
  195. package/src/structures/ClientApplication.ts +470 -0
  196. package/src/structures/ClientPresence.ts +87 -0
  197. package/src/structures/ClientUser.ts +219 -0
  198. package/src/structures/CommandInteraction.ts +193 -0
  199. package/src/structures/CommandInteractionOptionResolver.ts +336 -0
  200. package/src/structures/Component.ts +59 -0
  201. package/src/structures/ContainerComponent.ts +63 -0
  202. package/src/structures/ContextMenuCommandInteraction.ts +68 -0
  203. package/src/structures/DMChannel.ts +148 -0
  204. package/src/structures/DirectoryChannel.ts +40 -0
  205. package/src/structures/Embed.ts +251 -0
  206. package/src/structures/Emoji.ts +61 -0
  207. package/src/structures/Entitlement.ts +206 -0
  208. package/src/structures/FileComponent.ts +41 -0
  209. package/src/structures/ForumChannel.ts +31 -0
  210. package/src/structures/GroupDMInvite.ts +34 -0
  211. package/src/structures/Guild.ts +1605 -0
  212. package/src/structures/GuildAuditLogs.ts +99 -0
  213. package/src/structures/GuildAuditLogsEntry.ts +557 -0
  214. package/src/structures/GuildBan.ts +65 -0
  215. package/src/structures/GuildChannel.ts +515 -0
  216. package/src/structures/GuildEmoji.ts +159 -0
  217. package/src/structures/GuildInvite.ts +233 -0
  218. package/src/structures/GuildMember.ts +643 -0
  219. package/src/structures/GuildOnboarding.ts +73 -0
  220. package/src/structures/GuildOnboardingPrompt.ts +93 -0
  221. package/src/structures/GuildOnboardingPromptOption.ts +100 -0
  222. package/src/structures/GuildPreview.ts +218 -0
  223. package/src/structures/GuildPreviewEmoji.ts +28 -0
  224. package/src/structures/GuildScheduledEvent.ts +593 -0
  225. package/src/structures/GuildTemplate.ts +229 -0
  226. package/src/structures/Integration.ts +257 -0
  227. package/src/structures/IntegrationApplication.ts +84 -0
  228. package/src/structures/InteractionCallback.ts +86 -0
  229. package/src/structures/InteractionCallbackResource.ts +57 -0
  230. package/src/structures/InteractionCallbackResponse.ts +35 -0
  231. package/src/structures/InteractionCollector.ts +260 -0
  232. package/src/structures/InteractionWebhook.ts +65 -0
  233. package/src/structures/InviteGuild.ts +22 -0
  234. package/src/structures/LabelComponent.ts +51 -0
  235. package/src/structures/MediaChannel.ts +8 -0
  236. package/src/structures/MediaGalleryComponent.ts +31 -0
  237. package/src/structures/MediaGalleryItem.ts +54 -0
  238. package/src/structures/MentionableSelectMenuComponent.ts +8 -0
  239. package/src/structures/MentionableSelectMenuInteraction.ts +76 -0
  240. package/src/structures/Message.ts +1202 -0
  241. package/src/structures/MessageCollector.ts +155 -0
  242. package/src/structures/MessageComponentInteraction.ts +132 -0
  243. package/src/structures/MessageContextMenuCommandInteraction.ts +18 -0
  244. package/src/structures/MessageMentions.ts +327 -0
  245. package/src/structures/MessagePayload.ts +325 -0
  246. package/src/structures/MessageReaction.ts +219 -0
  247. package/src/structures/ModalComponentResolver.ts +237 -0
  248. package/src/structures/ModalSubmitInteraction.ts +260 -0
  249. package/src/structures/OAuth2Guild.ts +30 -0
  250. package/src/structures/PartialGroupDMChannel.ts +151 -0
  251. package/src/structures/PermissionOverwrites.ts +222 -0
  252. package/src/structures/Poll.ts +195 -0
  253. package/src/structures/PollAnswer.ts +100 -0
  254. package/src/structures/Presence.ts +448 -0
  255. package/src/structures/PrimaryEntryPointCommandInteraction.ts +8 -0
  256. package/src/structures/ReactionCollector.ts +245 -0
  257. package/src/structures/ReactionEmoji.ts +30 -0
  258. package/src/structures/Role.ts +543 -0
  259. package/src/structures/RoleSelectMenuComponent.ts +8 -0
  260. package/src/structures/RoleSelectMenuInteraction.ts +34 -0
  261. package/src/structures/SKU.ts +62 -0
  262. package/src/structures/SectionComponent.ts +44 -0
  263. package/src/structures/SeparatorComponent.ts +29 -0
  264. package/src/structures/SoundboardSound.ts +176 -0
  265. package/src/structures/StageChannel.ts +118 -0
  266. package/src/structures/StageInstance.ts +173 -0
  267. package/src/structures/Sticker.ts +300 -0
  268. package/src/structures/StickerPack.ts +111 -0
  269. package/src/structures/StringSelectMenuComponent.ts +18 -0
  270. package/src/structures/StringSelectMenuInteraction.ts +21 -0
  271. package/src/structures/Subscription.ts +138 -0
  272. package/src/structures/Team.ts +131 -0
  273. package/src/structures/TeamMember.ts +77 -0
  274. package/src/structures/TextChannel.ts +33 -0
  275. package/src/structures/TextDisplayComponent.ts +18 -0
  276. package/src/structures/TextInputComponent.ts +28 -0
  277. package/src/structures/ThreadChannel.ts +680 -0
  278. package/src/structures/ThreadMember.ts +125 -0
  279. package/src/structures/ThreadOnlyChannel.ts +276 -0
  280. package/src/structures/ThumbnailComponent.ts +51 -0
  281. package/src/structures/Typing.ts +81 -0
  282. package/src/structures/UnfurledMediaItem.ts +33 -0
  283. package/src/structures/User.ts +511 -0
  284. package/src/structures/UserContextMenuCommandInteraction.ts +28 -0
  285. package/src/structures/UserSelectMenuComponent.ts +8 -0
  286. package/src/structures/UserSelectMenuInteraction.ts +54 -0
  287. package/src/structures/VoiceChannel.ts +119 -0
  288. package/src/structures/VoiceChannelEffect.ts +92 -0
  289. package/src/structures/VoiceRegion.ts +52 -0
  290. package/src/structures/VoiceState.ts +346 -0
  291. package/src/structures/Webhook.ts +526 -0
  292. package/src/structures/WelcomeChannel.ts +67 -0
  293. package/src/structures/WelcomeScreen.ts +53 -0
  294. package/src/structures/Widget.ts +110 -0
  295. package/src/structures/WidgetMember.ts +124 -0
  296. package/src/structures/interfaces/Application.ts +179 -0
  297. package/src/structures/interfaces/Collector.ts +372 -0
  298. package/src/structures/interfaces/InteractionResponses.ts +384 -0
  299. package/src/structures/interfaces/TextBasedChannel.ts +430 -0
  300. package/src/util/APITypes.ts +690 -0
  301. package/src/util/ActivityFlagsBitField.ts +26 -0
  302. package/src/util/ApplicationFlagsBitField.ts +43 -0
  303. package/src/util/AttachmentFlagsBitField.ts +26 -0
  304. package/src/util/BitField.ts +178 -0
  305. package/src/util/ChannelFlagsBitField.ts +43 -0
  306. package/src/util/Channels.ts +165 -0
  307. package/src/util/Colors.ts +72 -0
  308. package/src/util/Components.ts +285 -0
  309. package/src/util/Constants.ts +251 -0
  310. package/src/util/DataResolver.ts +146 -0
  311. package/src/util/Enums.ts +10 -0
  312. package/src/util/Events.ts +178 -0
  313. package/src/util/GuildMemberFlagsBitField.ts +43 -0
  314. package/src/util/IntentsBitField.ts +35 -0
  315. package/src/util/InviteFlagsBitField.ts +26 -0
  316. package/src/util/Invites.ts +27 -0
  317. package/src/util/LimitedCollection.ts +73 -0
  318. package/src/util/MessageFlagsBitField.ts +43 -0
  319. package/src/util/Options.ts +215 -0
  320. package/src/util/Partials.ts +50 -0
  321. package/src/util/PermissionsBitField.ts +113 -0
  322. package/src/util/RoleFlagsBitField.ts +26 -0
  323. package/src/util/SKUFlagsBitField.ts +26 -0
  324. package/src/util/ShardEvents.ts +26 -0
  325. package/src/util/Status.ts +16 -0
  326. package/src/util/Sweepers.ts +532 -0
  327. package/src/util/Symbols.ts +1 -0
  328. package/src/util/SystemChannelFlagsBitField.ts +45 -0
  329. package/src/util/ThreadMemberFlagsBitField.ts +33 -0
  330. package/src/util/Transformers.ts +123 -0
  331. package/src/util/UserFlagsBitField.ts +33 -0
  332. package/src/util/Util.ts +519 -0
@@ -0,0 +1,17 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, { d: data }) => {
5
+ const guild = client.guilds.cache.get(data.guild_id);
6
+ if (guild) {
7
+ guild.memberCount++;
8
+ const member = guild.members._add(data);
9
+ /**
10
+ * Emitted whenever a user joins a guild.
11
+ *
12
+ * @event Client#guildMemberAdd
13
+ * @param {GuildMember} member The member that has joined a guild
14
+ */
15
+ client.emit(Events.GuildMemberAdd, member);
16
+ }
17
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.GuildMemberRemove.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.GuildMemberUpdate.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.GuildRoleCreate.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.GuildRoleDelete.handle(packet.d);
4
+ };
@@ -0,0 +1,21 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, { d: data }) => {
5
+ const guild = client.guilds.cache.get(data.guild_id);
6
+ if (!guild) return;
7
+
8
+ const role = guild.roles.cache.get(data.role.id);
9
+ if (!role) return;
10
+
11
+ const old = role._update(data.role);
12
+
13
+ /**
14
+ * Emitted whenever a guild role is updated.
15
+ *
16
+ * @event Client#roleUpdate
17
+ * @param {Role} oldRole The role before the update
18
+ * @param {Role} newRole The role after the update
19
+ */
20
+ client.emit(Events.GuildRoleUpdate, old, role);
21
+ };
@@ -0,0 +1,17 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, { d: data }) => {
5
+ const guild = client.guilds.cache.get(data.guild_id);
6
+ if (!guild) return;
7
+
8
+ const guildScheduledEvent = guild.scheduledEvents._add(data);
9
+
10
+ /**
11
+ * Emitted whenever a guild scheduled event is created.
12
+ *
13
+ * @event Client#guildScheduledEventCreate
14
+ * @param {GuildScheduledEvent} guildScheduledEvent The created guild scheduled event
15
+ */
16
+ client.emit(Events.GuildScheduledEventCreate, guildScheduledEvent);
17
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.GuildScheduledEventDelete.handle(packet.d);
4
+ };
@@ -0,0 +1,19 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, { d: data }) => {
5
+ const guild = client.guilds.cache.get(data.guild_id);
6
+ if (!guild) return;
7
+
8
+ const oldGuildScheduledEvent = guild.scheduledEvents.cache.get(data.id)?._clone() ?? null;
9
+ const newGuildScheduledEvent = guild.scheduledEvents._add(data);
10
+
11
+ /**
12
+ * Emitted whenever a guild scheduled event gets updated.
13
+ *
14
+ * @event Client#guildScheduledEventUpdate
15
+ * @param {?GuildScheduledEvent} oldGuildScheduledEvent The guild scheduled event object before the update
16
+ * @param {GuildScheduledEvent} newGuildScheduledEvent The guild scheduled event object after the update
17
+ */
18
+ client.emit(Events.GuildScheduledEventUpdate, oldGuildScheduledEvent, newGuildScheduledEvent);
19
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.GuildScheduledEventUserAdd.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.GuildScheduledEventUserRemove.handle(packet.d);
4
+ };
@@ -0,0 +1,24 @@
1
+
2
+ import { Collection } from '@ovencord/collection';
3
+ import { Events } from '../../../util/Events.js';
4
+
5
+ module.exports = (client, { d: data }) => {
6
+ const guild = client.guilds.cache.get(data.guild_id);
7
+
8
+ if (!guild) return;
9
+
10
+ const soundboardSounds = new Collection();
11
+
12
+ for (const soundboardSound of data.soundboard_sounds) {
13
+ soundboardSounds.set(soundboardSound.sound_id, guild.soundboardSounds._add(soundboardSound));
14
+ }
15
+
16
+ /**
17
+ * Emitted whenever multiple guild soundboard sounds are updated.
18
+ *
19
+ * @event Client#guildSoundboardSoundsUpdate
20
+ * @param {Collection<Snowflake, SoundboardSound>} soundboardSounds The updated soundboard sounds
21
+ * @param {Guild} guild The guild that the soundboard sounds are from
22
+ */
23
+ client.emit(Events.GuildSoundboardSoundsUpdate, soundboardSounds, guild);
24
+ };
@@ -0,0 +1,18 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, { d: data }) => {
5
+ const guild = client.guilds.cache.get(data.guild_id);
6
+
7
+ if (!guild) return;
8
+
9
+ const soundboardSound = guild.soundboardSounds._add(data);
10
+
11
+ /**
12
+ * Emitted whenever a guild soundboard sound is created.
13
+ *
14
+ * @event Client#guildSoundboardSoundCreate
15
+ * @param {SoundboardSound} soundboardSound The created guild soundboard sound
16
+ */
17
+ client.emit(Events.GuildSoundboardSoundCreate, soundboardSound);
18
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, { d: data }) => {
3
+ client.actions.GuildSoundboardSoundDelete.handle(data);
4
+ };
@@ -0,0 +1,20 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, { d: data }) => {
5
+ const guild = client.guilds.cache.get(data.guild_id);
6
+
7
+ if (!guild) return;
8
+
9
+ const oldGuildSoundboardSound = guild.soundboardSounds.cache.get(data.sound_id)?._clone() ?? null;
10
+ const newGuildSoundboardSound = guild.soundboardSounds._add(data);
11
+
12
+ /**
13
+ * Emitted whenever a guild soundboard sound is updated.
14
+ *
15
+ * @event Client#guildSoundboardSoundUpdate
16
+ * @param {?SoundboardSound} oldGuildSoundboardSound The guild soundboard sound before the update
17
+ * @param {SoundboardSound} newGuildSoundboardSound The guild soundboard sound after the update
18
+ */
19
+ client.emit(Events.GuildSoundboardSoundUpdate, oldGuildSoundboardSound, newGuildSoundboardSound);
20
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.GuildStickersUpdate.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.GuildUpdate.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.InteractionCreate.handle(packet.d);
4
+ };
@@ -0,0 +1,20 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, { d: data }) => {
5
+ const channel = client.channels.cache.get(data.channel_id);
6
+ const guild = client.guilds.cache.get(data.guild_id);
7
+ if (!channel) return;
8
+
9
+ const inviteData = Object.assign(data, { channel, guild });
10
+ const invite = guild.invites._add(inviteData);
11
+
12
+ /**
13
+ * Emitted when an invite is created.
14
+ * <info>This event requires the {@link PermissionFlagsBits.ManageChannels} permission for the channel.</info>
15
+ *
16
+ * @event Client#inviteCreate
17
+ * @param {GuildInvite} invite The invite that was created
18
+ */
19
+ client.emit(Events.InviteCreate, invite);
20
+ };
@@ -0,0 +1,23 @@
1
+
2
+ import { GuildInvite } from '../../../structures/GuildInvite.js';
3
+ import { Events } from '../../../util/Events.js';
4
+
5
+ module.exports = (client, { d: data }) => {
6
+ const channel = client.channels.cache.get(data.channel_id);
7
+ const guild = client.guilds.cache.get(data.guild_id);
8
+ if (!channel) return;
9
+
10
+ const inviteData = Object.assign(data, { channel, guild });
11
+ const invite = new GuildInvite(client, inviteData);
12
+
13
+ guild.invites.cache.delete(invite.code);
14
+
15
+ /**
16
+ * Emitted when an invite is deleted.
17
+ * <info>This event requires the {@link PermissionFlagsBits.ManageChannels} permission for the channel.</info>
18
+ *
19
+ * @event Client#inviteDelete
20
+ * @param {GuildInvite} invite The invite that was deleted
21
+ */
22
+ client.emit(Events.InviteDelete, invite);
23
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.MessageCreate.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.MessageDelete.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.MessageDeleteBulk.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.MessagePollVoteAdd.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.MessagePollVoteRemove.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.MessageReactionAdd.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.MessageReactionRemove.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.MessageReactionRemoveAll.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.MessageReactionRemoveEmoji.handle(packet.d);
4
+ };
@@ -0,0 +1,16 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, packet) => {
5
+ const { old, updated } = client.actions.MessageUpdate.handle(packet.d);
6
+ if (old && updated) {
7
+ /**
8
+ * Emitted whenever a message is updated - e.g. embed or content change.
9
+ *
10
+ * @event Client#messageUpdate
11
+ * @param {Message} oldMessage The message before the update
12
+ * @param {Message} newMessage The message after the update
13
+ */
14
+ client.emit(Events.MessageUpdate, old, updated);
15
+ }
16
+ };
@@ -0,0 +1,42 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+ import { Partials } from '../../../util/Partials.js';
4
+
5
+ module.exports = (client, { d: data }) => {
6
+ let user = client.users.cache.get(data.user.id);
7
+ if (!user && ('username' in data.user || client.options.partials.includes(Partials.User))) {
8
+ user = client.users._add(data.user);
9
+ }
10
+
11
+ if (!user) return;
12
+
13
+ if (data.user.username && !user._equals(data.user)) client.actions.UserUpdate.handle(data.user);
14
+
15
+ const guild = client.guilds.cache.get(data.guild_id);
16
+ if (!guild) return;
17
+
18
+ const oldPresence = guild.presences.cache.get(user.id)?._clone() ?? null;
19
+
20
+ let member = guild.members.cache.get(user.id);
21
+ if (!member && data.status !== 'offline') {
22
+ member = guild.members._add({
23
+ user,
24
+ deaf: false,
25
+ mute: false,
26
+ });
27
+
28
+ client.emit(Events.GuildMemberAvailable, member);
29
+ }
30
+
31
+ const newPresence = guild.presences._add(Object.assign(data, { guild }));
32
+ if (client.listenerCount(Events.PresenceUpdate) > 0 && !newPresence.equals(oldPresence)) {
33
+ /**
34
+ * Emitted whenever a guild member's presence (e.g. status, activity) is changed.
35
+ *
36
+ * @event Client#presenceUpdate
37
+ * @param {?Presence} oldPresence The presence before the update, if one at all
38
+ * @param {Presence} newPresence The presence after the update
39
+ */
40
+ client.emit(Events.PresenceUpdate, oldPresence, newPresence);
41
+ }
42
+ };
@@ -0,0 +1,23 @@
1
+
2
+ import process from 'node:process';
3
+ import { GatewayOpcodes } from 'discord-api-types/v10';
4
+
5
+ const emittedFor = new Set();
6
+
7
+ module.exports = (client, { d: data }) => {
8
+ switch (data.opcode) {
9
+ case GatewayOpcodes.RequestGuildMembers: {
10
+ break;
11
+ }
12
+
13
+ default: {
14
+ if (!emittedFor.has(data.opcode)) {
15
+ process.emitWarning(
16
+ `Hit a gateway rate limit on opcode ${data.opcode} (${GatewayOpcodes[data.opcode]}). If the discord.js version you're using is up-to-date, please open an issue on GitHub.`,
17
+ );
18
+
19
+ emittedFor.add(data.opcode);
20
+ }
21
+ }
22
+ }
23
+ };
@@ -0,0 +1,29 @@
1
+
2
+ import { ClientApplication } from '../../../structures/ClientApplication.js';
3
+ import { Status } from '../../../util/Status.js';
4
+
5
+ let ClientUser;
6
+
7
+ module.exports = (client, { d: data }, shardId) => {
8
+ if (client.user) {
9
+ client.user._patch(data.user);
10
+ } else {
11
+ ClientUser ??= require('../../../structures/ClientUser.js').ClientUser;
12
+ client.user = new ClientUser(client, data.user);
13
+ client.users.cache.set(client.user.id, client.user);
14
+ }
15
+
16
+ for (const guild of data.guilds) {
17
+ client.expectedGuilds.add(guild.id);
18
+ guild.shardId = shardId;
19
+ client.guilds._add(guild);
20
+ }
21
+
22
+ if (client.application) {
23
+ client.application._patch(data.application);
24
+ } else {
25
+ client.application = new ClientApplication(client, data.application);
26
+ }
27
+
28
+ client.status = Status.WaitingForGuilds;
29
+ };
@@ -0,0 +1,24 @@
1
+
2
+ import { Collection } from '@ovencord/collection';
3
+ import { Events } from '../../../util/Events.js';
4
+
5
+ module.exports = (client, { d: data }) => {
6
+ const guild = client.guilds.cache.get(data.guild_id);
7
+
8
+ if (!guild) return;
9
+
10
+ const soundboardSounds = new Collection();
11
+
12
+ for (const soundboardSound of data.soundboard_sounds) {
13
+ soundboardSounds.set(soundboardSound.sound_id, guild.soundboardSounds._add(soundboardSound));
14
+ }
15
+
16
+ /**
17
+ * Emitted whenever soundboard sounds are received (all soundboard sounds come from the same guild).
18
+ *
19
+ * @event Client#soundboardSounds
20
+ * @param {Collection<Snowflake, SoundboardSound>} soundboardSounds The sounds received
21
+ * @param {Guild} guild The guild that the soundboard sounds are from
22
+ */
23
+ client.emit(Events.SoundboardSounds, soundboardSounds, guild);
24
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.StageInstanceCreate.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.StageInstanceDelete.handle(packet.d);
4
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.StageInstanceUpdate.handle(packet.d);
4
+ };
@@ -0,0 +1,14 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, { d: data }) => {
5
+ const subscription = client.application.subscriptions._add(data);
6
+
7
+ /**
8
+ * Emitted whenever a subscription is created.
9
+ *
10
+ * @event Client#subscriptionCreate
11
+ * @param {Subscription} subscription The subscription that was created
12
+ */
13
+ client.emit(Events.SubscriptionCreate, subscription);
14
+ };
@@ -0,0 +1,16 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, { d: data }) => {
5
+ const subscription = client.application.subscriptions._add(data, false);
6
+
7
+ client.application.subscriptions.cache.delete(subscription.id);
8
+
9
+ /**
10
+ * Emitted whenever a subscription is deleted.
11
+ *
12
+ * @event Client#subscriptionDelete
13
+ * @param {Subscription} subscription The subscription that was deleted
14
+ */
15
+ client.emit(Events.SubscriptionDelete, subscription);
16
+ };
@@ -0,0 +1,16 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, { d: data }) => {
5
+ const oldSubscription = client.application.subscriptions.cache.get(data.id)?._clone() ?? null;
6
+ const newSubscription = client.application.subscriptions._add(data);
7
+
8
+ /**
9
+ * Emitted whenever a subscription is updated - i.e. when a user's subscription renews.
10
+ *
11
+ * @event Client#subscriptionUpdate
12
+ * @param {?Subscription} oldSubscription The subscription before the update
13
+ * @param {Subscription} newSubscription The subscription after the update
14
+ */
15
+ client.emit(Events.SubscriptionUpdate, oldSubscription, newSubscription);
16
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.ThreadCreate.handle(packet.d);
4
+ };
@@ -0,0 +1,17 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, { d: data }) => {
5
+ const thread = client.channels.cache.get(data.id);
6
+ if (!thread) return;
7
+
8
+ client.channels._remove(thread.id);
9
+
10
+ /**
11
+ * Emitted whenever a thread is deleted.
12
+ *
13
+ * @event Client#threadDelete
14
+ * @param {ThreadChannel} thread The thread that was deleted
15
+ */
16
+ client.emit(Events.ThreadDelete, thread);
17
+ };
@@ -0,0 +1,50 @@
1
+ import { Collection } from '@ovencord/collection';
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, { d: data }) => {
5
+ const guild = client.guilds.cache.get(data.guild_id);
6
+ if (!guild) return;
7
+
8
+ if (data.channel_ids) {
9
+ for (const id of data.channel_ids) {
10
+ const channel = client.channels.cache.get(id);
11
+ if (channel) removeStaleThreads(client, channel);
12
+ }
13
+ } else {
14
+ for (const channel of guild.channels.cache.values()) {
15
+ removeStaleThreads(client, channel);
16
+ }
17
+ }
18
+
19
+ const syncedThreads = data.threads.reduce((coll, rawThread) => {
20
+ const thread = client.channels._add(rawThread);
21
+ return coll.set(thread.id, thread);
22
+ }, new Collection());
23
+
24
+ for (const rawMember of Object.values(data.members)) {
25
+ // Discord sends the thread id as id in this object
26
+ const thread = client.channels.cache.get(rawMember.id);
27
+ if (thread) {
28
+ thread.members._add(rawMember);
29
+ }
30
+ }
31
+
32
+ /**
33
+ * Emitted whenever the client user gains access to a text or announcement channel that contains threads
34
+ *
35
+ * @event Client#threadListSync
36
+ * @param {Collection<Snowflake, ThreadChannel>} threads The threads that were synced
37
+ * @param {Guild} guild The guild that the threads were synced in
38
+ */
39
+ client.emit(Events.ThreadListSync, syncedThreads, guild);
40
+ };
41
+
42
+ export function removeStaleThreads(client, channel) {
43
+ if (!channel.threads) return;
44
+
45
+ for (const thread of channel.threads.cache.values()) {
46
+ if (!thread.archived) {
47
+ client.channels._remove(thread.id);
48
+ }
49
+ }
50
+ }
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.ThreadMembersUpdate.handle(packet.d);
4
+ };
@@ -0,0 +1,25 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, { d: data }) => {
5
+ // Discord sends the thread id as id in this object
6
+ const thread = client.channels.cache.get(data.id);
7
+ if (!thread) return;
8
+
9
+ const member = thread.members.cache.get(data.user_id);
10
+ if (!member) {
11
+ thread.members._add(data);
12
+ return;
13
+ }
14
+
15
+ const old = member._update(data);
16
+
17
+ /**
18
+ * Emitted whenever the client user's thread member is updated.
19
+ *
20
+ * @event Client#threadMemberUpdate
21
+ * @param {ThreadMember} oldMember The member before the update
22
+ * @param {ThreadMember} newMember The member after the update
23
+ */
24
+ client.emit(Events.ThreadMemberUpdate, old, member);
25
+ };
@@ -0,0 +1,16 @@
1
+
2
+ import { Events } from '../../../util/Events.js';
3
+
4
+ module.exports = (client, packet) => {
5
+ const { old, updated } = client.actions.ChannelUpdate.handle(packet.d);
6
+ if (old && updated) {
7
+ /**
8
+ * Emitted whenever a thread is updated - e.g. name change, archive state change, locked state change.
9
+ *
10
+ * @event Client#threadUpdate
11
+ * @param {ThreadChannel} oldThread The thread before the update
12
+ * @param {ThreadChannel} newThread The thread after the update
13
+ */
14
+ client.emit(Events.ThreadUpdate, old, updated);
15
+ }
16
+ };
@@ -0,0 +1,4 @@
1
+
2
+ module.exports = (client, packet) => {
3
+ client.actions.TypingStart.handle(packet.d);
4
+ };