disgroove 2.2.7 → 3.0.0-dev.a714eda
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/Client.d.ts +252 -251
- package/dist/lib/Client.js +472 -471
- package/dist/lib/gateway/Shard.d.ts +5 -3
- package/dist/lib/gateway/Shard.js +169 -121
- package/dist/lib/index.d.ts +4 -0
- package/dist/lib/index.js +4 -0
- package/dist/lib/rest/Endpoints.d.ts +94 -94
- package/dist/lib/rest/Endpoints.js +104 -104
- package/dist/lib/transformers/ApplicationCommands.js +4 -4
- package/dist/lib/transformers/Applications.js +14 -6
- package/dist/lib/transformers/AuditLogs.js +10 -10
- package/dist/lib/transformers/AutoModeration.js +6 -6
- package/dist/lib/transformers/Channels.js +16 -16
- package/dist/lib/transformers/Components.js +16 -16
- package/dist/lib/transformers/Entitlements.d.ts +2 -2
- package/dist/lib/transformers/Entitlements.js +16 -16
- package/dist/lib/transformers/GuildScheduledEvents.js +8 -8
- package/dist/lib/transformers/GuildTemplates.js +4 -4
- package/dist/lib/transformers/Guilds.js +28 -28
- package/dist/lib/transformers/Interactions.js +44 -44
- package/dist/lib/transformers/Lobbies.js +2 -2
- package/dist/lib/transformers/Messages.js +16 -16
- package/dist/lib/transformers/Polls.js +2 -2
- package/dist/lib/transformers/Presences.js +6 -6
- package/dist/lib/transformers/Roles.js +6 -6
- package/dist/lib/transformers/SKUs.js +2 -2
- package/dist/lib/transformers/Soundboards.js +6 -6
- package/dist/lib/transformers/StageInstances.js +6 -6
- package/dist/lib/transformers/Stickers.js +3 -3
- package/dist/lib/transformers/Subscriptions.js +8 -8
- package/dist/lib/transformers/Teams.js +4 -4
- package/dist/lib/transformers/Users.js +6 -6
- package/dist/lib/transformers/Voice.js +8 -8
- package/dist/lib/transformers/Webhooks.js +6 -6
- package/dist/lib/types/application-command.d.ts +9 -4
- package/dist/lib/types/application-role-connection-metadata.d.ts +1 -0
- package/dist/lib/types/application.d.ts +14 -9
- package/dist/lib/types/audit-log.d.ts +9 -5
- package/dist/lib/types/auto-moderation.d.ts +7 -3
- package/dist/lib/types/channel.d.ts +17 -23
- package/dist/lib/types/common.d.ts +2 -0
- package/dist/lib/types/components.d.ts +43 -15
- package/dist/lib/types/emoji.d.ts +1 -0
- package/dist/lib/types/entitlements.d.ts +5 -4
- package/dist/lib/types/gateway-events.d.ts +181 -130
- package/dist/lib/types/guild-scheduled-event.d.ts +10 -5
- package/dist/lib/types/guild-template.d.ts +3 -2
- package/dist/lib/types/guild.d.ts +33 -17
- package/dist/lib/types/interaction.d.ts +23 -10
- package/dist/lib/types/invite.d.ts +3 -0
- package/dist/lib/types/lobby.d.ts +3 -1
- package/dist/lib/types/message.d.ts +27 -13
- package/dist/lib/types/poll.d.ts +7 -1
- package/dist/lib/types/role.d.ts +6 -3
- package/dist/lib/types/sku.d.ts +2 -1
- package/dist/lib/types/soundboard.d.ts +4 -3
- package/dist/lib/types/stage-instance.d.ts +4 -3
- package/dist/lib/types/sticker.d.ts +8 -5
- package/dist/lib/types/subscription.d.ts +6 -5
- package/dist/lib/types/team.d.ts +4 -2
- package/dist/lib/types/user.d.ts +10 -3
- package/dist/lib/types/voice.d.ts +6 -4
- package/dist/lib/types/webhook.d.ts +4 -3
- package/dist/lib/utils/CDN.d.ts +22 -22
- package/dist/lib/utils/CDN.js +22 -22
- package/dist/lib/utils/formatters.d.ts +6 -6
- package/dist/lib/utils/formatters.js +18 -18
- package/dist/package.json +1 -1
- package/package.json +1 -1
|
@@ -6,13 +6,15 @@ export declare class Shard {
|
|
|
6
6
|
private heartbeatInterval;
|
|
7
7
|
client: Client;
|
|
8
8
|
ws: WebSocket;
|
|
9
|
-
|
|
9
|
+
sessionId: string | null;
|
|
10
10
|
resumeGatewayURL: string | null;
|
|
11
|
+
sequence: number | null;
|
|
11
12
|
constructor(id: number, client: Client);
|
|
12
13
|
/** https://discord.com/developers/docs/topics/gateway#connections */
|
|
13
|
-
connect(): void;
|
|
14
|
-
/** https://discord.com/developers/docs/
|
|
14
|
+
connect(reconnect: boolean): void;
|
|
15
|
+
/** https://discord.com/developers/docs/events/gateway#initiating-a-disconnect */
|
|
15
16
|
disconnect(): void;
|
|
17
|
+
reconnect(): void;
|
|
16
18
|
/** https://discord.com/developers/docs/topics/gateway-events#heartbeat */
|
|
17
19
|
heartbeat(lastSequence: number | null): void;
|
|
18
20
|
/** https://discord.com/developers/docs/topics/gateway-events#identify */
|
|
@@ -37,29 +37,41 @@ class Shard {
|
|
|
37
37
|
heartbeatInterval;
|
|
38
38
|
client;
|
|
39
39
|
ws;
|
|
40
|
-
|
|
40
|
+
sessionId;
|
|
41
41
|
resumeGatewayURL;
|
|
42
|
+
sequence;
|
|
42
43
|
constructor(id, client) {
|
|
43
44
|
this.id = id;
|
|
44
45
|
this.heartbeatInterval = null;
|
|
45
46
|
this.client = client;
|
|
46
47
|
this.ws = new ws_1.default("wss://gateway.discord.gg/?v=10&encoding=json", client.ws);
|
|
47
|
-
this.
|
|
48
|
+
this.sessionId = null;
|
|
48
49
|
this.resumeGatewayURL = null;
|
|
50
|
+
this.sequence = null;
|
|
49
51
|
}
|
|
50
52
|
/** https://discord.com/developers/docs/topics/gateway#connections */
|
|
51
|
-
connect() {
|
|
52
|
-
this.ws.on("open", () => this.onWebSocketOpen());
|
|
53
|
+
connect(reconnect) {
|
|
54
|
+
this.ws.on("open", () => this.onWebSocketOpen(reconnect));
|
|
53
55
|
this.ws.on("message", (data) => this.onWebSocketMessage(data));
|
|
54
56
|
this.ws.on("error", (err) => this.onWebSocketError(err));
|
|
55
57
|
this.ws.on("close", (code, reason) => this.onWebSocketClose(code, reason));
|
|
56
58
|
}
|
|
57
|
-
/** https://discord.com/developers/docs/
|
|
59
|
+
/** https://discord.com/developers/docs/events/gateway#initiating-a-disconnect */
|
|
58
60
|
disconnect() {
|
|
59
61
|
if (this.heartbeatInterval) {
|
|
60
62
|
clearInterval(this.heartbeatInterval);
|
|
61
63
|
this.heartbeatInterval = null;
|
|
62
64
|
}
|
|
65
|
+
this.ws.close(1000, "Session Invalidated - Disconnect");
|
|
66
|
+
}
|
|
67
|
+
reconnect() {
|
|
68
|
+
if (this.resumeGatewayURL !== null &&
|
|
69
|
+
this.sessionId !== null &&
|
|
70
|
+
this.sequence !== null) {
|
|
71
|
+
this.ws.close(1000, "Resume Attempt - Reconnect");
|
|
72
|
+
this.ws = new ws_1.default(this.resumeGatewayURL, this.client.ws);
|
|
73
|
+
this.connect(true);
|
|
74
|
+
}
|
|
63
75
|
}
|
|
64
76
|
/** https://discord.com/developers/docs/topics/gateway-events#heartbeat */
|
|
65
77
|
heartbeat(lastSequence) {
|
|
@@ -88,12 +100,13 @@ class Shard {
|
|
|
88
100
|
}));
|
|
89
101
|
}
|
|
90
102
|
onDispatch(packet) {
|
|
103
|
+
this.sequence = packet.s;
|
|
91
104
|
this.client.emit("dispatch", packet, this.id);
|
|
92
105
|
switch (packet.t) {
|
|
93
106
|
case constants_1.GatewayEvents.Ready:
|
|
94
107
|
{
|
|
95
|
-
this.
|
|
96
|
-
this.resumeGatewayURL = packet.d.resume_gateway_url
|
|
108
|
+
this.sessionId = packet.d.session_id;
|
|
109
|
+
this.resumeGatewayURL = `${packet.d.resume_gateway_url}?v=10&encoding=json`;
|
|
97
110
|
this.client.user = transformers_1.Users.userFromRaw(packet.d.user);
|
|
98
111
|
this.client.application = packet.d.application;
|
|
99
112
|
this.client.emit("ready");
|
|
@@ -109,7 +122,7 @@ class Shard {
|
|
|
109
122
|
opcode: constants_1.GatewayOPCodes.RequestGuildMembers,
|
|
110
123
|
retryAfter: packet.d.retry_after,
|
|
111
124
|
meta: {
|
|
112
|
-
|
|
125
|
+
guildId: packet.d.meta.guild_id,
|
|
113
126
|
nonce: packet.d.nonce,
|
|
114
127
|
},
|
|
115
128
|
});
|
|
@@ -130,21 +143,21 @@ class Shard {
|
|
|
130
143
|
break;
|
|
131
144
|
case constants_1.GatewayEvents.AutoModerationActionExecution:
|
|
132
145
|
this.client.emit("autoModerationActionExecution", {
|
|
133
|
-
|
|
146
|
+
guildId: packet.d.guild_id,
|
|
134
147
|
action: {
|
|
135
148
|
type: packet.d.action.type,
|
|
136
149
|
metadata: {
|
|
137
|
-
|
|
150
|
+
channelId: packet.d.action.metadata.channel_id,
|
|
138
151
|
durationSeconds: packet.d.action.metadata.duration_seconds,
|
|
139
152
|
customMessage: packet.d.action.metadata.custom_message,
|
|
140
153
|
},
|
|
141
154
|
},
|
|
142
|
-
|
|
155
|
+
ruleId: packet.d.rule_id,
|
|
143
156
|
ruleTriggerType: packet.d.rule_trigger_type,
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
157
|
+
userId: packet.d.user_id,
|
|
158
|
+
channelId: packet.d.channel_id,
|
|
159
|
+
messageId: packet.d.message_id,
|
|
160
|
+
alertSystemMessageId: packet.d.alert_system_message_id,
|
|
148
161
|
content: packet.d.content,
|
|
149
162
|
matchedKeyword: packet.d.matched_keyword,
|
|
150
163
|
matchedContent: packet.d.matched_content,
|
|
@@ -161,8 +174,8 @@ class Shard {
|
|
|
161
174
|
break;
|
|
162
175
|
case constants_1.GatewayEvents.ChannelPinsUpdate:
|
|
163
176
|
this.client.emit("channelPinsUpdate", {
|
|
164
|
-
|
|
165
|
-
|
|
177
|
+
guildId: packet.d.guild_id,
|
|
178
|
+
channelId: packet.d.channel_id,
|
|
166
179
|
lastPinTimestamp: packet.d.last_pin_timestamp,
|
|
167
180
|
});
|
|
168
181
|
break;
|
|
@@ -177,8 +190,8 @@ class Shard {
|
|
|
177
190
|
break;
|
|
178
191
|
case constants_1.GatewayEvents.ThreadListSync:
|
|
179
192
|
this.client.emit("threadListSync", {
|
|
180
|
-
|
|
181
|
-
|
|
193
|
+
guildId: packet.d.guild_id,
|
|
194
|
+
channelIds: packet.d.channel_ids,
|
|
182
195
|
threads: packet.d.threads.map((thread) => transformers_1.Channels.channelFromRaw(thread)),
|
|
183
196
|
members: packet.d.members.map((threadMember) => transformers_1.Channels.threadMemberFromRaw(threadMember)),
|
|
184
197
|
});
|
|
@@ -186,22 +199,22 @@ class Shard {
|
|
|
186
199
|
case constants_1.GatewayEvents.ThreadMemberUpdate:
|
|
187
200
|
this.client.emit("threadMemberUpdate", {
|
|
188
201
|
id: packet.d.id,
|
|
189
|
-
|
|
202
|
+
userId: packet.d.user_id,
|
|
190
203
|
joinTimestamp: packet.d.join_timestamp,
|
|
191
204
|
flags: packet.d.flags,
|
|
192
205
|
member: packet.d.member !== undefined
|
|
193
206
|
? transformers_1.Guilds.guildMemberFromRaw(packet.d.member)
|
|
194
207
|
: undefined,
|
|
195
|
-
|
|
208
|
+
guildId: packet.d.guild_id,
|
|
196
209
|
});
|
|
197
210
|
break;
|
|
198
211
|
case constants_1.GatewayEvents.ThreadMembersUpdate:
|
|
199
212
|
this.client.emit("threadMembersUpdate", {
|
|
200
213
|
id: packet.d.id,
|
|
201
|
-
|
|
214
|
+
guildId: packet.d.guild_id,
|
|
202
215
|
memberCount: packet.d.member_count,
|
|
203
216
|
addedMembers: packet.d.members.map((threadMember) => transformers_1.Channels.threadMemberFromRaw(threadMember)),
|
|
204
|
-
|
|
217
|
+
removedMemberIds: packet.d.removed_member_ids,
|
|
205
218
|
});
|
|
206
219
|
break;
|
|
207
220
|
case constants_1.GatewayEvents.EntitlementCreate:
|
|
@@ -239,18 +252,18 @@ class Shard {
|
|
|
239
252
|
case constants_1.GatewayEvents.GuildAuditLogEntryCreate:
|
|
240
253
|
this.client.emit("guildAuditLogEntryCreate", {
|
|
241
254
|
...transformers_1.AuditLogs.auditLogEntryFromRaw(packet.d),
|
|
242
|
-
|
|
255
|
+
guildId: packet.d.guild_id,
|
|
243
256
|
});
|
|
244
257
|
break;
|
|
245
258
|
case constants_1.GatewayEvents.GuildBanAdd:
|
|
246
259
|
this.client.emit("guildBanAdd", {
|
|
247
|
-
|
|
260
|
+
guildId: packet.d.guild_id,
|
|
248
261
|
user: transformers_1.Users.userFromRaw(packet.d.user),
|
|
249
262
|
});
|
|
250
263
|
break;
|
|
251
264
|
case constants_1.GatewayEvents.GuildBanRemove:
|
|
252
265
|
this.client.emit("guildBanRemove", {
|
|
253
|
-
|
|
266
|
+
guildId: packet.d.guild_id,
|
|
254
267
|
user: transformers_1.Users.userFromRaw(packet.d.user),
|
|
255
268
|
});
|
|
256
269
|
break;
|
|
@@ -266,18 +279,18 @@ class Shard {
|
|
|
266
279
|
case constants_1.GatewayEvents.GuildMemberAdd:
|
|
267
280
|
this.client.emit("guildMemberAdd", {
|
|
268
281
|
...transformers_1.Guilds.guildMemberFromRaw(packet.d),
|
|
269
|
-
|
|
282
|
+
guildId: packet.d.guild_id,
|
|
270
283
|
});
|
|
271
284
|
break;
|
|
272
285
|
case constants_1.GatewayEvents.GuildMemberRemove:
|
|
273
286
|
this.client.emit("guildMemberRemove", {
|
|
274
|
-
|
|
287
|
+
guildId: packet.d.guild_id,
|
|
275
288
|
user: transformers_1.Users.userFromRaw(packet.d.user),
|
|
276
289
|
});
|
|
277
290
|
break;
|
|
278
291
|
case constants_1.GatewayEvents.GuildMemberUpdate:
|
|
279
292
|
this.client.emit("guildMemberUpdate", {
|
|
280
|
-
|
|
293
|
+
guildId: packet.d.guild_id,
|
|
281
294
|
roles: packet.d.roles,
|
|
282
295
|
user: transformers_1.Users.userFromRaw(packet.d.user),
|
|
283
296
|
nick: packet.d.nick,
|
|
@@ -293,14 +306,14 @@ class Shard {
|
|
|
293
306
|
avatarDecorationData: packet.d.avatar_decoration_data !== undefined
|
|
294
307
|
? {
|
|
295
308
|
asset: packet.d.asset,
|
|
296
|
-
|
|
309
|
+
skuId: packet.d.sku_id,
|
|
297
310
|
}
|
|
298
311
|
: undefined,
|
|
299
312
|
});
|
|
300
313
|
break;
|
|
301
314
|
case constants_1.GatewayEvents.GuildMembersChunk:
|
|
302
315
|
this.client.emit("guildMembersChunk", {
|
|
303
|
-
|
|
316
|
+
guildId: packet.d.guild_id,
|
|
304
317
|
members: packet.d.members.map((guildMember) => transformers_1.Guilds.guildMemberFromRaw(guildMember)),
|
|
305
318
|
chunkIndex: packet.d.chunk_index,
|
|
306
319
|
chunkCount: packet.d.chunk_count,
|
|
@@ -341,8 +354,8 @@ class Shard {
|
|
|
341
354
|
break;
|
|
342
355
|
case constants_1.GatewayEvents.GuildSoundboardSoundDelete:
|
|
343
356
|
this.client.emit("guildSoundboardSoundDelete", {
|
|
344
|
-
|
|
345
|
-
|
|
357
|
+
soundId: packet.d.sound_id,
|
|
358
|
+
guildId: packet.d.guild_id,
|
|
346
359
|
});
|
|
347
360
|
break;
|
|
348
361
|
case constants_1.GatewayEvents.GuildSoundboardSoundsUpdate:
|
|
@@ -354,20 +367,20 @@ class Shard {
|
|
|
354
367
|
case constants_1.GatewayEvents.IntegrationCreate:
|
|
355
368
|
this.client.emit("integrationCreate", {
|
|
356
369
|
...transformers_1.Guilds.integrationFromRaw(packet.d),
|
|
357
|
-
|
|
370
|
+
guildId: packet.d.guild_id,
|
|
358
371
|
});
|
|
359
372
|
break;
|
|
360
373
|
case constants_1.GatewayEvents.IntegrationUpdate:
|
|
361
374
|
this.client.emit("integrationUpdate", {
|
|
362
375
|
...transformers_1.Guilds.integrationFromRaw(packet.d),
|
|
363
|
-
|
|
376
|
+
guildId: packet.d.guild_id,
|
|
364
377
|
});
|
|
365
378
|
break;
|
|
366
379
|
case constants_1.GatewayEvents.IntegrationDelete:
|
|
367
380
|
this.client.emit("integrationDelete", {
|
|
368
381
|
id: packet.d.id,
|
|
369
|
-
|
|
370
|
-
|
|
382
|
+
guildId: packet.d.guild_id,
|
|
383
|
+
applicationId: packet.d.application_id,
|
|
371
384
|
});
|
|
372
385
|
break;
|
|
373
386
|
case constants_1.GatewayEvents.InteractionCreate:
|
|
@@ -375,10 +388,10 @@ class Shard {
|
|
|
375
388
|
break;
|
|
376
389
|
case constants_1.GatewayEvents.InviteCreate:
|
|
377
390
|
this.client.emit("inviteCreate", {
|
|
378
|
-
|
|
391
|
+
channelId: packet.d.channel_id,
|
|
379
392
|
code: packet.d.code,
|
|
380
393
|
createdAt: packet.d.created_at,
|
|
381
|
-
|
|
394
|
+
guildId: packet.d.guild_id,
|
|
382
395
|
inviter: packet.d.inviter !== undefined
|
|
383
396
|
? transformers_1.Users.userFromRaw(packet.d.inviter)
|
|
384
397
|
: undefined,
|
|
@@ -398,15 +411,15 @@ class Shard {
|
|
|
398
411
|
break;
|
|
399
412
|
case constants_1.GatewayEvents.InviteDelete:
|
|
400
413
|
this.client.emit("inviteDelete", {
|
|
401
|
-
|
|
402
|
-
|
|
414
|
+
channelId: packet.d.channel_id,
|
|
415
|
+
guildId: packet.d.guild_id,
|
|
403
416
|
code: packet.d.code,
|
|
404
417
|
});
|
|
405
418
|
break;
|
|
406
419
|
case constants_1.GatewayEvents.MessageCreate:
|
|
407
420
|
this.client.emit("messageCreate", {
|
|
408
421
|
...transformers_1.Messages.messageFromRaw(packet.d),
|
|
409
|
-
|
|
422
|
+
guildId: packet.d.guild_id,
|
|
410
423
|
member: packet.d.member !== undefined
|
|
411
424
|
? transformers_1.Guilds.guildMemberFromRaw(packet.d.member)
|
|
412
425
|
: undefined,
|
|
@@ -419,28 +432,28 @@ class Shard {
|
|
|
419
432
|
case constants_1.GatewayEvents.MessageDelete:
|
|
420
433
|
this.client.emit("messageDelete", {
|
|
421
434
|
id: packet.d.id,
|
|
422
|
-
|
|
423
|
-
|
|
435
|
+
channelId: packet.d.channel_id,
|
|
436
|
+
guildId: packet.d.guild_id,
|
|
424
437
|
});
|
|
425
438
|
break;
|
|
426
439
|
case constants_1.GatewayEvents.MessageDeleteBulk:
|
|
427
440
|
this.client.emit("messageDeleteBulk", {
|
|
428
441
|
ids: packet.d.ids,
|
|
429
|
-
|
|
430
|
-
|
|
442
|
+
channelId: packet.d.channel_id,
|
|
443
|
+
guildId: packet.d.guild_id,
|
|
431
444
|
});
|
|
432
445
|
break;
|
|
433
446
|
case constants_1.GatewayEvents.MessageReactionAdd:
|
|
434
447
|
this.client.emit("messageReactionAdd", {
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
448
|
+
userId: packet.d.user_id,
|
|
449
|
+
channelId: packet.d.user_id,
|
|
450
|
+
messageId: packet.d.user_id,
|
|
451
|
+
guildId: packet.d.user_id,
|
|
439
452
|
member: packet.d.member !== undefined
|
|
440
453
|
? transformers_1.Guilds.guildMemberFromRaw(packet.d.member)
|
|
441
454
|
: undefined,
|
|
442
455
|
emoji: transformers_1.Emojis.emojiFromRaw(packet.d.emoji),
|
|
443
|
-
|
|
456
|
+
messageAuthorId: packet.d.message_author_id,
|
|
444
457
|
burst: packet.d.burst,
|
|
445
458
|
burstColors: packet.d.burst_colors,
|
|
446
459
|
type: packet.d.type,
|
|
@@ -448,10 +461,10 @@ class Shard {
|
|
|
448
461
|
break;
|
|
449
462
|
case constants_1.GatewayEvents.MessageReactionRemove:
|
|
450
463
|
this.client.emit("messageReactionRemove", {
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
464
|
+
userId: packet.d.user_id,
|
|
465
|
+
channelId: packet.d.user_id,
|
|
466
|
+
messageId: packet.d.user_id,
|
|
467
|
+
guildId: packet.d.user_id,
|
|
455
468
|
emoji: transformers_1.Emojis.emojiFromRaw(packet.d.emoji),
|
|
456
469
|
burst: packet.d.burst,
|
|
457
470
|
type: packet.d.type,
|
|
@@ -459,16 +472,16 @@ class Shard {
|
|
|
459
472
|
break;
|
|
460
473
|
case constants_1.GatewayEvents.MessageReactionRemoveAll:
|
|
461
474
|
this.client.emit("messageReactionRemoveAll", {
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
475
|
+
channelId: packet.d.channel_id,
|
|
476
|
+
messageId: packet.d.message_id,
|
|
477
|
+
guildId: packet.d.guild_id,
|
|
465
478
|
});
|
|
466
479
|
break;
|
|
467
480
|
case constants_1.GatewayEvents.MessageReactionRemoveEmoji:
|
|
468
481
|
this.client.emit("messageReactionRemoveEmoji", {
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
482
|
+
channelId: packet.d.channel_id,
|
|
483
|
+
guildId: packet.d.guild_id,
|
|
484
|
+
messageId: packet.d.message_id,
|
|
472
485
|
emoji: transformers_1.Emojis.emojiFromRaw(packet.d.emoji),
|
|
473
486
|
});
|
|
474
487
|
break;
|
|
@@ -486,9 +499,9 @@ class Shard {
|
|
|
486
499
|
break;
|
|
487
500
|
case constants_1.GatewayEvents.TypingStart:
|
|
488
501
|
this.client.emit("typingStart", {
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
502
|
+
channelId: packet.d.channel_id,
|
|
503
|
+
guildId: packet.d.guild_id,
|
|
504
|
+
userId: packet.d.user_id,
|
|
492
505
|
timestamp: packet.d.timestamp,
|
|
493
506
|
member: packet.d.member !== undefined
|
|
494
507
|
? transformers_1.Guilds.guildMemberFromRaw(packet.d.member)
|
|
@@ -500,15 +513,15 @@ class Shard {
|
|
|
500
513
|
break;
|
|
501
514
|
case constants_1.GatewayEvents.VoiceChannelEffectSend:
|
|
502
515
|
this.client.emit("voiceChannelEffectSend", {
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
516
|
+
channelId: packet.d.channel_id,
|
|
517
|
+
guildId: packet.d.guild_id,
|
|
518
|
+
userId: packet.d.user_id,
|
|
506
519
|
emoji: packet.d.emoji !== null
|
|
507
520
|
? transformers_1.Emojis.emojiFromRaw(packet.d.emoji)
|
|
508
521
|
: null,
|
|
509
522
|
animationType: packet.d.animation_type,
|
|
510
|
-
|
|
511
|
-
|
|
523
|
+
animationId: packet.d.animation_id,
|
|
524
|
+
soundId: packet.d.sound_id,
|
|
512
525
|
soundVolume: packet.d.sound_volume,
|
|
513
526
|
});
|
|
514
527
|
break;
|
|
@@ -519,7 +532,7 @@ class Shard {
|
|
|
519
532
|
{
|
|
520
533
|
this.client.emit("voiceServerUpdate", {
|
|
521
534
|
token: packet.d.token,
|
|
522
|
-
|
|
535
|
+
guildId: packet.d.guild_id,
|
|
523
536
|
endpoint: packet.d.endpoint,
|
|
524
537
|
});
|
|
525
538
|
}
|
|
@@ -538,54 +551,63 @@ class Shard {
|
|
|
538
551
|
break;
|
|
539
552
|
case constants_1.GatewayEvents.MessagePollVoteAdd:
|
|
540
553
|
this.client.emit("messagePollVoteAdd", {
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
554
|
+
userId: packet.d.user_id,
|
|
555
|
+
channelId: packet.d.channel_id,
|
|
556
|
+
messageId: packet.d.message_id,
|
|
557
|
+
guildId: packet.d.guild_id,
|
|
558
|
+
answerId: packet.d.answer_id,
|
|
546
559
|
});
|
|
547
560
|
break;
|
|
548
561
|
case constants_1.GatewayEvents.MessagePollVoteRemove:
|
|
549
562
|
this.client.emit("messagePollVoteRemove", {
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
563
|
+
userId: packet.d.user_id,
|
|
564
|
+
channelId: packet.d.channel_id,
|
|
565
|
+
messageId: packet.d.message_id,
|
|
566
|
+
guildId: packet.d.guild_id,
|
|
567
|
+
answerId: packet.d.answer_id,
|
|
555
568
|
});
|
|
556
569
|
break;
|
|
557
570
|
}
|
|
558
571
|
}
|
|
559
|
-
onWebSocketOpen() {
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
572
|
+
onWebSocketOpen(reconnect) {
|
|
573
|
+
if (reconnect) {
|
|
574
|
+
this.resume({
|
|
575
|
+
token: this.client.token,
|
|
576
|
+
sessionId: this.sessionId,
|
|
577
|
+
seq: this.sequence,
|
|
578
|
+
});
|
|
579
|
+
}
|
|
580
|
+
else {
|
|
581
|
+
this.identify({
|
|
582
|
+
token: this.client.token,
|
|
583
|
+
properties: {
|
|
584
|
+
os: this.client.properties?.os ?? process.platform,
|
|
585
|
+
browser: this.client.properties?.browser ?? pkg.name,
|
|
586
|
+
device: this.client.properties?.device ?? pkg.name,
|
|
587
|
+
},
|
|
588
|
+
compress: this.client.compress,
|
|
589
|
+
largeThreshold: this.client.largeThreshold,
|
|
590
|
+
shard: [this.id, this.client.shardsCount],
|
|
591
|
+
presence: this.client.presence !== undefined
|
|
592
|
+
? {
|
|
593
|
+
since: this.client.presence.status === constants_1.StatusTypes.Idle
|
|
594
|
+
? Date.now()
|
|
595
|
+
: null,
|
|
596
|
+
activities: this.client.presence.activities?.map((activity) => ({
|
|
597
|
+
name: activity.type === constants_1.ActivityType.Custom
|
|
598
|
+
? "Custom Status"
|
|
599
|
+
: activity.name,
|
|
600
|
+
type: activity.type,
|
|
601
|
+
url: activity.url,
|
|
602
|
+
state: activity.state,
|
|
603
|
+
})),
|
|
604
|
+
status: this.client.presence.status ?? constants_1.StatusTypes.Online,
|
|
605
|
+
afk: !!this.client.presence.afk,
|
|
606
|
+
}
|
|
607
|
+
: undefined,
|
|
608
|
+
intents: this.client.intents,
|
|
609
|
+
});
|
|
610
|
+
}
|
|
589
611
|
}
|
|
590
612
|
onWebSocketMessage(data) {
|
|
591
613
|
const packet = JSON.parse(data.toString());
|
|
@@ -594,10 +616,23 @@ class Shard {
|
|
|
594
616
|
this.onDispatch(packet);
|
|
595
617
|
break;
|
|
596
618
|
case constants_1.GatewayOPCodes.Reconnect:
|
|
597
|
-
|
|
619
|
+
{
|
|
620
|
+
this.client.emit("reconnect");
|
|
621
|
+
this.reconnect();
|
|
622
|
+
}
|
|
598
623
|
break;
|
|
599
624
|
case constants_1.GatewayOPCodes.InvalidSession:
|
|
600
|
-
|
|
625
|
+
{
|
|
626
|
+
this.client.emit("invalidSession");
|
|
627
|
+
if (packet.d) {
|
|
628
|
+
this.reconnect();
|
|
629
|
+
}
|
|
630
|
+
else {
|
|
631
|
+
this.ws.close(1000, "Invalid Session - Identify required");
|
|
632
|
+
this.ws = new ws_1.default("wss://gateway.discord.gg/?v=10&encoding=json", this.client.ws);
|
|
633
|
+
this.connect(false);
|
|
634
|
+
}
|
|
635
|
+
}
|
|
601
636
|
break;
|
|
602
637
|
case constants_1.GatewayOPCodes.Hello:
|
|
603
638
|
{
|
|
@@ -614,20 +649,33 @@ class Shard {
|
|
|
614
649
|
throw err;
|
|
615
650
|
}
|
|
616
651
|
onWebSocketClose(code, reason) {
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
652
|
+
switch (code) {
|
|
653
|
+
case 1000:
|
|
654
|
+
break;
|
|
655
|
+
case constants_1.GatewayCloseEventCodes.UnknownError:
|
|
656
|
+
case constants_1.GatewayCloseEventCodes.UnknownOPCode:
|
|
657
|
+
case constants_1.GatewayCloseEventCodes.DecodeError:
|
|
658
|
+
case constants_1.GatewayCloseEventCodes.NotAuthenticated:
|
|
659
|
+
case constants_1.GatewayCloseEventCodes.AlreadyAuthenticated:
|
|
660
|
+
case constants_1.GatewayCloseEventCodes.InvalidSequence:
|
|
661
|
+
case constants_1.GatewayCloseEventCodes.RateLimited:
|
|
662
|
+
case constants_1.GatewayCloseEventCodes.SessionTimedOut:
|
|
663
|
+
this.reconnect();
|
|
664
|
+
break;
|
|
665
|
+
default:
|
|
666
|
+
throw new utils_1.GatewayError(code, reason.toString());
|
|
667
|
+
}
|
|
620
668
|
}
|
|
621
669
|
/** https://discord.com/developers/docs/topics/gateway-events#request-guild-members */
|
|
622
670
|
requestGuildMembers(options) {
|
|
623
671
|
this.ws.send(JSON.stringify({
|
|
624
672
|
op: constants_1.GatewayOPCodes.RequestGuildMembers,
|
|
625
673
|
d: {
|
|
626
|
-
guild_id: options.
|
|
674
|
+
guild_id: options.guildId,
|
|
627
675
|
query: options.query,
|
|
628
676
|
limit: options.limit,
|
|
629
677
|
presences: options.presences,
|
|
630
|
-
user_ids: options.
|
|
678
|
+
user_ids: options.userIds,
|
|
631
679
|
nonce: options.nonce,
|
|
632
680
|
},
|
|
633
681
|
}));
|
|
@@ -637,7 +685,7 @@ class Shard {
|
|
|
637
685
|
this.ws.send(JSON.stringify({
|
|
638
686
|
op: constants_1.GatewayOPCodes.RequestSoundboardSounds,
|
|
639
687
|
d: {
|
|
640
|
-
guild_ids: options.
|
|
688
|
+
guild_ids: options.guildIds,
|
|
641
689
|
},
|
|
642
690
|
}));
|
|
643
691
|
}
|
|
@@ -647,7 +695,7 @@ class Shard {
|
|
|
647
695
|
op: constants_1.GatewayOPCodes.Resume,
|
|
648
696
|
d: {
|
|
649
697
|
token: options.token,
|
|
650
|
-
session_id: options.
|
|
698
|
+
session_id: options.sessionId,
|
|
651
699
|
seq: options.seq,
|
|
652
700
|
},
|
|
653
701
|
}));
|
|
@@ -676,8 +724,8 @@ class Shard {
|
|
|
676
724
|
this.ws.send(JSON.stringify({
|
|
677
725
|
op: constants_1.GatewayOPCodes.VoiceStateUpdate,
|
|
678
726
|
d: {
|
|
679
|
-
guild_id: options.
|
|
680
|
-
channel_id: options.
|
|
727
|
+
guild_id: options.guildId,
|
|
728
|
+
channel_id: options.channelId,
|
|
681
729
|
self_mute: options.selfMute,
|
|
682
730
|
self_deaf: options.selfDeaf,
|
|
683
731
|
},
|
package/dist/lib/index.d.ts
CHANGED
|
@@ -17,11 +17,15 @@ export * from "./types/guild-template";
|
|
|
17
17
|
export * from "./types/guild";
|
|
18
18
|
export * from "./types/interaction";
|
|
19
19
|
export * from "./types/invite";
|
|
20
|
+
export * from "./types/lobby";
|
|
21
|
+
export * from "./types/message";
|
|
20
22
|
export * from "./types/poll";
|
|
21
23
|
export * from "./types/role";
|
|
22
24
|
export * from "./types/sku";
|
|
25
|
+
export * from "./types/soundboard";
|
|
23
26
|
export * from "./types/stage-instance";
|
|
24
27
|
export * from "./types/sticker";
|
|
28
|
+
export * from "./types/subscription";
|
|
25
29
|
export * from "./types/team";
|
|
26
30
|
export * from "./types/user";
|
|
27
31
|
export * from "./types/voice";
|
package/dist/lib/index.js
CHANGED
|
@@ -33,11 +33,15 @@ __exportStar(require("./types/guild-template"), exports);
|
|
|
33
33
|
__exportStar(require("./types/guild"), exports);
|
|
34
34
|
__exportStar(require("./types/interaction"), exports);
|
|
35
35
|
__exportStar(require("./types/invite"), exports);
|
|
36
|
+
__exportStar(require("./types/lobby"), exports);
|
|
37
|
+
__exportStar(require("./types/message"), exports);
|
|
36
38
|
__exportStar(require("./types/poll"), exports);
|
|
37
39
|
__exportStar(require("./types/role"), exports);
|
|
38
40
|
__exportStar(require("./types/sku"), exports);
|
|
41
|
+
__exportStar(require("./types/soundboard"), exports);
|
|
39
42
|
__exportStar(require("./types/stage-instance"), exports);
|
|
40
43
|
__exportStar(require("./types/sticker"), exports);
|
|
44
|
+
__exportStar(require("./types/subscription"), exports);
|
|
41
45
|
__exportStar(require("./types/team"), exports);
|
|
42
46
|
__exportStar(require("./types/user"), exports);
|
|
43
47
|
__exportStar(require("./types/voice"), exports);
|