diff --git a/backend/package-lock.json b/backend/package-lock.json index 8fc44210..b8018d1f 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -2335,12 +2335,11 @@ } }, "knub": { - "version": "30.0.0-beta.10", - "resolved": "https://registry.npmjs.org/knub/-/knub-30.0.0-beta.10.tgz", - "integrity": "sha512-9Gn36+s0AoXXMi1gcH+fAyCJGLwQC+7zKNzEikRjUfMb3/bSDhwsZTTPtB47IURK11ejWWwdJB5UhM8Bj5xTrw==", + "version": "30.0.0-beta.11", + "resolved": "https://registry.npmjs.org/knub/-/knub-30.0.0-beta.11.tgz", + "integrity": "sha512-SH4MzOYPJ1wMPTyNFGCSaqES/MlISd6+Q1FQd/CR7WZGRf6w/pQxSfYtaLE7qveLIJMxCdXj9VlTTsi10XHzfg==", "requires": { "knub-command-manager": "^8.1.1", - "reflect-metadata": "^0.1.13", "ts-essentials": "^6.0.7" } }, diff --git a/backend/package.json b/backend/package.json index da486102..9de8dc1b 100644 --- a/backend/package.json +++ b/backend/package.json @@ -34,7 +34,7 @@ "humanize-duration": "^3.15.0", "io-ts": "^2.0.0", "js-yaml": "^3.13.1", - "knub": "^30.0.0-beta.10", + "knub": "^30.0.0-beta.11", "knub-command-manager": "^8.1.1", "last-commit-log": "^2.1.0", "lodash.chunk": "^4.2.0", diff --git a/backend/src/plugins/AutoReactions/AutoReactionsPlugin.ts b/backend/src/plugins/AutoReactions/AutoReactionsPlugin.ts index 38116ed3..811b819e 100644 --- a/backend/src/plugins/AutoReactions/AutoReactionsPlugin.ts +++ b/backend/src/plugins/AutoReactions/AutoReactionsPlugin.ts @@ -3,9 +3,9 @@ import { ConfigSchema, AutoReactionsPluginType } from "./types"; import { PluginOptions } from "knub"; import { NewAutoReactionsCmd } from "./commands/NewAutoReactionsCmd"; import { DisableAutoReactionsCmd } from "./commands/DisableAutoReactionsCmd"; -import { MessageCreateEvt } from "./events/MessageCreateEvt"; import { GuildSavedMessages } from "src/data/GuildSavedMessages"; import { GuildAutoReactions } from "src/data/GuildAutoReactions"; +import { AddReactionsEvt } from "./events/AddReactionsEvt"; const defaultOptions: PluginOptions = { config: { @@ -33,7 +33,7 @@ export const AutoReactionsPlugin = zeppelinPlugin()("au // prettier-ignore events: [ - MessageCreateEvt, + AddReactionsEvt, ], onLoad(pluginData) { diff --git a/backend/src/plugins/AutoReactions/events/MessageCreateEvt.ts b/backend/src/plugins/AutoReactions/events/AddReactionsEvt.ts similarity index 96% rename from backend/src/plugins/AutoReactions/events/MessageCreateEvt.ts rename to backend/src/plugins/AutoReactions/events/AddReactionsEvt.ts index ff1bb756..d9ddde4c 100644 --- a/backend/src/plugins/AutoReactions/events/MessageCreateEvt.ts +++ b/backend/src/plugins/AutoReactions/events/AddReactionsEvt.ts @@ -3,7 +3,7 @@ import { isDiscordRESTError } from "src/utils"; import { logger } from "knub"; import { LogType } from "src/data/LogType"; -export const MessageCreateEvt = autoReactionsEvt({ +export const AddReactionsEvt = autoReactionsEvt({ event: "messageCreate", allowOutsideOfGuild: false, diff --git a/backend/src/plugins/LocateUser/LocateUserPlugin.ts b/backend/src/plugins/LocateUser/LocateUserPlugin.ts index 96f7264c..6c003029 100644 --- a/backend/src/plugins/LocateUser/LocateUserPlugin.ts +++ b/backend/src/plugins/LocateUser/LocateUserPlugin.ts @@ -7,9 +7,8 @@ import { fillActiveAlertsList } from "./utils/fillAlertsList"; import { WhereCmd } from "./commands/WhereCmd"; import { FollowCmd } from "./commands/FollowCmd"; import { ListFollowCmd, DeleteFollowCmd } from "./commands/ListFollowCmd"; -import { ChannelJoinEvt, ChannelSwitchEvt } from "./events/ChannelJoinEvt"; -import { ChannelLeaveEvt } from "./events/ChannelLeaveEvt"; -import { GuildBanAddEvt } from "./events/GuildBanAddEvt"; +import { ChannelJoinAlertsEvt, ChannelSwitchAlertsEvt, ChannelLeaveAlertsEvt } from "./events/SendAlertsEvts"; +import { GuildBanRemoveAlertsEvt } from "./events/BanRemoveAlertsEvt"; const defaultOptions: PluginOptions = { config: { @@ -41,10 +40,10 @@ export const LocateUserPlugin = zeppelinPlugin()("locate_u // prettier-ignore events: [ - ChannelJoinEvt, - ChannelSwitchEvt, - ChannelLeaveEvt, - GuildBanAddEvt + ChannelJoinAlertsEvt, + ChannelSwitchAlertsEvt, + ChannelLeaveAlertsEvt, + GuildBanRemoveAlertsEvt ], onLoad(pluginData) { diff --git a/backend/src/plugins/LocateUser/events/GuildBanAddEvt.ts b/backend/src/plugins/LocateUser/events/BanRemoveAlertsEvt.ts similarity index 83% rename from backend/src/plugins/LocateUser/events/GuildBanAddEvt.ts rename to backend/src/plugins/LocateUser/events/BanRemoveAlertsEvt.ts index 599f3aa9..e2eef6dc 100644 --- a/backend/src/plugins/LocateUser/events/GuildBanAddEvt.ts +++ b/backend/src/plugins/LocateUser/events/BanRemoveAlertsEvt.ts @@ -1,6 +1,6 @@ import { locateUserEvent } from "../types"; -export const GuildBanAddEvt = locateUserEvent({ +export const GuildBanRemoveAlertsEvt = locateUserEvent({ event: "guildBanAdd", async listener(meta) { diff --git a/backend/src/plugins/LocateUser/events/ChannelJoinEvt.ts b/backend/src/plugins/LocateUser/events/ChannelJoinEvt.ts deleted file mode 100644 index 38c519c7..00000000 --- a/backend/src/plugins/LocateUser/events/ChannelJoinEvt.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { locateUserEvent } from "../types"; -import { sendAlerts } from "../utils/sendAlerts"; - -export const ChannelJoinEvt = locateUserEvent({ - event: "voiceChannelJoin", - - async listener(meta) { - if (meta.pluginData.state.usersWithAlerts.includes(meta.args.member.id)) { - sendAlerts(meta.pluginData, meta.args.member.id); - } - }, -}); - -export const ChannelSwitchEvt = locateUserEvent({ - event: "voiceChannelSwitch", - - async listener(meta) { - if (meta.pluginData.state.usersWithAlerts.includes(meta.args.member.id)) { - sendAlerts(meta.pluginData, meta.args.member.id); - } - }, -}); diff --git a/backend/src/plugins/LocateUser/events/ChannelLeaveEvt.ts b/backend/src/plugins/LocateUser/events/SendAlertsEvts.ts similarity index 54% rename from backend/src/plugins/LocateUser/events/ChannelLeaveEvt.ts rename to backend/src/plugins/LocateUser/events/SendAlertsEvts.ts index c9164171..f18393af 100644 --- a/backend/src/plugins/LocateUser/events/ChannelLeaveEvt.ts +++ b/backend/src/plugins/LocateUser/events/SendAlertsEvts.ts @@ -2,7 +2,27 @@ import { locateUserEvent } from "../types"; import { sendAlerts } from "../utils/sendAlerts"; import { VoiceChannel, TextableChannel } from "eris"; -export const ChannelLeaveEvt = locateUserEvent({ +export const ChannelJoinAlertsEvt = locateUserEvent({ + event: "voiceChannelJoin", + + async listener(meta) { + if (meta.pluginData.state.usersWithAlerts.includes(meta.args.member.id)) { + sendAlerts(meta.pluginData, meta.args.member.id); + } + }, +}); + +export const ChannelSwitchAlertsEvt = locateUserEvent({ + event: "voiceChannelSwitch", + + async listener(meta) { + if (meta.pluginData.state.usersWithAlerts.includes(meta.args.member.id)) { + sendAlerts(meta.pluginData, meta.args.member.id); + } + }, +}); + +export const ChannelLeaveAlertsEvt = locateUserEvent({ event: "voiceChannelLeave", async listener(meta) { diff --git a/backend/src/plugins/UsernameSaver/UsernameSaverPlugin.ts b/backend/src/plugins/UsernameSaver/UsernameSaverPlugin.ts index 592258ea..689dfaf2 100644 --- a/backend/src/plugins/UsernameSaver/UsernameSaverPlugin.ts +++ b/backend/src/plugins/UsernameSaver/UsernameSaverPlugin.ts @@ -2,14 +2,13 @@ import { zeppelinPlugin } from "../ZeppelinPluginBlueprint"; import { UsernameHistory } from "src/data/UsernameHistory"; import { Queue } from "src/Queue"; import { UsernameSaverPluginType } from "./types"; -import { MessageCreateEvt } from "./events/MessageCreateEvt"; -import { VoiceChannelJoinEvt } from "./events/VoiceChannelJoinEvt"; +import { MessageCreateUpdateUsernameEvt, VoiceChannelJoinUpdateUsernameEvt } from "./events/UpdateUsernameEvts"; export const UsernameSaverPlugin = zeppelinPlugin()("username_saver", { // prettier-ignore events: [ - MessageCreateEvt, - VoiceChannelJoinEvt, + MessageCreateUpdateUsernameEvt, + VoiceChannelJoinUpdateUsernameEvt, ], onLoad(pluginData) { diff --git a/backend/src/plugins/UsernameSaver/events/MessageCreateEvt.ts b/backend/src/plugins/UsernameSaver/events/MessageCreateEvt.ts deleted file mode 100644 index 14c6aded..00000000 --- a/backend/src/plugins/UsernameSaver/events/MessageCreateEvt.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { usernameEvent } from "../types"; -import { updateUsername } from "../updateUsername"; - -export const MessageCreateEvt = usernameEvent({ - event: "messageCreate", - - async listener(meta) { - if (meta.args.message.author.bot) return; - meta.pluginData.state.updateQueue.add(() => updateUsername(meta.pluginData, meta.args.message.author)); - }, -}); diff --git a/backend/src/plugins/UsernameSaver/events/UpdateUsernameEvts.ts b/backend/src/plugins/UsernameSaver/events/UpdateUsernameEvts.ts new file mode 100644 index 00000000..fbff87ea --- /dev/null +++ b/backend/src/plugins/UsernameSaver/events/UpdateUsernameEvts.ts @@ -0,0 +1,20 @@ +import { usernameEvent } from "../types"; +import { updateUsername } from "../updateUsername"; + +export const MessageCreateUpdateUsernameEvt = usernameEvent({ + event: "messageCreate", + + async listener(meta) { + if (meta.args.message.author.bot) return; + meta.pluginData.state.updateQueue.add(() => updateUsername(meta.pluginData, meta.args.message.author)); + }, +}); + +export const VoiceChannelJoinUpdateUsernameEvt = usernameEvent({ + event: "voiceChannelJoin", + + async listener(meta) { + if (meta.args.member.bot) return; + meta.pluginData.state.updateQueue.add(() => updateUsername(meta.pluginData, meta.args.member.user)); + }, +}); diff --git a/backend/src/plugins/UsernameSaver/events/VoiceChannelJoinEvt.ts b/backend/src/plugins/UsernameSaver/events/VoiceChannelJoinEvt.ts deleted file mode 100644 index e26ea435..00000000 --- a/backend/src/plugins/UsernameSaver/events/VoiceChannelJoinEvt.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { usernameEvent } from "../types"; -import { updateUsername } from "../updateUsername"; - -export const VoiceChannelJoinEvt = usernameEvent({ - event: "voiceChannelJoin", - - async listener(meta) { - if (meta.args.member.bot) return; - meta.pluginData.state.updateQueue.add(() => updateUsername(meta.pluginData, meta.args.member.user)); - }, -}); diff --git a/backend/src/plugins/WelcomeMessage/WelcomeMessagePlugin.ts b/backend/src/plugins/WelcomeMessage/WelcomeMessagePlugin.ts index b34e5659..786678a2 100644 --- a/backend/src/plugins/WelcomeMessage/WelcomeMessagePlugin.ts +++ b/backend/src/plugins/WelcomeMessage/WelcomeMessagePlugin.ts @@ -2,7 +2,7 @@ import { zeppelinPlugin } from "../ZeppelinPluginBlueprint"; import { PluginOptions } from "knub"; import { WelcomeMessagePluginType, ConfigSchema } from "./types"; import { GuildLogs } from "src/data/GuildLogs"; -import { GuildMemberAddEvt } from "./events/GuildMemberAddEvt"; +import { SendWelcomeMessageEvt } from "./events/SendWelcomeMessageEvt"; const defaultOptions: PluginOptions = { config: { @@ -18,7 +18,7 @@ export const WelcomeMessagePlugin = zeppelinPlugin()(" // prettier-ignore events: [ - GuildMemberAddEvt, + SendWelcomeMessageEvt, ], onLoad(pluginData) { diff --git a/backend/src/plugins/WelcomeMessage/events/GuildMemberAddEvt.ts b/backend/src/plugins/WelcomeMessage/events/SendWelcomeMessageEvt.ts similarity index 96% rename from backend/src/plugins/WelcomeMessage/events/GuildMemberAddEvt.ts rename to backend/src/plugins/WelcomeMessage/events/SendWelcomeMessageEvt.ts index 8e33080e..fcff7923 100644 --- a/backend/src/plugins/WelcomeMessage/events/GuildMemberAddEvt.ts +++ b/backend/src/plugins/WelcomeMessage/events/SendWelcomeMessageEvt.ts @@ -4,7 +4,7 @@ import { stripObjectToScalars, createChunkedMessage } from "src/utils"; import { LogType } from "src/data/LogType"; import { TextChannel } from "eris"; -export const GuildMemberAddEvt = welcomeEvent({ +export const SendWelcomeMessageEvt = welcomeEvent({ event: "guildMemberAdd", async listener(meta) { diff --git a/backend/src/plugins/availablePlugins.ts b/backend/src/plugins/availablePlugins.ts index d4f33249..b8e1b819 100644 --- a/backend/src/plugins/availablePlugins.ts +++ b/backend/src/plugins/availablePlugins.ts @@ -16,8 +16,8 @@ export const guildPlugins: Array> = [ LocateUserPlugin, PersistPlugin, PingableRolesPlugin, - NameHistoryPlugin, MessageSaverPlugin, + NameHistoryPlugin, RemindersPlugin, UsernameSaverPlugin, UtilityPlugin,