diff --git a/frontend/src/components/auth/LoginForm.vue b/frontend/src/components/auth/LoginForm.vue index 7e74ddf..a3422a6 100644 --- a/frontend/src/components/auth/LoginForm.vue +++ b/frontend/src/components/auth/LoginForm.vue @@ -11,7 +11,7 @@ const authStore = useAuthStore() const email = ref('') const password = ref('') -const keepSession = ref(false) +const keepSession = ref(true) const isLoading = ref(false) const errorMessage = ref('') const showPassword = ref(false) diff --git a/frontend/src/components/map/ETACard.vue b/frontend/src/components/map/ETACard.vue index 846d9a2..31d4db2 100644 --- a/frontend/src/components/map/ETACard.vue +++ b/frontend/src/components/map/ETACard.vue @@ -28,7 +28,7 @@

-
+
place
@@ -51,7 +51,9 @@
- Calculando satélites... + + {{ stopName ? 'Calculando llegada...' : 'Cargando datos de ruta...' }} +
diff --git a/frontend/src/router/index.ts b/frontend/src/router/index.ts index aa782dd..e2f9859 100644 --- a/frontend/src/router/index.ts +++ b/frontend/src/router/index.ts @@ -5,6 +5,13 @@ import { useAuthStore } from '@/stores/auth' const router = createRouter({ history: createWebHistory(import.meta.env.BASE_URL), + scrollBehavior(_to, _from, savedPosition) { + if (savedPosition) { + return savedPosition; + } else { + return { top: 0 }; + } + }, routes: [ // ─── Vistas Públicas Core ─────────────────────────────────────────── { diff --git a/frontend/src/views/MapView.vue b/frontend/src/views/MapView.vue index 6a8eab1..64cd173 100644 --- a/frontend/src/views/MapView.vue +++ b/frontend/src/views/MapView.vue @@ -701,7 +701,7 @@ watch([() => authStore.userProfile?.auto_location, isLoaded], ([canLocate, loade :walk-distance="distanciaMetros" :walk-duration="duracionCaminata" :buses="busesActivos" - :is-loading="etaCargando" + :is-loading="etaCargando || isUpdatingMarkers || flujoCargando" @close="handleETACardDismiss" @refresh="paradaCercana && routeStore.selectedRouteId ? calcularETA(routeStore.selectedRouteId, paradaCercana) : null" /> @@ -751,7 +751,7 @@ watch([() => authStore.userProfile?.auto_location, isLoaded], ([canLocate, loade .map-floating-controls { position: fixed; - bottom: 85px; + bottom: calc(95px + var(--safe-area-bottom)); right: 16px; display: flex; flex-direction: column; @@ -865,6 +865,8 @@ watch([() => authStore.userProfile?.auto_location, isLoaded], ([canLocate, loade } @media (max-width: 600px) { - .map-floating-controls { bottom: 100px; } + .map-floating-controls { + bottom: calc(100px + var(--safe-area-bottom)); + } }