import React from 'react';
import { StackNavigator, TabNavigator, SwitchNavigator } from 'react-navigation';
import Icon from 'react-native-vector-icons/Ionicons';
import Search from '../screens/Search';
import Account from '../screens/Account';
import Line from '../screens/Line';
import Reservations from '../screens/Reservations';
import SearchResults from '../screens/SearchResults';
import SetReservation from '../screens/SetReservation';
import SignIn from '../screens/SignIn';
export const SignInStack = StackNavigator({
SignIn: {
screen: SignIn,
navigationOptions: {
title: 'Sign In',
},
},
});
const SearchStack = StackNavigator({
Search: {
screen: Search,
navigationOptions: (props) => ({
title: 'Search Restaurants',
}),
},
SearchResults: {
screen: SearchResults,
navigationOptions: {
title: 'Search Results',
},
},
SetReservation: {
screen: SetReservation,
navigationOptions: {
title: 'Set Reservation',
},
},
});
const ReservationsStack = StackNavigator({
Reservations: {
screen: Reservations,
navigationOptions: (props) => ({
title: 'Reservations',
}),
},
});
const AccountStack = StackNavigator({
Account: {
screen: Account,
navigationOptions: (props) => ({
title: 'Account',
}),
},
});
export const Tabs = TabNavigator({
Search: {
screen: SearchStack,
navigationOptions: {
tabBarLabel: 'Search',
tabBarIcon: ({ tintColor }) => <Icon name="md-list" size={35} color={tintColor} />
},
},
Reservations: {
screen: ReservationsStack,
navigationOptions: {
tabBarLabel: 'Reservations',
tabBarIcon: ({ tintColor }) => <Icon name="md-contact" size={35} color={tintColor} />
},
},
Account: {
screen: AccountStack,
navigationOptions: {
tabBarLabel: 'Account',
tabBarIcon: ({ tintColor }) => <Icon name="md-add" size={35} color={tintColor} />
},
},
});
export const AppRoute = SwitchNavigator(
{
Auth: SignInStack,
App: Tabs,
},
{
initialRouteName: 'Auth',
}
);