trackEcommerceCartUpdate method

Future<String> trackEcommerceCartUpdate({
  1. required String grandTotal,
  2. required List<EcommerceProduct> products,
})

Implementation

Future<String> trackEcommerceCartUpdate({
  required String grandTotal,
  required List<EcommerceProduct> products,
}) async {
  var arguments = <String, dynamic>{};
  arguments['grandTotal'] = grandTotal;
  final ecommerceProducts = [];

  products.forEach((product) {
    final productMap = <String, dynamic>{};
    productMap['sku'] = product.sku;
    productMap['category'] = product.category;
    productMap['price'] = product.price;
    productMap['quantity'] = product.quantity;
    productMap['name'] = product.name;
    productMap['brand'] = product.brand;
    productMap['variant'] = product.variant;
    productMap['customDimensions'] = product.customDimensions;
    ecommerceProducts.add(productMap);
  });
  arguments['products'] = ecommerceProducts;

  final result = await _channel.invokeMethod(trackEcommerceCartUpdateName, arguments);
  return result;
}