refactor: use cache.get() for snowflakes, resolve() otherwise

#10626 djs
This commit is contained in:
Elysia
2025-01-21 02:09:03 +07:00
parent b76e8124c6
commit 62d2630643
15 changed files with 31 additions and 31 deletions

View File

@@ -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 {

View File

@@ -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);
}

View File

@@ -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;
}

View File

@@ -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,

View File

@@ -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)

View File

@@ -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;
}
}

View File

@@ -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;
}

View File

@@ -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;
}
/**

View File

@@ -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) {

View File

@@ -273,7 +273,7 @@ class Message extends Base {
* @type {Collection<Snowflake, Message>}
*/
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;
}
/**

View File

@@ -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;

View File

@@ -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);
}
/**

View File

@@ -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;
}
/**

View File

@@ -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;
}

View File

@@ -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);
}
}