Last active
May 28, 2022 07:09
-
-
Save sourabhbagrecha/601614a3daeee7cfe8640c59bc0e1469 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import { QueryClient, QueryClientProvider } from "react-query"; | |
import { BrowserRouter, Route, Routes } from "react-router-dom"; | |
import NavBar from "./components/NavBar.component"; | |
import { UserProvider } from "./contexts/user.context"; | |
import Analytics from "./pages/Analytics.page"; | |
import CreateExpense from "./pages/CreateExpense.page"; | |
import EditExpense from "./pages/EditExpense.page"; | |
import Home from "./pages/Home.page"; | |
import Login from "./pages/Login.page"; | |
import PrivateRoute from "./pages/PrivateRoute.page"; | |
import Signup from "./pages/Signup.page"; | |
// Creating a new query-client which we will use | |
// in our QueryClientProvider that can be accessed | |
// from anywhere in the app. | |
const queryClient = new QueryClient(); | |
function App() { | |
return ( | |
// We are wrapping our whole app with QueryClientProvider so that | |
// our queryClient is accessible through out the app from any page | |
<QueryClientProvider client={queryClient}> | |
<BrowserRouter> | |
<UserProvider> | |
<NavBar /> | |
<Routes> | |
<Route exact path="/login" element={<Login />} /> | |
<Route exact path="/signup" element={<Signup />} /> | |
<Route element={<PrivateRoute />}> | |
<Route exact path="/" element={<Home />} /> | |
<Route exact path="/new" element={<CreateExpense />} /> | |
<Route exact path="/expense/:id/edit" element={<EditExpense />} /> | |
<Route exact path="/analytics" element={<Analytics />} /> | |
</Route> | |
</Routes> | |
</UserProvider> | |
</BrowserRouter> | |
</QueryClientProvider> | |
); | |
} | |
export default App; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment