Skip to main content

Product List & Favourites Events

Product list events track user interactions with Mimeeq's product list embed — the grid or list view that shows multiple products for users to browse before entering a configurator. Favourites events track collection management and product bookmarking for logged-in users.

Product List Events

mimeeq-product-list-initialized

The product list has loaded its products from the database and is ready for interaction. This is the product list equivalent of mimeeq-3d-product-initialized for standard products — use it as the "ready" signal to hide a custom loader or start interacting with the list.

Payload: none

// Custom loader pattern for product list
document.addEventListener('mimeeq-product-list-initialized', () => {
document.getElementById('product-list-loader').style.display = 'none';
document.querySelector('mmq-embed').style.visibility = 'visible';
});
tip

For a full custom loader implementation, see How to Use your Own Custom Loader on the help site. Use mimeeq-product-list-initialized instead of mimeeq-3d-product-initialized when working with product list embeds.


mimeeq-product-list-select-product

A product was selected from the product list. The user clicked a product card to open it in the configurator. The payload includes the variant code and product ID needed to load the product, and whether it's a modular product.

Payload: ProductListSelectProductEventPayload

FieldTypeDescription
variantCodestringVariant code of the selected product
productIdstringUnique product identifier
isModularbooleanWhether the selected product is a modular product
document.addEventListener('mimeeq-product-list-select-product', (event) => {
const { variantCode, productId, isModular } = event.detail;

analytics.track('product_selected_from_list', {
productId,
variantCode,
type: isModular ? 'modular' : 'standard',
});

// If using custom routing, navigate to the product page
window.location.href = `/products/${productId}?variant=${variantCode}`;
});

Favourites Events

Favourites events require the user to be logged in via the <mmq-auth> component. They track how users organize their saved configurations into collections.

mimeeq-favourites-add-product

A product configuration was added to favourites. This fires when the user clicks the heart/star icon or when mimeeqApp.actions.saveFavouriteConfiguration() is called programmatically.

Payload: ProductPrefixEventPayload

FieldTypeDescription
prefixstringVariant code prefix of the product added

mimeeq-favourites-remove-product

A product configuration was removed from favourites.

Payload: ProductPrefixEventPayload

FieldTypeDescription
prefixstringVariant code prefix of the product removed
// Sync favourites state with your own system
document.addEventListener('mimeeq-favourites-add-product', (event) => {
const { prefix } = event.detail;
syncFavourite(prefix, 'add');
});

document.addEventListener('mimeeq-favourites-remove-product', (event) => {
const { prefix } = event.detail;
syncFavourite(prefix, 'remove');
});

Collection Management

These events track creating, editing, and organizing favourites collections.

mimeeq-favourites-add-collection

A new favourites collection was created.

Payload: FavouritesCollectionEventPayload

FieldTypeDescription
favouritesCollectionNamestringName of the new collection
typestringCollection visibility — 'private' or 'public'

mimeeq-favourites-update-collection

A favourites collection was renamed or its settings were changed.

Payload: FavouritesCollectionEventPayload

FieldTypeDescription
favouritesCollectionNamestringUpdated name of the collection
typestringUpdated visibility type

mimeeq-favourites-remove-collection

One or more favourites collections were deleted.

Payload: none


mimeeq-favourites-copy-to-collection

Items were copied from one collection to another. The originals remain in the source collection.

Payload: FavouritesCollectionItemsEventPayload

FieldTypeDescription
favouritesCollectionNamestringName of the destination collection
itemsstring[]Array of item identifiers that were copied

mimeeq-favourites-move-to-collection

Items were moved from one collection to another. The originals are removed from the source collection.

Payload: FavouritesCollectionItemsEventPayload

FieldTypeDescription
favouritesCollectionNamestringName of the destination collection
itemsstring[]Array of item identifiers that were moved

mimeeq-favourites-delete-from-collection

Items were removed from a favourites collection.

Payload: FavouritesDeleteFromCollectionEventPayload

FieldTypeDescription
itemsstring[]Array of item identifiers that were removed
EventDescription
mimeeq-open-favouritesFavourites panel opened from the product list menu
mimeeq-close-favouritesFavourites panel closed
mimeeq-select-favourites-collectionA specific collection was selected from the favourites menu

mimeeq-select-favourites-collection carries a payload — SelectFavouritesCollectionEventPayload:

FieldTypeDescription
collectionPathstringPath identifier of the selected collection