import React from "react"; import ReactDOM from "react-dom/client"; import "./index.css"; import { createBrowserRouter, RouterProvider } from "react-router-dom"; import App from "./Pages/App"; import YourProjectsPage from "./Pages/YourProjectsPage.tsx"; import UserProjectPage from "./Pages/UserPages/UserProjectPage.tsx"; import AdminMenuPage from "./Pages/AdminPages/AdminMenuPage.tsx"; import UserEditTimeReportPage from "./Pages/UserPages/UserEditTimeReportPage.tsx"; import UserNewTimeReportPage from "./Pages/UserPages/UserNewTimeReportPage.tsx"; import UserViewTimeReportsPage from "./Pages/UserPages/UserViewTimeReportsPage.tsx"; import PMChangeRole from "./Pages/ProjectManagerPages/PMChangeRole.tsx"; import PMOtherUsersTR from "./Pages/ProjectManagerPages/PMOtherUsersTR.tsx"; import PMProjectMembers from "./Pages/ProjectManagerPages/PMProjectMembers.tsx"; import PMProjectPage from "./Pages/ProjectManagerPages/PMProjectPage.tsx"; import PMTotalTimeActivity from "./Pages/ProjectManagerPages/PMTotalTimeActivity.tsx"; import PMTotalTimeRole from "./Pages/ProjectManagerPages/PMTotalTimeRole.tsx"; import PMUnsignedReports from "./Pages/ProjectManagerPages/PMUnsignedReports.tsx"; import PMViewUnsignedReport from "./Pages/ProjectManagerPages/PMViewUnsignedReport.tsx"; import AdminManageUsers from "./Pages/AdminPages/AdminManageUsers.tsx"; import AdminManageProjects from "./Pages/AdminPages/AdminManageProjects.tsx"; import AdminAddProject from "./Pages/AdminPages/AdminAddProject.tsx"; import AdminAddUser from "./Pages/AdminPages/AdminAddUser.tsx"; import AdminProjectAddMember from "./Pages/AdminPages/AdminProjectAddMember.tsx"; import AdminProjectStatistics from "./Pages/AdminPages/AdminProjectStatistics.tsx"; import NotFoundPage from "./Pages/NotFoundPage.tsx"; import UnauthorizedPage from "./Pages/UnauthorizedPage.tsx"; import PMViewOtherUsersTR from "./Pages/ProjectManagerPages/PMViewOtherUsersTR.tsx"; // This is where the routes are mounted const router = createBrowserRouter([ { path: "/", element: , errorElement: , }, { path: "/admin", element: , }, { path: "/yourProjects", element: , }, { path: "/project/:projectName", element: , }, { path: "/newTimeReport/:projectName", element: , }, { path: "/timeReports/:projectName", element: , }, { path: "/editTimeReport/:projectName/:fetchedWeek", element: , }, { path: "/changeRole/:projectName/:username", element: , }, { path: "/otherUsersTimeReports/:projectName/:username", element: , }, { path: "/editOthersTR/:projectName/:username/:fetchedWeek", element: , }, { path: "/projectMembers/:projectName", element: , }, { path: "/PMProjectPage/:projectName", element: , }, { path: "/PMTimeActivity/:projectName", element: , }, { path: "/PMTimeRole/:projectName", element: , }, { path: "/unsignedReports/:projectName", element: , }, { path: "/PMViewUnsignedReport/:projectName/:username/:fetchedWeek", element: , }, { path: "/adminProjectAddMember", element: , }, { path: "/adminProjectStatistics", element: , }, { path: "/addProject", element: , }, { path: "/adminAddUser", element: , }, { path: "/adminManageProject", element: , }, { path: "/adminManageUser", element: , }, { path: "/unauthorized", element: , }, ]); // Semi-hacky way to get the root element const root = document.getElementById("root") ?? document.createElement("div"); // Render the router at the root ReactDOM.createRoot(root).render( , );