Home > widget-integration > CartDrawerRecommendationTemplateData

CartDrawerRecommendationTemplateData interface

Template data for cart-drawer recommendation rendering. This is the primary data structure passed to the cart template and received by custom renderRecommendationWidget() overrides.

Signature:

export interface CartDrawerRecommendationTemplateData 

Example

Accessing template data in a custom render override:

protected async renderRecommendationWidget(container, data: CartDrawerRecommendationTemplateData) {
  const { widgetId, products, widgetDesignSettings } = data;
  const slidesPerRow = widgetDesignSettings.numberOfProductPerRowSlideCart;

  products.forEach((product) => {
    console.log(product.title, product.price_min); // "Widget Pro", "$19.99"
    product.variants.forEach((variant) => {
      console.log(variant.title, variant.price, variant.available);
    });
  });

  await super.renderRecommendationWidget(container, data);
}

Properties

Property

Modifiers

Type

Description

products

FormattedProduct[]

request

{ previewMode: boolean; }

widgetDesignSettings

CartDrawerWidgetDesignSettings

widgetId

string

widgetName

string