Files
discord-decomp/modules/verification/native/components/ChangeEmailWarning.tsx
T
2026-11-01 12:12:55 +02:00

69 lines
3.0 KiB
TypeScript

// Metro module 9183 (f9184).
import { useCallback } from "react";
import { ScrollView, View } from "react-native";
import UserStore from "../../../../stores/UserStore";
import { COMMON_SCAMS_EDUCATION_HC_ARTICLE } from "../../VerificationConstants";
import { AnalyticEvents } from "../../../../Constants";
import { createStyles } from "../../../../design/components/Styles/native/createStyles";
import Module712 from "../../../../_bundle/Module712";
import { useNavigation } from "../../../../design/components/Navigator/native/useNavigation.native";
import { useStateFromStores } from "../../../../_bundle/Module589";
import AnalyticsUtils from "../../../../utils/AnalyticsUtils";
import { VerificationModalScenes } from "../../../../ConstantsIOS";
import { TrafficConeSpotIllustration } from "../../../../design/assets/native";
import { Text } from "../../../../design/components/Text/native/Text";
import { intl, t } from "../../../../intl/index.native";
import { Button } from "../../../../design/components/Button/native/Button.native";
import EmailVerificationModalActionCreators from "../../../../actions/native/EmailVerificationModalActionCreators";
const useStyles = createStyles({
container: {
flex: 1,
padding: Module712.space.PX_16,
alignItems: "center",
justifyContent: "center"
},
title: {
marginTop: Module712.space.PX_16
},
body: {
marginTop: Module712.space.PX_8,
textAlign: "center"
},
buttonContainer: {
flexDirection: "row",
gap: Module712.space.PX_8,
marginTop: Module712.space.PX_16
}
});
export default function ChangeEmailWarning(props) {
const changeEmailReason = props.changeEmailReason;
const styles = useStyles();
const navigation = useNavigation();
const stateFromStores = useStateFromStores([UserStore], () => UserStore.getCurrentUser());
const callback = useCallback(() => {
AnalyticsUtils.track(AnalyticEvents.USER_ACCOUNT_EMAIL_CHANGE_WARNING_CONTINUE, {
change_email_reason_enum: changeEmailReason
});
navigation.push(VerificationModalScenes.ENTER_EMAIL);
}, [navigation, changeEmailReason]);
return stateFromStores != null ? <ScrollView keyboardShouldPersistTaps="handled" alwaysBounceVertical={false}>
<View style={styles.container}>
<TrafficConeSpotIllustration />
<Text style={styles.title} accessibilityRole="header" variant="heading-xl/extrabold" color="mobile-text-heading-primary">
{intl.string(t.hhR7gX)}
</Text>
<Text style={styles.body} accessibilityRole="header" variant="text-md/normal" color="mobile-text-heading-primary">
{intl.format(t.rqWXUf, {
hcArticle: COMMON_SCAMS_EDUCATION_HC_ARTICLE
})}
{"\n\n"}
{intl.string(t["3LW10C"])}
</Text>
<View style={styles.buttonContainer}>
<Button size="md" variant="tertiary" text={intl.string(t.rwTBFs)} onPress={callback} shrink />
<Button size="md" variant="primary" text={intl.string(t["ETE/oC"])} onPress={() => EmailVerificationModalActionCreators.close()} shrink />
</View>
</View>
</ScrollView> : null;
};