// Metro module 7752 (f7753). import GuildMemberStore from "../../stores/GuildMemberStore"; import GuildVerificationStore from "../../stores/GuildVerificationStore"; import PermissionStore from "../../stores/PermissionStore"; import UserStore from "../../stores/UserStore"; import { MessageFlags, MessageStates, MessageTypes, Permissions } from "../../Constants"; import { hasFlag } from "../../_bundle/Module1384"; import { isMemberCommunicationDisabled } from "../guild_communication_disabled/CommunicationDisabledUtils"; import { useStateFromStores } from "../../_bundle/Module589"; const canReactToMessageInternal = function canReactToMessageInternal(a0, a1, a2) { const [r29, r10, r8, r9] = a2; const guildId = a1.getGuildId(); const currentUser = r29.getCurrentUser(); const r46 = guildId != null ? currentUser?.id != null ? r10.getMember(guildId, currentUser.id) : null : null; return (guildId != null && r8.canChatInGuild(guildId) && r9.can(Permissions.ADD_REACTIONS, a1) || a1.isPrivate()) && !a1.isArchivedLockedThread() && a0.state !== MessageStates.SEND_FAILED && a0.type !== MessageTypes.THREAD_STARTER_MESSAGE && !hasFlag(a0.flags, MessageFlags.EPHEMERAL) && !isMemberCommunicationDisabled(r46); }; export function canReactToMessage(a0, a1) { return canReactToMessageInternal(a0, a1, [UserStore, GuildMemberStore, GuildVerificationStore, PermissionStore]); } export function useCanReactToMessage(c16008_0, c16008_1) { return useStateFromStores([UserStore, GuildMemberStore, GuildVerificationStore, PermissionStore], () => canReactToMessageInternal(c16008_0, c16008_1, [UserStore, GuildMemberStore, GuildVerificationStore, PermissionStore])); }