2.0 Beta

Smootify 2.0 is in public beta. Your 1.x store keeps working. Move when you want.

What changed

smootify:wishlist:changed_product_state

the visitor added (`active`) or removed a product

v2.0 beta
Open .md
On this page
  1. Listen
  2. Payload
  3. Product

the visitor added (active) or removed a product Since 1.x.

Its 1.x name, smootify_wishlist:changed_product_state, is dispatched too, with the same payload, until 3.0.

Listen

window.Smootify = window.Smootify || [];
window.Smootify.push((api) => {
  api.on("wishlist:changed_product_state", (payload) => {
    // …
  });
});

Payload

{ node: HTMLElement; product: Product; active: boolean }

Product

export interface Product {
  /** `gid://shopify/Product/<id>` */
  id: string;
  title: string;
  handle: string;
  vendor: string;
  productType: string;
  descriptionHtml: string;
  tags: string[];
  isGiftCard: boolean;
  requiresSellingPlan: boolean;
  totalInventory: number | null;
  category: { name: string } | null;
  publishedAt: string;
  createdAt: string;
  metafields: (Metafield | null)[];
  collections: { nodes: { handle: string; title: string; image: { url: string } | null }[] };
  media: { nodes: ProductMedia[] };
  options: ProductOption[];
  sellingPlanGroups: { nodes: SellingPlanGroup[] };
  /** every variant on the product page; the first 250 elsewhere */
  variants: { nodes: ProductVariant[]; pageInfo: { hasNextPage: boolean; endCursor: string | null } };
}

    ↑ ↓ to moveEnter to openEsc to close