148 lines
3.5 KiB
TypeScript
148 lines
3.5 KiB
TypeScript
/*
|
|
* File: EmailAlreadyRegisteredModal.tsx
|
|
* Description: Modal popup for when email is already registered
|
|
* Design & Developed by Tech4Biz Solutions
|
|
* Copyright (c) Spurrin Innovations. All rights reserved.
|
|
*/
|
|
|
|
import React from 'react'
|
|
import {
|
|
Modal,
|
|
View,
|
|
Text,
|
|
TouchableOpacity,
|
|
StyleSheet,
|
|
Dimensions,
|
|
} from 'react-native'
|
|
import { Colors } from '../../../../shared/src/theme'
|
|
|
|
interface EmailAlreadyRegisteredModalProps {
|
|
visible: boolean
|
|
onClose: () => void
|
|
onGoToLogin: () => void
|
|
}
|
|
|
|
const { width } = Dimensions.get('window')
|
|
|
|
const EmailAlreadyRegisteredModal: React.FC<EmailAlreadyRegisteredModalProps> = ({
|
|
visible,
|
|
onClose,
|
|
onGoToLogin,
|
|
}) => {
|
|
return (
|
|
<Modal
|
|
animationType="fade"
|
|
transparent={true}
|
|
visible={visible}
|
|
onRequestClose={onClose}
|
|
>
|
|
<View style={styles.overlay}>
|
|
<View style={styles.modalContainer}>
|
|
<View style={styles.content}>
|
|
<Text style={styles.title}>Email Already Registered</Text>
|
|
<Text style={styles.message}>
|
|
Your email is already registered. The login credentials have been sent to your email—please check your inbox to proceed.
|
|
</Text>
|
|
|
|
<View style={styles.buttonContainer}>
|
|
<TouchableOpacity
|
|
style={[styles.button, styles.secondaryButton]}
|
|
onPress={onClose}
|
|
activeOpacity={0.8}
|
|
>
|
|
<Text style={styles.secondaryButtonText}>Cancel</Text>
|
|
</TouchableOpacity>
|
|
|
|
<TouchableOpacity
|
|
style={[styles.button, styles.primaryButton]}
|
|
onPress={onGoToLogin}
|
|
activeOpacity={0.8}
|
|
>
|
|
<Text style={styles.primaryButtonText}>Go to Login</Text>
|
|
</TouchableOpacity>
|
|
</View>
|
|
</View>
|
|
</View>
|
|
</View>
|
|
</Modal>
|
|
)
|
|
}
|
|
|
|
const styles = StyleSheet.create({
|
|
overlay: {
|
|
flex: 1,
|
|
backgroundColor: 'rgba(0, 0, 0, 0.5)',
|
|
justifyContent: 'center',
|
|
alignItems: 'center',
|
|
},
|
|
modalContainer: {
|
|
width: width * 0.85,
|
|
backgroundColor: Colors.background || '#FFFFFF',
|
|
borderRadius: 12,
|
|
elevation: 5,
|
|
shadowColor: '#000',
|
|
shadowOffset: {
|
|
width: 0,
|
|
height: 2,
|
|
},
|
|
shadowOpacity: 0.25,
|
|
shadowRadius: 3.84,
|
|
},
|
|
content: {
|
|
padding: 24,
|
|
},
|
|
title: {
|
|
fontSize: 20,
|
|
fontWeight: 'bold',
|
|
color: '#333333',
|
|
textAlign: 'center',
|
|
marginBottom: 16,
|
|
},
|
|
message: {
|
|
fontSize: 16,
|
|
color: Colors.textSecondary || '#666666',
|
|
textAlign: 'center',
|
|
lineHeight: 24,
|
|
marginBottom: 24,
|
|
},
|
|
buttonContainer: {
|
|
flexDirection: 'row',
|
|
justifyContent: 'space-between',
|
|
gap: 12,
|
|
},
|
|
button: {
|
|
flex: 1,
|
|
paddingVertical: 12,
|
|
paddingHorizontal: 16,
|
|
borderRadius: 8,
|
|
alignItems: 'center',
|
|
justifyContent: 'center',
|
|
minHeight: 48,
|
|
},
|
|
primaryButton: {
|
|
backgroundColor: Colors.primary || '#007AFF',
|
|
},
|
|
secondaryButton: {
|
|
backgroundColor: 'transparent',
|
|
borderWidth: 1,
|
|
borderColor: Colors.border || '#E0E0E0',
|
|
},
|
|
primaryButtonText: {
|
|
color: '#FFFFFF',
|
|
fontSize: 16,
|
|
fontWeight: '600',
|
|
},
|
|
secondaryButtonText: {
|
|
color: '#333333',
|
|
fontSize: 16,
|
|
fontWeight: '600',
|
|
},
|
|
})
|
|
|
|
export default EmailAlreadyRegisteredModal
|
|
|
|
/*
|
|
* End of File: EmailAlreadyRegisteredModal.tsx
|
|
* Design & Developed by Tech4Biz Solutions
|
|
* Copyright (c) Spurrin Innovations. All rights reserved.
|
|
*/ |