getUser function

Future<User> getUser(
  1. String deviceIdentifier,
  2. UserDataExport data,
  3. bool mfa
)

Implementation

Future<User> getUser(String deviceIdentifier, UserDataExport data, bool mfa) async {
  final refreshToken = (Sentc.refreshEndpoint != RefreshOption.api) ? "" : data.refreshToken;

  final user = User._(
    Sentc.baseUrl,
    Sentc.appToken,
    deviceIdentifier,
    data.jwt,
    refreshToken,
    data.userId,
    data.deviceId,
    mfa,
    data.deviceKeys.privateKey,
    data.deviceKeys.publicKey,
    data.deviceKeys.signKey,
    data.deviceKeys.verifyKey,
    data.deviceKeys.exportedPublicKey,
    data.deviceKeys.exportedVerifyKey,
    [],
  );

  final storage = Sentc.getStorage();

  Future.wait([
    storage.set("user_data_$deviceIdentifier", jsonEncode(user)),
    storage.set("actual_user", deviceIdentifier),
  ]);

  return user;
}