@cloudcare/browser-rum-slim 3.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +15 -0
- package/bundle/dataflux-rum-slim.js +1 -0
- package/cjs/boot/buildEnv.js +11 -0
- package/cjs/boot/buildEnv.js.map +1 -0
- package/cjs/boot/perStartRum.js +227 -0
- package/cjs/boot/perStartRum.js.map +1 -0
- package/cjs/boot/rum.js +180 -0
- package/cjs/boot/rum.js.map +1 -0
- package/cjs/boot/rum.slim.entry.js +13 -0
- package/cjs/boot/rum.slim.entry.js.map +1 -0
- package/cjs/boot/rumEntryFactory.js +15 -0
- package/cjs/boot/rumEntryFactory.js.map +1 -0
- package/cjs/boot/rumPublicApi.js +285 -0
- package/cjs/boot/rumPublicApi.js.map +1 -0
- package/cjs/boot/rumRecorderApiStub.js +19 -0
- package/cjs/boot/rumRecorderApiStub.js.map +1 -0
- package/cjs/boot/rumSlimConfiguration.js +16 -0
- package/cjs/boot/rumSlimConfiguration.js.map +1 -0
- package/cjs/constants.js +41 -0
- package/cjs/constants.js.map +1 -0
- package/cjs/domain/assembly.js +172 -0
- package/cjs/domain/assembly.js.map +1 -0
- package/cjs/domain/configuration.js +272 -0
- package/cjs/domain/configuration.js.map +1 -0
- package/cjs/domain/contexts/commonContext.js +14 -0
- package/cjs/domain/contexts/commonContext.js.map +1 -0
- package/cjs/domain/contexts/displayContext.js +22 -0
- package/cjs/domain/contexts/displayContext.js.map +1 -0
- package/cjs/domain/contexts/foregroundContexts.js +111 -0
- package/cjs/domain/contexts/foregroundContexts.js.map +1 -0
- package/cjs/domain/contexts/internalContext.js +47 -0
- package/cjs/domain/contexts/internalContext.js.map +1 -0
- package/cjs/domain/contexts/pageStateHistory.js +111 -0
- package/cjs/domain/contexts/pageStateHistory.js.map +1 -0
- package/cjs/domain/contexts/urlContexts.js +73 -0
- package/cjs/domain/contexts/urlContexts.js.map +1 -0
- package/cjs/domain/contexts/viewContexts.js +51 -0
- package/cjs/domain/contexts/viewContexts.js.map +1 -0
- package/cjs/domain/domMutationObservable.js +69 -0
- package/cjs/domain/domMutationObservable.js.map +1 -0
- package/cjs/domain/encoderStreamId.js +11 -0
- package/cjs/domain/encoderStreamId.js.map +1 -0
- package/cjs/domain/firstInputPolyfill.js +83 -0
- package/cjs/domain/firstInputPolyfill.js.map +1 -0
- package/cjs/domain/initViewportObservable.js +44 -0
- package/cjs/domain/initViewportObservable.js.map +1 -0
- package/cjs/domain/locationChangeObservable.js +57 -0
- package/cjs/domain/locationChangeObservable.js.map +1 -0
- package/cjs/domain/performanceObservable.js +124 -0
- package/cjs/domain/performanceObservable.js.map +1 -0
- package/cjs/domain/performanceUtils.js +47 -0
- package/cjs/domain/performanceUtils.js.map +1 -0
- package/cjs/domain/requestCollection.js +127 -0
- package/cjs/domain/requestCollection.js.map +1 -0
- package/cjs/domain/rumEventsCollection/actions/actionCollection.js +89 -0
- package/cjs/domain/rumEventsCollection/actions/actionCollection.js.map +1 -0
- package/cjs/domain/rumEventsCollection/actions/clickChain.js +69 -0
- package/cjs/domain/rumEventsCollection/actions/clickChain.js.map +1 -0
- package/cjs/domain/rumEventsCollection/actions/computeFrustration.js +75 -0
- package/cjs/domain/rumEventsCollection/actions/computeFrustration.js.map +1 -0
- package/cjs/domain/rumEventsCollection/actions/getActionNameFromElement.js +232 -0
- package/cjs/domain/rumEventsCollection/actions/getActionNameFromElement.js.map +1 -0
- package/cjs/domain/rumEventsCollection/actions/getSelectorsFromElement.js +220 -0
- package/cjs/domain/rumEventsCollection/actions/getSelectorsFromElement.js.map +1 -0
- package/cjs/domain/rumEventsCollection/actions/interactionSelectorCache.js +28 -0
- package/cjs/domain/rumEventsCollection/actions/interactionSelectorCache.js.map +1 -0
- package/cjs/domain/rumEventsCollection/actions/listenActionEvents.js +73 -0
- package/cjs/domain/rumEventsCollection/actions/listenActionEvents.js.map +1 -0
- package/cjs/domain/rumEventsCollection/actions/trackClickActions.js +253 -0
- package/cjs/domain/rumEventsCollection/actions/trackClickActions.js.map +1 -0
- package/cjs/domain/rumEventsCollection/error/errorCollection.js +90 -0
- package/cjs/domain/rumEventsCollection/error/errorCollection.js.map +1 -0
- package/cjs/domain/rumEventsCollection/error/trackConsoleError.js +18 -0
- package/cjs/domain/rumEventsCollection/error/trackConsoleError.js.map +1 -0
- package/cjs/domain/rumEventsCollection/error/trackReportError.js +25 -0
- package/cjs/domain/rumEventsCollection/error/trackReportError.js.map +1 -0
- package/cjs/domain/rumEventsCollection/longTask/longAnimationFrameCollection.js +61 -0
- package/cjs/domain/rumEventsCollection/longTask/longAnimationFrameCollection.js.map +1 -0
- package/cjs/domain/rumEventsCollection/longTask/longTaskCollection.js +44 -0
- package/cjs/domain/rumEventsCollection/longTask/longTaskCollection.js.map +1 -0
- package/cjs/domain/rumEventsCollection/resource/matchRequestResourceEntry.js +74 -0
- package/cjs/domain/rumEventsCollection/resource/matchRequestResourceEntry.js.map +1 -0
- package/cjs/domain/rumEventsCollection/resource/resourceCollection.js +239 -0
- package/cjs/domain/rumEventsCollection/resource/resourceCollection.js.map +1 -0
- package/cjs/domain/rumEventsCollection/resource/resourceTrackerManager.js +237 -0
- package/cjs/domain/rumEventsCollection/resource/resourceTrackerManager.js.map +1 -0
- package/cjs/domain/rumEventsCollection/resource/resourceUtils.js +240 -0
- package/cjs/domain/rumEventsCollection/resource/resourceUtils.js.map +1 -0
- package/cjs/domain/rumEventsCollection/resource/retrieveInitialDocumentResourceTiming.js +25 -0
- package/cjs/domain/rumEventsCollection/resource/retrieveInitialDocumentResourceTiming.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/interactionCountPolyfill.js +54 -0
- package/cjs/domain/rumEventsCollection/view/interactionCountPolyfill.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/trackCommonViewMetrics.js +48 -0
- package/cjs/domain/rumEventsCollection/view/trackCommonViewMetrics.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/trackCumulativeLayoutShift.js +125 -0
- package/cjs/domain/rumEventsCollection/view/trackCumulativeLayoutShift.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/trackFirstContentfulPaint.js +27 -0
- package/cjs/domain/rumEventsCollection/view/trackFirstContentfulPaint.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/trackFirstHidden.js +55 -0
- package/cjs/domain/rumEventsCollection/view/trackFirstHidden.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/trackFirstInput.js +47 -0
- package/cjs/domain/rumEventsCollection/view/trackFirstInput.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/trackInitialViewTimings.js +51 -0
- package/cjs/domain/rumEventsCollection/view/trackInitialViewTimings.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/trackInteractionToNextPaint.js +162 -0
- package/cjs/domain/rumEventsCollection/view/trackInteractionToNextPaint.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/trackLargestContentfulPaint.js +61 -0
- package/cjs/domain/rumEventsCollection/view/trackLargestContentfulPaint.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/trackLoadingTime.js +51 -0
- package/cjs/domain/rumEventsCollection/view/trackLoadingTime.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/trackNavigationTimings.js +57 -0
- package/cjs/domain/rumEventsCollection/view/trackNavigationTimings.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/trackScrollMetrics.js +92 -0
- package/cjs/domain/rumEventsCollection/view/trackScrollMetrics.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/trackViewEventCounts.js +21 -0
- package/cjs/domain/rumEventsCollection/view/trackViewEventCounts.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/trackViews.js +269 -0
- package/cjs/domain/rumEventsCollection/view/trackViews.js.map +1 -0
- package/cjs/domain/rumEventsCollection/view/viewCollection.js +131 -0
- package/cjs/domain/rumEventsCollection/view/viewCollection.js.map +1 -0
- package/cjs/domain/rumSessionManager.js +187 -0
- package/cjs/domain/rumSessionManager.js.map +1 -0
- package/cjs/domain/tracing/ddtraceTracer.js +46 -0
- package/cjs/domain/tracing/ddtraceTracer.js.map +1 -0
- package/cjs/domain/tracing/getDocumentTraceId.js +80 -0
- package/cjs/domain/tracing/getDocumentTraceId.js.map +1 -0
- package/cjs/domain/tracing/jaegerTracer.js +48 -0
- package/cjs/domain/tracing/jaegerTracer.js.map +1 -0
- package/cjs/domain/tracing/sampler.js +69 -0
- package/cjs/domain/tracing/sampler.js.map +1 -0
- package/cjs/domain/tracing/skywalkingTracer.js +96 -0
- package/cjs/domain/tracing/skywalkingTracer.js.map +1 -0
- package/cjs/domain/tracing/traceIdentifier.js +66 -0
- package/cjs/domain/tracing/traceIdentifier.js.map +1 -0
- package/cjs/domain/tracing/tracer.js +133 -0
- package/cjs/domain/tracing/tracer.js.map +1 -0
- package/cjs/domain/tracing/w3cTraceParentTracer.js +74 -0
- package/cjs/domain/tracing/w3cTraceParentTracer.js.map +1 -0
- package/cjs/domain/tracing/zipkinMultiTracer.js +48 -0
- package/cjs/domain/tracing/zipkinMultiTracer.js.map +1 -0
- package/cjs/domain/tracing/zipkinSingleTracer.js +47 -0
- package/cjs/domain/tracing/zipkinSingleTracer.js.map +1 -0
- package/cjs/domain/trackEventCounts.js +55 -0
- package/cjs/domain/trackEventCounts.js.map +1 -0
- package/cjs/domain/usr/index.js +44 -0
- package/cjs/domain/usr/index.js.map +1 -0
- package/cjs/domain/waitPageActivityEnd.js +151 -0
- package/cjs/domain/waitPageActivityEnd.js.map +1 -0
- package/cjs/index.js +13 -0
- package/cjs/index.js.map +1 -0
- package/cjs/transport/startRumBatch.js +26 -0
- package/cjs/transport/startRumBatch.js.map +1 -0
- package/cjs/transport/startRumEventBridge.js +15 -0
- package/cjs/transport/startRumEventBridge.js.map +1 -0
- package/esm/boot/buildEnv.js +5 -0
- package/esm/boot/buildEnv.js.map +1 -0
- package/esm/boot/perStartRum.js +221 -0
- package/esm/boot/perStartRum.js.map +1 -0
- package/esm/boot/rum.js +173 -0
- package/esm/boot/rum.js.map +1 -0
- package/esm/boot/rum.slim.entry.js +7 -0
- package/esm/boot/rum.slim.entry.js.map +1 -0
- package/esm/boot/rumEntryFactory.js +9 -0
- package/esm/boot/rumEntryFactory.js.map +1 -0
- package/esm/boot/rumPublicApi.js +279 -0
- package/esm/boot/rumPublicApi.js.map +1 -0
- package/esm/boot/rumRecorderApiStub.js +13 -0
- package/esm/boot/rumRecorderApiStub.js.map +1 -0
- package/esm/boot/rumSlimConfiguration.js +10 -0
- package/esm/boot/rumSlimConfiguration.js.map +1 -0
- package/esm/constants.js +35 -0
- package/esm/constants.js.map +1 -0
- package/esm/domain/assembly.js +166 -0
- package/esm/domain/assembly.js.map +1 -0
- package/esm/domain/configuration.js +266 -0
- package/esm/domain/configuration.js.map +1 -0
- package/esm/domain/contexts/commonContext.js +8 -0
- package/esm/domain/contexts/commonContext.js.map +1 -0
- package/esm/domain/contexts/displayContext.js +16 -0
- package/esm/domain/contexts/displayContext.js.map +1 -0
- package/esm/domain/contexts/foregroundContexts.js +103 -0
- package/esm/domain/contexts/foregroundContexts.js.map +1 -0
- package/esm/domain/contexts/internalContext.js +41 -0
- package/esm/domain/contexts/internalContext.js.map +1 -0
- package/esm/domain/contexts/pageStateHistory.js +104 -0
- package/esm/domain/contexts/pageStateHistory.js.map +1 -0
- package/esm/domain/contexts/urlContexts.js +67 -0
- package/esm/domain/contexts/urlContexts.js.map +1 -0
- package/esm/domain/contexts/viewContexts.js +44 -0
- package/esm/domain/contexts/viewContexts.js.map +1 -0
- package/esm/domain/domMutationObservable.js +62 -0
- package/esm/domain/domMutationObservable.js.map +1 -0
- package/esm/domain/encoderStreamId.js +5 -0
- package/esm/domain/encoderStreamId.js.map +1 -0
- package/esm/domain/firstInputPolyfill.js +77 -0
- package/esm/domain/firstInputPolyfill.js.map +1 -0
- package/esm/domain/initViewportObservable.js +36 -0
- package/esm/domain/initViewportObservable.js.map +1 -0
- package/esm/domain/locationChangeObservable.js +51 -0
- package/esm/domain/locationChangeObservable.js.map +1 -0
- package/esm/domain/performanceObservable.js +116 -0
- package/esm/domain/performanceObservable.js.map +1 -0
- package/esm/domain/performanceUtils.js +40 -0
- package/esm/domain/performanceUtils.js.map +1 -0
- package/esm/domain/requestCollection.js +119 -0
- package/esm/domain/requestCollection.js.map +1 -0
- package/esm/domain/rumEventsCollection/actions/actionCollection.js +83 -0
- package/esm/domain/rumEventsCollection/actions/actionCollection.js.map +1 -0
- package/esm/domain/rumEventsCollection/actions/clickChain.js +62 -0
- package/esm/domain/rumEventsCollection/actions/clickChain.js.map +1 -0
- package/esm/domain/rumEventsCollection/actions/computeFrustration.js +67 -0
- package/esm/domain/rumEventsCollection/actions/computeFrustration.js.map +1 -0
- package/esm/domain/rumEventsCollection/actions/getActionNameFromElement.js +225 -0
- package/esm/domain/rumEventsCollection/actions/getActionNameFromElement.js.map +1 -0
- package/esm/domain/rumEventsCollection/actions/getSelectorsFromElement.js +212 -0
- package/esm/domain/rumEventsCollection/actions/getSelectorsFromElement.js.map +1 -0
- package/esm/domain/rumEventsCollection/actions/interactionSelectorCache.js +20 -0
- package/esm/domain/rumEventsCollection/actions/interactionSelectorCache.js.map +1 -0
- package/esm/domain/rumEventsCollection/actions/listenActionEvents.js +67 -0
- package/esm/domain/rumEventsCollection/actions/listenActionEvents.js.map +1 -0
- package/esm/domain/rumEventsCollection/actions/trackClickActions.js +244 -0
- package/esm/domain/rumEventsCollection/actions/trackClickActions.js.map +1 -0
- package/esm/domain/rumEventsCollection/error/errorCollection.js +83 -0
- package/esm/domain/rumEventsCollection/error/errorCollection.js.map +1 -0
- package/esm/domain/rumEventsCollection/error/trackConsoleError.js +12 -0
- package/esm/domain/rumEventsCollection/error/trackConsoleError.js.map +1 -0
- package/esm/domain/rumEventsCollection/error/trackReportError.js +19 -0
- package/esm/domain/rumEventsCollection/error/trackReportError.js.map +1 -0
- package/esm/domain/rumEventsCollection/longTask/longAnimationFrameCollection.js +55 -0
- package/esm/domain/rumEventsCollection/longTask/longAnimationFrameCollection.js.map +1 -0
- package/esm/domain/rumEventsCollection/longTask/longTaskCollection.js +38 -0
- package/esm/domain/rumEventsCollection/longTask/longTaskCollection.js.map +1 -0
- package/esm/domain/rumEventsCollection/resource/matchRequestResourceEntry.js +69 -0
- package/esm/domain/rumEventsCollection/resource/matchRequestResourceEntry.js.map +1 -0
- package/esm/domain/rumEventsCollection/resource/resourceCollection.js +233 -0
- package/esm/domain/rumEventsCollection/resource/resourceCollection.js.map +1 -0
- package/esm/domain/rumEventsCollection/resource/resourceTrackerManager.js +231 -0
- package/esm/domain/rumEventsCollection/resource/resourceTrackerManager.js.map +1 -0
- package/esm/domain/rumEventsCollection/resource/resourceUtils.js +218 -0
- package/esm/domain/rumEventsCollection/resource/resourceUtils.js.map +1 -0
- package/esm/domain/rumEventsCollection/resource/retrieveInitialDocumentResourceTiming.js +19 -0
- package/esm/domain/rumEventsCollection/resource/retrieveInitialDocumentResourceTiming.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/interactionCountPolyfill.js +47 -0
- package/esm/domain/rumEventsCollection/view/interactionCountPolyfill.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/trackCommonViewMetrics.js +42 -0
- package/esm/domain/rumEventsCollection/view/trackCommonViewMetrics.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/trackCumulativeLayoutShift.js +117 -0
- package/esm/domain/rumEventsCollection/view/trackCumulativeLayoutShift.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/trackFirstContentfulPaint.js +20 -0
- package/esm/domain/rumEventsCollection/view/trackFirstContentfulPaint.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/trackFirstHidden.js +49 -0
- package/esm/domain/rumEventsCollection/view/trackFirstHidden.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/trackFirstInput.js +41 -0
- package/esm/domain/rumEventsCollection/view/trackFirstInput.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/trackInitialViewTimings.js +44 -0
- package/esm/domain/rumEventsCollection/view/trackInitialViewTimings.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/trackInteractionToNextPaint.js +153 -0
- package/esm/domain/rumEventsCollection/view/trackInteractionToNextPaint.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/trackLargestContentfulPaint.js +54 -0
- package/esm/domain/rumEventsCollection/view/trackLargestContentfulPaint.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/trackLoadingTime.js +45 -0
- package/esm/domain/rumEventsCollection/view/trackLoadingTime.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/trackNavigationTimings.js +51 -0
- package/esm/domain/rumEventsCollection/view/trackNavigationTimings.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/trackScrollMetrics.js +84 -0
- package/esm/domain/rumEventsCollection/view/trackScrollMetrics.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/trackViewEventCounts.js +15 -0
- package/esm/domain/rumEventsCollection/view/trackViewEventCounts.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/trackViews.js +262 -0
- package/esm/domain/rumEventsCollection/view/trackViews.js.map +1 -0
- package/esm/domain/rumEventsCollection/view/viewCollection.js +125 -0
- package/esm/domain/rumEventsCollection/view/viewCollection.js.map +1 -0
- package/esm/domain/rumSessionManager.js +179 -0
- package/esm/domain/rumSessionManager.js.map +1 -0
- package/esm/domain/tracing/ddtraceTracer.js +40 -0
- package/esm/domain/tracing/ddtraceTracer.js.map +1 -0
- package/esm/domain/tracing/getDocumentTraceId.js +69 -0
- package/esm/domain/tracing/getDocumentTraceId.js.map +1 -0
- package/esm/domain/tracing/jaegerTracer.js +42 -0
- package/esm/domain/tracing/jaegerTracer.js.map +1 -0
- package/esm/domain/tracing/sampler.js +61 -0
- package/esm/domain/tracing/sampler.js.map +1 -0
- package/esm/domain/tracing/skywalkingTracer.js +90 -0
- package/esm/domain/tracing/skywalkingTracer.js.map +1 -0
- package/esm/domain/tracing/traceIdentifier.js +57 -0
- package/esm/domain/tracing/traceIdentifier.js.map +1 -0
- package/esm/domain/tracing/tracer.js +124 -0
- package/esm/domain/tracing/tracer.js.map +1 -0
- package/esm/domain/tracing/w3cTraceParentTracer.js +69 -0
- package/esm/domain/tracing/w3cTraceParentTracer.js.map +1 -0
- package/esm/domain/tracing/zipkinMultiTracer.js +42 -0
- package/esm/domain/tracing/zipkinMultiTracer.js.map +1 -0
- package/esm/domain/tracing/zipkinSingleTracer.js +41 -0
- package/esm/domain/tracing/zipkinSingleTracer.js.map +1 -0
- package/esm/domain/trackEventCounts.js +49 -0
- package/esm/domain/trackEventCounts.js.map +1 -0
- package/esm/domain/usr/index.js +38 -0
- package/esm/domain/usr/index.js.map +1 -0
- package/esm/domain/waitPageActivityEnd.js +142 -0
- package/esm/domain/waitPageActivityEnd.js.map +1 -0
- package/esm/index.js +3 -0
- package/esm/index.js.map +1 -0
- package/esm/transport/startRumBatch.js +20 -0
- package/esm/transport/startRumBatch.js.map +1 -0
- package/esm/transport/startRumEventBridge.js +9 -0
- package/esm/transport/startRumEventBridge.js.map +1 -0
- package/package.json +39 -0
- package/types/index.d.ts +134 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assembly.js","names":["_browserCore","require","_typeof","o","Symbol","iterator","constructor","prototype","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","toPrimitive","call","TypeError","String","Number","SessionType","SYNTHETICS","USER","VIEW_MODIFIABLE_FIELD_PATHS","USER_CUSTOMIZABLE_FIELD_PATHS","context","ROOT_MODIFIABLE_FIELD_PATHS","service","version","modifiableFieldPathsByEvent","startRumAssembly","configuration","lifeCycle","sessionManager","userSessionManager","viewContexts","urlContexts","actionContexts","displayContext","getCommonContext","reportError","RumEventType","VIEW","ERROR","assign","RESOURCE","ACTION","LONG_TASK","eventRateLimiters","createEventRateLimiter","eventRateLimiterThreshold","subscribe","LifeCycleEventType","RAW_RUM_EVENT_COLLECTED","data","startTime","rawRumEvent","savedCommonContext","customerContext","domainContext","viewContext","findView","urlContext","findUrl","session","findTrackedSession","isErrorSession","sessionHasError","actionId","findActionId","actionIds","findAllActionId","commonContext","rumContext","_gc","sdkName","sdkVersion","drift","currentDrift","session_sample_rate","round","sessionSampleRate","session_replay_sample_rate","sessionReplaySampleRate","session_on_error_sample_rate","sessionOnErrorSampleRate","session_replay_on_error_sample_rate","sessionReplayOnErrorSampleRate","terminal","type","application","id","applicationId","device","deviceInfo","env","source","date","timeStampNow","user","getId","is_signin","is_login","getSessionType","is_forced_session","isSessionForced","view","name","path","url","referrer","host","pathGroup","pathname","urlQuery","action","needToAssembleWithAction","ids","undefined","display","get","rumEvent","extend2Lev","serverRumEvent","withSnakeCaseKeys","isEmptyObject","has_replay","hasReplay","errorSessionReplayAllowed","sampled_for_error_replay","sampled_for_error_session","error_timestamp_for_session","sessionErrorTimestamp","shouldSend","beforeSend","notify","RUM_EVENT_COLLECTED","event","result","limitModification","warn","rateLimitReached","isLimitReached","indexOf","window","_DATAFLUX_SYNTHETICS_BROWSER"],"sources":["../../../rum/src/domain/assembly.js"],"sourcesContent":["import {\n extend2Lev,\n withSnakeCaseKeys,\n timeStampNow,\n isEmptyObject,\n LifeCycleEventType,\n RumEventType,\n deviceInfo,\n currentDrift,\n createEventRateLimiter,\n limitModification,\n display,\n assign,\n round\n} from '@cloudcare/browser-core'\nvar SessionType = {\n SYNTHETICS: 'synthetics',\n USER: 'user'\n}\n\nvar VIEW_MODIFIABLE_FIELD_PATHS = {\n 'view.url': 'string',\n 'view.referrer': 'string'\n}\n\nvar USER_CUSTOMIZABLE_FIELD_PATHS = {\n context: 'object'\n}\nconst ROOT_MODIFIABLE_FIELD_PATHS = {\n service: 'string',\n version: 'string'\n}\nvar modifiableFieldPathsByEvent = {}\nexport function startRumAssembly(\n configuration,\n lifeCycle,\n sessionManager,\n userSessionManager,\n viewContexts,\n urlContexts,\n actionContexts,\n displayContext,\n getCommonContext,\n reportError\n) {\n modifiableFieldPathsByEvent[RumEventType.VIEW] = {\n ...USER_CUSTOMIZABLE_FIELD_PATHS,\n ...VIEW_MODIFIABLE_FIELD_PATHS\n }\n modifiableFieldPathsByEvent[RumEventType.ERROR] = assign(\n {\n 'error.message': 'string',\n 'error.stack': 'string',\n 'error.resource.url': 'string'\n },\n USER_CUSTOMIZABLE_FIELD_PATHS,\n VIEW_MODIFIABLE_FIELD_PATHS,\n ROOT_MODIFIABLE_FIELD_PATHS\n )\n modifiableFieldPathsByEvent[RumEventType.RESOURCE] = assign(\n {\n 'resource.url': 'string'\n },\n USER_CUSTOMIZABLE_FIELD_PATHS,\n VIEW_MODIFIABLE_FIELD_PATHS,\n ROOT_MODIFIABLE_FIELD_PATHS\n )\n modifiableFieldPathsByEvent[RumEventType.ACTION] = assign(\n {\n 'action.target.name': 'string'\n },\n USER_CUSTOMIZABLE_FIELD_PATHS,\n VIEW_MODIFIABLE_FIELD_PATHS,\n ROOT_MODIFIABLE_FIELD_PATHS\n )\n modifiableFieldPathsByEvent[RumEventType.LONG_TASK] = assign(\n {},\n USER_CUSTOMIZABLE_FIELD_PATHS,\n VIEW_MODIFIABLE_FIELD_PATHS\n )\n var eventRateLimiters = {}\n eventRateLimiters[RumEventType.ERROR] = createEventRateLimiter(\n RumEventType.ERROR,\n configuration.eventRateLimiterThreshold,\n reportError\n )\n eventRateLimiters[RumEventType.ACTION] = createEventRateLimiter(\n RumEventType.ACTION,\n configuration.eventRateLimiterThreshold,\n reportError\n )\n lifeCycle.subscribe(\n LifeCycleEventType.RAW_RUM_EVENT_COLLECTED,\n function (data) {\n var startTime = data.startTime\n var rawRumEvent = data.rawRumEvent\n var savedCommonContext = data.savedCommonContext\n var customerContext = data.customerContext\n var domainContext = data.domainContext\n var viewContext = viewContexts.findView(startTime)\n var urlContext = urlContexts.findUrl(startTime)\n var session = sessionManager.findTrackedSession(startTime)\n if (session && session.isErrorSession && !session.sessionHasError) return\n if (session && viewContext && urlContext) {\n var actionId = actionContexts.findActionId(startTime)\n var actionIds = actionContexts.findAllActionId(startTime)\n var commonContext = savedCommonContext || getCommonContext()\n var rumContext = {\n _gc: {\n sdkName: configuration.sdkName,\n sdkVersion: configuration.sdkVersion,\n drift: currentDrift(),\n configuration: {\n session_sample_rate: round(configuration.sessionSampleRate, 3),\n session_replay_sample_rate: round(\n configuration.sessionReplaySampleRate,\n 3\n ),\n session_on_error_sample_rate: round(\n configuration.sessionOnErrorSampleRate,\n 3\n ),\n session_replay_on_error_sample_rate: round(\n configuration.sessionReplayOnErrorSampleRate,\n 3\n )\n }\n },\n terminal: {\n type: 'web'\n },\n application: {\n id: configuration.applicationId\n },\n device: deviceInfo,\n env: configuration.env || '',\n service: viewContext.service || configuration.service || 'browser',\n version: viewContext.version || configuration.version || '',\n source: 'browser',\n date: timeStampNow(),\n user: {\n id: userSessionManager.getId(),\n is_signin: 'F',\n is_login: false\n },\n session: {\n // must be computed on each event because synthetics instrumentation can be done after sdk execution\n // cf https://github.com/puppeteer/puppeteer/issues/3667\n type: getSessionType(),\n id: session.id,\n is_forced_session: session.isSessionForced\n },\n view: {\n id: viewContext.id,\n name: viewContext.name || urlContext.path,\n url: urlContext.url,\n referrer: urlContext.referrer,\n host: urlContext.host,\n path: urlContext.path,\n pathGroup: urlContext.pathGroup,\n pathname: urlContext.pathname,\n urlQuery: urlContext.urlQuery\n },\n action:\n needToAssembleWithAction(rawRumEvent) && actionId\n ? { id: actionId, ids: actionIds }\n : undefined,\n display: displayContext.get()\n }\n var rumEvent = extend2Lev(rumContext, viewContext, rawRumEvent)\n var serverRumEvent = withSnakeCaseKeys(rumEvent)\n var context = extend2Lev(\n {},\n commonContext.context,\n viewContext.context,\n customerContext\n )\n if (!isEmptyObject(context)) {\n serverRumEvent.context = context\n }\n if (!('has_replay' in serverRumEvent.session)) {\n serverRumEvent.session.has_replay = commonContext.hasReplay\n }\n\n if (session.errorSessionReplayAllowed) {\n serverRumEvent.session.has_replay =\n serverRumEvent.session.has_replay && session.sessionHasError\n }\n if (serverRumEvent.type === 'view') {\n serverRumEvent.session.sampled_for_error_replay =\n session.errorSessionReplayAllowed\n serverRumEvent.session.sampled_for_error_session =\n session.isErrorSession\n serverRumEvent.session.error_timestamp_for_session =\n session.sessionErrorTimestamp\n }\n if (!isEmptyObject(commonContext.user)) {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n serverRumEvent.user = extend2Lev(\n {\n // id: session.getAnonymousID(),\n is_signin: 'T',\n is_login: true\n },\n commonContext.user\n )\n }\n\n if (\n shouldSend(\n serverRumEvent,\n configuration.beforeSend,\n domainContext,\n eventRateLimiters\n )\n ) {\n if (isEmptyObject(serverRumEvent.context)) {\n delete serverRumEvent.context\n }\n lifeCycle.notify(\n LifeCycleEventType.RUM_EVENT_COLLECTED,\n serverRumEvent\n )\n }\n }\n }\n )\n}\n\nfunction shouldSend(event, beforeSend, domainContext, eventRateLimiters) {\n if (beforeSend) {\n var result = limitModification(\n event,\n modifiableFieldPathsByEvent[event.type],\n function (event) {\n return beforeSend(event, domainContext)\n }\n )\n if (result === false && event.type !== RumEventType.VIEW) {\n return false\n }\n if (result === false) {\n display.warn(\"Can't dismiss view events using beforeSend!\")\n }\n }\n var rateLimitReached = false\n if (eventRateLimiters[event.type]) {\n rateLimitReached = eventRateLimiters[event.type].isLimitReached()\n }\n return !rateLimitReached\n}\nfunction needToAssembleWithAction(event) {\n return (\n [RumEventType.ERROR, RumEventType.RESOURCE, RumEventType.LONG_TASK].indexOf(\n event.type\n ) !== -1\n )\n}\n\nfunction getSessionType() {\n return window._DATAFLUX_SYNTHETICS_BROWSER === undefined\n ? SessionType.USER\n : SessionType.SYNTHETICS\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.validateAndBuildRumConfiguration = validateAndBuildRumConfiguration;
|
|
7
|
+
var _browserCore = require("@cloudcare/browser-core");
|
|
8
|
+
var _buildEnv = require("../boot/buildEnv");
|
|
9
|
+
var _tracer = require("../domain/tracing/tracer");
|
|
10
|
+
var REPLAY_CANVAS_QUALITY_PRESETS = {
|
|
11
|
+
low: {
|
|
12
|
+
quality: 0.25,
|
|
13
|
+
sampling: 1,
|
|
14
|
+
autoInterval: 1500,
|
|
15
|
+
autoCooldown: 3000,
|
|
16
|
+
autoUnchangedBackoff: 5000,
|
|
17
|
+
autoFailureBackoff: 7000,
|
|
18
|
+
autoMaxPerRun: 1
|
|
19
|
+
},
|
|
20
|
+
medium: {
|
|
21
|
+
quality: 0.4,
|
|
22
|
+
sampling: 2,
|
|
23
|
+
autoInterval: 1000,
|
|
24
|
+
autoCooldown: 2000,
|
|
25
|
+
autoUnchangedBackoff: 3000,
|
|
26
|
+
autoFailureBackoff: 5000,
|
|
27
|
+
autoMaxPerRun: 2
|
|
28
|
+
},
|
|
29
|
+
high: {
|
|
30
|
+
quality: 0.5,
|
|
31
|
+
sampling: 4,
|
|
32
|
+
autoInterval: 700,
|
|
33
|
+
autoCooldown: 1400,
|
|
34
|
+
autoUnchangedBackoff: 2000,
|
|
35
|
+
autoFailureBackoff: 4000,
|
|
36
|
+
autoMaxPerRun: 4
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
function getReplayCanvasQualityPreset(value) {
|
|
40
|
+
return typeof value === 'string' ? REPLAY_CANVAS_QUALITY_PRESETS[value] : undefined;
|
|
41
|
+
}
|
|
42
|
+
function validateAndBuildRumConfiguration(initConfiguration) {
|
|
43
|
+
if (!initConfiguration.applicationId) {
|
|
44
|
+
_browserCore.display.error('Application ID is not configured, no RUM data will be collected.');
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
var requireParamsValidate = (0, _browserCore.validatePostRequestRequireParamsConfiguration)(initConfiguration);
|
|
48
|
+
if (!requireParamsValidate) return;
|
|
49
|
+
if (initConfiguration.sessionOnErrorSampleRate !== undefined && !(0, _browserCore.isPercentage)(initConfiguration.sessionOnErrorSampleRate)) {
|
|
50
|
+
_browserCore.display.error('Error Session Sample Rate should be a number between 0 and 100');
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
if (initConfiguration.sessionReplaySampleRate !== undefined && !(0, _browserCore.isPercentage)(initConfiguration.sessionReplaySampleRate)) {
|
|
54
|
+
_browserCore.display.error('Session Replay Sample Rate should be a number between 0 and 100');
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
if (initConfiguration.sessionReplayOnErrorSampleRate !== undefined && !(0, _browserCore.isPercentage)(initConfiguration.sessionReplayOnErrorSampleRate)) {
|
|
58
|
+
_browserCore.display.error('Error Session Replay Sample Rate should be a number between 0 and 100');
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
var allowedTracingUrls = validateAndBuildTracingOptions(initConfiguration);
|
|
62
|
+
if (!allowedTracingUrls) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
// if (initConfiguration.allowedTracingOrigins !== undefined) {
|
|
66
|
+
// if (!isArray(initConfiguration.allowedTracingOrigins)) {
|
|
67
|
+
// display.error('Allowed Tracing Origins should be an array')
|
|
68
|
+
// return
|
|
69
|
+
// }
|
|
70
|
+
// }
|
|
71
|
+
// if (initConfiguration.allowedDDTracingOrigins !== undefined) {
|
|
72
|
+
// if (!isArray(initConfiguration.allowedDDTracingOrigins)) {
|
|
73
|
+
// display.error('Allowed Tracing Origins should be an array')
|
|
74
|
+
// return
|
|
75
|
+
// }
|
|
76
|
+
// }
|
|
77
|
+
if (initConfiguration.tracingSampleRate !== undefined && !(0, _browserCore.isPercentage)(initConfiguration.tracingSampleRate)) {
|
|
78
|
+
_browserCore.display.error('Tracing Sample Rate should be a number between 0 and 100');
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
if (initConfiguration.excludedActivityUrls !== undefined && !(0, _browserCore.isArray)(initConfiguration.excludedActivityUrls)) {
|
|
82
|
+
_browserCore.display.error('Excluded Activity Urls should be an array');
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
if (initConfiguration.replayCanvasMode !== undefined && initConfiguration.replayCanvasMode !== 'manual' && initConfiguration.replayCanvasMode !== 'auto') {
|
|
86
|
+
_browserCore.display.error("Replay Canvas Mode should be 'manual' or 'auto'");
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
if (initConfiguration.replayCanvasQuality !== undefined && !(getReplayCanvasQualityPreset(initConfiguration.replayCanvasQuality) || typeof initConfiguration.replayCanvasQuality === 'number' && initConfiguration.replayCanvasQuality >= 0 && initConfiguration.replayCanvasQuality <= 1)) {
|
|
90
|
+
_browserCore.display.error("Replay Canvas Quality should be 'low', 'medium', 'high', or a number between 0 and 1");
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
if (initConfiguration.replayCanvasSampling !== undefined && !(initConfiguration.replayCanvasSampling === 'all' || (0, _browserCore.isNumber)(initConfiguration.replayCanvasSampling) && initConfiguration.replayCanvasSampling > 0)) {
|
|
94
|
+
_browserCore.display.error("Replay Canvas Sampling should be 'all' or a positive number");
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
if (initConfiguration.replayCanvasMaxCanvasSize !== undefined && (!(0, _browserCore.isNumber)(initConfiguration.replayCanvasMaxCanvasSize) || initConfiguration.replayCanvasMaxCanvasSize <= 0)) {
|
|
98
|
+
_browserCore.display.error('Replay Canvas Max Canvas Size should be a positive number');
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
if (initConfiguration.replayCanvasMaxEncodedBytes !== undefined && (!(0, _browserCore.isNumber)(initConfiguration.replayCanvasMaxEncodedBytes) || initConfiguration.replayCanvasMaxEncodedBytes <= 0)) {
|
|
102
|
+
_browserCore.display.error('Replay Canvas Max Encoded Bytes should be a positive number');
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
if (initConfiguration.replayCanvasMaxConcurrentEncodes !== undefined && (!(0, _browserCore.isNumber)(initConfiguration.replayCanvasMaxConcurrentEncodes) || initConfiguration.replayCanvasMaxConcurrentEncodes <= 0)) {
|
|
106
|
+
_browserCore.display.error('Replay Canvas Max Concurrent Encodes should be a positive number');
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
if (initConfiguration.replayCanvasAutoInterval !== undefined && (!(0, _browserCore.isNumber)(initConfiguration.replayCanvasAutoInterval) || initConfiguration.replayCanvasAutoInterval <= 0)) {
|
|
110
|
+
_browserCore.display.error('Replay Canvas Auto Interval should be a positive number');
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
if (initConfiguration.replayCanvasAutoCooldown !== undefined && (!(0, _browserCore.isNumber)(initConfiguration.replayCanvasAutoCooldown) || initConfiguration.replayCanvasAutoCooldown <= 0)) {
|
|
114
|
+
_browserCore.display.error('Replay Canvas Auto Cooldown should be a positive number');
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
if (initConfiguration.replayCanvasAutoUnchangedBackoff !== undefined && (!(0, _browserCore.isNumber)(initConfiguration.replayCanvasAutoUnchangedBackoff) || initConfiguration.replayCanvasAutoUnchangedBackoff <= 0)) {
|
|
118
|
+
_browserCore.display.error('Replay Canvas Auto Unchanged Backoff should be a positive number');
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
if (initConfiguration.replayCanvasAutoFailureBackoff !== undefined && (!(0, _browserCore.isNumber)(initConfiguration.replayCanvasAutoFailureBackoff) || initConfiguration.replayCanvasAutoFailureBackoff <= 0)) {
|
|
122
|
+
_browserCore.display.error('Replay Canvas Auto Failure Backoff should be a positive number');
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
if (initConfiguration.replayCanvasAutoMaxPerRun !== undefined && (!(0, _browserCore.isNumber)(initConfiguration.replayCanvasAutoMaxPerRun) || initConfiguration.replayCanvasAutoMaxPerRun <= 0)) {
|
|
126
|
+
_browserCore.display.error('Replay Canvas Auto Max Per Run should be a positive number');
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
var baseConfiguration = (0, _browserCore.validateAndBuildConfiguration)(initConfiguration);
|
|
130
|
+
if (!baseConfiguration) {
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
var trackUserInteractions = !!(0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.trackUserInteractions, initConfiguration.trackInteractions);
|
|
134
|
+
var replayCanvasMode = (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.replayCanvasMode, 'auto');
|
|
135
|
+
var replayCanvasQualityPreset = getReplayCanvasQualityPreset(initConfiguration.replayCanvasQuality);
|
|
136
|
+
var replayCanvasSampling = initConfiguration.replayCanvasSampling;
|
|
137
|
+
if (replayCanvasSampling === undefined || replayCanvasSampling === null) {
|
|
138
|
+
replayCanvasSampling = replayCanvasQualityPreset ? replayCanvasQualityPreset.sampling : 2;
|
|
139
|
+
}
|
|
140
|
+
return (0, _browserCore.assign)({
|
|
141
|
+
applicationId: initConfiguration.applicationId,
|
|
142
|
+
actionNameAttribute: initConfiguration.actionNameAttribute,
|
|
143
|
+
sessionReplaySampleRate: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.sessionReplaySampleRate, 100),
|
|
144
|
+
sessionOnErrorSampleRate: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.sessionOnErrorSampleRate, 0),
|
|
145
|
+
sessionReplayOnErrorSampleRate: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.sessionReplayOnErrorSampleRate, 0),
|
|
146
|
+
tracingSampleRate: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.tracingSampleRate, 100),
|
|
147
|
+
allowedTracingUrls: allowedTracingUrls,
|
|
148
|
+
injectTraceHeader: initConfiguration.injectTraceHeader && (0, _browserCore.catchUserErrors)(initConfiguration.injectTraceHeader, 'injectTraceHeader threw an error:'),
|
|
149
|
+
generateTraceId: initConfiguration.generateTraceId && (0, _browserCore.catchUserErrors)(initConfiguration.generateTraceId, 'generateTraceId threw an error:'),
|
|
150
|
+
excludedActivityUrls: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.excludedActivityUrls, []),
|
|
151
|
+
workerUrl: initConfiguration.workerUrl,
|
|
152
|
+
replayCanvasWorkerUrl: initConfiguration.replayCanvasWorkerUrl,
|
|
153
|
+
compressIntakeRequests: !!initConfiguration.compressIntakeRequests,
|
|
154
|
+
trackUserInteractions: trackUserInteractions,
|
|
155
|
+
enableLongAnimationFrame: !!initConfiguration.enableLongAnimationFrame,
|
|
156
|
+
trackViewsManually: !!initConfiguration.trackViewsManually,
|
|
157
|
+
replayCanvasEnabled: !!initConfiguration.replayCanvasEnabled,
|
|
158
|
+
replayCanvasMode: replayCanvasMode,
|
|
159
|
+
replayCanvasSampling: replayCanvasSampling,
|
|
160
|
+
replayCanvasQuality: (0, _browserCore.isNullUndefinedDefaultValue)(replayCanvasQualityPreset ? replayCanvasQualityPreset.quality : initConfiguration.replayCanvasQuality, 0.4),
|
|
161
|
+
replayCanvasMimeType: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.replayCanvasMimeType, 'image/webp'),
|
|
162
|
+
replayCanvasMaxCanvasSize: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.replayCanvasMaxCanvasSize, 1280),
|
|
163
|
+
replayCanvasMaxEncodedBytes: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.replayCanvasMaxEncodedBytes, 40000),
|
|
164
|
+
replayCanvasMaxConcurrentEncodes: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.replayCanvasMaxConcurrentEncodes, 1),
|
|
165
|
+
replayCanvasAutoInterval: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.replayCanvasAutoInterval, replayCanvasQualityPreset ? replayCanvasQualityPreset.autoInterval : undefined, 1000),
|
|
166
|
+
replayCanvasAutoCooldown: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.replayCanvasAutoCooldown, replayCanvasQualityPreset ? replayCanvasQualityPreset.autoCooldown : undefined, 1000),
|
|
167
|
+
replayCanvasAutoUnchangedBackoff: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.replayCanvasAutoUnchangedBackoff, replayCanvasQualityPreset ? replayCanvasQualityPreset.autoUnchangedBackoff : undefined, 3000),
|
|
168
|
+
replayCanvasAutoFailureBackoff: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.replayCanvasAutoFailureBackoff, replayCanvasQualityPreset ? replayCanvasQualityPreset.autoFailureBackoff : undefined, 5000),
|
|
169
|
+
replayCanvasAutoMaxPerRun: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.replayCanvasAutoMaxPerRun, replayCanvasQualityPreset ? replayCanvasQualityPreset.autoMaxPerRun : undefined, 2),
|
|
170
|
+
replayCanvasFlushImmediately: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.replayCanvasFlushImmediately, replayCanvasMode === 'manual'),
|
|
171
|
+
traceType: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.traceType, _browserCore.TraceType.DDTRACE),
|
|
172
|
+
traceId128Bit: !!initConfiguration.traceId128Bit,
|
|
173
|
+
defaultPrivacyLevel: (0, _browserCore.objectHasValue)(_browserCore.DefaultPrivacyLevel, initConfiguration.defaultPrivacyLevel) ? initConfiguration.defaultPrivacyLevel : _browserCore.DefaultPrivacyLevel.MASK_USER_INPUT,
|
|
174
|
+
shouldMaskNode: initConfiguration.shouldMaskNode && (0, _browserCore.catchUserErrors)(initConfiguration.shouldMaskNode, 'shouldMaskNode threw an error:'),
|
|
175
|
+
shouldRecordCanvas: initConfiguration.shouldRecordCanvas && (0, _browserCore.catchUserErrors)(initConfiguration.shouldRecordCanvas, 'shouldRecordCanvas threw an error:')
|
|
176
|
+
}, baseConfiguration, _buildEnv.buildEnv);
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Handles allowedTracingUrls and processes legacy allowedTracingOrigins
|
|
180
|
+
*/
|
|
181
|
+
function validateAndBuildTracingOptions(initConfiguration) {
|
|
182
|
+
// Advise about parameters precedence.
|
|
183
|
+
if (initConfiguration.allowedTracingUrls !== undefined && initConfiguration.allowedTracingOrigins !== undefined) {
|
|
184
|
+
_browserCore.display.warn('Both allowedTracingUrls and allowedTracingOrigins (deprecated) have been defined. The parameter allowedTracingUrls will override allowedTracingOrigins.');
|
|
185
|
+
}
|
|
186
|
+
// Handle allowedTracingUrls first
|
|
187
|
+
if (initConfiguration.allowedTracingUrls !== undefined) {
|
|
188
|
+
if (!(0, _browserCore.isArray)(initConfiguration.allowedTracingUrls)) {
|
|
189
|
+
_browserCore.display.error('Allowed Tracing URLs should be an array');
|
|
190
|
+
return;
|
|
191
|
+
}
|
|
192
|
+
// if (initConfiguration.allowedTracingUrls.length !== 0 && initConfiguration.service === undefined) {
|
|
193
|
+
// display.error('Service needs to be configured when tracing is enabled')
|
|
194
|
+
// return
|
|
195
|
+
// }
|
|
196
|
+
// Convert from (MatchOption | TracingOption) to TracingOption, remove unknown properties
|
|
197
|
+
var tracingOptions = [];
|
|
198
|
+
(0, _browserCore.each)(initConfiguration.allowedTracingUrls, function (option) {
|
|
199
|
+
if ((0, _browserCore.isMatchOption)(option)) {
|
|
200
|
+
tracingOptions.push({
|
|
201
|
+
match: option,
|
|
202
|
+
traceType: (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.traceType, _browserCore.TraceType.DDTRACE)
|
|
203
|
+
});
|
|
204
|
+
} else if ((0, _tracer.isTracingOption)(option)) {
|
|
205
|
+
tracingOptions.push(option);
|
|
206
|
+
} else {
|
|
207
|
+
_browserCore.display.warn('Allowed Tracing Urls parameters should be a string, RegExp, function, or an object. Ignoring parameter', option);
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
return tracingOptions;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
// Handle conversion of allowedTracingOrigins to allowedTracingUrls
|
|
214
|
+
if (initConfiguration.allowedTracingOrigins !== undefined) {
|
|
215
|
+
if (!(0, _browserCore.isArray)(initConfiguration.allowedTracingOrigins)) {
|
|
216
|
+
_browserCore.display.error('Allowed Tracing Origins should be an array');
|
|
217
|
+
return;
|
|
218
|
+
}
|
|
219
|
+
var tracingOptions = [];
|
|
220
|
+
(0, _browserCore.each)(initConfiguration.allowedTracingOrigins, function (legacyMatchOption) {
|
|
221
|
+
var tracingOption = convertLegacyMatchOptionToTracingOption(legacyMatchOption, (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.traceType, _browserCore.TraceType.DDTRACE));
|
|
222
|
+
if (tracingOption) {
|
|
223
|
+
tracingOptions.push(tracingOption);
|
|
224
|
+
}
|
|
225
|
+
});
|
|
226
|
+
return tracingOptions;
|
|
227
|
+
}
|
|
228
|
+
// Handle conversion of allowedDDTracingOrigins to allowedTracingUrls
|
|
229
|
+
if (initConfiguration.allowedDDTracingOrigins !== undefined) {
|
|
230
|
+
if (!(0, _browserCore.isArray)(initConfiguration.allowedDDTracingOrigins)) {
|
|
231
|
+
_browserCore.display.error('Allowed Tracing Origins should be an array');
|
|
232
|
+
return;
|
|
233
|
+
}
|
|
234
|
+
var tracingOptions = [];
|
|
235
|
+
(0, _browserCore.each)(initConfiguration.allowedDDTracingOrigins, function (legacyMatchOption) {
|
|
236
|
+
var tracingOption = convertLegacyMatchOptionToTracingOption(legacyMatchOption, (0, _browserCore.isNullUndefinedDefaultValue)(initConfiguration.traceType, _browserCore.TraceType.DDTRACE));
|
|
237
|
+
if (tracingOption) {
|
|
238
|
+
tracingOptions.push(tracingOption);
|
|
239
|
+
}
|
|
240
|
+
});
|
|
241
|
+
return tracingOptions;
|
|
242
|
+
}
|
|
243
|
+
return [];
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
/**
|
|
247
|
+
* Converts parameters from the deprecated allowedTracingOrigins
|
|
248
|
+
* to allowedTracingUrls. Handles the change from origin to full URLs.
|
|
249
|
+
*/
|
|
250
|
+
function convertLegacyMatchOptionToTracingOption(item, traceType) {
|
|
251
|
+
var match;
|
|
252
|
+
if (typeof item === 'string') {
|
|
253
|
+
match = item;
|
|
254
|
+
} else if (item instanceof RegExp) {
|
|
255
|
+
match = function match(url) {
|
|
256
|
+
return item.test((0, _browserCore.getOrigin)(url));
|
|
257
|
+
};
|
|
258
|
+
} else if (typeof item === 'function') {
|
|
259
|
+
match = function match(url) {
|
|
260
|
+
return item((0, _browserCore.getOrigin)(url));
|
|
261
|
+
};
|
|
262
|
+
}
|
|
263
|
+
if (match === undefined) {
|
|
264
|
+
_browserCore.display.warn('Allowed Tracing Origins parameters should be a string, RegExp or function. Ignoring parameter', item);
|
|
265
|
+
return undefined;
|
|
266
|
+
}
|
|
267
|
+
return {
|
|
268
|
+
match: match,
|
|
269
|
+
traceType: traceType
|
|
270
|
+
};
|
|
271
|
+
}
|
|
272
|
+
//# sourceMappingURL=configuration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configuration.js","names":["_browserCore","require","_buildEnv","_tracer","REPLAY_CANVAS_QUALITY_PRESETS","low","quality","sampling","autoInterval","autoCooldown","autoUnchangedBackoff","autoFailureBackoff","autoMaxPerRun","medium","high","getReplayCanvasQualityPreset","value","undefined","validateAndBuildRumConfiguration","initConfiguration","applicationId","display","error","requireParamsValidate","validatePostRequestRequireParamsConfiguration","sessionOnErrorSampleRate","isPercentage","sessionReplaySampleRate","sessionReplayOnErrorSampleRate","allowedTracingUrls","validateAndBuildTracingOptions","tracingSampleRate","excludedActivityUrls","isArray","replayCanvasMode","replayCanvasQuality","replayCanvasSampling","isNumber","replayCanvasMaxCanvasSize","replayCanvasMaxEncodedBytes","replayCanvasMaxConcurrentEncodes","replayCanvasAutoInterval","replayCanvasAutoCooldown","replayCanvasAutoUnchangedBackoff","replayCanvasAutoFailureBackoff","replayCanvasAutoMaxPerRun","baseConfiguration","validateAndBuildConfiguration","trackUserInteractions","isNullUndefinedDefaultValue","trackInteractions","replayCanvasQualityPreset","assign","actionNameAttribute","injectTraceHeader","catchUserErrors","generateTraceId","workerUrl","replayCanvasWorkerUrl","compressIntakeRequests","enableLongAnimationFrame","trackViewsManually","replayCanvasEnabled","replayCanvasMimeType","replayCanvasFlushImmediately","traceType","TraceType","DDTRACE","traceId128Bit","defaultPrivacyLevel","objectHasValue","DefaultPrivacyLevel","MASK_USER_INPUT","shouldMaskNode","shouldRecordCanvas","buildEnv","allowedTracingOrigins","warn","tracingOptions","each","option","isMatchOption","push","match","isTracingOption","legacyMatchOption","tracingOption","convertLegacyMatchOptionToTracingOption","allowedDDTracingOrigins","item","RegExp","url","test","getOrigin"],"sources":["../../../rum/src/domain/configuration.js"],"sourcesContent":["import {\n assign,\n display,\n isPercentage,\n validateAndBuildConfiguration,\n validatePostRequestRequireParamsConfiguration,\n isArray,\n TraceType,\n isNullUndefinedDefaultValue,\n DefaultPrivacyLevel,\n objectHasValue,\n isMatchOption,\n catchUserErrors,\n getOrigin,\n each,\n isNumber\n} from '@cloudcare/browser-core'\nimport { buildEnv } from '../boot/buildEnv'\nimport { isTracingOption } from '../domain/tracing/tracer'\n\nvar REPLAY_CANVAS_QUALITY_PRESETS = {\n low: {\n quality: 0.25,\n sampling: 1,\n autoInterval: 1500,\n autoCooldown: 3000,\n autoUnchangedBackoff: 5000,\n autoFailureBackoff: 7000,\n autoMaxPerRun: 1\n },\n medium: {\n quality: 0.4,\n sampling: 2,\n autoInterval: 1000,\n autoCooldown: 2000,\n autoUnchangedBackoff: 3000,\n autoFailureBackoff: 5000,\n autoMaxPerRun: 2\n },\n high: {\n quality: 0.5,\n sampling: 4,\n autoInterval: 700,\n autoCooldown: 1400,\n autoUnchangedBackoff: 2000,\n autoFailureBackoff: 4000,\n autoMaxPerRun: 4\n }\n}\n\nfunction getReplayCanvasQualityPreset(value) {\n return typeof value === 'string'\n ? REPLAY_CANVAS_QUALITY_PRESETS[value]\n : undefined\n}\n\nexport function validateAndBuildRumConfiguration(initConfiguration) {\n if (!initConfiguration.applicationId) {\n display.error(\n 'Application ID is not configured, no RUM data will be collected.'\n )\n return\n }\n var requireParamsValidate =\n validatePostRequestRequireParamsConfiguration(initConfiguration)\n if (!requireParamsValidate) return\n if (\n initConfiguration.sessionOnErrorSampleRate !== undefined &&\n !isPercentage(initConfiguration.sessionOnErrorSampleRate)\n ) {\n display.error(\n 'Error Session Sample Rate should be a number between 0 and 100'\n )\n return\n }\n if (\n initConfiguration.sessionReplaySampleRate !== undefined &&\n !isPercentage(initConfiguration.sessionReplaySampleRate)\n ) {\n display.error(\n 'Session Replay Sample Rate should be a number between 0 and 100'\n )\n return\n }\n if (\n initConfiguration.sessionReplayOnErrorSampleRate !== undefined &&\n !isPercentage(initConfiguration.sessionReplayOnErrorSampleRate)\n ) {\n display.error(\n 'Error Session Replay Sample Rate should be a number between 0 and 100'\n )\n return\n }\n var allowedTracingUrls = validateAndBuildTracingOptions(initConfiguration)\n if (!allowedTracingUrls) {\n return\n }\n // if (initConfiguration.allowedTracingOrigins !== undefined) {\n // if (!isArray(initConfiguration.allowedTracingOrigins)) {\n // display.error('Allowed Tracing Origins should be an array')\n // return\n // }\n // }\n // if (initConfiguration.allowedDDTracingOrigins !== undefined) {\n // if (!isArray(initConfiguration.allowedDDTracingOrigins)) {\n // display.error('Allowed Tracing Origins should be an array')\n // return\n // }\n // }\n if (\n initConfiguration.tracingSampleRate !== undefined &&\n !isPercentage(initConfiguration.tracingSampleRate)\n ) {\n display.error('Tracing Sample Rate should be a number between 0 and 100')\n return\n }\n if (\n initConfiguration.excludedActivityUrls !== undefined &&\n !isArray(initConfiguration.excludedActivityUrls)\n ) {\n display.error('Excluded Activity Urls should be an array')\n return\n }\n if (\n initConfiguration.replayCanvasMode !== undefined &&\n initConfiguration.replayCanvasMode !== 'manual' &&\n initConfiguration.replayCanvasMode !== 'auto'\n ) {\n display.error(\"Replay Canvas Mode should be 'manual' or 'auto'\")\n return\n }\n if (\n initConfiguration.replayCanvasQuality !== undefined &&\n !(\n getReplayCanvasQualityPreset(initConfiguration.replayCanvasQuality) ||\n (typeof initConfiguration.replayCanvasQuality === 'number' &&\n initConfiguration.replayCanvasQuality >= 0 &&\n initConfiguration.replayCanvasQuality <= 1)\n )\n ) {\n display.error(\n \"Replay Canvas Quality should be 'low', 'medium', 'high', or a number between 0 and 1\"\n )\n return\n }\n if (\n initConfiguration.replayCanvasSampling !== undefined &&\n !(\n initConfiguration.replayCanvasSampling === 'all' ||\n (isNumber(initConfiguration.replayCanvasSampling) &&\n initConfiguration.replayCanvasSampling > 0)\n )\n ) {\n display.error(\n \"Replay Canvas Sampling should be 'all' or a positive number\"\n )\n return\n }\n if (\n initConfiguration.replayCanvasMaxCanvasSize !== undefined &&\n (!isNumber(initConfiguration.replayCanvasMaxCanvasSize) ||\n initConfiguration.replayCanvasMaxCanvasSize <= 0)\n ) {\n display.error('Replay Canvas Max Canvas Size should be a positive number')\n return\n }\n if (\n initConfiguration.replayCanvasMaxEncodedBytes !== undefined &&\n (!isNumber(initConfiguration.replayCanvasMaxEncodedBytes) ||\n initConfiguration.replayCanvasMaxEncodedBytes <= 0)\n ) {\n display.error(\n 'Replay Canvas Max Encoded Bytes should be a positive number'\n )\n return\n }\n if (\n initConfiguration.replayCanvasMaxConcurrentEncodes !== undefined &&\n (!isNumber(initConfiguration.replayCanvasMaxConcurrentEncodes) ||\n initConfiguration.replayCanvasMaxConcurrentEncodes <= 0)\n ) {\n display.error(\n 'Replay Canvas Max Concurrent Encodes should be a positive number'\n )\n return\n }\n if (\n initConfiguration.replayCanvasAutoInterval !== undefined &&\n (!isNumber(initConfiguration.replayCanvasAutoInterval) ||\n initConfiguration.replayCanvasAutoInterval <= 0)\n ) {\n display.error('Replay Canvas Auto Interval should be a positive number')\n return\n }\n if (\n initConfiguration.replayCanvasAutoCooldown !== undefined &&\n (!isNumber(initConfiguration.replayCanvasAutoCooldown) ||\n initConfiguration.replayCanvasAutoCooldown <= 0)\n ) {\n display.error('Replay Canvas Auto Cooldown should be a positive number')\n return\n }\n if (\n initConfiguration.replayCanvasAutoUnchangedBackoff !== undefined &&\n (!isNumber(initConfiguration.replayCanvasAutoUnchangedBackoff) ||\n initConfiguration.replayCanvasAutoUnchangedBackoff <= 0)\n ) {\n display.error(\n 'Replay Canvas Auto Unchanged Backoff should be a positive number'\n )\n return\n }\n if (\n initConfiguration.replayCanvasAutoFailureBackoff !== undefined &&\n (!isNumber(initConfiguration.replayCanvasAutoFailureBackoff) ||\n initConfiguration.replayCanvasAutoFailureBackoff <= 0)\n ) {\n display.error(\n 'Replay Canvas Auto Failure Backoff should be a positive number'\n )\n return\n }\n if (\n initConfiguration.replayCanvasAutoMaxPerRun !== undefined &&\n (!isNumber(initConfiguration.replayCanvasAutoMaxPerRun) ||\n initConfiguration.replayCanvasAutoMaxPerRun <= 0)\n ) {\n display.error('Replay Canvas Auto Max Per Run should be a positive number')\n return\n }\n\n var baseConfiguration = validateAndBuildConfiguration(initConfiguration)\n if (!baseConfiguration) {\n return\n }\n var trackUserInteractions = !!isNullUndefinedDefaultValue(\n initConfiguration.trackUserInteractions,\n initConfiguration.trackInteractions\n )\n var replayCanvasMode = isNullUndefinedDefaultValue(\n initConfiguration.replayCanvasMode,\n 'auto'\n )\n var replayCanvasQualityPreset = getReplayCanvasQualityPreset(\n initConfiguration.replayCanvasQuality\n )\n var replayCanvasSampling = initConfiguration.replayCanvasSampling\n if (replayCanvasSampling === undefined || replayCanvasSampling === null) {\n replayCanvasSampling = replayCanvasQualityPreset\n ? replayCanvasQualityPreset.sampling\n : 2\n }\n return assign(\n {\n applicationId: initConfiguration.applicationId,\n actionNameAttribute: initConfiguration.actionNameAttribute,\n sessionReplaySampleRate: isNullUndefinedDefaultValue(\n initConfiguration.sessionReplaySampleRate,\n 100\n ),\n sessionOnErrorSampleRate: isNullUndefinedDefaultValue(\n initConfiguration.sessionOnErrorSampleRate,\n 0\n ),\n sessionReplayOnErrorSampleRate: isNullUndefinedDefaultValue(\n initConfiguration.sessionReplayOnErrorSampleRate,\n 0\n ),\n tracingSampleRate: isNullUndefinedDefaultValue(\n initConfiguration.tracingSampleRate,\n 100\n ),\n allowedTracingUrls: allowedTracingUrls,\n injectTraceHeader:\n initConfiguration.injectTraceHeader &&\n catchUserErrors(\n initConfiguration.injectTraceHeader,\n 'injectTraceHeader threw an error:'\n ),\n generateTraceId:\n initConfiguration.generateTraceId &&\n catchUserErrors(\n initConfiguration.generateTraceId,\n 'generateTraceId threw an error:'\n ),\n excludedActivityUrls: isNullUndefinedDefaultValue(\n initConfiguration.excludedActivityUrls,\n []\n ),\n workerUrl: initConfiguration.workerUrl,\n replayCanvasWorkerUrl: initConfiguration.replayCanvasWorkerUrl,\n compressIntakeRequests: !!initConfiguration.compressIntakeRequests,\n trackUserInteractions: trackUserInteractions,\n enableLongAnimationFrame: !!initConfiguration.enableLongAnimationFrame,\n trackViewsManually: !!initConfiguration.trackViewsManually,\n replayCanvasEnabled: !!initConfiguration.replayCanvasEnabled,\n replayCanvasMode: replayCanvasMode,\n replayCanvasSampling: replayCanvasSampling,\n replayCanvasQuality: isNullUndefinedDefaultValue(\n replayCanvasQualityPreset\n ? replayCanvasQualityPreset.quality\n : initConfiguration.replayCanvasQuality,\n 0.4\n ),\n replayCanvasMimeType: isNullUndefinedDefaultValue(\n initConfiguration.replayCanvasMimeType,\n 'image/webp'\n ),\n replayCanvasMaxCanvasSize: isNullUndefinedDefaultValue(\n initConfiguration.replayCanvasMaxCanvasSize,\n 1280\n ),\n replayCanvasMaxEncodedBytes: isNullUndefinedDefaultValue(\n initConfiguration.replayCanvasMaxEncodedBytes,\n 40000\n ),\n replayCanvasMaxConcurrentEncodes: isNullUndefinedDefaultValue(\n initConfiguration.replayCanvasMaxConcurrentEncodes,\n 1\n ),\n replayCanvasAutoInterval: isNullUndefinedDefaultValue(\n initConfiguration.replayCanvasAutoInterval,\n replayCanvasQualityPreset\n ? replayCanvasQualityPreset.autoInterval\n : undefined,\n 1000\n ),\n replayCanvasAutoCooldown: isNullUndefinedDefaultValue(\n initConfiguration.replayCanvasAutoCooldown,\n replayCanvasQualityPreset\n ? replayCanvasQualityPreset.autoCooldown\n : undefined,\n 1000\n ),\n replayCanvasAutoUnchangedBackoff: isNullUndefinedDefaultValue(\n initConfiguration.replayCanvasAutoUnchangedBackoff,\n replayCanvasQualityPreset\n ? replayCanvasQualityPreset.autoUnchangedBackoff\n : undefined,\n 3000\n ),\n replayCanvasAutoFailureBackoff: isNullUndefinedDefaultValue(\n initConfiguration.replayCanvasAutoFailureBackoff,\n replayCanvasQualityPreset\n ? replayCanvasQualityPreset.autoFailureBackoff\n : undefined,\n 5000\n ),\n replayCanvasAutoMaxPerRun: isNullUndefinedDefaultValue(\n initConfiguration.replayCanvasAutoMaxPerRun,\n replayCanvasQualityPreset\n ? replayCanvasQualityPreset.autoMaxPerRun\n : undefined,\n 2\n ),\n replayCanvasFlushImmediately: isNullUndefinedDefaultValue(\n initConfiguration.replayCanvasFlushImmediately,\n replayCanvasMode === 'manual'\n ),\n traceType: isNullUndefinedDefaultValue(\n initConfiguration.traceType,\n TraceType.DDTRACE\n ),\n traceId128Bit: !!initConfiguration.traceId128Bit,\n defaultPrivacyLevel: objectHasValue(\n DefaultPrivacyLevel,\n initConfiguration.defaultPrivacyLevel\n )\n ? initConfiguration.defaultPrivacyLevel\n : DefaultPrivacyLevel.MASK_USER_INPUT,\n shouldMaskNode:\n initConfiguration.shouldMaskNode &&\n catchUserErrors(\n initConfiguration.shouldMaskNode,\n 'shouldMaskNode threw an error:'\n ),\n shouldRecordCanvas:\n initConfiguration.shouldRecordCanvas &&\n catchUserErrors(\n initConfiguration.shouldRecordCanvas,\n 'shouldRecordCanvas threw an error:'\n )\n },\n baseConfiguration,\n buildEnv\n )\n}\n/**\n * Handles allowedTracingUrls and processes legacy allowedTracingOrigins\n */\nfunction validateAndBuildTracingOptions(initConfiguration) {\n // Advise about parameters precedence.\n if (\n initConfiguration.allowedTracingUrls !== undefined &&\n initConfiguration.allowedTracingOrigins !== undefined\n ) {\n display.warn(\n 'Both allowedTracingUrls and allowedTracingOrigins (deprecated) have been defined. The parameter allowedTracingUrls will override allowedTracingOrigins.'\n )\n }\n // Handle allowedTracingUrls first\n if (initConfiguration.allowedTracingUrls !== undefined) {\n if (!isArray(initConfiguration.allowedTracingUrls)) {\n display.error('Allowed Tracing URLs should be an array')\n return\n }\n // if (initConfiguration.allowedTracingUrls.length !== 0 && initConfiguration.service === undefined) {\n // display.error('Service needs to be configured when tracing is enabled')\n // return\n // }\n // Convert from (MatchOption | TracingOption) to TracingOption, remove unknown properties\n var tracingOptions = []\n each(initConfiguration.allowedTracingUrls, function (option) {\n if (isMatchOption(option)) {\n tracingOptions.push({\n match: option,\n traceType: isNullUndefinedDefaultValue(\n initConfiguration.traceType,\n TraceType.DDTRACE\n )\n })\n } else if (isTracingOption(option)) {\n tracingOptions.push(option)\n } else {\n display.warn(\n 'Allowed Tracing Urls parameters should be a string, RegExp, function, or an object. Ignoring parameter',\n option\n )\n }\n })\n return tracingOptions\n }\n\n // Handle conversion of allowedTracingOrigins to allowedTracingUrls\n if (initConfiguration.allowedTracingOrigins !== undefined) {\n if (!isArray(initConfiguration.allowedTracingOrigins)) {\n display.error('Allowed Tracing Origins should be an array')\n return\n }\n\n var tracingOptions = []\n each(initConfiguration.allowedTracingOrigins, function (legacyMatchOption) {\n var tracingOption = convertLegacyMatchOptionToTracingOption(\n legacyMatchOption,\n isNullUndefinedDefaultValue(\n initConfiguration.traceType,\n TraceType.DDTRACE\n )\n )\n if (tracingOption) {\n tracingOptions.push(tracingOption)\n }\n })\n\n return tracingOptions\n }\n // Handle conversion of allowedDDTracingOrigins to allowedTracingUrls\n if (initConfiguration.allowedDDTracingOrigins !== undefined) {\n if (!isArray(initConfiguration.allowedDDTracingOrigins)) {\n display.error('Allowed Tracing Origins should be an array')\n return\n }\n\n var tracingOptions = []\n each(\n initConfiguration.allowedDDTracingOrigins,\n function (legacyMatchOption) {\n var tracingOption = convertLegacyMatchOptionToTracingOption(\n legacyMatchOption,\n isNullUndefinedDefaultValue(\n initConfiguration.traceType,\n TraceType.DDTRACE\n )\n )\n if (tracingOption) {\n tracingOptions.push(tracingOption)\n }\n }\n )\n\n return tracingOptions\n }\n\n return []\n}\n\n/**\n * Converts parameters from the deprecated allowedTracingOrigins\n * to allowedTracingUrls. Handles the change from origin to full URLs.\n */\nfunction convertLegacyMatchOptionToTracingOption(item, traceType) {\n var match\n if (typeof item === 'string') {\n match = item\n } else if (item instanceof RegExp) {\n match = function (url) {\n return item.test(getOrigin(url))\n }\n } else if (typeof item === 'function') {\n match = function (url) {\n return item(getOrigin(url))\n }\n }\n\n if (match === undefined) {\n display.warn(\n 'Allowed Tracing Origins parameters should be a string, RegExp or function. Ignoring parameter',\n item\n )\n return undefined\n }\n\n return { match: match, traceType: traceType }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.buildCommonContext = buildCommonContext;
|
|
7
|
+
function buildCommonContext(globalContextManager, userContextManager, recorderApi) {
|
|
8
|
+
return {
|
|
9
|
+
context: globalContextManager.getContext(),
|
|
10
|
+
user: userContextManager.getContext(),
|
|
11
|
+
hasReplay: recorderApi.isRecording() ? true : undefined
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=commonContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commonContext.js","names":["buildCommonContext","globalContextManager","userContextManager","recorderApi","context","getContext","user","hasReplay","isRecording","undefined"],"sources":["../../../../rum/src/domain/contexts/commonContext.js"],"sourcesContent":["export function buildCommonContext(\n globalContextManager,\n userContextManager,\n recorderApi\n) {\n return {\n context: globalContextManager.getContext(),\n user: userContextManager.getContext(),\n hasReplay: recorderApi.isRecording() ? true : undefined\n }\n}\n"],"mappings":";;;;;;AAAO,SAASA,kBAAkBA,CAChCC,oBAAoB,EACpBC,kBAAkB,EAClBC,WAAW,EACX;EACA,OAAO;IACLC,OAAO,EAAEH,oBAAoB,CAACI,UAAU,CAAC,CAAC;IAC1CC,IAAI,EAAEJ,kBAAkB,CAACG,UAAU,CAAC,CAAC;IACrCE,SAAS,EAAEJ,WAAW,CAACK,WAAW,CAAC,CAAC,GAAG,IAAI,GAAGC;EAChD,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.startDisplayContext = startDisplayContext;
|
|
7
|
+
var _initViewportObservable = require("../initViewportObservable");
|
|
8
|
+
function startDisplayContext() {
|
|
9
|
+
var viewport = (0, _initViewportObservable.getViewportDimension)();
|
|
10
|
+
var unsubscribeViewport = (0, _initViewportObservable.initViewportObservable)().subscribe(function (viewportDimension) {
|
|
11
|
+
viewport = viewportDimension;
|
|
12
|
+
}).unsubscribe;
|
|
13
|
+
return {
|
|
14
|
+
get: function get() {
|
|
15
|
+
return {
|
|
16
|
+
viewport: viewport
|
|
17
|
+
};
|
|
18
|
+
},
|
|
19
|
+
stop: unsubscribeViewport
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=displayContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"displayContext.js","names":["_initViewportObservable","require","startDisplayContext","viewport","getViewportDimension","unsubscribeViewport","initViewportObservable","subscribe","viewportDimension","unsubscribe","get","stop"],"sources":["../../../../rum/src/domain/contexts/displayContext.js"],"sourcesContent":["import {\n getViewportDimension,\n initViewportObservable\n} from '../initViewportObservable'\n\nexport function startDisplayContext() {\n var viewport = getViewportDimension()\n var unsubscribeViewport = initViewportObservable().subscribe(function (\n viewportDimension\n ) {\n viewport = viewportDimension\n }).unsubscribe\n\n return {\n get: function () {\n return { viewport: viewport }\n },\n stop: unsubscribeViewport\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,uBAAA,GAAAC,OAAA;AAKO,SAASC,mBAAmBA,CAAA,EAAG;EACpC,IAAIC,QAAQ,GAAG,IAAAC,4CAAoB,EAAC,CAAC;EACrC,IAAIC,mBAAmB,GAAG,IAAAC,8CAAsB,EAAC,CAAC,CAACC,SAAS,CAAC,UAC3DC,iBAAiB,EACjB;IACAL,QAAQ,GAAGK,iBAAiB;EAC9B,CAAC,CAAC,CAACC,WAAW;EAEd,OAAO;IACLC,GAAG,EAAE,SAALA,GAAGA,CAAA,EAAc;MACf,OAAO;QAAEP,QAAQ,EAAEA;MAAS,CAAC;IAC/B,CAAC;IACDQ,IAAI,EAAEN;EACR,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.MAX_NUMBER_OF_STORED_FOREGROUND_PERIODS = exports.MAX_NUMBER_OF_SELECTABLE_FOREGROUND_PERIODS = void 0;
|
|
7
|
+
exports.addNewForegroundPeriod = addNewForegroundPeriod;
|
|
8
|
+
exports.closeForegroundPeriod = closeForegroundPeriod;
|
|
9
|
+
exports.startForegroundContexts = startForegroundContexts;
|
|
10
|
+
var _browserCore = require("@cloudcare/browser-core");
|
|
11
|
+
// Arbitrary value to cap number of element mostly for backend & to save bandwidth
|
|
12
|
+
var MAX_NUMBER_OF_SELECTABLE_FOREGROUND_PERIODS = exports.MAX_NUMBER_OF_SELECTABLE_FOREGROUND_PERIODS = 500;
|
|
13
|
+
// Arbitrary value to cap number of element mostly for memory consumption in the browser
|
|
14
|
+
var MAX_NUMBER_OF_STORED_FOREGROUND_PERIODS = exports.MAX_NUMBER_OF_STORED_FOREGROUND_PERIODS = 2500;
|
|
15
|
+
var foregroundPeriods = [];
|
|
16
|
+
function startForegroundContexts() {
|
|
17
|
+
if (document.hasFocus()) {
|
|
18
|
+
addNewForegroundPeriod();
|
|
19
|
+
}
|
|
20
|
+
var foregroundTracking = trackFocus(addNewForegroundPeriod);
|
|
21
|
+
var blurTracking = trackBlur(closeForegroundPeriod);
|
|
22
|
+
return {
|
|
23
|
+
isInForegroundAt: isInForegroundAt,
|
|
24
|
+
selectInForegroundPeriodsFor: selectInForegroundPeriodsFor,
|
|
25
|
+
stop: function stop() {
|
|
26
|
+
foregroundPeriods = [];
|
|
27
|
+
foregroundTracking.stop();
|
|
28
|
+
blurTracking.stop();
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
function addNewForegroundPeriod() {
|
|
33
|
+
if (foregroundPeriods.length > MAX_NUMBER_OF_STORED_FOREGROUND_PERIODS) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
var currentForegroundPeriod = foregroundPeriods[foregroundPeriods.length - 1];
|
|
37
|
+
var now = (0, _browserCore.relativeNow)();
|
|
38
|
+
if (currentForegroundPeriod !== undefined && currentForegroundPeriod.end === undefined) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
foregroundPeriods.push({
|
|
42
|
+
start: now
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
function closeForegroundPeriod() {
|
|
46
|
+
if (foregroundPeriods.length === 0) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
var currentForegroundPeriod = foregroundPeriods[foregroundPeriods.length - 1];
|
|
50
|
+
var now = (0, _browserCore.relativeNow)();
|
|
51
|
+
if (currentForegroundPeriod.end !== undefined) {
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
currentForegroundPeriod.end = now;
|
|
55
|
+
}
|
|
56
|
+
function trackFocus(onFocusChange) {
|
|
57
|
+
return (0, _browserCore.addEventListener)(window, _browserCore.DOM_EVENT.FOCUS, function (event) {
|
|
58
|
+
if (!event.isTrusted) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
onFocusChange();
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
function trackBlur(onBlurChange) {
|
|
65
|
+
return (0, _browserCore.addEventListener)(window, _browserCore.DOM_EVENT.BLUR, function (event) {
|
|
66
|
+
if (!event.isTrusted) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
onBlurChange();
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
function isInForegroundAt(startTime) {
|
|
73
|
+
for (var i = foregroundPeriods.length - 1; i >= 0; i--) {
|
|
74
|
+
var foregroundPeriod = foregroundPeriods[i];
|
|
75
|
+
if (foregroundPeriod.end !== undefined && startTime > foregroundPeriod.end) {
|
|
76
|
+
break;
|
|
77
|
+
}
|
|
78
|
+
if (startTime > foregroundPeriod.start && (foregroundPeriod.end === undefined || startTime < foregroundPeriod.end)) {
|
|
79
|
+
return true;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
function selectInForegroundPeriodsFor(eventStartTime, duration) {
|
|
85
|
+
var eventEndTime = (0, _browserCore.addDuration)(eventStartTime, duration);
|
|
86
|
+
var filteredForegroundPeriods = [];
|
|
87
|
+
var earliestIndex = Math.max(0, foregroundPeriods.length - MAX_NUMBER_OF_SELECTABLE_FOREGROUND_PERIODS);
|
|
88
|
+
for (var i = foregroundPeriods.length - 1; i >= earliestIndex; i--) {
|
|
89
|
+
var foregroundPeriod = foregroundPeriods[i];
|
|
90
|
+
if (foregroundPeriod.end !== undefined && eventStartTime > foregroundPeriod.end) {
|
|
91
|
+
// event starts after the end of the current focus period
|
|
92
|
+
// since the array is sorted, we can stop looking for foreground periods
|
|
93
|
+
break;
|
|
94
|
+
}
|
|
95
|
+
if (eventEndTime < foregroundPeriod.start) {
|
|
96
|
+
// event ends before the start of the current focus period
|
|
97
|
+
// continue to previous one
|
|
98
|
+
continue;
|
|
99
|
+
}
|
|
100
|
+
var startTime = eventStartTime > foregroundPeriod.start ? eventStartTime : foregroundPeriod.start;
|
|
101
|
+
var startDuration = (0, _browserCore.elapsed)(eventStartTime, startTime);
|
|
102
|
+
var endTime = foregroundPeriod.end === undefined || eventEndTime < foregroundPeriod.end ? eventEndTime : foregroundPeriod.end;
|
|
103
|
+
var endDuration = (0, _browserCore.elapsed)(startTime, endTime);
|
|
104
|
+
filteredForegroundPeriods.unshift({
|
|
105
|
+
start: (0, _browserCore.toServerDuration)(startDuration),
|
|
106
|
+
duration: (0, _browserCore.toServerDuration)(endDuration)
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
return filteredForegroundPeriods;
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=foregroundContexts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"foregroundContexts.js","names":["_browserCore","require","MAX_NUMBER_OF_SELECTABLE_FOREGROUND_PERIODS","exports","MAX_NUMBER_OF_STORED_FOREGROUND_PERIODS","foregroundPeriods","startForegroundContexts","document","hasFocus","addNewForegroundPeriod","foregroundTracking","trackFocus","blurTracking","trackBlur","closeForegroundPeriod","isInForegroundAt","selectInForegroundPeriodsFor","stop","length","currentForegroundPeriod","now","relativeNow","undefined","end","push","start","onFocusChange","addEventListener","window","DOM_EVENT","FOCUS","event","isTrusted","onBlurChange","BLUR","startTime","i","foregroundPeriod","eventStartTime","duration","eventEndTime","addDuration","filteredForegroundPeriods","earliestIndex","Math","max","startDuration","elapsed","endTime","endDuration","unshift","toServerDuration"],"sources":["../../../../rum/src/domain/contexts/foregroundContexts.js"],"sourcesContent":["import {\n addDuration,\n addEventListener,\n DOM_EVENT,\n elapsed,\n relativeNow,\n toServerDuration\n} from '@cloudcare/browser-core'\n\n// Arbitrary value to cap number of element mostly for backend & to save bandwidth\nexport var MAX_NUMBER_OF_SELECTABLE_FOREGROUND_PERIODS = 500\n// Arbitrary value to cap number of element mostly for memory consumption in the browser\nexport var MAX_NUMBER_OF_STORED_FOREGROUND_PERIODS = 2500\n\nvar foregroundPeriods = []\n\nexport function startForegroundContexts() {\n if (document.hasFocus()) {\n addNewForegroundPeriod()\n }\n\n var foregroundTracking = trackFocus(addNewForegroundPeriod)\n var blurTracking = trackBlur(closeForegroundPeriod)\n return {\n isInForegroundAt: isInForegroundAt,\n selectInForegroundPeriodsFor: selectInForegroundPeriodsFor,\n stop: function () {\n foregroundPeriods = []\n foregroundTracking.stop()\n blurTracking.stop()\n }\n }\n}\n\nexport function addNewForegroundPeriod() {\n if (foregroundPeriods.length > MAX_NUMBER_OF_STORED_FOREGROUND_PERIODS) {\n return\n }\n var currentForegroundPeriod = foregroundPeriods[foregroundPeriods.length - 1]\n var now = relativeNow()\n if (\n currentForegroundPeriod !== undefined &&\n currentForegroundPeriod.end === undefined\n ) {\n return\n }\n foregroundPeriods.push({\n start: now\n })\n}\n\nexport function closeForegroundPeriod() {\n if (foregroundPeriods.length === 0) {\n return\n }\n var currentForegroundPeriod = foregroundPeriods[foregroundPeriods.length - 1]\n var now = relativeNow()\n if (currentForegroundPeriod.end !== undefined) {\n return\n }\n currentForegroundPeriod.end = now\n}\n\nfunction trackFocus(onFocusChange) {\n return addEventListener(window, DOM_EVENT.FOCUS, function (event) {\n if (!event.isTrusted) {\n return\n }\n onFocusChange()\n })\n}\n\nfunction trackBlur(onBlurChange) {\n return addEventListener(window, DOM_EVENT.BLUR, function (event) {\n if (!event.isTrusted) {\n return\n }\n onBlurChange()\n })\n}\n\nfunction isInForegroundAt(startTime) {\n for (var i = foregroundPeriods.length - 1; i >= 0; i--) {\n var foregroundPeriod = foregroundPeriods[i]\n if (\n foregroundPeriod.end !== undefined &&\n startTime > foregroundPeriod.end\n ) {\n break\n }\n if (\n startTime > foregroundPeriod.start &&\n (foregroundPeriod.end === undefined || startTime < foregroundPeriod.end)\n ) {\n return true\n }\n }\n return false\n}\n\nfunction selectInForegroundPeriodsFor(eventStartTime, duration) {\n var eventEndTime = addDuration(eventStartTime, duration)\n var filteredForegroundPeriods = []\n\n var earliestIndex = Math.max(\n 0,\n foregroundPeriods.length - MAX_NUMBER_OF_SELECTABLE_FOREGROUND_PERIODS\n )\n for (var i = foregroundPeriods.length - 1; i >= earliestIndex; i--) {\n var foregroundPeriod = foregroundPeriods[i]\n if (\n foregroundPeriod.end !== undefined &&\n eventStartTime > foregroundPeriod.end\n ) {\n // event starts after the end of the current focus period\n // since the array is sorted, we can stop looking for foreground periods\n break\n }\n if (eventEndTime < foregroundPeriod.start) {\n // event ends before the start of the current focus period\n // continue to previous one\n continue\n }\n var startTime =\n eventStartTime > foregroundPeriod.start\n ? eventStartTime\n : foregroundPeriod.start\n var startDuration = elapsed(eventStartTime, startTime)\n var endTime =\n foregroundPeriod.end === undefined || eventEndTime < foregroundPeriod.end\n ? eventEndTime\n : foregroundPeriod.end\n var endDuration = elapsed(startTime, endTime)\n filteredForegroundPeriods.unshift({\n start: toServerDuration(startDuration),\n duration: toServerDuration(endDuration)\n })\n }\n return filteredForegroundPeriods\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.startInternalContext = startInternalContext;
|
|
7
|
+
/**
|
|
8
|
+
* Internal context keep returning v1 format
|
|
9
|
+
* to not break compatibility with logs data format
|
|
10
|
+
*/
|
|
11
|
+
function startInternalContext(applicationId, sessionManager, viewContexts, actionContexts, urlContexts) {
|
|
12
|
+
return {
|
|
13
|
+
get: function get(startTime) {
|
|
14
|
+
var viewContext = viewContexts.findView(startTime);
|
|
15
|
+
var urlContext = urlContexts.findUrl(startTime);
|
|
16
|
+
var session = sessionManager.findTrackedSession(startTime);
|
|
17
|
+
if (session && viewContext && urlContext) {
|
|
18
|
+
var actionId = actionContexts.findActionId(startTime);
|
|
19
|
+
var actionIds = actionContexts.findAllActionId(startTime);
|
|
20
|
+
return {
|
|
21
|
+
application: {
|
|
22
|
+
id: applicationId
|
|
23
|
+
},
|
|
24
|
+
session: {
|
|
25
|
+
id: session.id
|
|
26
|
+
},
|
|
27
|
+
userAction: actionId ? {
|
|
28
|
+
id: actionId,
|
|
29
|
+
ids: actionIds
|
|
30
|
+
} : undefined,
|
|
31
|
+
view: {
|
|
32
|
+
id: viewContext.id,
|
|
33
|
+
name: viewContext.name || urlContext.path,
|
|
34
|
+
url: urlContext.url,
|
|
35
|
+
referrer: urlContext.referrer,
|
|
36
|
+
host: urlContext.host,
|
|
37
|
+
path: urlContext.path,
|
|
38
|
+
pathGroup: urlContext.pathGroup,
|
|
39
|
+
pathname: urlContext.pathname,
|
|
40
|
+
urlQuery: urlContext.urlQuery
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=internalContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internalContext.js","names":["startInternalContext","applicationId","sessionManager","viewContexts","actionContexts","urlContexts","get","startTime","viewContext","findView","urlContext","findUrl","session","findTrackedSession","actionId","findActionId","actionIds","findAllActionId","application","id","userAction","ids","undefined","view","name","path","url","referrer","host","pathGroup","pathname","urlQuery"],"sources":["../../../../rum/src/domain/contexts/internalContext.js"],"sourcesContent":["/**\n * Internal context keep returning v1 format\n * to not break compatibility with logs data format\n */\nexport function startInternalContext(\n applicationId,\n sessionManager,\n viewContexts,\n actionContexts,\n urlContexts\n) {\n return {\n get: function (startTime) {\n var viewContext = viewContexts.findView(startTime)\n var urlContext = urlContexts.findUrl(startTime)\n var session = sessionManager.findTrackedSession(startTime)\n if (session && viewContext && urlContext) {\n var actionId = actionContexts.findActionId(startTime)\n var actionIds = actionContexts.findAllActionId(startTime)\n return {\n application: {\n id: applicationId\n },\n session: {\n id: session.id\n },\n userAction: actionId\n ? {\n id: actionId,\n ids: actionIds\n }\n : undefined,\n view: {\n id: viewContext.id,\n name: viewContext.name || urlContext.path,\n url: urlContext.url,\n referrer: urlContext.referrer,\n host: urlContext.host,\n path: urlContext.path,\n pathGroup: urlContext.pathGroup,\n pathname: urlContext.pathname,\n urlQuery: urlContext.urlQuery\n }\n }\n }\n }\n }\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACO,SAASA,oBAAoBA,CAClCC,aAAa,EACbC,cAAc,EACdC,YAAY,EACZC,cAAc,EACdC,WAAW,EACX;EACA,OAAO;IACLC,GAAG,EAAE,SAALA,GAAGA,CAAYC,SAAS,EAAE;MACxB,IAAIC,WAAW,GAAGL,YAAY,CAACM,QAAQ,CAACF,SAAS,CAAC;MAClD,IAAIG,UAAU,GAAGL,WAAW,CAACM,OAAO,CAACJ,SAAS,CAAC;MAC/C,IAAIK,OAAO,GAAGV,cAAc,CAACW,kBAAkB,CAACN,SAAS,CAAC;MAC1D,IAAIK,OAAO,IAAIJ,WAAW,IAAIE,UAAU,EAAE;QACxC,IAAII,QAAQ,GAAGV,cAAc,CAACW,YAAY,CAACR,SAAS,CAAC;QACrD,IAAIS,SAAS,GAAGZ,cAAc,CAACa,eAAe,CAACV,SAAS,CAAC;QACzD,OAAO;UACLW,WAAW,EAAE;YACXC,EAAE,EAAElB;UACN,CAAC;UACDW,OAAO,EAAE;YACPO,EAAE,EAAEP,OAAO,CAACO;UACd,CAAC;UACDC,UAAU,EAAEN,QAAQ,GAChB;YACEK,EAAE,EAAEL,QAAQ;YACZO,GAAG,EAAEL;UACP,CAAC,GACDM,SAAS;UACbC,IAAI,EAAE;YACJJ,EAAE,EAAEX,WAAW,CAACW,EAAE;YAClBK,IAAI,EAAEhB,WAAW,CAACgB,IAAI,IAAId,UAAU,CAACe,IAAI;YACzCC,GAAG,EAAEhB,UAAU,CAACgB,GAAG;YACnBC,QAAQ,EAAEjB,UAAU,CAACiB,QAAQ;YAC7BC,IAAI,EAAElB,UAAU,CAACkB,IAAI;YACrBH,IAAI,EAAEf,UAAU,CAACe,IAAI;YACrBI,SAAS,EAAEnB,UAAU,CAACmB,SAAS;YAC/BC,QAAQ,EAAEpB,UAAU,CAACoB,QAAQ;YAC7BC,QAAQ,EAAErB,UAAU,CAACqB;UACvB;QACF,CAAC;MACH;IACF;EACF,CAAC;AACH","ignoreList":[]}
|