@@ -7,6 +7,7 @@ import MatchRequests from './components/MatchRequests';
77import Matches from './components/Matches' ;
88import { useAuth0 } from '@auth0/auth0-react' ;
99import Profile from './components/Profile' ;
10+ import { UserIDProvider } from './contexts/UserIDContext' ;
1011
1112interface AppProps {
1213 toggleColorMode : ( ) => void ;
@@ -40,79 +41,81 @@ const ProtectedRoute = ({ children }: { children: React.ReactNode }) => {
4041
4142const App = ( { toggleColorMode, mode } : AppProps ) => {
4243 return (
43- < Router >
44- < Routes >
45- { /* Public routes */ }
46- < Route path = "/login" element = { < Login /> } />
44+ < UserIDProvider >
45+ < Router >
46+ < Routes >
47+ { /* Public routes */ }
48+ < Route path = "/login" element = { < Login /> } />
4749
48- { /* Protected routes - all require authentication */ }
49- < Route
50- path = "/"
51- element = {
52- < ProtectedRoute >
53- < Layout toggleColorMode = { toggleColorMode } mode = { mode } >
54- < Dashboard />
55- </ Layout >
56- </ ProtectedRoute >
57- }
58- />
59- < Route
60- path = "/dashboard"
61- element = {
62- < ProtectedRoute >
63- < Layout toggleColorMode = { toggleColorMode } mode = { mode } >
64- < Dashboard />
65- </ Layout >
66- </ ProtectedRoute >
67- }
68- />
69- < Route
70- path = "/preferences "
71- element = {
72- < ProtectedRoute >
73- < Layout toggleColorMode = { toggleColorMode } mode = { mode } >
74- < MatchRequests />
75- </ Layout >
76- </ ProtectedRoute >
77- }
78- />
79- < Route
80- path = "/matches"
81- element = {
82- < ProtectedRoute >
83- < Layout toggleColorMode = { toggleColorMode } mode = { mode } >
84- < Matches />
85- </ Layout >
86- </ ProtectedRoute >
87- }
88- />
89- < Route
90- path = "/profile"
91- element = {
92- < ProtectedRoute >
93- < Layout toggleColorMode = { toggleColorMode } mode = { mode } >
94- < Profile />
95- </ Layout >
96- </ ProtectedRoute >
97- }
98- />
50+ { /* Protected routes - all require authentication */ }
51+ < Route
52+ path = "/"
53+ element = {
54+ < ProtectedRoute >
55+ < Layout toggleColorMode = { toggleColorMode } mode = { mode } >
56+ < Dashboard />
57+ </ Layout >
58+ </ ProtectedRoute >
59+ }
60+ />
61+ < Route
62+ path = "/dashboard"
63+ element = {
64+ < ProtectedRoute >
65+ < Layout toggleColorMode = { toggleColorMode } mode = { mode } >
66+ < Dashboard />
67+ </ Layout >
68+ </ ProtectedRoute >
69+ }
70+ />
71+ < Route
72+ path = "/matchrequests "
73+ element = {
74+ < ProtectedRoute >
75+ < Layout toggleColorMode = { toggleColorMode } mode = { mode } >
76+ < MatchRequests />
77+ </ Layout >
78+ </ ProtectedRoute >
79+ }
80+ />
81+ < Route
82+ path = "/matches"
83+ element = {
84+ < ProtectedRoute >
85+ < Layout toggleColorMode = { toggleColorMode } mode = { mode } >
86+ < Matches />
87+ </ Layout >
88+ </ ProtectedRoute >
89+ }
90+ />
91+ < Route
92+ path = "/profile"
93+ element = {
94+ < ProtectedRoute >
95+ < Layout toggleColorMode = { toggleColorMode } mode = { mode } >
96+ < Profile />
97+ </ Layout >
98+ </ ProtectedRoute >
99+ }
100+ />
99101
100- { /* Account settings route */ }
101- < Route
102- path = "/account"
103- element = {
104- < ProtectedRoute >
105- < Layout toggleColorMode = { toggleColorMode } mode = { mode } >
106- < div > Account Settings (Coming Soon)</ div >
107- </ Layout >
108- </ ProtectedRoute >
109- }
110- />
102+ { /* Account settings route */ }
103+ < Route
104+ path = "/account"
105+ element = {
106+ < ProtectedRoute >
107+ < Layout toggleColorMode = { toggleColorMode } mode = { mode } >
108+ < div > Account Settings (Coming Soon)</ div >
109+ </ Layout >
110+ </ ProtectedRoute >
111+ }
112+ />
111113
112- { /* Catch all route */ }
113- < Route path = "*" element = { < Navigate to = "/" replace /> } />
114- </ Routes >
115- </ Router >
114+ { /* Catch all route */ }
115+ < Route path = "*" element = { < Navigate to = "/" replace /> } />
116+ </ Routes >
117+ </ Router >
118+ </ UserIDProvider >
116119 ) ;
117120} ;
118121
0 commit comments