From 9564e586bf96b942214bbc3cefe30d52e5961803 Mon Sep 17 00:00:00 2001 From: Skillz Date: Wed, 4 Dec 2019 13:02:43 -0500 Subject: [PATCH 1/5] fix voice channel leave docs/typings --- index.d.ts | 2 +- lib/gateway/Shard.js | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/index.d.ts b/index.d.ts index 10920e589..f9036e196 100644 --- a/index.d.ts +++ b/index.d.ts @@ -724,7 +724,7 @@ declare namespace Eris { listener: (user: User, oldUser: { username: string; discriminator: string; avatar?: string }) => void ): T; (event: "voiceChannelJoin", listener: (member: Member, newChannel: VoiceChannel) => void): T; - (event: "voiceChannelLeave", listener: (member: Member, oldChannel: VoiceChannel) => void): T; + (event: "voiceChannelLeave", listener: (member: Member | null, oldChannel: VoiceChannel) => void): T; ( event: "voiceChannelSwitch", listener: (member: Member, newChannel: VoiceChannel, oldChannel: VoiceChannel) => void diff --git a/lib/gateway/Shard.js b/lib/gateway/Shard.js index 9646ebce2..c084a0902 100644 --- a/lib/gateway/Shard.js +++ b/lib/gateway/Shard.js @@ -380,7 +380,7 @@ class Shard extends EventEmitter { * Fired when a guild member joins a voice channel. This event is not fired when a member switches voice channels, see `voiceChannelSwitch` * @event Client#voiceChannelJoin * @prop {Member} member The member - * @prop {CategoryChannel | TextChannel | VoiceChannel} newChannel The voice channel + * @prop {VoiceChannel} newChannel The voice channel */ this.emit("voiceChannelJoin", newChannel.voiceMembers.add(member, guild), newChannel); } @@ -388,8 +388,8 @@ class Shard extends EventEmitter { /** * Fired when a guild member leaves a voice channel. This event is not fired when a member switches voice channels, see `voiceChannelSwitch` * @event Client#voiceChannelLeave - * @prop {Member} member The member - * @prop {CategoryChannel | TextChannel | VoiceChannel} oldChannel The voice channel + * @prop {?Member} member The member + * @prop {VoiceChannel} oldChannel The voice channel */ this.emit("voiceChannelLeave", oldChannel.voiceMembers.remove(member), oldChannel); } From 5a56c82b06540c3a003f0816d3c07d7a6818a78e Mon Sep 17 00:00:00 2001 From: Skillz Date: Wed, 4 Dec 2019 19:52:26 -0500 Subject: [PATCH 2/5] find can be undefined if nothing is found --- index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.d.ts b/index.d.ts index f9036e196..90eaf47a2 100644 --- a/index.d.ts +++ b/index.d.ts @@ -1125,7 +1125,7 @@ declare namespace Eris { limit?: number; constructor(baseObject: new (...args: any[]) => T, limit?: number); add(obj: T, extra?: any, replace?: boolean): T; - find(func: (i: T) => boolean): T; + find(func: (i: T) => boolean): T | undefined; random(): T; filter(func: (i: T) => boolean): T[]; map(func: (i: T) => R): R[]; From 74930256113a19089d4d05fea8e1f35439fb4269 Mon Sep 17 00:00:00 2001 From: Skillz Date: Wed, 4 Dec 2019 19:52:59 -0500 Subject: [PATCH 3/5] voice only on jsdocs --- lib/gateway/Shard.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/gateway/Shard.js b/lib/gateway/Shard.js index c084a0902..00bba7af3 100644 --- a/lib/gateway/Shard.js +++ b/lib/gateway/Shard.js @@ -370,8 +370,8 @@ class Shard extends EventEmitter { * Fired when a guild member switches voice channels * @event Client#voiceChannelSwitch * @prop {Member} member The member - * @prop {CategoryChannel | TextChannel | VoiceChannel} newChannel The new voice channel - * @prop {CategoryChannel | TextChannel | VoiceChannel} oldChannel The old voice channel + * @prop {VoiceChannel} newChannel The new voice channel + * @prop {VoiceChannel} oldChannel The old voice channel */ oldChannel.voiceMembers.remove(member); this.emit("voiceChannelSwitch", newChannel.voiceMembers.add(member, guild), newChannel, oldChannel); From 9578e918fd0229ebfb4a3bb7540ae769ff934344 Mon Sep 17 00:00:00 2001 From: Skillz Date: Wed, 4 Dec 2019 21:01:27 -0500 Subject: [PATCH 4/5] pass member always --- index.d.ts | 2 +- lib/gateway/Shard.js | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/index.d.ts b/index.d.ts index 90eaf47a2..0a6c83d9c 100644 --- a/index.d.ts +++ b/index.d.ts @@ -724,7 +724,7 @@ declare namespace Eris { listener: (user: User, oldUser: { username: string; discriminator: string; avatar?: string }) => void ): T; (event: "voiceChannelJoin", listener: (member: Member, newChannel: VoiceChannel) => void): T; - (event: "voiceChannelLeave", listener: (member: Member | null, oldChannel: VoiceChannel) => void): T; + (event: "voiceChannelLeave", listener: (member: Member, oldChannel: VoiceChannel) => void): T; ( event: "voiceChannelSwitch", listener: (member: Member, newChannel: VoiceChannel, oldChannel: VoiceChannel) => void diff --git a/lib/gateway/Shard.js b/lib/gateway/Shard.js index 00bba7af3..7a824cb9d 100644 --- a/lib/gateway/Shard.js +++ b/lib/gateway/Shard.js @@ -385,13 +385,14 @@ class Shard extends EventEmitter { this.emit("voiceChannelJoin", newChannel.voiceMembers.add(member, guild), newChannel); } } else if(oldChannel) { + oldChannel.voiceMembers.remove(member) /** * Fired when a guild member leaves a voice channel. This event is not fired when a member switches voice channels, see `voiceChannelSwitch` * @event Client#voiceChannelLeave * @prop {?Member} member The member * @prop {VoiceChannel} oldChannel The voice channel */ - this.emit("voiceChannelLeave", oldChannel.voiceMembers.remove(member), oldChannel); + this.emit("voiceChannelLeave", member, oldChannel); } } if(oldState.mute !== member.mute || oldState.deaf !== member.deaf || oldState.selfMute !== member.selfMute || oldState.selfDeaf !== member.selfDeaf || oldState.selfStream !== member.selfStream) { From d7bb9166723007f7bb8c6344baadfca33177d928 Mon Sep 17 00:00:00 2001 From: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com> Date: Thu, 5 Dec 2019 22:10:46 -0500 Subject: [PATCH 5/5] Add semicolon; eww --- lib/gateway/Shard.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/gateway/Shard.js b/lib/gateway/Shard.js index 7a824cb9d..466ead18e 100644 --- a/lib/gateway/Shard.js +++ b/lib/gateway/Shard.js @@ -385,7 +385,7 @@ class Shard extends EventEmitter { this.emit("voiceChannelJoin", newChannel.voiceMembers.add(member, guild), newChannel); } } else if(oldChannel) { - oldChannel.voiceMembers.remove(member) + oldChannel.voiceMembers.remove(member); /** * Fired when a guild member leaves a voice channel. This event is not fired when a member switches voice channels, see `voiceChannelSwitch` * @event Client#voiceChannelLeave