You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.4 KiB
45 lines
1.4 KiB
import { useUserContext } from './contexts/UserContext' |
|
import { Route, Switch } from 'react-router' |
|
import { Link } from 'react-router-dom' |
|
import { Dashboard } from './pages/Dashboard' |
|
import { NewUser } from './pages/NewUser' |
|
import { TransactionList } from './pages/TransactionList' |
|
import { AccountForm } from './forms/AccountForm' |
|
import { Login } from './pages/Login' |
|
import { AppHeader } from './layout/AppHeader' |
|
import { AppFooter } from './layout/AppFooter' |
|
|
|
export const CoreLayout = () => { |
|
const { user } = useUserContext() |
|
|
|
return ( |
|
<div className="app"> |
|
<AppHeader> |
|
<Link to="/">Home</Link> |
|
<Link to="/select">Select Budget</Link> |
|
<Link to="/accounts">Budget Details</Link> |
|
<Link to="/transactions">Transactions</Link> |
|
<Link to="/new">New User</Link> |
|
</AppHeader> |
|
|
|
<main> |
|
{!user ? ( |
|
<Switch> |
|
<Route path="/sign-up" component={NewUser} /> |
|
<Route path="/" component={Login} /> |
|
</Switch> |
|
) : ( |
|
<Switch> |
|
<Route path="/users/new" component={NewUser} /> |
|
<Route path="/transactions" component={TransactionList} /> |
|
<Route path="/accounts/new" component={AccountForm} /> |
|
<Route path="/accounts" component={AccountForm} /> |
|
<Route path="/" component={Dashboard} /> |
|
</Switch> |
|
)} |
|
</main> |
|
|
|
<AppFooter /> |
|
</div> |
|
) |
|
}
|
|
|