87 lines
2.5 KiB
TypeScript
87 lines
2.5 KiB
TypeScript
// 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))
|
|
};
|
|
}
|