UNPKG

2.43 kBSource Map (JSON)View Raw
1{"version":3,"file":"sessiontiming.js","sources":["../../../src/sessiontiming.ts"],"sourcesContent":["import type { Event, EventProcessor, Hub, Integration } from '@sentry/types';\n\n/** This function adds duration since Sentry was initialized till the time event was sent */\nexport class SessionTiming implements Integration {\n /**\n * @inheritDoc\n */\n public static id: string = 'SessionTiming';\n\n /**\n * @inheritDoc\n */\n public name: string = SessionTiming.id;\n\n /** Exact time Client was initialized expressed in milliseconds since Unix Epoch. */\n protected readonly _startTime: number = Date.now();\n\n /**\n * @inheritDoc\n */\n public setupOnce(addGlobalEventProcessor: (callback: EventProcessor) => void, getCurrentHub: () => Hub): void {\n addGlobalEventProcessor(event => {\n const self = getCurrentHub().getIntegration(SessionTiming);\n if (self) {\n return self.process(event);\n }\n return event;\n });\n }\n\n /**\n * @inheritDoc\n */\n public process(event: Event): Event {\n const now = Date.now();\n\n return {\n ...event,\n extra: {\n ...event.extra,\n ['session:start']: this._startTime,\n ['session:duration']: now - this._startTime,\n ['session:end']: now,\n },\n };\n }\n}\n"],"names":[],"mappings":"AAEA;AACA,MAAA,aAAA,EAAA,CAAA,WAAA,GAAA,EAAA,aAAA,CAAA,SAAA,CAAA,MAAA,CAAA,IAAA,CAAA,IAAA,CAAA,CAAA,aAAA,CAAA,SAAA,CAAA,OAAA,CAAA,IAAA,CAAA,IAAA,CAAA,CAAA,EAAA;AACA;AACA;AACA;AACA,GAAA,OAAA,YAAA,GAAA,CAAA,IAAA,CAAA,EAAA,GAAA,gBAAA,CAAA;AACA;AACA;AACA;AACA;AACA,GAAA,MAAA,GAAA,CAAA,IAAA,CAAA,IAAA,GAAA,aAAA,CAAA,GAAA,CAAA;AACA;AACA;AACA,IAAA,OAAA,GAAA,CAAA,IAAA,CAAA,UAAA,GAAA,IAAA,CAAA,GAAA,GAAA,CAAA;AACA;AACA;AACA;AACA;AACA,GAAA,SAAA,CAAA,uBAAA,EAAA,aAAA,EAAA;AACA,IAAA,uBAAA,CAAA,KAAA,IAAA;AACA,MAAA,MAAA,IAAA,GAAA,aAAA,EAAA,CAAA,cAAA,CAAA,aAAA,CAAA,CAAA;AACA,MAAA,IAAA,IAAA,EAAA;AACA,QAAA,OAAA,IAAA,CAAA,OAAA,CAAA,KAAA,CAAA,CAAA;AACA,OAAA;AACA,MAAA,OAAA,KAAA,CAAA;AACA,KAAA,CAAA,CAAA;AACA,GAAA;AACA;AACA;AACA;AACA;AACA,GAAA,OAAA,CAAA,KAAA,EAAA;AACA,IAAA,MAAA,GAAA,GAAA,IAAA,CAAA,GAAA,EAAA,CAAA;AACA;AACA,IAAA,OAAA;AACA,MAAA,GAAA,KAAA;AACA,MAAA,KAAA,EAAA;AACA,QAAA,GAAA,KAAA,CAAA,KAAA;AACA,QAAA,CAAA,eAAA,GAAA,IAAA,CAAA,UAAA;AACA,QAAA,CAAA,kBAAA,GAAA,GAAA,GAAA,IAAA,CAAA,UAAA;AACA,QAAA,CAAA,aAAA,GAAA,GAAA;AACA,OAAA;AACA,KAAA,CAAA;AACA,GAAA;AACA,CAAA,CAAA,aAAA,CAAA,YAAA,EAAA;;;;"}
\No newline at end of file