mirror of
https://github.com/ZeppelinBot/Zeppelin.git
synced 2025-05-22 09:15:03 +00:00
20 lines
647 B
TypeScript
20 lines
647 B
TypeScript
import { memberHasMutedRole } from "../functions/memberHasMutedRole";
|
|
import { mutesEvt } from "../types";
|
|
|
|
/**
|
|
* Clear active mute if the mute role is removed manually
|
|
*/
|
|
export const ClearActiveMuteOnRoleRemovalEvt = mutesEvt({
|
|
event: "guildMemberUpdate",
|
|
async listener({ pluginData, args: { oldMember, newMember: member } }) {
|
|
const muteRole = pluginData.config.get().mute_role;
|
|
if (!muteRole) return;
|
|
|
|
const mute = await pluginData.state.mutes.findExistingMuteForUserId(member.id);
|
|
if (!mute) return;
|
|
|
|
if (!memberHasMutedRole(pluginData, member)) {
|
|
await pluginData.state.mutes.clear(muteRole);
|
|
}
|
|
},
|
|
});
|