1- // import "./App.css";
2- // import { useState, useEffect, useRef } from "react";
3- // import CodeEditorPage from "./CodeEditor/Page";
4- // import { ThemeProvider } from "./ThemeProvider";
5- // import { ProfileProvider } from "./Contexts/ProfileContext";
6- // import Login from "./components/login";
7- // import Signup from "./components/signup";
8- // import Dashboard from "./Dashboard/Dashboard";
9- // import CodespaceInvitation from "./Dashboard/AcceptInvite";
10- // import ProfilePage from "./Dashboard/profile";
11- // import SettingsPage from "./Dashboard/ProfileSetting";
12- // import Homepage from "./Home/Homepage";
13- // import { BrowserRouter as Router, Routes, Route, Navigate } from "react-router";
14- // import { supabase } from "./database/superbase";
15- // import { type Session, type User } from "@supabase/supabase-js";
16- // function App() {
17- // const [session, setSession] = useState<Session | null>(null);
18- // const lastTokenRef = useRef<string | undefined>(undefined);
19-
20- // useEffect(() => {
21- // console.log("App mounted");
22-
23- // const {
24- // data: { subscription },
25- // } = supabase.auth.onAuthStateChange((_event, session) => {
26- // const currentToken = session?.access_token;
27-
28- // if (lastTokenRef.current !== currentToken) {
29- // console.log("Session updated:", session);
30- // lastTokenRef.current = currentToken;
31- // setSession(session);
32- // if (session) upsertProfile(session.user);
33- // }
34- // });
35- // return () => subscription.unsubscribe();
36- // }, []);
37-
38- // async function upsertProfile(user: User) {
39- // const { id, user_metadata, email } = user;
40- // const full_name = user_metadata.full_name || "";
41- // const avatar_url = user_metadata.avatar_url || "";
42-
43- // const { error } = await supabase
44- // .from("profiles")
45- // .upsert({ id, full_name, email, avatar_url }, { onConflict: "id" });
46-
47- // if (error) console.error("Error upserting profile:", error.message);
48- // }
49-
50- // function ProtectedRoute({ children }: { children: React.ReactNode }) {
51- // return session ? children : <Navigate to="/login" />;
52- // }
53-
54- // return (
55- // <ThemeProvider>
56- // <ProfileProvider>
57- // <Router>
58- // <Routes>
59- // <Route path="/login" element={<Login />} />
60- // <Route path="/signup" element={<Signup />} />
61- // <Route path="/homepage" element={<Homepage />} />
62-
63- // <Route
64- // path="/dashboard"
65- // element={
66- // <ProtectedRoute>
67- // {session && <Dashboard session={session} /> }
68- // </ProtectedRoute>
69- // }
70- // />
71- // <Route
72- // path="/profile"
73- // element={
74- // <ProtectedRoute>
75- // <ProfilePage />
76- // </ProtectedRoute>
77- // }
78- // />
79- // <Route
80- // path="/settings"
81- // element={
82- // <ProtectedRoute>
83- // <SettingsPage />
84- // </ProtectedRoute>
85- // }
86- // />
87-
88- // <Route path="/codeeditor/:id" element={<CodeEditorPage />} />
89- // <Route
90- // path="/codespace/sharebyemail/:invitationId"
91- // element={<CodespaceInvitation />}
92- // />
93- // <Route
94- // path="/codeeditor"
95- // element={
96- // <ProtectedRoute>
97- // <CodeEditorPage />
98- // </ProtectedRoute>
99- // }
100- // />
101- // <Route path="/" element={<Homepage />} />
102- // </Routes>
103- // </Router>
104- // </ProfileProvider>
105- // </ThemeProvider>
106- // );
107- // }
108-
109- // export default App;
1+
1102import "./App.css" ;
1113import { useState , useEffect , useRef } from "react" ;
1124import CodeEditorPage from "./CodeEditor/Page" ;
@@ -120,7 +12,6 @@ import ProfilePage from "./Dashboard/profile";
12012import SettingsPage from "./Dashboard/ProfileSetting" ;
12113import Homepage from "./Home/Homepage" ;
12214
123- // 🚩 use react-router-dom (not react-router)
12415import {
12516 BrowserRouter as Router ,
12617 Routes ,
0 commit comments