Typed log functions + more

This commit is contained in:
Dragory 2021-08-18 01:51:42 +03:00
parent d2ac700143
commit bed6589d48
No known key found for this signature in database
GPG key ID: 5F387BA66DF8AAC1
166 changed files with 4021 additions and 869 deletions

View file

@ -1,24 +1,28 @@
import { Snowflake } from "discord.js";
import { BaseGuildTextChannel, Snowflake, ThreadChannel } from "discord.js";
import { GuildPluginData } from "knub";
import { SavedMessage } from "../../../data/entities/SavedMessage";
import { LogType } from "../../../data/LogType";
import { getBaseUrl } from "../../../pluginUtils";
import { LogsPluginType } from "../types";
import { logMessageDeleteBulk } from "../logFunctions/logMessageDeleteBulk";
import { isLogIgnored } from "./isLogIgnored";
export async function onMessageDeleteBulk(pluginData: GuildPluginData<LogsPluginType>, savedMessages: SavedMessage[]) {
const channel = pluginData.guild.channels.cache.get(savedMessages[0].channel_id as Snowflake);
if (isLogIgnored(pluginData, LogType.MESSAGE_DELETE, savedMessages[0].id)) {
return;
}
const channel = pluginData.guild.channels.cache.get(savedMessages[0].channel_id as Snowflake) as
| BaseGuildTextChannel
| ThreadChannel;
const archiveId = await pluginData.state.archives.createFromSavedMessages(savedMessages, pluginData.guild);
const archiveUrl = pluginData.state.archives.getUrl(getBaseUrl(pluginData), archiveId);
const authorIds = Array.from(new Set(savedMessages.map(item => `\`${item.user_id}\``))).join(", ");
const authorIds = Array.from(new Set(savedMessages.map(item => `\`${item.user_id}\``)));
pluginData.state.guildLogs.log(
LogType.MESSAGE_DELETE_BULK,
{
count: savedMessages.length,
authorIds,
channel,
archiveUrl,
},
savedMessages[0].id,
);
logMessageDeleteBulk(pluginData, {
count: savedMessages.length,
authorIds,
channel,
archiveUrl,
});
}