This commit is contained in:
Felipe
2024-02-16 20:43:51 -05:00
parent 159ffedc6e
commit 9e6f76e309
12 changed files with 391 additions and 263 deletions
-14
View File
@@ -1,6 +1,3 @@
import 'dart:async';
import 'dart:developer';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:equatable/equatable.dart';
import 'package:user_repository/user_repository.dart';
@@ -22,15 +19,4 @@ class MyUserBloc extends Bloc<MyUserEvent, MyUserState> {
}
});
}
void _onUserChanged(UserChanged event, Emitter<MyUserState> emit) {
log('UserChanged: ${event.user}');
if (event.user == null) {
log('UserChanged: ${event.user}');
emit(const MyUserState.failure());
} else {
log('UserChanged: ${event.user}');
emit(MyUserState.success(event.user!));
}
}
}
@@ -13,6 +13,7 @@ class UpdateUserInfoBloc
: _userRepository = userRepository,
super(UpdateUserInfoInitial()) {
on<UploadPicture>(_onUploadPicture);
on<UpdateUserInfo>(_onUpdateUserInfo);
}
void _onUploadPicture(
@@ -26,4 +27,17 @@ class UpdateUserInfoBloc
emit(UploadPictureFailure());
}
}
void _onUpdateUserInfo(
UpdateUserInfo event, Emitter<UpdateUserInfoState> emit) async {
emit(UpdateUserInfoLoading());
try {
await _userRepository.updateUserInfo(event.userId, {
'name': event.name,
});
emit(const UpdateUserInfoSuccess());
} catch (e) {
emit(UpdateUserInfoFailure());
}
}
}
@@ -16,3 +16,13 @@ class UploadPicture extends UpdateUserInfoEvent {
@override
List<Object> get props => [file, userId];
}
class UpdateUserInfo extends UpdateUserInfoEvent {
final String userId;
final String name;
const UpdateUserInfo(this.userId, this.name);
@override
List<Object> get props => [userId, name];
}
@@ -21,3 +21,14 @@ class UploadPictureSuccess extends UpdateUserInfoState {
@override
List<Object> get props => [userImage];
}
class UpdateUserInfoFailure extends UpdateUserInfoState {}
class UpdateUserInfoLoading extends UpdateUserInfoState {}
class UpdateUserInfoSuccess extends UpdateUserInfoState {
const UpdateUserInfoSuccess();
@override
List<Object> get props => [];
}