Compare commits

..

2 Commits

Author SHA1 Message Date
Leon Bösche
5caf3f6b62 idle 2026-01-08 22:09:52 +01:00
Leon Bösche
b18a171ac2 idle 2026-01-08 22:09:45 +01:00

View File

@@ -1,6 +1,7 @@
import 'package:bloc/bloc.dart'; import 'package:bloc/bloc.dart';
import '../session/session_bloc.dart'; import '../session/session_bloc.dart';
import '../session/session_event.dart'; import '../session/session_event.dart';
import '../session/session_state.dart';
import 'auth_event.dart'; import 'auth_event.dart';
import 'auth_state.dart'; import 'auth_state.dart';
import '../../services/api_client.dart'; import '../../services/api_client.dart';
@@ -252,20 +253,21 @@ class AuthBloc extends Bloc<AuthEvent, AuthState> {
CheckAuthRequested event, CheckAuthRequested event,
Emitter<AuthState> emit, Emitter<AuthState> emit,
) async { ) async {
// Try to restore session from persistent storage // Check if session is active from persistent storage
final sessionState = sessionBloc.state; final sessionState = sessionBloc.state;
if (sessionState is SessionActive) { if (sessionState is SessionActive) {
// Session already active // Session already active - emit authenticated state with minimal info
emit(AuthAuthenticated( // The full user info will be fetched when needed
token: sessionState.token, emit(
userId: '', AuthAuthenticated(
username: '', token: sessionState.token,
email: '', userId: '',
)); username: '',
email: '',
),
);
} else { } else {
// Try to restore from SharedPreferences
await Future.delayed(const Duration(milliseconds: 100)); // Give time for restoration
emit(AuthUnauthenticated()); emit(AuthUnauthenticated());
} }
} }