112 lines
4.0 KiB
TypeScript
112 lines
4.0 KiB
TypeScript
// Metro module 9232 (f9233).
|
|
import { VerificationModalScenes } from "../../../../Constants";
|
|
import { PHONE_VERIFICATION_MODAL_KEY } from "../../../phone/PhoneConstants";
|
|
import { getHeaderNoTitle, getHeaderCloseButton } from "../../../../design/components/Navigator/native/NavigatorHeader.native";
|
|
import AddPhone from "./AddPhone";
|
|
import PhoneActionCreators from "../../../phone/PhoneActionCreators";
|
|
import ModalActionCreators from "../../../../actions/ModalActionCreators";
|
|
import { ImpressionNames } from "../../../../_bundle/Module503";
|
|
import VerifyPhone from "./VerifyPhone";
|
|
import UserSettingsConfirmPassword from "../../../user_settings/account/native/UserSettingsConfirmPassword";
|
|
import { Navigator } from "../../../../design/components/Navigator/native/Navigator.native";
|
|
import { intl, t } from "../../../../intl/index.native";
|
|
export default function PhoneVerificationModal(props) {
|
|
let c17080_0 = props;
|
|
const screens = {};
|
|
screens[VerificationModalScenes.ADD_PHONE] = {
|
|
headerTitle: getHeaderNoTitle(),
|
|
headerLeft: getHeaderCloseButton(props.onClose),
|
|
render: (a0, c26398_1) => {
|
|
let c26398_0 = a0;
|
|
let reason = a0?.reason;
|
|
if (reason == null) {
|
|
reason = c17080_0.reason;
|
|
}
|
|
return <AddPhone {...a0} reason={reason} onComplete={(event) => c26398_1.push(VerificationModalScenes.VERIFY_PHONE, {
|
|
phone: event,
|
|
onVerified: (c31496_0) => {
|
|
c26398_1.push(VerificationModalScenes.VERIFY_PASSWORD, {
|
|
hideUnverifiedBanner: true,
|
|
onSubmit: (a0) => {
|
|
let r13 = c26398_0?.reason;
|
|
if (r13 == null) {
|
|
r13 = c17080_0.reason;
|
|
}
|
|
return PhoneActionCreators.addPhone(c31496_0, a0, r13);
|
|
},
|
|
onSuccess: () => {
|
|
ModalActionCreators.popWithKey(PHONE_VERIFICATION_MODAL_KEY);
|
|
}
|
|
});
|
|
}
|
|
})} onDeletePhone={c17080_0.allowDeletePhone ? () => {
|
|
c26398_1.push(VerificationModalScenes.VERIFY_PASSWORD, {
|
|
hideUnverifiedBanner: true,
|
|
onSubmit: (a0) => {
|
|
let r11 = c26398_0?.reason;
|
|
if (r11 == null) {
|
|
r11 = c17080_0.reason;
|
|
}
|
|
return PhoneActionCreators.removePhone(a0, r11);
|
|
},
|
|
onSuccess: () => {
|
|
ModalActionCreators.pop();
|
|
}
|
|
});
|
|
} : null} />;
|
|
}
|
|
};
|
|
screens[VerificationModalScenes.VERIFY_PHONE] = {
|
|
headerTitle: getHeaderNoTitle(),
|
|
impressionName: ImpressionNames.USER_VERIFY_PHONE,
|
|
render: (a0, c26399_0) => <VerifyPhone {...a0} disableKeyboardAvoidingView onVerified={(c30067_0) => {
|
|
const VERIFY_PASSWORD = VerificationModalScenes.VERIFY_PASSWORD;
|
|
let c30067_1 = async (c31497_0) => {
|
|
let r40;
|
|
let value;
|
|
let c31497_4 = 0;
|
|
try {
|
|
c31497_4 = 1;
|
|
r40 = await PhoneActionCreators.addPhone(c30067_0, c31497_0, c17080_0.reason);
|
|
c31497_4 = 0;
|
|
} catch ($e) {
|
|
const r27 = $e;
|
|
let r7 = r27;
|
|
value = r27;
|
|
if (c31497_4 !== 0) {
|
|
while (true) {
|
|
try {
|
|
c31497_4 = 0;
|
|
} catch (r56) {
|
|
r7 = r56;
|
|
value = r56;
|
|
if (c31497_4 === 0) {
|
|
break;
|
|
}
|
|
continue;
|
|
}
|
|
return value;
|
|
}
|
|
}
|
|
throw r7;
|
|
}
|
|
return r40;
|
|
};
|
|
c26399_0.push(VERIFY_PASSWORD, {
|
|
hideUnverifiedBanner: true,
|
|
onSubmit: function() {
|
|
return c30067_1.apply(this, arguments);
|
|
},
|
|
onSuccess: () => {
|
|
ModalActionCreators.popWithKey(PHONE_VERIFICATION_MODAL_KEY);
|
|
}
|
|
});
|
|
}} />
|
|
};
|
|
screens[VerificationModalScenes.VERIFY_PASSWORD] = {
|
|
headerTitle: getHeaderNoTitle(),
|
|
render: (a0) => <UserSettingsConfirmPassword {...a0} />
|
|
};
|
|
return <Navigator screens={screens} initialRouteName={VerificationModalScenes.ADD_PHONE} headerBackTitle={intl.string(t["13/7kX"])} />;
|
|
};
|