import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:equatable/equatable.dart'; import 'package:user_repository/user_repository.dart'; part 'sign_up_event.dart'; part 'sign_up_state.dart'; class SignUpBloc extends Bloc { final UserRepository _userRepository; SignUpBloc({required UserRepository userRepository}) : _userRepository = userRepository, super(SignUpInitial()) { on(_onSignUpRequired); } void _onSignUpRequired( SignUpRequired event, Emitter emit) async { emit(SignUpProcess()); try { MyUser user = await _userRepository.signUp(event.user, event.password); await _userRepository.setUserData(user); emit(SignUpSuccess()); } catch (e) { emit(SignUpFailure()); } } }