// import 'package:firebase_auth/firebase_auth.dart'; import 'package:firebase_auth/firebase_auth.dart'; class FirebaseAuthData { final FirebaseAuth firebaseAuth = FirebaseAuth.instance; User getUser() { return firebaseAuth.currentUser; } String getUid() { return getUser()?.uid; } Future signUpWithEmailAndPassword( String email, String password) { return firebaseAuth.createUserWithEmailAndPassword( email: email, password: password); } Future signIn(String email, String password) { return firebaseAuth.signInWithEmailAndPassword( email: email, password: password); } Future resetPassword(String email) { return firebaseAuth.sendPasswordResetEmail(email: email); } Future signOut() { return firebaseAuth.signOut(); } Future updateUsername(String newEmail) { return getUser().updateEmail(newEmail); } Future updatePassword( String email, String password, String newPassword) async { UserCredential credentials = await signIn(email, password); return credentials.user.updatePassword(newPassword); } Future updateProfile({String displayName, String photoURL}) { return getUser() .updateProfile(displayName: displayName, photoURL: photoURL); } }