disgroove 2.2.2-dev.bd3875c → 2.2.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 (80) hide show
  1. package/README.md +2 -6
  2. package/dist/lib/Client.d.ts +47 -49
  3. package/dist/lib/Client.js +170 -182
  4. package/dist/lib/constants.d.ts +19 -4
  5. package/dist/lib/constants.js +22 -5
  6. package/dist/lib/gateway/Shard.js +59 -58
  7. package/dist/lib/index.d.ts +1 -0
  8. package/dist/lib/index.js +1 -0
  9. package/dist/lib/rest/Endpoints.d.ts +6 -6
  10. package/dist/lib/rest/Endpoints.js +13 -13
  11. package/dist/lib/rest/RequestManager.d.ts +1 -1
  12. package/dist/lib/rest/index.d.ts +0 -1
  13. package/dist/lib/rest/index.js +1 -2
  14. package/dist/lib/transformers/Applications.d.ts +8 -0
  15. package/dist/lib/transformers/Applications.js +211 -0
  16. package/dist/lib/transformers/AuditLogs.d.ts +7 -0
  17. package/dist/lib/transformers/AuditLogs.js +97 -0
  18. package/dist/lib/transformers/AutoModeration.d.ts +5 -0
  19. package/dist/lib/transformers/AutoModeration.js +64 -0
  20. package/dist/lib/transformers/Channels.d.ts +16 -0
  21. package/dist/lib/transformers/Channels.js +676 -0
  22. package/dist/lib/transformers/Emojis.d.ts +5 -0
  23. package/dist/lib/transformers/Emojis.js +31 -0
  24. package/dist/lib/transformers/Entitlements.d.ts +7 -0
  25. package/dist/lib/transformers/Entitlements.js +58 -0
  26. package/dist/lib/transformers/GuildScheduledEvents.d.ts +5 -0
  27. package/dist/lib/transformers/GuildScheduledEvents.js +51 -0
  28. package/dist/lib/transformers/GuildTemplates.d.ts +5 -0
  29. package/dist/lib/transformers/GuildTemplates.js +38 -0
  30. package/dist/lib/transformers/Guilds.d.ts +12 -0
  31. package/dist/lib/transformers/Guilds.js +248 -0
  32. package/dist/lib/transformers/Interactions.d.ts +10 -0
  33. package/dist/lib/transformers/Interactions.js +273 -0
  34. package/dist/lib/transformers/Invites.d.ts +5 -0
  35. package/dist/lib/transformers/Invites.js +79 -0
  36. package/dist/lib/transformers/Polls.d.ts +5 -0
  37. package/dist/lib/transformers/Polls.js +50 -0
  38. package/dist/lib/transformers/Presences.d.ts +8 -0
  39. package/dist/lib/transformers/Presences.js +108 -0
  40. package/dist/lib/transformers/Roles.d.ts +5 -0
  41. package/dist/lib/transformers/Roles.js +56 -0
  42. package/dist/lib/transformers/SKUs.d.ts +5 -0
  43. package/dist/lib/transformers/SKUs.js +26 -0
  44. package/dist/lib/transformers/StageInstances.d.ts +5 -0
  45. package/dist/lib/transformers/StageInstances.js +28 -0
  46. package/dist/lib/transformers/Stickers.d.ts +5 -0
  47. package/dist/lib/transformers/Stickers.js +41 -0
  48. package/dist/lib/transformers/Teams.d.ts +5 -0
  49. package/dist/lib/transformers/Teams.js +35 -0
  50. package/dist/lib/transformers/Users.d.ts +5 -0
  51. package/dist/lib/transformers/Users.js +48 -0
  52. package/dist/lib/transformers/Voice.d.ts +5 -0
  53. package/dist/lib/transformers/Voice.js +45 -0
  54. package/dist/lib/transformers/Webhooks.d.ts +5 -0
  55. package/dist/lib/transformers/Webhooks.js +51 -0
  56. package/dist/lib/transformers/index.d.ts +21 -0
  57. package/dist/lib/transformers/index.js +37 -0
  58. package/dist/lib/types/entitlements.d.ts +0 -6
  59. package/dist/lib/types/interaction.d.ts +2 -2
  60. package/dist/lib/types/sku.d.ts +0 -12
  61. package/dist/lib/utils/CDN.d.ts +24 -0
  62. package/dist/lib/utils/CDN.js +49 -0
  63. package/dist/lib/utils/Util.d.ts +1 -93
  64. package/dist/lib/utils/Util.js +2 -2211
  65. package/dist/lib/utils/formatters.d.ts +9 -0
  66. package/dist/lib/utils/formatters.js +38 -0
  67. package/dist/lib/utils/index.d.ts +2 -0
  68. package/dist/lib/utils/index.js +15 -0
  69. package/dist/package.json +3 -3
  70. package/package.json +3 -3
  71. package/dist/lib/rest/CDN.d.ts +0 -22
  72. package/dist/lib/rest/CDN.js +0 -45
  73. package/dist/lib/types/voice-connections.d.ts +0 -64
  74. package/dist/lib/types/voice-connections.js +0 -2
  75. package/dist/lib/voice/VoiceConnection.d.ts +0 -57
  76. package/dist/lib/voice/VoiceConnection.js +0 -150
  77. package/dist/lib/voice/VoiceConnectionManager.d.ts +0 -19
  78. package/dist/lib/voice/VoiceConnectionManager.js +0 -66
  79. package/dist/lib/voice/index.d.ts +0 -2
  80. package/dist/lib/voice/index.js +0 -18
@@ -1,1646 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Util = void 0;
4
- const constants_1 = require("../constants");
5
4
  class Util {
6
- applicationCommandFromRaw(applicationCommand) {
7
- return {
8
- id: applicationCommand.id,
9
- type: applicationCommand.type,
10
- applicationID: applicationCommand.application_id,
11
- guildID: applicationCommand.guild_id,
12
- name: applicationCommand.name,
13
- nameLocalizations: applicationCommand.name_localizations,
14
- description: applicationCommand.description,
15
- descriptionLocalizations: applicationCommand.description_localizations,
16
- options: applicationCommand.options?.map((option) => ({
17
- type: option.type,
18
- name: option.name,
19
- name_localizations: option.name_localizations,
20
- description: option.description,
21
- description_localizations: option.description_localizations,
22
- required: option.required,
23
- choices: option.choices?.map((choice) => ({
24
- name: choice.name,
25
- name_localizations: choice.name_localizations,
26
- value: choice.value,
27
- })),
28
- options: option.options?.map((o) => ({
29
- type: o.type,
30
- name: o.name,
31
- name_localizations: o.name_localizations,
32
- description: o.description,
33
- description_localizations: o.description_localizations,
34
- required: o.required,
35
- choices: o.choices?.map((choice) => ({
36
- name: choice.name,
37
- name_localizations: choice.name_localizations,
38
- value: choice.value,
39
- })),
40
- channel_types: o.channel_types,
41
- min_value: o.min_value,
42
- max_value: o.max_value,
43
- min_length: o.min_length,
44
- max_length: o.max_length,
45
- autocomplete: o.autocomplete,
46
- })),
47
- channel_types: option.channel_types,
48
- min_value: option.min_value,
49
- max_value: option.max_value,
50
- min_length: option.min_length,
51
- max_length: option.max_length,
52
- autocomplete: option.autocomplete,
53
- })),
54
- defaultMemberPermissions: applicationCommand.default_member_permissions,
55
- dmPermission: applicationCommand.dm_permission,
56
- defaultPermission: applicationCommand.default_permission,
57
- nsfw: applicationCommand.nsfw,
58
- version: applicationCommand.version,
59
- };
60
- }
61
- applicationCommandToRaw(applicationCommand) {
62
- return {
63
- id: applicationCommand.id,
64
- type: applicationCommand.type,
65
- application_id: applicationCommand.applicationID,
66
- guild_id: applicationCommand.guildID,
67
- name: applicationCommand.name,
68
- name_localizations: applicationCommand.nameLocalizations,
69
- description: applicationCommand.description,
70
- description_localizations: applicationCommand.descriptionLocalizations,
71
- options: applicationCommand.options?.map((option) => ({
72
- type: option.type,
73
- name: option.name,
74
- name_localizations: option.nameLocalizations,
75
- description: option.description,
76
- description_localizations: option.descriptionLocalizations,
77
- required: option.required,
78
- choices: option.choices?.map((choice) => ({
79
- name: choice.name,
80
- name_localizations: choice.nameLocalizations,
81
- value: choice.value,
82
- })),
83
- options: option.options?.map((o) => ({
84
- type: o.type,
85
- name: o.name,
86
- name_localizations: o.nameLocalizations,
87
- description: o.description,
88
- description_localizations: o.descriptionLocalizations,
89
- required: o.required,
90
- choices: o.choices?.map((choice) => ({
91
- name: choice.name,
92
- name_localizations: choice.nameLocalizations,
93
- value: choice.value,
94
- })),
95
- channel_types: o.channelTypes,
96
- min_value: o.minValue,
97
- max_value: o.maxValue,
98
- min_length: o.minLength,
99
- max_length: o.maxLength,
100
- autocomplete: o.autocomplete,
101
- })),
102
- channel_types: option.channelTypes,
103
- min_value: option.minValue,
104
- max_value: option.maxValue,
105
- min_length: option.minLength,
106
- max_length: option.maxLength,
107
- autocomplete: option.autocomplete,
108
- })),
109
- default_member_permissions: applicationCommand.defaultMemberPermissions,
110
- dm_permission: applicationCommand.dmPermission,
111
- default_permission: applicationCommand.defaultPermission,
112
- nsfw: applicationCommand.nsfw,
113
- version: applicationCommand.version,
114
- };
115
- }
116
- applicationFromRaw(application) {
117
- return {
118
- id: application.id,
119
- name: application.name,
120
- icon: application.icon,
121
- description: application.description,
122
- rpcOrigins: application.rpc_origins,
123
- botPublic: application.bot_public,
124
- botRequireCodeGrant: application.bot_require_code_grant,
125
- termsOfServiceURL: application.terms_of_service_url,
126
- privacyPolicyURL: application.privacy_policy_url,
127
- owner: application.owner !== undefined
128
- ? this.userFromRaw(application.owner)
129
- : undefined,
130
- verifyKey: application.verify_key,
131
- team: application.team !== null ? this.teamFromRaw(application.team) : null,
132
- guildID: application.guild_id,
133
- guild: application.guild !== undefined
134
- ? this.guildFromRaw(application.guild)
135
- : undefined,
136
- primarySKUID: application.primary_sku_id,
137
- slug: application.slug,
138
- coverImage: application.cover_image,
139
- flags: application.flags,
140
- approximateGuildCount: application.approximate_guild_count,
141
- redirectURIs: application.redirect_uris,
142
- interactionsEndpointURL: application.interactions_endpoint_url,
143
- roleConnectionsVerificationURL: application.role_connections_verification_url,
144
- tags: application.tags,
145
- installParams: application.install_params,
146
- integrationTypesConfig: application.integration_types_config !== undefined
147
- ? {
148
- "0": {
149
- oauth2InstallParams: application.integration_types_config?.[0]
150
- .oauth2_install_params,
151
- },
152
- "1": {
153
- oauth2InstallParams: application.integration_types_config?.[1]
154
- .oauth2_install_params,
155
- },
156
- }
157
- : undefined,
158
- customInstallURL: application.custom_install_url,
159
- };
160
- }
161
- applicationToRaw(application) {
162
- return {
163
- id: application.id,
164
- name: application.name,
165
- icon: application.icon,
166
- description: application.description,
167
- rpc_origins: application.rpcOrigins,
168
- bot_public: application.botPublic,
169
- bot_require_code_grant: application.botRequireCodeGrant,
170
- terms_of_service_url: application.termsOfServiceURL,
171
- privacy_policy_url: application.privacyPolicyURL,
172
- owner: application.owner !== undefined
173
- ? this.userToRaw(application.owner)
174
- : undefined,
175
- verify_key: application.verifyKey,
176
- team: application.team !== null ? this.teamToRaw(application.team) : null,
177
- guild_id: application.guildID,
178
- guild: application.guild !== undefined
179
- ? this.guildToRaw(application.guild)
180
- : undefined,
181
- primary_sku_id: application.primarySKUID,
182
- slug: application.slug,
183
- cover_image: application.coverImage,
184
- flags: application.flags,
185
- approximate_guild_count: application.approximateGuildCount,
186
- redirect_uris: application.redirectURIs,
187
- interactions_endpoint_url: application.interactionsEndpointURL,
188
- role_connections_verification_url: application.roleConnectionsVerificationURL,
189
- tags: application.tags,
190
- install_params: application.installParams,
191
- integration_types_config: application.integrationTypesConfig !== undefined
192
- ? {
193
- "0": {
194
- oauth2_install_params: application.integrationTypesConfig?.[0].oauth2InstallParams,
195
- },
196
- "1": {
197
- oauth2_install_params: application.integrationTypesConfig?.[1].oauth2InstallParams,
198
- },
199
- }
200
- : undefined,
201
- custom_install_url: application.customInstallURL,
202
- };
203
- }
204
- attachmentFromRaw(attachment) {
205
- return {
206
- id: attachment.id,
207
- filename: attachment.filename,
208
- title: attachment.title,
209
- description: attachment.description,
210
- contentType: attachment.content_type,
211
- size: attachment.size,
212
- url: attachment.url,
213
- proxyURL: attachment.proxy_url,
214
- height: attachment.height,
215
- width: attachment.width,
216
- ephemeral: attachment.ephemeral,
217
- durationSecs: attachment.duration_secs,
218
- waveform: attachment.waveform,
219
- flags: attachment.flags,
220
- };
221
- }
222
- attachmentToRaw(attachment) {
223
- return {
224
- id: attachment.id,
225
- filename: attachment.filename,
226
- title: attachment.title,
227
- description: attachment.description,
228
- content_type: attachment.contentType,
229
- size: attachment.size,
230
- url: attachment.url,
231
- proxy_url: attachment.proxyURL,
232
- height: attachment.height,
233
- width: attachment.width,
234
- ephemeral: attachment.ephemeral,
235
- duration_secs: attachment.durationSecs,
236
- waveform: attachment.waveform,
237
- flags: attachment.flags,
238
- };
239
- }
240
- auditLogEntryFromRaw(auditLogEntry) {
241
- return {
242
- targetID: auditLogEntry.target_id,
243
- changes: auditLogEntry.changes?.map((auditLogChange) => ({
244
- newValue: auditLogChange.new_value,
245
- oldValue: auditLogChange.old_value,
246
- key: auditLogChange.key,
247
- })),
248
- userID: auditLogEntry.user_id,
249
- id: auditLogEntry.id,
250
- actionType: auditLogEntry.action_type,
251
- options: auditLogEntry.options !== undefined
252
- ? {
253
- applicationID: auditLogEntry.options.application_id,
254
- autoModerationRuleName: auditLogEntry.options.auto_moderation_rule_name,
255
- autoModerationRuleTriggerType: auditLogEntry.options.auto_moderation_rule_trigger_type,
256
- channelID: auditLogEntry.options.channel_id,
257
- count: auditLogEntry.options.count,
258
- deleteMemberDays: auditLogEntry.options.delete_member_days,
259
- id: auditLogEntry.options.id,
260
- membersRemoved: auditLogEntry.options.members_removed,
261
- messageID: auditLogEntry.options.message_id,
262
- roleName: auditLogEntry.options.role_name,
263
- type: auditLogEntry.options.type,
264
- integrationType: auditLogEntry.options.integration_type,
265
- }
266
- : undefined,
267
- reason: auditLogEntry.reason,
268
- };
269
- }
270
- auditLogEntryToRaw(auditLogEntry) {
271
- return {
272
- target_id: auditLogEntry.targetID,
273
- changes: auditLogEntry.changes?.map((auditLogChange) => ({
274
- new_value: auditLogChange.newValue,
275
- old_value: auditLogChange.oldValue,
276
- key: auditLogChange.key,
277
- })),
278
- user_id: auditLogEntry.userID,
279
- id: auditLogEntry.id,
280
- action_type: auditLogEntry.actionType,
281
- options: auditLogEntry.options !== undefined
282
- ? {
283
- application_id: auditLogEntry.options.applicationID,
284
- auto_moderation_rule_name: auditLogEntry.options.autoModerationRuleName,
285
- auto_moderation_rule_trigger_type: auditLogEntry.options.autoModerationRuleTriggerType,
286
- channel_id: auditLogEntry.options.channelID,
287
- count: auditLogEntry.options.count,
288
- delete_member_days: auditLogEntry.options.deleteMemberDays,
289
- id: auditLogEntry.options.id,
290
- members_removed: auditLogEntry.options.membersRemoved,
291
- message_id: auditLogEntry.options.messageID,
292
- role_name: auditLogEntry.options.roleName,
293
- type: auditLogEntry.options.type,
294
- integration_type: auditLogEntry.options.integrationType,
295
- }
296
- : undefined,
297
- reason: auditLogEntry.reason,
298
- };
299
- }
300
- auditLogFromRaw(auditLog) {
301
- return {
302
- applicationCommands: auditLog.application_commands.map((applicationCommand) => this.applicationCommandFromRaw(applicationCommand)),
303
- auditLogEntries: auditLog.audit_log_entries.map((auditLogEntry) => this.auditLogEntryFromRaw(auditLogEntry)),
304
- autoModerationRules: auditLog.auto_moderation_rules.map((autoModerationRule) => this.autoModerationRuleFromRaw(autoModerationRule)),
305
- guildScheduledEvents: auditLog.guild_scheduled_events.map((guildScheduledEvent) => this.guildScheduledEventFromRaw(guildScheduledEvent)),
306
- integrations: auditLog.integrations.map((integration) => this.integrationFromRaw(integration)),
307
- threads: auditLog.threads.map((thread) => this.channelFromRaw(thread)),
308
- users: auditLog.users.map((user) => this.userFromRaw(user)),
309
- webhooks: auditLog.webhooks.map((webhook) => this.webhookFromRaw(webhook)),
310
- };
311
- }
312
- auditLogToRaw(auditLog) {
313
- return {
314
- application_commands: auditLog.applicationCommands.map((applicationCommand) => this.applicationCommandToRaw(applicationCommand)),
315
- audit_log_entries: auditLog.auditLogEntries.map((auditLogEntry) => this.auditLogEntryToRaw(auditLogEntry)),
316
- auto_moderation_rules: auditLog.autoModerationRules.map((autoModerationRule) => this.autoModerationRuleToRaw(autoModerationRule)),
317
- guild_scheduled_events: auditLog.guildScheduledEvents.map((guildScheduledEvent) => this.guildScheduledEventToRaw(guildScheduledEvent)),
318
- integrations: auditLog.integrations.map((integration) => this.integrationToRaw(integration)),
319
- threads: auditLog.threads.map((thread) => this.channelToRaw(thread)),
320
- users: auditLog.users.map((user) => this.userToRaw(user)),
321
- webhooks: auditLog.webhooks.map((webhook) => this.webhookToRaw(webhook)),
322
- };
323
- }
324
- autoModerationRuleFromRaw(autoModerationRule) {
325
- return {
326
- id: autoModerationRule.id,
327
- guildID: autoModerationRule.guild_id,
328
- name: autoModerationRule.name,
329
- creatorID: autoModerationRule.creator_id,
330
- eventType: autoModerationRule.event_type,
331
- triggerType: autoModerationRule.trigger_type,
332
- triggerMetadata: {
333
- keywordFilter: autoModerationRule.trigger_metadata.keyword_filter,
334
- regexPatterns: autoModerationRule.trigger_metadata.regex_patterns,
335
- presets: autoModerationRule.trigger_metadata.presets,
336
- allowList: autoModerationRule.trigger_metadata.allow_list,
337
- mentionTotalLimit: autoModerationRule.trigger_metadata.mention_total_limit,
338
- mentionRaidProtection: autoModerationRule.trigger_metadata.mention_raid_protection,
339
- },
340
- actions: autoModerationRule.actions.map((action) => ({
341
- type: action.type,
342
- metadata: {
343
- channelID: action.metadata.channel_id,
344
- durationSeconds: action.metadata.duration_seconds,
345
- customMessage: action.metadata.custom_message,
346
- },
347
- })),
348
- enabled: autoModerationRule.enabled,
349
- exemptRoles: autoModerationRule.exempt_roles,
350
- exemptChannels: autoModerationRule.exempt_channels,
351
- };
352
- }
353
- autoModerationRuleToRaw(autoModerationRule) {
354
- return {
355
- id: autoModerationRule.id,
356
- guild_id: autoModerationRule.guildID,
357
- name: autoModerationRule.name,
358
- creator_id: autoModerationRule.creatorID,
359
- event_type: autoModerationRule.eventType,
360
- trigger_type: autoModerationRule.triggerType,
361
- trigger_metadata: {
362
- keyword_filter: autoModerationRule.triggerMetadata.keywordFilter,
363
- regex_patterns: autoModerationRule.triggerMetadata.regexPatterns,
364
- presets: autoModerationRule.triggerMetadata.presets,
365
- allow_list: autoModerationRule.triggerMetadata.allowList,
366
- mention_total_limit: autoModerationRule.triggerMetadata.mentionTotalLimit,
367
- mention_raid_protection: autoModerationRule.triggerMetadata.mentionRaidProtection,
368
- },
369
- actions: autoModerationRule.actions.map((action) => ({
370
- type: action.type,
371
- metadata: {
372
- channel_id: action.metadata.channelID,
373
- duration_seconds: action.metadata.durationSeconds,
374
- custom_message: action.metadata.customMessage,
375
- },
376
- })),
377
- enabled: autoModerationRule.enabled,
378
- exempt_roles: autoModerationRule.exemptRoles,
379
- exempt_channels: autoModerationRule.exemptChannels,
380
- };
381
- }
382
- channelFromRaw(channel) {
383
- return {
384
- id: channel.id,
385
- type: channel.type,
386
- guildID: channel.guild_id,
387
- position: channel.position,
388
- permissionOverwrites: channel.permission_overwrites?.map((overwrite) => ({
389
- id: overwrite.id,
390
- type: overwrite.type,
391
- allow: overwrite.allow,
392
- deny: overwrite.deny,
393
- })),
394
- name: channel.name,
395
- topic: channel.topic,
396
- nsfw: channel.nsfw,
397
- lastMessageID: channel.last_message_id,
398
- bitrate: channel.bitrate,
399
- userLimit: channel.user_limit,
400
- rateLimitPerUser: channel.rate_limit_per_user,
401
- recipients: channel.recipients?.map((recipient) => this.userFromRaw(recipient)),
402
- icon: channel.icon,
403
- ownerID: channel.owner_id,
404
- applicationID: channel.application_id,
405
- managed: channel.managed,
406
- parentID: channel.parent_id,
407
- lastPinTimestamp: channel.last_pin_timestamp,
408
- rtcRegion: channel.rtc_region,
409
- videoQualityMode: channel.video_quality_mode,
410
- messageCount: channel.member_count,
411
- memberCount: channel.member_count,
412
- threadMetadata: channel.thread_metadata !== undefined
413
- ? {
414
- archived: channel.thread_metadata?.archived,
415
- autoArchiveDuration: channel.thread_metadata?.auto_archive_duration,
416
- archiveTimestamp: channel.thread_metadata?.archive_timestamp,
417
- locked: channel.thread_metadata?.locked,
418
- invitable: channel.thread_metadata?.invitable,
419
- createTimestamp: channel.thread_metadata?.create_timestamp,
420
- }
421
- : undefined,
422
- member: channel.member !== undefined
423
- ? {
424
- id: channel.member.id,
425
- userID: channel.member.user_id,
426
- joinTimestamp: channel.member.join_timestamp,
427
- flags: channel.member.flags,
428
- member: channel.member.member !== undefined
429
- ? {
430
- user: channel.member.member.user !== undefined
431
- ? this.userFromRaw(channel.member.member.user)
432
- : undefined,
433
- nick: channel.member.member.nick,
434
- avatar: channel.member.member.avatar,
435
- roles: channel.member.member.roles,
436
- joinedAt: channel.member.member.joined_at,
437
- premiumSince: channel.member.member.premium_since,
438
- deaf: channel.member.member.deaf,
439
- mute: channel.member.member.mute,
440
- flags: channel.member.member.flags,
441
- pending: channel.member.member.pending,
442
- permissions: channel.member.member.permissions,
443
- communicationDisabledUntil: channel.member.member.communication_disabled_until,
444
- }
445
- : undefined,
446
- }
447
- : undefined,
448
- defaultAutoArchiveDuration: channel.default_auto_archive_duration,
449
- permissions: channel.permissions,
450
- flags: channel.flags,
451
- totalMessageSent: channel.total_message_sent,
452
- availableTags: channel.available_tags?.map((availableTag) => ({
453
- id: availableTag.id,
454
- name: availableTag.name,
455
- moderated: availableTag.moderated,
456
- emojiID: availableTag.emoji_id,
457
- emojiName: availableTag.emoji_name,
458
- })),
459
- appliedTags: channel.applied_tags,
460
- defaultReactionEmoji: channel.default_reaction_emoji !== undefined
461
- ? channel.default_reaction_emoji !== null
462
- ? {
463
- emojiID: channel.default_reaction_emoji.emoji_id,
464
- emojiName: channel.default_reaction_emoji.emoji_name,
465
- }
466
- : null
467
- : undefined,
468
- defaultThreadRateLimitPerUser: channel.default_thread_rate_limit_per_user,
469
- defaultSortOrder: channel.default_sort_order,
470
- defaultForumLayout: channel.default_forum_layout,
471
- };
472
- }
473
- channelToRaw(channel) {
474
- return {
475
- id: channel.id,
476
- type: channel.type,
477
- guild_id: channel.guildID,
478
- position: channel.position,
479
- permission_overwrites: channel.permissionOverwrites?.map((overwrite) => ({
480
- id: overwrite.id,
481
- type: overwrite.type,
482
- allow: overwrite.allow,
483
- deny: overwrite.deny,
484
- })),
485
- name: channel.name,
486
- topic: channel.topic,
487
- nsfw: channel.nsfw,
488
- last_message_id: channel.lastMessageID,
489
- bitrate: channel.bitrate,
490
- user_limit: channel.userLimit,
491
- rate_limit_per_user: channel.rateLimitPerUser,
492
- recipients: channel.recipients?.map((recipient) => this.userToRaw(recipient)),
493
- icon: channel.icon,
494
- owner_id: channel.ownerID,
495
- application_id: channel.applicationID,
496
- managed: channel.managed,
497
- parent_id: channel.parentID,
498
- last_pin_timestamp: channel.lastPinTimestamp,
499
- rtc_region: channel.rtcRegion,
500
- video_quality_mode: channel.videoQualityMode,
501
- message_count: channel.messageCount,
502
- member_count: channel.memberCount,
503
- thread_metadata: channel.threadMetadata !== undefined
504
- ? {
505
- archived: channel.threadMetadata?.archived,
506
- auto_archive_duration: channel.threadMetadata?.autoArchiveDuration,
507
- archive_timestamp: channel.threadMetadata?.archiveTimestamp,
508
- locked: channel.threadMetadata?.locked,
509
- invitable: channel.threadMetadata?.invitable,
510
- create_timestamp: channel.threadMetadata?.createTimestamp,
511
- }
512
- : undefined,
513
- member: channel.member !== undefined
514
- ? {
515
- id: channel.member.id,
516
- user_id: channel.member.userID,
517
- join_timestamp: channel.member.joinTimestamp,
518
- flags: channel.member.flags,
519
- member: channel.member.member !== undefined
520
- ? {
521
- user: channel.member.member.user !== undefined
522
- ? this.userToRaw(channel.member.member.user)
523
- : undefined,
524
- nick: channel.member.member.nick,
525
- avatar: channel.member.member.avatar,
526
- roles: channel.member.member.roles,
527
- joined_at: channel.member.member.joinedAt,
528
- premium_since: channel.member.member.premiumSince,
529
- deaf: channel.member.member.deaf,
530
- mute: channel.member.member.mute,
531
- flags: channel.member.member.flags,
532
- pending: channel.member.member.pending,
533
- permissions: channel.member.member.permissions,
534
- communication_disabled_until: channel.member.member.communicationDisabledUntil,
535
- }
536
- : undefined,
537
- }
538
- : undefined,
539
- default_auto_archive_duration: channel.defaultAutoArchiveDuration,
540
- permissions: channel.permissions,
541
- flags: channel.flags,
542
- total_message_sent: channel.totalMessageSent,
543
- available_tags: channel.availableTags?.map((availableTag) => ({
544
- id: availableTag.id,
545
- name: availableTag.name,
546
- moderated: availableTag.moderated,
547
- emoji_id: availableTag.emojiID,
548
- emoji_name: availableTag.emojiName,
549
- })),
550
- applied_tags: channel.appliedTags,
551
- default_reaction_emoji: channel.defaultReactionEmoji !== undefined
552
- ? channel.defaultReactionEmoji !== null
553
- ? {
554
- emoji_id: channel.defaultReactionEmoji.emojiID,
555
- emoji_name: channel.defaultReactionEmoji.emojiName,
556
- }
557
- : null
558
- : undefined,
559
- default_thread_rate_limit_per_user: channel.defaultThreadRateLimitPerUser,
560
- default_sort_order: channel.defaultSortOrder,
561
- default_forum_layout: channel.defaultForumLayout,
562
- };
563
- }
564
- embedFromRaw(embed) {
565
- return {
566
- title: embed.title,
567
- type: embed.type,
568
- description: embed.description,
569
- url: embed.url,
570
- timestamp: embed.timestamp,
571
- color: embed.color,
572
- footer: embed.footer !== undefined
573
- ? {
574
- text: embed.footer.text,
575
- iconURL: embed.footer.icon_url,
576
- proxyIconURL: embed.footer.proxy_icon_url,
577
- }
578
- : undefined,
579
- image: embed.image !== undefined
580
- ? {
581
- url: embed.image.url,
582
- proxyURL: embed.image.proxy_url,
583
- height: embed.image.height,
584
- width: embed.image.width,
585
- }
586
- : undefined,
587
- thumbnail: embed.thumbnail !== undefined
588
- ? {
589
- url: embed.thumbnail.url,
590
- proxyURL: embed.thumbnail.proxy_url,
591
- height: embed.thumbnail.height,
592
- width: embed.thumbnail.width,
593
- }
594
- : undefined,
595
- video: {
596
- url: embed.video?.url,
597
- proxyURL: embed.video?.proxy_url,
598
- height: embed.video?.height,
599
- width: embed.video?.width,
600
- },
601
- provider: {
602
- name: embed.provider?.name,
603
- url: embed.provider?.url,
604
- },
605
- author: embed.author !== undefined
606
- ? {
607
- name: embed.author.name,
608
- url: embed.author.url,
609
- iconURL: embed.author.icon_url,
610
- proxyIconURL: embed.author.proxy_icon_url,
611
- }
612
- : undefined,
613
- fields: embed.fields?.map((field) => ({
614
- name: field.name,
615
- value: field.value,
616
- inline: field.inline,
617
- })),
618
- };
619
- }
620
- embedToRaw(embed) {
621
- return {
622
- title: embed.title,
623
- type: embed.type,
624
- description: embed.description,
625
- url: embed.url,
626
- timestamp: embed.timestamp,
627
- color: embed.color,
628
- footer: embed.footer !== undefined
629
- ? {
630
- text: embed.footer.text,
631
- icon_url: embed.footer.iconURL,
632
- proxy_icon_url: embed.footer.proxyIconURL,
633
- }
634
- : undefined,
635
- image: embed.image !== undefined
636
- ? {
637
- url: embed.image.url,
638
- proxy_url: embed.image.proxyURL,
639
- height: embed.image.height,
640
- width: embed.image.width,
641
- }
642
- : undefined,
643
- thumbnail: embed.thumbnail !== undefined
644
- ? {
645
- url: embed.thumbnail.url,
646
- proxy_url: embed.thumbnail.proxyURL,
647
- height: embed.thumbnail.height,
648
- width: embed.thumbnail.width,
649
- }
650
- : undefined,
651
- video: {
652
- url: embed.video?.url,
653
- proxy_url: embed.video?.proxyURL,
654
- height: embed.video?.height,
655
- width: embed.video?.width,
656
- },
657
- provider: {
658
- name: embed.provider?.name,
659
- url: embed.provider?.url,
660
- },
661
- author: embed.author !== undefined
662
- ? {
663
- name: embed.author.name,
664
- url: embed.author.url,
665
- icon_url: embed.author.iconURL,
666
- proxy_icon_url: embed.author.proxyIconURL,
667
- }
668
- : undefined,
669
- fields: embed.fields?.map((field) => ({
670
- name: field.name,
671
- value: field.value,
672
- inline: field.inline,
673
- })),
674
- };
675
- }
676
- emojiFromRaw(emoji) {
677
- return {
678
- id: emoji.id,
679
- name: emoji.name,
680
- roles: emoji.roles,
681
- user: emoji.user !== undefined ? this.userFromRaw(emoji.user) : undefined,
682
- requireColons: emoji.require_colons,
683
- managed: emoji.managed,
684
- animated: emoji.animated,
685
- available: emoji.available,
686
- };
687
- }
688
- emojiToRaw(emoji) {
689
- return {
690
- id: emoji.id,
691
- name: emoji.name,
692
- roles: emoji.roles,
693
- user: emoji.user !== undefined ? this.userToRaw(emoji.user) : undefined,
694
- require_colons: emoji.requireColons,
695
- managed: emoji.managed,
696
- animated: emoji.animated,
697
- available: emoji.available,
698
- };
699
- }
700
- entitlementFromRaw(entitlement) {
701
- return {
702
- id: entitlement.id,
703
- skuID: entitlement.sku_id,
704
- applicationID: entitlement.application_id,
705
- userID: entitlement.user_id,
706
- promotionID: entitlement.promotion_id,
707
- type: entitlement.type,
708
- deleted: entitlement.deleted,
709
- giftCodeFlags: entitlement.gift_code_flags,
710
- consumed: entitlement.consumed,
711
- startsAt: entitlement.starts_at,
712
- endsAt: entitlement.ends_at,
713
- guildID: entitlement.guild_id,
714
- subscriptionID: entitlement.subscription_id,
715
- };
716
- }
717
- entitlementToRaw(entitlement) {
718
- return {
719
- id: entitlement.id,
720
- sku_id: entitlement.skuID,
721
- application_id: entitlement.applicationID,
722
- user_id: entitlement.userID,
723
- promotion_id: entitlement.promotionID,
724
- type: entitlement.type,
725
- deleted: entitlement.deleted,
726
- gift_code_flags: entitlement.giftCodeFlags,
727
- consumed: entitlement.consumed,
728
- starts_at: entitlement.startsAt,
729
- ends_at: entitlement.endsAt,
730
- guild_id: entitlement.guildID,
731
- subscription_id: entitlement.subscriptionID,
732
- };
733
- }
734
- guildApplicationCommandPermissionsFromRaw(guildApplicationCommandPermissions) {
735
- return {
736
- id: guildApplicationCommandPermissions.id,
737
- applicationID: guildApplicationCommandPermissions.application_id,
738
- guildID: guildApplicationCommandPermissions.guild_id,
739
- permissions: guildApplicationCommandPermissions.permissions.map((permission) => ({
740
- id: permission.id,
741
- type: permission.type,
742
- permission: permission.permission,
743
- })),
744
- };
745
- }
746
- guildApplicationCommandPermissionsToRaw(guildApplicationCommandPermissions) {
747
- return {
748
- id: guildApplicationCommandPermissions.id,
749
- application_id: guildApplicationCommandPermissions.applicationID,
750
- guild_id: guildApplicationCommandPermissions.guildID,
751
- permissions: guildApplicationCommandPermissions.permissions.map((permission) => ({
752
- id: permission.id,
753
- type: permission.type,
754
- permission: permission.permission,
755
- })),
756
- };
757
- }
758
- guildFromRaw(guild) {
759
- return {
760
- id: guild.id,
761
- name: guild.name,
762
- icon: guild.icon,
763
- iconHash: guild.icon,
764
- splash: guild.splash,
765
- discoverySplash: guild.discovery_splash,
766
- owner: guild.owner,
767
- ownerID: guild.owner_id,
768
- permissions: guild.permissions,
769
- region: guild.region,
770
- afkChannelID: guild.afk_channel_id,
771
- afkTimeout: guild.afk_timeout,
772
- widgetEnabled: guild.widget_enabled,
773
- widgetChannelID: guild.widget_channel_id,
774
- verificationLevel: guild.verification_level,
775
- defaultMessageNotifications: guild.default_message_notifications,
776
- explicitContentFilter: guild.explicit_content_filter,
777
- roles: guild.roles.map((role) => this.roleFromRaw(role)),
778
- emojis: guild.emojis.map((emoji) => this.emojiFromRaw(emoji)),
779
- features: guild.features,
780
- mfaLevel: guild.mfa_level,
781
- applicationID: guild.application_id,
782
- systemChannelID: guild.system_channel_id,
783
- systemChannelFlags: guild.system_channel_flags,
784
- rulesChannelID: guild.rules_channel_id,
785
- maxPresences: guild.max_presences,
786
- maxMembers: guild.max_members,
787
- vanityURLCode: guild.vanity_url_code,
788
- description: guild.description,
789
- banner: guild.banner,
790
- premiumTier: guild.premium_tier,
791
- premiumSubscriptionCount: guild.premium_subscription_count,
792
- preferredLocale: guild.preferred_locale,
793
- publicUpdatesChannelID: guild.public_updates_channel_id,
794
- maxVideoChannelUsers: guild.max_video_channel_users,
795
- maxStageVideoChannelUsers: guild.max_stage_video_channel_users,
796
- approximateMemberCount: guild.approximate_member_count,
797
- approximatePresenceCount: guild.approximate_presence_count,
798
- welcomeScreen: guild.welcome_screen !== undefined
799
- ? {
800
- description: guild.welcome_screen.description,
801
- welcomeChannels: guild.welcome_screen.welcome_channels.map((welcomeScreenChannel) => ({
802
- channelID: welcomeScreenChannel.channel_id,
803
- description: welcomeScreenChannel.description,
804
- emojiID: welcomeScreenChannel.emoji_id,
805
- emojiName: welcomeScreenChannel.emoji_name,
806
- })),
807
- }
808
- : undefined,
809
- nsfwLevel: guild.nsfw_level,
810
- stickers: guild.stickers?.map((sticker) => this.stickerFromRaw(sticker)),
811
- premiumProgressBarEnabled: guild.premium_progress_bar_enabled,
812
- safetyAlertsChannelID: guild.safety_alerts_channel_id,
813
- };
814
- }
815
- guildMemberFromRaw(guildMember) {
816
- return {
817
- user: guildMember.user !== undefined
818
- ? this.userFromRaw(guildMember.user)
819
- : undefined,
820
- nick: guildMember.nick,
821
- avatar: guildMember.avatar,
822
- roles: guildMember.roles,
823
- joinedAt: guildMember.joined_at,
824
- premiumSince: guildMember.premium_since,
825
- deaf: guildMember.deaf,
826
- mute: guildMember.mute,
827
- flags: guildMember.flags,
828
- pending: guildMember.pending,
829
- permissions: guildMember.permissions,
830
- communicationDisabledUntil: guildMember.communication_disabled_until,
831
- };
832
- }
833
- guildMemberToRaw(guildMember) {
834
- return {
835
- user: guildMember.user !== undefined
836
- ? this.userToRaw(guildMember.user)
837
- : undefined,
838
- nick: guildMember.nick,
839
- avatar: guildMember.avatar,
840
- roles: guildMember.roles,
841
- joined_at: guildMember.joinedAt,
842
- premium_since: guildMember.premiumSince,
843
- deaf: guildMember.deaf,
844
- mute: guildMember.mute,
845
- flags: guildMember.flags,
846
- pending: guildMember.pending,
847
- permissions: guildMember.permissions,
848
- communication_disabled_until: guildMember.communicationDisabledUntil,
849
- };
850
- }
851
- guildScheduledEventFromRaw(guildScheduledEvent) {
852
- return {
853
- id: guildScheduledEvent.id,
854
- guildID: guildScheduledEvent.guild_id,
855
- channelID: guildScheduledEvent.channel_id,
856
- creatorID: guildScheduledEvent.creator_id,
857
- name: guildScheduledEvent.name,
858
- description: guildScheduledEvent.description,
859
- scheduledStartTime: guildScheduledEvent.scheduled_start_time,
860
- scheduledEndTime: guildScheduledEvent.scheduled_end_time,
861
- privacyLevel: guildScheduledEvent.privacy_level,
862
- status: guildScheduledEvent.status,
863
- entityType: guildScheduledEvent.entity_type,
864
- entityID: guildScheduledEvent.entity_id,
865
- entityMetadata: guildScheduledEvent.entity_metadata,
866
- creator: guildScheduledEvent.creator !== undefined
867
- ? this.userFromRaw(guildScheduledEvent.creator)
868
- : undefined,
869
- userCount: guildScheduledEvent.user_count,
870
- image: guildScheduledEvent.image,
871
- };
872
- }
873
- guildScheduledEventToRaw(guildScheduledEvent) {
874
- return {
875
- id: guildScheduledEvent.id,
876
- guild_id: guildScheduledEvent.guildID,
877
- channel_id: guildScheduledEvent.channelID,
878
- creator_id: guildScheduledEvent.creatorID,
879
- name: guildScheduledEvent.name,
880
- description: guildScheduledEvent.description,
881
- scheduled_start_time: guildScheduledEvent.scheduledStartTime,
882
- scheduled_end_time: guildScheduledEvent.scheduledEndTime,
883
- privacy_level: guildScheduledEvent.privacyLevel,
884
- status: guildScheduledEvent.status,
885
- entity_type: guildScheduledEvent.entityType,
886
- entity_id: guildScheduledEvent.entityID,
887
- entity_metadata: guildScheduledEvent.entityMetadata,
888
- creator: guildScheduledEvent.creator !== undefined
889
- ? this.userToRaw(guildScheduledEvent.creator)
890
- : undefined,
891
- user_count: guildScheduledEvent.userCount,
892
- image: guildScheduledEvent.image,
893
- };
894
- }
895
- guildTemplateFromRaw(guildTemplate) {
896
- return {
897
- code: guildTemplate.code,
898
- name: guildTemplate.name,
899
- description: guildTemplate.description,
900
- usageCount: guildTemplate.usage_count,
901
- creatorID: guildTemplate.creator_id,
902
- creator: this.userFromRaw(guildTemplate.creator),
903
- createdAt: guildTemplate.created_at,
904
- updatedAt: guildTemplate.updated_at,
905
- sourceGuildID: guildTemplate.source_guild_id,
906
- serializedSourceGuild: this.guildFromRaw(guildTemplate.serialized_source_guild),
907
- isDirty: guildTemplate.is_dirty,
908
- };
909
- }
910
- guildTemplateToRaw(guildTemplate) {
911
- return {
912
- code: guildTemplate.code,
913
- name: guildTemplate.name,
914
- description: guildTemplate.description,
915
- usage_count: guildTemplate.usageCount,
916
- creator_id: guildTemplate.creatorID,
917
- creator: this.userToRaw(guildTemplate.creator),
918
- created_at: guildTemplate.createdAt,
919
- updated_at: guildTemplate.updatedAt,
920
- source_guild_id: guildTemplate.sourceGuildID,
921
- serialized_source_guild: this.guildToRaw(guildTemplate.serializedSourceGuild),
922
- is_dirty: guildTemplate.isDirty,
923
- };
924
- }
925
- guildToRaw(guild) {
926
- return {
927
- id: guild.id,
928
- name: guild.name,
929
- icon: guild.icon,
930
- icon_hash: guild.icon,
931
- splash: guild.splash,
932
- discovery_splash: guild.discoverySplash,
933
- owner: guild.owner,
934
- owner_id: guild.ownerID,
935
- permissions: guild.permissions,
936
- region: guild.region,
937
- afk_channel_id: guild.afkChannelID,
938
- afk_timeout: guild.afkTimeout,
939
- widget_enabled: guild.widgetEnabled,
940
- widget_channel_id: guild.widgetChannelID,
941
- verification_level: guild.verificationLevel,
942
- default_message_notifications: guild.defaultMessageNotifications,
943
- explicit_content_filter: guild.explicitContentFilter,
944
- roles: guild.roles.map((role) => this.roleToRaw(role)),
945
- emojis: guild.emojis.map((emoji) => this.emojiToRaw(emoji)),
946
- features: guild.features,
947
- mfa_level: guild.mfaLevel,
948
- application_id: guild.applicationID,
949
- system_channel_id: guild.systemChannelID,
950
- system_channel_flags: guild.systemChannelFlags,
951
- rules_channel_id: guild.rulesChannelID,
952
- max_presences: guild.maxPresences,
953
- max_members: guild.maxMembers,
954
- vanity_url_code: guild.vanityURLCode,
955
- description: guild.description,
956
- banner: guild.banner,
957
- premium_tier: guild.premiumTier,
958
- premium_subscription_count: guild.premiumSubscriptionCount,
959
- preferred_locale: guild.preferredLocale,
960
- public_updates_channel_id: guild.publicUpdatesChannelID,
961
- max_video_channel_users: guild.maxVideoChannelUsers,
962
- max_stage_video_channel_users: guild.maxStageVideoChannelUsers,
963
- approximate_member_count: guild.approximateMemberCount,
964
- approximate_presence_count: guild.approximatePresenceCount,
965
- welcome_screen: guild.welcomeScreen !== undefined
966
- ? {
967
- description: guild.welcomeScreen.description,
968
- welcome_channels: guild.welcomeScreen.welcomeChannels.map((welcomeScreenChannel) => ({
969
- channel_id: welcomeScreenChannel.channelID,
970
- description: welcomeScreenChannel.description,
971
- emoji_id: welcomeScreenChannel.emojiID,
972
- emoji_name: welcomeScreenChannel.emojiName,
973
- })),
974
- }
975
- : undefined,
976
- nsfw_level: guild.nsfwLevel,
977
- stickers: guild.stickers?.map((sticker) => this.stickerToRaw(sticker)),
978
- premium_progress_bar_enabled: guild.premiumProgressBarEnabled,
979
- safety_alerts_channel_id: guild.safetyAlertsChannelID,
980
- };
981
- }
982
- integrationFromRaw(integration) {
983
- return {
984
- id: integration.id,
985
- name: integration.name,
986
- type: integration.type,
987
- enabled: integration.enabled,
988
- syncing: integration.syncing,
989
- roleID: integration.role_id,
990
- enableEmoticons: integration.enable_emoticons,
991
- expireBehavior: integration.expire_behavior,
992
- expireGracePeriod: integration.expire_grace_period,
993
- user: integration.user !== undefined
994
- ? this.userFromRaw(integration.user)
995
- : undefined,
996
- account: integration.account,
997
- syncedAt: integration.synced_at,
998
- subscriberCount: integration.subscriber_count,
999
- revoked: integration.revoked,
1000
- application: integration.application !== undefined
1001
- ? {
1002
- id: integration.application.id,
1003
- name: integration.application.name,
1004
- icon: integration.application.icon,
1005
- description: integration.application.description,
1006
- bot: integration.application.bot !== undefined
1007
- ? this.userFromRaw(integration.application.bot)
1008
- : undefined,
1009
- }
1010
- : undefined,
1011
- scopes: integration.scopes,
1012
- };
1013
- }
1014
- integrationToRaw(integration) {
1015
- return {
1016
- id: integration.id,
1017
- name: integration.name,
1018
- type: integration.type,
1019
- enabled: integration.enabled,
1020
- syncing: integration.syncing,
1021
- role_id: integration.roleID,
1022
- enable_emoticons: integration.enableEmoticons,
1023
- expire_behavior: integration.expireBehavior,
1024
- expire_grace_period: integration.expireGracePeriod,
1025
- user: integration.user !== undefined
1026
- ? this.userToRaw(integration.user)
1027
- : undefined,
1028
- account: integration.account,
1029
- synced_at: integration.syncedAt,
1030
- subscriber_count: integration.subscriberCount,
1031
- revoked: integration.revoked,
1032
- application: integration.application !== undefined
1033
- ? {
1034
- id: integration.application.id,
1035
- name: integration.application.name,
1036
- icon: integration.application.icon,
1037
- description: integration.application.description,
1038
- bot: integration.application.bot !== undefined
1039
- ? this.userToRaw(integration.application.bot)
1040
- : undefined,
1041
- }
1042
- : undefined,
1043
- scopes: integration.scopes,
1044
- };
1045
- }
1046
- interactionFromRaw(interaction) {
1047
- return {
1048
- id: interaction.id,
1049
- applicationID: interaction.application_id,
1050
- type: interaction.type,
1051
- data: interaction.data !== undefined
1052
- ? {
1053
- id: interaction.data.id,
1054
- name: interaction.data.name,
1055
- type: interaction.data.type,
1056
- resolved: interaction.data.resolved !== undefined
1057
- ? this.resolvedDataFromRaw(interaction.data.resolved)
1058
- : undefined,
1059
- options: interaction.data.options,
1060
- guildID: interaction.data.guild_id,
1061
- targetID: interaction.data.target_id,
1062
- customID: interaction.data.custom_id,
1063
- componentType: interaction.data.component_type,
1064
- values: interaction.data.values,
1065
- components: interaction.data.components?.map((component) => ({
1066
- type: component.type,
1067
- components: component.components?.map((c) => ({
1068
- type: c.type,
1069
- customID: c.custom_id,
1070
- style: c.style,
1071
- label: c.label,
1072
- minLength: c.min_length,
1073
- maxLength: c.max_length,
1074
- required: c.required,
1075
- value: c.value,
1076
- placeholder: c.placeholder,
1077
- })),
1078
- })),
1079
- }
1080
- : undefined,
1081
- guild: interaction.guild !== undefined
1082
- ? {
1083
- locale: interaction.guild.locale,
1084
- id: interaction.guild.id,
1085
- features: interaction.guild.features,
1086
- }
1087
- : undefined,
1088
- guildID: interaction.guild_id,
1089
- channel: interaction.channel !== undefined
1090
- ? this.channelFromRaw(interaction.channel)
1091
- : undefined,
1092
- channelID: interaction.channel_id,
1093
- member: interaction.member !== undefined
1094
- ? this.guildMemberFromRaw(interaction.member)
1095
- : undefined,
1096
- user: interaction.user !== undefined
1097
- ? this.userFromRaw(interaction.user)
1098
- : undefined,
1099
- token: interaction.token,
1100
- version: interaction.version,
1101
- message: interaction.message !== undefined
1102
- ? this.messageFromRaw(interaction.message)
1103
- : undefined,
1104
- appPermissions: interaction.app_permissions,
1105
- locale: interaction.locale,
1106
- guildLocale: interaction.guild_locale,
1107
- entitlements: interaction.entitlements.map((entitlement) => this.entitlementFromRaw(entitlement)),
1108
- authorizingIntegrationOwners: {
1109
- "0": interaction.authorizing_integration_owners[0],
1110
- "1": interaction.authorizing_integration_owners[1],
1111
- },
1112
- context: interaction.context,
1113
- };
1114
- }
1115
- interactionMetadataFromRaw(interactionMetadata) {
1116
- return {
1117
- id: interactionMetadata.id,
1118
- type: interactionMetadata.type,
1119
- user: this.userFromRaw(interactionMetadata.user),
1120
- authorizingIntegrationOwners: {
1121
- "0": interactionMetadata.authorizing_integration_owners[0],
1122
- "1": interactionMetadata.authorizing_integration_owners[1],
1123
- },
1124
- originalResponseMessageID: interactionMetadata.original_response_message_id,
1125
- interactedMessageID: interactionMetadata.interacted_message_id,
1126
- triggeringInteractionMetadata: interactionMetadata.triggering_interaction_metadata !== undefined
1127
- ? this.interactionMetadataFromRaw(interactionMetadata.triggering_interaction_metadata)
1128
- : undefined,
1129
- };
1130
- }
1131
- interactionMetadataToRaw(interactionMetadata) {
1132
- return {
1133
- id: interactionMetadata.id,
1134
- type: interactionMetadata.type,
1135
- user: this.userToRaw(interactionMetadata.user),
1136
- authorizing_integration_owners: {
1137
- "0": interactionMetadata.authorizingIntegrationOwners[0],
1138
- "1": interactionMetadata.authorizingIntegrationOwners[1],
1139
- },
1140
- original_response_message_id: interactionMetadata.originalResponseMessageID,
1141
- interacted_message_id: interactionMetadata.interactedMessageID,
1142
- triggering_interaction_metadata: interactionMetadata.triggeringInteractionMetadata !== undefined
1143
- ? this.interactionMetadataToRaw(interactionMetadata.triggeringInteractionMetadata)
1144
- : undefined,
1145
- };
1146
- }
1147
- interactionToRaw(interaction) {
1148
- return {
1149
- id: interaction.id,
1150
- application_id: interaction.applicationID,
1151
- type: interaction.type,
1152
- data: interaction.data !== undefined
1153
- ? {
1154
- id: interaction.data.id,
1155
- name: interaction.data.name,
1156
- type: interaction.data.type,
1157
- resolved: interaction.data.resolved !== undefined
1158
- ? this.resolvedDataToRaw(interaction.data.resolved)
1159
- : undefined,
1160
- options: interaction.data.options,
1161
- guild_id: interaction.data.guildID,
1162
- target_id: interaction.data.targetID,
1163
- custom_id: interaction.data.customID,
1164
- component_type: interaction.data.componentType,
1165
- values: interaction.data.values,
1166
- components: interaction.data.components?.map((component) => ({
1167
- type: component.type,
1168
- components: component.components?.map((c) => ({
1169
- type: c.type,
1170
- custom_id: c.customID,
1171
- style: c.style,
1172
- label: c.label,
1173
- min_length: c.minLength,
1174
- max_length: c.maxLength,
1175
- required: c.required,
1176
- value: c.value,
1177
- placeholder: c.placeholder,
1178
- })),
1179
- })),
1180
- }
1181
- : undefined,
1182
- guild: interaction.guild !== undefined
1183
- ? {
1184
- locale: interaction.guild.locale,
1185
- id: interaction.guild.id,
1186
- features: interaction.guild.features,
1187
- }
1188
- : undefined,
1189
- guild_id: interaction.guildID,
1190
- channel: interaction.channel !== undefined
1191
- ? this.channelToRaw(interaction.channel)
1192
- : undefined,
1193
- channel_id: interaction.channelID,
1194
- member: interaction.member !== undefined
1195
- ? this.guildMemberToRaw(interaction.member)
1196
- : undefined,
1197
- user: interaction.user !== undefined
1198
- ? this.userToRaw(interaction.user)
1199
- : undefined,
1200
- token: interaction.token,
1201
- version: interaction.version,
1202
- message: interaction.message !== undefined
1203
- ? this.messageToRaw(interaction.message)
1204
- : undefined,
1205
- app_permissions: interaction.appPermissions,
1206
- locale: interaction.locale,
1207
- guild_locale: interaction.guildLocale,
1208
- entitlements: interaction.entitlements.map((entitlement) => this.entitlementToRaw(entitlement)),
1209
- authorizing_integration_owners: {
1210
- "0": interaction.authorizingIntegrationOwners[0],
1211
- "1": interaction.authorizingIntegrationOwners[1],
1212
- },
1213
- context: interaction.context,
1214
- };
1215
- }
1216
- inviteFromRaw(invite) {
1217
- return {
1218
- type: invite.type,
1219
- code: invite.code,
1220
- guild: invite.guild !== undefined
1221
- ? this.guildFromRaw(invite.guild)
1222
- : undefined,
1223
- channel: this.channelFromRaw(invite.channel),
1224
- inviter: invite.inviter !== undefined
1225
- ? this.userFromRaw(invite.inviter)
1226
- : undefined,
1227
- targetType: invite.target_type,
1228
- targetUser: invite.target_user !== undefined
1229
- ? this.userFromRaw(invite.target_user)
1230
- : undefined,
1231
- targetApplication: invite.target_application !== undefined
1232
- ? this.applicationFromRaw(invite.target_application)
1233
- : undefined,
1234
- approximatePresenceCount: invite.approximate_presence_count,
1235
- approximateMemberCount: invite.approximate_member_count,
1236
- expiresAt: invite.expires_at,
1237
- stageInstance: invite.stage_instance !== undefined
1238
- ? {
1239
- members: invite.stage_instance.members.map((guildMember) => this.guildMemberFromRaw(guildMember)),
1240
- participantCount: invite.stage_instance.participant_count,
1241
- speakerCount: invite.stage_instance.speaker_count,
1242
- topic: invite.stage_instance.topic,
1243
- }
1244
- : undefined,
1245
- guildScheduledEvent: invite.guild_scheduled_event !== undefined
1246
- ? this.guildScheduledEventFromRaw(invite.guild_scheduled_event)
1247
- : undefined,
1248
- };
1249
- }
1250
- inviteToRaw(invite) {
1251
- return {
1252
- type: invite.type,
1253
- code: invite.code,
1254
- guild: invite.guild !== undefined ? this.guildToRaw(invite.guild) : undefined,
1255
- channel: this.channelToRaw(invite.channel),
1256
- inviter: invite.inviter !== undefined
1257
- ? this.userToRaw(invite.inviter)
1258
- : undefined,
1259
- target_type: invite.targetType,
1260
- target_user: invite.targetUser !== undefined
1261
- ? this.userToRaw(invite.targetUser)
1262
- : undefined,
1263
- target_application: invite.targetApplication !== undefined
1264
- ? this.applicationToRaw(invite.targetApplication)
1265
- : undefined,
1266
- approximate_presence_count: invite.approximatePresenceCount,
1267
- approximate_member_count: invite.approximateMemberCount,
1268
- expires_at: invite.expiresAt,
1269
- stage_instance: invite.stageInstance !== undefined
1270
- ? {
1271
- members: invite.stageInstance.members.map((guildMember) => this.guildMemberToRaw(guildMember)),
1272
- participant_count: invite.stageInstance.participantCount,
1273
- speaker_count: invite.stageInstance.speakerCount,
1274
- topic: invite.stageInstance.topic,
1275
- }
1276
- : undefined,
1277
- guild_scheduled_event: invite.guildScheduledEvent !== undefined
1278
- ? this.guildScheduledEventToRaw(invite.guildScheduledEvent)
1279
- : undefined,
1280
- };
1281
- }
1282
- messageComponentsFromRaw(components) {
1283
- return components.map((component) => ({
1284
- type: component.type,
1285
- components: component.components.map((c) => {
1286
- switch (c.type) {
1287
- case constants_1.ComponentTypes.Button: {
1288
- return {
1289
- type: c.type,
1290
- style: c.style,
1291
- label: c.label,
1292
- emoji: c.emoji !== undefined
1293
- ? {
1294
- name: c.emoji.name,
1295
- id: c.emoji.id,
1296
- animated: c.emoji.animated,
1297
- }
1298
- : undefined,
1299
- customID: c.custom_id,
1300
- skuID: c.sku_id,
1301
- url: c.url,
1302
- disabled: c.disabled,
1303
- };
1304
- }
1305
- case constants_1.ComponentTypes.TextInput: {
1306
- return {
1307
- type: c.type,
1308
- customID: c.custom_id,
1309
- style: c.style,
1310
- label: c.label,
1311
- minLength: c.min_length,
1312
- maxLength: c.max_length,
1313
- required: c.required,
1314
- value: c.value,
1315
- placeholder: c.placeholder,
1316
- };
1317
- }
1318
- case constants_1.ComponentTypes.ChannelSelect: {
1319
- return {
1320
- type: c.type,
1321
- customID: c.custom_id,
1322
- channelTypes: c.channel_types,
1323
- placeholder: c.placeholder,
1324
- defaultValues: c.default_values,
1325
- minValues: c.min_values,
1326
- maxValues: c.max_values,
1327
- disabled: c.disabled,
1328
- };
1329
- }
1330
- case constants_1.ComponentTypes.StringSelect: {
1331
- return {
1332
- type: c.type,
1333
- customID: c.custom_id,
1334
- placeholder: c.placeholder,
1335
- options: c.options?.map((option) => ({
1336
- label: option.label,
1337
- value: option.value,
1338
- description: option.description,
1339
- emoji: option.emoji !== undefined
1340
- ? {
1341
- name: option.emoji.name,
1342
- id: option.emoji.id,
1343
- animated: option.emoji.animated,
1344
- }
1345
- : undefined,
1346
- default: option.default,
1347
- })),
1348
- minValues: c.min_values,
1349
- maxValues: c.max_values,
1350
- disabled: c.disabled,
1351
- };
1352
- }
1353
- case constants_1.ComponentTypes.MentionableSelect:
1354
- case constants_1.ComponentTypes.RoleSelect:
1355
- case constants_1.ComponentTypes.UserSelect: {
1356
- return {
1357
- type: c.type,
1358
- customID: c.custom_id,
1359
- placeholder: c.placeholder,
1360
- defaultValues: c.default_values,
1361
- minValues: c.min_values,
1362
- maxValues: c.max_values,
1363
- disabled: c.disabled,
1364
- };
1365
- }
1366
- }
1367
- }),
1368
- }));
1369
- }
1370
- messageComponentsToRaw(components) {
1371
- return components.map((component) => ({
1372
- type: component.type,
1373
- components: component.components.map((c) => {
1374
- switch (c.type) {
1375
- case constants_1.ComponentTypes.Button: {
1376
- return {
1377
- type: c.type,
1378
- style: c.style,
1379
- label: c.label,
1380
- emoji: c.emoji !== undefined
1381
- ? {
1382
- name: c.emoji.name,
1383
- id: c.emoji.id,
1384
- animated: c.emoji.animated,
1385
- }
1386
- : undefined,
1387
- custom_id: c.customID,
1388
- sku_id: c.skuID,
1389
- url: c.url,
1390
- disabled: c.disabled,
1391
- };
1392
- }
1393
- case constants_1.ComponentTypes.TextInput: {
1394
- return {
1395
- type: c.type,
1396
- custom_id: c.customID,
1397
- style: c.style,
1398
- label: c.label,
1399
- min_length: c.minLength,
1400
- max_length: c.maxLength,
1401
- required: c.required,
1402
- value: c.value,
1403
- placeholder: c.placeholder,
1404
- };
1405
- }
1406
- case constants_1.ComponentTypes.ChannelSelect: {
1407
- return {
1408
- type: c.type,
1409
- custom_id: c.customID,
1410
- channel_types: c.channelTypes,
1411
- placeholder: c.placeholder,
1412
- default_values: c.defaultValues,
1413
- min_values: c.minValues,
1414
- max_values: c.maxValues,
1415
- disabled: c.disabled,
1416
- };
1417
- }
1418
- case constants_1.ComponentTypes.StringSelect: {
1419
- return {
1420
- type: c.type,
1421
- custom_id: c.customID,
1422
- placeholder: c.placeholder,
1423
- options: c.options?.map((option) => ({
1424
- label: option.label,
1425
- value: option.value,
1426
- description: option.description,
1427
- emoji: option.emoji !== undefined
1428
- ? {
1429
- name: option.emoji.name,
1430
- id: option.emoji.id,
1431
- animated: option.emoji.animated,
1432
- }
1433
- : undefined,
1434
- default: option.default,
1435
- })),
1436
- min_values: c.minValues,
1437
- max_values: c.maxValues,
1438
- disabled: c.disabled,
1439
- };
1440
- }
1441
- case constants_1.ComponentTypes.MentionableSelect:
1442
- case constants_1.ComponentTypes.RoleSelect:
1443
- case constants_1.ComponentTypes.UserSelect: {
1444
- return {
1445
- type: c.type,
1446
- custom_id: c.customID,
1447
- placeholder: c.placeholder,
1448
- default_values: c.defaultValues,
1449
- min_values: c.minValues,
1450
- max_values: c.maxValues,
1451
- disabled: c.disabled,
1452
- };
1453
- }
1454
- }
1455
- }),
1456
- }));
1457
- }
1458
- messageFromRaw(message) {
1459
- return {
1460
- id: message.id,
1461
- channelID: message.channel_id,
1462
- author: this.userFromRaw(message.author),
1463
- content: message.content,
1464
- timestamp: message.timestamp,
1465
- editedTimestamp: message.edited_timestamp,
1466
- tts: message.tts,
1467
- mentionEveryone: message.mention_everyone,
1468
- mentions: message.mentions.map((user) => this.userFromRaw(user)),
1469
- mentionRoles: message.mention_roles,
1470
- mentionChannels: message.mention_channels?.map((channelMention) => ({
1471
- id: channelMention.id,
1472
- guildID: channelMention.guild_id,
1473
- type: channelMention.type,
1474
- name: channelMention.name,
1475
- })),
1476
- attachments: message.attachments.map((attachment) => this.attachmentFromRaw(attachment)),
1477
- embeds: message.embeds,
1478
- reactions: message.reactions?.map((reaction) => ({
1479
- count: reaction.count,
1480
- countDetails: reaction.count_details,
1481
- me: reaction.me,
1482
- meBurst: reaction.me_burst,
1483
- emoji: this.emojiFromRaw(reaction.emoji),
1484
- burstColors: reaction.burst_colors,
1485
- })),
1486
- nonce: message.nonce,
1487
- pinned: message.pinned,
1488
- webhookID: message.webhook_id,
1489
- type: message.type,
1490
- activity: message.activity,
1491
- application: message.application !== undefined
1492
- ? this.applicationFromRaw(message.application)
1493
- : undefined,
1494
- applicationID: message.application_id,
1495
- messageReference: message.message_reference !== undefined
1496
- ? {
1497
- messageID: message.message_reference.message_id,
1498
- channelID: message.message_reference.channel_id,
1499
- guildID: message.message_reference.guild_id,
1500
- failIfNotExists: message.message_reference.fail_if_not_exists,
1501
- }
1502
- : undefined,
1503
- flags: message.flags,
1504
- referencedMessage: message.referenced_message !== undefined
1505
- ? message.referenced_message !== null
1506
- ? this.messageFromRaw(message.referenced_message)
1507
- : null
1508
- : undefined,
1509
- interactionMetadata: message.interaction_metadata !== undefined
1510
- ? this.interactionMetadataFromRaw(message.interaction_metadata)
1511
- : undefined,
1512
- interaction: message.interaction !== undefined
1513
- ? {
1514
- id: message.interaction.id,
1515
- type: message.interaction.type,
1516
- name: message.interaction.name,
1517
- user: this.userFromRaw(message.interaction.user),
1518
- member: message.interaction.member !== undefined
1519
- ? this.guildMemberFromRaw(message.interaction.member)
1520
- : undefined,
1521
- }
1522
- : undefined,
1523
- thread: message.thread !== undefined
1524
- ? this.channelFromRaw(message.thread)
1525
- : undefined,
1526
- components: message.components !== undefined
1527
- ? this.messageComponentsFromRaw(message.components)
1528
- : undefined,
1529
- stickerItems: message.sticker_items?.map((stickerItem) => ({
1530
- id: stickerItem.id,
1531
- name: stickerItem.name,
1532
- formatType: stickerItem.format_type,
1533
- })),
1534
- stickers: message.stickers?.map((sticker) => this.stickerFromRaw(sticker)),
1535
- position: message.position,
1536
- roleSubscriptionData: message.role_subscription_data !== undefined
1537
- ? {
1538
- roleSubscriptionListingID: message.role_subscription_data.role_subscription_listing_id,
1539
- tierName: message.role_subscription_data.tier_name,
1540
- totalMonthsSubscribed: message.role_subscription_data.total_months_subscribed,
1541
- isRenewal: message.role_subscription_data.is_renewal,
1542
- }
1543
- : undefined,
1544
- resolved: message.resolved !== undefined
1545
- ? this.resolvedDataFromRaw(message.resolved)
1546
- : undefined,
1547
- poll: message.poll !== undefined ? this.pollFromRaw(message.poll) : undefined,
1548
- call: message.call,
1549
- };
1550
- }
1551
- messageToRaw(message) {
1552
- return {
1553
- id: message.id,
1554
- channel_id: message.channelID,
1555
- author: this.userToRaw(message.author),
1556
- content: message.content,
1557
- timestamp: message.timestamp,
1558
- edited_timestamp: message.editedTimestamp,
1559
- tts: message.tts,
1560
- mention_everyone: message.mentionEveryone,
1561
- mentions: message.mentions.map((user) => this.userToRaw(user)),
1562
- mention_roles: message.mentionRoles,
1563
- mention_channels: message.mentionChannels?.map((channelMention) => ({
1564
- id: channelMention.id,
1565
- guild_id: channelMention.guildID,
1566
- type: channelMention.type,
1567
- name: channelMention.name,
1568
- })),
1569
- attachments: message.attachments.map((attachment) => this.attachmentToRaw(attachment)),
1570
- embeds: message.embeds,
1571
- reactions: message.reactions?.map((reaction) => ({
1572
- count: reaction.count,
1573
- count_details: reaction.countDetails,
1574
- me: reaction.me,
1575
- me_burst: reaction.meBurst,
1576
- emoji: this.emojiToRaw(reaction.emoji),
1577
- burst_colors: reaction.burstColors,
1578
- })),
1579
- nonce: message.nonce,
1580
- pinned: message.pinned,
1581
- webhook_id: message.webhookID,
1582
- type: message.type,
1583
- activity: message.activity,
1584
- application: message.application !== undefined
1585
- ? this.applicationToRaw(message.application)
1586
- : undefined,
1587
- application_id: message.applicationID,
1588
- message_reference: message.messageReference !== undefined
1589
- ? {
1590
- message_id: message.messageReference.messageID,
1591
- channel_id: message.messageReference.channelID,
1592
- guild_id: message.messageReference.guildID,
1593
- fail_if_not_exists: message.messageReference.failIfNotExists,
1594
- }
1595
- : undefined,
1596
- flags: message.flags,
1597
- referenced_message: message.referencedMessage !== undefined
1598
- ? message.referencedMessage !== null
1599
- ? this.messageToRaw(message.referencedMessage)
1600
- : null
1601
- : undefined,
1602
- interaction_metadata: message.interactionMetadata !== undefined
1603
- ? this.interactionMetadataToRaw(message.interactionMetadata)
1604
- : undefined,
1605
- interaction: message.interaction !== undefined
1606
- ? {
1607
- id: message.interaction.id,
1608
- type: message.interaction.type,
1609
- name: message.interaction.name,
1610
- user: this.userToRaw(message.interaction.user),
1611
- member: message.interaction.member !== undefined
1612
- ? this.guildMemberToRaw(message.interaction.member)
1613
- : undefined,
1614
- }
1615
- : undefined,
1616
- thread: message.thread !== undefined
1617
- ? this.channelToRaw(message.thread)
1618
- : undefined,
1619
- components: message.components !== undefined
1620
- ? this.messageComponentsToRaw(message.components)
1621
- : undefined,
1622
- sticker_items: message.stickerItems?.map((stickerItem) => ({
1623
- id: stickerItem.id,
1624
- name: stickerItem.name,
1625
- format_type: stickerItem.formatType,
1626
- })),
1627
- stickers: message.stickers?.map((sticker) => this.stickerToRaw(sticker)),
1628
- position: message.position,
1629
- role_subscription_data: message.roleSubscriptionData !== undefined
1630
- ? {
1631
- role_subscription_listing_id: message.roleSubscriptionData.roleSubscriptionListingID,
1632
- tier_name: message.roleSubscriptionData.tierName,
1633
- total_months_subscribed: message.roleSubscriptionData.totalMonthsSubscribed,
1634
- is_renewal: message.roleSubscriptionData.isRenewal,
1635
- }
1636
- : undefined,
1637
- resolved: message.resolved !== undefined
1638
- ? this.resolvedDataToRaw(message.resolved)
1639
- : undefined,
1640
- poll: message.poll !== undefined ? this.pollToRaw(message.poll) : undefined,
1641
- call: message.call,
1642
- };
1643
- }
1644
5
  partialApplicationCommandToRaw(applicationCommand) {
1645
6
  return {
1646
7
  id: applicationCommand.id,
@@ -1692,581 +53,11 @@ class Util {
1692
53
  default_member_permissions: applicationCommand.defaultMemberPermissions,
1693
54
  dm_permission: applicationCommand.dmPermission,
1694
55
  default_permission: applicationCommand.defaultPermission,
56
+ integration_types: applicationCommand.integrationTypes,
57
+ contexts: applicationCommand.contexts,
1695
58
  nsfw: applicationCommand.nsfw,
1696
59
  version: applicationCommand.version,
1697
60
  };
1698
61
  }
1699
- presenceFromRaw(presence) {
1700
- return {
1701
- user: this.presenceUserFromRaw(presence.user),
1702
- guildID: presence.guild_id,
1703
- status: presence.status,
1704
- activities: presence.activities.map((activity) => ({
1705
- name: activity.name,
1706
- type: activity.type,
1707
- url: activity.url,
1708
- createdAt: activity.created_at,
1709
- timestamps: activity.timestamps,
1710
- applicationID: activity.application_id,
1711
- details: activity.details,
1712
- state: activity.state,
1713
- emoji: activity.emoji,
1714
- party: activity.party,
1715
- assets: {
1716
- largeImage: activity.assets?.large_image,
1717
- largeText: activity.assets?.large_text,
1718
- smallImage: activity.assets?.small_image,
1719
- smallText: activity.assets?.small_text,
1720
- },
1721
- secrets: activity.secrets,
1722
- instance: activity.instance,
1723
- flags: activity.flags,
1724
- buttons: activity.buttons,
1725
- })),
1726
- clientStatus: presence.client_status,
1727
- };
1728
- }
1729
- presenceToRaw(presence) {
1730
- return {
1731
- user: this.presenceUserToRaw(presence.user),
1732
- guild_id: presence.guildID,
1733
- status: presence.status,
1734
- activities: presence.activities.map((activity) => ({
1735
- name: activity.name,
1736
- type: activity.type,
1737
- url: activity.url,
1738
- created_at: activity.createdAt,
1739
- timestamps: activity.timestamps,
1740
- application_id: activity.applicationID,
1741
- details: activity.details,
1742
- state: activity.state,
1743
- emoji: activity.emoji,
1744
- party: activity.party,
1745
- assets: {
1746
- large_image: activity.assets?.largeImage,
1747
- large_text: activity.assets?.largeText,
1748
- small_image: activity.assets?.smallImage,
1749
- small_text: activity.assets?.smallText,
1750
- },
1751
- secrets: activity.secrets,
1752
- instance: activity.instance,
1753
- flags: activity.flags,
1754
- buttons: activity.buttons,
1755
- })),
1756
- client_status: presence.clientStatus,
1757
- };
1758
- }
1759
- presenceUserFromRaw(user) {
1760
- return {
1761
- id: user.id,
1762
- username: user.username,
1763
- discriminator: user.discriminator,
1764
- globalName: user.global_name,
1765
- avatar: user.avatar,
1766
- bot: user.bot,
1767
- system: user.system,
1768
- mfaEnabled: user.mfa_enabled,
1769
- banner: user.banner,
1770
- accentColor: user.accent_color,
1771
- locale: user.locale,
1772
- verified: user.verified,
1773
- email: user.email,
1774
- flags: user.flags,
1775
- premiumType: user.premium_type,
1776
- publicFlags: user.public_flags,
1777
- avatarDecoration: user.avatar_decoration,
1778
- };
1779
- }
1780
- presenceUserToRaw(user) {
1781
- return {
1782
- id: user.id,
1783
- username: user.username,
1784
- discriminator: user.discriminator,
1785
- global_name: user.globalName,
1786
- avatar: user.avatar,
1787
- bot: user.bot,
1788
- system: user.system,
1789
- mfa_enabled: user.mfaEnabled,
1790
- banner: user.banner,
1791
- accent_color: user.accentColor,
1792
- locale: user.locale,
1793
- verified: user.verified,
1794
- email: user.email,
1795
- flags: user.flags,
1796
- premium_type: user.premiumType,
1797
- public_flags: user.publicFlags,
1798
- avatar_decoration: user.avatarDecoration,
1799
- };
1800
- }
1801
- pollFromRaw(poll) {
1802
- return {
1803
- question: poll.question,
1804
- answers: poll.answers.map((answer) => ({
1805
- answerID: answer.answer_id,
1806
- pollMedia: answer.poll_media,
1807
- })),
1808
- expiry: poll.expiry,
1809
- allowMultiselect: poll.allow_multiselect,
1810
- layoutType: poll.layout_type,
1811
- results: poll.results !== undefined
1812
- ? {
1813
- isFinalized: poll.results.is_finalized,
1814
- answerCounts: poll.results.answer_counts.map((answerCount) => ({
1815
- id: answerCount.id,
1816
- count: answerCount.count,
1817
- meVoted: answerCount.me_voted,
1818
- })),
1819
- }
1820
- : undefined,
1821
- };
1822
- }
1823
- pollToRaw(poll) {
1824
- return {
1825
- question: poll.question,
1826
- answers: poll.answers.map((answer) => ({
1827
- answer_id: answer.answerID,
1828
- poll_media: answer.pollMedia,
1829
- })),
1830
- expiry: poll.expiry,
1831
- allow_multiselect: poll.allowMultiselect,
1832
- layout_type: poll.layoutType,
1833
- results: poll.results !== undefined
1834
- ? {
1835
- is_finalized: poll.results.isFinalized,
1836
- answer_counts: poll.results.answerCounts.map((answerCount) => ({
1837
- id: answerCount.id,
1838
- count: answerCount.count,
1839
- me_voted: answerCount.meVoted,
1840
- })),
1841
- }
1842
- : undefined,
1843
- };
1844
- }
1845
- resolvedDataFromRaw(resolvedData) {
1846
- let users = {};
1847
- let members = {};
1848
- let roles = {};
1849
- let channels = {};
1850
- let messages = {};
1851
- let attachments = {};
1852
- if (resolvedData.users !== undefined) {
1853
- for (const [key, value] of Object.entries(resolvedData.users)) {
1854
- users[key] = this.userFromRaw(value);
1855
- }
1856
- }
1857
- if (resolvedData.members !== undefined) {
1858
- for (const [key, value] of Object.entries(resolvedData.members)) {
1859
- members[key] = this.guildMemberFromRaw(value);
1860
- }
1861
- }
1862
- if (resolvedData.roles !== undefined) {
1863
- for (const [key, value] of Object.entries(resolvedData.roles)) {
1864
- roles[key] = this.roleFromRaw(value);
1865
- }
1866
- }
1867
- if (resolvedData.channels !== undefined) {
1868
- for (const [key, value] of Object.entries(resolvedData.channels)) {
1869
- channels[key] = this.channelFromRaw(value);
1870
- }
1871
- }
1872
- if (resolvedData.messages !== undefined) {
1873
- for (const [key, value] of Object.entries(resolvedData.messages)) {
1874
- messages[key] = this.messageFromRaw(value);
1875
- }
1876
- }
1877
- if (resolvedData.attachments !== undefined) {
1878
- for (const [key, value] of Object.entries(resolvedData.attachments)) {
1879
- attachments[key] = this.attachmentFromRaw(value);
1880
- }
1881
- }
1882
- return {
1883
- users,
1884
- members,
1885
- roles,
1886
- channels,
1887
- messages,
1888
- attachments,
1889
- };
1890
- }
1891
- resolvedDataToRaw(resolvedData) {
1892
- let users = {};
1893
- let members = {};
1894
- let roles = {};
1895
- let channels = {};
1896
- let messages = {};
1897
- let attachments = {};
1898
- if (resolvedData.users !== undefined) {
1899
- for (const [key, value] of Object.entries(resolvedData.users)) {
1900
- users[key] = this.userToRaw(value);
1901
- }
1902
- }
1903
- if (resolvedData.members !== undefined) {
1904
- for (const [key, value] of Object.entries(resolvedData.members)) {
1905
- members[key] = this.guildMemberToRaw(value);
1906
- }
1907
- }
1908
- if (resolvedData.roles !== undefined) {
1909
- for (const [key, value] of Object.entries(resolvedData.roles)) {
1910
- roles[key] = this.roleToRaw(value);
1911
- }
1912
- }
1913
- if (resolvedData.channels !== undefined) {
1914
- for (const [key, value] of Object.entries(resolvedData.channels)) {
1915
- channels[key] = this.channelToRaw(value);
1916
- }
1917
- }
1918
- if (resolvedData.messages !== undefined) {
1919
- for (const [key, value] of Object.entries(resolvedData.messages)) {
1920
- messages[key] = this.messageToRaw(value);
1921
- }
1922
- }
1923
- if (resolvedData.attachments !== undefined) {
1924
- for (const [key, value] of Object.entries(resolvedData.attachments)) {
1925
- attachments[key] = this.attachmentToRaw(value);
1926
- }
1927
- }
1928
- return {
1929
- users,
1930
- members,
1931
- roles,
1932
- channels,
1933
- messages,
1934
- attachments,
1935
- };
1936
- }
1937
- roleFromRaw(role) {
1938
- return {
1939
- id: role.id,
1940
- name: role.name,
1941
- color: role.color,
1942
- hoist: role.hoist,
1943
- icon: role.icon,
1944
- unicodeEmoji: role.unicode_emoji,
1945
- position: role.position,
1946
- permissions: role.permissions,
1947
- managed: role.managed,
1948
- mentionable: role.mentionable,
1949
- tags: role.tags !== undefined
1950
- ? {
1951
- botID: role.tags.bot_id,
1952
- integrationID: role.tags.integration_id,
1953
- premiumSubscriber: role.tags.premium_subscriber,
1954
- subscriptionListingID: role.tags.subscription_listing_id,
1955
- availableForPurchase: role.tags.available_for_purchase,
1956
- guildConnections: role.tags.guild_connections,
1957
- }
1958
- : undefined,
1959
- flags: role.flags,
1960
- };
1961
- }
1962
- roleToRaw(role) {
1963
- return {
1964
- id: role.id,
1965
- name: role.name,
1966
- color: role.color,
1967
- hoist: role.hoist,
1968
- icon: role.icon,
1969
- unicode_emoji: role.unicodeEmoji,
1970
- position: role.position,
1971
- permissions: role.permissions,
1972
- managed: role.managed,
1973
- mentionable: role.mentionable,
1974
- tags: role.tags !== undefined
1975
- ? {
1976
- bot_id: role.tags.botID,
1977
- integration_id: role.tags.integrationID,
1978
- premium_subscriber: role.tags.premiumSubscriber,
1979
- subscription_listing_id: role.tags.subscriptionListingID,
1980
- available_for_purchase: role.tags.availableForPurchase,
1981
- guild_connections: role.tags.guildConnections,
1982
- }
1983
- : undefined,
1984
- flags: role.flags,
1985
- };
1986
- }
1987
- skuFromRaw(sku) {
1988
- return {
1989
- id: sku.id,
1990
- type: sku.type,
1991
- dependentSKUID: sku.dependent_sku_id,
1992
- applicationID: sku.application_id,
1993
- manifestLabels: sku.manifest_labels,
1994
- accessType: sku.access_type,
1995
- name: sku.name,
1996
- features: sku.features,
1997
- releaseDate: sku.release_date,
1998
- slug: sku.slug,
1999
- flags: sku.flags,
2000
- showAgeGate: sku.show_age_gate,
2001
- };
2002
- }
2003
- skuToRaw(sku) {
2004
- return {
2005
- id: sku.id,
2006
- type: sku.type,
2007
- dependent_sku_id: sku.dependentSKUID,
2008
- application_id: sku.applicationID,
2009
- manifest_labels: sku.manifestLabels,
2010
- access_type: sku.accessType,
2011
- name: sku.name,
2012
- features: sku.features,
2013
- release_date: sku.releaseDate,
2014
- slug: sku.slug,
2015
- flags: sku.flags,
2016
- show_age_gate: sku.showAgeGate,
2017
- };
2018
- }
2019
- stageInstanceFromRaw(stageInstance) {
2020
- return {
2021
- id: stageInstance.id,
2022
- guildID: stageInstance.guild_id,
2023
- channelID: stageInstance.channel_id,
2024
- topic: stageInstance.topic,
2025
- privacyLevel: stageInstance.privacy_level,
2026
- discoverableDisabled: stageInstance.discoverable_disabled,
2027
- guildScheduledEventID: stageInstance.guild_scheduled_event_id,
2028
- };
2029
- }
2030
- stageInstanceToRaw(stageInstance) {
2031
- return {
2032
- id: stageInstance.id,
2033
- guild_id: stageInstance.guildID,
2034
- channel_id: stageInstance.channelID,
2035
- topic: stageInstance.topic,
2036
- privacy_level: stageInstance.privacyLevel,
2037
- discoverable_disabled: stageInstance.discoverableDisabled,
2038
- guild_scheduled_event_id: stageInstance.guildScheduledEventID,
2039
- };
2040
- }
2041
- stickerFromRaw(sticker) {
2042
- return {
2043
- id: sticker.id,
2044
- packID: sticker.pack_id,
2045
- name: sticker.name,
2046
- description: sticker.description,
2047
- tags: sticker.tags,
2048
- asset: sticker.asset,
2049
- type: sticker.type,
2050
- formatType: sticker.format_type,
2051
- available: sticker.available,
2052
- guildID: sticker.id,
2053
- user: sticker.user !== undefined ? this.userFromRaw(sticker.user) : undefined,
2054
- sortValue: sticker.sort_value,
2055
- };
2056
- }
2057
- stickerToRaw(sticker) {
2058
- return {
2059
- id: sticker.id,
2060
- pack_id: sticker.packID,
2061
- name: sticker.name,
2062
- description: sticker.description,
2063
- tags: sticker.tags,
2064
- asset: sticker.asset,
2065
- type: sticker.type,
2066
- format_type: sticker.formatType,
2067
- available: sticker.available,
2068
- guild_id: sticker.id,
2069
- user: sticker.user !== undefined ? this.userToRaw(sticker.user) : undefined,
2070
- sort_value: sticker.sortValue,
2071
- };
2072
- }
2073
- teamFromRaw(team) {
2074
- return {
2075
- icon: team.icon,
2076
- id: team.id,
2077
- members: team.members.map((teamMember) => ({
2078
- membershipState: teamMember.membership_state,
2079
- teamID: teamMember.team_id,
2080
- user: this.userFromRaw(teamMember.user),
2081
- role: teamMember.role,
2082
- })),
2083
- name: team.name,
2084
- ownerUserID: team.owner_user_id,
2085
- };
2086
- }
2087
- teamToRaw(team) {
2088
- return {
2089
- icon: team.icon,
2090
- id: team.id,
2091
- members: team.members.map((teamMember) => ({
2092
- membership_state: teamMember.membershipState,
2093
- team_id: teamMember.teamID,
2094
- user: this.userToRaw(teamMember.user),
2095
- role: teamMember.role,
2096
- })),
2097
- name: team.name,
2098
- owner_user_id: team.ownerUserID,
2099
- };
2100
- }
2101
- testEntitlementFromRaw(entitlement) {
2102
- return {
2103
- id: entitlement.id,
2104
- skuID: entitlement.sku_id,
2105
- applicationID: entitlement.application_id,
2106
- userID: entitlement.user_id,
2107
- promotionID: entitlement.promotion_id,
2108
- type: entitlement.type,
2109
- deleted: entitlement.deleted,
2110
- giftCodeFlags: entitlement.gift_code_flags,
2111
- consumed: entitlement.consumed,
2112
- guildID: entitlement.guild_id,
2113
- };
2114
- }
2115
- testEntitlementToRaw(entitlement) {
2116
- return {
2117
- id: entitlement.id,
2118
- sku_id: entitlement.skuID,
2119
- application_id: entitlement.applicationID,
2120
- user_id: entitlement.userID,
2121
- promotion_id: entitlement.promotionID,
2122
- type: entitlement.type,
2123
- deleted: entitlement.deleted,
2124
- gift_code_flags: entitlement.giftCodeFlags,
2125
- consumed: entitlement.consumed,
2126
- guild_id: entitlement.guildID,
2127
- };
2128
- }
2129
- threadMemberFromRaw(threadMember) {
2130
- return {
2131
- id: threadMember.id,
2132
- userID: threadMember.user_id,
2133
- joinTimestamp: threadMember.join_timestamp,
2134
- flags: threadMember.flags,
2135
- member: threadMember.member !== undefined
2136
- ? this.guildMemberFromRaw(threadMember.member)
2137
- : undefined,
2138
- };
2139
- }
2140
- threadMemberToRaw(threadMember) {
2141
- return {
2142
- id: threadMember.id,
2143
- user_id: threadMember.userID,
2144
- join_timestamp: threadMember.joinTimestamp,
2145
- flags: threadMember.flags,
2146
- member: threadMember.member !== undefined
2147
- ? this.guildMemberToRaw(threadMember.member)
2148
- : undefined,
2149
- };
2150
- }
2151
- userFromRaw(user) {
2152
- return {
2153
- id: user.id,
2154
- username: user.username,
2155
- discriminator: user.discriminator,
2156
- globalName: user.global_name,
2157
- avatar: user.avatar,
2158
- bot: user.bot,
2159
- system: user.system,
2160
- mfaEnabled: user.mfa_enabled,
2161
- banner: user.banner,
2162
- accentColor: user.accent_color,
2163
- locale: user.locale,
2164
- verified: user.verified,
2165
- email: user.email,
2166
- flags: user.flags,
2167
- premiumType: user.premium_type,
2168
- publicFlags: user.public_flags,
2169
- avatarDecoration: user.avatar_decoration,
2170
- };
2171
- }
2172
- userToRaw(user) {
2173
- return {
2174
- id: user.id,
2175
- username: user.username,
2176
- discriminator: user.discriminator,
2177
- global_name: user.globalName,
2178
- avatar: user.avatar,
2179
- bot: user.bot,
2180
- system: user.system,
2181
- mfa_enabled: user.mfaEnabled,
2182
- banner: user.banner,
2183
- accent_color: user.accentColor,
2184
- locale: user.locale,
2185
- verified: user.verified,
2186
- email: user.email,
2187
- flags: user.flags,
2188
- premium_type: user.premiumType,
2189
- public_flags: user.publicFlags,
2190
- avatar_decoration: user.avatarDecoration,
2191
- };
2192
- }
2193
- voiceStateFromRaw(voiceState) {
2194
- return {
2195
- guildID: voiceState.guild_id,
2196
- channelID: voiceState.channel_id,
2197
- userID: voiceState.user_id,
2198
- member: voiceState.member !== undefined
2199
- ? this.guildMemberFromRaw(voiceState.member)
2200
- : undefined,
2201
- sessionID: voiceState.session_id,
2202
- deaf: voiceState.deaf,
2203
- mute: voiceState.mute,
2204
- selfDeaf: voiceState.self_deaf,
2205
- selfMute: voiceState.self_mute,
2206
- selfStream: voiceState.self_stream,
2207
- selfVideo: voiceState.self_video,
2208
- suppress: voiceState.suppress,
2209
- requestToSpeakTimestamp: voiceState.request_to_speak_timestamp,
2210
- };
2211
- }
2212
- voiceStateToRaw(voiceState) {
2213
- return {
2214
- guild_id: voiceState.guildID,
2215
- channel_id: voiceState.channelID,
2216
- user_id: voiceState.userID,
2217
- member: voiceState.member !== undefined
2218
- ? this.guildMemberToRaw(voiceState.member)
2219
- : undefined,
2220
- session_id: voiceState.sessionID,
2221
- deaf: voiceState.deaf,
2222
- mute: voiceState.mute,
2223
- self_deaf: voiceState.selfDeaf,
2224
- self_mute: voiceState.selfMute,
2225
- self_stream: voiceState.selfStream,
2226
- self_video: voiceState.selfVideo,
2227
- suppress: voiceState.suppress,
2228
- request_to_speak_timestamp: voiceState.requestToSpeakTimestamp,
2229
- };
2230
- }
2231
- webhookFromRaw(webhook) {
2232
- return {
2233
- id: webhook.id,
2234
- type: webhook.type,
2235
- guildID: webhook.guild_id,
2236
- channelID: webhook.channel_id,
2237
- user: webhook.user !== undefined ? this.userFromRaw(webhook.user) : undefined,
2238
- name: webhook.name,
2239
- avatar: webhook.avatar,
2240
- token: webhook.token,
2241
- applicationID: webhook.application_id,
2242
- sourceGuild: webhook.source_guild !== undefined
2243
- ? this.guildFromRaw(webhook.source_guild)
2244
- : undefined,
2245
- sourceChannel: webhook.source_channel !== undefined
2246
- ? this.channelFromRaw(webhook.source_channel)
2247
- : undefined,
2248
- url: webhook.url,
2249
- };
2250
- }
2251
- webhookToRaw(webhook) {
2252
- return {
2253
- id: webhook.id,
2254
- type: webhook.type,
2255
- guild_id: webhook.guildID,
2256
- channel_id: webhook.channelID,
2257
- user: webhook.user !== undefined ? this.userToRaw(webhook.user) : undefined,
2258
- name: webhook.name,
2259
- avatar: webhook.avatar,
2260
- token: webhook.token,
2261
- application_id: webhook.applicationID,
2262
- source_guild: webhook.sourceGuild !== undefined
2263
- ? this.guildToRaw(webhook.sourceGuild)
2264
- : undefined,
2265
- source_channel: webhook.sourceChannel !== undefined
2266
- ? this.channelToRaw(webhook.sourceChannel)
2267
- : undefined,
2268
- url: webhook.url,
2269
- };
2270
- }
2271
62
  }
2272
63
  exports.Util = Util;