@discordeno/bot 19.0.0 → 20.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/dist/cjs/bot.cjs +82 -0
  2. package/dist/cjs/commandOptionsParser.cjs +53 -0
  3. package/dist/cjs/constants.cjs +30 -0
  4. package/dist/cjs/desiredProperties.cjs +541 -0
  5. package/dist/cjs/events.cjs +6 -0
  6. package/dist/cjs/handlers/channels/CHANNEL_CREATE.cjs +21 -0
  7. package/dist/cjs/handlers/channels/CHANNEL_DELETE.cjs +21 -0
  8. package/dist/cjs/handlers/channels/CHANNEL_PINS_UPDATE.cjs +21 -0
  9. package/dist/cjs/handlers/channels/CHANNEL_UPDATE.cjs +20 -0
  10. package/dist/cjs/handlers/channels/STAGE_INSTANCE_CREATE.cjs +22 -0
  11. package/dist/cjs/handlers/channels/STAGE_INSTANCE_DELETE.cjs +22 -0
  12. package/dist/cjs/handlers/channels/STAGE_INSTANCE_UPDATE.cjs +22 -0
  13. package/dist/cjs/handlers/channels/THREAD_CREATE.cjs +19 -0
  14. package/dist/cjs/handlers/channels/THREAD_DELETE.cjs +19 -0
  15. package/dist/cjs/handlers/channels/THREAD_LIST_SYNC.cjs +31 -0
  16. package/dist/cjs/handlers/channels/THREAD_MEMBERS_UPDATE.cjs +22 -0
  17. package/dist/cjs/handlers/channels/THREAD_MEMBER_UPDATE.cjs +22 -0
  18. package/dist/cjs/handlers/channels/THREAD_UPDATE.cjs +19 -0
  19. package/dist/cjs/handlers/channels/index.cjs +32 -0
  20. package/dist/cjs/handlers/emojis/GUILD_EMOJIS_UPDATE.cjs +24 -0
  21. package/dist/cjs/handlers/emojis/index.cjs +20 -0
  22. package/dist/cjs/handlers/entitlements/ENTITLEMENT_CREATE.cjs +17 -0
  23. package/dist/cjs/handlers/entitlements/ENTITLEMENT_DELETE.cjs +17 -0
  24. package/dist/cjs/handlers/entitlements/ENTITLEMENT_UPDATE.cjs +17 -0
  25. package/dist/cjs/handlers/entitlements/index.cjs +22 -0
  26. package/dist/cjs/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.cjs +18 -0
  27. package/dist/cjs/handlers/guilds/GUILD_BAN_ADD.cjs +17 -0
  28. package/dist/cjs/handlers/guilds/GUILD_BAN_REMOVE.cjs +17 -0
  29. package/dist/cjs/handlers/guilds/GUILD_CREATE.cjs +20 -0
  30. package/dist/cjs/handlers/guilds/GUILD_DELETE.cjs +22 -0
  31. package/dist/cjs/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.cjs +19 -0
  32. package/dist/cjs/handlers/guilds/GUILD_STICKERS_UPDATE.cjs +23 -0
  33. package/dist/cjs/handlers/guilds/GUILD_UPDATE.cjs +20 -0
  34. package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.cjs +17 -0
  35. package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.cjs +17 -0
  36. package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.cjs +17 -0
  37. package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.cjs +17 -0
  38. package/dist/cjs/handlers/guilds/automod/index.cjs +23 -0
  39. package/dist/cjs/handlers/guilds/index.cjs +29 -0
  40. package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.cjs +17 -0
  41. package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.cjs +17 -0
  42. package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.cjs +17 -0
  43. package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.cjs +21 -0
  44. package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.cjs +21 -0
  45. package/dist/cjs/handlers/guilds/scheduledEvents/index.cjs +24 -0
  46. package/dist/cjs/handlers/index.cjs +35 -0
  47. package/dist/cjs/handlers/integrations/INTEGRATION_CREATE.cjs +16 -0
  48. package/dist/cjs/handlers/integrations/INTEGRATION_DELETE.cjs +21 -0
  49. package/dist/cjs/handlers/integrations/INTEGRATION_UPDATE.cjs +16 -0
  50. package/dist/cjs/handlers/integrations/index.cjs +22 -0
  51. package/dist/cjs/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.cjs +17 -0
  52. package/dist/cjs/handlers/interactions/INTERACTION_CREATE.cjs +19 -0
  53. package/dist/cjs/handlers/interactions/index.cjs +21 -0
  54. package/dist/cjs/handlers/invites/INVITE_CREATE.cjs +19 -0
  55. package/dist/cjs/handlers/invites/INVITE_DELETE.cjs +21 -0
  56. package/dist/cjs/handlers/invites/index.cjs +21 -0
  57. package/dist/cjs/handlers/members/GUILD_MEMBERS_CHUNK.cjs +30 -0
  58. package/dist/cjs/handlers/members/GUILD_MEMBER_ADD.cjs +20 -0
  59. package/dist/cjs/handlers/members/GUILD_MEMBER_REMOVE.cjs +19 -0
  60. package/dist/cjs/handlers/members/GUILD_MEMBER_UPDATE.cjs +19 -0
  61. package/dist/cjs/handlers/members/index.cjs +23 -0
  62. package/dist/cjs/handlers/messages/MESSAGE_CREATE.cjs +20 -0
  63. package/dist/cjs/handlers/messages/MESSAGE_DELETE.cjs +21 -0
  64. package/dist/cjs/handlers/messages/MESSAGE_DELETE_BULK.cjs +23 -0
  65. package/dist/cjs/handlers/messages/MESSAGE_REACTION_ADD.cjs +30 -0
  66. package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE.cjs +24 -0
  67. package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.cjs +21 -0
  68. package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.cjs +22 -0
  69. package/dist/cjs/handlers/messages/MESSAGE_UPDATE.cjs +21 -0
  70. package/dist/cjs/handlers/messages/index.cjs +27 -0
  71. package/dist/cjs/handlers/misc/PRESENCE_UPDATE.cjs +16 -0
  72. package/dist/cjs/handlers/misc/READY.cjs +28 -0
  73. package/dist/cjs/handlers/misc/TYPING_START.cjs +25 -0
  74. package/dist/cjs/handlers/misc/USER_UPDATE.cjs +17 -0
  75. package/dist/cjs/handlers/misc/index.cjs +23 -0
  76. package/dist/cjs/handlers/poll/MESSAGE_POLL_VOTE_ADD.cjs +23 -0
  77. package/dist/cjs/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.cjs +23 -0
  78. package/dist/cjs/handlers/poll/index.cjs +21 -0
  79. package/dist/cjs/handlers/roles/GUILD_ROLE_CREATE.cjs +20 -0
  80. package/dist/cjs/handlers/roles/GUILD_ROLE_DELETE.cjs +20 -0
  81. package/dist/cjs/handlers/roles/GUILD_ROLE_UPDATE.cjs +20 -0
  82. package/dist/cjs/handlers/roles/index.cjs +22 -0
  83. package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.cjs +20 -0
  84. package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.cjs +17 -0
  85. package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.cjs +20 -0
  86. package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.cjs +17 -0
  87. package/dist/cjs/handlers/soundboard/SOUNDBOARD_SOUNDS.cjs +20 -0
  88. package/dist/cjs/handlers/soundboard/index.cjs +24 -0
  89. package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_CREATE.cjs +17 -0
  90. package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_DELETE.cjs +17 -0
  91. package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_UPDATE.cjs +17 -0
  92. package/dist/cjs/handlers/subscriptions/index.cjs +22 -0
  93. package/dist/cjs/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.cjs +26 -0
  94. package/dist/cjs/handlers/voice/VOICE_SERVER_UPDATE.cjs +21 -0
  95. package/dist/cjs/handlers/voice/VOICE_STATE_UPDATE.cjs +22 -0
  96. package/dist/cjs/handlers/voice/index.cjs +22 -0
  97. package/dist/cjs/handlers/webhooks/WEBHOOKS_UPDATE.cjs +20 -0
  98. package/dist/cjs/handlers/webhooks/index.cjs +20 -0
  99. package/dist/cjs/handlers.cjs +132 -0
  100. package/dist/cjs/helpers.cjs +776 -0
  101. package/dist/cjs/index.cjs +34 -0
  102. package/dist/cjs/transformers/activity.cjs +74 -0
  103. package/dist/cjs/transformers/application.cjs +69 -0
  104. package/dist/cjs/transformers/applicationCommand.cjs +29 -0
  105. package/dist/cjs/transformers/applicationCommandOption.cjs +31 -0
  106. package/dist/cjs/transformers/applicationCommandOptionChoice.cjs +20 -0
  107. package/dist/cjs/transformers/applicationCommandPermission.cjs +25 -0
  108. package/dist/cjs/transformers/attachment.cjs +31 -0
  109. package/dist/cjs/transformers/auditLogEntry.cjs +37 -0
  110. package/dist/cjs/transformers/automodActionExecution.cjs +35 -0
  111. package/dist/cjs/transformers/automodRule.cjs +41 -0
  112. package/dist/cjs/transformers/avatarDecorationData.cjs +20 -0
  113. package/dist/cjs/transformers/channel.cjs +149 -0
  114. package/dist/cjs/transformers/component.cjs +97 -0
  115. package/dist/cjs/transformers/embed.cjs +54 -0
  116. package/dist/cjs/transformers/emoji.cjs +57 -0
  117. package/dist/cjs/transformers/entitlement.cjs +27 -0
  118. package/dist/cjs/transformers/gatewayBot.cjs +25 -0
  119. package/dist/cjs/transformers/guild.cjs +157 -0
  120. package/dist/cjs/transformers/index.cjs +66 -0
  121. package/dist/cjs/transformers/integration.cjs +44 -0
  122. package/dist/cjs/transformers/interaction.cjs +274 -0
  123. package/dist/cjs/transformers/invite.cjs +51 -0
  124. package/dist/cjs/transformers/member.cjs +69 -0
  125. package/dist/cjs/transformers/message.cjs +300 -0
  126. package/dist/cjs/transformers/onboarding.cjs +56 -0
  127. package/dist/cjs/transformers/poll.cjs +50 -0
  128. package/dist/cjs/transformers/presence.cjs +25 -0
  129. package/dist/cjs/transformers/reverse/activity.cjs +53 -0
  130. package/dist/cjs/transformers/reverse/allowedMentions.cjs +20 -0
  131. package/dist/cjs/transformers/reverse/application.cjs +38 -0
  132. package/dist/cjs/transformers/reverse/applicationCommand.cjs +28 -0
  133. package/dist/cjs/transformers/reverse/applicationCommandOption.cjs +30 -0
  134. package/dist/cjs/transformers/reverse/applicationCommandOptionChoice.cjs +19 -0
  135. package/dist/cjs/transformers/reverse/applicationCommandPermission.cjs +24 -0
  136. package/dist/cjs/transformers/reverse/attachment.cjs +29 -0
  137. package/dist/cjs/transformers/reverse/auditLogEntry.cjs +37 -0
  138. package/dist/cjs/transformers/reverse/component.cjs +94 -0
  139. package/dist/cjs/transformers/reverse/createApplicationCommand.cjs +36 -0
  140. package/dist/cjs/transformers/reverse/embed.cjs +53 -0
  141. package/dist/cjs/transformers/reverse/emoji.cjs +24 -0
  142. package/dist/cjs/transformers/reverse/gatewayBot.cjs +24 -0
  143. package/dist/cjs/transformers/reverse/index.cjs +37 -0
  144. package/dist/cjs/transformers/reverse/member.cjs +59 -0
  145. package/dist/cjs/transformers/reverse/presence.cjs +41 -0
  146. package/dist/cjs/transformers/reverse/team.cjs +28 -0
  147. package/dist/cjs/transformers/reverse/widgetSettings.cjs +18 -0
  148. package/dist/cjs/transformers/role.cjs +78 -0
  149. package/dist/cjs/transformers/scheduledEvent.cjs +58 -0
  150. package/dist/cjs/transformers/sku.cjs +23 -0
  151. package/dist/cjs/transformers/soundboardSound.cjs +25 -0
  152. package/dist/cjs/transformers/stageInstance.cjs +22 -0
  153. package/dist/cjs/transformers/stageInviteInstance.cjs +23 -0
  154. package/dist/cjs/transformers/sticker.cjs +48 -0
  155. package/dist/cjs/transformers/subscription.cjs +26 -0
  156. package/dist/cjs/transformers/team.cjs +29 -0
  157. package/dist/cjs/transformers/template.cjs +28 -0
  158. package/dist/cjs/transformers/threadMember.cjs +35 -0
  159. package/dist/cjs/transformers/toggles/Permissions.cjs +28 -0
  160. package/dist/cjs/transformers/toggles/ToggleBitfield.cjs +60 -0
  161. package/dist/cjs/transformers/toggles/channel.cjs +73 -0
  162. package/dist/cjs/transformers/toggles/emoji.cjs +63 -0
  163. package/dist/cjs/transformers/toggles/guild.cjs +257 -0
  164. package/dist/cjs/transformers/toggles/index.cjs +28 -0
  165. package/dist/cjs/transformers/toggles/member.cjs +126 -0
  166. package/dist/cjs/transformers/toggles/role.cjs +73 -0
  167. package/dist/cjs/transformers/toggles/user.cjs +63 -0
  168. package/dist/cjs/transformers/toggles/voice.cjs +78 -0
  169. package/dist/cjs/transformers/types.cjs +6 -0
  170. package/dist/cjs/transformers/user.cjs +60 -0
  171. package/dist/cjs/transformers/voiceRegion.cjs +22 -0
  172. package/dist/cjs/transformers/voiceState.cjs +24 -0
  173. package/dist/cjs/transformers/webhook.cjs +37 -0
  174. package/dist/cjs/transformers/welcomeScreen.cjs +24 -0
  175. package/dist/cjs/transformers/widget.cjs +35 -0
  176. package/dist/cjs/transformers/widgetSettings.cjs +19 -0
  177. package/dist/cjs/transformers.cjs +165 -0
  178. package/dist/cjs/utils.cjs +32 -0
  179. package/dist/esm/bot.js +1 -1
  180. package/dist/esm/commandOptionsParser.js +4 -2
  181. package/dist/esm/desiredProperties.js +1 -1
  182. package/dist/esm/helpers.js +4 -1
  183. package/dist/esm/transformers/component.js +5 -1
  184. package/dist/esm/transformers/emoji.js +4 -2
  185. package/dist/esm/transformers/guild.js +2 -2
  186. package/dist/esm/transformers/interaction.js +2 -2
  187. package/dist/esm/transformers/member.js +2 -2
  188. package/dist/esm/transformers/message.js +2 -2
  189. package/dist/esm/transformers/role.js +2 -2
  190. package/dist/esm/transformers/user.js +2 -2
  191. package/dist/types/bot.d.ts +1 -1
  192. package/dist/types/commandOptionsParser.d.ts +9 -4
  193. package/dist/types/commandOptionsParser.d.ts.map +1 -1
  194. package/dist/types/desiredProperties.d.ts +6 -3
  195. package/dist/types/desiredProperties.d.ts.map +1 -1
  196. package/dist/types/helpers.d.ts +1 -0
  197. package/dist/types/helpers.d.ts.map +1 -1
  198. package/dist/types/transformers/component.d.ts.map +1 -1
  199. package/dist/types/transformers/emoji.d.ts +1 -0
  200. package/dist/types/transformers/emoji.d.ts.map +1 -1
  201. package/dist/types/transformers/guild.d.ts +1 -0
  202. package/dist/types/transformers/guild.d.ts.map +1 -1
  203. package/dist/types/transformers/interaction.d.ts +1 -0
  204. package/dist/types/transformers/interaction.d.ts.map +1 -1
  205. package/dist/types/transformers/member.d.ts +1 -0
  206. package/dist/types/transformers/member.d.ts.map +1 -1
  207. package/dist/types/transformers/message.d.ts +1 -0
  208. package/dist/types/transformers/message.d.ts.map +1 -1
  209. package/dist/types/transformers/role.d.ts +1 -0
  210. package/dist/types/transformers/role.d.ts.map +1 -1
  211. package/dist/types/transformers/user.d.ts +1 -0
  212. package/dist/types/transformers/user.d.ts.map +1 -1
  213. package/package.json +8 -8
@@ -0,0 +1,300 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ baseMessage: function() {
13
+ return baseMessage;
14
+ },
15
+ transformMessage: function() {
16
+ return transformMessage;
17
+ },
18
+ transformMessageCall: function() {
19
+ return transformMessageCall;
20
+ },
21
+ transformMessageInteractionMetadata: function() {
22
+ return transformMessageInteractionMetadata;
23
+ },
24
+ transformMessageSnapshot: function() {
25
+ return transformMessageSnapshot;
26
+ }
27
+ });
28
+ const _types = require("@discordeno/types");
29
+ const _constants = require("../constants.cjs");
30
+ const _index = require("../index.cjs");
31
+ const _ToggleBitfield = require("./toggles/ToggleBitfield.cjs");
32
+ const EMPTY_STRING = '';
33
+ const baseMessage = {
34
+ // This allows typescript to still check for type errors on functions below
35
+ ...undefined,
36
+ get crossposted () {
37
+ return this.flags?.contains(_types.MessageFlags.Crossposted) ?? false;
38
+ },
39
+ set crossposted (value){
40
+ if (!this.flags) return;
41
+ if (value) this.flags.add(_types.MessageFlags.Crossposted);
42
+ else this.flags.remove(_types.MessageFlags.Crossposted);
43
+ },
44
+ get ephemeral () {
45
+ return this.flags?.contains(_types.MessageFlags.Ephemeral) ?? false;
46
+ },
47
+ set ephemeral (value){
48
+ if (!this.flags) return;
49
+ if (value) this.flags.add(_types.MessageFlags.Ephemeral);
50
+ else this.flags.remove(_types.MessageFlags.Ephemeral);
51
+ },
52
+ get failedToMentionSomeRolesInThread () {
53
+ return this.flags?.contains(_types.MessageFlags.FailedToMentionSomeRolesInThread) ?? false;
54
+ },
55
+ set failedToMentionSomeRolesInThread (value){
56
+ if (!this.flags) return;
57
+ if (value) this.flags.add(_types.MessageFlags.FailedToMentionSomeRolesInThread);
58
+ else this.flags.remove(_types.MessageFlags.FailedToMentionSomeRolesInThread);
59
+ },
60
+ get hasThread () {
61
+ return this.flags?.contains(_types.MessageFlags.HasThread) ?? false;
62
+ },
63
+ set hasThread (value){
64
+ if (!this.flags) return;
65
+ if (value) this.flags.add(_types.MessageFlags.HasThread);
66
+ else this.flags.remove(_types.MessageFlags.HasThread);
67
+ },
68
+ get isCrosspost () {
69
+ return this.flags?.contains(_types.MessageFlags.IsCrosspost) ?? false;
70
+ },
71
+ set isCrosspost (value){
72
+ if (!this.flags) return;
73
+ if (value) this.flags.add(_types.MessageFlags.IsCrosspost);
74
+ else this.flags.remove(_types.MessageFlags.IsCrosspost);
75
+ },
76
+ get loading () {
77
+ return this.flags?.contains(_types.MessageFlags.Loading) ?? false;
78
+ },
79
+ set loading (value){
80
+ if (!this.flags) return;
81
+ if (value) this.flags.add(_types.MessageFlags.Loading);
82
+ else this.flags.remove(_types.MessageFlags.Loading);
83
+ },
84
+ get mentionedUserIds () {
85
+ return this.mentions?.map((user)=>user.id) ?? [];
86
+ },
87
+ get mentionEveryone () {
88
+ return this.bitfield?.contains(2) ?? false;
89
+ },
90
+ set mentionEveryone (value){
91
+ if (!this.bitfield) return;
92
+ if (value) this.bitfield.add(2);
93
+ else this.bitfield.remove(2);
94
+ },
95
+ get pinned () {
96
+ return this.bitfield?.contains(3) ?? false;
97
+ },
98
+ set pinned (value){
99
+ if (!this.bitfield) return;
100
+ if (value) this.bitfield.add(3);
101
+ else this.bitfield.remove(3);
102
+ },
103
+ get sourceMessageDeleted () {
104
+ return this.flags?.contains(_types.MessageFlags.SourceMessageDeleted) ?? false;
105
+ },
106
+ set sourceMessageDeleted (value){
107
+ if (!this.flags) return;
108
+ if (value) this.flags.add(_types.MessageFlags.SourceMessageDeleted);
109
+ else this.flags.remove(_types.MessageFlags.SourceMessageDeleted);
110
+ },
111
+ get suppressEmbeds () {
112
+ return this.flags?.contains(_types.MessageFlags.SuppressEmbeds) ?? false;
113
+ },
114
+ set suppressEmbeds (value){
115
+ if (!this.flags) return;
116
+ if (value) this.flags.add(_types.MessageFlags.SuppressEmbeds);
117
+ else this.flags.remove(_types.MessageFlags.SuppressEmbeds);
118
+ },
119
+ get suppressNotifications () {
120
+ return this.flags?.contains(_types.MessageFlags.SuppressNotifications) ?? false;
121
+ },
122
+ set suppressNotifications (value){
123
+ if (!this.flags) return;
124
+ if (value) this.flags.add(_types.MessageFlags.SuppressNotifications);
125
+ else this.flags.remove(_types.MessageFlags.SuppressNotifications);
126
+ },
127
+ get timestamp () {
128
+ return this.id ? (0, _index.snowflakeToTimestamp)(this.id) : 0;
129
+ },
130
+ get tts () {
131
+ return this.bitfield?.contains(1) ?? false;
132
+ },
133
+ set tts (value){
134
+ if (!this.bitfield) return;
135
+ if (value) this.bitfield.add(1);
136
+ else this.bitfield.remove(1);
137
+ },
138
+ get urgent () {
139
+ return this.flags?.contains(_types.MessageFlags.Urgent) ?? false;
140
+ },
141
+ set urgent (value){
142
+ if (!this.flags) return;
143
+ if (value) this.flags.add(_types.MessageFlags.Urgent);
144
+ else this.flags.remove(_types.MessageFlags.Urgent);
145
+ }
146
+ };
147
+ function transformMessage(bot, payload) {
148
+ const guildId = payload.message.guild_id ? bot.transformers.snowflake(payload.message.guild_id) : undefined;
149
+ const userId = payload.message.author?.id ? bot.transformers.snowflake(payload.message.author.id) : undefined;
150
+ const message = Object.create(baseMessage);
151
+ message.bitfield = new _ToggleBitfield.ToggleBitfield();
152
+ message.flags = new _ToggleBitfield.ToggleBitfield(payload.message.flags);
153
+ const props = bot.transformers.desiredProperties.message;
154
+ if (props.author && payload.message.author) message.author = bot.transformers.user(bot, payload.message.author);
155
+ if (props.application && payload.message.application) message.application = bot.transformers.application(bot, {
156
+ application: payload.message.application,
157
+ shardId: payload.shardId
158
+ });
159
+ if (props.applicationId && payload.message.application_id) message.applicationId = bot.transformers.snowflake(payload.message.application_id);
160
+ if (props.attachments && payload.message.attachments?.length) message.attachments = payload.message.attachments.map((attachment)=>bot.transformers.attachment(bot, attachment));
161
+ if (props.channelId && payload.message.channel_id) message.channelId = bot.transformers.snowflake(payload.message.channel_id);
162
+ if (props.components && payload.message.components?.length) message.components = payload.message.components.map((comp)=>bot.transformers.component(bot, comp));
163
+ if (props.content) message.content = payload.message.content ?? EMPTY_STRING;
164
+ if (props.editedTimestamp && payload.message.edited_timestamp) message.editedTimestamp = Date.parse(payload.message.edited_timestamp);
165
+ if (props.embeds && payload.message.embeds?.length) message.embeds = payload.message.embeds.map((embed)=>bot.transformers.embed(bot, embed));
166
+ if (props.guildId && guildId) message.guildId = guildId;
167
+ if (props.id && payload.message.id) message.id = bot.transformers.snowflake(payload.message.id);
168
+ if (props.interactionMetadata && payload.message.interaction_metadata) message.interactionMetadata = bot.transformers.messageInteractionMetadata(bot, payload.message.interaction_metadata);
169
+ if (props.interaction && payload.message.interaction) {
170
+ const interaction = {};
171
+ const messageInteractionProps = bot.transformers.desiredProperties.messageInteraction;
172
+ if (messageInteractionProps.id) {
173
+ interaction.id = bot.transformers.snowflake(payload.message.interaction.id);
174
+ }
175
+ if (messageInteractionProps.member && payload.message.interaction.member) {
176
+ // @ts-expect-error TODO: partial - check why this is partial and handle as needed
177
+ interaction.member = bot.transformers.member(bot, payload.message.interaction.member, guildId, payload.message.interaction.user.id);
178
+ }
179
+ if (messageInteractionProps.name) {
180
+ interaction.name = payload.message.interaction.name;
181
+ }
182
+ if (messageInteractionProps.type) {
183
+ interaction.type = payload.message.interaction.type;
184
+ }
185
+ if (messageInteractionProps.user) {
186
+ interaction.user = bot.transformers.user(bot, payload.message.interaction.user);
187
+ }
188
+ message.interaction = interaction;
189
+ }
190
+ if (props.member && guildId && userId && payload.message.member) message.member = bot.transformers.member(bot, payload.message.member, guildId, userId);
191
+ if (payload.message.mention_everyone) message.mentionEveryone = true;
192
+ if (props.mentionedChannelIds && payload.message.mention_channels?.length) {
193
+ message.mentionedChannelIds = [
194
+ // Keep any ids tht discord sends
195
+ ...(payload.message.mention_channels ?? []).map((m)=>bot.transformers.snowflake(m.id)),
196
+ // Add any other ids that can be validated in a channel mention format
197
+ ...(payload.message.content?.match(_constants.CHANNEL_MENTION_REGEX) ?? []).map((text)=>// converts the <#123> into 123
198
+ bot.transformers.snowflake(text.substring(2, text.length - 1)))
199
+ ];
200
+ }
201
+ if (props.mentionedRoleIds && payload.message.mention_roles?.length) message.mentionedRoleIds = payload.message.mention_roles.map((id)=>bot.transformers.snowflake(id));
202
+ if (props.mentions && payload.message.mentions?.length) message.mentions = payload.message.mentions.map((user)=>bot.transformers.user(bot, user));
203
+ if (props.messageReference && payload.message.message_reference) {
204
+ const reference = {};
205
+ const messageReferenceProps = bot.transformers.desiredProperties.messageReference;
206
+ if (messageReferenceProps.channelId && payload.message.message_reference.channel_id) {
207
+ reference.channelId = bot.transformers.snowflake(payload.message.message_reference.channel_id);
208
+ }
209
+ if (messageReferenceProps.guildId && payload.message.message_reference.guild_id) {
210
+ reference.guildId = bot.transformers.snowflake(payload.message.message_reference.guild_id);
211
+ }
212
+ if (messageReferenceProps.messageId && payload.message.message_reference.message_id) {
213
+ reference.messageId = bot.transformers.snowflake(payload.message.message_reference.message_id);
214
+ }
215
+ message.messageReference = reference;
216
+ }
217
+ if (props.referencedMessage && payload.message.referenced_message) message.referencedMessage = bot.transformers.message(bot, {
218
+ message: payload.message.referenced_message,
219
+ shardId: payload.shardId
220
+ });
221
+ if (props.messageSnapshots && payload.message.message_snapshots) message.messageSnapshots = payload.message.message_snapshots.map((snap)=>bot.transformers.messageSnapshot(bot, {
222
+ messageSnapshot: snap,
223
+ shardId: payload.shardId
224
+ }));
225
+ if (props.nonce && payload.message.nonce) message.nonce = payload.message.nonce;
226
+ if (payload.message.pinned) message.pinned = true;
227
+ if (props.reactions && payload.message.reactions?.length) {
228
+ message.reactions = payload.message.reactions.map((reaction)=>({
229
+ me: reaction.me,
230
+ meBurst: reaction.me_burst,
231
+ count: reaction.count,
232
+ countDetails: {
233
+ burst: reaction.count_details.burst,
234
+ normal: reaction.count_details.normal
235
+ },
236
+ emoji: bot.transformers.emoji(bot, reaction.emoji),
237
+ burstColors: reaction.burst_colors
238
+ }));
239
+ }
240
+ if (props.stickerItems && payload.message.sticker_items?.length) message.stickerItems = payload.message.sticker_items.map((item)=>({
241
+ id: bot.transformers.snowflake(item.id),
242
+ name: item.name,
243
+ formatType: item.format_type
244
+ }));
245
+ if (payload.message.tts) message.tts = true;
246
+ if (props.thread && payload.message.thread) message.thread = bot.transformers.channel(bot, {
247
+ channel: payload.message.thread,
248
+ guildId
249
+ });
250
+ if (props.type) message.type = payload.message.type;
251
+ if (props.webhookId && payload.message.webhook_id) message.webhookId = bot.transformers.snowflake(payload.message.webhook_id);
252
+ if (props.poll && payload.message.poll) message.poll = bot.transformers.poll(bot, payload.message.poll);
253
+ if (props.call && payload.message.call) message.call = bot.transformers.messageCall(bot, payload.message.call);
254
+ return bot.transformers.customizers.message(bot, payload.message, message);
255
+ }
256
+ function transformMessageSnapshot(bot, payload) {
257
+ const props = bot.transformers.desiredProperties.messageSnapshot;
258
+ const messageSnapshot = {};
259
+ if (props.message && payload.messageSnapshot.message) messageSnapshot.message = bot.transformers.message(bot, {
260
+ message: payload.messageSnapshot.message,
261
+ shardId: payload.shardId
262
+ });
263
+ return bot.transformers.customizers.messageSnapshot(bot, payload.messageSnapshot, messageSnapshot);
264
+ }
265
+ function transformMessageInteractionMetadata(bot, payload) {
266
+ const props = bot.transformers.desiredProperties.messageInteractionMetadata;
267
+ const metadata = {};
268
+ if (props.id) metadata.id = bot.transformers.snowflake(payload.id);
269
+ if (props.authorizingIntegrationOwners) {
270
+ metadata.authorizingIntegrationOwners = {};
271
+ if (payload.authorizing_integration_owners['0']) metadata.authorizingIntegrationOwners[_types.DiscordApplicationIntegrationType.GuildInstall] = bot.transformers.snowflake(payload.authorizing_integration_owners['0']);
272
+ if (payload.authorizing_integration_owners['1']) metadata.authorizingIntegrationOwners[_types.DiscordApplicationIntegrationType.UserInstall] = bot.transformers.snowflake(payload.authorizing_integration_owners['1']);
273
+ }
274
+ if (props.originalResponseMessageId && payload.original_response_message_id) metadata.originalResponseMessageId = bot.transformers.snowflake(payload.original_response_message_id);
275
+ if (props.type) metadata.type = payload.type;
276
+ if (props.user && payload.user) metadata.user = bot.transformers.user(bot, payload.user);
277
+ // Application command metadata
278
+ if ('target_user' in payload) {
279
+ if (props.targetUser && payload.target_user) metadata.targetUser = bot.transformers.user(bot, payload.target_user);
280
+ if (props.targetMessageId && payload.target_message_id) metadata.targetMessageId = bot.transformers.snowflake(payload.target_message_id);
281
+ }
282
+ // Message component metadata
283
+ if ('interacted_message_id' in payload) {
284
+ if (props.interactedMessageId && payload.interacted_message_id) metadata.interactedMessageId = bot.transformers.snowflake(payload.interacted_message_id);
285
+ }
286
+ // Modal submit metadata
287
+ if ('triggering_interaction_metadata' in payload) {
288
+ if (props.triggeringInteractionMetadata && payload.triggering_interaction_metadata) metadata.triggeringInteractionMetadata = bot.transformers.messageInteractionMetadata(bot, payload.triggering_interaction_metadata);
289
+ }
290
+ return bot.transformers.customizers.messageInteractionMetadata(bot, payload, metadata);
291
+ }
292
+ function transformMessageCall(bot, payload) {
293
+ const call = {};
294
+ const props = bot.transformers.desiredProperties.messageCall;
295
+ if (props.participants && payload.participants) call.participants = payload.participants.map((x)=>bot.transformers.snowflake(x));
296
+ if (props.endedTimestamp && payload.ended_timestamp) call.endedTimestamp = Date.parse(payload.ended_timestamp);
297
+ return bot.transformers.customizers.messageCall(bot, payload, call);
298
+ }
299
+
300
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvbWVzc2FnZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIERpc2NvcmRBcHBsaWNhdGlvbixcbiAgRGlzY29yZEFwcGxpY2F0aW9uSW50ZWdyYXRpb25UeXBlLFxuICB0eXBlIERpc2NvcmRNZXNzYWdlLFxuICB0eXBlIERpc2NvcmRNZXNzYWdlQ2FsbCxcbiAgdHlwZSBEaXNjb3JkTWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEsXG4gIHR5cGUgRGlzY29yZE1lc3NhZ2VTbmFwc2hvdCxcbiAgTWVzc2FnZUZsYWdzLFxufSBmcm9tICdAZGlzY29yZGVuby90eXBlcydcbmltcG9ydCB7IENIQU5ORUxfTUVOVElPTl9SRUdFWCB9IGZyb20gJy4uL2NvbnN0YW50cy5qcydcbmltcG9ydCB7XG4gIHR5cGUgSW50ZXJuYWxCb3QsXG4gIHR5cGUgTWVzc2FnZSxcbiAgdHlwZSBNZXNzYWdlQ2FsbCxcbiAgdHlwZSBNZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YSxcbiAgdHlwZSBNZXNzYWdlU25hcHNob3QsXG4gIHNub3dmbGFrZVRvVGltZXN0YW1wLFxufSBmcm9tICcuLi9pbmRleC5qcydcbmltcG9ydCB7IFRvZ2dsZUJpdGZpZWxkIH0gZnJvbSAnLi90b2dnbGVzL1RvZ2dsZUJpdGZpZWxkLmpzJ1xuXG5jb25zdCBFTVBUWV9TVFJJTkcgPSAnJ1xuXG5leHBvcnQgY29uc3QgYmFzZU1lc3NhZ2U6IEludGVybmFsQm90Wyd0cmFuc2Zvcm1lcnMnXVsnJGluZmVycmVkVHlwZXMnXVsnbWVzc2FnZSddID0ge1xuICAvLyBUaGlzIGFsbG93cyB0eXBlc2NyaXB0IHRvIHN0aWxsIGNoZWNrIGZvciB0eXBlIGVycm9ycyBvbiBmdW5jdGlvbnMgYmVsb3dcbiAgLi4uKHVuZGVmaW5lZCBhcyB1bmtub3duIGFzIEludGVybmFsQm90Wyd0cmFuc2Zvcm1lcnMnXVsnJGluZmVycmVkVHlwZXMnXVsnbWVzc2FnZSddKSxcblxuICBnZXQgY3Jvc3Nwb3N0ZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmxhZ3M/LmNvbnRhaW5zKE1lc3NhZ2VGbGFncy5Dcm9zc3Bvc3RlZCkgPz8gZmFsc2VcbiAgfSxcbiAgc2V0IGNyb3NzcG9zdGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmZsYWdzKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuZmxhZ3MuYWRkKE1lc3NhZ2VGbGFncy5Dcm9zc3Bvc3RlZClcbiAgICBlbHNlIHRoaXMuZmxhZ3MucmVtb3ZlKE1lc3NhZ2VGbGFncy5Dcm9zc3Bvc3RlZClcbiAgfSxcbiAgZ2V0IGVwaGVtZXJhbCgpIHtcbiAgICByZXR1cm4gdGhpcy5mbGFncz8uY29udGFpbnMoTWVzc2FnZUZsYWdzLkVwaGVtZXJhbCkgPz8gZmFsc2VcbiAgfSxcbiAgc2V0IGVwaGVtZXJhbCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5mbGFncykgcmV0dXJuXG4gICAgaWYgKHZhbHVlKSB0aGlzLmZsYWdzLmFkZChNZXNzYWdlRmxhZ3MuRXBoZW1lcmFsKVxuICAgIGVsc2UgdGhpcy5mbGFncy5yZW1vdmUoTWVzc2FnZUZsYWdzLkVwaGVtZXJhbClcbiAgfSxcbiAgZ2V0IGZhaWxlZFRvTWVudGlvblNvbWVSb2xlc0luVGhyZWFkKCkge1xuICAgIHJldHVybiB0aGlzLmZsYWdzPy5jb250YWlucyhNZXNzYWdlRmxhZ3MuRmFpbGVkVG9NZW50aW9uU29tZVJvbGVzSW5UaHJlYWQpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBmYWlsZWRUb01lbnRpb25Tb21lUm9sZXNJblRocmVhZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5mbGFncykgcmV0dXJuXG4gICAgaWYgKHZhbHVlKSB0aGlzLmZsYWdzLmFkZChNZXNzYWdlRmxhZ3MuRmFpbGVkVG9NZW50aW9uU29tZVJvbGVzSW5UaHJlYWQpXG4gICAgZWxzZSB0aGlzLmZsYWdzLnJlbW92ZShNZXNzYWdlRmxhZ3MuRmFpbGVkVG9NZW50aW9uU29tZVJvbGVzSW5UaHJlYWQpXG4gIH0sXG4gIGdldCBoYXNUaHJlYWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmxhZ3M/LmNvbnRhaW5zKE1lc3NhZ2VGbGFncy5IYXNUaHJlYWQpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBoYXNUaHJlYWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuZmxhZ3MpIHJldHVyblxuICAgIGlmICh2YWx1ZSkgdGhpcy5mbGFncy5hZGQoTWVzc2FnZUZsYWdzLkhhc1RocmVhZClcbiAgICBlbHNlIHRoaXMuZmxhZ3MucmVtb3ZlKE1lc3NhZ2VGbGFncy5IYXNUaHJlYWQpXG4gIH0sXG4gIGdldCBpc0Nyb3NzcG9zdCgpIHtcbiAgICByZXR1cm4gdGhpcy5mbGFncz8uY29udGFpbnMoTWVzc2FnZUZsYWdzLklzQ3Jvc3Nwb3N0KSA/PyBmYWxzZVxuICB9LFxuICBzZXQgaXNDcm9zc3Bvc3QodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuZmxhZ3MpIHJldHVyblxuICAgIGlmICh2YWx1ZSkgdGhpcy5mbGFncy5hZGQoTWVzc2FnZUZsYWdzLklzQ3Jvc3Nwb3N0KVxuICAgIGVsc2UgdGhpcy5mbGFncy5yZW1vdmUoTWVzc2FnZUZsYWdzLklzQ3Jvc3Nwb3N0KVxuICB9LFxuICBnZXQgbG9hZGluZygpIHtcbiAgICByZXR1cm4gdGhpcy5mbGFncz8uY29udGFpbnMoTWVzc2FnZUZsYWdzLkxvYWRpbmcpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBsb2FkaW5nKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmZsYWdzKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuZmxhZ3MuYWRkKE1lc3NhZ2VGbGFncy5Mb2FkaW5nKVxuICAgIGVsc2UgdGhpcy5mbGFncy5yZW1vdmUoTWVzc2FnZUZsYWdzLkxvYWRpbmcpXG4gIH0sXG4gIGdldCBtZW50aW9uZWRVc2VySWRzKCkge1xuICAgIHJldHVybiB0aGlzLm1lbnRpb25zPy5tYXAoKHVzZXIpID0+IHVzZXIuaWQpID8/IFtdXG4gIH0sXG4gIGdldCBtZW50aW9uRXZlcnlvbmUoKSB7XG4gICAgcmV0dXJuIHRoaXMuYml0ZmllbGQ/LmNvbnRhaW5zKDIpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBtZW50aW9uRXZlcnlvbmUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuYml0ZmllbGQpIHJldHVyblxuICAgIGlmICh2YWx1ZSkgdGhpcy5iaXRmaWVsZC5hZGQoMilcbiAgICBlbHNlIHRoaXMuYml0ZmllbGQucmVtb3ZlKDIpXG4gIH0sXG4gIGdldCBwaW5uZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuYml0ZmllbGQ/LmNvbnRhaW5zKDMpID8/IGZhbHNlXG4gIH0sXG4gIHNldCBwaW5uZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuYml0ZmllbGQpIHJldHVyblxuICAgIGlmICh2YWx1ZSkgdGhpcy5iaXRmaWVsZC5hZGQoMylcbiAgICBlbHNlIHRoaXMuYml0ZmllbGQucmVtb3ZlKDMpXG4gIH0sXG4gIGdldCBzb3VyY2VNZXNzYWdlRGVsZXRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5mbGFncz8uY29udGFpbnMoTWVzc2FnZUZsYWdzLlNvdXJjZU1lc3NhZ2VEZWxldGVkKSA/PyBmYWxzZVxuICB9LFxuICBzZXQgc291cmNlTWVzc2FnZURlbGV0ZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuZmxhZ3MpIHJldHVyblxuICAgIGlmICh2YWx1ZSkgdGhpcy5mbGFncy5hZGQoTWVzc2FnZUZsYWdzLlNvdXJjZU1lc3NhZ2VEZWxldGVkKVxuICAgIGVsc2UgdGhpcy5mbGFncy5yZW1vdmUoTWVzc2FnZUZsYWdzLlNvdXJjZU1lc3NhZ2VEZWxldGVkKVxuICB9LFxuICBnZXQgc3VwcHJlc3NFbWJlZHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmxhZ3M/LmNvbnRhaW5zKE1lc3NhZ2VGbGFncy5TdXBwcmVzc0VtYmVkcykgPz8gZmFsc2VcbiAgfSxcbiAgc2V0IHN1cHByZXNzRW1iZWRzKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmZsYWdzKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuZmxhZ3MuYWRkKE1lc3NhZ2VGbGFncy5TdXBwcmVzc0VtYmVkcylcbiAgICBlbHNlIHRoaXMuZmxhZ3MucmVtb3ZlKE1lc3NhZ2VGbGFncy5TdXBwcmVzc0VtYmVkcylcbiAgfSxcbiAgZ2V0IHN1cHByZXNzTm90aWZpY2F0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5mbGFncz8uY29udGFpbnMoTWVzc2FnZUZsYWdzLlN1cHByZXNzTm90aWZpY2F0aW9ucykgPz8gZmFsc2VcbiAgfSxcbiAgc2V0IHN1cHByZXNzTm90aWZpY2F0aW9ucyh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5mbGFncykgcmV0dXJuXG4gICAgaWYgKHZhbHVlKSB0aGlzLmZsYWdzLmFkZChNZXNzYWdlRmxhZ3MuU3VwcHJlc3NOb3RpZmljYXRpb25zKVxuICAgIGVsc2UgdGhpcy5mbGFncy5yZW1vdmUoTWVzc2FnZUZsYWdzLlN1cHByZXNzTm90aWZpY2F0aW9ucylcbiAgfSxcbiAgZ2V0IHRpbWVzdGFtcCgpIHtcbiAgICByZXR1cm4gdGhpcy5pZCA/IHNub3dmbGFrZVRvVGltZXN0YW1wKHRoaXMuaWQpIDogMFxuICB9LFxuICBnZXQgdHRzKCkge1xuICAgIHJldHVybiB0aGlzLmJpdGZpZWxkPy5jb250YWlucygxKSA/PyBmYWxzZVxuICB9LFxuICBzZXQgdHRzKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmJpdGZpZWxkKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuYml0ZmllbGQuYWRkKDEpXG4gICAgZWxzZSB0aGlzLmJpdGZpZWxkLnJlbW92ZSgxKVxuICB9LFxuICBnZXQgdXJnZW50KCkge1xuICAgIHJldHVybiB0aGlzLmZsYWdzPy5jb250YWlucyhNZXNzYWdlRmxhZ3MuVXJnZW50KSA/PyBmYWxzZVxuICB9LFxuICBzZXQgdXJnZW50KHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLmZsYWdzKSByZXR1cm5cbiAgICBpZiAodmFsdWUpIHRoaXMuZmxhZ3MuYWRkKE1lc3NhZ2VGbGFncy5VcmdlbnQpXG4gICAgZWxzZSB0aGlzLmZsYWdzLnJlbW92ZShNZXNzYWdlRmxhZ3MuVXJnZW50KVxuICB9LFxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtTWVzc2FnZShcbiAgYm90OiBJbnRlcm5hbEJvdCxcbiAgcGF5bG9hZDogeyBtZXNzYWdlOiBEaXNjb3JkTWVzc2FnZTsgc2hhcmRJZDogbnVtYmVyIH0sXG4pOiB0eXBlb2YgYm90LnRyYW5zZm9ybWVycy4kaW5mZXJyZWRUeXBlcy5tZXNzYWdlIHtcbiAgY29uc3QgZ3VpbGRJZCA9IHBheWxvYWQubWVzc2FnZS5ndWlsZF9pZCA/IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQubWVzc2FnZS5ndWlsZF9pZCkgOiB1bmRlZmluZWRcbiAgY29uc3QgdXNlcklkID0gcGF5bG9hZC5tZXNzYWdlLmF1dGhvcj8uaWQgPyBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLm1lc3NhZ2UuYXV0aG9yLmlkKSA6IHVuZGVmaW5lZFxuXG4gIGNvbnN0IG1lc3NhZ2U6IE1lc3NhZ2UgPSBPYmplY3QuY3JlYXRlKGJhc2VNZXNzYWdlKVxuICBtZXNzYWdlLmJpdGZpZWxkID0gbmV3IFRvZ2dsZUJpdGZpZWxkKClcbiAgbWVzc2FnZS5mbGFncyA9IG5ldyBUb2dnbGVCaXRmaWVsZChwYXlsb2FkLm1lc3NhZ2UuZmxhZ3MpXG5cbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VcblxuICBpZiAocHJvcHMuYXV0aG9yICYmIHBheWxvYWQubWVzc2FnZS5hdXRob3IpIG1lc3NhZ2UuYXV0aG9yID0gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgcGF5bG9hZC5tZXNzYWdlLmF1dGhvcilcbiAgaWYgKHByb3BzLmFwcGxpY2F0aW9uICYmIHBheWxvYWQubWVzc2FnZS5hcHBsaWNhdGlvbilcbiAgICBtZXNzYWdlLmFwcGxpY2F0aW9uID0gYm90LnRyYW5zZm9ybWVycy5hcHBsaWNhdGlvbihib3QsIHtcbiAgICAgIGFwcGxpY2F0aW9uOiBwYXlsb2FkLm1lc3NhZ2UuYXBwbGljYXRpb24gYXMgRGlzY29yZEFwcGxpY2F0aW9uLFxuICAgICAgc2hhcmRJZDogcGF5bG9hZC5zaGFyZElkLFxuICAgIH0pXG4gIGlmIChwcm9wcy5hcHBsaWNhdGlvbklkICYmIHBheWxvYWQubWVzc2FnZS5hcHBsaWNhdGlvbl9pZCkgbWVzc2FnZS5hcHBsaWNhdGlvbklkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLmFwcGxpY2F0aW9uX2lkKVxuICBpZiAocHJvcHMuYXR0YWNobWVudHMgJiYgcGF5bG9hZC5tZXNzYWdlLmF0dGFjaG1lbnRzPy5sZW5ndGgpXG4gICAgbWVzc2FnZS5hdHRhY2htZW50cyA9IHBheWxvYWQubWVzc2FnZS5hdHRhY2htZW50cy5tYXAoKGF0dGFjaG1lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMuYXR0YWNobWVudChib3QsIGF0dGFjaG1lbnQpKVxuICBpZiAocHJvcHMuY2hhbm5lbElkICYmIHBheWxvYWQubWVzc2FnZS5jaGFubmVsX2lkKSBtZXNzYWdlLmNoYW5uZWxJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQubWVzc2FnZS5jaGFubmVsX2lkKVxuICBpZiAocHJvcHMuY29tcG9uZW50cyAmJiBwYXlsb2FkLm1lc3NhZ2UuY29tcG9uZW50cz8ubGVuZ3RoKVxuICAgIG1lc3NhZ2UuY29tcG9uZW50cyA9IHBheWxvYWQubWVzc2FnZS5jb21wb25lbnRzLm1hcCgoY29tcCkgPT4gYm90LnRyYW5zZm9ybWVycy5jb21wb25lbnQoYm90LCBjb21wKSlcbiAgaWYgKHByb3BzLmNvbnRlbnQpIG1lc3NhZ2UuY29udGVudCA9IHBheWxvYWQubWVzc2FnZS5jb250ZW50ID8/IEVNUFRZX1NUUklOR1xuICBpZiAocHJvcHMuZWRpdGVkVGltZXN0YW1wICYmIHBheWxvYWQubWVzc2FnZS5lZGl0ZWRfdGltZXN0YW1wKSBtZXNzYWdlLmVkaXRlZFRpbWVzdGFtcCA9IERhdGUucGFyc2UocGF5bG9hZC5tZXNzYWdlLmVkaXRlZF90aW1lc3RhbXApXG4gIGlmIChwcm9wcy5lbWJlZHMgJiYgcGF5bG9hZC5tZXNzYWdlLmVtYmVkcz8ubGVuZ3RoKSBtZXNzYWdlLmVtYmVkcyA9IHBheWxvYWQubWVzc2FnZS5lbWJlZHMubWFwKChlbWJlZCkgPT4gYm90LnRyYW5zZm9ybWVycy5lbWJlZChib3QsIGVtYmVkKSlcbiAgaWYgKHByb3BzLmd1aWxkSWQgJiYgZ3VpbGRJZCkgbWVzc2FnZS5ndWlsZElkID0gZ3VpbGRJZFxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5tZXNzYWdlLmlkKSBtZXNzYWdlLmlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLmlkKVxuICBpZiAocHJvcHMuaW50ZXJhY3Rpb25NZXRhZGF0YSAmJiBwYXlsb2FkLm1lc3NhZ2UuaW50ZXJhY3Rpb25fbWV0YWRhdGEpXG4gICAgbWVzc2FnZS5pbnRlcmFjdGlvbk1ldGFkYXRhID0gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YShib3QsIHBheWxvYWQubWVzc2FnZS5pbnRlcmFjdGlvbl9tZXRhZGF0YSlcbiAgaWYgKHByb3BzLmludGVyYWN0aW9uICYmIHBheWxvYWQubWVzc2FnZS5pbnRlcmFjdGlvbikge1xuICAgIGNvbnN0IGludGVyYWN0aW9uID0ge30gYXMgTm9uTnVsbGFibGU8TWVzc2FnZVsnaW50ZXJhY3Rpb24nXT5cbiAgICBjb25zdCBtZXNzYWdlSW50ZXJhY3Rpb25Qcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUludGVyYWN0aW9uXG5cbiAgICBpZiAobWVzc2FnZUludGVyYWN0aW9uUHJvcHMuaWQpIHtcbiAgICAgIGludGVyYWN0aW9uLmlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLmludGVyYWN0aW9uLmlkKVxuICAgIH1cbiAgICBpZiAobWVzc2FnZUludGVyYWN0aW9uUHJvcHMubWVtYmVyICYmIHBheWxvYWQubWVzc2FnZS5pbnRlcmFjdGlvbi5tZW1iZXIpIHtcbiAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgVE9ETzogcGFydGlhbCAtIGNoZWNrIHdoeSB0aGlzIGlzIHBhcnRpYWwgYW5kIGhhbmRsZSBhcyBuZWVkZWRcbiAgICAgIGludGVyYWN0aW9uLm1lbWJlciA9IGJvdC50cmFuc2Zvcm1lcnMubWVtYmVyKGJvdCwgcGF5bG9hZC5tZXNzYWdlLmludGVyYWN0aW9uLm1lbWJlciwgZ3VpbGRJZCwgcGF5bG9hZC5tZXNzYWdlLmludGVyYWN0aW9uLnVzZXIuaWQpXG4gICAgfVxuICAgIGlmIChtZXNzYWdlSW50ZXJhY3Rpb25Qcm9wcy5uYW1lKSB7XG4gICAgICBpbnRlcmFjdGlvbi5uYW1lID0gcGF5bG9hZC5tZXNzYWdlLmludGVyYWN0aW9uLm5hbWVcbiAgICB9XG4gICAgaWYgKG1lc3NhZ2VJbnRlcmFjdGlvblByb3BzLnR5cGUpIHtcbiAgICAgIGludGVyYWN0aW9uLnR5cGUgPSBwYXlsb2FkLm1lc3NhZ2UuaW50ZXJhY3Rpb24udHlwZVxuICAgIH1cbiAgICBpZiAobWVzc2FnZUludGVyYWN0aW9uUHJvcHMudXNlcikge1xuICAgICAgaW50ZXJhY3Rpb24udXNlciA9IGJvdC50cmFuc2Zvcm1lcnMudXNlcihib3QsIHBheWxvYWQubWVzc2FnZS5pbnRlcmFjdGlvbi51c2VyKVxuICAgIH1cblxuICAgIG1lc3NhZ2UuaW50ZXJhY3Rpb24gPSBpbnRlcmFjdGlvblxuICB9XG4gIGlmIChwcm9wcy5tZW1iZXIgJiYgZ3VpbGRJZCAmJiB1c2VySWQgJiYgcGF5bG9hZC5tZXNzYWdlLm1lbWJlcilcbiAgICBtZXNzYWdlLm1lbWJlciA9IGJvdC50cmFuc2Zvcm1lcnMubWVtYmVyKGJvdCwgcGF5bG9hZC5tZXNzYWdlLm1lbWJlciwgZ3VpbGRJZCwgdXNlcklkKVxuICBpZiAocGF5bG9hZC5tZXNzYWdlLm1lbnRpb25fZXZlcnlvbmUpIG1lc3NhZ2UubWVudGlvbkV2ZXJ5b25lID0gdHJ1ZVxuICBpZiAocHJvcHMubWVudGlvbmVkQ2hhbm5lbElkcyAmJiBwYXlsb2FkLm1lc3NhZ2UubWVudGlvbl9jaGFubmVscz8ubGVuZ3RoKSB7XG4gICAgbWVzc2FnZS5tZW50aW9uZWRDaGFubmVsSWRzID0gW1xuICAgICAgLy8gS2VlcCBhbnkgaWRzIHRodCBkaXNjb3JkIHNlbmRzXG4gICAgICAuLi4ocGF5bG9hZC5tZXNzYWdlLm1lbnRpb25fY2hhbm5lbHMgPz8gW10pLm1hcCgobSkgPT4gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UobS5pZCkpLFxuICAgICAgLy8gQWRkIGFueSBvdGhlciBpZHMgdGhhdCBjYW4gYmUgdmFsaWRhdGVkIGluIGEgY2hhbm5lbCBtZW50aW9uIGZvcm1hdFxuICAgICAgLi4uKHBheWxvYWQubWVzc2FnZS5jb250ZW50Py5tYXRjaChDSEFOTkVMX01FTlRJT05fUkVHRVgpID8/IFtdKS5tYXAoKHRleHQpID0+XG4gICAgICAgIC8vIGNvbnZlcnRzIHRoZSA8IzEyMz4gaW50byAxMjNcbiAgICAgICAgYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UodGV4dC5zdWJzdHJpbmcoMiwgdGV4dC5sZW5ndGggLSAxKSksXG4gICAgICApLFxuICAgIF1cbiAgfVxuICBpZiAocHJvcHMubWVudGlvbmVkUm9sZUlkcyAmJiBwYXlsb2FkLm1lc3NhZ2UubWVudGlvbl9yb2xlcz8ubGVuZ3RoKVxuICAgIG1lc3NhZ2UubWVudGlvbmVkUm9sZUlkcyA9IHBheWxvYWQubWVzc2FnZS5tZW50aW9uX3JvbGVzLm1hcCgoaWQpID0+IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGlkKSlcbiAgaWYgKHByb3BzLm1lbnRpb25zICYmIHBheWxvYWQubWVzc2FnZS5tZW50aW9ucz8ubGVuZ3RoKSBtZXNzYWdlLm1lbnRpb25zID0gcGF5bG9hZC5tZXNzYWdlLm1lbnRpb25zLm1hcCgodXNlcikgPT4gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgdXNlcikpXG4gIGlmIChwcm9wcy5tZXNzYWdlUmVmZXJlbmNlICYmIHBheWxvYWQubWVzc2FnZS5tZXNzYWdlX3JlZmVyZW5jZSkge1xuICAgIGNvbnN0IHJlZmVyZW5jZSA9IHt9IGFzIE5vbk51bGxhYmxlPE1lc3NhZ2VbJ21lc3NhZ2VSZWZlcmVuY2UnXT5cbiAgICBjb25zdCBtZXNzYWdlUmVmZXJlbmNlUHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLm1lc3NhZ2VSZWZlcmVuY2VcblxuICAgIGlmIChtZXNzYWdlUmVmZXJlbmNlUHJvcHMuY2hhbm5lbElkICYmIHBheWxvYWQubWVzc2FnZS5tZXNzYWdlX3JlZmVyZW5jZS5jaGFubmVsX2lkKSB7XG4gICAgICByZWZlcmVuY2UuY2hhbm5lbElkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLm1lc3NhZ2VfcmVmZXJlbmNlLmNoYW5uZWxfaWQpXG4gICAgfVxuICAgIGlmIChtZXNzYWdlUmVmZXJlbmNlUHJvcHMuZ3VpbGRJZCAmJiBwYXlsb2FkLm1lc3NhZ2UubWVzc2FnZV9yZWZlcmVuY2UuZ3VpbGRfaWQpIHtcbiAgICAgIHJlZmVyZW5jZS5ndWlsZElkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocGF5bG9hZC5tZXNzYWdlLm1lc3NhZ2VfcmVmZXJlbmNlLmd1aWxkX2lkKVxuICAgIH1cbiAgICBpZiAobWVzc2FnZVJlZmVyZW5jZVByb3BzLm1lc3NhZ2VJZCAmJiBwYXlsb2FkLm1lc3NhZ2UubWVzc2FnZV9yZWZlcmVuY2UubWVzc2FnZV9pZCkge1xuICAgICAgcmVmZXJlbmNlLm1lc3NhZ2VJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQubWVzc2FnZS5tZXNzYWdlX3JlZmVyZW5jZS5tZXNzYWdlX2lkKVxuICAgIH1cblxuICAgIG1lc3NhZ2UubWVzc2FnZVJlZmVyZW5jZSA9IHJlZmVyZW5jZVxuICB9XG4gIGlmIChwcm9wcy5yZWZlcmVuY2VkTWVzc2FnZSAmJiBwYXlsb2FkLm1lc3NhZ2UucmVmZXJlbmNlZF9tZXNzYWdlKVxuICAgIG1lc3NhZ2UucmVmZXJlbmNlZE1lc3NhZ2UgPSBib3QudHJhbnNmb3JtZXJzLm1lc3NhZ2UoYm90LCB7IG1lc3NhZ2U6IHBheWxvYWQubWVzc2FnZS5yZWZlcmVuY2VkX21lc3NhZ2UsIHNoYXJkSWQ6IHBheWxvYWQuc2hhcmRJZCB9KVxuICBpZiAocHJvcHMubWVzc2FnZVNuYXBzaG90cyAmJiBwYXlsb2FkLm1lc3NhZ2UubWVzc2FnZV9zbmFwc2hvdHMpXG4gICAgbWVzc2FnZS5tZXNzYWdlU25hcHNob3RzID0gcGF5bG9hZC5tZXNzYWdlLm1lc3NhZ2Vfc25hcHNob3RzLm1hcCgoc25hcCkgPT5cbiAgICAgIGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZVNuYXBzaG90KGJvdCwgeyBtZXNzYWdlU25hcHNob3Q6IHNuYXAsIHNoYXJkSWQ6IHBheWxvYWQuc2hhcmRJZCB9KSxcbiAgICApXG4gIGlmIChwcm9wcy5ub25jZSAmJiBwYXlsb2FkLm1lc3NhZ2Uubm9uY2UpIG1lc3NhZ2Uubm9uY2UgPSBwYXlsb2FkLm1lc3NhZ2Uubm9uY2VcbiAgaWYgKHBheWxvYWQubWVzc2FnZS5waW5uZWQpIG1lc3NhZ2UucGlubmVkID0gdHJ1ZVxuICBpZiAocHJvcHMucmVhY3Rpb25zICYmIHBheWxvYWQubWVzc2FnZS5yZWFjdGlvbnM/Lmxlbmd0aCkge1xuICAgIG1lc3NhZ2UucmVhY3Rpb25zID0gcGF5bG9hZC5tZXNzYWdlLnJlYWN0aW9ucy5tYXAoKHJlYWN0aW9uKSA9PiAoe1xuICAgICAgbWU6IHJlYWN0aW9uLm1lLFxuICAgICAgbWVCdXJzdDogcmVhY3Rpb24ubWVfYnVyc3QsXG4gICAgICBjb3VudDogcmVhY3Rpb24uY291bnQsXG4gICAgICBjb3VudERldGFpbHM6IHtcbiAgICAgICAgYnVyc3Q6IHJlYWN0aW9uLmNvdW50X2RldGFpbHMuYnVyc3QsXG4gICAgICAgIG5vcm1hbDogcmVhY3Rpb24uY291bnRfZGV0YWlscy5ub3JtYWwsXG4gICAgICB9LFxuICAgICAgZW1vamk6IGJvdC50cmFuc2Zvcm1lcnMuZW1vamkoYm90LCByZWFjdGlvbi5lbW9qaSksXG4gICAgICBidXJzdENvbG9yczogcmVhY3Rpb24uYnVyc3RfY29sb3JzLFxuICAgIH0pKVxuICB9XG4gIGlmIChwcm9wcy5zdGlja2VySXRlbXMgJiYgcGF5bG9hZC5tZXNzYWdlLnN0aWNrZXJfaXRlbXM/Lmxlbmd0aClcbiAgICBtZXNzYWdlLnN0aWNrZXJJdGVtcyA9IHBheWxvYWQubWVzc2FnZS5zdGlja2VyX2l0ZW1zLm1hcCgoaXRlbSkgPT4gKHtcbiAgICAgIGlkOiBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShpdGVtLmlkKSxcbiAgICAgIG5hbWU6IGl0ZW0ubmFtZSxcbiAgICAgIGZvcm1hdFR5cGU6IGl0ZW0uZm9ybWF0X3R5cGUsXG4gICAgfSkpXG4gIGlmIChwYXlsb2FkLm1lc3NhZ2UudHRzKSBtZXNzYWdlLnR0cyA9IHRydWVcbiAgaWYgKHByb3BzLnRocmVhZCAmJiBwYXlsb2FkLm1lc3NhZ2UudGhyZWFkKSBtZXNzYWdlLnRocmVhZCA9IGJvdC50cmFuc2Zvcm1lcnMuY2hhbm5lbChib3QsIHsgY2hhbm5lbDogcGF5bG9hZC5tZXNzYWdlLnRocmVhZCwgZ3VpbGRJZCB9KVxuICBpZiAocHJvcHMudHlwZSkgbWVzc2FnZS50eXBlID0gcGF5bG9hZC5tZXNzYWdlLnR5cGVcbiAgaWYgKHByb3BzLndlYmhvb2tJZCAmJiBwYXlsb2FkLm1lc3NhZ2Uud2ViaG9va19pZCkgbWVzc2FnZS53ZWJob29rSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLm1lc3NhZ2Uud2ViaG9va19pZClcbiAgaWYgKHByb3BzLnBvbGwgJiYgcGF5bG9hZC5tZXNzYWdlLnBvbGwpIG1lc3NhZ2UucG9sbCA9IGJvdC50cmFuc2Zvcm1lcnMucG9sbChib3QsIHBheWxvYWQubWVzc2FnZS5wb2xsKVxuICBpZiAocHJvcHMuY2FsbCAmJiBwYXlsb2FkLm1lc3NhZ2UuY2FsbCkgbWVzc2FnZS5jYWxsID0gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlQ2FsbChib3QsIHBheWxvYWQubWVzc2FnZS5jYWxsKVxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLm1lc3NhZ2UoYm90LCBwYXlsb2FkLm1lc3NhZ2UsIG1lc3NhZ2UpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1NZXNzYWdlU25hcHNob3QoXG4gIGJvdDogSW50ZXJuYWxCb3QsXG4gIHBheWxvYWQ6IHsgbWVzc2FnZVNuYXBzaG90OiBEaXNjb3JkTWVzc2FnZVNuYXBzaG90OyBzaGFyZElkOiBudW1iZXIgfSxcbik6IHR5cGVvZiBib3QudHJhbnNmb3JtZXJzLiRpbmZlcnJlZFR5cGVzLm1lc3NhZ2VTbmFwc2hvdCB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5tZXNzYWdlU25hcHNob3RcbiAgY29uc3QgbWVzc2FnZVNuYXBzaG90ID0ge30gYXMgTWVzc2FnZVNuYXBzaG90XG5cbiAgaWYgKHByb3BzLm1lc3NhZ2UgJiYgcGF5bG9hZC5tZXNzYWdlU25hcHNob3QubWVzc2FnZSlcbiAgICBtZXNzYWdlU25hcHNob3QubWVzc2FnZSA9IGJvdC50cmFuc2Zvcm1lcnMubWVzc2FnZShib3QsIHsgbWVzc2FnZTogcGF5bG9hZC5tZXNzYWdlU25hcHNob3QubWVzc2FnZSBhcyBEaXNjb3JkTWVzc2FnZSwgc2hhcmRJZDogcGF5bG9hZC5zaGFyZElkIH0pXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMubWVzc2FnZVNuYXBzaG90KGJvdCwgcGF5bG9hZC5tZXNzYWdlU25hcHNob3QsIG1lc3NhZ2VTbmFwc2hvdClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybU1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhKFxuICBib3Q6IEludGVybmFsQm90LFxuICBwYXlsb2FkOiBEaXNjb3JkTWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEsXG4pOiB0eXBlb2YgYm90LnRyYW5zZm9ybWVycy4kaW5mZXJyZWRUeXBlcy5tZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5tZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YVxuICBjb25zdCBtZXRhZGF0YSA9IHt9IGFzIE1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhXG5cbiAgaWYgKHByb3BzLmlkKSBtZXRhZGF0YS5pZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpXG4gIGlmIChwcm9wcy5hdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzKSB7XG4gICAgbWV0YWRhdGEuYXV0aG9yaXppbmdJbnRlZ3JhdGlvbk93bmVycyA9IHt9XG4gICAgaWYgKHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzWycwJ10pXG4gICAgICBtZXRhZGF0YS5hdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzW0Rpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZS5HdWlsZEluc3RhbGxdID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoXG4gICAgICAgIHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzWycwJ10sXG4gICAgICApXG4gICAgaWYgKHBheWxvYWQuYXV0aG9yaXppbmdfaW50ZWdyYXRpb25fb3duZXJzWycxJ10pXG4gICAgICBtZXRhZGF0YS5hdXRob3JpemluZ0ludGVncmF0aW9uT3duZXJzW0Rpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZS5Vc2VySW5zdGFsbF0gPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShcbiAgICAgICAgcGF5bG9hZC5hdXRob3JpemluZ19pbnRlZ3JhdGlvbl9vd25lcnNbJzEnXSxcbiAgICAgIClcbiAgfVxuICBpZiAocHJvcHMub3JpZ2luYWxSZXNwb25zZU1lc3NhZ2VJZCAmJiBwYXlsb2FkLm9yaWdpbmFsX3Jlc3BvbnNlX21lc3NhZ2VfaWQpXG4gICAgbWV0YWRhdGEub3JpZ2luYWxSZXNwb25zZU1lc3NhZ2VJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQub3JpZ2luYWxfcmVzcG9uc2VfbWVzc2FnZV9pZClcbiAgaWYgKHByb3BzLnR5cGUpIG1ldGFkYXRhLnR5cGUgPSBwYXlsb2FkLnR5cGVcbiAgaWYgKHByb3BzLnVzZXIgJiYgcGF5bG9hZC51c2VyKSBtZXRhZGF0YS51c2VyID0gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgcGF5bG9hZC51c2VyKVxuICAvLyBBcHBsaWNhdGlvbiBjb21tYW5kIG1ldGFkYXRhXG4gIGlmICgndGFyZ2V0X3VzZXInIGluIHBheWxvYWQpIHtcbiAgICBpZiAocHJvcHMudGFyZ2V0VXNlciAmJiBwYXlsb2FkLnRhcmdldF91c2VyKSBtZXRhZGF0YS50YXJnZXRVc2VyID0gYm90LnRyYW5zZm9ybWVycy51c2VyKGJvdCwgcGF5bG9hZC50YXJnZXRfdXNlcilcbiAgICBpZiAocHJvcHMudGFyZ2V0TWVzc2FnZUlkICYmIHBheWxvYWQudGFyZ2V0X21lc3NhZ2VfaWQpIG1ldGFkYXRhLnRhcmdldE1lc3NhZ2VJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQudGFyZ2V0X21lc3NhZ2VfaWQpXG4gIH1cbiAgLy8gTWVzc2FnZSBjb21wb25lbnQgbWV0YWRhdGFcbiAgaWYgKCdpbnRlcmFjdGVkX21lc3NhZ2VfaWQnIGluIHBheWxvYWQpIHtcbiAgICBpZiAocHJvcHMuaW50ZXJhY3RlZE1lc3NhZ2VJZCAmJiBwYXlsb2FkLmludGVyYWN0ZWRfbWVzc2FnZV9pZClcbiAgICAgIG1ldGFkYXRhLmludGVyYWN0ZWRNZXNzYWdlSWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmludGVyYWN0ZWRfbWVzc2FnZV9pZClcbiAgfVxuICAvLyBNb2RhbCBzdWJtaXQgbWV0YWRhdGFcbiAgaWYgKCd0cmlnZ2VyaW5nX2ludGVyYWN0aW9uX21ldGFkYXRhJyBpbiBwYXlsb2FkKSB7XG4gICAgaWYgKHByb3BzLnRyaWdnZXJpbmdJbnRlcmFjdGlvbk1ldGFkYXRhICYmIHBheWxvYWQudHJpZ2dlcmluZ19pbnRlcmFjdGlvbl9tZXRhZGF0YSlcbiAgICAgIG1ldGFkYXRhLnRyaWdnZXJpbmdJbnRlcmFjdGlvbk1ldGFkYXRhID0gYm90LnRyYW5zZm9ybWVycy5tZXNzYWdlSW50ZXJhY3Rpb25NZXRhZGF0YShib3QsIHBheWxvYWQudHJpZ2dlcmluZ19pbnRlcmFjdGlvbl9tZXRhZGF0YSlcbiAgfVxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLm1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhKGJvdCwgcGF5bG9hZCwgbWV0YWRhdGEpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1NZXNzYWdlQ2FsbChib3Q6IEludGVybmFsQm90LCBwYXlsb2FkOiBEaXNjb3JkTWVzc2FnZUNhbGwpOiB0eXBlb2YgYm90LnRyYW5zZm9ybWVycy4kaW5mZXJyZWRUeXBlcy5tZXNzYWdlQ2FsbCB7XG4gIGNvbnN0IGNhbGwgPSB7fSBhcyBNZXNzYWdlQ2FsbFxuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMubWVzc2FnZUNhbGxcblxuICBpZiAocHJvcHMucGFydGljaXBhbnRzICYmIHBheWxvYWQucGFydGljaXBhbnRzKSBjYWxsLnBhcnRpY2lwYW50cyA9IHBheWxvYWQucGFydGljaXBhbnRzLm1hcCgoeCkgPT4gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UoeCkpXG4gIGlmIChwcm9wcy5lbmRlZFRpbWVzdGFtcCAmJiBwYXlsb2FkLmVuZGVkX3RpbWVzdGFtcCkgY2FsbC5lbmRlZFRpbWVzdGFtcCA9IERhdGUucGFyc2UocGF5bG9hZC5lbmRlZF90aW1lc3RhbXApXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMubWVzc2FnZUNhbGwoYm90LCBwYXlsb2FkLCBjYWxsKVxufVxuIl0sIm5hbWVzIjpbImJhc2VNZXNzYWdlIiwidHJhbnNmb3JtTWVzc2FnZSIsInRyYW5zZm9ybU1lc3NhZ2VDYWxsIiwidHJhbnNmb3JtTWVzc2FnZUludGVyYWN0aW9uTWV0YWRhdGEiLCJ0cmFuc2Zvcm1NZXNzYWdlU25hcHNob3QiLCJFTVBUWV9TVFJJTkciLCJ1bmRlZmluZWQiLCJjcm9zc3Bvc3RlZCIsImZsYWdzIiwiY29udGFpbnMiLCJNZXNzYWdlRmxhZ3MiLCJDcm9zc3Bvc3RlZCIsInZhbHVlIiwiYWRkIiwicmVtb3ZlIiwiZXBoZW1lcmFsIiwiRXBoZW1lcmFsIiwiZmFpbGVkVG9NZW50aW9uU29tZVJvbGVzSW5UaHJlYWQiLCJGYWlsZWRUb01lbnRpb25Tb21lUm9sZXNJblRocmVhZCIsImhhc1RocmVhZCIsIkhhc1RocmVhZCIsImlzQ3Jvc3Nwb3N0IiwiSXNDcm9zc3Bvc3QiLCJsb2FkaW5nIiwiTG9hZGluZyIsIm1lbnRpb25lZFVzZXJJZHMiLCJtZW50aW9ucyIsIm1hcCIsInVzZXIiLCJpZCIsIm1lbnRpb25FdmVyeW9uZSIsImJpdGZpZWxkIiwicGlubmVkIiwic291cmNlTWVzc2FnZURlbGV0ZWQiLCJTb3VyY2VNZXNzYWdlRGVsZXRlZCIsInN1cHByZXNzRW1iZWRzIiwiU3VwcHJlc3NFbWJlZHMiLCJzdXBwcmVzc05vdGlmaWNhdGlvbnMiLCJTdXBwcmVzc05vdGlmaWNhdGlvbnMiLCJ0aW1lc3RhbXAiLCJzbm93Zmxha2VUb1RpbWVzdGFtcCIsInR0cyIsInVyZ2VudCIsIlVyZ2VudCIsImJvdCIsInBheWxvYWQiLCJndWlsZElkIiwibWVzc2FnZSIsImd1aWxkX2lkIiwidHJhbnNmb3JtZXJzIiwic25vd2ZsYWtlIiwidXNlcklkIiwiYXV0aG9yIiwiT2JqZWN0IiwiY3JlYXRlIiwiVG9nZ2xlQml0ZmllbGQiLCJwcm9wcyIsImRlc2lyZWRQcm9wZXJ0aWVzIiwiYXBwbGljYXRpb24iLCJzaGFyZElkIiwiYXBwbGljYXRpb25JZCIsImFwcGxpY2F0aW9uX2lkIiwiYXR0YWNobWVudHMiLCJsZW5ndGgiLCJhdHRhY2htZW50IiwiY2hhbm5lbElkIiwiY2hhbm5lbF9pZCIsImNvbXBvbmVudHMiLCJjb21wIiwiY29tcG9uZW50IiwiY29udGVudCIsImVkaXRlZFRpbWVzdGFtcCIsImVkaXRlZF90aW1lc3RhbXAiLCJEYXRlIiwicGFyc2UiLCJlbWJlZHMiLCJlbWJlZCIsImludGVyYWN0aW9uTWV0YWRhdGEiLCJpbnRlcmFjdGlvbl9tZXRhZGF0YSIsIm1lc3NhZ2VJbnRlcmFjdGlvbk1ldGFkYXRhIiwiaW50ZXJhY3Rpb24iLCJtZXNzYWdlSW50ZXJhY3Rpb25Qcm9wcyIsIm1lc3NhZ2VJbnRlcmFjdGlvbiIsIm1lbWJlciIsIm5hbWUiLCJ0eXBlIiwibWVudGlvbl9ldmVyeW9uZSIsIm1lbnRpb25lZENoYW5uZWxJZHMiLCJtZW50aW9uX2NoYW5uZWxzIiwibSIsIm1hdGNoIiwiQ0hBTk5FTF9NRU5USU9OX1JFR0VYIiwidGV4dCIsInN1YnN0cmluZyIsIm1lbnRpb25lZFJvbGVJZHMiLCJtZW50aW9uX3JvbGVzIiwibWVzc2FnZVJlZmVyZW5jZSIsIm1lc3NhZ2VfcmVmZXJlbmNlIiwicmVmZXJlbmNlIiwibWVzc2FnZVJlZmVyZW5jZVByb3BzIiwibWVzc2FnZUlkIiwibWVzc2FnZV9pZCIsInJlZmVyZW5jZWRNZXNzYWdlIiwicmVmZXJlbmNlZF9tZXNzYWdlIiwibWVzc2FnZVNuYXBzaG90cyIsIm1lc3NhZ2Vfc25hcHNob3RzIiwic25hcCIsIm1lc3NhZ2VTbmFwc2hvdCIsIm5vbmNlIiwicmVhY3Rpb25zIiwicmVhY3Rpb24iLCJtZSIsIm1lQnVyc3QiLCJtZV9idXJzdCIsImNvdW50IiwiY291bnREZXRhaWxzIiwiYnVyc3QiLCJjb3VudF9kZXRhaWxzIiwibm9ybWFsIiwiZW1vamkiLCJidXJzdENvbG9ycyIsImJ1cnN0X2NvbG9ycyIsInN0aWNrZXJJdGVtcyIsInN0aWNrZXJfaXRlbXMiLCJpdGVtIiwiZm9ybWF0VHlwZSIsImZvcm1hdF90eXBlIiwidGhyZWFkIiwiY2hhbm5lbCIsIndlYmhvb2tJZCIsIndlYmhvb2tfaWQiLCJwb2xsIiwiY2FsbCIsIm1lc3NhZ2VDYWxsIiwiY3VzdG9taXplcnMiLCJtZXRhZGF0YSIsImF1dGhvcml6aW5nSW50ZWdyYXRpb25Pd25lcnMiLCJhdXRob3JpemluZ19pbnRlZ3JhdGlvbl9vd25lcnMiLCJEaXNjb3JkQXBwbGljYXRpb25JbnRlZ3JhdGlvblR5cGUiLCJHdWlsZEluc3RhbGwiLCJVc2VySW5zdGFsbCIsIm9yaWdpbmFsUmVzcG9uc2VNZXNzYWdlSWQiLCJvcmlnaW5hbF9yZXNwb25zZV9tZXNzYWdlX2lkIiwidGFyZ2V0VXNlciIsInRhcmdldF91c2VyIiwidGFyZ2V0TWVzc2FnZUlkIiwidGFyZ2V0X21lc3NhZ2VfaWQiLCJpbnRlcmFjdGVkTWVzc2FnZUlkIiwiaW50ZXJhY3RlZF9tZXNzYWdlX2lkIiwidHJpZ2dlcmluZ0ludGVyYWN0aW9uTWV0YWRhdGEiLCJ0cmlnZ2VyaW5nX2ludGVyYWN0aW9uX21ldGFkYXRhIiwicGFydGljaXBhbnRzIiwieCIsImVuZGVkVGltZXN0YW1wIiwiZW5kZWRfdGltZXN0YW1wIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQXNCYUEsV0FBVztlQUFYQTs7SUFvSEdDLGdCQUFnQjtlQUFoQkE7O0lBb0xBQyxvQkFBb0I7ZUFBcEJBOztJQTFDQUMsbUNBQW1DO2VBQW5DQTs7SUFiQUMsd0JBQXdCO2VBQXhCQTs7O3VCQS9QVDsyQkFDK0I7dUJBUS9CO2dDQUN3QjtBQUUvQixNQUFNQyxlQUFlO0FBRWQsTUFBTUwsY0FBd0U7SUFDbkYsMkVBQTJFO0lBQzNFLEdBQUlNLFNBQVM7SUFFYixJQUFJQyxlQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDQyxLQUFLLEVBQUVDLFNBQVNDLG1CQUFZLENBQUNDLFdBQVcsS0FBSztJQUMzRDtJQUNBLElBQUlKLGFBQVlLLE1BQWdCO1FBQzlCLElBQUksQ0FBQyxJQUFJLENBQUNKLEtBQUssRUFBRTtRQUNqQixJQUFJSSxPQUFPLElBQUksQ0FBQ0osS0FBSyxDQUFDSyxHQUFHLENBQUNILG1CQUFZLENBQUNDLFdBQVc7YUFDN0MsSUFBSSxDQUFDSCxLQUFLLENBQUNNLE1BQU0sQ0FBQ0osbUJBQVksQ0FBQ0MsV0FBVztJQUNqRDtJQUNBLElBQUlJLGFBQVk7UUFDZCxPQUFPLElBQUksQ0FBQ1AsS0FBSyxFQUFFQyxTQUFTQyxtQkFBWSxDQUFDTSxTQUFTLEtBQUs7SUFDekQ7SUFDQSxJQUFJRCxXQUFVSCxNQUFnQjtRQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDSixLQUFLLEVBQUU7UUFDakIsSUFBSUksT0FBTyxJQUFJLENBQUNKLEtBQUssQ0FBQ0ssR0FBRyxDQUFDSCxtQkFBWSxDQUFDTSxTQUFTO2FBQzNDLElBQUksQ0FBQ1IsS0FBSyxDQUFDTSxNQUFNLENBQUNKLG1CQUFZLENBQUNNLFNBQVM7SUFDL0M7SUFDQSxJQUFJQyxvQ0FBbUM7UUFDckMsT0FBTyxJQUFJLENBQUNULEtBQUssRUFBRUMsU0FBU0MsbUJBQVksQ0FBQ1EsZ0NBQWdDLEtBQUs7SUFDaEY7SUFDQSxJQUFJRCxrQ0FBaUNMLE1BQWdCO1FBQ25ELElBQUksQ0FBQyxJQUFJLENBQUNKLEtBQUssRUFBRTtRQUNqQixJQUFJSSxPQUFPLElBQUksQ0FBQ0osS0FBSyxDQUFDSyxHQUFHLENBQUNILG1CQUFZLENBQUNRLGdDQUFnQzthQUNsRSxJQUFJLENBQUNWLEtBQUssQ0FBQ00sTUFBTSxDQUFDSixtQkFBWSxDQUFDUSxnQ0FBZ0M7SUFDdEU7SUFDQSxJQUFJQyxhQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUNYLEtBQUssRUFBRUMsU0FBU0MsbUJBQVksQ0FBQ1UsU0FBUyxLQUFLO0lBQ3pEO0lBQ0EsSUFBSUQsV0FBVVAsTUFBZ0I7UUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQ0osS0FBSyxFQUFFO1FBQ2pCLElBQUlJLE9BQU8sSUFBSSxDQUFDSixLQUFLLENBQUNLLEdBQUcsQ0FBQ0gsbUJBQVksQ0FBQ1UsU0FBUzthQUMzQyxJQUFJLENBQUNaLEtBQUssQ0FBQ00sTUFBTSxDQUFDSixtQkFBWSxDQUFDVSxTQUFTO0lBQy9DO0lBQ0EsSUFBSUMsZUFBYztRQUNoQixPQUFPLElBQUksQ0FBQ2IsS0FBSyxFQUFFQyxTQUFTQyxtQkFBWSxDQUFDWSxXQUFXLEtBQUs7SUFDM0Q7SUFDQSxJQUFJRCxhQUFZVCxNQUFnQjtRQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDSixLQUFLLEVBQUU7UUFDakIsSUFBSUksT0FBTyxJQUFJLENBQUNKLEtBQUssQ0FBQ0ssR0FBRyxDQUFDSCxtQkFBWSxDQUFDWSxXQUFXO2FBQzdDLElBQUksQ0FBQ2QsS0FBSyxDQUFDTSxNQUFNLENBQUNKLG1CQUFZLENBQUNZLFdBQVc7SUFDakQ7SUFDQSxJQUFJQyxXQUFVO1FBQ1osT0FBTyxJQUFJLENBQUNmLEtBQUssRUFBRUMsU0FBU0MsbUJBQVksQ0FBQ2MsT0FBTyxLQUFLO0lBQ3ZEO0lBQ0EsSUFBSUQsU0FBUVgsTUFBZ0I7UUFDMUIsSUFBSSxDQUFDLElBQUksQ0FBQ0osS0FBSyxFQUFFO1FBQ2pCLElBQUlJLE9BQU8sSUFBSSxDQUFDSixLQUFLLENBQUNLLEdBQUcsQ0FBQ0gsbUJBQVksQ0FBQ2MsT0FBTzthQUN6QyxJQUFJLENBQUNoQixLQUFLLENBQUNNLE1BQU0sQ0FBQ0osbUJBQVksQ0FBQ2MsT0FBTztJQUM3QztJQUNBLElBQUlDLG9CQUFtQjtRQUNyQixPQUFPLElBQUksQ0FBQ0MsUUFBUSxFQUFFQyxJQUFJLENBQUNDLE9BQVNBLEtBQUtDLEVBQUUsS0FBSyxFQUFFO0lBQ3BEO0lBQ0EsSUFBSUMsbUJBQWtCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDQyxRQUFRLEVBQUV0QixTQUFTLE1BQU07SUFDdkM7SUFDQSxJQUFJcUIsaUJBQWdCbEIsTUFBZ0I7UUFDbEMsSUFBSSxDQUFDLElBQUksQ0FBQ21CLFFBQVEsRUFBRTtRQUNwQixJQUFJbkIsT0FBTyxJQUFJLENBQUNtQixRQUFRLENBQUNsQixHQUFHLENBQUM7YUFDeEIsSUFBSSxDQUFDa0IsUUFBUSxDQUFDakIsTUFBTSxDQUFDO0lBQzVCO0lBQ0EsSUFBSWtCLFVBQVM7UUFDWCxPQUFPLElBQUksQ0FBQ0QsUUFBUSxFQUFFdEIsU0FBUyxNQUFNO0lBQ3ZDO0lBQ0EsSUFBSXVCLFFBQU9wQixNQUFnQjtRQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDbUIsUUFBUSxFQUFFO1FBQ3BCLElBQUluQixPQUFPLElBQUksQ0FBQ21CLFFBQVEsQ0FBQ2xCLEdBQUcsQ0FBQzthQUN4QixJQUFJLENBQUNrQixRQUFRLENBQUNqQixNQUFNLENBQUM7SUFDNUI7SUFDQSxJQUFJbUIsd0JBQXVCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDekIsS0FBSyxFQUFFQyxTQUFTQyxtQkFBWSxDQUFDd0Isb0JBQW9CLEtBQUs7SUFDcEU7SUFDQSxJQUFJRCxzQkFBcUJyQixNQUFnQjtRQUN2QyxJQUFJLENBQUMsSUFBSSxDQUFDSixLQUFLLEVBQUU7UUFDakIsSUFBSUksT0FBTyxJQUFJLENBQUNKLEtBQUssQ0FBQ0ssR0FBRyxDQUFDSCxtQkFBWSxDQUFDd0Isb0JBQW9CO2FBQ3RELElBQUksQ0FBQzFCLEtBQUssQ0FBQ00sTUFBTSxDQUFDSixtQkFBWSxDQUFDd0Isb0JBQW9CO0lBQzFEO0lBQ0EsSUFBSUMsa0JBQWlCO1FBQ25CLE9BQU8sSUFBSSxDQUFDM0IsS0FBSyxFQUFFQyxTQUFTQyxtQkFBWSxDQUFDMEIsY0FBYyxLQUFLO0lBQzlEO0lBQ0EsSUFBSUQsZ0JBQWV2QixNQUFnQjtRQUNqQyxJQUFJLENBQUMsSUFBSSxDQUFDSixLQUFLLEVBQUU7UUFDakIsSUFBSUksT0FBTyxJQUFJLENBQUNKLEtBQUssQ0FBQ0ssR0FBRyxDQUFDSCxtQkFBWSxDQUFDMEIsY0FBYzthQUNoRCxJQUFJLENBQUM1QixLQUFLLENBQUNNLE1BQU0sQ0FBQ0osbUJBQVksQ0FBQzBCLGNBQWM7SUFDcEQ7SUFDQSxJQUFJQyx5QkFBd0I7UUFDMUIsT0FBTyxJQUFJLENBQUM3QixLQUFLLEVBQUVDLFNBQVNDLG1CQUFZLENBQUM0QixxQkFBcUIsS0FBSztJQUNyRTtJQUNBLElBQUlELHVCQUFzQnpCLE1BQWdCO1FBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUNKLEtBQUssRUFBRTtRQUNqQixJQUFJSSxPQUFPLElBQUksQ0FBQ0osS0FBSyxDQUFDSyxHQUFHLENBQUNILG1CQUFZLENBQUM0QixxQkFBcUI7YUFDdkQsSUFBSSxDQUFDOUIsS0FBSyxDQUFDTSxNQUFNLENBQUNKLG1CQUFZLENBQUM0QixxQkFBcUI7SUFDM0Q7SUFDQSxJQUFJQyxhQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUNWLEVBQUUsR0FBR1csSUFBQUEsMkJBQW9CLEVBQUMsSUFBSSxDQUFDWCxFQUFFLElBQUk7SUFDbkQ7SUFDQSxJQUFJWSxPQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUNWLFFBQVEsRUFBRXRCLFNBQVMsTUFBTTtJQUN2QztJQUNBLElBQUlnQyxLQUFJN0IsTUFBZ0I7UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQ21CLFFBQVEsRUFBRTtRQUNwQixJQUFJbkIsT0FBTyxJQUFJLENBQUNtQixRQUFRLENBQUNsQixHQUFHLENBQUM7YUFDeEIsSUFBSSxDQUFDa0IsUUFBUSxDQUFDakIsTUFBTSxDQUFDO0lBQzVCO0lBQ0EsSUFBSTRCLFVBQVM7UUFDWCxPQUFPLElBQUksQ0FBQ2xDLEtBQUssRUFBRUMsU0FBU0MsbUJBQVksQ0FBQ2lDLE1BQU0sS0FBSztJQUN0RDtJQUNBLElBQUlELFFBQU85QixNQUFnQjtRQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDSixLQUFLLEVBQUU7UUFDakIsSUFBSUksT0FBTyxJQUFJLENBQUNKLEtBQUssQ0FBQ0ssR0FBRyxDQUFDSCxtQkFBWSxDQUFDaUMsTUFBTTthQUN4QyxJQUFJLENBQUNuQyxLQUFLLENBQUNNLE1BQU0sQ0FBQ0osbUJBQVksQ0FBQ2lDLE1BQU07SUFDNUM7QUFDRjtBQUVPLFNBQVMxQyxpQkFDZDJDLEdBQWdCLEVBQ2hCQyxPQUFxRDtJQUVyRCxNQUFNQyxVQUFVRCxRQUFRRSxPQUFPLENBQUNDLFFBQVEsR0FBR0osSUFBSUssWUFBWSxDQUFDQyxTQUFTLENBQUNMLFFBQVFFLE9BQU8sQ0FBQ0MsUUFBUSxJQUFJMUM7SUFDbEcsTUFBTTZDLFNBQVNOLFFBQVFFLE9BQU8sQ0FBQ0ssTUFBTSxFQUFFdkIsS0FBS2UsSUFBSUssWUFBWSxDQUFDQyxTQUFTLENBQUNMLFFBQVFFLE9BQU8sQ0FBQ0ssTUFBTSxDQUFDdkIsRUFBRSxJQUFJdkI7SUFFcEcsTUFBTXlDLFVBQW1CTSxPQUFPQyxNQUFNLENBQUN0RDtJQUN2QytDLFFBQVFoQixRQUFRLEdBQUcsSUFBSXdCLDhCQUFjO0lBQ3JDUixRQUFRdkMsS0FBSyxHQUFHLElBQUkrQyw4QkFBYyxDQUFDVixRQUFRRSxPQUFPLENBQUN2QyxLQUFLO0lBRXhELE1BQU1nRCxRQUFRWixJQUFJSyxZQUFZLENBQUNRLGlCQUFpQixDQUFDVixPQUFPO0lBRXhELElBQUlTLE1BQU1KLE1BQU0sSUFBSVAsUUFBUUUsT0FBTyxDQUFDSyxNQUFNLEVBQUVMLFFBQVFLLE1BQU0sR0FBR1IsSUFBSUssWUFBWSxDQUFDckIsSUFBSSxDQUFDZ0IsS0FBS0MsUUFBUUUsT0FBTyxDQUFDSyxNQUFNO0lBQzlHLElBQUlJLE1BQU1FLFdBQVcsSUFBSWIsUUFBUUUsT0FBTyxDQUFDVyxXQUFXLEVBQ2xEWCxRQUFRVyxXQUFXLEdBQUdkLElBQUlLLFlBQVksQ0FBQ1MsV0FBVyxDQUFDZCxLQUFLO1FBQ3REYyxhQUFhYixRQUFRRSxPQUFPLENBQUNXLFdBQVc7UUFDeENDLFNBQVNkLFFBQVFjLE9BQU87SUFDMUI7SUFDRixJQUFJSCxNQUFNSSxhQUFhLElBQUlmLFFBQVFFLE9BQU8sQ0FBQ2MsY0FBYyxFQUFFZCxRQUFRYSxhQUFhLEdBQUdoQixJQUFJSyxZQUFZLENBQUNDLFNBQVMsQ0FBQ0wsUUFBUUUsT0FBTyxDQUFDYyxjQUFjO0lBQzVJLElBQUlMLE1BQU1NLFdBQVcsSUFBSWpCLFFBQVFFLE9BQU8sQ0FBQ2UsV0FBVyxFQUFFQyxRQUNwRGhCLFFBQVFlLFdBQVcsR0FBR2pCLFFBQVFFLE9BQU8sQ0FBQ2UsV0FBVyxDQUFDbkMsR0FBRyxDQUFDLENBQUNxQyxhQUFlcEIsSUFBSUssWUFBWSxDQUFDZSxVQUFVLENBQUNwQixLQUFLb0I7SUFDekcsSUFBSVIsTUFBTVMsU0FBUyxJQUFJcEIsUUFBUUUsT0FBTyxDQUFDbUIsVUFBVSxFQUFFbkIsUUFBUWtCLFNBQVMsR0FBR3JCLElBQUlLLFlBQVksQ0FBQ0MsU0FBUyxDQUFDTCxRQUFRRSxPQUFPLENBQUNtQixVQUFVO0lBQzVILElBQUlWLE1BQU1XLFVBQVUsSUFBSXRCLFFBQVFFLE9BQU8sQ0FBQ29CLFVBQVUsRUFBRUosUUFDbERoQixRQUFRb0IsVUFBVSxHQUFHdEIsUUFBUUUsT0FBTyxDQUFDb0IsVUFBVSxDQUFDeEMsR0FBRyxDQUFDLENBQUN5QyxPQUFTeEIsSUFBSUssWUFBWSxDQUFDb0IsU0FBUyxDQUFDekIsS0FBS3dCO0lBQ2hHLElBQUlaLE1BQU1jLE9BQU8sRUFBRXZCLFFBQVF1QixPQUFPLEdBQUd6QixRQUFRRSxPQUFPLENBQUN1QixPQUFPLElBQUlqRTtJQUNoRSxJQUFJbUQsTUFBTWUsZUFBZSxJQUFJMUIsUUFBUUUsT0FBTyxDQUFDeUIsZ0JBQWdCLEVBQUV6QixRQUFRd0IsZUFBZSxHQUFHRSxLQUFLQyxLQUFLLENBQUM3QixRQUFRRSxPQUFPLENBQUN5QixnQkFBZ0I7SUFDcEksSUFBSWhCLE1BQU1tQixNQUFNLElBQUk5QixRQUFRRSxPQUFPLENBQUM0QixNQUFNLEVBQUVaLFFBQVFoQixRQUFRNEIsTUFBTSxHQUFHOUIsUUFBUUUsT0FBTyxDQUFDNEIsTUFBTSxDQUFDaEQsR0FBRyxDQUFDLENBQUNpRCxRQUFVaEMsSUFBSUssWUFBWSxDQUFDMkIsS0FBSyxDQUFDaEMsS0FBS2dDO0lBQ3ZJLElBQUlwQixNQUFNVixPQUFPLElBQUlBLFNBQVNDLFFBQVFELE9BQU8sR0FBR0E7SUFDaEQsSUFBSVUsTUFBTTNCLEVBQUUsSUFBSWdCLFFBQVFFLE9BQU8sQ0FBQ2xCLEVBQUUsRUFBRWtCLFFBQVFsQixFQUFFLEdBQUdlLElBQUlLLFlBQVksQ0FBQ0MsU0FBUyxDQUFDTCxRQUFRRSxPQUFPLENBQUNsQixFQUFFO0lBQzlGLElBQUkyQixNQUFNcUIsbUJBQW1CLElBQUloQyxRQUFRRSxPQUFPLENBQUMrQixvQkFBb0IsRUFDbkUvQixRQUFROEIsbUJBQW1CLEdBQUdqQyxJQUFJSyxZQUFZLENBQUM4QiwwQkFBMEIsQ0FBQ25DLEtBQUtDLFFBQVFFLE9BQU8sQ0FBQytCLG9CQUFvQjtJQUNySCxJQUFJdEIsTUFBTXdCLFdBQVcsSUFBSW5DLFFBQVFFLE9BQU8sQ0FBQ2lDLFdBQVcsRUFBRTtRQUNwRCxNQUFNQSxjQUFjLENBQUM7UUFDckIsTUFBTUMsMEJBQTBCckMsSUFBSUssWUFBWSxDQUFDUSxpQkFBaUIsQ0FBQ3lCLGtCQUFrQjtRQUVyRixJQUFJRCx3QkFBd0JwRCxFQUFFLEVBQUU7WUFDOUJtRCxZQUFZbkQsRUFBRSxHQUFHZSxJQUFJSyxZQUFZLENBQUNDLFNBQVMsQ0FBQ0wsUUFBUUUsT0FBTyxDQUFDaUMsV0FBVyxDQUFDbkQsRUFBRTtRQUM1RTtRQUNBLElBQUlvRCx3QkFBd0JFLE1BQU0sSUFBSXRDLFFBQVFFLE9BQU8sQ0FBQ2lDLFdBQVcsQ0FBQ0csTUFBTSxFQUFFO1lBQ3hFLGtGQUFrRjtZQUNsRkgsWUFBWUcsTUFBTSxHQUFHdkMsSUFBSUssWUFBWSxDQUFDa0MsTUFBTSxDQUFDdkMsS0FBS0MsUUFBUUUsT0FBTyxDQUFDaUMsV0FBVyxDQUFDRyxNQUFNLEVBQUVyQyxTQUFTRCxRQUFRRSxPQUFPLENBQUNpQyxXQUFXLENBQUNwRCxJQUFJLENBQUNDLEVBQUU7UUFDcEk7UUFDQSxJQUFJb0Qsd0JBQXdCRyxJQUFJLEVBQUU7WUFDaENKLFlBQVlJLElBQUksR0FBR3ZDLFFBQVFFLE9BQU8sQ0FBQ2lDLFdBQVcsQ0FBQ0ksSUFBSTtRQUNyRDtRQUNBLElBQUlILHdCQUF3QkksSUFBSSxFQUFFO1lBQ2hDTCxZQUFZSyxJQUFJLEdBQUd4QyxRQUFRRSxPQUFPLENBQUNpQyxXQUFXLENBQUNLLElBQUk7UUFDckQ7UUFDQSxJQUFJSix3QkFBd0JyRCxJQUFJLEVBQUU7WUFDaENvRCxZQUFZcEQsSUFBSSxHQUFHZ0IsSUFBSUssWUFBWSxDQUFDckIsSUFBSSxDQUFDZ0IsS0FBS0MsUUFBUUUsT0FBTyxDQUFDaUMsV0FBVyxDQUFDcEQsSUFBSTtRQUNoRjtRQUVBbUIsUUFBUWlDLFdBQVcsR0FBR0E7SUFDeEI7SUFDQSxJQUFJeEIsTUFBTTJCLE1BQU0sSUFBSXJDLFdBQVdLLFVBQVVOLFFBQVFFLE9BQU8sQ0FBQ29DLE1BQU0sRUFDN0RwQyxRQUFRb0MsTUFBTSxHQUFHdkMsSUFBSUssWUFBWSxDQUFDa0MsTUFBTSxDQUFDdkMsS0FBS0MsUUFBUUUsT0FBTyxDQUFDb0MsTUFBTSxFQUFFckMsU0FBU0s7SUFDakYsSUFBSU4sUUFBUUUsT0FBTyxDQUFDdUMsZ0JBQWdCLEVBQUV2QyxRQUFRakIsZUFBZSxHQUFHO0lBQ2hFLElBQUkwQixNQUFNK0IsbUJBQW1CLElBQUkxQyxRQUFRRSxPQUFPLENBQUN5QyxnQkFBZ0IsRUFBRXpCLFFBQVE7UUFDekVoQixRQUFRd0MsbUJBQW1CLEdBQUc7WUFDNUIsaUNBQWlDO2VBQzlCLEFBQUMxQyxDQUFBQSxRQUFRRSxPQUFPLENBQUN5QyxnQkFBZ0IsSUFBSSxFQUFFLEFBQUQsRUFBRzdELEdBQUcsQ0FBQyxDQUFDOEQsSUFBTTdDLElBQUlLLFlBQVksQ0FBQ0MsU0FBUyxDQUFDdUMsRUFBRTVELEVBQUU7WUFDdEYsc0VBQXNFO2VBQ25FLEFBQUNnQixDQUFBQSxRQUFRRSxPQUFPLENBQUN1QixPQUFPLEVBQUVvQixNQUFNQyxnQ0FBcUIsS0FBSyxFQUFFLEFBQUQsRUFBR2hFLEdBQUcsQ0FBQyxDQUFDaUUsT0FDcEUsK0JBQStCO2dCQUMvQmhELElBQUlLLFlBQVksQ0FBQ0MsU0FBUyxDQUFDMEMsS0FBS0MsU0FBUyxDQUFDLEdBQUdELEtBQUs3QixNQUFNLEdBQUc7U0FFOUQ7SUFDSDtJQUNBLElBQUlQLE1BQU1zQyxnQkFBZ0IsSUFBSWpELFFBQVFFLE9BQU8sQ0FBQ2dELGFBQWEsRUFBRWhDLFFBQzNEaEIsUUFBUStDLGdCQUFnQixHQUFHakQsUUFBUUUsT0FBTyxDQUFDZ0QsYUFBYSxDQUFDcEUsR0FBRyxDQUFDLENBQUNFLEtBQU9lLElBQUlLLFlBQVksQ0FBQ0MsU0FBUyxDQUFDckI7SUFDbEcsSUFBSTJCLE1BQU05QixRQUFRLElBQUltQixRQUFRRSxPQUFPLENBQUNyQixRQUFRLEVBQUVxQyxRQUFRaEIsUUFBUXJCLFFBQVEsR0FBR21CLFFBQVFFLE9BQU8sQ0FBQ3JCLFFBQVEsQ0FBQ0MsR0FBRyxDQUFDLENBQUNDLE9BQVNnQixJQUFJSyxZQUFZLENBQUNyQixJQUFJLENBQUNnQixLQUFLaEI7SUFDN0ksSUFBSTRCLE1BQU13QyxnQkFBZ0IsSUFBSW5ELFFBQVFFLE9BQU8sQ0FBQ2tELGlCQUFpQixFQUFFO1FBQy9ELE1BQU1DLFlBQVksQ0FBQztRQUNuQixNQUFNQyx3QkFBd0J2RCxJQUFJSyxZQUFZLENBQUNRLGlCQUFpQixDQUFDdUMsZ0JBQWdCO1FBRWpGLElBQUlHLHNCQUFzQmxDLFNBQVMsSUFBSXBCLFFBQVFFLE9BQU8sQ0FBQ2tELGlCQUFpQixDQUFDL0IsVUFBVSxFQUFFO1lBQ25GZ0MsVUFBVWpDLFNBQVMsR0FBR3JCLElBQUlLLFlBQVksQ0FBQ0MsU0FBUyxDQUFDTCxRQUFRRSxPQUFPLENBQUNrRCxpQkFBaUIsQ0FBQy9CLFVBQVU7UUFDL0Y7UUFDQSxJQUFJaUMsc0JBQXNCckQsT0FBTyxJQUFJRCxRQUFRRSxPQUFPLENBQUNrRCxpQkFBaUIsQ0FBQ2pELFFBQVEsRUFBRTtZQUMvRWtELFVBQVVwRCxPQUFPLEdBQUdGLElBQUlLLFlBQVksQ0FBQ0MsU0FBUyxDQUFDTCxRQUFRRSxPQUFPLENBQUNrRCxpQkFBaUIsQ0FBQ2pELFFBQVE7UUFDM0Y7UUFDQSxJQUFJbUQsc0JBQXNCQyxTQUFTLElBQUl2RCxRQUFRRSxPQUFPLENBQUNrRCxpQkFBaUIsQ0FBQ0ksVUFBVSxFQUFFO1lBQ25GSCxVQUFVRSxTQUFTLEdBQUd4RCxJQUFJSyxZQUFZLENBQUNDLFNBQVMsQ0FBQ0wsUUFBUUUsT0FBTyxDQUFDa0QsaUJBQWlCLENBQUNJLFVBQVU7UUFDL0Y7UUFFQXRELFFBQVFpRCxnQkFBZ0IsR0FBR0U7SUFDN0I7SUFDQSxJQUFJMUMsTUFBTThDLGlCQUFpQixJQUFJekQsUUFBUUUsT0FBTyxDQUFDd0Qsa0JBQWtCLEVBQy9EeEQsUUFBUXVELGlCQUFpQixHQUFHMUQsSUFBSUssWUFBWSxDQUFDRixPQUFPLENBQUNILEtBQUs7UUFBRUcsU0FBU0YsUUFBUUUsT0FBTyxDQUFDd0Qsa0JBQWtCO1FBQUU1QyxTQUFTZCxRQUFRYyxPQUFPO0lBQUM7SUFDcEksSUFBSUgsTUFBTWdELGdCQUFnQixJQUFJM0QsUUFBUUUsT0FBTyxDQUFDMEQsaUJBQWlCLEVBQzdEMUQsUUFBUXlELGdCQUFnQixHQUFHM0QsUUFBUUUsT0FBTyxDQUFDMEQsaUJBQWlCLENBQUM5RSxHQUFHLENBQUMsQ0FBQytFLE9BQ2hFOUQsSUFBSUssWUFBWSxDQUFDMEQsZUFBZSxDQUFDL0QsS0FBSztZQUFFK0QsaUJBQWlCRDtZQUFNL0MsU0FBU2QsUUFBUWMsT0FBTztRQUFDO0lBRTVGLElBQUlILE1BQU1vRCxLQUFLLElBQUkvRCxRQUFRRSxPQUFPLENBQUM2RCxLQUFLLEVBQUU3RCxRQUFRNkQsS0FBSyxHQUFHL0QsUUFBUUUsT0FBTyxDQUFDNkQsS0FBSztJQUMvRSxJQUFJL0QsUUFBUUUsT0FBTyxDQUFDZixNQUFNLEVBQUVlLFFBQVFmLE1BQU0sR0FBRztJQUM3QyxJQUFJd0IsTUFBTXFELFNBQVMsSUFBSWhFLFFBQVFFLE9BQU8sQ0FBQzhELFNBQVMsRUFBRTlDLFFBQVE7UUFDeERoQixRQUFROEQsU0FBUyxHQUFHaEUsUUFBUUUsT0FBTyxDQUFDOEQsU0FBUyxDQUFDbEYsR0FBRyxDQUFDLENBQUNtRixXQUFjLENBQUE7Z0JBQy9EQyxJQUFJRCxTQUFTQyxFQUFFO2dCQUNmQyxTQUFTRixTQUFTRyxRQUFRO2dCQUMxQkMsT0FBT0osU0FBU0ksS0FBSztnQkFDckJDLGNBQWM7b0JBQ1pDLE9BQU9OLFNBQVNPLGFBQWEsQ0FBQ0QsS0FBSztvQkFDbkNFLFFBQVFSLFNBQVNPLGFBQWEsQ0FBQ0MsTUFBTTtnQkFDdkM7Z0JBQ0FDLE9BQU8zRSxJQUFJSyxZQUFZLENBQUNzRSxLQUFLLENBQUMzRSxLQUFLa0UsU0FBU1MsS0FBSztnQkFDakRDLGFBQWFWLFNBQVNXLFlBQVk7WUFDcEMsQ0FBQTtJQUNGO0lBQ0EsSUFBSWpFLE1BQU1rRSxZQUFZLElBQUk3RSxRQUFRRSxPQUFPLENBQUM0RSxhQUFhLEVBQUU1RCxRQUN2RGhCLFFBQVEyRSxZQUFZLEdBQUc3RSxRQUFRRSxPQUFPLENBQUM0RSxhQUFhLENBQUNoRyxHQUFHLENBQUMsQ0FBQ2lHLE9BQVUsQ0FBQTtZQUNsRS9GLElBQUllLElBQUlLLFlBQVksQ0FBQ0MsU0FBUyxDQUFDMEUsS0FBSy9GLEVBQUU7WUFDdEN1RCxNQUFNd0MsS0FBS3hDLElBQUk7WUFDZnlDLFlBQVlELEtBQUtFLFdBQVc7UUFDOUIsQ0FBQTtJQUNGLElBQUlqRixRQUFRRSxPQUFPLENBQUNOLEdBQUcsRUFBRU0sUUFBUU4sR0FBRyxHQUFHO0lBQ3ZDLElBQUllLE1BQU11RSxNQUFNLElBQUlsRixRQUFRRSxPQUFPLENBQUNnRixNQUFNLEVBQUVoRixRQUFRZ0YsTUFBTSxHQUFHbkYsSUFBSUssWUFBWSxDQUFDK0UsT0FBTyxDQUFDcEYsS0FBSztRQUFFb0YsU0FBU25GLFFBQVFFLE9BQU8sQ0FBQ2dGLE1BQU07UUFBRWpGO0lBQVE7SUFDdEksSUFBSVUsTUFBTTZCLElBQUksRUFBRXRDLFFBQVFzQyxJQUFJLEdBQUd4QyxRQUFRRSxPQUFPLENBQUNzQyxJQUFJO0lBQ25ELElBQUk3QixNQUFNeUUsU0FBUyxJQUFJcEYsUUFBUUUsT0FBTyxDQUFDbUYsVUFBVSxFQUFFbkYsUUFBUWtGLFNBQVMsR0FBR3JGLElBQUlLLFlBQVksQ0FBQ0MsU0FBUyxDQUFDTCxRQUFRRSxPQUFPLENBQUNtRixVQUFVO0lBQzVILElBQUkxRSxNQUFNMkUsSUFBSSxJQUFJdEYsUUFBUUUsT0FBTyxDQUFDb0YsSUFBSSxFQUFFcEYsUUFBUW9GLElBQUksR0FBR3ZGLElBQUlLLFlBQVksQ0FBQ2tGLElBQUksQ0FBQ3ZGLEtBQUtDLFFBQVFFLE9BQU8sQ0FBQ29GLElBQUk7SUFDdEcsSUFBSTNFLE1BQU00RSxJQUFJLElBQUl2RixRQUFRRSxPQUFPLENBQUNxRixJQUFJLEVBQUVyRixRQUFRcUYsSUFBSSxHQUFHeEYsSUFBSUssWUFBWSxDQUFDb0YsV0FBVyxDQUFDekYsS0FBS0MsUUFBUUUsT0FBTyxDQUFDcUYsSUFBSTtJQUU3RyxPQUFPeEYsSUFBSUssWUFBWSxDQUFDcUYsV0FBVyxDQUFDdkYsT0FBTyxDQUFDSCxLQUFLQyxRQUFRRSxPQUFPLEVBQUVBO0FBQ3BFO0FBRU8sU0FBUzNDLHlCQUNkd0MsR0FBZ0IsRUFDaEJDLE9BQXFFO0lBRXJFLE1BQU1XLFFBQVFaLElBQUlLLFlBQVksQ0FBQ1EsaUJBQWlCLENBQUNrRCxlQUFlO0lBQ2hFLE1BQU1BLGtCQUFrQixDQUFDO0lBRXpCLElBQUluRCxNQUFNVCxPQUFPLElBQUlGLFFBQVE4RCxlQUFlLENBQUM1RCxPQUFPLEVBQ2xENEQsZ0JBQWdCNUQsT0FBTyxHQUFHSCxJQUFJSyxZQUFZLENBQUNGLE9BQU8sQ0FBQ0gsS0FBSztRQUFFRyxTQUFTRixRQUFROEQsZUFBZSxDQUFDNUQsT0FBTztRQUFvQlksU0FBU2QsUUFBUWMsT0FBTztJQUFDO0lBRWpKLE9BQU9mLElBQUlLLFlBQVksQ0FBQ3FGLFdBQVcsQ0FBQzNCLGVBQWUsQ0FBQy9ELEtBQUtDLFFBQVE4RCxlQUFlLEVBQUVBO0FBQ3BGO0FBRU8sU0FBU3hHLG9DQUNkeUMsR0FBZ0IsRUFDaEJDLE9BQTBDO0lBRTFDLE1BQU1XLFFBQVFaLElBQUlLLFlBQVksQ0FBQ1EsaUJBQWlCLENBQUNzQiwwQkFBMEI7SUFDM0UsTUFBTXdELFdBQVcsQ0FBQztJQUVsQixJQUFJL0UsTUFBTTNCLEVBQUUsRUFBRTBHLFNBQVMxRyxFQUFFLEdBQUdlLElBQUlLLFlBQVksQ0FBQ0MsU0FBUyxDQUFDTCxRQUFRaEIsRUFBRTtJQUNqRSxJQUFJMkIsTUFBTWdGLDRCQUE0QixFQUFFO1FBQ3RDRCxTQUFTQyw0QkFBNEIsR0FBRyxDQUFDO1FBQ3pDLElBQUkzRixRQUFRNEYsOEJBQThCLENBQUMsSUFBSSxFQUM3Q0YsU0FBU0MsNEJBQTRCLENBQUNFLHdDQUFpQyxDQUFDQyxZQUFZLENBQUMsR0FBRy9GLElBQUlLLFlBQVksQ0FBQ0MsU0FBUyxDQUNoSEwsUUFBUTRGLDhCQUE4QixDQUFDLElBQUk7UUFFL0MsSUFBSTVGLFFBQVE0Riw4QkFBOEIsQ0FBQyxJQUFJLEVBQzdDRixTQUFTQyw0QkFBNEIsQ0FBQ0Usd0NBQWlDLENBQUNFLFdBQVcsQ0FBQyxHQUFHaEcsSUFBSUssWUFBWSxDQUFDQyxTQUFTLENBQy9HTCxRQUFRNEYsOEJBQThCLENBQUMsSUFBSTtJQUVqRDtJQUNBLElBQUlqRixNQUFNcUYseUJBQXlCLElBQUloRyxRQUFRaUcsNEJBQTRCLEVBQ3pFUCxTQUFTTSx5QkFBeUIsR0FBR2pHLElBQUlLLFlBQVksQ0FBQ0MsU0FBUyxDQUFDTCxRQUFRaUcsNEJBQTRCO0lBQ3RHLElBQUl0RixNQUFNNkIsSUFBSSxFQUFFa0QsU0FBU2xELElBQUksR0FBR3hDLFFBQVF3QyxJQUFJO0lBQzVDLElBQUk3QixNQUFNNUIsSUFBSSxJQUFJaUIsUUFBUWpCLElBQUksRUFBRTJHLFNBQVMzRyxJQUFJLEdBQUdnQixJQUFJSyxZQUFZLENBQUNyQixJQUFJLENBQUNnQixLQUFLQyxRQUFRakIsSUFBSTtJQUN2RiwrQkFBK0I7SUFDL0IsSUFBSSxpQkFBaUJpQixTQUFTO1FBQzVCLElBQUlXLE1BQU11RixVQUFVLElBQUlsRyxRQUFRbUcsV0FBVyxFQUFFVCxTQUFTUSxVQUFVLEdBQUduRyxJQUFJSyxZQUFZLENBQUNyQixJQUFJLENBQUNnQixLQUFLQyxRQUFRbUcsV0FBVztRQUNqSCxJQUFJeEYsTUFBTXlGLGVBQWUsSUFBSXBHLFFBQVFxRyxpQkFBaUIsRUFBRVgsU0FBU1UsZUFBZSxHQUFHckcsSUFBSUssWUFBWSxDQUFDQyxTQUFTLENBQUNMLFFBQVFxRyxpQkFBaUI7SUFDekk7SUFDQSw2QkFBNkI7SUFDN0IsSUFBSSwyQkFBMkJyRyxTQUFTO1FBQ3RDLElBQUlXLE1BQU0yRixtQkFBbUIsSUFBSXRHLFFBQVF1RyxxQkFBcUIsRUFDNURiLFNBQVNZLG1CQUFtQixHQUFHdkcsSUFBSUssWUFBWSxDQUFDQyxTQUFTLENBQUNMLFFBQVF1RyxxQkFBcUI7SUFDM0Y7SUFDQSx3QkFBd0I7SUFDeEIsSUFBSSxxQ0FBcUN2RyxTQUFTO1FBQ2hELElBQUlXLE1BQU02Riw2QkFBNkIsSUFBSXhHLFFBQVF5RywrQkFBK0IsRUFDaEZmLFNBQVNjLDZCQUE2QixHQUFHekcsSUFBSUssWUFBWSxDQUFDOEIsMEJBQTBCLENBQUNuQyxLQUFLQyxRQUFReUcsK0JBQStCO0lBQ3JJO0lBRUEsT0FBTzFHLElBQUlLLFlBQVksQ0FBQ3FGLFdBQVcsQ0FBQ3ZELDBCQUEwQixDQUFDbkMsS0FBS0MsU0FBUzBGO0FBQy9FO0FBRU8sU0FBU3JJLHFCQUFxQjBDLEdBQWdCLEVBQUVDLE9BQTJCO0lBQ2hGLE1BQU11RixPQUFPLENBQUM7SUFDZCxNQUFNNUUsUUFBUVosSUFBSUssWUFBWSxDQUFDUSxpQkFBaUIsQ0FBQzRFLFdBQVc7SUFFNUQsSUFBSTdFLE1BQU0rRixZQUFZLElBQUkxRyxRQUFRMEcsWUFBWSxFQUFFbkIsS0FBS21CLFlBQVksR0FBRzFHLFFBQVEwRyxZQUFZLENBQUM1SCxHQUFHLENBQUMsQ0FBQzZILElBQU01RyxJQUFJSyxZQUFZLENBQUNDLFNBQVMsQ0FBQ3NHO0lBQy9ILElBQUloRyxNQUFNaUcsY0FBYyxJQUFJNUcsUUFBUTZHLGVBQWUsRUFBRXRCLEtBQUtxQixjQUFjLEdBQUdoRixLQUFLQyxLQUFLLENBQUM3QixRQUFRNkcsZUFBZTtJQUU3RyxPQUFPOUcsSUFBSUssWUFBWSxDQUFDcUYsV0FBVyxDQUFDRCxXQUFXLENBQUN6RixLQUFLQyxTQUFTdUY7QUFDaEUifQ==
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ transformGuildOnboarding: function() {
13
+ return transformGuildOnboarding;
14
+ },
15
+ transformGuildOnboardingPrompt: function() {
16
+ return transformGuildOnboardingPrompt;
17
+ },
18
+ transformGuildOnboardingPromptOption: function() {
19
+ return transformGuildOnboardingPromptOption;
20
+ }
21
+ });
22
+ function transformGuildOnboarding(bot, payload) {
23
+ const props = bot.transformers.desiredProperties.guildOnboarding;
24
+ const guildOnboarding = {};
25
+ if (props.guildId && payload.guild_id) guildOnboarding.guildId = bot.transformers.snowflake(payload.guild_id);
26
+ if (props.defaultChannelIds && payload.default_channel_ids) guildOnboarding.defaultChannelIds = payload.default_channel_ids.map(bot.transformers.snowflake);
27
+ if (props.enabled) guildOnboarding.enabled = payload.enabled;
28
+ if (props.mode) guildOnboarding.mode = payload.mode;
29
+ if (props.prompts && payload.prompts) guildOnboarding.prompts = payload.prompts.map((prompt)=>bot.transformers.guildOnboardingPrompt(bot, prompt));
30
+ return bot.transformers.customizers.guildOnboarding(bot, payload, guildOnboarding);
31
+ }
32
+ function transformGuildOnboardingPrompt(bot, payload) {
33
+ const props = bot.transformers.desiredProperties.guildOnboardingPrompt;
34
+ const prompt = {};
35
+ if (props.id && payload.id) prompt.id = bot.transformers.snowflake(prompt.id);
36
+ if (props.inOnboarding && payload.in_onboarding) prompt.inOnboarding = payload.in_onboarding;
37
+ if (props.required && payload.required) prompt.required = payload.required;
38
+ if (props.singleSelect && payload.single_select) prompt.singleSelect = payload.single_select;
39
+ if (props.title && payload.title) prompt.title = payload.title;
40
+ if (props.type) prompt.type = payload.type;
41
+ if (props.options && payload.options) prompt.options = payload.options.map((option)=>bot.transformers.guildOnboardingPromptOption(bot, option));
42
+ return bot.transformers.customizers.guildOnboardingPrompt(bot, payload, prompt);
43
+ }
44
+ function transformGuildOnboardingPromptOption(bot, payload) {
45
+ const props = bot.transformers.desiredProperties.guildOnboardingPromptOption;
46
+ const option = {};
47
+ if (props.id && payload.id) option.id = bot.transformers.snowflake(payload.id);
48
+ if (props.channelIds && payload.channel_ids) option.channelIds = payload.channel_ids.map(bot.transformers.snowflake);
49
+ if (props.roleIds && payload.role_ids) option.roleIds = payload.role_ids.map(bot.transformers.snowflake);
50
+ if (props.emoji && payload.emoji) option.emoji = bot.transformers.emoji(bot, payload.emoji);
51
+ if (props.title && payload.title) option.title = payload.title;
52
+ if (props.description && payload.description) option.description = payload.description;
53
+ return bot.transformers.customizers.guildOnboardingPromptOption(bot, payload, option);
54
+ }
55
+
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvb25ib2FyZGluZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERpc2NvcmRHdWlsZE9uYm9hcmRpbmcsIERpc2NvcmRHdWlsZE9uYm9hcmRpbmdQcm9tcHQsIERpc2NvcmRHdWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24gfSBmcm9tICdAZGlzY29yZGVuby90eXBlcydcbmltcG9ydCB0eXBlIHsgR3VpbGRPbmJvYXJkaW5nLCBHdWlsZE9uYm9hcmRpbmdQcm9tcHQsIEd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbiwgSW50ZXJuYWxCb3QgfSBmcm9tICcuLi9pbmRleC5qcydcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUd1aWxkT25ib2FyZGluZyhib3Q6IEludGVybmFsQm90LCBwYXlsb2FkOiBEaXNjb3JkR3VpbGRPbmJvYXJkaW5nKTogdHlwZW9mIGJvdC50cmFuc2Zvcm1lcnMuJGluZmVycmVkVHlwZXMuZ3VpbGRPbmJvYXJkaW5nIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmd1aWxkT25ib2FyZGluZ1xuICBjb25zdCBndWlsZE9uYm9hcmRpbmcgPSB7fSBhcyBHdWlsZE9uYm9hcmRpbmdcblxuICBpZiAocHJvcHMuZ3VpbGRJZCAmJiBwYXlsb2FkLmd1aWxkX2lkKSBndWlsZE9uYm9hcmRpbmcuZ3VpbGRJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuZ3VpbGRfaWQpXG4gIGlmIChwcm9wcy5kZWZhdWx0Q2hhbm5lbElkcyAmJiBwYXlsb2FkLmRlZmF1bHRfY2hhbm5lbF9pZHMpXG4gICAgZ3VpbGRPbmJvYXJkaW5nLmRlZmF1bHRDaGFubmVsSWRzID0gcGF5bG9hZC5kZWZhdWx0X2NoYW5uZWxfaWRzLm1hcChib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZSlcbiAgaWYgKHByb3BzLmVuYWJsZWQpIGd1aWxkT25ib2FyZGluZy5lbmFibGVkID0gcGF5bG9hZC5lbmFibGVkXG4gIGlmIChwcm9wcy5tb2RlKSBndWlsZE9uYm9hcmRpbmcubW9kZSA9IHBheWxvYWQubW9kZVxuICBpZiAocHJvcHMucHJvbXB0cyAmJiBwYXlsb2FkLnByb21wdHMpIGd1aWxkT25ib2FyZGluZy5wcm9tcHRzID0gcGF5bG9hZC5wcm9tcHRzLm1hcCgocHJvbXB0KSA9PiBib3QudHJhbnNmb3JtZXJzLmd1aWxkT25ib2FyZGluZ1Byb21wdChib3QsIHByb21wdCkpXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMuZ3VpbGRPbmJvYXJkaW5nKGJvdCwgcGF5bG9hZCwgZ3VpbGRPbmJvYXJkaW5nKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtR3VpbGRPbmJvYXJkaW5nUHJvbXB0KFxuICBib3Q6IEludGVybmFsQm90LFxuICBwYXlsb2FkOiBEaXNjb3JkR3VpbGRPbmJvYXJkaW5nUHJvbXB0LFxuKTogdHlwZW9mIGJvdC50cmFuc2Zvcm1lcnMuJGluZmVycmVkVHlwZXMuZ3VpbGRPbmJvYXJkaW5nUHJvbXB0IHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmd1aWxkT25ib2FyZGluZ1Byb21wdFxuICBjb25zdCBwcm9tcHQgPSB7fSBhcyBHdWlsZE9uYm9hcmRpbmdQcm9tcHRcblxuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgcHJvbXB0LmlkID0gYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UocHJvbXB0LmlkKVxuICBpZiAocHJvcHMuaW5PbmJvYXJkaW5nICYmIHBheWxvYWQuaW5fb25ib2FyZGluZykgcHJvbXB0LmluT25ib2FyZGluZyA9IHBheWxvYWQuaW5fb25ib2FyZGluZ1xuICBpZiAocHJvcHMucmVxdWlyZWQgJiYgcGF5bG9hZC5yZXF1aXJlZCkgcHJvbXB0LnJlcXVpcmVkID0gcGF5bG9hZC5yZXF1aXJlZFxuICBpZiAocHJvcHMuc2luZ2xlU2VsZWN0ICYmIHBheWxvYWQuc2luZ2xlX3NlbGVjdCkgcHJvbXB0LnNpbmdsZVNlbGVjdCA9IHBheWxvYWQuc2luZ2xlX3NlbGVjdFxuICBpZiAocHJvcHMudGl0bGUgJiYgcGF5bG9hZC50aXRsZSkgcHJvbXB0LnRpdGxlID0gcGF5bG9hZC50aXRsZVxuICBpZiAocHJvcHMudHlwZSkgcHJvbXB0LnR5cGUgPSBwYXlsb2FkLnR5cGVcbiAgaWYgKHByb3BzLm9wdGlvbnMgJiYgcGF5bG9hZC5vcHRpb25zKSBwcm9tcHQub3B0aW9ucyA9IHBheWxvYWQub3B0aW9ucy5tYXAoKG9wdGlvbikgPT4gYm90LnRyYW5zZm9ybWVycy5ndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24oYm90LCBvcHRpb24pKVxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLmd1aWxkT25ib2FyZGluZ1Byb21wdChib3QsIHBheWxvYWQsIHByb21wdClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbihcbiAgYm90OiBJbnRlcm5hbEJvdCxcbiAgcGF5bG9hZDogRGlzY29yZEd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbixcbik6IHR5cGVvZiBib3QudHJhbnNmb3JtZXJzLiRpbmZlcnJlZFR5cGVzLmd1aWxkT25ib2FyZGluZ1Byb21wdE9wdGlvbiB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5ndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb25cbiAgY29uc3Qgb3B0aW9uID0ge30gYXMgR3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uXG5cbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIG9wdGlvbi5pZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuaWQpXG4gIGlmIChwcm9wcy5jaGFubmVsSWRzICYmIHBheWxvYWQuY2hhbm5lbF9pZHMpIG9wdGlvbi5jaGFubmVsSWRzID0gcGF5bG9hZC5jaGFubmVsX2lkcy5tYXAoYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UpXG4gIGlmIChwcm9wcy5yb2xlSWRzICYmIHBheWxvYWQucm9sZV9pZHMpIG9wdGlvbi5yb2xlSWRzID0gcGF5bG9hZC5yb2xlX2lkcy5tYXAoYm90LnRyYW5zZm9ybWVycy5zbm93Zmxha2UpXG4gIGlmIChwcm9wcy5lbW9qaSAmJiBwYXlsb2FkLmVtb2ppKSBvcHRpb24uZW1vamkgPSBib3QudHJhbnNmb3JtZXJzLmVtb2ppKGJvdCwgcGF5bG9hZC5lbW9qaSlcbiAgaWYgKHByb3BzLnRpdGxlICYmIHBheWxvYWQudGl0bGUpIG9wdGlvbi50aXRsZSA9IHBheWxvYWQudGl0bGVcbiAgaWYgKHByb3BzLmRlc2NyaXB0aW9uICYmIHBheWxvYWQuZGVzY3JpcHRpb24pIG9wdGlvbi5kZXNjcmlwdGlvbiA9IHBheWxvYWQuZGVzY3JpcHRpb25cblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5ndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24oYm90LCBwYXlsb2FkLCBvcHRpb24pXG59XG4iXSwibmFtZXMiOlsidHJhbnNmb3JtR3VpbGRPbmJvYXJkaW5nIiwidHJhbnNmb3JtR3VpbGRPbmJvYXJkaW5nUHJvbXB0IiwidHJhbnNmb3JtR3VpbGRPbmJvYXJkaW5nUHJvbXB0T3B0aW9uIiwiYm90IiwicGF5bG9hZCIsInByb3BzIiwidHJhbnNmb3JtZXJzIiwiZGVzaXJlZFByb3BlcnRpZXMiLCJndWlsZE9uYm9hcmRpbmciLCJndWlsZElkIiwiZ3VpbGRfaWQiLCJzbm93Zmxha2UiLCJkZWZhdWx0Q2hhbm5lbElkcyIsImRlZmF1bHRfY2hhbm5lbF9pZHMiLCJtYXAiLCJlbmFibGVkIiwibW9kZSIsInByb21wdHMiLCJwcm9tcHQiLCJndWlsZE9uYm9hcmRpbmdQcm9tcHQiLCJjdXN0b21pemVycyIsImlkIiwiaW5PbmJvYXJkaW5nIiwiaW5fb25ib2FyZGluZyIsInJlcXVpcmVkIiwic2luZ2xlU2VsZWN0Iiwic2luZ2xlX3NlbGVjdCIsInRpdGxlIiwidHlwZSIsIm9wdGlvbnMiLCJvcHRpb24iLCJndWlsZE9uYm9hcmRpbmdQcm9tcHRPcHRpb24iLCJjaGFubmVsSWRzIiwiY2hhbm5lbF9pZHMiLCJyb2xlSWRzIiwicm9sZV9pZHMiLCJlbW9qaSIsImRlc2NyaXB0aW9uIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQUdnQkEsd0JBQXdCO2VBQXhCQTs7SUFjQUMsOEJBQThCO2VBQTlCQTs7SUFrQkFDLG9DQUFvQztlQUFwQ0E7OztBQWhDVCxTQUFTRix5QkFBeUJHLEdBQWdCLEVBQUVDLE9BQStCO0lBQ3hGLE1BQU1DLFFBQVFGLElBQUlHLFlBQVksQ0FBQ0MsaUJBQWlCLENBQUNDLGVBQWU7SUFDaEUsTUFBTUEsa0JBQWtCLENBQUM7SUFFekIsSUFBSUgsTUFBTUksT0FBTyxJQUFJTCxRQUFRTSxRQUFRLEVBQUVGLGdCQUFnQkMsT0FBTyxHQUFHTixJQUFJRyxZQUFZLENBQUNLLFNBQVMsQ0FBQ1AsUUFBUU0sUUFBUTtJQUM1RyxJQUFJTCxNQUFNTyxpQkFBaUIsSUFBSVIsUUFBUVMsbUJBQW1CLEVBQ3hETCxnQkFBZ0JJLGlCQUFpQixHQUFHUixRQUFRUyxtQkFBbUIsQ0FBQ0MsR0FBRyxDQUFDWCxJQUFJRyxZQUFZLENBQUNLLFNBQVM7SUFDaEcsSUFBSU4sTUFBTVUsT0FBTyxFQUFFUCxnQkFBZ0JPLE9BQU8sR0FBR1gsUUFBUVcsT0FBTztJQUM1RCxJQUFJVixNQUFNVyxJQUFJLEVBQUVSLGdCQUFnQlEsSUFBSSxHQUFHWixRQUFRWSxJQUFJO0lBQ25ELElBQUlYLE1BQU1ZLE9BQU8sSUFBSWIsUUFBUWEsT0FBTyxFQUFFVCxnQkFBZ0JTLE9BQU8sR0FBR2IsUUFBUWEsT0FBTyxDQUFDSCxHQUFHLENBQUMsQ0FBQ0ksU0FBV2YsSUFBSUcsWUFBWSxDQUFDYSxxQkFBcUIsQ0FBQ2hCLEtBQUtlO0lBRTVJLE9BQU9mLElBQUlH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
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ transformPoll: function() {
13
+ return transformPoll;
14
+ },
15
+ transformPollMedia: function() {
16
+ return transformPollMedia;
17
+ }
18
+ });
19
+ function transformPoll(bot, payload) {
20
+ const props = bot.transformers.desiredProperties.poll;
21
+ const poll = {};
22
+ if (props.question && payload.question) poll.question = bot.transformers.pollMedia(bot, payload.question);
23
+ if (props.answers && payload.answers) poll.answers = payload.answers.map((x)=>({
24
+ answerId: x.answer_id,
25
+ pollMedia: bot.transformers.pollMedia(bot, x.poll_media)
26
+ }));
27
+ if (props.expiry && payload.expiry) poll.expiry = Date.parse(payload.expiry);
28
+ if (props.allowMultiselect && payload.allow_multiselect) poll.allowMultiselect = payload.allow_multiselect;
29
+ if (props.layoutType) poll.layoutType = payload.layout_type;
30
+ if (props.results && payload.results) {
31
+ poll.results = {};
32
+ const pollResultProps = bot.transformers.desiredProperties.pollResult;
33
+ if (pollResultProps.isFinalized && payload.results.is_finalized) poll.results.isFinalized = payload.results.is_finalized;
34
+ if (pollResultProps.answerCounts && payload.results.answer_counts) poll.results.answerCounts = payload.results.answer_counts.map((x)=>({
35
+ id: x.id,
36
+ count: x.count,
37
+ meVoted: x.me_voted
38
+ }));
39
+ }
40
+ return bot.transformers.customizers.poll(bot, payload, poll);
41
+ }
42
+ function transformPollMedia(bot, payload) {
43
+ const props = bot.transformers.desiredProperties.pollMedia;
44
+ const pollMedia = {};
45
+ if (props.text && payload.text) pollMedia.text = payload.text;
46
+ if (props.emoji && payload.emoji) pollMedia.emoji = bot.transformers.emoji(bot, payload.emoji);
47
+ return bot.transformers.customizers.pollMedia(bot, payload, pollMedia);
48
+ }
49
+
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcG9sbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERpc2NvcmRFbW9qaSwgRGlzY29yZFBvbGwsIERpc2NvcmRQb2xsTWVkaWEgfSBmcm9tICdAZGlzY29yZGVuby90eXBlcydcbmltcG9ydCB0eXBlIHsgSW50ZXJuYWxCb3QsIFBvbGwsIFBvbGxNZWRpYSwgUG9sbFJlc3VsdCB9IGZyb20gJy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtUG9sbChib3Q6IEludGVybmFsQm90LCBwYXlsb2FkOiBEaXNjb3JkUG9sbCk6IHR5cGVvZiBib3QudHJhbnNmb3JtZXJzLiRpbmZlcnJlZFR5cGVzLnBvbGwge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMucG9sbFxuICBjb25zdCBwb2xsID0ge30gYXMgUG9sbFxuXG4gIGlmIChwcm9wcy5xdWVzdGlvbiAmJiBwYXlsb2FkLnF1ZXN0aW9uKSBwb2xsLnF1ZXN0aW9uID0gYm90LnRyYW5zZm9ybWVycy5wb2xsTWVkaWEoYm90LCBwYXlsb2FkLnF1ZXN0aW9uKVxuICBpZiAocHJvcHMuYW5zd2VycyAmJiBwYXlsb2FkLmFuc3dlcnMpXG4gICAgcG9sbC5hbnN3ZXJzID0gcGF5bG9hZC5hbnN3ZXJzLm1hcCgoeCkgPT4gKHsgYW5zd2VySWQ6IHguYW5zd2VyX2lkLCBwb2xsTWVkaWE6IGJvdC50cmFuc2Zvcm1lcnMucG9sbE1lZGlhKGJvdCwgeC5wb2xsX21lZGlhKSB9KSlcbiAgaWYgKHByb3BzLmV4cGlyeSAmJiBwYXlsb2FkLmV4cGlyeSkgcG9sbC5leHBpcnkgPSBEYXRlLnBhcnNlKHBheWxvYWQuZXhwaXJ5KVxuICBpZiAocHJvcHMuYWxsb3dNdWx0aXNlbGVjdCAmJiBwYXlsb2FkLmFsbG93X211bHRpc2VsZWN0KSBwb2xsLmFsbG93TXVsdGlzZWxlY3QgPSBwYXlsb2FkLmFsbG93X211bHRpc2VsZWN0XG4gIGlmIChwcm9wcy5sYXlvdXRUeXBlKSBwb2xsLmxheW91dFR5cGUgPSBwYXlsb2FkLmxheW91dF90eXBlXG4gIGlmIChwcm9wcy5yZXN1bHRzICYmIHBheWxvYWQucmVzdWx0cykge1xuICAgIHBvbGwucmVzdWx0cyA9IHt9IGFzIFBvbGxSZXN1bHRcbiAgICBjb25zdCBwb2xsUmVzdWx0UHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLnBvbGxSZXN1bHRcblxuICAgIGlmIChwb2xsUmVzdWx0UHJvcHMuaXNGaW5hbGl6ZWQgJiYgcGF5bG9hZC5yZXN1bHRzLmlzX2ZpbmFsaXplZCkgcG9sbC5yZXN1bHRzLmlzRmluYWxpemVkID0gcGF5bG9hZC5yZXN1bHRzLmlzX2ZpbmFsaXplZFxuICAgIGlmIChwb2xsUmVzdWx0UHJvcHMuYW5zd2VyQ291bnRzICYmIHBheWxvYWQucmVzdWx0cy5hbnN3ZXJfY291bnRzKVxuICAgICAgcG9sbC5yZXN1bHRzLmFuc3dlckNvdW50cyA9IHBheWxvYWQucmVzdWx0cy5hbnN3ZXJfY291bnRzLm1hcCgoeCkgPT4gKHsgaWQ6IHguaWQsIGNvdW50OiB4LmNvdW50LCBtZVZvdGVkOiB4Lm1lX3ZvdGVkIH0pKVxuICB9XG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMucG9sbChib3QsIHBheWxvYWQsIHBvbGwpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1Qb2xsTWVkaWEoYm90OiBJbnRlcm5hbEJvdCwgcGF5bG9hZDogRGlzY29yZFBvbGxNZWRpYSk6IHR5cGVvZiBib3QudHJhbnNmb3JtZXJzLiRpbmZlcnJlZFR5cGVzLnBvbGxNZWRpYSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5wb2xsTWVkaWFcbiAgY29uc3QgcG9sbE1lZGlhID0ge30gYXMgUG9sbE1lZGlhXG5cbiAgaWYgKHByb3BzLnRleHQgJiYgcGF5bG9hZC50ZXh0KSBwb2xsTWVkaWEudGV4dCA9IHBheWxvYWQudGV4dFxuICBpZiAocHJvcHMuZW1vamkgJiYgcGF5bG9hZC5lbW9qaSkgcG9sbE1lZGlhLmVtb2ppID0gYm90LnRyYW5zZm9ybWVycy5lbW9qaShib3QsIHBheWxvYWQuZW1vamkgYXMgRGlzY29yZEVtb2ppKVxuXG4gIHJldHVybiBib3QudHJhbnNmb3JtZXJzLmN1c3RvbWl6ZXJzLnBvbGxNZWRpYShib3QsIHBheWxvYWQsIHBvbGxNZWRpYSlcbn1cbiJdLCJuYW1lcyI6WyJ0cmFuc2Zvcm1Qb2xsIiwidHJhbnNmb3JtUG9sbE1lZGlhIiwiYm90IiwicGF5bG9hZCIsInByb3BzIiwidHJhbnNmb3JtZXJzIiwiZGVzaXJlZFByb3BlcnRpZXMiLCJwb2xsIiwicXVlc3Rpb24iLCJwb2xsTWVkaWEiLCJhbnN3ZXJzIiwibWFwIiwieCIsImFuc3dlcklkIiwiYW5zd2VyX2lkIiwicG9sbF9tZWRpYSIsImV4cGlyeSIsIkRhdGUiLCJwYXJzZSIsImFsbG93TXVsdGlzZWxlY3QiLCJhbGxvd19tdWx0aXNlbGVjdCIsImxheW91dFR5cGUiLCJsYXlvdXRfdHlwZSIsInJlc3VsdHMiLCJwb2xsUmVzdWx0UHJvcHMiLCJwb2xsUmVzdWx0IiwiaXNGaW5hbGl6ZWQiLCJpc19maW5hbGl6ZWQiLCJhbnN3ZXJDb3VudHMiLCJhbnN3ZXJfY291bnRzIiwiaWQiLCJjb3VudCIsIm1lVm90ZWQiLCJtZV92b3RlZCIsImN1c3RvbWl6ZXJzIiwidGV4dCIsImVtb2ppIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQUdnQkEsYUFBYTtlQUFiQTs7SUFzQkFDLGtCQUFrQjtlQUFsQkE7OztBQXRCVCxTQUFTRCxjQUFjRSxHQUFnQixFQUFFQyxPQUFvQjtJQUNsRSxNQUFNQyxRQUFRRixJQUFJRyxZQUFZLENBQUNDLGlCQUFpQixDQUFDQyxJQUFJO0lBQ3JELE1BQU1BLE9BQU8sQ0FBQztJQUVkLElBQUlILE1BQU1JLFFBQVEsSUFBSUwsUUFBUUssUUFBUSxFQUFFRCxLQUFLQyxRQUFRLEdBQUdOLElBQUlHLFlBQVksQ0FBQ0ksU0FBUyxDQUFDUCxLQUFLQyxRQUFRSyxRQUFRO0lBQ3hHLElBQUlKLE1BQU1NLE9BQU8sSUFBSVAsUUFBUU8sT0FBTyxFQUNsQ0gsS0FBS0csT0FBTyxHQUFHUCxRQUFRTyxPQUFPLENBQUNDLEdBQUcsQ0FBQyxDQUFDQyxJQUFPLENBQUE7WUFBRUMsVUFBVUQsRUFBRUUsU0FBUztZQUFFTCxXQUFXUCxJQUFJRyxZQUFZLENBQUNJLFNBQVMsQ0FBQ1AsS0FBS1UsRUFBRUcsVUFBVTtRQUFFLENBQUE7SUFDL0gsSUFBSVgsTUFBTVksTUFBTSxJQUFJYixRQUFRYSxNQUFNLEVBQUVULEtBQUtTLE1BQU0sR0FBR0MsS0FBS0MsS0FBSyxDQUFDZixRQUFRYSxNQUFNO0lBQzNFLElBQUlaLE1BQU1lLGdCQUFnQixJQUFJaEIsUUFBUWlCLGlCQUFpQixFQUFFYixLQUFLWSxnQkFBZ0IsR0FBR2hCLFFBQVFpQixpQkFBaUI7SUFDMUcsSUFBSWhCLE1BQU1pQixVQUFVLEVBQUVkLEtBQUtjLFVBQVUsR0FBR2xCLFFBQVFtQixXQUFXO0lBQzNELElBQUlsQixNQUFNbUIsT0FBTyxJQUFJcEIsUUFBUW9CLE9BQU8sRUFBRTtRQUNwQ2hCLEtBQUtnQixPQUFPLEdBQUcsQ0FBQztRQUNoQixNQUFNQyxrQkFBa0J0QixJQUFJRyxZQUFZLENBQUNDLGlCQUFpQixDQUFDbUIsVUFBVTtRQUVyRSxJQUFJRCxnQkFBZ0JFLFdBQVcsSUFBSXZCLFFBQVFvQixPQUFPLENBQUNJLFlBQVksRUFBRXBCLEtBQUtnQixPQUFPLENBQUNHLFdBQVcsR0FBR3ZCLFFBQVFvQixPQUFPLENBQUNJLFlBQVk7UUFDeEgsSUFBSUgsZ0JBQWdCSSxZQUFZLElBQUl6QixRQUFRb0IsT0FBTyxDQUFDTSxhQUFhLEVBQy9EdEIsS0FBS2dCLE9BQU8sQ0FBQ0ssWUFBWSxHQUFHekIsUUFBUW9CLE9BQU8sQ0FBQ00sYUFBYSxDQUFDbEIsR0FBRyxDQUFDLENBQUNDLElBQU8sQ0FBQTtnQkFBRWtCLElBQUlsQixFQUFFa0IsRUFBRTtnQkFBRUMsT0FBT25CLEVBQUVtQixLQUFLO2dCQUFFQyxTQUFTcEIsRUFBRXFCLFFBQVE7WUFBQyxDQUFBO0lBQzFIO0lBRUEsT0FBTy9CLElBQUlHLFlBQVksQ0FBQzZCLFdBQVcsQ0FBQzNCLElBQUksQ0FBQ0wsS0FBS0MsU0FBU0k7QUFDekQ7QUFFTyxTQUFTTixtQkFBbUJDLEdBQWdCLEVBQUVDLE9BQXlCO0lBQzVFLE1BQU1DLFFBQVFGLElBQUlHLFlBQVksQ0FBQ0MsaUJBQWlCLENBQUNHLFNBQVM7SUFDMUQsTUFBTUEsWUFBWSxDQUFDO0lBRW5CLElBQUlMLE1BQU0rQixJQUFJLElBQUloQyxRQUFRZ0MsSUFBSSxFQUFFMUIsVUFBVTBCLElBQUksR0FBR2hDLFFBQVFnQyxJQUFJO0lBQzdELElBQUkvQixNQUFNZ0MsS0FBSyxJQUFJakMsUUFBUWlDLEtBQUssRUFBRTNCLFVBQVUyQixLQUFLLEdBQUdsQyxJQUFJRyxZQUFZLENBQUMrQixLQUFLLENBQUNsQyxLQUFLQyxRQUFRaUMsS0FBSztJQUU3RixPQUFPbEMsSUFBSUcsWUFBWSxDQUFDNkIsV0FBVyxDQUFDekIsU0FBUyxDQUFDUCxLQUFLQyxTQUFTTTtBQUM5RCJ9
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "transformPresence", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return transformPresence;
9
+ }
10
+ });
11
+ const _types = require("@discordeno/types");
12
+ function transformPresence(bot, payload) {
13
+ const presence = {
14
+ user: bot.transformers.user(bot, payload.user),
15
+ guildId: bot.transformers.snowflake(payload.guild_id),
16
+ status: _types.PresenceStatus[payload.status],
17
+ activities: payload.activities.map((activity)=>bot.transformers.activity(bot, activity)),
18
+ desktop: payload.client_status.desktop,
19
+ mobile: payload.client_status.mobile,
20
+ web: payload.client_status.web
21
+ };
22
+ return bot.transformers.customizers.presence(bot, payload, presence);
23
+ }
24
+
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcHJlc2VuY2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBEaXNjb3JkUHJlc2VuY2VVcGRhdGUsIFByZXNlbmNlU3RhdHVzIH0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEludGVybmFsQm90LCBQcmVzZW5jZVVwZGF0ZSB9IGZyb20gJy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtUHJlc2VuY2UoYm90OiBJbnRlcm5hbEJvdCwgcGF5bG9hZDogRGlzY29yZFByZXNlbmNlVXBkYXRlKTogUHJlc2VuY2VVcGRhdGUge1xuICBjb25zdCBwcmVzZW5jZSA9IHtcbiAgICB1c2VyOiBib3QudHJhbnNmb3JtZXJzLnVzZXIoYm90LCBwYXlsb2FkLnVzZXIpLFxuICAgIGd1aWxkSWQ6IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuZ3VpbGRfaWQpLFxuICAgIHN0YXR1czogUHJlc2VuY2VTdGF0dXNbcGF5bG9hZC5zdGF0dXNdLFxuICAgIGFjdGl2aXRpZXM6IHBheWxvYWQuYWN0aXZpdGllcy5tYXAoKGFjdGl2aXR5KSA9PiBib3QudHJhbnNmb3JtZXJzLmFjdGl2aXR5KGJvdCwgYWN0aXZpdHkpKSxcbiAgICBkZXNrdG9wOiBwYXlsb2FkLmNsaWVudF9zdGF0dXMuZGVza3RvcCxcbiAgICBtb2JpbGU6IHBheWxvYWQuY2xpZW50X3N0YXR1cy5tb2JpbGUsXG4gICAgd2ViOiBwYXlsb2FkLmNsaWVudF9zdGF0dXMud2ViLFxuICB9IGFzIFByZXNlbmNlVXBkYXRlXG5cbiAgcmV0dXJuIGJvdC50cmFuc2Zvcm1lcnMuY3VzdG9taXplcnMucHJlc2VuY2UoYm90LCBwYXlsb2FkLCBwcmVzZW5jZSlcbn1cbiJdLCJuYW1lcyI6WyJ0cmFuc2Zvcm1QcmVzZW5jZSIsImJvdCIsInBheWxvYWQiLCJwcmVzZW5jZSIsInVzZXIiLCJ0cmFuc2Zvcm1lcnMiLCJndWlsZElkIiwic25vd2ZsYWtlIiwiZ3VpbGRfaWQiLCJzdGF0dXMiLCJQcmVzZW5jZVN0YXR1cyIsImFjdGl2aXRpZXMiLCJtYXAiLCJhY3Rpdml0eSIsImRlc2t0b3AiLCJjbGllbnRfc3RhdHVzIiwibW9iaWxlIiwid2ViIiwiY3VzdG9taXplcnMiXSwibWFwcGluZ3MiOiI7Ozs7K0JBR2dCQTs7O2VBQUFBOzs7dUJBSDJDO0FBR3BELFNBQVNBLGtCQUFrQkMsR0FBZ0IsRUFBRUMsT0FBOEI7SUFDaEYsTUFBTUMsV0FBVztRQUNmQyxNQUFNSCxJQUFJSSxZQUFZLENBQUNELElBQUksQ0FBQ0gsS0FBS0MsUUFBUUUsSUFBSTtRQUM3Q0UsU0FBU0wsSUFBSUksWUFBWSxDQUFDRSxTQUFTLENBQUNMLFFBQVFNLFFBQVE7UUFDcERDLFFBQVFDLHFCQUFjLENBQUNSLFFBQVFPLE1BQU0sQ0FBQztRQUN0Q0UsWUFBWVQsUUFBUVMsVUFBVSxDQUFDQyxHQUFHLENBQUMsQ0FBQ0MsV0FBYVosSUFBSUksWUFBWSxDQUFDUSxRQUFRLENBQUNaLEtBQUtZO1FBQ2hGQyxTQUFTWixRQUFRYSxhQUFhLENBQUNELE9BQU87UUFDdENFLFFBQVFkLFFBQVFhLGFBQWEsQ0FBQ0MsTUFBTTtRQUNwQ0MsS0FBS2YsUUFBUWEsYUFBYSxDQUFDRSxHQUFHO0lBQ2hDO0lBRUEsT0FBT2hCLElBQUlJLFlBQVksQ0FBQ2EsV0FBVyxDQUFDZixRQUFRLENBQUNGLEtBQUtDLFNBQVNDO0FBQzdEIn0=
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "transformActivityToDiscordActivity", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return transformActivityToDiscordActivity;
9
+ }
10
+ });
11
+ function transformActivityToDiscordActivity(_bot, payload) {
12
+ return {
13
+ name: payload.name,
14
+ type: payload.type,
15
+ url: payload.url ?? undefined,
16
+ created_at: payload.createdAt,
17
+ timestamps: {
18
+ start: payload.startedAt,
19
+ end: payload.endedAt
20
+ },
21
+ application_id: payload.applicationId?.toString(),
22
+ details: payload.details ?? undefined,
23
+ state: payload.state ?? undefined,
24
+ emoji: payload.emoji ? {
25
+ name: payload.emoji.name,
26
+ animated: payload.emoji.animated,
27
+ id: payload.emoji.id?.toString()
28
+ } : undefined,
29
+ party: {
30
+ id: payload.partyId,
31
+ size: payload.partyCurrentSize && payload.partyMaxSize ? [
32
+ payload.partyCurrentSize,
33
+ payload.partyMaxSize
34
+ ] : undefined
35
+ },
36
+ assets: {
37
+ large_image: payload.largeImage,
38
+ large_text: payload.largeText,
39
+ small_image: payload.largeImage,
40
+ small_text: payload.largeText
41
+ },
42
+ secrets: {
43
+ join: payload.join,
44
+ spectate: payload.spectate,
45
+ match: payload.match
46
+ },
47
+ instance: payload.instance,
48
+ flags: payload.flags,
49
+ buttons: payload.buttons
50
+ };
51
+ }
52
+
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcmV2ZXJzZS9hY3Rpdml0eS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEFjdGl2aXR5LCBCb3QsIERpc2NvcmRBY3Rpdml0eSB9IGZyb20gJy4uLy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtQWN0aXZpdHlUb0Rpc2NvcmRBY3Rpdml0eShfYm90OiBCb3QsIHBheWxvYWQ6IEFjdGl2aXR5KTogRGlzY29yZEFjdGl2aXR5IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBwYXlsb2FkLm5hbWUsXG4gICAgdHlwZTogcGF5bG9hZC50eXBlLFxuICAgIHVybDogcGF5bG9hZC51cmwgPz8gdW5kZWZpbmVkLFxuICAgIGNyZWF0ZWRfYXQ6IHBheWxvYWQuY3JlYXRlZEF0LFxuICAgIHRpbWVzdGFtcHM6IHtcbiAgICAgIHN0YXJ0OiBwYXlsb2FkLnN0YXJ0ZWRBdCxcbiAgICAgIGVuZDogcGF5bG9hZC5lbmRlZEF0LFxuICAgIH0sXG4gICAgYXBwbGljYXRpb25faWQ6IHBheWxvYWQuYXBwbGljYXRpb25JZD8udG9TdHJpbmcoKSxcbiAgICBkZXRhaWxzOiBwYXlsb2FkLmRldGFpbHMgPz8gdW5kZWZpbmVkLFxuICAgIHN0YXRlOiBwYXlsb2FkLnN0YXRlID8/IHVuZGVmaW5lZCxcbiAgICBlbW9qaTogcGF5bG9hZC5lbW9qaVxuICAgICAgPyB7XG4gICAgICAgICAgbmFtZTogcGF5bG9hZC5lbW9qaS5uYW1lLFxuICAgICAgICAgIGFuaW1hdGVkOiBwYXlsb2FkLmVtb2ppLmFuaW1hdGVkLFxuICAgICAgICAgIGlkOiBwYXlsb2FkLmVtb2ppLmlkPy50b1N0cmluZygpLFxuICAgICAgICB9XG4gICAgICA6IHVuZGVmaW5lZCxcbiAgICBwYXJ0eToge1xuICAgICAgaWQ6IHBheWxvYWQucGFydHlJZCxcbiAgICAgIHNpemU6IHBheWxvYWQucGFydHlDdXJyZW50U2l6ZSAmJiBwYXlsb2FkLnBhcnR5TWF4U2l6ZSA/IFtwYXlsb2FkLnBhcnR5Q3VycmVudFNpemUsIHBheWxvYWQucGFydHlNYXhTaXplXSA6IHVuZGVmaW5lZCxcbiAgICB9LFxuICAgIGFzc2V0czoge1xuICAgICAgbGFyZ2VfaW1hZ2U6IHBheWxvYWQubGFyZ2VJbWFnZSxcbiAgICAgIGxhcmdlX3RleHQ6IHBheWxvYWQubGFyZ2VUZXh0LFxuICAgICAgc21hbGxfaW1hZ2U6IHBheWxvYWQubGFyZ2VJbWFnZSxcbiAgICAgIHNtYWxsX3RleHQ6IHBheWxvYWQubGFyZ2VUZXh0LFxuICAgIH0sXG4gICAgc2VjcmV0czoge1xuICAgICAgam9pbjogcGF5bG9hZC5qb2luLFxuICAgICAgc3BlY3RhdGU6IHBheWxvYWQuc3BlY3RhdGUsXG4gICAgICBtYXRjaDogcGF5bG9hZC5tYXRjaCxcbiAgICB9LFxuICAgIGluc3RhbmNlOiBwYXlsb2FkLmluc3RhbmNlLFxuICAgIGZsYWdzOiBwYXlsb2FkLmZsYWdzLFxuICAgIGJ1dHRvbnM6IHBheWxvYWQuYnV0dG9ucyxcbiAgfVxufVxuIl0sIm5hbWVzIjpbInRyYW5zZm9ybUFjdGl2aXR5VG9EaXNjb3JkQWN0aXZpdHkiLCJfYm90IiwicGF5bG9hZCIsIm5hbWUiLCJ0eXBlIiwidXJsIiwidW5kZWZpbmVkIiwiY3JlYXRlZF9hdCIsImNyZWF0ZWRBdCIsInRpbWVzdGFtcHMiLCJzdGFydCIsInN0YXJ0ZWRBdCIsImVuZCIsImVuZGVkQXQiLCJhcHBsaWNhdGlvbl9pZCIsImFwcGxpY2F0aW9uSWQiLCJ0b1N0cmluZyIsImRldGFpbHMiLCJzdGF0ZSIsImVtb2ppIiwiYW5pbWF0ZWQiLCJpZCIsInBhcnR5IiwicGFydHlJZCIsInNpemUiLCJwYXJ0eUN1cnJlbnRTaXplIiwicGFydHlNYXhTaXplIiwiYXNzZXRzIiwibGFyZ2VfaW1hZ2UiLCJsYXJnZUltYWdlIiwibGFyZ2VfdGV4dCIsImxhcmdlVGV4dCIsInNtYWxsX2ltYWdlIiwic21hbGxfdGV4dCIsInNlY3JldHMiLCJqb2luIiwic3BlY3RhdGUiLCJtYXRjaCIsImluc3RhbmNlIiwiZmxhZ3MiLCJidXR0b25zIl0sIm1hcHBpbmdzIjoiOzs7OytCQUVnQkE7OztlQUFBQTs7O0FBQVQsU0FBU0EsbUNBQW1DQyxJQUFTLEVBQUVDLE9BQWlCO0lBQzdFLE9BQU87UUFDTEMsTUFBTUQsUUFBUUMsSUFBSTtRQUNsQkMsTUFBTUYsUUFBUUUsSUFBSTtRQUNsQkMsS0FBS0gsUUFBUUcsR0FBRyxJQUFJQztRQUNwQkMsWUFBWUwsUUFBUU0sU0FBUztRQUM3QkMsWUFBWTtZQUNWQyxPQUFPUixRQUFRUyxTQUFTO1lBQ3hCQyxLQUFLVixRQUFRVyxPQUFPO1FBQ3RCO1FBQ0FDLGdCQUFnQlosUUFBUWEsYUFBYSxFQUFFQztRQUN2Q0MsU0FBU2YsUUFBUWUsT0FBTyxJQUFJWDtRQUM1QlksT0FBT2hCLFFBQVFnQixLQUFLLElBQUlaO1FBQ3hCYSxPQUFPakIsUUFBUWlCLEtBQUssR0FDaEI7WUFDRWhCLE1BQU1ELFFBQVFpQixLQUFLLENBQUNoQixJQUFJO1lBQ3hCaUIsVUFBVWxCLFFBQVFpQixLQUFLLENBQUNDLFFBQVE7WUFDaENDLElBQUluQixRQUFRaUIsS0FBSyxDQUFDRSxFQUFFLEVBQUVMO1FBQ3hCLElBQ0FWO1FBQ0pnQixPQUFPO1lBQ0xELElBQUluQixRQUFRcUIsT0FBTztZQUNuQkMsTUFBTXRCLFFBQVF1QixnQkFBZ0IsSUFBSXZCLFFBQVF3QixZQUFZLEdBQUc7Z0JBQUN4QixRQUFRdUIsZ0JBQWdCO2dCQUFFdkIsUUFBUXdCLFlBQVk7YUFBQyxHQUFHcEI7UUFDOUc7UUFDQXFCLFFBQVE7WUFDTkMsYUFBYTFCLFFBQVEyQixVQUFVO1lBQy9CQyxZQUFZNUIsUUFBUTZCLFNBQVM7WUFDN0JDLGFBQWE5QixRQUFRMkIsVUFBVTtZQUMvQkksWUFBWS9CLFFBQVE2QixTQUFTO1FBQy9CO1FBQ0FHLFNBQVM7WUFDUEMsTUFBTWpDLFFBQVFpQyxJQUFJO1lBQ2xCQyxVQUFVbEMsUUFBUWtDLFFBQVE7WUFDMUJDLE9BQU9uQyxRQUFRbUMsS0FBSztRQUN0QjtRQUNBQyxVQUFVcEMsUUFBUW9DLFFBQVE7UUFDMUJDLE9BQU9yQyxRQUFRcUMsS0FBSztRQUNwQkMsU0FBU3RDLFFBQVFzQyxPQUFPO0lBQzFCO0FBQ0YifQ==
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "transformAllowedMentionsToDiscordAllowedMentions", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return transformAllowedMentionsToDiscordAllowedMentions;
9
+ }
10
+ });
11
+ function transformAllowedMentionsToDiscordAllowedMentions(_bot, mentions) {
12
+ return {
13
+ parse: mentions.parse,
14
+ replied_user: mentions.repliedUser,
15
+ users: mentions.users?.map((id)=>id.toString()),
16
+ roles: mentions.roles?.map((id)=>id.toString())
17
+ };
18
+ }
19
+
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvcmV2ZXJzZS9hbGxvd2VkTWVudGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBBbGxvd2VkTWVudGlvbnMsIEJvdCwgRGlzY29yZEFsbG93ZWRNZW50aW9ucyB9IGZyb20gJy4uLy4uL2luZGV4LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtQWxsb3dlZE1lbnRpb25zVG9EaXNjb3JkQWxsb3dlZE1lbnRpb25zKF9ib3Q6IEJvdCwgbWVudGlvbnM6IEFsbG93ZWRNZW50aW9ucyk6IERpc2NvcmRBbGxvd2VkTWVudGlvbnMge1xuICByZXR1cm4ge1xuICAgIHBhcnNlOiBtZW50aW9ucy5wYXJzZSxcbiAgICByZXBsaWVkX3VzZXI6IG1lbnRpb25zLnJlcGxpZWRVc2VyLFxuICAgIHVzZXJzOiBtZW50aW9ucy51c2Vycz8ubWFwKChpZCkgPT4gaWQudG9TdHJpbmcoKSksXG4gICAgcm9sZXM6IG1lbnRpb25zLnJvbGVzPy5tYXAoKGlkKSA9PiBpZC50b1N0cmluZygpKSxcbiAgfVxufVxuIl0sIm5hbWVzIjpbInRyYW5zZm9ybUFsbG93ZWRNZW50aW9uc1RvRGlzY29yZEFsbG93ZWRNZW50aW9ucyIsIl9ib3QiLCJtZW50aW9ucyIsInBhcnNlIiwicmVwbGllZF91c2VyIiwicmVwbGllZFVzZXIiLCJ1c2VycyIsIm1hcCIsImlkIiwidG9TdHJpbmciLCJyb2xlcyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFFZ0JBOzs7ZUFBQUE7OztBQUFULFNBQVNBLGlEQUFpREMsSUFBUyxFQUFFQyxRQUF5QjtJQUNuRyxPQUFPO1FBQ0xDLE9BQU9ELFNBQVNDLEtBQUs7UUFDckJDLGNBQWNGLFNBQVNHLFdBQVc7UUFDbENDLE9BQU9KLFNBQVNJLEtBQUssRUFBRUMsSUFBSSxDQUFDQyxLQUFPQSxHQUFHQyxRQUFRO1FBQzlDQyxPQUFPUixTQUFTUSxLQUFLLEVBQUVILElBQUksQ0FBQ0MsS0FBT0EsR0FBR0MsUUFBUTtJQUNoRDtBQUNGIn0=