Files
prosappco/lib/blocs/my_user_bloc/my_user_bloc.dart
T
2024-02-16 08:52:37 -05:00

27 lines
790 B
Dart

import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:equatable/equatable.dart';
import 'package:user_repository/user_repository.dart';
part 'my_user_event.dart';
part 'my_user_state.dart';
class MyUserBloc extends Bloc<MyUserEvent, MyUserState> {
final UserRepository _userRepository;
MyUserBloc({required UserRepository myUserRepository})
: _userRepository = myUserRepository,
super(const MyUserState.loading()) {
on<GetMyUser>(_onGetMyUser);
}
void _onGetMyUser(GetMyUser event, Emitter<MyUserState> emit) async {
emit(const MyUserState.loading());
try {
MyUser myUser = await _userRepository.getMyUser(event.myUserId);
emit(MyUserState.success(myUser));
} catch (e) {
emit(const MyUserState.failure());
}
}
}