after
This commit is contained in:
+6
-8
@@ -2,22 +2,20 @@ import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:equatable/equatable.dart';
|
||||
import 'package:user_repository/user_repository.dart';
|
||||
|
||||
part 'update_user_info_event.dart';
|
||||
part 'update_user_info_state.dart';
|
||||
part 'profile_event.dart';
|
||||
part 'profile_state.dart';
|
||||
|
||||
class UpdateUserInfoBloc
|
||||
extends Bloc<UpdateUserInfoEvent, UpdateUserInfoState> {
|
||||
class ProfileBloc extends Bloc<ProfileEvent, ProfileState> {
|
||||
final UserRepository _userRepository;
|
||||
|
||||
UpdateUserInfoBloc({required UserRepository userRepository})
|
||||
ProfileBloc({required UserRepository userRepository})
|
||||
: _userRepository = userRepository,
|
||||
super(UpdateUserInfoInitial()) {
|
||||
on<UploadPicture>(_onUploadPicture);
|
||||
on<UpdateUserInfo>(_onUpdateUserInfo);
|
||||
}
|
||||
|
||||
void _onUploadPicture(
|
||||
UploadPicture event, Emitter<UpdateUserInfoState> emit) async {
|
||||
void _onUploadPicture(UploadPicture event, Emitter<ProfileState> emit) async {
|
||||
emit(UploadPictureLoading());
|
||||
try {
|
||||
String userImage =
|
||||
@@ -29,7 +27,7 @@ class UpdateUserInfoBloc
|
||||
}
|
||||
|
||||
void _onUpdateUserInfo(
|
||||
UpdateUserInfo event, Emitter<UpdateUserInfoState> emit) async {
|
||||
UpdateUserInfo event, Emitter<ProfileState> emit) async {
|
||||
emit(UpdateUserInfoLoading());
|
||||
try {
|
||||
await _userRepository.updateUserInfo(event.userId, {
|
||||
+5
-5
@@ -1,13 +1,13 @@
|
||||
part of 'update_user_info_bloc.dart';
|
||||
part of 'profile_bloc.dart';
|
||||
|
||||
abstract class UpdateUserInfoEvent extends Equatable {
|
||||
const UpdateUserInfoEvent();
|
||||
abstract class ProfileEvent extends Equatable {
|
||||
const ProfileEvent();
|
||||
|
||||
@override
|
||||
List<Object> get props => [];
|
||||
}
|
||||
|
||||
class UploadPicture extends UpdateUserInfoEvent {
|
||||
class UploadPicture extends ProfileEvent {
|
||||
final String file;
|
||||
final String userId;
|
||||
|
||||
@@ -17,7 +17,7 @@ class UploadPicture extends UpdateUserInfoEvent {
|
||||
List<Object> get props => [file, userId];
|
||||
}
|
||||
|
||||
class UpdateUserInfo extends UpdateUserInfoEvent {
|
||||
class UpdateUserInfo extends ProfileEvent {
|
||||
final String userId;
|
||||
final String name;
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
part of 'profile_bloc.dart';
|
||||
|
||||
abstract class ProfileState extends Equatable {
|
||||
const ProfileState();
|
||||
|
||||
@override
|
||||
List<Object> get props => [];
|
||||
}
|
||||
|
||||
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 {}
|
||||
|
||||
class UpdateUserInfoSuccess extends ProfileState {
|
||||
const UpdateUserInfoSuccess();
|
||||
|
||||
@override
|
||||
List<Object> get props => [];
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
import 'dart:async';
|
||||
import 'dart:developer';
|
||||
|
||||
import 'package:bloc/bloc.dart';
|
||||
import 'package:equatable/equatable.dart';
|
||||
import 'package:user_repository/user_repository.dart';
|
||||
|
||||
part 'setting_event.dart';
|
||||
part 'setting_state.dart';
|
||||
|
||||
class SettingBloc extends Bloc<SettingEvent, SettingState> {
|
||||
final UserRepository _userRepository;
|
||||
late final StreamSubscription<bool> _authSubscription;
|
||||
|
||||
SettingBloc({required UserRepository userRepository})
|
||||
: _userRepository = userRepository,
|
||||
super(SettingInitial()) {
|
||||
_authSubscription =
|
||||
_userRepository.isAuthenticated().listen((isAuthenticated) {
|
||||
if (!isAuthenticated) {
|
||||
try {
|
||||
emit(SettingLogoutSuccess());
|
||||
} catch (e) {
|
||||
log('xd Error en el settings bloc ${e.toString()}');
|
||||
}
|
||||
}
|
||||
});
|
||||
on<SettingLogoutRequest>(_onSettingLogoutRequest);
|
||||
}
|
||||
|
||||
void _onSettingLogoutRequest(
|
||||
SettingLogoutRequest event, Emitter<SettingState> emit) async {
|
||||
await _userRepository.logOut();
|
||||
}
|
||||
|
||||
@override
|
||||
Future<void> close() {
|
||||
_authSubscription.cancel();
|
||||
return super.close();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
part of 'setting_bloc.dart';
|
||||
|
||||
abstract class SettingEvent extends Equatable {
|
||||
const SettingEvent();
|
||||
|
||||
@override
|
||||
List<Object> get props => [];
|
||||
}
|
||||
|
||||
class SettingLogoutRequest extends SettingEvent {}
|
||||
@@ -0,0 +1,12 @@
|
||||
part of 'setting_bloc.dart';
|
||||
|
||||
abstract class SettingState extends Equatable {
|
||||
const SettingState();
|
||||
|
||||
@override
|
||||
List<Object> get props => [];
|
||||
}
|
||||
|
||||
class SettingInitial extends SettingState {}
|
||||
|
||||
class SettingLogoutSuccess extends SettingState {}
|
||||
@@ -1,34 +0,0 @@
|
||||
part of 'update_user_info_bloc.dart';
|
||||
|
||||
abstract class UpdateUserInfoState extends Equatable {
|
||||
const UpdateUserInfoState();
|
||||
|
||||
@override
|
||||
List<Object> get props => [];
|
||||
}
|
||||
|
||||
class UpdateUserInfoInitial extends UpdateUserInfoState {}
|
||||
|
||||
class UploadPictureFailure extends UpdateUserInfoState {}
|
||||
|
||||
class UploadPictureLoading extends UpdateUserInfoState {}
|
||||
|
||||
class UploadPictureSuccess extends UpdateUserInfoState {
|
||||
final String userImage;
|
||||
|
||||
const UploadPictureSuccess(this.userImage);
|
||||
|
||||
@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 => [];
|
||||
}
|
||||
Reference in New Issue
Block a user