App.js 2.32 KiB
Newer Older
Amaury Martiny's avatar
Amaury Martiny committed
// Copyright 2015-2018 Parity Technologies (UK) Ltd.
// This file is part of Parity.
Amaury Martiny's avatar
Amaury Martiny committed
//
Amaury Martiny's avatar
Amaury Martiny committed
// SPDX-License-Identifier: MIT

import React, { Component } from 'react';
Amaury Martiny's avatar
Amaury Martiny committed
import { BrowserRouter, MemoryRouter, Route, Link } from 'react-router-dom';
Amaury Martiny's avatar
Amaury Martiny committed
import CreateAccount from '../Accounts/CreateAccount';
Amaury Martiny's avatar
Amaury Martiny committed
import Health from '../Health';
Amaury Martiny's avatar
Amaury Martiny committed
import Loading from '../Loading';
import ProtectedRoute from './ProtectedRoute';
import Receive from '../Receive';
Amaury Martiny's avatar
Amaury Martiny committed
import Send from '../Send';
import Settings from '../Settings';
import Signer from '../Send/Signer';
import Tokens from '../Tokens';
import './App.css';

Amaury Martiny's avatar
Amaury Martiny committed
// Use MemoryRouter for production viewing in file:// protocol
// https://github.com/facebook/create-react-app/issues/3591
const Router =
  process.env.NODE_ENV === 'production' ? MemoryRouter : BrowserRouter;

class App extends Component {
  render() {
    return (
      <Router>
        <div className="wrapper">
          <div className="content">
            <div className="connector">
              <svg width="60px" height="30px" viewBox="0 0 60 30">
                <polygon points="0 30 60 30 30 0" />
            <div className="window">
              <nav className="header-nav">
                <Link to="/">Wallet</Link>
              <div className="window_content">
                <Route path="/loading" component={Loading} />
                <ProtectedRoute exact path="/" component={Tokens} />
                <ProtectedRoute path="/settings" component={Settings} />
                <ProtectedRoute path="/send" component={Send} />
                <ProtectedRoute path="/signer" component={Signer} />
                <ProtectedRoute path="/receive" component={Receive} />
                <ProtectedRoute
                  path="/accounts/new"
                  component={CreateAccount}
                />
              <nav className="footer-nav">
                <div className="footer-nav_status">
                <div className="footer-nav_icons">
                  <Link to="/settings" className="icon -settings">
Brian Flanagan's avatar
Brian Flanagan committed
          </div>
        </div>
      </Router>
    );
  }
}

export default App;