// Metro module 11760 (f11761). import { useMemo } from "react"; import UserSettingsProtoStore from "../user_settings/UserSettingsProtoStore"; import ConnectedAccountsStore from "../../stores/ConnectedAccountsStore"; import { HUB_PROGRESS_STEP_ORDER } from "./HubProgressBarConstants"; import { PlatformTypes } from "../../Constants"; import { useStateFromStores } from "../../_bundle/Module589"; import { HubProgressStep } from "../../_bundle/Module1306"; import { intl, t } from "../../intl/index.native"; import { assertNever } from "../../utils/GlobalUtils"; import { hasFlag } from "../../_bundle/Module1384"; export function getHubProgressTitleForStep(a0) { if (HubProgressStep.JOIN_GUILD === a0) { return intl.string(t.iNR25n); } if (HubProgressStep.INVITE_USER === a0) { return intl.string(t["3NlTYU"]); } if (HubProgressStep.CONTACT_SYNC === a0) { return intl.string(t.HFvFte); } if (HubProgressStep.NO_PROGRESS === a0) { return null; } assertNever(a0); } export function useHubProgressBarCompletedSteps(a0) { const id2 = a0?.id; let memo, stateFromStores; const id = id2; const stateFromStores2 = useStateFromStores([UserSettingsProtoStore], () => { const r3 = id == null; let r8 = 0; if (!r3) { const guilds = UserSettingsProtoStore.settings.guilds; let r12 = guilds == null ? void 0 : guilds.guilds[id]?.hubProgress; if (r12 == null) { r12 = 0; } r8 = r12; } return r8; }); memo = useMemo(() => (function convertHubProgressFlagSetToSet(a0) { const set = new Set(); for (const item of HUB_PROGRESS_STEP_ORDER) { if (hasFlag(a0, item)) { set.add(item); } } return set; })(stateFromStores2), [stateFromStores2]); stateFromStores = useStateFromStores([ConnectedAccountsStore], () => ConnectedAccountsStore.getLocalAccount(PlatformTypes.CONTACTS) != null); return useMemo(() => { if (stateFromStores) { const set = new Set(memo); set.add(HubProgressStep.CONTACT_SYNC); return set; } return memo; }, [memo, stateFromStores]); } export function getNextHubProgressStep(a0) { for (const item of HUB_PROGRESS_STEP_ORDER) { if (a0.has(item)) { continue; } return item; } return null; }