3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-05-10 12:25:02 +00:00

Include Sticker and Emoji events in Logs

This commit is contained in:
Dark 2021-07-29 01:02:29 +02:00
parent 1e69da7cbc
commit 3886d2d1dd
No known key found for this signature in database
GPG key ID: 384C4B4F5B1E25A8
7 changed files with 169 additions and 1 deletions

View file

@ -20,6 +20,14 @@ import {
LogsStageInstanceDeleteEvt,
LogsStageInstanceUpdateEvt,
} from "./events/LogsStageInstanceModifyEvts";
import {
LogsEmojiCreateEvt,
LogsEmojiDeleteEvt,
LogsEmojiUpdateEvt,
LogsStickerCreateEvt,
LogsStickerDeleteEvt,
LogsStickerUpdateEvt,
} from "./events/LogsStickerEmojiModifyEvts";
import { LogsThreadCreateEvt, LogsThreadDeleteEvt, LogsThreadUpdateEvt } from "./events/LogsThreadModifyEvts";
import { LogsGuildMemberUpdateEvt } from "./events/LogsUserUpdateEvts";
import { LogsVoiceStateUpdateEvt } from "./events/LogsVoiceChannelEvts";
@ -81,6 +89,12 @@ export const LogsPlugin = zeppelinGuildPlugin<LogsPluginType>()({
LogsThreadCreateEvt,
LogsThreadDeleteEvt,
LogsThreadUpdateEvt,
LogsEmojiCreateEvt,
LogsEmojiDeleteEvt,
LogsEmojiUpdateEvt,
LogsStickerCreateEvt,
LogsStickerDeleteEvt,
LogsStickerUpdateEvt,
],
public: {

View file

@ -0,0 +1,82 @@
import { LogType } from "../../../data/LogType";
import { differenceToString, getScalarDifference } from "../../../utils";
import {
channelToConfigAccessibleChannel,
emojiToConfigAccessibleEmoji,
stickerToConfigAccessibleSticker,
} from "../../../utils/configAccessibleObjects";
import { logsEvt } from "../types";
export const LogsEmojiCreateEvt = logsEvt({
event: "emojiCreate",
async listener(meta) {
meta.pluginData.state.guildLogs.log(LogType.EMOJI_CREATE, {
emoji: emojiToConfigAccessibleEmoji(meta.args.emoji),
});
},
});
export const LogsEmojiDeleteEvt = logsEvt({
event: "emojiDelete",
async listener(meta) {
meta.pluginData.state.guildLogs.log(LogType.EMOJI_DELETE, {
emoji: emojiToConfigAccessibleEmoji(meta.args.emoji),
});
},
});
export const LogsEmojiUpdateEvt = logsEvt({
event: "emojiUpdate",
async listener(meta) {
const diff = getScalarDifference(meta.args.oldEmoji, meta.args.newEmoji);
const differenceString = differenceToString(diff);
meta.pluginData.state.guildLogs.log(LogType.EMOJI_UPDATE, {
oldEmoji: emojiToConfigAccessibleEmoji(meta.args.oldEmoji),
newEmoji: emojiToConfigAccessibleEmoji(meta.args.newEmoji),
differenceString,
});
},
});
export const LogsStickerCreateEvt = logsEvt({
event: "stickerCreate",
async listener(meta) {
meta.pluginData.state.guildLogs.log(LogType.STICKER_CREATE, {
thread: stickerToConfigAccessibleSticker(meta.args.sticker),
});
},
});
export const LogsStickerDeleteEvt = logsEvt({
event: "stickerDelete",
async listener(meta) {
meta.pluginData.state.guildLogs.log(LogType.STICKER_DELETE, {
thread: stickerToConfigAccessibleSticker(meta.args.sticker),
});
},
});
export const LogsStickerUpdateEvt = logsEvt({
event: "stickerUpdate",
async listener(meta) {
const diff = getScalarDifference(meta.args.oldSticker, meta.args.newSticker);
const differenceString = differenceToString(diff);
meta.pluginData.state.guildLogs.log(
LogType.STICKER_UPDATE,
{
oldThread: stickerToConfigAccessibleSticker(meta.args.oldSticker),
newThread: stickerToConfigAccessibleSticker(meta.args.newSticker),
differenceString,
},
meta.args.newSticker.id,
);
},
});