@discordeno/bot 21.0.1-next.fca0b40 → 22.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1200) hide show
  1. package/dist/bot.d.ts +82 -0
  2. package/dist/bot.d.ts.map +1 -0
  3. package/dist/bot.js +71 -0
  4. package/dist/commandOptionsParser.d.ts +27 -0
  5. package/dist/commandOptionsParser.d.ts.map +1 -0
  6. package/dist/commandOptionsParser.js +43 -0
  7. package/dist/constants.d.ts.map +1 -0
  8. package/dist/constants.js +6 -0
  9. package/dist/desiredProperties.d.ts +264 -0
  10. package/dist/desiredProperties.d.ts.map +1 -0
  11. package/dist/desiredProperties.js +919 -0
  12. package/dist/events.d.ts +248 -0
  13. package/dist/events.d.ts.map +1 -0
  14. package/dist/events.js +3 -0
  15. package/dist/handlers/channels/CHANNEL_CREATE.d.ts +4 -0
  16. package/dist/handlers/channels/CHANNEL_CREATE.d.ts.map +1 -0
  17. package/dist/handlers/channels/CHANNEL_CREATE.js +10 -0
  18. package/dist/handlers/channels/CHANNEL_DELETE.d.ts.map +1 -0
  19. package/dist/handlers/channels/CHANNEL_DELETE.js +9 -0
  20. package/dist/handlers/channels/CHANNEL_PINS_UPDATE.d.ts.map +1 -0
  21. package/dist/handlers/channels/CHANNEL_PINS_UPDATE.js +11 -0
  22. package/dist/handlers/channels/CHANNEL_UPDATE.d.ts.map +1 -0
  23. package/dist/handlers/channels/CHANNEL_UPDATE.js +8 -0
  24. package/dist/handlers/channels/STAGE_INSTANCE_CREATE.d.ts.map +1 -0
  25. package/dist/handlers/channels/STAGE_INSTANCE_CREATE.js +12 -0
  26. package/dist/handlers/channels/STAGE_INSTANCE_DELETE.d.ts.map +1 -0
  27. package/dist/handlers/channels/STAGE_INSTANCE_DELETE.js +12 -0
  28. package/dist/handlers/channels/STAGE_INSTANCE_UPDATE.d.ts.map +1 -0
  29. package/dist/handlers/channels/STAGE_INSTANCE_UPDATE.js +12 -0
  30. package/dist/handlers/channels/THREAD_CREATE.d.ts +4 -0
  31. package/dist/handlers/channels/THREAD_CREATE.d.ts.map +1 -0
  32. package/dist/handlers/channels/THREAD_CREATE.js +7 -0
  33. package/dist/handlers/channels/THREAD_DELETE.d.ts +4 -0
  34. package/dist/handlers/channels/THREAD_DELETE.d.ts.map +1 -0
  35. package/dist/handlers/channels/THREAD_DELETE.js +7 -0
  36. package/dist/handlers/channels/THREAD_LIST_SYNC.d.ts +4 -0
  37. package/dist/handlers/channels/THREAD_LIST_SYNC.d.ts.map +1 -0
  38. package/dist/handlers/channels/THREAD_LIST_SYNC.js +20 -0
  39. package/dist/handlers/channels/THREAD_MEMBERS_UPDATE.d.ts +4 -0
  40. package/dist/handlers/channels/THREAD_MEMBERS_UPDATE.d.ts.map +1 -0
  41. package/dist/handlers/channels/THREAD_MEMBERS_UPDATE.js +14 -0
  42. package/dist/handlers/channels/THREAD_MEMBER_UPDATE.d.ts +4 -0
  43. package/dist/handlers/channels/THREAD_MEMBER_UPDATE.d.ts.map +1 -0
  44. package/dist/handlers/channels/THREAD_MEMBER_UPDATE.js +12 -0
  45. package/dist/handlers/channels/THREAD_UPDATE.d.ts +4 -0
  46. package/dist/handlers/channels/THREAD_UPDATE.d.ts.map +1 -0
  47. package/dist/handlers/channels/THREAD_UPDATE.js +7 -0
  48. package/dist/handlers/channels/index.d.ts.map +1 -0
  49. package/dist/handlers/channels/index.js +15 -0
  50. package/dist/handlers/emojis/GUILD_EMOJIS_UPDATE.d.ts.map +1 -0
  51. package/dist/handlers/emojis/GUILD_EMOJIS_UPDATE.js +14 -0
  52. package/dist/handlers/emojis/index.d.ts.map +1 -0
  53. package/dist/handlers/emojis/index.js +3 -0
  54. package/dist/handlers/entitlements/ENTITLEMENT_CREATE.d.ts.map +1 -0
  55. package/dist/handlers/entitlements/ENTITLEMENT_CREATE.js +7 -0
  56. package/dist/handlers/entitlements/ENTITLEMENT_DELETE.d.ts.map +1 -0
  57. package/dist/handlers/entitlements/ENTITLEMENT_DELETE.js +7 -0
  58. package/dist/handlers/entitlements/ENTITLEMENT_UPDATE.d.ts.map +1 -0
  59. package/dist/handlers/entitlements/ENTITLEMENT_UPDATE.js +7 -0
  60. package/dist/handlers/entitlements/index.d.ts.map +1 -0
  61. package/dist/handlers/entitlements/index.js +5 -0
  62. package/dist/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.d.ts.map +1 -0
  63. package/dist/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.js +8 -0
  64. package/dist/handlers/guilds/GUILD_BAN_ADD.d.ts.map +1 -0
  65. package/dist/handlers/guilds/GUILD_BAN_ADD.js +7 -0
  66. package/dist/handlers/guilds/GUILD_BAN_REMOVE.d.ts.map +1 -0
  67. package/dist/handlers/guilds/GUILD_BAN_REMOVE.js +7 -0
  68. package/dist/handlers/guilds/GUILD_CREATE.d.ts.map +1 -0
  69. package/dist/handlers/guilds/GUILD_CREATE.js +9 -0
  70. package/dist/handlers/guilds/GUILD_DELETE.d.ts.map +1 -0
  71. package/dist/handlers/guilds/GUILD_DELETE.js +10 -0
  72. package/dist/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.d.ts.map +1 -0
  73. package/dist/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.js +9 -0
  74. package/dist/handlers/guilds/GUILD_STICKERS_UPDATE.d.ts +4 -0
  75. package/dist/handlers/guilds/GUILD_STICKERS_UPDATE.d.ts.map +1 -0
  76. package/dist/handlers/guilds/GUILD_STICKERS_UPDATE.js +13 -0
  77. package/dist/handlers/guilds/GUILD_UPDATE.d.ts.map +1 -0
  78. package/dist/handlers/guilds/GUILD_UPDATE.js +9 -0
  79. package/dist/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.d.ts.map +1 -0
  80. package/dist/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.js +7 -0
  81. package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.d.ts.map +1 -0
  82. package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.js +7 -0
  83. package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.d.ts.map +1 -0
  84. package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.js +7 -0
  85. package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.d.ts.map +1 -0
  86. package/dist/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.js +7 -0
  87. package/dist/handlers/guilds/automod/index.d.ts.map +1 -0
  88. package/dist/handlers/guilds/automod/index.js +6 -0
  89. package/dist/handlers/guilds/index.d.ts.map +1 -0
  90. package/dist/handlers/guilds/index.js +12 -0
  91. package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.d.ts.map +1 -0
  92. package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.js +7 -0
  93. package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.d.ts.map +1 -0
  94. package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.js +7 -0
  95. package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.d.ts.map +1 -0
  96. package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.js +7 -0
  97. package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.d.ts.map +1 -0
  98. package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.js +11 -0
  99. package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.d.ts.map +1 -0
  100. package/dist/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.js +11 -0
  101. package/dist/handlers/guilds/scheduledEvents/index.d.ts.map +1 -0
  102. package/dist/handlers/guilds/scheduledEvents/index.js +7 -0
  103. package/dist/handlers/index.d.ts.map +1 -0
  104. package/dist/handlers/index.js +18 -0
  105. package/dist/handlers/integrations/INTEGRATION_CREATE.d.ts +4 -0
  106. package/dist/handlers/integrations/INTEGRATION_CREATE.d.ts.map +1 -0
  107. package/dist/handlers/integrations/INTEGRATION_CREATE.js +6 -0
  108. package/dist/handlers/integrations/INTEGRATION_DELETE.d.ts +4 -0
  109. package/dist/handlers/integrations/INTEGRATION_DELETE.d.ts.map +1 -0
  110. package/dist/handlers/integrations/INTEGRATION_DELETE.js +11 -0
  111. package/dist/handlers/integrations/INTEGRATION_UPDATE.d.ts +4 -0
  112. package/dist/handlers/integrations/INTEGRATION_UPDATE.d.ts.map +1 -0
  113. package/dist/handlers/integrations/INTEGRATION_UPDATE.js +6 -0
  114. package/dist/handlers/integrations/index.d.ts.map +1 -0
  115. package/dist/handlers/integrations/index.js +5 -0
  116. package/dist/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts +4 -0
  117. package/dist/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts.map +1 -0
  118. package/dist/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.js +7 -0
  119. package/dist/handlers/interactions/INTERACTION_CREATE.d.ts +4 -0
  120. package/dist/handlers/interactions/INTERACTION_CREATE.d.ts.map +1 -0
  121. package/dist/handlers/interactions/INTERACTION_CREATE.js +9 -0
  122. package/dist/handlers/interactions/index.d.ts.map +1 -0
  123. package/dist/handlers/interactions/index.js +4 -0
  124. package/dist/handlers/invites/INVITE_CREATE.d.ts +4 -0
  125. package/dist/handlers/invites/INVITE_CREATE.d.ts.map +1 -0
  126. package/dist/handlers/invites/INVITE_CREATE.js +25 -0
  127. package/dist/handlers/invites/INVITE_DELETE.d.ts +4 -0
  128. package/dist/handlers/invites/INVITE_DELETE.d.ts.map +1 -0
  129. package/dist/handlers/invites/INVITE_DELETE.js +11 -0
  130. package/dist/handlers/invites/index.d.ts.map +1 -0
  131. package/dist/handlers/invites/index.js +4 -0
  132. package/dist/handlers/members/GUILD_MEMBERS_CHUNK.d.ts +4 -0
  133. package/dist/handlers/members/GUILD_MEMBERS_CHUNK.d.ts.map +1 -0
  134. package/dist/handlers/members/GUILD_MEMBERS_CHUNK.js +20 -0
  135. package/dist/handlers/members/GUILD_MEMBER_ADD.d.ts +4 -0
  136. package/dist/handlers/members/GUILD_MEMBER_ADD.d.ts.map +1 -0
  137. package/dist/handlers/members/GUILD_MEMBER_ADD.js +13 -0
  138. package/dist/handlers/members/GUILD_MEMBER_REMOVE.d.ts +4 -0
  139. package/dist/handlers/members/GUILD_MEMBER_REMOVE.d.ts.map +1 -0
  140. package/dist/handlers/members/GUILD_MEMBER_REMOVE.js +9 -0
  141. package/dist/handlers/members/GUILD_MEMBER_UPDATE.d.ts +4 -0
  142. package/dist/handlers/members/GUILD_MEMBER_UPDATE.d.ts.map +1 -0
  143. package/dist/handlers/members/GUILD_MEMBER_UPDATE.js +12 -0
  144. package/dist/handlers/members/index.d.ts.map +1 -0
  145. package/dist/handlers/members/index.js +6 -0
  146. package/dist/handlers/messages/MESSAGE_CREATE.d.ts +4 -0
  147. package/dist/handlers/messages/MESSAGE_CREATE.d.ts.map +1 -0
  148. package/dist/handlers/messages/MESSAGE_CREATE.js +9 -0
  149. package/dist/handlers/messages/MESSAGE_DELETE.d.ts +4 -0
  150. package/dist/handlers/messages/MESSAGE_DELETE.d.ts.map +1 -0
  151. package/dist/handlers/messages/MESSAGE_DELETE.js +11 -0
  152. package/dist/handlers/messages/MESSAGE_DELETE_BULK.d.ts +4 -0
  153. package/dist/handlers/messages/MESSAGE_DELETE_BULK.d.ts.map +1 -0
  154. package/dist/handlers/messages/MESSAGE_DELETE_BULK.js +13 -0
  155. package/dist/handlers/messages/MESSAGE_REACTION_ADD.d.ts +4 -0
  156. package/dist/handlers/messages/MESSAGE_REACTION_ADD.d.ts.map +1 -0
  157. package/dist/handlers/messages/MESSAGE_REACTION_ADD.js +25 -0
  158. package/dist/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts +4 -0
  159. package/dist/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts.map +1 -0
  160. package/dist/handlers/messages/MESSAGE_REACTION_REMOVE.js +16 -0
  161. package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts +4 -0
  162. package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts.map +1 -0
  163. package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.js +11 -0
  164. package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts +4 -0
  165. package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts.map +1 -0
  166. package/dist/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.js +14 -0
  167. package/dist/handlers/messages/MESSAGE_UPDATE.d.ts +4 -0
  168. package/dist/handlers/messages/MESSAGE_UPDATE.d.ts.map +1 -0
  169. package/dist/handlers/messages/MESSAGE_UPDATE.js +10 -0
  170. package/dist/handlers/messages/index.d.ts.map +1 -0
  171. package/dist/handlers/messages/index.js +10 -0
  172. package/dist/handlers/misc/PRESENCE_UPDATE.d.ts +4 -0
  173. package/dist/handlers/misc/PRESENCE_UPDATE.d.ts.map +1 -0
  174. package/dist/handlers/misc/PRESENCE_UPDATE.js +6 -0
  175. package/dist/handlers/misc/RATE_LIMITED.d.ts +4 -0
  176. package/dist/handlers/misc/RATE_LIMITED.d.ts.map +1 -0
  177. package/dist/handlers/misc/RATE_LIMITED.js +7 -0
  178. package/dist/handlers/misc/READY.d.ts +4 -0
  179. package/dist/handlers/misc/READY.d.ts.map +1 -0
  180. package/dist/handlers/misc/READY.js +18 -0
  181. package/dist/handlers/misc/RESUMED.d.ts +4 -0
  182. package/dist/handlers/misc/RESUMED.d.ts.map +1 -0
  183. package/dist/handlers/misc/RESUMED.js +6 -0
  184. package/dist/handlers/misc/TYPING_START.d.ts +4 -0
  185. package/dist/handlers/misc/TYPING_START.d.ts.map +1 -0
  186. package/dist/handlers/misc/TYPING_START.js +18 -0
  187. package/dist/handlers/misc/USER_UPDATE.d.ts +4 -0
  188. package/dist/handlers/misc/USER_UPDATE.d.ts.map +1 -0
  189. package/dist/handlers/misc/USER_UPDATE.js +7 -0
  190. package/dist/handlers/misc/index.d.ts +7 -0
  191. package/dist/handlers/misc/index.d.ts.map +1 -0
  192. package/dist/handlers/misc/index.js +8 -0
  193. package/dist/handlers/poll/MESSAGE_POLL_VOTE_ADD.d.ts +4 -0
  194. package/dist/handlers/poll/MESSAGE_POLL_VOTE_ADD.d.ts.map +1 -0
  195. package/dist/handlers/poll/MESSAGE_POLL_VOTE_ADD.js +13 -0
  196. package/dist/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts +4 -0
  197. package/dist/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts.map +1 -0
  198. package/dist/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.js +13 -0
  199. package/dist/handlers/poll/index.d.ts.map +1 -0
  200. package/dist/handlers/poll/index.js +4 -0
  201. package/dist/handlers/roles/GUILD_ROLE_CREATE.d.ts +4 -0
  202. package/dist/handlers/roles/GUILD_ROLE_CREATE.d.ts.map +1 -0
  203. package/dist/handlers/roles/GUILD_ROLE_CREATE.js +9 -0
  204. package/dist/handlers/roles/GUILD_ROLE_DELETE.d.ts +4 -0
  205. package/dist/handlers/roles/GUILD_ROLE_DELETE.d.ts.map +1 -0
  206. package/dist/handlers/roles/GUILD_ROLE_DELETE.js +10 -0
  207. package/dist/handlers/roles/GUILD_ROLE_UPDATE.d.ts +4 -0
  208. package/dist/handlers/roles/GUILD_ROLE_UPDATE.d.ts.map +1 -0
  209. package/dist/handlers/roles/GUILD_ROLE_UPDATE.js +9 -0
  210. package/dist/handlers/roles/index.d.ts.map +1 -0
  211. package/dist/handlers/roles/index.js +5 -0
  212. package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts +4 -0
  213. package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts.map +1 -0
  214. package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.js +10 -0
  215. package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts +4 -0
  216. package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts.map +1 -0
  217. package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.js +7 -0
  218. package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts +4 -0
  219. package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts.map +1 -0
  220. package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.js +10 -0
  221. package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts +4 -0
  222. package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts.map +1 -0
  223. package/dist/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.js +7 -0
  224. package/dist/handlers/soundboard/SOUNDBOARD_SOUNDS.d.ts +4 -0
  225. package/dist/handlers/soundboard/SOUNDBOARD_SOUNDS.d.ts.map +1 -0
  226. package/dist/handlers/soundboard/SOUNDBOARD_SOUNDS.js +10 -0
  227. package/dist/handlers/soundboard/index.d.ts.map +1 -0
  228. package/dist/handlers/soundboard/index.js +7 -0
  229. package/dist/handlers/subscriptions/SUBSCRIPTION_CREATE.d.ts.map +1 -0
  230. package/dist/handlers/subscriptions/SUBSCRIPTION_CREATE.js +7 -0
  231. package/dist/handlers/subscriptions/SUBSCRIPTION_DELETE.d.ts.map +1 -0
  232. package/dist/handlers/subscriptions/SUBSCRIPTION_DELETE.js +7 -0
  233. package/dist/handlers/subscriptions/SUBSCRIPTION_UPDATE.d.ts.map +1 -0
  234. package/dist/handlers/subscriptions/SUBSCRIPTION_UPDATE.js +7 -0
  235. package/dist/handlers/subscriptions/index.d.ts.map +1 -0
  236. package/dist/handlers/subscriptions/index.js +5 -0
  237. package/dist/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts +4 -0
  238. package/dist/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts.map +1 -0
  239. package/dist/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.js +16 -0
  240. package/dist/handlers/voice/VOICE_SERVER_UPDATE.d.ts +4 -0
  241. package/dist/handlers/voice/VOICE_SERVER_UPDATE.d.ts.map +1 -0
  242. package/dist/handlers/voice/VOICE_SERVER_UPDATE.js +11 -0
  243. package/dist/handlers/voice/VOICE_STATE_UPDATE.d.ts +4 -0
  244. package/dist/handlers/voice/VOICE_STATE_UPDATE.d.ts.map +1 -0
  245. package/dist/handlers/voice/VOICE_STATE_UPDATE.js +9 -0
  246. package/dist/handlers/voice/index.d.ts.map +1 -0
  247. package/dist/handlers/voice/index.js +5 -0
  248. package/dist/handlers/webhooks/WEBHOOKS_UPDATE.d.ts +4 -0
  249. package/dist/handlers/webhooks/WEBHOOKS_UPDATE.d.ts.map +1 -0
  250. package/dist/handlers/webhooks/WEBHOOKS_UPDATE.js +10 -0
  251. package/dist/handlers/webhooks/index.d.ts.map +1 -0
  252. package/dist/handlers/webhooks/index.js +3 -0
  253. package/dist/handlers.d.ts +7 -0
  254. package/dist/handlers.d.ts.map +1 -0
  255. package/dist/handlers.js +84 -0
  256. package/dist/helpers.d.ts +262 -0
  257. package/dist/helpers.d.ts.map +1 -0
  258. package/dist/helpers.js +766 -0
  259. package/dist/index.d.ts.map +1 -0
  260. package/dist/index.js +16 -0
  261. package/dist/transformers/activity.d.ts +12 -0
  262. package/dist/transformers/activity.d.ts.map +1 -0
  263. package/dist/transformers/activity.js +69 -0
  264. package/dist/transformers/application.d.ts +7 -0
  265. package/dist/transformers/application.d.ts.map +1 -0
  266. package/dist/transformers/application.js +71 -0
  267. package/dist/transformers/applicationCommand.d.ts +4 -0
  268. package/dist/transformers/applicationCommand.d.ts.map +1 -0
  269. package/dist/transformers/applicationCommand.js +19 -0
  270. package/dist/transformers/applicationCommandOption.d.ts +4 -0
  271. package/dist/transformers/applicationCommandOption.d.ts.map +1 -0
  272. package/dist/transformers/applicationCommandOption.js +22 -0
  273. package/dist/transformers/applicationCommandOptionChoice.d.ts +4 -0
  274. package/dist/transformers/applicationCommandOptionChoice.d.ts.map +1 -0
  275. package/dist/transformers/applicationCommandOptionChoice.js +10 -0
  276. package/dist/transformers/applicationCommandPermission.d.ts +4 -0
  277. package/dist/transformers/applicationCommandPermission.d.ts.map +1 -0
  278. package/dist/transformers/applicationCommandPermission.js +15 -0
  279. package/dist/transformers/attachment.d.ts +6 -0
  280. package/dist/transformers/attachment.d.ts.map +1 -0
  281. package/dist/transformers/attachment.js +29 -0
  282. package/dist/transformers/auditLogEntry.d.ts +4 -0
  283. package/dist/transformers/auditLogEntry.d.ts.map +1 -0
  284. package/dist/transformers/auditLogEntry.js +28 -0
  285. package/dist/transformers/automodActionExecution.d.ts +4 -0
  286. package/dist/transformers/automodActionExecution.d.ts.map +1 -0
  287. package/dist/transformers/automodActionExecution.js +25 -0
  288. package/dist/transformers/automodRule.d.ts +4 -0
  289. package/dist/transformers/automodRule.d.ts.map +1 -0
  290. package/dist/transformers/automodRule.js +32 -0
  291. package/dist/transformers/avatarDecorationData.d.ts +6 -0
  292. package/dist/transformers/avatarDecorationData.d.ts.map +1 -0
  293. package/dist/transformers/avatarDecorationData.js +13 -0
  294. package/dist/transformers/channel.d.ts +14 -0
  295. package/dist/transformers/channel.d.ts.map +1 -0
  296. package/dist/transformers/channel.js +131 -0
  297. package/dist/transformers/component.d.ts +12 -0
  298. package/dist/transformers/component.d.ts.map +1 -0
  299. package/dist/transformers/component.js +411 -0
  300. package/dist/transformers/embed.d.ts +4 -0
  301. package/dist/transformers/embed.d.ts.map +1 -0
  302. package/dist/transformers/embed.js +61 -0
  303. package/dist/transformers/emoji.d.ts +11 -0
  304. package/dist/transformers/emoji.d.ts.map +1 -0
  305. package/dist/transformers/emoji.js +41 -0
  306. package/dist/transformers/entitlement.d.ts +6 -0
  307. package/dist/transformers/entitlement.d.ts.map +1 -0
  308. package/dist/transformers/entitlement.js +20 -0
  309. package/dist/transformers/gatewayBot.d.ts +4 -0
  310. package/dist/transformers/gatewayBot.d.ts.map +1 -0
  311. package/dist/transformers/gatewayBot.js +15 -0
  312. package/dist/transformers/guild.d.ts +9 -0
  313. package/dist/transformers/guild.d.ts.map +1 -0
  314. package/dist/transformers/guild.js +147 -0
  315. package/dist/transformers/incidentsData.d.ts +6 -0
  316. package/dist/transformers/incidentsData.d.ts.map +1 -0
  317. package/dist/transformers/incidentsData.js +14 -0
  318. package/dist/transformers/index.d.ts.map +1 -0
  319. package/dist/transformers/index.js +52 -0
  320. package/dist/transformers/integration.d.ts +4 -0
  321. package/dist/transformers/integration.d.ts.map +1 -0
  322. package/dist/transformers/integration.js +34 -0
  323. package/dist/transformers/interaction.d.ts +27 -0
  324. package/dist/transformers/interaction.d.ts.map +1 -0
  325. package/dist/transformers/interaction.js +285 -0
  326. package/dist/transformers/invite.d.ts +7 -0
  327. package/dist/transformers/invite.d.ts.map +1 -0
  328. package/dist/transformers/invite.js +40 -0
  329. package/dist/transformers/lobby.d.ts +15 -0
  330. package/dist/transformers/lobby.d.ts.map +1 -0
  331. package/dist/transformers/lobby.js +51 -0
  332. package/dist/transformers/member.d.ts +10 -0
  333. package/dist/transformers/member.d.ts.map +1 -0
  334. package/dist/transformers/member.js +57 -0
  335. package/dist/transformers/message.d.ts +26 -0
  336. package/dist/transformers/message.d.ts.map +1 -0
  337. package/dist/transformers/message.js +314 -0
  338. package/dist/transformers/onboarding.d.ts +12 -0
  339. package/dist/transformers/onboarding.d.ts.map +1 -0
  340. package/dist/transformers/onboarding.js +42 -0
  341. package/dist/transformers/poll.d.ts +9 -0
  342. package/dist/transformers/poll.d.ts.map +1 -0
  343. package/dist/transformers/poll.js +40 -0
  344. package/dist/transformers/presence.d.ts +6 -0
  345. package/dist/transformers/presence.d.ts.map +1 -0
  346. package/dist/transformers/presence.js +18 -0
  347. package/dist/transformers/reverse/activity.d.ts +6 -0
  348. package/dist/transformers/reverse/activity.d.ts.map +1 -0
  349. package/dist/transformers/reverse/activity.js +39 -0
  350. package/dist/transformers/reverse/allowedMentions.d.ts +4 -0
  351. package/dist/transformers/reverse/allowedMentions.d.ts.map +1 -0
  352. package/dist/transformers/reverse/allowedMentions.js +10 -0
  353. package/dist/transformers/reverse/application.d.ts +5 -0
  354. package/dist/transformers/reverse/application.d.ts.map +1 -0
  355. package/dist/transformers/reverse/application.js +28 -0
  356. package/dist/transformers/reverse/applicationCommand.d.ts +5 -0
  357. package/dist/transformers/reverse/applicationCommand.d.ts.map +1 -0
  358. package/dist/transformers/reverse/applicationCommand.js +18 -0
  359. package/dist/transformers/reverse/applicationCommandOption.d.ts +5 -0
  360. package/dist/transformers/reverse/applicationCommandOption.d.ts.map +1 -0
  361. package/dist/transformers/reverse/applicationCommandOption.js +20 -0
  362. package/dist/transformers/reverse/applicationCommandOptionChoice.d.ts +5 -0
  363. package/dist/transformers/reverse/applicationCommandOptionChoice.d.ts.map +1 -0
  364. package/dist/transformers/reverse/applicationCommandOptionChoice.js +9 -0
  365. package/dist/transformers/reverse/applicationCommandPermission.d.ts +5 -0
  366. package/dist/transformers/reverse/applicationCommandPermission.d.ts.map +1 -0
  367. package/dist/transformers/reverse/applicationCommandPermission.js +14 -0
  368. package/dist/transformers/reverse/attachment.d.ts +4 -0
  369. package/dist/transformers/reverse/attachment.d.ts.map +1 -0
  370. package/dist/transformers/reverse/attachment.js +20 -0
  371. package/dist/transformers/reverse/auditLogEntry.d.ts +5 -0
  372. package/dist/transformers/reverse/auditLogEntry.d.ts.map +1 -0
  373. package/dist/transformers/reverse/auditLogEntry.js +28 -0
  374. package/dist/transformers/reverse/component.d.ts +7 -0
  375. package/dist/transformers/reverse/component.d.ts.map +1 -0
  376. package/dist/transformers/reverse/component.js +335 -0
  377. package/dist/transformers/reverse/embed.d.ts +5 -0
  378. package/dist/transformers/reverse/embed.d.ts.map +1 -0
  379. package/dist/transformers/reverse/embed.js +58 -0
  380. package/dist/transformers/reverse/emoji.d.ts +5 -0
  381. package/dist/transformers/reverse/emoji.d.ts.map +1 -0
  382. package/dist/transformers/reverse/emoji.js +14 -0
  383. package/dist/transformers/reverse/gatewayBot.d.ts.map +1 -0
  384. package/dist/transformers/reverse/gatewayBot.js +14 -0
  385. package/dist/transformers/reverse/index.d.ts.map +1 -0
  386. package/dist/transformers/reverse/index.js +19 -0
  387. package/dist/transformers/reverse/member.d.ts.map +1 -0
  388. package/dist/transformers/reverse/member.js +45 -0
  389. package/dist/transformers/reverse/presence.d.ts +11 -0
  390. package/dist/transformers/reverse/presence.d.ts.map +1 -0
  391. package/dist/transformers/reverse/presence.js +24 -0
  392. package/dist/transformers/reverse/team.d.ts +5 -0
  393. package/dist/transformers/reverse/team.d.ts.map +1 -0
  394. package/dist/transformers/reverse/team.js +18 -0
  395. package/dist/transformers/reverse/user.d.ts +5 -0
  396. package/dist/transformers/reverse/user.d.ts.map +1 -0
  397. package/dist/transformers/reverse/user.js +17 -0
  398. package/dist/transformers/reverse/widgetSettings.d.ts +5 -0
  399. package/dist/transformers/reverse/widgetSettings.d.ts.map +1 -0
  400. package/dist/transformers/reverse/widgetSettings.js +8 -0
  401. package/dist/transformers/role.d.ts +12 -0
  402. package/dist/transformers/role.d.ts.map +1 -0
  403. package/dist/transformers/role.js +74 -0
  404. package/dist/transformers/scheduledEvent.d.ts +9 -0
  405. package/dist/transformers/scheduledEvent.d.ts.map +1 -0
  406. package/dist/transformers/scheduledEvent.js +45 -0
  407. package/dist/transformers/sku.d.ts +6 -0
  408. package/dist/transformers/sku.d.ts.map +1 -0
  409. package/dist/transformers/sku.js +16 -0
  410. package/dist/transformers/soundboardSound.d.ts +6 -0
  411. package/dist/transformers/soundboardSound.d.ts.map +1 -0
  412. package/dist/transformers/soundboardSound.js +18 -0
  413. package/dist/transformers/stageInstance.d.ts +6 -0
  414. package/dist/transformers/stageInstance.d.ts.map +1 -0
  415. package/dist/transformers/stageInstance.js +15 -0
  416. package/dist/transformers/stageInviteInstance.d.ts +7 -0
  417. package/dist/transformers/stageInviteInstance.d.ts.map +1 -0
  418. package/dist/transformers/stageInviteInstance.js +21 -0
  419. package/dist/transformers/sticker.d.ts +7 -0
  420. package/dist/transformers/sticker.d.ts.map +1 -0
  421. package/dist/transformers/sticker.js +33 -0
  422. package/dist/transformers/subscription.d.ts +6 -0
  423. package/dist/transformers/subscription.d.ts.map +1 -0
  424. package/dist/transformers/subscription.js +20 -0
  425. package/dist/transformers/team.d.ts +4 -0
  426. package/dist/transformers/team.d.ts.map +1 -0
  427. package/dist/transformers/team.js +19 -0
  428. package/dist/transformers/template.d.ts +4 -0
  429. package/dist/transformers/template.d.ts.map +1 -0
  430. package/dist/transformers/template.js +18 -0
  431. package/dist/transformers/threadMember.d.ts +14 -0
  432. package/dist/transformers/threadMember.d.ts.map +1 -0
  433. package/dist/transformers/threadMember.js +23 -0
  434. package/dist/transformers/toggles/Permissions.d.ts.map +1 -0
  435. package/dist/transformers/toggles/Permissions.js +18 -0
  436. package/dist/transformers/toggles/ToggleBitfield.d.ts.map +1 -0
  437. package/dist/transformers/toggles/ToggleBitfield.js +42 -0
  438. package/dist/transformers/toggles/channel.d.ts +36 -0
  439. package/dist/transformers/toggles/channel.d.ts.map +1 -0
  440. package/dist/transformers/toggles/channel.js +55 -0
  441. package/dist/transformers/toggles/emoji.d.ts +29 -0
  442. package/dist/transformers/toggles/emoji.d.ts.map +1 -0
  443. package/dist/transformers/toggles/emoji.js +45 -0
  444. package/dist/transformers/toggles/guild.d.ts +165 -0
  445. package/dist/transformers/toggles/guild.d.ts.map +1 -0
  446. package/dist/transformers/toggles/guild.js +256 -0
  447. package/dist/transformers/toggles/index.d.ts.map +1 -0
  448. package/dist/transformers/toggles/index.js +11 -0
  449. package/dist/transformers/toggles/member.d.ts +69 -0
  450. package/dist/transformers/toggles/member.d.ts.map +1 -0
  451. package/dist/transformers/toggles/member.js +114 -0
  452. package/dist/transformers/toggles/role.d.ts +37 -0
  453. package/dist/transformers/toggles/role.d.ts.map +1 -0
  454. package/dist/transformers/toggles/role.js +55 -0
  455. package/dist/transformers/toggles/user.d.ts +29 -0
  456. package/dist/transformers/toggles/user.d.ts.map +1 -0
  457. package/dist/transformers/toggles/user.js +45 -0
  458. package/dist/transformers/toggles/voice.d.ts +41 -0
  459. package/dist/transformers/toggles/voice.d.ts.map +1 -0
  460. package/dist/transformers/toggles/voice.js +60 -0
  461. package/dist/transformers/types.d.ts +2014 -0
  462. package/dist/transformers/types.d.ts.map +1 -0
  463. package/dist/transformers/types.js +3 -0
  464. package/dist/transformers/user.d.ts +17 -0
  465. package/dist/transformers/user.d.ts.map +1 -0
  466. package/dist/transformers/user.js +95 -0
  467. package/dist/transformers/voiceRegion.d.ts +4 -0
  468. package/dist/transformers/voiceRegion.d.ts.map +1 -0
  469. package/dist/transformers/voiceRegion.js +12 -0
  470. package/dist/transformers/voiceState.d.ts +7 -0
  471. package/dist/transformers/voiceState.d.ts.map +1 -0
  472. package/dist/transformers/voiceState.js +18 -0
  473. package/dist/transformers/webhook.d.ts +6 -0
  474. package/dist/transformers/webhook.d.ts.map +1 -0
  475. package/dist/transformers/webhook.js +30 -0
  476. package/dist/transformers/welcomeScreen.d.ts +4 -0
  477. package/dist/transformers/welcomeScreen.d.ts.map +1 -0
  478. package/dist/transformers/welcomeScreen.js +14 -0
  479. package/dist/transformers/widget.d.ts +4 -0
  480. package/dist/transformers/widget.d.ts.map +1 -0
  481. package/dist/transformers/widget.js +17 -0
  482. package/dist/transformers/widgetSettings.d.ts +4 -0
  483. package/dist/transformers/widgetSettings.d.ts.map +1 -0
  484. package/dist/transformers/widgetSettings.js +9 -0
  485. package/dist/transformers.d.ts +241 -0
  486. package/dist/transformers.d.ts.map +1 -0
  487. package/dist/transformers.js +264 -0
  488. package/package.json +27 -36
  489. package/dist/cjs/bot.cjs +0 -82
  490. package/dist/cjs/commandOptionsParser.cjs +0 -53
  491. package/dist/cjs/constants.cjs +0 -30
  492. package/dist/cjs/desiredProperties.cjs +0 -649
  493. package/dist/cjs/events.cjs +0 -6
  494. package/dist/cjs/handlers/channels/CHANNEL_CREATE.cjs +0 -21
  495. package/dist/cjs/handlers/channels/CHANNEL_DELETE.cjs +0 -20
  496. package/dist/cjs/handlers/channels/CHANNEL_PINS_UPDATE.cjs +0 -21
  497. package/dist/cjs/handlers/channels/CHANNEL_UPDATE.cjs +0 -20
  498. package/dist/cjs/handlers/channels/STAGE_INSTANCE_CREATE.cjs +0 -22
  499. package/dist/cjs/handlers/channels/STAGE_INSTANCE_DELETE.cjs +0 -22
  500. package/dist/cjs/handlers/channels/STAGE_INSTANCE_UPDATE.cjs +0 -22
  501. package/dist/cjs/handlers/channels/THREAD_CREATE.cjs +0 -19
  502. package/dist/cjs/handlers/channels/THREAD_DELETE.cjs +0 -19
  503. package/dist/cjs/handlers/channels/THREAD_LIST_SYNC.cjs +0 -31
  504. package/dist/cjs/handlers/channels/THREAD_MEMBERS_UPDATE.cjs +0 -24
  505. package/dist/cjs/handlers/channels/THREAD_MEMBER_UPDATE.cjs +0 -22
  506. package/dist/cjs/handlers/channels/THREAD_UPDATE.cjs +0 -19
  507. package/dist/cjs/handlers/channels/index.cjs +0 -32
  508. package/dist/cjs/handlers/emojis/GUILD_EMOJIS_UPDATE.cjs +0 -24
  509. package/dist/cjs/handlers/emojis/index.cjs +0 -20
  510. package/dist/cjs/handlers/entitlements/ENTITLEMENT_CREATE.cjs +0 -17
  511. package/dist/cjs/handlers/entitlements/ENTITLEMENT_DELETE.cjs +0 -17
  512. package/dist/cjs/handlers/entitlements/ENTITLEMENT_UPDATE.cjs +0 -17
  513. package/dist/cjs/handlers/entitlements/index.cjs +0 -22
  514. package/dist/cjs/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.cjs +0 -18
  515. package/dist/cjs/handlers/guilds/GUILD_BAN_ADD.cjs +0 -17
  516. package/dist/cjs/handlers/guilds/GUILD_BAN_REMOVE.cjs +0 -17
  517. package/dist/cjs/handlers/guilds/GUILD_CREATE.cjs +0 -20
  518. package/dist/cjs/handlers/guilds/GUILD_DELETE.cjs +0 -20
  519. package/dist/cjs/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.cjs +0 -19
  520. package/dist/cjs/handlers/guilds/GUILD_STICKERS_UPDATE.cjs +0 -23
  521. package/dist/cjs/handlers/guilds/GUILD_UPDATE.cjs +0 -20
  522. package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.cjs +0 -17
  523. package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.cjs +0 -17
  524. package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.cjs +0 -17
  525. package/dist/cjs/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.cjs +0 -17
  526. package/dist/cjs/handlers/guilds/automod/index.cjs +0 -23
  527. package/dist/cjs/handlers/guilds/index.cjs +0 -29
  528. package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.cjs +0 -17
  529. package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.cjs +0 -17
  530. package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.cjs +0 -17
  531. package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.cjs +0 -21
  532. package/dist/cjs/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.cjs +0 -21
  533. package/dist/cjs/handlers/guilds/scheduledEvents/index.cjs +0 -24
  534. package/dist/cjs/handlers/index.cjs +0 -35
  535. package/dist/cjs/handlers/integrations/INTEGRATION_CREATE.cjs +0 -16
  536. package/dist/cjs/handlers/integrations/INTEGRATION_DELETE.cjs +0 -21
  537. package/dist/cjs/handlers/integrations/INTEGRATION_UPDATE.cjs +0 -16
  538. package/dist/cjs/handlers/integrations/index.cjs +0 -22
  539. package/dist/cjs/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.cjs +0 -17
  540. package/dist/cjs/handlers/interactions/INTERACTION_CREATE.cjs +0 -19
  541. package/dist/cjs/handlers/interactions/index.cjs +0 -21
  542. package/dist/cjs/handlers/invites/INVITE_CREATE.cjs +0 -19
  543. package/dist/cjs/handlers/invites/INVITE_DELETE.cjs +0 -21
  544. package/dist/cjs/handlers/invites/index.cjs +0 -21
  545. package/dist/cjs/handlers/members/GUILD_MEMBERS_CHUNK.cjs +0 -30
  546. package/dist/cjs/handlers/members/GUILD_MEMBER_ADD.cjs +0 -20
  547. package/dist/cjs/handlers/members/GUILD_MEMBER_REMOVE.cjs +0 -19
  548. package/dist/cjs/handlers/members/GUILD_MEMBER_UPDATE.cjs +0 -19
  549. package/dist/cjs/handlers/members/index.cjs +0 -23
  550. package/dist/cjs/handlers/messages/MESSAGE_CREATE.cjs +0 -20
  551. package/dist/cjs/handlers/messages/MESSAGE_DELETE.cjs +0 -21
  552. package/dist/cjs/handlers/messages/MESSAGE_DELETE_BULK.cjs +0 -23
  553. package/dist/cjs/handlers/messages/MESSAGE_REACTION_ADD.cjs +0 -31
  554. package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE.cjs +0 -25
  555. package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.cjs +0 -21
  556. package/dist/cjs/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.cjs +0 -23
  557. package/dist/cjs/handlers/messages/MESSAGE_UPDATE.cjs +0 -21
  558. package/dist/cjs/handlers/messages/index.cjs +0 -27
  559. package/dist/cjs/handlers/misc/PRESENCE_UPDATE.cjs +0 -16
  560. package/dist/cjs/handlers/misc/READY.cjs +0 -28
  561. package/dist/cjs/handlers/misc/TYPING_START.cjs +0 -25
  562. package/dist/cjs/handlers/misc/USER_UPDATE.cjs +0 -17
  563. package/dist/cjs/handlers/misc/index.cjs +0 -23
  564. package/dist/cjs/handlers/poll/MESSAGE_POLL_VOTE_ADD.cjs +0 -23
  565. package/dist/cjs/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.cjs +0 -23
  566. package/dist/cjs/handlers/poll/index.cjs +0 -21
  567. package/dist/cjs/handlers/roles/GUILD_ROLE_CREATE.cjs +0 -20
  568. package/dist/cjs/handlers/roles/GUILD_ROLE_DELETE.cjs +0 -20
  569. package/dist/cjs/handlers/roles/GUILD_ROLE_UPDATE.cjs +0 -20
  570. package/dist/cjs/handlers/roles/index.cjs +0 -22
  571. package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.cjs +0 -20
  572. package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.cjs +0 -17
  573. package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.cjs +0 -20
  574. package/dist/cjs/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.cjs +0 -17
  575. package/dist/cjs/handlers/soundboard/SOUNDBOARD_SOUNDS.cjs +0 -20
  576. package/dist/cjs/handlers/soundboard/index.cjs +0 -24
  577. package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_CREATE.cjs +0 -17
  578. package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_DELETE.cjs +0 -17
  579. package/dist/cjs/handlers/subscriptions/SUBSCRIPTION_UPDATE.cjs +0 -17
  580. package/dist/cjs/handlers/subscriptions/index.cjs +0 -22
  581. package/dist/cjs/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.cjs +0 -26
  582. package/dist/cjs/handlers/voice/VOICE_SERVER_UPDATE.cjs +0 -21
  583. package/dist/cjs/handlers/voice/VOICE_STATE_UPDATE.cjs +0 -23
  584. package/dist/cjs/handlers/voice/index.cjs +0 -22
  585. package/dist/cjs/handlers/webhooks/WEBHOOKS_UPDATE.cjs +0 -20
  586. package/dist/cjs/handlers/webhooks/index.cjs +0 -20
  587. package/dist/cjs/handlers.cjs +0 -132
  588. package/dist/cjs/helpers.cjs +0 -794
  589. package/dist/cjs/index.cjs +0 -33
  590. package/dist/cjs/transformers/activity.cjs +0 -74
  591. package/dist/cjs/transformers/application.cjs +0 -70
  592. package/dist/cjs/transformers/applicationCommand.cjs +0 -29
  593. package/dist/cjs/transformers/applicationCommandOption.cjs +0 -31
  594. package/dist/cjs/transformers/applicationCommandOptionChoice.cjs +0 -20
  595. package/dist/cjs/transformers/applicationCommandPermission.cjs +0 -25
  596. package/dist/cjs/transformers/attachment.cjs +0 -31
  597. package/dist/cjs/transformers/auditLogEntry.cjs +0 -37
  598. package/dist/cjs/transformers/automodActionExecution.cjs +0 -35
  599. package/dist/cjs/transformers/automodRule.cjs +0 -41
  600. package/dist/cjs/transformers/avatarDecorationData.cjs +0 -20
  601. package/dist/cjs/transformers/channel.cjs +0 -151
  602. package/dist/cjs/transformers/component.cjs +0 -217
  603. package/dist/cjs/transformers/embed.cjs +0 -54
  604. package/dist/cjs/transformers/emoji.cjs +0 -57
  605. package/dist/cjs/transformers/entitlement.cjs +0 -27
  606. package/dist/cjs/transformers/gatewayBot.cjs +0 -25
  607. package/dist/cjs/transformers/guild.cjs +0 -165
  608. package/dist/cjs/transformers/incidentsData.cjs +0 -21
  609. package/dist/cjs/transformers/index.cjs +0 -68
  610. package/dist/cjs/transformers/integration.cjs +0 -44
  611. package/dist/cjs/transformers/interaction.cjs +0 -290
  612. package/dist/cjs/transformers/invite.cjs +0 -52
  613. package/dist/cjs/transformers/lobby.cjs +0 -41
  614. package/dist/cjs/transformers/member.cjs +0 -69
  615. package/dist/cjs/transformers/message.cjs +0 -315
  616. package/dist/cjs/transformers/onboarding.cjs +0 -56
  617. package/dist/cjs/transformers/poll.cjs +0 -51
  618. package/dist/cjs/transformers/presence.cjs +0 -24
  619. package/dist/cjs/transformers/reverse/activity.cjs +0 -53
  620. package/dist/cjs/transformers/reverse/allowedMentions.cjs +0 -20
  621. package/dist/cjs/transformers/reverse/application.cjs +0 -38
  622. package/dist/cjs/transformers/reverse/applicationCommand.cjs +0 -28
  623. package/dist/cjs/transformers/reverse/applicationCommandOption.cjs +0 -30
  624. package/dist/cjs/transformers/reverse/applicationCommandOptionChoice.cjs +0 -19
  625. package/dist/cjs/transformers/reverse/applicationCommandPermission.cjs +0 -24
  626. package/dist/cjs/transformers/reverse/attachment.cjs +0 -30
  627. package/dist/cjs/transformers/reverse/auditLogEntry.cjs +0 -37
  628. package/dist/cjs/transformers/reverse/component.cjs +0 -183
  629. package/dist/cjs/transformers/reverse/embed.cjs +0 -53
  630. package/dist/cjs/transformers/reverse/emoji.cjs +0 -24
  631. package/dist/cjs/transformers/reverse/gatewayBot.cjs +0 -24
  632. package/dist/cjs/transformers/reverse/index.cjs +0 -36
  633. package/dist/cjs/transformers/reverse/member.cjs +0 -61
  634. package/dist/cjs/transformers/reverse/presence.cjs +0 -41
  635. package/dist/cjs/transformers/reverse/team.cjs +0 -28
  636. package/dist/cjs/transformers/reverse/widgetSettings.cjs +0 -18
  637. package/dist/cjs/transformers/role.cjs +0 -90
  638. package/dist/cjs/transformers/scheduledEvent.cjs +0 -58
  639. package/dist/cjs/transformers/sku.cjs +0 -23
  640. package/dist/cjs/transformers/soundboardSound.cjs +0 -25
  641. package/dist/cjs/transformers/stageInstance.cjs +0 -22
  642. package/dist/cjs/transformers/stageInviteInstance.cjs +0 -23
  643. package/dist/cjs/transformers/sticker.cjs +0 -48
  644. package/dist/cjs/transformers/subscription.cjs +0 -27
  645. package/dist/cjs/transformers/team.cjs +0 -29
  646. package/dist/cjs/transformers/template.cjs +0 -28
  647. package/dist/cjs/transformers/threadMember.cjs +0 -36
  648. package/dist/cjs/transformers/toggles/Permissions.cjs +0 -28
  649. package/dist/cjs/transformers/toggles/ToggleBitfield.cjs +0 -60
  650. package/dist/cjs/transformers/toggles/channel.cjs +0 -73
  651. package/dist/cjs/transformers/toggles/emoji.cjs +0 -63
  652. package/dist/cjs/transformers/toggles/guild.cjs +0 -274
  653. package/dist/cjs/transformers/toggles/index.cjs +0 -28
  654. package/dist/cjs/transformers/toggles/member.cjs +0 -132
  655. package/dist/cjs/transformers/toggles/role.cjs +0 -73
  656. package/dist/cjs/transformers/toggles/user.cjs +0 -63
  657. package/dist/cjs/transformers/toggles/voice.cjs +0 -78
  658. package/dist/cjs/transformers/types.cjs +0 -6
  659. package/dist/cjs/transformers/user.cjs +0 -95
  660. package/dist/cjs/transformers/voiceRegion.cjs +0 -22
  661. package/dist/cjs/transformers/voiceState.cjs +0 -24
  662. package/dist/cjs/transformers/webhook.cjs +0 -37
  663. package/dist/cjs/transformers/welcomeScreen.cjs +0 -24
  664. package/dist/cjs/transformers/widget.cjs +0 -27
  665. package/dist/cjs/transformers/widgetSettings.cjs +0 -19
  666. package/dist/cjs/transformers.cjs +0 -188
  667. package/dist/esm/bot.js +0 -72
  668. package/dist/esm/commandOptionsParser.js +0 -43
  669. package/dist/esm/constants.js +0 -6
  670. package/dist/esm/desiredProperties.js +0 -631
  671. package/dist/esm/events.js +0 -3
  672. package/dist/esm/handlers/channels/CHANNEL_CREATE.js +0 -11
  673. package/dist/esm/handlers/channels/CHANNEL_DELETE.js +0 -10
  674. package/dist/esm/handlers/channels/CHANNEL_PINS_UPDATE.js +0 -11
  675. package/dist/esm/handlers/channels/CHANNEL_UPDATE.js +0 -10
  676. package/dist/esm/handlers/channels/STAGE_INSTANCE_CREATE.js +0 -12
  677. package/dist/esm/handlers/channels/STAGE_INSTANCE_DELETE.js +0 -12
  678. package/dist/esm/handlers/channels/STAGE_INSTANCE_UPDATE.js +0 -12
  679. package/dist/esm/handlers/channels/THREAD_CREATE.js +0 -9
  680. package/dist/esm/handlers/channels/THREAD_DELETE.js +0 -9
  681. package/dist/esm/handlers/channels/THREAD_LIST_SYNC.js +0 -21
  682. package/dist/esm/handlers/channels/THREAD_MEMBERS_UPDATE.js +0 -14
  683. package/dist/esm/handlers/channels/THREAD_MEMBER_UPDATE.js +0 -12
  684. package/dist/esm/handlers/channels/THREAD_UPDATE.js +0 -9
  685. package/dist/esm/handlers/channels/index.js +0 -15
  686. package/dist/esm/handlers/emojis/GUILD_EMOJIS_UPDATE.js +0 -14
  687. package/dist/esm/handlers/emojis/index.js +0 -3
  688. package/dist/esm/handlers/entitlements/ENTITLEMENT_CREATE.js +0 -7
  689. package/dist/esm/handlers/entitlements/ENTITLEMENT_DELETE.js +0 -7
  690. package/dist/esm/handlers/entitlements/ENTITLEMENT_UPDATE.js +0 -7
  691. package/dist/esm/handlers/entitlements/index.js +0 -5
  692. package/dist/esm/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.js +0 -8
  693. package/dist/esm/handlers/guilds/GUILD_BAN_ADD.js +0 -7
  694. package/dist/esm/handlers/guilds/GUILD_BAN_REMOVE.js +0 -7
  695. package/dist/esm/handlers/guilds/GUILD_CREATE.js +0 -10
  696. package/dist/esm/handlers/guilds/GUILD_DELETE.js +0 -10
  697. package/dist/esm/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.js +0 -9
  698. package/dist/esm/handlers/guilds/GUILD_STICKERS_UPDATE.js +0 -13
  699. package/dist/esm/handlers/guilds/GUILD_UPDATE.js +0 -10
  700. package/dist/esm/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.js +0 -7
  701. package/dist/esm/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.js +0 -7
  702. package/dist/esm/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.js +0 -7
  703. package/dist/esm/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.js +0 -7
  704. package/dist/esm/handlers/guilds/automod/index.js +0 -6
  705. package/dist/esm/handlers/guilds/index.js +0 -12
  706. package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.js +0 -7
  707. package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.js +0 -7
  708. package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.js +0 -7
  709. package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.js +0 -11
  710. package/dist/esm/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.js +0 -11
  711. package/dist/esm/handlers/guilds/scheduledEvents/index.js +0 -7
  712. package/dist/esm/handlers/index.js +0 -18
  713. package/dist/esm/handlers/integrations/INTEGRATION_CREATE.js +0 -6
  714. package/dist/esm/handlers/integrations/INTEGRATION_DELETE.js +0 -11
  715. package/dist/esm/handlers/integrations/INTEGRATION_UPDATE.js +0 -6
  716. package/dist/esm/handlers/integrations/index.js +0 -5
  717. package/dist/esm/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.js +0 -7
  718. package/dist/esm/handlers/interactions/INTERACTION_CREATE.js +0 -9
  719. package/dist/esm/handlers/interactions/index.js +0 -4
  720. package/dist/esm/handlers/invites/INVITE_CREATE.js +0 -9
  721. package/dist/esm/handlers/invites/INVITE_DELETE.js +0 -11
  722. package/dist/esm/handlers/invites/index.js +0 -4
  723. package/dist/esm/handlers/members/GUILD_MEMBERS_CHUNK.js +0 -20
  724. package/dist/esm/handlers/members/GUILD_MEMBER_ADD.js +0 -10
  725. package/dist/esm/handlers/members/GUILD_MEMBER_REMOVE.js +0 -9
  726. package/dist/esm/handlers/members/GUILD_MEMBER_UPDATE.js +0 -9
  727. package/dist/esm/handlers/members/index.js +0 -6
  728. package/dist/esm/handlers/messages/MESSAGE_CREATE.js +0 -10
  729. package/dist/esm/handlers/messages/MESSAGE_DELETE.js +0 -11
  730. package/dist/esm/handlers/messages/MESSAGE_DELETE_BULK.js +0 -13
  731. package/dist/esm/handlers/messages/MESSAGE_REACTION_ADD.js +0 -21
  732. package/dist/esm/handlers/messages/MESSAGE_REACTION_REMOVE.js +0 -15
  733. package/dist/esm/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.js +0 -11
  734. package/dist/esm/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.js +0 -13
  735. package/dist/esm/handlers/messages/MESSAGE_UPDATE.js +0 -11
  736. package/dist/esm/handlers/messages/index.js +0 -10
  737. package/dist/esm/handlers/misc/PRESENCE_UPDATE.js +0 -6
  738. package/dist/esm/handlers/misc/READY.js +0 -18
  739. package/dist/esm/handlers/misc/TYPING_START.js +0 -15
  740. package/dist/esm/handlers/misc/USER_UPDATE.js +0 -7
  741. package/dist/esm/handlers/misc/index.js +0 -6
  742. package/dist/esm/handlers/poll/MESSAGE_POLL_VOTE_ADD.js +0 -13
  743. package/dist/esm/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.js +0 -13
  744. package/dist/esm/handlers/poll/index.js +0 -4
  745. package/dist/esm/handlers/roles/GUILD_ROLE_CREATE.js +0 -10
  746. package/dist/esm/handlers/roles/GUILD_ROLE_DELETE.js +0 -10
  747. package/dist/esm/handlers/roles/GUILD_ROLE_UPDATE.js +0 -10
  748. package/dist/esm/handlers/roles/index.js +0 -5
  749. package/dist/esm/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.js +0 -10
  750. package/dist/esm/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.js +0 -7
  751. package/dist/esm/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.js +0 -10
  752. package/dist/esm/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.js +0 -7
  753. package/dist/esm/handlers/soundboard/SOUNDBOARD_SOUNDS.js +0 -10
  754. package/dist/esm/handlers/soundboard/index.js +0 -7
  755. package/dist/esm/handlers/subscriptions/SUBSCRIPTION_CREATE.js +0 -7
  756. package/dist/esm/handlers/subscriptions/SUBSCRIPTION_DELETE.js +0 -7
  757. package/dist/esm/handlers/subscriptions/SUBSCRIPTION_UPDATE.js +0 -7
  758. package/dist/esm/handlers/subscriptions/index.js +0 -5
  759. package/dist/esm/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.js +0 -16
  760. package/dist/esm/handlers/voice/VOICE_SERVER_UPDATE.js +0 -11
  761. package/dist/esm/handlers/voice/VOICE_STATE_UPDATE.js +0 -13
  762. package/dist/esm/handlers/voice/index.js +0 -5
  763. package/dist/esm/handlers/webhooks/WEBHOOKS_UPDATE.js +0 -10
  764. package/dist/esm/handlers/webhooks/index.js +0 -3
  765. package/dist/esm/handlers.js +0 -81
  766. package/dist/esm/helpers.js +0 -784
  767. package/dist/esm/index.js +0 -16
  768. package/dist/esm/transformers/activity.js +0 -53
  769. package/dist/esm/transformers/application.js +0 -60
  770. package/dist/esm/transformers/applicationCommand.js +0 -19
  771. package/dist/esm/transformers/applicationCommandOption.js +0 -21
  772. package/dist/esm/transformers/applicationCommandOptionChoice.js +0 -10
  773. package/dist/esm/transformers/applicationCommandPermission.js +0 -15
  774. package/dist/esm/transformers/attachment.js +0 -21
  775. package/dist/esm/transformers/auditLogEntry.js +0 -27
  776. package/dist/esm/transformers/automodActionExecution.js +0 -25
  777. package/dist/esm/transformers/automodRule.js +0 -31
  778. package/dist/esm/transformers/avatarDecorationData.js +0 -10
  779. package/dist/esm/transformers/channel.js +0 -124
  780. package/dist/esm/transformers/component.js +0 -196
  781. package/dist/esm/transformers/embed.js +0 -44
  782. package/dist/esm/transformers/emoji.js +0 -36
  783. package/dist/esm/transformers/entitlement.js +0 -17
  784. package/dist/esm/transformers/gatewayBot.js +0 -15
  785. package/dist/esm/transformers/guild.js +0 -147
  786. package/dist/esm/transformers/incidentsData.js +0 -11
  787. package/dist/esm/transformers/index.js +0 -52
  788. package/dist/esm/transformers/integration.js +0 -34
  789. package/dist/esm/transformers/interaction.js +0 -259
  790. package/dist/esm/transformers/invite.js +0 -42
  791. package/dist/esm/transformers/lobby.js +0 -23
  792. package/dist/esm/transformers/member.js +0 -51
  793. package/dist/esm/transformers/message.js +0 -285
  794. package/dist/esm/transformers/onboarding.js +0 -35
  795. package/dist/esm/transformers/poll.js +0 -33
  796. package/dist/esm/transformers/presence.js +0 -14
  797. package/dist/esm/transformers/reverse/activity.js +0 -43
  798. package/dist/esm/transformers/reverse/allowedMentions.js +0 -10
  799. package/dist/esm/transformers/reverse/application.js +0 -28
  800. package/dist/esm/transformers/reverse/applicationCommand.js +0 -18
  801. package/dist/esm/transformers/reverse/applicationCommandOption.js +0 -20
  802. package/dist/esm/transformers/reverse/applicationCommandOptionChoice.js +0 -9
  803. package/dist/esm/transformers/reverse/applicationCommandPermission.js +0 -14
  804. package/dist/esm/transformers/reverse/attachment.js +0 -20
  805. package/dist/esm/transformers/reverse/auditLogEntry.js +0 -27
  806. package/dist/esm/transformers/reverse/component.js +0 -162
  807. package/dist/esm/transformers/reverse/embed.js +0 -43
  808. package/dist/esm/transformers/reverse/emoji.js +0 -14
  809. package/dist/esm/transformers/reverse/gatewayBot.js +0 -14
  810. package/dist/esm/transformers/reverse/index.js +0 -19
  811. package/dist/esm/transformers/reverse/member.js +0 -43
  812. package/dist/esm/transformers/reverse/presence.js +0 -23
  813. package/dist/esm/transformers/reverse/team.js +0 -18
  814. package/dist/esm/transformers/reverse/widgetSettings.js +0 -8
  815. package/dist/esm/transformers/role.js +0 -69
  816. package/dist/esm/transformers/scheduledEvent.js +0 -40
  817. package/dist/esm/transformers/sku.js +0 -13
  818. package/dist/esm/transformers/soundboardSound.js +0 -15
  819. package/dist/esm/transformers/stageInstance.js +0 -12
  820. package/dist/esm/transformers/stageInviteInstance.js +0 -13
  821. package/dist/esm/transformers/sticker.js +0 -30
  822. package/dist/esm/transformers/subscription.js +0 -17
  823. package/dist/esm/transformers/team.js +0 -19
  824. package/dist/esm/transformers/template.js +0 -18
  825. package/dist/esm/transformers/threadMember.js +0 -18
  826. package/dist/esm/transformers/toggles/Permissions.js +0 -18
  827. package/dist/esm/transformers/toggles/ToggleBitfield.js +0 -42
  828. package/dist/esm/transformers/toggles/channel.js +0 -55
  829. package/dist/esm/transformers/toggles/emoji.js +0 -45
  830. package/dist/esm/transformers/toggles/guild.js +0 -256
  831. package/dist/esm/transformers/toggles/index.js +0 -11
  832. package/dist/esm/transformers/toggles/member.js +0 -114
  833. package/dist/esm/transformers/toggles/role.js +0 -55
  834. package/dist/esm/transformers/toggles/user.js +0 -45
  835. package/dist/esm/transformers/toggles/voice.js +0 -60
  836. package/dist/esm/transformers/types.js +0 -3
  837. package/dist/esm/transformers/user.js +0 -68
  838. package/dist/esm/transformers/voiceRegion.js +0 -12
  839. package/dist/esm/transformers/voiceState.js +0 -14
  840. package/dist/esm/transformers/webhook.js +0 -27
  841. package/dist/esm/transformers/welcomeScreen.js +0 -14
  842. package/dist/esm/transformers/widget.js +0 -17
  843. package/dist/esm/transformers/widgetSettings.js +0 -9
  844. package/dist/esm/transformers.js +0 -178
  845. package/dist/types/bot.d.ts +0 -82
  846. package/dist/types/bot.d.ts.map +0 -1
  847. package/dist/types/commandOptionsParser.d.ts +0 -26
  848. package/dist/types/commandOptionsParser.d.ts.map +0 -1
  849. package/dist/types/constants.d.ts.map +0 -1
  850. package/dist/types/desiredProperties.d.ts +0 -213
  851. package/dist/types/desiredProperties.d.ts.map +0 -1
  852. package/dist/types/events.d.ts +0 -232
  853. package/dist/types/events.d.ts.map +0 -1
  854. package/dist/types/handlers/channels/CHANNEL_CREATE.d.ts +0 -3
  855. package/dist/types/handlers/channels/CHANNEL_CREATE.d.ts.map +0 -1
  856. package/dist/types/handlers/channels/CHANNEL_DELETE.d.ts.map +0 -1
  857. package/dist/types/handlers/channels/CHANNEL_PINS_UPDATE.d.ts.map +0 -1
  858. package/dist/types/handlers/channels/CHANNEL_UPDATE.d.ts.map +0 -1
  859. package/dist/types/handlers/channels/STAGE_INSTANCE_CREATE.d.ts.map +0 -1
  860. package/dist/types/handlers/channels/STAGE_INSTANCE_DELETE.d.ts.map +0 -1
  861. package/dist/types/handlers/channels/STAGE_INSTANCE_UPDATE.d.ts.map +0 -1
  862. package/dist/types/handlers/channels/THREAD_CREATE.d.ts +0 -4
  863. package/dist/types/handlers/channels/THREAD_CREATE.d.ts.map +0 -1
  864. package/dist/types/handlers/channels/THREAD_DELETE.d.ts +0 -4
  865. package/dist/types/handlers/channels/THREAD_DELETE.d.ts.map +0 -1
  866. package/dist/types/handlers/channels/THREAD_LIST_SYNC.d.ts +0 -4
  867. package/dist/types/handlers/channels/THREAD_LIST_SYNC.d.ts.map +0 -1
  868. package/dist/types/handlers/channels/THREAD_MEMBERS_UPDATE.d.ts +0 -4
  869. package/dist/types/handlers/channels/THREAD_MEMBERS_UPDATE.d.ts.map +0 -1
  870. package/dist/types/handlers/channels/THREAD_MEMBER_UPDATE.d.ts +0 -4
  871. package/dist/types/handlers/channels/THREAD_MEMBER_UPDATE.d.ts.map +0 -1
  872. package/dist/types/handlers/channels/THREAD_UPDATE.d.ts +0 -4
  873. package/dist/types/handlers/channels/THREAD_UPDATE.d.ts.map +0 -1
  874. package/dist/types/handlers/channels/index.d.ts.map +0 -1
  875. package/dist/types/handlers/emojis/GUILD_EMOJIS_UPDATE.d.ts.map +0 -1
  876. package/dist/types/handlers/emojis/index.d.ts.map +0 -1
  877. package/dist/types/handlers/entitlements/ENTITLEMENT_CREATE.d.ts.map +0 -1
  878. package/dist/types/handlers/entitlements/ENTITLEMENT_DELETE.d.ts.map +0 -1
  879. package/dist/types/handlers/entitlements/ENTITLEMENT_UPDATE.d.ts.map +0 -1
  880. package/dist/types/handlers/entitlements/index.d.ts.map +0 -1
  881. package/dist/types/handlers/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.d.ts.map +0 -1
  882. package/dist/types/handlers/guilds/GUILD_BAN_ADD.d.ts.map +0 -1
  883. package/dist/types/handlers/guilds/GUILD_BAN_REMOVE.d.ts.map +0 -1
  884. package/dist/types/handlers/guilds/GUILD_CREATE.d.ts.map +0 -1
  885. package/dist/types/handlers/guilds/GUILD_DELETE.d.ts.map +0 -1
  886. package/dist/types/handlers/guilds/GUILD_INTEGRATIONS_UPDATE.d.ts.map +0 -1
  887. package/dist/types/handlers/guilds/GUILD_STICKERS_UPDATE.d.ts +0 -3
  888. package/dist/types/handlers/guilds/GUILD_STICKERS_UPDATE.d.ts.map +0 -1
  889. package/dist/types/handlers/guilds/GUILD_UPDATE.d.ts.map +0 -1
  890. package/dist/types/handlers/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.d.ts.map +0 -1
  891. package/dist/types/handlers/guilds/automod/AUTO_MODERATION_RULE_CREATE.d.ts.map +0 -1
  892. package/dist/types/handlers/guilds/automod/AUTO_MODERATION_RULE_DELETE.d.ts.map +0 -1
  893. package/dist/types/handlers/guilds/automod/AUTO_MODERATION_RULE_UPDATE.d.ts.map +0 -1
  894. package/dist/types/handlers/guilds/automod/index.d.ts.map +0 -1
  895. package/dist/types/handlers/guilds/index.d.ts.map +0 -1
  896. package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.d.ts.map +0 -1
  897. package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.d.ts.map +0 -1
  898. package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.d.ts.map +0 -1
  899. package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.d.ts.map +0 -1
  900. package/dist/types/handlers/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.d.ts.map +0 -1
  901. package/dist/types/handlers/guilds/scheduledEvents/index.d.ts.map +0 -1
  902. package/dist/types/handlers/index.d.ts.map +0 -1
  903. package/dist/types/handlers/integrations/INTEGRATION_CREATE.d.ts +0 -4
  904. package/dist/types/handlers/integrations/INTEGRATION_CREATE.d.ts.map +0 -1
  905. package/dist/types/handlers/integrations/INTEGRATION_DELETE.d.ts +0 -4
  906. package/dist/types/handlers/integrations/INTEGRATION_DELETE.d.ts.map +0 -1
  907. package/dist/types/handlers/integrations/INTEGRATION_UPDATE.d.ts +0 -4
  908. package/dist/types/handlers/integrations/INTEGRATION_UPDATE.d.ts.map +0 -1
  909. package/dist/types/handlers/integrations/index.d.ts.map +0 -1
  910. package/dist/types/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts +0 -3
  911. package/dist/types/handlers/interactions/APPLICATION_COMMAND_PERMISSIONS_UPDATE.d.ts.map +0 -1
  912. package/dist/types/handlers/interactions/INTERACTION_CREATE.d.ts +0 -4
  913. package/dist/types/handlers/interactions/INTERACTION_CREATE.d.ts.map +0 -1
  914. package/dist/types/handlers/interactions/index.d.ts.map +0 -1
  915. package/dist/types/handlers/invites/INVITE_CREATE.d.ts +0 -4
  916. package/dist/types/handlers/invites/INVITE_CREATE.d.ts.map +0 -1
  917. package/dist/types/handlers/invites/INVITE_DELETE.d.ts +0 -4
  918. package/dist/types/handlers/invites/INVITE_DELETE.d.ts.map +0 -1
  919. package/dist/types/handlers/invites/index.d.ts.map +0 -1
  920. package/dist/types/handlers/members/GUILD_MEMBERS_CHUNK.d.ts +0 -4
  921. package/dist/types/handlers/members/GUILD_MEMBERS_CHUNK.d.ts.map +0 -1
  922. package/dist/types/handlers/members/GUILD_MEMBER_ADD.d.ts +0 -4
  923. package/dist/types/handlers/members/GUILD_MEMBER_ADD.d.ts.map +0 -1
  924. package/dist/types/handlers/members/GUILD_MEMBER_REMOVE.d.ts +0 -4
  925. package/dist/types/handlers/members/GUILD_MEMBER_REMOVE.d.ts.map +0 -1
  926. package/dist/types/handlers/members/GUILD_MEMBER_UPDATE.d.ts +0 -4
  927. package/dist/types/handlers/members/GUILD_MEMBER_UPDATE.d.ts.map +0 -1
  928. package/dist/types/handlers/members/index.d.ts.map +0 -1
  929. package/dist/types/handlers/messages/MESSAGE_CREATE.d.ts +0 -4
  930. package/dist/types/handlers/messages/MESSAGE_CREATE.d.ts.map +0 -1
  931. package/dist/types/handlers/messages/MESSAGE_DELETE.d.ts +0 -4
  932. package/dist/types/handlers/messages/MESSAGE_DELETE.d.ts.map +0 -1
  933. package/dist/types/handlers/messages/MESSAGE_DELETE_BULK.d.ts +0 -4
  934. package/dist/types/handlers/messages/MESSAGE_DELETE_BULK.d.ts.map +0 -1
  935. package/dist/types/handlers/messages/MESSAGE_REACTION_ADD.d.ts +0 -4
  936. package/dist/types/handlers/messages/MESSAGE_REACTION_ADD.d.ts.map +0 -1
  937. package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts +0 -4
  938. package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE.d.ts.map +0 -1
  939. package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts +0 -4
  940. package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE_ALL.d.ts.map +0 -1
  941. package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts +0 -4
  942. package/dist/types/handlers/messages/MESSAGE_REACTION_REMOVE_EMOJI.d.ts.map +0 -1
  943. package/dist/types/handlers/messages/MESSAGE_UPDATE.d.ts +0 -4
  944. package/dist/types/handlers/messages/MESSAGE_UPDATE.d.ts.map +0 -1
  945. package/dist/types/handlers/messages/index.d.ts.map +0 -1
  946. package/dist/types/handlers/misc/PRESENCE_UPDATE.d.ts +0 -4
  947. package/dist/types/handlers/misc/PRESENCE_UPDATE.d.ts.map +0 -1
  948. package/dist/types/handlers/misc/READY.d.ts +0 -4
  949. package/dist/types/handlers/misc/READY.d.ts.map +0 -1
  950. package/dist/types/handlers/misc/TYPING_START.d.ts +0 -4
  951. package/dist/types/handlers/misc/TYPING_START.d.ts.map +0 -1
  952. package/dist/types/handlers/misc/USER_UPDATE.d.ts +0 -4
  953. package/dist/types/handlers/misc/USER_UPDATE.d.ts.map +0 -1
  954. package/dist/types/handlers/misc/index.d.ts +0 -5
  955. package/dist/types/handlers/misc/index.d.ts.map +0 -1
  956. package/dist/types/handlers/poll/MESSAGE_POLL_VOTE_ADD.d.ts +0 -4
  957. package/dist/types/handlers/poll/MESSAGE_POLL_VOTE_ADD.d.ts.map +0 -1
  958. package/dist/types/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts +0 -4
  959. package/dist/types/handlers/poll/MESSAGE_POLL_VOTE_REMOVE.d.ts.map +0 -1
  960. package/dist/types/handlers/poll/index.d.ts.map +0 -1
  961. package/dist/types/handlers/roles/GUILD_ROLE_CREATE.d.ts +0 -4
  962. package/dist/types/handlers/roles/GUILD_ROLE_CREATE.d.ts.map +0 -1
  963. package/dist/types/handlers/roles/GUILD_ROLE_DELETE.d.ts +0 -4
  964. package/dist/types/handlers/roles/GUILD_ROLE_DELETE.d.ts.map +0 -1
  965. package/dist/types/handlers/roles/GUILD_ROLE_UPDATE.d.ts +0 -4
  966. package/dist/types/handlers/roles/GUILD_ROLE_UPDATE.d.ts.map +0 -1
  967. package/dist/types/handlers/roles/index.d.ts.map +0 -1
  968. package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts +0 -4
  969. package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUNDS_UPDATE.d.ts.map +0 -1
  970. package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts +0 -4
  971. package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_CREATE.d.ts.map +0 -1
  972. package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts +0 -4
  973. package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_DELETE.d.ts.map +0 -1
  974. package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts +0 -4
  975. package/dist/types/handlers/soundboard/GUILD_SOUNDBOARD_SOUND_UPDATE.d.ts.map +0 -1
  976. package/dist/types/handlers/soundboard/SOUNDBOARD_SOUNDS.d.ts +0 -4
  977. package/dist/types/handlers/soundboard/SOUNDBOARD_SOUNDS.d.ts.map +0 -1
  978. package/dist/types/handlers/soundboard/index.d.ts.map +0 -1
  979. package/dist/types/handlers/subscriptions/SUBSCRIPTION_CREATE.d.ts.map +0 -1
  980. package/dist/types/handlers/subscriptions/SUBSCRIPTION_DELETE.d.ts.map +0 -1
  981. package/dist/types/handlers/subscriptions/SUBSCRIPTION_UPDATE.d.ts.map +0 -1
  982. package/dist/types/handlers/subscriptions/index.d.ts.map +0 -1
  983. package/dist/types/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts +0 -4
  984. package/dist/types/handlers/voice/VOICE_CHANNEL_EFFECT_SEND.d.ts.map +0 -1
  985. package/dist/types/handlers/voice/VOICE_SERVER_UPDATE.d.ts +0 -4
  986. package/dist/types/handlers/voice/VOICE_SERVER_UPDATE.d.ts.map +0 -1
  987. package/dist/types/handlers/voice/VOICE_STATE_UPDATE.d.ts +0 -4
  988. package/dist/types/handlers/voice/VOICE_STATE_UPDATE.d.ts.map +0 -1
  989. package/dist/types/handlers/voice/index.d.ts.map +0 -1
  990. package/dist/types/handlers/webhooks/WEBHOOKS_UPDATE.d.ts +0 -4
  991. package/dist/types/handlers/webhooks/WEBHOOKS_UPDATE.d.ts.map +0 -1
  992. package/dist/types/handlers/webhooks/index.d.ts.map +0 -1
  993. package/dist/types/handlers.d.ts +0 -5
  994. package/dist/types/handlers.d.ts.map +0 -1
  995. package/dist/types/helpers.d.ts +0 -244
  996. package/dist/types/helpers.d.ts.map +0 -1
  997. package/dist/types/index.d.ts.map +0 -1
  998. package/dist/types/transformers/activity.d.ts +0 -5
  999. package/dist/types/transformers/activity.d.ts.map +0 -1
  1000. package/dist/types/transformers/application.d.ts +0 -6
  1001. package/dist/types/transformers/application.d.ts.map +0 -1
  1002. package/dist/types/transformers/applicationCommand.d.ts +0 -4
  1003. package/dist/types/transformers/applicationCommand.d.ts.map +0 -1
  1004. package/dist/types/transformers/applicationCommandOption.d.ts +0 -4
  1005. package/dist/types/transformers/applicationCommandOption.d.ts.map +0 -1
  1006. package/dist/types/transformers/applicationCommandOptionChoice.d.ts +0 -4
  1007. package/dist/types/transformers/applicationCommandOptionChoice.d.ts.map +0 -1
  1008. package/dist/types/transformers/applicationCommandPermission.d.ts +0 -4
  1009. package/dist/types/transformers/applicationCommandPermission.d.ts.map +0 -1
  1010. package/dist/types/transformers/attachment.d.ts +0 -4
  1011. package/dist/types/transformers/attachment.d.ts.map +0 -1
  1012. package/dist/types/transformers/auditLogEntry.d.ts +0 -4
  1013. package/dist/types/transformers/auditLogEntry.d.ts.map +0 -1
  1014. package/dist/types/transformers/automodActionExecution.d.ts +0 -4
  1015. package/dist/types/transformers/automodActionExecution.d.ts.map +0 -1
  1016. package/dist/types/transformers/automodRule.d.ts +0 -4
  1017. package/dist/types/transformers/automodRule.d.ts.map +0 -1
  1018. package/dist/types/transformers/avatarDecorationData.d.ts +0 -3
  1019. package/dist/types/transformers/avatarDecorationData.d.ts.map +0 -1
  1020. package/dist/types/transformers/channel.d.ts +0 -11
  1021. package/dist/types/transformers/channel.d.ts.map +0 -1
  1022. package/dist/types/transformers/component.d.ts +0 -6
  1023. package/dist/types/transformers/component.d.ts.map +0 -1
  1024. package/dist/types/transformers/embed.d.ts +0 -4
  1025. package/dist/types/transformers/embed.d.ts.map +0 -1
  1026. package/dist/types/transformers/emoji.d.ts +0 -6
  1027. package/dist/types/transformers/emoji.d.ts.map +0 -1
  1028. package/dist/types/transformers/entitlement.d.ts +0 -4
  1029. package/dist/types/transformers/entitlement.d.ts.map +0 -1
  1030. package/dist/types/transformers/gatewayBot.d.ts +0 -4
  1031. package/dist/types/transformers/gatewayBot.d.ts.map +0 -1
  1032. package/dist/types/transformers/guild.d.ts +0 -8
  1033. package/dist/types/transformers/guild.d.ts.map +0 -1
  1034. package/dist/types/transformers/incidentsData.d.ts +0 -4
  1035. package/dist/types/transformers/incidentsData.d.ts.map +0 -1
  1036. package/dist/types/transformers/index.d.ts.map +0 -1
  1037. package/dist/types/transformers/integration.d.ts +0 -4
  1038. package/dist/types/transformers/integration.d.ts.map +0 -1
  1039. package/dist/types/transformers/interaction.d.ts +0 -23
  1040. package/dist/types/transformers/interaction.d.ts.map +0 -1
  1041. package/dist/types/transformers/invite.d.ts +0 -7
  1042. package/dist/types/transformers/invite.d.ts.map +0 -1
  1043. package/dist/types/transformers/lobby.d.ts +0 -5
  1044. package/dist/types/transformers/lobby.d.ts.map +0 -1
  1045. package/dist/types/transformers/member.d.ts +0 -6
  1046. package/dist/types/transformers/member.d.ts.map +0 -1
  1047. package/dist/types/transformers/message.d.ts +0 -15
  1048. package/dist/types/transformers/message.d.ts.map +0 -1
  1049. package/dist/types/transformers/onboarding.d.ts +0 -6
  1050. package/dist/types/transformers/onboarding.d.ts.map +0 -1
  1051. package/dist/types/transformers/poll.d.ts +0 -5
  1052. package/dist/types/transformers/poll.d.ts.map +0 -1
  1053. package/dist/types/transformers/presence.d.ts +0 -4
  1054. package/dist/types/transformers/presence.d.ts.map +0 -1
  1055. package/dist/types/transformers/reverse/activity.d.ts +0 -3
  1056. package/dist/types/transformers/reverse/activity.d.ts.map +0 -1
  1057. package/dist/types/transformers/reverse/allowedMentions.d.ts +0 -3
  1058. package/dist/types/transformers/reverse/allowedMentions.d.ts.map +0 -1
  1059. package/dist/types/transformers/reverse/application.d.ts +0 -3
  1060. package/dist/types/transformers/reverse/application.d.ts.map +0 -1
  1061. package/dist/types/transformers/reverse/applicationCommand.d.ts +0 -3
  1062. package/dist/types/transformers/reverse/applicationCommand.d.ts.map +0 -1
  1063. package/dist/types/transformers/reverse/applicationCommandOption.d.ts +0 -3
  1064. package/dist/types/transformers/reverse/applicationCommandOption.d.ts.map +0 -1
  1065. package/dist/types/transformers/reverse/applicationCommandOptionChoice.d.ts +0 -3
  1066. package/dist/types/transformers/reverse/applicationCommandOptionChoice.d.ts.map +0 -1
  1067. package/dist/types/transformers/reverse/applicationCommandPermission.d.ts +0 -3
  1068. package/dist/types/transformers/reverse/applicationCommandPermission.d.ts.map +0 -1
  1069. package/dist/types/transformers/reverse/attachment.d.ts +0 -3
  1070. package/dist/types/transformers/reverse/attachment.d.ts.map +0 -1
  1071. package/dist/types/transformers/reverse/auditLogEntry.d.ts +0 -4
  1072. package/dist/types/transformers/reverse/auditLogEntry.d.ts.map +0 -1
  1073. package/dist/types/transformers/reverse/component.d.ts +0 -6
  1074. package/dist/types/transformers/reverse/component.d.ts.map +0 -1
  1075. package/dist/types/transformers/reverse/embed.d.ts +0 -4
  1076. package/dist/types/transformers/reverse/embed.d.ts.map +0 -1
  1077. package/dist/types/transformers/reverse/emoji.d.ts +0 -4
  1078. package/dist/types/transformers/reverse/emoji.d.ts.map +0 -1
  1079. package/dist/types/transformers/reverse/gatewayBot.d.ts.map +0 -1
  1080. package/dist/types/transformers/reverse/index.d.ts.map +0 -1
  1081. package/dist/types/transformers/reverse/member.d.ts.map +0 -1
  1082. package/dist/types/transformers/reverse/presence.d.ts +0 -10
  1083. package/dist/types/transformers/reverse/presence.d.ts.map +0 -1
  1084. package/dist/types/transformers/reverse/team.d.ts +0 -4
  1085. package/dist/types/transformers/reverse/team.d.ts.map +0 -1
  1086. package/dist/types/transformers/reverse/widgetSettings.d.ts +0 -4
  1087. package/dist/types/transformers/reverse/widgetSettings.d.ts.map +0 -1
  1088. package/dist/types/transformers/role.d.ts +0 -9
  1089. package/dist/types/transformers/role.d.ts.map +0 -1
  1090. package/dist/types/transformers/scheduledEvent.d.ts +0 -5
  1091. package/dist/types/transformers/scheduledEvent.d.ts.map +0 -1
  1092. package/dist/types/transformers/sku.d.ts +0 -4
  1093. package/dist/types/transformers/sku.d.ts.map +0 -1
  1094. package/dist/types/transformers/soundboardSound.d.ts +0 -4
  1095. package/dist/types/transformers/soundboardSound.d.ts.map +0 -1
  1096. package/dist/types/transformers/stageInstance.d.ts +0 -4
  1097. package/dist/types/transformers/stageInstance.d.ts.map +0 -1
  1098. package/dist/types/transformers/stageInviteInstance.d.ts +0 -6
  1099. package/dist/types/transformers/stageInviteInstance.d.ts.map +0 -1
  1100. package/dist/types/transformers/sticker.d.ts +0 -5
  1101. package/dist/types/transformers/sticker.d.ts.map +0 -1
  1102. package/dist/types/transformers/subscription.d.ts +0 -4
  1103. package/dist/types/transformers/subscription.d.ts.map +0 -1
  1104. package/dist/types/transformers/team.d.ts +0 -4
  1105. package/dist/types/transformers/team.d.ts.map +0 -1
  1106. package/dist/types/transformers/template.d.ts +0 -4
  1107. package/dist/types/transformers/template.d.ts.map +0 -1
  1108. package/dist/types/transformers/threadMember.d.ts +0 -14
  1109. package/dist/types/transformers/threadMember.d.ts.map +0 -1
  1110. package/dist/types/transformers/toggles/Permissions.d.ts.map +0 -1
  1111. package/dist/types/transformers/toggles/ToggleBitfield.d.ts.map +0 -1
  1112. package/dist/types/transformers/toggles/channel.d.ts +0 -36
  1113. package/dist/types/transformers/toggles/channel.d.ts.map +0 -1
  1114. package/dist/types/transformers/toggles/emoji.d.ts +0 -29
  1115. package/dist/types/transformers/toggles/emoji.d.ts.map +0 -1
  1116. package/dist/types/transformers/toggles/guild.d.ts +0 -165
  1117. package/dist/types/transformers/toggles/guild.d.ts.map +0 -1
  1118. package/dist/types/transformers/toggles/index.d.ts.map +0 -1
  1119. package/dist/types/transformers/toggles/member.d.ts +0 -69
  1120. package/dist/types/transformers/toggles/member.d.ts.map +0 -1
  1121. package/dist/types/transformers/toggles/role.d.ts +0 -37
  1122. package/dist/types/transformers/toggles/role.d.ts.map +0 -1
  1123. package/dist/types/transformers/toggles/user.d.ts +0 -29
  1124. package/dist/types/transformers/toggles/user.d.ts.map +0 -1
  1125. package/dist/types/transformers/toggles/voice.d.ts +0 -41
  1126. package/dist/types/transformers/toggles/voice.d.ts.map +0 -1
  1127. package/dist/types/transformers/types.d.ts +0 -1758
  1128. package/dist/types/transformers/types.d.ts.map +0 -1
  1129. package/dist/types/transformers/user.d.ts +0 -8
  1130. package/dist/types/transformers/user.d.ts.map +0 -1
  1131. package/dist/types/transformers/voiceRegion.d.ts +0 -4
  1132. package/dist/types/transformers/voiceRegion.d.ts.map +0 -1
  1133. package/dist/types/transformers/voiceState.d.ts +0 -7
  1134. package/dist/types/transformers/voiceState.d.ts.map +0 -1
  1135. package/dist/types/transformers/webhook.d.ts +0 -4
  1136. package/dist/types/transformers/webhook.d.ts.map +0 -1
  1137. package/dist/types/transformers/welcomeScreen.d.ts +0 -4
  1138. package/dist/types/transformers/welcomeScreen.d.ts.map +0 -1
  1139. package/dist/types/transformers/widget.d.ts +0 -4
  1140. package/dist/types/transformers/widget.d.ts.map +0 -1
  1141. package/dist/types/transformers/widgetSettings.d.ts +0 -4
  1142. package/dist/types/transformers/widgetSettings.d.ts.map +0 -1
  1143. package/dist/types/transformers.d.ts +0 -218
  1144. package/dist/types/transformers.d.ts.map +0 -1
  1145. /package/dist/{types/constants.d.ts → constants.d.ts} +0 -0
  1146. /package/dist/{types/handlers → handlers}/channels/CHANNEL_DELETE.d.ts +0 -0
  1147. /package/dist/{types/handlers → handlers}/channels/CHANNEL_PINS_UPDATE.d.ts +0 -0
  1148. /package/dist/{types/handlers → handlers}/channels/CHANNEL_UPDATE.d.ts +0 -0
  1149. /package/dist/{types/handlers → handlers}/channels/STAGE_INSTANCE_CREATE.d.ts +0 -0
  1150. /package/dist/{types/handlers → handlers}/channels/STAGE_INSTANCE_DELETE.d.ts +0 -0
  1151. /package/dist/{types/handlers → handlers}/channels/STAGE_INSTANCE_UPDATE.d.ts +0 -0
  1152. /package/dist/{types/handlers → handlers}/channels/index.d.ts +0 -0
  1153. /package/dist/{types/handlers → handlers}/emojis/GUILD_EMOJIS_UPDATE.d.ts +0 -0
  1154. /package/dist/{types/handlers → handlers}/emojis/index.d.ts +0 -0
  1155. /package/dist/{types/handlers → handlers}/entitlements/ENTITLEMENT_CREATE.d.ts +0 -0
  1156. /package/dist/{types/handlers → handlers}/entitlements/ENTITLEMENT_DELETE.d.ts +0 -0
  1157. /package/dist/{types/handlers → handlers}/entitlements/ENTITLEMENT_UPDATE.d.ts +0 -0
  1158. /package/dist/{types/handlers → handlers}/entitlements/index.d.ts +0 -0
  1159. /package/dist/{types/handlers → handlers}/guilds/GUILD_AUDIT_LOG_ENTRY_CREATE.d.ts +0 -0
  1160. /package/dist/{types/handlers → handlers}/guilds/GUILD_BAN_ADD.d.ts +0 -0
  1161. /package/dist/{types/handlers → handlers}/guilds/GUILD_BAN_REMOVE.d.ts +0 -0
  1162. /package/dist/{types/handlers → handlers}/guilds/GUILD_CREATE.d.ts +0 -0
  1163. /package/dist/{types/handlers → handlers}/guilds/GUILD_DELETE.d.ts +0 -0
  1164. /package/dist/{types/handlers → handlers}/guilds/GUILD_INTEGRATIONS_UPDATE.d.ts +0 -0
  1165. /package/dist/{types/handlers → handlers}/guilds/GUILD_UPDATE.d.ts +0 -0
  1166. /package/dist/{types/handlers → handlers}/guilds/automod/AUTO_MODERATION_ACTION_EXECUTION.d.ts +0 -0
  1167. /package/dist/{types/handlers → handlers}/guilds/automod/AUTO_MODERATION_RULE_CREATE.d.ts +0 -0
  1168. /package/dist/{types/handlers → handlers}/guilds/automod/AUTO_MODERATION_RULE_DELETE.d.ts +0 -0
  1169. /package/dist/{types/handlers → handlers}/guilds/automod/AUTO_MODERATION_RULE_UPDATE.d.ts +0 -0
  1170. /package/dist/{types/handlers → handlers}/guilds/automod/index.d.ts +0 -0
  1171. /package/dist/{types/handlers → handlers}/guilds/index.d.ts +0 -0
  1172. /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_CREATE.d.ts +0 -0
  1173. /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_DELETE.d.ts +0 -0
  1174. /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_UPDATE.d.ts +0 -0
  1175. /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_ADD.d.ts +0 -0
  1176. /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/GUILD_SCHEDULED_EVENT_USER_REMOVE.d.ts +0 -0
  1177. /package/dist/{types/handlers → handlers}/guilds/scheduledEvents/index.d.ts +0 -0
  1178. /package/dist/{types/handlers → handlers}/index.d.ts +0 -0
  1179. /package/dist/{types/handlers → handlers}/integrations/index.d.ts +0 -0
  1180. /package/dist/{types/handlers → handlers}/interactions/index.d.ts +0 -0
  1181. /package/dist/{types/handlers → handlers}/invites/index.d.ts +0 -0
  1182. /package/dist/{types/handlers → handlers}/members/index.d.ts +0 -0
  1183. /package/dist/{types/handlers → handlers}/messages/index.d.ts +0 -0
  1184. /package/dist/{types/handlers → handlers}/poll/index.d.ts +0 -0
  1185. /package/dist/{types/handlers → handlers}/roles/index.d.ts +0 -0
  1186. /package/dist/{types/handlers → handlers}/soundboard/index.d.ts +0 -0
  1187. /package/dist/{types/handlers → handlers}/subscriptions/SUBSCRIPTION_CREATE.d.ts +0 -0
  1188. /package/dist/{types/handlers → handlers}/subscriptions/SUBSCRIPTION_DELETE.d.ts +0 -0
  1189. /package/dist/{types/handlers → handlers}/subscriptions/SUBSCRIPTION_UPDATE.d.ts +0 -0
  1190. /package/dist/{types/handlers → handlers}/subscriptions/index.d.ts +0 -0
  1191. /package/dist/{types/handlers → handlers}/voice/index.d.ts +0 -0
  1192. /package/dist/{types/handlers → handlers}/webhooks/index.d.ts +0 -0
  1193. /package/dist/{types/index.d.ts → index.d.ts} +0 -0
  1194. /package/dist/{types/transformers → transformers}/index.d.ts +0 -0
  1195. /package/dist/{types/transformers → transformers}/reverse/gatewayBot.d.ts +0 -0
  1196. /package/dist/{types/transformers → transformers}/reverse/index.d.ts +0 -0
  1197. /package/dist/{types/transformers → transformers}/reverse/member.d.ts +0 -0
  1198. /package/dist/{types/transformers → transformers}/toggles/Permissions.d.ts +0 -0
  1199. /package/dist/{types/transformers → transformers}/toggles/ToggleBitfield.d.ts +0 -0
  1200. /package/dist/{types/transformers → transformers}/toggles/index.d.ts +0 -0
@@ -0,0 +1,411 @@
1
+ import { MessageComponentTypes } from '@discordeno/types';
2
+ import { callCustomizer } from '../transformers.js';
3
+ import { ToggleBitfield } from './toggles/ToggleBitfield.js';
4
+ export function transformComponent(bot, payload, extra) {
5
+ let component;
6
+ // There's nothing to do with a component without a type, as it means an issue on Discord, so we just throw an error
7
+ if (!payload.type) {
8
+ throw new Error(`[Discordeno] Received a component payload without a type in the component transformer.`);
9
+ }
10
+ // This switch is exhaustive, so we dont need the default case and TS does not error out for the un-initialized component variable
11
+ switch(payload.type){
12
+ case MessageComponentTypes.ActionRow:
13
+ component = transformActionRow(bot, payload);
14
+ break;
15
+ case MessageComponentTypes.Button:
16
+ component = transformButtonComponent(bot, payload);
17
+ break;
18
+ case MessageComponentTypes.Container:
19
+ component = transformContainerComponent(bot, payload);
20
+ break;
21
+ case MessageComponentTypes.TextInput:
22
+ component = transformInputTextComponent(bot, payload);
23
+ break;
24
+ case MessageComponentTypes.StringSelect:
25
+ component = transformStringSelectMenuComponent(bot, payload);
26
+ break;
27
+ case MessageComponentTypes.UserSelect:
28
+ component = transformUserSelectMenuComponent(bot, payload);
29
+ break;
30
+ case MessageComponentTypes.RoleSelect:
31
+ component = transformRoleSelectMenuComponent(bot, payload);
32
+ break;
33
+ case MessageComponentTypes.MentionableSelect:
34
+ component = transformMentionableSelectMenuComponent(bot, payload);
35
+ break;
36
+ case MessageComponentTypes.ChannelSelect:
37
+ component = transformChannelSelectMenuComponent(bot, payload);
38
+ break;
39
+ case MessageComponentTypes.Section:
40
+ component = transformSectionComponent(bot, payload);
41
+ break;
42
+ case MessageComponentTypes.Thumbnail:
43
+ component = transformThumbnailComponent(bot, payload);
44
+ break;
45
+ case MessageComponentTypes.MediaGallery:
46
+ component = transformMediaGalleryComponent(bot, payload);
47
+ break;
48
+ case MessageComponentTypes.File:
49
+ component = transformFileComponent(bot, payload);
50
+ break;
51
+ case MessageComponentTypes.Separator:
52
+ component = transformSeparatorComponent(bot, payload);
53
+ break;
54
+ case MessageComponentTypes.TextDisplay:
55
+ component = transformTextDisplayComponent(bot, payload);
56
+ break;
57
+ case MessageComponentTypes.Label:
58
+ component = transformLabelComponent(bot, payload);
59
+ break;
60
+ case MessageComponentTypes.FileUpload:
61
+ component = transformFileUploadComponent(bot, payload);
62
+ break;
63
+ case MessageComponentTypes.RadioGroup:
64
+ component = transformRadioGroupComponent(bot, payload);
65
+ break;
66
+ case MessageComponentTypes.CheckboxGroup:
67
+ component = transformCheckboxGroupComponent(bot, payload);
68
+ break;
69
+ case MessageComponentTypes.Checkbox:
70
+ component = transformCheckboxComponent(bot, payload);
71
+ break;
72
+ }
73
+ return callCustomizer('component', bot, payload, component, {
74
+ partial: extra?.partial ?? false
75
+ });
76
+ }
77
+ export function transformUnfurledMediaItem(bot, payload, extra) {
78
+ const props = bot.transformers.desiredProperties.unfurledMediaItem;
79
+ const mediaItem = {};
80
+ if (props.url && payload.url) mediaItem.url = payload.url;
81
+ if (props.proxyUrl && payload.proxy_url) mediaItem.proxyUrl = payload.proxy_url;
82
+ if (props.height && payload.height) mediaItem.height = payload.height;
83
+ if (props.width && payload.width) mediaItem.width = payload.width;
84
+ if (props.placeholder && payload.placeholder) mediaItem.placeholder = payload.placeholder;
85
+ if (props.placeholderVersion && payload.placeholder_version) mediaItem.placeholderVersion = payload.placeholder_version;
86
+ if (props.contentType && payload.content_type) mediaItem.contentType = payload.content_type;
87
+ if (props.flags && payload.flags) mediaItem.flags = new ToggleBitfield(payload.flags);
88
+ if (props.attachmentId && payload.attachment_id) mediaItem.attachmentId = bot.transformers.snowflake(payload.attachment_id);
89
+ return callCustomizer('unfurledMediaItem', bot, payload, mediaItem, {
90
+ partial: extra?.partial ?? false
91
+ });
92
+ }
93
+ export function transformMediaGalleryItem(bot, payload, extra) {
94
+ const props = bot.transformers.desiredProperties.mediaGalleryItem;
95
+ const galleryItem = {};
96
+ if (props.media && payload.media) galleryItem.media = bot.transformers.unfurledMediaItem(bot, payload.media);
97
+ if (props.description && payload.description) galleryItem.description = payload.description;
98
+ if (props.spoiler && payload.spoiler) galleryItem.spoiler = payload.spoiler;
99
+ return callCustomizer('mediaGalleryItem', bot, payload, galleryItem, {
100
+ partial: extra?.partial ?? false
101
+ });
102
+ }
103
+ function transformActionRow(bot, payload) {
104
+ const props = bot.transformers.desiredProperties.component;
105
+ const actionRow = {};
106
+ if (props.type && payload.type) actionRow.type = payload.type;
107
+ if (props.id && payload.id) actionRow.id = payload.id;
108
+ if (props.components && payload.components) actionRow.components = payload.components.map((component)=>bot.transformers.component(bot, component));
109
+ return actionRow;
110
+ }
111
+ function transformContainerComponent(bot, payload) {
112
+ const props = bot.transformers.desiredProperties.component;
113
+ const container = {};
114
+ if (props.type && payload.type) container.type = payload.type;
115
+ if (props.id && payload.id) container.id = payload.id;
116
+ if (props.accentColor && payload.accent_color) container.accentColor = payload.accent_color;
117
+ if (props.spoiler && payload.spoiler) container.spoiler = payload.spoiler;
118
+ if (props.components && payload.components) container.components = payload.components.map((component)=>bot.transformers.component(bot, component));
119
+ return container;
120
+ }
121
+ function transformButtonComponent(bot, payload) {
122
+ const props = bot.transformers.desiredProperties.component;
123
+ const button = {};
124
+ if (props.type && payload.type) button.type = payload.type;
125
+ if (props.id && payload.id) button.id = payload.id;
126
+ if (props.label && payload.label) button.label = payload.label;
127
+ if (props.customId && payload.custom_id) button.customId = payload.custom_id;
128
+ if (props.style && payload.style) button.style = payload.style;
129
+ if (props.emoji && payload.emoji) button.emoji = bot.transformers.emoji(bot, payload.emoji, {
130
+ partial: true
131
+ });
132
+ if (props.url && payload.url) button.url = payload.url;
133
+ if (props.disabled && payload.disabled) button.disabled = payload.disabled;
134
+ if (props.skuId && payload.sku_id) button.skuId = bot.transformers.snowflake(payload.sku_id);
135
+ return button;
136
+ }
137
+ function transformInputTextComponent(bot, payload) {
138
+ const props = bot.transformers.desiredProperties.component;
139
+ const input = {};
140
+ if (props.type && payload.type) input.type = payload.type;
141
+ if (props.id && payload.id) input.id = payload.id;
142
+ if (props.value && payload.value) input.value = payload.value;
143
+ if (props.customId && payload.custom_id) input.customId = payload.custom_id;
144
+ // We assume that if we find 'values' it is the interaction response
145
+ if ('style' in payload) {
146
+ if (props.style && payload.style) input.style = payload.style;
147
+ if (props.required && payload.required) input.required = payload.required;
148
+ if (props.label && payload.label) input.label = payload.label;
149
+ if (props.placeholder && payload.placeholder) input.placeholder = payload.placeholder;
150
+ if (props.minLength && payload.min_length) input.minLength = payload.min_length;
151
+ if (props.maxLength && payload.max_length) input.maxLength = payload.max_length;
152
+ }
153
+ return input;
154
+ }
155
+ function transformStringSelectMenuComponent(bot, payload) {
156
+ const props = bot.transformers.desiredProperties.component;
157
+ const select = {};
158
+ if (props.type && payload.type) select.type = payload.type;
159
+ if (props.id && payload.id) select.id = payload.id;
160
+ if (props.customId && payload.custom_id) select.customId = payload.custom_id;
161
+ // We assume that if we find 'values' it is the interaction response
162
+ if ('values' in payload) {
163
+ if (props.values && payload.values) select.values = payload.values;
164
+ } else {
165
+ const _payload = payload;
166
+ if (props.placeholder && _payload.placeholder) select.placeholder = _payload.placeholder;
167
+ if (props.minValues && _payload.min_values) select.minValues = _payload.min_values;
168
+ if (props.maxValues && _payload.max_values) select.maxValues = _payload.max_values;
169
+ if (props.options && _payload.options) select.options = _payload.options.map((option)=>({
170
+ label: option.label,
171
+ value: option.value,
172
+ description: option.description,
173
+ emoji: option.emoji ? {
174
+ id: option.emoji.id ? bot.transformers.snowflake(option.emoji.id) : undefined,
175
+ name: option.emoji.name ?? undefined,
176
+ animated: option.emoji.animated
177
+ } : undefined,
178
+ default: option.default
179
+ }));
180
+ if (props.disabled && _payload.disabled) select.disabled = _payload.disabled;
181
+ }
182
+ return select;
183
+ }
184
+ function transformUserSelectMenuComponent(bot, payload) {
185
+ const props = bot.transformers.desiredProperties.component;
186
+ const select = {};
187
+ if (props.type && payload.type) select.type = payload.type;
188
+ if (props.id && payload.id) select.id = payload.id;
189
+ if (props.customId && payload.custom_id) select.customId = payload.custom_id;
190
+ // We assume that if we find 'values' it is the interaction response
191
+ if ('values' in payload) {
192
+ if (props.values && payload.values) select.values = payload.values;
193
+ if (props.resolved && payload.resolved) select.resolved = bot.transformers.interactionDataResolved(bot, payload.resolved);
194
+ } else {
195
+ const _payload = payload;
196
+ if (props.placeholder && _payload.placeholder) select.placeholder = _payload.placeholder;
197
+ if (props.minValues && _payload.min_values) select.minValues = _payload.min_values;
198
+ if (props.maxValues && _payload.max_values) select.maxValues = _payload.max_values;
199
+ if (props.defaultValues && _payload.default_values) select.defaultValues = _payload.default_values.map((defaultValue)=>({
200
+ id: bot.transformers.snowflake(defaultValue.id),
201
+ type: defaultValue.type
202
+ }));
203
+ if (props.disabled && _payload.disabled) select.disabled = _payload.disabled;
204
+ }
205
+ return select;
206
+ }
207
+ function transformRoleSelectMenuComponent(bot, payload) {
208
+ const props = bot.transformers.desiredProperties.component;
209
+ const select = {};
210
+ if (props.type && payload.type) select.type = payload.type;
211
+ if (props.id && payload.id) select.id = payload.id;
212
+ if (props.customId && payload.custom_id) select.customId = payload.custom_id;
213
+ // We assume that if we find 'values' it is the interaction response
214
+ if ('values' in payload) {
215
+ if (props.values && payload.values) select.values = payload.values;
216
+ if (props.resolved && payload.resolved) select.resolved = bot.transformers.interactionDataResolved(bot, payload.resolved);
217
+ } else {
218
+ const _payload = payload;
219
+ if (props.placeholder && _payload.placeholder) select.placeholder = _payload.placeholder;
220
+ if (props.minValues && _payload.min_values) select.minValues = _payload.min_values;
221
+ if (props.maxValues && _payload.max_values) select.maxValues = _payload.max_values;
222
+ if (props.defaultValues && _payload.default_values) select.defaultValues = _payload.default_values.map((defaultValue)=>({
223
+ id: bot.transformers.snowflake(defaultValue.id),
224
+ type: defaultValue.type
225
+ }));
226
+ if (props.disabled && _payload.disabled) select.disabled = _payload.disabled;
227
+ }
228
+ return select;
229
+ }
230
+ function transformMentionableSelectMenuComponent(bot, payload) {
231
+ const props = bot.transformers.desiredProperties.component;
232
+ const select = {};
233
+ if (props.type && payload.type) select.type = payload.type;
234
+ if (props.id && payload.id) select.id = payload.id;
235
+ if (props.customId && payload.custom_id) select.customId = payload.custom_id;
236
+ // We assume that if we find 'values' it is the interaction response
237
+ if ('values' in payload) {
238
+ if (props.values && payload.values) select.values = payload.values;
239
+ if (props.resolved && payload.resolved) select.resolved = bot.transformers.interactionDataResolved(bot, payload.resolved);
240
+ } else {
241
+ const _payload = payload;
242
+ if (props.placeholder && _payload.placeholder) select.placeholder = _payload.placeholder;
243
+ if (props.minValues && _payload.min_values) select.minValues = _payload.min_values;
244
+ if (props.maxValues && _payload.max_values) select.maxValues = _payload.max_values;
245
+ if (props.defaultValues && _payload.default_values) select.defaultValues = _payload.default_values.map((defaultValue)=>({
246
+ id: bot.transformers.snowflake(defaultValue.id),
247
+ type: defaultValue.type
248
+ }));
249
+ if (props.disabled && _payload.disabled) select.disabled = _payload.disabled;
250
+ }
251
+ return select;
252
+ }
253
+ function transformChannelSelectMenuComponent(bot, payload) {
254
+ const props = bot.transformers.desiredProperties.component;
255
+ const select = {};
256
+ if (props.type && payload.type) select.type = payload.type;
257
+ if (props.id && payload.id) select.id = payload.id;
258
+ if (props.customId && payload.custom_id) select.customId = payload.custom_id;
259
+ // We assume that if we find 'values' it is the interaction response
260
+ if ('values' in payload) {
261
+ if (props.values && payload.values) select.values = payload.values;
262
+ if (props.resolved && payload.resolved) select.resolved = bot.transformers.interactionDataResolved(bot, payload.resolved);
263
+ } else {
264
+ const _payload = payload;
265
+ if (props.placeholder && _payload.placeholder) select.placeholder = _payload.placeholder;
266
+ if (props.minValues && _payload.min_values) select.minValues = _payload.min_values;
267
+ if (props.maxValues && _payload.max_values) select.maxValues = _payload.max_values;
268
+ if (props.defaultValues && _payload.default_values) select.defaultValues = _payload.default_values.map((defaultValue)=>({
269
+ id: bot.transformers.snowflake(defaultValue.id),
270
+ type: defaultValue.type
271
+ }));
272
+ if (props.channelTypes && _payload.channel_types) select.channelTypes = _payload.channel_types;
273
+ if (props.disabled && _payload.disabled) select.disabled = _payload.disabled;
274
+ }
275
+ return select;
276
+ }
277
+ function transformSectionComponent(bot, payload) {
278
+ const props = bot.transformers.desiredProperties.component;
279
+ const section = {};
280
+ if (props.type && payload.type) section.type = payload.type;
281
+ if (props.id && payload.id) section.id = payload.id;
282
+ if (props.components && payload.components) section.components = payload.components.map((component)=>bot.transformers.component(bot, component));
283
+ if (props.accessory && payload.accessory) section.accessory = bot.transformers.component(bot, payload.accessory);
284
+ return section;
285
+ }
286
+ function transformThumbnailComponent(bot, payload) {
287
+ const props = bot.transformers.desiredProperties.component;
288
+ const thumbnail = {};
289
+ if (props.type && payload.type) thumbnail.type = payload.type;
290
+ if (props.id && payload.id) thumbnail.id = payload.id;
291
+ if (props.media && payload.media) thumbnail.media = bot.transformers.unfurledMediaItem(bot, payload.media);
292
+ if (props.description && payload.description) thumbnail.description = payload.description;
293
+ if (props.spoiler && payload.spoiler) thumbnail.spoiler = payload.spoiler;
294
+ return thumbnail;
295
+ }
296
+ function transformMediaGalleryComponent(bot, payload) {
297
+ const props = bot.transformers.desiredProperties.component;
298
+ const mediaGallery = {};
299
+ if (props.type && payload.type) mediaGallery.type = payload.type;
300
+ if (props.id && payload.id) mediaGallery.id = payload.id;
301
+ if (props.items && payload.items) mediaGallery.items = payload.items.map((item)=>bot.transformers.mediaGalleryItem(bot, item));
302
+ return mediaGallery;
303
+ }
304
+ function transformFileComponent(bot, payload) {
305
+ const props = bot.transformers.desiredProperties.component;
306
+ const file = {};
307
+ if (props.type && payload.type) file.type = payload.type;
308
+ if (props.id && payload.id) file.id = payload.id;
309
+ if (props.file && payload.file) file.file = bot.transformers.unfurledMediaItem(bot, payload.file);
310
+ if (props.spoiler && payload.spoiler) file.spoiler = payload.spoiler;
311
+ if (props.name && payload.name) file.name = payload.name;
312
+ if (props.size && payload.size) file.size = payload.size;
313
+ return file;
314
+ }
315
+ function transformTextDisplayComponent(bot, payload) {
316
+ const props = bot.transformers.desiredProperties.component;
317
+ const textDisplay = {};
318
+ if (props.type && payload.type) textDisplay.type = payload.type;
319
+ if (props.id && payload.id) textDisplay.id = payload.id;
320
+ // We assume that if we find 'content' it is the component
321
+ if ('content' in payload) {
322
+ if (props.content && payload.content) textDisplay.content = payload.content;
323
+ }
324
+ return textDisplay;
325
+ }
326
+ function transformSeparatorComponent(bot, payload) {
327
+ const props = bot.transformers.desiredProperties.component;
328
+ const separator = {};
329
+ if (props.type && payload.type) separator.type = payload.type;
330
+ if (props.id && payload.id) separator.id = payload.id;
331
+ if (props.divider && payload.divider) separator.divider = payload.divider;
332
+ if (props.spacing && payload.spacing) separator.spacing = payload.spacing;
333
+ return separator;
334
+ }
335
+ function transformLabelComponent(bot, payload) {
336
+ const props = bot.transformers.desiredProperties.component;
337
+ const label = {};
338
+ if (props.type && payload.type) label.type = payload.type;
339
+ if (props.id && payload.id) label.id = payload.id;
340
+ // We assume that if we find 'label' it is the component
341
+ if ('label' in payload) {
342
+ if (props.label && payload.label) label.label = payload.label;
343
+ if (props.description && payload.description) label.description = payload.description;
344
+ }
345
+ if (props.component && payload.component) label.component = bot.transformers.component(bot, payload.component);
346
+ return label;
347
+ }
348
+ function transformFileUploadComponent(bot, payload) {
349
+ const props = bot.transformers.desiredProperties.component;
350
+ const fileUpload = {};
351
+ if (props.type && payload.type) fileUpload.type = payload.type;
352
+ if (props.id && payload.id) fileUpload.id = payload.id;
353
+ if (props.customId && payload.custom_id) fileUpload.customId = payload.custom_id;
354
+ // We assume that if we find 'values' it is the interaction response
355
+ if ('values' in payload) {
356
+ if (props.values && payload.values) fileUpload.values = payload.values;
357
+ } else {
358
+ const _payload = payload;
359
+ if (props.minValues && _payload.min_values) fileUpload.minValues = _payload.min_values;
360
+ if (props.maxValues && _payload.max_values) fileUpload.maxValues = _payload.max_values;
361
+ if (props.required && _payload.required) fileUpload.required = _payload.required;
362
+ if (props.fileTypes && _payload.file_types) fileUpload.fileTypes = _payload.file_types;
363
+ }
364
+ return fileUpload;
365
+ }
366
+ function transformRadioGroupComponent(bot, payload) {
367
+ const props = bot.transformers.desiredProperties.component;
368
+ const radioGroup = {};
369
+ if (props.type && payload.type) radioGroup.type = payload.type;
370
+ if (props.id && payload.id) radioGroup.id = payload.id;
371
+ if (props.customId && payload.custom_id) radioGroup.customId = payload.custom_id;
372
+ // We assume that if we find 'options' it is the component
373
+ if ('options' in payload) {
374
+ if (props.options && payload.options) radioGroup.options = payload.options;
375
+ if (props.required && payload.required !== undefined) radioGroup.required = payload.required;
376
+ } else {
377
+ const _payload = payload;
378
+ if (props.value) radioGroup.value = _payload.value ?? undefined;
379
+ }
380
+ return radioGroup;
381
+ }
382
+ function transformCheckboxGroupComponent(bot, payload) {
383
+ const props = bot.transformers.desiredProperties.component;
384
+ const checkboxGroup = {};
385
+ if (props.type && payload.type) checkboxGroup.type = payload.type;
386
+ if (props.id && payload.id) checkboxGroup.id = payload.id;
387
+ if (props.customId && payload.custom_id) checkboxGroup.customId = payload.custom_id;
388
+ // We assume that if we find 'options' it is the component
389
+ if ('options' in payload) {
390
+ if (props.options && payload.options) checkboxGroup.options = payload.options;
391
+ if (props.minValues && payload.min_values !== undefined) checkboxGroup.minValues = payload.min_values;
392
+ if (props.maxValues && payload.max_values !== undefined) checkboxGroup.maxValues = payload.max_values;
393
+ if (props.required && payload.required !== undefined) checkboxGroup.required = payload.required;
394
+ } else {
395
+ const _payload = payload;
396
+ if (props.values && _payload.values) checkboxGroup.values = _payload.values;
397
+ }
398
+ return checkboxGroup;
399
+ }
400
+ function transformCheckboxComponent(bot, payload) {
401
+ const props = bot.transformers.desiredProperties.component;
402
+ const checkbox = {};
403
+ if (props.type && payload.type) checkbox.type = payload.type;
404
+ if (props.id && payload.id) checkbox.id = payload.id;
405
+ if (props.customId && payload.custom_id) checkbox.customId = payload.custom_id;
406
+ if (props.value && 'value' in payload) checkbox.value = payload.value;
407
+ if (props.default && 'default' in payload) checkbox.default = payload.default;
408
+ return checkbox;
409
+ }
410
+
411
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgRGlzY29yZEFjdGlvblJvdyxcbiAgdHlwZSBEaXNjb3JkQnV0dG9uQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRDaGFubmVsU2VsZWN0Q29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRDaGFubmVsU2VsZWN0SW50ZXJhY3Rpb25SZXNwb25zZUZyb21Nb2RhbCxcbiAgdHlwZSBEaXNjb3JkQ2hlY2tib3hDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZENoZWNrYm94R3JvdXBDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZENoZWNrYm94R3JvdXBJbnRlcmFjdGlvblJlc3BvbnNlLFxuICB0eXBlIERpc2NvcmRDaGVja2JveEludGVyYWN0aW9uUmVzcG9uc2UsXG4gIHR5cGUgRGlzY29yZENvbnRhaW5lckNvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkRmlsZUNvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkRmlsZVVwbG9hZENvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkRmlsZVVwbG9hZEludGVyYWN0aW9uUmVzcG9uc2UsXG4gIHR5cGUgRGlzY29yZExhYmVsQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRMYWJlbEludGVyYWN0aW9uUmVzcG9uc2UsXG4gIHR5cGUgRGlzY29yZE1lZGlhR2FsbGVyeUNvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkTWVkaWFHYWxsZXJ5SXRlbSxcbiAgdHlwZSBEaXNjb3JkTWVudGlvbmFibGVTZWxlY3RDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZE1lbnRpb25hYmxlU2VsZWN0SW50ZXJhY3Rpb25SZXNwb25zZUZyb21Nb2RhbCxcbiAgdHlwZSBEaXNjb3JkTWVzc2FnZUNvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkTWVzc2FnZUNvbXBvbmVudEZyb21Nb2RhbEludGVyYWN0aW9uUmVzcG9uc2UsXG4gIHR5cGUgRGlzY29yZFJhZGlvR3JvdXBDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZFJhZGlvR3JvdXBJbnRlcmFjdGlvblJlc3BvbnNlLFxuICB0eXBlIERpc2NvcmRSb2xlU2VsZWN0Q29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRSb2xlU2VsZWN0SW50ZXJhY3Rpb25SZXNwb25zZUZyb21Nb2RhbCxcbiAgdHlwZSBEaXNjb3JkU2VjdGlvbkNvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkU2VwYXJhdG9yQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRTdHJpbmdTZWxlY3RDb21wb25lbnQsXG4gIHR5cGUgRGlzY29yZFN0cmluZ1NlbGVjdEludGVyYWN0aW9uUmVzcG9uc2VGcm9tTW9kYWwsXG4gIHR5cGUgRGlzY29yZFRleHREaXNwbGF5Q29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRUZXh0RGlzcGxheUludGVyYWN0aW9uUmVzcG9uc2UsXG4gIHR5cGUgRGlzY29yZFRleHRJbnB1dENvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkVGV4dElucHV0SW50ZXJhY3Rpb25SZXNwb25zZSxcbiAgdHlwZSBEaXNjb3JkVGh1bWJuYWlsQ29tcG9uZW50LFxuICB0eXBlIERpc2NvcmRVbmZ1cmxlZE1lZGlhSXRlbSxcbiAgdHlwZSBEaXNjb3JkVXNlclNlbGVjdENvbXBvbmVudCxcbiAgdHlwZSBEaXNjb3JkVXNlclNlbGVjdEludGVyYWN0aW9uUmVzcG9uc2VGcm9tTW9kYWwsXG4gIE1lc3NhZ2VDb21wb25lbnRUeXBlcyxcbn0gZnJvbSAnQGRpc2NvcmRlbm8vdHlwZXMnO1xuaW1wb3J0IHR5cGUgeyBCb3QgfSBmcm9tICcuLi9ib3QuanMnO1xuaW1wb3J0IHR5cGUgeyBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yLCBTZXR1cERlc2lyZWRQcm9wcywgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMgfSBmcm9tICcuLi9kZXNpcmVkUHJvcGVydGllcy5qcyc7XG5pbXBvcnQgeyBjYWxsQ3VzdG9taXplciB9IGZyb20gJy4uL3RyYW5zZm9ybWVycy5qcyc7XG5pbXBvcnQgeyBUb2dnbGVCaXRmaWVsZCB9IGZyb20gJy4vdG9nZ2xlcy9Ub2dnbGVCaXRmaWVsZC5qcyc7XG5pbXBvcnQgdHlwZSB7IENvbXBvbmVudCwgTWVkaWFHYWxsZXJ5SXRlbSwgVW5mdXJsZWRNZWRpYUl0ZW0gfSBmcm9tICcuL3R5cGVzLmpzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUNvbXBvbmVudChcbiAgYm90OiBCb3QsXG4gIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZE1lc3NhZ2VDb21wb25lbnQgfCBEaXNjb3JkTWVzc2FnZUNvbXBvbmVudEZyb21Nb2RhbEludGVyYWN0aW9uUmVzcG9uc2U+LFxuICBleHRyYT86IHsgcGFydGlhbD86IGJvb2xlYW4gfSxcbikge1xuICBsZXQgY29tcG9uZW50OiBTZXR1cERlc2lyZWRQcm9wczxDb21wb25lbnQsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICAvLyBUaGVyZSdzIG5vdGhpbmcgdG8gZG8gd2l0aCBhIGNvbXBvbmVudCB3aXRob3V0IGEgdHlwZSwgYXMgaXQgbWVhbnMgYW4gaXNzdWUgb24gRGlzY29yZCwgc28gd2UganVzdCB0aHJvdyBhbiBlcnJvclxuICBpZiAoIXBheWxvYWQudHlwZSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgW0Rpc2NvcmRlbm9dIFJlY2VpdmVkIGEgY29tcG9uZW50IHBheWxvYWQgd2l0aG91dCBhIHR5cGUgaW4gdGhlIGNvbXBvbmVudCB0cmFuc2Zvcm1lci5gKTtcbiAgfVxuXG4gIC8vIFRoaXMgc3dpdGNoIGlzIGV4aGF1c3RpdmUsIHNvIHdlIGRvbnQgbmVlZCB0aGUgZGVmYXVsdCBjYXNlIGFuZCBUUyBkb2VzIG5vdCBlcnJvciBvdXQgZm9yIHRoZSB1bi1pbml0aWFsaXplZCBjb21wb25lbnQgdmFyaWFibGVcbiAgc3dpdGNoIChwYXlsb2FkLnR5cGUpIHtcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5BY3Rpb25Sb3c6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1BY3Rpb25Sb3coYm90LCBwYXlsb2FkKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLkJ1dHRvbjpcbiAgICAgIGNvbXBvbmVudCA9IHRyYW5zZm9ybUJ1dHRvbkNvbXBvbmVudChib3QsIHBheWxvYWQpO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuQ29udGFpbmVyOlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtQ29udGFpbmVyQ29tcG9uZW50KGJvdCwgcGF5bG9hZCk7XG4gICAgICBicmVhaztcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UZXh0SW5wdXQ6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1JbnB1dFRleHRDb21wb25lbnQoYm90LCBwYXlsb2FkKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlN0cmluZ1NlbGVjdDpcbiAgICAgIGNvbXBvbmVudCA9IHRyYW5zZm9ybVN0cmluZ1NlbGVjdE1lbnVDb21wb25lbnQoYm90LCBwYXlsb2FkKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlVzZXJTZWxlY3Q6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1Vc2VyU2VsZWN0TWVudUNvbXBvbmVudChib3QsIHBheWxvYWQpO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuUm9sZVNlbGVjdDpcbiAgICAgIGNvbXBvbmVudCA9IHRyYW5zZm9ybVJvbGVTZWxlY3RNZW51Q29tcG9uZW50KGJvdCwgcGF5bG9hZCk7XG4gICAgICBicmVhaztcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5NZW50aW9uYWJsZVNlbGVjdDpcbiAgICAgIGNvbXBvbmVudCA9IHRyYW5zZm9ybU1lbnRpb25hYmxlU2VsZWN0TWVudUNvbXBvbmVudChib3QsIHBheWxvYWQpO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuQ2hhbm5lbFNlbGVjdDpcbiAgICAgIGNvbXBvbmVudCA9IHRyYW5zZm9ybUNoYW5uZWxTZWxlY3RNZW51Q29tcG9uZW50KGJvdCwgcGF5bG9hZCk7XG4gICAgICBicmVhaztcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5TZWN0aW9uOlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtU2VjdGlvbkNvbXBvbmVudChib3QsIHBheWxvYWQpO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuVGh1bWJuYWlsOlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtVGh1bWJuYWlsQ29tcG9uZW50KGJvdCwgcGF5bG9hZCk7XG4gICAgICBicmVhaztcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5NZWRpYUdhbGxlcnk6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1NZWRpYUdhbGxlcnlDb21wb25lbnQoYm90LCBwYXlsb2FkKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLkZpbGU6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1GaWxlQ29tcG9uZW50KGJvdCwgcGF5bG9hZCk7XG4gICAgICBicmVhaztcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5TZXBhcmF0b3I6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1TZXBhcmF0b3JDb21wb25lbnQoYm90LCBwYXlsb2FkKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLlRleHREaXNwbGF5OlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtVGV4dERpc3BsYXlDb21wb25lbnQoYm90LCBwYXlsb2FkKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLkxhYmVsOlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtTGFiZWxDb21wb25lbnQoYm90LCBwYXlsb2FkKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLkZpbGVVcGxvYWQ6XG4gICAgICBjb21wb25lbnQgPSB0cmFuc2Zvcm1GaWxlVXBsb2FkQ29tcG9uZW50KGJvdCwgcGF5bG9hZCk7XG4gICAgICBicmVhaztcbiAgICBjYXNlIE1lc3NhZ2VDb21wb25lbnRUeXBlcy5SYWRpb0dyb3VwOlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtUmFkaW9Hcm91cENvbXBvbmVudChib3QsIHBheWxvYWQpO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBNZXNzYWdlQ29tcG9uZW50VHlwZXMuQ2hlY2tib3hHcm91cDpcbiAgICAgIGNvbXBvbmVudCA9IHRyYW5zZm9ybUNoZWNrYm94R3JvdXBDb21wb25lbnQoYm90LCBwYXlsb2FkKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgTWVzc2FnZUNvbXBvbmVudFR5cGVzLkNoZWNrYm94OlxuICAgICAgY29tcG9uZW50ID0gdHJhbnNmb3JtQ2hlY2tib3hDb21wb25lbnQoYm90LCBwYXlsb2FkKTtcbiAgICAgIGJyZWFrO1xuICB9XG5cbiAgcmV0dXJuIGNhbGxDdXN0b21pemVyKCdjb21wb25lbnQnLCBib3QsIHBheWxvYWQsIGNvbXBvbmVudCwge1xuICAgIHBhcnRpYWw6IGV4dHJhPy5wYXJ0aWFsID8/IGZhbHNlLFxuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybVVuZnVybGVkTWVkaWFJdGVtKGJvdDogQm90LCBwYXlsb2FkOiBQYXJ0aWFsPERpc2NvcmRVbmZ1cmxlZE1lZGlhSXRlbT4sIGV4dHJhPzogeyBwYXJ0aWFsPzogYm9vbGVhbiB9KSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy51bmZ1cmxlZE1lZGlhSXRlbTtcbiAgY29uc3QgbWVkaWFJdGVtID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8VW5mdXJsZWRNZWRpYUl0ZW0sIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICBpZiAocHJvcHMudXJsICYmIHBheWxvYWQudXJsKSBtZWRpYUl0ZW0udXJsID0gcGF5bG9hZC51cmw7XG4gIGlmIChwcm9wcy5wcm94eVVybCAmJiBwYXlsb2FkLnByb3h5X3VybCkgbWVkaWFJdGVtLnByb3h5VXJsID0gcGF5bG9hZC5wcm94eV91cmw7XG4gIGlmIChwcm9wcy5oZWlnaHQgJiYgcGF5bG9hZC5oZWlnaHQpIG1lZGlhSXRlbS5oZWlnaHQgPSBwYXlsb2FkLmhlaWdodDtcbiAgaWYgKHByb3BzLndpZHRoICYmIHBheWxvYWQud2lkdGgpIG1lZGlhSXRlbS53aWR0aCA9IHBheWxvYWQud2lkdGg7XG4gIGlmIChwcm9wcy5wbGFjZWhvbGRlciAmJiBwYXlsb2FkLnBsYWNlaG9sZGVyKSBtZWRpYUl0ZW0ucGxhY2Vob2xkZXIgPSBwYXlsb2FkLnBsYWNlaG9sZGVyO1xuICBpZiAocHJvcHMucGxhY2Vob2xkZXJWZXJzaW9uICYmIHBheWxvYWQucGxhY2Vob2xkZXJfdmVyc2lvbikgbWVkaWFJdGVtLnBsYWNlaG9sZGVyVmVyc2lvbiA9IHBheWxvYWQucGxhY2Vob2xkZXJfdmVyc2lvbjtcbiAgaWYgKHByb3BzLmNvbnRlbnRUeXBlICYmIHBheWxvYWQuY29udGVudF90eXBlKSBtZWRpYUl0ZW0uY29udGVudFR5cGUgPSBwYXlsb2FkLmNvbnRlbnRfdHlwZTtcbiAgaWYgKHByb3BzLmZsYWdzICYmIHBheWxvYWQuZmxhZ3MpIG1lZGlhSXRlbS5mbGFncyA9IG5ldyBUb2dnbGVCaXRmaWVsZChwYXlsb2FkLmZsYWdzKTtcbiAgaWYgKHByb3BzLmF0dGFjaG1lbnRJZCAmJiBwYXlsb2FkLmF0dGFjaG1lbnRfaWQpIG1lZGlhSXRlbS5hdHRhY2htZW50SWQgPSBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShwYXlsb2FkLmF0dGFjaG1lbnRfaWQpO1xuXG4gIHJldHVybiBjYWxsQ3VzdG9taXplcigndW5mdXJsZWRNZWRpYUl0ZW0nLCBib3QsIHBheWxvYWQsIG1lZGlhSXRlbSwge1xuICAgIHBhcnRpYWw6IGV4dHJhPy5wYXJ0aWFsID8/IGZhbHNlLFxuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybU1lZGlhR2FsbGVyeUl0ZW0oYm90OiBCb3QsIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZE1lZGlhR2FsbGVyeUl0ZW0+LCBleHRyYT86IHsgcGFydGlhbD86IGJvb2xlYW4gfSkge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMubWVkaWFHYWxsZXJ5SXRlbTtcbiAgY29uc3QgZ2FsbGVyeUl0ZW0gPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxNZWRpYUdhbGxlcnlJdGVtLCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj47XG5cbiAgaWYgKHByb3BzLm1lZGlhICYmIHBheWxvYWQubWVkaWEpIGdhbGxlcnlJdGVtLm1lZGlhID0gYm90LnRyYW5zZm9ybWVycy51bmZ1cmxlZE1lZGlhSXRlbShib3QsIHBheWxvYWQubWVkaWEpO1xuICBpZiAocHJvcHMuZGVzY3JpcHRpb24gJiYgcGF5bG9hZC5kZXNjcmlwdGlvbikgZ2FsbGVyeUl0ZW0uZGVzY3JpcHRpb24gPSBwYXlsb2FkLmRlc2NyaXB0aW9uO1xuICBpZiAocHJvcHMuc3BvaWxlciAmJiBwYXlsb2FkLnNwb2lsZXIpIGdhbGxlcnlJdGVtLnNwb2lsZXIgPSBwYXlsb2FkLnNwb2lsZXI7XG5cbiAgcmV0dXJuIGNhbGxDdXN0b21pemVyKCdtZWRpYUdhbGxlcnlJdGVtJywgYm90LCBwYXlsb2FkLCBnYWxsZXJ5SXRlbSwge1xuICAgIHBhcnRpYWw6IGV4dHJhPy5wYXJ0aWFsID8/IGZhbHNlLFxuICB9KTtcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtQWN0aW9uUm93KGJvdDogQm90LCBwYXlsb2FkOiBQYXJ0aWFsPERpc2NvcmRBY3Rpb25Sb3c+KSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnQ7XG4gIGNvbnN0IGFjdGlvblJvdyA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPENvbXBvbmVudCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgYWN0aW9uUm93LnR5cGUgPSBwYXlsb2FkLnR5cGU7XG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBhY3Rpb25Sb3cuaWQgPSBwYXlsb2FkLmlkO1xuICBpZiAocHJvcHMuY29tcG9uZW50cyAmJiBwYXlsb2FkLmNvbXBvbmVudHMpXG4gICAgYWN0aW9uUm93LmNvbXBvbmVudHMgPSBwYXlsb2FkLmNvbXBvbmVudHMubWFwKChjb21wb25lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMuY29tcG9uZW50KGJvdCwgY29tcG9uZW50KSk7XG5cbiAgcmV0dXJuIGFjdGlvblJvdztcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtQ29udGFpbmVyQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBQYXJ0aWFsPERpc2NvcmRDb250YWluZXJDb21wb25lbnQ+KSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnQ7XG4gIGNvbnN0IGNvbnRhaW5lciA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPENvbXBvbmVudCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgY29udGFpbmVyLnR5cGUgPSBwYXlsb2FkLnR5cGU7XG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBjb250YWluZXIuaWQgPSBwYXlsb2FkLmlkO1xuICBpZiAocHJvcHMuYWNjZW50Q29sb3IgJiYgcGF5bG9hZC5hY2NlbnRfY29sb3IpIGNvbnRhaW5lci5hY2NlbnRDb2xvciA9IHBheWxvYWQuYWNjZW50X2NvbG9yO1xuICBpZiAocHJvcHMuc3BvaWxlciAmJiBwYXlsb2FkLnNwb2lsZXIpIGNvbnRhaW5lci5zcG9pbGVyID0gcGF5bG9hZC5zcG9pbGVyO1xuICBpZiAocHJvcHMuY29tcG9uZW50cyAmJiBwYXlsb2FkLmNvbXBvbmVudHMpXG4gICAgY29udGFpbmVyLmNvbXBvbmVudHMgPSBwYXlsb2FkLmNvbXBvbmVudHMubWFwKChjb21wb25lbnQpID0+IGJvdC50cmFuc2Zvcm1lcnMuY29tcG9uZW50KGJvdCwgY29tcG9uZW50KSk7XG5cbiAgcmV0dXJuIGNvbnRhaW5lcjtcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtQnV0dG9uQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBQYXJ0aWFsPERpc2NvcmRCdXR0b25Db21wb25lbnQ+KSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnQ7XG4gIGNvbnN0IGJ1dHRvbiA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPENvbXBvbmVudCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgYnV0dG9uLnR5cGUgPSBwYXlsb2FkLnR5cGU7XG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBidXR0b24uaWQgPSBwYXlsb2FkLmlkO1xuICBpZiAocHJvcHMubGFiZWwgJiYgcGF5bG9hZC5sYWJlbCkgYnV0dG9uLmxhYmVsID0gcGF5bG9hZC5sYWJlbDtcbiAgaWYgKHByb3BzLmN1c3RvbUlkICYmIHBheWxvYWQuY3VzdG9tX2lkKSBidXR0b24uY3VzdG9tSWQgPSBwYXlsb2FkLmN1c3RvbV9pZDtcbiAgaWYgKHByb3BzLnN0eWxlICYmIHBheWxvYWQuc3R5bGUpIGJ1dHRvbi5zdHlsZSA9IHBheWxvYWQuc3R5bGU7XG4gIGlmIChwcm9wcy5lbW9qaSAmJiBwYXlsb2FkLmVtb2ppKSBidXR0b24uZW1vamkgPSBib3QudHJhbnNmb3JtZXJzLmVtb2ppKGJvdCwgcGF5bG9hZC5lbW9qaSwgeyBwYXJ0aWFsOiB0cnVlIH0pO1xuICBpZiAocHJvcHMudXJsICYmIHBheWxvYWQudXJsKSBidXR0b24udXJsID0gcGF5bG9hZC51cmw7XG4gIGlmIChwcm9wcy5kaXNhYmxlZCAmJiBwYXlsb2FkLmRpc2FibGVkKSBidXR0b24uZGlzYWJsZWQgPSBwYXlsb2FkLmRpc2FibGVkO1xuICBpZiAocHJvcHMuc2t1SWQgJiYgcGF5bG9hZC5za3VfaWQpIGJ1dHRvbi5za3VJZCA9IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKHBheWxvYWQuc2t1X2lkKTtcblxuICByZXR1cm4gYnV0dG9uO1xufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1JbnB1dFRleHRDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZFRleHRJbnB1dENvbXBvbmVudCB8IERpc2NvcmRUZXh0SW5wdXRJbnRlcmFjdGlvblJlc3BvbnNlPikge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50O1xuICBjb25zdCBpbnB1dCA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPENvbXBvbmVudCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgaW5wdXQudHlwZSA9IHBheWxvYWQudHlwZTtcbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIGlucHV0LmlkID0gcGF5bG9hZC5pZDtcbiAgaWYgKHByb3BzLnZhbHVlICYmIHBheWxvYWQudmFsdWUpIGlucHV0LnZhbHVlID0gcGF5bG9hZC52YWx1ZTtcbiAgaWYgKHByb3BzLmN1c3RvbUlkICYmIHBheWxvYWQuY3VzdG9tX2lkKSBpbnB1dC5jdXN0b21JZCA9IHBheWxvYWQuY3VzdG9tX2lkO1xuXG4gIC8vIFdlIGFzc3VtZSB0aGF0IGlmIHdlIGZpbmQgJ3ZhbHVlcycgaXQgaXMgdGhlIGludGVyYWN0aW9uIHJlc3BvbnNlXG4gIGlmICgnc3R5bGUnIGluIHBheWxvYWQpIHtcbiAgICBpZiAocHJvcHMuc3R5bGUgJiYgcGF5bG9hZC5zdHlsZSkgaW5wdXQuc3R5bGUgPSBwYXlsb2FkLnN0eWxlO1xuICAgIGlmIChwcm9wcy5yZXF1aXJlZCAmJiBwYXlsb2FkLnJlcXVpcmVkKSBpbnB1dC5yZXF1aXJlZCA9IHBheWxvYWQucmVxdWlyZWQ7XG4gICAgaWYgKHByb3BzLmxhYmVsICYmIHBheWxvYWQubGFiZWwpIGlucHV0LmxhYmVsID0gcGF5bG9hZC5sYWJlbDtcbiAgICBpZiAocHJvcHMucGxhY2Vob2xkZXIgJiYgcGF5bG9hZC5wbGFjZWhvbGRlcikgaW5wdXQucGxhY2Vob2xkZXIgPSBwYXlsb2FkLnBsYWNlaG9sZGVyO1xuICAgIGlmIChwcm9wcy5taW5MZW5ndGggJiYgcGF5bG9hZC5taW5fbGVuZ3RoKSBpbnB1dC5taW5MZW5ndGggPSBwYXlsb2FkLm1pbl9sZW5ndGg7XG4gICAgaWYgKHByb3BzLm1heExlbmd0aCAmJiBwYXlsb2FkLm1heF9sZW5ndGgpIGlucHV0Lm1heExlbmd0aCA9IHBheWxvYWQubWF4X2xlbmd0aDtcbiAgfVxuXG4gIHJldHVybiBpbnB1dDtcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtU3RyaW5nU2VsZWN0TWVudUNvbXBvbmVudChcbiAgYm90OiBCb3QsXG4gIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZFN0cmluZ1NlbGVjdENvbXBvbmVudCB8IERpc2NvcmRTdHJpbmdTZWxlY3RJbnRlcmFjdGlvblJlc3BvbnNlRnJvbU1vZGFsPixcbikge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50O1xuICBjb25zdCBzZWxlY3QgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxDb21wb25lbnQsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIHNlbGVjdC50eXBlID0gcGF5bG9hZC50eXBlO1xuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgc2VsZWN0LmlkID0gcGF5bG9hZC5pZDtcbiAgaWYgKHByb3BzLmN1c3RvbUlkICYmIHBheWxvYWQuY3VzdG9tX2lkKSBzZWxlY3QuY3VzdG9tSWQgPSBwYXlsb2FkLmN1c3RvbV9pZDtcblxuICAvLyBXZSBhc3N1bWUgdGhhdCBpZiB3ZSBmaW5kICd2YWx1ZXMnIGl0IGlzIHRoZSBpbnRlcmFjdGlvbiByZXNwb25zZVxuICBpZiAoJ3ZhbHVlcycgaW4gcGF5bG9hZCkge1xuICAgIGlmIChwcm9wcy52YWx1ZXMgJiYgcGF5bG9hZC52YWx1ZXMpIHNlbGVjdC52YWx1ZXMgPSBwYXlsb2FkLnZhbHVlcztcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBfcGF5bG9hZCA9IHBheWxvYWQgYXMgUGFydGlhbDxEaXNjb3JkU3RyaW5nU2VsZWN0Q29tcG9uZW50PjtcblxuICAgIGlmIChwcm9wcy5wbGFjZWhvbGRlciAmJiBfcGF5bG9hZC5wbGFjZWhvbGRlcikgc2VsZWN0LnBsYWNlaG9sZGVyID0gX3BheWxvYWQucGxhY2Vob2xkZXI7XG4gICAgaWYgKHByb3BzLm1pblZhbHVlcyAmJiBfcGF5bG9hZC5taW5fdmFsdWVzKSBzZWxlY3QubWluVmFsdWVzID0gX3BheWxvYWQubWluX3ZhbHVlcztcbiAgICBpZiAocHJvcHMubWF4VmFsdWVzICYmIF9wYXlsb2FkLm1heF92YWx1ZXMpIHNlbGVjdC5tYXhWYWx1ZXMgPSBfcGF5bG9hZC5tYXhfdmFsdWVzO1xuICAgIGlmIChwcm9wcy5vcHRpb25zICYmIF9wYXlsb2FkLm9wdGlvbnMpXG4gICAgICBzZWxlY3Qub3B0aW9ucyA9IF9wYXlsb2FkLm9wdGlvbnMubWFwKChvcHRpb24pID0+ICh7XG4gICAgICAgIGxhYmVsOiBvcHRpb24ubGFiZWwsXG4gICAgICAgIHZhbHVlOiBvcHRpb24udmFsdWUsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBvcHRpb24uZGVzY3JpcHRpb24sXG4gICAgICAgIGVtb2ppOiBvcHRpb24uZW1vamlcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgaWQ6IG9wdGlvbi5lbW9qaS5pZCA/IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKG9wdGlvbi5lbW9qaS5pZCkgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgIG5hbWU6IG9wdGlvbi5lbW9qaS5uYW1lID8/IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgYW5pbWF0ZWQ6IG9wdGlvbi5lbW9qaS5hbmltYXRlZCxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgICAgZGVmYXVsdDogb3B0aW9uLmRlZmF1bHQsXG4gICAgICB9KSk7XG4gICAgaWYgKHByb3BzLmRpc2FibGVkICYmIF9wYXlsb2FkLmRpc2FibGVkKSBzZWxlY3QuZGlzYWJsZWQgPSBfcGF5bG9hZC5kaXNhYmxlZDtcbiAgfVxuXG4gIHJldHVybiBzZWxlY3Q7XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybVVzZXJTZWxlY3RNZW51Q29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBQYXJ0aWFsPERpc2NvcmRVc2VyU2VsZWN0Q29tcG9uZW50IHwgRGlzY29yZFVzZXJTZWxlY3RJbnRlcmFjdGlvblJlc3BvbnNlRnJvbU1vZGFsPikge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50O1xuICBjb25zdCBzZWxlY3QgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxDb21wb25lbnQsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIHNlbGVjdC50eXBlID0gcGF5bG9hZC50eXBlO1xuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgc2VsZWN0LmlkID0gcGF5bG9hZC5pZDtcbiAgaWYgKHByb3BzLmN1c3RvbUlkICYmIHBheWxvYWQuY3VzdG9tX2lkKSBzZWxlY3QuY3VzdG9tSWQgPSBwYXlsb2FkLmN1c3RvbV9pZDtcblxuICAvLyBXZSBhc3N1bWUgdGhhdCBpZiB3ZSBmaW5kICd2YWx1ZXMnIGl0IGlzIHRoZSBpbnRlcmFjdGlvbiByZXNwb25zZVxuICBpZiAoJ3ZhbHVlcycgaW4gcGF5bG9hZCkge1xuICAgIGlmIChwcm9wcy52YWx1ZXMgJiYgcGF5bG9hZC52YWx1ZXMpIHNlbGVjdC52YWx1ZXMgPSBwYXlsb2FkLnZhbHVlcztcbiAgICBpZiAocHJvcHMucmVzb2x2ZWQgJiYgcGF5bG9hZC5yZXNvbHZlZCkgc2VsZWN0LnJlc29sdmVkID0gYm90LnRyYW5zZm9ybWVycy5pbnRlcmFjdGlvbkRhdGFSZXNvbHZlZChib3QsIHBheWxvYWQucmVzb2x2ZWQpO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IF9wYXlsb2FkID0gcGF5bG9hZCBhcyBQYXJ0aWFsPERpc2NvcmRVc2VyU2VsZWN0Q29tcG9uZW50PjtcblxuICAgIGlmIChwcm9wcy5wbGFjZWhvbGRlciAmJiBfcGF5bG9hZC5wbGFjZWhvbGRlcikgc2VsZWN0LnBsYWNlaG9sZGVyID0gX3BheWxvYWQucGxhY2Vob2xkZXI7XG4gICAgaWYgKHByb3BzLm1pblZhbHVlcyAmJiBfcGF5bG9hZC5taW5fdmFsdWVzKSBzZWxlY3QubWluVmFsdWVzID0gX3BheWxvYWQubWluX3ZhbHVlcztcbiAgICBpZiAocHJvcHMubWF4VmFsdWVzICYmIF9wYXlsb2FkLm1heF92YWx1ZXMpIHNlbGVjdC5tYXhWYWx1ZXMgPSBfcGF5bG9hZC5tYXhfdmFsdWVzO1xuICAgIGlmIChwcm9wcy5kZWZhdWx0VmFsdWVzICYmIF9wYXlsb2FkLmRlZmF1bHRfdmFsdWVzKVxuICAgICAgc2VsZWN0LmRlZmF1bHRWYWx1ZXMgPSBfcGF5bG9hZC5kZWZhdWx0X3ZhbHVlcy5tYXAoKGRlZmF1bHRWYWx1ZSkgPT4gKHtcbiAgICAgICAgaWQ6IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGRlZmF1bHRWYWx1ZS5pZCksXG4gICAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZS50eXBlLFxuICAgICAgfSkpO1xuICAgIGlmIChwcm9wcy5kaXNhYmxlZCAmJiBfcGF5bG9hZC5kaXNhYmxlZCkgc2VsZWN0LmRpc2FibGVkID0gX3BheWxvYWQuZGlzYWJsZWQ7XG4gIH1cblxuICByZXR1cm4gc2VsZWN0O1xufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1Sb2xlU2VsZWN0TWVudUNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogUGFydGlhbDxEaXNjb3JkUm9sZVNlbGVjdENvbXBvbmVudCB8IERpc2NvcmRSb2xlU2VsZWN0SW50ZXJhY3Rpb25SZXNwb25zZUZyb21Nb2RhbD4pIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudDtcbiAgY29uc3Qgc2VsZWN0ID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8Q29tcG9uZW50LCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj47XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSBzZWxlY3QudHlwZSA9IHBheWxvYWQudHlwZTtcbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIHNlbGVjdC5pZCA9IHBheWxvYWQuaWQ7XG4gIGlmIChwcm9wcy5jdXN0b21JZCAmJiBwYXlsb2FkLmN1c3RvbV9pZCkgc2VsZWN0LmN1c3RvbUlkID0gcGF5bG9hZC5jdXN0b21faWQ7XG5cbiAgLy8gV2UgYXNzdW1lIHRoYXQgaWYgd2UgZmluZCAndmFsdWVzJyBpdCBpcyB0aGUgaW50ZXJhY3Rpb24gcmVzcG9uc2VcbiAgaWYgKCd2YWx1ZXMnIGluIHBheWxvYWQpIHtcbiAgICBpZiAocHJvcHMudmFsdWVzICYmIHBheWxvYWQudmFsdWVzKSBzZWxlY3QudmFsdWVzID0gcGF5bG9hZC52YWx1ZXM7XG4gICAgaWYgKHByb3BzLnJlc29sdmVkICYmIHBheWxvYWQucmVzb2x2ZWQpIHNlbGVjdC5yZXNvbHZlZCA9IGJvdC50cmFuc2Zvcm1lcnMuaW50ZXJhY3Rpb25EYXRhUmVzb2x2ZWQoYm90LCBwYXlsb2FkLnJlc29sdmVkKTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBfcGF5bG9hZCA9IHBheWxvYWQgYXMgUGFydGlhbDxEaXNjb3JkUm9sZVNlbGVjdENvbXBvbmVudD47XG5cbiAgICBpZiAocHJvcHMucGxhY2Vob2xkZXIgJiYgX3BheWxvYWQucGxhY2Vob2xkZXIpIHNlbGVjdC5wbGFjZWhvbGRlciA9IF9wYXlsb2FkLnBsYWNlaG9sZGVyO1xuICAgIGlmIChwcm9wcy5taW5WYWx1ZXMgJiYgX3BheWxvYWQubWluX3ZhbHVlcykgc2VsZWN0Lm1pblZhbHVlcyA9IF9wYXlsb2FkLm1pbl92YWx1ZXM7XG4gICAgaWYgKHByb3BzLm1heFZhbHVlcyAmJiBfcGF5bG9hZC5tYXhfdmFsdWVzKSBzZWxlY3QubWF4VmFsdWVzID0gX3BheWxvYWQubWF4X3ZhbHVlcztcbiAgICBpZiAocHJvcHMuZGVmYXVsdFZhbHVlcyAmJiBfcGF5bG9hZC5kZWZhdWx0X3ZhbHVlcylcbiAgICAgIHNlbGVjdC5kZWZhdWx0VmFsdWVzID0gX3BheWxvYWQuZGVmYXVsdF92YWx1ZXMubWFwKChkZWZhdWx0VmFsdWUpID0+ICh7XG4gICAgICAgIGlkOiBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShkZWZhdWx0VmFsdWUuaWQpLFxuICAgICAgICB0eXBlOiBkZWZhdWx0VmFsdWUudHlwZSxcbiAgICAgIH0pKTtcbiAgICBpZiAocHJvcHMuZGlzYWJsZWQgJiYgX3BheWxvYWQuZGlzYWJsZWQpIHNlbGVjdC5kaXNhYmxlZCA9IF9wYXlsb2FkLmRpc2FibGVkO1xuICB9XG5cbiAgcmV0dXJuIHNlbGVjdDtcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtTWVudGlvbmFibGVTZWxlY3RNZW51Q29tcG9uZW50KFxuICBib3Q6IEJvdCxcbiAgcGF5bG9hZDogUGFydGlhbDxEaXNjb3JkTWVudGlvbmFibGVTZWxlY3RDb21wb25lbnQgfCBEaXNjb3JkTWVudGlvbmFibGVTZWxlY3RJbnRlcmFjdGlvblJlc3BvbnNlRnJvbU1vZGFsPixcbikge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50O1xuICBjb25zdCBzZWxlY3QgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxDb21wb25lbnQsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIHNlbGVjdC50eXBlID0gcGF5bG9hZC50eXBlO1xuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgc2VsZWN0LmlkID0gcGF5bG9hZC5pZDtcbiAgaWYgKHByb3BzLmN1c3RvbUlkICYmIHBheWxvYWQuY3VzdG9tX2lkKSBzZWxlY3QuY3VzdG9tSWQgPSBwYXlsb2FkLmN1c3RvbV9pZDtcblxuICAvLyBXZSBhc3N1bWUgdGhhdCBpZiB3ZSBmaW5kICd2YWx1ZXMnIGl0IGlzIHRoZSBpbnRlcmFjdGlvbiByZXNwb25zZVxuICBpZiAoJ3ZhbHVlcycgaW4gcGF5bG9hZCkge1xuICAgIGlmIChwcm9wcy52YWx1ZXMgJiYgcGF5bG9hZC52YWx1ZXMpIHNlbGVjdC52YWx1ZXMgPSBwYXlsb2FkLnZhbHVlcztcbiAgICBpZiAocHJvcHMucmVzb2x2ZWQgJiYgcGF5bG9hZC5yZXNvbHZlZCkgc2VsZWN0LnJlc29sdmVkID0gYm90LnRyYW5zZm9ybWVycy5pbnRlcmFjdGlvbkRhdGFSZXNvbHZlZChib3QsIHBheWxvYWQucmVzb2x2ZWQpO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IF9wYXlsb2FkID0gcGF5bG9hZCBhcyBQYXJ0aWFsPERpc2NvcmRNZW50aW9uYWJsZVNlbGVjdENvbXBvbmVudD47XG5cbiAgICBpZiAocHJvcHMucGxhY2Vob2xkZXIgJiYgX3BheWxvYWQucGxhY2Vob2xkZXIpIHNlbGVjdC5wbGFjZWhvbGRlciA9IF9wYXlsb2FkLnBsYWNlaG9sZGVyO1xuICAgIGlmIChwcm9wcy5taW5WYWx1ZXMgJiYgX3BheWxvYWQubWluX3ZhbHVlcykgc2VsZWN0Lm1pblZhbHVlcyA9IF9wYXlsb2FkLm1pbl92YWx1ZXM7XG4gICAgaWYgKHByb3BzLm1heFZhbHVlcyAmJiBfcGF5bG9hZC5tYXhfdmFsdWVzKSBzZWxlY3QubWF4VmFsdWVzID0gX3BheWxvYWQubWF4X3ZhbHVlcztcbiAgICBpZiAocHJvcHMuZGVmYXVsdFZhbHVlcyAmJiBfcGF5bG9hZC5kZWZhdWx0X3ZhbHVlcylcbiAgICAgIHNlbGVjdC5kZWZhdWx0VmFsdWVzID0gX3BheWxvYWQuZGVmYXVsdF92YWx1ZXMubWFwKChkZWZhdWx0VmFsdWUpID0+ICh7XG4gICAgICAgIGlkOiBib3QudHJhbnNmb3JtZXJzLnNub3dmbGFrZShkZWZhdWx0VmFsdWUuaWQpLFxuICAgICAgICB0eXBlOiBkZWZhdWx0VmFsdWUudHlwZSxcbiAgICAgIH0pKTtcbiAgICBpZiAocHJvcHMuZGlzYWJsZWQgJiYgX3BheWxvYWQuZGlzYWJsZWQpIHNlbGVjdC5kaXNhYmxlZCA9IF9wYXlsb2FkLmRpc2FibGVkO1xuICB9XG5cbiAgcmV0dXJuIHNlbGVjdDtcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtQ2hhbm5lbFNlbGVjdE1lbnVDb21wb25lbnQoXG4gIGJvdDogQm90LFxuICBwYXlsb2FkOiBQYXJ0aWFsPERpc2NvcmRDaGFubmVsU2VsZWN0Q29tcG9uZW50IHwgRGlzY29yZENoYW5uZWxTZWxlY3RJbnRlcmFjdGlvblJlc3BvbnNlRnJvbU1vZGFsPixcbikge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50O1xuICBjb25zdCBzZWxlY3QgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxDb21wb25lbnQsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIHNlbGVjdC50eXBlID0gcGF5bG9hZC50eXBlO1xuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgc2VsZWN0LmlkID0gcGF5bG9hZC5pZDtcbiAgaWYgKHByb3BzLmN1c3RvbUlkICYmIHBheWxvYWQuY3VzdG9tX2lkKSBzZWxlY3QuY3VzdG9tSWQgPSBwYXlsb2FkLmN1c3RvbV9pZDtcblxuICAvLyBXZSBhc3N1bWUgdGhhdCBpZiB3ZSBmaW5kICd2YWx1ZXMnIGl0IGlzIHRoZSBpbnRlcmFjdGlvbiByZXNwb25zZVxuICBpZiAoJ3ZhbHVlcycgaW4gcGF5bG9hZCkge1xuICAgIGlmIChwcm9wcy52YWx1ZXMgJiYgcGF5bG9hZC52YWx1ZXMpIHNlbGVjdC52YWx1ZXMgPSBwYXlsb2FkLnZhbHVlcztcbiAgICBpZiAocHJvcHMucmVzb2x2ZWQgJiYgcGF5bG9hZC5yZXNvbHZlZCkgc2VsZWN0LnJlc29sdmVkID0gYm90LnRyYW5zZm9ybWVycy5pbnRlcmFjdGlvbkRhdGFSZXNvbHZlZChib3QsIHBheWxvYWQucmVzb2x2ZWQpO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IF9wYXlsb2FkID0gcGF5bG9hZCBhcyBQYXJ0aWFsPERpc2NvcmRDaGFubmVsU2VsZWN0Q29tcG9uZW50PjtcblxuICAgIGlmIChwcm9wcy5wbGFjZWhvbGRlciAmJiBfcGF5bG9hZC5wbGFjZWhvbGRlcikgc2VsZWN0LnBsYWNlaG9sZGVyID0gX3BheWxvYWQucGxhY2Vob2xkZXI7XG4gICAgaWYgKHByb3BzLm1pblZhbHVlcyAmJiBfcGF5bG9hZC5taW5fdmFsdWVzKSBzZWxlY3QubWluVmFsdWVzID0gX3BheWxvYWQubWluX3ZhbHVlcztcbiAgICBpZiAocHJvcHMubWF4VmFsdWVzICYmIF9wYXlsb2FkLm1heF92YWx1ZXMpIHNlbGVjdC5tYXhWYWx1ZXMgPSBfcGF5bG9hZC5tYXhfdmFsdWVzO1xuICAgIGlmIChwcm9wcy5kZWZhdWx0VmFsdWVzICYmIF9wYXlsb2FkLmRlZmF1bHRfdmFsdWVzKVxuICAgICAgc2VsZWN0LmRlZmF1bHRWYWx1ZXMgPSBfcGF5bG9hZC5kZWZhdWx0X3ZhbHVlcy5tYXAoKGRlZmF1bHRWYWx1ZSkgPT4gKHtcbiAgICAgICAgaWQ6IGJvdC50cmFuc2Zvcm1lcnMuc25vd2ZsYWtlKGRlZmF1bHRWYWx1ZS5pZCksXG4gICAgICAgIHR5cGU6IGRlZmF1bHRWYWx1ZS50eXBlLFxuICAgICAgfSkpO1xuICAgIGlmIChwcm9wcy5jaGFubmVsVHlwZXMgJiYgX3BheWxvYWQuY2hhbm5lbF90eXBlcykgc2VsZWN0LmNoYW5uZWxUeXBlcyA9IF9wYXlsb2FkLmNoYW5uZWxfdHlwZXM7XG4gICAgaWYgKHByb3BzLmRpc2FibGVkICYmIF9wYXlsb2FkLmRpc2FibGVkKSBzZWxlY3QuZGlzYWJsZWQgPSBfcGF5bG9hZC5kaXNhYmxlZDtcbiAgfVxuXG4gIHJldHVybiBzZWxlY3Q7XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybVNlY3Rpb25Db21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZFNlY3Rpb25Db21wb25lbnQ+KSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnQ7XG4gIGNvbnN0IHNlY3Rpb24gPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxDb21wb25lbnQsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIHNlY3Rpb24udHlwZSA9IHBheWxvYWQudHlwZTtcbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIHNlY3Rpb24uaWQgPSBwYXlsb2FkLmlkO1xuICBpZiAocHJvcHMuY29tcG9uZW50cyAmJiBwYXlsb2FkLmNvbXBvbmVudHMpIHNlY3Rpb24uY29tcG9uZW50cyA9IHBheWxvYWQuY29tcG9uZW50cy5tYXAoKGNvbXBvbmVudCkgPT4gYm90LnRyYW5zZm9ybWVycy5jb21wb25lbnQoYm90LCBjb21wb25lbnQpKTtcbiAgaWYgKHByb3BzLmFjY2Vzc29yeSAmJiBwYXlsb2FkLmFjY2Vzc29yeSkgc2VjdGlvbi5hY2Nlc3NvcnkgPSBib3QudHJhbnNmb3JtZXJzLmNvbXBvbmVudChib3QsIHBheWxvYWQuYWNjZXNzb3J5KTtcblxuICByZXR1cm4gc2VjdGlvbjtcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtVGh1bWJuYWlsQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBQYXJ0aWFsPERpc2NvcmRUaHVtYm5haWxDb21wb25lbnQ+KSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnQ7XG4gIGNvbnN0IHRodW1ibmFpbCA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPENvbXBvbmVudCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgdGh1bWJuYWlsLnR5cGUgPSBwYXlsb2FkLnR5cGU7XG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSB0aHVtYm5haWwuaWQgPSBwYXlsb2FkLmlkO1xuICBpZiAocHJvcHMubWVkaWEgJiYgcGF5bG9hZC5tZWRpYSkgdGh1bWJuYWlsLm1lZGlhID0gYm90LnRyYW5zZm9ybWVycy51bmZ1cmxlZE1lZGlhSXRlbShib3QsIHBheWxvYWQubWVkaWEpO1xuICBpZiAocHJvcHMuZGVzY3JpcHRpb24gJiYgcGF5bG9hZC5kZXNjcmlwdGlvbikgdGh1bWJuYWlsLmRlc2NyaXB0aW9uID0gcGF5bG9hZC5kZXNjcmlwdGlvbjtcbiAgaWYgKHByb3BzLnNwb2lsZXIgJiYgcGF5bG9hZC5zcG9pbGVyKSB0aHVtYm5haWwuc3BvaWxlciA9IHBheWxvYWQuc3BvaWxlcjtcblxuICByZXR1cm4gdGh1bWJuYWlsO1xufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1NZWRpYUdhbGxlcnlDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZE1lZGlhR2FsbGVyeUNvbXBvbmVudD4pIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudDtcbiAgY29uc3QgbWVkaWFHYWxsZXJ5ID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8Q29tcG9uZW50LCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj47XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSBtZWRpYUdhbGxlcnkudHlwZSA9IHBheWxvYWQudHlwZTtcbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIG1lZGlhR2FsbGVyeS5pZCA9IHBheWxvYWQuaWQ7XG4gIGlmIChwcm9wcy5pdGVtcyAmJiBwYXlsb2FkLml0ZW1zKSBtZWRpYUdhbGxlcnkuaXRlbXMgPSBwYXlsb2FkLml0ZW1zLm1hcCgoaXRlbSkgPT4gYm90LnRyYW5zZm9ybWVycy5tZWRpYUdhbGxlcnlJdGVtKGJvdCwgaXRlbSkpO1xuXG4gIHJldHVybiBtZWRpYUdhbGxlcnk7XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybUZpbGVDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZEZpbGVDb21wb25lbnQ+KSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnQ7XG4gIGNvbnN0IGZpbGUgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxDb21wb25lbnQsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGZpbGUudHlwZSA9IHBheWxvYWQudHlwZTtcbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIGZpbGUuaWQgPSBwYXlsb2FkLmlkO1xuICBpZiAocHJvcHMuZmlsZSAmJiBwYXlsb2FkLmZpbGUpIGZpbGUuZmlsZSA9IGJvdC50cmFuc2Zvcm1lcnMudW5mdXJsZWRNZWRpYUl0ZW0oYm90LCBwYXlsb2FkLmZpbGUpO1xuICBpZiAocHJvcHMuc3BvaWxlciAmJiBwYXlsb2FkLnNwb2lsZXIpIGZpbGUuc3BvaWxlciA9IHBheWxvYWQuc3BvaWxlcjtcbiAgaWYgKHByb3BzLm5hbWUgJiYgcGF5bG9hZC5uYW1lKSBmaWxlLm5hbWUgPSBwYXlsb2FkLm5hbWU7XG4gIGlmIChwcm9wcy5zaXplICYmIHBheWxvYWQuc2l6ZSkgZmlsZS5zaXplID0gcGF5bG9hZC5zaXplO1xuXG4gIHJldHVybiBmaWxlO1xufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1UZXh0RGlzcGxheUNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogUGFydGlhbDxEaXNjb3JkVGV4dERpc3BsYXlDb21wb25lbnQgfCBEaXNjb3JkVGV4dERpc3BsYXlJbnRlcmFjdGlvblJlc3BvbnNlPikge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50O1xuICBjb25zdCB0ZXh0RGlzcGxheSA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPENvbXBvbmVudCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgdGV4dERpc3BsYXkudHlwZSA9IHBheWxvYWQudHlwZTtcbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIHRleHREaXNwbGF5LmlkID0gcGF5bG9hZC5pZDtcbiAgLy8gV2UgYXNzdW1lIHRoYXQgaWYgd2UgZmluZCAnY29udGVudCcgaXQgaXMgdGhlIGNvbXBvbmVudFxuICBpZiAoJ2NvbnRlbnQnIGluIHBheWxvYWQpIHtcbiAgICBpZiAocHJvcHMuY29udGVudCAmJiBwYXlsb2FkLmNvbnRlbnQpIHRleHREaXNwbGF5LmNvbnRlbnQgPSBwYXlsb2FkLmNvbnRlbnQ7XG4gIH1cblxuICByZXR1cm4gdGV4dERpc3BsYXk7XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybVNlcGFyYXRvckNvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogUGFydGlhbDxEaXNjb3JkU2VwYXJhdG9yQ29tcG9uZW50Pikge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50O1xuICBjb25zdCBzZXBhcmF0b3IgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxDb21wb25lbnQsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIHNlcGFyYXRvci50eXBlID0gcGF5bG9hZC50eXBlO1xuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgc2VwYXJhdG9yLmlkID0gcGF5bG9hZC5pZDtcbiAgaWYgKHByb3BzLmRpdmlkZXIgJiYgcGF5bG9hZC5kaXZpZGVyKSBzZXBhcmF0b3IuZGl2aWRlciA9IHBheWxvYWQuZGl2aWRlcjtcbiAgaWYgKHByb3BzLnNwYWNpbmcgJiYgcGF5bG9hZC5zcGFjaW5nKSBzZXBhcmF0b3Iuc3BhY2luZyA9IHBheWxvYWQuc3BhY2luZztcblxuICByZXR1cm4gc2VwYXJhdG9yO1xufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1MYWJlbENvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogUGFydGlhbDxEaXNjb3JkTGFiZWxDb21wb25lbnQgfCBEaXNjb3JkTGFiZWxJbnRlcmFjdGlvblJlc3BvbnNlPikge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50O1xuICBjb25zdCBsYWJlbCA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPENvbXBvbmVudCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgbGFiZWwudHlwZSA9IHBheWxvYWQudHlwZTtcbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIGxhYmVsLmlkID0gcGF5bG9hZC5pZDtcbiAgLy8gV2UgYXNzdW1lIHRoYXQgaWYgd2UgZmluZCAnbGFiZWwnIGl0IGlzIHRoZSBjb21wb25lbnRcbiAgaWYgKCdsYWJlbCcgaW4gcGF5bG9hZCkge1xuICAgIGlmIChwcm9wcy5sYWJlbCAmJiBwYXlsb2FkLmxhYmVsKSBsYWJlbC5sYWJlbCA9IHBheWxvYWQubGFiZWw7XG4gICAgaWYgKHByb3BzLmRlc2NyaXB0aW9uICYmIHBheWxvYWQuZGVzY3JpcHRpb24pIGxhYmVsLmRlc2NyaXB0aW9uID0gcGF5bG9hZC5kZXNjcmlwdGlvbjtcbiAgfVxuICBpZiAocHJvcHMuY29tcG9uZW50ICYmIHBheWxvYWQuY29tcG9uZW50KSBsYWJlbC5jb21wb25lbnQgPSBib3QudHJhbnNmb3JtZXJzLmNvbXBvbmVudChib3QsIHBheWxvYWQuY29tcG9uZW50KTtcblxuICByZXR1cm4gbGFiZWw7XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybUZpbGVVcGxvYWRDb21wb25lbnQoYm90OiBCb3QsIHBheWxvYWQ6IFBhcnRpYWw8RGlzY29yZEZpbGVVcGxvYWRDb21wb25lbnQgfCBEaXNjb3JkRmlsZVVwbG9hZEludGVyYWN0aW9uUmVzcG9uc2U+KSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnQ7XG4gIGNvbnN0IGZpbGVVcGxvYWQgPSB7fSBhcyBTZXR1cERlc2lyZWRQcm9wczxDb21wb25lbnQsIFRyYW5zZm9ybWVyc0Rlc2lyZWRQcm9wZXJ0aWVzLCBEZXNpcmVkUHJvcGVydGllc0JlaGF2aW9yPjtcblxuICBpZiAocHJvcHMudHlwZSAmJiBwYXlsb2FkLnR5cGUpIGZpbGVVcGxvYWQudHlwZSA9IHBheWxvYWQudHlwZTtcbiAgaWYgKHByb3BzLmlkICYmIHBheWxvYWQuaWQpIGZpbGVVcGxvYWQuaWQgPSBwYXlsb2FkLmlkO1xuICBpZiAocHJvcHMuY3VzdG9tSWQgJiYgcGF5bG9hZC5jdXN0b21faWQpIGZpbGVVcGxvYWQuY3VzdG9tSWQgPSBwYXlsb2FkLmN1c3RvbV9pZDtcblxuICAvLyBXZSBhc3N1bWUgdGhhdCBpZiB3ZSBmaW5kICd2YWx1ZXMnIGl0IGlzIHRoZSBpbnRlcmFjdGlvbiByZXNwb25zZVxuICBpZiAoJ3ZhbHVlcycgaW4gcGF5bG9hZCkge1xuICAgIGlmIChwcm9wcy52YWx1ZXMgJiYgcGF5bG9hZC52YWx1ZXMpIGZpbGVVcGxvYWQudmFsdWVzID0gcGF5bG9hZC52YWx1ZXM7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgX3BheWxvYWQgPSBwYXlsb2FkIGFzIFBhcnRpYWw8RGlzY29yZEZpbGVVcGxvYWRDb21wb25lbnQ+O1xuXG4gICAgaWYgKHByb3BzLm1pblZhbHVlcyAmJiBfcGF5bG9hZC5taW5fdmFsdWVzKSBmaWxlVXBsb2FkLm1pblZhbHVlcyA9IF9wYXlsb2FkLm1pbl92YWx1ZXM7XG4gICAgaWYgKHByb3BzLm1heFZhbHVlcyAmJiBfcGF5bG9hZC5tYXhfdmFsdWVzKSBmaWxlVXBsb2FkLm1heFZhbHVlcyA9IF9wYXlsb2FkLm1heF92YWx1ZXM7XG4gICAgaWYgKHByb3BzLnJlcXVpcmVkICYmIF9wYXlsb2FkLnJlcXVpcmVkKSBmaWxlVXBsb2FkLnJlcXVpcmVkID0gX3BheWxvYWQucmVxdWlyZWQ7XG4gICAgaWYgKHByb3BzLmZpbGVUeXBlcyAmJiBfcGF5bG9hZC5maWxlX3R5cGVzKSBmaWxlVXBsb2FkLmZpbGVUeXBlcyA9IF9wYXlsb2FkLmZpbGVfdHlwZXM7XG4gIH1cblxuICByZXR1cm4gZmlsZVVwbG9hZDtcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtUmFkaW9Hcm91cENvbXBvbmVudChib3Q6IEJvdCwgcGF5bG9hZDogUGFydGlhbDxEaXNjb3JkUmFkaW9Hcm91cENvbXBvbmVudCB8IERpc2NvcmRSYWRpb0dyb3VwSW50ZXJhY3Rpb25SZXNwb25zZT4pIHtcbiAgY29uc3QgcHJvcHMgPSBib3QudHJhbnNmb3JtZXJzLmRlc2lyZWRQcm9wZXJ0aWVzLmNvbXBvbmVudDtcbiAgY29uc3QgcmFkaW9Hcm91cCA9IHt9IGFzIFNldHVwRGVzaXJlZFByb3BzPENvbXBvbmVudCwgVHJhbnNmb3JtZXJzRGVzaXJlZFByb3BlcnRpZXMsIERlc2lyZWRQcm9wZXJ0aWVzQmVoYXZpb3I+O1xuXG4gIGlmIChwcm9wcy50eXBlICYmIHBheWxvYWQudHlwZSkgcmFkaW9Hcm91cC50eXBlID0gcGF5bG9hZC50eXBlO1xuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgcmFkaW9Hcm91cC5pZCA9IHBheWxvYWQuaWQ7XG4gIGlmIChwcm9wcy5jdXN0b21JZCAmJiBwYXlsb2FkLmN1c3RvbV9pZCkgcmFkaW9Hcm91cC5jdXN0b21JZCA9IHBheWxvYWQuY3VzdG9tX2lkO1xuXG4gIC8vIFdlIGFzc3VtZSB0aGF0IGlmIHdlIGZpbmQgJ29wdGlvbnMnIGl0IGlzIHRoZSBjb21wb25lbnRcbiAgaWYgKCdvcHRpb25zJyBpbiBwYXlsb2FkKSB7XG4gICAgaWYgKHByb3BzLm9wdGlvbnMgJiYgcGF5bG9hZC5vcHRpb25zKSByYWRpb0dyb3VwLm9wdGlvbnMgPSBwYXlsb2FkLm9wdGlvbnM7XG4gICAgaWYgKHByb3BzLnJlcXVpcmVkICYmIHBheWxvYWQucmVxdWlyZWQgIT09IHVuZGVmaW5lZCkgcmFkaW9Hcm91cC5yZXF1aXJlZCA9IHBheWxvYWQucmVxdWlyZWQ7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgX3BheWxvYWQgPSBwYXlsb2FkIGFzIFBhcnRpYWw8RGlzY29yZFJhZGlvR3JvdXBJbnRlcmFjdGlvblJlc3BvbnNlPjtcblxuICAgIGlmIChwcm9wcy52YWx1ZSkgcmFkaW9Hcm91cC52YWx1ZSA9IF9wYXlsb2FkLnZhbHVlID8/IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHJldHVybiByYWRpb0dyb3VwO1xufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1DaGVja2JveEdyb3VwQ29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBQYXJ0aWFsPERpc2NvcmRDaGVja2JveEdyb3VwQ29tcG9uZW50IHwgRGlzY29yZENoZWNrYm94R3JvdXBJbnRlcmFjdGlvblJlc3BvbnNlPikge1xuICBjb25zdCBwcm9wcyA9IGJvdC50cmFuc2Zvcm1lcnMuZGVzaXJlZFByb3BlcnRpZXMuY29tcG9uZW50O1xuICBjb25zdCBjaGVja2JveEdyb3VwID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8Q29tcG9uZW50LCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj47XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSBjaGVja2JveEdyb3VwLnR5cGUgPSBwYXlsb2FkLnR5cGU7XG4gIGlmIChwcm9wcy5pZCAmJiBwYXlsb2FkLmlkKSBjaGVja2JveEdyb3VwLmlkID0gcGF5bG9hZC5pZDtcbiAgaWYgKHByb3BzLmN1c3RvbUlkICYmIHBheWxvYWQuY3VzdG9tX2lkKSBjaGVja2JveEdyb3VwLmN1c3RvbUlkID0gcGF5bG9hZC5jdXN0b21faWQ7XG5cbiAgLy8gV2UgYXNzdW1lIHRoYXQgaWYgd2UgZmluZCAnb3B0aW9ucycgaXQgaXMgdGhlIGNvbXBvbmVudFxuICBpZiAoJ29wdGlvbnMnIGluIHBheWxvYWQpIHtcbiAgICBpZiAocHJvcHMub3B0aW9ucyAmJiBwYXlsb2FkLm9wdGlvbnMpIGNoZWNrYm94R3JvdXAub3B0aW9ucyA9IHBheWxvYWQub3B0aW9ucztcbiAgICBpZiAocHJvcHMubWluVmFsdWVzICYmIHBheWxvYWQubWluX3ZhbHVlcyAhPT0gdW5kZWZpbmVkKSBjaGVja2JveEdyb3VwLm1pblZhbHVlcyA9IHBheWxvYWQubWluX3ZhbHVlcztcbiAgICBpZiAocHJvcHMubWF4VmFsdWVzICYmIHBheWxvYWQubWF4X3ZhbHVlcyAhPT0gdW5kZWZpbmVkKSBjaGVja2JveEdyb3VwLm1heFZhbHVlcyA9IHBheWxvYWQubWF4X3ZhbHVlcztcbiAgICBpZiAocHJvcHMucmVxdWlyZWQgJiYgcGF5bG9hZC5yZXF1aXJlZCAhPT0gdW5kZWZpbmVkKSBjaGVja2JveEdyb3VwLnJlcXVpcmVkID0gcGF5bG9hZC5yZXF1aXJlZDtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBfcGF5bG9hZCA9IHBheWxvYWQgYXMgUGFydGlhbDxEaXNjb3JkQ2hlY2tib3hHcm91cEludGVyYWN0aW9uUmVzcG9uc2U+O1xuXG4gICAgaWYgKHByb3BzLnZhbHVlcyAmJiBfcGF5bG9hZC52YWx1ZXMpIGNoZWNrYm94R3JvdXAudmFsdWVzID0gX3BheWxvYWQudmFsdWVzO1xuICB9XG5cbiAgcmV0dXJuIGNoZWNrYm94R3JvdXA7XG59XG5cbmZ1bmN0aW9uIHRyYW5zZm9ybUNoZWNrYm94Q29tcG9uZW50KGJvdDogQm90LCBwYXlsb2FkOiBQYXJ0aWFsPERpc2NvcmRDaGVja2JveENvbXBvbmVudCB8IERpc2NvcmRDaGVja2JveEludGVyYWN0aW9uUmVzcG9uc2U+KSB7XG4gIGNvbnN0IHByb3BzID0gYm90LnRyYW5zZm9ybWVycy5kZXNpcmVkUHJvcGVydGllcy5jb21wb25lbnQ7XG4gIGNvbnN0IGNoZWNrYm94ID0ge30gYXMgU2V0dXBEZXNpcmVkUHJvcHM8Q29tcG9uZW50LCBUcmFuc2Zvcm1lcnNEZXNpcmVkUHJvcGVydGllcywgRGVzaXJlZFByb3BlcnRpZXNCZWhhdmlvcj47XG5cbiAgaWYgKHByb3BzLnR5cGUgJiYgcGF5bG9hZC50eXBlKSBjaGVja2JveC50eXBlID0gcGF5bG9hZC50eXBlO1xuICBpZiAocHJvcHMuaWQgJiYgcGF5bG9hZC5pZCkgY2hlY2tib3guaWQgPSBwYXlsb2FkLmlkO1xuICBpZiAocHJvcHMuY3VzdG9tSWQgJiYgcGF5bG9hZC5jdXN0b21faWQpIGNoZWNrYm94LmN1c3RvbUlkID0gcGF5bG9hZC5jdXN0b21faWQ7XG5cbiAgaWYgKHByb3BzLnZhbHVlICYmICd2YWx1ZScgaW4gcGF5bG9hZCkgY2hlY2tib3gudmFsdWUgPSBwYXlsb2FkLnZhbHVlO1xuICBpZiAocHJvcHMuZGVmYXVsdCAmJiAnZGVmYXVsdCcgaW4gcGF5bG9hZCkgY2hlY2tib3guZGVmYXVsdCA9IHBheWxvYWQuZGVmYXVsdDtcblxuICByZXR1cm4gY2hlY2tib3g7XG59XG4iXSwibmFtZXMiOlsiTWVzc2FnZUNvbXBvbmVudFR5cGVzIiwiY2FsbEN1c3RvbWl6ZXIiLCJUb2dnbGVCaXRmaWVsZCIsInRyYW5zZm9ybUNvbXBvbmVudCIsImJvdCIsInBheWxvYWQiLCJleHRyYSIsImNvbXBvbmVudCIsInR5cGUiLCJFcnJvciIsIkFjdGlvblJvdyIsInRyYW5zZm9ybUFjdGlvblJvdyIsIkJ1dHRvbiIsInRyYW5zZm9ybUJ1dHRvbkNvbXBvbmVudCIsIkNvbnRhaW5lciIsInRyYW5zZm9ybUNvbnRhaW5lckNvbXBvbmVudCIsIlRleHRJbnB1dCIsInRyYW5zZm9ybUlucHV0VGV4dENvbXBvbmVudCIsIlN0cmluZ1NlbGVjdCIsInRyYW5zZm9ybVN0cmluZ1NlbGVjdE1lbnVDb21wb25lbnQiLCJVc2VyU2VsZWN0IiwidHJhbnNmb3JtVXNlclNlbGVjdE1lbnVDb21wb25lbnQiLCJSb2xlU2VsZWN0IiwidHJhbnNmb3JtUm9sZVNlbGVjdE1lbnVDb21wb25lbnQiLCJNZW50aW9uYWJsZVNlbGVjdCIsInRyYW5zZm9ybU1lbnRpb25hYmxlU2VsZWN0TWVudUNvbXBvbmVudCIsIkNoYW5uZWxTZWxlY3QiLCJ0cmFuc2Zvcm1DaGFubmVsU2VsZWN0TWVudUNvbXBvbmVudCIsIlNlY3Rpb24iLCJ0cmFuc2Zvcm1TZWN0aW9uQ29tcG9uZW50IiwiVGh1bWJuYWlsIiwidHJhbnNmb3JtVGh1bWJuYWlsQ29tcG9uZW50IiwiTWVkaWFHYWxsZXJ5IiwidHJhbnNmb3JtTWVkaWFHYWxsZXJ5Q29tcG9uZW50IiwiRmlsZSIsInRyYW5zZm9ybUZpbGVDb21wb25lbnQiLCJTZXBhcmF0b3IiLCJ0cmFuc2Zvcm1TZXBhcmF0b3JDb21wb25lbnQiLCJUZXh0RGlzcGxheSIsInRyYW5zZm9ybVRleHREaXNwbGF5Q29tcG9uZW50IiwiTGFiZWwiLCJ0cmFuc2Zvcm1MYWJlbENvbXBvbmVudCIsIkZpbGVVcGxvYWQiLCJ0cmFuc2Zvcm1GaWxlVXBsb2FkQ29tcG9uZW50IiwiUmFkaW9Hcm91cCIsInRyYW5zZm9ybVJhZGlvR3JvdXBDb21wb25lbnQiLCJDaGVja2JveEdyb3VwIiwidHJhbnNmb3JtQ2hlY2tib3hHcm91cENvbXBvbmVudCIsIkNoZWNrYm94IiwidHJhbnNmb3JtQ2hlY2tib3hDb21wb25lbnQiLCJwYXJ0aWFsIiwidHJhbnNmb3JtVW5mdXJsZWRNZWRpYUl0ZW0iLCJwcm9wcyIsInRyYW5zZm9ybWVycyIsImRlc2lyZWRQcm9wZXJ0aWVzIiwidW5mdXJsZWRNZWRpYUl0ZW0iLCJtZWRpYUl0ZW0iLCJ1cmwiLCJwcm94eVVybCIsInByb3h5X3VybCIsImhlaWdodCIsIndpZHRoIiwicGxhY2Vob2xkZXIiLCJwbGFjZWhvbGRlclZlcnNpb24iLCJwbGFjZWhvbGRlcl92ZXJzaW9uIiwiY29udGVudFR5cGUiLCJjb250ZW50X3R5cGUiLCJmbGFncyIsImF0dGFjaG1lbnRJZCIsImF0dGFjaG1lbnRfaWQiLCJzbm93Zmxha2UiLCJ0cmFuc2Zvcm1NZWRpYUdhbGxlcnlJdGVtIiwibWVkaWFHYWxsZXJ5SXRlbSIsImdhbGxlcnlJdGVtIiwibWVkaWEiLCJkZXNjcmlwdGlvbiIsInNwb2lsZXIiLCJhY3Rpb25Sb3ciLCJpZCIsImNvbXBvbmVudHMiLCJtYXAiLCJjb250YWluZXIiLCJhY2NlbnRDb2xvciIsImFjY2VudF9jb2xvciIsImJ1dHRvbiIsImxhYmVsIiwiY3VzdG9tSWQiLCJjdXN0b21faWQiLCJzdHlsZSIsImVtb2ppIiwiZGlzYWJsZWQiLCJza3VJZCIsInNrdV9pZCIsImlucHV0IiwidmFsdWUiLCJyZXF1aXJlZCIsIm1pbkxlbmd0aCIsIm1pbl9sZW5ndGgiLCJtYXhMZW5ndGgiLCJtYXhfbGVuZ3RoIiwic2VsZWN0IiwidmFsdWVzIiwiX3BheWxvYWQiLCJtaW5WYWx1ZXMiLCJtaW5fdmFsdWVzIiwibWF4VmFsdWVzIiwibWF4X3ZhbHVlcyIsIm9wdGlvbnMiLCJvcHRpb24iLCJ1bmRlZmluZWQiLCJuYW1lIiwiYW5pbWF0ZWQiLCJkZWZhdWx0IiwicmVzb2x2ZWQiLCJpbnRlcmFjdGlvbkRhdGFSZXNvbHZlZCIsImRlZmF1bHRWYWx1ZXMiLCJkZWZhdWx0X3ZhbHVlcyIsImRlZmF1bHRWYWx1ZSIsImNoYW5uZWxUeXBlcyIsImNoYW5uZWxfdHlwZXMiLCJzZWN0aW9uIiwiYWNjZXNzb3J5IiwidGh1bWJuYWlsIiwibWVkaWFHYWxsZXJ5IiwiaXRlbXMiLCJpdGVtIiwiZmlsZSIsInNpemUiLCJ0ZXh0RGlzcGxheSIsImNvbnRlbnQiLCJzZXBhcmF0b3IiLCJkaXZpZGVyIiwic3BhY2luZyIsImZpbGVVcGxvYWQiLCJm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
@@ -0,0 +1,4 @@
1
+ import type { DiscordEmbed } from '@discordeno/types';
2
+ import type { Bot } from '../bot.js';
3
+ export declare function transformEmbed(bot: Bot, payload: DiscordEmbed): any;
4
+ //# sourceMappingURL=embed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../../src/transformers/embed.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAIrC,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,YAAY,OAoE7D"}
@@ -0,0 +1,61 @@
1
+ import { ToggleBitfield } from './toggles/ToggleBitfield.js';
2
+ export function transformEmbed(bot, payload) {
3
+ const embed = {
4
+ title: payload.title,
5
+ type: payload.type,
6
+ description: payload.description,
7
+ url: payload.url,
8
+ timestamp: payload.timestamp ? Date.parse(payload.timestamp) : undefined,
9
+ color: payload.color,
10
+ footer: payload.footer ? {
11
+ text: payload.footer.text,
12
+ iconUrl: payload.footer.icon_url,
13
+ proxyIconUrl: payload.footer.proxy_icon_url
14
+ } : undefined,
15
+ image: payload.image ? {
16
+ url: payload.image.url,
17
+ proxyUrl: payload.image.proxy_url,
18
+ height: payload.image.height,
19
+ width: payload.image.width,
20
+ contentType: payload.image.content_type,
21
+ placeholder: payload.image.placeholder,
22
+ placeholderVersion: payload.image.placeholder_version,
23
+ description: payload.image.description,
24
+ flags: payload.image.flags ? new ToggleBitfield(payload.image.flags) : undefined
25
+ } : undefined,
26
+ thumbnail: payload.thumbnail ? {
27
+ url: payload.thumbnail.url,
28
+ proxyUrl: payload.thumbnail.proxy_url,
29
+ height: payload.thumbnail.height,
30
+ width: payload.thumbnail.width,
31
+ contentType: payload.thumbnail.content_type,
32
+ placeholder: payload.thumbnail.placeholder,
33
+ placeholderVersion: payload.thumbnail.placeholder_version,
34
+ description: payload.thumbnail.description,
35
+ flags: payload.thumbnail.flags ? new ToggleBitfield(payload.thumbnail.flags) : undefined
36
+ } : undefined,
37
+ video: payload.video ? {
38
+ url: payload.video.url,
39
+ proxyUrl: payload.video.proxy_url,
40
+ height: payload.video.height,
41
+ width: payload.video.width,
42
+ contentType: payload.video.content_type,
43
+ placeholder: payload.video.placeholder,
44
+ placeholderVersion: payload.video.placeholder_version,
45
+ description: payload.video.description,
46
+ flags: payload.video.flags ? new ToggleBitfield(payload.video.flags) : undefined
47
+ } : undefined,
48
+ provider: payload.provider,
49
+ author: payload.author ? {
50
+ name: payload.author.name,
51
+ url: payload.author.url,
52
+ iconUrl: payload.author.icon_url,
53
+ proxyIconUrl: payload.author.proxy_icon_url
54
+ } : undefined,
55
+ fields: payload.fields,
56
+ flags: payload.flags ? new ToggleBitfield(payload.flags) : undefined
57
+ };
58
+ return bot.transformers.customizers.embed(bot, payload, embed);
59
+ }
60
+
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2Zvcm1lcnMvZW1iZWQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEaXNjb3JkRW1iZWQgfSBmcm9tICdAZGlzY29yZGVuby90eXBlcyc7XG5pbXBvcnQgdHlwZSB7IEJvdCB9IGZyb20gJy4uL2JvdC5qcyc7XG5pbXBvcnQgeyBUb2dnbGVCaXRmaWVsZCB9IGZyb20gJy4vdG9nZ2xlcy9Ub2dnbGVCaXRmaWVsZC5qcyc7XG5pbXBvcnQgdHlwZSB7IEVtYmVkIH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1FbWJlZChib3Q6IEJvdCwgcGF5bG9hZDogRGlzY29yZEVtYmVkKSB7XG4gIGNvbnN0IGVtYmVkID0ge1xuICAgIHRpdGxlOiBwYXlsb2FkLnRpdGxlLFxuICAgIHR5cGU6IHBheWxvYWQudHlwZSxcbiAgICBkZXNjcmlwdGlvbjogcGF5bG9hZC5kZXNjcmlwdGlvbixcbiAgICB1cmw6IHBheWxvYWQudXJsLFxuICAgIHRpbWVzdGFtcDogcGF5bG9hZC50aW1lc3RhbXAgPyBEYXRlLnBhcnNlKHBheWxvYWQudGltZXN0YW1wKSA6IHVuZGVmaW5lZCxcbiAgICBjb2xvcjogcGF5bG9hZC5jb2xvcixcbiAgICBmb290ZXI6IHBheWxvYWQuZm9vdGVyXG4gICAgICA/IHtcbiAgICAgICAgICB0ZXh0OiBwYXlsb2FkLmZvb3Rlci50ZXh0LFxuICAgICAgICAgIGljb25Vcmw6IHBheWxvYWQuZm9vdGVyLmljb25fdXJsLFxuICAgICAgICAgIHByb3h5SWNvblVybDogcGF5bG9hZC5mb290ZXIucHJveHlfaWNvbl91cmwsXG4gICAgICAgIH1cbiAgICAgIDogdW5kZWZpbmVkLFxuICAgIGltYWdlOiBwYXlsb2FkLmltYWdlXG4gICAgICA/IHtcbiAgICAgICAgICB1cmw6IHBheWxvYWQuaW1hZ2UudXJsLFxuICAgICAgICAgIHByb3h5VXJsOiBwYXlsb2FkLmltYWdlLnByb3h5X3VybCxcbiAgICAgICAgICBoZWlnaHQ6IHBheWxvYWQuaW1hZ2UuaGVpZ2h0LFxuICAgICAgICAgIHdpZHRoOiBwYXlsb2FkLmltYWdlLndpZHRoLFxuICAgICAgICAgIGNvbnRlbnRUeXBlOiBwYXlsb2FkLmltYWdlLmNvbnRlbnRfdHlwZSxcbiAgICAgICAgICBwbGFjZWhvbGRlcjogcGF5bG9hZC5pbWFnZS5wbGFjZWhvbGRlcixcbiAgICAgICAgICBwbGFjZWhvbGRlclZlcnNpb246IHBheWxvYWQuaW1hZ2UucGxhY2Vob2xkZXJfdmVyc2lvbixcbiAgICAgICAgICBkZXNjcmlwdGlvbjogcGF5bG9hZC5pbWFnZS5kZXNjcmlwdGlvbixcbiAgICAgICAgICBmbGFnczogcGF5bG9hZC5pbWFnZS5mbGFncyA/IG5ldyBUb2dnbGVCaXRmaWVsZChwYXlsb2FkLmltYWdlLmZsYWdzKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgfVxuICAgICAgOiB1bmRlZmluZWQsXG4gICAgdGh1bWJuYWlsOiBwYXlsb2FkLnRodW1ibmFpbFxuICAgICAgPyB7XG4gICAgICAgICAgdXJsOiBwYXlsb2FkLnRodW1ibmFpbC51cmwsXG4gICAgICAgICAgcHJveHlVcmw6IHBheWxvYWQudGh1bWJuYWlsLnByb3h5X3VybCxcbiAgICAgICAgICBoZWlnaHQ6IHBheWxvYWQudGh1bWJuYWlsLmhlaWdodCxcbiAgICAgICAgICB3aWR0aDogcGF5bG9hZC50aHVtYm5haWwud2lkdGgsXG4gICAgICAgICAgY29udGVudFR5cGU6IHBheWxvYWQudGh1bWJuYWlsLmNvbnRlbnRfdHlwZSxcbiAgICAgICAgICBwbGFjZWhvbGRlcjogcGF5bG9hZC50aHVtYm5haWwucGxhY2Vob2xkZXIsXG4gICAgICAgICAgcGxhY2Vob2xkZXJWZXJzaW9uOiBwYXlsb2FkLnRodW1ibmFpbC5wbGFjZWhvbGRlcl92ZXJzaW9uLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBwYXlsb2FkLnRodW1ibmFpbC5kZXNjcmlwdGlvbixcbiAgICAgICAgICBmbGFnczogcGF5bG9hZC50aHVtYm5haWwuZmxhZ3MgPyBuZXcgVG9nZ2xlQml0ZmllbGQocGF5bG9hZC50aHVtYm5haWwuZmxhZ3MpIDogdW5kZWZpbmVkLFxuICAgICAgICB9XG4gICAgICA6IHVuZGVmaW5lZCxcbiAgICB2aWRlbzogcGF5bG9hZC52aWRlb1xuICAgICAgPyB7XG4gICAgICAgICAgdXJsOiBwYXlsb2FkLnZpZGVvLnVybCxcbiAgICAgICAgICBwcm94eVVybDogcGF5bG9hZC52aWRlby5wcm94eV91cmwsXG4gICAgICAgICAgaGVpZ2h0OiBwYXlsb2FkLnZpZGVvLmhlaWdodCxcbiAgICAgICAgICB3aWR0aDogcGF5bG9hZC52aWRlby53aWR0aCxcbiAgICAgICAgICBjb250ZW50VHlwZTogcGF5bG9hZC52aWRlby5jb250ZW50X3R5cGUsXG4gICAgICAgICAgcGxhY2Vob2xkZXI6IHBheWxvYWQudmlkZW8ucGxhY2Vob2xkZXIsXG4gICAgICAgICAgcGxhY2Vob2xkZXJWZXJzaW9uOiBwYXlsb2FkLnZpZGVvLnBsYWNlaG9sZGVyX3ZlcnNpb24sXG4gICAgICAgICAgZGVzY3JpcHRpb246IHBheWxvYWQudmlkZW8uZGVzY3JpcHRpb24sXG4gICAgICAgICAgZmxhZ3M6IHBheWxvYWQudmlkZW8uZmxhZ3MgPyBuZXcgVG9nZ2xlQml0ZmllbGQocGF5bG9hZC52aWRlby5mbGFncykgOiB1bmRlZmluZWQsXG4gICAgICAgIH1cbiAgICAgIDogdW5kZWZpbmVkLFxuICAgIHByb3ZpZGVyOiBwYXlsb2FkLnByb3ZpZGVyLFxuICAgIGF1dGhvcjogcGF5bG9hZC5hdXRob3JcbiAgICAgID8ge1xuICAgICAgICAgIG5hbWU6IHBheWxvYWQuYXV0aG9yLm5hbWUsXG4gICAgICAgICAgdXJsOiBwYXlsb2FkLmF1dGhvci51cmwsXG4gICAgICAgICAgaWNvblVybDogcGF5bG9hZC5hdXRob3IuaWNvbl91cmwsXG4gICAgICAgICAgcHJveHlJY29uVXJsOiBwYXlsb2FkLmF1dGhvci5wcm94eV9pY29uX3VybCxcbiAgICAgICAgfVxuICAgICAgOiB1bmRlZmluZWQsXG4gICAgZmllbGRzOiBwYXlsb2FkLmZpZWxkcyxcbiAgICBmbGFnczogcGF5bG9hZC5mbGFncyA/IG5ldyBUb2dnbGVCaXRmaWVsZChwYXlsb2FkLmZsYWdzKSA6IHVuZGVmaW5lZCxcbiAgfSBhcyBFbWJlZDtcblxuICByZXR1cm4gYm90LnRyYW5zZm9ybWVycy5jdXN0b21pemVycy5lbWJlZChib3QsIHBheWxvYWQsIGVtYmVkKTtcbn1cbiJdLCJuYW1lcyI6WyJUb2dnbGVCaXRmaWVsZCIsInRyYW5zZm9ybUVtYmVkIiwiYm90IiwicGF5bG9hZCIsImVtYmVkIiwidGl0bGUiLCJ0eXBlIiwiZGVzY3JpcHRpb24iLCJ1cmwiLCJ0aW1lc3RhbXAiLCJEYXRlIiwicGFyc2UiLCJ1bmRlZmluZWQiLCJjb2xvciIsImZvb3RlciIsInRleHQiLCJpY29uVXJsIiwiaWNvbl91cmwiLCJwcm94eUljb25VcmwiLCJwcm94eV9pY29uX3VybCIsImltYWdlIiwicHJveHlVcmwiLCJwcm94eV91cmwiLCJoZWlnaHQiLCJ3aWR0aCIsImNvbnRlbnRUeXBlIiwiY29udGVudF90eXBlIiwicGxhY2Vob2xkZXIiLCJwbGFjZWhvbGRlclZlcnNpb24iLCJwbGFjZWhvbGRlcl92ZXJzaW9uIiwiZmxhZ3MiLCJ0aHVtYm5haWwiLCJ2aWRlbyIsInByb3ZpZGVyIiwiYXV0aG9yIiwibmFtZSIsImZpZWxkcyIsInRyYW5zZm9ybWVycyIsImN1c3RvbWl6ZXJzIl0sIm1hcHBpbmdzIjoiQUFFQSxTQUFTQSxjQUFjLFFBQVEsOEJBQThCO0FBRzdELE9BQU8sU0FBU0MsZUFBZUMsR0FBUSxFQUFFQyxPQUFxQjtJQUM1RCxNQUFNQyxRQUFRO1FBQ1pDLE9BQU9GLFFBQVFFLEtBQUs7UUFDcEJDLE1BQU1ILFFBQVFHLElBQUk7UUFDbEJDLGFBQWFKLFFBQVFJLFdBQVc7UUFDaENDLEtBQUtMLFFBQVFLLEdBQUc7UUFDaEJDLFdBQVdOLFFBQVFNLFNBQVMsR0FBR0MsS0FBS0MsS0FBSyxDQUFDUixRQUFRTSxTQUFTLElBQUlHO1FBQy9EQyxPQUFPVixRQUFRVSxLQUFLO1FBQ3BCQyxRQUFRWCxRQUFRVyxNQUFNLEdBQ2xCO1lBQ0VDLE1BQU1aLFFBQVFXLE1BQU0sQ0FBQ0MsSUFBSTtZQUN6QkMsU0FBU2IsUUFBUVcsTUFBTSxDQUFDRyxRQUFRO1lBQ2hDQyxjQUFjZixRQUFRVyxNQUFNLENBQUNLLGNBQWM7UUFDN0MsSUFDQVA7UUFDSlEsT0FBT2pCLFFBQVFpQixLQUFLLEdBQ2hCO1lBQ0VaLEtBQUtMLFFBQVFpQixLQUFLLENBQUNaLEdBQUc7WUFDdEJhLFVBQVVsQixRQUFRaUIsS0FBSyxDQUFDRSxTQUFTO1lBQ2pDQyxRQUFRcEIsUUFBUWlCLEtBQUssQ0FBQ0csTUFBTTtZQUM1QkMsT0FBT3JCLFFBQVFpQixLQUFLLENBQUNJLEtBQUs7WUFDMUJDLGFBQWF0QixRQUFRaUIsS0FBSyxDQUFDTSxZQUFZO1lBQ3ZDQyxhQUFheEIsUUFBUWlCLEtBQUssQ0FBQ08sV0FBVztZQUN0Q0Msb0JBQW9CekIsUUFBUWlCLEtBQUssQ0FBQ1MsbUJBQW1CO1lBQ3JEdEIsYUFBYUosUUFBUWlCLEtBQUssQ0FBQ2IsV0FBVztZQUN0Q3VCLE9BQU8zQixRQUFRaUIsS0FBSyxDQUFDVSxLQUFLLEdBQUcsSUFBSTlCLGVBQWVHLFFBQVFpQixLQUFLLENBQUNVLEtBQUssSUFBSWxCO1FBQ3pFLElBQ0FBO1FBQ0ptQixXQUFXNUIsUUFBUTRCLFNBQVMsR0FDeEI7WUFDRXZCLEtBQUtMLFFBQVE0QixTQUFTLENBQUN2QixHQUFHO1lBQzFCYSxVQUFVbEIsUUFBUTRCLFNBQVMsQ0FBQ1QsU0FBUztZQUNyQ0MsUUFBUXBCLFFBQVE0QixTQUFTLENBQUNSLE1BQU07WUFDaENDLE9BQU9yQixRQUFRNEIsU0FBUyxDQUFDUCxLQUFLO1lBQzlCQyxhQUFhdEIsUUFBUTRCLFNBQVMsQ0FBQ0wsWUFBWTtZQUMzQ0MsYUFBYXhCLFFBQVE0QixTQUFTLENBQUNKLFdBQVc7WUFDMUNDLG9CQUFvQnpCLFFBQVE0QixTQUFTLENBQUNGLG1CQUFtQjtZQUN6RHRCLGFBQWFKLFFBQVE0QixTQUFTLENBQUN4QixXQUFXO1lBQzFDdUIsT0FBTzNCLFFBQVE0QixTQUFTLENBQUNELEtBQUssR0FBRyxJQUFJOUIsZUFBZUcsUUFBUTRCLFNBQVMsQ0FBQ0QsS0FBSyxJQUFJbEI7UUFDakYsSUFDQUE7UUFDSm9CLE9BQU83QixRQUFRNkIsS0FBSyxHQUNoQjtZQUNFeEIsS0FBS0wsUUFBUTZCLEtBQUssQ0FBQ3hCLEdBQUc7WUFDdEJhLFVBQVVsQixRQUFRNkIsS0FBSyxDQUFDVixTQUFTO1lBQ2pDQyxRQUFRcEIsUUFBUTZCLEtBQUssQ0FBQ1QsTUFBTTtZQUM1QkMsT0FBT3JCLFFBQVE2QixLQUFLLENBQUNSLEtBQUs7WUFDMUJDLGFBQWF0QixRQUFRNkIsS0FBSyxDQUFDTixZQUFZO1lBQ3ZDQyxhQUFheEIsUUFBUTZCLEtBQUssQ0FBQ0wsV0FBVztZQUN0Q0Msb0JBQW9CekIsUUFBUTZCLEtBQUssQ0FBQ0gsbUJBQW1CO1lBQ3JEdEIsYUFBYUosUUFBUTZCLEtBQUssQ0FBQ3pCLFdBQVc7WUFDdEN1QixPQUFPM0IsUUFBUTZCLEtBQUssQ0FBQ0YsS0FBSyxHQUFHLElBQUk5QixlQUFlRyxRQUFRNkIsS0FBSyxDQUFDRixLQUFLLElBQUlsQjtRQUN6RSxJQUNBQTtRQUNKcUIsVUFBVTlCLFFBQVE4QixRQUFRO1FBQzFCQyxRQUFRL0IsUUFBUStCLE1BQU0sR0FDbEI7WUFDRUMsTUFBTWhDLFFBQVErQixNQUFNLENBQUNDLElBQUk7WUFDekIzQixLQUFLTCxRQUFRK0IsTUFBTSxDQUFDMUIsR0FBRztZQUN2QlEsU0FBU2IsUUFBUStCLE1BQU0sQ0FBQ2pCLFFBQVE7WUFDaENDLGNBQWNmLFFBQVErQixNQUFNLENBQUNmLGNBQWM7UUFDN0MsSUFDQVA7UUFDSndCLFFBQVFqQyxRQUFRaUMsTUFBTTtRQUN0Qk4sT0FBTzNCLFFBQVEyQixLQUFLLEdBQUcsSUFBSTlCLGVBQWVHLFFBQVEyQixLQUFLLElBQUlsQjtJQUM3RDtJQUVBLE9BQU9WLElBQUltQyxZQUFZLENBQUNDLFdBQVcsQ0FBQ2xDLEtBQUssQ0FBQ0YsS0FBS0MsU0FBU0M7QUFDMUQifQ==