This repository was archived by the owner on Jun 3, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 20
Expand file tree
/
Copy pathApp.js
More file actions
81 lines (73 loc) · 2.58 KB
/
App.js
File metadata and controls
81 lines (73 loc) · 2.58 KB
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
72
73
74
75
76
77
78
79
80
81
import React from 'react';
import Amplify from 'aws-amplify';
import { Provider } from 'react-redux';
import { Root } from 'native-base';
import { Ionicons } from '@expo/vector-icons';
import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';
import { createBottomTabNavigator } from '@react-navigation/bottom-tabs';
import Catalog from './src/components/Catalog';
import Checkout from './src/components/Checkout';
import Orders from './src/components/Orders';
import Receipt from './src/components/Receipt';
import Settings from './src/components/Settings';
import store from './src/redux/store';
import awsConfig from "./aws-exports";
Amplify.configure(awsConfig);
const CheckoutStack = createStackNavigator();
const CheckoutScreen = () => {
return (
<CheckoutStack.Navigator>
<CheckoutStack.Screen name="Catalog" component={Catalog} />
<CheckoutStack.Screen name="Checkout" component={Checkout} />
</CheckoutStack.Navigator>
)
};
const OrdersStack = createStackNavigator();
const OrdersScreen = () => {
return (
<OrdersStack.Navigator>
<OrdersStack.Screen name="Orders" component={Orders} />
<OrdersStack.Screen name="Receipt" component={Receipt} />
</OrdersStack.Navigator>
)
};
const SettingsStack = createStackNavigator();
const SettingsScreen = () => {
return (
<SettingsStack.Navigator>
<SettingsStack.Screen name="Settings" component={Settings} />
</SettingsStack.Navigator>
);
};
const Tab = createBottomTabNavigator();
const App = () => (
<Root>
<Provider store={store}>
<NavigationContainer>
<Tab.Navigator
screenOptions={({ route }) => ({
tabBarIcon: ({ color, size }) => {
if (route.name === 'Checkout') {
return <Ionicons name="ios-cart" size={size} color={color} />;
} else if (route.name === 'Orders') {
return <Ionicons name="ios-archive" size={size} color={color} />;
} else if (route.name === 'Settings') {
return <Ionicons name="ios-settings" size={size} color={color} />;
}
},
})}
tabBarOptions={{
activeTintColor: 'tomato',
inactiveTintColor: 'gray',
}}
>
<Tab.Screen name="Checkout" component={CheckoutScreen} />
<Tab.Screen name="Orders" component={OrdersScreen} />
<Tab.Screen name="Settings" component={SettingsScreen} />
</Tab.Navigator>
</NavigationContainer>
</Provider>
</Root>
);
export default App;