fetchEarnedRewards function

Future<List<EarnedReward>> fetchEarnedRewards()

Implementation

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

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

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