mirror of
https://github.com/tiramisulabs/seyfert.git
synced 2025-07-02 21:16:09 +00:00
feat: cache raw methods
This commit is contained in:
parent
eb1a999c45
commit
9e0586986d
24
src/cache/resources/bans.ts
vendored
24
src/cache/resources/bans.ts
vendored
@ -22,6 +22,10 @@ export class Bans extends GuildBasedResource<any, GatewayGuildBanModifyDispatchD
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
raw(id: string, guild: string): ReturnCache<Omit<GatewayGuildBanModifyDispatchData | APIBan, 'user'> | undefined> {
|
||||||
|
return super.get(id, guild);
|
||||||
|
}
|
||||||
|
|
||||||
override bulk(ids: string[], guild: string): ReturnCache<GuildBanStructure[]> {
|
override bulk(ids: string[], guild: string): ReturnCache<GuildBanStructure[]> {
|
||||||
return fakePromise(super.bulk(ids, guild)).then(
|
return fakePromise(super.bulk(ids, guild)).then(
|
||||||
bans =>
|
bans =>
|
||||||
@ -33,6 +37,16 @@ export class Bans extends GuildBasedResource<any, GatewayGuildBanModifyDispatchD
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bulkRaw(ids: string[], guild: string): ReturnCache<Omit<GatewayGuildBanModifyDispatchData | APIBan, 'user'>[]> {
|
||||||
|
return fakePromise(super.bulk(ids, guild)).then(bans =>
|
||||||
|
bans
|
||||||
|
.map(rawBan => {
|
||||||
|
return rawBan;
|
||||||
|
})
|
||||||
|
.filter(Boolean),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
override values(guild: string): ReturnCache<GuildBanStructure[]> {
|
override values(guild: string): ReturnCache<GuildBanStructure[]> {
|
||||||
return fakePromise(super.values(guild)).then(
|
return fakePromise(super.values(guild)).then(
|
||||||
bans =>
|
bans =>
|
||||||
@ -43,4 +57,14 @@ export class Bans extends GuildBasedResource<any, GatewayGuildBanModifyDispatchD
|
|||||||
.filter(Boolean) as GuildBanStructure[],
|
.filter(Boolean) as GuildBanStructure[],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
valuesRaw(guild: string): ReturnCache<Omit<GatewayGuildBanModifyDispatchData | APIBan, 'user'>[]> {
|
||||||
|
return fakePromise(super.values(guild)).then(bans =>
|
||||||
|
bans
|
||||||
|
.map(rawBan => {
|
||||||
|
return rawBan;
|
||||||
|
})
|
||||||
|
.filter(Boolean),
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
16
src/cache/resources/channels.ts
vendored
16
src/cache/resources/channels.ts
vendored
@ -13,25 +13,33 @@ export class Channels extends GuildRelatedResource<any, APIChannel> {
|
|||||||
return rest;
|
return rest;
|
||||||
}
|
}
|
||||||
|
|
||||||
raw(id: string): ReturnCache<APIChannel | undefined> {
|
|
||||||
return super.get(id);
|
|
||||||
}
|
|
||||||
|
|
||||||
override get(id: string): ReturnCache<AllChannels | undefined> {
|
override get(id: string): ReturnCache<AllChannels | undefined> {
|
||||||
return fakePromise(super.get(id)).then(rawChannel =>
|
return fakePromise(super.get(id)).then(rawChannel =>
|
||||||
rawChannel ? channelFrom(rawChannel, this.client) : undefined,
|
rawChannel ? channelFrom(rawChannel, this.client) : undefined,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
raw(id: string): ReturnCache<Omit<APIChannel, 'permission_overwrites'> | undefined> {
|
||||||
|
return super.get(id);
|
||||||
|
}
|
||||||
|
|
||||||
override bulk(ids: string[]): ReturnCache<ReturnType<typeof channelFrom>[]> {
|
override bulk(ids: string[]): ReturnCache<ReturnType<typeof channelFrom>[]> {
|
||||||
return fakePromise(super.bulk(ids)).then(channels =>
|
return fakePromise(super.bulk(ids)).then(channels =>
|
||||||
channels.map(rawChannel => channelFrom(rawChannel, this.client)),
|
channels.map(rawChannel => channelFrom(rawChannel, this.client)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bulkRaw(ids: string[]): ReturnCache<Omit<APIChannel, 'permission_overwrites'>[]> {
|
||||||
|
return fakePromise(super.bulk(ids)).then(channels => channels.map(rawChannel => rawChannel));
|
||||||
|
}
|
||||||
|
|
||||||
override values(guild: string): ReturnCache<ReturnType<typeof channelFrom>[]> {
|
override values(guild: string): ReturnCache<ReturnType<typeof channelFrom>[]> {
|
||||||
return fakePromise(super.values(guild)).then(channels =>
|
return fakePromise(super.values(guild)).then(channels =>
|
||||||
channels.map(rawChannel => channelFrom(rawChannel, this.client)),
|
channels.map(rawChannel => channelFrom(rawChannel, this.client)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
valuesRaw(guild: string): ReturnCache<Omit<APIChannel, 'permission_overwrites'>[]> {
|
||||||
|
return fakePromise(super.values(guild)).then(channels => channels.map(rawChannel => rawChannel));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
12
src/cache/resources/emojis.ts
vendored
12
src/cache/resources/emojis.ts
vendored
@ -18,15 +18,27 @@ export class Emojis extends GuildRelatedResource<any, APIEmoji> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
raw(id: string): ReturnCache<APIEmoji | undefined> {
|
||||||
|
return super.get(id);
|
||||||
|
}
|
||||||
|
|
||||||
override bulk(ids: string[]): ReturnCache<GuildEmojiStructure[]> {
|
override bulk(ids: string[]): ReturnCache<GuildEmojiStructure[]> {
|
||||||
return fakePromise(super.bulk(ids) as (APIEmoji & { id: string; guild_id: string })[]).then(emojis =>
|
return fakePromise(super.bulk(ids) as (APIEmoji & { id: string; guild_id: string })[]).then(emojis =>
|
||||||
emojis.map(rawEmoji => Transformers.GuildEmoji(this.client, rawEmoji, rawEmoji.guild_id)),
|
emojis.map(rawEmoji => Transformers.GuildEmoji(this.client, rawEmoji, rawEmoji.guild_id)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bulkRaw(ids: string[]): ReturnCache<(APIEmoji & { id: string; guild_id: string })[]> {
|
||||||
|
return super.bulk(ids);
|
||||||
|
}
|
||||||
|
|
||||||
override values(guild: string): ReturnCache<GuildEmojiStructure[]> {
|
override values(guild: string): ReturnCache<GuildEmojiStructure[]> {
|
||||||
return fakePromise(super.values(guild) as (APIEmoji & { id: string; guild_id: string })[]).then(emojis =>
|
return fakePromise(super.values(guild) as (APIEmoji & { id: string; guild_id: string })[]).then(emojis =>
|
||||||
emojis.map(rawEmoji => Transformers.GuildEmoji(this.client, rawEmoji, rawEmoji.guild_id)),
|
emojis.map(rawEmoji => Transformers.GuildEmoji(this.client, rawEmoji, rawEmoji.guild_id)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
valuesRaw(guild: string): ReturnCache<(APIEmoji & { id: string; guild_id: string })[]> {
|
||||||
|
return super.values(guild);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
16
src/cache/resources/guilds.ts
vendored
16
src/cache/resources/guilds.ts
vendored
@ -12,28 +12,36 @@ export class Guilds extends BaseResource<any, APIGuild | GatewayGuildCreateDispa
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
raw(id: string): ReturnCache<APIGuild | undefined> {
|
|
||||||
return super.get(id);
|
|
||||||
}
|
|
||||||
|
|
||||||
override get(id: string): ReturnCache<GuildStructure<'cached'> | undefined> {
|
override get(id: string): ReturnCache<GuildStructure<'cached'> | undefined> {
|
||||||
return fakePromise(super.get(id)).then(guild =>
|
return fakePromise(super.get(id)).then(guild =>
|
||||||
guild ? Transformers.Guild<'cached'>(this.client, guild) : undefined,
|
guild ? Transformers.Guild<'cached'>(this.client, guild) : undefined,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
raw(id: string): ReturnCache<APIGuild | undefined> {
|
||||||
|
return super.get(id);
|
||||||
|
}
|
||||||
|
|
||||||
override bulk(ids: string[]): ReturnCache<GuildStructure<'cached'>[]> {
|
override bulk(ids: string[]): ReturnCache<GuildStructure<'cached'>[]> {
|
||||||
return fakePromise(super.bulk(ids) as APIGuild[]).then(guilds =>
|
return fakePromise(super.bulk(ids) as APIGuild[]).then(guilds =>
|
||||||
guilds.map(x => Transformers.Guild<'cached'>(this.client, x)),
|
guilds.map(x => Transformers.Guild<'cached'>(this.client, x)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bulkRaw(ids: string[]): ReturnCache<APIGuild[]> {
|
||||||
|
return super.bulk(ids);
|
||||||
|
}
|
||||||
|
|
||||||
override values(): ReturnCache<GuildStructure<'cached'>[]> {
|
override values(): ReturnCache<GuildStructure<'cached'>[]> {
|
||||||
return fakePromise(super.values() as APIGuild[]).then(guilds =>
|
return fakePromise(super.values() as APIGuild[]).then(guilds =>
|
||||||
guilds.map(x => Transformers.Guild<'cached'>(this.client, x)),
|
guilds.map(x => Transformers.Guild<'cached'>(this.client, x)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
valuesRaw(): ReturnCache<APIGuild[]> {
|
||||||
|
return super.values();
|
||||||
|
}
|
||||||
|
|
||||||
override async remove(id: string) {
|
override async remove(id: string) {
|
||||||
const keysChannels = this.cache.channels?.keys(id) ?? [];
|
const keysChannels = this.cache.channels?.keys(id) ?? [];
|
||||||
await this.cache.adapter.bulkRemove(
|
await this.cache.adapter.bulkRemove(
|
||||||
|
24
src/cache/resources/members.ts
vendored
24
src/cache/resources/members.ts
vendored
@ -16,6 +16,14 @@ export class Members extends GuildBasedResource<any, APIGuildMember> {
|
|||||||
return rest;
|
return rest;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override get(id: string, guild: string): ReturnCache<GuildMemberStructure | undefined> {
|
||||||
|
return fakePromise(super.get(id, guild)).then(rawMember =>
|
||||||
|
fakePromise(this.client.cache.users?.raw(id)).then(user =>
|
||||||
|
rawMember && user ? Transformers.GuildMember(this.client, rawMember, user, guild) : undefined,
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
raw(id: string, guild: string): ReturnCache<APIGuildMember | undefined> {
|
raw(id: string, guild: string): ReturnCache<APIGuildMember | undefined> {
|
||||||
return fakePromise(super.get(id, guild) as Omit<APIGuildMember, 'user'>).then(rawMember => {
|
return fakePromise(super.get(id, guild) as Omit<APIGuildMember, 'user'>).then(rawMember => {
|
||||||
return fakePromise(this.client.cache.users?.raw(id)).then(user =>
|
return fakePromise(this.client.cache.users?.raw(id)).then(user =>
|
||||||
@ -29,14 +37,6 @@ export class Members extends GuildBasedResource<any, APIGuildMember> {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
override get(id: string, guild: string): ReturnCache<GuildMemberStructure | undefined> {
|
|
||||||
return fakePromise(super.get(id, guild)).then(rawMember =>
|
|
||||||
fakePromise(this.client.cache.users?.raw(id)).then(user =>
|
|
||||||
rawMember && user ? Transformers.GuildMember(this.client, rawMember, user, guild) : undefined,
|
|
||||||
),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
override bulk(ids: string[], guild: string): ReturnCache<GuildMemberStructure[]> {
|
override bulk(ids: string[], guild: string): ReturnCache<GuildMemberStructure[]> {
|
||||||
return fakePromise(super.bulk(ids, guild)).then(members =>
|
return fakePromise(super.bulk(ids, guild)).then(members =>
|
||||||
fakePromise(this.client.cache.users?.bulkRaw(ids)).then(
|
fakePromise(this.client.cache.users?.bulkRaw(ids)).then(
|
||||||
@ -51,6 +51,10 @@ export class Members extends GuildBasedResource<any, APIGuildMember> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bulkRaw(ids: string[], guild: string): ReturnCache<Omit<APIGuildMember, 'user'>[]> {
|
||||||
|
return super.bulk(ids, guild);
|
||||||
|
}
|
||||||
|
|
||||||
override values(guild: string): ReturnCache<GuildMemberStructure[]> {
|
override values(guild: string): ReturnCache<GuildMemberStructure[]> {
|
||||||
return fakePromise(super.values(guild)).then(members =>
|
return fakePromise(super.values(guild)).then(members =>
|
||||||
fakePromise(this.client.cache.users?.valuesRaw()).then(
|
fakePromise(this.client.cache.users?.valuesRaw()).then(
|
||||||
@ -65,6 +69,10 @@ export class Members extends GuildBasedResource<any, APIGuildMember> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
valuesRaw(guild: string): ReturnCache<Omit<APIGuildMember, 'user'>[]> {
|
||||||
|
return super.values(guild);
|
||||||
|
}
|
||||||
|
|
||||||
override async set(memberId: string, guildId: string, data: any): Promise<void>;
|
override async set(memberId: string, guildId: string, data: any): Promise<void>;
|
||||||
override async set(memberId_dataArray: [string, any][], guildId: string): Promise<void>;
|
override async set(memberId_dataArray: [string, any][], guildId: string): Promise<void>;
|
||||||
override async set(__keys: string | [string, any][], guild: string, data?: any) {
|
override async set(__keys: string | [string, any][], guild: string, data?: any) {
|
||||||
|
14
src/cache/resources/messages.ts
vendored
14
src/cache/resources/messages.ts
vendored
@ -31,6 +31,10 @@ export class Messages extends GuildRelatedResource<any, APIMessage> {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
raw(id: string): ReturnCache<APIMessageResource | undefined> {
|
||||||
|
return super.get(id);
|
||||||
|
}
|
||||||
|
|
||||||
override bulk(ids: string[]): ReturnCache<MessageStructure[]> {
|
override bulk(ids: string[]): ReturnCache<MessageStructure[]> {
|
||||||
return fakePromise(super.bulk(ids) as APIMessageResource[]).then(
|
return fakePromise(super.bulk(ids) as APIMessageResource[]).then(
|
||||||
messages =>
|
messages =>
|
||||||
@ -48,6 +52,10 @@ export class Messages extends GuildRelatedResource<any, APIMessage> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bulkRaw(ids: string[]): ReturnCache<APIMessageResource[]> {
|
||||||
|
return super.bulk(ids);
|
||||||
|
}
|
||||||
|
|
||||||
override values(channel: string): ReturnCache<MessageStructure[]> {
|
override values(channel: string): ReturnCache<MessageStructure[]> {
|
||||||
return fakePromise(super.values(channel) as APIMessageResource[]).then(messages => {
|
return fakePromise(super.values(channel) as APIMessageResource[]).then(messages => {
|
||||||
const hashes: (string | undefined)[] = this.cache.users
|
const hashes: (string | undefined)[] = this.cache.users
|
||||||
@ -64,9 +72,13 @@ export class Messages extends GuildRelatedResource<any, APIMessage> {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
valuesRaw(channel: string): ReturnCache<APIMessageResource[]> {
|
||||||
|
return super.values(channel);
|
||||||
|
}
|
||||||
|
|
||||||
keys(channel: string) {
|
keys(channel: string) {
|
||||||
return super.keys(channel);
|
return super.keys(channel);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export type APIMessageResource = Omit<APIMessage, 'author'> & { user_id?: string };
|
export type APIMessageResource = Omit<APIMessage, 'author' | 'member'> & { user_id?: string };
|
||||||
|
10
src/cache/resources/overwrites.ts
vendored
10
src/cache/resources/overwrites.ts
vendored
@ -19,7 +19,7 @@ export class Overwrites extends GuildRelatedResource<any, APIOverwrite[]> {
|
|||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
raw(id: string): ReturnCache<(APIOverwrite & { guild_id: string })[]> {
|
raw(id: string): ReturnCache<(APIOverwrite & { guild_id: string })[] | undefined> {
|
||||||
return super.get(id);
|
return super.get(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -59,6 +59,10 @@ export class Overwrites extends GuildRelatedResource<any, APIOverwrite[]> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
valuesRaw(guild: string): ReturnCache<(APIOverwrite & { guild_id: string })[][]> {
|
||||||
|
return super.values(guild);
|
||||||
|
}
|
||||||
|
|
||||||
override bulk(
|
override bulk(
|
||||||
ids: string[],
|
ids: string[],
|
||||||
): ReturnCache<{ type: number; id: string; deny: PermissionsBitField; allow: PermissionsBitField }[][]> {
|
): ReturnCache<{ type: number; id: string; deny: PermissionsBitField; allow: PermissionsBitField }[][]> {
|
||||||
@ -74,4 +78,8 @@ export class Overwrites extends GuildRelatedResource<any, APIOverwrite[]> {
|
|||||||
),
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bulkRaw(ids: string[]): ReturnCache<(APIOverwrite & { guild_id: string })[][]> {
|
||||||
|
return super.bulk(ids);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
12
src/cache/resources/roles.ts
vendored
12
src/cache/resources/roles.ts
vendored
@ -12,22 +12,26 @@ export class Roles extends GuildRelatedResource<any, APIRole> {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
raw(id: string): ReturnCache<APIRole | undefined> {
|
|
||||||
return super.get(id);
|
|
||||||
}
|
|
||||||
|
|
||||||
override get(id: string): ReturnCache<GuildRoleStructure | undefined> {
|
override get(id: string): ReturnCache<GuildRoleStructure | undefined> {
|
||||||
return fakePromise(super.get(id)).then(rawRole =>
|
return fakePromise(super.get(id)).then(rawRole =>
|
||||||
rawRole ? Transformers.GuildRole(this.client, rawRole, rawRole.guild_id) : undefined,
|
rawRole ? Transformers.GuildRole(this.client, rawRole, rawRole.guild_id) : undefined,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
raw(id: string): ReturnCache<APIRole | undefined> {
|
||||||
|
return super.get(id);
|
||||||
|
}
|
||||||
|
|
||||||
override bulk(ids: string[]): ReturnCache<GuildRoleStructure[]> {
|
override bulk(ids: string[]): ReturnCache<GuildRoleStructure[]> {
|
||||||
return fakePromise(super.bulk(ids)).then(roles =>
|
return fakePromise(super.bulk(ids)).then(roles =>
|
||||||
roles.map(rawRole => Transformers.GuildRole(this.client, rawRole, rawRole.guild_id)),
|
roles.map(rawRole => Transformers.GuildRole(this.client, rawRole, rawRole.guild_id)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bulkRaw(ids: string[]): ReturnCache<APIRole[]> {
|
||||||
|
return super.bulk(ids);
|
||||||
|
}
|
||||||
|
|
||||||
override values(guild: string): ReturnCache<GuildRoleStructure[]> {
|
override values(guild: string): ReturnCache<GuildRoleStructure[]> {
|
||||||
return fakePromise(super.values(guild)).then(roles =>
|
return fakePromise(super.values(guild)).then(roles =>
|
||||||
roles.map(rawRole => Transformers.GuildRole(this.client, rawRole, rawRole.guild_id)),
|
roles.map(rawRole => Transformers.GuildRole(this.client, rawRole, rawRole.guild_id)),
|
||||||
|
12
src/cache/resources/stickers.ts
vendored
12
src/cache/resources/stickers.ts
vendored
@ -18,15 +18,27 @@ export class Stickers extends GuildRelatedResource<any, APISticker> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
raw(id: string): ReturnCache<APISticker | undefined> {
|
||||||
|
return super.get(id);
|
||||||
|
}
|
||||||
|
|
||||||
override bulk(ids: string[]): ReturnCache<StickerStructure[]> {
|
override bulk(ids: string[]): ReturnCache<StickerStructure[]> {
|
||||||
return fakePromise(super.bulk(ids) as APISticker[]).then(emojis =>
|
return fakePromise(super.bulk(ids) as APISticker[]).then(emojis =>
|
||||||
emojis.map(rawSticker => Transformers.Sticker(this.client, rawSticker)),
|
emojis.map(rawSticker => Transformers.Sticker(this.client, rawSticker)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bulkRaw(ids: string[]): ReturnCache<APISticker[]> {
|
||||||
|
return super.bulk(ids);
|
||||||
|
}
|
||||||
|
|
||||||
override values(guild: string): ReturnCache<StickerStructure[]> {
|
override values(guild: string): ReturnCache<StickerStructure[]> {
|
||||||
return fakePromise(super.values(guild) as APISticker[]).then(emojis =>
|
return fakePromise(super.values(guild) as APISticker[]).then(emojis =>
|
||||||
emojis.map(rawSticker => Transformers.Sticker(this.client, rawSticker)),
|
emojis.map(rawSticker => Transformers.Sticker(this.client, rawSticker)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
valuesRaw(guild: string): ReturnCache<APISticker[]> {
|
||||||
|
return super.values(guild);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
12
src/cache/resources/threads.ts
vendored
12
src/cache/resources/threads.ts
vendored
@ -18,15 +18,27 @@ export class Threads extends GuildRelatedResource<any, APIThreadChannel> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
raw(id: string): ReturnCache<APIThreadChannel | undefined> {
|
||||||
|
return super.get(id);
|
||||||
|
}
|
||||||
|
|
||||||
override bulk(ids: string[]): ReturnCache<ThreadChannelStructure[]> {
|
override bulk(ids: string[]): ReturnCache<ThreadChannelStructure[]> {
|
||||||
return fakePromise(super.bulk(ids) as APIThreadChannel[]).then(threads =>
|
return fakePromise(super.bulk(ids) as APIThreadChannel[]).then(threads =>
|
||||||
threads.map(rawThread => Transformers.ThreadChannel(this.client, rawThread)),
|
threads.map(rawThread => Transformers.ThreadChannel(this.client, rawThread)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bulkRaw(ids: string[]): ReturnCache<APIThreadChannel[]> {
|
||||||
|
return super.bulk(ids);
|
||||||
|
}
|
||||||
|
|
||||||
override values(guild: string): ReturnCache<ThreadChannelStructure[]> {
|
override values(guild: string): ReturnCache<ThreadChannelStructure[]> {
|
||||||
return fakePromise(super.values(guild) as APIThreadChannel[]).then(threads =>
|
return fakePromise(super.values(guild) as APIThreadChannel[]).then(threads =>
|
||||||
threads.map(rawThread => Transformers.ThreadChannel(this.client, rawThread)),
|
threads.map(rawThread => Transformers.ThreadChannel(this.client, rawThread)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
valuesRaw(guild: string): ReturnCache<APIThreadChannel[]> {
|
||||||
|
return super.values(guild);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
8
src/cache/resources/users.ts
vendored
8
src/cache/resources/users.ts
vendored
@ -12,14 +12,14 @@ export class Users extends BaseResource<any, APIUser> {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
raw(id: string): ReturnCache<APIUser | undefined> {
|
|
||||||
return super.get(id);
|
|
||||||
}
|
|
||||||
|
|
||||||
override get(id: string): ReturnCache<UserStructure | undefined> {
|
override get(id: string): ReturnCache<UserStructure | undefined> {
|
||||||
return fakePromise(super.get(id)).then(rawUser => (rawUser ? Transformers.User(this.client, rawUser) : undefined));
|
return fakePromise(super.get(id)).then(rawUser => (rawUser ? Transformers.User(this.client, rawUser) : undefined));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
raw(id: string): ReturnCache<APIUser | undefined> {
|
||||||
|
return super.get(id);
|
||||||
|
}
|
||||||
|
|
||||||
override bulk(ids: string[]): ReturnCache<UserStructure[]> {
|
override bulk(ids: string[]): ReturnCache<UserStructure[]> {
|
||||||
return fakePromise(super.bulk(ids) as APIUser[]).then(users =>
|
return fakePromise(super.bulk(ids) as APIUser[]).then(users =>
|
||||||
users.map(rawUser => Transformers.User(this.client, rawUser)),
|
users.map(rawUser => Transformers.User(this.client, rawUser)),
|
||||||
|
12
src/cache/resources/voice-states.ts
vendored
12
src/cache/resources/voice-states.ts
vendored
@ -23,6 +23,10 @@ export class VoiceStates extends GuildBasedResource<any, GatewayVoiceState> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
raw(memberId: string, guildId: string): ReturnCache<GatewayVoiceState | undefined> {
|
||||||
|
return super.get(memberId, guildId);
|
||||||
|
}
|
||||||
|
|
||||||
override bulk(ids: string[], guild: string): ReturnCache<VoiceStateStructure[]> {
|
override bulk(ids: string[], guild: string): ReturnCache<VoiceStateStructure[]> {
|
||||||
return fakePromise(super.bulk(ids, guild)).then(
|
return fakePromise(super.bulk(ids, guild)).then(
|
||||||
states =>
|
states =>
|
||||||
@ -32,11 +36,19 @@ export class VoiceStates extends GuildBasedResource<any, GatewayVoiceState> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bulkRaw(ids: string[], guild: string): ReturnCache<GatewayVoiceState[]> {
|
||||||
|
return super.bulk(ids, guild);
|
||||||
|
}
|
||||||
|
|
||||||
override values(guildId: string): ReturnCache<VoiceStateStructure[]> {
|
override values(guildId: string): ReturnCache<VoiceStateStructure[]> {
|
||||||
return fakePromise(super.values(guildId)).then(states =>
|
return fakePromise(super.values(guildId)).then(states =>
|
||||||
states.map(state => Transformers.VoiceState(this.client, state)),
|
states.map(state => Transformers.VoiceState(this.client, state)),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
valuesRaw(guildId: string): ReturnCache<GatewayVoiceState[]> {
|
||||||
|
return super.values(guildId);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export type VoiceStateResource = Omit<GatewayVoiceState, 'member'> & { guild_id: string };
|
export type VoiceStateResource = Omit<GatewayVoiceState, 'member'> & { guild_id: string };
|
||||||
|
@ -5,6 +5,8 @@ import {
|
|||||||
type RESTPatchAPIChannelJSONBody,
|
type RESTPatchAPIChannelJSONBody,
|
||||||
type RESTPostAPIChannelThreadsJSONBody,
|
type RESTPostAPIChannelThreadsJSONBody,
|
||||||
type RESTPostAPIGuildForumThreadsJSONBody,
|
type RESTPostAPIGuildForumThreadsJSONBody,
|
||||||
|
type ChannelType,
|
||||||
|
type APIGuildChannel,
|
||||||
} from 'discord-api-types/v10';
|
} from 'discord-api-types/v10';
|
||||||
import { BaseChannel, type GuildRole, type GuildMember } from '../../structures';
|
import { BaseChannel, type GuildRole, type GuildMember } from '../../structures';
|
||||||
import channelFrom, { type AllChannels } from '../../structures/channels';
|
import channelFrom, { type AllChannels } from '../../structures/channels';
|
||||||
@ -29,7 +31,11 @@ export class ChannelShorter extends BaseShorter {
|
|||||||
let channel;
|
let channel;
|
||||||
if (!force) {
|
if (!force) {
|
||||||
channel = await this.client.cache.channels?.raw(id);
|
channel = await this.client.cache.channels?.raw(id);
|
||||||
if (channel) return channel;
|
const overwrites = await this.client.cache.overwrites?.raw(id);
|
||||||
|
if (channel) {
|
||||||
|
if (overwrites) (channel as APIGuildChannel<ChannelType>).permission_overwrites = overwrites;
|
||||||
|
return channel as APIChannel;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
channel = await this.client.proxy.channels(id).get();
|
channel = await this.client.proxy.channels(id).get();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user