UNPKG

@mntm/stats

Version:

A package for integrating analytics tools

35 lines (34 loc) 1.08 kB
import { loadScript, thenable } from '../utils.js'; import { launchParams } from '../launch.js'; import { safeWindow } from '../dom.js'; /** * Implements Amplitude * * @param code XXXXXXX */ export const createProviderAMP = (code) => { const context = safeWindow; context.amplitude = context.amplitude || {}; let instance = null; const load = loadScript('https://cdn.amplitude.com/libs/amplitude-8.21.4-min.gz.js'); const ready = load.then(() => { if (context.amplitude && context.amplitude.getInstance) { instance = context.amplitude.getInstance('$default_instance'); instance.init(code, launchParams.vk_user_id, { userId: launchParams.vk_user_id, includeUtm: true }); } else { throw new Error('net::ERR_BLOCKED_BY_CLIENT'); } }); const provider = { send(event, params) { return thenable(ready, () => { instance.logEvent(event, params.params); }); } }; return provider; };