@discordeno/bot 22.0.1-next.f274ec6 → 22.0.1-next.f2e8d7e
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 +4 -4
- package/dist/bot.d.ts.map +1 -1
- package/dist/bot.js +2 -3
- package/dist/commandOptionsParser.d.ts +4 -3
- package/dist/commandOptionsParser.d.ts.map +1 -1
- package/dist/commandOptionsParser.js +1 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +1 -1
- package/dist/desiredProperties.d.ts +148 -100
- package/dist/desiredProperties.d.ts.map +1 -1
- package/dist/desiredProperties.js +251 -2
- package/dist/events.d.ts +13 -12
- package/dist/events.d.ts.map +1 -1
- package/dist/events.js +1 -1
- package/dist/handlers/channels/CHANNEL_CREATE.d.ts +2 -1
- package/dist/handlers/channels/CHANNEL_CREATE.d.ts.map +1 -1
- package/dist/handlers/channels/CHANNEL_CREATE.js +1 -1
- package/dist/handlers/channels/CHANNEL_DELETE.d.ts.map +1 -1
- package/dist/handlers/channels/CHANNEL_DELETE.js +1 -1
- package/dist/handlers/channels/CHANNEL_PINS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/channels/CHANNEL_PINS_UPDATE.js +1 -1
- package/dist/handlers/channels/CHANNEL_UPDATE.d.ts.map +1 -1
- package/dist/handlers/channels/CHANNEL_UPDATE.js +1 -1
- package/dist/handlers/channels/STAGE_INSTANCE_CREATE.d.ts.map +1 -1
- package/dist/handlers/channels/STAGE_INSTANCE_CREATE.js +1 -1
- package/dist/handlers/channels/STAGE_INSTANCE_DELETE.d.ts.map +1 -1
- package/dist/handlers/channels/STAGE_INSTANCE_DELETE.js +1 -1
- package/dist/handlers/channels/STAGE_INSTANCE_UPDATE.d.ts.map +1 -1
- package/dist/handlers/channels/STAGE_INSTANCE_UPDATE.js +1 -1
- package/dist/handlers/channels/THREAD_CREATE.d.ts +1 -1
- package/dist/handlers/channels/THREAD_CREATE.d.ts.map +1 -1
- package/dist/handlers/channels/THREAD_CREATE.js +1 -1
- package/dist/handlers/channels/THREAD_DELETE.d.ts +1 -1
- package/dist/handlers/channels/THREAD_DELETE.d.ts.map +1 -1
- package/dist/handlers/channels/THREAD_DELETE.js +1 -1
- package/dist/handlers/channels/THREAD_LIST_SYNC.d.ts +1 -1
- package/dist/handlers/channels/THREAD_LIST_SYNC.d.ts.map +1 -1
- package/dist/handlers/channels/THREAD_LIST_SYNC.js +1 -1
- package/dist/handlers/channels/THREAD_MEMBERS_UPDATE.d.ts +1 -1
- package/dist/handlers/channels/THREAD_MEMBERS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/channels/THREAD_MEMBERS_UPDATE.js +2 -2
- package/dist/handlers/channels/THREAD_MEMBER_UPDATE.d.ts +1 -1
- package/dist/handlers/channels/THREAD_MEMBER_UPDATE.d.ts.map +1 -1
- package/dist/handlers/channels/THREAD_MEMBER_UPDATE.js +1 -1
- package/dist/handlers/channels/THREAD_UPDATE.d.ts +1 -1
- package/dist/handlers/channels/THREAD_UPDATE.d.ts.map +1 -1
- package/dist/handlers/channels/THREAD_UPDATE.js +1 -1
- package/dist/handlers/channels/index.d.ts.map +1 -1
- package/dist/handlers/channels/index.js +1 -1
- package/dist/handlers/emojis/GUILD_EMOJIS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/emojis/GUILD_EMOJIS_UPDATE.js +1 -1
- package/dist/handlers/emojis/index.d.ts.map +1 -1
- package/dist/handlers/emojis/index.js +1 -1
- package/dist/handlers/entitlements/ENTITLEMENT_CREATE.d.ts.map +1 -1
- package/dist/handlers/entitlements/ENTITLEMENT_CREATE.js +1 -1
- package/dist/handlers/entitlements/ENTITLEMENT_DELETE.d.ts.map +1 -1
- package/dist/handlers/entitlements/ENTITLEMENT_DELETE.js +1 -1
- package/dist/handlers/entitlements/ENTITLEMENT_UPDATE.d.ts.map +1 -1
- package/dist/handlers/entitlements/ENTITLEMENT_UPDATE.js +1 -1
- package/dist/handlers/entitlements/index.d.ts.map +1 -1
- package/dist/handlers/entitlements/index.js +1 -1
- package/dist/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.js +1 -1
- package/dist/handlers/guilds/GUILD_BAN_ADD.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_BAN_ADD.js +1 -1
- package/dist/handlers/guilds/GUILD_BAN_REMOVE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_BAN_REMOVE.js +1 -1
- package/dist/handlers/guilds/GUILD_CREATE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_CREATE.js +1 -1
- package/dist/handlers/guilds/GUILD_DELETE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_DELETE.js +1 -1
- package/dist/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.js +1 -1
- package/dist/handlers/guilds/GUILD_STICKERS_UPDATE.d.ts +2 -1
- package/dist/handlers/guilds/GUILD_STICKERS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_STICKERS_UPDATE.js +1 -1
- package/dist/handlers/guilds/GUILD_UPDATE.d.ts.map +1 -1
- package/dist/handlers/guilds/GUILD_UPDATE.js +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.d.ts.map +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.js +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.d.ts.map +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.js +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.d.ts.map +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.js +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.d.ts.map +1 -1
- package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.js +1 -1
- package/dist/handlers/guilds/automod/index.d.ts.map +1 -1
- package/dist/handlers/guilds/automod/index.js +1 -1
- package/dist/handlers/guilds/index.d.ts.map +1 -1
- package/dist/handlers/guilds/index.js +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.d.ts.map +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.js +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.d.ts.map +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.js +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.d.ts.map +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.js +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.d.ts.map +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.js +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.d.ts.map +1 -1
- package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.js +1 -1
- package/dist/handlers/guilds/scheduledEvents/index.d.ts.map +1 -1
- package/dist/handlers/guilds/scheduledEvents/index.js +1 -1
- package/dist/handlers/index.d.ts.map +1 -1
- package/dist/handlers/index.js +1 -1
- package/dist/handlers/integrations/INTEGRATION_CREATE.d.ts +1 -1
- package/dist/handlers/integrations/INTEGRATION_CREATE.d.ts.map +1 -1
- package/dist/handlers/integrations/INTEGRATION_CREATE.js +1 -1
- package/dist/handlers/integrations/INTEGRATION_DELETE.d.ts +1 -1
- package/dist/handlers/integrations/INTEGRATION_DELETE.d.ts.map +1 -1
- package/dist/handlers/integrations/INTEGRATION_DELETE.js +1 -1
- package/dist/handlers/integrations/INTEGRATION_UPDATE.d.ts +1 -1
- package/dist/handlers/integrations/INTEGRATION_UPDATE.d.ts.map +1 -1
- package/dist/handlers/integrations/INTEGRATION_UPDATE.js +1 -1
- package/dist/handlers/integrations/index.d.ts.map +1 -1
- package/dist/handlers/integrations/index.js +1 -1
- package/dist/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts +2 -1
- package/dist/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.js +1 -1
- package/dist/handlers/interactions/INTERACTION_CREATE.d.ts +1 -1
- package/dist/handlers/interactions/INTERACTION_CREATE.d.ts.map +1 -1
- package/dist/handlers/interactions/INTERACTION_CREATE.js +1 -1
- package/dist/handlers/interactions/index.d.ts.map +1 -1
- package/dist/handlers/interactions/index.js +1 -1
- package/dist/handlers/invites/INVITE_CREATE.d.ts +1 -1
- package/dist/handlers/invites/INVITE_CREATE.d.ts.map +1 -1
- package/dist/handlers/invites/INVITE_CREATE.js +1 -1
- package/dist/handlers/invites/INVITE_DELETE.d.ts +1 -1
- package/dist/handlers/invites/INVITE_DELETE.d.ts.map +1 -1
- package/dist/handlers/invites/INVITE_DELETE.js +1 -1
- package/dist/handlers/invites/index.d.ts.map +1 -1
- package/dist/handlers/invites/index.js +1 -1
- package/dist/handlers/members/GUILD_MEMBERS_CHUNK.d.ts +1 -1
- package/dist/handlers/members/GUILD_MEMBERS_CHUNK.d.ts.map +1 -1
- package/dist/handlers/members/GUILD_MEMBERS_CHUNK.js +1 -1
- package/dist/handlers/members/GUILD_MEMBER_ADD.d.ts +1 -1
- package/dist/handlers/members/GUILD_MEMBER_ADD.d.ts.map +1 -1
- package/dist/handlers/members/GUILD_MEMBER_ADD.js +1 -1
- package/dist/handlers/members/GUILD_MEMBER_REMOVE.d.ts +1 -1
- package/dist/handlers/members/GUILD_MEMBER_REMOVE.d.ts.map +1 -1
- package/dist/handlers/members/GUILD_MEMBER_REMOVE.js +1 -1
- package/dist/handlers/members/GUILD_MEMBER_UPDATE.d.ts +1 -1
- package/dist/handlers/members/GUILD_MEMBER_UPDATE.d.ts.map +1 -1
- package/dist/handlers/members/GUILD_MEMBER_UPDATE.js +1 -1
- package/dist/handlers/members/index.d.ts.map +1 -1
- package/dist/handlers/members/index.js +1 -1
- package/dist/handlers/messages/MESSAGE_CREATE.d.ts +1 -1
- package/dist/handlers/messages/MESSAGE_CREATE.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_CREATE.js +1 -1
- package/dist/handlers/messages/MESSAGE_DELETE.d.ts +1 -1
- package/dist/handlers/messages/MESSAGE_DELETE.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_DELETE.js +1 -1
- package/dist/handlers/messages/MESSAGE_DELETE_BULK.d.ts +1 -1
- package/dist/handlers/messages/MESSAGE_DELETE_BULK.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_DELETE_BULK.js +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_ADD.d.ts +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_ADD.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_ADD.js +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE.js +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.js +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.js +1 -1
- package/dist/handlers/messages/MESSAGE_UPDATE.d.ts +1 -1
- package/dist/handlers/messages/MESSAGE_UPDATE.d.ts.map +1 -1
- package/dist/handlers/messages/MESSAGE_UPDATE.js +1 -1
- package/dist/handlers/messages/index.d.ts.map +1 -1
- package/dist/handlers/messages/index.js +1 -1
- package/dist/handlers/misc/PRESENCE_UPDATE.d.ts +1 -1
- package/dist/handlers/misc/PRESENCE_UPDATE.d.ts.map +1 -1
- package/dist/handlers/misc/PRESENCE_UPDATE.js +1 -1
- 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 +1 -1
- package/dist/handlers/misc/READY.d.ts.map +1 -1
- package/dist/handlers/misc/READY.js +1 -1
- 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 +1 -1
- package/dist/handlers/misc/TYPING_START.d.ts.map +1 -1
- package/dist/handlers/misc/TYPING_START.js +1 -1
- package/dist/handlers/misc/USER_UPDATE.d.ts +1 -1
- package/dist/handlers/misc/USER_UPDATE.d.ts.map +1 -1
- package/dist/handlers/misc/USER_UPDATE.js +1 -1
- package/dist/handlers/misc/index.d.ts +2 -0
- package/dist/handlers/misc/index.d.ts.map +1 -1
- package/dist/handlers/misc/index.js +3 -1
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_ADD.d.ts +1 -1
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_ADD.d.ts.map +1 -1
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_ADD.js +1 -1
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts +1 -1
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts.map +1 -1
- package/dist/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.js +1 -1
- package/dist/handlers/poll/index.d.ts.map +1 -1
- package/dist/handlers/poll/index.js +1 -1
- package/dist/handlers/roles/GUILD_ROLE_CREATE.d.ts +1 -1
- package/dist/handlers/roles/GUILD_ROLE_CREATE.d.ts.map +1 -1
- package/dist/handlers/roles/GUILD_ROLE_CREATE.js +1 -1
- package/dist/handlers/roles/GUILD_ROLE_DELETE.d.ts +1 -1
- package/dist/handlers/roles/GUILD_ROLE_DELETE.d.ts.map +1 -1
- package/dist/handlers/roles/GUILD_ROLE_DELETE.js +1 -1
- package/dist/handlers/roles/GUILD_ROLE_UPDATE.d.ts +1 -1
- package/dist/handlers/roles/GUILD_ROLE_UPDATE.d.ts.map +1 -1
- package/dist/handlers/roles/GUILD_ROLE_UPDATE.js +1 -1
- package/dist/handlers/roles/index.d.ts.map +1 -1
- package/dist/handlers/roles/index.js +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.js +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts.map +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.js +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts.map +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.js +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts.map +1 -1
- package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.js +1 -1
- package/dist/handlers/soundboard/SOUNDBOARD_SOUNDS.d.ts +1 -1
- package/dist/handlers/soundboard/SOUNDBOARD_SOUNDS.d.ts.map +1 -1
- package/dist/handlers/soundboard/SOUNDBOARD_SOUNDS.js +1 -1
- package/dist/handlers/soundboard/index.d.ts.map +1 -1
- package/dist/handlers/soundboard/index.js +1 -1
- package/dist/handlers/subscriptions/SUBSCRIPTION_CREATE.d.ts.map +1 -1
- package/dist/handlers/subscriptions/SUBSCRIPTION_CREATE.js +1 -1
- package/dist/handlers/subscriptions/SUBSCRIPTION_DELETE.d.ts.map +1 -1
- package/dist/handlers/subscriptions/SUBSCRIPTION_DELETE.js +1 -1
- package/dist/handlers/subscriptions/SUBSCRIPTION_UPDATE.d.ts.map +1 -1
- package/dist/handlers/subscriptions/SUBSCRIPTION_UPDATE.js +1 -1
- package/dist/handlers/subscriptions/index.d.ts.map +1 -1
- package/dist/handlers/subscriptions/index.js +1 -1
- package/dist/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts +1 -1
- package/dist/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts.map +1 -1
- package/dist/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.js +1 -1
- package/dist/handlers/voice/VOICE_SERVER_UPDATE.d.ts +1 -1
- package/dist/handlers/voice/VOICE_SERVER_UPDATE.d.ts.map +1 -1
- package/dist/handlers/voice/VOICE_SERVER_UPDATE.js +1 -1
- package/dist/handlers/voice/VOICE_STATE_UPDATE.d.ts +1 -1
- package/dist/handlers/voice/VOICE_STATE_UPDATE.d.ts.map +1 -1
- package/dist/handlers/voice/VOICE_STATE_UPDATE.js +2 -5
- package/dist/handlers/voice/index.d.ts.map +1 -1
- package/dist/handlers/voice/index.js +1 -1
- package/dist/handlers/webhooks/WEBHOOKS_UPDATE.d.ts +1 -1
- package/dist/handlers/webhooks/WEBHOOKS_UPDATE.d.ts.map +1 -1
- package/dist/handlers/webhooks/WEBHOOKS_UPDATE.js +1 -1
- package/dist/handlers/webhooks/index.d.ts.map +1 -1
- package/dist/handlers/webhooks/index.js +1 -1
- package/dist/handlers.d.ts +3 -1
- package/dist/handlers.d.ts.map +1 -1
- package/dist/handlers.js +78 -75
- package/dist/helpers.d.ts +47 -42
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +14 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/transformers/activity.d.ts +3 -1
- package/dist/transformers/activity.d.ts.map +1 -1
- package/dist/transformers/activity.js +2 -1
- package/dist/transformers/application.d.ts +3 -1
- package/dist/transformers/application.d.ts.map +1 -1
- package/dist/transformers/application.js +3 -2
- package/dist/transformers/applicationCommand.d.ts +2 -1
- package/dist/transformers/applicationCommand.d.ts.map +1 -1
- package/dist/transformers/applicationCommand.js +1 -1
- package/dist/transformers/applicationCommandOption.d.ts +2 -1
- package/dist/transformers/applicationCommandOption.d.ts.map +1 -1
- package/dist/transformers/applicationCommandOption.js +1 -1
- package/dist/transformers/applicationCommandOptionChoice.d.ts +2 -1
- package/dist/transformers/applicationCommandOptionChoice.d.ts.map +1 -1
- package/dist/transformers/applicationCommandOptionChoice.js +1 -1
- package/dist/transformers/applicationCommandPermission.d.ts +2 -1
- package/dist/transformers/applicationCommandPermission.d.ts.map +1 -1
- package/dist/transformers/applicationCommandPermission.js +1 -1
- package/dist/transformers/attachment.d.ts +1 -1
- package/dist/transformers/attachment.d.ts.map +1 -1
- package/dist/transformers/attachment.js +1 -1
- package/dist/transformers/auditLogEntry.d.ts +2 -1
- package/dist/transformers/auditLogEntry.d.ts.map +1 -1
- package/dist/transformers/auditLogEntry.js +3 -2
- package/dist/transformers/automodActionExecution.d.ts +2 -1
- package/dist/transformers/automodActionExecution.d.ts.map +1 -1
- package/dist/transformers/automodActionExecution.js +1 -1
- package/dist/transformers/automodRule.d.ts +2 -1
- package/dist/transformers/automodRule.d.ts.map +1 -1
- package/dist/transformers/automodRule.js +3 -2
- package/dist/transformers/avatarDecorationData.d.ts +3 -1
- package/dist/transformers/avatarDecorationData.d.ts.map +1 -1
- package/dist/transformers/avatarDecorationData.js +2 -2
- package/dist/transformers/channel.d.ts +2 -1
- package/dist/transformers/channel.d.ts.map +1 -1
- package/dist/transformers/channel.js +4 -4
- package/dist/transformers/component.d.ts +4 -3
- package/dist/transformers/component.d.ts.map +1 -1
- package/dist/transformers/component.js +75 -29
- package/dist/transformers/embed.d.ts +2 -1
- package/dist/transformers/embed.d.ts.map +1 -1
- package/dist/transformers/embed.js +1 -1
- package/dist/transformers/emoji.d.ts +2 -1
- package/dist/transformers/emoji.d.ts.map +1 -1
- package/dist/transformers/emoji.js +1 -1
- package/dist/transformers/entitlement.d.ts +2 -1
- package/dist/transformers/entitlement.d.ts.map +1 -1
- package/dist/transformers/entitlement.js +1 -1
- package/dist/transformers/gatewayBot.d.ts +2 -1
- package/dist/transformers/gatewayBot.d.ts.map +1 -1
- package/dist/transformers/gatewayBot.js +1 -1
- package/dist/transformers/guild.d.ts +2 -1
- package/dist/transformers/guild.d.ts.map +1 -1
- package/dist/transformers/guild.js +1 -1
- package/dist/transformers/incidentsData.d.ts +2 -1
- package/dist/transformers/incidentsData.d.ts.map +1 -1
- package/dist/transformers/incidentsData.js +1 -1
- package/dist/transformers/index.d.ts.map +1 -1
- package/dist/transformers/index.js +1 -1
- package/dist/transformers/integration.d.ts +2 -1
- package/dist/transformers/integration.d.ts.map +1 -1
- package/dist/transformers/integration.js +2 -2
- package/dist/transformers/interaction.d.ts +4 -2
- package/dist/transformers/interaction.d.ts.map +1 -1
- package/dist/transformers/interaction.js +33 -20
- package/dist/transformers/invite.d.ts +2 -1
- package/dist/transformers/invite.d.ts.map +1 -1
- package/dist/transformers/invite.js +4 -7
- package/dist/transformers/lobby.d.ts +2 -1
- package/dist/transformers/lobby.d.ts.map +1 -1
- package/dist/transformers/lobby.js +2 -2
- package/dist/transformers/member.d.ts.map +1 -1
- package/dist/transformers/member.js +1 -1
- package/dist/transformers/message.d.ts +2 -1
- package/dist/transformers/message.d.ts.map +1 -1
- package/dist/transformers/message.js +2 -2
- package/dist/transformers/onboarding.d.ts +2 -1
- package/dist/transformers/onboarding.d.ts.map +1 -1
- package/dist/transformers/onboarding.js +1 -1
- package/dist/transformers/poll.d.ts +2 -1
- package/dist/transformers/poll.d.ts.map +1 -1
- package/dist/transformers/poll.js +1 -1
- package/dist/transformers/presence.d.ts +2 -1
- package/dist/transformers/presence.d.ts.map +1 -1
- package/dist/transformers/presence.js +1 -1
- package/dist/transformers/reverse/activity.d.ts +3 -1
- package/dist/transformers/reverse/activity.d.ts.map +1 -1
- package/dist/transformers/reverse/activity.js +1 -1
- package/dist/transformers/reverse/allowedMentions.d.ts +2 -1
- package/dist/transformers/reverse/allowedMentions.d.ts.map +1 -1
- package/dist/transformers/reverse/allowedMentions.js +1 -1
- package/dist/transformers/reverse/application.d.ts +3 -1
- package/dist/transformers/reverse/application.d.ts.map +1 -1
- package/dist/transformers/reverse/application.js +2 -2
- package/dist/transformers/reverse/applicationCommand.d.ts +3 -1
- package/dist/transformers/reverse/applicationCommand.d.ts.map +1 -1
- package/dist/transformers/reverse/applicationCommand.js +1 -1
- package/dist/transformers/reverse/applicationCommandOption.d.ts +3 -1
- package/dist/transformers/reverse/applicationCommandOption.d.ts.map +1 -1
- package/dist/transformers/reverse/applicationCommandOption.js +1 -1
- package/dist/transformers/reverse/applicationCommandOptionChoice.d.ts +3 -1
- package/dist/transformers/reverse/applicationCommandOptionChoice.d.ts.map +1 -1
- package/dist/transformers/reverse/applicationCommandOptionChoice.js +1 -1
- package/dist/transformers/reverse/applicationCommandPermission.d.ts +3 -1
- package/dist/transformers/reverse/applicationCommandPermission.d.ts.map +1 -1
- package/dist/transformers/reverse/applicationCommandPermission.js +1 -1
- package/dist/transformers/reverse/attachment.d.ts +2 -1
- package/dist/transformers/reverse/attachment.d.ts.map +1 -1
- package/dist/transformers/reverse/attachment.js +1 -1
- package/dist/transformers/reverse/auditLogEntry.d.ts +2 -1
- package/dist/transformers/reverse/auditLogEntry.d.ts.map +1 -1
- package/dist/transformers/reverse/auditLogEntry.js +3 -2
- package/dist/transformers/reverse/component.d.ts +4 -3
- package/dist/transformers/reverse/component.d.ts.map +1 -1
- package/dist/transformers/reverse/component.js +34 -2
- package/dist/transformers/reverse/embed.d.ts +2 -1
- package/dist/transformers/reverse/embed.d.ts.map +1 -1
- package/dist/transformers/reverse/embed.js +1 -1
- package/dist/transformers/reverse/emoji.d.ts +2 -1
- package/dist/transformers/reverse/emoji.d.ts.map +1 -1
- package/dist/transformers/reverse/emoji.js +1 -1
- package/dist/transformers/reverse/gatewayBot.d.ts.map +1 -1
- package/dist/transformers/reverse/gatewayBot.js +1 -1
- package/dist/transformers/reverse/index.d.ts.map +1 -1
- package/dist/transformers/reverse/index.js +1 -1
- package/dist/transformers/reverse/member.d.ts.map +1 -1
- package/dist/transformers/reverse/member.js +1 -1
- package/dist/transformers/reverse/presence.d.ts +2 -1
- package/dist/transformers/reverse/presence.d.ts.map +1 -1
- package/dist/transformers/reverse/presence.js +1 -1
- package/dist/transformers/reverse/team.d.ts +2 -1
- package/dist/transformers/reverse/team.d.ts.map +1 -1
- package/dist/transformers/reverse/team.js +2 -2
- package/dist/transformers/reverse/widgetSettings.d.ts +2 -1
- package/dist/transformers/reverse/widgetSettings.d.ts.map +1 -1
- package/dist/transformers/reverse/widgetSettings.js +1 -1
- package/dist/transformers/role.d.ts +2 -1
- package/dist/transformers/role.d.ts.map +1 -1
- package/dist/transformers/role.js +3 -2
- package/dist/transformers/scheduledEvent.d.ts +2 -1
- package/dist/transformers/scheduledEvent.d.ts.map +1 -1
- package/dist/transformers/scheduledEvent.js +2 -2
- package/dist/transformers/sku.d.ts +2 -1
- package/dist/transformers/sku.d.ts.map +1 -1
- package/dist/transformers/sku.js +1 -1
- package/dist/transformers/soundboardSound.d.ts +2 -1
- package/dist/transformers/soundboardSound.d.ts.map +1 -1
- package/dist/transformers/soundboardSound.js +1 -1
- package/dist/transformers/stageInstance.d.ts +2 -1
- package/dist/transformers/stageInstance.d.ts.map +1 -1
- package/dist/transformers/stageInstance.js +1 -1
- package/dist/transformers/stageInviteInstance.d.ts +2 -1
- package/dist/transformers/stageInviteInstance.d.ts.map +1 -1
- package/dist/transformers/stageInviteInstance.js +1 -1
- package/dist/transformers/sticker.d.ts +2 -1
- package/dist/transformers/sticker.d.ts.map +1 -1
- package/dist/transformers/sticker.js +1 -1
- package/dist/transformers/subscription.d.ts +2 -1
- package/dist/transformers/subscription.d.ts.map +1 -1
- package/dist/transformers/subscription.js +1 -1
- package/dist/transformers/team.d.ts +2 -1
- package/dist/transformers/team.d.ts.map +1 -1
- package/dist/transformers/team.js +2 -2
- package/dist/transformers/template.d.ts +2 -1
- package/dist/transformers/template.d.ts.map +1 -1
- package/dist/transformers/template.js +1 -1
- package/dist/transformers/threadMember.d.ts +2 -1
- package/dist/transformers/threadMember.d.ts.map +1 -1
- package/dist/transformers/threadMember.js +4 -2
- package/dist/transformers/toggles/Permissions.d.ts.map +1 -1
- package/dist/transformers/toggles/Permissions.js +1 -1
- package/dist/transformers/toggles/ToggleBitfield.d.ts.map +1 -1
- package/dist/transformers/toggles/ToggleBitfield.js +1 -1
- package/dist/transformers/toggles/channel.d.ts.map +1 -1
- package/dist/transformers/toggles/channel.js +1 -1
- package/dist/transformers/toggles/emoji.d.ts.map +1 -1
- package/dist/transformers/toggles/emoji.js +1 -1
- package/dist/transformers/toggles/guild.d.ts +3 -3
- package/dist/transformers/toggles/guild.d.ts.map +1 -1
- package/dist/transformers/toggles/guild.js +3 -3
- package/dist/transformers/toggles/index.d.ts.map +1 -1
- package/dist/transformers/toggles/index.js +1 -1
- package/dist/transformers/toggles/member.d.ts +2 -2
- package/dist/transformers/toggles/member.d.ts.map +1 -1
- package/dist/transformers/toggles/member.js +2 -2
- package/dist/transformers/toggles/role.d.ts.map +1 -1
- package/dist/transformers/toggles/role.js +1 -1
- package/dist/transformers/toggles/user.d.ts.map +1 -1
- package/dist/transformers/toggles/user.js +1 -1
- package/dist/transformers/toggles/voice.d.ts.map +1 -1
- package/dist/transformers/toggles/voice.js +1 -1
- package/dist/transformers/types.d.ts +113 -17
- package/dist/transformers/types.d.ts.map +1 -1
- package/dist/transformers/types.js +1 -1
- package/dist/transformers/user.d.ts +2 -1
- package/dist/transformers/user.d.ts.map +1 -1
- package/dist/transformers/user.js +22 -4
- package/dist/transformers/voiceRegion.d.ts +2 -1
- package/dist/transformers/voiceRegion.d.ts.map +1 -1
- package/dist/transformers/voiceRegion.js +1 -1
- package/dist/transformers/voiceState.d.ts +2 -1
- package/dist/transformers/voiceState.d.ts.map +1 -1
- package/dist/transformers/voiceState.js +1 -1
- package/dist/transformers/webhook.d.ts +1 -1
- package/dist/transformers/webhook.d.ts.map +1 -1
- package/dist/transformers/webhook.js +6 -6
- package/dist/transformers/welcomeScreen.d.ts +2 -1
- package/dist/transformers/welcomeScreen.d.ts.map +1 -1
- package/dist/transformers/welcomeScreen.js +1 -1
- package/dist/transformers/widget.d.ts +2 -1
- package/dist/transformers/widget.d.ts.map +1 -1
- package/dist/transformers/widget.js +1 -1
- package/dist/transformers/widgetSettings.d.ts +2 -1
- package/dist/transformers/widgetSettings.d.ts.map +1 -1
- package/dist/transformers/widgetSettings.js +1 -1
- package/dist/transformers.d.ts +122 -216
- package/dist/transformers.d.ts.map +1 -1
- package/dist/transformers.js +57 -3
- package/package.json +22 -24
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guild.d.ts","sourceRoot":"","sources":["../../src/transformers/guild.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,YAAY,EAA8B,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"guild.d.ts","sourceRoot":"","sources":["../../src/transformers/guild.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,YAAY,EAA8B,MAAM,mBAAmB,CAAC;AAEhG,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAGrC,OAAO,KAAK,EAAW,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjD,eAAO,MAAM,SAAS,EAAE,KAgBvB,CAAC;AAEF,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,KAAK,CA+HnG"}
|
|
@@ -144,4 +144,4 @@ export function transformGuild(bot, payload, extra) {
|
|
|
144
144
|
return bot.transformers.customizers.guild(bot, payload, guild, extra);
|
|
145
145
|
}
|
|
146
146
|
|
|
147
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvZ3VpbGQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbm5lbFR5cGVzLCB0eXBlIERpc2NvcmRHdWlsZCwgdHlwZSBEaXNjb3JkUHJlc2VuY2VVcGRhdGUgfSBmcm9tICdAZGlzY29yZGVuby90eXBlcydcbmltcG9ydCB7IENvbGxlY3Rpb24sIGljb25IYXNoVG9CaWdJbnQgfSBmcm9tICdAZGlzY29yZGVuby91dGlscydcbmltcG9ydCB0eXBlIHsgQm90LCBDaGFubmVsLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLCBHdWlsZCwgU2V0dXBEZXNpcmVkUHJvcHMsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzIH0gZnJvbSAnLi4vaW5kZXguanMnXG5pbXBvcnQgeyBHdWlsZFRvZ2dsZXMgfSBmcm9tICcuL3RvZ2dsZXMvZ3VpbGQuanMnXG5cbmV4cG9ydCBjb25zdCBiYXNlR3VpbGQ6IEd1aWxkID0ge1xuICAvLyBUaGlzIGFsbG93cyB0eXBlc2NyaXB0IHRvIHN0aWxsIGNoZWNrIGZvciB0eXBlIGVycm9ycyBvbiBmdW5jdGlvbnMgYmVsb3dcbiAgLi4uKHVuZGVmaW5lZCBhcyB1bmtub3duIGFzIEd1aWxkKSxcblxuICBnZXQgdGhyZWFkcygpIHtcbiAgICBpZiAoIXRoaXMuY2hhbm5lbHMpIHJldHVybiBuZXcgQ29sbGVjdGlvbjxiaWdpbnQsIENoYW5uZWw+KClcblxuICAgIGNvbnN0IHRocmVhZHMgPSB0aGlzLmNoYW5uZWxzXG4gICAgICAuYXJyYXkoKVxuICAgICAgLmZpbHRlcigoeCkgPT4geC50eXBlID09PSBDaGFubmVsVHlwZXMuUHVibGljVGhyZWFkIHx8IHgudHlwZSA9PT0gQ2hhbm5lbFR5cGVzLlByaXZhdGVUaHJlYWQgfHwgeC50eXBlID09PSBDaGFubmVsVHlwZXMuQW5ub3VuY2VtZW50VGhyZWFkKVxuXG4gICAgcmV0dXJuIG5ldyBDb2xsZWN0aW9uKHRocmVhZHMubWFwKCh4KSA9PiBbeC5pZCwgeF0pKVxuICB9LFxuICBnZXQgZmVhdHVyZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMudG9nZ2xlcy5mZWF0dXJlc1xuICB9LFxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtR3VpbGQoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRHdWlsZCwgZXh0cmE/OiB7IHNoYXJkSWQ/OiBudW1iZXIgfSk6IEd1aWxkIHtcbiAgY29uc3QgZ3VpbGRJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpXG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5ndWlsZFxuICBjb25zdCBndWlsZDogU2V0dXBEZXNpcmVkUHJvcHM8R3VpbGQsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPiA9IE9iamVjdC5jcmVhdGUoYmFzZUd1aWxkKVxuXG4gIGlmIChwcm9wcy5hZmtUaW1lb3V0ICYmIHBheWxvYWQuYWZrX3RpbWVvdXQpIGd1aWxkLmFma1RpbWVvdXQgPSBwYXlsb2FkLmFma190aW1lb3V0XG4gIGlmIChwcm9wcy5hcHByb3hpbWF0ZU1lbWJlckNvdW50ICYmIHBheWxvYWQuYXBwcm94aW1hdGVfbWVtYmVyX2NvdW50KSBndWlsZC5hcHByb3hpbWF0ZU1lbWJlckNvdW50ID0gcGF5bG9hZC5hcHByb3hpbWF0ZV9tZW1iZXJfY291bnRcbiAgaWYgKHByb3BzLmFwcHJveGltYXRlUHJlc2VuY2VDb3VudCAmJiBwYXlsb2FkLmFwcHJveGltYXRlX3ByZXNlbmNlX2NvdW50KSBndWlsZC5hcHByb3hpbWF0ZVByZXNlbmNlQ291bnQgPSBwYXlsb2FkLmFwcHJveGltYXRlX3ByZXNlbmNlX2NvdW50XG4gIGlmIChwcm9wcy5kZWZhdWx0TWVzc2FnZU5vdGlmaWNhdGlvbnMpIGd1aWxkLmRlZmF1bHRNZXNzYWdlTm90aWZpY2F0aW9ucyA9IHBheWxvYWQuZGVmYXVsdF9tZXNzYWdlX25vdGlmaWNhdGlvbnNcbiAgaWYgKHByb3BzLmRlc2NyaXB0aW9uICYmIHBheWxvYWQuZGVzY3JpcHRpb24pIGd1aWxkLmRlc2NyaXB0aW9uID0gcGF5bG9hZC5kZXNjcmlwdGlvblxuICBpZiAocHJvcHMudG9nZ2xlcykgZ3VpbGQudG9nZ2xlcyA9IG5ldyBHdWlsZFRvZ2dsZXMocGF5bG9hZClcbiAgaWYgKHByb3BzLmV4cGxpY2l0Q29udGVudEZpbHRlcikgZ3VpbGQuZXhwbGljaXRDb250ZW50RmlsdGVyID0gcGF5bG9hZC5leHBsaWNpdF9jb250ZW50X2ZpbHRlclxuICBpZiAocHJvcHMubWF4TWVtYmVycyAmJiBwYXlsb2FkLm1heF9tZW1iZXJzKSBndWlsZC5tYXhNZW1iZXJzID0gcGF5bG9hZC5tYXhfbWVtYmVyc1xuICBpZiAocHJvcHMubWF4UHJlc2VuY2VzICYmIHBheWxvYWQubWF4X3ByZXNlbmNlcykgZ3VpbGQubWF4UHJlc2VuY2VzID0gcGF5bG9hZC5tYXhfcHJlc2VuY2VzID8/IHVuZGVmaW5lZFxuICBpZiAocHJvcHMubWF4VmlkZW9DaGFubmVsVXNlcnMgJiYgcGF5bG9hZC5tYXhfdmlkZW9fY2hhbm5lbF91c2VycykgZ3VpbGQubWF4VmlkZW9DaGFubmVsVXNlcnMgPSBwYXlsb2FkLm1heF92aWRlb19jaGFubmVsX3VzZXJzXG4gIGlmIChwcm9wcy5tYXhTdGFnZVZpZGVvQ2hhbm5lbFVzZXJzICYmIHBheWxvYWQubWF4X3N0YWdlX3ZpZGVvX2NoYW5uZWxfdXNlcnMpXG4gICAgZ3VpbGQubWF4U3RhZ2VWaWRlb0NoYW5uZWxVc2VycyA9IHBheWxvYWQubWF4X3N0YWdlX3ZpZGVvX2NoYW5uZWxfdXNlcnNcbiAgaWYgKHByb3BzLm1mYUxldmVsKSBndWlsZC5tZmFMZXZlbCA9IHBheWxvYWQubWZhX2xldmVsXG4gIGlmIChwcm9wcy5uYW1lICYmIHBheWxvYWQubmFtZSkgZ3VpbGQubmFtZSA9IHBheWxvYWQubmFtZVxuICBpZiAocHJvcHMubnNmd0xldmVsKSBndWlsZC5uc2Z3TGV2ZWwgPSBwYXlsb2FkLm5zZndfbGV2ZWxcbiAgaWYgKHByb3BzLnByZWZlcnJlZExvY2FsZSAmJiBwYXlsb2FkLnByZWZlcnJlZF9sb2NhbGUpIGd1aWxkLnByZWZlcnJlZExvY2FsZSA9IHBheWxvYWQucHJlZmVycmVkX2xvY2FsZVxuICBpZiAocHJvcHMucHJlbWl1bVN1YnNjcmlwdGlvbkNvdW50ICYmIHBheWxvYWQucHJlbWl1bV9zdWJzY3JpcHRpb25fY291bnQgIT09IHVuZGVmaW5lZClcbiAgICBndWlsZC5wcmVtaXVtU3Vic2NyaXB0aW9uQ291bnQgPSBwYXlsb2FkLnByZW1pdW1fc3Vic2NyaXB0aW9uX2NvdW50XG4gIGlmIChwcm9wcy5wcmVtaXVtVGllcikgZ3VpbGQucHJlbWl1bVRpZXIgPSBwYXlsb2FkLnByZW1pdW1fdGllclxuICBpZiAocHJvcHMuc3RhZ2VJbnN0YW5jZXMgJiYgcGF5bG9hZC5zdGFnZV9pbnN0YW5jZXMpXG4gICAgZ3VpbGQuc3RhZ2VJbnN0YW5jZXMgPSBwYXlsb2FkLnN0YWdlX2luc3RhbmNlcy5tYXAoKHNpKSA9PiAoe1xuICAgICAgLyoqIFRoZSBpZCBvZiB0aGlzIFN0YWdlIGluc3RhbmNlICovXG4gICAgICBpZDogYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uoc2kuaWQpLFxuICAgICAgLyoqIFRoZSBndWlsZCBpZCBvZiB0aGUgYXNzb2NpYXRlZCBTdGFnZSBjaGFubmVsICovXG4gICAgICBndWlsZElkLFxuICAgICAgLyoqIFRoZSBpZCBvZiB0aGUgYXNzb2NpYXRlZCBTdGFnZSBjaGFubmVsICovXG4gICAgICBjaGFubmVsSWQ6IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHNpLmNoYW5uZWxfaWQpLFxuICAgICAgLyoqIFRoZSB0b3BpYyBvZiB0aGUgU3RhZ2UgaW5zdGFuY2UgKDEtMTIwIGNoYXJhY3RlcnMpICovXG4gICAgICB0b3BpYzogc2kudG9waWMsXG4gICAgfSkpXG4gIGlmIChwcm9wcy5jaGFubmVscyAmJiAoISFwYXlsb2FkLmNoYW5uZWxzIHx8ICEhcGF5bG9hZC50aHJlYWRzKSlcbiAgICBndWlsZC5jaGFubmVscyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgWy4uLihwYXlsb2FkLmNoYW5uZWxzID8/IFtdKSwgLi4uKHBheWxvYWQudGhyZWFkcyA/PyBbXSldLm1hcCgoY2hhbm5lbCkgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBib3QudHJhbnNmb3JtZXJzLmNoYW5uZWwoYm90LCBjaGFubmVsLCB7IGd1aWxkSWQgfSlcbiAgICAgICAgLy8gVE9ETzogV2Ugc2hvdWxkIGNoZWNrIHRoYXQgaWQgZXhpc3RzLCBvciBlbHNlIHRoZSBjb2xsZWN0aW9uIHdpbGwgaGF2ZSB1bmRlZmluZWQgYXMgaXQncyBrZXkgKFRoaXMgaXMgdmFsaWQgZm9yIGFsbCB0aGUgY29sbGVjdGlvbnMgYmVsb3cgYXMgd2VsbClcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvcjogU2VlIFRPRE8gYWJvdmVcbiAgICAgICAgcmV0dXJuIFtyZXN1bHQuaWQsIHJlc3VsdF1cbiAgICAgIH0pLFxuICAgIClcbiAgaWYgKHByb3BzLm1lbWJlcnMgJiYgcGF5bG9hZC5tZW1iZXJzKVxuICAgIGd1aWxkLm1lbWJlcnMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIHBheWxvYWQubWVtYmVycy5tYXAoKG1lbWJlcikgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBib3QudHJhbnNmb3JtZXJzLm1lbWJlcihib3QsIG1lbWJlciwgeyBndWlsZElkLCB1c2VySWQ6IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKG1lbWJlci51c2VyIS5pZCkgfSlcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvcjogU2VlIFRPRE8gYWJvdmVcbiAgICAgICAgcmV0dXJuIFtyZXN1bHQuaWQsIHJlc3VsdF1cbiAgICAgIH0pLFxuICAgIClcbiAgaWYgKHByb3BzLnJvbGVzICYmIHBheWxvYWQucm9sZXMpXG4gICAgZ3VpbGQucm9sZXMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIHBheWxvYWQucm9sZXMubWFwKChyb2xlKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGJvdC50cmFuc2Zvcm1lcnMucm9sZShib3QsIHJvbGUsIHsgZ3VpbGRJZCB9KVxuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yOiBTZWUgVE9ETyBhYm92ZVxuICAgICAgICByZXR1cm4gW3Jlc3VsdC5pZCwgcmVzdWx0XVxuICAgICAgfSksXG4gICAgKVxuICBpZiAocHJvcHMuZW1vamlzICYmIHBheWxvYWQuZW1vamlzKVxuICAgIGd1aWxkLmVtb2ppcyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgcGF5bG9hZC5lbW9qaXMubWFwKChlbW9qaSkgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBib3QudHJhbnNmb3JtZXJzLmVtb2ppKGJvdCwgZW1vamkpXG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3I6IFNlZSBUT0RPIGFib3ZlXG4gICAgICAgIHJldHVybiBbcmVzdWx0LmlkISwgcmVzdWx0XVxuICAgICAgfSksXG4gICAgKVxuICBpZiAocHJvcHMudm9pY2VTdGF0ZXMgJiYgcGF5bG9hZC52b2ljZV9zdGF0ZXMpXG4gICAgZ3VpbGQudm9pY2VTdGF0ZXMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIHBheWxvYWQudm9pY2Vfc3RhdGVzLm1hcCgodm9pY2VTdGF0ZSkgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBib3QudHJhbnNmb3JtZXJzLnZvaWNlU3RhdGUoYm90LCB2b2ljZVN0YXRlLCB7IGd1aWxkSWQgfSlcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvcjogU2VlIFRPRE8gYWJvdmVcbiAgICAgICAgcmV0dXJuIFtyZXN1bHQudXNlcklkLCByZXN1bHRdXG4gICAgICB9KSxcbiAgICApXG4gIGlmIChwcm9wcy5zdGlja2VycyAmJiBwYXlsb2FkLnN0aWNrZXJzKVxuICAgIGd1aWxkLnN0aWNrZXJzID0gbmV3IENvbGxlY3Rpb24oXG4gICAgICBwYXlsb2FkLnN0aWNrZXJzPy5tYXAoKHN0aWNrZXIpID0+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYm90LnRyYW5zZm9ybWVycy5zdGlja2VyKGJvdCwgc3RpY2tlcilcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvcjogU2VlIFRPRE8gYWJvdmVcbiAgICAgICAgcmV0dXJuIFtyZXN1bHQuaWQsIHJlc3VsdF1cbiAgICAgIH0pLFxuICAgIClcbiAgaWYgKHByb3BzLnN5c3RlbUNoYW5uZWxGbGFncyAmJiBwYXlsb2FkLnN5c3RlbV9jaGFubmVsX2ZsYWdzKSBndWlsZC5zeXN0ZW1DaGFubmVsRmxhZ3MgPSBwYXlsb2FkLnN5c3RlbV9jaGFubmVsX2ZsYWdzXG4gIGlmIChwcm9wcy52YW5pdHlVcmxDb2RlICYmIHBheWxvYWQudmFuaXR5X3VybF9jb2RlKSBndWlsZC52YW5pdHlVcmxDb2RlID0gcGF5bG9hZC52YW5pdHlfdXJsX2NvZGVcbiAgaWYgKHByb3BzLnZlcmlmaWNhdGlvbkxldmVsKSBndWlsZC52ZXJpZmljYXRpb25MZXZlbCA9IHBheWxvYWQudmVyaWZpY2F0aW9uX2xldmVsXG4gIGlmIChwcm9wcy53ZWxjb21lU2NyZWVuICYmIHBheWxvYWQud2VsY29tZV9zY3JlZW4pXG4gICAgZ3VpbGQud2VsY29tZVNjcmVlbiA9IHtcbiAgICAgIGRlc2NyaXB0aW9uOiBwYXlsb2FkLndlbGNvbWVfc2NyZWVuLmRlc2NyaXB0aW9uID8/IHVuZGVmaW5lZCxcbiAgICAgIHdlbGNvbWVDaGFubmVsczogcGF5bG9hZC53ZWxjb21lX3NjcmVlbi53ZWxjb21lX2NoYW5uZWxzLm1hcCgod2MpID0+ICh7XG4gICAgICAgIGNoYW5uZWxJZDogYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uod2MuY2hhbm5lbF9pZCksXG4gICAgICAgIGRlc2NyaXB0aW9uOiB3Yy5kZXNjcmlwdGlvbixcbiAgICAgICAgZW1vamlJZDogd2MuZW1vamlfaWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZSh3Yy5lbW9qaV9pZCkgOiB1bmRlZmluZWQsXG4gICAgICAgIGVtb2ppTmFtZTogd2MuZW1vamlfbmFtZSA/PyB1bmRlZmluZWQsXG4gICAgICB9KSksXG4gICAgfVxuICBpZiAocHJvcHMuZGlzY292ZXJ5U3BsYXNoICYmIHBheWxvYWQuZGlzY292ZXJ5X3NwbGFzaCkgZ3VpbGQuZGlzY292ZXJ5U3BsYXNoID0gaWNvbkhhc2hUb0JpZ0ludChwYXlsb2FkLmRpc2NvdmVyeV9zcGxhc2gpXG4gIGlmIChwcm9wcy5qb2luZWRBdCAmJiBwYXlsb2FkLmpvaW5lZF9hdCkgZ3VpbGQuam9pbmVkQXQgPSBEYXRlLnBhcnNlKHBheWxvYWQuam9pbmVkX2F0KVxuICBpZiAocHJvcHMubWVtYmVyQ291bnQgJiYgcGF5bG9hZC5tZW1iZXJfY291bnQpIGd1aWxkLm1lbWJlckNvdW50ID0gcGF5bG9hZC5tZW1iZXJfY291bnQgPz8gMFxuICBpZiAocHJvcHMuc2hhcmRJZCAmJiBleHRyYT8uc2hhcmRJZCkgZ3VpbGQuc2hhcmRJZCA9IGV4dHJhLnNoYXJkSWRcbiAgaWYgKHByb3BzLmljb24gJiYgcGF5bG9hZC5pY29uKSBndWlsZC5pY29uID0gaWNvbkhhc2hUb0JpZ0ludChwYXlsb2FkLmljb24pXG4gIGlmIChwcm9wcy5iYW5uZXIgJiYgcGF5bG9hZC5iYW5uZXIpIGd1aWxkLmJhbm5lciA9IGljb25IYXNoVG9CaWdJbnQocGF5bG9hZC5iYW5uZXIpXG4gIGlmIChwcm9wcy5zcGxhc2ggJiYgcGF5bG9hZC5zcGxhc2gpIGd1aWxkLnNwbGFzaCA9IGljb25IYXNoVG9CaWdJbnQocGF5bG9hZC5zcGxhc2gpXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBndWlsZC5pZCA9IGd1aWxkSWRcbiAgaWYgKHByb3BzLm93bmVySWQgJiYgcGF5bG9hZC5vd25lcl9pZCkgZ3VpbGQub3duZXJJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQub3duZXJfaWQpXG4gIGlmIChwcm9wcy5wZXJtaXNzaW9ucyAmJiBwYXlsb2FkLnBlcm1pc3Npb25zKSBndWlsZC5wZXJtaXNzaW9ucyA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQucGVybWlzc2lvbnMpXG4gIGlmIChwcm9wcy5hZmtDaGFubmVsSWQgJiYgcGF5bG9hZC5hZmtfY2hhbm5lbF9pZCkgZ3VpbGQuYWZrQ2hhbm5lbElkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5hZmtfY2hhbm5lbF9pZClcbiAgaWYgKHByb3BzLndpZGdldENoYW5uZWxJZCAmJiBwYXlsb2FkLndpZGdldF9jaGFubmVsX2lkKSBndWlsZC53aWRnZXRDaGFubmVsSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLndpZGdldF9jaGFubmVsX2lkKVxuICBpZiAocHJvcHMuYXBwbGljYXRpb25JZCAmJiBwYXlsb2FkLmFwcGxpY2F0aW9uX2lkKSBndWlsZC5hcHBsaWNhdGlvbklkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5hcHBsaWNhdGlvbl9pZClcbiAgaWYgKHByb3BzLnN5c3RlbUNoYW5uZWxJZCAmJiBwYXlsb2FkLnN5c3RlbV9jaGFubmVsX2lkKSBndWlsZC5zeXN0ZW1DaGFubmVsSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLnN5c3RlbV9jaGFubmVsX2lkKVxuICBpZiAocHJvcHMucnVsZXNDaGFubmVsSWQgJiYgcGF5bG9hZC5ydWxlc19jaGFubmVsX2lkKSBndWlsZC5ydWxlc0NoYW5uZWxJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQucnVsZXNfY2hhbm5lbF9pZClcbiAgaWYgKHByb3BzLnB1YmxpY1VwZGF0ZXNDaGFubmVsSWQgJiYgcGF5bG9hZC5wdWJsaWNfdXBkYXRlc19jaGFubmVsX2lkKVxuICAgIGd1aWxkLnB1YmxpY1VwZGF0ZXNDaGFubmVsSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLnB1YmxpY191cGRhdGVzX2NoYW5uZWxfaWQpXG4gIGlmIChwcm9wcy5wcmVtaXVtUHJvZ3Jlc3NCYXJFbmFibGVkICYmIHBheWxvYWQucHJlbWl1bV9wcm9ncmVzc19iYXJfZW5hYmxlZCkgZ3VpbGQucHJlbWl1bVByb2dyZXNzQmFyRW5hYmxlZCA9IHBheWxvYWQucHJlbWl1bV9wcm9ncmVzc19iYXJfZW5hYmxlZFxuICBpZiAocHJvcHMubGFyZ2UgJiYgcGF5bG9hZC5sYXJnZSkgZ3VpbGQubGFyZ2UgPSBwYXlsb2FkLmxhcmdlXG4gIGlmIChwcm9wcy5vd25lciAmJiBwYXlsb2FkLm93bmVyKSBndWlsZC5vd25lciA9IHBheWxvYWQub3duZXJcbiAgaWYgKHByb3BzLndpZGdldEVuYWJsZWQgJiYgcGF5bG9hZC53aWRnZXRfZW5hYmxlZCkgZ3VpbGQud2lkZ2V0RW5hYmxlZCA9IHBheWxvYWQud2lkZ2V0X2VuYWJsZWRcbiAgaWYgKHByb3BzLnVuYXZhaWxhYmxlICYmIHBheWxvYWQudW5hdmFpbGFibGUpIGd1aWxkLnVuYXZhaWxhYmxlID0gcGF5bG9hZC51bmF2YWlsYWJsZVxuICBpZiAocHJvcHMuaWNvbkhhc2ggJiYgcGF5bG9hZC5pY29uX2hhc2gpIGd1aWxkLmljb25IYXNoID0gaWNvbkhhc2hUb0JpZ0ludChwYXlsb2FkLmljb25faGFzaClcbiAgaWYgKHByb3BzLnByZXNlbmNlcyAmJiBwYXlsb2FkLnByZXNlbmNlcylcbiAgICBndWlsZC5wcmVzZW5jZXMgPSBwYXlsb2FkLnByZXNlbmNlcz8ubWFwKChwcmVzZW5jZSkgPT4gYm90LnRyYW5zZm9ybWVycy5wcmVzZW5jZShib3QsIHByZXNlbmNlIGFzIERpc2NvcmRQcmVzZW5jZVVwZGF0ZSkpXG4gIGlmIChwcm9wcy5zYWZldHlBbGVydHNDaGFubmVsSWQgJiYgcGF5bG9hZC5zYWZldHlfYWxlcnRzX2NoYW5uZWxfaWQpXG4gICAgZ3VpbGQuc2FmZXR5QWxlcnRzQ2hhbm5lbElkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5zYWZldHlfYWxlcnRzX2NoYW5uZWxfaWQpXG4gIGlmIChwcm9wcy5pbmNpZGVudHNEYXRhICYmIHBheWxvYWQuaW5jaWRlbnRzX2RhdGEpIGd1aWxkLmluY2lkZW50c0RhdGEgPSBib3QudHJhbnNmb3JtZXJzLmluY2lkZW50c0RhdGEoYm90LCBwYXlsb2FkLmluY2lkZW50c19kYXRhKVxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLmd1aWxkKGJvdCwgcGF5bG9hZCwgZ3VpbGQsIGV4dHJhKVxufVxuIl0sIm5hbWVzIjpbIkNoYW5uZWxUeXBlcyIsIkNvbGxlY3Rpb24iLCJpY29uSGFzaFRvQmlnSW50IiwiR3VpbGRUb2dnbGVzIiwiYmFzZUd1aWxkIiwidW5kZWZpbmVkIiwidGhyZWFkcyIsImNoYW5uZWxzIiwiYXJyYXkiLCJmaWx0ZXIiLCJ4IiwidHlwZSIsIlB1YmxpY1RocmVhZCIsIlByaXZhdGVUaHJlYWQiLCJBbm5vdW5jZW1lbnRUaHJlYWQiLCJtYXAiLCJpZCIsImZlYXR1cmVzIiwidG9nZ2xlcyIsInRyYW5zZm9ybUd1aWxkIiwiYm90IiwicGF5bG9hZCIsImV4dHJhIiwiZ3VpbGRJZCIsInRyYW5zZm9ybWVycyIsInNub3dmbGFrZSIsInByb3BzIiwiZGVzaXJlZFByb3BlcnRpZXMiLCJndWlsZCIsIk9iamVjdCIsImNyZWF0ZSIsImFma1RpbWVvdXQiLCJhZmtfdGltZW91dCIsImFwcHJveGltYXRlTWVtYmVyQ291bnQiLCJhcHByb3hpbWF0ZV9tZW1iZXJfY291bnQiLCJhcHByb3hpbWF0ZVByZXNlbmNlQ291bnQiLCJhcHByb3hpbWF0ZV9wcmVzZW5jZV9jb3VudCIsImRlZmF1bHRNZXNzYWdlTm90aWZpY2F0aW9ucyIsImRlZmF1bHRfbWVzc2FnZV9ub3RpZmljYXRpb25zIiwiZGVzY3JpcHRpb24iLCJleHBsaWNpdENvbnRlbnRGaWx0ZXIiLCJleHBsaWNpdF9jb250ZW50X2ZpbHRlciIsIm1heE1lbWJlcnMiLCJtYXhfbWVtYmVycyIsIm1heFByZXNlbmNlcyIsIm1heF9wcmVzZW5jZXMiLCJtYXhWaWRlb0NoYW5uZWxVc2VycyIsIm1heF92aWRlb19jaGFubmVsX3VzZXJzIiwibWF4U3RhZ2VWaWRlb0NoYW5uZWxVc2VycyIsIm1heF9zdGFnZV92aWRlb19jaGFubmVsX3VzZXJzIiwibWZhTGV2ZWwiLCJtZmFfbGV2ZWwiLCJuYW1lIiwibnNmd0xldmVsIiwibnNmd19sZXZlbCIsInByZWZlcnJlZExvY2FsZSIsInByZWZlcnJlZF9sb2NhbGUiLCJwcmVtaXVtU3Vic2NyaXB0aW9uQ291bnQiLCJwcmVtaXVtX3N1YnNjcmlwdGlvbl9jb3VudCIsInByZW1pdW1UaWVyIiwicHJlbWl1bV90aWVyIiwic3RhZ2VJbnN0YW5jZXMiLCJzdGFnZV9pbnN0YW5jZXMiLCJzaSIsImNoYW5uZWxJZCIsImNoYW5uZWxfaWQiLCJ0b3BpYyIsImNoYW5uZWwiLCJyZXN1bHQiLCJtZW1iZXJzIiwibWVtYmVyIiwidXNlcklkIiwidXNlciIsInJvbGVzIiwicm9sZSIsImVtb2ppcyIsImVtb2ppIiwidm9pY2VTdGF0ZXMiLCJ2b2ljZV9zdGF0ZXMiLCJ2b2ljZVN0YXRlIiwic3RpY2tlcnMiLCJzdGlja2VyIiwic3lzdGVtQ2hhbm5lbEZsYWdzIiwic3lzdGVtX2NoYW5uZWxfZmxhZ3MiLCJ2YW5pdHlVcmxDb2RlIiwidmFuaXR5X3VybF9jb2RlIiwidmVyaWZpY2F0aW9uTGV2ZWwiLCJ2ZXJpZmljYXRpb25fbGV2ZWwiLCJ3ZWxjb21lU2NyZWVuIiwid2VsY29tZV9zY3JlZW4iLCJ3ZWxjb21lQ2hhbm5lbHMiLCJ3ZWxjb21lX2NoYW5uZWxzIiwid2MiLCJlbW9qaUlkIiwiZW1vamlfaWQiLCJlbW9qaU5hbWUiLCJlbW9qaV9uYW1lIiwiZGlzY292ZXJ5U3BsYXNoIiwiZGlzY292ZXJ5X3NwbGFzaCIsImpvaW5lZEF0Iiwiam9pbmVkX2F0IiwiRGF0ZSIsInBhcnNlIiwibWVtYmVyQ291bnQiLCJtZW1iZXJfY291bnQiLCJzaGFyZElkIiwiaWNvbiIsImJhbm5lciIsInNwbGFzaCIsIm93bmVySWQiLCJvd25lcl9pZCIsInBlcm1pc3Npb25zIiwiYWZrQ2hhbm5lbElkIiwiYWZrX2NoYW5uZWxfaWQiLCJ3aWRnZXRDaGFubmVsSWQiLCJ3aWRnZXRfY2hhbm5lbF9pZCIsImFwcGxpY2F0aW9uSWQiLCJhcHBsaWNhdGlvbl9pZCIsInN5c3RlbUNoYW5uZWxJZCIsInN5c3RlbV9jaGFubmVsX2lkIiwicnVsZXNDaGFubmVsSWQiLCJydWxlc19jaGFubmVsX2lkIiwicHVibGljVXBkYXRlc0NoYW5uZWxJZCIsInB1YmxpY191cGRhdGVzX2NoYW5uZWxfaWQiLCJwcmVtaXVtUHJvZ3Jlc3NCYXJFbmFibGVkIiwicHJlbWl1bV9wcm9ncmVzc19iYXJfZW5hYmxlZCIsImxhcmdlIiwib3duZXIiLCJ3aWRnZXRFbmFibGVkIiwid2lkZ2V0X2VuYWJsZWQiLCJ1bmF2YWlsYWJsZSIsImljb25IYXNoIiwiaWNvbl9oYXNoIiwicHJlc2VuY2VzIiwicHJlc2VuY2UiLCJzYWZldHlBbGVydHNDaGFubmVsSWQiLCJzYWZldHlfYWxlcnRzX2NoYW5uZWxfaWQiLCJpbmNpZGVudHNEYXRhIiwiaW5jaWRlbnRzX2RhdGEiLCJjdXN0b21pemVycyJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsWUFBWSxRQUF1RCxvQkFBbUI7QUFDL0YsU0FBU0MsVUFBVSxFQUFFQyxnQkFBZ0IsUUFBUSxvQkFBbUI7QUFFaEUsU0FBU0MsWUFBWSxRQUFRLHFCQUFvQjtBQUVqRCxPQUFPLE1BQU1DLFlBQW1CO0lBQzlCLDJFQUEyRTtJQUMzRSxHQUFJQyxTQUFTO0lBRWIsSUFBSUMsV0FBVTtRQUNaLElBQUksQ0FBQyxJQUFJLENBQUNDLFFBQVEsRUFBRSxPQUFPLElBQUlOO1FBRS9CLE1BQU1LLFVBQVUsSUFBSSxDQUFDQyxRQUFRLENBQzFCQyxLQUFLLEdBQ0xDLE1BQU0sQ0FBQyxDQUFDQyxJQUFNQSxFQUFFQyxJQUFJLEtBQUtYLGFBQWFZLFlBQVksSUFBSUYs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
|
|
147
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvZ3VpbGQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbm5lbFR5cGVzLCB0eXBlIERpc2NvcmRHdWlsZCwgdHlwZSBEaXNjb3JkUHJlc2VuY2VVcGRhdGUgfSBmcm9tICdAZGlzY29yZGVuby90eXBlcyc7XG5pbXBvcnQgeyBDb2xsZWN0aW9uLCBpY29uSGFzaFRvQmlnSW50IH0gZnJvbSAnQGRpc2NvcmRlbm8vdXRpbHMnO1xuaW1wb3J0IHR5cGUgeyBCb3QgfSBmcm9tICcuLi9ib3QuanMnO1xuaW1wb3J0IHR5cGUgeyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLCBTZXR1cERlc2lyZWRQcm9wcywgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMgfSBmcm9tICcuLi9kZXNpcmVkUHJvcGVydGllcy5qcyc7XG5pbXBvcnQgeyBHdWlsZFRvZ2dsZXMgfSBmcm9tICcuL3RvZ2dsZXMvZ3VpbGQuanMnO1xuaW1wb3J0IHR5cGUgeyBDaGFubmVsLCBHdWlsZCB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG5leHBvcnQgY29uc3QgYmFzZUd1aWxkOiBHdWlsZCA9IHtcbiAgLy8gVGhpcyBhbGxvd3MgdHlwZXNjcmlwdCB0byBzdGlsbCBjaGVjayBmb3IgdHlwZSBlcnJvcnMgb24gZnVuY3Rpb25zIGJlbG93XG4gIC4uLih1bmRlZmluZWQgYXMgdW5rbm93biBhcyBHdWlsZCksXG5cbiAgZ2V0IHRocmVhZHMoKSB7XG4gICAgaWYgKCF0aGlzLmNoYW5uZWxzKSByZXR1cm4gbmV3IENvbGxlY3Rpb248YmlnaW50LCBDaGFubmVsPigpO1xuXG4gICAgY29uc3QgdGhyZWFkcyA9IHRoaXMuY2hhbm5lbHNcbiAgICAgIC5hcnJheSgpXG4gICAgICAuZmlsdGVyKCh4KSA9PiB4LnR5cGUgPT09IENoYW5uZWxUeXBlcy5QdWJsaWNUaHJlYWQgfHwgeC50eXBlID09PSBDaGFubmVsVHlwZXMuUHJpdmF0ZVRocmVhZCB8fCB4LnR5cGUgPT09IENoYW5uZWxUeXBlcy5Bbm5vdW5jZW1lbnRUaHJlYWQpO1xuXG4gICAgcmV0dXJuIG5ldyBDb2xsZWN0aW9uKHRocmVhZHMubWFwKCh4KSA9PiBbeC5pZCwgeF0pKTtcbiAgfSxcbiAgZ2V0IGZlYXR1cmVzKCkge1xuICAgIHJldHVybiB0aGlzLnRvZ2dsZXMuZmVhdHVyZXM7XG4gIH0sXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtR3VpbGQoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRHdWlsZCwgZXh0cmE/OiB7IHNoYXJkSWQ/OiBudW1iZXIgfSk6IEd1aWxkIHtcbiAgY29uc3QgZ3VpbGRJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpO1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuZ3VpbGQ7XG4gIGNvbnN0IGd1aWxkOiBTZXR1cERlc2lyZWRQcm9wczxHdWlsZCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+ID0gT2JqZWN0LmNyZWF0ZShiYXNlR3VpbGQpO1xuXG4gIGlmIChwcm9wcy5hZmtUaW1lb3V0ICYmIHBheWxvYWQuYWZrX3RpbWVvdXQpIGd1aWxkLmFma1RpbWVvdXQgPSBwYXlsb2FkLmFma190aW1lb3V0O1xuICBpZiAocHJvcHMuYXBwcm94aW1hdGVNZW1iZXJDb3VudCAmJiBwYXlsb2FkLmFwcHJveGltYXRlX21lbWJlcl9jb3VudCkgZ3VpbGQuYXBwcm94aW1hdGVNZW1iZXJDb3VudCA9IHBheWxvYWQuYXBwcm94aW1hdGVfbWVtYmVyX2NvdW50O1xuICBpZiAocHJvcHMuYXBwcm94aW1hdGVQcmVzZW5jZUNvdW50ICYmIHBheWxvYWQuYXBwcm94aW1hdGVfcHJlc2VuY2VfY291bnQpIGd1aWxkLmFwcHJveGltYXRlUHJlc2VuY2VDb3VudCA9IHBheWxvYWQuYXBwcm94aW1hdGVfcHJlc2VuY2VfY291bnQ7XG4gIGlmIChwcm9wcy5kZWZhdWx0TWVzc2FnZU5vdGlmaWNhdGlvbnMpIGd1aWxkLmRlZmF1bHRNZXNzYWdlTm90aWZpY2F0aW9ucyA9IHBheWxvYWQuZGVmYXVsdF9tZXNzYWdlX25vdGlmaWNhdGlvbnM7XG4gIGlmIChwcm9wcy5kZXNjcmlwdGlvbiAmJiBwYXlsb2FkLmRlc2NyaXB0aW9uKSBndWlsZC5kZXNjcmlwdGlvbiA9IHBheWxvYWQuZGVzY3JpcHRpb247XG4gIGlmIChwcm9wcy50b2dnbGVzKSBndWlsZC50b2dnbGVzID0gbmV3IEd1aWxkVG9nZ2xlcyhwYXlsb2FkKTtcbiAgaWYgKHByb3BzLmV4cGxpY2l0Q29udGVudEZpbHRlcikgZ3VpbGQuZXhwbGljaXRDb250ZW50RmlsdGVyID0gcGF5bG9hZC5leHBsaWNpdF9jb250ZW50X2ZpbHRlcjtcbiAgaWYgKHByb3BzLm1heE1lbWJlcnMgJiYgcGF5bG9hZC5tYXhfbWVtYmVycykgZ3VpbGQubWF4TWVtYmVycyA9IHBheWxvYWQubWF4X21lbWJlcnM7XG4gIGlmIChwcm9wcy5tYXhQcmVzZW5jZXMgJiYgcGF5bG9hZC5tYXhfcHJlc2VuY2VzKSBndWlsZC5tYXhQcmVzZW5jZXMgPSBwYXlsb2FkLm1heF9wcmVzZW5jZXMgPz8gdW5kZWZpbmVkO1xuICBpZiAocHJvcHMubWF4VmlkZW9DaGFubmVsVXNlcnMgJiYgcGF5bG9hZC5tYXhfdmlkZW9fY2hhbm5lbF91c2VycykgZ3VpbGQubWF4VmlkZW9DaGFubmVsVXNlcnMgPSBwYXlsb2FkLm1heF92aWRlb19jaGFubmVsX3VzZXJzO1xuICBpZiAocHJvcHMubWF4U3RhZ2VWaWRlb0NoYW5uZWxVc2VycyAmJiBwYXlsb2FkLm1heF9zdGFnZV92aWRlb19jaGFubmVsX3VzZXJzKVxuICAgIGd1aWxkLm1heFN0YWdlVmlkZW9DaGFubmVsVXNlcnMgPSBwYXlsb2FkLm1heF9zdGFnZV92aWRlb19jaGFubmVsX3VzZXJzO1xuICBpZiAocHJvcHMubWZhTGV2ZWwpIGd1aWxkLm1mYUxldmVsID0gcGF5bG9hZC5tZmFfbGV2ZWw7XG4gIGlmIChwcm9wcy5uYW1lICYmIHBheWxvYWQubmFtZSkgZ3VpbGQubmFtZSA9IHBheWxvYWQubmFtZTtcbiAgaWYgKHByb3BzLm5zZndMZXZlbCkgZ3VpbGQubnNmd0xldmVsID0gcGF5bG9hZC5uc2Z3X2xldmVsO1xuICBpZiAocHJvcHMucHJlZmVycmVkTG9jYWxlICYmIHBheWxvYWQucHJlZmVycmVkX2xvY2FsZSkgZ3VpbGQucHJlZmVycmVkTG9jYWxlID0gcGF5bG9hZC5wcmVmZXJyZWRfbG9jYWxlO1xuICBpZiAocHJvcHMucHJlbWl1bVN1YnNjcmlwdGlvbkNvdW50ICYmIHBheWxvYWQucHJlbWl1bV9zdWJzY3JpcHRpb25fY291bnQgIT09IHVuZGVmaW5lZClcbiAgICBndWlsZC5wcmVtaXVtU3Vic2NyaXB0aW9uQ291bnQgPSBwYXlsb2FkLnByZW1pdW1fc3Vic2NyaXB0aW9uX2NvdW50O1xuICBpZiAocHJvcHMucHJlbWl1bVRpZXIpIGd1aWxkLnByZW1pdW1UaWVyID0gcGF5bG9hZC5wcmVtaXVtX3RpZXI7XG4gIGlmIChwcm9wcy5zdGFnZUluc3RhbmNlcyAmJiBwYXlsb2FkLnN0YWdlX2luc3RhbmNlcylcbiAgICBndWlsZC5zdGFnZUluc3RhbmNlcyA9IHBheWxvYWQuc3RhZ2VfaW5zdGFuY2VzLm1hcCgoc2kpID0+ICh7XG4gICAgICAvKiogVGhlIGlkIG9mIHRoaXMgU3RhZ2UgaW5zdGFuY2UgKi9cbiAgICAgIGlkOiBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShzaS5pZCksXG4gICAgICAvKiogVGhlIGd1aWxkIGlkIG9mIHRoZSBhc3NvY2lhdGVkIFN0YWdlIGNoYW5uZWwgKi9cbiAgICAgIGd1aWxkSWQsXG4gICAgICAvKiogVGhlIGlkIG9mIHRoZSBhc3NvY2lhdGVkIFN0YWdlIGNoYW5uZWwgKi9cbiAgICAgIGNoYW5uZWxJZDogYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uoc2kuY2hhbm5lbF9pZCksXG4gICAgICAvKiogVGhlIHRvcGljIG9mIHRoZSBTdGFnZSBpbnN0YW5jZSAoMS0xMjAgY2hhcmFjdGVycykgKi9cbiAgICAgIHRvcGljOiBzaS50b3BpYyxcbiAgICB9KSk7XG4gIGlmIChwcm9wcy5jaGFubmVscyAmJiAoISFwYXlsb2FkLmNoYW5uZWxzIHx8ICEhcGF5bG9hZC50aHJlYWRzKSlcbiAgICBndWlsZC5jaGFubmVscyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgWy4uLihwYXlsb2FkLmNoYW5uZWxzID8/IFtdKSwgLi4uKHBheWxvYWQudGhyZWFkcyA/PyBbXSldLm1hcCgoY2hhbm5lbCkgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBib3QudHJhbnNmb3JtZXJzLmNoYW5uZWwoYm90LCBjaGFubmVsLCB7IGd1aWxkSWQgfSk7XG4gICAgICAgIC8vIFRPRE86IFdlIHNob3VsZCBjaGVjayB0aGF0IGlkIGV4aXN0cywgb3IgZWxzZSB0aGUgY29sbGVjdGlvbiB3aWxsIGhhdmUgdW5kZWZpbmVkIGFzIGl0J3Mga2V5IChUaGlzIGlzIHZhbGlkIGZvciBhbGwgdGhlIGNvbGxlY3Rpb25zIGJlbG93IGFzIHdlbGwpXG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3I6IFNlZSBUT0RPIGFib3ZlXG4gICAgICAgIHJldHVybiBbcmVzdWx0LmlkLCByZXN1bHRdO1xuICAgICAgfSksXG4gICAgKTtcbiAgaWYgKHByb3BzLm1lbWJlcnMgJiYgcGF5bG9hZC5tZW1iZXJzKVxuICAgIGd1aWxkLm1lbWJlcnMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIHBheWxvYWQubWVtYmVycy5tYXAoKG1lbWJlcikgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBib3QudHJhbnNmb3JtZXJzLm1lbWJlcihib3QsIG1lbWJlciwgeyBndWlsZElkLCB1c2VySWQ6IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKG1lbWJlci51c2VyIS5pZCkgfSk7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3I6IFNlZSBUT0RPIGFib3ZlXG4gICAgICAgIHJldHVybiBbcmVzdWx0LmlkLCByZXN1bHRdO1xuICAgICAgfSksXG4gICAgKTtcbiAgaWYgKHByb3BzLnJvbGVzICYmIHBheWxvYWQucm9sZXMpXG4gICAgZ3VpbGQucm9sZXMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIHBheWxvYWQucm9sZXMubWFwKChyb2xlKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGJvdC50cmFuc2Zvcm1lcnMucm9sZShib3QsIHJvbGUsIHsgZ3VpbGRJZCB9KTtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvcjogU2VlIFRPRE8gYWJvdmVcbiAgICAgICAgcmV0dXJuIFtyZXN1bHQuaWQsIHJlc3VsdF07XG4gICAgICB9KSxcbiAgICApO1xuICBpZiAocHJvcHMuZW1vamlzICYmIHBheWxvYWQuZW1vamlzKVxuICAgIGd1aWxkLmVtb2ppcyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgcGF5bG9hZC5lbW9qaXMubWFwKChlbW9qaSkgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBib3QudHJhbnNmb3JtZXJzLmVtb2ppKGJvdCwgZW1vamkpO1xuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yOiBTZWUgVE9ETyBhYm92ZVxuICAgICAgICByZXR1cm4gW3Jlc3VsdC5pZCEsIHJlc3VsdF07XG4gICAgICB9KSxcbiAgICApO1xuICBpZiAocHJvcHMudm9pY2VTdGF0ZXMgJiYgcGF5bG9hZC52b2ljZV9zdGF0ZXMpXG4gICAgZ3VpbGQudm9pY2VTdGF0ZXMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIHBheWxvYWQudm9pY2Vfc3RhdGVzLm1hcCgodm9pY2VTdGF0ZSkgPT4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBib3QudHJhbnNmb3JtZXJzLnZvaWNlU3RhdGUoYm90LCB2b2ljZVN0YXRlLCB7IGd1aWxkSWQgfSk7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3I6IFNlZSBUT0RPIGFib3ZlXG4gICAgICAgIHJldHVybiBbcmVzdWx0LnVzZXJJZCwgcmVzdWx0XTtcbiAgICAgIH0pLFxuICAgICk7XG4gIGlmIChwcm9wcy5zdGlja2VycyAmJiBwYXlsb2FkLnN0aWNrZXJzKVxuICAgIGd1aWxkLnN0aWNrZXJzID0gbmV3IENvbGxlY3Rpb24oXG4gICAgICBwYXlsb2FkLnN0aWNrZXJzPy5tYXAoKHN0aWNrZXIpID0+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYm90LnRyYW5zZm9ybWVycy5zdGlja2VyKGJvdCwgc3RpY2tlcik7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3I6IFNlZSBUT0RPIGFib3ZlXG4gICAgICAgIHJldHVybiBbcmVzdWx0LmlkLCByZXN1bHRdO1xuICAgICAgfSksXG4gICAgKTtcbiAgaWYgKHByb3BzLnN5c3RlbUNoYW5uZWxGbGFncyAmJiBwYXlsb2FkLnN5c3RlbV9jaGFubmVsX2ZsYWdzKSBndWlsZC5zeXN0ZW1DaGFubmVsRmxhZ3MgPSBwYXlsb2FkLnN5c3RlbV9jaGFubmVsX2ZsYWdzO1xuICBpZiAocHJvcHMudmFuaXR5VXJsQ29kZSAmJiBwYXlsb2FkLnZhbml0eV91cmxfY29kZSkgZ3VpbGQudmFuaXR5VXJsQ29kZSA9IHBheWxvYWQudmFuaXR5X3VybF9jb2RlO1xuICBpZiAocHJvcHMudmVyaWZpY2F0aW9uTGV2ZWwpIGd1aWxkLnZlcmlmaWNhdGlvbkxldmVsID0gcGF5bG9hZC52ZXJpZmljYXRpb25fbGV2ZWw7XG4gIGlmIChwcm9wcy53ZWxjb21lU2NyZWVuICYmIHBheWxvYWQud2VsY29tZV9zY3JlZW4pXG4gICAgZ3VpbGQud2VsY29tZVNjcmVlbiA9IHtcbiAgICAgIGRlc2NyaXB0aW9uOiBwYXlsb2FkLndlbGNvbWVfc2NyZWVuLmRlc2NyaXB0aW9uID8/IHVuZGVmaW5lZCxcbiAgICAgIHdlbGNvbWVDaGFubmVsczogcGF5bG9hZC53ZWxjb21lX3NjcmVlbi53ZWxjb21lX2NoYW5uZWxzLm1hcCgod2MpID0+ICh7XG4gICAgICAgIGNoYW5uZWxJZDogYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uod2MuY2hhbm5lbF9pZCksXG4gICAgICAgIGRlc2NyaXB0aW9uOiB3Yy5kZXNjcmlwdGlvbixcbiAgICAgICAgZW1vamlJZDogd2MuZW1vamlfaWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZSh3Yy5lbW9qaV9pZCkgOiB1bmRlZmluZWQsXG4gICAgICAgIGVtb2ppTmFtZTogd2MuZW1vamlfbmFtZSA/PyB1bmRlZmluZWQsXG4gICAgICB9KSksXG4gICAgfTtcbiAgaWYgKHByb3BzLmRpc2NvdmVyeVNwbGFzaCAmJiBwYXlsb2FkLmRpc2NvdmVyeV9zcGxhc2gpIGd1aWxkLmRpc2NvdmVyeVNwbGFzaCA9IGljb25IYXNoVG9CaWdJbnQocGF5bG9hZC5kaXNjb3Zlcnlfc3BsYXNoKTtcbiAgaWYgKHByb3BzLmpvaW5lZEF0ICYmIHBheWxvYWQuam9pbmVkX2F0KSBndWlsZC5qb2luZWRBdCA9IERhdGUucGFyc2UocGF5bG9hZC5qb2luZWRfYXQpO1xuICBpZiAocHJvcHMubWVtYmVyQ291bnQgJiYgcGF5bG9hZC5tZW1iZXJfY291bnQpIGd1aWxkLm1lbWJlckNvdW50ID0gcGF5bG9hZC5tZW1iZXJfY291bnQgPz8gMDtcbiAgaWYgKHByb3BzLnNoYXJkSWQgJiYgZXh0cmE/LnNoYXJkSWQpIGd1aWxkLnNoYXJkSWQgPSBleHRyYS5zaGFyZElkO1xuICBpZiAocHJvcHMuaWNvbiAmJiBwYXlsb2FkLmljb24pIGd1aWxkLmljb24gPSBpY29uSGFzaFRvQmlnSW50KHBheWxvYWQuaWNvbik7XG4gIGlmIChwcm9wcy5iYW5uZXIgJiYgcGF5bG9hZC5iYW5uZXIpIGd1aWxkLmJhbm5lciA9IGljb25IYXNoVG9CaWdJbnQocGF5bG9hZC5iYW5uZXIpO1xuICBpZiAocHJvcHMuc3BsYXNoICYmIHBheWxvYWQuc3BsYXNoKSBndWlsZC5zcGxhc2ggPSBpY29uSGFzaFRvQmlnSW50KHBheWxvYWQuc3BsYXNoKTtcbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIGd1aWxkLmlkID0gZ3VpbGRJZDtcbiAgaWYgKHByb3BzLm93bmVySWQgJiYgcGF5bG9hZC5vd25lcl9pZCkgZ3VpbGQub3duZXJJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQub3duZXJfaWQpO1xuICBpZiAocHJvcHMucGVybWlzc2lvbnMgJiYgcGF5bG9hZC5wZXJtaXNzaW9ucykgZ3VpbGQucGVybWlzc2lvbnMgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLnBlcm1pc3Npb25zKTtcbiAgaWYgKHByb3BzLmFma0NoYW5uZWxJZCAmJiBwYXlsb2FkLmFma19jaGFubmVsX2lkKSBndWlsZC5hZmtDaGFubmVsSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmFma19jaGFubmVsX2lkKTtcbiAgaWYgKHByb3BzLndpZGdldENoYW5uZWxJZCAmJiBwYXlsb2FkLndpZGdldF9jaGFubmVsX2lkKSBndWlsZC53aWRnZXRDaGFubmVsSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLndpZGdldF9jaGFubmVsX2lkKTtcbiAgaWYgKHByb3BzLmFwcGxpY2F0aW9uSWQgJiYgcGF5bG9hZC5hcHBsaWNhdGlvbl9pZCkgZ3VpbGQuYXBwbGljYXRpb25JZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuYXBwbGljYXRpb25faWQpO1xuICBpZiAocHJvcHMuc3lzdGVtQ2hhbm5lbElkICYmIHBheWxvYWQuc3lzdGVtX2NoYW5uZWxfaWQpIGd1aWxkLnN5c3RlbUNoYW5uZWxJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuc3lzdGVtX2NoYW5uZWxfaWQpO1xuICBpZiAocHJvcHMucnVsZXNDaGFubmVsSWQgJiYgcGF5bG9hZC5ydWxlc19jaGFubmVsX2lkKSBndWlsZC5ydWxlc0NoYW5uZWxJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQucnVsZXNfY2hhbm5lbF9pZCk7XG4gIGlmIChwcm9wcy5wdWJsaWNVcGRhdGVzQ2hhbm5lbElkICYmIHBheWxvYWQucHVibGljX3VwZGF0ZXNfY2hhbm5lbF9pZClcbiAgICBndWlsZC5wdWJsaWNVcGRhdGVzQ2hhbm5lbElkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5wdWJsaWNfdXBkYXRlc19jaGFubmVsX2lkKTtcbiAgaWYgKHByb3BzLnByZW1pdW1Qcm9ncmVzc0JhckVuYWJsZWQgJiYgcGF5bG9hZC5wcmVtaXVtX3Byb2dyZXNzX2Jhcl9lbmFibGVkKSBndWlsZC5wcmVtaXVtUHJvZ3Jlc3NCYXJFbmFibGVkID0gcGF5bG9hZC5wcmVtaXVtX3Byb2dyZXNzX2Jhcl9lbmFibGVkO1xuICBpZiAocHJvcHMubGFyZ2UgJiYgcGF5bG9hZC5sYXJnZSkgZ3VpbGQubGFyZ2UgPSBwYXlsb2FkLmxhcmdlO1xuICBpZiAocHJvcHMub3duZXIgJiYgcGF5bG9hZC5vd25lcikgZ3VpbGQub3duZXIgPSBwYXlsb2FkLm93bmVyO1xuICBpZiAocHJvcHMud2lkZ2V0RW5hYmxlZCAmJiBwYXlsb2FkLndpZGdldF9lbmFibGVkKSBndWlsZC53aWRnZXRFbmFibGVkID0gcGF5bG9hZC53aWRnZXRfZW5hYmxlZDtcbiAgaWYgKHByb3BzLnVuYXZhaWxhYmxlICYmIHBheWxvYWQudW5hdmFpbGFibGUpIGd1aWxkLnVuYXZhaWxhYmxlID0gcGF5bG9hZC51bmF2YWlsYWJsZTtcbiAgaWYgKHByb3BzLmljb25IYXNoICYmIHBheWxvYWQuaWNvbl9oYXNoKSBndWlsZC5pY29uSGFzaCA9IGljb25IYXNoVG9CaWdJbnQocGF5bG9hZC5pY29uX2hhc2gpO1xuICBpZiAocHJvcHMucHJlc2VuY2VzICYmIHBheWxvYWQucHJlc2VuY2VzKVxuICAgIGd1aWxkLnByZXNlbmNlcyA9IHBheWxvYWQucHJlc2VuY2VzPy5tYXAoKHByZXNlbmNlKSA9PiBib3QudHJhbnNmb3JtZXJzLnByZXNlbmNlKGJvdCwgcHJlc2VuY2UgYXMgRGlzY29yZFByZXNlbmNlVXBkYXRlKSk7XG4gIGlmIChwcm9wcy5zYWZldHlBbGVydHNDaGFubmVsSWQgJiYgcGF5bG9hZC5zYWZldHlfYWxlcnRzX2NoYW5uZWxfaWQpXG4gICAgZ3VpbGQuc2FmZXR5QWxlcnRzQ2hhbm5lbElkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5zYWZldHlfYWxlcnRzX2NoYW5uZWxfaWQpO1xuICBpZiAocHJvcHMuaW5jaWRlbnRzRGF0YSAmJiBwYXlsb2FkLmluY2lkZW50c19kYXRhKSBndWlsZC5pbmNpZGVudHNEYXRhID0gYm90LnRyYW5zZm9ybWVycy5pbmNpZGVudHNEYXRhKGJvdCwgcGF5bG9hZC5pbmNpZGVudHNfZGF0YSk7XG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuZ3VpbGQoYm90LCBwYXlsb2FkLCBndWlsZCwgZXh0cmEpO1xufVxuIl0sIm5hbWVzIjpbIkNoYW5uZWxUeXBlcyIsIkNvbGxlY3Rpb24iLCJpY29uSGFzaFRvQmlnSW50IiwiR3VpbGRUb2dnbGVzIiwiYmFzZUd1aWxkIiwidW5kZWZpbmVkIiwidGhyZWFkcyIsImNoYW5uZWxzIiwiYXJyYXkiLCJmaWx0ZXIiLCJ4IiwidHlwZSIsIlB1YmxpY1RocmVhZCIsIlByaXZhdGVUaHJlYWQiLCJBbm5vdW5jZW1lbnRUaHJlYWQiLCJtYXAiLCJpZCIsImZlYXR1cmVzIiwidG9nZ2xlcyIsInRyYW5zZm9ybUd1aWxkIiwiYm90IiwicGF5bG9hZCIsImV4dHJhIiwiZ3VpbGRJZCIsInRyYW5zZm9ybWVycyIsInNub3dmbGFrZSIsInByb3BzIiwiZGVzaXJlZFByb3BlcnRpZXMiLCJndWlsZCIsIk9iamVjdCIsImNyZWF0ZSIsImFma1RpbWVvdXQiLCJhZmtfdGltZW91dCIsImFwcHJveGltYXRlTWVtYmVyQ291bnQiLCJhcHByb3hpbWF0ZV9tZW1iZXJfY291bnQiLCJhcHByb3hpbWF0ZVByZXNlbmNlQ291bnQiLCJhcHByb3hpbWF0ZV9wcmVzZW5jZV9jb3VudCIsImRlZmF1bHRNZXNzYWdlTm90aWZpY2F0aW9ucyIsImRlZmF1bHRfbWVzc2FnZV9ub3RpZmljYXRpb25zIiwiZGVzY3JpcHRpb24iLCJleHBsaWNpdENvbnRlbnRGaWx0ZXIiLCJleHBsaWNpdF9jb250ZW50X2ZpbHRlciIsIm1heE1lbWJlcnMiLCJtYXhfbWVtYmVycyIsIm1heFByZXNlbmNlcyIsIm1heF9wcmVzZW5jZXMiLCJtYXhWaWRlb0NoYW5uZWxVc2VycyIsIm1heF92aWRlb19jaGFubmVsX3VzZXJzIiwibWF4U3RhZ2VWaWRlb0NoYW5uZWxVc2VycyIsIm1heF9zdGFnZV92aWRlb19jaGFubmVsX3VzZXJzIiwibWZhTGV2ZWwiLCJtZmFfbGV2ZWwiLCJuYW1lIiwibnNmd0xldmVsIiwibnNmd19sZXZlbCIsInByZWZlcnJlZExvY2FsZSIsInByZWZlcnJlZF9sb2NhbGUiLCJwcmVtaXVtU3Vic2NyaXB0aW9uQ291bnQiLCJwcmVtaXVtX3N1YnNjcmlwdGlvbl9jb3VudCIsInByZW1pdW1UaWVyIiwicHJlbWl1bV90aWVyIiwic3RhZ2VJbnN0YW5jZXMiLCJzdGFnZV9pbnN0YW5jZXMiLCJzaSIsImNoYW5uZWxJZCIsImNoYW5uZWxfaWQiLCJ0b3BpYyIsImNoYW5uZWwiLCJyZXN1bHQiLCJtZW1iZXJzIiwibWVtYmVyIiwidXNlcklkIiwidXNlciIsInJvbGVzIiwicm9sZSIsImVtb2ppcyIsImVtb2ppIiwidm9pY2VTdGF0ZXMiLCJ2b2ljZV9zdGF0ZXMiLCJ2b2ljZVN0YXRlIiwic3RpY2tlcnMiLCJzdGlja2VyIiwic3lzdGVtQ2hhbm5lbEZsYWdzIiwic3lzdGVtX2NoYW5uZWxfZmxhZ3MiLCJ2YW5pdHlVcmxDb2RlIiwidmFuaXR5X3VybF9jb2RlIiwidmVyaWZpY2F0aW9uTGV2ZWwiLCJ2ZXJpZmljYXRpb25fbGV2ZWwiLCJ3ZWxjb21lU2NyZWVuIiwid2VsY29tZV9zY3JlZW4iLCJ3ZWxjb21lQ2hhbm5lbHMiLCJ3ZWxjb21lX2NoYW5uZWxzIiwid2MiLCJlbW9qaUlkIiwiZW1vamlfaWQiLCJlbW9qaU5hbWUiLCJlbW9qaV9uYW1lIiwiZGlzY292ZXJ5U3BsYXNoIiwiZGlzY292ZXJ5X3NwbGFzaCIsImpvaW5lZEF0Iiwiam9pbmVkX2F0IiwiRGF0ZSIsInBhcnNlIiwibWVtYmVyQ291bnQiLCJtZW1iZXJfY291bnQiLCJzaGFyZElkIiwiaWNvbiIsImJhbm5lciIsInNwbGFzaCIsIm93bmVySWQiLCJvd25lcl9pZCIsInBlcm1pc3Npb25zIiwiYWZrQ2hhbm5lbElkIiwiYWZrX2NoYW5uZWxfaWQiLCJ3aWRnZXRDaGFubmVsSWQiLCJ3aWRnZXRfY2hhbm5lbF9pZCIsImFwcGxpY2F0aW9uSWQiLCJhcHBsaWNhdGlvbl9pZCIsInN5c3RlbUNoYW5uZWxJZCIsInN5c3RlbV9jaGFubmVsX2lkIiwicnVsZXNDaGFubmVsSWQiLCJydWxlc19jaGFubmVsX2lkIiwicHVibGljVXBkYXRlc0NoYW5uZWxJZCIsInB1YmxpY191cGRhdGVzX2NoYW5uZWxfaWQiLCJwcmVtaXVtUHJvZ3Jlc3NCYXJFbmFibGVkIiwicHJlbWl1bV9wcm9ncmVzc19iYXJfZW5hYmxlZCIsImxhcmdlIiwib3duZXIiLCJ3aWRnZXRFbmFibGVkIiwid2lkZ2V0X2VuYWJsZWQiLCJ1bmF2YWlsYWJsZSIsImljb25IYXNoIiwiaWNvbl9oYXNoIiwicHJlc2VuY2VzIiwicHJlc2VuY2UiLCJzYWZldHlBbGVydHNDaGFubmVsSWQiLCJzYWZldHlfYWxlcnRzX2NoYW5uZWxfaWQiLCJpbmNpZGVudHNEYXRhIiwiaW5jaWRlbnRzX2RhdGEiLCJjdXN0b21pemVycyJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsWUFBWSxRQUF1RCxvQkFBb0I7QUFDaEcsU0FBU0MsVUFBVSxFQUFFQyxnQkFBZ0IsUUFBUSxvQkFBb0I7QUFHakUsU0FBU0MsWUFBWSxRQUFRLHFCQUFxQjtBQUdsRCxPQUFPLE1BQU1DLFlBQW1CO0lBQzlCLDJFQUEyRTtJQUMzRSxHQUFJQyxTQUFTO0lBRWIsSUFBSUMs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
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { DiscordIncidentsData } from '@discordeno/types';
|
|
2
|
-
import type { Bot
|
|
2
|
+
import type { Bot } from '../bot.js';
|
|
3
|
+
import type { IncidentsData } from './types.js';
|
|
3
4
|
export declare function transformIncidentsData(bot: Bot, payload: DiscordIncidentsData): IncidentsData;
|
|
4
5
|
//# sourceMappingURL=incidentsData.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"incidentsData.d.ts","sourceRoot":"","sources":["../../src/transformers/incidentsData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"incidentsData.d.ts","sourceRoot":"","sources":["../../src/transformers/incidentsData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAErC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,oBAAoB,GAAG,aAAa,CAU7F"}
|
|
@@ -8,4 +8,4 @@ export function transformIncidentsData(bot, payload) {
|
|
|
8
8
|
return bot.transformers.customizers.incidentsData(bot, payload, incidentsData);
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvaW5jaWRlbnRzRGF0YS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERpc2NvcmRJbmNpZGVudHNEYXRhIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnO1xuaW1wb3J0IHR5cGUgeyBCb3QgfSBmcm9tICcuLi9ib3QuanMnO1xuaW1wb3J0IHR5cGUgeyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLCBTZXR1cERlc2lyZWRQcm9wcywgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMgfSBmcm9tICcuLi9kZXNpcmVkUHJvcGVydGllcy5qcyc7XG5pbXBvcnQgdHlwZSB7IEluY2lkZW50c0RhdGEgfSBmcm9tICcuL3R5cGVzLmpzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUluY2lkZW50c0RhdGEoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRJbmNpZGVudHNEYXRhKTogSW5jaWRlbnRzRGF0YSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5pbmNpZGVudHNEYXRhO1xuICBjb25zdCBpbmNpZGVudHNEYXRhID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8SW5jaWRlbnRzRGF0YSwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy5pbnZpdGVzRGlzYWJsZWRVbnRpbCAmJiBwYXlsb2FkLmludml0ZXNfZGlzYWJsZWRfdW50aWwpIGluY2lkZW50c0RhdGEuaW52aXRlc0Rpc2FibGVkVW50aWwgPSBEYXRlLnBhcnNlKHBheWxvYWQuaW52aXRlc19kaXNhYmxlZF91bnRpbCk7XG4gIGlmIChwcm9wcy5kbXNEaXNhYmxlZFVudGlsICYmIHBheWxvYWQuZG1zX2Rpc2FibGVkX3VudGlsKSBpbmNpZGVudHNEYXRhLmRtc0Rpc2FibGVkVW50aWwgPSBEYXRlLnBhcnNlKHBheWxvYWQuZG1zX2Rpc2FibGVkX3VudGlsKTtcbiAgaWYgKHByb3BzLmRtU3BhbURldGVjdGVkQXQgJiYgcGF5bG9hZC5kbV9zcGFtX2RldGVjdGVkX2F0KSBpbmNpZGVudHNEYXRhLmRtU3BhbURldGVjdGVkQXQgPSBEYXRlLnBhcnNlKHBheWxvYWQuZG1fc3BhbV9kZXRlY3RlZF9hdCk7XG4gIGlmIChwcm9wcy5yYWlkRGV0ZWN0ZWRBdCAmJiBwYXlsb2FkLnJhaWRfZGV0ZWN0ZWRfYXQpIGluY2lkZW50c0RhdGEucmFpZERldGVjdGVkQXQgPSBEYXRlLnBhcnNlKHBheWxvYWQucmFpZF9kZXRlY3RlZF9hdCk7XG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW5jaWRlbnRzRGF0YShib3QsIHBheWxvYWQsIGluY2lkZW50c0RhdGEpO1xufVxuIl0sIm5hbWVzIjpbInRyYW5zZm9ybUluY2lkZW50c0RhdGEiLCJib3QiLCJwYXlsb2FkIiwicHJvcHMiLCJ0cmFuc2Zvcm1lcnMiLCJkZXNpcmVkUHJvcGVydGllcyIsImluY2lkZW50c0RhdGEiLCJpbnZpdGVzRGlzYWJsZWRVbnRpbCIsImludml0ZXNfZGlzYWJsZWRfdW50aWwiLCJEYXRlIiwicGFyc2UiLCJkbXNEaXNhYmxlZFVudGlsIiwiZG1zX2Rpc2FibGVkX3VudGlsIiwiZG1TcGFtRGV0ZWN0ZWRBdCIsImRtX3NwYW1fZGV0ZWN0ZWRfYXQiLCJyYWlkRGV0ZWN0ZWRBdCIsInJhaWRfZGV0ZWN0ZWRfYXQiLCJjdXN0b21pemVycyJdLCJtYXBwaW5ncyI6IkFBS0EsT0FBTyxTQUFTQSx1QkFBdUJDLEdBQVEsRUFBRUMsT0FBNkI7SUFDNUUsTUFBTUMsUUFBUUYsSUFBSUcsWUFBWSxDQUFDQyxpQkFBaUIsQ0FBQ0MsYUFBYTtJQUM5RCxNQUFNQSxnQkFBZ0IsQ0FBQztJQUV2QixJQUFJSCxNQUFNSSxvQkFBb0IsSUFBSUwsUUFBUU0sc0JBQXNCLEVBQUVGLGNBQWNDLG9CQUFvQixHQUFHRSxLQUFLQyxLQUFLLENBQUNSLFFBQVFNLHNCQUFzQjtJQUNoSixJQUFJTCxNQUFNUSxnQkFBZ0IsSUFBSVQsUUFBUVUsa0JBQWtCLEVBQUVOLGNBQWNLLGdCQUFnQixHQUFHRixLQUFLQyxLQUFLLENBQUNSLFFBQVFVLGtCQUFrQjtJQUNoSSxJQUFJVCxNQUFNVSxnQkFBZ0IsSUFBSVgsUUFBUVksbUJBQW1CLEVBQUVSLGNBQWNPLGdCQUFnQixHQUFHSixLQUFLQyxLQUFLLENBQUNSLFFBQVFZLG1CQUFtQjtJQUNsSSxJQUFJWCxNQUFNWSxjQUFjLElBQUliLFFBQVFjLGdCQUFnQixFQUFFVixjQUFjUyxjQUFjLEdBQUdOLEtBQUtDLEtBQUssQ0FBQ1IsUUFBUWMsZ0JBQWdCO0lBRXhILE9BQU9mLElBQUlHLFlBQVksQ0FBQ2EsV0FBVyxDQUFDWCxhQUFhLENBQUNMLEtBQUtDLFNBQVNJO0FBQ2xFIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transformers/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transformers/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,mCAAmC,CAAC;AAClD,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,UAAU,CAAC;AACzB,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC"}
|
|
@@ -49,4 +49,4 @@ export * from './welcomeScreen.js';
|
|
|
49
49
|
export * from './widget.js';
|
|
50
50
|
export * from './widgetSettings.js';
|
|
51
51
|
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY3Rpdml0eS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2FwcGxpY2F0aW9uLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vYXBwbGljYXRpb25Db21tYW5kLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vYXBwbGljYXRpb25Db21tYW5kT3B0aW9uLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vYXBwbGljYXRpb25Db21tYW5kT3B0aW9uQ2hvaWNlLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vYXBwbGljYXRpb25Db21tYW5kUGVybWlzc2lvbi5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2F0dGFjaG1lbnQuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9hdWRpdExvZ0VudHJ5LmpzJztcbmV4cG9ydCAqIGZyb20gJy4vYXV0b21vZEFjdGlvbkV4ZWN1dGlvbi5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2F1dG9tb2RSdWxlLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vYXZhdGFyRGVjb3JhdGlvbkRhdGEuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGFubmVsLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50LmpzJztcbmV4cG9ydCAqIGZyb20gJy4vZW1iZWQuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9lbW9qaS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2VudGl0bGVtZW50LmpzJztcbmV4cG9ydCAqIGZyb20gJy4vZ2F0ZXdheUJvdC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2d1aWxkLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vaW5jaWRlbnRzRGF0YS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL2ludGVncmF0aW9uLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJhY3Rpb24uanMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnZpdGUuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2JieS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL21lbWJlci5qcyc7XG5leHBvcnQgKiBmcm9tICcuL21lc3NhZ2UuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9vbmJvYXJkaW5nLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vcG9sbC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3ByZXNlbmNlLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vcmV2ZXJzZS9pbmRleC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3JvbGUuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zY2hlZHVsZWRFdmVudC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3NrdS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3NvdW5kYm9hcmRTb3VuZC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3N0YWdlSW5zdGFuY2UuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zdGFnZUludml0ZUluc3RhbmNlLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc3RpY2tlci5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3N1YnNjcmlwdGlvbi5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3N1YnNjcmlwdGlvbi5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3RlYW0uanMnO1xuZXhwb3J0ICogZnJvbSAnLi90ZW1wbGF0ZS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3RocmVhZE1lbWJlci5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3RvZ2dsZXMvaW5kZXguanMnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXIuanMnO1xuZXhwb3J0ICogZnJvbSAnLi92b2ljZVJlZ2lvbi5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3ZvaWNlU3RhdGUuanMnO1xuZXhwb3J0ICogZnJvbSAnLi93ZWJob29rLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vd2VsY29tZVNjcmVlbi5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3dpZGdldC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3dpZGdldFNldHRpbmdzLmpzJztcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdCQUFnQjtBQUM5QixjQUFjLG1CQUFtQjtBQUNqQyxjQUFjLDBCQUEwQjtBQUN4QyxjQUFjLGdDQUFnQztBQUM5QyxjQUFjLHNDQUFzQztBQUNwRCxjQUFjLG9DQUFvQztBQUNsRCxjQUFjLGtCQUFrQjtBQUNoQyxjQUFjLHFCQUFxQjtBQUNuQyxjQUFjLDhCQUE4QjtBQUM1QyxjQUFjLG1CQUFtQjtBQUNqQyxjQUFjLDRCQUE0QjtBQUMxQyxjQUFjLGVBQWU7QUFDN0IsY0FBYyxpQkFBaUI7QUFDL0IsY0FBYyxhQUFhO0FBQzNCLGNBQWMsYUFBYTtBQUMzQixjQUFjLG1CQUFtQjtBQUNqQyxjQUFjLGtCQUFrQjtBQUNoQyxjQUFjLGFBQWE7QUFDM0IsY0FBYyxxQkFBcUI7QUFDbkMsY0FBYyxtQkFBbUI7QUFDakMsY0FBYyxtQkFBbUI7QUFDakMsY0FBYyxjQUFjO0FBQzVCLGNBQWMsYUFBYTtBQUMzQixjQUFjLGNBQWM7QUFDNUIsY0FBYyxlQUFlO0FBQzdCLGNBQWMsa0JBQWtCO0FBQ2hDLGNBQWMsWUFBWTtBQUMxQixjQUFjLGdCQUFnQjtBQUM5QixjQUFjLHFCQUFxQjtBQUNuQyxjQUFjLFlBQVk7QUFDMUIsY0FBYyxzQkFBc0I7QUFDcEMsY0FBYyxXQUFXO0FBQ3pCLGNBQWMsdUJBQXVCO0FBQ3JDLGNBQWMscUJBQXFCO0FBQ25DLGNBQWMsMkJBQTJCO0FBQ3pDLGNBQWMsZUFBZTtBQUM3QixjQUFjLG9CQUFvQjtBQUNsQyxjQUFjLG9CQUFvQjtBQUNsQyxjQUFjLFlBQVk7QUFDMUIsY0FBYyxnQkFBZ0I7QUFDOUIsY0FBYyxvQkFBb0I7QUFDbEMsY0FBYyxxQkFBcUI7QUFDbkMsY0FBYyxhQUFhO0FBQzNCLGNBQWMsWUFBWTtBQUMxQixjQUFjLG1CQUFtQjtBQUNqQyxjQUFjLGtCQUFrQjtBQUNoQyxjQUFjLGVBQWU7QUFDN0IsY0FBYyxxQkFBcUI7QUFDbkMsY0FBYyxjQUFjO0FBQzVCLGNBQWMsc0JBQXNCIn0=
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { DiscordIntegrationCreateUpdate } from '@discordeno/types';
|
|
2
|
-
import {
|
|
2
|
+
import type { Bot } from '../bot.js';
|
|
3
|
+
import type { Integration } from './types.js';
|
|
3
4
|
export declare function transformIntegration(bot: Bot, payload: DiscordIntegrationCreateUpdate): Integration;
|
|
4
5
|
//# sourceMappingURL=integration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../src/transformers/integration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../src/transformers/integration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,mBAAmB,CAAC;AAExE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,8BAA8B,GAAG,WAAW,CAiCnG"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { iconHashToBigInt } from '
|
|
1
|
+
import { iconHashToBigInt } from '@discordeno/utils';
|
|
2
2
|
export function transformIntegration(bot, payload) {
|
|
3
3
|
const integration = {
|
|
4
4
|
guildId: bot.transformers.snowflake(payload.guild_id),
|
|
@@ -31,4 +31,4 @@ export function transformIntegration(bot, payload) {
|
|
|
31
31
|
return bot.transformers.customizers.integration(bot, payload, integration);
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvaW50ZWdyYXRpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEaXNjb3JkSW50ZWdyYXRpb25DcmVhdGVVcGRhdGUgfSBmcm9tICdAZGlzY29yZGVuby90eXBlcyc7XG5pbXBvcnQgeyBpY29uSGFzaFRvQmlnSW50IH0gZnJvbSAnQGRpc2NvcmRlbm8vdXRpbHMnO1xuaW1wb3J0IHR5cGUgeyBCb3QgfSBmcm9tICcuLi9ib3QuanMnO1xuaW1wb3J0IHR5cGUgeyBJbnRlZ3JhdGlvbiB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW50ZWdyYXRpb24oYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRJbnRlZ3JhdGlvbkNyZWF0ZVVwZGF0ZSk6IEludGVncmF0aW9uIHtcbiAgY29uc3QgaW50ZWdyYXRpb24gPSB7XG4gICAgZ3VpbGRJZDogYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5ndWlsZF9pZCksXG4gICAgaWQ6IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpLFxuICAgIG5hbWU6IHBheWxvYWQubmFtZSxcbiAgICB0eXBlOiBwYXlsb2FkLnR5cGUsXG4gICAgZW5hYmxlZDogcGF5bG9hZC5lbmFibGVkLFxuICAgIHN5bmNpbmc6IHBheWxvYWQuc3luY2luZyxcbiAgICByb2xlSWQ6IHBheWxvYWQucm9sZV9pZCA/IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQucm9sZV9pZCkgOiB1bmRlZmluZWQsXG4gICAgZW5hYmxlRW1vdGljb25zOiBwYXlsb2FkLmVuYWJsZV9lbW90aWNvbnMsXG4gICAgZXhwaXJlQmVoYXZpb3I6IHBheWxvYWQuZXhwaXJlX2JlaGF2aW9yLFxuICAgIGV4cGlyZUdyYWNlUGVyaW9kOiBwYXlsb2FkLmV4cGlyZV9ncmFjZV9wZXJpb2QsXG4gICAgdXNlcjogcGF5bG9hZC51c2VyID8gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgcGF5bG9hZC51c2VyKSA6IHVuZGVmaW5lZCxcbiAgICBhY2NvdW50OiB7XG4gICAgICBpZDogYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5hY2NvdW50LmlkKSxcbiAgICAgIG5hbWU6IHBheWxvYWQuYWNjb3VudC5uYW1lLFxuICAgIH0sXG4gICAgc3luY2VkQXQ6IHBheWxvYWQuc3luY2VkX2F0ID8gRGF0ZS5wYXJzZShwYXlsb2FkLnN5bmNlZF9hdCkgOiB1bmRlZmluZWQsXG4gICAgc3Vic2NyaWJlckNvdW50OiBwYXlsb2FkLnN1YnNjcmliZXJfY291bnQsXG4gICAgcmV2b2tlZDogcGF5bG9hZC5yZXZva2VkLFxuICAgIGFwcGxpY2F0aW9uOiBwYXlsb2FkLmFwcGxpY2F0aW9uXG4gICAgICA/IHtcbiAgICAgICAgICBpZDogYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5hcHBsaWNhdGlvbi5pZCksXG4gICAgICAgICAgbmFtZTogcGF5bG9hZC5hcHBsaWNhdGlvbi5uYW1lLFxuICAgICAgICAgIGljb246IHBheWxvYWQuYXBwbGljYXRpb24uaWNvbiA/IGljb25IYXNoVG9CaWdJbnQocGF5bG9hZC5hcHBsaWNhdGlvbi5pY29uKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogcGF5bG9hZC5hcHBsaWNhdGlvbi5kZXNjcmlwdGlvbixcbiAgICAgICAgICBib3Q6IHBheWxvYWQuYXBwbGljYXRpb24uYm90ID8gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgcGF5bG9hZC5hcHBsaWNhdGlvbi5ib3QpIDogdW5kZWZpbmVkLFxuICAgICAgICB9XG4gICAgICA6IHVuZGVmaW5lZCxcbiAgICBzY29wZXM6IHBheWxvYWQuc2NvcGVzLFxuICB9IGFzIEludGVncmF0aW9uO1xuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLmludGVncmF0aW9uKGJvdCwgcGF5bG9hZCwgaW50ZWdyYXRpb24pO1xufVxuIl0sIm5hbWVzIjpbImljb25IYXNoVG9CaWdJbnQiLCJ0cmFuc2Zvcm1JbnRlZ3JhdGlvbiIsImJvdCIsInBheWxvYWQiLCJpbnRlZ3JhdGlvbiIsImd1aWxkSWQiLCJ0cmFuc2Zvcm1lcnMiLCJzbm93Zmxha2UiLCJndWlsZF9pZCIsImlkIiwibmFtZSIsInR5cGUiLCJlbmFibGVkIiwic3luY2luZyIsInJvbGVJZCIsInJvbGVfaWQiLCJ1bmRlZmluZWQiLCJlbmFibGVFbW90aWNvbnMiLCJlbmFibGVfZW1vdGljb25zIiwiZXhwaXJlQmVoYXZpb3IiLCJleHBpcmVfYmVoYXZpb3IiLCJleHBpcmVHcmFjZVBlcmlvZCIsImV4cGlyZV9ncmFjZV9wZXJpb2QiLCJ1c2VyIiwiYWNjb3VudCIsInN5bmNlZEF0Iiwic3luY2VkX2F0IiwiRGF0ZSIsInBhcnNlIiwic3Vic2NyaWJlckNvdW50Iiwic3Vic2NyaWJlcl9jb3VudCIsInJldm9rZWQiLCJhcHBsaWNhdGlvbiIsImljb24iLCJkZXNjcmlwdGlvbiIsInNjb3BlcyIsImN1c3RvbWl6ZXJzIl0sIm1hcHBpbmdzIjoiQUFDQSxTQUFTQSxnQkFBZ0IsUUFBUSxvQkFBb0I7QUFJckQsT0FBTyxTQUFTQyxxQkFBcUJDLEdBQVEsRUFBRUMsT0FBdUM7SUFDcEYsTUFBTUMsY0FBYztRQUNsQkMsU0FBU0gsSUFBSUksWUFBWSxDQUFDQyxTQUFTLENBQUNKLFFBQVFLLFFBQVE7UUFDcERDLElBQUlQLElBQUlJLFlBQVksQ0FBQ0MsU0FBUyxDQUFDSixRQUFRTSxFQUFFO1FBQ3pDQyxNQUFNUCxRQUFRTyxJQUFJO1FBQ2xCQyxNQUFNUixRQUFRUSxJQUFJO1FBQ2xCQyxTQUFTVCxRQUFRUyxPQUFPO1FBQ3hCQyxTQUFTVixRQUFRVSxPQUFPO1FBQ3hCQyxRQUFRWCxRQUFRWSxPQUFPLEdBQUdiLElBQUlJLFlBQVksQ0FBQ0MsU0FBUyxDQUFDSixRQUFRWSxPQUFPLElBQUlDO1FBQ3hFQyxpQkFBaUJkLFFBQVFlLGdCQUFnQjtRQUN6Q0MsZ0JBQWdCaEIsUUFBUWlCLGVBQWU7UUFDdkNDLG1CQUFtQmxCLFFBQVFtQixtQkFBbUI7UUFDOUNDLE1BQU1wQixRQUFRb0IsSUFBSSxHQUFHckIsSUFBSUksWUFBWSxDQUFDaUIsSUFBSSxDQUFDckIsS0FBS0MsUUFBUW9CLElBQUksSUFBSVA7UUFDaEVRLFNBQVM7WUFDUGYsSUFBSVAsSUFBSUksWUFBWSxDQUFDQyxTQUFTLENBQUNKLFFBQVFxQixPQUFPLENBQUNmLEVBQUU7WUFDakRDLE1BQU1QLFFBQVFxQixPQUFPLENBQUNkLElBQUk7UUFDNUI7UUFDQWUsVUFBVXRCLFFBQVF1QixTQUFTLEdBQUdDLEtBQUtDLEtBQUssQ0FBQ3pCLFFBQVF1QixTQUFTLElBQUlWO1FBQzlEYSxpQkFBaUIxQixRQUFRMkIsZ0JBQWdCO1FBQ3pDQyxTQUFTNUIsUUFBUTRCLE9BQU87UUFDeEJDLGFBQWE3QixRQUFRNkIsV0FBVyxHQUM1QjtZQUNFdkIsSUFBSVAsSUFBSUksWUFBWSxDQUFDQyxTQUFTLENBQUNKLFFBQVE2QixXQUFXLENBQUN2QixFQUFFO1lBQ3JEQyxNQUFNUCxRQUFRNkIsV0FBVyxDQUFDdEIsSUFBSTtZQUM5QnVCLE1BQU05QixRQUFRNkIsV0FBVyxDQUFDQyxJQUFJLEdBQUdqQyxpQkFBaUJHLFFBQVE2QixXQUFXLENBQUNDLElBQUksSUFBSWpCO1lBQzlFa0IsYUFBYS9CLFFBQVE2QixXQUFXLENBQUNFLFdBQVc7WUFDNUNoQyxLQUFLQyxRQUFRNkIsV0FBVyxDQUFDOUIsR0FBRyxHQUFHQSxJQUFJSSxZQUFZLENBQUNpQixJQUFJLENBQUNyQixLQUFLQyxRQUFRNkIsV0FBVyxDQUFDOUIsR0FBRyxJQUFJYztRQUN2RixJQUNBQTtRQUNKbUIsUUFBUWhDLFFBQVFnQyxNQUFNO0lBQ3hCO0lBRUEsT0FBT2pDLElBQUlJLFlBQVksQ0FBQzhCLFdBQVcsQ0FBQ2hDLFdBQVcsQ0FBQ0YsS0FBS0MsU0FBU0M7QUFDaEUifQ==
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import { type DiscordInteraction, type DiscordInteractionCallback, type DiscordInteractionCallbackResponse, type DiscordInteractionDataOption, type DiscordInteractionDataResolved, type DiscordInteractionResource } from '@discordeno/types';
|
|
2
|
-
import type {
|
|
1
|
+
import { type BigString, type DiscordInteraction, type DiscordInteractionCallback, type DiscordInteractionCallbackResponse, type DiscordInteractionDataOption, type DiscordInteractionDataResolved, type DiscordInteractionResource } from '@discordeno/types';
|
|
2
|
+
import type { Bot } from '../bot.js';
|
|
3
|
+
import type { CompleteDesiredProperties, DesiredPropertiesBehavior, SetupDesiredProps, TransformersDesiredProperties, TransformProperty } from '../desiredProperties.js';
|
|
4
|
+
import type { Interaction, InteractionCallback, InteractionCallbackResponse, InteractionDataOption, InteractionDataResolved, InteractionResource } from './types.js';
|
|
3
5
|
export declare const baseInteraction: SetupDesiredProps<Interaction, CompleteDesiredProperties<{}, true>, DesiredPropertiesBehavior.RemoveKey>;
|
|
4
6
|
export declare function transformInteraction(bot: Bot, payload: DiscordInteraction, extra?: {
|
|
5
7
|
shardId?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../src/transformers/interaction.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../src/transformers/interaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EAEd,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAC/B,KAAK,kCAAkC,EACvC,KAAK,4BAA4B,EACjC,KAAK,8BAA8B,EACnC,KAAK,0BAA0B,EAIhC,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAErC,OAAO,KAAK,EACV,yBAAyB,EACzB,yBAAyB,EACzB,iBAAiB,EACjB,6BAA6B,EAC7B,iBAAiB,EAClB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,2BAA2B,EAC3B,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAIpB,eAAO,MAAM,eAAe,EAAE,iBAAiB,CAAC,WAAW,EAAE,yBAAyB,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,yBAAyB,CAAC,SAAS,CA8GpI,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,kBAAkB,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,WAAW,CAqErH;AAED,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,4BAA4B,GAAG,qBAAqB,CAUpH;AAED,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,8BAA8B,EACvC,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,SAAS,CAAA;CAAE,GAChD,iBAAiB,CAAC,uBAAuB,EAAE,6BAA6B,EAAE,yBAAyB,CAAC,SAAS,CAAC,CAiFhH;AAED,wBAAgB,oCAAoC,CAClD,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,kCAAkC,EAC3C,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3B,2BAA2B,CAS7B;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,0BAA0B,GAAG,mBAAmB,CAY/G;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,0BAA0B,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,mBAAmB,CAS7I"}
|
|
@@ -11,17 +11,20 @@ export const baseInteraction = {
|
|
|
11
11
|
if (typeof response === 'string') response = {
|
|
12
12
|
content: response
|
|
13
13
|
};
|
|
14
|
-
// If user provides
|
|
15
|
-
if (
|
|
16
|
-
|
|
14
|
+
// If user provides a type, use it
|
|
15
|
+
if (options?.type) type = options.type;
|
|
16
|
+
else {
|
|
17
|
+
if (response.title) type = InteractionResponseTypes.Modal;
|
|
18
|
+
if (this.type === InteractionTypes.ApplicationCommandAutocomplete) type = InteractionResponseTypes.ApplicationCommandAutocompleteResult;
|
|
19
|
+
}
|
|
20
|
+
// Modals cannot be chained
|
|
21
|
+
if (this.type === InteractionTypes.ModalSubmit && type === InteractionResponseTypes.Modal) throw new Error('Cannot respond to a modal interaction with another modal.');
|
|
17
22
|
if (type === InteractionResponseTypes.ChannelMessageWithSource && options?.isPrivate) {
|
|
18
23
|
response.flags ??= 0;
|
|
19
24
|
response.flags |= MessageFlags.Ephemeral;
|
|
20
25
|
}
|
|
21
26
|
// Since this has already been given a response, any further responses must be followups.
|
|
22
|
-
if (this.acknowledged) return await this.
|
|
23
|
-
// Modals cannot be chained
|
|
24
|
-
if (this.type === InteractionTypes.ModalSubmit && type === InteractionResponseTypes.Modal) throw new Error('Cannot respond to a modal interaction with another modal.');
|
|
27
|
+
if (this.acknowledged) return await this.sendFollowupMessage(response);
|
|
25
28
|
const result = await this.bot.helpers.sendInteractionResponse(this.id, this.token, {
|
|
26
29
|
type,
|
|
27
30
|
data: response
|
|
@@ -31,6 +34,13 @@ export const baseInteraction = {
|
|
|
31
34
|
this.acknowledged = true;
|
|
32
35
|
return result;
|
|
33
36
|
},
|
|
37
|
+
async sendFollowupMessage (response) {
|
|
38
|
+
// If user provides a string, change it to a response object
|
|
39
|
+
if (typeof response === 'string') response = {
|
|
40
|
+
content: response
|
|
41
|
+
};
|
|
42
|
+
return await this.bot.helpers.sendFollowupMessage(this.token, response);
|
|
43
|
+
},
|
|
34
44
|
async edit (response, messageId, options) {
|
|
35
45
|
if (this.type === InteractionTypes.ApplicationCommandAutocomplete) throw new Error('Cannot edit an autocomplete interaction.');
|
|
36
46
|
// If user provides a string, change it to a response object
|
|
@@ -154,57 +164,60 @@ export function transformInteractionDataOption(bot, option) {
|
|
|
154
164
|
export function transformInteractionDataResolved(bot, payload, extra) {
|
|
155
165
|
const transformed = {};
|
|
156
166
|
if (payload.messages) {
|
|
157
|
-
transformed.messages = new Collection(Object.entries(payload.messages).map(([
|
|
167
|
+
transformed.messages = new Collection(Object.entries(payload.messages).map(([key, value])=>{
|
|
158
168
|
// @ts-expect-error TODO: Deal with partials
|
|
159
169
|
const message = bot.transformers.message(bot, value, {
|
|
160
170
|
shardId: extra?.shardId
|
|
161
171
|
});
|
|
172
|
+
const id = bot.transformers.snowflake(key);
|
|
162
173
|
return [
|
|
163
|
-
|
|
174
|
+
id,
|
|
164
175
|
message
|
|
165
176
|
];
|
|
166
177
|
}));
|
|
167
178
|
}
|
|
168
179
|
if (payload.users) {
|
|
169
|
-
transformed.users = new Collection(Object.entries(payload.users).map(([
|
|
180
|
+
transformed.users = new Collection(Object.entries(payload.users).map(([key, value])=>{
|
|
170
181
|
const user = bot.transformers.user(bot, value);
|
|
182
|
+
const id = bot.transformers.snowflake(key);
|
|
171
183
|
return [
|
|
172
|
-
|
|
184
|
+
id,
|
|
173
185
|
user
|
|
174
186
|
];
|
|
175
187
|
}));
|
|
176
188
|
}
|
|
177
189
|
if (extra?.guildId && payload.members) {
|
|
178
|
-
transformed.members = new Collection(Object.entries(payload.members).map(([
|
|
190
|
+
transformed.members = new Collection(Object.entries(payload.members).map(([key, value])=>{
|
|
179
191
|
// @ts-expect-error TODO: Deal with partials, value is missing 2 values but the transformer can handle it, despite what the types says
|
|
180
192
|
const member = bot.transformers.member(bot, value, {
|
|
181
193
|
guildId: extra.guildId,
|
|
182
|
-
userId: bot.transformers.snowflake(
|
|
194
|
+
userId: bot.transformers.snowflake(key)
|
|
183
195
|
});
|
|
184
|
-
|
|
196
|
+
const id = bot.transformers.snowflake(key);
|
|
185
197
|
return [
|
|
186
|
-
|
|
198
|
+
id,
|
|
187
199
|
member
|
|
188
200
|
];
|
|
189
201
|
}));
|
|
190
202
|
}
|
|
191
203
|
if (extra?.guildId && payload.roles) {
|
|
192
|
-
transformed.roles = new Collection(Object.entries(payload.roles).map(([
|
|
204
|
+
transformed.roles = new Collection(Object.entries(payload.roles).map(([key, value])=>{
|
|
193
205
|
const role = bot.transformers.role(bot, value, {
|
|
194
206
|
guildId: extra.guildId
|
|
195
207
|
});
|
|
208
|
+
const id = bot.transformers.snowflake(key);
|
|
196
209
|
return [
|
|
197
|
-
|
|
210
|
+
id,
|
|
198
211
|
role
|
|
199
212
|
];
|
|
200
213
|
}));
|
|
201
214
|
}
|
|
202
215
|
if (payload.channels) {
|
|
203
|
-
transformed.channels = new Collection(Object.entries(payload.channels).map(([
|
|
216
|
+
transformed.channels = new Collection(Object.entries(payload.channels).map(([key, value])=>{
|
|
204
217
|
const channel = bot.transformers.channel(bot, value);
|
|
205
|
-
|
|
218
|
+
const id = bot.transformers.snowflake(key);
|
|
206
219
|
return [
|
|
207
|
-
|
|
220
|
+
id,
|
|
208
221
|
channel
|
|
209
222
|
];
|
|
210
223
|
}));
|
|
@@ -255,4 +268,4 @@ export function transformInteractionResource(bot, payload, extra) {
|
|
|
255
268
|
return bot.transformers.customizers.interactionResource(bot, payload, resource, extra);
|
|
256
269
|
}
|
|
257
270
|
|
|
258
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvaW50ZXJhY3Rpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlzY29yZEFwcGxpY2F0aW9uSW50ZWdyYXRpb25UeXBlLFxuICB0eXBlIERpc2NvcmRJbnRlcmFjdGlvbixcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb25DYWxsYmFjayxcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlLFxuICB0eXBlIERpc2NvcmRJbnRlcmFjdGlvbkRhdGFPcHRpb24sXG4gIHR5cGUgRGlzY29yZEludGVyYWN0aW9uRGF0YVJlc29sdmVkLFxuICB0eXBlIERpc2NvcmRJbnRlcmFjdGlvblJlc291cmNlLFxuICBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMsXG4gIEludGVyYWN0aW9uVHlwZXMsXG4gIE1lc3NhZ2VGbGFncyxcbn0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgeyBDb2xsZWN0aW9uIH0gZnJvbSAnQGRpc2NvcmRlbm8vdXRpbHMnXG5pbXBvcnQgdHlwZSB7XG4gIEF0dGFjaG1lbnQsXG4gIEJpZ1N0cmluZyxcbiAgQm90LFxuICBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzLFxuICBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLFxuICBJbnRlcmFjdGlvbixcbiAgSW50ZXJhY3Rpb25DYWxsYmFjayxcbiAgSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlLFxuICBJbnRlcmFjdGlvbkRhdGFPcHRpb24sXG4gIEludGVyYWN0aW9uRGF0YVJlc29sdmVkLFxuICBJbnRlcmFjdGlvblJlc29sdmVkRGF0YUNoYW5uZWwsXG4gIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhTWVtYmVyLFxuICBJbnRlcmFjdGlvblJlc291cmNlLFxuICBNZXNzYWdlLFxuICBSb2xlLFxuICBTZXR1cERlc2lyZWRQcm9wcyxcbiAgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsXG4gIFRyYW5zZm9ybVByb3BlcnR5LFxuICBVc2VyLFxufSBmcm9tICcuLi9pbmRleC5qcydcblxuLy8gQXNzdW1lIHdlIGhhdmUgYWxsIGRlc2lyZWQgcHJvcGVydGllcyBmb3IgdGhpcyBvciBlbHNlIHR5cGVzY3JpcHQgd2lsbCBnZXQgdmVyeSBjb25mdXNlZCBmb3IgdGhlIHJldHVybiB0eXBlcyBvZiB0aGVzZSBmdW5jdGlvbnMuXG4vLyBUaGlzIGlzIHVzZWQgYXMgYSBwcm90b3R5cGUsIHNvIHRoZSBhY3R1YWwgdHlwZSB3aXRoIHRoZSB1c2VyIGRlc2lyZWQgcHJvcGVydGllcyB3aWxsIGJlIHNldCBsYXRlci5cbmV4cG9ydCBjb25zdCBiYXNlSW50ZXJhY3Rpb246IFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPHt9LCB0cnVlPiwgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXk+ID0ge1xuICAvLyBUaGlzIGFsbG93cyB0eXBlc2NyaXB0IHRvIHN0aWxsIGNoZWNrIGZvciB0eXBlIGVycm9ycyBvbiBmdW5jdGlvbnMgYmVsb3dcbiAgLi4uKHVuZGVmaW5lZCBhcyB1bmtub3duIGFzIFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPHt9LCB0cnVlPiwgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXk+KSxcblxuICBhc3luYyByZXNwb25kKHJlc3BvbnNlLCBvcHRpb25zKSB7XG4gICAgbGV0IHR5cGUgPSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlXG5cbiAgICAvLyBJZiB1c2VyIHByb3ZpZGVzIGEgc3RyaW5nLCBjaGFuZ2UgaXQgdG8gYSByZXNwb25zZSBvYmplY3RcbiAgICBpZiAodHlwZW9mIHJlc3BvbnNlID09PSAnc3RyaW5nJykgcmVzcG9uc2UgPSB7IGNvbnRlbnQ6IHJlc3BvbnNlIH1cblxuICAgIC8vIElmIHVzZXIgcHJvdmlkZXMgYW4gb2JqZWN0LCBkZXRlcm1pbmUgaWYgaXQgc2hvdWxkIGJlIGFuIGF1dG9jb21wbGV0ZSBvciBhIG1vZGFsIHJlc3BvbnNlXG4gICAgaWYgKHJlc3BvbnNlLnRpdGxlKSB0eXBlID0gSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLk1vZGFsXG4gICAgaWYgKHRoaXMudHlwZSA9PT0gSW50ZXJhY3Rpb25UeXBlcy5BcHBsaWNhdGlvbkNvbW1hbmRBdXRvY29tcGxldGUpIHR5cGUgPSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlUmVzdWx0XG4gICAgaWYgKHR5cGUgPT09IEludGVyYWN0aW9uUmVzcG9uc2VUeXBlcy5DaGFubmVsTWVzc2FnZVdpdGhTb3VyY2UgJiYgb3B0aW9ucz8uaXNQcml2YXRlKSB7XG4gICAgICByZXNwb25zZS5mbGFncyA/Pz0gMFxuICAgICAgcmVzcG9uc2UuZmxhZ3MgfD0gTWVzc2FnZUZsYWdzLkVwaGVtZXJhbFxuICAgIH1cblxuICAgIC8vIFNpbmNlIHRoaXMgaGFzIGFscmVhZHkgYmVlbiBnaXZlbiBhIHJlc3BvbnNlLCBhbnkgZnVydGhlciByZXNwb25zZXMgbXVzdCBiZSBmb2xsb3d1cHMuXG4gICAgaWYgKHRoaXMuYWNrbm93bGVkZ2VkKSByZXR1cm4gYXdhaXQgdGhpcy5ib3QuaGVscGVycy5zZW5kRm9sbG93dXBNZXNzYWdlKHRoaXMudG9rZW4sIHJlc3BvbnNlKVxuXG4gICAgLy8gTW9kYWxzIGNhbm5vdCBiZSBjaGFpbmVkXG4gICAgaWYgKHRoaXMudHlwZSA9PT0gSW50ZXJhY3Rpb25UeXBlcy5Nb2RhbFN1Ym1pdCAmJiB0eXBlID09PSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuTW9kYWwpXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCByZXNwb25kIHRvIGEgbW9kYWwgaW50ZXJhY3Rpb24gd2l0aCBhbm90aGVyIG1vZGFsLicpXG5cbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmJvdC5oZWxwZXJzLnNlbmRJbnRlcmFjdGlvblJlc3BvbnNlKFxuICAgICAgdGhpcy5pZCxcbiAgICAgIHRoaXMudG9rZW4sXG4gICAgICB7IHR5cGUsIGRhdGE6IHJlc3BvbnNlIH0sXG4gICAgICB7IHdpdGhSZXNwb25zZTogb3B0aW9ucz8ud2l0aFJlc3BvbnNlIH0sXG4gICAgKVxuICAgIHRoaXMuYWNrbm93bGVkZ2VkID0gdHJ1ZVxuICAgIHJldHVybiByZXN1bHRcbiAgfSxcbiAgYXN5bmMgZWRpdChyZXNwb25zZSwgbWVzc2FnZUlkLCBvcHRpb25zKSB7XG4gICAgaWYgKHRoaXMudHlwZSA9PT0gSW50ZXJhY3Rpb25UeXBlcy5BcHBsaWNhdGlvbkNvbW1hbmRBdXRvY29tcGxldGUpIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGVkaXQgYW4gYXV0b2NvbXBsZXRlIGludGVyYWN0aW9uLicpXG5cbiAgICAvLyBJZiB1c2VyIHByb3ZpZGVzIGEgc3RyaW5nLCBjaGFuZ2UgaXQgdG8gYSByZXNwb25zZSBvYmplY3RcbiAgICBpZiAodHlwZW9mIHJlc3BvbnNlID09PSAnc3RyaW5nJykgcmVzcG9uc2UgPSB7IGNvbnRlbnQ6IHJlc3BvbnNlIH1cblxuICAgIGlmIChtZXNzYWdlSWQpIHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLmJvdD8uaGVscGVycy5lZGl0Rm9sbG93dXBNZXNzYWdlKHRoaXMudG9rZW4sIG1lc3NhZ2VJZCwgcmVzcG9uc2UpXG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmFja25vd2xlZGdlZCkge1xuICAgICAgaWYgKHRoaXMudHlwZSAhPT0gSW50ZXJhY3Rpb25UeXBlcy5NZXNzYWdlQ29tcG9uZW50ICYmIHRoaXMudHlwZSAhPT0gSW50ZXJhY3Rpb25UeXBlcy5Nb2RhbFN1Ym1pdClcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiVGhpcyBpbnRlcmFjdGlvbiBoYXMgbm90IGJlZW4gcmVzcG9uZGVkIHRvIHlldCBhbmQgdGhpcyBpc24ndCBhIE1lc3NhZ2VDb21wb25lbnQgb3IgTW9kYWxTdWJtaXQgaW50ZXJhY3Rpb24uXCIpXG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuYm90LmhlbHBlcnMuc2VuZEludGVyYWN0aW9uUmVzcG9uc2UoXG4gICAgICAgIHRoaXMuaWQsXG4gICAgICAgIHRoaXMudG9rZW4sXG4gICAgICAgIHsgdHlwZTogSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLlVwZGF0ZU1lc3NhZ2UsIGRhdGE6IHJlc3BvbnNlIH0sXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICApXG4gICAgICB0aGlzLmFja25vd2xlZGdlZCA9IHRydWVcbiAgICAgIHJldHVybiByZXN1bHRcbiAgICB9XG5cbiAgICByZXR1cm4gYXdhaXQgdGhpcy5ib3QuaGVscGVycy5lZGl0T3JpZ2luYWxJbnRlcmFjdGlvblJlc3BvbnNlKHRoaXMudG9rZW4sIHJlc3BvbnNlKVxuICB9LFxuICBhc3luYyBkZWZlckVkaXQob3B0aW9ucykge1xuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBlZGl0IGFuIGF1dG9jb21wbGV0ZSBpbnRlcmFjdGlvbi4nKVxuICAgIGlmICh0aGlzLmFja25vd2xlZGdlZCkgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZGVmZXIgYW4gYWxyZWFkeSByZXNwb25kZWQgaW50ZXJhY3Rpb24uJylcblxuICAgIGlmICh0aGlzLnR5cGUgIT09IEludGVyYWN0aW9uVHlwZXMuTWVzc2FnZUNvbXBvbmVudCAmJiB0aGlzLnR5cGUgIT09IEludGVyYWN0aW9uVHlwZXMuTW9kYWxTdWJtaXQpXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJDYW5ub3QgZGVmZXIgdG8gdGhlbiBlZGl0IGFuIGludGVyYWN0aW9uIHRoYXQgaXNuJ3QgYSBNZXNzYWdlQ29tcG9uZW50IG9yIE1vZGFsU3VibWl0IGludGVyYWN0aW9uLlwiKVxuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5ib3QuaGVscGVycy5zZW5kSW50ZXJhY3Rpb25SZXNwb25zZShcbiAgICAgIHRoaXMuaWQsXG4gICAgICB0aGlzLnRva2VuLFxuICAgICAgeyB0eXBlOiBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuRGVmZXJyZWRVcGRhdGVNZXNzYWdlIH0sXG4gICAgICBvcHRpb25zLFxuICAgIClcbiAgICB0aGlzLmFja25vd2xlZGdlZCA9IHRydWVcbiAgICByZXR1cm4gcmVzdWx0XG4gIH0sXG4gIGFzeW5jIGRlZmVyKGlzUHJpdmF0ZSwgb3B0aW9ucykge1xuICAgIGlmICh0aGlzLmFja25vd2xlZGdlZCkgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZGVmZXIgYW4gYWxyZWFkeSByZXNwb25kZWQgaW50ZXJhY3Rpb24uJylcblxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuYm90LmhlbHBlcnMuc2VuZEludGVyYWN0aW9uUmVzcG9uc2UoXG4gICAgICB0aGlzLmlkLFxuICAgICAgdGhpcy50b2tlbixcbiAgICAgIHtcbiAgICAgICAgdHlwZTogSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLkRlZmVycmVkQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlLFxuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgZmxhZ3M6IGlzUHJpdmF0ZSA/IE1lc3NhZ2VGbGFncy5FcGhlbWVyYWwgOiB1bmRlZmluZWQsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgb3B0aW9ucyxcbiAgICApXG4gICAgdGhpcy5hY2tub3dsZWRnZWQgPSB0cnVlXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9LFxuICBhc3luYyBkZWxldGUobWVzc2FnZUlkKSB7XG4gICAgaWYgKHRoaXMudHlwZSA9PT0gSW50ZXJhY3Rpb25UeXBlcy5BcHBsaWNhdGlvbkNvbW1hbmRBdXRvY29tcGxldGUpIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGRlbGV0ZSBhbiBhdXRvY29tcGxldGUgaW50ZXJhY3Rpb24nKVxuXG4gICAgaWYgKG1lc3NhZ2VJZCkgcmV0dXJuIGF3YWl0IHRoaXMuYm90Py5oZWxwZXJzLmRlbGV0ZUZvbGxvd3VwTWVzc2FnZSh0aGlzLnRva2VuLCBtZXNzYWdlSWQpXG4gICAgZWxzZSByZXR1cm4gYXdhaXQgdGhpcy5ib3Q/LmhlbHBlcnMuZGVsZXRlT3JpZ2luYWxJbnRlcmFjdGlvblJlc3BvbnNlKHRoaXMudG9rZW4pXG4gIH0sXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1JbnRlcmFjdGlvbihib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZEludGVyYWN0aW9uLCBleHRyYT86IHsgc2hhcmRJZD86IG51bWJlciB9KTogSW50ZXJhY3Rpb24ge1xuICBjb25zdCBndWlsZElkID0gcGF5bG9hZC5ndWlsZF9pZCA/IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuZ3VpbGRfaWQpIDogdW5kZWZpbmVkXG5cbiAgY29uc3QgaW50ZXJhY3Rpb246IFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj4gPSBPYmplY3QuY3JlYXRlKGJhc2VJbnRlcmFjdGlvbilcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmludGVyYWN0aW9uXG5cbiAgaW50ZXJhY3Rpb24uYm90ID0gYm90XG4gIGludGVyYWN0aW9uLmFja25vd2xlZGdlZCA9IGZhbHNlXG5cbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIGludGVyYWN0aW9uLmlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5pZClcbiAgaWYgKHByb3BzLmFwcGxpY2F0aW9uSWQgJiYgcGF5bG9hZC5hcHBsaWNhdGlvbl9pZCkgaW50ZXJhY3Rpb24uYXBwbGljYXRpb25JZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuYXBwbGljYXRpb25faWQpXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgaW50ZXJhY3Rpb24udHlwZSA9IHBheWxvYWQudHlwZVxuICBpZiAocHJvcHMudG9rZW4gJiYgcGF5bG9hZC50b2tlbikgaW50ZXJhY3Rpb24udG9rZW4gPSBwYXlsb2FkLnRva2VuXG4gIGlmIChwcm9wcy52ZXJzaW9uICYmIHBheWxvYWQudmVyc2lvbikgaW50ZXJhY3Rpb24udmVyc2lvbiA9IHBheWxvYWQudmVyc2lvblxuICBpZiAocHJvcHMubG9jYWxlICYmIHBheWxvYWQubG9jYWxlKSBpbnRlcmFjdGlvbi5sb2NhbGUgPSBwYXlsb2FkLmxvY2FsZVxuICBpZiAocHJvcHMuZ3VpbGRMb2NhbGUgJiYgcGF5bG9hZC5ndWlsZF9sb2NhbGUpIGludGVyYWN0aW9uLmd1aWxkTG9jYWxlID0gcGF5bG9hZC5ndWlsZF9sb2NhbGVcbiAgaWYgKHByb3BzLmd1aWxkICYmIHBheWxvYWQuZ3VpbGQpXG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvciBwYXlsb2FkLmd1aWxkIGlzIGEgUGFydGlhbDxEaXNjb3JkR3VpbGQ+XG4gICAgaW50ZXJhY3Rpb24uZ3VpbGQgPSBib3QudHJhbnNmb3JtZXJzLmd1aWxkKGJvdCwgcGF5bG9hZC5ndWlsZCwgeyBzaGFyZElkOiBleHRyYT8uc2hhcmRJZCB9KVxuICBpZiAocHJvcHMuZ3VpbGRJZCAmJiBndWlsZElkKSBpbnRlcmFjdGlvbi5ndWlsZElkID0gZ3VpbGRJZFxuICBpZiAocHJvcHMudXNlcikge1xuICAgIGlmIChwYXlsb2FkLm1lbWJlcj8udXNlcikgaW50ZXJhY3Rpb24udXNlciA9IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHBheWxvYWQubWVtYmVyPy51c2VyKVxuICAgIGVsc2UgaWYgKHBheWxvYWQudXNlcikgaW50ZXJhY3Rpb24udXNlciA9IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHBheWxvYWQudXNlcilcbiAgfVxuICBpZiAocHJvcHMuYXBwUGVybWlzc2lvbnMgJiYgcGF5bG9hZC5hcHBfcGVybWlzc2lvbnMpIGludGVyYWN0aW9uLmFwcFBlcm1pc3Npb25zID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5hcHBfcGVybWlzc2lvbnMpXG4gIGlmIChwcm9wcy5tZXNzYWdlICYmIHBheWxvYWQubWVzc2FnZSkgaW50ZXJhY3Rpb24ubWVzc2FnZSA9IGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZShib3QsIHBheWxvYWQubWVzc2FnZSwgeyBzaGFyZElkOiBleHRyYT8uc2hhcmRJZCB9KVxuICBpZiAocHJvcHMuY2hhbm5lbCAmJiBwYXlsb2FkLmNoYW5uZWwpXG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvciBwYXlsb2FkLmNoYW5uZWwgaXMgYSBQYXJ0aWFsPD5cbiAgICBpbnRlcmFjdGlvbi5jaGFubmVsID0gYm90LnRyYW5zZm9ybWVycy5jaGFubmVsKGJvdCwgcGF5bG9hZC5jaGFubmVsLCB7IGd1aWxkSWQgfSlcbiAgaWYgKHByb3BzLmNoYW5uZWxJZCAmJiBwYXlsb2FkLmNoYW5uZWxfaWQpIGludGVyYWN0aW9uLmNoYW5uZWxJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuY2hhbm5lbF9pZClcbiAgaWYgKHByb3BzLm1lbWJlciAmJiBndWlsZElkICYmIHBheWxvYWQubWVtYmVyKVxuICAgIGludGVyYWN0aW9uLm1lbWJlciA9IGJvdC50cmFuc2Zvcm1lcnMubWVtYmVyKGJvdCwgcGF5bG9hZC5tZW1iZXIsIHtcbiAgICAgIGd1aWxkSWQsXG4gICAgICB1c2VySWQ6IHBheWxvYWQubWVtYmVyPy51c2VyLmlkID8/IHBheWxvYWQudXNlcj8uaWQsXG4gICAgfSlcbiAgaWYgKHByb3BzLmVudGl0bGVtZW50cyAmJiBwYXlsb2FkLmVudGl0bGVtZW50cykgaW50ZXJhY3Rpb24uZW50aXRsZW1lbnRzID0gcGF5bG9hZC5lbnRpdGxlbWVudHMubWFwKChlKSA9PiBib3QudHJhbnNmb3JtZXJzLmVudGl0bGVtZW50KGJvdCwgZSkpXG4gIGlmIChwcm9wcy5hdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzICYmIHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzKSB7XG4gICAgaW50ZXJhY3Rpb24uYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVycyA9IHt9XG5cbiAgICBpZiAocGF5bG9hZC5hdXRob3JpemluZ19pbnRlZ3JhdGlvbl9vd25lcnNbJzAnXSlcbiAgICAgIGludGVyYWN0aW9uLmF1dGhvcml6aW5nSW50ZWdyYXRpb25Pd25lcnNbRGlzY29yZEFwcGxpY2F0aW9uSW50ZWdyYXRpb25UeXBlLkd1aWxkSW5zdGFsbF0gPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShcbiAgICAgICAgcGF5bG9hZC5hdXRob3JpemluZ19pbnRlZ3JhdGlvbl9vd25lcnNbJzAnXSxcbiAgICAgIClcbiAgICBpZiAocGF5bG9hZC5hdXRob3JpemluZ19pbnRlZ3JhdGlvbl9vd25lcnNbJzEnXSlcbiAgICAgIGludGVyYWN0aW9uLmF1dGhvcml6aW5nSW50ZWdyYXRpb25Pd25lcnNbRGlzY29yZEFwcGxpY2F0aW9uSW50ZWdyYXRpb25UeXBlLlVzZXJJbnN0YWxsXSA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKFxuICAgICAgICBwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVyc1snMSddLFxuICAgICAgKVxuICB9XG4gIGlmIChwcm9wcy5jb250ZXh0ICYmIHBheWxvYWQuY29udGV4dCkgaW50ZXJhY3Rpb24uY29udGV4dCA9IHBheWxvYWQuY29udGV4dFxuICBpZiAocHJvcHMuYXR0YWNobWVudFNpemVMaW1pdCAmJiBwYXlsb2FkLmF0dGFjaG1lbnRfc2l6ZV9saW1pdCkgaW50ZXJhY3Rpb24uYXR0YWNobWVudFNpemVMaW1pdCA9IHBheWxvYWQuYXR0YWNobWVudF9zaXplX2xpbWl0XG4gIGlmIChwcm9wcy5kYXRhICYmIHBheWxvYWQuZGF0YSkge1xuICAgIGludGVyYWN0aW9uLmRhdGEgPSB7XG4gICAgICB0eXBlOiBwYXlsb2FkLmRhdGEudHlwZSxcbiAgICAgIGNvbXBvbmVudFR5cGU6IHBheWxvYWQuZGF0YS5jb21wb25lbnRfdHlwZSxcbiAgICAgIGN1c3RvbUlkOiBwYXlsb2FkLmRhdGEuY3VzdG9tX2lkLFxuICAgICAgY29tcG9uZW50czogcGF5bG9hZC5kYXRhLmNvbXBvbmVudHM/Lm1hcCgoY29tcG9uZW50KSA9PiBib3QudHJhbnNmb3JtZXJzLmNvbXBvbmVudChib3QsIGNvbXBvbmVudCkpLFxuICAgICAgdmFsdWVzOiBwYXlsb2FkLmRhdGEudmFsdWVzLFxuICAgICAgaWQ6IHBheWxvYWQuZGF0YS5pZCA/IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuZGF0YS5pZCkgOiB1bmRlZmluZWQsXG4gICAgICBuYW1lOiBwYXlsb2FkLmRhdGEubmFtZSxcbiAgICAgIHJlc29sdmVkOiBwYXlsb2FkLmRhdGEucmVzb2x2ZWRcbiAgICAgICAgPyBib3QudHJhbnNmb3JtZXJzLmludGVyYWN0aW9uRGF0YVJlc29sdmVkKGJvdCwgcGF5bG9hZC5kYXRhLnJlc29sdmVkLCB7IHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkLCBndWlsZElkIH0pXG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgb3B0aW9uczogcGF5bG9hZC5kYXRhLm9wdGlvbnM/Lm1hcCgob3B0KSA9PiBib3QudHJhbnNmb3JtZXJzLmludGVyYWN0aW9uRGF0YU9wdGlvbnMoYm90LCBvcHQpKSxcbiAgICAgIHRhcmdldElkOiBwYXlsb2FkLmRhdGEudGFyZ2V0X2lkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5kYXRhLnRhcmdldF9pZCkgOiB1bmRlZmluZWQsXG4gICAgfVxuICB9XG5cbiAgLy8gVHlwZXNjcmlwdCBoYXMgYW4gaGFyZCB0aW1lIHdpdGggaW50ZXJhY3Rpb24uYm90LCBzbyB3ZSBuZWVkIHRvIHRlbGwgaGltIGZvciBzdXJlIHRoaXMgaW50ZXJhY3Rpb24gaXMgdGhlIG9mIHRoZSBjb3JyZWN0IHR5cGVcbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW50ZXJhY3Rpb24oYm90LCBwYXlsb2FkLCBpbnRlcmFjdGlvbiBhcyB1bmtub3duIGFzIHR5cGVvZiBib3QudHJhbnNmb3JtZXJzLiRpbmZlcnJlZFR5cGVzLmludGVyYWN0aW9uLCBleHRyYSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUludGVyYWN0aW9uRGF0YU9wdGlvbihib3Q6IEJvdCwgb3B0aW9uOiBEaXNjb3JkSW50ZXJhY3Rpb25EYXRhT3B0aW9uKTogSW50ZXJhY3Rpb25EYXRhT3B0aW9uIHtcbiAgY29uc3Qgb3B0ID0ge1xuICAgIG5hbWU6IG9wdGlvbi5uYW1lLFxuICAgIHR5cGU6IG9wdGlvbi50eXBlLFxuICAgIHZhbHVlOiBvcHRpb24udmFsdWUsXG4gICAgb3B0aW9uczogb3B0aW9uLm9wdGlvbnMsXG4gICAgZm9jdXNlZDogb3B0aW9uLmZvY3VzZWQsXG4gIH0gYXMgSW50ZXJhY3Rpb25EYXRhT3B0aW9uXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW50ZXJhY3Rpb25EYXRhT3B0aW9ucyhib3QsIG9wdGlvbiwgb3B0KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQoXG4gIGJvdDogQm90LFxuICBwYXlsb2FkOiBEaXNjb3JkSW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQsXG4gIGV4dHJhPzogeyBzaGFyZElkPzogbnVtYmVyOyBndWlsZElkPzogQmlnU3RyaW5nIH0sXG4pOiBUcmFuc2Zvcm1Qcm9wZXJ0eTxJbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5PiB7XG4gIGNvbnN0IHRyYW5zZm9ybWVkOiBJbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCA9IHt9XG5cbiAgaWYgKHBheWxvYWQubWVzc2FnZXMpIHtcbiAgICB0cmFuc2Zvcm1lZC5tZXNzYWdlcyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgT2JqZWN0LmVudHJpZXMocGF5bG9hZC5tZXNzYWdlcykubWFwKChbX2lkLCB2YWx1ZV0pID0+IHtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBUT0RPOiBEZWFsIHdpdGggcGFydGlhbHNcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZShib3QsIHZhbHVlLCB7IHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkIH0pIGFzIE1lc3NhZ2VcbiAgICAgICAgcmV0dXJuIFttZXNzYWdlLmlkLCBtZXNzYWdlXVxuICAgICAgfSksXG4gICAgKVxuICB9XG5cbiAgaWYgKHBheWxvYWQudXNlcnMpIHtcbiAgICB0cmFuc2Zvcm1lZC51c2VycyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgT2JqZWN0LmVudHJpZXMocGF5bG9hZC51c2VycykubWFwKChbX2lkLCB2YWx1ZV0pID0+IHtcbiAgICAgICAgY29uc3QgdXNlciA9IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHZhbHVlKSBhcyBVc2VyXG4gICAgICAgIHJldHVybiBbdXNlci5pZCwgdXNlcl1cbiAgICAgIH0pLFxuICAgIClcbiAgfVxuXG4gIGlmIChleHRyYT8uZ3VpbGRJZCAmJiBwYXlsb2FkLm1lbWJlcnMpIHtcbiAgICB0cmFuc2Zvcm1lZC5tZW1iZXJzID0gbmV3IENvbGxlY3Rpb24oXG4gICAgICBPYmplY3QuZW50cmllcyhwYXlsb2FkLm1lbWJlcnMpLm1hcCgoW2lkLCB2YWx1ZV0pID0+IHtcbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBUT0RPOiBEZWFsIHdpdGggcGFydGlhbHMsIHZhbHVlIGlzIG1pc3NpbmcgMiB2YWx1ZXMgYnV0IHRoZSB0cmFuc2Zvcm1lciBjYW4gaGFuZGxlIGl0LCBkZXNwaXRlIHdoYXQgdGhlIHR5cGVzIHNheXNcbiAgICAgICAgY29uc3QgbWVtYmVyID0gYm90LnRyYW5zZm9ybWVycy5tZW1iZXIoYm90LCB2YWx1ZSwge1xuICAgICAgICAgIGd1aWxkSWQ6IGV4dHJhLmd1aWxkSWQsXG4gICAgICAgICAgdXNlcklkOiBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShpZCksXG4gICAgICAgIH0pIGFzIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhTWVtYmVyPFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPlxuXG4gICAgICAgIC8vIFdlIG5lZWQgdG8gdGVsbCBUUyB0aGF0IHdlIGFyZSBzdXJlIHRoZSBpZCBpcyBhIGJpZ2ludFxuICAgICAgICByZXR1cm4gW21lbWJlci5pZCBhcyBiaWdpbnQsIG1lbWJlcl1cbiAgICAgIH0pLFxuICAgIClcbiAgfVxuXG4gIGlmIChleHRyYT8uZ3VpbGRJZCAmJiBwYXlsb2FkLnJvbGVzKSB7XG4gICAgdHJhbnNmb3JtZWQucm9sZXMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIE9iamVjdC5lbnRyaWVzKHBheWxvYWQucm9sZXMpLm1hcCgoW19pZCwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGNvbnN0IHJvbGUgPSBib3QudHJhbnNmb3JtZXJzLnJvbGUoYm90LCB2YWx1ZSwgeyBndWlsZElkOiBleHRyYS5ndWlsZElkIH0pIGFzIFJvbGVcbiAgICAgICAgcmV0dXJuIFtyb2xlLmlkLCByb2xlXVxuICAgICAgfSksXG4gICAgKVxuICB9XG5cbiAgaWYgKHBheWxvYWQuY2hhbm5lbHMpIHtcbiAgICB0cmFuc2Zvcm1lZC5jaGFubmVscyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgT2JqZWN0LmVudHJpZXMocGF5bG9hZC5jaGFubmVscykubWFwKChbX2lkLCB2YWx1ZV0pID0+IHtcbiAgICAgICAgY29uc3QgY2hhbm5lbCA9IGJvdC50cmFuc2Zvcm1lcnMuY2hhbm5lbChib3QsIHZhbHVlKSBhcyB1bmtub3duIGFzIEludGVyYWN0aW9uUmVzb2x2ZWREYXRhQ2hhbm5lbDxcbiAgICAgICAgICBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcyxcbiAgICAgICAgICBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yXG4gICAgICAgID5cbiAgICAgICAgLy8gV2UgbmVlZCB0byB0ZWxsIFRTIHRoYXQgd2UgYXJlIHN1cmUgdGhlIGlkIGlzIGEgYmlnaW50XG4gICAgICAgIHJldHVybiBbY2hhbm5lbC5pZCBhcyBiaWdpbnQsIGNoYW5uZWxdXG4gICAgICB9KSxcbiAgICApXG4gIH1cblxuICBpZiAocGF5bG9hZC5hdHRhY2htZW50cykge1xuICAgIHRyYW5zZm9ybWVkLmF0dGFjaG1lbnRzID0gbmV3IENvbGxlY3Rpb24oXG4gICAgICBPYmplY3QuZW50cmllcyhwYXlsb2FkLmF0dGFjaG1lbnRzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICBjb25zdCBpZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGtleSlcbiAgICAgICAgY29uc3QgYXR0YWNobWVudCA9IGJvdC50cmFuc2Zvcm1lcnMuYXR0YWNobWVudChib3QsIHZhbHVlKSBhcyBBdHRhY2htZW50XG4gICAgICAgIHJldHVybiBbaWQsIGF0dGFjaG1lbnRdXG4gICAgICB9KSxcbiAgICApXG4gIH1cblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5pbnRlcmFjdGlvbkRhdGFSZXNvbHZlZChib3QsIHBheWxvYWQsIHRyYW5zZm9ybWVkLCB7XG4gICAgc2hhcmRJZDogZXh0cmE/LnNoYXJkSWQsXG4gICAgZ3VpbGRJZDogZXh0cmE/Lmd1aWxkSWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShleHRyYS5ndWlsZElkKSA6IHVuZGVmaW5lZCxcbiAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZShcbiAgYm90OiBCb3QsXG4gIHBheWxvYWQ6IERpc2NvcmRJbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UsXG4gIGV4dHJhPzogeyBzaGFyZElkPzogbnVtYmVyIH0sXG4pOiBJbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2Uge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlXG4gIGNvbnN0IHJlc3BvbnNlID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8SW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj5cblxuICBpZiAocHJvcHMuaW50ZXJhY3Rpb24gJiYgcGF5bG9hZC5pbnRlcmFjdGlvbikgcmVzcG9uc2UuaW50ZXJhY3Rpb24gPSBib3QudHJhbnNmb3JtZXJzLmludGVyYWN0aW9uQ2FsbGJhY2soYm90LCBwYXlsb2FkLmludGVyYWN0aW9uKVxuICBpZiAocHJvcHMucmVzb3VyY2UgJiYgcGF5bG9hZC5yZXNvdXJjZSkgcmVzcG9uc2UucmVzb3VyY2UgPSBib3QudHJhbnNmb3JtZXJzLmludGVyYWN0aW9uUmVzb3VyY2UoYm90LCBwYXlsb2FkLnJlc291cmNlLCB7IHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkIH0pXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlKGJvdCwgcGF5bG9hZCwgcmVzcG9uc2UsIGV4dHJhKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW50ZXJhY3Rpb25DYWxsYmFjayhib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2spOiBJbnRlcmFjdGlvbkNhbGxiYWNrIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmludGVyYWN0aW9uQ2FsbGJhY2tcbiAgY29uc3QgY2FsbGJhY2sgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxJbnRlcmFjdGlvbkNhbGxiYWNrLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj5cblxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgY2FsbGJhY2suaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmlkKVxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGNhbGxiYWNrLnR5cGUgPSBwYXlsb2FkLnR5cGVcbiAgaWYgKHByb3BzLmFjdGl2aXR5SW5zdGFuY2VJZCAmJiBwYXlsb2FkLmFjdGl2aXR5X2luc3RhbmNlX2lkKSBjYWxsYmFjay5hY3Rpdml0eUluc3RhbmNlSWQgPSBwYXlsb2FkLmFjdGl2aXR5X2luc3RhbmNlX2lkXG4gIGlmIChwcm9wcy5yZXNwb25zZU1lc3NhZ2VJZCAmJiBwYXlsb2FkLnJlc3BvbnNlX21lc3NhZ2VfaWQpIGNhbGxiYWNrLnJlc3BvbnNlTWVzc2FnZUlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5yZXNwb25zZV9tZXNzYWdlX2lkKVxuICBpZiAocHJvcHMucmVzcG9uc2VNZXNzYWdlRXBoZW1lcmFsICYmIHBheWxvYWQucmVzcG9uc2VfbWVzc2FnZV9lcGhlbWVyYWwpIGNhbGxiYWNrLnJlc3BvbnNlTWVzc2FnZUVwaGVtZXJhbCA9IHBheWxvYWQucmVzcG9uc2VfbWVzc2FnZV9lcGhlbWVyYWxcbiAgaWYgKHByb3BzLnJlc3BvbnNlTWVzc2FnZUxvYWRpbmcgJiYgcGF5bG9hZC5yZXNwb25zZV9tZXNzYWdlX2xvYWRpbmcpIGNhbGxiYWNrLnJlc3BvbnNlTWVzc2FnZUxvYWRpbmcgPSBwYXlsb2FkLnJlc3BvbnNlX21lc3NhZ2VfbG9hZGluZ1xuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLmludGVyYWN0aW9uQ2FsbGJhY2soYm90LCBwYXlsb2FkLCBjYWxsYmFjaylcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUludGVyYWN0aW9uUmVzb3VyY2UoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRJbnRlcmFjdGlvblJlc291cmNlLCBleHRyYT86IHsgc2hhcmRJZD86IG51bWJlciB9KTogSW50ZXJhY3Rpb25SZXNvdXJjZSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5pbnRlcmFjdGlvblJlc291cmNlXG4gIGNvbnN0IHJlc291cmNlID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8SW50ZXJhY3Rpb25SZXNvdXJjZSwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSByZXNvdXJjZS50eXBlID0gcGF5bG9hZC50eXBlXG4gIGlmIChwcm9wcy5hY3Rpdml0eUluc3RhbmNlICYmIHBheWxvYWQuYWN0aXZpdHlfaW5zdGFuY2UpIHJlc291cmNlLmFjdGl2aXR5SW5zdGFuY2UgPSBwYXlsb2FkLmFjdGl2aXR5X2luc3RhbmNlXG4gIGlmIChwcm9wcy5tZXNzYWdlICYmIHBheWxvYWQubWVzc2FnZSkgcmVzb3VyY2UubWVzc2FnZSA9IGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZShib3QsIHBheWxvYWQubWVzc2FnZSwgeyBzaGFyZElkOiBleHRyYT8uc2hhcmRJZCB9KVxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLmludGVyYWN0aW9uUmVzb3VyY2UoYm90LCBwYXlsb2FkLCByZXNvdXJjZSwgZXh0cmEpXG59XG4iXSwibmFtZXMiOlsiRGlzY29yZEFwcGxpY2F0aW9uSW50ZWdyYXRpb25UeXBlIiwiSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzIiwiSW50ZXJhY3Rpb25UeXBlcyIsIk1lc3NhZ2VGbGFncyIsIkNvbGxlY3Rpb24iLCJiYXNlSW50ZXJhY3Rpb24iLCJ1bmRlZmluZWQiLCJyZXNwb25kIiwicmVzcG9uc2UiLCJvcHRpb25zIiwidHlwZSIsIkNoYW5uZWxNZXNzYWdlV2l0aFNvdXJjZSIsImNvbnRlbnQiLCJ0aXRsZSIsIk1vZGFsIiwiQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlIiwiQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlUmVzdWx0IiwiaXNQcml2YXRlIiwiZmxhZ3MiLCJFcGhlbWVyYWwiLCJhY2tub3dsZWRnZWQiLCJib3QiLCJoZWxwZXJzIiwic2VuZEZvbGxvd3VwTWVzc2FnZSIsInRva2VuIiwiTW9kYWxTdWJtaXQiLCJFcnJvciIsInJlc3VsdCIsInNlbmRJbnRlcmFjdGlvblJlc3BvbnNlIiwiaWQiLCJkYXRhIiwid2l0aFJlc3BvbnNlIiwiZWRpdCIsIm1lc3NhZ2VJZCIsImVkaXRGb2xsb3d1cE1lc3NhZ2UiLCJNZXNzYWdlQ29tcG9uZW50IiwiVXBkYXRlTWVzc2FnZSIsImVkaXRPcmlnaW5hbEludGVyYWN0aW9uUmVzcG9uc2UiLCJkZWZlckVkaXQiLCJEZWZlcnJlZFVwZGF0ZU1lc3NhZ2UiLCJkZWZlciIsIkRlZmVycmVkQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlIiwiZGVsZXRlIiwiZGVsZXRlRm9sbG93dXBNZXNzYWdlIiwiZGVsZXRlT3JpZ2luYWxJbnRlcmFjdGlvblJlc3BvbnNlIiwidHJhbnNmb3JtSW50ZXJhY3Rpb24iLCJwYXlsb2FkIiwiZXh0cmEiLCJndWlsZElkIiwiZ3VpbGRfaWQiLCJ0cmFuc2Zvcm1lcnMiLCJzbm93Zmxha2UiLCJpbnRlcmFjdGlvbiIsIk9iamVjdCIsImNyZWF0ZSIsInByb3BzIiwiZGVzaXJlZFByb3BlcnRpZXMiLCJhcHBsaWNhdGlvbklkIiwiYXBwbGljYXRpb25faWQiLCJ2ZXJzaW9uIiwibG9jYWxlIiwiZ3VpbGRMb2NhbGUiLCJndWlsZF9sb2NhbGUiLCJndWlsZCIsInNoYXJkSWQiLCJ1c2VyIiwibWVtYmVyIiwiYXBwUGVybWlzc2lvbnMiLCJhcHBfcGVybWlzc2lvbnMiLCJtZXNzYWdlIiwiY2hhbm5lbCIsImNoYW5uZWxJZCIsImNoYW5uZWxfaWQiLCJ1c2VySWQiLCJlbnRpdGxlbWVudHMiLCJtYXAiLCJlIiwiZW50aXRsZW1lbnQiLCJhdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzIiwiYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzIiwiR3VpbGRJbnN0YWxsIiwiVXNlckluc3RhbGwiLCJjb250ZXh0IiwiYXR0YWNobWVudFNpemVMaW1pdCIsImF0dGFjaG1lbnRfc2l6ZV9saW1pdCIsImNvbXBvbmVudFR5cGUiLCJjb21wb25lbnRfdHlwZSIsImN1c3RvbUlkIiwiY3VzdG9tX2lkIiwiY29tcG9uZW50cyIsImNvbXBvbmVudCIsInZhbHVlcyIsIm5hbWUiLCJyZXNvbHZlZCIsImludGVyYWN0aW9uRGF0YVJlc29sdmVkIiwib3B0IiwiaW50ZXJhY3Rpb25EYXRhT3B0aW9ucyIsInRhcmdldElkIiwidGFyZ2V0X2lkIiwiY3VzdG9taXplcnMiLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvbkRhdGFPcHRpb24iLCJvcHRpb24iLCJ2YWx1ZSIsImZvY3VzZWQiLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCIsInRyYW5zZm9ybWVkIiwibWVzc2FnZXMiLCJlbnRyaWVzIiwiX2lkIiwidXNlcnMiLCJtZW1iZXJzIiwicm9sZXMiLCJyb2xlIiwiY2hhbm5lbHMiLCJhdHRhY2htZW50cyIsImtleSIsImF0dGFjaG1lbnQiLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UiLCJpbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UiLCJpbnRlcmFjdGlvbkNhbGxiYWNrIiwicmVzb3VyY2UiLCJpbnRlcmFjdGlvblJlc291cmNlIiwidHJhbnNmb3JtSW50ZXJhY3Rpb25DYWxsYmFjayIsImNhbGxiYWNrIiwiYWN0aXZpdHlJbnN0YW5jZUlkIiwiYWN0aXZpdHlfaW5zdGFuY2VfaWQiLCJyZXNwb25zZU1lc3NhZ2VJZCIsInJlc3BvbnNlX21lc3NhZ2VfaWQiLCJyZXNwb25zZU1lc3NhZ2VFcGhlbWVyYWwiLCJyZXNwb25zZV9tZXNzYWdlX2VwaGVtZXJhbCIsInJlc3BvbnNlTWVzc2FnZUxvYWRpbmciLCJyZXNwb25zZV9tZXNzYWdlX2xvYWRpbmciLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvblJlc291cmNlIiwiYWN0aXZpdHlJbnN0YW5jZSIsImFjdGl2aXR5X2luc3RhbmNlIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUNFQSxpQ0FBaUMsRUFPakNDLHdCQUF3QixFQUN4QkMsZ0JBQWdCLEVBQ2hCQyxZQUFZLFFBQ1Asb0JBQW1CO0FBQzFCLFNBQVNDLFVBQVUsUUFBUSxvQkFBbUI7QUF1QjlDLG9JQUFvSTtBQUNwSSxzR0FBc0c7QUFDdEcsT0FBTyxNQUFNQyxrQkFBNEg7SUFDdkksMkVBQTJFO0lBQzNFLEdBQUlDLFNBQVM7SUFFYixNQUFNQyxTQUFRQyxRQUFRLEVBQUVDLE9BQU87UUFDN0IsSUFBSUMsT0FBT1QseUJBQXlCVSx3QkFBd0I7UUFFNUQsNERBQTREO1FBQzVELElBQUksT0FBT0gsYUFBYSxVQUFVQSxXQUFXO1lBQUVJLFNBQVNKO1FBQVM7UUFFakUsNEZBQTRGO1FBQzVGLElBQUlBLFNBQVNLLEtBQUssRUFBRUgsT0FBT1QseUJBQXlCYSxLQUFLO1FBQ3pELElBQUksSUFBSSxDQUFDSixJQUFJLEtBQUtSLGlCQUFpQmEsOEJBQThCLEVBQUVMLE9BQU9ULHlCQUF5QmUsb0NBQW9DO1FBQ3ZJLElBQUlOLFNBQVNULHlCQUF5QlUsd0JBQXdCLElBQUlGLFNBQVNRLFdBQVc7WUFDcEZULFNBQVNVLEtBQUssS0FBSztZQUNuQlYsU0FBU1UsS0FBSyxJQUFJZixhQUFhZ0IsU0FBUztRQUMxQztRQUVBLHlGQUF5RjtRQUN6RixJQUFJLElBQUksQ0FBQ0MsWUFBWSxFQUFFLE9BQU8sTUFBTSxJQUFJLENBQUNDLEdBQUcsQ0FBQ0MsT0FBTyxDQUFDQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUNDLEtBQUssRUFBRWhCO1FBRXJGLDJCQUEyQjtRQUMzQixJQUFJLElBQUksQ0FBQ0UsSUFBSSxLQUFLUixpQkFBaUJ1QixXQUFXLElBQUlmLFNBQVNULHlCQUF5QmEsS0FBSyxFQUN2RixNQUFNLElBQUlZLE1BQU07UUFFbEIsTUFBTUMsU0FBUyxNQUFNLElBQUksQ0FBQ04sR0FBRyxDQUFDQyxPQUFPLENBQUNNLHVCQUF1QixDQUMzRCxJQUFJLENBQUNDLEVBQUUsRUFDUCxJQUFJLENBQUNMLEtBQUssRUFDVjtZQUFFZDtZQUFNb0IsTUFBTXRCO1FBQVMsR0FDdkI7WUFBRXVCLGNBQWN0QixTQUFTc0I7UUFBYTtRQUV4QyxJQUFJLENBQUNYLFlBQVksR0FBRztRQUNwQixPQUFPTztJQUNUO0lBQ0EsTUFBTUssTUFBS3hCLFFBQVEsRUFBRXlCLFNBQVMsRUFBRXhCLE9BQU87UUFDckMsSUFBSSxJQUFJLENBQUNDLElBQUksS0FBS1IsaUJBQWlCYSw4QkFBOEIsRUFBRSxNQUFNLElBQUlXLE1BQU07UUFFbkYsNERBQTREO1FBQzVELElBQUksT0FBT2xCLGFBQWEsVUFBVUEsV0FBVztZQUFFSSxTQUFTSjtRQUFTO1FBRWpFLElBQUl5QixXQUFXO1lBQ2IsT0FBTyxNQUFNLElBQUksQ0FBQ1osR0FBRyxFQUFFQyxRQUFRWSxvQkFBb0IsSUFBSSxDQUFDVixLQUFLLEVBQUVTLFdBQVd6QjtRQUM1RTtRQUVBLElBQUksQ0FBQyxJQUFJLENBQUNZLFlBQVksRUFBRTtZQUN0QixJQUFJLElBQUksQ0FBQ1YsSUFBSSxLQUFLUixpQkFBaUJpQyxnQkFBZ0IsSUFBSSxJQUFJLENBQUN6QixJQUFJLEtBQUtSLGlCQUFpQnVCLFdBQVcsRUFDL0YsTUFBTSxJQUFJQyxNQUFNO1lBRWxCLE1BQU1DLFNBQVMsTUFBTSxJQUFJLENBQUNOLEdBQUcsQ0FBQ0MsT0FBTyxDQUFDTSx1QkFBdUIsQ0FDM0QsSUFBSSxDQUFDQyxFQUFFLEVBQ1AsSUFBSSxDQUFDTCxLQUFLLEVBQ1Y7Z0JBQUVkLE1BQU1ULHlCQUF5Qm1DLGFBQWE7Z0JBQUVOLE1BQU10QjtZQUFTLEdBQy9EQztZQUVGLElBQUksQ0FBQ1csWUFBWSxHQUFHO1lBQ3BCLE9BQU9PO1FBQ1Q7UUFFQSxPQUFPLE1BQU0sSUFBSSxDQUFDTixHQUFHLENBQUNDLE9BQU8sQ0FBQ2UsK0JBQStCLENBQUMsSUFBSSxDQUFDYixLQUFLLEVBQUVoQjtJQUM1RTtJQUNBLE1BQU04QixXQUFVN0IsT0FBTztRQUNyQixJQUFJLElBQUksQ0FBQ0MsSUFBSSxLQUFLUixpQkFBaUJhLDhCQUE4QixFQUFFLE1BQU0sSUFBSVcsTUFBTTtRQUNuRixJQUFJLElBQUksQ0FBQ04sWUFBWSxFQUFFLE1BQU0sSUFBSU0sTUFBTTtRQUV2QyxJQUFJLElBQUksQ0FBQ2hCLElBQUksS0FBS1IsaUJBQWlCaUMsZ0JBQWdCLElBQUksSUFBSSxDQUFDekIsSUFBSSxLQUFLUixpQkFBaUJ1QixXQUFXLEVBQy9GLE1BQU0sSUFBSUMsTUFBTTtRQUVsQixNQUFNQyxTQUFTLE1BQU0sSUFBSSxDQUFDTixHQUFHLENBQUNDLE9BQU8sQ0FBQ00sdUJBQXVCLENBQzNELElBQUksQ0FBQ0MsRUFBRSxFQUNQLElBQUksQ0FBQ0wsS0FBSyxFQUNWO1lBQUVkLE1BQU1ULHlCQUF5QnNDLHFCQUFxQjtRQUFDLEdBQ3ZEOUI7UUFFRixJQUFJLENBQUNXLFlBQVksR0FBRztRQUNwQixPQUFPTztJQUNUO0lBQ0EsTUFBTWEsT0FBTXZCLFNBQVMsRUFBRVIsT0FBTztRQUM1QixJQUFJLElBQUksQ0FBQ1csWUFBWSxFQUFFLE1BQU0sSUFBSU0sTUFBTTtRQUV2QyxNQUFNQyxTQUFTLE1BQU0sSUFBSSxDQUFDTixHQUFHLENBQUNDLE9BQU8sQ0FBQ00sdUJBQXVCLENBQzNELElBQUksQ0FBQ0MsRUFBRSxFQUNQLElBQUksQ0FBQ0wsS0FBSyxFQUNWO1lBQ0VkLE1BQU1ULHlCQUF5QndDLGdDQUFnQztZQUMvRFgsTUFBTTtnQkFDSlosT0FBT0QsWUFBWWQsYUFBYWdCLFNBQVMsR0FBR2I7WUFDOUM7UUFDRixHQUNBRztRQUVGLElBQUksQ0FBQ1csWUFBWSxHQUFHO1FBQ3BCLE9BQU9PO0lBQ1Q7SUFDQSxNQUFNZSxRQUFPVCxTQUFTO1FBQ3BCLElBQUksSUFBSSxDQUFDdkIsSUFBSSxLQUFLUixpQkFBaUJhLDhCQUE4QixFQUFFLE1BQU0sSUFBSVcsTUFBTTtRQUVuRixJQUFJTyxXQUFXLE9BQU8sTUFBTSxJQUFJLENBQUNaLEdBQUcsRUFBRUMsUUFBUXFCLHNCQUFzQixJQUFJLENBQUNuQixLQUFLLEVBQUVTO2FBQzNFLE9BQU8sTUFBTSxJQUFJLENBQUNaLEdBQUcsRUFBRUMsUUFBUXNCLGtDQUFrQyxJQUFJLENBQUNwQixLQUFLO0lBQ2xGO0FBQ0YsRUFBQztBQUVELE9BQU8sU0FBU3FCLHFCQUFxQnhCLEdBQVEsRUFBRXlCLE9BQTJCLEVBQUVDLEtBQTRCO0lBQ3RHLE1BQU1DLFVBQVVGLFFBQVFHLFFBQVEsR0FBRzVCLElBQUk2QixZQUFZLENBQUNDLFNBQVMsQ0FBQ0wsUUFBUUcsUUFBUSxJQUFJM0M7SUFFbEYsTUFBTThDLGNBQXdHQyxPQUFPQyxNQUFNLENBQUNqRDtJQUM1SCxNQUFNa0QsUUFBUWxDLElBQUk2QixZQUFZLENBQUNNLGlCQUFpQixDQUFDSixXQUFXO0lBRTVEQSxZQUFZL0IsR0FBRyxHQUFHQTtJQUNsQitCLFlBQVloQyxZQUFZLEdBQUc7SUFFM0IsSUFBSW1DLE1BQU0xQixFQUFFLElBQUlpQixRQUFRakIsRUFBRSxFQUFFdUIsWUFBWXZCLEVBQUUsR0FBR1IsSUFBSTZCLFlBQVksQ0FBQ0MsU0FBUyxDQUFDTCxRQUFRakIsRUFBRTtJQUNsRixJQUFJMEIsTUFBTUUsYUFBYSxJQUFJWCxRQUFRWSxjQUFjLEVBQUVOLFlBQVlLLGFBQWEsR0FBR3BDLElBQUk2QixZQUFZLENBQUNDLFNBQVMsQ0FBQ0wsUUFBUVksY0FBYztJQUNoSSxJQUFJSCxNQUFNN0MsSUFBSSxJQUFJb0MsUUFBUXBDLElBQUksRUFBRTBDLFlBQVkxQyxJQUFJLEdBQUdvQyxRQUFRcEMsSUFBSTtJQUMvRCxJQUFJNkMsTUFBTS9CLEtBQUssSUFBSXNCLFFBQVF0QixLQUFLLEVBQUU0QixZQUFZNUIsS0FBSyxHQUFHc0IsUUFBUXRCLEtBQUs7SUFDbkUsSUFBSStCLE1BQU1JLE9BQU8sSUFBSWIsUUFBUWEsT0FBTyxFQUFFUCxZQUFZTyxPQUFPLEdBQUdiLFFBQVFhLE9BQU87SUFDM0UsSUFBSUosTUFBTUssTUFBTSxJQUFJZCxRQUFRYyxNQUFNLEVBQUVSLFlBQVlRLE1BQU0sR0FBR2QsUUFBUWMsTUFBTTtJQUN2RSxJQUFJTCxNQUFNTSxXQUFXLElBQUlmLFFBQVFnQixZQUFZLEVBQUVWLFlBQVlTLFdBQVcsR0FBR2YsUUFBUWdCLFlBQVk7SUFDN0YsSUFBSVAsTUFBTVEsS0FBSyxJQUFJakIsUUFBUWlCLEtBQUssRUFDOUIsNERBQTREO0lBQzVEWCxZQUFZVyxLQUFLLEdBQUcxQyxJQUFJNkIsWUFBWSxDQUFDYSxLQUFLLENBQUMxQyxLQUFLeUIsUUFBUWlCLEtBQUssRUFBRTtRQUFFQyxTQUFTakIsT0FBT2lCO0lBQVE7SUFDM0YsSUFBSVQsTUFBTVAsT0FBTyxJQUFJQSxTQUFTSSxZQUFZSixPQUFPLEdBQUdBO0lBQ3BELElBQUlPLE1BQU1VLElBQUksRUFBRTtRQUNkLElBQUluQixRQUFRb0IsTUFBTSxFQUFFRCxNQUFNYixZQUFZYSxJQUFJLEdBQUc1QyxJQUFJNkIsWUFBWSxDQUFDZSxJQUFJLENBQUM1QyxLQUFLeUIsUUFBUW9CLE1BQU0sRUFBRUQ7YUFDbkYsSUFBSW5CLFFBQVFtQixJQUFJLEVBQUViLFlBQVlhLElBQUksR0FBRzVDLElBQUk2QixZQUFZLENBQUNlLElBQUksQ0FBQzVDLEtBQUt5QixRQUFRbUIsSUFBSTtJQUNuRjtJQUNBLElBQUlWLE1BQU1ZLGNBQWMsSUFBSXJCLFFBQVFzQixlQUFlLEVBQUVoQixZQUFZZSxjQUFjLEdBQUc5QyxJQUFJNkIsWUFBWSxDQUFDQyxTQUFTLENBQUNMLFFBQVFzQixlQUFlO0lBQ3BJLElBQUliLE1BQU1jLE9BQU8sSUFBSXZCLFFBQVF1QixPQUFPLEVBQUVqQixZQUFZaUIsT0FBTyxHQUFHaEQsSUFBSTZCLFlBQVksQ0FBQ21CLE9BQU8sQ0FBQ2hELEtBQUt5QixRQUFRdUIsT0FBTyxFQUFFO1FBQUVMLFNBQVNqQixPQUFPaUI7SUFBUTtJQUNySSxJQUFJVCxNQUFNZSxPQUFPLElBQUl4QixRQUFRd0IsT0FBTyxFQUNsQyxrREFBa0Q7SUFDbERsQixZQUFZa0IsT0FBTyxHQUFHakQsSUFBSTZCLFlBQVksQ0FBQ29CLE9BQU8sQ0FBQ2pELEtBQUt5QixRQUFRd0IsT0FBTyxFQUFFO1FBQUV0QjtJQUFRO0lBQ2pGLElBQUlPLE1BQU1nQixTQUFTLElBQUl6QixRQUFRMEIsVUFBVSxFQUFFcEIsWUFBWW1CLFNBQVMsR0FBR2xELElBQUk2QixZQUFZLENBQUNDLFNBQVMsQ0FBQ0wsUUFBUTBCLFVBQVU7SUFDaEgsSUFBSWpCLE1BQU1XLE1BQU0sSUFBSWxCLFdBQVdGLFFBQVFvQixNQUFNLEVBQzNDZCxZQUFZYyxNQUFNLEdBQUc3QyxJQUFJNkIsWUFBWSxDQUFDZ0IsTUFBTSxDQUFDN0MsS0FBS3lCLFFBQVFvQixNQUFNLEVBQUU7UUFDaEVsQjtRQUNBeUIsUUFBUTNCLFFBQVFvQixNQUFNLEVBQUVELEtBQUtwQyxNQUFNaUIsUUFBUW1CLElBQUksRUFBRXBDO0lBQ25EO0lBQ0YsSUFBSTBCLE1BQU1tQixZQUFZLElBQUk1QixRQUFRNEIsWUFBWSxFQUFFdEIsWUFBWXNCLFlBQVksR0FBRzVCLFFBQVE0QixZQUFZLENBQUNDLEdBQUcsQ0FBQyxDQUFDQyxJQUFNdkQsSUFBSTZCLFlBQVksQ0FBQzJCLFdBQVcsQ0FBQ3hELEtBQUt1RDtJQUM3SSxJQUFJckIsTUFBTXVCLDRCQUE0QixJQUFJaEMsUUFBUWlDLDhCQUE4QixFQUFFO1FBQ2hGM0IsWUFBWTBCLDRCQUE0QixHQUFHLENBQUM7UUFFNUMsSUFBSWhDLFFBQVFpQyw4QkFBOEIsQ0FBQyxJQUFJLEVBQzdDM0IsWUFBWTBCLDRCQUE0QixDQUFDOUUsa0NBQWtDZ0YsWUFBWSxDQUFDLEdBQUczRCxJQUFJNkIsWUFBWSxDQUFDQyxTQUFTLENBQ25ITCxRQUFRaUMsOEJBQThCLENBQUMsSUFBSTtRQUUvQyxJQUFJakMsUUFBUWlDLDhCQUE4QixDQUFDLElBQUksRUFDN0MzQixZQUFZMEIsNEJBQTRCLENBQUM5RSxrQ0FBa0NpRixXQUFXLENBQUMsR0FBRzVELElBQUk2QixZQUFZLENBQUNDLFNBQVMsQ0FDbEhMLFFBQVFpQyw4QkFBOEIsQ0FBQyxJQUFJO0lBRWpEO0lBQ0EsSUFBSXhCLE1BQU0yQixPQUFPLElBQUlwQyxRQUFRb0MsT0FBTyxFQUFFOUIsWUFBWThCLE9BQU8sR0FBR3BDLFFBQVFvQyxPQUFPO0lBQzNFLElBQUkzQixNQUFNNEIsbUJBQW1CLElBQUlyQyxRQUFRc0MscUJBQXFCLEVBQUVoQyxZQUFZK0IsbUJBQW1CLEdBQUdyQyxRQUFRc0MscUJBQXFCO0lBQy9ILElBQUk3QixNQUFNekIsSUFBSSxJQUFJZ0IsUUFBUWhCLElBQUksRUFBRTtRQUM5QnNCLFlBQVl0QixJQUFJLEdBQUc7WUFDakJwQixNQUFNb0MsUUFBUWhCLElBQUksQ0FBQ3BCLElBQUk7WUFDdkIyRSxlQUFldkMsUUFBUWhCLElBQUksQ0FBQ3dELGNBQWM7WUFDMUNDLFVBQVV6QyxRQUFRaEIsSUFBSSxDQUFDMEQsU0FBUztZQUNoQ0MsWUFBWTNDLFFBQVFoQixJQUFJLENBQUMyRCxVQUFVLEVBQUVkLElBQUksQ0FBQ2UsWUFBY3JFLElBQUk2QixZQUFZLENBQUN3QyxTQUFTLENBQUNyRSxLQUFLcUU7WUFDeEZDLFFBQVE3QyxRQUFRaEIsSUFBSSxDQUFDNkQsTUFBTTtZQUMzQjlELElBQUlpQixRQUFRaEIsSUFBSSxDQUFDRCxFQUFFLEdBQUdSLElBQUk2QixZQUFZLENBQUNDLFNBQVMsQ0FBQ0wsUUFBUWhCLElBQUksQ0FBQ0QsRUFBRSxJQUFJdkI7WUFDcEVzRixNQUFNOUMsUUFBUWhCLElBQUksQ0FBQzhELElBQUk7WUFDdkJDLFVBQVUvQyxRQUFRaEIsSUFBSSxDQUFDK0QsUUFBUSxHQUMzQnhFLElBQUk2QixZQUFZLENBQUM0Qyx1QkFBdUIsQ0FBQ3pFLEtBQUt5QixRQUFRaEIsSUFBSSxDQUFDK0QsUUFBUSxFQUFFO2dCQUFFN0IsU0FBU2pCLE9BQU9pQjtnQkFBU2hCO1lBQVEsS0FDeEcxQztZQUNKRyxTQUFTcUMsUUFBUWhCLElBQUksQ0FBQ3JCLE9BQU8sRUFBRWtFLElBQUksQ0FBQ29CLE1BQVExRSxJQUFJNkIsWUFBWSxDQUFDOEMsc0JBQXNCLENBQUMzRSxLQUFLMEU7WUFDekZFLFVBQVVuRCxRQUFRaEIsSUFBSSxDQUFDb0UsU0FBUyxHQUFHN0UsSUFBSTZCLFlBQVksQ0FBQ0MsU0FBUyxDQUFDTCxRQUFRaEIsSUFBSSxDQUFDb0UsU0FBUyxJQUFJNUY7UUFDMUY7SUFDRjtJQUVBLGdJQUFnSTtJQUNoSSxPQUFPZSxJQUFJNkIsWUFBWSxDQUFDaUQsV0FBVyxDQUFDL0MsV0FBVyxDQUFDL0IsS0FBS3lCLFNBQVNNLGFBQThFTDtBQUM5STtBQUVBLE9BQU8sU0FBU3FELCtCQUErQi9FLEdBQVEsRUFBRWdGLE1BQW9DO0lBQzNGLE1BQU1OLE1BQU07UUFDVkgsTUFBTVMsT0FBT1QsSUFBSTtRQUNqQmxGLE1BQU0yRixPQUFPM0YsSUFBSTtRQUNqQjRGLE9BQU9ELE9BQU9DLEtBQUs7UUFDbkI3RixTQUFTNEYsT0FBTzVGLE9BQU87UUFDdkI4RixTQUFTRixPQUFPRSxPQUFPO0lBQ3pCO0lBRUEsT0FBT2xGLElBQUk2QixZQUFZLENBQUNpRCxXQUFXLENBQUNILHNCQUFzQixDQUFDM0UsS0FBS2dGLFFBQVFOO0FBQzFFO0FBRUEsT0FBTyxTQUFTUyxpQ0FDZG5GLEdBQVEsRUFDUnlCLE9BQXVDLEVBQ3ZDQyxLQUFpRDtJQUVqRCxNQUFNMEQsY0FBdUMsQ0FBQztJQUU5QyxJQUFJM0QsUUFBUTRELFFBQVEsRUFBRTtRQUNwQkQsWUFBWUMsUUFBUSxHQUFHLElBQUl0RyxXQUN6QmlELE9BQU9zRCxPQUFPLENBQUM3RCxRQUFRNEQsUUFBUSxFQUFFL0IsR0FBRyxDQUFDLENBQUMsQ0FBQ2lDLEtBQUtOLE1BQU07WUFDaEQsNENBQTRDO1lBQzVDLE1BQU1qQyxVQUFVaEQsSUFBSTZCLFlBQVksQ0FBQ21CLE9BQU8sQ0FBQ2hELEtBQUtpRixPQUFPO2dCQUFFdEMsU0FBU2pCLE9BQU9pQjtZQUFRO1lBQy9FLE9BQU87Z0JBQUNLLFFBQVF4QyxFQUFFO2dCQUFFd0M7YUFBUTtRQUM5QjtJQUVKO0lBRUEsSUFBSXZCLFFBQVErRCxLQUFLLEVBQUU7UUFDakJKLFlBQVlJLEtBQUssR0FBRyxJQUFJekcsV0FDdEJpRCxPQUFPc0QsT0FBTyxDQUFDN0QsUUFBUStELEtBQUssRUFBRWxDLEdBQUcsQ0FBQyxDQUFDLENBQUNpQyxLQUFLTixNQUFNO1lBQzdDLE1BQU1yQyxPQUFPNUMsSUFBSTZCLFlBQVksQ0FBQ2UsSUFBSSxDQUFDNUMsS0FBS2lGO1lBQ3hDLE9BQU87Z0JBQUNyQyxLQUFLcEMsRUFBRTtnQkFBRW9DO2FBQUs7UUFDeEI7SUFFSjtJQUVBLElBQUlsQixPQUFPQyxXQUFXRixRQUFRZ0UsT0FBTyxFQUFFO1FBQ3JDTCxZQUFZSyxPQUFPLEdBQUcsSUFBSTFHLFdBQ3hCaUQsT0FBT3NELE9BQU8sQ0FBQzdELFFBQVFnRSxPQUFPLEVBQUVuQyxHQUFHLENBQUMsQ0FBQyxDQUFDOUMsSUFBSXlFLE1BQU07WUFDOUMsc0lBQXNJO1lBQ3RJLE1BQU1wQyxTQUFTN0MsSUFBSTZCLFlBQVksQ0FBQ2dCLE1BQU0sQ0FBQzdDLEtBQUtpRixPQUFPO2dCQUNqRHRELFNBQVNELE1BQU1DLE9BQU87Z0JBQ3RCeUIsUUFBUXBELElBQUk2QixZQUFZLENBQUNDLFNBQVMsQ0FBQ3RCO1lBQ3JDO1lBRUEseURBQXlEO1lBQ3pELE9BQU87Z0JBQUNxQyxPQUFPckMsRUFBRTtnQkFBWXFDO2FBQU87UUFDdEM7SUFFSjtJQUVBLElBQUluQixPQUFPQyxXQUFXRixRQUFRaUUsS0FBSyxFQUFFO1FBQ25DTixZQUFZTSxLQUFLLEdBQUcsSUFBSTNHLFdBQ3RCaUQsT0FBT3NELE9BQU8sQ0FBQzdELFFBQVFpRSxLQUFLLEVBQUVwQyxHQUFHLENBQUMsQ0FBQyxDQUFDaUMsS0FBS04sTUFBTTtZQUM3QyxNQUFNVSxPQUFPM0YsSUFBSTZCLFlBQVksQ0FBQzhELElBQUksQ0FBQzNGLEtBQUtpRixPQUFPO2dCQUFFdEQsU0FBU0QsTUFBTUMsT0FBTztZQUFDO1lBQ3hFLE9BQU87Z0JBQUNnRSxLQUFLbkYsRUFBRTtnQkFBRW1GO2FBQUs7UUFDeEI7SUFFSjtJQUVBLElBQUlsRSxRQUFRbUUsUUFBUSxFQUFFO1FBQ3BCUixZQUFZUSxRQUFRLEdBQUcsSUFBSTdHLFdBQ3pCaUQsT0FBT3NELE9BQU8sQ0FBQzdELFFBQVFtRSxRQUFRLEVBQUV0QyxHQUFHLENBQUMsQ0FBQyxDQUFDaUMsS0FBS04sTUFBTTtZQUNoRCxNQUFNaEMsVUFBVWpELElBQUk2QixZQUFZLENBQUNvQixPQUFPLENBQUNqRCxLQUFLaUY7WUFJOUMseURBQXlEO1lBQ3pELE9BQU87Z0JBQUNoQyxRQUFRekMsRUFBRTtnQkFBWXlDO2FBQVE7UUFDeEM7SUFFSjtJQUVBLElBQUl4QixRQUFRb0UsV0FBVyxFQUFFO1FBQ3ZCVCxZQUFZUyxXQUFXLEdBQUcsSUFBSTlHLFdBQzVCaUQsT0FBT3NELE9BQU8sQ0FBQzdELFFBQVFvRSxXQUFXLEVBQUV2QyxHQUFHLENBQUMsQ0FBQyxDQUFDd0MsS0FBS2IsTUFBTTtZQUNuRCxNQUFNekUsS0FBS1IsSUFBSTZCLFlBQVksQ0FBQ0MsU0FBUyxDQUFDZ0U7WUFDdEMsTUFBTUMsYUFBYS9GLElBQUk2QixZQUFZLENBQUNrRSxVQUFVLENBQUMvRixLQUFLaUY7WUFDcEQsT0FBTztnQkFBQ3pFO2dCQUFJdUY7YUFBVztRQUN6QjtJQUVKO0lBRUEsT0FBTy9GLElBQUk2QixZQUFZLENBQUNpRCxXQUFXLENBQUNMLHVCQUF1QixDQUFDekUsS0FBS3lCLFNBQVMyRCxhQUFhO1FBQ3JGekMsU0FBU2pCLE9BQU9pQjtRQUNoQmhCLFNBQVNELE9BQU9DLFVBQVUzQixJQUFJNkIsWUFBWSxDQUFDQyxTQUFTLENBQUNKLE1BQU1DLE9BQU8sSUFBSTFDO0lBQ3hFO0FBQ0Y7QUFFQSxPQUFPLFNBQVMrRyxxQ0FDZGhHLEdBQVEsRUFDUnlCLE9BQTJDLEVBQzNDQyxLQUE0QjtJQUU1QixNQUFNUSxRQUFRbEMsSUFBSTZCLFlBQVksQ0FBQ00saUJBQWlCLENBQUM4RCwyQkFBMkI7SUFDNUUsTUFBTTlHLFdBQVcsQ0FBQztJQUVsQixJQUFJK0MsTUFBTUgsV0FBVyxJQUFJTixRQUFRTSxXQUFXLEVBQUU1QyxTQUFTNEMsV0FBVyxHQUFHL0IsSUFBSTZCLFlBQVksQ0FBQ3FFLG1CQUFtQixDQUFDbEcsS0FBS3lCLFFBQVFNLFdBQVc7SUFDbEksSUFBSUcsTUFBTWlFLFFBQVEsSUFBSTFFLFFBQVEwRSxRQUFRLEVBQUVoSCxTQUFTZ0gsUUFBUSxHQUFHbkcsSUFBSTZCLFlBQVksQ0FBQ3VFLG1CQUFtQixDQUFDcEcsS0FBS3lCLFFBQVEwRSxRQUFRLEVBQUU7UUFBRXhELFNBQVNqQixPQUFPaUI7SUFBUTtJQUVsSixPQUFPM0MsSUFBSTZCLFlBQVksQ0FBQ2lELFdBQVcsQ0FBQ21CLDJCQUEyQixDQUFDakcsS0FBS3lCLFNBQVN0QyxVQUFVdUM7QUFDMUY7QUFFQSxPQUFPLFNBQVMyRSw2QkFBNkJyRyxHQUFRLEVBQUV5QixPQUFtQztJQUN4RixNQUFNUyxRQUFRbEMsSUFBSTZCLFlBQVksQ0FBQ00saUJBQWlCLENBQUMrRCxtQkFBbUI7SUFDcEUsTUFBTUksV0FBVyxDQUFDO0lBRWxCLElBQUlwRSxNQUFNMUIsRUFBRSxJQUFJaUIsUUFBUWpCLEVBQUUsRUFBRThGLFNBQVM5RixFQUFFLEdBQUdSLElBQUk2QixZQUFZLENBQUNDLFNBQVMsQ0FBQ0wsUUFBUWpCLEVBQUU7SUFDL0UsSUFBSTBCLE1BQU03QyxJQUFJLElBQUlvQyxRQUFRcEMsSUFBSSxFQUFFaUgsU0FBU2pILElBQUksR0FBR29DLFFBQVFwQyxJQUFJO0lBQzVELElBQUk2QyxNQUFNcUUsa0JBQWtCLElBQUk5RSxRQUFRK0Usb0JBQW9CLEVBQUVGLFNBQVNDLGtCQUFrQixHQUFHOUUsUUFBUStFLG9CQUFvQjtJQUN4SCxJQUFJdEUsTUFBTXVFLGlCQUFpQixJQUFJaEYsUUFBUWlGLG1CQUFtQixFQUFFSixTQUFTRyxpQkFBaUIsR0FBR3pHLElBQUk2QixZQUFZLENBQUNDLFNBQVMsQ0FBQ0wsUUFBUWlGLG1CQUFtQjtJQUMvSSxJQUFJeEUsTUFBTXlFLHdCQUF3QixJQUFJbEYsUUFBUW1GLDBCQUEwQixFQUFFTixTQUFTSyx3QkFBd0IsR0FBR2xGLFFBQVFtRiwwQkFBMEI7SUFDaEosSUFBSTFFLE1BQU0yRSxzQkFBc0IsSUFBSXBGLFFBQVFxRix3QkFBd0IsRUFBRVIsU0FBU08sc0JBQXNCLEdBQUdwRixRQUFRcUYsd0JBQXdCO0lBRXhJLE9BQU85RyxJQUFJNkIsWUFBWSxDQUFDaUQsV0FBVyxDQUFDb0IsbUJBQW1CLENBQUNsRyxLQUFLeUIsU0FBUzZFO0FBQ3hFO0FBRUEsT0FBTyxTQUFTUyw2QkFBNkIvRyxHQUFRLEVBQUV5QixPQUFtQyxFQUFFQyxLQUE0QjtJQUN0SCxNQUFNUSxRQUFRbEMsSUFBSTZCLFlBQVksQ0FBQ00saUJBQWlCLENBQUNpRSxtQkFBbUI7SUFDcEUsTUFBTUQsV0FBVyxDQUFDO0lBRWxCLElBQUlqRSxNQUFNN0MsSUFBSSxJQUFJb0MsUUFBUXBDLElBQUksRUFBRThHLFNBQVM5RyxJQUFJLEdBQUdvQyxRQUFRcEMsSUFBSTtJQUM1RCxJQUFJNkMsTUFBTThFLGdCQUFnQixJQUFJdkYsUUFBUXdGLGlCQUFpQixFQUFFZCxTQUFTYSxnQkFBZ0IsR0FBR3ZGLFFBQVF3RixpQkFBaUI7SUFDOUcsSUFBSS9FLE1BQU1jLE9BQU8sSUFBSXZCLFFBQVF1QixPQUFPLEVBQUVtRCxTQUFTbkQsT0FBTyxHQUFHaEQsSUFBSTZCLFlBQVksQ0FBQ21CLE9BQU8sQ0FBQ2hELEtBQUt5QixRQUFRdUIsT0FBTyxFQUFFO1FBQUVMLFNBQVNqQixPQUFPaUI7SUFBUTtJQUVsSSxPQUFPM0MsSUFBSTZCLFlBQVksQ0FBQ2lELFdBQVcsQ0FBQ3NCLG1CQUFtQixDQUFDcEcsS0FBS3lCLFNBQVMwRSxVQUFVekU7QUFDbEYifQ==
|
|
271
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvaW50ZXJhY3Rpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBCaWdTdHJpbmcsXG4gIERpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZSxcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb24sXG4gIHR5cGUgRGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2ssXG4gIHR5cGUgRGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSxcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb25EYXRhT3B0aW9uLFxuICB0eXBlIERpc2NvcmRJbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCxcbiAgdHlwZSBEaXNjb3JkSW50ZXJhY3Rpb25SZXNvdXJjZSxcbiAgSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLFxuICBJbnRlcmFjdGlvblR5cGVzLFxuICBNZXNzYWdlRmxhZ3MsXG59IGZyb20gJ0BkaXNjb3JkZW5vL3R5cGVzJztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICdAZGlzY29yZGVuby91dGlscyc7XG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4uL2JvdC5qcyc7XG5pbXBvcnQgdHlwZSB7IEludGVyYWN0aW9uUmVzb2x2ZWREYXRhQ2hhbm5lbCB9IGZyb20gJy4uL2NvbW1hbmRPcHRpb25zUGFyc2VyLmpzJztcbmltcG9ydCB0eXBlIHtcbiAgQ29tcGxldGVEZXNpcmVkUHJvcGVydGllcyxcbiAgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcixcbiAgU2V0dXBEZXNpcmVkUHJvcHMsXG4gIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLFxuICBUcmFuc2Zvcm1Qcm9wZXJ0eSxcbn0gZnJvbSAnLi4vZGVzaXJlZFByb3BlcnRpZXMuanMnO1xuaW1wb3J0IHR5cGUge1xuICBJbnRlcmFjdGlvbixcbiAgSW50ZXJhY3Rpb25DYWxsYmFjayxcbiAgSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlLFxuICBJbnRlcmFjdGlvbkRhdGFPcHRpb24sXG4gIEludGVyYWN0aW9uRGF0YVJlc29sdmVkLFxuICBJbnRlcmFjdGlvblJlc291cmNlLFxufSBmcm9tICcuL3R5cGVzLmpzJztcblxuLy8gQXNzdW1lIHdlIGhhdmUgYWxsIGRlc2lyZWQgcHJvcGVydGllcyBmb3IgdGhpcyBvciBlbHNlIHR5cGVzY3JpcHQgd2lsbCBnZXQgdmVyeSBjb25mdXNlZCBmb3IgdGhlIHJldHVybiB0eXBlcyBvZiB0aGVzZSBmdW5jdGlvbnMuXG4vLyBUaGlzIGlzIHVzZWQgYXMgYSBwcm90b3R5cGUsIHNvIHRoZSBhY3R1YWwgdHlwZSB3aXRoIHRoZSB1c2VyIGRlc2lyZWQgcHJvcGVydGllcyB3aWxsIGJlIHNldCBsYXRlci5cbmV4cG9ydCBjb25zdCBiYXNlSW50ZXJhY3Rpb246IFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPHt9LCB0cnVlPiwgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXk+ID0ge1xuICAvLyBUaGlzIGFsbG93cyB0eXBlc2NyaXB0IHRvIHN0aWxsIGNoZWNrIGZvciB0eXBlIGVycm9ycyBvbiBmdW5jdGlvbnMgYmVsb3dcbiAgLi4uKHVuZGVmaW5lZCBhcyB1bmtub3duIGFzIFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBDb21wbGV0ZURlc2lyZWRQcm9wZXJ0aWVzPHt9LCB0cnVlPiwgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvci5SZW1vdmVLZXk+KSxcblxuICBhc3luYyByZXNwb25kKHJlc3BvbnNlLCBvcHRpb25zKSB7XG4gICAgbGV0IHR5cGUgPSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlO1xuXG4gICAgLy8gSWYgdXNlciBwcm92aWRlcyBhIHN0cmluZywgY2hhbmdlIGl0IHRvIGEgcmVzcG9uc2Ugb2JqZWN0XG4gICAgaWYgKHR5cGVvZiByZXNwb25zZSA9PT0gJ3N0cmluZycpIHJlc3BvbnNlID0geyBjb250ZW50OiByZXNwb25zZSB9O1xuXG4gICAgLy8gSWYgdXNlciBwcm92aWRlcyBhIHR5cGUsIHVzZSBpdFxuICAgIGlmIChvcHRpb25zPy50eXBlKSB0eXBlID0gb3B0aW9ucy50eXBlO1xuICAgIC8vIE90aGVyd2lzZSwgZGV0ZXJtaW5lIGlmIGl0IHNob3VsZCBiZSBhbiBhdXRvY29tcGxldGUgb3IgYSBtb2RhbCByZXNwb25zZVxuICAgIGVsc2Uge1xuICAgICAgaWYgKHJlc3BvbnNlLnRpdGxlKSB0eXBlID0gSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLk1vZGFsO1xuICAgICAgaWYgKHRoaXMudHlwZSA9PT0gSW50ZXJhY3Rpb25UeXBlcy5BcHBsaWNhdGlvbkNvbW1hbmRBdXRvY29tcGxldGUpIHR5cGUgPSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlUmVzdWx0O1xuICAgIH1cblxuICAgIC8vIE1vZGFscyBjYW5ub3QgYmUgY2hhaW5lZFxuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuTW9kYWxTdWJtaXQgJiYgdHlwZSA9PT0gSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzLk1vZGFsKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgcmVzcG9uZCB0byBhIG1vZGFsIGludGVyYWN0aW9uIHdpdGggYW5vdGhlciBtb2RhbC4nKTtcblxuICAgIGlmICh0eXBlID09PSBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlICYmIG9wdGlvbnM/LmlzUHJpdmF0ZSkge1xuICAgICAgcmVzcG9uc2UuZmxhZ3MgPz89IDA7XG4gICAgICByZXNwb25zZS5mbGFncyB8PSBNZXNzYWdlRmxhZ3MuRXBoZW1lcmFsO1xuICAgIH1cblxuICAgIC8vIFNpbmNlIHRoaXMgaGFzIGFscmVhZHkgYmVlbiBnaXZlbiBhIHJlc3BvbnNlLCBhbnkgZnVydGhlciByZXNwb25zZXMgbXVzdCBiZSBmb2xsb3d1cHMuXG4gICAgaWYgKHRoaXMuYWNrbm93bGVkZ2VkKSByZXR1cm4gYXdhaXQgdGhpcy5zZW5kRm9sbG93dXBNZXNzYWdlKHJlc3BvbnNlKTtcblxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuYm90LmhlbHBlcnMuc2VuZEludGVyYWN0aW9uUmVzcG9uc2UoXG4gICAgICB0aGlzLmlkLFxuICAgICAgdGhpcy50b2tlbixcbiAgICAgIHsgdHlwZSwgZGF0YTogcmVzcG9uc2UgfSxcbiAgICAgIHsgd2l0aFJlc3BvbnNlOiBvcHRpb25zPy53aXRoUmVzcG9uc2UgfSxcbiAgICApO1xuICAgIHRoaXMuYWNrbm93bGVkZ2VkID0gdHJ1ZTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9LFxuICBhc3luYyBzZW5kRm9sbG93dXBNZXNzYWdlKHJlc3BvbnNlKSB7XG4gICAgLy8gSWYgdXNlciBwcm92aWRlcyBhIHN0cmluZywgY2hhbmdlIGl0IHRvIGEgcmVzcG9uc2Ugb2JqZWN0XG4gICAgaWYgKHR5cGVvZiByZXNwb25zZSA9PT0gJ3N0cmluZycpIHJlc3BvbnNlID0geyBjb250ZW50OiByZXNwb25zZSB9O1xuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYm90LmhlbHBlcnMuc2VuZEZvbGxvd3VwTWVzc2FnZSh0aGlzLnRva2VuLCByZXNwb25zZSk7XG4gIH0sXG4gIGFzeW5jIGVkaXQocmVzcG9uc2UsIG1lc3NhZ2VJZCwgb3B0aW9ucykge1xuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBlZGl0IGFuIGF1dG9jb21wbGV0ZSBpbnRlcmFjdGlvbi4nKTtcblxuICAgIC8vIElmIHVzZXIgcHJvdmlkZXMgYSBzdHJpbmcsIGNoYW5nZSBpdCB0byBhIHJlc3BvbnNlIG9iamVjdFxuICAgIGlmICh0eXBlb2YgcmVzcG9uc2UgPT09ICdzdHJpbmcnKSByZXNwb25zZSA9IHsgY29udGVudDogcmVzcG9uc2UgfTtcblxuICAgIGlmIChtZXNzYWdlSWQpIHtcbiAgICAgIHJldHVybiBhd2FpdCB0aGlzLmJvdD8uaGVscGVycy5lZGl0Rm9sbG93dXBNZXNzYWdlKHRoaXMudG9rZW4sIG1lc3NhZ2VJZCwgcmVzcG9uc2UpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5hY2tub3dsZWRnZWQpIHtcbiAgICAgIGlmICh0aGlzLnR5cGUgIT09IEludGVyYWN0aW9uVHlwZXMuTWVzc2FnZUNvbXBvbmVudCAmJiB0aGlzLnR5cGUgIT09IEludGVyYWN0aW9uVHlwZXMuTW9kYWxTdWJtaXQpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIlRoaXMgaW50ZXJhY3Rpb24gaGFzIG5vdCBiZWVuIHJlc3BvbmRlZCB0byB5ZXQgYW5kIHRoaXMgaXNuJ3QgYSBNZXNzYWdlQ29tcG9uZW50IG9yIE1vZGFsU3VibWl0IGludGVyYWN0aW9uLlwiKTtcblxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5ib3QuaGVscGVycy5zZW5kSW50ZXJhY3Rpb25SZXNwb25zZShcbiAgICAgICAgdGhpcy5pZCxcbiAgICAgICAgdGhpcy50b2tlbixcbiAgICAgICAgeyB0eXBlOiBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuVXBkYXRlTWVzc2FnZSwgZGF0YTogcmVzcG9uc2UgfSxcbiAgICAgICAgb3B0aW9ucyxcbiAgICAgICk7XG4gICAgICB0aGlzLmFja25vd2xlZGdlZCA9IHRydWU7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmJvdC5oZWxwZXJzLmVkaXRPcmlnaW5hbEludGVyYWN0aW9uUmVzcG9uc2UodGhpcy50b2tlbiwgcmVzcG9uc2UpO1xuICB9LFxuICBhc3luYyBkZWZlckVkaXQob3B0aW9ucykge1xuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBlZGl0IGFuIGF1dG9jb21wbGV0ZSBpbnRlcmFjdGlvbi4nKTtcbiAgICBpZiAodGhpcy5hY2tub3dsZWRnZWQpIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGRlZmVyIGFuIGFscmVhZHkgcmVzcG9uZGVkIGludGVyYWN0aW9uLicpO1xuXG4gICAgaWYgKHRoaXMudHlwZSAhPT0gSW50ZXJhY3Rpb25UeXBlcy5NZXNzYWdlQ29tcG9uZW50ICYmIHRoaXMudHlwZSAhPT0gSW50ZXJhY3Rpb25UeXBlcy5Nb2RhbFN1Ym1pdClcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbm5vdCBkZWZlciB0byB0aGVuIGVkaXQgYW4gaW50ZXJhY3Rpb24gdGhhdCBpc24ndCBhIE1lc3NhZ2VDb21wb25lbnQgb3IgTW9kYWxTdWJtaXQgaW50ZXJhY3Rpb24uXCIpO1xuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5ib3QuaGVscGVycy5zZW5kSW50ZXJhY3Rpb25SZXNwb25zZShcbiAgICAgIHRoaXMuaWQsXG4gICAgICB0aGlzLnRva2VuLFxuICAgICAgeyB0eXBlOiBJbnRlcmFjdGlvblJlc3BvbnNlVHlwZXMuRGVmZXJyZWRVcGRhdGVNZXNzYWdlIH0sXG4gICAgICBvcHRpb25zLFxuICAgICk7XG4gICAgdGhpcy5hY2tub3dsZWRnZWQgPSB0cnVlO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH0sXG4gIGFzeW5jIGRlZmVyKGlzUHJpdmF0ZSwgb3B0aW9ucykge1xuICAgIGlmICh0aGlzLmFja25vd2xlZGdlZCkgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZGVmZXIgYW4gYWxyZWFkeSByZXNwb25kZWQgaW50ZXJhY3Rpb24uJyk7XG5cbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmJvdC5oZWxwZXJzLnNlbmRJbnRlcmFjdGlvblJlc3BvbnNlKFxuICAgICAgdGhpcy5pZCxcbiAgICAgIHRoaXMudG9rZW4sXG4gICAgICB7XG4gICAgICAgIHR5cGU6IEludGVyYWN0aW9uUmVzcG9uc2VUeXBlcy5EZWZlcnJlZENoYW5uZWxNZXNzYWdlV2l0aFNvdXJjZSxcbiAgICAgICAgZGF0YToge1xuICAgICAgICAgIGZsYWdzOiBpc1ByaXZhdGUgPyBNZXNzYWdlRmxhZ3MuRXBoZW1lcmFsIDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIG9wdGlvbnMsXG4gICAgKTtcbiAgICB0aGlzLmFja25vd2xlZGdlZCA9IHRydWU7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfSxcbiAgYXN5bmMgZGVsZXRlKG1lc3NhZ2VJZCkge1xuICAgIGlmICh0aGlzLnR5cGUgPT09IEludGVyYWN0aW9uVHlwZXMuQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlKSB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBkZWxldGUgYW4gYXV0b2NvbXBsZXRlIGludGVyYWN0aW9uJyk7XG5cbiAgICBpZiAobWVzc2FnZUlkKSByZXR1cm4gYXdhaXQgdGhpcy5ib3Q/LmhlbHBlcnMuZGVsZXRlRm9sbG93dXBNZXNzYWdlKHRoaXMudG9rZW4sIG1lc3NhZ2VJZCk7XG4gICAgZWxzZSByZXR1cm4gYXdhaXQgdGhpcy5ib3Q/LmhlbHBlcnMuZGVsZXRlT3JpZ2luYWxJbnRlcmFjdGlvblJlc3BvbnNlKHRoaXMudG9rZW4pO1xuICB9LFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUludGVyYWN0aW9uKGJvdDogQm90LCBwYXlsb2FkOiBEaXNjb3JkSW50ZXJhY3Rpb24sIGV4dHJhPzogeyBzaGFyZElkPzogbnVtYmVyIH0pOiBJbnRlcmFjdGlvbiB7XG4gIGNvbnN0IGd1aWxkSWQgPSBwYXlsb2FkLmd1aWxkX2lkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5ndWlsZF9pZCkgOiB1bmRlZmluZWQ7XG5cbiAgY29uc3QgaW50ZXJhY3Rpb246IFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj4gPSBPYmplY3QuY3JlYXRlKGJhc2VJbnRlcmFjdGlvbik7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5pbnRlcmFjdGlvbjtcblxuICBpbnRlcmFjdGlvbi5ib3QgPSBib3Q7XG4gIGludGVyYWN0aW9uLmFja25vd2xlZGdlZCA9IGZhbHNlO1xuXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBpbnRlcmFjdGlvbi5pZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpO1xuICBpZiAocHJvcHMuYXBwbGljYXRpb25JZCAmJiBwYXlsb2FkLmFwcGxpY2F0aW9uX2lkKSBpbnRlcmFjdGlvbi5hcHBsaWNhdGlvbklkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5hcHBsaWNhdGlvbl9pZCk7XG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgaW50ZXJhY3Rpb24udHlwZSA9IHBheWxvYWQudHlwZTtcbiAgaWYgKHByb3BzLnRva2VuICYmIHBheWxvYWQudG9rZW4pIGludGVyYWN0aW9uLnRva2VuID0gcGF5bG9hZC50b2tlbjtcbiAgaWYgKHByb3BzLnZlcnNpb24gJiYgcGF5bG9hZC52ZXJzaW9uKSBpbnRlcmFjdGlvbi52ZXJzaW9uID0gcGF5bG9hZC52ZXJzaW9uO1xuICBpZiAocHJvcHMubG9jYWxlICYmIHBheWxvYWQubG9jYWxlKSBpbnRlcmFjdGlvbi5sb2NhbGUgPSBwYXlsb2FkLmxvY2FsZTtcbiAgaWYgKHByb3BzLmd1aWxkTG9jYWxlICYmIHBheWxvYWQuZ3VpbGRfbG9jYWxlKSBpbnRlcmFjdGlvbi5ndWlsZExvY2FsZSA9IHBheWxvYWQuZ3VpbGRfbG9jYWxlO1xuICBpZiAocHJvcHMuZ3VpbGQgJiYgcGF5bG9hZC5ndWlsZClcbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yIHBheWxvYWQuZ3VpbGQgaXMgYSBQYXJ0aWFsPERpc2NvcmRHdWlsZD5cbiAgICBpbnRlcmFjdGlvbi5ndWlsZCA9IGJvdC50cmFuc2Zvcm1lcnMuZ3VpbGQoYm90LCBwYXlsb2FkLmd1aWxkLCB7IHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkIH0pO1xuICBpZiAocHJvcHMuZ3VpbGRJZCAmJiBndWlsZElkKSBpbnRlcmFjdGlvbi5ndWlsZElkID0gZ3VpbGRJZDtcbiAgaWYgKHByb3BzLnVzZXIpIHtcbiAgICBpZiAocGF5bG9hZC5tZW1iZXI/LnVzZXIpIGludGVyYWN0aW9uLnVzZXIgPSBib3QudHJhbnNmb3JtZXJzLnVzZXIoYm90LCBwYXlsb2FkLm1lbWJlcj8udXNlcik7XG4gICAgZWxzZSBpZiAocGF5bG9hZC51c2VyKSBpbnRlcmFjdGlvbi51c2VyID0gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgcGF5bG9hZC51c2VyKTtcbiAgfVxuICBpZiAocHJvcHMuYXBwUGVybWlzc2lvbnMgJiYgcGF5bG9hZC5hcHBfcGVybWlzc2lvbnMpIGludGVyYWN0aW9uLmFwcFBlcm1pc3Npb25zID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5hcHBfcGVybWlzc2lvbnMpO1xuICBpZiAocHJvcHMubWVzc2FnZSAmJiBwYXlsb2FkLm1lc3NhZ2UpIGludGVyYWN0aW9uLm1lc3NhZ2UgPSBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCBwYXlsb2FkLm1lc3NhZ2UsIHsgc2hhcmRJZDogZXh0cmE/LnNoYXJkSWQgfSk7XG4gIGlmIChwcm9wcy5jaGFubmVsICYmIHBheWxvYWQuY2hhbm5lbClcbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yIHBheWxvYWQuY2hhbm5lbCBpcyBhIFBhcnRpYWw8PlxuICAgIGludGVyYWN0aW9uLmNoYW5uZWwgPSBib3QudHJhbnNmb3JtZXJzLmNoYW5uZWwoYm90LCBwYXlsb2FkLmNoYW5uZWwsIHsgZ3VpbGRJZCB9KTtcbiAgaWYgKHByb3BzLmNoYW5uZWxJZCAmJiBwYXlsb2FkLmNoYW5uZWxfaWQpIGludGVyYWN0aW9uLmNoYW5uZWxJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuY2hhbm5lbF9pZCk7XG4gIGlmIChwcm9wcy5tZW1iZXIgJiYgZ3VpbGRJZCAmJiBwYXlsb2FkLm1lbWJlcilcbiAgICBpbnRlcmFjdGlvbi5tZW1iZXIgPSBib3QudHJhbnNmb3JtZXJzLm1lbWJlcihib3QsIHBheWxvYWQubWVtYmVyLCB7XG4gICAgICBndWlsZElkLFxuICAgICAgdXNlcklkOiBwYXlsb2FkLm1lbWJlcj8udXNlci5pZCA/PyBwYXlsb2FkLnVzZXI/LmlkLFxuICAgIH0pO1xuICBpZiAocHJvcHMuZW50aXRsZW1lbnRzICYmIHBheWxvYWQuZW50aXRsZW1lbnRzKSBpbnRlcmFjdGlvbi5lbnRpdGxlbWVudHMgPSBwYXlsb2FkLmVudGl0bGVtZW50cy5tYXAoKGUpID0+IGJvdC50cmFuc2Zvcm1lcnMuZW50aXRsZW1lbnQoYm90LCBlKSk7XG4gIGlmIChwcm9wcy5hdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzICYmIHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzKSB7XG4gICAgaW50ZXJhY3Rpb24uYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVycyA9IHt9O1xuXG4gICAgaWYgKHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzWycwJ10pXG4gICAgICBpbnRlcmFjdGlvbi5hdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzW0Rpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZS5HdWlsZEluc3RhbGxdID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoXG4gICAgICAgIHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzWycwJ10sXG4gICAgICApO1xuICAgIGlmIChwYXlsb2FkLmF1dGhvcml6aW5nX2ludGVncmF0aW9uX293bmVyc1snMSddKVxuICAgICAgaW50ZXJhY3Rpb24uYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVyc1tEaXNjb3JkQXBwbGljYXRpb25JbnRlZ3JhdGlvblR5cGUuVXNlckluc3RhbGxdID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoXG4gICAgICAgIHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzWycxJ10sXG4gICAgICApO1xuICB9XG4gIGlmIChwcm9wcy5jb250ZXh0ICYmIHBheWxvYWQuY29udGV4dCkgaW50ZXJhY3Rpb24uY29udGV4dCA9IHBheWxvYWQuY29udGV4dDtcbiAgaWYgKHByb3BzLmF0dGFjaG1lbnRTaXplTGltaXQgJiYgcGF5bG9hZC5hdHRhY2htZW50X3NpemVfbGltaXQpIGludGVyYWN0aW9uLmF0dGFjaG1lbnRTaXplTGltaXQgPSBwYXlsb2FkLmF0dGFjaG1lbnRfc2l6ZV9saW1pdDtcbiAgaWYgKHByb3BzLmRhdGEgJiYgcGF5bG9hZC5kYXRhKSB7XG4gICAgaW50ZXJhY3Rpb24uZGF0YSA9IHtcbiAgICAgIHR5cGU6IHBheWxvYWQuZGF0YS50eXBlLFxuICAgICAgY29tcG9uZW50VHlwZTogcGF5bG9hZC5kYXRhLmNvbXBvbmVudF90eXBlLFxuICAgICAgY3VzdG9tSWQ6IHBheWxvYWQuZGF0YS5jdXN0b21faWQsXG4gICAgICBjb21wb25lbnRzOiBwYXlsb2FkLmRhdGEuY29tcG9uZW50cz8ubWFwKChjb21wb25lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMuY29tcG9uZW50KGJvdCwgY29tcG9uZW50KSksXG4gICAgICB2YWx1ZXM6IHBheWxvYWQuZGF0YS52YWx1ZXMsXG4gICAgICBpZDogcGF5bG9hZC5kYXRhLmlkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5kYXRhLmlkKSA6IHVuZGVmaW5lZCxcbiAgICAgIG5hbWU6IHBheWxvYWQuZGF0YS5uYW1lLFxuICAgICAgcmVzb2x2ZWQ6IHBheWxvYWQuZGF0YS5yZXNvbHZlZFxuICAgICAgICA/IGJvdC50cmFuc2Zvcm1lcnMuaW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQoYm90LCBwYXlsb2FkLmRhdGEucmVzb2x2ZWQsIHsgc2hhcmRJZDogZXh0cmE/LnNoYXJkSWQsIGd1aWxkSWQgfSlcbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICBvcHRpb25zOiBwYXlsb2FkLmRhdGEub3B0aW9ucz8ubWFwKChvcHQpID0+IGJvdC50cmFuc2Zvcm1lcnMuaW50ZXJhY3Rpb25EYXRhT3B0aW9ucyhib3QsIG9wdCkpLFxuICAgICAgdGFyZ2V0SWQ6IHBheWxvYWQuZGF0YS50YXJnZXRfaWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmRhdGEudGFyZ2V0X2lkKSA6IHVuZGVmaW5lZCxcbiAgICB9O1xuICB9XG5cbiAgLy8gVHlwZXNjcmlwdCBoYXMgYW4gaGFyZCB0aW1lIHdpdGggaW50ZXJhY3Rpb24uYm90LCBzbyB3ZSBuZWVkIHRvIHRlbGwgaGltIGZvciBzdXJlIHRoaXMgaW50ZXJhY3Rpb24gaXMgdGhlIG9mIHRoZSBjb3JyZWN0IHR5cGVcbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW50ZXJhY3Rpb24oYm90LCBwYXlsb2FkLCBpbnRlcmFjdGlvbiBhcyB1bmtub3duIGFzIHR5cGVvZiBib3QudHJhbnNmb3JtZXJzLiRpbmZlcnJlZFR5cGVzLmludGVyYWN0aW9uLCBleHRyYSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1JbnRlcmFjdGlvbkRhdGFPcHRpb24oYm90OiBCb3QsIG9wdGlvbjogRGlzY29yZEludGVyYWN0aW9uRGF0YU9wdGlvbik6IEludGVyYWN0aW9uRGF0YU9wdGlvbiB7XG4gIGNvbnN0IG9wdCA9IHtcbiAgICBuYW1lOiBvcHRpb24ubmFtZSxcbiAgICB0eXBlOiBvcHRpb24udHlwZSxcbiAgICB2YWx1ZTogb3B0aW9uLnZhbHVlLFxuICAgIG9wdGlvbnM6IG9wdGlvbi5vcHRpb25zLFxuICAgIGZvY3VzZWQ6IG9wdGlvbi5mb2N1c2VkLFxuICB9IGFzIEludGVyYWN0aW9uRGF0YU9wdGlvbjtcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5pbnRlcmFjdGlvbkRhdGFPcHRpb25zKGJvdCwgb3B0aW9uLCBvcHQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQoXG4gIGJvdDogQm90LFxuICBwYXlsb2FkOiBEaXNjb3JkSW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQsXG4gIGV4dHJhPzogeyBzaGFyZElkPzogbnVtYmVyOyBndWlsZElkPzogQmlnU3RyaW5nIH0sXG4pOiBUcmFuc2Zvcm1Qcm9wZXJ0eTxJbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5PiB7XG4gIGNvbnN0IHRyYW5zZm9ybWVkOiBUcmFuc2Zvcm1Qcm9wZXJ0eTxJbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5PiA9IHt9O1xuXG4gIGlmIChwYXlsb2FkLm1lc3NhZ2VzKSB7XG4gICAgdHJhbnNmb3JtZWQubWVzc2FnZXMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIE9iamVjdC5lbnRyaWVzKHBheWxvYWQubWVzc2FnZXMpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgVE9ETzogRGVhbCB3aXRoIHBhcnRpYWxzXG4gICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCB2YWx1ZSwgeyBzaGFyZElkOiBleHRyYT8uc2hhcmRJZCB9KTtcbiAgICAgICAgY29uc3QgaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShrZXkpO1xuXG4gICAgICAgIHJldHVybiBbaWQsIG1lc3NhZ2VdO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIGlmIChwYXlsb2FkLnVzZXJzKSB7XG4gICAgdHJhbnNmb3JtZWQudXNlcnMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIE9iamVjdC5lbnRyaWVzKHBheWxvYWQudXNlcnMpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGNvbnN0IHVzZXIgPSBib3QudHJhbnNmb3JtZXJzLnVzZXIoYm90LCB2YWx1ZSk7XG4gICAgICAgIGNvbnN0IGlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uoa2V5KTtcblxuICAgICAgICByZXR1cm4gW2lkLCB1c2VyXTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBpZiAoZXh0cmE/Lmd1aWxkSWQgJiYgcGF5bG9hZC5tZW1iZXJzKSB7XG4gICAgdHJhbnNmb3JtZWQubWVtYmVycyA9IG5ldyBDb2xsZWN0aW9uKFxuICAgICAgT2JqZWN0LmVudHJpZXMocGF5bG9hZC5tZW1iZXJzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIFRPRE86IERlYWwgd2l0aCBwYXJ0aWFscywgdmFsdWUgaXMgbWlzc2luZyAyIHZhbHVlcyBidXQgdGhlIHRyYW5zZm9ybWVyIGNhbiBoYW5kbGUgaXQsIGRlc3BpdGUgd2hhdCB0aGUgdHlwZXMgc2F5c1xuICAgICAgICBjb25zdCBtZW1iZXIgPSBib3QudHJhbnNmb3JtZXJzLm1lbWJlcihib3QsIHZhbHVlLCB7XG4gICAgICAgICAgZ3VpbGRJZDogZXh0cmEuZ3VpbGRJZCxcbiAgICAgICAgICB1c2VySWQ6IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGtleSksXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBpZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGtleSk7XG5cbiAgICAgICAgcmV0dXJuIFtpZCwgbWVtYmVyXTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBpZiAoZXh0cmE/Lmd1aWxkSWQgJiYgcGF5bG9hZC5yb2xlcykge1xuICAgIHRyYW5zZm9ybWVkLnJvbGVzID0gbmV3IENvbGxlY3Rpb24oXG4gICAgICBPYmplY3QuZW50cmllcyhwYXlsb2FkLnJvbGVzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICBjb25zdCByb2xlID0gYm90LnRyYW5zZm9ybWVycy5yb2xlKGJvdCwgdmFsdWUsIHsgZ3VpbGRJZDogZXh0cmEuZ3VpbGRJZCB9KTtcbiAgICAgICAgY29uc3QgaWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShrZXkpO1xuXG4gICAgICAgIHJldHVybiBbaWQsIHJvbGVdO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIGlmIChwYXlsb2FkLmNoYW5uZWxzKSB7XG4gICAgdHJhbnNmb3JtZWQuY2hhbm5lbHMgPSBuZXcgQ29sbGVjdGlvbihcbiAgICAgIE9iamVjdC5lbnRyaWVzKHBheWxvYWQuY2hhbm5lbHMpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGNvbnN0IGNoYW5uZWwgPSBib3QudHJhbnNmb3JtZXJzLmNoYW5uZWwoYm90LCB2YWx1ZSkgYXMgSW50ZXJhY3Rpb25SZXNvbHZlZERhdGFDaGFubmVsPFxuICAgICAgICAgIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLFxuICAgICAgICAgIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3IuUmVtb3ZlS2V5XG4gICAgICAgID47XG4gICAgICAgIGNvbnN0IGlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2Uoa2V5KTtcblxuICAgICAgICByZXR1cm4gW2lkLCBjaGFubmVsXTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBpZiAocGF5bG9hZC5hdHRhY2htZW50cykge1xuICAgIHRyYW5zZm9ybWVkLmF0dGFjaG1lbnRzID0gbmV3IENvbGxlY3Rpb24oXG4gICAgICBPYmplY3QuZW50cmllcyhwYXlsb2FkLmF0dGFjaG1lbnRzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICBjb25zdCBpZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGtleSk7XG4gICAgICAgIGNvbnN0IGF0dGFjaG1lbnQgPSBib3QudHJhbnNmb3JtZXJzLmF0dGFjaG1lbnQoYm90LCB2YWx1ZSk7XG5cbiAgICAgICAgcmV0dXJuIFtpZCwgYXR0YWNobWVudF07XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQoYm90LCBwYXlsb2FkLCB0cmFuc2Zvcm1lZCwge1xuICAgIHNoYXJkSWQ6IGV4dHJhPy5zaGFyZElkLFxuICAgIGd1aWxkSWQ6IGV4dHJhPy5ndWlsZElkID8gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoZXh0cmEuZ3VpbGRJZCkgOiB1bmRlZmluZWQsXG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlKFxuICBib3Q6IEJvdCxcbiAgcGF5bG9hZDogRGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSxcbiAgZXh0cmE/OiB7IHNoYXJkSWQ/OiBudW1iZXIgfSxcbik6IEludGVyYWN0aW9uQ2FsbGJhY2tSZXNwb25zZSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5pbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2U7XG4gIGNvbnN0IHJlc3BvbnNlID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8SW50ZXJhY3Rpb25DYWxsYmFja1Jlc3BvbnNlLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj47XG5cbiAgaWYgKHByb3BzLmludGVyYWN0aW9uICYmIHBheWxvYWQuaW50ZXJhY3Rpb24pIHJlc3BvbnNlLmludGVyYWN0aW9uID0gYm90LnRyYW5zZm9ybWVycy5pbnRlcmFjdGlvbkNhbGxiYWNrKGJvdCwgcGF5bG9hZC5pbnRlcmFjdGlvbik7XG4gIGlmIChwcm9wcy5yZXNvdXJjZSAmJiBwYXlsb2FkLnJlc291cmNlKVxuICAgIHJlc3BvbnNlLnJlc291cmNlID0gYm90LnRyYW5zZm9ybWVycy5pbnRlcmFjdGlvblJlc291cmNlKGJvdCwgcGF5bG9hZC5yZXNvdXJjZSwgeyBzaGFyZElkOiBleHRyYT8uc2hhcmRJZCB9KTtcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5pbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UoYm90LCBwYXlsb2FkLCByZXNwb25zZSwgZXh0cmEpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtSW50ZXJhY3Rpb25DYWxsYmFjayhib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZEludGVyYWN0aW9uQ2FsbGJhY2spOiBJbnRlcmFjdGlvbkNhbGxiYWNrIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmludGVyYWN0aW9uQ2FsbGJhY2s7XG4gIGNvbnN0IGNhbGxiYWNrID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8SW50ZXJhY3Rpb25DYWxsYmFjaywgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBjYWxsYmFjay5pZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpO1xuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGNhbGxiYWNrLnR5cGUgPSBwYXlsb2FkLnR5cGU7XG4gIGlmIChwcm9wcy5hY3Rpdml0eUluc3RhbmNlSWQgJiYgcGF5bG9hZC5hY3Rpdml0eV9pbnN0YW5jZV9pZCkgY2FsbGJhY2suYWN0aXZpdHlJbnN0YW5jZUlkID0gcGF5bG9hZC5hY3Rpdml0eV9pbnN0YW5jZV9pZDtcbiAgaWYgKHByb3BzLnJlc3BvbnNlTWVzc2FnZUlkICYmIHBheWxvYWQucmVzcG9uc2VfbWVzc2FnZV9pZCkgY2FsbGJhY2sucmVzcG9uc2VNZXNzYWdlSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLnJlc3BvbnNlX21lc3NhZ2VfaWQpO1xuICBpZiAocHJvcHMucmVzcG9uc2VNZXNzYWdlRXBoZW1lcmFsICYmIHBheWxvYWQucmVzcG9uc2VfbWVzc2FnZV9lcGhlbWVyYWwpIGNhbGxiYWNrLnJlc3BvbnNlTWVzc2FnZUVwaGVtZXJhbCA9IHBheWxvYWQucmVzcG9uc2VfbWVzc2FnZV9lcGhlbWVyYWw7XG4gIGlmIChwcm9wcy5yZXNwb25zZU1lc3NhZ2VMb2FkaW5nICYmIHBheWxvYWQucmVzcG9uc2VfbWVzc2FnZV9sb2FkaW5nKSBjYWxsYmFjay5yZXNwb25zZU1lc3NhZ2VMb2FkaW5nID0gcGF5bG9hZC5yZXNwb25zZV9tZXNzYWdlX2xvYWRpbmc7XG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW50ZXJhY3Rpb25DYWxsYmFjayhib3QsIHBheWxvYWQsIGNhbGxiYWNrKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUludGVyYWN0aW9uUmVzb3VyY2UoYm90OiBCb3QsIHBheWxvYWQ6IERpc2NvcmRJbnRlcmFjdGlvblJlc291cmNlLCBleHRyYT86IHsgc2hhcmRJZD86IG51bWJlciB9KTogSW50ZXJhY3Rpb25SZXNvdXJjZSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5pbnRlcmFjdGlvblJlc291cmNlO1xuICBjb25zdCByZXNvdXJjZSA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPEludGVyYWN0aW9uUmVzb3VyY2UsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIHJlc291cmNlLnR5cGUgPSBwYXlsb2FkLnR5cGU7XG4gIGlmIChwcm9wcy5hY3Rpdml0eUluc3RhbmNlICYmIHBheWxvYWQuYWN0aXZpdHlfaW5zdGFuY2UpIHJlc291cmNlLmFjdGl2aXR5SW5zdGFuY2UgPSBwYXlsb2FkLmFjdGl2aXR5X2luc3RhbmNlO1xuICBpZiAocHJvcHMubWVzc2FnZSAmJiBwYXlsb2FkLm1lc3NhZ2UpIHJlc291cmNlLm1lc3NhZ2UgPSBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCBwYXlsb2FkLm1lc3NhZ2UsIHsgc2hhcmRJZDogZXh0cmE/LnNoYXJkSWQgfSk7XG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuaW50ZXJhY3Rpb25SZXNvdXJjZShib3QsIHBheWxvYWQsIHJlc291cmNlLCBleHRyYSk7XG59XG4iXSwibmFtZXMiOlsiRGlzY29yZEFwcGxpY2F0aW9uSW50ZWdyYXRpb25UeXBlIiwiSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzIiwiSW50ZXJhY3Rpb25UeXBlcyIsIk1lc3NhZ2VGbGFncyIsIkNvbGxlY3Rpb24iLCJiYXNlSW50ZXJhY3Rpb24iLCJ1bmRlZmluZWQiLCJyZXNwb25kIiwicmVzcG9uc2UiLCJvcHRpb25zIiwidHlwZSIsIkNoYW5uZWxNZXNzYWdlV2l0aFNvdXJjZSIsImNvbnRlbnQiLCJ0aXRsZSIsIk1vZGFsIiwiQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlIiwiQXBwbGljYXRpb25Db21tYW5kQXV0b2NvbXBsZXRlUmVzdWx0IiwiTW9kYWxTdWJtaXQiLCJFcnJvciIsImlzUHJpdmF0ZSIsImZsYWdzIiwiRXBoZW1lcmFsIiwiYWNrbm93bGVkZ2VkIiwic2VuZEZvbGxvd3VwTWVzc2FnZSIsInJlc3VsdCIsImJvdCIsImhlbHBlcnMiLCJzZW5kSW50ZXJhY3Rpb25SZXNwb25zZSIsImlkIiwidG9rZW4iLCJkYXRhIiwid2l0aFJlc3BvbnNlIiwiZWRpdCIsIm1lc3NhZ2VJZCIsImVkaXRGb2xsb3d1cE1lc3NhZ2UiLCJNZXNzYWdlQ29tcG9uZW50IiwiVXBkYXRlTWVzc2FnZSIsImVkaXRPcmlnaW5hbEludGVyYWN0aW9uUmVzcG9uc2UiLCJkZWZlckVkaXQiLCJEZWZlcnJlZFVwZGF0ZU1lc3NhZ2UiLCJkZWZlciIsIkRlZmVycmVkQ2hhbm5lbE1lc3NhZ2VXaXRoU291cmNlIiwiZGVsZXRlIiwiZGVsZXRlRm9sbG93dXBNZXNzYWdlIiwiZGVsZXRlT3JpZ2luYWxJbnRlcmFjdGlvblJlc3BvbnNlIiwidHJhbnNmb3JtSW50ZXJhY3Rpb24iLCJwYXlsb2FkIiwiZXh0cmEiLCJndWlsZElkIiwiZ3VpbGRfaWQiLCJ0cmFuc2Zvcm1lcnMiLCJzbm93Zmxha2UiLCJpbnRlcmFjdGlvbiIsIk9iamVjdCIsImNyZWF0ZSIsInByb3BzIiwiZGVzaXJlZFByb3BlcnRpZXMiLCJhcHBsaWNhdGlvbklkIiwiYXBwbGljYXRpb25faWQiLCJ2ZXJzaW9uIiwibG9jYWxlIiwiZ3VpbGRMb2NhbGUiLCJndWlsZF9sb2NhbGUiLCJndWlsZCIsInNoYXJkSWQiLCJ1c2VyIiwibWVtYmVyIiwiYXBwUGVybWlzc2lvbnMiLCJhcHBfcGVybWlzc2lvbnMiLCJtZXNzYWdlIiwiY2hhbm5lbCIsImNoYW5uZWxJZCIsImNoYW5uZWxfaWQiLCJ1c2VySWQiLCJlbnRpdGxlbWVudHMiLCJtYXAiLCJlIiwiZW50aXRsZW1lbnQiLCJhdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzIiwiYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzIiwiR3VpbGRJbnN0YWxsIiwiVXNlckluc3RhbGwiLCJjb250ZXh0IiwiYXR0YWNobWVudFNpemVMaW1pdCIsImF0dGFjaG1lbnRfc2l6ZV9saW1pdCIsImNvbXBvbmVudFR5cGUiLCJjb21wb25lbnRfdHlwZSIsImN1c3RvbUlkIiwiY3VzdG9tX2lkIiwiY29tcG9uZW50cyIsImNvbXBvbmVudCIsInZhbHVlcyIsIm5hbWUiLCJyZXNvbHZlZCIsImludGVyYWN0aW9uRGF0YVJlc29sdmVkIiwib3B0IiwiaW50ZXJhY3Rpb25EYXRhT3B0aW9ucyIsInRhcmdldElkIiwidGFyZ2V0X2lkIiwiY3VzdG9taXplcnMiLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvbkRhdGFPcHRpb24iLCJvcHRpb24iLCJ2YWx1ZSIsImZvY3VzZWQiLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCIsInRyYW5zZm9ybWVkIiwibWVzc2FnZXMiLCJlbnRyaWVzIiwia2V5IiwidXNlcnMiLCJtZW1iZXJzIiwicm9sZXMiLCJyb2xlIiwiY2hhbm5lbHMiLCJhdHRhY2htZW50cyIsImF0dGFjaG1lbnQiLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UiLCJpbnRlcmFjdGlvbkNhbGxiYWNrUmVzcG9uc2UiLCJpbnRlcmFjdGlvbkNhbGxiYWNrIiwicmVzb3VyY2UiLCJpbnRlcmFjdGlvblJlc291cmNlIiwidHJhbnNmb3JtSW50ZXJhY3Rpb25DYWxsYmFjayIsImNhbGxiYWNrIiwiYWN0aXZpdHlJbnN0YW5jZUlkIiwiYWN0aXZpdHlfaW5zdGFuY2VfaWQiLCJyZXNwb25zZU1lc3NhZ2VJZCIsInJlc3BvbnNlX21lc3NhZ2VfaWQiLCJyZXNwb25zZU1lc3NhZ2VFcGhlbWVyYWwiLCJyZXNwb25zZV9tZXNzYWdlX2VwaGVtZXJhbCIsInJlc3BvbnNlTWVzc2FnZUxvYWRpbmciLCJyZXNwb25zZV9tZXNzYWdlX2xvYWRpbmciLCJ0cmFuc2Zvcm1JbnRlcmFjdGlvblJlc291cmNlIiwiYWN0aXZpdHlJbnN0YW5jZSIsImFjdGl2aXR5X2luc3RhbmNlIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUVFQSxpQ0FBaUMsRUFPakNDLHdCQUF3QixFQUN4QkMsZ0JBQWdCLEVBQ2hCQyxZQUFZLFFBQ1Asb0JBQW9CO0FBQzNCLFNBQVNDLFVBQVUsUUFBUSxvQkFBb0I7QUFtQi9DLG9JQUFvSTtBQUNwSSxz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
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { DiscordInviteCreate, DiscordInviteMetadata } from '@discordeno/types';
|
|
2
|
-
import {
|
|
2
|
+
import type { Bot } from '../bot.js';
|
|
3
|
+
import type { Invite } from './types.js';
|
|
3
4
|
export declare function transformInvite(bot: Bot, payload: DiscordInviteCreate | DiscordInviteMetadata, extra?: {
|
|
4
5
|
shardId?: number;
|
|
5
6
|
}): Invite;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invite.d.ts","sourceRoot":"","sources":["../../src/transformers/invite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"invite.d.ts","sourceRoot":"","sources":["../../src/transformers/invite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAEpF,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAGrC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,mBAAmB,GAAG,qBAAqB,EAAE,KAAK,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAqCpI"}
|