// Metro module 13108 (f13109). import { useMemo, useEffect } from "react"; import GuildMemberCountStore from "../../../stores/GuildMemberCountStore"; import GuildHeaderCountsStore from "./GuildHeaderCountsStore"; import { useStateFromStores } from "../../../_bundle/Module589"; function $mk90818($env) { return () => { const r2 = $env.$parent; return (0, r2[0])(r2[2][3]).throttle($mk109125($env), 3000); }; } function $mk90819($env) { return () => $mk109126($env); } function $mk90820($env) { return () => { const r2 = $env; const r3 = r2[2]; if (r3 > 0) { (0, r2[3])(r3); } }; } function $mk109125($env) { return (a0) => { const r4 = $env; const r1 = $env.$parent; (0, r1[1])(r1[2][4]).dispatch({ type: r4[0], count: a0, guildId: r4[1] }); }; } function $mk109126($env) { return () => $env[3].cancel(); } let env9065 = {}; export function useGuildHeaderCounts(a0) { let env20382; let c20383_0; let env20384; const stateFromStores = useStateFromStores([GuildMemberCountStore], () => { let r7 = GuildMemberCountStore.getMemberCount(a0); if (r7 == null) { r7 = 0; } return r7; }); const r16 = env20382 = { $parent: env9065 }; env20382[0] = "GUILD_HEADER_MEMBER_COUNT"; env20382[1] = a0; env20382[2] = stateFromStores; env20382[3] = void 0; const memo = useMemo($mk90818(r16), ["GUILD_HEADER_MEMBER_COUNT", a0]); env20382[3] = memo; useEffect($mk90819(r16), [memo]); useEffect($mk90820(r16), [memo, stateFromStores]); const stateFromStores2 = useStateFromStores([GuildHeaderCountsStore], () => GuildHeaderCountsStore.getMemberCount(a0)); c20383_0 = a0; const stateFromStores3 = useStateFromStores([GuildMemberCountStore], () => { let r7 = GuildMemberCountStore.getOnlineCount(c20383_0); if (r7 == null) { r7 = 0; } return r7; }); const r43 = env20384 = { $parent: env9065 }; env20384[0] = "GUILD_HEADER_ONLINE_COUNT"; env20384[1] = a0; env20384[2] = stateFromStores3; env20384[3] = void 0; const memo2 = useMemo($mk90818(r43), ["GUILD_HEADER_ONLINE_COUNT", a0]); env20384[3] = memo2; useEffect($mk90819(r43), [memo2]); useEffect($mk90820(r43), [memo2, stateFromStores3]); return { memberCount: stateFromStores2, onlineCount: useStateFromStores([GuildHeaderCountsStore], () => GuildHeaderCountsStore.getOnlineCount(c20383_0)), activeChannelsCount: useStateFromStores([GuildHeaderCountsStore], () => GuildHeaderCountsStore.getActiveChannelsCount(a0)) }; }