@discordeno/bot 21.0.1-next.fca0b40 → 22.0.0-beta.2
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/dist/bot.d.ts +82 -0
- package/dist/bot.d.ts.map +1 -0
- package/dist/bot.js +71 -0
- package/dist/commandOptionsParser.d.ts +27 -0
- package/dist/commandOptionsParser.d.ts.map +1 -0
- package/dist/commandOptionsParser.js +43 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +6 -0
- package/dist/desiredProperties.d.ts +264 -0
- package/dist/desiredProperties.d.ts.map +1 -0
- package/dist/desiredProperties.js +919 -0
- package/dist/events.d.ts +248 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +3 -0
- package/dist/handlers/channels/CHANNEL_CREATE.d.ts +4 -0
- package/dist/handlers/channels/CHANNEL_CREATE.d.ts.map +1 -0
- package/dist/handlers/channels/CHANNEL_CREATE.js +10 -0
- package/dist/handlers/channels/CHANNEL_DELETE.d.ts.map +1 -0
- package/dist/handlers/channels/CHANNEL_DELETE.js +9 -0
- package/dist/handlers/channels/CHANNEL_PINS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/channels/CHANNEL_PINS_UPDATE.js +11 -0
- package/dist/handlers/channels/CHANNEL_UPDATE.d.ts.map +1 -0
- package/dist/handlers/channels/CHANNEL_UPDATE.js +8 -0
- package/dist/handlers/channels/STAGE_INSTANCE_CREATE.d.ts.map +1 -0
- package/dist/handlers/channels/STAGE_INSTANCE_CREATE.js +12 -0
- package/dist/handlers/channels/STAGE_INSTANCE_DELETE.d.ts.map +1 -0
- package/dist/handlers/channels/STAGE_INSTANCE_DELETE.js +12 -0
- package/dist/handlers/channels/STAGE_INSTANCE_UPDATE.d.ts.map +1 -0
- package/dist/handlers/channels/STAGE_INSTANCE_UPDATE.js +12 -0
- package/dist/handlers/channels/THREAD_CREATE.d.ts +4 -0
- package/dist/handlers/channels/THREAD_CREATE.d.ts.map +1 -0
- package/dist/handlers/channels/THREAD_CREATE.js +7 -0
- package/dist/handlers/channels/THREAD_DELETE.d.ts +4 -0
- package/dist/handlers/channels/THREAD_DELETE.d.ts.map +1 -0
- package/dist/handlers/channels/THREAD_DELETE.js +7 -0
- package/dist/handlers/channels/THREAD_LIST_SYNC.d.ts +4 -0
- package/dist/handlers/channels/THREAD_LIST_SYNC.d.ts.map +1 -0
- package/dist/handlers/channels/THREAD_LIST_SYNC.js +20 -0
- package/dist/handlers/channels/THREAD_MEMBERS_UPDATE.d.ts +4 -0
- package/dist/handlers/channels/THREAD_MEMBERS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/channels/THREAD_MEMBERS_UPDATE.js +14 -0
- package/dist/handlers/channels/THREAD_MEMBER_UPDATE.d.ts +4 -0
- package/dist/handlers/channels/THREAD_MEMBER_UPDATE.d.ts.map +1 -0
- package/dist/handlers/channels/THREAD_MEMBER_UPDATE.js +12 -0
- package/dist/handlers/channels/THREAD_UPDATE.d.ts +4 -0
- package/dist/handlers/channels/THREAD_UPDATE.d.ts.map +1 -0
- package/dist/handlers/channels/THREAD_UPDATE.js +7 -0
- package/dist/handlers/channels/index.d.ts.map +1 -0
- package/dist/handlers/channels/index.js +15 -0
- package/dist/handlers/emojis/GUILD_EMOJIS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/emojis/GUILD_EMOJIS_UPDATE.js +14 -0
- package/dist/handlers/emojis/index.d.ts.map +1 -0
- package/dist/handlers/emojis/index.js +3 -0
- package/dist/handlers/entitlements/ENTITLEMENT_CREATE.d.ts.map +1 -0
- package/dist/handlers/entitlements/ENTITLEMENT_CREATE.js +7 -0
- package/dist/handlers/entitlements/ENTITLEMENT_DELETE.d.ts.map +1 -0
- package/dist/handlers/entitlements/ENTITLEMENT_DELETE.js +7 -0
- package/dist/handlers/entitlements/ENTITLEMENT_UPDATE.d.ts.map +1 -0
- package/dist/handlers/entitlements/ENTITLEMENT_UPDATE.js +7 -0
- package/dist/handlers/entitlements/index.d.ts.map +1 -0
- package/dist/handlers/entitlements/index.js +5 -0
- package/dist/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.js +8 -0
- package/dist/handlers/guilds/GUILD_BAN_ADD.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_BAN_ADD.js +7 -0
- package/dist/handlers/guilds/GUILD_BAN_REMOVE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_BAN_REMOVE.js +7 -0
- package/dist/handlers/guilds/GUILD_CREATE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_CREATE.js +9 -0
- package/dist/handlers/guilds/GUILD_DELETE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_DELETE.js +10 -0
- package/dist/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.js +9 -0
- package/dist/handlers/guilds/GUILD_STICKERS_UPDATE.d.ts +4 -0
- package/dist/handlers/guilds/GUILD_STICKERS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_STICKERS_UPDATE.js +13 -0
- package/dist/handlers/guilds/GUILD_UPDATE.d.ts.map +1 -0
- package/dist/handlers/guilds/GUILD_UPDATE.js +9 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.d.ts.map +1 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.js +7 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.d.ts.map +1 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.js +7 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.d.ts.map +1 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.js +7 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.d.ts.map +1 -0
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.js +7 -0
- package/dist/handlers/guilds/automod/index.d.ts.map +1 -0
- package/dist/handlers/guilds/automod/index.js +6 -0
- package/dist/handlers/guilds/index.d.ts.map +1 -0
- package/dist/handlers/guilds/index.js +12 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.d.ts.map +1 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.js +7 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.d.ts.map +1 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.js +7 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.d.ts.map +1 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.js +7 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.d.ts.map +1 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.js +11 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.d.ts.map +1 -0
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.js +11 -0
- package/dist/handlers/guilds/scheduledEvents/index.d.ts.map +1 -0
- package/dist/handlers/guilds/scheduledEvents/index.js +7 -0
- package/dist/handlers/index.d.ts.map +1 -0
- package/dist/handlers/index.js +18 -0
- package/dist/handlers/integrations/INTEGRATION_CREATE.d.ts +4 -0
- package/dist/handlers/integrations/INTEGRATION_CREATE.d.ts.map +1 -0
- package/dist/handlers/integrations/INTEGRATION_CREATE.js +6 -0
- package/dist/handlers/integrations/INTEGRATION_DELETE.d.ts +4 -0
- package/dist/handlers/integrations/INTEGRATION_DELETE.d.ts.map +1 -0
- package/dist/handlers/integrations/INTEGRATION_DELETE.js +11 -0
- package/dist/handlers/integrations/INTEGRATION_UPDATE.d.ts +4 -0
- package/dist/handlers/integrations/INTEGRATION_UPDATE.d.ts.map +1 -0
- package/dist/handlers/integrations/INTEGRATION_UPDATE.js +6 -0
- package/dist/handlers/integrations/index.d.ts.map +1 -0
- package/dist/handlers/integrations/index.js +5 -0
- package/dist/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts +4 -0
- package/dist/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.js +7 -0
- package/dist/handlers/interactions/INTERACTION_CREATE.d.ts +4 -0
- package/dist/handlers/interactions/INTERACTION_CREATE.d.ts.map +1 -0
- package/dist/handlers/interactions/INTERACTION_CREATE.js +9 -0
- package/dist/handlers/interactions/index.d.ts.map +1 -0
- package/dist/handlers/interactions/index.js +4 -0
- package/dist/handlers/invites/INVITE_CREATE.d.ts +4 -0
- package/dist/handlers/invites/INVITE_CREATE.d.ts.map +1 -0
- package/dist/handlers/invites/INVITE_CREATE.js +25 -0
- package/dist/handlers/invites/INVITE_DELETE.d.ts +4 -0
- package/dist/handlers/invites/INVITE_DELETE.d.ts.map +1 -0
- package/dist/handlers/invites/INVITE_DELETE.js +11 -0
- package/dist/handlers/invites/index.d.ts.map +1 -0
- package/dist/handlers/invites/index.js +4 -0
- package/dist/handlers/members/GUILD_MEMBERS_CHUNK.d.ts +4 -0
- package/dist/handlers/members/GUILD_MEMBERS_CHUNK.d.ts.map +1 -0
- package/dist/handlers/members/GUILD_MEMBERS_CHUNK.js +20 -0
- package/dist/handlers/members/GUILD_MEMBER_ADD.d.ts +4 -0
- package/dist/handlers/members/GUILD_MEMBER_ADD.d.ts.map +1 -0
- package/dist/handlers/members/GUILD_MEMBER_ADD.js +13 -0
- package/dist/handlers/members/GUILD_MEMBER_REMOVE.d.ts +4 -0
- package/dist/handlers/members/GUILD_MEMBER_REMOVE.d.ts.map +1 -0
- package/dist/handlers/members/GUILD_MEMBER_REMOVE.js +9 -0
- package/dist/handlers/members/GUILD_MEMBER_UPDATE.d.ts +4 -0
- package/dist/handlers/members/GUILD_MEMBER_UPDATE.d.ts.map +1 -0
- package/dist/handlers/members/GUILD_MEMBER_UPDATE.js +12 -0
- package/dist/handlers/members/index.d.ts.map +1 -0
- package/dist/handlers/members/index.js +6 -0
- package/dist/handlers/messages/MESSAGE_CREATE.d.ts +4 -0
- package/dist/handlers/messages/MESSAGE_CREATE.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_CREATE.js +9 -0
- package/dist/handlers/messages/MESSAGE_DELETE.d.ts +4 -0
- package/dist/handlers/messages/MESSAGE_DELETE.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_DELETE.js +11 -0
- package/dist/handlers/messages/MESSAGE_DELETE_BULK.d.ts +4 -0
- package/dist/handlers/messages/MESSAGE_DELETE_BULK.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_DELETE_BULK.js +13 -0
- package/dist/handlers/messages/MESSAGE_REACTION_ADD.d.ts +4 -0
- package/dist/handlers/messages/MESSAGE_REACTION_ADD.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_REACTION_ADD.js +25 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts +4 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE.js +16 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts +4 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.js +11 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts +4 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.js +14 -0
- package/dist/handlers/messages/MESSAGE_UPDATE.d.ts +4 -0
- package/dist/handlers/messages/MESSAGE_UPDATE.d.ts.map +1 -0
- package/dist/handlers/messages/MESSAGE_UPDATE.js +10 -0
- package/dist/handlers/messages/index.d.ts.map +1 -0
- package/dist/handlers/messages/index.js +10 -0
- package/dist/handlers/misc/PRESENCE_UPDATE.d.ts +4 -0
- package/dist/handlers/misc/PRESENCE_UPDATE.d.ts.map +1 -0
- package/dist/handlers/misc/PRESENCE_UPDATE.js +6 -0
- package/dist/handlers/misc/RATE_LIMITED.d.ts +4 -0
- package/dist/handlers/misc/RATE_LIMITED.d.ts.map +1 -0
- package/dist/handlers/misc/RATE_LIMITED.js +7 -0
- package/dist/handlers/misc/READY.d.ts +4 -0
- package/dist/handlers/misc/READY.d.ts.map +1 -0
- package/dist/handlers/misc/READY.js +18 -0
- package/dist/handlers/misc/RESUMED.d.ts +4 -0
- package/dist/handlers/misc/RESUMED.d.ts.map +1 -0
- package/dist/handlers/misc/RESUMED.js +6 -0
- package/dist/handlers/misc/TYPING_START.d.ts +4 -0
- package/dist/handlers/misc/TYPING_START.d.ts.map +1 -0
- package/dist/handlers/misc/TYPING_START.js +18 -0
- package/dist/handlers/misc/USER_UPDATE.d.ts +4 -0
- package/dist/handlers/misc/USER_UPDATE.d.ts.map +1 -0
- package/dist/handlers/misc/USER_UPDATE.js +7 -0
- package/dist/handlers/misc/index.d.ts +7 -0
- package/dist/handlers/misc/index.d.ts.map +1 -0
- package/dist/handlers/misc/index.js +8 -0
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_ADD.d.ts +4 -0
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_ADD.d.ts.map +1 -0
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_ADD.js +13 -0
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts +4 -0
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts.map +1 -0
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.js +13 -0
- package/dist/handlers/poll/index.d.ts.map +1 -0
- package/dist/handlers/poll/index.js +4 -0
- package/dist/handlers/roles/GUILD_ROLE_CREATE.d.ts +4 -0
- package/dist/handlers/roles/GUILD_ROLE_CREATE.d.ts.map +1 -0
- package/dist/handlers/roles/GUILD_ROLE_CREATE.js +9 -0
- package/dist/handlers/roles/GUILD_ROLE_DELETE.d.ts +4 -0
- package/dist/handlers/roles/GUILD_ROLE_DELETE.d.ts.map +1 -0
- package/dist/handlers/roles/GUILD_ROLE_DELETE.js +10 -0
- package/dist/handlers/roles/GUILD_ROLE_UPDATE.d.ts +4 -0
- package/dist/handlers/roles/GUILD_ROLE_UPDATE.d.ts.map +1 -0
- package/dist/handlers/roles/GUILD_ROLE_UPDATE.js +9 -0
- package/dist/handlers/roles/index.d.ts.map +1 -0
- package/dist/handlers/roles/index.js +5 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts +4 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.js +10 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts +4 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts.map +1 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.js +7 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts +4 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts.map +1 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.js +10 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts +4 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts.map +1 -0
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.js +7 -0
- package/dist/handlers/soundboard/SOUNDBOARD_SOUNDS.d.ts +4 -0
- package/dist/handlers/soundboard/SOUNDBOARD_SOUNDS.d.ts.map +1 -0
- package/dist/handlers/soundboard/SOUNDBOARD_SOUNDS.js +10 -0
- package/dist/handlers/soundboard/index.d.ts.map +1 -0
- package/dist/handlers/soundboard/index.js +7 -0
- package/dist/handlers/subscriptions/SUBSCRIPTION_CREATE.d.ts.map +1 -0
- package/dist/handlers/subscriptions/SUBSCRIPTION_CREATE.js +7 -0
- package/dist/handlers/subscriptions/SUBSCRIPTION_DELETE.d.ts.map +1 -0
- package/dist/handlers/subscriptions/SUBSCRIPTION_DELETE.js +7 -0
- package/dist/handlers/subscriptions/SUBSCRIPTION_UPDATE.d.ts.map +1 -0
- package/dist/handlers/subscriptions/SUBSCRIPTION_UPDATE.js +7 -0
- package/dist/handlers/subscriptions/index.d.ts.map +1 -0
- package/dist/handlers/subscriptions/index.js +5 -0
- package/dist/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts +4 -0
- package/dist/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts.map +1 -0
- package/dist/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.js +16 -0
- package/dist/handlers/voice/VOICE_SERVER_UPDATE.d.ts +4 -0
- package/dist/handlers/voice/VOICE_SERVER_UPDATE.d.ts.map +1 -0
- package/dist/handlers/voice/VOICE_SERVER_UPDATE.js +11 -0
- package/dist/handlers/voice/VOICE_STATE_UPDATE.d.ts +4 -0
- package/dist/handlers/voice/VOICE_STATE_UPDATE.d.ts.map +1 -0
- package/dist/handlers/voice/VOICE_STATE_UPDATE.js +9 -0
- package/dist/handlers/voice/index.d.ts.map +1 -0
- package/dist/handlers/voice/index.js +5 -0
- package/dist/handlers/webhooks/WEBHOOKS_UPDATE.d.ts +4 -0
- package/dist/handlers/webhooks/WEBHOOKS_UPDATE.d.ts.map +1 -0
- package/dist/handlers/webhooks/WEBHOOKS_UPDATE.js +10 -0
- package/dist/handlers/webhooks/index.d.ts.map +1 -0
- package/dist/handlers/webhooks/index.js +3 -0
- package/dist/handlers.d.ts +7 -0
- package/dist/handlers.d.ts.map +1 -0
- package/dist/handlers.js +84 -0
- package/dist/helpers.d.ts +262 -0
- package/dist/helpers.d.ts.map +1 -0
- package/dist/helpers.js +766 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +16 -0
- package/dist/transformers/activity.d.ts +12 -0
- package/dist/transformers/activity.d.ts.map +1 -0
- package/dist/transformers/activity.js +69 -0
- package/dist/transformers/application.d.ts +7 -0
- package/dist/transformers/application.d.ts.map +1 -0
- package/dist/transformers/application.js +71 -0
- package/dist/transformers/applicationCommand.d.ts +4 -0
- package/dist/transformers/applicationCommand.d.ts.map +1 -0
- package/dist/transformers/applicationCommand.js +19 -0
- package/dist/transformers/applicationCommandOption.d.ts +4 -0
- package/dist/transformers/applicationCommandOption.d.ts.map +1 -0
- package/dist/transformers/applicationCommandOption.js +22 -0
- package/dist/transformers/applicationCommandOptionChoice.d.ts +4 -0
- package/dist/transformers/applicationCommandOptionChoice.d.ts.map +1 -0
- package/dist/transformers/applicationCommandOptionChoice.js +10 -0
- package/dist/transformers/applicationCommandPermission.d.ts +4 -0
- package/dist/transformers/applicationCommandPermission.d.ts.map +1 -0
- package/dist/transformers/applicationCommandPermission.js +15 -0
- package/dist/transformers/attachment.d.ts +6 -0
- package/dist/transformers/attachment.d.ts.map +1 -0
- package/dist/transformers/attachment.js +29 -0
- package/dist/transformers/auditLogEntry.d.ts +4 -0
- package/dist/transformers/auditLogEntry.d.ts.map +1 -0
- package/dist/transformers/auditLogEntry.js +28 -0
- package/dist/transformers/automodActionExecution.d.ts +4 -0
- package/dist/transformers/automodActionExecution.d.ts.map +1 -0
- package/dist/transformers/automodActionExecution.js +25 -0
- package/dist/transformers/automodRule.d.ts +4 -0
- package/dist/transformers/automodRule.d.ts.map +1 -0
- package/dist/transformers/automodRule.js +32 -0
- package/dist/transformers/avatarDecorationData.d.ts +6 -0
- package/dist/transformers/avatarDecorationData.d.ts.map +1 -0
- package/dist/transformers/avatarDecorationData.js +13 -0
- package/dist/transformers/channel.d.ts +14 -0
- package/dist/transformers/channel.d.ts.map +1 -0
- package/dist/transformers/channel.js +131 -0
- package/dist/transformers/component.d.ts +12 -0
- package/dist/transformers/component.d.ts.map +1 -0
- package/dist/transformers/component.js +411 -0
- package/dist/transformers/embed.d.ts +4 -0
- package/dist/transformers/embed.d.ts.map +1 -0
- package/dist/transformers/embed.js +61 -0
- package/dist/transformers/emoji.d.ts +11 -0
- package/dist/transformers/emoji.d.ts.map +1 -0
- package/dist/transformers/emoji.js +41 -0
- package/dist/transformers/entitlement.d.ts +6 -0
- package/dist/transformers/entitlement.d.ts.map +1 -0
- package/dist/transformers/entitlement.js +20 -0
- package/dist/transformers/gatewayBot.d.ts +4 -0
- package/dist/transformers/gatewayBot.d.ts.map +1 -0
- package/dist/transformers/gatewayBot.js +15 -0
- package/dist/transformers/guild.d.ts +9 -0
- package/dist/transformers/guild.d.ts.map +1 -0
- package/dist/transformers/guild.js +147 -0
- package/dist/transformers/incidentsData.d.ts +6 -0
- package/dist/transformers/incidentsData.d.ts.map +1 -0
- package/dist/transformers/incidentsData.js +14 -0
- package/dist/transformers/index.d.ts.map +1 -0
- package/dist/transformers/index.js +52 -0
- package/dist/transformers/integration.d.ts +4 -0
- package/dist/transformers/integration.d.ts.map +1 -0
- package/dist/transformers/integration.js +34 -0
- package/dist/transformers/interaction.d.ts +27 -0
- package/dist/transformers/interaction.d.ts.map +1 -0
- package/dist/transformers/interaction.js +285 -0
- package/dist/transformers/invite.d.ts +7 -0
- package/dist/transformers/invite.d.ts.map +1 -0
- package/dist/transformers/invite.js +40 -0
- package/dist/transformers/lobby.d.ts +15 -0
- package/dist/transformers/lobby.d.ts.map +1 -0
- package/dist/transformers/lobby.js +51 -0
- package/dist/transformers/member.d.ts +10 -0
- package/dist/transformers/member.d.ts.map +1 -0
- package/dist/transformers/member.js +57 -0
- package/dist/transformers/message.d.ts +26 -0
- package/dist/transformers/message.d.ts.map +1 -0
- package/dist/transformers/message.js +314 -0
- package/dist/transformers/onboarding.d.ts +12 -0
- package/dist/transformers/onboarding.d.ts.map +1 -0
- package/dist/transformers/onboarding.js +42 -0
- package/dist/transformers/poll.d.ts +9 -0
- package/dist/transformers/poll.d.ts.map +1 -0
- package/dist/transformers/poll.js +40 -0
- package/dist/transformers/presence.d.ts +6 -0
- package/dist/transformers/presence.d.ts.map +1 -0
- package/dist/transformers/presence.js +18 -0
- package/dist/transformers/reverse/activity.d.ts +6 -0
- package/dist/transformers/reverse/activity.d.ts.map +1 -0
- package/dist/transformers/reverse/activity.js +39 -0
- package/dist/transformers/reverse/allowedMentions.d.ts +4 -0
- package/dist/transformers/reverse/allowedMentions.d.ts.map +1 -0
- package/dist/transformers/reverse/allowedMentions.js +10 -0
- package/dist/transformers/reverse/application.d.ts +5 -0
- package/dist/transformers/reverse/application.d.ts.map +1 -0
- package/dist/transformers/reverse/application.js +28 -0
- package/dist/transformers/reverse/applicationCommand.d.ts +5 -0
- package/dist/transformers/reverse/applicationCommand.d.ts.map +1 -0
- package/dist/transformers/reverse/applicationCommand.js +18 -0
- package/dist/transformers/reverse/applicationCommandOption.d.ts +5 -0
- package/dist/transformers/reverse/applicationCommandOption.d.ts.map +1 -0
- package/dist/transformers/reverse/applicationCommandOption.js +20 -0
- package/dist/transformers/reverse/applicationCommandOptionChoice.d.ts +5 -0
- package/dist/transformers/reverse/applicationCommandOptionChoice.d.ts.map +1 -0
- package/dist/transformers/reverse/applicationCommandOptionChoice.js +9 -0
- package/dist/transformers/reverse/applicationCommandPermission.d.ts +5 -0
- package/dist/transformers/reverse/applicationCommandPermission.d.ts.map +1 -0
- package/dist/transformers/reverse/applicationCommandPermission.js +14 -0
- package/dist/transformers/reverse/attachment.d.ts +4 -0
- package/dist/transformers/reverse/attachment.d.ts.map +1 -0
- package/dist/transformers/reverse/attachment.js +20 -0
- package/dist/transformers/reverse/auditLogEntry.d.ts +5 -0
- package/dist/transformers/reverse/auditLogEntry.d.ts.map +1 -0
- package/dist/transformers/reverse/auditLogEntry.js +28 -0
- package/dist/transformers/reverse/component.d.ts +7 -0
- package/dist/transformers/reverse/component.d.ts.map +1 -0
- package/dist/transformers/reverse/component.js +335 -0
- package/dist/transformers/reverse/embed.d.ts +5 -0
- package/dist/transformers/reverse/embed.d.ts.map +1 -0
- package/dist/transformers/reverse/embed.js +58 -0
- package/dist/transformers/reverse/emoji.d.ts +5 -0
- package/dist/transformers/reverse/emoji.d.ts.map +1 -0
- package/dist/transformers/reverse/emoji.js +14 -0
- package/dist/transformers/reverse/gatewayBot.d.ts.map +1 -0
- package/dist/transformers/reverse/gatewayBot.js +14 -0
- package/dist/transformers/reverse/index.d.ts.map +1 -0
- package/dist/transformers/reverse/index.js +19 -0
- package/dist/transformers/reverse/member.d.ts.map +1 -0
- package/dist/transformers/reverse/member.js +45 -0
- package/dist/transformers/reverse/presence.d.ts +11 -0
- package/dist/transformers/reverse/presence.d.ts.map +1 -0
- package/dist/transformers/reverse/presence.js +24 -0
- package/dist/transformers/reverse/team.d.ts +5 -0
- package/dist/transformers/reverse/team.d.ts.map +1 -0
- package/dist/transformers/reverse/team.js +18 -0
- package/dist/transformers/reverse/user.d.ts +5 -0
- package/dist/transformers/reverse/user.d.ts.map +1 -0
- package/dist/transformers/reverse/user.js +17 -0
- package/dist/transformers/reverse/widgetSettings.d.ts +5 -0
- package/dist/transformers/reverse/widgetSettings.d.ts.map +1 -0
- package/dist/transformers/reverse/widgetSettings.js +8 -0
- package/dist/transformers/role.d.ts +12 -0
- package/dist/transformers/role.d.ts.map +1 -0
- package/dist/transformers/role.js +74 -0
- package/dist/transformers/scheduledEvent.d.ts +9 -0
- package/dist/transformers/scheduledEvent.d.ts.map +1 -0
- package/dist/transformers/scheduledEvent.js +45 -0
- package/dist/transformers/sku.d.ts +6 -0
- package/dist/transformers/sku.d.ts.map +1 -0
- package/dist/transformers/sku.js +16 -0
- package/dist/transformers/soundboardSound.d.ts +6 -0
- package/dist/transformers/soundboardSound.d.ts.map +1 -0
- package/dist/transformers/soundboardSound.js +18 -0
- package/dist/transformers/stageInstance.d.ts +6 -0
- package/dist/transformers/stageInstance.d.ts.map +1 -0
- package/dist/transformers/stageInstance.js +15 -0
- package/dist/transformers/stageInviteInstance.d.ts +7 -0
- package/dist/transformers/stageInviteInstance.d.ts.map +1 -0
- package/dist/transformers/stageInviteInstance.js +21 -0
- package/dist/transformers/sticker.d.ts +7 -0
- package/dist/transformers/sticker.d.ts.map +1 -0
- package/dist/transformers/sticker.js +33 -0
- package/dist/transformers/subscription.d.ts +6 -0
- package/dist/transformers/subscription.d.ts.map +1 -0
- package/dist/transformers/subscription.js +20 -0
- package/dist/transformers/team.d.ts +4 -0
- package/dist/transformers/team.d.ts.map +1 -0
- package/dist/transformers/team.js +19 -0
- package/dist/transformers/template.d.ts +4 -0
- package/dist/transformers/template.d.ts.map +1 -0
- package/dist/transformers/template.js +18 -0
- package/dist/transformers/threadMember.d.ts +14 -0
- package/dist/transformers/threadMember.d.ts.map +1 -0
- package/dist/transformers/threadMember.js +23 -0
- package/dist/transformers/toggles/Permissions.d.ts.map +1 -0
- package/dist/transformers/toggles/Permissions.js +18 -0
- package/dist/transformers/toggles/ToggleBitfield.d.ts.map +1 -0
- package/dist/transformers/toggles/ToggleBitfield.js +42 -0
- package/dist/transformers/toggles/channel.d.ts +36 -0
- package/dist/transformers/toggles/channel.d.ts.map +1 -0
- package/dist/transformers/toggles/channel.js +55 -0
- package/dist/transformers/toggles/emoji.d.ts +29 -0
- package/dist/transformers/toggles/emoji.d.ts.map +1 -0
- package/dist/transformers/toggles/emoji.js +45 -0
- package/dist/transformers/toggles/guild.d.ts +165 -0
- package/dist/transformers/toggles/guild.d.ts.map +1 -0
- package/dist/transformers/toggles/guild.js +256 -0
- package/dist/transformers/toggles/index.d.ts.map +1 -0
- package/dist/transformers/toggles/index.js +11 -0
- package/dist/transformers/toggles/member.d.ts +69 -0
- package/dist/transformers/toggles/member.d.ts.map +1 -0
- package/dist/transformers/toggles/member.js +114 -0
- package/dist/transformers/toggles/role.d.ts +37 -0
- package/dist/transformers/toggles/role.d.ts.map +1 -0
- package/dist/transformers/toggles/role.js +55 -0
- package/dist/transformers/toggles/user.d.ts +29 -0
- package/dist/transformers/toggles/user.d.ts.map +1 -0
- package/dist/transformers/toggles/user.js +45 -0
- package/dist/transformers/toggles/voice.d.ts +41 -0
- package/dist/transformers/toggles/voice.d.ts.map +1 -0
- package/dist/transformers/toggles/voice.js +60 -0
- package/dist/transformers/types.d.ts +2014 -0
- package/dist/transformers/types.d.ts.map +1 -0
- package/dist/transformers/types.js +3 -0
- package/dist/transformers/user.d.ts +17 -0
- package/dist/transformers/user.d.ts.map +1 -0
- package/dist/transformers/user.js +95 -0
- package/dist/transformers/voiceRegion.d.ts +4 -0
- package/dist/transformers/voiceRegion.d.ts.map +1 -0
- package/dist/transformers/voiceRegion.js +12 -0
- package/dist/transformers/voiceState.d.ts +7 -0
- package/dist/transformers/voiceState.d.ts.map +1 -0
- package/dist/transformers/voiceState.js +18 -0
- package/dist/transformers/webhook.d.ts +6 -0
- package/dist/transformers/webhook.d.ts.map +1 -0
- package/dist/transformers/webhook.js +30 -0
- package/dist/transformers/welcomeScreen.d.ts +4 -0
- package/dist/transformers/welcomeScreen.d.ts.map +1 -0
- package/dist/transformers/welcomeScreen.js +14 -0
- package/dist/transformers/widget.d.ts +4 -0
- package/dist/transformers/widget.d.ts.map +1 -0
- package/dist/transformers/widget.js +17 -0
- package/dist/transformers/widgetSettings.d.ts +4 -0
- package/dist/transformers/widgetSettings.d.ts.map +1 -0
- package/dist/transformers/widgetSettings.js +9 -0
- package/dist/transformers.d.ts +241 -0
- package/dist/transformers.d.ts.map +1 -0
- package/dist/transformers.js +264 -0
- package/package.json +27 -36
- package/dist/cjs/bot.cjs +0 -82
- package/dist/cjs/commandOptionsParser.cjs +0 -53
- package/dist/cjs/constants.cjs +0 -30
- package/dist/cjs/desiredProperties.cjs +0 -649
- package/dist/cjs/events.cjs +0 -6
- package/dist/cjs/handlers/channels/CHANNEL_CREATE.cjs +0 -21
- package/dist/cjs/handlers/channels/CHANNEL_DELETE.cjs +0 -20
- package/dist/cjs/handlers/channels/CHANNEL_PINS_UPDATE.cjs +0 -21
- package/dist/cjs/handlers/channels/CHANNEL_UPDATE.cjs +0 -20
- package/dist/cjs/handlers/channels/STAGE_INSTANCE_CREATE.cjs +0 -22
- package/dist/cjs/handlers/channels/STAGE_INSTANCE_DELETE.cjs +0 -22
- package/dist/cjs/handlers/channels/STAGE_INSTANCE_UPDATE.cjs +0 -22
- package/dist/cjs/handlers/channels/THREAD_CREATE.cjs +0 -19
- package/dist/cjs/handlers/channels/THREAD_DELETE.cjs +0 -19
- package/dist/cjs/handlers/channels/THREAD_LIST_SYNC.cjs +0 -31
- package/dist/cjs/handlers/channels/THREAD_MEMBERS_UPDATE.cjs +0 -24
- package/dist/cjs/handlers/channels/THREAD_MEMBER_UPDATE.cjs +0 -22
- package/dist/cjs/handlers/channels/THREAD_UPDATE.cjs +0 -19
- package/dist/cjs/handlers/channels/index.cjs +0 -32
- package/dist/cjs/handlers/emojis/GUILD_EMOJIS_UPDATE.cjs +0 -24
- package/dist/cjs/handlers/emojis/index.cjs +0 -20
- package/dist/cjs/handlers/entitlements/ENTITLEMENT_CREATE.cjs +0 -17
- package/dist/cjs/handlers/entitlements/ENTITLEMENT_DELETE.cjs +0 -17
- package/dist/cjs/handlers/entitlements/ENTITLEMENT_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/entitlements/index.cjs +0 -22
- package/dist/cjs/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.cjs +0 -18
- package/dist/cjs/handlers/guilds/GUILD_BAN_ADD.cjs +0 -17
- package/dist/cjs/handlers/guilds/GUILD_BAN_REMOVE.cjs +0 -17
- package/dist/cjs/handlers/guilds/GUILD_CREATE.cjs +0 -20
- package/dist/cjs/handlers/guilds/GUILD_DELETE.cjs +0 -20
- package/dist/cjs/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.cjs +0 -19
- package/dist/cjs/handlers/guilds/GUILD_STICKERS_UPDATE.cjs +0 -23
- package/dist/cjs/handlers/guilds/GUILD_UPDATE.cjs +0 -20
- package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.cjs +0 -17
- package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.cjs +0 -17
- package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.cjs +0 -17
- package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/guilds/automod/index.cjs +0 -23
- package/dist/cjs/handlers/guilds/index.cjs +0 -29
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.cjs +0 -17
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.cjs +0 -17
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.cjs +0 -21
- package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.cjs +0 -21
- package/dist/cjs/handlers/guilds/scheduledEvents/index.cjs +0 -24
- package/dist/cjs/handlers/index.cjs +0 -35
- package/dist/cjs/handlers/integrations/INTEGRATION_CREATE.cjs +0 -16
- package/dist/cjs/handlers/integrations/INTEGRATION_DELETE.cjs +0 -21
- package/dist/cjs/handlers/integrations/INTEGRATION_UPDATE.cjs +0 -16
- package/dist/cjs/handlers/integrations/index.cjs +0 -22
- package/dist/cjs/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/interactions/INTERACTION_CREATE.cjs +0 -19
- package/dist/cjs/handlers/interactions/index.cjs +0 -21
- package/dist/cjs/handlers/invites/INVITE_CREATE.cjs +0 -19
- package/dist/cjs/handlers/invites/INVITE_DELETE.cjs +0 -21
- package/dist/cjs/handlers/invites/index.cjs +0 -21
- package/dist/cjs/handlers/members/GUILD_MEMBERS_CHUNK.cjs +0 -30
- package/dist/cjs/handlers/members/GUILD_MEMBER_ADD.cjs +0 -20
- package/dist/cjs/handlers/members/GUILD_MEMBER_REMOVE.cjs +0 -19
- package/dist/cjs/handlers/members/GUILD_MEMBER_UPDATE.cjs +0 -19
- package/dist/cjs/handlers/members/index.cjs +0 -23
- package/dist/cjs/handlers/messages/MESSAGE_CREATE.cjs +0 -20
- package/dist/cjs/handlers/messages/MESSAGE_DELETE.cjs +0 -21
- package/dist/cjs/handlers/messages/MESSAGE_DELETE_BULK.cjs +0 -23
- package/dist/cjs/handlers/messages/MESSAGE_REACTION_ADD.cjs +0 -31
- package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE.cjs +0 -25
- package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.cjs +0 -21
- package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.cjs +0 -23
- package/dist/cjs/handlers/messages/MESSAGE_UPDATE.cjs +0 -21
- package/dist/cjs/handlers/messages/index.cjs +0 -27
- package/dist/cjs/handlers/misc/PRESENCE_UPDATE.cjs +0 -16
- package/dist/cjs/handlers/misc/READY.cjs +0 -28
- package/dist/cjs/handlers/misc/TYPING_START.cjs +0 -25
- package/dist/cjs/handlers/misc/USER_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/misc/index.cjs +0 -23
- package/dist/cjs/handlers/poll/MESSAGE_POLL_VOTE_ADD.cjs +0 -23
- package/dist/cjs/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.cjs +0 -23
- package/dist/cjs/handlers/poll/index.cjs +0 -21
- package/dist/cjs/handlers/roles/GUILD_ROLE_CREATE.cjs +0 -20
- package/dist/cjs/handlers/roles/GUILD_ROLE_DELETE.cjs +0 -20
- package/dist/cjs/handlers/roles/GUILD_ROLE_UPDATE.cjs +0 -20
- package/dist/cjs/handlers/roles/index.cjs +0 -22
- package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.cjs +0 -20
- package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.cjs +0 -17
- package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.cjs +0 -20
- package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/soundboard/SOUNDBOARD_SOUNDS.cjs +0 -20
- package/dist/cjs/handlers/soundboard/index.cjs +0 -24
- package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_CREATE.cjs +0 -17
- package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_DELETE.cjs +0 -17
- package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_UPDATE.cjs +0 -17
- package/dist/cjs/handlers/subscriptions/index.cjs +0 -22
- package/dist/cjs/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.cjs +0 -26
- package/dist/cjs/handlers/voice/VOICE_SERVER_UPDATE.cjs +0 -21
- package/dist/cjs/handlers/voice/VOICE_STATE_UPDATE.cjs +0 -23
- package/dist/cjs/handlers/voice/index.cjs +0 -22
- package/dist/cjs/handlers/webhooks/WEBHOOKS_UPDATE.cjs +0 -20
- package/dist/cjs/handlers/webhooks/index.cjs +0 -20
- package/dist/cjs/handlers.cjs +0 -132
- package/dist/cjs/helpers.cjs +0 -794
- package/dist/cjs/index.cjs +0 -33
- package/dist/cjs/transformers/activity.cjs +0 -74
- package/dist/cjs/transformers/application.cjs +0 -70
- package/dist/cjs/transformers/applicationCommand.cjs +0 -29
- package/dist/cjs/transformers/applicationCommandOption.cjs +0 -31
- package/dist/cjs/transformers/applicationCommandOptionChoice.cjs +0 -20
- package/dist/cjs/transformers/applicationCommandPermission.cjs +0 -25
- package/dist/cjs/transformers/attachment.cjs +0 -31
- package/dist/cjs/transformers/auditLogEntry.cjs +0 -37
- package/dist/cjs/transformers/automodActionExecution.cjs +0 -35
- package/dist/cjs/transformers/automodRule.cjs +0 -41
- package/dist/cjs/transformers/avatarDecorationData.cjs +0 -20
- package/dist/cjs/transformers/channel.cjs +0 -151
- package/dist/cjs/transformers/component.cjs +0 -217
- package/dist/cjs/transformers/embed.cjs +0 -54
- package/dist/cjs/transformers/emoji.cjs +0 -57
- package/dist/cjs/transformers/entitlement.cjs +0 -27
- package/dist/cjs/transformers/gatewayBot.cjs +0 -25
- package/dist/cjs/transformers/guild.cjs +0 -165
- package/dist/cjs/transformers/incidentsData.cjs +0 -21
- package/dist/cjs/transformers/index.cjs +0 -68
- package/dist/cjs/transformers/integration.cjs +0 -44
- package/dist/cjs/transformers/interaction.cjs +0 -290
- package/dist/cjs/transformers/invite.cjs +0 -52
- package/dist/cjs/transformers/lobby.cjs +0 -41
- package/dist/cjs/transformers/member.cjs +0 -69
- package/dist/cjs/transformers/message.cjs +0 -315
- package/dist/cjs/transformers/onboarding.cjs +0 -56
- package/dist/cjs/transformers/poll.cjs +0 -51
- package/dist/cjs/transformers/presence.cjs +0 -24
- package/dist/cjs/transformers/reverse/activity.cjs +0 -53
- package/dist/cjs/transformers/reverse/allowedMentions.cjs +0 -20
- package/dist/cjs/transformers/reverse/application.cjs +0 -38
- package/dist/cjs/transformers/reverse/applicationCommand.cjs +0 -28
- package/dist/cjs/transformers/reverse/applicationCommandOption.cjs +0 -30
- package/dist/cjs/transformers/reverse/applicationCommandOptionChoice.cjs +0 -19
- package/dist/cjs/transformers/reverse/applicationCommandPermission.cjs +0 -24
- package/dist/cjs/transformers/reverse/attachment.cjs +0 -30
- package/dist/cjs/transformers/reverse/auditLogEntry.cjs +0 -37
- package/dist/cjs/transformers/reverse/component.cjs +0 -183
- package/dist/cjs/transformers/reverse/embed.cjs +0 -53
- package/dist/cjs/transformers/reverse/emoji.cjs +0 -24
- package/dist/cjs/transformers/reverse/gatewayBot.cjs +0 -24
- package/dist/cjs/transformers/reverse/index.cjs +0 -36
- package/dist/cjs/transformers/reverse/member.cjs +0 -61
- package/dist/cjs/transformers/reverse/presence.cjs +0 -41
- package/dist/cjs/transformers/reverse/team.cjs +0 -28
- package/dist/cjs/transformers/reverse/widgetSettings.cjs +0 -18
- package/dist/cjs/transformers/role.cjs +0 -90
- package/dist/cjs/transformers/scheduledEvent.cjs +0 -58
- package/dist/cjs/transformers/sku.cjs +0 -23
- package/dist/cjs/transformers/soundboardSound.cjs +0 -25
- package/dist/cjs/transformers/stageInstance.cjs +0 -22
- package/dist/cjs/transformers/stageInviteInstance.cjs +0 -23
- package/dist/cjs/transformers/sticker.cjs +0 -48
- package/dist/cjs/transformers/subscription.cjs +0 -27
- package/dist/cjs/transformers/team.cjs +0 -29
- package/dist/cjs/transformers/template.cjs +0 -28
- package/dist/cjs/transformers/threadMember.cjs +0 -36
- package/dist/cjs/transformers/toggles/Permissions.cjs +0 -28
- package/dist/cjs/transformers/toggles/ToggleBitfield.cjs +0 -60
- package/dist/cjs/transformers/toggles/channel.cjs +0 -73
- package/dist/cjs/transformers/toggles/emoji.cjs +0 -63
- package/dist/cjs/transformers/toggles/guild.cjs +0 -274
- package/dist/cjs/transformers/toggles/index.cjs +0 -28
- package/dist/cjs/transformers/toggles/member.cjs +0 -132
- package/dist/cjs/transformers/toggles/role.cjs +0 -73
- package/dist/cjs/transformers/toggles/user.cjs +0 -63
- package/dist/cjs/transformers/toggles/voice.cjs +0 -78
- package/dist/cjs/transformers/types.cjs +0 -6
- package/dist/cjs/transformers/user.cjs +0 -95
- package/dist/cjs/transformers/voiceRegion.cjs +0 -22
- package/dist/cjs/transformers/voiceState.cjs +0 -24
- package/dist/cjs/transformers/webhook.cjs +0 -37
- package/dist/cjs/transformers/welcomeScreen.cjs +0 -24
- package/dist/cjs/transformers/widget.cjs +0 -27
- package/dist/cjs/transformers/widgetSettings.cjs +0 -19
- package/dist/cjs/transformers.cjs +0 -188
- package/dist/esm/bot.js +0 -72
- package/dist/esm/commandOptionsParser.js +0 -43
- package/dist/esm/constants.js +0 -6
- package/dist/esm/desiredProperties.js +0 -631
- package/dist/esm/events.js +0 -3
- package/dist/esm/handlers/channels/CHANNEL_CREATE.js +0 -11
- package/dist/esm/handlers/channels/CHANNEL_DELETE.js +0 -10
- package/dist/esm/handlers/channels/CHANNEL_PINS_UPDATE.js +0 -11
- package/dist/esm/handlers/channels/CHANNEL_UPDATE.js +0 -10
- package/dist/esm/handlers/channels/STAGE_INSTANCE_CREATE.js +0 -12
- package/dist/esm/handlers/channels/STAGE_INSTANCE_DELETE.js +0 -12
- package/dist/esm/handlers/channels/STAGE_INSTANCE_UPDATE.js +0 -12
- package/dist/esm/handlers/channels/THREAD_CREATE.js +0 -9
- package/dist/esm/handlers/channels/THREAD_DELETE.js +0 -9
- package/dist/esm/handlers/channels/THREAD_LIST_SYNC.js +0 -21
- package/dist/esm/handlers/channels/THREAD_MEMBERS_UPDATE.js +0 -14
- package/dist/esm/handlers/channels/THREAD_MEMBER_UPDATE.js +0 -12
- package/dist/esm/handlers/channels/THREAD_UPDATE.js +0 -9
- package/dist/esm/handlers/channels/index.js +0 -15
- package/dist/esm/handlers/emojis/GUILD_EMOJIS_UPDATE.js +0 -14
- package/dist/esm/handlers/emojis/index.js +0 -3
- package/dist/esm/handlers/entitlements/ENTITLEMENT_CREATE.js +0 -7
- package/dist/esm/handlers/entitlements/ENTITLEMENT_DELETE.js +0 -7
- package/dist/esm/handlers/entitlements/ENTITLEMENT_UPDATE.js +0 -7
- package/dist/esm/handlers/entitlements/index.js +0 -5
- package/dist/esm/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.js +0 -8
- package/dist/esm/handlers/guilds/GUILD_BAN_ADD.js +0 -7
- package/dist/esm/handlers/guilds/GUILD_BAN_REMOVE.js +0 -7
- package/dist/esm/handlers/guilds/GUILD_CREATE.js +0 -10
- package/dist/esm/handlers/guilds/GUILD_DELETE.js +0 -10
- package/dist/esm/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.js +0 -9
- package/dist/esm/handlers/guilds/GUILD_STICKERS_UPDATE.js +0 -13
- package/dist/esm/handlers/guilds/GUILD_UPDATE.js +0 -10
- package/dist/esm/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.js +0 -7
- package/dist/esm/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.js +0 -7
- package/dist/esm/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.js +0 -7
- package/dist/esm/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.js +0 -7
- package/dist/esm/handlers/guilds/automod/index.js +0 -6
- package/dist/esm/handlers/guilds/index.js +0 -12
- package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.js +0 -7
- package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.js +0 -7
- package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.js +0 -7
- package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.js +0 -11
- package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.js +0 -11
- package/dist/esm/handlers/guilds/scheduledEvents/index.js +0 -7
- package/dist/esm/handlers/index.js +0 -18
- package/dist/esm/handlers/integrations/INTEGRATION_CREATE.js +0 -6
- package/dist/esm/handlers/integrations/INTEGRATION_DELETE.js +0 -11
- package/dist/esm/handlers/integrations/INTEGRATION_UPDATE.js +0 -6
- package/dist/esm/handlers/integrations/index.js +0 -5
- package/dist/esm/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.js +0 -7
- package/dist/esm/handlers/interactions/INTERACTION_CREATE.js +0 -9
- package/dist/esm/handlers/interactions/index.js +0 -4
- package/dist/esm/handlers/invites/INVITE_CREATE.js +0 -9
- package/dist/esm/handlers/invites/INVITE_DELETE.js +0 -11
- package/dist/esm/handlers/invites/index.js +0 -4
- package/dist/esm/handlers/members/GUILD_MEMBERS_CHUNK.js +0 -20
- package/dist/esm/handlers/members/GUILD_MEMBER_ADD.js +0 -10
- package/dist/esm/handlers/members/GUILD_MEMBER_REMOVE.js +0 -9
- package/dist/esm/handlers/members/GUILD_MEMBER_UPDATE.js +0 -9
- package/dist/esm/handlers/members/index.js +0 -6
- package/dist/esm/handlers/messages/MESSAGE_CREATE.js +0 -10
- package/dist/esm/handlers/messages/MESSAGE_DELETE.js +0 -11
- package/dist/esm/handlers/messages/MESSAGE_DELETE_BULK.js +0 -13
- package/dist/esm/handlers/messages/MESSAGE_REACTION_ADD.js +0 -21
- package/dist/esm/handlers/messages/MESSAGE_REACTION_REMOVE.js +0 -15
- package/dist/esm/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.js +0 -11
- package/dist/esm/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.js +0 -13
- package/dist/esm/handlers/messages/MESSAGE_UPDATE.js +0 -11
- package/dist/esm/handlers/messages/index.js +0 -10
- package/dist/esm/handlers/misc/PRESENCE_UPDATE.js +0 -6
- package/dist/esm/handlers/misc/READY.js +0 -18
- package/dist/esm/handlers/misc/TYPING_START.js +0 -15
- package/dist/esm/handlers/misc/USER_UPDATE.js +0 -7
- package/dist/esm/handlers/misc/index.js +0 -6
- package/dist/esm/handlers/poll/MESSAGE_POLL_VOTE_ADD.js +0 -13
- package/dist/esm/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.js +0 -13
- package/dist/esm/handlers/poll/index.js +0 -4
- package/dist/esm/handlers/roles/GUILD_ROLE_CREATE.js +0 -10
- package/dist/esm/handlers/roles/GUILD_ROLE_DELETE.js +0 -10
- package/dist/esm/handlers/roles/GUILD_ROLE_UPDATE.js +0 -10
- package/dist/esm/handlers/roles/index.js +0 -5
- package/dist/esm/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.js +0 -10
- package/dist/esm/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.js +0 -7
- package/dist/esm/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.js +0 -10
- package/dist/esm/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.js +0 -7
- package/dist/esm/handlers/soundboard/SOUNDBOARD_SOUNDS.js +0 -10
- package/dist/esm/handlers/soundboard/index.js +0 -7
- package/dist/esm/handlers/subscriptions/SUBSCRIPTION_CREATE.js +0 -7
- package/dist/esm/handlers/subscriptions/SUBSCRIPTION_DELETE.js +0 -7
- package/dist/esm/handlers/subscriptions/SUBSCRIPTION_UPDATE.js +0 -7
- package/dist/esm/handlers/subscriptions/index.js +0 -5
- package/dist/esm/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.js +0 -16
- package/dist/esm/handlers/voice/VOICE_SERVER_UPDATE.js +0 -11
- package/dist/esm/handlers/voice/VOICE_STATE_UPDATE.js +0 -13
- package/dist/esm/handlers/voice/index.js +0 -5
- package/dist/esm/handlers/webhooks/WEBHOOKS_UPDATE.js +0 -10
- package/dist/esm/handlers/webhooks/index.js +0 -3
- package/dist/esm/handlers.js +0 -81
- package/dist/esm/helpers.js +0 -784
- package/dist/esm/index.js +0 -16
- package/dist/esm/transformers/activity.js +0 -53
- package/dist/esm/transformers/application.js +0 -60
- package/dist/esm/transformers/applicationCommand.js +0 -19
- package/dist/esm/transformers/applicationCommandOption.js +0 -21
- package/dist/esm/transformers/applicationCommandOptionChoice.js +0 -10
- package/dist/esm/transformers/applicationCommandPermission.js +0 -15
- package/dist/esm/transformers/attachment.js +0 -21
- package/dist/esm/transformers/auditLogEntry.js +0 -27
- package/dist/esm/transformers/automodActionExecution.js +0 -25
- package/dist/esm/transformers/automodRule.js +0 -31
- package/dist/esm/transformers/avatarDecorationData.js +0 -10
- package/dist/esm/transformers/channel.js +0 -124
- package/dist/esm/transformers/component.js +0 -196
- package/dist/esm/transformers/embed.js +0 -44
- package/dist/esm/transformers/emoji.js +0 -36
- package/dist/esm/transformers/entitlement.js +0 -17
- package/dist/esm/transformers/gatewayBot.js +0 -15
- package/dist/esm/transformers/guild.js +0 -147
- package/dist/esm/transformers/incidentsData.js +0 -11
- package/dist/esm/transformers/index.js +0 -52
- package/dist/esm/transformers/integration.js +0 -34
- package/dist/esm/transformers/interaction.js +0 -259
- package/dist/esm/transformers/invite.js +0 -42
- package/dist/esm/transformers/lobby.js +0 -23
- package/dist/esm/transformers/member.js +0 -51
- package/dist/esm/transformers/message.js +0 -285
- package/dist/esm/transformers/onboarding.js +0 -35
- package/dist/esm/transformers/poll.js +0 -33
- package/dist/esm/transformers/presence.js +0 -14
- package/dist/esm/transformers/reverse/activity.js +0 -43
- package/dist/esm/transformers/reverse/allowedMentions.js +0 -10
- package/dist/esm/transformers/reverse/application.js +0 -28
- package/dist/esm/transformers/reverse/applicationCommand.js +0 -18
- package/dist/esm/transformers/reverse/applicationCommandOption.js +0 -20
- package/dist/esm/transformers/reverse/applicationCommandOptionChoice.js +0 -9
- package/dist/esm/transformers/reverse/applicationCommandPermission.js +0 -14
- package/dist/esm/transformers/reverse/attachment.js +0 -20
- package/dist/esm/transformers/reverse/auditLogEntry.js +0 -27
- package/dist/esm/transformers/reverse/component.js +0 -162
- package/dist/esm/transformers/reverse/embed.js +0 -43
- package/dist/esm/transformers/reverse/emoji.js +0 -14
- package/dist/esm/transformers/reverse/gatewayBot.js +0 -14
- package/dist/esm/transformers/reverse/index.js +0 -19
- package/dist/esm/transformers/reverse/member.js +0 -43
- package/dist/esm/transformers/reverse/presence.js +0 -23
- package/dist/esm/transformers/reverse/team.js +0 -18
- package/dist/esm/transformers/reverse/widgetSettings.js +0 -8
- package/dist/esm/transformers/role.js +0 -69
- package/dist/esm/transformers/scheduledEvent.js +0 -40
- package/dist/esm/transformers/sku.js +0 -13
- package/dist/esm/transformers/soundboardSound.js +0 -15
- package/dist/esm/transformers/stageInstance.js +0 -12
- package/dist/esm/transformers/stageInviteInstance.js +0 -13
- package/dist/esm/transformers/sticker.js +0 -30
- package/dist/esm/transformers/subscription.js +0 -17
- package/dist/esm/transformers/team.js +0 -19
- package/dist/esm/transformers/template.js +0 -18
- package/dist/esm/transformers/threadMember.js +0 -18
- package/dist/esm/transformers/toggles/Permissions.js +0 -18
- package/dist/esm/transformers/toggles/ToggleBitfield.js +0 -42
- package/dist/esm/transformers/toggles/channel.js +0 -55
- package/dist/esm/transformers/toggles/emoji.js +0 -45
- package/dist/esm/transformers/toggles/guild.js +0 -256
- package/dist/esm/transformers/toggles/index.js +0 -11
- package/dist/esm/transformers/toggles/member.js +0 -114
- package/dist/esm/transformers/toggles/role.js +0 -55
- package/dist/esm/transformers/toggles/user.js +0 -45
- package/dist/esm/transformers/toggles/voice.js +0 -60
- package/dist/esm/transformers/types.js +0 -3
- package/dist/esm/transformers/user.js +0 -68
- package/dist/esm/transformers/voiceRegion.js +0 -12
- package/dist/esm/transformers/voiceState.js +0 -14
- package/dist/esm/transformers/webhook.js +0 -27
- package/dist/esm/transformers/welcomeScreen.js +0 -14
- package/dist/esm/transformers/widget.js +0 -17
- package/dist/esm/transformers/widgetSettings.js +0 -9
- package/dist/esm/transformers.js +0 -178
- package/dist/types/bot.d.ts +0 -82
- package/dist/types/bot.d.ts.map +0 -1
- package/dist/types/commandOptionsParser.d.ts +0 -26
- package/dist/types/commandOptionsParser.d.ts.map +0 -1
- package/dist/types/constants.d.ts.map +0 -1
- package/dist/types/desiredProperties.d.ts +0 -213
- package/dist/types/desiredProperties.d.ts.map +0 -1
- package/dist/types/events.d.ts +0 -232
- package/dist/types/events.d.ts.map +0 -1
- package/dist/types/handlers/channels/CHANNEL_CREATE.d.ts +0 -3
- package/dist/types/handlers/channels/CHANNEL_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/CHANNEL_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/channels/CHANNEL_PINS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/CHANNEL_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/STAGE_INSTANCE_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/STAGE_INSTANCE_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/channels/STAGE_INSTANCE_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/THREAD_CREATE.d.ts +0 -4
- package/dist/types/handlers/channels/THREAD_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/THREAD_DELETE.d.ts +0 -4
- package/dist/types/handlers/channels/THREAD_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/channels/THREAD_LIST_SYNC.d.ts +0 -4
- package/dist/types/handlers/channels/THREAD_LIST_SYNC.d.ts.map +0 -1
- package/dist/types/handlers/channels/THREAD_MEMBERS_UPDATE.d.ts +0 -4
- package/dist/types/handlers/channels/THREAD_MEMBERS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/THREAD_MEMBER_UPDATE.d.ts +0 -4
- package/dist/types/handlers/channels/THREAD_MEMBER_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/THREAD_UPDATE.d.ts +0 -4
- package/dist/types/handlers/channels/THREAD_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/channels/index.d.ts.map +0 -1
- package/dist/types/handlers/emojis/GUILD_EMOJIS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/emojis/index.d.ts.map +0 -1
- package/dist/types/handlers/entitlements/ENTITLEMENT_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/entitlements/ENTITLEMENT_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/entitlements/ENTITLEMENT_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/entitlements/index.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_BAN_ADD.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_BAN_REMOVE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_STICKERS_UPDATE.d.ts +0 -3
- package/dist/types/handlers/guilds/GUILD_STICKERS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/GUILD_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.d.ts.map +0 -1
- package/dist/types/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/automod/index.d.ts.map +0 -1
- package/dist/types/handlers/guilds/index.d.ts.map +0 -1
- package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.d.ts.map +0 -1
- package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.d.ts.map +0 -1
- package/dist/types/handlers/guilds/scheduledEvents/index.d.ts.map +0 -1
- package/dist/types/handlers/index.d.ts.map +0 -1
- package/dist/types/handlers/integrations/INTEGRATION_CREATE.d.ts +0 -4
- package/dist/types/handlers/integrations/INTEGRATION_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/integrations/INTEGRATION_DELETE.d.ts +0 -4
- package/dist/types/handlers/integrations/INTEGRATION_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/integrations/INTEGRATION_UPDATE.d.ts +0 -4
- package/dist/types/handlers/integrations/INTEGRATION_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/integrations/index.d.ts.map +0 -1
- package/dist/types/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts +0 -3
- package/dist/types/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/interactions/INTERACTION_CREATE.d.ts +0 -4
- package/dist/types/handlers/interactions/INTERACTION_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/interactions/index.d.ts.map +0 -1
- package/dist/types/handlers/invites/INVITE_CREATE.d.ts +0 -4
- package/dist/types/handlers/invites/INVITE_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/invites/INVITE_DELETE.d.ts +0 -4
- package/dist/types/handlers/invites/INVITE_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/invites/index.d.ts.map +0 -1
- package/dist/types/handlers/members/GUILD_MEMBERS_CHUNK.d.ts +0 -4
- package/dist/types/handlers/members/GUILD_MEMBERS_CHUNK.d.ts.map +0 -1
- package/dist/types/handlers/members/GUILD_MEMBER_ADD.d.ts +0 -4
- package/dist/types/handlers/members/GUILD_MEMBER_ADD.d.ts.map +0 -1
- package/dist/types/handlers/members/GUILD_MEMBER_REMOVE.d.ts +0 -4
- package/dist/types/handlers/members/GUILD_MEMBER_REMOVE.d.ts.map +0 -1
- package/dist/types/handlers/members/GUILD_MEMBER_UPDATE.d.ts +0 -4
- package/dist/types/handlers/members/GUILD_MEMBER_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/members/index.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_CREATE.d.ts +0 -4
- package/dist/types/handlers/messages/MESSAGE_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_DELETE.d.ts +0 -4
- package/dist/types/handlers/messages/MESSAGE_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_DELETE_BULK.d.ts +0 -4
- package/dist/types/handlers/messages/MESSAGE_DELETE_BULK.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_REACTION_ADD.d.ts +0 -4
- package/dist/types/handlers/messages/MESSAGE_REACTION_ADD.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts +0 -4
- package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts +0 -4
- package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts +0 -4
- package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts.map +0 -1
- package/dist/types/handlers/messages/MESSAGE_UPDATE.d.ts +0 -4
- package/dist/types/handlers/messages/MESSAGE_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/messages/index.d.ts.map +0 -1
- package/dist/types/handlers/misc/PRESENCE_UPDATE.d.ts +0 -4
- package/dist/types/handlers/misc/PRESENCE_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/misc/READY.d.ts +0 -4
- package/dist/types/handlers/misc/READY.d.ts.map +0 -1
- package/dist/types/handlers/misc/TYPING_START.d.ts +0 -4
- package/dist/types/handlers/misc/TYPING_START.d.ts.map +0 -1
- package/dist/types/handlers/misc/USER_UPDATE.d.ts +0 -4
- package/dist/types/handlers/misc/USER_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/misc/index.d.ts +0 -5
- package/dist/types/handlers/misc/index.d.ts.map +0 -1
- package/dist/types/handlers/poll/MESSAGE_POLL_VOTE_ADD.d.ts +0 -4
- package/dist/types/handlers/poll/MESSAGE_POLL_VOTE_ADD.d.ts.map +0 -1
- package/dist/types/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts +0 -4
- package/dist/types/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts.map +0 -1
- package/dist/types/handlers/poll/index.d.ts.map +0 -1
- package/dist/types/handlers/roles/GUILD_ROLE_CREATE.d.ts +0 -4
- package/dist/types/handlers/roles/GUILD_ROLE_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/roles/GUILD_ROLE_DELETE.d.ts +0 -4
- package/dist/types/handlers/roles/GUILD_ROLE_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/roles/GUILD_ROLE_UPDATE.d.ts +0 -4
- package/dist/types/handlers/roles/GUILD_ROLE_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/roles/index.d.ts.map +0 -1
- package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts +0 -4
- package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts +0 -4
- package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts +0 -4
- package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts +0 -4
- package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/soundboard/SOUNDBOARD_SOUNDS.d.ts +0 -4
- package/dist/types/handlers/soundboard/SOUNDBOARD_SOUNDS.d.ts.map +0 -1
- package/dist/types/handlers/soundboard/index.d.ts.map +0 -1
- package/dist/types/handlers/subscriptions/SUBSCRIPTION_CREATE.d.ts.map +0 -1
- package/dist/types/handlers/subscriptions/SUBSCRIPTION_DELETE.d.ts.map +0 -1
- package/dist/types/handlers/subscriptions/SUBSCRIPTION_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/subscriptions/index.d.ts.map +0 -1
- package/dist/types/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts +0 -4
- package/dist/types/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts.map +0 -1
- package/dist/types/handlers/voice/VOICE_SERVER_UPDATE.d.ts +0 -4
- package/dist/types/handlers/voice/VOICE_SERVER_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/voice/VOICE_STATE_UPDATE.d.ts +0 -4
- package/dist/types/handlers/voice/VOICE_STATE_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/voice/index.d.ts.map +0 -1
- package/dist/types/handlers/webhooks/WEBHOOKS_UPDATE.d.ts +0 -4
- package/dist/types/handlers/webhooks/WEBHOOKS_UPDATE.d.ts.map +0 -1
- package/dist/types/handlers/webhooks/index.d.ts.map +0 -1
- package/dist/types/handlers.d.ts +0 -5
- package/dist/types/handlers.d.ts.map +0 -1
- package/dist/types/helpers.d.ts +0 -244
- package/dist/types/helpers.d.ts.map +0 -1
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/transformers/activity.d.ts +0 -5
- package/dist/types/transformers/activity.d.ts.map +0 -1
- package/dist/types/transformers/application.d.ts +0 -6
- package/dist/types/transformers/application.d.ts.map +0 -1
- package/dist/types/transformers/applicationCommand.d.ts +0 -4
- package/dist/types/transformers/applicationCommand.d.ts.map +0 -1
- package/dist/types/transformers/applicationCommandOption.d.ts +0 -4
- package/dist/types/transformers/applicationCommandOption.d.ts.map +0 -1
- package/dist/types/transformers/applicationCommandOptionChoice.d.ts +0 -4
- package/dist/types/transformers/applicationCommandOptionChoice.d.ts.map +0 -1
- package/dist/types/transformers/applicationCommandPermission.d.ts +0 -4
- package/dist/types/transformers/applicationCommandPermission.d.ts.map +0 -1
- package/dist/types/transformers/attachment.d.ts +0 -4
- package/dist/types/transformers/attachment.d.ts.map +0 -1
- package/dist/types/transformers/auditLogEntry.d.ts +0 -4
- package/dist/types/transformers/auditLogEntry.d.ts.map +0 -1
- package/dist/types/transformers/automodActionExecution.d.ts +0 -4
- package/dist/types/transformers/automodActionExecution.d.ts.map +0 -1
- package/dist/types/transformers/automodRule.d.ts +0 -4
- package/dist/types/transformers/automodRule.d.ts.map +0 -1
- package/dist/types/transformers/avatarDecorationData.d.ts +0 -3
- package/dist/types/transformers/avatarDecorationData.d.ts.map +0 -1
- package/dist/types/transformers/channel.d.ts +0 -11
- package/dist/types/transformers/channel.d.ts.map +0 -1
- package/dist/types/transformers/component.d.ts +0 -6
- package/dist/types/transformers/component.d.ts.map +0 -1
- package/dist/types/transformers/embed.d.ts +0 -4
- package/dist/types/transformers/embed.d.ts.map +0 -1
- package/dist/types/transformers/emoji.d.ts +0 -6
- package/dist/types/transformers/emoji.d.ts.map +0 -1
- package/dist/types/transformers/entitlement.d.ts +0 -4
- package/dist/types/transformers/entitlement.d.ts.map +0 -1
- package/dist/types/transformers/gatewayBot.d.ts +0 -4
- package/dist/types/transformers/gatewayBot.d.ts.map +0 -1
- package/dist/types/transformers/guild.d.ts +0 -8
- package/dist/types/transformers/guild.d.ts.map +0 -1
- package/dist/types/transformers/incidentsData.d.ts +0 -4
- package/dist/types/transformers/incidentsData.d.ts.map +0 -1
- package/dist/types/transformers/index.d.ts.map +0 -1
- package/dist/types/transformers/integration.d.ts +0 -4
- package/dist/types/transformers/integration.d.ts.map +0 -1
- package/dist/types/transformers/interaction.d.ts +0 -23
- package/dist/types/transformers/interaction.d.ts.map +0 -1
- package/dist/types/transformers/invite.d.ts +0 -7
- package/dist/types/transformers/invite.d.ts.map +0 -1
- package/dist/types/transformers/lobby.d.ts +0 -5
- package/dist/types/transformers/lobby.d.ts.map +0 -1
- package/dist/types/transformers/member.d.ts +0 -6
- package/dist/types/transformers/member.d.ts.map +0 -1
- package/dist/types/transformers/message.d.ts +0 -15
- package/dist/types/transformers/message.d.ts.map +0 -1
- package/dist/types/transformers/onboarding.d.ts +0 -6
- package/dist/types/transformers/onboarding.d.ts.map +0 -1
- package/dist/types/transformers/poll.d.ts +0 -5
- package/dist/types/transformers/poll.d.ts.map +0 -1
- package/dist/types/transformers/presence.d.ts +0 -4
- package/dist/types/transformers/presence.d.ts.map +0 -1
- package/dist/types/transformers/reverse/activity.d.ts +0 -3
- package/dist/types/transformers/reverse/activity.d.ts.map +0 -1
- package/dist/types/transformers/reverse/allowedMentions.d.ts +0 -3
- package/dist/types/transformers/reverse/allowedMentions.d.ts.map +0 -1
- package/dist/types/transformers/reverse/application.d.ts +0 -3
- package/dist/types/transformers/reverse/application.d.ts.map +0 -1
- package/dist/types/transformers/reverse/applicationCommand.d.ts +0 -3
- package/dist/types/transformers/reverse/applicationCommand.d.ts.map +0 -1
- package/dist/types/transformers/reverse/applicationCommandOption.d.ts +0 -3
- package/dist/types/transformers/reverse/applicationCommandOption.d.ts.map +0 -1
- package/dist/types/transformers/reverse/applicationCommandOptionChoice.d.ts +0 -3
- package/dist/types/transformers/reverse/applicationCommandOptionChoice.d.ts.map +0 -1
- package/dist/types/transformers/reverse/applicationCommandPermission.d.ts +0 -3
- package/dist/types/transformers/reverse/applicationCommandPermission.d.ts.map +0 -1
- package/dist/types/transformers/reverse/attachment.d.ts +0 -3
- package/dist/types/transformers/reverse/attachment.d.ts.map +0 -1
- package/dist/types/transformers/reverse/auditLogEntry.d.ts +0 -4
- package/dist/types/transformers/reverse/auditLogEntry.d.ts.map +0 -1
- package/dist/types/transformers/reverse/component.d.ts +0 -6
- package/dist/types/transformers/reverse/component.d.ts.map +0 -1
- package/dist/types/transformers/reverse/embed.d.ts +0 -4
- package/dist/types/transformers/reverse/embed.d.ts.map +0 -1
- package/dist/types/transformers/reverse/emoji.d.ts +0 -4
- package/dist/types/transformers/reverse/emoji.d.ts.map +0 -1
- package/dist/types/transformers/reverse/gatewayBot.d.ts.map +0 -1
- package/dist/types/transformers/reverse/index.d.ts.map +0 -1
- package/dist/types/transformers/reverse/member.d.ts.map +0 -1
- package/dist/types/transformers/reverse/presence.d.ts +0 -10
- package/dist/types/transformers/reverse/presence.d.ts.map +0 -1
- package/dist/types/transformers/reverse/team.d.ts +0 -4
- package/dist/types/transformers/reverse/team.d.ts.map +0 -1
- package/dist/types/transformers/reverse/widgetSettings.d.ts +0 -4
- package/dist/types/transformers/reverse/widgetSettings.d.ts.map +0 -1
- package/dist/types/transformers/role.d.ts +0 -9
- package/dist/types/transformers/role.d.ts.map +0 -1
- package/dist/types/transformers/scheduledEvent.d.ts +0 -5
- package/dist/types/transformers/scheduledEvent.d.ts.map +0 -1
- package/dist/types/transformers/sku.d.ts +0 -4
- package/dist/types/transformers/sku.d.ts.map +0 -1
- package/dist/types/transformers/soundboardSound.d.ts +0 -4
- package/dist/types/transformers/soundboardSound.d.ts.map +0 -1
- package/dist/types/transformers/stageInstance.d.ts +0 -4
- package/dist/types/transformers/stageInstance.d.ts.map +0 -1
- package/dist/types/transformers/stageInviteInstance.d.ts +0 -6
- package/dist/types/transformers/stageInviteInstance.d.ts.map +0 -1
- package/dist/types/transformers/sticker.d.ts +0 -5
- package/dist/types/transformers/sticker.d.ts.map +0 -1
- package/dist/types/transformers/subscription.d.ts +0 -4
- package/dist/types/transformers/subscription.d.ts.map +0 -1
- package/dist/types/transformers/team.d.ts +0 -4
- package/dist/types/transformers/team.d.ts.map +0 -1
- package/dist/types/transformers/template.d.ts +0 -4
- package/dist/types/transformers/template.d.ts.map +0 -1
- package/dist/types/transformers/threadMember.d.ts +0 -14
- package/dist/types/transformers/threadMember.d.ts.map +0 -1
- package/dist/types/transformers/toggles/Permissions.d.ts.map +0 -1
- package/dist/types/transformers/toggles/ToggleBitfield.d.ts.map +0 -1
- package/dist/types/transformers/toggles/channel.d.ts +0 -36
- package/dist/types/transformers/toggles/channel.d.ts.map +0 -1
- package/dist/types/transformers/toggles/emoji.d.ts +0 -29
- package/dist/types/transformers/toggles/emoji.d.ts.map +0 -1
- package/dist/types/transformers/toggles/guild.d.ts +0 -165
- package/dist/types/transformers/toggles/guild.d.ts.map +0 -1
- package/dist/types/transformers/toggles/index.d.ts.map +0 -1
- package/dist/types/transformers/toggles/member.d.ts +0 -69
- package/dist/types/transformers/toggles/member.d.ts.map +0 -1
- package/dist/types/transformers/toggles/role.d.ts +0 -37
- package/dist/types/transformers/toggles/role.d.ts.map +0 -1
- package/dist/types/transformers/toggles/user.d.ts +0 -29
- package/dist/types/transformers/toggles/user.d.ts.map +0 -1
- package/dist/types/transformers/toggles/voice.d.ts +0 -41
- package/dist/types/transformers/toggles/voice.d.ts.map +0 -1
- package/dist/types/transformers/types.d.ts +0 -1758
- package/dist/types/transformers/types.d.ts.map +0 -1
- package/dist/types/transformers/user.d.ts +0 -8
- package/dist/types/transformers/user.d.ts.map +0 -1
- package/dist/types/transformers/voiceRegion.d.ts +0 -4
- package/dist/types/transformers/voiceRegion.d.ts.map +0 -1
- package/dist/types/transformers/voiceState.d.ts +0 -7
- package/dist/types/transformers/voiceState.d.ts.map +0 -1
- package/dist/types/transformers/webhook.d.ts +0 -4
- package/dist/types/transformers/webhook.d.ts.map +0 -1
- package/dist/types/transformers/welcomeScreen.d.ts +0 -4
- package/dist/types/transformers/welcomeScreen.d.ts.map +0 -1
- package/dist/types/transformers/widget.d.ts +0 -4
- package/dist/types/transformers/widget.d.ts.map +0 -1
- package/dist/types/transformers/widgetSettings.d.ts +0 -4
- package/dist/types/transformers/widgetSettings.d.ts.map +0 -1
- package/dist/types/transformers.d.ts +0 -218
- package/dist/types/transformers.d.ts.map +0 -1
- /package/dist/{types/constants.d.ts → constants.d.ts} +0 -0
- /package/dist/{types/handlers → handlers}/channels/CHANNEL_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/CHANNEL_PINS_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/CHANNEL_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/STAGE_INSTANCE_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/STAGE_INSTANCE_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/STAGE_INSTANCE_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/channels/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/emojis/GUILD_EMOJIS_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/emojis/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/entitlements/ENTITLEMENT_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/entitlements/ENTITLEMENT_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/entitlements/ENTITLEMENT_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/entitlements/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_BAN_ADD.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_BAN_REMOVE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_INTEGRATIONS_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/GUILD_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/automod/AUTO_MODERATION_RULE_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/automod/AUTO_MODERATION_RULE_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/automod/AUTO_MODERATION_RULE_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/automod/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/integrations/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/interactions/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/invites/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/members/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/messages/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/poll/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/roles/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/soundboard/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/subscriptions/SUBSCRIPTION_CREATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/subscriptions/SUBSCRIPTION_DELETE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/subscriptions/SUBSCRIPTION_UPDATE.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/subscriptions/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/voice/index.d.ts +0 -0
- /package/dist/{types/handlers → handlers}/webhooks/index.d.ts +0 -0
- /package/dist/{types/index.d.ts → index.d.ts} +0 -0
- /package/dist/{types/transformers → transformers}/index.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/gatewayBot.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/index.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/reverse/member.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/toggles/Permissions.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/toggles/ToggleBitfield.d.ts +0 -0
- /package/dist/{types/transformers → transformers}/toggles/index.d.ts +0 -0
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
import { DiscordApplicationIntegrationType, InteractionResponseTypes, InteractionTypes, MessageFlags } from '@discordeno/types';
|
|
2
|
+
import { Collection } from '@discordeno/utils';
|
|
3
|
+
import { callCustomizer } from '../transformers.js';
|
|
4
|
+
// Assume we have all desired properties for this or else typescript will get very confused for the return types of these functions.
|
|
5
|
+
// This is used as a prototype, so the actual type with the user desired properties will be set later.
|
|
6
|
+
export const baseInteraction = {
|
|
7
|
+
// This allows typescript to still check for type errors on functions below
|
|
8
|
+
...undefined,
|
|
9
|
+
async respond (response, options) {
|
|
10
|
+
let type = InteractionResponseTypes.ChannelMessageWithSource;
|
|
11
|
+
// If user provides a string, change it to a response object
|
|
12
|
+
if (typeof response === 'string') response = {
|
|
13
|
+
content: response
|
|
14
|
+
};
|
|
15
|
+
// If user provides a type, use it
|
|
16
|
+
if (options?.type) type = options.type;
|
|
17
|
+
else {
|
|
18
|
+
if (response.title) type = InteractionResponseTypes.Modal;
|
|
19
|
+
if (this.type === InteractionTypes.ApplicationCommandAutocomplete) type = InteractionResponseTypes.ApplicationCommandAutocompleteResult;
|
|
20
|
+
}
|
|
21
|
+
// Modals cannot be chained
|
|
22
|
+
if (this.type === InteractionTypes.ModalSubmit && type === InteractionResponseTypes.Modal) throw new Error('Cannot respond to a modal interaction with another modal.');
|
|
23
|
+
if (type === InteractionResponseTypes.ChannelMessageWithSource && options?.isPrivate) {
|
|
24
|
+
response.flags ??= 0;
|
|
25
|
+
response.flags |= MessageFlags.Ephemeral;
|
|
26
|
+
}
|
|
27
|
+
// Since this has already been given a response, any further responses must be followups.
|
|
28
|
+
if (this.acknowledged) return await this.sendFollowupMessage(response);
|
|
29
|
+
const result = await this.bot.helpers.sendInteractionResponse(this.id, this.token, {
|
|
30
|
+
type,
|
|
31
|
+
data: response
|
|
32
|
+
}, {
|
|
33
|
+
withResponse: options?.withResponse
|
|
34
|
+
});
|
|
35
|
+
this.acknowledged = true;
|
|
36
|
+
return result;
|
|
37
|
+
},
|
|
38
|
+
async sendFollowupMessage (response) {
|
|
39
|
+
// If user provides a string, change it to a response object
|
|
40
|
+
if (typeof response === 'string') response = {
|
|
41
|
+
content: response
|
|
42
|
+
};
|
|
43
|
+
return await this.bot.helpers.sendFollowupMessage(this.token, response);
|
|
44
|
+
},
|
|
45
|
+
async edit (response, messageId, options) {
|
|
46
|
+
if (this.type === InteractionTypes.ApplicationCommandAutocomplete) throw new Error('Cannot edit an autocomplete interaction.');
|
|
47
|
+
// If user provides a string, change it to a response object
|
|
48
|
+
if (typeof response === 'string') response = {
|
|
49
|
+
content: response
|
|
50
|
+
};
|
|
51
|
+
if (messageId) {
|
|
52
|
+
return await this.bot?.helpers.editFollowupMessage(this.token, messageId, response);
|
|
53
|
+
}
|
|
54
|
+
if (!this.acknowledged) {
|
|
55
|
+
if (this.type !== InteractionTypes.MessageComponent && this.type !== InteractionTypes.ModalSubmit) throw new Error("This interaction has not been responded to yet and this isn't a MessageComponent or ModalSubmit interaction.");
|
|
56
|
+
const result = await this.bot.helpers.sendInteractionResponse(this.id, this.token, {
|
|
57
|
+
type: InteractionResponseTypes.UpdateMessage,
|
|
58
|
+
data: response
|
|
59
|
+
}, options);
|
|
60
|
+
this.acknowledged = true;
|
|
61
|
+
return result;
|
|
62
|
+
}
|
|
63
|
+
return await this.bot.helpers.editOriginalInteractionResponse(this.token, response);
|
|
64
|
+
},
|
|
65
|
+
async deferEdit (options) {
|
|
66
|
+
if (this.type === InteractionTypes.ApplicationCommandAutocomplete) throw new Error('Cannot edit an autocomplete interaction.');
|
|
67
|
+
if (this.acknowledged) throw new Error('Cannot defer an already responded interaction.');
|
|
68
|
+
if (this.type !== InteractionTypes.MessageComponent && this.type !== InteractionTypes.ModalSubmit) throw new Error("Cannot defer to then edit an interaction that isn't a MessageComponent or ModalSubmit interaction.");
|
|
69
|
+
const result = await this.bot.helpers.sendInteractionResponse(this.id, this.token, {
|
|
70
|
+
type: InteractionResponseTypes.DeferredUpdateMessage
|
|
71
|
+
}, options);
|
|
72
|
+
this.acknowledged = true;
|
|
73
|
+
return result;
|
|
74
|
+
},
|
|
75
|
+
async defer (isPrivate, options) {
|
|
76
|
+
if (this.acknowledged) throw new Error('Cannot defer an already responded interaction.');
|
|
77
|
+
const result = await this.bot.helpers.sendInteractionResponse(this.id, this.token, {
|
|
78
|
+
type: InteractionResponseTypes.DeferredChannelMessageWithSource,
|
|
79
|
+
data: {
|
|
80
|
+
flags: isPrivate ? MessageFlags.Ephemeral : undefined
|
|
81
|
+
}
|
|
82
|
+
}, options);
|
|
83
|
+
this.acknowledged = true;
|
|
84
|
+
return result;
|
|
85
|
+
},
|
|
86
|
+
async delete (messageId) {
|
|
87
|
+
if (this.type === InteractionTypes.ApplicationCommandAutocomplete) throw new Error('Cannot delete an autocomplete interaction');
|
|
88
|
+
if (messageId) return await this.bot?.helpers.deleteFollowupMessage(this.token, messageId);
|
|
89
|
+
else return await this.bot?.helpers.deleteOriginalInteractionResponse(this.token);
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
export function transformInteraction(bot, payload, extra) {
|
|
93
|
+
const props = bot.transformers.desiredProperties.interaction;
|
|
94
|
+
const interaction = Object.create(baseInteraction);
|
|
95
|
+
const guildId = payload.guild_id ? bot.transformers.snowflake(payload.guild_id) : undefined;
|
|
96
|
+
interaction.bot = bot;
|
|
97
|
+
interaction.acknowledged = false;
|
|
98
|
+
if (props.id && payload.id) interaction.id = bot.transformers.snowflake(payload.id);
|
|
99
|
+
if (props.applicationId && payload.application_id) interaction.applicationId = bot.transformers.snowflake(payload.application_id);
|
|
100
|
+
if (props.type && payload.type) interaction.type = payload.type;
|
|
101
|
+
if (props.token && payload.token) interaction.token = payload.token;
|
|
102
|
+
if (props.version && payload.version) interaction.version = payload.version;
|
|
103
|
+
if (props.locale && payload.locale) interaction.locale = payload.locale;
|
|
104
|
+
if (props.guildLocale && payload.guild_locale) interaction.guildLocale = payload.guild_locale;
|
|
105
|
+
if (props.guild && payload.guild) interaction.guild = bot.transformers.guild(bot, payload.guild, {
|
|
106
|
+
shardId: extra?.shardId,
|
|
107
|
+
partial: true
|
|
108
|
+
});
|
|
109
|
+
if (props.guildId && guildId) interaction.guildId = guildId;
|
|
110
|
+
if (props.user) {
|
|
111
|
+
if (payload.member?.user) interaction.user = bot.transformers.user(bot, payload.member?.user);
|
|
112
|
+
else if (payload.user) interaction.user = bot.transformers.user(bot, payload.user);
|
|
113
|
+
}
|
|
114
|
+
if (props.appPermissions && payload.app_permissions) interaction.appPermissions = bot.transformers.snowflake(payload.app_permissions);
|
|
115
|
+
if (props.message && payload.message) interaction.message = bot.transformers.message(bot, payload.message, {
|
|
116
|
+
shardId: extra?.shardId
|
|
117
|
+
});
|
|
118
|
+
if (props.channel && payload.channel) interaction.channel = bot.transformers.channel(bot, payload.channel, {
|
|
119
|
+
guildId,
|
|
120
|
+
partial: true
|
|
121
|
+
});
|
|
122
|
+
if (props.channelId && payload.channel_id) interaction.channelId = bot.transformers.snowflake(payload.channel_id);
|
|
123
|
+
if (props.member && guildId && payload.member) interaction.member = bot.transformers.member(bot, payload.member, {
|
|
124
|
+
guildId,
|
|
125
|
+
userId: payload.member?.user.id ?? payload.user?.id
|
|
126
|
+
});
|
|
127
|
+
if (props.entitlements && payload.entitlements) interaction.entitlements = payload.entitlements.map((e)=>bot.transformers.entitlement(bot, e));
|
|
128
|
+
if (props.authorizingIntegrationOwners && payload.authorizing_integration_owners) {
|
|
129
|
+
interaction.authorizingIntegrationOwners = {};
|
|
130
|
+
if (payload.authorizing_integration_owners['0']) interaction.authorizingIntegrationOwners[DiscordApplicationIntegrationType.GuildInstall] = bot.transformers.snowflake(payload.authorizing_integration_owners['0']);
|
|
131
|
+
if (payload.authorizing_integration_owners['1']) interaction.authorizingIntegrationOwners[DiscordApplicationIntegrationType.UserInstall] = bot.transformers.snowflake(payload.authorizing_integration_owners['1']);
|
|
132
|
+
}
|
|
133
|
+
if (props.context && payload.context) interaction.context = payload.context;
|
|
134
|
+
if (props.attachmentSizeLimit && payload.attachment_size_limit) interaction.attachmentSizeLimit = payload.attachment_size_limit;
|
|
135
|
+
if (props.data && payload.data) {
|
|
136
|
+
interaction.data = {
|
|
137
|
+
type: payload.data.type,
|
|
138
|
+
componentType: payload.data.component_type,
|
|
139
|
+
customId: payload.data.custom_id,
|
|
140
|
+
components: payload.data.components?.map((component)=>bot.transformers.component(bot, component)),
|
|
141
|
+
values: payload.data.values,
|
|
142
|
+
id: payload.data.id ? bot.transformers.snowflake(payload.data.id) : undefined,
|
|
143
|
+
name: payload.data.name,
|
|
144
|
+
resolved: payload.data.resolved ? bot.transformers.interactionDataResolved(bot, payload.data.resolved, {
|
|
145
|
+
shardId: extra?.shardId,
|
|
146
|
+
guildId
|
|
147
|
+
}) : undefined,
|
|
148
|
+
options: payload.data.options?.map((opt)=>bot.transformers.interactionDataOptions(bot, opt)),
|
|
149
|
+
targetId: payload.data.target_id ? bot.transformers.snowflake(payload.data.target_id) : undefined
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
return callCustomizer('interaction', bot, payload, interaction, {
|
|
153
|
+
shardId: extra?.shardId,
|
|
154
|
+
partial: extra?.partial ?? false
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
export function transformInteractionDataOption(bot, option) {
|
|
158
|
+
const opt = {
|
|
159
|
+
name: option.name,
|
|
160
|
+
type: option.type,
|
|
161
|
+
value: option.value,
|
|
162
|
+
options: option.options,
|
|
163
|
+
focused: option.focused
|
|
164
|
+
};
|
|
165
|
+
return bot.transformers.customizers.interactionDataOptions(bot, option, opt);
|
|
166
|
+
}
|
|
167
|
+
export function transformInteractionDataResolved(bot, payload, extra) {
|
|
168
|
+
const transformed = {};
|
|
169
|
+
if (payload.messages) {
|
|
170
|
+
transformed.messages = new Collection(Object.entries(payload.messages).map(([key, value])=>{
|
|
171
|
+
const message = bot.transformers.message(bot, value, {
|
|
172
|
+
shardId: extra?.shardId,
|
|
173
|
+
partial: true
|
|
174
|
+
});
|
|
175
|
+
const id = bot.transformers.snowflake(key);
|
|
176
|
+
return [
|
|
177
|
+
id,
|
|
178
|
+
message
|
|
179
|
+
];
|
|
180
|
+
}));
|
|
181
|
+
}
|
|
182
|
+
if (payload.users) {
|
|
183
|
+
transformed.users = new Collection(Object.entries(payload.users).map(([key, value])=>{
|
|
184
|
+
const user = bot.transformers.user(bot, value);
|
|
185
|
+
const id = bot.transformers.snowflake(key);
|
|
186
|
+
return [
|
|
187
|
+
id,
|
|
188
|
+
user
|
|
189
|
+
];
|
|
190
|
+
}));
|
|
191
|
+
}
|
|
192
|
+
if (extra?.guildId && payload.members) {
|
|
193
|
+
transformed.members = new Collection(Object.entries(payload.members).map(([key, value])=>{
|
|
194
|
+
const member = bot.transformers.member(bot, value, {
|
|
195
|
+
guildId: extra.guildId,
|
|
196
|
+
userId: bot.transformers.snowflake(key),
|
|
197
|
+
partial: true
|
|
198
|
+
});
|
|
199
|
+
const id = bot.transformers.snowflake(key);
|
|
200
|
+
return [
|
|
201
|
+
id,
|
|
202
|
+
member
|
|
203
|
+
];
|
|
204
|
+
}));
|
|
205
|
+
}
|
|
206
|
+
if (extra?.guildId && payload.roles) {
|
|
207
|
+
transformed.roles = new Collection(Object.entries(payload.roles).map(([key, value])=>{
|
|
208
|
+
const role = bot.transformers.role(bot, value, {
|
|
209
|
+
guildId: extra.guildId
|
|
210
|
+
});
|
|
211
|
+
const id = bot.transformers.snowflake(key);
|
|
212
|
+
return [
|
|
213
|
+
id,
|
|
214
|
+
role
|
|
215
|
+
];
|
|
216
|
+
}));
|
|
217
|
+
}
|
|
218
|
+
if (payload.channels) {
|
|
219
|
+
transformed.channels = new Collection(Object.entries(payload.channels).map(([key, value])=>{
|
|
220
|
+
const channel = bot.transformers.channel(bot, value, {
|
|
221
|
+
partial: true
|
|
222
|
+
});
|
|
223
|
+
const id = bot.transformers.snowflake(key);
|
|
224
|
+
return [
|
|
225
|
+
id,
|
|
226
|
+
channel
|
|
227
|
+
];
|
|
228
|
+
}));
|
|
229
|
+
}
|
|
230
|
+
if (payload.attachments) {
|
|
231
|
+
transformed.attachments = new Collection(Object.entries(payload.attachments).map(([key, value])=>{
|
|
232
|
+
const id = bot.transformers.snowflake(key);
|
|
233
|
+
const attachment = bot.transformers.attachment(bot, value);
|
|
234
|
+
return [
|
|
235
|
+
id,
|
|
236
|
+
attachment
|
|
237
|
+
];
|
|
238
|
+
}));
|
|
239
|
+
}
|
|
240
|
+
return callCustomizer('interactionDataResolved', bot, payload, transformed, {
|
|
241
|
+
shardId: extra?.shardId,
|
|
242
|
+
guildId: extra?.guildId ? bot.transformers.snowflake(extra.guildId) : undefined,
|
|
243
|
+
partial: extra?.partial ?? false
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
export function transformInteractionCallbackResponse(bot, payload, extra) {
|
|
247
|
+
const props = bot.transformers.desiredProperties.interactionCallbackResponse;
|
|
248
|
+
const response = {};
|
|
249
|
+
if (props.interaction && payload.interaction) response.interaction = bot.transformers.interactionCallback(bot, payload.interaction);
|
|
250
|
+
if (props.resource && payload.resource) response.resource = bot.transformers.interactionResource(bot, payload.resource, {
|
|
251
|
+
shardId: extra?.shardId
|
|
252
|
+
});
|
|
253
|
+
return callCustomizer('interactionCallbackResponse', bot, payload, response, {
|
|
254
|
+
shardId: extra?.shardId,
|
|
255
|
+
partial: extra?.partial ?? false
|
|
256
|
+
});
|
|
257
|
+
}
|
|
258
|
+
export function transformInteractionCallback(bot, payload, extra) {
|
|
259
|
+
const props = bot.transformers.desiredProperties.interactionCallback;
|
|
260
|
+
const callback = {};
|
|
261
|
+
if (props.id && payload.id) callback.id = bot.transformers.snowflake(payload.id);
|
|
262
|
+
if (props.type && payload.type) callback.type = payload.type;
|
|
263
|
+
if (props.activityInstanceId && payload.activity_instance_id) callback.activityInstanceId = payload.activity_instance_id;
|
|
264
|
+
if (props.responseMessageId && payload.response_message_id) callback.responseMessageId = bot.transformers.snowflake(payload.response_message_id);
|
|
265
|
+
if (props.responseMessageEphemeral && payload.response_message_ephemeral) callback.responseMessageEphemeral = payload.response_message_ephemeral;
|
|
266
|
+
if (props.responseMessageLoading && payload.response_message_loading) callback.responseMessageLoading = payload.response_message_loading;
|
|
267
|
+
return callCustomizer('interactionCallback', bot, payload, callback, {
|
|
268
|
+
partial: extra?.partial ?? false
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
export function transformInteractionResource(bot, payload, extra) {
|
|
272
|
+
const props = bot.transformers.desiredProperties.interactionResource;
|
|
273
|
+
const resource = {};
|
|
274
|
+
if (props.type && payload.type) resource.type = payload.type;
|
|
275
|
+
if (props.activityInstance && payload.activity_instance) resource.activityInstance = payload.activity_instance;
|
|
276
|
+
if (props.message && payload.message) resource.message = bot.transformers.message(bot, payload.message, {
|
|
277
|
+
shardId: extra?.shardId
|
|
278
|
+
});
|
|
279
|
+
return callCustomizer('interactionResource', bot, payload, resource, {
|
|
280
|
+
shardId: extra?.shardId,
|
|
281
|
+
partial: extra?.partial ?? false
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvaW50ZXJhY3Rpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBCaWdTdHJpbmcsXG4gIERpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZSxcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb24sXG4gIHR5cGUgRGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2ssXG4gIHR5cGUgRGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSxcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb25EYXRhT3B0aW9uLFxuICB0eXBlIERpc2NvcmRJbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCxcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb25SZXNvdXJjZSxcbiAgSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLFxuICBJbnRlcmFjdGlvblR5cGVzLFxuICBNZXNzYWdlRmxhZ3MsXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICdAZGlzY29yZGVuby91dGlscyc7XG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4uL2JvdC5qcyc7XG5pbXBvcnQgdHlwZSB7IEludGVyYWN0aW9uUmVzb2x2ZWREYXRhQ2hhbm5lbCB9IGZyb20gJy4uL2NvbW1hbmRPcHRpb25zUGFyc2VyLmpzJztcbmltcG9ydCB0eXBlIHsgQ29tcGxldGVEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvciwgU2V0dXBEZXNpcmVkUHJvcHMsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzIH0gZnJvbSAnLi4vZGVzaXJlZFByb3BlcnRpZXMuanMnO1xuaW1wb3J0IHsgY2FsbEN1c3RvbWl6ZXIgfSBmcm9tICcuLi90cmFuc2Zvcm1lcnMuanMnO1xuaW1wb3J0IHR5cGUge1xuICBJbnRlcmFjdGlvbixcbiAgSW50ZXJhY3Rpb25DYWxsYmFjayxcbiAgSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlLFxuICBJbnRlcmFjdGlvbkRhdGFPcHRpb24sXG4gIEludGVyYWN0aW9uRGF0YVJlc29sdmVkLFxuICBJbnRlcmFjdGlvblJlc291cmNlLFxufSBmcm9tICcuL3R5cGVzLmpzJztcblxuLy8gQXNzdW1lIHdlIGhhdmUgYWxsIGRlc2lyZWQgcHJvcGVydGllcyBmb3IgdGhpcyBvciBlbHNlIHR5cGVzY3JpcHQgd2lsbCBnZXQgdmVyeSBjb25mdXNlZCBmb3IgdGhlIHJldHVybiB0eXBlcyBvZiB0aGVzZSBmdW5jdGlvbnMuXG4vLyBUaGlzIGlzIHVzZWQgYXMgYSBwcm90b3R5cGUsIHNvIHRoZSBhY3R1YWwgdHlwZSB3aXRoIHRoZSB1c2VyIGRlc2lyZWQgcHJvcGVydGllcyB3aWxsIGJlIHNldCBsYXRlci5cbmV4cG9ydCBjb25zdCBiYXNlSW50ZXJhY3Rpb246IFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPHt9LCB0cnVlPiwgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXk+ID0ge1xuICAvLyBUaGlzIGFsbG93cyB0eXBlc2NyaXB0IHRvIHN0aWxsIGNoZWNrIGZvciB0eXBlIGVycm9ycyBvbiBmdW5jdGlvbnMgYmVsb3dcbiAgLi4uKHVuZGVmaW5lZCBhcyB1bmtub3duIGFzIFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPHt9LCB0cnVlPiwgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXk+KSxcblxuICBhc3luYyByZXNwb25kKHJlc3BvbnNlLCBvcHRpb25zKSB7XG4gICAgbGV0IHR5cGUgPSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlO1xuXG4gICAgLy8gSWYgdXNlciBwcm92aWRlcyBhIHN0cmluZywgY2hhbmdlIGl0IHRvIGEgcmVzcG9uc2Ugb2JqZWN0XG4gICAgaWYgKHR5cGVvZiByZXNwb25zZSA9PT0gJ3N0cmluZycpIHJlc3BvbnNlID0geyBjb250ZW50OiByZXNwb25zZSB9O1xuXG4gICAgLy8gSWYgdXNlciBwcm92aWRlcyBhIHR5cGUsIHVzZSBpdFxuICAgIGlmIChvcHRpb25zPy50eXBlKSB0eXBlID0gb3B0aW9ucy50eXBlO1xuICAgIC8vIE90aGVyd2lzZSwgZGV0ZXJtaW5lIGlmIGl0IHNob3VsZCBiZSBhbiBhdXRvY29tcGxldGUgb3IgYSBtb2RhbCByZXNwb25zZVxuICAgIGVsc2Uge1xuICAgICAgaWYgKHJlc3BvbnNlLnRpdGxlKSB0eXBlID0gSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLk1vZGFsO1xuICAgICAgaWYgKHRoaXMudHlwZSA9PT0gSW50ZXJhY3Rpb25UeXBlcy5BcHBsaWNhdGlvbkNvbW1hbmRBdXRvY29tcGxldGUpIHR5cGUgPSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlUmVzdWx0O1xuICAgIH1cblxuICAgIC8vIE1vZGFscyBjYW5ub3QgYmUgY2hhaW5lZFxuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuTW9kYWxTdWJtaXQgJiYgdHlwZSA9PT0gSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLk1vZGFsKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgcmVzcG9uZCB0byBhIG1vZGFsIGludGVyYWN0aW9uIHdpdGggYW5vdGhlciBtb2RhbC4nKTtcblxuICAgIGlmICh0eXBlID09PSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlICYmIG9wdGlvbnM/LmlzUHJpdmF0ZSkge1xuICAgICAgcmVzcG9uc2UuZmxhZ3MgPz89IDA7XG4gICAgICByZXNwb25zZS5mbGFncyB8PSBNZXNzYWdlRmxhZ3MuRXBoZW1lcmFsO1xuICAgIH1cblxuICAgIC8vIFNpbmNlIHRoaXMgaGFzIGFscmVhZHkgYmVlbiBnaXZlbiBhIHJlc3BvbnNlLCBhbnkgZnVydGhlciByZXNwb25zZXMgbXVzdCBiZSBmb2xsb3d1cHMuXG4gICAgaWYgKHRoaXMuYWNrbm93bGVkZ2VkKSByZXR1cm4gYXdhaXQgdGhpcy5zZW5kRm9sbG93dXBNZXNzYWdlKHJlc3BvbnNlKTtcblxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuYm90LmhlbHBlcnMuc2VuZEludGVyYWN0aW9uUmVzcG9uc2UoXG4gICAgICB0aGlzLmlkLFxuICAgICAgdGhpcy50b2tlbixcbiAgICAgIHsgdHlwZSwgZGF0YTogcmVzcG9uc2UgfSxcbiAgICAgIHsgd2l0aFJlc3BvbnNlOiBvcHRpb25zPy53aXRoUmVzcG9uc2UgfSxcbiAgICApO1xuICAgIHRoaXMuYWNrbm93bGVkZ2VkID0gdHJ1ZTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9LFxuICBhc3luYyBzZW5kRm9sbG93dXBNZXNzYWdlKHJlc3BvbnNlKSB7XG4gICAgLy8gSWYgdXNlciBwcm92aWRlcyBhIHN0cmluZywgY2hhbmdlIGl0IHRvIGEgcmVzcG9uc2Ugb2JqZWN0XG4gICAgaWYgKHR5cGVvZiByZXNwb25zZSA9PT0gJ3N0cmluZycpIHJlc3BvbnNlID0geyBjb250ZW50OiByZXNwb25zZSB9O1xuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYm90LmhlbHBlcnMuc2VuZEZvbGxvd3VwTWVzc2FnZSh0aGlzLnRva2VuLCByZXNwb25zZSk7XG4gIH0sXG4gIGFzeW5jIGVkaXQocmVzcG9uc2UsIG1lc3NhZ2VJZCwgb3B0aW9ucykge1xuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBlZGl0IGFuIGF1dG9jb21wbGV0ZSBpbnRlcmFjdGlvbi4nKTtcblxuICAgIC8vIElmIHVzZXIgcHJvdmlkZXMgYSBzdHJpbmcsIGNoYW5nZSBpdCB0byBhIHJlc3BvbnNlIG9iamVjdFxuICAgIGlmICh0eXBlb2YgcmVzcG9uc2UgPT09ICdzdHJpbmcnKSByZXNwb25zZSA9IHsgY29udGVudDogcmVzcG9uc2UgfTtcblxuICAgIGlmIChtZXNzYWdlSWQpIHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLmJvdD8uaGVscGVycy5lZGl0Rm9sbG93dXBNZXNzYWdlKHRoaXMudG9rZW4sIG1lc3NhZ2VJZCwgcmVzcG9uc2UpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5hY2tub3dsZWRnZWQpIHtcbiAgICAgIGlmICh0aGlzLnR5cGUgIT09IEludGVyYWN0aW9uVHlwZXMuTWVzc2FnZUNvbXBvbmVudCAmJiB0aGlzLnR5cGUgIT09IEludGVyYWN0aW9uVHlwZXMuTW9kYWxTdWJtaXQpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIlRoaXMgaW50ZXJhY3Rpb24gaGFzIG5vdCBiZWVuIHJlc3BvbmRlZCB0byB5ZXQgYW5kIHRoaXMgaXNuJ3QgYSBNZXNzYWdlQ29tcG9uZW50IG9yIE1vZGFsU3VibWl0IGludGVyYWN0aW9uLlwiKTtcblxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5ib3QuaGVscGVycy5zZW5kSW50ZXJhY3Rpb25SZXNwb25zZShcbiAgICAgICAgdGhpcy5pZCxcbiAgICAgICAgdGhpcy50b2tlbixcbiAgICAgICAgeyB0eXBlOiBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuVXBkYXRlTWVzc2FnZSwgZGF0YTogcmVzcG9uc2UgfSxcbiAgICAgICAgb3B0aW9ucyxcbiAgICAgICk7XG4gICAgICB0aGlzLmFja25vd2xlZGdlZCA9IHRydWU7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmJvdC5oZWxwZXJzLmVkaXRPcmlnaW5hbEludGVyYWN0aW9uUmVzcG9uc2UodGhpcy50b2tlbiwgcmVzcG9uc2UpO1xuICB9LFxuICBhc3luYyBkZWZlckVkaXQob3B0aW9ucykge1xuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBlZGl0IGFuIGF1dG9jb21wbGV0ZSBpbnRlcmFjdGlvbi4nKTtcbiAgICBpZiAodGhpcy5hY2tub3dsZWRnZWQpIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGRlZmVyIGFuIGFscmVhZHkgcmVzcG9uZGVkIGludGVyYWN0aW9uLicpO1xuXG4gICAgaWYgKHRoaXMudHlwZSAhPT0gSW50ZXJhY3Rpb25UeXBlcy5NZXNzYWdlQ29tcG9uZW50ICYmIHRoaXMudHlwZSAhPT0gSW50ZXJhY3Rpb25UeXBlcy5Nb2RhbFN1Ym1pdClcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbm5vdCBkZWZlciB0byB0aGVuIGVkaXQgYW4gaW50ZXJhY3Rpb24gdGhhdCBpc24ndCBhIE1lc3NhZ2VDb21wb25lbnQgb3IgTW9kYWxTdWJtaXQgaW50ZXJhY3Rpb24uXCIpO1xuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5ib3QuaGVscGVycy5zZW5kSW50ZXJhY3Rpb25SZXNwb25zZShcbiAgICAgIHRoaXMuaWQsXG4gICAgICB0aGlzLnRva2VuLFxuICAgICAgeyB0eXBlOiBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuRGVmZXJyZWRVcGRhdGVNZXNzYWdlIH0sXG4gICAgICBvcHRpb25zLFxuICAgICk7XG4gICAgdGhpcy5hY2tub3dsZWRnZWQgPSB0cnVlO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH0sXG4gIGFzeW5jIGRlZmVyKGlzUHJpdmF0ZSwgb3B0aW9ucykge1xuICAgIGlmICh0aGlzLmFja25vd2xlZGdlZCkgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZGVmZXIgYW4gYWxyZWFkeSByZXNwb25kZWQgaW50ZXJhY3Rpb24uJyk7XG5cbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmJvdC5oZWxwZXJzLnNlbmRJbnRlcmFjdGlvblJlc3BvbnNlKFxuICAgICAgdGhpcy5pZCxcbiAgICAgIHRoaXMudG9rZW4sXG4gICAgICB7XG4gICAgICAgIHR5cGU6IEludGVyYWN0aW9uUmVzcG9uc2VUeXBlcy5EZWZlcnJlZENoYW5uZWxNZXNzYWdlV2l0aFNvdXJjZSxcbiAgICAgICAgZGF0YToge1xuICAgICAgICAgIGZsYWdzOiBpc1ByaXZhdGUgPyBNZXNzYWdlRmxhZ3MuRXBoZW1lcmFsIDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIG9wdGlvbnMsXG4gICAgKTtcbiAgICB0aGlzLmFja25vd2xlZGdlZCA9IHRydWU7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfSxcbiAgYXN5bmMgZGVsZXRlKG1lc3NhZ2VJZCkge1xuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBkZWxldGUgYW4gYXV0b2NvbXBsZXRlIGludGVyYWN0aW9uJyk7XG5cbiAgICBpZiAobWVzc2FnZUlkKSByZXR1cm4gYXdhaXQgdGhpcy5ib3Q/LmhlbHBlcnMuZGVsZXRlRm9sbG93dXBNZXNzYWdlKHRoaXMudG9rZW4sIG1lc3NhZ2VJZCk7XG4gICAgZWxzZSByZXR1cm4gYXdhaXQgdGhpcy5ib3Q/LmhlbHBlcnMuZGVsZXRlT3JpZ2luYWxJbnRlcmFjdGlvblJlc3BvbnNlKHRoaXMudG9rZW4pO1xuICB9LFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUludGVyYWN0aW9uKGJvdDogQm90LCBwYXlsb2FkOiBQYXJ0aWFsPERpc2NvcmRJbnRlcmFjdGlvbj4sIGV4dHJhPzogeyBzaGFyZElkPzogbnVtYmVyOyBwYXJ0aWFsPzogYm9vbGVhbiB9KSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5pbnRlcmFjdGlvbjtcbiAgY29uc3QgaW50ZXJhY3Rpb246IFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj4gPSBPYmplY3QuY3JlYXRlKGJhc2VJbnRlcmFjdGlvbik7XG5cbiAgY29uc3QgZ3VpbGRJZCA9IHBheWxvYWQuZ3VpbGRfaWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmd1aWxkX2lkKSA6IHVuZGVmaW5lZDtcbiAgaW50ZXJhY3Rpb24uYm90ID0gYm90O1xuICBpbnRlcmFjdGlvbi5hY2tub3dsZWRnZWQgPSBmYWxzZTtcblxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgaW50ZXJhY3Rpb24uaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmlkKTtcbiAgaWYgKHByb3BzLmFwcGxpY2F0aW9uSWQgJiYgcGF5bG9hZC5hcHBsaWNhdGlvbl9pZCkgaW50ZXJhY3Rpb24uYXBwbGljYXRpb25JZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuYXBwbGljYXRpb25faWQpO1xuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGludGVyYWN0aW9uLnR5cGUgPSBwYXlsb2FkLnR5cGU7XG4gIGlmIChwcm9wcy50b2tlbiAmJiBwYXlsb2FkLnRva2VuKSBpbnRlcmFjdGlvbi50b2tlbiA9IHBheWxvYWQudG9rZW47XG4gIGlmIChwcm9wcy52ZXJzaW9uICYmIHBheWxvYWQudmVyc2lvbikgaW50ZXJhY3Rpb24udmVyc2lvbiA9IHBheWxvYWQudmVyc2lvbjtcbiAgaWYgKHByb3BzLmxvY2FsZSAmJiBwYXlsb2FkLmxvY2FsZSkgaW50ZXJhY3Rpb24ubG9jYWxlID0gcGF5bG9hZC5sb2NhbGU7XG4gIGlmIChwcm9wcy5ndWlsZExvY2FsZSAmJiBwYXlsb2FkLmd1aWxkX2xvY2FsZSkgaW50ZXJhY3Rpb24uZ3VpbGRMb2NhbGUgPSBwYXlsb2FkLmd1aWxkX2xvY2FsZTtcbiAgaWYgKHByb3BzLmd1aWxkICYmIHBheWxvYWQuZ3VpbGQpIGludGVyYWN0aW9uLmd1aWxkID0gYm90LnRyYW5zZm9ybWVycy5ndWlsZChib3QsIHBheWxvYWQuZ3VpbGQsIHsgc2hhcmRJZDogZXh0cmE/LnNoYXJkSWQsIHBhcnRpYWw6IHRydWUgfSk7XG4gIGlmIChwcm9wcy5ndWlsZElkICYmIGd1aWxkSWQpIGludGVyYWN0aW9uLmd1aWxkSWQgPSBndWlsZElkO1xuICBpZiAocHJvcHMudXNlcikge1xuICAgIGlmIChwYXlsb2FkLm1lbWJlcj8udXNlcikgaW50ZXJhY3Rpb24udXNlciA9IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHBheWxvYWQubWVtYmVyPy51c2VyKTtcbiAgICBlbHNlIGlmIChwYXlsb2FkLnVzZXIpIGludGVyYWN0aW9uLnVzZXIgPSBib3QudHJhbnNmb3JtZXJzLnVzZXIoYm90LCBwYXlsb2FkLnVzZXIpO1xuICB9XG4gIGlmIChwcm9wcy5hcHBQZXJtaXNzaW9ucyAmJiBwYXlsb2FkLmFwcF9wZXJtaXNzaW9ucykgaW50ZXJhY3Rpb24uYXBwUGVybWlzc2lvbnMgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmFwcF9wZXJtaXNzaW9ucyk7XG4gIGlmIChwcm9wcy5tZXNzYWdlICYmIHBheWxvYWQubWVzc2FnZSkgaW50ZXJhY3Rpb24ubWVzc2FnZSA9IGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZShib3QsIHBheWxvYWQubWVzc2FnZSwgeyBzaGFyZElkOiBleHRyYT8uc2hhcmRJZCB9KTtcbiAgaWYgKHByb3BzLmNoYW5uZWwgJiYgcGF5bG9hZC5jaGFubmVsKSBpbnRlcmFjdGlvbi5jaGFubmVsID0gYm90LnRyYW5zZm9ybWVycy5jaGFubmVsKGJvdCwgcGF5bG9hZC5jaGFubmVsLCB7IGd1aWxkSWQsIHBhcnRpYWw6IHRydWUgfSk7XG4gIGlmIChwcm9wcy5jaGFubmVsSWQgJiYgcGF5bG9hZC5jaGFubmVsX2lkKSBpbnRlcmFjdGlvbi5jaGFubmVsSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmNoYW5uZWxfaWQpO1xuICBpZiAocHJvcHMubWVtYmVyICYmIGd1aWxkSWQgJiYgcGF5bG9hZC5tZW1iZXIpXG4gICAgaW50ZXJhY3Rpb24ubWVtYmVyID0gYm90LnRyYW5zZm9ybWVycy5tZW1iZXIoYm90LCBwYXlsb2FkLm1lbWJlciwge1xuICAgICAgZ3VpbGRJZCxcbiAgICAgIHVzZXJJZDogcGF5bG9hZC5tZW1iZXI/LnVzZXIuaWQgPz8gcGF5bG9hZC51c2VyPy5pZCxcbiAgICB9KTtcbiAgaWYgKHByb3BzLmVudGl0bGVtZW50cyAmJiBwYXlsb2FkLmVudGl0bGVtZW50cykgaW50ZXJhY3Rpb24uZW50aXRsZW1lbnRzID0gcGF5bG9hZC5lbnRpdGxlbWVudHMubWFwKChlKSA9PiBib3QudHJhbnNmb3JtZXJzLmVudGl0bGVtZW50KGJvdCwgZSkpO1xuICBpZiAocHJvcHMuYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVycyAmJiBwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVycykge1xuICAgIGludGVyYWN0aW9uLmF1dGhvcml6aW5nSW50ZWdyYXRpb25Pd25lcnMgPSB7fTtcblxuICAgIGlmIChwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVyc1snMCddKVxuICAgICAgaW50ZXJhY3Rpb24uYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVyc1tEaXNjb3JkQXBwbGljYXRpb25JbnRlZ3JhdGlvblR5cGUuR3VpbGRJbnN0YWxsXSA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKFxuICAgICAgICBwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVyc1snMCddLFxuICAgICAgKTtcbiAgICBpZiAocGF5bG9hZC5hdXRob3JpemluZ19pbnRlZ3JhdGlvbl9vd25lcnNbJzEnXSlcbiAgICAgIGludGVyYWN0aW9uLmF1dGhvcml6aW5nSW50ZWdyYXRpb25Pd25lcnNbRGlzY29yZEFwcGxpY2F0aW9uSW50ZWdyYXRpb25UeXBlLlVzZXJJbnN0YWxsXSA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKFxuICAgICAgICBwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVyc1snMSddLFxuICAgICAgKTtcbiAgfVxuICBpZiAocHJvcHMuY29udGV4dCAmJiBwYXlsb2FkLmNvbnRleHQpIGludGVyYWN0aW9uLmNvbnRleHQgPSBwYXlsb2FkLmNvbnRleHQ7XG4gIGlmIChwcm9wcy5hdHRhY2htZW50U2l6ZUxpbWl0ICYmIHBheWxvYWQuYXR0YWNobWVudF9zaXplX2xpbWl0KSBpbnRlcmFjdGlvbi5hdHRhY2htZW50U2l6ZUxpbWl0ID0gcGF5bG9hZC5hdHRhY2htZW50X3NpemVfbGltaXQ7XG4gIGlmIChwcm9wcy5kYXRhICYmIHBheWxvYWQuZGF0YSkge1xuICAgIGludGVyYWN0aW9uLmRhdGEgPSB7XG4gICAgICB0eXBlOiBwYXlsb2FkLmRhdGEudHlwZSxcbiAgICAgIGNvbXBvbmVudFR5cGU6IHBheWxvYWQuZGF0YS5jb21wb25lbnRfdHlwZSxcbiAgICAgIGN1c3RvbUlkOiBwYXlsb2FkLmRhdGEuY3VzdG9tX2lkLFxuICAgICAgY29tcG9uZW50czogcGF5bG9hZC5kYXRhLmNvbXBvbmVudHM/Lm1hcCgoY29tcG9uZW50KSA9PiBib3QudHJhbnNmb3JtZXJzLmNvbXBvbmVudChib3QsIGNvbXBvbmVudCkpLFxuICAgICAgdmFsdWVzOiBwYXlsb2FkLmRhdGEudmFsdWVzLFxuICAgICAgaWQ6IHBheWxvYWQuZGF0YS5pZCA/IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuZGF0YS5pZCkgOiB1bmRlZmluZWQsXG4gICAgICBuYW1lOiBwYXlsb2FkLmRhdGEubmFtZSxcbiAgICAgIHJlc29sdmVkOiBwYXlsb2FkLmRhdGEucmVzb2x2ZWRcbiAgICAgICAgPyBib3QudHJhbnNmb3JtZXJzLmludGVyYWN0aW9uRGF0YVJlc29sdmVkKGJvdCwgcGF5bG9hZC5kYXRhLnJlc29sdmVkLCB7IHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkLCBndWlsZElkIH0pXG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgb3B0aW9uczogcGF5bG9hZC5kYXRhLm9wdGlvbnM/Lm1hcCgob3B0KSA9PiBib3QudHJhbnNmb3JtZXJzLmludGVyYWN0aW9uRGF0YU9wdGlvbnMoYm90LCBvcHQpKSxcbiAgICAgIHRhcmdldElkOiBwYXlsb2FkLmRhdGEudGFyZ2V0X2lkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5kYXRhLnRhcmdldF9pZCkgOiB1bmRlZmluZWQsXG4gICAgfTtcbiAgfVxuXG4gIHJldHVybiBjYWxsQ3VzdG9taXplcignaW50ZXJhY3Rpb24nLCBib3QsIHBheWxvYWQsIGludGVyYWN0aW9uLCB7XG4gICAgc2hhcmRJZDogZXh0cmE/LnNoYXJkSWQsXG4gICAgcGFydGlhbDogZXh0cmE/LnBhcnRpYWwgPz8gZmFsc2UsXG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW50ZXJhY3Rpb25EYXRhT3B0aW9uKGJvdDogQm90LCBvcHRpb246IERpc2NvcmRJbnRlcmFjdGlvbkRhdGFPcHRpb24pIHtcbiAgY29uc3Qgb3B0ID0ge1xuICAgIG5hbWU6IG9wdGlvbi5uYW1lLFxuICAgIHR5cGU6IG9wdGlvbi50eXBlLFxuICAgIHZhbHVlOiBvcHRpb24udmFsdWUsXG4gICAgb3B0aW9uczogb3B0aW9uLm9wdGlvbnMsXG4gICAgZm9jdXNlZDogb3B0aW9uLmZvY3VzZWQsXG4gIH0gYXMgSW50ZXJhY3Rpb25EYXRhT3B0aW9uO1xuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLmludGVyYWN0aW9uRGF0YU9wdGlvbnMoYm90LCBvcHRpb24sIG9wdCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1JbnRlcmFjdGlvbkRhdGFSZXNvbHZlZChcbiAgYm90OiBCb3QsXG4gIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZEludGVyYWN0aW9uRGF0YVJlc29sdmVkPixcbiAgZXh0cmE/OiB7IHNoYXJkSWQ/OiBudW1iZXI7IGd1aWxkSWQ/OiBCaWdTdHJpbmc7IHBhcnRpYWw/OiBib29sZWFuIH0sXG4pIHtcbiAgY29uc3QgdHJhbnNmb3JtZWQ6IFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uRGF0YVJlc29sdmVkLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXk+ID0ge307XG5cbiAgaWYgKHBheWxvYWQubWVzc2FnZXMpIHtcbiAgICB0cmFuc2Zvcm1lZC5tZXNzYWdlcyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgT2JqZWN0LmVudHJpZXMocGF5bG9hZC5tZXNzYWdlcykubWFwKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZShib3QsIHZhbHVlLCB7IHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkLCBwYXJ0aWFsOiB0cnVlIH0pO1xuICAgICAgICBjb25zdCBpZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGtleSk7XG5cbiAgICAgICAgcmV0dXJuIFtpZCwgbWVzc2FnZV07XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgaWYgKHBheWxvYWQudXNlcnMpIHtcbiAgICB0cmFuc2Zvcm1lZC51c2VycyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgT2JqZWN0LmVudHJpZXMocGF5bG9hZC51c2VycykubWFwKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgY29uc3QgdXNlciA9IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHZhbHVlKTtcbiAgICAgICAgY29uc3QgaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShrZXkpO1xuXG4gICAgICAgIHJldHVybiBbaWQsIHVzZXJdO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIGlmIChleHRyYT8uZ3VpbGRJZCAmJiBwYXlsb2FkLm1lbWJlcnMpIHtcbiAgICB0cmFuc2Zvcm1lZC5tZW1iZXJzID0gbmV3IENvbGxlY3Rpb24oXG4gICAgICBPYmplY3QuZW50cmllcyhwYXlsb2FkLm1lbWJlcnMpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGNvbnN0IG1lbWJlciA9IGJvdC50cmFuc2Zvcm1lcnMubWVtYmVyKGJvdCwgdmFsdWUsIHtcbiAgICAgICAgICBndWlsZElkOiBleHRyYS5ndWlsZElkLFxuICAgICAgICAgIHVzZXJJZDogYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uoa2V5KSxcbiAgICAgICAgICBwYXJ0aWFsOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShrZXkpO1xuXG4gICAgICAgIHJldHVybiBbaWQsIG1lbWJlcl07XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgaWYgKGV4dHJhPy5ndWlsZElkICYmIHBheWxvYWQucm9sZXMpIHtcbiAgICB0cmFuc2Zvcm1lZC5yb2xlcyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgT2JqZWN0LmVudHJpZXMocGF5bG9hZC5yb2xlcykubWFwKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgY29uc3Qgcm9sZSA9IGJvdC50cmFuc2Zvcm1lcnMucm9sZShib3QsIHZhbHVlLCB7IGd1aWxkSWQ6IGV4dHJhLmd1aWxkSWQgfSk7XG4gICAgICAgIGNvbnN0IGlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uoa2V5KTtcblxuICAgICAgICByZXR1cm4gW2lkLCByb2xlXTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBpZiAocGF5bG9hZC5jaGFubmVscykge1xuICAgIHRyYW5zZm9ybWVkLmNoYW5uZWxzID0gbmV3IENvbGxlY3Rpb24oXG4gICAgICBPYmplY3QuZW50cmllcyhwYXlsb2FkLmNoYW5uZWxzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICBjb25zdCBjaGFubmVsID0gYm90LnRyYW5zZm9ybWVycy5jaGFubmVsKGJvdCwgdmFsdWUsIHsgcGFydGlhbDogdHJ1ZSB9KTtcbiAgICAgICAgY29uc3QgaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShrZXkpO1xuXG4gICAgICAgIHJldHVybiBbaWQsIGNoYW5uZWwgYXMgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFDaGFubmVsPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLlJlbW92ZUtleT5dO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIGlmIChwYXlsb2FkLmF0dGFjaG1lbnRzKSB7XG4gICAgdHJhbnNmb3JtZWQuYXR0YWNobWVudHMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIE9iamVjdC5lbnRyaWVzKHBheWxvYWQuYXR0YWNobWVudHMpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGNvbnN0IGlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uoa2V5KTtcbiAgICAgICAgY29uc3QgYXR0YWNobWVudCA9IGJvdC50cmFuc2Zvcm1lcnMuYXR0YWNobWVudChib3QsIHZhbHVlKTtcblxuICAgICAgICByZXR1cm4gW2lkLCBhdHRhY2htZW50XTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICByZXR1cm4gY2FsbEN1c3RvbWl6ZXIoJ2ludGVyYWN0aW9uRGF0YVJlc29sdmVkJywgYm90LCBwYXlsb2FkLCB0cmFuc2Zvcm1lZCwge1xuICAgIHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkLFxuICAgIGd1aWxkSWQ6IGV4dHJhPy5ndWlsZElkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoZXh0cmEuZ3VpbGRJZCkgOiB1bmRlZmluZWQsXG4gICAgcGFydGlhbDogZXh0cmE/LnBhcnRpYWwgPz8gZmFsc2UsXG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlKFxuICBib3Q6IEJvdCxcbiAgcGF5bG9hZDogUGFydGlhbDxEaXNjb3JkSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlPixcbiAgZXh0cmE/OiB7IHNoYXJkSWQ/OiBudW1iZXI7IHBhcnRpYWw/OiBib29sZWFuIH0sXG4pIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZTtcbiAgY29uc3QgcmVzcG9uc2UgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxJbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICBpZiAocHJvcHMuaW50ZXJhY3Rpb24gJiYgcGF5bG9hZC5pbnRlcmFjdGlvbikgcmVzcG9uc2UuaW50ZXJhY3Rpb24gPSBib3QudHJhbnNmb3JtZXJzLmludGVyYWN0aW9uQ2FsbGJhY2soYm90LCBwYXlsb2FkLmludGVyYWN0aW9uKTtcbiAgaWYgKHByb3BzLnJlc291cmNlICYmIHBheWxvYWQucmVzb3VyY2UpXG4gICAgcmVzcG9uc2UucmVzb3VyY2UgPSBib3QudHJhbnNmb3JtZXJzLmludGVyYWN0aW9uUmVzb3VyY2UoYm90LCBwYXlsb2FkLnJlc291cmNlLCB7IHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkIH0pO1xuXG4gIHJldHVybiBjYWxsQ3VzdG9taXplcignaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlJywgYm90LCBwYXlsb2FkLCByZXNwb25zZSwge1xuICAgIHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkLFxuICAgIHBhcnRpYWw6IGV4dHJhPy5wYXJ0aWFsID8/IGZhbHNlLFxuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUludGVyYWN0aW9uQ2FsbGJhY2soYm90OiBCb3QsIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2s+LCBleHRyYT86IHsgcGFydGlhbD86IGJvb2xlYW4gfSkge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuaW50ZXJhY3Rpb25DYWxsYmFjaztcbiAgY29uc3QgY2FsbGJhY2sgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxJbnRlcmFjdGlvbkNhbGxiYWNrLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj47XG5cbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIGNhbGxiYWNrLmlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5pZCk7XG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgY2FsbGJhY2sudHlwZSA9IHBheWxvYWQudHlwZTtcbiAgaWYgKHByb3BzLmFjdGl2aXR5SW5zdGFuY2VJZCAmJiBwYXlsb2FkLmFjdGl2aXR5X2luc3RhbmNlX2lkKSBjYWxsYmFjay5hY3Rpdml0eUluc3RhbmNlSWQgPSBwYXlsb2FkLmFjdGl2aXR5X2luc3RhbmNlX2lkO1xuICBpZiAocHJvcHMucmVzcG9uc2VNZXNzYWdlSWQgJiYgcGF5bG9hZC5yZXNwb25zZV9tZXNzYWdlX2lkKSBjYWxsYmFjay5yZXNwb25zZU1lc3NhZ2VJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQucmVzcG9uc2VfbWVzc2FnZV9pZCk7XG4gIGlmIChwcm9wcy5yZXNwb25zZU1lc3NhZ2VFcGhlbWVyYWwgJiYgcGF5bG9hZC5yZXNwb25zZV9tZXNzYWdlX2VwaGVtZXJhbCkgY2FsbGJhY2sucmVzcG9uc2VNZXNzYWdlRXBoZW1lcmFsID0gcGF5bG9hZC5yZXNwb25zZV9tZXNzYWdlX2VwaGVtZXJhbDtcbiAgaWYgKHByb3BzLnJlc3BvbnNlTWVzc2FnZUxvYWRpbmcgJiYgcGF5bG9hZC5yZXNwb25zZV9tZXNzYWdlX2xvYWRpbmcpIGNhbGxiYWNrLnJlc3BvbnNlTWVzc2FnZUxvYWRpbmcgPSBwYXlsb2FkLnJlc3BvbnNlX21lc3NhZ2VfbG9hZGluZztcblxuICByZXR1cm4gY2FsbEN1c3RvbWl6ZXIoJ2ludGVyYWN0aW9uQ2FsbGJhY2snLCBib3QsIHBheWxvYWQsIGNhbGxiYWNrLCB7XG4gICAgcGFydGlhbDogZXh0cmE/LnBhcnRpYWwgPz8gZmFsc2UsXG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW50ZXJhY3Rpb25SZXNvdXJjZShcbiAgYm90OiBCb3QsXG4gIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZEludGVyYWN0aW9uUmVzb3VyY2U+LFxuICBleHRyYT86IHsgc2hhcmRJZD86IG51bWJlcjsgcGFydGlhbD86IGJvb2xlYW4gfSxcbikge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuaW50ZXJhY3Rpb25SZXNvdXJjZTtcbiAgY29uc3QgcmVzb3VyY2UgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxJbnRlcmFjdGlvblJlc291cmNlLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj47XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSByZXNvdXJjZS50eXBlID0gcGF5bG9hZC50eXBlO1xuICBpZiAocHJvcHMuYWN0aXZpdHlJbnN0YW5jZSAmJiBwYXlsb2FkLmFjdGl2aXR5X2luc3RhbmNlKSByZXNvdXJjZS5hY3Rpdml0eUluc3RhbmNlID0gcGF5bG9hZC5hY3Rpdml0eV9pbnN0YW5jZTtcbiAgaWYgKHByb3BzLm1lc3NhZ2UgJiYgcGF5bG9hZC5tZXNzYWdlKSByZXNvdXJjZS5tZXNzYWdlID0gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlKGJvdCwgcGF5bG9hZC5tZXNzYWdlLCB7IHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkIH0pO1xuXG4gIHJldHVybiBjYWxsQ3VzdG9taXplcignaW50ZXJhY3Rpb25SZXNvdXJjZScsIGJvdCwgcGF5bG9hZCwgcmVzb3VyY2UsIHtcbiAgICBzaGFyZElkOiBleHRyYT8uc2hhcmRJZCxcbiAgICBwYXJ0aWFsOiBleHRyYT8ucGFydGlhbCA/PyBmYWxzZSxcbiAgfSk7XG59XG4iXSwibmFtZXMiOlsiRGlzY29yZEFwcGxpY2F0aW9uSW50ZWdyYXRpb25UeXBlIiwiSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzIiwiSW50ZXJhY3Rpb25UeXBlcyIsIk1lc3NhZ2VGbGFncyIsIkNvbGxlY3Rpb24iLCJjYWxsQ3VzdG9taXplciIsImJhc2VJbnRlcmFjdGlvbiIsInVuZGVmaW5lZCIsInJlc3BvbmQiLCJyZXNwb25zZSIsIm9wdGlvbnMiLCJ0eXBlIiwiQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlIiwiY29udGVudCIsInRpdGxlIiwiTW9kYWwiLCJBcHBsaWNhdGlvbkNvbW1hbmRBdXRvY29tcGxldGUiLCJBcHBsaWNhdGlvbkNvbW1hbmRBdXRvY29tcGxldGVSZXN1bHQiLCJNb2RhbFN1Ym1pdCIsIkVycm9yIiwiaXNQcml2YXRlIiwiZmxhZ3MiLCJFcGhlbWVyYWwiLCJhY2tub3dsZWRnZWQiLCJzZW5kRm9sbG93dXBNZXNzYWdlIiwicmVzdWx0IiwiYm90IiwiaGVscGVycyIsInNlbmRJbnRlcmFjdGlvblJlc3BvbnNlIiwiaWQiLCJ0b2tlbiIsImRhdGEiLCJ3aXRoUmVzcG9uc2UiLCJlZGl0IiwibWVzc2FnZUlkIiwiZWRpdEZvbGxvd3VwTWVzc2FnZSIsIk1lc3NhZ2VDb21wb25lbnQiLCJVcGRhdGVNZXNzYWdlIiwiZWRpdE9yaWdpbmFsSW50ZXJhY3Rpb25SZXNwb25zZSIsImRlZmVyRWRpdCIsIkRlZmVycmVkVXBkYXRlTWVzc2FnZSIsImRlZmVyIiwiRGVmZXJyZWRDaGFubmVsTWVzc2FnZVdpdGhTb3VyY2UiLCJkZWxldGUiLCJkZWxldGVGb2xsb3d1cE1lc3NhZ2UiLCJkZWxldGVPcmlnaW5hbEludGVyYWN0aW9uUmVzcG9uc2UiLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvbiIsInBheWxvYWQiLCJleHRyYSIsInByb3BzIiwidHJhbnNmb3JtZXJzIiwiZGVzaXJlZFByb3BlcnRpZXMiLCJpbnRlcmFjdGlvbiIsIk9iamVjdCIsImNyZWF0ZSIsImd1aWxkSWQiLCJndWlsZF9pZCIsInNub3dmbGFrZSIsImFwcGxpY2F0aW9uSWQiLCJhcHBsaWNhdGlvbl9pZCIsInZlcnNpb24iLCJsb2NhbGUiLCJndWlsZExvY2FsZSIsImd1aWxkX2xvY2FsZSIsImd1aWxkIiwic2hhcmRJZCIsInBhcnRpYWwiLCJ1c2VyIiwibWVtYmVyIiwiYXBwUGVybWlzc2lvbnMiLCJhcHBfcGVybWlzc2lvbnMiLCJtZXNzYWdlIiwiY2hhbm5lbCIsImNoYW5uZWxJZCIsImNoYW5uZWxfaWQiLCJ1c2VySWQiLCJlbnRpdGxlbWVudHMiLCJtYXAiLCJlIiwiZW50aXRsZW1lbnQiLCJhdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzIiwiYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzIiwiR3VpbGRJbnN0YWxsIiwiVXNlckluc3RhbGwiLCJjb250ZXh0IiwiYXR0YWNobWVudFNpemVMaW1pdCIsImF0dGFjaG1lbnRfc2l6ZV9saW1pdCIsImNvbXBvbmVudFR5cGUiLCJjb21wb25lbnRfdHlwZSIsImN1c3RvbUlkIiwiY3VzdG9tX2lkIiwiY29tcG9uZW50cyIsImNvbXBvbmVudCIsInZhbHVlcyIsIm5hbWUiLCJyZXNvbHZlZCIsImludGVyYWN0aW9uRGF0YVJlc29sdmVkIiwib3B0IiwiaW50ZXJhY3Rpb25EYXRhT3B0aW9ucyIsInRhcmdldElkIiwidGFyZ2V0X2lkIiwidHJhbnNmb3JtSW50ZXJhY3Rpb25EYXRhT3B0aW9uIiwib3B0aW9uIiwidmFsdWUiLCJmb2N1c2VkIiwiY3VzdG9taXplcnMiLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCIsInRyYW5zZm9ybWVkIiwibWVzc2FnZXMiLCJlbnRyaWVzIiwia2V5IiwidXNlcnMiLCJtZW1iZXJzIiwicm9sZXMiLCJyb2xlIiwiY2hhbm5lbHMiLCJhdHRhY2htZW50cyIsImF0dGFjaG1lbnQiLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UiLCJpbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UiLCJpbnRlcmFjdGlvbkNhbGxiYWNrIiwicmVzb3VyY2UiLCJpbnRlcmFjdGlvblJlc291cmNlIiwidHJhbnNmb3JtSW50ZXJhY3Rpb25DYWxsYmFjayIsImNhbGxiYWNrIiwiYWN0aXZpdHlJbnN0YW5jZUlkIiwiYWN0aXZpdHlfaW5zdGFuY2VfaWQiLCJyZXNwb25zZU1lc3NhZ2VJZCIsInJlc3BvbnNlX21lc3NhZ2VfaWQiLCJyZXNwb25zZU1lc3NhZ2VFcGhlbWVyYWwiLCJyZXNwb25zZV9tZXNzYWdlX2VwaGVtZXJhbCIsInJlc3BvbnNlTWVzc2FnZUxvYWRpbmciLCJyZXNwb25zZV9tZXNzYWdlX2xvYWRpbmciLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvblJlc291cmNlIiwiYWN0aXZpdHlJbnN0YW5jZSIsImFjdGl2aXR5X2luc3RhbmNlIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUVFQSxpQ0FBaUMsRUFPakNDLHdCQUF3QixFQUN4QkMsZ0JBQWdCLEVBQ2hCQyxZQUFZLFFBQ1Asb0JBQW9CO0FBQzNCLFNBQVNDLFVBQVUsUUFBUSxvQkFBb0I7QUFJL0MsU0FBU0MsY0FBYyxRQUFRLHFCQUFxQjtBQVVwRCxvSUFBb0k7QUFDcEksc0dBQXNHO0FBQ3RHLE9BQU8sTUFBTUMsa0JBQTRIO0lBQ3ZJLDJFQUEyRTtJQUMzRSxHQUFJQyxTQUFTO0lBRWIsTUFBTUMsU0FBUUMsUUFBUSxFQUFFQyxPQUFPO1FBQzdCLElBQUlDLE9BQU9WLHlCQUF5Qlcsd0JBQXdCO1FBRTVELDREQUE0RDtRQUM1RCxJQUFJLE9BQU9ILGFBQWEsVUFBVUEsV0FBVztZQUFFSSxTQUFTSjtRQUFTO1FBRWpFLGtDQUFrQztRQUNsQyxJQUFJ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
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { DiscordInviteMetadata } from '@discordeno/types';
|
|
2
|
+
import type { Bot } from '../bot.js';
|
|
3
|
+
export declare function transformInvite(bot: Bot, payload: Partial<DiscordInviteMetadata>, extra?: {
|
|
4
|
+
shardId?: number;
|
|
5
|
+
partial?: boolean;
|
|
6
|
+
}): any;
|
|
7
|
+
//# sourceMappingURL=invite.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invite.d.ts","sourceRoot":"","sources":["../../src/transformers/invite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAMrC,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,OAkCjI"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { callCustomizer } from '../transformers.js';
|
|
2
|
+
import { ToggleBitfield } from './toggles/ToggleBitfield.js';
|
|
3
|
+
export function transformInvite(bot, payload, extra) {
|
|
4
|
+
const props = bot.transformers.desiredProperties.invite;
|
|
5
|
+
const invite = {};
|
|
6
|
+
if (props.type && payload.type !== undefined) invite.type = payload.type;
|
|
7
|
+
if (props.code && payload.code) invite.code = payload.code;
|
|
8
|
+
if (props.createdAt && payload.created_at) invite.createdAt = Date.parse(payload.created_at);
|
|
9
|
+
if (props.inviter && payload.inviter) invite.inviter = bot.transformers.user(bot, payload.inviter);
|
|
10
|
+
if (props.maxAge && payload.max_age !== undefined) invite.maxAge = payload.max_age;
|
|
11
|
+
if (props.maxUses && payload.max_uses !== undefined) invite.maxUses = payload.max_uses;
|
|
12
|
+
if (props.targetType && payload.target_type) invite.targetType = payload.target_type;
|
|
13
|
+
if (props.targetUser && payload.target_user) invite.targetUser = bot.transformers.user(bot, payload.target_user);
|
|
14
|
+
if (props.targetApplication && payload.target_application) invite.targetApplication = bot.transformers.application(bot, payload.target_application, {
|
|
15
|
+
shardId: extra?.shardId,
|
|
16
|
+
partial: true
|
|
17
|
+
});
|
|
18
|
+
if (props.temporary && payload.temporary) invite.temporary = payload.temporary;
|
|
19
|
+
if (props.uses && payload.uses !== undefined) invite.uses = payload.uses;
|
|
20
|
+
if (props.channelId && payload.channel?.id) invite.channelId = bot.transformers.snowflake(payload.channel.id);
|
|
21
|
+
if (props.guildId && payload.guild?.id) invite.guildId = bot.transformers.snowflake(payload.guild.id);
|
|
22
|
+
if (props.approximateMemberCount && payload.approximate_member_count) invite.approximateMemberCount = payload.approximate_member_count;
|
|
23
|
+
if (props.approximatePresenceCount && payload.approximate_presence_count !== undefined) invite.approximatePresenceCount = payload.approximate_presence_count;
|
|
24
|
+
if (props.guildScheduledEvent && payload.guild_scheduled_event) invite.guildScheduledEvent = bot.transformers.scheduledEvent(bot, payload.guild_scheduled_event);
|
|
25
|
+
if (props.expiresAt && payload.expires_at) invite.expiresAt = Date.parse(payload.expires_at);
|
|
26
|
+
if (props.flags && payload.flags) invite.flags = new ToggleBitfield(payload.flags);
|
|
27
|
+
if (props.roles && payload.roles) {
|
|
28
|
+
// Going from a Partial<T> To Pick<T, K> requires an as, as typescript can't guarantee that the properties exist on the partial
|
|
29
|
+
invite.roles = payload.roles.map((role)=>bot.transformers.role(bot, role, {
|
|
30
|
+
partial: true,
|
|
31
|
+
guildId: payload.guild?.id
|
|
32
|
+
}));
|
|
33
|
+
}
|
|
34
|
+
return callCustomizer('invite', bot, payload, invite, {
|
|
35
|
+
shardId: extra?.shardId,
|
|
36
|
+
partial: extra?.partial ?? false
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvaW52aXRlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRGlzY29yZEludml0ZU1ldGFkYXRhIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnO1xuaW1wb3J0IHR5cGUgeyBCb3QgfSBmcm9tICcuLi9ib3QuanMnO1xuaW1wb3J0IHR5cGUgeyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLCBTZXR1cERlc2lyZWRQcm9wcywgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMgfSBmcm9tICcuLi9kZXNpcmVkUHJvcGVydGllcy5qcyc7XG5pbXBvcnQgeyBjYWxsQ3VzdG9taXplciB9IGZyb20gJy4uL3RyYW5zZm9ybWVycy5qcyc7XG5pbXBvcnQgeyBUb2dnbGVCaXRmaWVsZCB9IGZyb20gJy4vdG9nZ2xlcy9Ub2dnbGVCaXRmaWVsZC5qcyc7XG5pbXBvcnQgdHlwZSB7IEludml0ZSB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW52aXRlKGJvdDogQm90LCBwYXlsb2FkOiBQYXJ0aWFsPERpc2NvcmRJbnZpdGVNZXRhZGF0YT4sIGV4dHJhPzogeyBzaGFyZElkPzogbnVtYmVyOyBwYXJ0aWFsPzogYm9vbGVhbiB9KSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5pbnZpdGU7XG4gIGNvbnN0IGludml0ZSA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPEludml0ZSwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSAhPT0gdW5kZWZpbmVkKSBpbnZpdGUudHlwZSA9IHBheWxvYWQudHlwZTtcbiAgaWYgKHByb3BzLmNvZGUgJiYgcGF5bG9hZC5jb2RlKSBpbnZpdGUuY29kZSA9IHBheWxvYWQuY29kZTtcbiAgaWYgKHByb3BzLmNyZWF0ZWRBdCAmJiBwYXlsb2FkLmNyZWF0ZWRfYXQpIGludml0ZS5jcmVhdGVkQXQgPSBEYXRlLnBhcnNlKHBheWxvYWQuY3JlYXRlZF9hdCk7XG4gIGlmIChwcm9wcy5pbnZpdGVyICYmIHBheWxvYWQuaW52aXRlcikgaW52aXRlLmludml0ZXIgPSBib3QudHJhbnNmb3JtZXJzLnVzZXIoYm90LCBwYXlsb2FkLmludml0ZXIpO1xuICBpZiAocHJvcHMubWF4QWdlICYmIHBheWxvYWQubWF4X2FnZSAhPT0gdW5kZWZpbmVkKSBpbnZpdGUubWF4QWdlID0gcGF5bG9hZC5tYXhfYWdlO1xuICBpZiAocHJvcHMubWF4VXNlcyAmJiBwYXlsb2FkLm1heF91c2VzICE9PSB1bmRlZmluZWQpIGludml0ZS5tYXhVc2VzID0gcGF5bG9hZC5tYXhfdXNlcztcbiAgaWYgKHByb3BzLnRhcmdldFR5cGUgJiYgcGF5bG9hZC50YXJnZXRfdHlwZSkgaW52aXRlLnRhcmdldFR5cGUgPSBwYXlsb2FkLnRhcmdldF90eXBlO1xuICBpZiAocHJvcHMudGFyZ2V0VXNlciAmJiBwYXlsb2FkLnRhcmdldF91c2VyKSBpbnZpdGUudGFyZ2V0VXNlciA9IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHBheWxvYWQudGFyZ2V0X3VzZXIpO1xuICBpZiAocHJvcHMudGFyZ2V0QXBwbGljYXRpb24gJiYgcGF5bG9hZC50YXJnZXRfYXBwbGljYXRpb24pXG4gICAgaW52aXRlLnRhcmdldEFwcGxpY2F0aW9uID0gYm90LnRyYW5zZm9ybWVycy5hcHBsaWNhdGlvbihib3QsIHBheWxvYWQudGFyZ2V0X2FwcGxpY2F0aW9uLCB7IHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkLCBwYXJ0aWFsOiB0cnVlIH0pO1xuICBpZiAocHJvcHMudGVtcG9yYXJ5ICYmIHBheWxvYWQudGVtcG9yYXJ5KSBpbnZpdGUudGVtcG9yYXJ5ID0gcGF5bG9hZC50ZW1wb3Jhcnk7XG4gIGlmIChwcm9wcy51c2VzICYmIHBheWxvYWQudXNlcyAhPT0gdW5kZWZpbmVkKSBpbnZpdGUudXNlcyA9IHBheWxvYWQudXNlcztcbiAgaWYgKHByb3BzLmNoYW5uZWxJZCAmJiBwYXlsb2FkLmNoYW5uZWw/LmlkKSBpbnZpdGUuY2hhbm5lbElkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5jaGFubmVsLmlkKTtcbiAgaWYgKHByb3BzLmd1aWxkSWQgJiYgcGF5bG9hZC5ndWlsZD8uaWQpIGludml0ZS5ndWlsZElkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5ndWlsZC5pZCk7XG4gIGlmIChwcm9wcy5hcHByb3hpbWF0ZU1lbWJlckNvdW50ICYmIHBheWxvYWQuYXBwcm94aW1hdGVfbWVtYmVyX2NvdW50KSBpbnZpdGUuYXBwcm94aW1hdGVNZW1iZXJDb3VudCA9IHBheWxvYWQuYXBwcm94aW1hdGVfbWVtYmVyX2NvdW50O1xuICBpZiAocHJvcHMuYXBwcm94aW1hdGVQcmVzZW5jZUNvdW50ICYmIHBheWxvYWQuYXBwcm94aW1hdGVfcHJlc2VuY2VfY291bnQgIT09IHVuZGVmaW5lZClcbiAgICBpbnZpdGUuYXBwcm94aW1hdGVQcmVzZW5jZUNvdW50ID0gcGF5bG9hZC5hcHByb3hpbWF0ZV9wcmVzZW5jZV9jb3VudDtcbiAgaWYgKHByb3BzLmd1aWxkU2NoZWR1bGVkRXZlbnQgJiYgcGF5bG9hZC5ndWlsZF9zY2hlZHVsZWRfZXZlbnQpXG4gICAgaW52aXRlLmd1aWxkU2NoZWR1bGVkRXZlbnQgPSBib3QudHJhbnNmb3JtZXJzLnNjaGVkdWxlZEV2ZW50KGJvdCwgcGF5bG9hZC5ndWlsZF9zY2hlZHVsZWRfZXZlbnQpO1xuICBpZiAocHJvcHMuZXhwaXJlc0F0ICYmIHBheWxvYWQuZXhwaXJlc19hdCkgaW52aXRlLmV4cGlyZXNBdCA9IERhdGUucGFyc2UocGF5bG9hZC5leHBpcmVzX2F0KTtcbiAgaWYgKHByb3BzLmZsYWdzICYmIHBheWxvYWQuZmxhZ3MpIGludml0ZS5mbGFncyA9IG5ldyBUb2dnbGVCaXRmaWVsZChwYXlsb2FkLmZsYWdzKTtcbiAgaWYgKHByb3BzLnJvbGVzICYmIHBheWxvYWQucm9sZXMpIHtcbiAgICAvLyBHb2luZyBmcm9tIGEgUGFydGlhbDxUPiBUbyBQaWNrPFQsIEs+IHJlcXVpcmVzIGFuIGFzLCBhcyB0eXBlc2NyaXB0IGNhbid0IGd1YXJhbnRlZSB0aGF0IHRoZSBwcm9wZXJ0aWVzIGV4aXN0IG9uIHRoZSBwYXJ0aWFsXG4gICAgaW52aXRlLnJvbGVzID0gcGF5bG9hZC5yb2xlcy5tYXAoKHJvbGUpID0+IGJvdC50cmFuc2Zvcm1lcnMucm9sZShib3QsIHJvbGUsIHsgcGFydGlhbDogdHJ1ZSwgZ3VpbGRJZDogcGF5bG9hZC5ndWlsZD8uaWQgfSkpIGFzIEludml0ZVsncm9sZXMnXTtcbiAgfVxuXG4gIHJldHVybiBjYWxsQ3VzdG9taXplcignaW52aXRlJywgYm90LCBwYXlsb2FkLCBpbnZpdGUsIHtcbiAgICBzaGFyZElkOiBleHRyYT8uc2hhcmRJZCxcbiAgICBwYXJ0aWFsOiBleHRyYT8ucGFydGlhbCA/PyBmYWxzZSxcbiAgfSk7XG59XG4iXSwibmFtZXMiOlsiY2FsbEN1c3RvbWl6ZXIiLCJUb2dnbGVCaXRmaWVsZCIsInRyYW5zZm9ybUludml0ZSIsImJvdCIsInBheWxvYWQiLCJleHRyYSIsInByb3BzIiwidHJhbnNmb3JtZXJzIiwiZGVzaXJlZFByb3BlcnRpZXMiLCJpbnZpdGUiLCJ0eXBlIiwidW5kZWZpbmVkIiwiY29kZSIsImNyZWF0ZWRBdCIsImNyZWF0ZWRfYXQiLCJEYXRlIiwicGFyc2UiLCJpbnZpdGVyIiwidXNlciIsIm1heEFnZSIsIm1heF9hZ2UiLCJtYXhVc2VzIiwibWF4X3VzZXMiLCJ0YXJnZXRUeXBlIiwidGFyZ2V0X3R5cGUiLCJ0YXJnZXRVc2VyIiwidGFyZ2V0X3VzZXIiLCJ0YXJnZXRBcHBsaWNhdGlvbiIsInRhcmdldF9hcHBsaWNhdGlvbiIsImFwcGxpY2F0aW9uIiwic2hhcmRJZCIsInBhcnRpYWwiLCJ0ZW1wb3JhcnkiLCJ1c2VzIiwiY2hhbm5lbElkIiwiY2hhbm5lbCIsImlkIiwic25vd2ZsYWtlIiwiZ3VpbGRJZCIsImd1aWxkIiwiYXBwcm94aW1hdGVNZW1iZXJDb3VudCIsImFwcHJveGltYXRlX21lbWJlcl9jb3VudCIsImFwcHJveGltYXRlUHJlc2VuY2VDb3VudCIsImFwcHJveGltYXRlX3ByZXNlbmNlX2NvdW50IiwiZ3VpbGRTY2hlZHVsZWRFdmVudCIsImd1aWxkX3NjaGVkdWxlZF9ldmVudCIsInNjaGVkdWxlZEV2ZW50IiwiZXhwaXJlc0F0IiwiZXhwaXJlc19hdCIsImZsYWdzIiwicm9sZXMiLCJtYXAiLCJyb2xlIl0sIm1hcHBpbmdzIjoiQUFHQSxTQUFTQSxjQUFjLFFBQVEscUJBQXFCO0FBQ3BELFNBQVNDLGNBQWMsUUFBUSw4QkFBOEI7QUFHN0QsT0FBTyxTQUFTQyxnQkFBZ0JDLEdBQVEsRUFBRUMsT0FBdUMsRUFBRUMsS0FBK0M7SUFDaEksTUFBTUMsUUFBUUgsSUFBSUksWUFBWSxDQUFDQyxpQkFBaUIsQ0FBQ0MsTUFBTTtJQUN2RCxNQUFNQSxTQUFTLENBQUM7SUFFaEIsSUFBSUgsTUFBTUksSUFBSSxJQUFJTixRQUFRTSxJQUFJLEtBQUtDLFdBQVdGLE9BQU9DLElBQUksR0FBR04sUUFBUU0sSUFBSTtJQUN4RSxJQUFJSixNQUFNTSxJQUFJLElBQUlSLFFBQVFRLElBQUksRUFBRUgsT0FBT0csSUFBSSxHQUFHUixRQUFRUSxJQUFJO0lBQzFELElBQUlOLE1BQU1PLFNBQVMsSUFBSVQsUUFBUVUsVUFBVSxFQUFFTCxPQUFPSSxTQUFTLEdBQUdFLEtBQUtDLEtBQUssQ0FBQ1osUUFBUVUsVUFBVTtJQUMzRixJQUFJUixNQUFNVyxPQUFPLElBQUliLFFBQVFhLE9BQU8sRUFBRVIsT0FBT1EsT0FBTyxHQUFHZCxJQUFJSSxZQUFZLENBQUNXLElBQUksQ0FBQ2YsS0FBS0MsUUFBUWEsT0FBTztJQUNqRyxJQUFJWCxNQUFNYSxNQUFNLElBQUlmLFFBQVFnQixPQUFPLEtBQUtULFdB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
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { DiscordLobby, DiscordLobbyInvite, DiscordLobbyMember, DiscordLobbyMessage } from '@discordeno/types';
|
|
2
|
+
import type { Bot } from '../bot.js';
|
|
3
|
+
export declare function transformLobby(bot: Bot, payload: Partial<DiscordLobby>, extra?: {
|
|
4
|
+
partial?: boolean;
|
|
5
|
+
}): any;
|
|
6
|
+
export declare function transformLobbyMember(bot: Bot, payload: Partial<DiscordLobbyMember>, extra?: {
|
|
7
|
+
partial?: boolean;
|
|
8
|
+
}): any;
|
|
9
|
+
export declare function transformLobbyMessage(bot: Bot, payload: Partial<DiscordLobbyMessage>, extra?: {
|
|
10
|
+
partial?: boolean;
|
|
11
|
+
}): any;
|
|
12
|
+
export declare function transformLobbyInvite(bot: Bot, payload: Partial<DiscordLobbyInvite>, extra?: {
|
|
13
|
+
partial?: boolean;
|
|
14
|
+
}): any;
|
|
15
|
+
//# sourceMappingURL=lobby.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lobby.d.ts","sourceRoot":"","sources":["../../src/transformers/lobby.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACnH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAMrC,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,OAarG;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,OAWjH;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,mBAAmB,CAAC,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,OAkBnH;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,OASjH"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { callCustomizer } from '../transformers.js';
|
|
2
|
+
import { ToggleBitfield } from './toggles/ToggleBitfield.js';
|
|
3
|
+
export function transformLobby(bot, payload, extra) {
|
|
4
|
+
const props = bot.transformers.desiredProperties.lobby;
|
|
5
|
+
const lobby = {};
|
|
6
|
+
if (props.id && payload.id) lobby.id = bot.transformers.snowflake(payload.id);
|
|
7
|
+
if (props.applicationId && payload.application_id) lobby.applicationId = bot.transformers.snowflake(payload.application_id);
|
|
8
|
+
if (props.metadata && payload.metadata) lobby.metadata = payload.metadata;
|
|
9
|
+
if (props.members && payload.members) lobby.members = payload.members.map((member)=>bot.transformers.lobbyMember(bot, member));
|
|
10
|
+
if (props.linkedChannel && payload.linked_channel) lobby.linkedChannel = bot.transformers.channel(bot, payload.linked_channel);
|
|
11
|
+
return callCustomizer('lobby', bot, payload, lobby, {
|
|
12
|
+
partial: extra?.partial ?? false
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
export function transformLobbyMember(bot, payload, extra) {
|
|
16
|
+
const props = bot.transformers.desiredProperties.lobbyMember;
|
|
17
|
+
const lobbyMember = {};
|
|
18
|
+
if (props.id && payload.id) lobbyMember.id = bot.transformers.snowflake(payload.id);
|
|
19
|
+
if (props.metadata && payload.metadata) lobbyMember.metadata = payload.metadata;
|
|
20
|
+
if (props.flags && payload.flags) lobbyMember.flags = new ToggleBitfield(payload.flags);
|
|
21
|
+
return callCustomizer('lobbyMember', bot, payload, lobbyMember, {
|
|
22
|
+
partial: extra?.partial ?? false
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
export function transformLobbyMessage(bot, payload, extra) {
|
|
26
|
+
const props = bot.transformers.desiredProperties.lobbyMessage;
|
|
27
|
+
const lobbyMessage = {};
|
|
28
|
+
if (props.id && payload.id) lobbyMessage.id = bot.transformers.snowflake(payload.id);
|
|
29
|
+
if (props.type && payload.type !== undefined) lobbyMessage.type = payload.type;
|
|
30
|
+
if (props.content && payload.content) lobbyMessage.content = payload.content;
|
|
31
|
+
if (props.lobbyId && payload.lobby_id) lobbyMessage.lobbyId = bot.transformers.snowflake(payload.lobby_id);
|
|
32
|
+
if (props.channelId && payload.channel_id) lobbyMessage.channelId = bot.transformers.snowflake(payload.channel_id);
|
|
33
|
+
if (props.author && payload.author) lobbyMessage.author = bot.transformers.user(bot, payload.author);
|
|
34
|
+
if (props.metadata && payload.metadata) lobbyMessage.metadata = payload.metadata;
|
|
35
|
+
if (props.moderationMetadata && payload.moderation_metadata) lobbyMessage.moderationMetadata = payload.moderation_metadata;
|
|
36
|
+
if (props.flags && payload.flags) lobbyMessage.flags = new ToggleBitfield(payload.flags);
|
|
37
|
+
if (props.applicationId && payload.application_id) lobbyMessage.applicationId = bot.transformers.snowflake(payload.application_id);
|
|
38
|
+
return callCustomizer('lobbyMessage', bot, payload, lobbyMessage, {
|
|
39
|
+
partial: extra?.partial ?? false
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
export function transformLobbyInvite(bot, payload, extra) {
|
|
43
|
+
const props = bot.transformers.desiredProperties.lobbyInvite;
|
|
44
|
+
const lobbyInvite = {};
|
|
45
|
+
if (props.code && payload.code) lobbyInvite.code = payload.code;
|
|
46
|
+
return callCustomizer('lobbyInvite', bot, payload, lobbyInvite, {
|
|
47
|
+
partial: extra?.partial ?? false
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvbG9iYnkudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEaXNjb3JkTG9iYnksIERpc2NvcmRMb2JieUludml0ZSwgRGlzY29yZExvYmJ5TWVtYmVyLCBEaXNjb3JkTG9iYnlNZXNzYWdlIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnO1xuaW1wb3J0IHR5cGUgeyBCb3QgfSBmcm9tICcuLi9ib3QuanMnO1xuaW1wb3J0IHR5cGUgeyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLCBTZXR1cERlc2lyZWRQcm9wcywgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMgfSBmcm9tICcuLi9kZXNpcmVkUHJvcGVydGllcy5qcyc7XG5pbXBvcnQgeyBjYWxsQ3VzdG9taXplciB9IGZyb20gJy4uL3RyYW5zZm9ybWVycy5qcyc7XG5pbXBvcnQgeyBUb2dnbGVCaXRmaWVsZCB9IGZyb20gJy4vdG9nZ2xlcy9Ub2dnbGVCaXRmaWVsZC5qcyc7XG5pbXBvcnQgdHlwZSB7IExvYmJ5LCBMb2JieUludml0ZSwgTG9iYnlNZW1iZXIsIExvYmJ5TWVzc2FnZSB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtTG9iYnkoYm90OiBCb3QsIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZExvYmJ5PiwgZXh0cmE/OiB7IHBhcnRpYWw/OiBib29sZWFuIH0pIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmxvYmJ5O1xuICBjb25zdCBsb2JieSA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPExvYmJ5LCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj47XG5cbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIGxvYmJ5LmlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5pZCk7XG4gIGlmIChwcm9wcy5hcHBsaWNhdGlvbklkICYmIHBheWxvYWQuYXBwbGljYXRpb25faWQpIGxvYmJ5LmFwcGxpY2F0aW9uSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmFwcGxpY2F0aW9uX2lkKTtcbiAgaWYgKHByb3BzLm1ldGFkYXRhICYmIHBheWxvYWQubWV0YWRhdGEpIGxvYmJ5Lm1ldGFkYXRhID0gcGF5bG9hZC5tZXRhZGF0YTtcbiAgaWYgKHByb3BzLm1lbWJlcnMgJiYgcGF5bG9hZC5tZW1iZXJzKSBsb2JieS5tZW1iZXJzID0gcGF5bG9hZC5tZW1iZXJzLm1hcCgobWVtYmVyKSA9PiBib3QudHJhbnNmb3JtZXJzLmxvYmJ5TWVtYmVyKGJvdCwgbWVtYmVyKSk7XG4gIGlmIChwcm9wcy5saW5rZWRDaGFubmVsICYmIHBheWxvYWQubGlua2VkX2NoYW5uZWwpIGxvYmJ5LmxpbmtlZENoYW5uZWwgPSBib3QudHJhbnNmb3JtZXJzLmNoYW5uZWwoYm90LCBwYXlsb2FkLmxpbmtlZF9jaGFubmVsKTtcblxuICByZXR1cm4gY2FsbEN1c3RvbWl6ZXIoJ2xvYmJ5JywgYm90LCBwYXlsb2FkLCBsb2JieSwge1xuICAgIHBhcnRpYWw6IGV4dHJhPy5wYXJ0aWFsID8/IGZhbHNlLFxuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUxvYmJ5TWVtYmVyKGJvdDogQm90LCBwYXlsb2FkOiBQYXJ0aWFsPERpc2NvcmRMb2JieU1lbWJlcj4sIGV4dHJhPzogeyBwYXJ0aWFsPzogYm9vbGVhbiB9KSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5sb2JieU1lbWJlcjtcbiAgY29uc3QgbG9iYnlNZW1iZXIgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxMb2JieU1lbWJlciwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBsb2JieU1lbWJlci5pZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpO1xuICBpZiAocHJvcHMubWV0YWRhdGEgJiYgcGF5bG9hZC5tZXRhZGF0YSkgbG9iYnlNZW1iZXIubWV0YWRhdGEgPSBwYXlsb2FkLm1ldGFkYXRhO1xuICBpZiAocHJvcHMuZmxhZ3MgJiYgcGF5bG9hZC5mbGFncykgbG9iYnlNZW1iZXIuZmxhZ3MgPSBuZXcgVG9nZ2xlQml0ZmllbGQocGF5bG9hZC5mbGFncyk7XG5cbiAgcmV0dXJuIGNhbGxDdXN0b21pemVyKCdsb2JieU1lbWJlcicsIGJvdCwgcGF5bG9hZCwgbG9iYnlNZW1iZXIsIHtcbiAgICBwYXJ0aWFsOiBleHRyYT8ucGFydGlhbCA/PyBmYWxzZSxcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1Mb2JieU1lc3NhZ2UoYm90OiBCb3QsIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZExvYmJ5TWVzc2FnZT4sIGV4dHJhPzogeyBwYXJ0aWFsPzogYm9vbGVhbiB9KSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5sb2JieU1lc3NhZ2U7XG4gIGNvbnN0IGxvYmJ5TWVzc2FnZSA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPExvYmJ5TWVzc2FnZSwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBsb2JieU1lc3NhZ2UuaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmlkKTtcbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlICE9PSB1bmRlZmluZWQpIGxvYmJ5TWVzc2FnZS50eXBlID0gcGF5bG9hZC50eXBlO1xuICBpZiAocHJvcHMuY29udGVudCAmJiBwYXlsb2FkLmNvbnRlbnQpIGxvYmJ5TWVzc2FnZS5jb250ZW50ID0gcGF5bG9hZC5jb250ZW50O1xuICBpZiAocHJvcHMubG9iYnlJZCAmJiBwYXlsb2FkLmxvYmJ5X2lkKSBsb2JieU1lc3NhZ2UubG9iYnlJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQubG9iYnlfaWQpO1xuICBpZiAocHJvcHMuY2hhbm5lbElkICYmIHBheWxvYWQuY2hhbm5lbF9pZCkgbG9iYnlNZXNzYWdlLmNoYW5uZWxJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuY2hhbm5lbF9pZCk7XG4gIGlmIChwcm9wcy5hdXRob3IgJiYgcGF5bG9hZC5hdXRob3IpIGxvYmJ5TWVzc2FnZS5hdXRob3IgPSBib3QudHJhbnNmb3JtZXJzLnVzZXIoYm90LCBwYXlsb2FkLmF1dGhvcik7XG4gIGlmIChwcm9wcy5tZXRhZGF0YSAmJiBwYXlsb2FkLm1ldGFkYXRhKSBsb2JieU1lc3NhZ2UubWV0YWRhdGEgPSBwYXlsb2FkLm1ldGFkYXRhO1xuICBpZiAocHJvcHMubW9kZXJhdGlvbk1ldGFkYXRhICYmIHBheWxvYWQubW9kZXJhdGlvbl9tZXRhZGF0YSkgbG9iYnlNZXNzYWdlLm1vZGVyYXRpb25NZXRhZGF0YSA9IHBheWxvYWQubW9kZXJhdGlvbl9tZXRhZGF0YTtcbiAgaWYgKHByb3BzLmZsYWdzICYmIHBheWxvYWQuZmxhZ3MpIGxvYmJ5TWVzc2FnZS5mbGFncyA9IG5ldyBUb2dnbGVCaXRmaWVsZChwYXlsb2FkLmZsYWdzKTtcbiAgaWYgKHByb3BzLmFwcGxpY2F0aW9uSWQgJiYgcGF5bG9hZC5hcHBsaWNhdGlvbl9pZCkgbG9iYnlNZXNzYWdlLmFwcGxpY2F0aW9uSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmFwcGxpY2F0aW9uX2lkKTtcblxuICByZXR1cm4gY2FsbEN1c3RvbWl6ZXIoJ2xvYmJ5TWVzc2FnZScsIGJvdCwgcGF5bG9hZCwgbG9iYnlNZXNzYWdlLCB7XG4gICAgcGFydGlhbDogZXh0cmE/LnBhcnRpYWwgPz8gZmFsc2UsXG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtTG9iYnlJbnZpdGUoYm90OiBCb3QsIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZExvYmJ5SW52aXRlPiwgZXh0cmE/OiB7IHBhcnRpYWw/OiBib29sZWFuIH0pIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmxvYmJ5SW52aXRlO1xuICBjb25zdCBsb2JieUludml0ZSA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPExvYmJ5SW52aXRlLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj47XG5cbiAgaWYgKHByb3BzLmNvZGUgJiYgcGF5bG9hZC5jb2RlKSBsb2JieUludml0ZS5jb2RlID0gcGF5bG9hZC5jb2RlO1xuXG4gIHJldHVybiBjYWxsQ3VzdG9taXplcignbG9iYnlJbnZpdGUnLCBib3QsIHBheWxvYWQsIGxvYmJ5SW52aXRlLCB7XG4gICAgcGFydGlhbDogZXh0cmE/LnBhcnRpYWwgPz8gZmFsc2UsXG4gIH0pO1xufVxuIl0sIm5hbWVzIjpbImNhbGxDdXN0b21pemVyIiwiVG9nZ2xlQml0ZmllbGQiLCJ0cmFuc2Zvcm1Mb2JieSIsImJvdCIsInBheWxvYWQiLCJleHRyYSIsInByb3BzIiwidHJhbnNmb3JtZXJzIiwiZGVzaXJlZFByb3BlcnRpZXMiLCJsb2JieSIsImlkIiwic25vd2ZsYWtlIiwiYXBwbGljYXRpb25JZCIsImFwcGxpY2F0aW9uX2lkIiwibWV0YWRhdGEiLCJtZW1iZXJzIiwibWFwIiwibWVtYmVyIiwibG9iYnlNZW1iZXIiLCJsaW5rZWRDaGFubmVsIiwibGlua2VkX2NoYW5uZWwiLCJjaGFubmVsIiwicGFydGlhbCIsInRyYW5zZm9ybUxvYmJ5TWVtYmVyIiwiZmxhZ3MiLCJ0cmFuc2Zvcm1Mb2JieU1lc3NhZ2UiLCJsb2JieU1lc3NhZ2UiLCJ0eXBlIiwidW5kZWZpbmVkIiwiY29udGVudCIsImxvYmJ5SWQiLCJsb2JieV9pZCIsImNoYW5uZWxJZCIsImNoYW5uZWxfaWQiLCJhdXRob3IiLCJ1c2VyIiwibW9kZXJhdGlvbk1ldGFkYXRhIiwibW9kZXJhdGlvbl9tZXRhZGF0YSIsInRyYW5zZm9ybUxvYmJ5SW52aXRlIiwibG9iYnlJbnZpdGUiLCJjb2RlIl0sIm1hcHBpbmdzIjoiQUFHQSxTQUFTQSxjQUFjLFFBQVEscUJBQXFCO0FBQ3BELFNBQVNDLGNBQWMsUUFBUSw4QkFBOEI7QUFHN0QsT0FBTyxTQUFTQyxlQUFlQyxHQUFRLEVBQUVDLE9BQThCLEVBQUVDLEtBQTZCO0lBQ3BHLE1BQU1DLFFBQVFILElBQUlJLFlBQVksQ0FBQ0MsaUJBQWlCLENBQUNDLEtBQUs7SUFDdEQsTUFBTUEsUUFBUSxDQUFDO0lBRWYsSUFBSUgsTUFBTUksRUFBRSxJQUFJTixRQUFRTSxFQUFFLEVBQUVELE1BQU1DLEVBQUUsR0FBR1AsSUFBSUksWUFBWSxDQUFDSSxTQUFTLENBQUNQLFFBQVFNLEVBQUU7SUFDNUUsSUFBSUosTUFBTU0sYUFBYSxJQUFJUixRQUFRUyxjQUFjLEVBQUVKLE1BQU1HLGFBQWEsR0FBR1QsSUFBSUksWUFBWSxDQUFDSSxTQUFTLENBQUNQLFFBQVFTLGNBQWM7SUFDMUgsSUFBSVAsTUFBTVEsUUFBUSxJQUFJVixRQUFRVSxRQUFRLEVBQUVMLE1BQU1LLFFBQVEsR0FBR1YsUUFBUVUsUUFBUTtJQUN6RSxJQUFJUixNQUFNUyxPQUFPLElBQUlYLFFBQVFXLE9BQU8sRUFBRU4sTUFBTU0sT0FBTyxHQUFHWCxRQUFRVyxPQUFPLENBQUNDLEdBQUcsQ0FBQyxDQUFDQyxTQUFXZCxJQUFJSSxZQUFZLENBQUNXLFdBQVcsQ0FBQ2YsS0FBS2M7SUFDeEgsSUFBSVgsTUFBTWEsYUFBYSxJQUFJZixRQUFRZ0IsY0FBYyxFQUFFWCxNQUFNVSxhQUFhLEdBQUdoQixJQUFJSSxZQUFZLENBQUNjLE9BQU8sQ0FBQ2xCLEtBQUtDLFFBQVFnQixj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
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { BigString, DiscordMember } from '@discordeno/types';
|
|
2
|
+
import type { Bot } from '../bot.js';
|
|
3
|
+
import type { Member } from './types.js';
|
|
4
|
+
export declare const baseMember: Member;
|
|
5
|
+
export declare function transformMember(bot: Bot, payload: Partial<DiscordMember>, extra?: {
|
|
6
|
+
guildId?: BigString;
|
|
7
|
+
userId?: BigString;
|
|
8
|
+
partial?: boolean;
|
|
9
|
+
}): any;
|
|
10
|
+
//# sourceMappingURL=member.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"member.d.ts","sourceRoot":"","sources":["../../src/transformers/member.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAKrC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,eAAO,MAAM,UAAU,EAAE,MA4BxB,CAAC;AAEF,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,SAAS,CAAC;IAAC,MAAM,CAAC,EAAE,SAAS,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,OA0BhJ"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { iconHashToBigInt } from '@discordeno/utils';
|
|
2
|
+
import { callCustomizer } from '../transformers.js';
|
|
3
|
+
import { MemberToggles } from './toggles/member.js';
|
|
4
|
+
import { Permissions } from './toggles/Permissions.js';
|
|
5
|
+
export const baseMember = {
|
|
6
|
+
// This allows typescript to still check for type errors on functions below
|
|
7
|
+
...undefined,
|
|
8
|
+
get deaf () {
|
|
9
|
+
return !!this.toggles?.has('deaf');
|
|
10
|
+
},
|
|
11
|
+
get mute () {
|
|
12
|
+
return !!this.toggles?.has('mute');
|
|
13
|
+
},
|
|
14
|
+
get pending () {
|
|
15
|
+
return !!this.toggles?.has('pending');
|
|
16
|
+
},
|
|
17
|
+
get flags () {
|
|
18
|
+
return this.toggles?.flags ?? 0;
|
|
19
|
+
},
|
|
20
|
+
get didRejoin () {
|
|
21
|
+
return !!this.toggles?.didRejoin;
|
|
22
|
+
},
|
|
23
|
+
get startedOnboarding () {
|
|
24
|
+
return !!this.toggles?.startedOnboarding;
|
|
25
|
+
},
|
|
26
|
+
get bypassesVerification () {
|
|
27
|
+
return !!this.toggles?.bypassesVerification;
|
|
28
|
+
},
|
|
29
|
+
get completedOnboarding () {
|
|
30
|
+
return !!this.toggles?.completedOnboarding;
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
export function transformMember(bot, payload, extra) {
|
|
34
|
+
const member = Object.create(baseMember);
|
|
35
|
+
const props = bot.transformers.desiredProperties.member;
|
|
36
|
+
if (props.id && extra?.userId) member.id = typeof extra.userId === 'string' ? bot.transformers.snowflake(extra.userId) : extra.userId;
|
|
37
|
+
if (props.guildId && extra?.guildId) member.guildId = typeof extra.guildId === 'string' ? bot.transformers.snowflake(extra.guildId) : extra.guildId;
|
|
38
|
+
if (props.user && payload.user) member.user = bot.transformers.user(bot, payload.user);
|
|
39
|
+
if (props.nick && payload.nick) member.nick = payload.nick;
|
|
40
|
+
if (props.roles && payload.roles) member.roles = payload.roles.map((id)=>bot.transformers.snowflake(id));
|
|
41
|
+
if (props.joinedAt && payload.joined_at) member.joinedAt = Date.parse(payload.joined_at);
|
|
42
|
+
if (props.premiumSince && payload.premium_since) member.premiumSince = Date.parse(payload.premium_since);
|
|
43
|
+
if (props.communicationDisabledUntil && payload.communication_disabled_until) member.communicationDisabledUntil = Date.parse(payload.communication_disabled_until);
|
|
44
|
+
if (props.avatar && payload.avatar) member.avatar = iconHashToBigInt(payload.avatar);
|
|
45
|
+
if (props.banner && payload.banner) member.banner = iconHashToBigInt(payload.banner);
|
|
46
|
+
if (props.permissions && payload.permissions) member.permissions = new Permissions(payload.permissions);
|
|
47
|
+
if (props.toggles) member.toggles = new MemberToggles(payload);
|
|
48
|
+
if (props.avatarDecorationData && payload.avatar_decoration_data) member.avatarDecorationData = bot.transformers.avatarDecorationData(bot, payload.avatar_decoration_data);
|
|
49
|
+
if (props.collectibles && payload.collectibles) member.collectibles = bot.transformers.collectibles(bot, payload.collectibles);
|
|
50
|
+
return callCustomizer('member', bot, payload, member, {
|
|
51
|
+
guildId: extra?.guildId ? bot.transformers.snowflake(extra.guildId) : undefined,
|
|
52
|
+
userId: extra?.userId ? bot.transformers.snowflake(extra.userId) : undefined,
|
|
53
|
+
partial: extra?.partial ?? false
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvbWVtYmVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQmlnU3RyaW5nLCBEaXNjb3JkTWVtYmVyIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnO1xuaW1wb3J0IHsgaWNvbkhhc2hUb0JpZ0ludCB9IGZyb20gJ0BkaXNjb3JkZW5vL3V0aWxzJztcbmltcG9ydCB0eXBlIHsgQm90IH0gZnJvbSAnLi4vYm90LmpzJztcbmltcG9ydCB0eXBlIHsgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvciwgU2V0dXBEZXNpcmVkUHJvcHMsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzIH0gZnJvbSAnLi4vZGVzaXJlZFByb3BlcnRpZXMuanMnO1xuaW1wb3J0IHsgY2FsbEN1c3RvbWl6ZXIgfSBmcm9tICcuLi90cmFuc2Zvcm1lcnMuanMnO1xuaW1wb3J0IHsgTWVtYmVyVG9nZ2xlcyB9IGZyb20gJy4vdG9nZ2xlcy9tZW1iZXIuanMnO1xuaW1wb3J0IHsgUGVybWlzc2lvbnMgfSBmcm9tICcuL3RvZ2dsZXMvUGVybWlzc2lvbnMuanMnO1xuaW1wb3J0IHR5cGUgeyBNZW1iZXIgfSBmcm9tICcuL3R5cGVzLmpzJztcblxuZXhwb3J0IGNvbnN0IGJhc2VNZW1iZXI6IE1lbWJlciA9IHtcbiAgLy8gVGhpcyBhbGxvd3MgdHlwZXNjcmlwdCB0byBzdGlsbCBjaGVjayBmb3IgdHlwZSBlcnJvcnMgb24gZnVuY3Rpb25zIGJlbG93XG4gIC4uLih1bmRlZmluZWQgYXMgdW5rbm93biBhcyBNZW1iZXIpLFxuXG4gIGdldCBkZWFmKCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uaGFzKCdkZWFmJyk7XG4gIH0sXG4gIGdldCBtdXRlKCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uaGFzKCdtdXRlJyk7XG4gIH0sXG4gIGdldCBwZW5kaW5nKCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uaGFzKCdwZW5kaW5nJyk7XG4gIH0sXG4gIGdldCBmbGFncygpIHtcbiAgICByZXR1cm4gdGhpcy50b2dnbGVzPy5mbGFncyA/PyAwO1xuICB9LFxuICBnZXQgZGlkUmVqb2luKCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uZGlkUmVqb2luO1xuICB9LFxuICBnZXQgc3RhcnRlZE9uYm9hcmRpbmcoKSB7XG4gICAgcmV0dXJuICEhdGhpcy50b2dnbGVzPy5zdGFydGVkT25ib2FyZGluZztcbiAgfSxcbiAgZ2V0IGJ5cGFzc2VzVmVyaWZpY2F0aW9uKCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uYnlwYXNzZXNWZXJpZmljYXRpb247XG4gIH0sXG4gIGdldCBjb21wbGV0ZWRPbmJvYXJkaW5nKCkge1xuICAgIHJldHVybiAhIXRoaXMudG9nZ2xlcz8uY29tcGxldGVkT25ib2FyZGluZztcbiAgfSxcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1NZW1iZXIoYm90OiBCb3QsIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZE1lbWJlcj4sIGV4dHJhPzogeyBndWlsZElkPzogQmlnU3RyaW5nOyB1c2VySWQ/OiBCaWdTdHJpbmc7IHBhcnRpYWw/OiBib29sZWFuIH0pIHtcbiAgY29uc3QgbWVtYmVyOiBTZXR1cERlc2lyZWRQcm9wczxNZW1iZXIsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPiA9IE9iamVjdC5jcmVhdGUoYmFzZU1lbWJlcik7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5tZW1iZXI7XG5cbiAgaWYgKHByb3BzLmlkICYmIGV4dHJhPy51c2VySWQpIG1lbWJlci5pZCA9IHR5cGVvZiBleHRyYS51c2VySWQgPT09ICdzdHJpbmcnID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoZXh0cmEudXNlcklkKSA6IGV4dHJhLnVzZXJJZDtcbiAgaWYgKHByb3BzLmd1aWxkSWQgJiYgZXh0cmE/Lmd1aWxkSWQpIG1lbWJlci5ndWlsZElkID0gdHlwZW9mIGV4dHJhLmd1aWxkSWQgPT09ICdzdHJpbmcnID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoZXh0cmEuZ3VpbGRJZCkgOiBleHRyYS5ndWlsZElkO1xuICBpZiAocHJvcHMudXNlciAmJiBwYXlsb2FkLnVzZXIpIG1lbWJlci51c2VyID0gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgcGF5bG9hZC51c2VyKTtcbiAgaWYgKHByb3BzLm5pY2sgJiYgcGF5bG9hZC5uaWNrKSBtZW1iZXIubmljayA9IHBheWxvYWQubmljaztcbiAgaWYgKHByb3BzLnJvbGVzICYmIHBheWxvYWQucm9sZXMpIG1lbWJlci5yb2xlcyA9IHBheWxvYWQucm9sZXMubWFwKChpZCkgPT4gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoaWQpKTtcbiAgaWYgKHByb3BzLmpvaW5lZEF0ICYmIHBheWxvYWQuam9pbmVkX2F0KSBtZW1iZXIuam9pbmVkQXQgPSBEYXRlLnBhcnNlKHBheWxvYWQuam9pbmVkX2F0KTtcbiAgaWYgKHByb3BzLnByZW1pdW1TaW5jZSAmJiBwYXlsb2FkLnByZW1pdW1fc2luY2UpIG1lbWJlci5wcmVtaXVtU2luY2UgPSBEYXRlLnBhcnNlKHBheWxvYWQucHJlbWl1bV9zaW5jZSk7XG4gIGlmIChwcm9wcy5jb21tdW5pY2F0aW9uRGlzYWJsZWRVbnRpbCAmJiBwYXlsb2FkLmNvbW11bmljYXRpb25fZGlzYWJsZWRfdW50aWwpXG4gICAgbWVtYmVyLmNvbW11bmljYXRpb25EaXNhYmxlZFVudGlsID0gRGF0ZS5wYXJzZShwYXlsb2FkLmNvbW11bmljYXRpb25fZGlzYWJsZWRfdW50aWwpO1xuICBpZiAocHJvcHMuYXZhdGFyICYmIHBheWxvYWQuYXZhdGFyKSBtZW1iZXIuYXZhdGFyID0gaWNvbkhhc2hUb0JpZ0ludChwYXlsb2FkLmF2YXRhcik7XG4gIGlmIChwcm9wcy5iYW5uZXIgJiYgcGF5bG9hZC5iYW5uZXIpIG1lbWJlci5iYW5uZXIgPSBpY29uSGFzaFRvQmlnSW50KHBheWxvYWQuYmFubmVyKTtcbiAgaWYgKHByb3BzLnBlcm1pc3Npb25zICYmIHBheWxvYWQucGVybWlzc2lvbnMpIG1lbWJlci5wZXJtaXNzaW9ucyA9IG5ldyBQZXJtaXNzaW9ucyhwYXlsb2FkLnBlcm1pc3Npb25zKTtcbiAgaWYgKHByb3BzLnRvZ2dsZXMpIG1lbWJlci50b2dnbGVzID0gbmV3IE1lbWJlclRvZ2dsZXMocGF5bG9hZCk7XG4gIGlmIChwcm9wcy5hdmF0YXJEZWNvcmF0aW9uRGF0YSAmJiBwYXlsb2FkLmF2YXRhcl9kZWNvcmF0aW9uX2RhdGEpXG4gICAgbWVtYmVyLmF2YXRhckRlY29yYXRpb25EYXRhID0gYm90LnRyYW5zZm9ybWVycy5hdmF0YXJEZWNvcmF0aW9uRGF0YShib3QsIHBheWxvYWQuYXZhdGFyX2RlY29yYXRpb25fZGF0YSk7XG4gIGlmIChwcm9wcy5jb2xsZWN0aWJsZXMgJiYgcGF5bG9hZC5jb2xsZWN0aWJsZXMpIG1lbWJlci5jb2xsZWN0aWJsZXMgPSBib3QudHJhbnNmb3JtZXJzLmNvbGxlY3RpYmxlcyhib3QsIHBheWxvYWQuY29sbGVjdGlibGVzKTtcblxuICByZXR1cm4gY2FsbEN1c3RvbWl6ZXIoJ21lbWJlcicsIGJvdCwgcGF5bG9hZCwgbWVtYmVyLCB7XG4gICAgZ3VpbGRJZDogZXh0cmE/Lmd1aWxkSWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShleHRyYS5ndWlsZElkKSA6IHVuZGVmaW5lZCxcbiAgICB1c2VySWQ6IGV4dHJhPy51c2VySWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShleHRyYS51c2VySWQpIDogdW5kZWZpbmVkLFxuICAgIHBhcnRpYWw6IGV4dHJhPy5wYXJ0aWFsID8/IGZhbHNlLFxuICB9KTtcbn1cbiJdLCJuYW1lcyI6WyJpY29uSGFzaFRvQmlnSW50IiwiY2FsbEN1c3RvbWl6ZXIiLCJNZW1iZXJUb2dnbGVzIiwiUGVybWlzc2lvbnMiLCJiYXNlTWVtYmVyIiwidW5kZWZpbmVkIiwiZGVhZiIsInRvZ2dsZXMiLCJoYXMiLCJtdXRlIiwicGVuZGluZyIsImZsYWdzIiwiZGlkUmVqb2luIiwic3RhcnRlZE9uYm9hcmRpbmciLCJieXBhc3Nlc1ZlcmlmaWNhdGlvbiIsImNvbXBsZXRlZE9uYm9hcmRpbmciLCJ0cmFuc2Zvcm1NZW1iZXIiLCJib3QiLCJwYXlsb2FkIiwiZXh0cmEiLCJtZW1iZXIiLCJPYmplY3QiLCJjcmVhdGUiLCJwcm9wcyIsInRyYW5zZm9ybWVycyIsImRlc2lyZWRQcm9wZXJ0aWVzIiwiaWQiLCJ1c2VySWQiLCJzbm93Zmxha2UiLCJndWlsZElkIiwidXNlciIsIm5pY2siLCJyb2xlcyIsIm1hcCIsImpvaW5lZEF0Iiwiam9pbmVkX2F0IiwiRGF0ZSIsInBhcnNlIiwicHJlbWl1bVNpbmNlIiwicHJlbWl1bV9zaW5jZSIsImNvbW11bmljYXRpb25EaXNhYmxlZFVudGlsIiwiY29tbXVuaWNhdGlvbl9kaXNhYmxlZF91bnRpbCIsImF2YXRhciIsImJhbm5lciIsInBlcm1pc3Npb25zIiwiYXZhdGFyRGVjb3JhdGlvbkRhdGEiLCJhdmF0YXJfZGVjb3JhdGlvbl9kYXRhIiwiY29sbGVjdGlibGVzIiwicGFydGlhbCJdLCJtYXBwaW5ncyI6IkFBQ0EsU0FBU0EsZ0JBQWdCLFFBQVEsb0JBQW9CO0FBR3JELFNBQVNDLGNBQWMsUUFBUSxxQkFBcUI7QUFDcEQsU0FBU0MsYUFBYSxRQUFRLHNCQUFzQjtBQUNwRCxTQUFTQyxXQUFXLFFBQVEsMkJBQTJCO0FBR3ZELE9BQU8sTUFBTUMsYUFBcUI7SUFDaEMsMkVBQTJFO0lBQzNFLEdBQUlDLFNBQVM7SUFFYixJQUFJQztRQUNGLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQ0MsT0FBTyxFQUFFQyxJQUFJO0lBQzdCO0lBQ0EsSUFBSUM7UUFDRixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUNGLE9BQU8sRUFBRUMsSUFBSTtJQUM3QjtJQUNBLElBQUlFO1FBQ0YsT0FB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
|