fromProductDetails static method

ProductItemModel fromProductDetails(
  1. ProductDetails productDetails,
  2. ProductItemTypeMapper? typeMapper,
  3. List<PurchaseProductListing>? listings
)

Implementation

static ProductItemModel fromProductDetails(
    ProductDetails productDetails, ProductItemTypeMapper? typeMapper, List<PurchaseProductListing>? listings) {
  final product = ProductItemModel(
    (b) => b
      ..id = productDetails.id
      ..price = productDetails.price
      ..title = productDetails.title
      ..rawPrice = productDetails.rawPrice.toString()
      ..currencyName = productDetails.currencyCode
      ..description = productDetails.description
      ..productType = ProductType.consumable
      ..currencySymbol = productDetails.currencySymbol
      ..productDetails = productDetails,
  );

  if (typeMapper != null) {
    return product.rebuild(
      (b) => b..productType = typeMapper(product, listings),
    );
  }
  return product;
}