From 8625d817145eb642aeb0da05184352f438586986 Mon Sep 17 00:00:00 2001 From: Jiralite <33201955+Jiralite@users.noreply.github.com> Date: Tue, 12 Apr 2022 16:14:04 +0100 Subject: [PATCH] fix: Prevent `NaN` for nullable timestamps (#7750) * fix(VoiceState): don't show `NaN` * fix(Invite): handle NaN * refactor: `&&` usage Co-authored-by: Almeida Co-authored-by: Almeida --- packages/discord.js/src/structures/Invite.js | 7 +++++-- packages/discord.js/src/structures/VoiceState.js | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/discord.js/src/structures/Invite.js b/packages/discord.js/src/structures/Invite.js index cf0f8de0d..243a243e5 100644 --- a/packages/discord.js/src/structures/Invite.js +++ b/packages/discord.js/src/structures/Invite.js @@ -188,8 +188,11 @@ class Invite extends Base { this.createdTimestamp ??= null; } - if ('expires_at' in data) this._expiresTimestamp = Date.parse(data.expires_at); - else this._expiresTimestamp ??= null; + if ('expires_at' in data) { + this._expiresTimestamp = data.expires_at && Date.parse(data.expires_at); + } else { + this._expiresTimestamp ??= null; + } if ('stage_instance' in data) { /** diff --git a/packages/discord.js/src/structures/VoiceState.js b/packages/discord.js/src/structures/VoiceState.js index 75411fdaa..0e4862e61 100644 --- a/packages/discord.js/src/structures/VoiceState.js +++ b/packages/discord.js/src/structures/VoiceState.js @@ -121,7 +121,7 @@ class VoiceState extends Base { * The time at which the member requested to speak. This property is specific to stage channels only. * @type {?number} */ - this.requestToSpeakTimestamp = Date.parse(data.request_to_speak_timestamp); + this.requestToSpeakTimestamp = data.request_to_speak_timestamp && Date.parse(data.request_to_speak_timestamp); } else { this.requestToSpeakTimestamp ??= null; }