UNPKG

ngx-matomo-client

Version:

Matomo (fka. Piwik) client for Angular applications

40 lines (39 loc) 2.08 kB
import { ElementRef, OnDestroy } from '@angular/core'; import { MatomoTracker } from '../tracker/matomo-tracker.service'; import * as i0 from "@angular/core"; export interface TrackArgs { category?: string; action?: string; name?: string; value?: number; } type EventName = keyof GlobalEventHandlersEventMap | string; type DOMEventInput = EventName | EventName[] | null | undefined; export declare class MatomoTrackerDirective implements OnDestroy { private readonly tracker; private readonly elementRef; private sub?; /** Set the event category */ matomoCategory?: string; /** Set the event action */ matomoAction?: string; /** Set the event name */ matomoName?: string; /** Set the event value */ matomoValue?: number; constructor(tracker: MatomoTracker, elementRef: ElementRef); /** Track a Matomo event whenever specified DOM event is triggered */ set matomoTracker(input: DOMEventInput); ngOnDestroy(): void; /** Track an event using category, action, name and value set as @Input() */ trackEvent(): void; /** Track an event using category, action and name set as @Input() and provided value */ trackEvent(value: number): void; /** Track an event using category and action set as @Input() and provided name and value */ trackEvent(name: string, value?: number): void; /** Track an event using provided category, action, name and value (any @Input() is used as a default value) */ trackEvent(args: TrackArgs): void; static ɵfac: i0.ɵɵFactoryDeclaration<MatomoTrackerDirective, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<MatomoTrackerDirective, "[matomoTracker]", ["matomo"], { "matomoCategory": { "alias": "matomoCategory"; "required": false; }; "matomoAction": { "alias": "matomoAction"; "required": false; }; "matomoName": { "alias": "matomoName"; "required": false; }; "matomoValue": { "alias": "matomoValue"; "required": false; }; "matomoTracker": { "alias": "matomoTracker"; "required": false; }; }, {}, never, never, true, never>; } export {};