UNPKG

@embrace-io/web-sdk

Version:
3 lines (2 loc) 1.66 kB
import{__extends as t}from"tslib";import"uuid";import{bulkAddEventListener as i}from"../../../utils/bulkAddEventListener/bulkAddEventListener.js";import{bulkRemoveEventListener as e}from"../../../utils/bulkRemoveEventListener/bulkRemoveEventListener.js";import"@opentelemetry/core";import{throttle as n}from"../../../utils/throttle.js";import{EmbraceInstrumentationBase as o}from"../../EmbraceInstrumentationBase/EmbraceInstrumentationBase.js";import{TIMEOUT_TIME as a,WINDOW_USER_EVENTS as r,EVENT_THROTTLING_TIME_WINDOW as s}from"./constants.js";var c=function(o){function c(t){var c=(void 0===t?{}:t).diag,u=o.call(this,{instrumentationName:"SpanSessionBrowserActivityInstrumentation",instrumentationVersion:"1.0.0",diag:c,config:{}})||this;return u.disable=function(){e({target:window,events:r,callback:u._onActivityThrottled}),u._activityTimeout&&clearTimeout(u._activityTimeout),u._activityTimeout=null},u.enable=function(){i({target:window,events:r,callback:u._onActivityThrottled})},u._onInactivity=function(){u._diag.debug("Inactivity detected"),u._activityTimeout&&clearTimeout(u._activityTimeout),u._activityTimeout=null,u.sessionManager.endSessionSpanInternal("inactivity")},u._onActivity=function(){u._diag.debug("Activity detected"),u._activityTimeout&&clearTimeout(u._activityTimeout),u.sessionManager.getSessionId()||u.sessionManager.startSessionSpan(),u._activityTimeout=setTimeout(u._onInactivity,a)},u._activityTimeout=null,u._onActivityThrottled=n(u._onActivity,s),u._config.enabled&&u.enable(),u}return t(c,o),c}(o);export{c as SpanSessionBrowserActivityInstrumentation}; //# sourceMappingURL=SpanSessionBrowserActivityInstrumentation.js.map