UNPKG

@unifygtm/intent-client

Version:

JavaScript client for interacting with the Unify Intent API in the browser.

27 lines (23 loc) 803 B
import { ActivityContext, CampaignParams } from '../../types'; import { getCurrentUserAgentData } from '../utils/helpers'; /** * Constructs the activity context data which is logged for page, * identity, etc. actions. * * @returns the activity context data */ export const getActivityContext = (): ActivityContext => { const url = new URL(location.href); const utm: CampaignParams = { source: url.searchParams.get('utm_source') ?? undefined, medium: url.searchParams.get('utm_medium') ?? undefined, campaign: url.searchParams.get('utm_campaign') ?? undefined, term: url.searchParams.get('utm_term') ?? undefined, content: url.searchParams.get('utm_content') ?? undefined, }; return { locale: navigator.language, ...getCurrentUserAgentData(), utm, }; };