mirror of
https://github.com/ZeppelinBot/Zeppelin.git
synced 2025-05-10 12:25:02 +00:00
Update to new Knub 30 beta. Code clean-up.
This commit is contained in:
parent
5d579446c5
commit
2f470dc37a
299 changed files with 1075 additions and 1004 deletions
|
@ -1,17 +1,17 @@
|
|||
import { zeppelinPlugin } from "../ZeppelinPluginBlueprint";
|
||||
import { zeppelinGuildPlugin } from "../ZeppelinPluginBlueprint";
|
||||
import { PluginOptions } from "knub";
|
||||
import { ConfigSchema, LogsPluginType } from "./types";
|
||||
import DefaultLogMessages from "../../data/DefaultLogMessages.json";
|
||||
import { GuildLogs } from "src/data/GuildLogs";
|
||||
import { GuildSavedMessages } from "src/data/GuildSavedMessages";
|
||||
import { GuildArchives } from "src/data/GuildArchives";
|
||||
import { GuildCases } from "src/data/GuildCases";
|
||||
import { GuildLogs } from "../../data/GuildLogs";
|
||||
import { GuildSavedMessages } from "../../data/GuildSavedMessages";
|
||||
import { GuildArchives } from "../../data/GuildArchives";
|
||||
import { GuildCases } from "../../data/GuildCases";
|
||||
import { onMessageDelete } from "./util/onMessageDelete";
|
||||
import { onMessageDeleteBulk } from "./util/onMessageDeleteBulk";
|
||||
import { onMessageUpdate } from "./util/onMessageUpdate";
|
||||
import { LogsGuildMemberAddEvt } from "./events/LogsGuildMemberAddEvt";
|
||||
import { LogsGuildMemberRemoveEvt } from "./events/LogsGuildMemberRemoveEvt";
|
||||
import { LogsGuildMemberUpdateEvt, LogsUserUpdateEvt } from "./events/LogsUserUpdateEvts";
|
||||
import { LogsGuildMemberUpdateEvt } from "./events/LogsUserUpdateEvts";
|
||||
import { LogsChannelCreateEvt, LogsChannelDeleteEvt } from "./events/LogsChannelModifyEvts";
|
||||
import { LogsRoleCreateEvt, LogsRoleDeleteEvt } from "./events/LogsRoleModifyEvts";
|
||||
import { LogsVoiceJoinEvt, LogsVoiceLeaveEvt, LogsVoiceSwitchEvt } from "./events/LogsVoiceChannelEvts";
|
||||
|
@ -44,7 +44,7 @@ const defaultOptions: PluginOptions<LogsPluginType> = {
|
|||
],
|
||||
};
|
||||
|
||||
export const LogsPlugin = zeppelinPlugin<LogsPluginType>()("logs", {
|
||||
export const LogsPlugin = zeppelinGuildPlugin<LogsPluginType>()("logs", {
|
||||
showInDocs: true,
|
||||
info: {
|
||||
prettyName: "Logs",
|
||||
|
@ -58,7 +58,6 @@ export const LogsPlugin = zeppelinPlugin<LogsPluginType>()("logs", {
|
|||
LogsGuildMemberAddEvt,
|
||||
LogsGuildMemberRemoveEvt,
|
||||
LogsGuildMemberUpdateEvt,
|
||||
LogsUserUpdateEvt,
|
||||
LogsChannelCreateEvt,
|
||||
LogsChannelDeleteEvt,
|
||||
LogsRoleCreateEvt,
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
import { logsEvent } from "../types";
|
||||
import { stripObjectToScalars } from "src/utils";
|
||||
import { LogType } from "src/data/LogType";
|
||||
import { logsEvt } from "../types";
|
||||
import { stripObjectToScalars } from "../../../utils";
|
||||
import { LogType } from "../../../data/LogType";
|
||||
|
||||
export const LogsChannelCreateEvt = logsEvent({
|
||||
export const LogsChannelCreateEvt = logsEvt({
|
||||
event: "channelCreate",
|
||||
|
||||
async listener(meta) {
|
||||
|
@ -12,7 +12,7 @@ export const LogsChannelCreateEvt = logsEvent({
|
|||
},
|
||||
});
|
||||
|
||||
export const LogsChannelDeleteEvt = logsEvent({
|
||||
export const LogsChannelDeleteEvt = logsEvt({
|
||||
event: "channelDelete",
|
||||
|
||||
async listener(meta) {
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
import { logsEvent } from "../types";
|
||||
import { stripObjectToScalars, UnknownUser } from "src/utils";
|
||||
import { LogType } from "src/data/LogType";
|
||||
import { logsEvt } from "../types";
|
||||
import { stripObjectToScalars, UnknownUser } from "../../../utils";
|
||||
import { LogType } from "../../../data/LogType";
|
||||
import { Constants as ErisConstants } from "eris";
|
||||
import { safeFindRelevantAuditLogEntry } from "../../../utils/safeFindRelevantAuditLogEntry";
|
||||
|
||||
export const LogsGuildBanAddEvt = logsEvent({
|
||||
export const LogsGuildBanAddEvt = logsEvt({
|
||||
event: "guildBanAdd",
|
||||
|
||||
async listener(meta) {
|
||||
|
@ -29,7 +29,7 @@ export const LogsGuildBanAddEvt = logsEvent({
|
|||
},
|
||||
});
|
||||
|
||||
export const LogsGuildBanRemoveEvt = logsEvent({
|
||||
export const LogsGuildBanRemoveEvt = logsEvt({
|
||||
event: "guildBanRemove",
|
||||
|
||||
async listener(meta) {
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
import { logsEvent } from "../types";
|
||||
import { stripObjectToScalars } from "src/utils";
|
||||
import { LogType } from "src/data/LogType";
|
||||
import { logsEvt } from "../types";
|
||||
import { stripObjectToScalars } from "../../../utils";
|
||||
import { LogType } from "../../../data/LogType";
|
||||
import moment from "moment-timezone";
|
||||
import humanizeDuration from "humanize-duration";
|
||||
import { CasesPlugin } from "../../Cases/CasesPlugin";
|
||||
|
||||
export const LogsGuildMemberAddEvt = logsEvent({
|
||||
export const LogsGuildMemberAddEvt = logsEvt({
|
||||
event: "guildMemberAdd",
|
||||
|
||||
async listener(meta) {
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
import { logsEvent } from "../types";
|
||||
import { stripObjectToScalars } from "src/utils";
|
||||
import { LogType } from "src/data/LogType";
|
||||
import { logsEvt } from "../types";
|
||||
import { stripObjectToScalars } from "../../../utils";
|
||||
import { LogType } from "../../../data/LogType";
|
||||
|
||||
export const LogsGuildMemberRemoveEvt = logsEvent({
|
||||
export const LogsGuildMemberRemoveEvt = logsEvt({
|
||||
event: "guildMemberRemove",
|
||||
|
||||
async listener(meta) {
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
import { logsEvent } from "../types";
|
||||
import { stripObjectToScalars } from "src/utils";
|
||||
import { LogType } from "src/data/LogType";
|
||||
import { logsEvt } from "../types";
|
||||
import { stripObjectToScalars } from "../../../utils";
|
||||
import { LogType } from "../../../data/LogType";
|
||||
|
||||
export const LogsRoleCreateEvt = logsEvent({
|
||||
export const LogsRoleCreateEvt = logsEvt({
|
||||
event: "guildRoleCreate",
|
||||
|
||||
async listener(meta) {
|
||||
|
@ -12,7 +12,7 @@ export const LogsRoleCreateEvt = logsEvent({
|
|||
},
|
||||
});
|
||||
|
||||
export const LogsRoleDeleteEvt = logsEvent({
|
||||
export const LogsRoleDeleteEvt = logsEvt({
|
||||
event: "guildRoleDelete",
|
||||
|
||||
async listener(meta) {
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
import { logsEvent } from "../types";
|
||||
import { stripObjectToScalars, UnknownUser } from "src/utils";
|
||||
import { logsEvt } from "../types";
|
||||
import { stripObjectToScalars, UnknownUser } from "../../../utils";
|
||||
import { Constants as ErisConstants } from "eris";
|
||||
import { LogType } from "src/data/LogType";
|
||||
import { LogType } from "../../../data/LogType";
|
||||
import isEqual from "lodash.isequal";
|
||||
import diff from "lodash.difference";
|
||||
import { safeFindRelevantAuditLogEntry } from "../../../utils/safeFindRelevantAuditLogEntry";
|
||||
|
||||
export const LogsGuildMemberUpdateEvt = logsEvent({
|
||||
export const LogsGuildMemberUpdateEvt = logsEvt({
|
||||
event: "guildMemberUpdate",
|
||||
|
||||
async listener(meta) {
|
||||
|
@ -106,25 +106,4 @@ export const LogsGuildMemberUpdateEvt = logsEvent({
|
|||
},
|
||||
});
|
||||
|
||||
export const LogsUserUpdateEvt = logsEvent({
|
||||
event: "userUpdate",
|
||||
allowSelf: true,
|
||||
|
||||
async listener(meta) {
|
||||
const pluginData = meta.pluginData;
|
||||
const oldUser = meta.args.oldUser;
|
||||
const user = meta.args.user;
|
||||
|
||||
if (!oldUser) return;
|
||||
|
||||
if (!pluginData.guild.members.has(user.id)) return;
|
||||
|
||||
if (user.username !== oldUser.username || user.discriminator !== oldUser.discriminator) {
|
||||
pluginData.state.guildLogs.log(LogType.MEMBER_USERNAME_CHANGE, {
|
||||
user: stripObjectToScalars(user),
|
||||
oldName: `${oldUser.username}#${oldUser.discriminator}`,
|
||||
newName: `${user.username}#${user.discriminator}`,
|
||||
});
|
||||
}
|
||||
},
|
||||
});
|
||||
// TODO: Reimplement USERNAME_CHANGE
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
import { logsEvent } from "../types";
|
||||
import { stripObjectToScalars } from "src/utils";
|
||||
import { LogType } from "src/data/LogType";
|
||||
import { logsEvt } from "../types";
|
||||
import { stripObjectToScalars } from "../../../utils";
|
||||
import { LogType } from "../../../data/LogType";
|
||||
|
||||
export const LogsVoiceJoinEvt = logsEvent({
|
||||
export const LogsVoiceJoinEvt = logsEvt({
|
||||
event: "voiceChannelJoin",
|
||||
|
||||
async listener(meta) {
|
||||
|
@ -13,7 +13,7 @@ export const LogsVoiceJoinEvt = logsEvent({
|
|||
},
|
||||
});
|
||||
|
||||
export const LogsVoiceLeaveEvt = logsEvent({
|
||||
export const LogsVoiceLeaveEvt = logsEvt({
|
||||
event: "voiceChannelLeave",
|
||||
|
||||
async listener(meta) {
|
||||
|
@ -24,7 +24,7 @@ export const LogsVoiceLeaveEvt = logsEvent({
|
|||
},
|
||||
});
|
||||
|
||||
export const LogsVoiceSwitchEvt = logsEvent({
|
||||
export const LogsVoiceSwitchEvt = logsEvt({
|
||||
event: "voiceChannelSwitch",
|
||||
|
||||
async listener(meta) {
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
import * as t from "io-ts";
|
||||
import { BasePluginType, eventListener } from "knub";
|
||||
import { TRegex } from "src/validatorUtils";
|
||||
import { GuildLogs } from "src/data/GuildLogs";
|
||||
import { GuildSavedMessages } from "src/data/GuildSavedMessages";
|
||||
import { GuildArchives } from "src/data/GuildArchives";
|
||||
import { GuildCases } from "src/data/GuildCases";
|
||||
import { BasePluginType, guildEventListener } from "knub";
|
||||
import { TRegex } from "../../validatorUtils";
|
||||
import { GuildLogs } from "../../data/GuildLogs";
|
||||
import { GuildSavedMessages } from "../../data/GuildSavedMessages";
|
||||
import { GuildArchives } from "../../data/GuildArchives";
|
||||
import { GuildCases } from "../../data/GuildCases";
|
||||
import { tMessageContent, tNullable } from "../../utils";
|
||||
import { RegExpRunner } from "../../RegExpRunner";
|
||||
|
||||
|
@ -60,4 +60,4 @@ export interface LogsPluginType extends BasePluginType {
|
|||
};
|
||||
}
|
||||
|
||||
export const logsEvent = eventListener<LogsPluginType>();
|
||||
export const logsEvt = guildEventListener<LogsPluginType>();
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import { PluginData } from "knub";
|
||||
import { GuildPluginData } from "knub";
|
||||
import { LogsPluginType, TLogFormats } from "../types";
|
||||
import { LogType } from "src/data/LogType";
|
||||
import { LogType } from "../../../data/LogType";
|
||||
import {
|
||||
verboseUserMention,
|
||||
verboseUserName,
|
||||
|
@ -8,15 +8,15 @@ import {
|
|||
messageSummary,
|
||||
resolveMember,
|
||||
renderRecursively,
|
||||
} from "src/utils";
|
||||
import { SavedMessage } from "src/data/entities/SavedMessage";
|
||||
import { renderTemplate, TemplateParseError } from "src/templateFormatter";
|
||||
import { logger } from "src/logger";
|
||||
} from "../../../utils";
|
||||
import { SavedMessage } from "../../../data/entities/SavedMessage";
|
||||
import { renderTemplate, TemplateParseError } from "../../../templateFormatter";
|
||||
import { logger } from "../../../logger";
|
||||
import moment from "moment-timezone";
|
||||
import { TimeAndDatePlugin } from "../../TimeAndDate/TimeAndDatePlugin";
|
||||
|
||||
export async function getLogMessage(
|
||||
pluginData: PluginData<LogsPluginType>,
|
||||
pluginData: GuildPluginData<LogsPluginType>,
|
||||
type: LogType,
|
||||
data: any,
|
||||
formats?: TLogFormats,
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
import { PluginData } from "knub";
|
||||
import { GuildPluginData } from "knub";
|
||||
import { LogsPluginType, TLogChannelMap } from "../types";
|
||||
import { LogType } from "src/data/LogType";
|
||||
import { LogType } from "../../../data/LogType";
|
||||
import { TextChannel } from "eris";
|
||||
import { createChunkedMessage, noop } from "src/utils";
|
||||
import { createChunkedMessage, noop } from "../../../utils";
|
||||
import { getLogMessage } from "./getLogMessage";
|
||||
import { allowTimeout } from "../../../RegExpRunner";
|
||||
|
||||
const excludedUserProps = ["user", "member", "mod"];
|
||||
|
||||
export async function log(pluginData: PluginData<LogsPluginType>, type: LogType, data: any) {
|
||||
export async function log(pluginData: GuildPluginData<LogsPluginType>, type: LogType, data: any) {
|
||||
const logChannels: TLogChannelMap = pluginData.config.get().channels;
|
||||
const typeStr = LogType[type];
|
||||
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
import { SavedMessage } from "src/data/entities/SavedMessage";
|
||||
import { SavedMessage } from "../../../data/entities/SavedMessage";
|
||||
import { Attachment } from "eris";
|
||||
import { useMediaUrls, stripObjectToScalars, resolveUser } from "src/utils";
|
||||
import { LogType } from "src/data/LogType";
|
||||
import { useMediaUrls, stripObjectToScalars, resolveUser } from "../../../utils";
|
||||
import { LogType } from "../../../data/LogType";
|
||||
import moment from "moment-timezone";
|
||||
import { PluginData } from "knub";
|
||||
import { GuildPluginData } from "knub";
|
||||
import { LogsPluginType } from "../types";
|
||||
import { TimeAndDatePlugin } from "../../TimeAndDate/TimeAndDatePlugin";
|
||||
|
||||
export async function onMessageDelete(pluginData: PluginData<LogsPluginType>, savedMessage: SavedMessage) {
|
||||
export async function onMessageDelete(pluginData: GuildPluginData<LogsPluginType>, savedMessage: SavedMessage) {
|
||||
const user = await resolveUser(pluginData.client, savedMessage.user_id);
|
||||
const channel = pluginData.guild.channels.get(savedMessage.channel_id);
|
||||
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
import { PluginData } from "knub";
|
||||
import { GuildPluginData } from "knub";
|
||||
import { LogsPluginType } from "../types";
|
||||
import { SavedMessage } from "src/data/entities/SavedMessage";
|
||||
import { LogType } from "src/data/LogType";
|
||||
import { getBaseUrl } from "src/pluginUtils";
|
||||
import { SavedMessage } from "../../../data/entities/SavedMessage";
|
||||
import { LogType } from "../../../data/LogType";
|
||||
import { getBaseUrl } from "../../../pluginUtils";
|
||||
|
||||
export async function onMessageDeleteBulk(pluginData: PluginData<LogsPluginType>, savedMessages: SavedMessage[]) {
|
||||
export async function onMessageDeleteBulk(pluginData: GuildPluginData<LogsPluginType>, savedMessages: SavedMessage[]) {
|
||||
const channel = pluginData.guild.channels.get(savedMessages[0].channel_id);
|
||||
const archiveId = await pluginData.state.archives.createFromSavedMessages(savedMessages, pluginData.guild);
|
||||
const archiveUrl = pluginData.state.archives.getUrl(getBaseUrl(pluginData), archiveId);
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
import { PluginData } from "knub";
|
||||
import { GuildPluginData } from "knub";
|
||||
import { LogsPluginType } from "../types";
|
||||
import { SavedMessage } from "src/data/entities/SavedMessage";
|
||||
import { SavedMessage } from "../../../data/entities/SavedMessage";
|
||||
import { Embed } from "eris";
|
||||
import { LogType } from "src/data/LogType";
|
||||
import { stripObjectToScalars, resolveUser } from "src/utils";
|
||||
import { LogType } from "../../../data/LogType";
|
||||
import { stripObjectToScalars, resolveUser } from "../../../utils";
|
||||
import cloneDeep from "lodash.clonedeep";
|
||||
|
||||
export async function onMessageUpdate(
|
||||
pluginData: PluginData<LogsPluginType>,
|
||||
pluginData: GuildPluginData<LogsPluginType>,
|
||||
savedMessage: SavedMessage,
|
||||
oldSavedMessage: SavedMessage,
|
||||
) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue