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
@@ -18,13 +18,7 @@ class FirebaseUserRepository implements UserRepository {
FirebaseUserRepository(this._firebaseAuth) {
_firebaseAuth.userChanges().listen((user) async {
if (user != null) {
try {
final myUser = await getMyUser(user.uid);
_userStreamController.add(myUser);
} catch (e) {
log('Error en FirebaseUserRepository ${e.toString()}');
_userStreamController.add(null);
}
await updateFromFirebase(user.uid);
} else {
_userStreamController.add(null);
}
@@ -33,6 +27,16 @@ class FirebaseUserRepository implements UserRepository {
// Stream<MyUser?> get user => _userStreamController.stream;
Future<void> updateFromFirebase(String userId) async {
try {
final myUser = await getMyUser(userId);
_userStreamController.add(myUser);
} catch (e) {
log('Error en FirebaseUserRepository ${e.toString()}');
_userStreamController.add(null);
}
}
@override
Stream<MyUser?> streamUser() {
return _userStreamController.stream;
@@ -129,6 +133,8 @@ class FirebaseUserRepository implements UserRepository {
Future<void> updateUserInfo(String userId, Map<String, dynamic> data) async {
try {
await usersCollection.doc(userId).update(data);
await updateFromFirebase(userId);
} catch (e) {
log(e.toString());
rethrow;
@@ -1,5 +1,3 @@
import 'package:firebase_auth/firebase_auth.dart';
import '../user_repository.dart';
abstract class UserRepository {