// Metro module 16277 (f16278). import { useCallback, useEffect, useMemo } from "react"; import { View } from "react-native"; import { useContactSyncModalStore } from "../../../contact_sync/native/ContactSyncModalStore"; import UserStore from "../../../../stores/UserStore"; import { ModalAnimation } from "../../../../Constants"; import { createStyles } from "../../../../design/components/Styles/native/createStyles"; import Module712 from "../../../../_bundle/Module712"; import { NAV_BAR_HEIGHT } from "../../../../design/components/Navigator/native/NavigatorConstants.native"; import { useNavigation } from "../../../../design/components/Navigator/native/useNavigation.native"; import { useStateFromStores } from "../../../../_bundle/Module589"; import ContactSyncActionCreators from "../../../contact_sync/native/ContactSyncActionCreators"; import { DiscoverabilityScenes } from "../../../../ConstantsIOS"; import RedesignDiscoverabilityLanding from "./RedesignDiscoverabilityLanding"; import { startContactSyncForDiscoverability } from "../NUFActionCreators"; import ContactSyncNameInput from "../../../contact_sync/native/components/ContactSyncNameInput"; import { ImpressionNames } from "../../../../_bundle/Module503"; import SkipHeaderButton from "./SkipHeaderButton"; import { Navigator } from "../../../../design/components/Navigator/native/Navigator.native"; import { intl, t } from "../../../../intl/index.native"; let useStyles, DiscoverabilityNameScene; const DiscoverabilityLandingScene = function DiscoverabilityLandingScene(props) { let allowPhone, name, allowEmail, allowEmail2; const onComplete = props.onComplete; allowPhone = void 0; name = void 0; allowEmail = void 0; allowEmail2 = void 0; const navigation = useNavigation(); const stateFromStores = useStateFromStores([UserStore], () => UserStore.getCurrentUser()?.phone); const contactSyncModalStore = useContactSyncModalStore(); allowPhone = contactSyncModalStore.allowPhone; name = contactSyncModalStore.name; allowEmail = contactSyncModalStore.allowEmail; allowEmail2 = allowPhone ? allowPhone : allowEmail; return { ContactSyncActionCreators.updateDiscoverability({ phone: allowPhone, email: allowEmail }); if (allowEmail2 && (stateFromStores != null && (allowPhone && name == null))) { navigation.push(DiscoverabilityScenes.NAME); } else { onComplete(); } }, [allowPhone, allowEmail, allowEmail2, stateFromStores, name, navigation, onComplete])} />; }; DiscoverabilityNameScene = function DiscoverabilityNameScene(props) { const onComplete2 = props.onComplete; const styles = useStyles(); const contactSyncModalStore = useContactSyncModalStore(); let name2 = contactSyncModalStore.name; const allowPhone2 = contactSyncModalStore.allowPhone; useEffect(() => { if (!allowPhone2) { onComplete2(); } }, [allowPhone2, onComplete2]); const callback = useCallback((a0) => { startContactSyncForDiscoverability(a0); onComplete2(); }, [onComplete2]); if (name2 == null) { name2 = ""; } return ; }; const RedesignDiscoverabilityModal = function RedesignDiscoverabilityModal(props) { const onComplete3 = props.route.params.onComplete; return { let r8 = onComplete3; if (onComplete3 == null) { r8 = () => {}; } const onComplete4 = r8; const r10 = {}; r10[DiscoverabilityScenes.LANDING] = { ignoreKeyboard: true, impressionName: ImpressionNames.DISCOVERABILITY, fullscreen: true, headerLeft: () => null, headerTitle: () => null, headerRight: (a0) => onComplete4(true)} />, render: () => }; r10[DiscoverabilityScenes.NAME] = { ignoreKeyboard: true, impressionName: ImpressionNames.DISCOVERABILITY, fullscreen: true, headerTitle: () => null, render: () => }; return r10; }, [onComplete3])} initialRouteName={DiscoverabilityScenes.LANDING} headerBackTitle={intl.string(t["13/7kX"])} />; }; useStyles = createStyles({ header: { borderBottomWidth: 0, backgroundColor: Module712.colors.BACKGROUND_BASE_LOW, shadowColor: "transparent" }, container: { flex: 1, backgroundColor: Module712.colors.BACKGROUND_BASE_LOW, justifyContent: "center", paddingBottom: 44, paddingTop: NAV_BAR_HEIGHT + 32 } }); RedesignDiscoverabilityModal.modalConfig = { animation: ModalAnimation.SLIDE_IN_OUT }; export default RedesignDiscoverabilityModal;