/**
* Main Application Component with Routing and Authentication
*
* © 2025 Netwerk Digitaal Erfgoed & TextPast. All rights reserved.
*/
import {
createBrowserRouter,
RouterProvider,
Navigate,
} from 'react-router-dom';
import { AuthProvider } from './contexts/AuthContext';
import { LanguageProvider } from './contexts/LanguageContext';
import { ProtectedRoute } from './components/ProtectedRoute';
import { Layout } from './components/layout/Layout';
import { Visualize } from './pages/Visualize';
import { Database } from './pages/Database';
import { Settings } from './pages/Settings';
import { LoginPage } from './pages/LoginPage';
import QueryBuilderPage from './pages/QueryBuilderPage';
import LinkMLViewerPage from './pages/LinkMLViewerPage';
import OntologyViewerPage from './pages/OntologyViewerPage';
import NDEMapPage from './pages/NDEMapPage';
import NDEStatsPage from './pages/NDEStatsPage';
import ProjectPlanPage from './pages/ProjectPlanPage';
import './App.css';
// Create router configuration with protected routes
// All pages use the standard Layout with navigation at the top
const router = createBrowserRouter([
{
path: '/login',
element: ,
},
{
path: '/',
element: (
),
children: [
{
// Home page shows the Project Plan
index: true,
element: ,
},
{
path: 'visualize',
element: ,
},
{
path: 'database',
element: ,
},
{
path: 'settings',
element: ,
},
{
path: 'query-builder',
element: ,
},
{
// Redirect old UML viewer route to unified visualize page
path: 'uml-viewer',
element: ,
},
{
path: 'linkml',
element: ,
},
{
path: 'ontology',
element: ,
},
{
path: 'map',
element: ,
},
{
path: 'stats',
element: ,
},
],
},
]);
function App() {
return (
);
}
export default App;