fetchUserProfileTierRequirements function

Future<List<UserProfileTierRequirement>> fetchUserProfileTierRequirements()

Implementation

Future<List<UserProfileTierRequirement>>
fetchUserProfileTierRequirements() async {
  try {
    String? userProfileTierRequirementsString = await platform.invokeMethod(
      'fetchUserProfileTierRequirements',
    );
    if (kDebugMode) {
      print(
        "Received UserProfileTierRequirements from sdk: $userProfileTierRequirementsString",
      );
    }
    if (userProfileTierRequirementsString == null ||
        userProfileTierRequirementsString.isEmpty) {
      return [];
    }

    var decodedList = jsonDecode(userProfileTierRequirementsString);
    List<UserProfileTierRequirement> list =
        List<UserProfileTierRequirement>.from(
          decodedList.map((model) {
            UserProfileTierRequirement earnedReward =
                UserProfileTierRequirement.fromJson(model);
            return earnedReward;
          }),
        );

    return list;
  } catch (e, stacktrace) {
    if (kDebugMode) {
      print("Error in fetchUserProfileTierRequirements");
      print(e);
      print(stacktrace);
    }
    return [];
  }
}