isAvailableForSale property

bool isAvailableForSale

Checks if the product is available for sale by checking its variants availability and quantity

Implementation

bool get isAvailableForSale {
  final temp =
      productVariants.where((e) => e.title == 'Default Title').toList();
  if (temp.isNotEmpty) {
    return temp.first.availableForSale && temp.first.quantityAvailable > 0;
  } else {
    bool isAvailable = false;
    final variants =
        productVariants.where((e) => e.title != 'Default Title').toList();
    for (int i = 0; i < variants.length; i++) {
      if (variants[i].availableForSale && variants[i].quantityAvailable > 0) {
        isAvailable = true;
        break;
      }
    }
    return isAvailable;
  }
}