feat: update landing page and add new library and scan pages
- Refactor landing page content and links for better user experience. - Introduce a new library page to display disease information with filtering and modal details. - Add a scan page for users to upload images for diagnosis with a preview modal. - Enhance login and registration pages with automatic navigation to the dashboard. - Integrate vite-tsconfig-paths for improved path resolution in Vite configuration.
This commit is contained in:
+56
-31
@@ -1,47 +1,72 @@
|
||||
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
|
||||
import { createBrowserRouter, RouterProvider } from 'react-router-dom';
|
||||
import { AuthGuard } from '@/components/auth-guard';
|
||||
import { DashboardPage } from '@/pages/dashboard-page';
|
||||
import { LandingPage } from '@/pages/landing-page';
|
||||
import { CatalogPage } from '@/pages/catalog-page';
|
||||
import { DiseaseDetailPage } from '@/pages/disease-detail-page';
|
||||
import { DiagnosisDetailPage } from '@/pages/diagnosis-detail-page';
|
||||
import { ExpertReviewsPage } from '@/pages/expert-reviews-page';
|
||||
import { LoginPage } from '@/pages/login-page';
|
||||
import { RegisterPage } from '@/pages/register-page';
|
||||
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
|
||||
import {
|
||||
createBrowserRouter,
|
||||
RouterProvider,
|
||||
Navigate,
|
||||
} from "react-router-dom";
|
||||
import { DashboardPage } from "@/pages/dashboard-page";
|
||||
// import { LandingPage } from "@/pages/landing-page";
|
||||
import { ScanPage } from "@/pages/scan-page";
|
||||
import { LibraryPage } from "@/pages/library-page";
|
||||
import { CatalogPage } from "@/pages/catalog-page";
|
||||
import { DiseaseDetailPage } from "@/pages/disease-detail-page";
|
||||
import { DiagnosisDetailPage } from "@/pages/diagnosis-detail-page";
|
||||
import { ExpertReviewsPage } from "@/pages/expert-reviews-page";
|
||||
// import { LoginPage } from "@/pages/login-page";
|
||||
// import { RegisterPage } from "@/pages/register-page";
|
||||
import { MainLayout } from "@/components/layout/main-layout";
|
||||
|
||||
const queryClient = new QueryClient();
|
||||
|
||||
const router = createBrowserRouter([
|
||||
{ path: '/', element: <LandingPage /> },
|
||||
{ path: '/login', element: <LoginPage /> },
|
||||
{ path: '/register', element: <RegisterPage /> },
|
||||
// {
|
||||
// path: "/",
|
||||
// element: (
|
||||
// <MainLayout>
|
||||
// <LandingPage />
|
||||
// </MainLayout>
|
||||
// ),
|
||||
// },
|
||||
{
|
||||
path: '/dashboard',
|
||||
path: "/",
|
||||
element: <Navigate to="/dashboard" replace />,
|
||||
},
|
||||
{
|
||||
path: "/scan",
|
||||
element: (
|
||||
<AuthGuard>
|
||||
<MainLayout>
|
||||
<ScanPage />
|
||||
</MainLayout>
|
||||
),
|
||||
},
|
||||
{
|
||||
path: "/library",
|
||||
element: (
|
||||
<MainLayout>
|
||||
<LibraryPage />
|
||||
</MainLayout>
|
||||
),
|
||||
},
|
||||
// { path: "/login", element: <LoginPage /> },
|
||||
// { path: "/register", element: <RegisterPage /> },
|
||||
{
|
||||
path: "/dashboard",
|
||||
element: (
|
||||
<MainLayout>
|
||||
<DashboardPage />
|
||||
</AuthGuard>
|
||||
</MainLayout>
|
||||
),
|
||||
},
|
||||
{
|
||||
path: '/diagnoses/:id',
|
||||
element: (
|
||||
<AuthGuard>
|
||||
<DiagnosisDetailPage />
|
||||
</AuthGuard>
|
||||
),
|
||||
path: "/diagnoses/:id",
|
||||
element: <DiagnosisDetailPage />,
|
||||
},
|
||||
{
|
||||
path: '/expert/reviews',
|
||||
element: (
|
||||
<AuthGuard requireExpert>
|
||||
<ExpertReviewsPage />
|
||||
</AuthGuard>
|
||||
),
|
||||
path: "/expert/reviews",
|
||||
element: <ExpertReviewsPage />,
|
||||
},
|
||||
{ path: '/catalog', element: <CatalogPage /> },
|
||||
{ path: '/catalog/:slug', element: <DiseaseDetailPage /> },
|
||||
{ path: "/catalog", element: <CatalogPage /> },
|
||||
{ path: "/catalog/:slug", element: <DiseaseDetailPage /> },
|
||||
]);
|
||||
|
||||
export function App() {
|
||||
|
||||
Reference in New Issue
Block a user