text: import React, { Component, Fragment } from "react";
  import ReactDOM from "react-dom";
  //if BrowserRouter - refreshing will screw it up
  import {
    HashRouter as Router,
    Route,
    Switch,
    Redirect
  } from "react-router-dom";
  
  import { Provider as AlertProvider } from "react-alert";
  import AlertTemplate from "react-alert-template-basic";
  
  import Header from "./layout/Header";
  import LeftMenu from "../components/layout/LeftMenu";
  import Alerts from "./layout/Alerts";
  import Login from "./accounts/Login";
  import Register from "./accounts/Register";
  import PrivateRoute from "./common/PrivateRoute";
  
  import { Provider } from "react-redux";
  import store from "../store";
  
  import { loadUser } from "../actions/auth";
  //alert opts
  const alertOptions = {
    timeout: 3000,
    position: "top center"
  };
  
  class App extends Component {
    componentDidMount() {
      store.dispatch(loadUser());
    }
  
    render() {
      return (
        <Provider store={store}>
          <AlertProvider template={AlertTemplate} {...alertOptions}>
            <Router>
              <Fragment>
                <Header />
                <Alerts />
                <Switch>
                  <PrivateRoute exact path="/" component={LeftMenu} />
                  <Route exact path="/register" component={Register} />
                  <Route exact path="/login" component={Login} />
                </Switch>
              </Fragment>
            </Router>
          </AlertProvider>
        </Provider>
      );
    }
  }
  
  ReactDOM.render(<App />, document.getElementById("app"));
  