User constructor
- {required dynamic user,
- required IdTokenResult accessToken,
- required dynamic refreshToken,
- required FusabaseAuth auth}
Constructs a User.
user User data map.
accessToken Access token.
refreshToken Refresh token.
auth Auth instance.
Initializes various fields from user data.
Example:
final user = User(user: userData, accessToken: token, refreshToken: refresh, auth: auth);
Implementation
User({
required dynamic user,
required IdTokenResult accessToken,
required refreshToken,
required FusabaseAuth auth,
}) : _auth = auth,
_refreshToken = refreshToken,
_accessToken = accessToken,
_fusabaseToken = null,
__logLevel = auth.app.logLevel,
_ocid = user["ocid"],
_schemas = user["schemas"],
_phoneNumber =
user["phoneNumbers"] != null
? user["phoneNumbers"][0]["value"]
: null,
_photoURL = user["photos"] != null ? user["photos"][0]["value"] : null,
_displayName = user["displayName"],
_metadata = UserMetadata(
parseTimestampString(user["meta"]["created"]),
parseTimestampString(user["meta"]["lastSignIn"]),
),
_providerData = [
UserInfo(<dynamic, dynamic>{
"uid": user["id"],
"displayName": user["displayName"],
"email": user["emails"][0]["value"],
"phoneNumber":
user["phoneNumbers"] != null
? user["phoneNumbers"][0]["value"]
: null,
"photoURL":
user["photos"] != null ? user["photos"][0]["value"] : null,
"providerId": user["idp_name"],
}),
],
_email = user["emails"][0]["value"], // Look at this
_uid = user["id"],
_isAnonymous = false,
_options = auth.options,
_userHelper =
auth.config.authType == 'idcs'
? IDCSUserHelper(
options: auth.options,
config: auth.config,
logLevel: auth.app.logLevel,
)
: ONPREMUserHelper(
options: auth.options,
config: auth.config,
logLevel: auth.app.logLevel,
) {
_userHelper._setApp(auth.app);
}