UNPKG

@dotcms/analytics

Version:

Official JavaScript library for Content Analytics with DotCMS.

46 lines (44 loc) 1.75 kB
import { DotCMSAnalyticsPayload } from '../../shared/dot-content-analytics.model'; /** * Plugin that enriches the analytics payload data based on the event type. * Uses Analytics.js lifecycle events to inject context before processing. * The identity plugin runs FIRST to inject context: { session_id, site_key, user_id } * This enricher plugin runs SECOND to add page/device/utm data. * * OPTIMIZED: Uses existing payload.properties data to avoid duplication */ export declare const dotAnalyticsEnricherPlugin: () => { name: string; /** * PAGE VIEW ENRICHMENT - Runs after identity context injection * Uses optimized enrichment that leverages analytics.js payload data */ 'page:dot-analytics': ({ payload }: { payload: DotCMSAnalyticsPayload; }) => { local_time: string; utm?: import('../../shared/dot-content-analytics.model').DotCMSUtmData | undefined; page: import('../../shared/dot-content-analytics.model').DotCMSPageData; device: import('../../shared/dot-content-analytics.model').DotCMSDeviceData; event: string; properties: Record<string, unknown>; options: Record<string, unknown>; context?: import('../../shared/dot-content-analytics.model').DotCMSAnalyticsContext | undefined; }; /** * TRACK EVENT ENRICHMENT - Runs after identity context injection * Creates structured track events with pre-injected context */ 'track:dot-analytics': ({ payload }: { payload: DotCMSAnalyticsPayload; }) => { events: { event_type: "track"; local_time: string; data: { src: string; event: string; }; }[]; }; };