Files
flutterApp/lib/features/auth/presentation/bloc/login_bloc.dart
2026-01-11 19:42:22 +08:00

25 lines
670 B
Dart

import 'package:flutter_bloc/flutter_bloc.dart';
import '../../domain/usecases/login_usecase.dart';
import 'login_event.dart';
import 'login_state.dart';
class LoginBloc extends Bloc<LoginEvent, LoginState> {
final LoginUseCase loginUseCase;
LoginBloc(this.loginUseCase) : super(LoginInitial()) {
on<LoginSubmitted>((event, emit) async {
emit(LoginLoading());
try {
final user = await loginUseCase(
LoginParams(event.username, event.password, event.sourceType),
);
print('✅ Got user: $user');
emit(LoginSuccess(user));
} catch (e) {
emit(LoginFailure(e.toString()));
}
});
}
}