|
| 1 | +import { createBrowserRouter } from "react-router-dom"; |
| 2 | +import { Home, Login, Signup, Dashboard, CreateJob, Jobs, ResetPassword, EditJob, Logs, JobLogs, Settings, NotFoundPage, ForgotPassword, VerifyEmail, PrivacyPolicy, Terms } from "./pages"; |
| 3 | +import { Layout, ProtectedRoute, PublicRoute } from "./components"; |
| 4 | + |
| 5 | +export const router = createBrowserRouter([ |
| 6 | + { path: "/", element: <Home /> }, |
| 7 | + { path: "/privacy-policy", element: <PrivacyPolicy /> }, |
| 8 | + { path: "/terms", element: <Terms /> }, |
| 9 | + |
| 10 | + { path: "/login", element: <PublicRoute><Login /></PublicRoute> }, |
| 11 | + { path: "/signup", element: <PublicRoute><Signup /></PublicRoute> }, |
| 12 | + { path: "/forgot-password", element: <PublicRoute><ForgotPassword /></PublicRoute> }, |
| 13 | + |
| 14 | + { path: "/verify-email/:userId", element: <VerifyEmail /> }, |
| 15 | + { path: "/reset-password/:token", element: <ResetPassword /> }, |
| 16 | + |
| 17 | + { |
| 18 | + element: <ProtectedRoute />, |
| 19 | + children: [ |
| 20 | + { |
| 21 | + element: <Layout />, |
| 22 | + children: [ |
| 23 | + { path: "/dashboard", element: <Dashboard /> }, |
| 24 | + { path: "/create", element: <CreateJob /> }, |
| 25 | + { path: "/jobs", element: <Jobs /> }, |
| 26 | + { path: "/job/:jobId/logs", element: <JobLogs /> }, |
| 27 | + { path: "/job/:jobId/edit", element: <EditJob /> }, |
| 28 | + { path: "/logs", element: <Logs /> }, |
| 29 | + { path: "/settings", element: <Settings /> }, |
| 30 | + ] |
| 31 | + } |
| 32 | + ] |
| 33 | + }, |
| 34 | + |
| 35 | + { path: "*", element: <NotFoundPage /> } |
| 36 | +]); |
0 commit comments