Advertisement
Guest User

Untitled

a guest
Jun 24th, 2019
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.97 KB | None | 0 0
  1. abstract class BaseAuth {
  2. Future<void> signOut();
  3. }
  4.  
  5. Future<void> signOut() async {
  6. return _firebaseAuth.signOut();
  7. }
  8.  
  9. final BaseAuth auth;
  10. final VoidCallback onSignedOut;
  11.  
  12. _signOut() async {
  13. try {
  14. await widget.auth.signOut();
  15. widget.onSignedOut();
  16. } catch (e) {
  17. print(e);
  18. }
  19. }
  20.  
  21. @override
  22. Widget build(BuildContext context) {
  23. switch (authStatus) {
  24. case AuthStatus.NOT_DETERMINED:
  25. return _buildWaitingScreen();
  26. break;
  27. case AuthStatus.NOT_LOGGED_IN:
  28. return new LoginSignUpPage(
  29. auth: widget.auth,
  30. onSignedIn: _onLoggedIn,
  31. );
  32. break;
  33. case AuthStatus.LOGGED_IN:
  34. if (_userId.length > 0 && _userId != null) {
  35. return new HomePage(
  36. userId: _userId,
  37. auth: widget.auth,
  38. onSignedOut: _onSignedOut,
  39. );
  40. } else return _buildWaitingScreen();
  41. break;
  42. default:
  43. return _buildWaitingScreen();
  44. }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement