This commit is contained in:
Andras Schmelczer 2026-02-10 22:21:15 +00:00
parent 1f68ca0512
commit 3599803589
43 changed files with 3578 additions and 262 deletions

View file

@ -1,6 +1,5 @@
import { useState, useEffect, useCallback, useMemo } from 'react';
import MapPage, { type ExportState } from './components/map/MapPage';
import LearnPage from './components/learn/LearnPage';
import PricingPage from './components/pricing/PricingPage';
import HomePage from './components/home/HomePage';
import SavedSearchesPage from './components/saved-searches/SavedSearchesPage';
@ -26,9 +25,7 @@ function pageToPath(page: Page): string {
switch (page) {
case 'dashboard':
return '/dashboard';
case 'learn':
return '/learn';
case 'saved-searches':
case 'saved-searches':
return '/saved';
case 'pricing':
return '/pricing';
@ -39,8 +36,7 @@ function pageToPath(page: Page): string {
function pathToPage(pathname: string): Page | null {
if (pathname === '/dashboard') return 'dashboard';
if (pathname === '/learn') return 'learn';
if (pathname === '/saved') return 'saved-searches';
if (pathname === '/saved') return 'saved-searches';
if (pathname === '/pricing') return 'pricing';
if (pathname === '/') return 'home';
return null;
@ -81,7 +77,7 @@ export default function App() {
// Backward compat: dashboard params on unknown path
const params = new URLSearchParams(window.location.search);
if (params.has('lat') || params.has('filter') || params.has('poi') || params.has('tab') || params.has('v') || params.has('f')) {
if (params.has('lat') || params.has('filter') || params.has('poi') || params.has('tab') || params.has('v') || params.has('f') || params.has('dest')) {
// Rewrite URL to /dashboard keeping query params
window.history.replaceState({ page: 'dashboard' }, '', `/dashboard${window.location.search}`);
return 'dashboard';
@ -207,6 +203,7 @@ export default function App() {
onNavigateTo={() => {}}
screenshotMode
ogMode={isOgMode}
initialTravelTime={urlState.travelTime}
/>
);
}
@ -236,8 +233,6 @@ export default function App() {
/>
{activePage === 'home' ? (
<HomePage onOpenDashboard={() => navigateTo('dashboard')} onOpenPricing={() => navigateTo('pricing')} theme={theme} features={features} />
) : activePage === 'learn' ? (
<LearnPage />
) : activePage === 'pricing' ? (
<PricingPage onOpenDashboard={() => navigateTo('dashboard')} />
) : activePage === 'saved-searches' ? (
@ -264,6 +259,7 @@ export default function App() {
onNavigateTo={navigateTo}
onExportStateChange={setExportState}
isMobile={isMobile}
initialTravelTime={urlState.travelTime}
/>
)}
{showAuthModal && (