mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-16 11:28:15 +00:00
support text channels in voice channels
This commit is contained in:
@@ -23,8 +23,11 @@ export async function handleChannelDelete(bot: Bot, data: DiscordGatewayPayload)
|
||||
|
||||
bot.events.voiceChannelLeave(bot, vs, guild, channel);
|
||||
});
|
||||
} else if (
|
||||
}
|
||||
|
||||
if (
|
||||
[
|
||||
DiscordChannelTypes.GuildVoice,
|
||||
DiscordChannelTypes.GuildText,
|
||||
DiscordChannelTypes.DM,
|
||||
DiscordChannelTypes.GroupDm,
|
||||
|
||||
@@ -18,6 +18,7 @@ export async function startTyping(bot: Bot, channelId: bigint) {
|
||||
DiscordChannelTypes.GuildNewsThread,
|
||||
DiscordChannelTypes.GuildPrivateThread,
|
||||
DiscordChannelTypes.GuildPublicThread,
|
||||
DiscordChannelTypes.GuildVoice,
|
||||
].includes(channel.type)
|
||||
) {
|
||||
throw new Error(bot.constants.Errors.CHANNEL_NOT_TEXT_BASED);
|
||||
|
||||
@@ -1,8 +1,25 @@
|
||||
import type { Bot } from "../../bot.ts";
|
||||
import { DiscordChannelTypes } from "../../types/channels/channel_types.ts";
|
||||
|
||||
/** Pin a message in a channel. Requires MANAGE_MESSAGES. Max pins allowed in a channel = 50. */
|
||||
export async function pin(bot: Bot, channelId: bigint, messageId: bigint) {
|
||||
await bot.utils.requireBotChannelPermissions(bot, channelId, ["MANAGE_MESSAGES"]);
|
||||
const channel = await bot.cache.channels.get(channelId);
|
||||
if (channel) {
|
||||
if (
|
||||
![
|
||||
DiscordChannelTypes.DM,
|
||||
DiscordChannelTypes.GuildNews,
|
||||
DiscordChannelTypes.GuildText,
|
||||
DiscordChannelTypes.GuildPublicThread,
|
||||
DiscordChannelTypes.GuildPrivateThread,
|
||||
DiscordChannelTypes.GuildNewsThread,
|
||||
].includes(channel.type)
|
||||
) {
|
||||
throw new Error(bot.constants.Errors.CHANNEL_NOT_TEXT_BASED);
|
||||
}
|
||||
|
||||
await bot.utils.requireBotChannelPermissions(bot, channel, ["MANAGE_MESSAGES"]);
|
||||
}
|
||||
|
||||
return await bot.rest.runMethod<undefined>(
|
||||
bot.rest,
|
||||
|
||||
@@ -23,6 +23,7 @@ export async function sendMessage(bot: Bot, channelId: bigint, content: string |
|
||||
DiscordChannelTypes.GuildPublicThread,
|
||||
DiscordChannelTypes.GuildPrivateThread,
|
||||
DiscordChannelTypes.GuildNewsThread,
|
||||
DiscordChannelTypes.GuildVoice,
|
||||
].includes(channel.type)
|
||||
) {
|
||||
throw new Error(Errors.CHANNEL_NOT_TEXT_BASED);
|
||||
|
||||
@@ -45,6 +45,7 @@ export function transformChannel(
|
||||
? bot.transformers.snowflake(payload.channel.application_id)
|
||||
: undefined,
|
||||
parentId: payload.channel.parent_id ? bot.transformers.snowflake(payload.channel.parent_id) : undefined,
|
||||
// TODO: stage channels?
|
||||
voiceStates: payload.channel.type === DiscordChannelTypes.GuildVoice ? new Collection() : undefined,
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user