41 lines
980 B
Dart
41 lines
980 B
Dart
|
|
import 'package:firebase_auth/firebase_auth.dart';
|
||
|
|
import 'package:guru_app/account/model/account_profile.dart';
|
||
|
|
import 'package:guru_app/account/model/user.dart';
|
||
|
|
import 'package:guru_utils/device/device_info.dart';
|
||
|
|
|
||
|
|
|
||
|
|
/// Created by Haoyi on 6/3/21
|
||
|
|
|
||
|
|
class Account {
|
||
|
|
final SaasUser? saasUser;
|
||
|
|
final DeviceInfo? device;
|
||
|
|
final AccountProfile? accountProfile;
|
||
|
|
final User? firebaseUser;
|
||
|
|
|
||
|
|
String? get uid => saasUser?.uid;
|
||
|
|
|
||
|
|
String? get nickname => accountProfile?.nickname;
|
||
|
|
|
||
|
|
Account.restore({this.saasUser, this.device, this.accountProfile, this.firebaseUser});
|
||
|
|
}
|
||
|
|
|
||
|
|
class AccountAuth {
|
||
|
|
final SaasUser? user;
|
||
|
|
final User? firebaseUser;
|
||
|
|
|
||
|
|
AccountAuth(this.user, this.firebaseUser);
|
||
|
|
|
||
|
|
bool get isValid => uid != null && uid != "";
|
||
|
|
|
||
|
|
String? get saasToken => user?.token;
|
||
|
|
|
||
|
|
String? get uid => user?.uid;
|
||
|
|
|
||
|
|
bool get existsFirebaseUser => firebaseUser != null;
|
||
|
|
|
||
|
|
@override
|
||
|
|
String toString() {
|
||
|
|
return 'AccountAuth{user: $user, firebaseUser: $firebaseUser}';
|
||
|
|
}
|
||
|
|
}
|