UNPKG

@dotcms/analytics

Version:

Official JavaScript library for Content Analytics with DotCMS.

37 lines (36 loc) 1.45 kB
import { AnalyticsInstance } from 'analytics'; import { DotCMSAnalyticsConfig } from '../../shared/models'; /** * Click Plugin for DotAnalytics * Handles automatic tracking of clicks on content elements. * * This plugin initializes the click tracker which: * - Uses MutationObserver to detect contentlet containers * - Attaches click listeners to each .dotcms-analytics-contentlet element * - Filters for clicks on <a> or <button> elements inside tracked contentlets * - Extracts contentlet data and element metadata * - Throttles clicks to prevent duplicates * - Fires 'content_click' events via subscription callback * * Note: This plugin is only registered if config.clicks is enabled. * See getEnhancedTrackingPlugins() for conditional loading logic. * * @param {DotCMSAnalyticsConfig} config - Configuration with clicks settings * @returns {Object} Plugin object with lifecycle methods */ export declare const dotAnalyticsClickPlugin: (config: DotCMSAnalyticsConfig) => { name: string; /** * Initialize click tracking * Called when Analytics.js initializes the plugin with instance context * @param instance - Analytics.js instance with track method */ initialize: ({ instance }: { instance: AnalyticsInstance; }) => Promise<void>; /** * Setup cleanup handlers when plugin is loaded * Called after Analytics.js completes plugin loading */ loaded: () => boolean; };