-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathApp.js
71 lines (57 loc) · 1.69 KB
/
App.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
import React, { Component } from 'react';
import { StyleSheet, View, Image, TouchableHighlight, StatusBar, Easing, Animated } from 'react-native';
import {Text, Icon, ListItem, Card, ThemeProvider} from 'react-native-elements';
import {createStackNavigator, createAppContainer} from 'react-navigation';
import Voice from 'react-native-voice';
import Login from './app/login';
import MainNavigator from './app/mainNavigator'
import Chat from './app/ai_chat';
import { theme, colors } from './config';
const transitionConfig = () => {
return {
transitionSpec: {
duration: 750,
easing: Easing.out(Easing.poly(4)),
timing: Animated.timing,
useNativeDriver: true,
},
screenInterpolator: sceneProps => {
const { layout, position, scene } = sceneProps
const thisSceneIndex = scene.index
const width = layout.initWidth
const translateX = position.interpolate({
inputRange: [thisSceneIndex - 1, thisSceneIndex],
outputRange: [width, 0],
})
return { transform: [ { translateX } ] }
},
}
}
const MainAppStackNavigator = createStackNavigator({
Login: Login,
MainApp: MainNavigator,
Chat: Chat
},
{
cardStyle: { opacity: 1 },
headerMode: 'none',
title: 'Main',
transitionConfig
});
const MainAppContainer = createAppContainer(MainAppStackNavigator)
class App extends Component{
render(){
return(
<ThemeProvider theme = {theme} >
<View style={{flex: 1, backgroundColor: colors.background}}>
<StatusBar
barStyle="light-content"
backgroundColor={colors.success}
/>
<MainAppContainer />
</View>
</ThemeProvider>
);
}
}
export default App;