104 lines
3.1 KiB
TypeScript
104 lines
3.1 KiB
TypeScript
import { Toaster } from "@/components/ui/toaster";
|
|
import { Toaster as Sonner } from "@/components/ui/sonner";
|
|
import { TooltipProvider } from "@/components/ui/tooltip";
|
|
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
|
|
import { BrowserRouter, Routes, Route } from "react-router-dom";
|
|
import { AuthProvider } from "@/contexts/AuthContext";
|
|
import { ProtectedRoute } from "@/components/ProtectedRoute";
|
|
import Dashboard from "./pages/Dashboard";
|
|
import DocumentationPage from "./pages/DocumentationPage";
|
|
import AnalysisPage from "./pages/AnalysisPage";
|
|
import ALMTypePage from "./pages/ALMTypePage";
|
|
import TraceabilityMatrixPage from "./pages/TraceabilityMatrixPage";
|
|
import ESPIDFHelperPage from "./pages/ESPIDFHelperPage";
|
|
import WorkPackageGraphPage from "./pages/WorkPackageGraphPage";
|
|
import SelectedSensorsPage from "./pages/SelectedSensorsPage";
|
|
import LoginPage from "./pages/LoginPage";
|
|
import NotFound from "./pages/NotFound";
|
|
|
|
const queryClient = new QueryClient();
|
|
|
|
const App = () => (
|
|
<QueryClientProvider client={queryClient}>
|
|
<TooltipProvider>
|
|
<Toaster />
|
|
<Sonner />
|
|
<BrowserRouter>
|
|
<AuthProvider>
|
|
<Routes>
|
|
<Route path="/login" element={<LoginPage />} />
|
|
<Route
|
|
path="/"
|
|
element={
|
|
<ProtectedRoute>
|
|
<Dashboard />
|
|
</ProtectedRoute>
|
|
}
|
|
/>
|
|
<Route
|
|
path="/documentation"
|
|
element={
|
|
<ProtectedRoute>
|
|
<DocumentationPage />
|
|
</ProtectedRoute>
|
|
}
|
|
/>
|
|
<Route
|
|
path="/analysis"
|
|
element={
|
|
<ProtectedRoute>
|
|
<AnalysisPage />
|
|
</ProtectedRoute>
|
|
}
|
|
/>
|
|
<Route
|
|
path="/matrix"
|
|
element={
|
|
<ProtectedRoute>
|
|
<TraceabilityMatrixPage />
|
|
</ProtectedRoute>
|
|
}
|
|
/>
|
|
<Route
|
|
path="/esp-idf"
|
|
element={
|
|
<ProtectedRoute>
|
|
<ESPIDFHelperPage />
|
|
</ProtectedRoute>
|
|
}
|
|
/>
|
|
<Route
|
|
path="/graph"
|
|
element={
|
|
<ProtectedRoute>
|
|
<WorkPackageGraphPage />
|
|
</ProtectedRoute>
|
|
}
|
|
/>
|
|
<Route
|
|
path="/sensors"
|
|
element={
|
|
<ProtectedRoute>
|
|
<SelectedSensorsPage />
|
|
</ProtectedRoute>
|
|
}
|
|
/>
|
|
<Route
|
|
path="/alm/:type"
|
|
element={
|
|
<ProtectedRoute>
|
|
<ALMTypePage />
|
|
</ProtectedRoute>
|
|
}
|
|
/>
|
|
{/* ADD ALL CUSTOM ROUTES ABOVE THE CATCH-ALL "*" ROUTE */}
|
|
<Route path="*" element={<NotFound />} />
|
|
</Routes>
|
|
</AuthProvider>
|
|
</BrowserRouter>
|
|
</TooltipProvider>
|
|
</QueryClientProvider>
|
|
);
|
|
|
|
export default App;
|