diff --git a/frontend/react-app/src/auth/LoginPage.jsx b/frontend/react-app/src/auth/LoginPage.jsx
index 010c7dd..14a280f 100644
--- a/frontend/react-app/src/auth/LoginPage.jsx
+++ b/frontend/react-app/src/auth/LoginPage.jsx
@@ -1,15 +1,12 @@
import { useRef, useState, useEffect } from "react"
import { Link, useNavigate, useLocation } from "react-router-dom"
-import useAuth from "../hooks/useAuth"
import axios from "../api/api"
import "./LoginPage.css"
const LOGIN_URL = "/login"
const LoginPage = () => {
- const { setAuth } = useAuth()
-
const navigate = useNavigate()
const location = useLocation()
const from = location.state?.from?.pathname || "/"
diff --git a/frontend/react-app/src/context/AuthProvider.jsx b/frontend/react-app/src/context/AuthProvider.jsx
deleted file mode 100644
index 563bf3d..0000000
--- a/frontend/react-app/src/context/AuthProvider.jsx
+++ /dev/null
@@ -1,11 +0,0 @@
-import { createContext, useState } from "react";
-
-const AuthContext = createContext({});
-
-export const AuthProvider = ({ children }) => {
- const [auth, setAuth] = useState({});
-
- return {children};
-};
-
-export default AuthContext;
diff --git a/frontend/react-app/src/hooks/useAuth.jsx b/frontend/react-app/src/hooks/useAuth.jsx
deleted file mode 100644
index 98b4265..0000000
--- a/frontend/react-app/src/hooks/useAuth.jsx
+++ /dev/null
@@ -1,10 +0,0 @@
-import { useContext, useDebugValue } from "react";
-import AuthContext from "../context/AuthProvider";
-
-const useAuth = () => {
- const { auth } = useContext(AuthContext);
- useDebugValue(auth, (auth) => (auth?.user ? "Logged In" : "Logged Out"));
- return useContext(AuthContext);
-};
-
-export default useAuth;
\ No newline at end of file
diff --git a/frontend/react-app/src/hooks/useAxiosPrivate.jsx b/frontend/react-app/src/hooks/useAxiosPrivate.jsx
deleted file mode 100644
index 15e87c8..0000000
--- a/frontend/react-app/src/hooks/useAxiosPrivate.jsx
+++ /dev/null
@@ -1,45 +0,0 @@
-import { axiosPrivate } from "../api/axios";
-import { useEffect } from "react";
-
-import useRefreshToken from "./useRefreshToken";
-import useAuth from "./useAuth";
-
-const useAxiosPrivate = () => {
- const refresh = useRefreshToken();
- const { auth } = useAuth();
-
- useEffect(() => {
- const requestIntercept = axiosPrivate.interceptors.request.use(
- (config) => {
- if (!config.headers["Authorization"]) {
- config.headers["Authorization"] = `Bearer ${auth?.accessToken}`;
- }
- return config;
- },
- (error) => Promise.reject(error)
- );
-
- const responseIntercept = axiosPrivate.interceptors.response.use(
- (response) => response,
- async (error) => {
- const prevRequest = error?.config;
- if (error?.response?.status === 403 && !prevRequest?.sent) {
- prevRequest.sent = true;
- const newAccessToken = await refresh();
- prevRequest.headers["Authorization"] = `Bearer ${newAccessToken}`;
- return axiosPrivate(prevRequest);
- }
- return Promise.reject(error);
- }
- );
-
- return () => {
- axiosPrivate.interceptors.request.eject(requestIntercept);
- axiosPrivate.interceptors.response.eject(responseIntercept);
- };
- }, [auth, refresh]);
-
- return axiosPrivate;
-};
-
-export default useAxiosPrivate;
diff --git a/frontend/react-app/src/hooks/useRefreshToken.jsx b/frontend/react-app/src/hooks/useRefreshToken.jsx
deleted file mode 100644
index a5d83cf..0000000
--- a/frontend/react-app/src/hooks/useRefreshToken.jsx
+++ /dev/null
@@ -1,21 +0,0 @@
-import axios from "../api/api";
-import useAuth from "./useAuth";
-
-const useRefreshToken = () => {
- const { setAuth } = useAuth();
-
- const refresh = async () => {
- const response = await axios.get("/refresh", {
- withCredentials: true,
- });
- setAuth((prev) => {
- console.log(JSON.stringify(prev));
- console.log(response.data.accessToken);
- return { ...prev, accessToken: response.data.accessToken };
- });
- return response.data.accessToken;
- };
- return refresh;
-};
-
-export default useRefreshToken;
diff --git a/frontend/react-app/src/main.jsx b/frontend/react-app/src/main.jsx
index d57872a..d8b9503 100644
--- a/frontend/react-app/src/main.jsx
+++ b/frontend/react-app/src/main.jsx
@@ -1,12 +1,12 @@
import ReactDOM from "react-dom/client";
import { createBrowserRouter, RouterProvider } from "react-router-dom"
-import "./index.css"
import App from "./App.jsx"
import NotFoundPage from "./ui/NotFoundPage.jsx"
import UserProfile from "./user/UserProfile.jsx"
import RegisterPage from "./auth/RegisterPage.jsx"
import LoginPage from "./auth/LoginPage.jsx"
+import "./index.css"
const token = localStorage.getItem("appToken")
diff --git a/frontend/react-app/src/provider/authProvider.jsx b/frontend/react-app/src/provider/authProvider.jsx
deleted file mode 100644
index 8080ec8..0000000
--- a/frontend/react-app/src/provider/authProvider.jsx
+++ /dev/null
@@ -1,42 +0,0 @@
-import axios from "axios";
-import { createContext, useContext, useEffect, useMemo, useState } from "react";
-
-const AuthContext = createContext();
-
-const AuthProvider = ({ children }) => {
- // State to hold the authentication token
- const [token, setToken_] = useState(localStorage.getItem("token"));
-
- // Function to set the authentication token
- const setToken = (newToken) => {
- setToken_(newToken);
- };
-
- useEffect(() => {
- if (token) {
- axios.defaults.headers.common["Authorization"] = "Bearer " + token;
- localStorage.setItem("token", token);
- } else {
- delete axios.defaults.headers.common["Authorization"];
- localStorage.removeItem("token");
- }
- }, [token]);
-
- // Memoized value of the authentication context
- const contextValue = useMemo(
- () => ({
- token,
- setToken,
- }),
- [token]
- );
-
- // Provide the authentication context to the children components
- return {children};
-};
-
-export const useAuth = () => {
- return useContext(AuthContext);
-};
-
-export default AuthProvider;
diff --git a/frontend/react-app/src/routes/ProtectedRoute.jsx b/frontend/react-app/src/routes/ProtectedRoute.jsx
deleted file mode 100644
index e07614a..0000000
--- a/frontend/react-app/src/routes/ProtectedRoute.jsx
+++ /dev/null
@@ -1,15 +0,0 @@
-import { Navigate, Outlet } from "react-router-dom";
-import { useAuth } from "../provider/authProvider";
-
-export const ProtectedRoute = () => {
- const { token } = useAuth();
-
- // Check if the user is authenticated
- if (!token) {
- // If not authenticated, redirect to the login page
- return ;
- }
-
- // If authenticated, render the child routes
- return ;
-};
diff --git a/frontend/react-app/src/routes/index.jsx b/frontend/react-app/src/routes/index.jsx
deleted file mode 100644
index ed3d110..0000000
--- a/frontend/react-app/src/routes/index.jsx
+++ /dev/null
@@ -1,66 +0,0 @@
-import { RouterProvider, createBrowserRouter } from "react-router-dom";
-import { useAuth } from "../provider/authProvider";
-import { ProtectedRoute } from "./ProtectedRoute"
-
-import Logout from "../pages/Logout"
-import RegisterPage from "../pages/RegisterPage"
-import LoginPage from "../components/LoginPage"
-import App from "../App"
-
-const Routes = () => {
- const { token } = useAuth()
-
- // Define public routes accessible to all users
- const routesForPublic = [
- {
- path: "/register",
- element: ,
- },
- {
- path: "/login",
- element: ,
- },
- ]
-
- // Define routes accessible only to authenticated users
- const routesForAuthenticatedOnly = [
- {
- path: "/",
- element: , // Wrap the component in ProtectedRoute
- children: [
- {
- path: "/",
- element: ,
- },
- {
- path: "/profile",
- element:
User Profile
,
- },
- {
- path: "/logout",
- element: ,
- },
- ],
- },
- ]
-
- // Define routes accessible only to non-authenticated users
- const routesForNotAuthenticatedOnly = [
- {
- path: "/",
- element: Home Page
,
- },
- {
- path: "/login",
- element: ,
- },
- ]
-
- // Combine and conditionally include routes based on authentication status
- const router = createBrowserRouter([...routesForPublic, ...(!token ? routesForNotAuthenticatedOnly : []), ...routesForAuthenticatedOnly])
-
- // Provide the router configuration using RouterProvider
- return
-}
-
-export default Routes;