From 3cce7c2732d7f1d84d398f8ac5b141301381c2eb Mon Sep 17 00:00:00 2001 From: ayntee Date: Mon, 16 Nov 2020 12:09:32 +0400 Subject: [PATCH 1/2] feat: overridable handlers --- src/handlers/mod.ts | 203 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 203 insertions(+) create mode 100644 src/handlers/mod.ts diff --git a/src/handlers/mod.ts b/src/handlers/mod.ts new file mode 100644 index 000000000..e726c50ba --- /dev/null +++ b/src/handlers/mod.ts @@ -0,0 +1,203 @@ +import { + channelOverwriteHasPermission, + createInvite, + deleteMessages, + editChannel, + followChannel, + getChannelInvites, + getChannelWebhooks, + getMessage, + getMessages, + getPins, + isChannelSynced, + sendMessage, +} from "./channel.ts"; +import { + ban, + categoryChildrenIDs, + createEmoji, + createGuildChannel, + createGuildFromTemplate, + createGuildRole, + createGuildTemplate, + createServer, + deleteChannel, + deleteEmoji, + deleteGuildTemplate, + deleteIntegration, + deleteRole, + deleteServer, + editEmbed, + editEmoji, + editGuild, + editGuildTemplate, + editIntegration, + editRole, + emojiURL, + fetchMembers, + getAuditLogs, + getBan, + getBans, + getChannel, + getChannels, + getEmbed, + getGuild, + getGuildTemplate, + getGuildTemplates, + getIntegrations, + getInvites, + getMember, + getMembersByQuery, + getPruneCount, + getRoles, + getUser, + getVanityURL, + getVoiceRegions, + getWebhooks, + guildBannerURL, + guildIconURL, + guildSplashURL, + leaveGuild, + pruneMembers, + swapChannels, + swapRoles, + syncGuildTemplate, + syncIntegration, + unban, +} from "./guild.ts"; +import { + addRole, + avatarURL, + editBotProfile, + editMember, + kick, + moveMember, + rawAvatarURL, + removeRole, + sendDirectMessage, +} from "./member.ts"; +import { + addReaction, + addReactions, + deleteMessage, + deleteMessageByID, + editMessage, + getReactions, + pin, + publishMessage, + removeAllReactions, + removeReaction, + removeReactionEmoji, + removeUserReaction, + unpin, +} from "./message.ts"; +import { createWebhook, executeWebhook, getWebhook } from "./webhook.ts"; + +export let handlers = { + // Channel handler + channelOverwriteHasPermission, + createInvite, + deleteMessages, + editChannel, + followChannel, + getChannelInvites, + getChannelWebhooks, + getMessage, + getMessages, + getPins, + isChannelSynced, + sendMessage, + + // Guild handler + ban, + categoryChildrenIDs, + createEmoji, + createGuildChannel, + createGuildFromTemplate, + createGuildRole, + createGuildTemplate, + createServer, + deleteChannel, + deleteEmoji, + deleteGuildTemplate, + deleteIntegration, + deleteRole, + deleteServer, + editEmbed, + editEmoji, + editGuild, + editGuildTemplate, + editIntegration, + editRole, + emojiURL, + fetchMembers, + getAuditLogs, + getBan, + getBans, + getChannel, + getChannels, + getEmbed, + getGuild, + getGuildTemplate, + getGuildTemplates, + getIntegrations, + getInvites, + getMember, + getMembersByQuery, + getPruneCount, + getRoles, + getUser, + getVanityURL, + getVoiceRegions, + getWebhooks, + guildBannerURL, + guildIconURL, + guildSplashURL, + leaveGuild, + pruneMembers, + swapChannels, + swapRoles, + syncGuildTemplate, + syncIntegration, + unban, + + // Member handler + addRole, + avatarURL, + editBotProfile, + editMember, + kick, + moveMember, + rawAvatarURL, + removeRole, + sendDirectMessage, + + // Message handler + addReaction, + addReactions, + deleteMessage, + deleteMessageByID, + editMessage, + getReactions, + pin, + publishMessage, + removeAllReactions, + removeReaction, + removeReactionEmoji, + removeUserReaction, + unpin, + + // Webhook handler + createWebhook, + executeWebhook, + getWebhook, +}; + +export type Handlers = typeof handlers; + +export function updateHandlers(newHandlers: Handlers) { + handlers = { + ...handlers, + ...newHandlers, + }; +} From f7609ad9cd90e6474c430578dc843c0e0a605da9 Mon Sep 17 00:00:00 2001 From: ayntee Date: Mon, 16 Nov 2020 17:35:31 +0400 Subject: [PATCH 2/2] Update src/handlers/mod.ts Co-authored-by: Skillz4Killz <23035000+Skillz4Killz@users.noreply.github.com> --- src/handlers/mod.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/handlers/mod.ts b/src/handlers/mod.ts index e726c50ba..23ecc45b2 100644 --- a/src/handlers/mod.ts +++ b/src/handlers/mod.ts @@ -195,7 +195,7 @@ export let handlers = { export type Handlers = typeof handlers; -export function updateHandlers(newHandlers: Handlers) { +export function updateHandlers(newHandlers: Partial) { handlers = { ...handlers, ...newHandlers,