@@ -4,8 +4,14 @@ import {
4
4
View ,
5
5
TextInput ,
6
6
TouchableOpacity ,
7
- AsyncStorage
7
+ AsyncStorage ,
8
+ Image ,
9
+ Dimensions ,
10
+ StyleSheet
8
11
} from "react-native" ;
12
+ import { LinearGradient } from "expo" ;
13
+
14
+ const { height, width } = Dimensions . get ( "window" ) ;
9
15
10
16
export default class Auth extends Component {
11
17
state = {
@@ -25,9 +31,14 @@ export default class Auth extends Component {
25
31
this . setState ( { intervalId : emojiInterval } ) ;
26
32
} ;
27
33
34
+ sleep ( ms ) {
35
+ return new Promise ( resolve => setTimeout ( resolve , ms ) ) ;
36
+ }
37
+
28
38
logMeIn = async ( ) => {
29
39
this . randomEmoji ( ) ;
30
40
let setUserLogin = await AsyncStorage . setItem ( "userStatus" , "true" ) ;
41
+ await this . sleep ( 2500 ) ;
31
42
this . props . navigation . navigate ( "Notification" ) ;
32
43
} ;
33
44
@@ -37,55 +48,83 @@ export default class Auth extends Component {
37
48
38
49
render ( ) {
39
50
return (
40
- < View
41
- style = { { flex : 1 , alignItems : "stretch" , justifyContent : "center" } }
42
- >
43
- < Text
44
- style = { {
45
- color : "#fff" ,
46
- fontSize : 36 ,
47
- fontWeight : "bold" ,
48
- alignSelf : "center" ,
49
- margin : 30
50
- } }
51
- >
52
- { " " }
53
- 🔒 Auth 🔒{ " " }
54
- </ Text >
55
- < TextInput
56
- onChangeText = { text => this . setState ( { username : text } ) }
57
- value = { this . state . username }
58
- style = { {
59
- backgroundColor : "#fff" ,
60
- margin : 30 ,
61
- height : 60 ,
62
- fontSize : 36
63
- } }
64
- />
65
- < TextInput
66
- secureTextEntry = { true }
67
- style = { {
68
- backgroundColor : "#fff" ,
69
- margin : 30 ,
70
- height : 60 ,
71
- fontSize : 36
72
- } }
73
- onChangeText = { text => this . setState ( { password : text } ) }
74
- value = { this . state . password }
75
- />
76
- < TouchableOpacity
77
- style = { {
78
- backgroundColor : "#00FFFF" ,
79
- height : 60 ,
80
- margin : 30 ,
81
- alignItems : "center" ,
82
- justifyContent : "center"
83
- } }
84
- onPress = { this . logMeIn }
85
- >
86
- < Text style = { { fontSize : 36 } } > { this . state . button } </ Text >
87
- </ TouchableOpacity >
51
+ < View style = { { flex : 1 } } >
52
+ < View style = { { flex : 1 } } >
53
+ < Text
54
+ style = { {
55
+ fontSize : 36 ,
56
+ fontWeight : "bold" ,
57
+ alignSelf : "center" ,
58
+ marginTop : 10
59
+ } }
60
+ >
61
+ 🔒 Login 🔒
62
+ </ Text >
63
+ < TextInput
64
+ onChangeText = { text => this . setState ( { username : text } ) }
65
+ value = { this . state . username }
66
+ style = { styles . input }
67
+ />
68
+ < TextInput
69
+ secureTextEntry = { true }
70
+ style = { styles . input }
71
+ onChangeText = { text => this . setState ( { password : text } ) }
72
+ value = { this . state . password }
73
+ />
74
+
75
+ < TouchableOpacity style = { styles . loginButton } onPress = { this . logMeIn } >
76
+ < LinearGradient
77
+ style = { styles . gradient }
78
+ colors = { [ "#14F1D9" , "#3672F8" ] }
79
+ start = { { x : 0 , y : 0.5 } }
80
+ end = { { x : 1 , y : 0.5 } }
81
+ >
82
+ < Text style = { { fontSize : 36 } } > { this . state . button } </ Text >
83
+ </ LinearGradient >
84
+ </ TouchableOpacity >
85
+ </ View >
86
+ { /* Images Code */ }
87
+ < View style = { { flex : 1 } } >
88
+ < View style = { { position : "absolute" , top : 75 , left : 25 } } >
89
+ < Image
90
+ source = { require ( "../assets/Pokeballz.png" ) }
91
+ style = { { height : 70 , width : 70 } }
92
+ />
93
+ </ View >
94
+ < View style = { { position : "absolute" , top : height / 15 } } >
95
+ < Image
96
+ source = { require ( "../assets/pokemons.png" ) }
97
+ style = { { height : height / 2.3 , width } }
98
+ resizeMode = { "cover" }
99
+ />
100
+ </ View >
101
+ </ View >
88
102
</ View >
89
103
) ;
90
104
}
91
105
}
106
+
107
+ const styles = StyleSheet . create ( {
108
+ input : {
109
+ borderColor : "gray" ,
110
+ borderWidth : 1 ,
111
+ margin : 15 ,
112
+ height : 60 ,
113
+ fontSize : 36 ,
114
+ borderRadius : 25 ,
115
+ paddingLeft : 10
116
+ } ,
117
+ loginButton : {
118
+ height : 60 ,
119
+ margin : 15 ,
120
+ alignItems : "center" ,
121
+ justifyContent : "center"
122
+ } ,
123
+ gradient : {
124
+ height : "100%" ,
125
+ width : "100%" ,
126
+ alignItems : "center" ,
127
+ justifyContent : "center" ,
128
+ borderRadius : 50
129
+ }
130
+ } ) ;
0 commit comments