seyfert 1.5.0 → 2.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 +21 -190
- package/README.md +18 -10
- package/lib/api/Router.js +2 -2
- package/lib/api/Routes/applications.d.ts +23 -1
- package/lib/api/Routes/channels.d.ts +1 -1
- package/lib/api/Routes/gateway.d.ts +1 -1
- package/lib/api/Routes/guilds.d.ts +5 -2
- package/lib/api/Routes/interactions.d.ts +1 -1
- package/lib/api/Routes/invites.d.ts +1 -1
- package/lib/api/Routes/stage-instances.d.ts +1 -1
- package/lib/api/Routes/stickers.d.ts +2 -2
- package/lib/api/Routes/users.d.ts +1 -1
- package/lib/api/Routes/voice.d.ts +1 -1
- package/lib/api/Routes/webhooks.d.ts +2 -2
- package/lib/api/api.d.ts +2 -2
- package/lib/api/api.js +2 -14
- package/lib/api/bucket.d.ts +0 -1
- package/lib/api/shared.d.ts +0 -1
- package/lib/api/utils/constants.d.ts +2 -5
- package/lib/api/utils/constants.js +3 -7
- package/lib/api/utils/utils.d.ts +1 -2
- package/lib/api/utils/utils.js +2 -3
- package/lib/builders/ActionRow.d.ts +1 -1
- package/lib/builders/ActionRow.js +3 -3
- package/lib/builders/Attachment.d.ts +2 -3
- package/lib/builders/Attachment.js +12 -13
- package/lib/builders/Base.d.ts +2 -2
- package/lib/builders/Base.js +1 -1
- package/lib/builders/Button.d.ts +7 -7
- package/lib/builders/Button.js +11 -9
- package/lib/builders/Embed.d.ts +1 -1
- package/lib/builders/Modal.d.ts +1 -1
- package/lib/builders/Modal.js +2 -2
- package/lib/builders/Poll.d.ts +2 -2
- package/lib/builders/Poll.js +5 -6
- package/lib/builders/SelectMenu.d.ts +1 -1
- package/lib/builders/SelectMenu.js +17 -18
- package/lib/builders/index.d.ts +1 -1
- package/lib/builders/index.js +10 -11
- package/lib/cache/adapters/default.d.ts +16 -9
- package/lib/cache/adapters/default.js +42 -31
- package/lib/cache/adapters/index.d.ts +0 -1
- package/lib/cache/adapters/index.js +0 -1
- package/lib/cache/adapters/limited.d.ts +17 -12
- package/lib/cache/adapters/limited.js +80 -36
- package/lib/cache/adapters/types.d.ts +6 -7
- package/lib/cache/adapters/workeradapter.d.ts +6 -6
- package/lib/cache/adapters/workeradapter.js +13 -0
- package/lib/cache/index.d.ts +18 -9
- package/lib/cache/index.js +319 -21
- package/lib/cache/resources/bans.d.ts +9 -6
- package/lib/cache/resources/bans.js +13 -4
- package/lib/cache/resources/channels.d.ts +6 -4
- package/lib/cache/resources/channels.js +13 -7
- package/lib/cache/resources/default/base.d.ts +7 -7
- package/lib/cache/resources/default/base.js +2 -2
- package/lib/cache/resources/default/guild-based.d.ts +6 -6
- package/lib/cache/resources/default/guild-based.js +6 -6
- package/lib/cache/resources/default/guild-related.d.ts +7 -7
- package/lib/cache/resources/default/guild-related.js +10 -8
- package/lib/cache/resources/emojis.d.ts +15 -6
- package/lib/cache/resources/emojis.js +13 -4
- package/lib/cache/resources/guilds.d.ts +9 -6
- package/lib/cache/resources/guilds.js +27 -6
- package/lib/cache/resources/members.d.ts +9 -6
- package/lib/cache/resources/members.js +22 -6
- package/lib/cache/resources/messages.d.ts +11 -7
- package/lib/cache/resources/messages.js +19 -7
- package/lib/cache/resources/overwrites.d.ts +11 -2
- package/lib/cache/resources/overwrites.js +9 -0
- package/lib/cache/resources/presence.d.ts +3 -2
- package/lib/cache/resources/roles.d.ts +9 -6
- package/lib/cache/resources/roles.js +13 -4
- package/lib/cache/resources/stage-instances.d.ts +2 -2
- package/lib/cache/resources/stickers.d.ts +9 -6
- package/lib/cache/resources/stickers.js +13 -4
- package/lib/cache/resources/threads.d.ts +9 -6
- package/lib/cache/resources/threads.js +13 -4
- package/lib/cache/resources/users.d.ts +9 -6
- package/lib/cache/resources/users.js +13 -4
- package/lib/cache/resources/voice-states.d.ts +11 -8
- package/lib/cache/resources/voice-states.js +15 -4
- package/lib/client/base.d.ts +28 -20
- package/lib/client/base.js +58 -56
- package/lib/client/client.d.ts +7 -16
- package/lib/client/client.js +29 -31
- package/lib/client/collectors.d.ts +10 -10
- package/lib/client/collectors.js +26 -1
- package/lib/client/httpclient.d.ts +8 -13
- package/lib/client/httpclient.js +27 -218
- package/lib/client/index.d.ts +1 -0
- package/lib/client/index.js +1 -0
- package/lib/client/transformers.d.ts +68 -0
- package/lib/client/transformers.js +99 -0
- package/lib/client/types.d.ts +5 -0
- package/lib/client/types.js +2 -0
- package/lib/client/workerclient.d.ts +14 -14
- package/lib/client/workerclient.js +112 -66
- package/lib/commands/applications/chat.d.ts +35 -34
- package/lib/commands/applications/chat.js +5 -9
- package/lib/commands/applications/chatcontext.d.ts +17 -17
- package/lib/commands/applications/chatcontext.js +5 -5
- package/lib/commands/applications/menu.d.ts +2 -3
- package/lib/commands/applications/menu.js +2 -5
- package/lib/commands/applications/menucontext.d.ts +14 -13
- package/lib/commands/applications/menucontext.js +9 -9
- package/lib/commands/applications/options.d.ts +1 -1
- package/lib/commands/applications/options.js +20 -21
- package/lib/commands/applications/shared.d.ts +3 -1
- package/lib/commands/decorators.d.ts +38 -20
- package/lib/commands/decorators.js +17 -18
- package/lib/commands/handle.d.ts +64 -0
- package/lib/commands/handle.js +685 -0
- package/lib/commands/handler.d.ts +27 -18
- package/lib/commands/handler.js +290 -164
- package/lib/commands/optionresolver.d.ts +13 -13
- package/lib/commands/optionresolver.js +23 -28
- package/lib/common/bot/watcher.d.ts +4 -33
- package/lib/common/bot/watcher.js +0 -109
- package/lib/common/index.d.ts +1 -0
- package/lib/common/index.js +1 -0
- package/lib/common/it/colors.js +48 -49
- package/lib/common/it/formatter.d.ts +32 -0
- package/lib/common/it/formatter.js +42 -0
- package/lib/common/it/logger.d.ts +0 -1
- package/lib/common/it/logger.js +3 -3
- package/lib/common/it/utils.d.ts +15 -2
- package/lib/common/it/utils.js +78 -17
- package/lib/common/shorters/application.d.ts +56 -0
- package/lib/common/shorters/application.js +81 -0
- package/lib/common/shorters/bans.d.ts +4 -5
- package/lib/common/shorters/bans.js +3 -3
- package/lib/common/shorters/channels.d.ts +7 -6
- package/lib/common/shorters/channels.js +19 -15
- package/lib/common/shorters/emojis.d.ts +5 -6
- package/lib/common/shorters/emojis.js +5 -5
- package/lib/common/shorters/guilds.d.ts +18 -16
- package/lib/common/shorters/guilds.js +31 -26
- package/lib/common/shorters/interaction.d.ts +6 -6
- package/lib/common/shorters/interaction.js +3 -2
- package/lib/common/shorters/members.d.ts +29 -12
- package/lib/common/shorters/members.js +55 -16
- package/lib/common/shorters/messages.d.ts +7 -8
- package/lib/common/shorters/messages.js +8 -7
- package/lib/common/shorters/reactions.d.ts +3 -3
- package/lib/common/shorters/reactions.js +11 -11
- package/lib/common/shorters/roles.d.ts +9 -7
- package/lib/common/shorters/roles.js +26 -7
- package/lib/common/shorters/templates.d.ts +7 -8
- package/lib/common/shorters/templates.js +7 -7
- package/lib/common/shorters/threads.d.ts +6 -7
- package/lib/common/shorters/threads.js +6 -9
- package/lib/common/shorters/users.d.ts +4 -4
- package/lib/common/shorters/users.js +8 -4
- package/lib/common/shorters/webhook.d.ts +10 -10
- package/lib/common/shorters/webhook.js +10 -9
- package/lib/common/types/resolvables.d.ts +2 -2
- package/lib/common/types/util.d.ts +3 -1
- package/lib/common/types/write.d.ts +1 -1
- package/lib/components/ActionRow.d.ts +1 -1
- package/lib/components/BaseComponent.d.ts +1 -1
- package/lib/components/BaseComponent.js +1 -1
- package/lib/components/BaseSelectMenuComponent.d.ts +1 -1
- package/lib/components/ButtonComponent.d.ts +17 -7
- package/lib/components/ButtonComponent.js +19 -2
- package/lib/components/ChannelSelectMenuComponent.d.ts +3 -3
- package/lib/components/MentionableSelectMenuComponent.d.ts +2 -2
- package/lib/components/RoleSelectMenuComponent.d.ts +2 -2
- package/lib/components/StringSelectMenuComponent.d.ts +2 -2
- package/lib/components/TextInputComponent.d.ts +2 -2
- package/lib/components/UserSelectMenuComponent.d.ts +2 -2
- package/lib/components/componentcommand.js +2 -2
- package/lib/components/componentcontext.d.ts +10 -9
- package/lib/components/componentcontext.js +8 -8
- package/lib/components/handler.d.ts +15 -14
- package/lib/components/handler.js +89 -93
- package/lib/components/index.d.ts +3 -3
- package/lib/components/index.js +12 -10
- package/lib/components/modalcontext.d.ts +12 -11
- package/lib/components/modalcontext.js +2 -2
- package/lib/deps/mixer.d.ts +8 -0
- package/lib/deps/mixer.js +66 -0
- package/lib/events/handler.d.ts +35 -13
- package/lib/events/handler.js +58 -25
- package/lib/events/hooks/application_command.d.ts +2 -2
- package/lib/events/hooks/auto_moderation.d.ts +6 -7
- package/lib/events/hooks/auto_moderation.js +4 -4
- package/lib/events/hooks/channel.d.ts +2 -2
- package/lib/events/hooks/channel.js +4 -7
- package/lib/events/hooks/custom.d.ts +3 -3
- package/lib/events/hooks/dispatch.d.ts +3 -4
- package/lib/events/hooks/dispatch.js +2 -2
- package/lib/events/hooks/entitlement.d.ts +5 -37
- package/lib/events/hooks/entitlement.js +7 -7
- package/lib/events/hooks/guild.d.ts +125 -125
- package/lib/events/hooks/guild.js +13 -15
- package/lib/events/hooks/integration.d.ts +27 -28
- package/lib/events/hooks/integration.js +3 -3
- package/lib/events/hooks/interactions.d.ts +2 -2
- package/lib/events/hooks/invite.d.ts +18 -17
- package/lib/events/hooks/message.d.ts +69 -54
- package/lib/events/hooks/message.js +4 -8
- package/lib/events/hooks/presence.d.ts +17 -16
- package/lib/events/hooks/stage.d.ts +4 -4
- package/lib/events/hooks/thread.d.ts +132 -63
- package/lib/events/hooks/thread.js +4 -4
- package/lib/events/hooks/typing.d.ts +28 -6
- package/lib/events/hooks/typing.js +2 -2
- package/lib/events/hooks/user.d.ts +3 -3
- package/lib/events/hooks/user.js +2 -2
- package/lib/events/hooks/voice.d.ts +28 -3
- package/lib/events/hooks/voice.js +8 -4
- package/lib/events/hooks/webhook.d.ts +1 -1
- package/lib/index.d.ts +5 -14
- package/lib/index.js +7 -12
- package/lib/langs/handler.d.ts +14 -10
- package/lib/langs/handler.js +40 -9
- package/lib/structures/AutoModerationRule.d.ts +4 -4
- package/lib/structures/AutoModerationRule.js +1 -2
- package/lib/structures/ClientUser.d.ts +1 -1
- package/lib/structures/Entitlement.d.ts +10 -0
- package/lib/structures/Entitlement.js +16 -0
- package/lib/structures/Guild.d.ts +33 -34
- package/lib/structures/Guild.js +5 -2
- package/lib/structures/GuildBan.d.ts +6 -6
- package/lib/structures/GuildBan.js +2 -1
- package/lib/structures/GuildEmoji.d.ts +4 -4
- package/lib/structures/GuildEmoji.js +3 -2
- package/lib/structures/GuildMember.d.ts +20 -17
- package/lib/structures/GuildMember.js +18 -8
- package/lib/structures/GuildPreview.d.ts +1 -1
- package/lib/structures/GuildRole.d.ts +5 -3
- package/lib/structures/GuildRole.js +8 -1
- package/lib/structures/GuildTemplate.d.ts +2 -2
- package/lib/structures/GuildTemplate.js +1 -1
- package/lib/structures/Interaction.d.ts +53 -36
- package/lib/structures/Interaction.js +127 -91
- package/lib/structures/Message.d.ts +29 -30
- package/lib/structures/Message.js +8 -9
- package/lib/structures/Poll.d.ts +4 -3
- package/lib/structures/Poll.js +6 -2
- package/lib/structures/Sticker.d.ts +7 -7
- package/lib/structures/Sticker.js +7 -7
- package/lib/structures/User.d.ts +5 -4
- package/lib/structures/User.js +2 -1
- package/lib/structures/VoiceState.d.ts +15 -11
- package/lib/structures/VoiceState.js +35 -17
- package/lib/structures/Webhook.d.ts +6 -7
- package/lib/structures/Webhook.js +6 -7
- package/lib/structures/channels.d.ts +11 -10
- package/lib/structures/channels.js +70 -65
- package/lib/structures/extra/BaseGuild.d.ts +1 -1
- package/lib/structures/extra/BaseGuild.js +3 -3
- package/lib/structures/extra/BitField.d.ts +1 -1
- package/lib/structures/extra/BitField.js +3 -2
- package/lib/structures/extra/DiscordBase.js +2 -2
- package/lib/structures/extra/Permissions.d.ts +3 -1
- package/lib/structures/extra/Permissions.js +8 -3
- package/lib/types/gateway.d.ts +1537 -0
- package/lib/types/gateway.js +4 -0
- package/lib/types/index.d.ts +9 -1
- package/lib/types/index.js +28 -1
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/attachment.d.ts +5 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/attachment.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/base.d.ts +22 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/base.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/boolean.d.ts +4 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/boolean.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/channel.d.ts +7 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/channel.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/integer.d.ts +17 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/integer.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/mentionable.d.ts +5 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/mentionable.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/number.d.ts +17 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/number.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/role.d.ts +5 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/role.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/shared.d.ts +25 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/shared.js +20 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/string.d.ts +17 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/string.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommand.d.ts +11 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommand.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommandGroup.d.ts +11 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/subcommandGroup.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/user.d.ts +5 -0
- package/lib/types/payloads/_interactions/_applicationCommands/_chatInput/user.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/chatInput.d.ts +60 -0
- package/lib/types/payloads/_interactions/_applicationCommands/chatInput.js +29 -0
- package/lib/types/payloads/_interactions/_applicationCommands/contextMenu.d.ts +65 -0
- package/lib/types/payloads/_interactions/_applicationCommands/contextMenu.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/internals.d.ts +8 -0
- package/lib/types/payloads/_interactions/_applicationCommands/internals.js +2 -0
- package/lib/types/payloads/_interactions/_applicationCommands/permissions.d.ts +54 -0
- package/lib/types/payloads/_interactions/_applicationCommands/permissions.js +20 -0
- package/lib/types/payloads/_interactions/applicationCommands.d.ts +153 -0
- package/lib/types/payloads/_interactions/applicationCommands.js +61 -0
- package/lib/types/payloads/_interactions/autocomplete.d.ts +10 -0
- package/lib/types/payloads/_interactions/autocomplete.js +2 -0
- package/lib/types/payloads/_interactions/base.d.ts +197 -0
- package/lib/types/payloads/_interactions/base.js +2 -0
- package/lib/types/payloads/_interactions/messageComponents.d.ts +41 -0
- package/lib/types/payloads/_interactions/messageComponents.js +2 -0
- package/lib/types/payloads/_interactions/modalSubmit.d.ts +35 -0
- package/lib/types/payloads/_interactions/modalSubmit.js +2 -0
- package/lib/types/payloads/_interactions/ping.d.ts +3 -0
- package/lib/types/payloads/_interactions/ping.js +2 -0
- package/lib/types/payloads/_interactions/responses.d.ts +112 -0
- package/lib/types/payloads/_interactions/responses.js +54 -0
- package/lib/types/payloads/application.d.ts +292 -0
- package/lib/types/payloads/application.js +117 -0
- package/lib/types/payloads/auditLog.d.ts +644 -0
- package/lib/types/payloads/auditLog.js +80 -0
- package/lib/types/payloads/autoModeration.d.ts +219 -0
- package/lib/types/payloads/autoModeration.js +87 -0
- package/lib/types/payloads/channel.d.ts +1708 -0
- package/lib/types/payloads/channel.js +372 -0
- package/lib/types/payloads/emoji.d.ts +48 -0
- package/lib/types/payloads/emoji.js +5 -0
- package/lib/types/payloads/gateway.d.ts +373 -0
- package/lib/types/payloads/gateway.js +82 -0
- package/lib/types/payloads/guild.d.ts +1060 -0
- package/lib/types/payloads/guild.js +324 -0
- package/lib/types/payloads/guildScheduledEvent.d.ts +138 -0
- package/lib/types/payloads/guildScheduledEvent.js +32 -0
- package/lib/types/payloads/index.d.ts +64 -0
- package/lib/types/payloads/index.js +37 -0
- package/lib/types/payloads/interactions.d.ts +24 -0
- package/lib/types/payloads/interactions.js +23 -0
- package/lib/types/payloads/invite.d.ts +121 -0
- package/lib/types/payloads/invite.js +23 -0
- package/lib/types/payloads/monetization.d.ts +150 -0
- package/lib/types/payloads/monetization.js +79 -0
- package/lib/types/payloads/oauth2.d.ts +131 -0
- package/lib/types/payloads/oauth2.js +135 -0
- package/lib/types/payloads/permissions.d.ts +97 -0
- package/lib/types/payloads/permissions.js +16 -0
- package/lib/types/payloads/poll.d.ts +104 -0
- package/lib/types/payloads/poll.js +16 -0
- package/lib/types/payloads/stageInstance.d.ts +77 -0
- package/lib/types/payloads/stageInstance.js +19 -0
- package/lib/types/payloads/sticker.d.ts +123 -0
- package/lib/types/payloads/sticker.js +30 -0
- package/lib/types/payloads/teams.d.ts +78 -0
- package/lib/types/payloads/teams.js +23 -0
- package/lib/types/payloads/template.d.ts +62 -0
- package/lib/types/payloads/template.js +5 -0
- package/lib/types/payloads/user.d.ts +337 -0
- package/lib/types/payloads/user.js +167 -0
- package/lib/types/payloads/voice.d.ts +89 -0
- package/lib/types/payloads/voice.js +5 -0
- package/lib/types/payloads/webhook.d.ts +76 -0
- package/lib/types/payloads/webhook.js +21 -0
- package/lib/types/rest/application.d.ts +57 -0
- package/lib/types/rest/application.js +2 -0
- package/lib/types/rest/auditLog.d.ts +30 -0
- package/lib/types/rest/auditLog.js +2 -0
- package/lib/types/rest/autoModeration.d.ts +66 -0
- package/lib/types/rest/autoModeration.js +2 -0
- package/lib/types/rest/channel.d.ts +712 -0
- package/lib/types/rest/channel.js +11 -0
- package/lib/types/rest/emoji.d.ts +54 -0
- package/lib/types/rest/emoji.js +2 -0
- package/lib/types/rest/gateway.d.ts +9 -0
- package/lib/types/rest/gateway.js +2 -0
- package/lib/types/rest/guild.d.ts +865 -0
- package/lib/types/rest/guild.js +2 -0
- package/lib/types/rest/guildScheduledEvent.d.ts +126 -0
- package/lib/types/rest/guildScheduledEvent.js +2 -0
- package/lib/types/rest/index.d.ts +296 -0
- package/lib/types/rest/index.js +292 -0
- package/lib/types/rest/interactions.d.ts +194 -0
- package/lib/types/rest/interactions.js +2 -0
- package/lib/types/rest/invite.d.ts +24 -0
- package/lib/types/rest/invite.js +2 -0
- package/lib/types/rest/monetization.d.ts +82 -0
- package/lib/types/rest/monetization.js +11 -0
- package/lib/types/rest/oauth2.d.ts +172 -0
- package/lib/types/rest/oauth2.js +2 -0
- package/lib/types/rest/poll.d.ts +44 -0
- package/lib/types/rest/poll.js +2 -0
- package/lib/types/rest/stageInstance.d.ts +58 -0
- package/lib/types/rest/stageInstance.js +2 -0
- package/lib/types/rest/sticker.d.ts +77 -0
- package/lib/types/rest/sticker.js +2 -0
- package/lib/types/rest/template.d.ts +62 -0
- package/lib/types/rest/template.js +2 -0
- package/lib/types/rest/user.d.ts +120 -0
- package/lib/types/rest/user.js +2 -0
- package/lib/types/rest/voice.d.ts +17 -0
- package/lib/types/rest/voice.js +2 -0
- package/lib/types/rest/webhook.d.ts +250 -0
- package/lib/types/rest/webhook.js +2 -0
- package/lib/types/utils/index.d.ts +797 -0
- package/lib/types/utils/index.js +799 -0
- package/lib/websocket/SharedTypes.d.ts +4 -3
- package/lib/websocket/SharedTypes.js +1 -1
- package/lib/websocket/constants/index.d.ts +0 -1
- package/lib/websocket/discord/basesocket.d.ts +7 -7
- package/lib/websocket/discord/basesocket.js +34 -22
- package/lib/websocket/discord/events/memberUpdate.d.ts +1 -6
- package/lib/websocket/discord/events/memberUpdate.js +2 -1
- package/lib/websocket/discord/events/presenceUpdate.d.ts +5 -18
- package/lib/websocket/discord/events/presenceUpdate.js +5 -6
- package/lib/websocket/discord/shard.d.ts +8 -8
- package/lib/websocket/discord/shard.js +59 -47
- package/lib/websocket/discord/sharder.d.ts +6 -5
- package/lib/websocket/discord/sharder.js +11 -10
- package/lib/websocket/discord/shared.d.ts +13 -5
- package/lib/websocket/discord/socket/custom.d.ts +52 -0
- package/lib/websocket/discord/socket/custom.js +283 -0
- package/lib/websocket/discord/worker.d.ts +5 -10
- package/lib/websocket/discord/workermanager.d.ts +8 -15
- package/lib/websocket/discord/workermanager.js +35 -39
- package/lib/websocket/structures/index.d.ts +0 -1
- package/lib/websocket/structures/index.js +1 -1
- package/lib/websocket/structures/timeout.d.ts +0 -1
- package/package.json +65 -74
- package/lib/cache/adapters/redis.d.ts +0 -37
- package/lib/cache/adapters/redis.js +0 -218
- package/lib/client/oninteractioncreate.d.ts +0 -4
- package/lib/client/oninteractioncreate.js +0 -198
- package/lib/client/onmessagecreate.d.ts +0 -13
- package/lib/client/onmessagecreate.js +0 -410
- package/lib/structures/extra/functions.d.ts +0 -12
- package/lib/structures/extra/functions.js +0 -70
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Transformers = void 0;
|
|
4
|
+
const commands_1 = require("../commands");
|
|
5
|
+
const structures_1 = require("../structures");
|
|
6
|
+
const GuildBan_1 = require("../structures/GuildBan");
|
|
7
|
+
class Transformers {
|
|
8
|
+
static AnonymousGuild(...args) {
|
|
9
|
+
return new structures_1.AnonymousGuild(...args);
|
|
10
|
+
}
|
|
11
|
+
static AutoModerationRule(...args) {
|
|
12
|
+
return new structures_1.AutoModerationRule(...args);
|
|
13
|
+
}
|
|
14
|
+
static BaseChannel(...args) {
|
|
15
|
+
return new structures_1.BaseChannel(...args);
|
|
16
|
+
}
|
|
17
|
+
static BaseGuildChannel(...args) {
|
|
18
|
+
return new structures_1.BaseGuildChannel(...args);
|
|
19
|
+
}
|
|
20
|
+
static TextGuildChannel(...args) {
|
|
21
|
+
return new structures_1.TextGuildChannel(...args);
|
|
22
|
+
}
|
|
23
|
+
static DMChannel(...args) {
|
|
24
|
+
return new structures_1.DMChannel(...args);
|
|
25
|
+
}
|
|
26
|
+
static VoiceChannel(...args) {
|
|
27
|
+
return new structures_1.VoiceChannel(...args);
|
|
28
|
+
}
|
|
29
|
+
static StageChannel(...args) {
|
|
30
|
+
return new structures_1.StageChannel(...args);
|
|
31
|
+
}
|
|
32
|
+
static MediaChannel(...args) {
|
|
33
|
+
return new structures_1.MediaChannel(...args);
|
|
34
|
+
}
|
|
35
|
+
static ForumChannel(...args) {
|
|
36
|
+
return new structures_1.ForumChannel(...args);
|
|
37
|
+
}
|
|
38
|
+
static ThreadChannel(...args) {
|
|
39
|
+
return new structures_1.ThreadChannel(...args);
|
|
40
|
+
}
|
|
41
|
+
static CategoryChannel(...args) {
|
|
42
|
+
return new structures_1.CategoryChannel(...args);
|
|
43
|
+
}
|
|
44
|
+
static NewsChannel(...args) {
|
|
45
|
+
return new structures_1.NewsChannel(...args);
|
|
46
|
+
}
|
|
47
|
+
static DirectoryChannel(...args) {
|
|
48
|
+
return new structures_1.DirectoryChannel(...args);
|
|
49
|
+
}
|
|
50
|
+
static ClientUser(...args) {
|
|
51
|
+
return new structures_1.ClientUser(...args);
|
|
52
|
+
}
|
|
53
|
+
static Guild(...args) {
|
|
54
|
+
return new structures_1.Guild(...args);
|
|
55
|
+
}
|
|
56
|
+
static GuildBan(...args) {
|
|
57
|
+
return new GuildBan_1.GuildBan(...args);
|
|
58
|
+
}
|
|
59
|
+
static GuildEmoji(...args) {
|
|
60
|
+
return new structures_1.GuildEmoji(...args);
|
|
61
|
+
}
|
|
62
|
+
static GuildMember(...args) {
|
|
63
|
+
return new structures_1.GuildMember(...args);
|
|
64
|
+
}
|
|
65
|
+
static InteractionGuildMember(...args) {
|
|
66
|
+
return new structures_1.InteractionGuildMember(...args);
|
|
67
|
+
}
|
|
68
|
+
static GuildRole(...args) {
|
|
69
|
+
return new structures_1.GuildRole(...args);
|
|
70
|
+
}
|
|
71
|
+
static GuildTemplate(...args) {
|
|
72
|
+
return new structures_1.GuildTemplate(...args);
|
|
73
|
+
}
|
|
74
|
+
static Message(...args) {
|
|
75
|
+
return new structures_1.Message(...args);
|
|
76
|
+
}
|
|
77
|
+
static WebhookMessage(...args) {
|
|
78
|
+
return new structures_1.WebhookMessage(...args);
|
|
79
|
+
}
|
|
80
|
+
static Poll(...args) {
|
|
81
|
+
return new structures_1.Poll(...args);
|
|
82
|
+
}
|
|
83
|
+
static Sticker(...args) {
|
|
84
|
+
return new structures_1.Sticker(...args);
|
|
85
|
+
}
|
|
86
|
+
static User(...args) {
|
|
87
|
+
return new structures_1.User(...args);
|
|
88
|
+
}
|
|
89
|
+
static VoiceState(...args) {
|
|
90
|
+
return new structures_1.VoiceState(...args);
|
|
91
|
+
}
|
|
92
|
+
static Webhook(...args) {
|
|
93
|
+
return new structures_1.Webhook(...args);
|
|
94
|
+
}
|
|
95
|
+
static OptionResolver(...args) {
|
|
96
|
+
return new commands_1.OptionResolver(...args);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
exports.Transformers = Transformers;
|
|
@@ -1,32 +1,30 @@
|
|
|
1
|
-
|
|
2
|
-
/// <reference types="node" />
|
|
3
|
-
/// <reference types="node" />
|
|
4
|
-
/// <reference types="node" />
|
|
5
|
-
/// <reference types="node" />
|
|
6
|
-
import { type GatewayDispatchPayload } from 'discord-api-types/v10';
|
|
7
|
-
import { Logger } from '..';
|
|
1
|
+
import { type GatewayDispatchPayload } from '../types';
|
|
8
2
|
import type { Cache } from '../cache';
|
|
9
3
|
import { type DeepPartial, type When } from '../common';
|
|
10
4
|
import { EventHandler } from '../events';
|
|
11
|
-
import {
|
|
12
|
-
import { Shard, type ShardManagerOptions } from '../websocket';
|
|
5
|
+
import { Shard, type ShardManagerOptions, type WorkerData } from '../websocket';
|
|
13
6
|
import type { WorkerShardInfo } from '../websocket/discord/worker';
|
|
14
7
|
import type { ManagerMessages } from '../websocket/discord/workermanager';
|
|
15
8
|
import type { BaseClientOptions, ServicesOptions, StartOptions } from './base';
|
|
16
9
|
import { BaseClient } from './base';
|
|
17
10
|
import type { Client, ClientOptions } from './client';
|
|
18
11
|
import { Collectors } from './collectors';
|
|
12
|
+
import { type ClientUserStructure } from './transformers';
|
|
13
|
+
import { MemberUpdateHandler } from '../websocket/discord/events/memberUpdate';
|
|
14
|
+
import { PresenceUpdateHandler } from '../websocket/discord/events/presenceUpdate';
|
|
19
15
|
export declare class WorkerClient<Ready extends boolean = boolean> extends BaseClient {
|
|
20
16
|
private __handleGuilds?;
|
|
21
|
-
|
|
17
|
+
memberUpdateHandler: MemberUpdateHandler;
|
|
18
|
+
presenceUpdateHandler: PresenceUpdateHandler;
|
|
22
19
|
collectors: Collectors;
|
|
23
20
|
events?: EventHandler | undefined;
|
|
24
|
-
me: When<Ready,
|
|
21
|
+
me: When<Ready, ClientUserStructure>;
|
|
25
22
|
promises: Map<string, {
|
|
26
23
|
resolve: (value: any) => void;
|
|
27
24
|
timeout: NodeJS.Timeout;
|
|
28
25
|
}>;
|
|
29
26
|
shards: Map<number, Shard>;
|
|
27
|
+
private __setServicesCache?;
|
|
30
28
|
options: WorkerClientOptions;
|
|
31
29
|
constructor(options?: WorkerClientOptions);
|
|
32
30
|
get workerId(): number;
|
|
@@ -36,10 +34,11 @@ export declare class WorkerClient<Ready extends boolean = boolean> extends BaseC
|
|
|
36
34
|
events?: EventHandler['callback'];
|
|
37
35
|
};
|
|
38
36
|
}): void;
|
|
37
|
+
setWorkerData(data: WorkerData): void;
|
|
39
38
|
start(options?: Omit<DeepPartial<StartOptions>, 'httpConnection' | 'token' | 'connection'>): Promise<void>;
|
|
40
39
|
loadEvents(dir?: string): Promise<void>;
|
|
41
|
-
postMessage(body:
|
|
42
|
-
|
|
40
|
+
postMessage(body: unknown): unknown;
|
|
41
|
+
handleManagerMessages(data: ManagerMessages): Promise<any>;
|
|
43
42
|
private generateNonce;
|
|
44
43
|
private generateSendPromise;
|
|
45
44
|
tellWorker(workerId: number, func: (_: this) => {}): Promise<unknown>;
|
|
@@ -47,9 +46,10 @@ export declare class WorkerClient<Ready extends boolean = boolean> extends BaseC
|
|
|
47
46
|
}
|
|
48
47
|
export declare function generateShardInfo(shard: Shard): WorkerShardInfo;
|
|
49
48
|
interface WorkerClientOptions extends BaseClientOptions {
|
|
50
|
-
disabledCache
|
|
49
|
+
disabledCache?: Cache['disabledCache'];
|
|
51
50
|
commands?: NonNullable<Client['options']>['commands'];
|
|
52
51
|
handlePayload?: ShardManagerOptions['handlePayload'];
|
|
53
52
|
gateway?: ClientOptions['gateway'];
|
|
53
|
+
postMessage?: (body: unknown) => unknown;
|
|
54
54
|
}
|
|
55
55
|
export {};
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
|
|
3
|
+
exports.WorkerClient = void 0;
|
|
4
|
+
exports.generateShardInfo = generateShardInfo;
|
|
5
|
+
const types_1 = require("../types");
|
|
5
6
|
const node_crypto_1 = require("node:crypto");
|
|
6
7
|
const __1 = require("..");
|
|
7
8
|
const cache_1 = require("../cache");
|
|
8
9
|
const common_1 = require("../common");
|
|
9
10
|
const events_1 = require("../events");
|
|
10
|
-
const structures_1 = require("../structures");
|
|
11
11
|
const websocket_1 = require("../websocket");
|
|
12
12
|
const base_1 = require("./base");
|
|
13
|
-
const oninteractioncreate_1 = require("./oninteractioncreate");
|
|
14
|
-
const onmessagecreate_1 = require("./onmessagecreate");
|
|
15
13
|
const collectors_1 = require("./collectors");
|
|
14
|
+
const transformers_1 = require("./transformers");
|
|
15
|
+
const memberUpdate_1 = require("../websocket/discord/events/memberUpdate");
|
|
16
|
+
const presenceUpdate_1 = require("../websocket/discord/events/presenceUpdate");
|
|
16
17
|
let workerData;
|
|
17
18
|
let manager;
|
|
18
19
|
try {
|
|
@@ -24,59 +25,25 @@ try {
|
|
|
24
25
|
token: process.env.SEYFERT_WORKER_TOKEN,
|
|
25
26
|
workerId: Number.parseInt(process.env.SEYFERT_WORKER_WORKERID),
|
|
26
27
|
workerProxy: process.env.SEYFERT_WORKER_WORKERPROXY === 'true',
|
|
28
|
+
totalShards: Number(process.env.SEYFERT_WORKER_TOTALSHARDS),
|
|
29
|
+
mode: process.env.SEYFERT_WORKER_MODE,
|
|
27
30
|
};
|
|
28
31
|
}
|
|
29
32
|
catch { }
|
|
30
33
|
class WorkerClient extends base_1.BaseClient {
|
|
31
34
|
__handleGuilds = new Set();
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
});
|
|
35
|
+
memberUpdateHandler = new memberUpdate_1.MemberUpdateHandler();
|
|
36
|
+
presenceUpdateHandler = new presenceUpdate_1.PresenceUpdateHandler();
|
|
35
37
|
collectors = new collectors_1.Collectors();
|
|
36
38
|
events = new events_1.EventHandler(this);
|
|
37
39
|
me;
|
|
38
40
|
promises = new Map();
|
|
39
41
|
shards = new Map();
|
|
42
|
+
__setServicesCache;
|
|
40
43
|
constructor(options) {
|
|
41
44
|
super(options);
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
argsParser: onmessagecreate_1.defaultArgsParser,
|
|
45
|
-
optionsParser: onmessagecreate_1.defaultOptionsParser,
|
|
46
|
-
},
|
|
47
|
-
}, this.options);
|
|
48
|
-
if (!process.env.SEYFERT_SPAWNING) {
|
|
49
|
-
throw new Error('WorkerClient cannot spawn without manager');
|
|
50
|
-
}
|
|
51
|
-
this.postMessage({
|
|
52
|
-
type: 'WORKER_START',
|
|
53
|
-
workerId: workerData.workerId,
|
|
54
|
-
});
|
|
55
|
-
const worker_threads = (0, common_1.lazyLoadPackage)('node:worker_threads');
|
|
56
|
-
if (worker_threads?.parentPort) {
|
|
57
|
-
manager = worker_threads?.parentPort;
|
|
58
|
-
}
|
|
59
|
-
(manager ?? process).on('message', (data) => this.handleManagerMessages(data));
|
|
60
|
-
this.setServices({
|
|
61
|
-
cache: {
|
|
62
|
-
adapter: new cache_1.WorkerAdapter(workerData),
|
|
63
|
-
disabledCache: options?.disabledCache,
|
|
64
|
-
},
|
|
65
|
-
});
|
|
66
|
-
if (workerData.debug) {
|
|
67
|
-
this.debugger = new __1.Logger({
|
|
68
|
-
name: `[Worker #${workerData.workerId}]`,
|
|
69
|
-
logLevel: common_1.LogLevels.Debug,
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
if (workerData.workerProxy) {
|
|
73
|
-
this.setServices({
|
|
74
|
-
rest: new __1.ApiHandler({
|
|
75
|
-
token: workerData.token,
|
|
76
|
-
workerProxy: true,
|
|
77
|
-
debug: workerData.debug,
|
|
78
|
-
}),
|
|
79
|
-
});
|
|
45
|
+
if (options?.postMessage) {
|
|
46
|
+
this.postMessage = options.postMessage;
|
|
80
47
|
}
|
|
81
48
|
}
|
|
82
49
|
get workerId() {
|
|
@@ -89,22 +56,73 @@ class WorkerClient extends base_1.BaseClient {
|
|
|
89
56
|
}
|
|
90
57
|
setServices({ ...rest }) {
|
|
91
58
|
super.setServices(rest);
|
|
59
|
+
if (rest.cache) {
|
|
60
|
+
this.__setServicesCache = true;
|
|
61
|
+
}
|
|
92
62
|
if (rest.handlers && 'events' in rest.handlers) {
|
|
93
63
|
if (!rest.handlers.events) {
|
|
94
64
|
this.events = undefined;
|
|
95
65
|
}
|
|
96
66
|
else if (typeof rest.handlers.events === 'function') {
|
|
97
67
|
this.events = new events_1.EventHandler(this);
|
|
98
|
-
this.events.setHandlers({
|
|
99
|
-
callback: rest.handlers.events,
|
|
100
|
-
});
|
|
101
68
|
}
|
|
102
69
|
else {
|
|
103
70
|
this.events = rest.handlers.events;
|
|
104
71
|
}
|
|
105
72
|
}
|
|
106
73
|
}
|
|
74
|
+
setWorkerData(data) {
|
|
75
|
+
workerData = data;
|
|
76
|
+
}
|
|
107
77
|
async start(options = {}) {
|
|
78
|
+
const worker_threads = (0, common_1.lazyLoadPackage)('node:worker_threads');
|
|
79
|
+
if (worker_threads?.parentPort) {
|
|
80
|
+
manager = worker_threads?.parentPort;
|
|
81
|
+
}
|
|
82
|
+
if (workerData.mode !== 'custom')
|
|
83
|
+
(manager ?? process).on('message', (data) => this.handleManagerMessages(data));
|
|
84
|
+
this.logger = new __1.Logger({
|
|
85
|
+
name: `[Worker #${workerData.workerId}]`,
|
|
86
|
+
});
|
|
87
|
+
if (this.__setServicesCache) {
|
|
88
|
+
this.setServices({
|
|
89
|
+
cache: {
|
|
90
|
+
disabledCache: this.options.disabledCache,
|
|
91
|
+
},
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
const adapter = new cache_1.WorkerAdapter(workerData);
|
|
96
|
+
if (this.options.postMessage) {
|
|
97
|
+
adapter.postMessage = this.options.postMessage;
|
|
98
|
+
}
|
|
99
|
+
this.setServices({
|
|
100
|
+
cache: {
|
|
101
|
+
adapter,
|
|
102
|
+
disabledCache: this.options.disabledCache,
|
|
103
|
+
},
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
delete this.__setServicesCache;
|
|
107
|
+
if (workerData.debug) {
|
|
108
|
+
this.debugger = new __1.Logger({
|
|
109
|
+
name: `[Worker #${workerData.workerId}]`,
|
|
110
|
+
logLevel: common_1.LogLevels.Debug,
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
if (workerData.workerProxy) {
|
|
114
|
+
this.setServices({
|
|
115
|
+
rest: new __1.ApiHandler({
|
|
116
|
+
token: workerData.token,
|
|
117
|
+
workerProxy: true,
|
|
118
|
+
debug: workerData.debug,
|
|
119
|
+
}),
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
this.postMessage({
|
|
123
|
+
type: 'WORKER_START',
|
|
124
|
+
workerId: workerData.workerId,
|
|
125
|
+
});
|
|
108
126
|
await super.start(options);
|
|
109
127
|
await this.loadEvents(options.eventsDir);
|
|
110
128
|
this.cache.intents = workerData.intents;
|
|
@@ -241,7 +259,6 @@ class WorkerClient extends base_1.BaseClient {
|
|
|
241
259
|
{
|
|
242
260
|
let result;
|
|
243
261
|
try {
|
|
244
|
-
// biome-ignore lint/security/noGlobalEval: yes
|
|
245
262
|
result = await eval(`
|
|
246
263
|
(${data.func})(this)
|
|
247
264
|
`);
|
|
@@ -297,37 +314,70 @@ class WorkerClient extends base_1.BaseClient {
|
|
|
297
314
|
return this.generateSendPromise(nonce);
|
|
298
315
|
}
|
|
299
316
|
async onPacket(packet, shardId) {
|
|
300
|
-
|
|
317
|
+
Promise.allSettled([
|
|
318
|
+
this.events?.runEvent('RAW', this, packet, shardId, false),
|
|
319
|
+
this.collectors.run('RAW', packet, this),
|
|
320
|
+
]); //ignore promise
|
|
301
321
|
switch (packet.t) {
|
|
322
|
+
//// Cases where we must obtain the old data before updating
|
|
323
|
+
case 'GUILD_MEMBER_UPDATE':
|
|
324
|
+
{
|
|
325
|
+
if (!this.memberUpdateHandler.check(packet.d)) {
|
|
326
|
+
return;
|
|
327
|
+
}
|
|
328
|
+
await this.events?.execute(packet.t, packet, this, shardId);
|
|
329
|
+
}
|
|
330
|
+
break;
|
|
331
|
+
case 'PRESENCE_UPDATE':
|
|
332
|
+
{
|
|
333
|
+
if (!this.presenceUpdateHandler.check(packet.d)) {
|
|
334
|
+
return;
|
|
335
|
+
}
|
|
336
|
+
await this.events?.execute(packet.t, packet, this, shardId);
|
|
337
|
+
}
|
|
338
|
+
break;
|
|
339
|
+
case 'GUILD_DELETE':
|
|
302
340
|
case 'GUILD_CREATE': {
|
|
303
341
|
if (this.__handleGuilds?.has(packet.d.id)) {
|
|
304
|
-
this.__handleGuilds
|
|
305
|
-
if (!this.__handleGuilds
|
|
342
|
+
this.__handleGuilds?.delete(packet.d.id);
|
|
343
|
+
if (!this.__handleGuilds?.size && [...this.shards.values()].every(shard => shard.data.session_id)) {
|
|
344
|
+
delete this.__handleGuilds;
|
|
345
|
+
await this.cache.onPacket?.(packet);
|
|
306
346
|
this.postMessage({
|
|
307
347
|
type: 'WORKER_READY',
|
|
308
348
|
workerId: this.workerId,
|
|
309
349
|
});
|
|
310
|
-
|
|
350
|
+
return this.events?.runEvent('WORKER_READY', this, this.me, -1);
|
|
311
351
|
}
|
|
312
|
-
if (!this.__handleGuilds
|
|
352
|
+
if (!this.__handleGuilds?.size)
|
|
313
353
|
delete this.__handleGuilds;
|
|
314
|
-
return this.cache.onPacket(packet);
|
|
354
|
+
return this.cache.onPacket?.(packet);
|
|
315
355
|
}
|
|
316
356
|
await this.events?.execute(packet.t, packet, this, shardId);
|
|
317
357
|
break;
|
|
318
358
|
}
|
|
319
359
|
default: {
|
|
320
|
-
await this.events?.execute(packet.t, packet, this, shardId);
|
|
321
360
|
switch (packet.t) {
|
|
361
|
+
case 'INTERACTION_CREATE':
|
|
362
|
+
await this.events?.execute(packet.t, packet, this, shardId);
|
|
363
|
+
await this.handleCommand.interaction(packet.d, shardId);
|
|
364
|
+
break;
|
|
365
|
+
case 'MESSAGE_CREATE':
|
|
366
|
+
await this.events?.execute(packet.t, packet, this, shardId);
|
|
367
|
+
await this.handleCommand.message(packet.d, shardId);
|
|
368
|
+
break;
|
|
322
369
|
case 'READY':
|
|
370
|
+
if (!this.__handleGuilds)
|
|
371
|
+
this.__handleGuilds = new Set();
|
|
323
372
|
for (const g of packet.d.guilds) {
|
|
324
373
|
this.__handleGuilds?.add(g.id);
|
|
325
374
|
}
|
|
326
375
|
this.botId = packet.d.user.id;
|
|
327
376
|
this.applicationId = packet.d.application.id;
|
|
328
|
-
this.me =
|
|
377
|
+
this.me = transformers_1.Transformers.ClientUser(this, packet.d.user, packet.d.application);
|
|
378
|
+
await this.events?.execute(packet.t, packet, this, shardId);
|
|
329
379
|
if (!(this.__handleGuilds?.size &&
|
|
330
|
-
(workerData.intents &
|
|
380
|
+
(workerData.intents & types_1.GatewayIntentBits.Guilds) === types_1.GatewayIntentBits.Guilds)) {
|
|
331
381
|
if ([...this.shards.values()].every(shard => shard.data.session_id)) {
|
|
332
382
|
this.postMessage({
|
|
333
383
|
type: 'WORKER_READY',
|
|
@@ -337,13 +387,10 @@ class WorkerClient extends base_1.BaseClient {
|
|
|
337
387
|
}
|
|
338
388
|
delete this.__handleGuilds;
|
|
339
389
|
}
|
|
340
|
-
this.debugger?.debug(`#${shardId}
|
|
390
|
+
this.debugger?.debug(`#${shardId}[${packet.d.user.username}](${this.botId}) is online...`);
|
|
341
391
|
break;
|
|
342
|
-
|
|
343
|
-
await (
|
|
344
|
-
break;
|
|
345
|
-
case 'MESSAGE_CREATE':
|
|
346
|
-
await (0, onmessagecreate_1.onMessageCreate)(this, packet.d, shardId);
|
|
392
|
+
default:
|
|
393
|
+
await this.events?.execute(packet.t, packet, this, shardId);
|
|
347
394
|
break;
|
|
348
395
|
}
|
|
349
396
|
break;
|
|
@@ -360,4 +407,3 @@ function generateShardInfo(shard) {
|
|
|
360
407
|
resumable: shard.resumable,
|
|
361
408
|
};
|
|
362
409
|
}
|
|
363
|
-
exports.generateShardInfo = generateShardInfo;
|
|
@@ -1,21 +1,22 @@
|
|
|
1
|
-
import { ApplicationCommandOptionType, ApplicationCommandType, type ApplicationIntegrationType, type InteractionContextType, type APIApplicationCommandBasicOption, type APIApplicationCommandOption, type LocaleString } from '
|
|
1
|
+
import { ApplicationCommandOptionType, ApplicationCommandType, type ApplicationIntegrationType, type InteractionContextType, type APIApplicationCommandBasicOption, type APIApplicationCommandOption, type LocaleString } from '../../types';
|
|
2
2
|
import type { PermissionStrings, SeyfertNumberOption, SeyfertStringOption } from '../..';
|
|
3
3
|
import type { Attachment } from '../../builders';
|
|
4
|
-
import { type FlatObjectKeys } from '../../common';
|
|
5
|
-
import type { AllChannels, AutocompleteInteraction
|
|
4
|
+
import { type Awaitable, type FlatObjectKeys } from '../../common';
|
|
5
|
+
import type { AllChannels, AutocompleteInteraction } from '../../structures';
|
|
6
6
|
import type { Groups, RegisteredMiddlewares } from '../decorators';
|
|
7
7
|
import type { CommandContext } from './chatcontext';
|
|
8
8
|
import type { DefaultLocale, ExtraProps, IgnoreCommand, OKFunction, OnOptionsReturnObject, StopFunction, UsingClient } from './shared';
|
|
9
|
+
import type { GuildRoleStructure, InteractionGuildMemberStructure, UserStructure } from '../../client/transformers';
|
|
9
10
|
export interface ReturnOptionsTypes {
|
|
10
11
|
1: never;
|
|
11
12
|
2: never;
|
|
12
13
|
3: string;
|
|
13
14
|
4: number;
|
|
14
15
|
5: boolean;
|
|
15
|
-
6:
|
|
16
|
+
6: InteractionGuildMemberStructure | UserStructure;
|
|
16
17
|
7: AllChannels;
|
|
17
|
-
8:
|
|
18
|
-
9:
|
|
18
|
+
8: GuildRoleStructure;
|
|
19
|
+
9: GuildRoleStructure | AllChannels | UserStructure;
|
|
19
20
|
10: number;
|
|
20
21
|
11: Attachment;
|
|
21
22
|
}
|
|
@@ -24,7 +25,7 @@ type Wrap<N extends ApplicationCommandOptionType> = N extends ApplicationCommand
|
|
|
24
25
|
value?(data: {
|
|
25
26
|
context: CommandContext;
|
|
26
27
|
value: ReturnOptionsTypes[N];
|
|
27
|
-
}, ok: OKFunction<any>, fail: StopFunction): void
|
|
28
|
+
}, ok: OKFunction<any>, fail: StopFunction): Awaitable<void>;
|
|
28
29
|
} & {
|
|
29
30
|
description: string;
|
|
30
31
|
description_localizations?: APIApplicationCommandBasicOption['description_localizations'];
|
|
@@ -88,16 +89,16 @@ export declare class BaseCommand {
|
|
|
88
89
|
aliases?: string[];
|
|
89
90
|
props: ExtraProps;
|
|
90
91
|
toJSON(): {
|
|
91
|
-
name: BaseCommand[
|
|
92
|
-
type: BaseCommand[
|
|
93
|
-
nsfw: BaseCommand[
|
|
94
|
-
description: BaseCommand[
|
|
95
|
-
name_localizations: BaseCommand[
|
|
96
|
-
description_localizations: BaseCommand[
|
|
97
|
-
guild_id: BaseCommand[
|
|
92
|
+
name: BaseCommand["name"];
|
|
93
|
+
type: BaseCommand["type"];
|
|
94
|
+
nsfw: BaseCommand["nsfw"];
|
|
95
|
+
description: BaseCommand["description"];
|
|
96
|
+
name_localizations: BaseCommand["name_localizations"];
|
|
97
|
+
description_localizations: BaseCommand["description_localizations"];
|
|
98
|
+
guild_id: BaseCommand["guildId"];
|
|
98
99
|
default_member_permissions: string;
|
|
99
|
-
contexts: BaseCommand[
|
|
100
|
-
integration_types: BaseCommand[
|
|
100
|
+
contexts: BaseCommand["contexts"];
|
|
101
|
+
integration_types: BaseCommand["integrationTypes"];
|
|
101
102
|
};
|
|
102
103
|
reload(): Promise<void>;
|
|
103
104
|
run?(context: CommandContext): any;
|
|
@@ -120,16 +121,16 @@ export declare class Command extends BaseCommand {
|
|
|
120
121
|
}>;
|
|
121
122
|
toJSON(): {
|
|
122
123
|
options: APIApplicationCommandOption[];
|
|
123
|
-
name:
|
|
124
|
-
type:
|
|
125
|
-
nsfw:
|
|
126
|
-
description:
|
|
127
|
-
name_localizations:
|
|
128
|
-
description_localizations:
|
|
129
|
-
guild_id:
|
|
124
|
+
name: BaseCommand["name"];
|
|
125
|
+
type: BaseCommand["type"];
|
|
126
|
+
nsfw: BaseCommand["nsfw"];
|
|
127
|
+
description: BaseCommand["description"];
|
|
128
|
+
name_localizations: BaseCommand["name_localizations"];
|
|
129
|
+
description_localizations: BaseCommand["description_localizations"];
|
|
130
|
+
guild_id: BaseCommand["guildId"];
|
|
130
131
|
default_member_permissions: string;
|
|
131
|
-
contexts:
|
|
132
|
-
integration_types:
|
|
132
|
+
contexts: BaseCommand["contexts"];
|
|
133
|
+
integration_types: BaseCommand["integrationTypes"];
|
|
133
134
|
};
|
|
134
135
|
}
|
|
135
136
|
export declare abstract class SubCommand extends BaseCommand {
|
|
@@ -138,16 +139,16 @@ export declare abstract class SubCommand extends BaseCommand {
|
|
|
138
139
|
options?: CommandOption[];
|
|
139
140
|
toJSON(): {
|
|
140
141
|
options: APIApplicationCommandBasicOption[];
|
|
141
|
-
name:
|
|
142
|
-
type:
|
|
143
|
-
nsfw:
|
|
144
|
-
description:
|
|
145
|
-
name_localizations:
|
|
146
|
-
description_localizations:
|
|
147
|
-
guild_id:
|
|
142
|
+
name: BaseCommand["name"];
|
|
143
|
+
type: BaseCommand["type"];
|
|
144
|
+
nsfw: BaseCommand["nsfw"];
|
|
145
|
+
description: BaseCommand["description"];
|
|
146
|
+
name_localizations: BaseCommand["name_localizations"];
|
|
147
|
+
description_localizations: BaseCommand["description_localizations"];
|
|
148
|
+
guild_id: BaseCommand["guildId"];
|
|
148
149
|
default_member_permissions: string;
|
|
149
|
-
contexts:
|
|
150
|
-
integration_types:
|
|
150
|
+
contexts: BaseCommand["contexts"];
|
|
151
|
+
integration_types: BaseCommand["integrationTypes"];
|
|
151
152
|
};
|
|
152
153
|
abstract run(context: CommandContext<any>): any;
|
|
153
154
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SubCommand = exports.Command = exports.BaseCommand = void 0;
|
|
4
|
-
const
|
|
4
|
+
const types_1 = require("../../types");
|
|
5
5
|
const common_1 = require("../../common");
|
|
6
6
|
const node_util_1 = require("node:util");
|
|
7
7
|
class BaseCommand {
|
|
@@ -35,9 +35,7 @@ class BaseCommand {
|
|
|
35
35
|
try {
|
|
36
36
|
const option = this.options.find(x => x.name === i.name);
|
|
37
37
|
const value = resolver.getHoisted(i.name)?.value !== undefined
|
|
38
|
-
? await new Promise(
|
|
39
|
-
// biome-ignore lint/suspicious/noAsyncPromiseExecutor: yes
|
|
40
|
-
async (res, rej) => {
|
|
38
|
+
? await new Promise(async (res, rej) => {
|
|
41
39
|
try {
|
|
42
40
|
(await option.value?.({ context: ctx, value: resolver.getValue(i.name) }, res, rej)) ||
|
|
43
41
|
res(resolver.getValue(i.name));
|
|
@@ -95,8 +93,6 @@ class BaseCommand {
|
|
|
95
93
|
if (!running) {
|
|
96
94
|
return;
|
|
97
95
|
}
|
|
98
|
-
// biome-ignore lint/style/noArguments: yes
|
|
99
|
-
// biome-ignore lint/correctness/noUndeclaredVariables: xd
|
|
100
96
|
if (arguments.length) {
|
|
101
97
|
// @ts-expect-error
|
|
102
98
|
context[global ? 'globalMetadata' : 'metadata'][middlewares[index]] = obj;
|
|
@@ -153,7 +149,7 @@ class BaseCommand {
|
|
|
153
149
|
}
|
|
154
150
|
exports.BaseCommand = BaseCommand;
|
|
155
151
|
class Command extends BaseCommand {
|
|
156
|
-
type =
|
|
152
|
+
type = types_1.ApplicationCommandType.ChatInput;
|
|
157
153
|
groups;
|
|
158
154
|
groupsAliases;
|
|
159
155
|
__tGroups;
|
|
@@ -167,7 +163,7 @@ class Command extends BaseCommand {
|
|
|
167
163
|
if (i.group) {
|
|
168
164
|
if (!options.find(x => x.name === i.group)) {
|
|
169
165
|
options.push({
|
|
170
|
-
type:
|
|
166
|
+
type: types_1.ApplicationCommandOptionType.SubcommandGroup,
|
|
171
167
|
name: i.group,
|
|
172
168
|
description: this.groups[i.group].defaultDescription,
|
|
173
169
|
description_localizations: Object.fromEntries(this.groups?.[i.group].description ?? []),
|
|
@@ -189,7 +185,7 @@ class Command extends BaseCommand {
|
|
|
189
185
|
}
|
|
190
186
|
exports.Command = Command;
|
|
191
187
|
class SubCommand extends BaseCommand {
|
|
192
|
-
type =
|
|
188
|
+
type = types_1.ApplicationCommandOptionType.Subcommand;
|
|
193
189
|
group;
|
|
194
190
|
toJSON() {
|
|
195
191
|
return {
|