selectedPlan method

Future<ProductDetails> selectedPlan(
  1. String expiryDate,
  2. List<ProductDetails> products,
  3. int selectedItem,
  4. List<String> subscriptionProductIds,
  5. List<PurchaseDetails> pastPurchases,
)

Implementation

Future<ProductDetails> selectedPlan(String expiryDate, List<ProductDetails> products,
    int selectedItem, List<String> subscriptionProductIds, List<PurchaseDetails> pastPurchases) async {
  late ProductDetails productDetails;
  AppLogs.showInfoLogs("selectedItem id: ${products[selectedItem].id}");
  if (Platform.isAndroid) {
    if(pastPurchases.isNotEmpty){
      productDetails = products.where((p) => p.id == products[selectedItem].id &&
      p.price != "Free" && p.rawPrice != 0.0).first;
    }else{
      productDetails = products.where((p) => p.id == products[selectedItem].id).first;
    }
  }else{
    productDetails = products.where((p) => p.id == products[selectedItem].id).first;
  }

  return productDetails;
}