aretherecookies-mobile/js/App.js
2020-04-17 22:50:23 -05:00

50 lines
1.7 KiB
JavaScript

//@flow
import rxjsconfig from 'recompose/rxjsObservableConfig';
import setObservableConfig from 'recompose/setObservableConfig';
setObservableConfig(rxjsconfig);
import React, { Component } from 'react';
import { StatusBar } from 'react-native';
import { ThemeContext, getTheme } from 'react-native-material-ui';
import { NativeRouter, Route, Redirect, AndroidBackButton, Switch } from 'react-router-native';
import Nav from './pages/Nav';
import ProductDetail from './pages/ProductDetail';
import PlaceDetail from './pages/PlaceDetail';
import CreateProduct from './pages/CreateProduct';
import LoginPage from './pages/LoginPage';
import LandingPage from './pages/LandingPage';
import ZipcodePage from './pages/ZipcodePage';
import { AppContainer } from './components/AppContainer';
import theme from './ui-theme';
console.disableYellowBox = true;
export default class App extends Component {
static displayName = 'App';
render() {
return (
<NativeRouter>
<AndroidBackButton>
<ThemeContext.Provider value={getTheme(theme)}>
<AppContainer>
<StatusBar backgroundColor={theme.statusBarColor} />
<Redirect from="/" to="/landing" replace />
<Switch>
<Route path="/landing" component={LandingPage} />
<Route path="/list/:type" component={Nav} />
<Route path="/product/:id" component={ProductDetail} />
<Route path="/place/:id" component={PlaceDetail} />
<Route path="/login" component={LoginPage} />
<Route path="/logout" component={LoginPage} />
<Route path="/zipcode" component={ZipcodePage} />
<Route path="/createProduct" component={CreateProduct} />
</Switch>
</AppContainer>
</ThemeContext.Provider>
</AndroidBackButton>
</NativeRouter>
);
}
}