// Metro module 11555 (f11556). import GuildMemberStore, { getGuildIdFromCommunicationDisabledUserKey, getUserIdFromCommunicationDisabledUserKey } from "../../stores/GuildMemberStore"; import UserStore from "../../stores/UserStore"; import { isMemberCommunicationDisabled, isCommunicationDisabled } from "./CommunicationDisabledUtils"; import Dispatcher from "../../Dispatcher"; import AutomaticLifecycleManager from "../../lib/AutomaticLifecycleManager"; let c7882_7; const clearGuildMemberTimeout = function clearGuildMemberTimeout(guildIdFromCommunicationDisabledUserKey, userIdFromCommunicationDisabledUserKey) { const member = GuildMemberStore.getMember(guildIdFromCommunicationDisabledUserKey, userIdFromCommunicationDisabledUserKey); const user = UserStore.getUser(userIdFromCommunicationDisabledUserKey); if (member != null && user != null && !isMemberCommunicationDisabled(member)) { let nick = member.nick; if (nick == null) { nick = user.username; } let avatar = member.avatar; if (avatar == null) { avatar = void 0; } const avatarDecoration = member.avatarDecoration != null ? { ...member.avatarDecoration } : void 0; let premiumSince = member.premiumSince; if (premiumSince == null) { premiumSince = void 0; } let isPending = member.isPending; if (isPending == null) { isPending = false; } let email = user.email; if (email == null) { email = void 0; } let phone = user.phone; if (phone == null) { phone = void 0; } Dispatcher.dispatch({ type: "GUILD_MEMBER_UPDATE", ...{ ...member, guildId: guildIdFromCommunicationDisabledUserKey, nick, avatar, avatarDecoration, premiumSince, isPending, user: { ...user, email, phone }, communicationDisabledUntil: null } }); } }; c7882_7 = null; class CommunicationDisabledManager extends AutomaticLifecycleManager { clearGuildMemberTimeout = clearGuildMemberTimeout; _initialize() { c7882_7 = setInterval(() => { const communicationDisabledUserMap = GuildMemberStore.getCommunicationDisabledUserMap(); Object.keys(communicationDisabledUserMap).forEach((item) => { const guildIdFromCommunicationDisabledUserKey = getGuildIdFromCommunicationDisabledUserKey(item); const userIdFromCommunicationDisabledUserKey = getUserIdFromCommunicationDisabledUserKey(item); if (!isCommunicationDisabled(communicationDisabledUserMap[item])) { clearGuildMemberTimeout(guildIdFromCommunicationDisabledUserKey, userIdFromCommunicationDisabledUserKey); } }); }, 10000); } _terminate() { clearInterval(c7882_7); } } const communicationDisabledManager = new CommunicationDisabledManager(); export default communicationDisabledManager;