From 62d263064359641c9d04e97a3bffd70b516b03ce Mon Sep 17 00:00:00 2001 From: Elysia <71698422+aiko-chan-ai@users.noreply.github.com> Date: Tue, 21 Jan 2025 02:09:03 +0700 Subject: [PATCH] refactor: use cache.get() for snowflakes, resolve() otherwise #10626 djs --- src/client/actions/ThreadListSync.js | 2 +- src/managers/BaseGuildEmojiManager.js | 2 +- src/managers/GuildBanManager.js | 2 +- src/managers/GuildChannelManager.js | 10 +++++----- src/managers/GuildMemberManager.js | 4 ++-- src/managers/PresenceManager.js | 8 ++++---- src/managers/ThreadMemberManager.js | 6 +++--- src/structures/GuildMember.js | 2 +- src/structures/Invite.js | 2 +- src/structures/Message.js | 8 ++++---- src/structures/PermissionOverwrites.js | 2 +- src/structures/PollAnswer.js | 2 +- src/structures/ThreadMember.js | 4 ++-- src/structures/Webhook.js | 4 ++-- src/structures/WelcomeChannel.js | 4 ++-- 15 files changed, 31 insertions(+), 31 deletions(-) diff --git a/src/client/actions/ThreadListSync.js b/src/client/actions/ThreadListSync.js index 416546e..78d4fb4 100644 --- a/src/client/actions/ThreadListSync.js +++ b/src/client/actions/ThreadListSync.js @@ -13,7 +13,7 @@ class ThreadListSyncAction extends Action { if (data.channel_ids) { for (const id of data.channel_ids) { - const channel = client.channels.resolve(id); + const channel = client.channels.cache.get(id); if (channel) this.removeStale(channel); } } else { diff --git a/src/managers/BaseGuildEmojiManager.js b/src/managers/BaseGuildEmojiManager.js index 89eee4c..e368ed4 100644 --- a/src/managers/BaseGuildEmojiManager.js +++ b/src/managers/BaseGuildEmojiManager.js @@ -34,7 +34,7 @@ class BaseGuildEmojiManager extends CachedManager { * @returns {?GuildEmoji} */ resolve(emoji) { - if (emoji instanceof ReactionEmoji) return super.resolve(emoji.id); + if (emoji instanceof ReactionEmoji) return super.cache.get(emoji.id) ?? null; return super.resolve(emoji); } diff --git a/src/managers/GuildBanManager.js b/src/managers/GuildBanManager.js index 9d3fd7c..d33f6b5 100644 --- a/src/managers/GuildBanManager.js +++ b/src/managers/GuildBanManager.js @@ -175,7 +175,7 @@ class GuildBanManager extends CachedManager { reason: options.reason, }); if (user instanceof GuildMember) return user; - const _user = this.client.users.resolve(id); + const _user = this.client.users.cache.get(id); if (_user) { return this.guild.members.resolve(_user) ?? _user; } diff --git a/src/managers/GuildChannelManager.js b/src/managers/GuildChannelManager.js index 88ce7ac..58a1e56 100644 --- a/src/managers/GuildChannelManager.js +++ b/src/managers/GuildChannelManager.js @@ -89,7 +89,7 @@ class GuildChannelManager extends CachedManager { * @returns {?(GuildChannel|ThreadChannel)} */ resolve(channel) { - if (channel instanceof ThreadChannel) return super.resolve(channel.id); + if (channel instanceof ThreadChannel) return super.cache.get(channel.id) ?? null; return super.resolve(channel); } @@ -290,15 +290,15 @@ class GuildChannelManager extends CachedManager { channel = this.resolve(channel); if (!channel) throw new TypeError('INVALID_TYPE', 'channel', 'GuildChannelResolvable'); - const parent = data.parent && this.client.channels.resolveId(data.parent); + const parentId = data.parent && this.client.channels.resolveId(data.parent); if (typeof data.position !== 'undefined') await this.setPosition(channel, data.position, { reason }); let permission_overwrites = data.permissionOverwrites?.map(o => PermissionOverwrites.resolve(o, this.guild)); if (data.lockPermissions) { - if (parent) { - const newParent = this.guild.channels.resolve(parent); + if (parentId) { + const newParent = this.guild.channels.cache.get(parentId); if (newParent?.type === 'GUILD_CATEGORY') { permission_overwrites = newParent.permissionOverwrites.cache.map(o => PermissionOverwrites.resolve(o, this.guild), @@ -325,7 +325,7 @@ class GuildChannelManager extends CachedManager { rtc_region: 'rtcRegion' in data ? data.rtcRegion : channel.rtcRegion, video_quality_mode: typeof data.videoQualityMode === 'string' ? VideoQualityModes[data.videoQualityMode] : data.videoQualityMode, - parent_id: parent, + parent_id: parentId, lock_permissions: data.lockPermissions, rate_limit_per_user: data.rateLimitPerUser, default_auto_archive_duration: defaultAutoArchiveDuration, diff --git a/src/managers/GuildMemberManager.js b/src/managers/GuildMemberManager.js index 1d517b4..e643ed7 100644 --- a/src/managers/GuildMemberManager.js +++ b/src/managers/GuildMemberManager.js @@ -56,7 +56,7 @@ class GuildMemberManager extends CachedManager { const memberResolvable = super.resolve(member); if (memberResolvable) return memberResolvable; const userResolvable = this.client.users.resolveId(member); - if (userResolvable) return super.resolve(userResolvable); + if (userResolvable) return super.cache.get(userResolvable) ?? null; return null; } @@ -129,7 +129,7 @@ class GuildMemberManager extends CachedManager { */ get me() { return ( - this.resolve(this.client.user.id) ?? + this.cache.get(this.client.user.id) ?? (this.client.options.partials.includes(PartialTypes.GUILD_MEMBER) ? this._add({ user: { id: this.client.user.id } }, true) : null) diff --git a/src/managers/PresenceManager.js b/src/managers/PresenceManager.js index 2d64834..2ea0667 100644 --- a/src/managers/PresenceManager.js +++ b/src/managers/PresenceManager.js @@ -38,8 +38,8 @@ class PresenceManager extends CachedManager { resolve(presence) { const presenceResolvable = super.resolve(presence); if (presenceResolvable) return presenceResolvable; - const UserResolvable = this.client.users.resolveId(presence); - return super.resolve(UserResolvable); + const userId = this.client.users.resolveId(presence); + return super.cache.get(userId) ?? null; } /** @@ -50,8 +50,8 @@ class PresenceManager extends CachedManager { resolveId(presence) { const presenceResolvable = super.resolveId(presence); if (presenceResolvable) return presenceResolvable; - const userResolvable = this.client.users.resolveId(presence); - return this.cache.has(userResolvable) ? userResolvable : null; + const userId = this.client.users.resolveId(presence); + return this.cache.has(userId) ? userId : null; } } diff --git a/src/managers/ThreadMemberManager.js b/src/managers/ThreadMemberManager.js index b6d3809..cafa913 100644 --- a/src/managers/ThreadMemberManager.js +++ b/src/managers/ThreadMemberManager.js @@ -54,7 +54,7 @@ class ThreadMemberManager extends CachedManager { * @readonly */ get me() { - return this.resolve(this.client.user.id); + return this.cache.get(this.client.user.id) ?? null; } /** @@ -72,8 +72,8 @@ class ThreadMemberManager extends CachedManager { resolve(member) { const memberResolvable = super.resolve(member); if (memberResolvable) return memberResolvable; - const userResolvable = this.client.users.resolveId(member); - if (userResolvable) return super.resolve(userResolvable); + const userId = this.client.users.resolveId(member); + if (userId) return super.cache.get(userId) ?? null; return null; } diff --git a/src/structures/GuildMember.js b/src/structures/GuildMember.js index 03dea96..92ae5c8 100644 --- a/src/structures/GuildMember.js +++ b/src/structures/GuildMember.js @@ -259,7 +259,7 @@ class GuildMember extends Base { * @readonly */ get presence() { - return this.guild.presences.resolve(this.id); + return this.guild.presences.cache.get(this.id) ?? null; } /** diff --git a/src/structures/Invite.js b/src/structures/Invite.js index f42ff05..8d8024a 100644 --- a/src/structures/Invite.js +++ b/src/structures/Invite.js @@ -29,7 +29,7 @@ class Invite extends Base { */ this.guild ??= null; if (data.guild) { - this.guild = this.client.guilds.resolve(data.guild.id) ?? new InviteGuild(this.client, data.guild); + this.guild = this.client.guilds.cache.get(data.guild.id) ?? new InviteGuild(this.client, data.guild); } if ('code' in data) { diff --git a/src/structures/Message.js b/src/structures/Message.js index 6791c76..701f337 100644 --- a/src/structures/Message.js +++ b/src/structures/Message.js @@ -273,7 +273,7 @@ class Message extends Base { * @type {Collection} */ this.messageSnapshots = data.message_snapshots.reduce((coll, snapshot) => { - const channel = this.client.channels.resolve(this.reference.channelId); + const channel = this.client.channels.cache.get(this.reference.channelId); const snapshotData = { ...snapshot.message, id: this.reference.messageId, @@ -464,7 +464,7 @@ class Message extends Base { * @readonly */ get channel() { - return this.client.channels.resolve(this.channelId); + return this.client.channels.cache.get(this.channelId) ?? null; } /** @@ -510,7 +510,7 @@ class Message extends Base { * @readonly */ get guild() { - return this.client.guilds.resolve(this.guildId) ?? this.channel?.guild ?? null; + return this.client.guilds.cache.get(this.guildId) ?? this.channel?.guild ?? null; } /** @@ -530,7 +530,7 @@ class Message extends Base { * @readonly */ get thread() { - return this.channel?.threads?.resolve(this.id) ?? null; + return this.channel?.threads?.cache.get(this.id) ?? null; } /** diff --git a/src/structures/PermissionOverwrites.js b/src/structures/PermissionOverwrites.js index 017bf26..0cbe4a2 100644 --- a/src/structures/PermissionOverwrites.js +++ b/src/structures/PermissionOverwrites.js @@ -180,7 +180,7 @@ class PermissionOverwrites extends Base { }; } - const userOrRole = guild.roles.resolve(overwrite.id) ?? guild.client.users.resolve(overwrite.id); + const userOrRole = guild.roles.cache.get(overwrite.id) ?? guild.client.users.cache.get(overwrite.id); if (!userOrRole) throw new TypeError('INVALID_TYPE', 'parameter', 'User nor a Role'); const type = userOrRole instanceof Role ? OverwriteTypes.role : OverwriteTypes.member; diff --git a/src/structures/PollAnswer.js b/src/structures/PollAnswer.js index a0927f0..0ed43b5 100644 --- a/src/structures/PollAnswer.js +++ b/src/structures/PollAnswer.js @@ -61,7 +61,7 @@ class PollAnswer extends Base { */ get emoji() { if (!this._emoji || (!this._emoji.id && !this._emoji.name)) return null; - return this.client.emojis.resolve(this._emoji.id) ?? new Emoji(this.client, this._emoji); + return this.client.emojis.cache.get(this._emoji.id) ?? new Emoji(this.client, this._emoji); } /** diff --git a/src/structures/ThreadMember.js b/src/structures/ThreadMember.js index abd8362..8e3beef 100644 --- a/src/structures/ThreadMember.js +++ b/src/structures/ThreadMember.js @@ -61,7 +61,7 @@ class ThreadMember extends Base { * @readonly */ get guildMember() { - return this.member ?? this.thread.guild.members.resolve(this.id); + return this.member ?? this.thread.guild.members.cache.get(this.id) ?? null; } /** @@ -79,7 +79,7 @@ class ThreadMember extends Base { * @readonly */ get user() { - return this.client.users.resolve(this.id); + return this.client.users.cache.get(this.id) ?? null; } /** diff --git a/src/structures/Webhook.js b/src/structures/Webhook.js index c6da3c3..aa3f5c9 100644 --- a/src/structures/Webhook.js +++ b/src/structures/Webhook.js @@ -93,7 +93,7 @@ class Webhook { * The source guild of the webhook * @type {?(Guild|APIGuild)} */ - this.sourceGuild = this.client.guilds?.resolve(data.source_guild.id) ?? data.source_guild; + this.sourceGuild = this.client.guilds?.cache.get(data.source_guild.id) ?? data.source_guild; } else { this.sourceGuild ??= null; } @@ -103,7 +103,7 @@ class Webhook { * The source channel of the webhook * @type {?(NewsChannel|APIChannel)} */ - this.sourceChannel = this.client.channels?.resolve(data.source_channel?.id) ?? data.source_channel; + this.sourceChannel = this.client.channels?.cache.get(data.source_channel?.id) ?? data.source_channel; } else { this.sourceChannel ??= null; } diff --git a/src/structures/WelcomeChannel.js b/src/structures/WelcomeChannel.js index bf0866e..59aa176 100644 --- a/src/structures/WelcomeChannel.js +++ b/src/structures/WelcomeChannel.js @@ -45,7 +45,7 @@ class WelcomeChannel extends Base { * @type {?(TextChannel|NewsChannel|StoreChannel|ForumChannel|MediaChannel)} */ get channel() { - return this.client.channels.resolve(this.channelId); + return this.client.channels.cache.get(this.channelId) ?? null; } /** @@ -53,7 +53,7 @@ class WelcomeChannel extends Base { * @type {GuildEmoji|Emoji} */ get emoji() { - return this.client.emojis.resolve(this._emoji.id) ?? new Emoji(this.client, this._emoji); + return this.client.emojis.cache.get(this._emoji.id) ?? new Emoji(this.client, this._emoji); } }