UNPKG

clarity-js

Version:

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

31 lines (26 loc) 736 B
import type { 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); for (const signal of signals) { signalCallback(signal); } } catch { //do nothing } }