automod: add triggers for mod actions

This commit is contained in:
Dragory 2021-02-14 16:58:02 +02:00
parent 5ffc3e7cc4
commit 93912541b4
No known key found for this signature in database
GPG key ID: 5F387BA66DF8AAC1
34 changed files with 412 additions and 3 deletions

View file

@ -0,0 +1,27 @@
import { GuildPluginData } from "knub";
import { AutomodContext, AutomodPluginType } from "../types";
import { runAutomod } from "../functions/runAutomod";
import { resolveUser, UnknownUser } from "../../../utils";
import { ModActionType } from "../../ModActions/types";
export async function runAutomodOnModAction(
pluginData: GuildPluginData<AutomodPluginType>,
modAction: ModActionType,
userId: string,
reason?: string,
) {
const user = await resolveUser(pluginData.client, userId);
const context: AutomodContext = {
timestamp: Date.now(),
user: user instanceof UnknownUser ? undefined : user,
modAction: {
type: modAction,
reason,
},
};
pluginData.state.queue.add(async () => {
await runAutomod(pluginData, context);
});
}