after rediense

This commit is contained in:
Felipe
2024-02-26 16:32:31 -05:00
parent a1e367bdf3
commit 11d9ee6d35
11 changed files with 256 additions and 223 deletions
+10 -9
View File
@@ -30,15 +30,16 @@ class ProfileBloc extends Bloc<ProfileEvent, ProfileState> {
UpdateUserInfo event, Emitter<ProfileState> emit) async {
emit(UpdateUserInfoLoading());
try {
await _userRepository.updateUserInfo(event.userId, event.picture, {
'name': event.name,
// 'picture': event.picture,
'nickname': event.nickname,
'email': event.email,
'phone': event.phone,
'birthDate': event.birthDate,
'gender': event.gender
});
final userImageUrl = event.filePicture != null
? await _userRepository.uploadPicture(
event.filePicture!, event.myUser.id)
: null;
final myUser = userImageUrl == null
? event.myUser
: event.myUser.copyWith(picture: userImageUrl);
await _userRepository.updateUserInfo(myUser);
emit(const UpdateUserInfoSuccess());
} catch (e) {
emit(UpdateUserInfoFailure());
+5 -28
View File
@@ -7,38 +7,15 @@ abstract class ProfileEvent extends Equatable {
List<Object?> get props => [];
}
class UploadPicture extends ProfileEvent {
final String file;
final String userId;
const UploadPicture(this.file, this.userId);
@override
List<Object?> get props => [file, userId];
}
class UpdateUserInfo extends ProfileEvent {
final String userId;
final String picture;
final String? name;
final String? nickname;
final String? email;
final String? phone;
final String? birthDate;
final String? gender;
final MyUser myUser;
final String? filePicture;
const UpdateUserInfo({
required this.userId,
required this.picture,
this.name,
this.nickname,
this.email,
this.phone,
this.birthDate,
this.gender,
required this.myUser,
this.filePicture,
});
@override
List<Object?> get props =>
[userId, name, nickname, email, phone, picture, birthDate, gender];
List<Object?> get props => [myUser, filePicture];
}
-13
View File
@@ -9,19 +9,6 @@ abstract class ProfileState extends Equatable {
class UpdateUserInfoInitial extends ProfileState {}
class UploadPictureFailure extends ProfileState {}
class UploadPictureLoading extends ProfileState {}
class UploadPictureSuccess extends ProfileState {
final String userImage;
const UploadPictureSuccess(this.userImage);
@override
List<Object> get props => [userImage];
}
class UpdateUserInfoFailure extends ProfileState {}
class UpdateUserInfoLoading extends ProfileState {}