@grafana/runtime
Version:
Grafana Runtime Library
1 lines • 3.23 kB
Source Map (JSON)
{"version":3,"file":"utils.mjs","sources":["../../../src/analytics/utils.ts"],"sourcesContent":["import { config } from '../config';\nimport { locationService } from '../services';\nimport { getEchoSrv, EchoEventType } from '../services/EchoSrv';\n\nimport {\n ExperimentViewEchoEvent,\n InteractionEchoEvent,\n MetaAnalyticsEvent,\n MetaAnalyticsEventPayload,\n PageviewEchoEvent,\n} from './types';\n\n/**\n * Helper function to report meta analytics to the {@link EchoSrv}.\n *\n * @public\n */\nexport const reportMetaAnalytics = (payload: MetaAnalyticsEventPayload) => {\n getEchoSrv().addEvent<MetaAnalyticsEvent>({\n type: EchoEventType.MetaAnalytics,\n payload,\n });\n};\n\n/**\n * Helper function to report pageview events to the {@link EchoSrv}.\n *\n * @public\n */\nexport const reportPageview = () => {\n const location = locationService.getLocation();\n const page = `${config.appSubUrl ?? ''}${location.pathname}${location.search}${location.hash}`;\n getEchoSrv().addEvent<PageviewEchoEvent>({\n type: EchoEventType.Pageview,\n payload: {\n page,\n },\n });\n};\n\n/**\n * Helper function to report interaction events to the {@link EchoSrv}.\n *\n * @public\n */\nexport const reportInteraction = (interactionName: string, properties?: Record<string, unknown>) => {\n // get static reporting context and append it to properties\n if (config.reportingStaticContext && config.reportingStaticContext instanceof Object) {\n properties = { ...properties, ...config.reportingStaticContext };\n }\n getEchoSrv().addEvent<InteractionEchoEvent>({\n type: EchoEventType.Interaction,\n payload: {\n interactionName,\n properties,\n },\n });\n};\n\n/**\n * Helper function to report experimentview events to the {@link EchoSrv}.\n *\n * @public\n */\nexport const reportExperimentView = (id: string, group: string, variant: string) => {\n getEchoSrv().addEvent<ExperimentViewEchoEvent>({\n type: EchoEventType.ExperimentView,\n payload: {\n experimentId: id,\n experimentGroup: group,\n experimentVariant: variant,\n },\n });\n};\n"],"names":[],"mappings":";;;;;;AAiBO,MAAM,mBAAA,GAAsB,CAAC,OAAA,KAAuC;AACzE,EAAA,UAAA,GAAa,QAAA,CAA6B;AAAA,IACxC,MAAM,aAAA,CAAc,aAAA;AAAA,IACpB;AAAA,GACD,CAAA;AACH;AAOO,MAAM,iBAAiB,MAAM;AA7BpC,EAAA,IAAA,EAAA;AA8BE,EAAA,MAAM,QAAA,GAAW,gBAAgB,WAAA,EAAY;AAC7C,EAAA,MAAM,IAAA,GAAO,CAAA,EAAA,CAAG,EAAA,GAAA,MAAA,CAAO,SAAA,KAAP,YAAoB,EAAE,CAAA,EAAG,QAAA,CAAS,QAAQ,CAAA,EAAG,QAAA,CAAS,MAAM,CAAA,EAAG,SAAS,IAAI,CAAA,CAAA;AAC5F,EAAA,UAAA,GAAa,QAAA,CAA4B;AAAA,IACvC,MAAM,aAAA,CAAc,QAAA;AAAA,IACpB,OAAA,EAAS;AAAA,MACP;AAAA;AACF,GACD,CAAA;AACH;AAOO,MAAM,iBAAA,GAAoB,CAAC,eAAA,EAAyB,UAAA,KAAyC;AAElG,EAAA,IAAI,MAAA,CAAO,sBAAA,IAA0B,MAAA,CAAO,sBAAA,YAAkC,MAAA,EAAQ;AACpF,IAAA,UAAA,GAAa,EAAE,GAAG,UAAA,EAAY,GAAG,OAAO,sBAAA,EAAuB;AAAA,EACjE;AACA,EAAA,UAAA,GAAa,QAAA,CAA+B;AAAA,IAC1C,MAAM,aAAA,CAAc,WAAA;AAAA,IACpB,OAAA,EAAS;AAAA,MACP,eAAA;AAAA,MACA;AAAA;AACF,GACD,CAAA;AACH;AAOO,MAAM,oBAAA,GAAuB,CAAC,EAAA,EAAY,KAAA,EAAe,OAAA,KAAoB;AAClF,EAAA,UAAA,GAAa,QAAA,CAAkC;AAAA,IAC7C,MAAM,aAAA,CAAc,cAAA;AAAA,IACpB,OAAA,EAAS;AAAA,MACP,YAAA,EAAc,EAAA;AAAA,MACd,eAAA,EAAiB,KAAA;AAAA,MACjB,iBAAA,EAAmB;AAAA;AACrB,GACD,CAAA;AACH;;;;"}