// Metro module 15003 (f15004). import * as Module19 from "react"; import { useMemo } from "react"; import UserGuildJoinRequestStore from "../../guild_member_verification/UserGuildJoinRequestStore"; import { getGuildIconSource, getGuildIconURL } from "../../../records/GuildRecord"; import SelectedGuildStore from "../../../stores/SelectedGuildStore"; import SortedGuildStore from "../../../stores/SortedGuildStore"; import { createStyles } from "../../../design/components/Styles/native/createStyles"; import Module712 from "../../../_bundle/Module712"; import GuildsBarAnimatedItemWrapper, { useGuildsBarAnimatedWrapperStyles } from "./GuildsBarAnimatedItemWrapper"; import { useToken } from "../../../design/tokens/native/useToken"; import { useStateFromStores } from "../../../_bundle/Module589"; import GuildIcon, { ImageSizes, GuildIconSizes } from "../../guild/native/GuildIcon"; import isGuildsBarGuildDataEqual from "./utils/isGuildsBarGuildDataEqual"; import useGuildsBarBottomRightBadge from "./hooks/useGuildsBarBottomRightBadge"; import { GuildJoinRequestApplicationStatuses } from "../../guild_member_verification/MemberVerificationTypes"; import { openMemberVerificationIncompleteAlert, openMemberVerificationPendingAlert, openMemberVerificationRejectedAlert } from "../../guild_member_verification/native/MemberVerificationAlertActionCreators"; import transitionGuildsBarToGuildOrOpenSelectedChannel from "./utils/transitionGuildsBarToGuildOrOpenSelectedChannel"; import usePreloadedGuildAsset from "./hooks/usePreloadedGuildAsset"; import getGuildsBarGuildMenuItems from "./utils/getGuildsBarGuildMenuItems"; import { useSharedValue } from "../../reanimated/ReanimatedRexport"; import HomeDrawerGuildRow from "../../home_drawer/native/HomeDrawerGuildRow"; import FastImage from "../../../components_native/common/FastImage"; const useStyles = createStyles({ guildIcon: { width: Module712.modules.mobile.GUILD_BAR_ITEM_SIZE, height: Module712.modules.mobile.GUILD_BAR_ITEM_SIZE } }); const r46 = Module19.memo(function GuildsBarPendingGuild(props) { let stateFromStores2, stateFromStores3; const guildId = props.guildId; stateFromStores2 = void 0; stateFromStores3 = void 0; const styles = useStyles(); const styles2 = useGuildsBarAnimatedWrapperStyles({ disableSelectedColor: true, disableBGColor: true }); const token = useToken(Module712.modules.mobile.GUILD_BAR_ITEM_SIZE); const stateFromStores = useStateFromStores([SelectedGuildStore], () => SelectedGuildStore.getGuildId() === guildId, [guildId]); stateFromStores2 = useStateFromStores([UserGuildJoinRequestStore], () => UserGuildJoinRequestStore.getRequest(guildId), [guildId]); const stateFromStores4 = useStateFromStores([UserGuildJoinRequestStore], () => { const joinRequestGuild = UserGuildJoinRequestStore.getJoinRequestGuild(guildId); const icon = joinRequestGuild != null ? getGuildIconURL(joinRequestGuild, token, stateFromStores) : void 0; return { guildName: joinRequestGuild?.name, icon, asset: icon != null ? joinRequestGuild != null ? getGuildIconSource(joinRequestGuild, ImageSizes[GuildIconSizes.LARGE], stateFromStores) : void 0 : void 0 }; }, [guildId, token, stateFromStores], isGuildsBarGuildDataEqual); const { asset, icon, guildName } = stateFromStores4; const guildsBarBottomRightBadge = useGuildsBarBottomRightBadge({ mentionCount: 0, joinRequestState: stateFromStores2?.applicationStatus }); const { badge, cutouts } = guildsBarBottomRightBadge; const memo = useMemo(() => ({ onPress: () => { const applicationStatus = stateFromStores2?.applicationStatus; if (GuildJoinRequestApplicationStatuses.STARTED === applicationStatus) { openMemberVerificationIncompleteAlert(guildId); } else if (GuildJoinRequestApplicationStatuses.SUBMITTED === applicationStatus) { openMemberVerificationPendingAlert(guildId); } else if (GuildJoinRequestApplicationStatuses.APPROVED === applicationStatus) { transitionGuildsBarToGuildOrOpenSelectedChannel(guildId); } else if (GuildJoinRequestApplicationStatuses.REJECTED === applicationStatus) { openMemberVerificationRejectedAlert({ guildId, canWithdraw: true }); } } }), [guildId, stateFromStores2?.applicationStatus]); const preloadedGuildAsset = usePreloadedGuildAsset(guildId, icon, asset); stateFromStores3 = useStateFromStores([SortedGuildStore], () => SortedGuildStore.getGuildsTree().version); const memo2 = useMemo(() => { const guildsBarGuildMenuItems = getGuildsBarGuildMenuItems(guildId, stateFromStores3); let c27882_0 = guildsBarGuildMenuItems; return { accessibilityActions: guildsBarGuildMenuItems.map((guildsBarGuildMenuItem) => ({ name: guildsBarGuildMenuItem.label, label: guildsBarGuildMenuItem.label })), onAccessibilityAction: (c30817_0) => { const r7 = c27882_0.find((item) => item.label === c30817_0.nativeEvent.actionName); if (r7 != null) { const action = r7.action; if (action != null) { action.call(r7); } } } }; }, [guildId, stateFromStores3]); const { accessibilityActions, onAccessibilityAction: onAccessibilityAction2 } = memo2; const sharedValue = useSharedValue(guildId); let label = guildName; if (label == null) { label = ""; } return }> {preloadedGuildAsset != null ? : } ; }); export default r46;