// Metro module 5658 (f5659). import ImpersonateStore from "../impersonate/ImpersonateStore"; import ChannelStore from "../../stores/ChannelStore"; import GuildStore from "../../stores/GuildStore"; import GuildOnboardingHomeSettingsStore from "./GuildOnboardingHomeSettingsStore"; import { GuildFeatures, ME } from "../../Constants"; import { ChannelFlags } from "../channel/ChannelConstants"; import useIsNewMember from "./useIsNewMember"; import { useStateFromStores } from "../../_bundle/defaultAreStatesEqual"; import { isFavoritesGuildId } from "../favorites/FavoritesUtils"; import { isGuildOnboardingSettingsAvailable } from "../guild_onboarding/GuildOnboardingUtils"; import guildHasOnboardingHome from "./guildHasOnboardingHome"; import { $forInKeys } from "../../_hermes/prelude"; export function useCanSeeOnboardingHome(a0) { const isNewMember = useIsNewMember(a0); let c14982_1 = isNewMember; return useStateFromStores([ChannelStore, GuildStore, ImpersonateStore], () => { let r34, hasFlag; if (a0 !== ME && !isFavoritesGuildId(a0)) { const guild = GuildStore.getGuild(a0); let r27 = !!(guild == null ? void 0 : guild.features.has(GuildFeatures.COMMUNITY)); if (r27) { if (ImpersonateStore.isFullServerPreview(a0)) { const id = guild.id; let r55 = GuildOnboardingHomeSettingsStore.getNewMemberActions(id); if (r55 == null) { r55 = []; } let r58 = r55.length > 0; const enabled = GuildOnboardingHomeSettingsStore.getEnabled(id); if (r58) { r58 = guild.features.has(GuildFeatures.COMMUNITY); } if (r58) { r58 = !(guild.features.has(GuildFeatures.GUILD_ONBOARDING) && !enabled); } r34 = r58; } else { r34 = isGuildOnboardingSettingsAvailable(a0) || !!guildHasOnboardingHome(guild); if (r34) { let r40 = c14982_1; if (!r40) { const mutableGuildChannelsForGuild = ChannelStore.getMutableGuildChannelsForGuild(a0); let r45 = false; const r46 = $forInKeys(mutableGuildChannelsForGuild); let r1 = 0; const length = r46.length; if (r46 !== void 0) { do { r45 = false; const r47 = r1 < length ? r46[r1++] : void 0; if (r47 === void 0) { break; } hasFlag = mutableGuildChannelsForGuild[r47].hasFlag(ChannelFlags.IS_GUILD_RESOURCE_CHANNEL); r45 = true; } while (!hasFlag); } r40 = r45; } r34 = r40; } } r27 = r34; } return r27; } return false; }, [a0, isNewMember]); } export function canSeeOnboardingHome(a0) { const guild = GuildStore.getGuild(a0); const isFullServerPreview = ImpersonateStore.isFullServerPreview(a0); if (guild == null) { return false; } if (a0 !== ME && !isFavoritesGuildId(a0)) { if (isFullServerPreview) { const id = guild.id; let r44 = GuildOnboardingHomeSettingsStore.getNewMemberActions(id); if (r44 == null) { r44 = []; } let r46 = r44.length > 0; const enabled = GuildOnboardingHomeSettingsStore.getEnabled(id); if (r46) { r46 = guild.features.has(GuildFeatures.COMMUNITY); } if (r46) { r46 = !(guild.features.has(GuildFeatures.GUILD_ONBOARDING) && !enabled); } return r46; } const r21 = isGuildOnboardingSettingsAvailable(a0) && guild.features.has(GuildFeatures.GUILD_ONBOARDING) && guild.features.has(GuildFeatures.GUILD_SERVER_GUIDE); return (guild.features.has(GuildFeatures.GUILD_ONBOARDING) && guild.features.has(GuildFeatures.GUILD_SERVER_GUIDE) || r21) && guild.features.has(GuildFeatures.COMMUNITY); } return false; }