fix: Channels.fetch()

This commit is contained in:
socram03 2022-07-31 22:08:55 -04:00
parent 39f38f9e23
commit 8f370d4c59
2 changed files with 11 additions and 10 deletions

View File

@ -9,7 +9,7 @@ import type { PermissionsOverwrites } from '../utils/util';
import { urlToBase64 } from '../utils/url-to-base-64'; import { urlToBase64 } from '../utils/url-to-base-64';
/** Classes and routes */ /** Classes and routes */
import type { import {
DiscordChannel, DiscordChannel,
DiscordInvite, DiscordInvite,
DiscordInviteMetadata, DiscordInviteMetadata,
@ -22,7 +22,8 @@ import type {
VideoQualityModes, VideoQualityModes,
GetReactions, GetReactions,
GetMessagesOptions, GetMessagesOptions,
ListArchivedThreads } from '@biscuitland/api-types'; ListArchivedThreads,
USER_DM} from '@biscuitland/api-types';
import { import {
CHANNEL, CHANNEL,
CHANNEL_PINS, CHANNEL_PINS,
@ -102,8 +103,8 @@ export abstract class BaseChannel implements Model {
return this.type === ChannelTypes.GuildStageVoice; return this.type === ChannelTypes.GuildStageVoice;
} }
async fetch(): Promise<Channel> { async fetch(channelId?: Snowflake): Promise<Channel> {
const channel = await this.session.rest.get<DiscordChannel>(CHANNEL(this.id)); const channel = await this.session.rest.get<DiscordChannel>(CHANNEL(channelId ?? this.id));
return ChannelFactory.from(this.session, channel); return ChannelFactory.from(this.session, channel);
} }

View File

@ -58,7 +58,7 @@ import {
CHANNEL, CHANNEL,
GUILD_CHANNELS, GUILD_CHANNELS,
} from '@biscuitland/api-types'; } from '@biscuitland/api-types';
import { ChannelFactory, GuildChannel, ReturnThreadsArchive, ThreadChannel, Channel } from './channels'; import { ChannelFactory, GuildChannel, ReturnThreadsArchive, ThreadChannel, ChannelInGuild } from './channels';
import { Member, ThreadMember } from './members'; import { Member, ThreadMember } from './members';
import { Role } from './role'; import { Role } from './role';
import { GuildEmoji } from './emojis'; import { GuildEmoji } from './emojis';
@ -1216,16 +1216,16 @@ export class Guild extends BaseGuild implements Model {
return new GuildPreview(this.session, preview); return new GuildPreview(this.session, preview);
} }
async fetchChannel(channelID: string): Promise<Channel> { async fetchChannel(channelId: string): Promise<ChannelInGuild> {
const channel = await this.session.rest.get<DiscordChannel>(CHANNEL(channelID)); const channel = await this.session.rest.get<DiscordChannel>(CHANNEL(channelId));
return ChannelFactory.from(this.session, channel); return ChannelFactory.fromGuildChannel(this.session, channel);
} }
async fetchChannels(): Promise<Channel[]> { async fetchChannels(): Promise<ChannelInGuild[]> {
const channels = await this.session.rest.get<DiscordChannel[]>(GUILD_CHANNELS(this.id)); const channels = await this.session.rest.get<DiscordChannel[]>(GUILD_CHANNELS(this.id));
return channels.map(channel => ChannelFactory.from(this.session, channel)); return channels.map(channel => ChannelFactory.fromGuildChannel(this.session, channel));
} }
/** fetches a member */ /** fetches a member */