import React from 'react'; import {TextInput, StyleSheet} from 'react-native'; import * as Animatable from 'react-native-animatable'; const LoginInput = (props: LoginInputProps) => { return ( <> props.onChangeText(input)} defaultValue={props.type} onSubmitEditing={props.onSubmitEditing} blurOnSubmit={ props.isUsername ? false : props.isPassword ? undefined : undefined } secureTextEntry={ props.isUsername ? false : props.isPassword ? true : false } ref={props.input_ref} /> {props.attempt_submit && !props.isValid && ( {props.validationWarning} )} ); }; const styles = StyleSheet.create({ credentials: { top: 175, width: 248, height: 40, fontSize: 20, color: '#FFFFFF', borderColor: '#FFFDFD', borderWidth: 2, borderRadius: 20, paddingLeft: 13, marginVertical: 15, }, invalidCredentials: { top: 165, color: '#F4DDFF', paddingHorizontal: 30, textAlign: 'center', }, }); interface LoginInputProps { type: string; isUsername?: boolean; isPassword?: boolean; onChangeText: (input: string) => void; onSubmitEditing?: () => void; attempt_submit?: boolean; input_ref?: object; isValid?: boolean; validationWarning?: string; } export default LoginInput;