From df1e4570fe4b4252d97cfef95ec09c8feec81258 Mon Sep 17 00:00:00 2001 From: Daniele Bonilha Date: Thu, 25 Oct 2018 11:25:25 -0300 Subject: [PATCH] Screens: Create Register Screen v2 --- routes.js | 8 ++ src/screens/Registerv2.js | 248 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 256 insertions(+) create mode 100644 src/screens/Registerv2.js diff --git a/routes.js b/routes.js index 632901f..7f2e729 100644 --- a/routes.js +++ b/routes.js @@ -19,6 +19,7 @@ import OrderConfirmed from './src/screens/OrderConfirmed'; import Presentation from './src/screens/Presentation'; import Dashboard from './src/screens/Dashboard'; import Register from './src/screens/Register'; +import Registerv2 from './src/screens/Registerv2'; import Grid from './src/screens/Grid'; import theme from './src/theme'; @@ -153,6 +154,13 @@ const screens = { drawerIcon: props => , }, }, + Registerv2: { + screen: Registerv2, + navigationOptions: { + drawerLabel: 'Register Screen v2', + drawerIcon: props => , + }, + }, Grid: { screen: Grid, navigationOptions: { diff --git a/src/screens/Registerv2.js b/src/screens/Registerv2.js new file mode 100644 index 0000000..047832b --- /dev/null +++ b/src/screens/Registerv2.js @@ -0,0 +1,248 @@ +import React from 'react'; +import { + Alert, + Dimensions, + StyleSheet, + KeyboardAvoidingView, + ScrollView, +} from 'react-native'; +// galio component +import { + Block, Button, Input, Text, NavBar, +} from 'galio-framework'; +import theme from '../theme'; + +const { width } = Dimensions.get('window'); + +const MARGIN_LEFT = '5%'; +const SOCIAL_ICON_SIZE = theme.SIZES.BASE * 1.5; +const SOCIAL_BTN_SIZE = theme.SIZES.BASE * 3; + +class Registerv2 extends React.Component { + state = { + name: '', + lastName: '', + email: '', + password: '', + }; + + handleGoBack = () => this.props.navigation.openDrawer(); + + handleChange = (name, value) => { + this.setState({ [name]: value }); + }; + + handleOnPressSocial = () => Alert.alert('Oops', 'Not Implementated'); + + handleSignUp = () => { + const { + name, lastName, email, password, + } = this.state; + + Alert.alert('Sign up action', `Name: ${name} + Last Name: ${lastName} + Email: ${email} + Password: ${password}`); + } + + handleSignIn = () => this.props.navigation.navigate('Login') + + render() { + return ( + + + + +
+ + + + or Sign Up with email + + + +
+ + + + + + ); + } +} + +const Header = ({ title }) => ( + + {title} + +); + +const SocialButtons = ({ + onPressFacebook, + onPressTwitter, + onPressInstagram, +}) => ( + + + + + +); + +const styles = StyleSheet.create({ + container: { + backgroundColor: theme.COLORS.WHITE, + paddingTop: 15, + }, + flex: { + flex: 1, + }, + social: { + width: SOCIAL_BTN_SIZE, + height: SOCIAL_BTN_SIZE, + borderRadius: theme.SIZES.BASE * 1.75, + justifyContent: 'center', + }, + socialContainer: { + marginVertical: theme.SIZES.BASE * 1.875, + }, + input: { + alignSelf: 'center', + width: width * 0.89, + borderBottomColor: theme.COLORS.BLACK, + borderWidth: theme.SIZES.BASE * 0.04, + borderRadius: 0, + paddingHorizontal: 0, + }, + button: { + marginVertical: 10, + width: width * 0.89, + }, + borderColor: { + borderColor: theme.COLORS.GREY, + }, + header: { + width: '50%', + marginLeft: MARGIN_LEFT, + }, +}); + +export default Registerv2;