From 9555de5ad31c10c8973fc65e8a381279fa483be7 Mon Sep 17 00:00:00 2001 From: rigormorrtiss Date: Mon, 17 May 2021 22:57:16 +0400 Subject: [PATCH 1/4] add: stage instances events (#944) * feat: add stage instances events * feat: add stage instances events * Add new line * Add new lines * Sort event declaration alphabetically * Move to types/discordeno * Update src/types/discordeno/eventHandlers.ts * Update src/types/discordeno/stage_instance.ts * Update src/types/guilds/guild.ts * Apply suggestions * Commit from GitHub Actions (Lint) * Remove DiscordenoStageInstance * Directly pass data.d * Commit from GitHub Actions (Lint) Co-authored-by: rigormorrtiss Co-authored-by: itohatweb --- .../channels/STAGE_INSTANCE_CREATE.ts | 7 ++ .../channels/STAGE_INSTANCE_DELETE.ts | 7 ++ .../channels/STAGE_INSTANCE_UPDATE.ts | 7 ++ src/handlers/mod.ts | 10 ++ src/plugins/proxyEvents.ts | 14 ++- src/types/discordeno/eventHandlers.ts | 105 ++++++++++++++---- src/types/gateway/gateway_intents.ts | 9 ++ src/types/gateway/gateway_payload.ts | 3 + src/types/guilds/guild.ts | 3 + tests/ws/start_bot.ts | 4 +- 10 files changed, 143 insertions(+), 26 deletions(-) create mode 100644 src/handlers/channels/STAGE_INSTANCE_CREATE.ts create mode 100644 src/handlers/channels/STAGE_INSTANCE_DELETE.ts create mode 100644 src/handlers/channels/STAGE_INSTANCE_UPDATE.ts diff --git a/src/handlers/channels/STAGE_INSTANCE_CREATE.ts b/src/handlers/channels/STAGE_INSTANCE_CREATE.ts new file mode 100644 index 000000000..d99387dc5 --- /dev/null +++ b/src/handlers/channels/STAGE_INSTANCE_CREATE.ts @@ -0,0 +1,7 @@ +import { eventHandlers } from "../../bot.ts"; +import type { StageInstance } from "../../types/channels/stage_instance.ts"; +import type { DiscordGatewayPayload } from "../../types/gateway/gateway_payload.ts"; + +export function handleStageInstanceCreate(data: DiscordGatewayPayload) { + eventHandlers.stageInstanceCreate?.(data.d as StageInstance); +} diff --git a/src/handlers/channels/STAGE_INSTANCE_DELETE.ts b/src/handlers/channels/STAGE_INSTANCE_DELETE.ts new file mode 100644 index 000000000..43e765ba2 --- /dev/null +++ b/src/handlers/channels/STAGE_INSTANCE_DELETE.ts @@ -0,0 +1,7 @@ +import { eventHandlers } from "../../bot.ts"; +import type { StageInstance } from "../../types/channels/stage_instance.ts"; +import type { DiscordGatewayPayload } from "../../types/gateway/gateway_payload.ts"; + +export function handleStageInstanceDelete(data: DiscordGatewayPayload) { + eventHandlers.stageInstanceDelete?.(data.d as StageInstance); +} diff --git a/src/handlers/channels/STAGE_INSTANCE_UPDATE.ts b/src/handlers/channels/STAGE_INSTANCE_UPDATE.ts new file mode 100644 index 000000000..d0cf177bf --- /dev/null +++ b/src/handlers/channels/STAGE_INSTANCE_UPDATE.ts @@ -0,0 +1,7 @@ +import { eventHandlers } from "../../bot.ts"; +import type { StageInstance } from "../../types/channels/stage_instance.ts"; +import type { DiscordGatewayPayload } from "../../types/gateway/gateway_payload.ts"; + +export function handleStageInstanceUpdate(data: DiscordGatewayPayload) { + eventHandlers.stageInstanceUpdate?.(data.d as StageInstance); +} diff --git a/src/handlers/mod.ts b/src/handlers/mod.ts index 169e79d21..9155ffdb6 100644 --- a/src/handlers/mod.ts +++ b/src/handlers/mod.ts @@ -2,6 +2,9 @@ import { handleChannelCreate } from "./channels/CHANNEL_CREATE.ts"; import { handleChannelDelete } from "./channels/CHANNEL_DELETE.ts"; import { handleChannelPinsUpdate } from "./channels/CHANNEL_PINS_UPDATE.ts"; import { handleChannelUpdate } from "./channels/CHANNEL_UPDATE.ts"; +import { handleStageInstanceCreate } from "./channels/STAGE_INSTANCE_CREATE.ts"; +import { handleStageInstanceUpdate } from "./channels/STAGE_INSTANCE_UPDATE.ts"; +import { handleStageInstanceDelete } from "./channels/STAGE_INSTANCE_DELETE.ts"; import { handleThreadCreate } from "./channels/THREAD_CREATE.ts"; import { handleThreadDelete } from "./channels/THREAD_DELETE.ts"; import { handleThreadListSync } from "./channels/THREAD_LIST_SYNC.ts"; @@ -83,6 +86,9 @@ export { handleMessageUpdate, handlePresenceUpdate, handleReady, + handleStageInstanceCreate, + handleStageInstanceDelete, + handleStageInstanceUpdate, handleThreadCreate, handleThreadDelete, handleThreadListSync, @@ -110,6 +116,10 @@ export let handlers = { THREAD_LIST_SYNC: handleThreadListSync, THREAD_MEMBER_UPDATE: handleThreadMemberUpdate, THREAD_MEMBERS_UPDATE: handleThreadMembersUpdate, + STAGE_INSTANCE_CREATE: handleStageInstanceCreate, + STAGE_INSTANCE_UPDATE: handleStageInstanceUpdate, + STAGE_INSTANCE_DELETE: handleStageInstanceDelete, + // commands APPLICATION_COMMAND_CREATE: handleApplicationCommandCreate, APPLICATION_COMMAND_DELETE: handleApplicationCommandDelete, diff --git a/src/plugins/proxyEvents.ts b/src/plugins/proxyEvents.ts index 5af8bb67e..2acb859e2 100644 --- a/src/plugins/proxyEvents.ts +++ b/src/plugins/proxyEvents.ts @@ -3,9 +3,13 @@ import type { EventHandlers } from "../types/discordeno/eventHandlers.ts"; import type { EventEmitter } from "https://deno.land/std@0.96.0/node/events.ts"; export function proxyEvent(emitter: EventEmitter) { - replaceEventHandlers(new Proxy(eventHandlers, { - get(target, prop: keyof EventHandlers) { - return target[prop] !== undefined ? target[prop] : ((...args: unknown[]) => emitter.emit(prop, ...args)); - }, - })); + replaceEventHandlers( + new Proxy(eventHandlers, { + get(target, prop: keyof EventHandlers) { + return target[prop] !== undefined + ? target[prop] + : ((...args: unknown[]) => emitter.emit(prop, ...args)); + }, + }), + ); } diff --git a/src/types/discordeno/eventHandlers.ts b/src/types/discordeno/eventHandlers.ts index a460928db..6d088b612 100644 --- a/src/types/discordeno/eventHandlers.ts +++ b/src/types/discordeno/eventHandlers.ts @@ -8,7 +8,7 @@ import { ThreadMember } from "../channels/threads/thread_member.ts"; import { ThreadMembersUpdate } from "../channels/threads/thread_members_update.ts"; import { IntegrationCreateUpdate } from "../integrations/integration_create_update.ts"; import { ApplicationCommandCreateUpdateDelete } from "../interactions/commands/application_command_create_update_delete.ts"; -import { +import type { DiscordGatewayPayload, Emoji, GatewayPayload, @@ -20,9 +20,10 @@ import { MessageReactionRemove, MessageReactionRemoveAll, PresenceUpdate, + StageInstance, TypingStart, User, - VoiceState + VoiceState, } from "../mod.ts"; import { VoiceServerUpdate } from "../voice/voice_server_update.ts"; import { DebugArg } from "./debug_arg.ts"; @@ -44,14 +45,22 @@ export type EventHandlersDefinitions = { /** Sent when a channel relevant to the current user is deleted. */ channelDelete: [channel: DiscordenoChannel]; /** Sent when a message pin is updated */ - channelPinsUpdate: [channel: DiscordenoChannel, guild?: DiscordenoGuild, lastPinTimestamp?: string | null]; + channelPinsUpdate: [ + channel: DiscordenoChannel, + guild?: DiscordenoGuild, + lastPinTimestamp?: string | null, + ]; debug: [args: string | DebugArg, data?: string]; /** Sent before every event. Discordeno awaits the execution of this event before main event gets sent. */ dispatchRequirements: [data: DiscordGatewayPayload, shardId: number]; /** Sent when a user is banned from a guild. */ guildBanAdd: [guild: DiscordenoGuild, user: User, member?: DiscordenoMember]; /** Sent when a user is unbanned from a guild. */ - guildBanRemove: [guild: DiscordenoGuild, user: User, member?: DiscordenoMember]; + guildBanRemove: [ + guild: DiscordenoGuild, + user: User, + member?: DiscordenoMember, + ]; /** * This event can be sent in three different scenarios: * 1. When a user is initially connecting, to lazily load and backfill information for all unavailable guilds sent in the `READY` event. Guilds that are unavailable due to an outage will send a `GUILD_DELETE` event. @@ -74,27 +83,53 @@ export type EventHandlersDefinitions = { /** Sent when a guild becomes or was already unavailable due to an outage, or when the user leaves or is removed from a guild. If the `unavailable` field is not set, the user was removed from the guild. */ guildDelete: [guild: DiscordenoGuild]; /** Sent when a guild's emojis have been updated. */ - guildEmojisUpdate: [guild: DiscordenoGuild, emojis: Collection, oldEmojis: Collection]; + guildEmojisUpdate: [ + guild: DiscordenoGuild, + emojis: Collection, + oldEmojis: Collection, + ]; /** Sent when a new user joins a guild. */ guildMemberAdd: [guild: DiscordenoGuild, member: DiscordenoMember]; /** Sent when a user is removed from a guild (leave/kick/ban). */ - guildMemberRemove: [guild: DiscordenoGuild, user: User, member?: DiscordenoMember]; + guildMemberRemove: [ + guild: DiscordenoGuild, + user: User, + member?: DiscordenoMember, + ]; /** Sent when a guild member is updated. This will also fire when the user object of a guild member changes. */ - guildMemberUpdate: [guild: DiscordenoGuild, member: DiscordenoMember, oldMember?: DiscordenoMember]; + guildMemberUpdate: [ + guild: DiscordenoGuild, + member: DiscordenoMember, + oldMember?: DiscordenoMember, + ]; /** Sent when a user uses a Slash Command. */ - interactionCreate: [data: Omit, member?: DiscordenoMember]; + interactionCreate: [ + data: Omit, + member?: DiscordenoMember, + ]; /** Sent when a user uses a Slash Command in a guild. */ - interactionGuildCreate: [data: Omit, member: DiscordenoMember]; + interactionGuildCreate: [ + data: Omit, + member: DiscordenoMember, + ]; /** Sent when a user uses a Slash Command in a dm. */ interactionDMCreate: [data: Omit]; /** Sent when a message is created. */ messageCreate: [message: DiscordenoMessage]; /** Sent when a message is deleted. */ - messageDelete: [partial: { id: string; channel: DiscordenoChannel }, message?: DiscordenoMessage]; + messageDelete: [ + partial: { id: string; channel: DiscordenoChannel }, + message?: DiscordenoMessage, + ]; /** Sent when a message is updated. */ messageUpdate: [message: DiscordenoMessage, oldMessage: DiscordenoMessage]; /** Sent when a user updates its nickname */ - nicknameUpdate: [guild: DiscordenoGuild, member: DiscordenoMember, nickname: string, oldNickname?: string]; + nicknameUpdate: [ + guild: DiscordenoGuild, + member: DiscordenoMember, + nickname: string, + oldNickname?: string, + ]; /** A user's presence is their current state on a guild. This event is sent when a user's presence or info, such as name or avatar, is updated. */ presenceUpdate: [presence: PresenceUpdate, oldPresence?: PresenceUpdate]; /** Sent before every event execution. Discordeno will not await its execution. */ @@ -106,26 +141,52 @@ export type EventHandlersDefinitions = { /** Sent when a user removes a reaction from a message. */ reactionRemove: [data: MessageReactionRemove, message?: DiscordenoMessage]; /** Sent when a user explicitly removes all reactions from a message. */ - reactionRemoveAll: [payload: MessageReactionRemoveAll, message?: DiscordenoMessage]; + reactionRemoveAll: [ + payload: MessageReactionRemoveAll, + message?: DiscordenoMessage, + ]; /** Sent when a bot removes all instances of a given emoji from the reactions of a message. */ - reactionRemoveEmoji: [emoji: Partial, messageId: bigint, channelId: bigint, guildId?: bigint]; + reactionRemoveEmoji: [ + emoji: Partial, + messageId: bigint, + channelId: bigint, + guildId?: bigint, + ]; /** Sent when a guild role is created. */ roleCreate: [guild: DiscordenoGuild, role: DiscordenoRole]; /** Sent when a guild role is deleted. */ roleDelete: [guild: DiscordenoGuild, role: DiscordenoRole]; /** Sent when a guild role is updated. */ - roleUpdate: [guild: DiscordenoGuild, role: DiscordenoRole, old: DiscordenoRole]; - roleGained: [guild: DiscordenoGuild, member: DiscordenoMember, roleId: bigint]; + roleUpdate: [ + guild: DiscordenoGuild, + role: DiscordenoRole, + old: DiscordenoRole, + ]; + roleGained: [ + guild: DiscordenoGuild, + member: DiscordenoMember, + roleId: bigint, + ]; roleLost: [guild: DiscordenoGuild, member: DiscordenoMember, roleId: bigint]; shardReady: [shardId: number]; /** Sent when a shard failed to load. */ shardFailedToLoad: [shardId: number, unavailableGuildIds: Set]; + /** Sent when a Stage instance is created (i.e. the Stage is now "live"). */ + stageInstanceCreate: [instance: StageInstance]; + /** Sent when a Stage instance has been deleted (i.e. the Stage has been closed). */ + stageInstanceDelete: [instance: StageInstance]; + /** Sent when a Stage instance has been updated. */ + stageInstanceUpdate: [instance: StageInstance]; /** Sent when a thread is created */ threadCreate: [channel: DiscordenoChannel]; /** Sent when a thread is updated */ threadUpdate: [cahnnel: DiscordenoChannel, oldChannel: DiscordenoChannel]; /** Sent when the bot gains access to threads */ - threadListSync: [channels: Collection, members: ThreadMember[], guildId: bigint]; + threadListSync: [ + channels: Collection, + members: ThreadMember[], + guildId: bigint, + ]; /** Sent when the current users thread member is updated */ threadMemberUpdate: [threadMember: ThreadMember]; /** Sent when anyone is added to or removed from a thread */ @@ -139,7 +200,11 @@ export type EventHandlersDefinitions = { /** Sent when a user leaves a voice channel. Does not get sent when user switches the voice channel */ voiceChannelLeave: [member: DiscordenoMember, channelId: bigint]; /** Sent when a user switches the voice channel */ - voiceChannelSwitch: [member: DiscordenoMember, channelId: bigint, oldChannelId: bigint]; + voiceChannelSwitch: [ + member: DiscordenoMember, + channelId: bigint, + oldChannelId: bigint, + ]; /** Sent when a voice server is updated with information for making the bot connect to a voice channel. */ voiceServerUpdate: [payload: VoiceServerUpdate, guild: DiscordenoGuild]; /** Sent when someone joins/leaves/moves voice channels. */ @@ -158,8 +223,10 @@ export type EventHandlersDefinitions = { inviteCreate: [data: InviteCreate]; /** Sent when an invite is deleted. */ inviteDelete: [data: InviteDelete]; -} +}; export type EventHandlers = { - [E in keyof EventHandlersDefinitions]?: (...args: EventHandlersDefinitions[E]) => unknown; + [E in keyof EventHandlersDefinitions]?: ( + ...args: EventHandlersDefinitions[E] + ) => unknown; }; diff --git a/src/types/gateway/gateway_intents.ts b/src/types/gateway/gateway_intents.ts index cb7f43944..b5bdf63a5 100644 --- a/src/types/gateway/gateway_intents.ts +++ b/src/types/gateway/gateway_intents.ts @@ -10,6 +10,15 @@ export enum DiscordGatewayIntents { * - CHANNEL_UPDATE * - CHANNEL_DELETE * - CHANNEL_PINS_UPDATE + * - THREAD_CREATE + * - THREAD_UPDATE + * - THREAD_DELETE + * - THREAD_LIST_SYNC + * - THREAD_MEMBER_UPDATE + * - THREAD_MEMBERS_UPDATE + * - STAGE_INSTANCE_CREATE + * - STAGE_INSTANCE_UPDATE + * - STAGE_INSTANCE_DELETE */ Guilds = 1 << 0, /** diff --git a/src/types/gateway/gateway_payload.ts b/src/types/gateway/gateway_payload.ts index 47694c6af..a47ea5459 100644 --- a/src/types/gateway/gateway_payload.ts +++ b/src/types/gateway/gateway_payload.ts @@ -50,6 +50,9 @@ export interface GatewayPayload { | "INTEGRATION_CREATE" | "INTEGRATION_UPDATE" | "INTEGRATION_DELETE" + | "STAGE_INSTANCE_CREATE" + | "STAGE_INSTANCE_UPDATE" + | "STAGE_INSTANCE_DELETE" | null; } diff --git a/src/types/guilds/guild.ts b/src/types/guilds/guild.ts index 5caab451e..53bb68c83 100644 --- a/src/types/guilds/guild.ts +++ b/src/types/guilds/guild.ts @@ -12,6 +12,7 @@ import { DiscordPremiumTiers } from "./premium_tiers.ts"; import { DiscordSystemChannelFlags } from "./system_channel_flags.ts"; import { DiscordVerificationLevels } from "./verification_levels.ts"; import { WelcomeScreen } from "./welcome_screen.ts"; +import type { StageInstance } from "../channels/stage_instance.ts"; /** https://discord.com/developers/docs/resources/guild#guild-object */ export interface Guild { @@ -112,4 +113,6 @@ export interface Guild { welcomeScreen?: WelcomeScreen; /** `true` if this guild is designated as NSFW */ nsfw: boolean; + /** Stage instances in the guild */ + stageInstances?: StageInstance[]; } diff --git a/tests/ws/start_bot.ts b/tests/ws/start_bot.ts index 43f59b136..b87994140 100644 --- a/tests/ws/start_bot.ts +++ b/tests/ws/start_bot.ts @@ -3,7 +3,7 @@ import { cache } from "../../src/cache.ts"; import { deleteGuild } from "../../src/helpers/guilds/delete_guild.ts"; import { delay } from "../../src/util/utils.ts"; import { ws } from "../../src/ws/ws.ts"; -import { assertExists, assertEquals } from "../deps.ts"; +import { assertEquals, assertExists } from "../deps.ts"; // Set necessary settings // Disables the logger which logs everything @@ -38,7 +38,7 @@ Deno.test({ await startBot({ token, eventHandlers: { - ready: () => didReady = true + ready: () => didReady = true, }, intents: [ "GuildMessages", From ac2ce0f9881e762f509128ee026b8d292f28c000 Mon Sep 17 00:00:00 2001 From: ITOH Date: Mon, 17 May 2021 22:45:11 +0200 Subject: [PATCH 2/4] change: don't use mod.ts to import types internally --- src/types/discordeno/eventHandlers.ts | 32 +++++++++++++-------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/src/types/discordeno/eventHandlers.ts b/src/types/discordeno/eventHandlers.ts index 6d088b612..e4dc7ffdb 100644 --- a/src/types/discordeno/eventHandlers.ts +++ b/src/types/discordeno/eventHandlers.ts @@ -4,28 +4,26 @@ import { DiscordenoMember } from "../../structures/member.ts"; import { DiscordenoMessage } from "../../structures/message.ts"; import { DiscordenoRole } from "../../structures/role.ts"; import { Collection } from "../../util/collection.ts"; +import { PresenceUpdate } from "../activity/presence_update.ts"; +import { StageInstance } from "../channels/stage_instance.ts"; import { ThreadMember } from "../channels/threads/thread_member.ts"; import { ThreadMembersUpdate } from "../channels/threads/thread_members_update.ts"; +import { Emoji } from "../emojis/emoji.ts"; +import { GatewayPayload } from "../gateway/gateway_payload.ts"; +import { DiscordGatewayPayload } from "../gateway/gateway_payload.ts"; import { IntegrationCreateUpdate } from "../integrations/integration_create_update.ts"; +import { IntegrationDelete } from "../integrations/integration_delete.ts"; import { ApplicationCommandCreateUpdateDelete } from "../interactions/commands/application_command_create_update_delete.ts"; -import type { - DiscordGatewayPayload, - Emoji, - GatewayPayload, - IntegrationDelete, - Interaction, - InviteCreate, - InviteDelete, - MessageReactionAdd, - MessageReactionRemove, - MessageReactionRemoveAll, - PresenceUpdate, - StageInstance, - TypingStart, - User, - VoiceState, -} from "../mod.ts"; +import { Interaction } from "../interactions/interaction.ts"; +import { InviteCreate } from "../invites/invite_create.ts"; +import { InviteDelete } from "../invites/invite_delete.ts"; +import { MessageReactionAdd } from "../messages/message_reaction_add.ts"; +import { MessageReactionRemove } from "../messages/message_reaction_remove.ts"; +import { MessageReactionRemoveAll } from "../messages/message_reaction_remove_all.ts"; +import { TypingStart } from "../misc/typing_start.ts"; +import { User } from "../users/user.ts"; import { VoiceServerUpdate } from "../voice/voice_server_update.ts"; +import { VoiceState } from "../voice/voice_state.ts"; import { DebugArg } from "./debug_arg.ts"; import { GuildUpdateChange } from "./guild_update_change.ts"; From 4e7d9053d1473dddb4f572ec3dbcc8e3ba081553 Mon Sep 17 00:00:00 2001 From: rigormorrtiss Date: Tue, 18 May 2021 20:30:54 +0400 Subject: [PATCH 3/4] change(types): rename eventHandlers.ts to event_handlers.ts (#951) --- src/bot.ts | 2 +- src/types/discordeno/{eventHandlers.ts => event_handlers.ts} | 0 src/types/discordeno/mod.ts | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename src/types/discordeno/{eventHandlers.ts => event_handlers.ts} (100%) diff --git a/src/bot.ts b/src/bot.ts index 431abed1a..cf9374bd0 100644 --- a/src/bot.ts +++ b/src/bot.ts @@ -1,6 +1,6 @@ import { getGatewayBot } from "./helpers/misc/get_gateway_bot.ts"; import { rest } from "./rest/rest.ts"; -import type { EventHandlers } from "./types/discordeno/eventHandlers.ts"; +import type { EventHandlers } from "./types/discordeno/event_handlers.ts"; import { DiscordGatewayIntents } from "./types/gateway/gateway_intents.ts"; import { snowflakeToBigint } from "./util/bigint.ts"; import { GATEWAY_VERSION } from "./util/constants.ts"; diff --git a/src/types/discordeno/eventHandlers.ts b/src/types/discordeno/event_handlers.ts similarity index 100% rename from src/types/discordeno/eventHandlers.ts rename to src/types/discordeno/event_handlers.ts diff --git a/src/types/discordeno/mod.ts b/src/types/discordeno/mod.ts index a0bf26172..b5446dccc 100644 --- a/src/types/discordeno/mod.ts +++ b/src/types/discordeno/mod.ts @@ -2,7 +2,7 @@ export * from "./create_slash_command.ts"; export * from "./debug_arg.ts"; export * from "./edit_webhook_message.ts"; export * from "./errors.ts"; -export * from "./eventHandlers.ts"; +export * from "./event_handlers.ts"; export * from "./file_content.ts"; export * from "./guild_member.ts"; export * from "./guild_update_change.ts"; From dd8c51f3d211fbac236c1d780b883495fb6c11ed Mon Sep 17 00:00:00 2001 From: rigormorrtiss Date: Tue, 18 May 2021 20:31:49 +0400 Subject: [PATCH 4/4] change: import types from specific files (#953) * fix: import types from specific files * Use import syntax for enums --- src/handlers/roles/GUILD_ROLE_CREATE.ts | 2 +- src/handlers/roles/GUILD_ROLE_UPDATE.ts | 2 +- src/helpers/channels/delete_channel.ts | 2 +- src/helpers/channels/threads/add_to_thread.ts | 3 ++- src/helpers/guilds/get_welcome_screen.ts | 2 +- 5 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/handlers/roles/GUILD_ROLE_CREATE.ts b/src/handlers/roles/GUILD_ROLE_CREATE.ts index c8801e2ce..1cae6d396 100644 --- a/src/handlers/roles/GUILD_ROLE_CREATE.ts +++ b/src/handlers/roles/GUILD_ROLE_CREATE.ts @@ -2,7 +2,7 @@ import { eventHandlers } from "../../bot.ts"; import { cacheHandlers } from "../../cache.ts"; import { structures } from "../../structures/mod.ts"; import type { DiscordGatewayPayload } from "../../types/gateway/gateway_payload.ts"; -import type { GuildRoleCreate } from "../../types/mod.ts"; +import type { GuildRoleCreate } from "../../types/guilds/guild_role_create.ts"; import { snowflakeToBigint } from "../../util/bigint.ts"; export async function handleGuildRoleCreate(data: DiscordGatewayPayload) { diff --git a/src/handlers/roles/GUILD_ROLE_UPDATE.ts b/src/handlers/roles/GUILD_ROLE_UPDATE.ts index e3c1b445f..6ee6f7cba 100644 --- a/src/handlers/roles/GUILD_ROLE_UPDATE.ts +++ b/src/handlers/roles/GUILD_ROLE_UPDATE.ts @@ -2,7 +2,7 @@ import { eventHandlers } from "../../bot.ts"; import { cacheHandlers } from "../../cache.ts"; import { structures } from "../../structures/mod.ts"; import type { DiscordGatewayPayload } from "../../types/gateway/gateway_payload.ts"; -import type { GuildRoleUpdate } from "../../types/mod.ts"; +import type { GuildRoleUpdate } from "../../types/guilds/guild_role_update.ts"; import { snowflakeToBigint } from "../../util/bigint.ts"; export async function handleGuildRoleUpdate(data: DiscordGatewayPayload) { diff --git a/src/helpers/channels/delete_channel.ts b/src/helpers/channels/delete_channel.ts index ed443c78a..a6b0fc5e2 100644 --- a/src/helpers/channels/delete_channel.ts +++ b/src/helpers/channels/delete_channel.ts @@ -1,7 +1,7 @@ import { cacheHandlers } from "../../cache.ts"; import { rest } from "../../rest/rest.ts"; import { Errors } from "../../types/discordeno/errors.ts"; -import { ChannelTypes } from "../../types/mod.ts"; +import { ChannelTypes } from "../../types/channels/channel_types.ts"; import { endpoints } from "../../util/constants.ts"; import { requireBotGuildPermissions } from "../../util/permissions.ts"; diff --git a/src/helpers/channels/threads/add_to_thread.ts b/src/helpers/channels/threads/add_to_thread.ts index c38ce9ebe..aa5d3f1e5 100644 --- a/src/helpers/channels/threads/add_to_thread.ts +++ b/src/helpers/channels/threads/add_to_thread.ts @@ -1,6 +1,7 @@ import { cacheHandlers } from "../../../cache.ts"; import { rest } from "../../../rest/rest.ts"; -import { ChannelTypes, Errors } from "../../../types/mod.ts"; +import { ChannelTypes } from "../../../types/channels/channel_types.ts"; +import { Errors } from "../../../types/discordeno/errors.ts"; import { endpoints } from "../../../util/constants.ts"; //TODO(threads): this does not work rn /** Adds the current user to a thread. Returns a 204 empty response on success. Also requires the thread is not archived. Fires a Thread Members Update Gateway event.Adds another user to a thread. Requires the ability to send messages in the thread. Also requires the thread is not archived. Returns a 204 empty response on success. Fires a Thread Members Update Gateway event. diff --git a/src/helpers/guilds/get_welcome_screen.ts b/src/helpers/guilds/get_welcome_screen.ts index 2b20e2826..22a570e6a 100644 --- a/src/helpers/guilds/get_welcome_screen.ts +++ b/src/helpers/guilds/get_welcome_screen.ts @@ -1,5 +1,5 @@ import { rest } from "../../rest/rest.ts"; -import type { WelcomeScreen } from "../../types/mod.ts"; +import type { WelcomeScreen } from "../../types/guilds/welcome_screen.ts"; import { endpoints } from "../../util/constants.ts"; export async function getWelcomeScreen(guildId: bigint) {