Files
Holzleitner-Lieferservice-App/lib/feature/authentication/bloc/auth_bloc.dart
Dennis Nemec b19a6e1cd4 Initial draft
2025-09-20 16:14:06 +02:00

29 lines
1.0 KiB
Dart

import 'package:hl_lieferservice/feature/authentication/bloc/auth_event.dart';
import 'package:hl_lieferservice/feature/authentication/bloc/auth_state.dart';
import 'package:hl_lieferservice/repository/user_repository.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:hl_lieferservice/widget/operations/bloc/operation_bloc.dart';
import 'package:hl_lieferservice/widget/operations/bloc/operation_event.dart';
class AuthBloc extends Bloc<AuthEvent, AuthState> {
UserRepository repository;
OperationBloc operationBloc;
AuthBloc({required this.repository, required this.operationBloc})
: super(Unauthenticated()) {
on<Authenticate>(_auth);
on<Logout>(_logout);
}
Future<void> _auth(Authenticate event, Emitter<AuthState> emit) async {
operationBloc.add(LoadOperation());
await Future.delayed(Duration(seconds: 5));
emit(Authenticated(teamId: event.username));
operationBloc.add(FinishOperation());
}
Future<void> _logout(Logout event, Emitter<AuthState> emit) async {
emit(Unauthenticated());
}
}