UNPKG

clarity-js

Version:

An analytics library that uses web page interactions to generate aggregated insights

31 lines (26 loc) 695 B
import { ClaritySignal, SignalCallback } from '@clarity-types/data'; export let signalCallback: SignalCallback = null; export function signal(cb: SignalCallback): void { signalCallback = cb; } function parseSignals(signalsPayload: string): ClaritySignal[] { try{ const parsedSignals: ClaritySignal[] = JSON.parse(signalsPayload); return parsedSignals; }catch{ return [] } } export function signalsEvent(signalsPayload: string) { try { if (!signalCallback) { return; } const signals = parseSignals(signalsPayload); signals.forEach((signal) => { signalCallback(signal); }); } catch { //do nothing } }