Publish curated GeoIntel source snapshot

This commit is contained in:
Jens committed 2026-09-29 22:16:56 +02:00
commit 0aae654d6e
764 files changed
+169154

No files matched your search

+47
View File
@@ -0,0 +1,47 @@
import { Suspense, lazy } from 'react'
import { LandingPage } from './components/auth/LandingPage'
import { useOperatorSession } from './hooks/useOperatorSession'
// De werkbank wordt pas opgehaald wanneer iemand is aangemeld. Daardoor betaalt
// het inlogscherm niet voor de kaartmotor en de paneelopmaak.
const WorkbenchApp = lazy(() => import('./WorkbenchApp'))
function Voorbereiden({ tekst }: { tekst: string }): JSX.Element {
return (
<div className="landing-auth-loading" role="status" aria-live="polite">
<div><span aria-hidden="true" /><strong>{tekst}</strong></div>
</div>
)
}
function App(): JSX.Element {
const { session, sessionError, loggingOut, handleAuthenticated, handleLogout } = useOperatorSession()
if (session === null) {
return <Voorbereiden tekst="GeoIntel wordt voorbereid…" />
}
if (!session.authenticated) {
return (
<LandingPage
serviceError={sessionError}
guestAccessEnabled={session.guest_access_enabled}
authentikEnabled={session.authentik_enabled}
onAuthenticated={handleAuthenticated}
/>
)
}
return (
<Suspense fallback={<Voorbereiden tekst="De werkbank wordt geladen…" />}>
<WorkbenchApp
username={session.username}
accessMode={session.role ?? (session.authentication_required ? 'operator' : 'open')}
loggingOut={loggingOut}
onLogout={handleLogout}
/>
</Suspense>
)
}
export default App