@cloudcare/browser-core 3.2.17 → 3.2.22
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/cjs/browser/pageExitObservable.js +1 -2
- package/cjs/browser/pageExitObservable.js.map +1 -1
- package/cjs/configuration/configuration.js +1 -2
- package/cjs/configuration/configuration.js.map +1 -1
- package/cjs/configuration/remoteConfiguration.js +214 -0
- package/cjs/configuration/remoteConfiguration.js.map +1 -0
- package/cjs/configuration/transportConfiguration.js +1 -0
- package/cjs/configuration/transportConfiguration.js.map +1 -1
- package/cjs/dataMap.js +8 -7
- package/cjs/dataMap.js.map +1 -1
- package/cjs/helper/byteUtils.js +2 -4
- package/cjs/helper/byteUtils.js.map +1 -1
- package/cjs/helper/createEventRateLimiter.js.map +1 -1
- package/cjs/helper/deviceInfo.js +5 -6
- package/cjs/helper/deviceInfo.js.map +1 -1
- package/cjs/helper/display.js +4 -8
- package/cjs/helper/display.js.map +1 -1
- package/cjs/helper/encoder.js.map +1 -1
- package/cjs/helper/enums.js +11 -22
- package/cjs/helper/enums.js.map +1 -1
- package/cjs/helper/errorTools.js +2 -4
- package/cjs/helper/errorTools.js.map +1 -1
- package/cjs/helper/eventEmitter.js +1 -2
- package/cjs/helper/eventEmitter.js.map +1 -1
- package/cjs/helper/instrumentMethod.js.map +1 -1
- package/cjs/helper/lifeCycle.js +1 -2
- package/cjs/helper/lifeCycle.js.map +1 -1
- package/cjs/helper/limitModification.js +7 -7
- package/cjs/helper/limitModification.js.map +1 -1
- package/cjs/helper/mobileUtil.js +5 -10
- package/cjs/helper/mobileUtil.js.map +1 -1
- package/cjs/helper/observable.js +1 -2
- package/cjs/helper/observable.js.map +1 -1
- package/cjs/helper/requestIdleCallback.js +1 -2
- package/cjs/helper/requestIdleCallback.js.map +1 -1
- package/cjs/helper/sanitize.js +1 -1
- package/cjs/helper/sanitize.js.map +1 -1
- package/cjs/helper/serialisation/const.js +1 -2
- package/cjs/helper/serialisation/const.js.map +1 -1
- package/cjs/helper/serialisation/contextManager.js +15 -15
- package/cjs/helper/serialisation/contextManager.js.map +1 -1
- package/cjs/helper/serialisation/customerDataTracker.js +4 -8
- package/cjs/helper/serialisation/customerDataTracker.js.map +1 -1
- package/cjs/helper/serialisation/jsonStringify.js +1 -1
- package/cjs/helper/serialisation/jsonStringify.js.map +1 -1
- package/cjs/helper/serialisation/rowData.js +1 -1
- package/cjs/helper/serialisation/rowData.js.map +1 -1
- package/cjs/helper/taskQueue.js +1 -2
- package/cjs/helper/taskQueue.js.map +1 -1
- package/cjs/helper/tools.js +74 -145
- package/cjs/helper/tools.js.map +1 -1
- package/cjs/helper/valueHistory.js +1 -2
- package/cjs/helper/valueHistory.js.map +1 -1
- package/cjs/index.js +12 -0
- package/cjs/index.js.map +1 -1
- package/cjs/init.js +1 -1
- package/cjs/init.js.map +1 -1
- package/cjs/report/reportObservable.js +1 -2
- package/cjs/report/reportObservable.js.map +1 -1
- package/cjs/session/sessionConstants.js +3 -6
- package/cjs/session/sessionConstants.js.map +1 -1
- package/cjs/session/sessionInCookie.js.map +1 -1
- package/cjs/session/sessionManagement.js +3 -3
- package/cjs/session/sessionManagement.js.map +1 -1
- package/cjs/session/sessionState.js +6 -11
- package/cjs/session/sessionState.js.map +1 -1
- package/cjs/session/sessionStore.js +1 -2
- package/cjs/session/sessionStore.js.map +1 -1
- package/cjs/session/sessionStoreOperations.js +2 -4
- package/cjs/session/sessionStoreOperations.js.map +1 -1
- package/cjs/synthetics/syntheticsWorkerValues.js +3 -6
- package/cjs/synthetics/syntheticsWorkerValues.js.map +1 -1
- package/cjs/telemetry/telemetry.js +1 -2
- package/cjs/telemetry/telemetry.js.map +1 -1
- package/cjs/telemetry/types.js +2 -4
- package/cjs/telemetry/types.js.map +1 -1
- package/cjs/tracekit/computeStackTrace.js +1 -3
- package/cjs/tracekit/computeStackTrace.js.map +1 -1
- package/cjs/tracekit/tracekit.js.map +1 -1
- package/cjs/transport/batch.js +1 -3
- package/cjs/transport/batch.js.map +1 -1
- package/cjs/transport/eventBridge.js +29 -3
- package/cjs/transport/eventBridge.js.map +1 -1
- package/cjs/transport/flushController.js.map +1 -1
- package/cjs/transport/httpRequest.js.map +1 -1
- package/cjs/transport/index.js +12 -0
- package/cjs/transport/index.js.map +1 -1
- package/cjs/transport/sendWithRetryStrategy.js +5 -10
- package/cjs/transport/sendWithRetryStrategy.js.map +1 -1
- package/cjs/transport/startBatchWithReplica.js.map +1 -1
- package/esm/configuration/remoteConfiguration.js +205 -0
- package/esm/configuration/remoteConfiguration.js.map +1 -0
- package/esm/configuration/transportConfiguration.js +1 -1
- package/esm/configuration/transportConfiguration.js.map +1 -1
- package/esm/dataMap.js +5 -1
- package/esm/dataMap.js.map +1 -1
- package/esm/helper/createEventRateLimiter.js.map +1 -1
- package/esm/helper/deviceInfo.js +4 -4
- package/esm/helper/deviceInfo.js.map +1 -1
- package/esm/helper/encoder.js.map +1 -1
- package/esm/helper/eventEmitter.js.map +1 -1
- package/esm/helper/instrumentMethod.js.map +1 -1
- package/esm/helper/lifeCycle.js.map +1 -1
- package/esm/helper/limitModification.js +7 -7
- package/esm/helper/mobileUtil.js.map +1 -1
- package/esm/helper/observable.js.map +1 -1
- package/esm/helper/requestIdleCallback.js.map +1 -1
- package/esm/helper/sanitize.js +1 -1
- package/esm/helper/serialisation/contextManager.js +15 -15
- package/esm/helper/serialisation/contextManager.js.map +1 -1
- package/esm/helper/serialisation/customerDataTracker.js.map +1 -1
- package/esm/helper/serialisation/jsonStringify.js +1 -1
- package/esm/helper/serialisation/rowData.js +1 -1
- package/esm/helper/taskQueue.js.map +1 -1
- package/esm/helper/tools.js +10 -8
- package/esm/helper/tools.js.map +1 -1
- package/esm/helper/valueHistory.js.map +1 -1
- package/esm/index.js +1 -0
- package/esm/index.js.map +1 -1
- package/esm/init.js +1 -1
- package/esm/init.js.map +1 -1
- package/esm/session/sessionInCookie.js.map +1 -1
- package/esm/session/sessionManagement.js +2 -1
- package/esm/session/sessionManagement.js.map +1 -1
- package/esm/session/sessionState.js +5 -9
- package/esm/session/sessionState.js.map +1 -1
- package/esm/session/sessionStore.js.map +1 -1
- package/esm/telemetry/telemetry.js.map +1 -1
- package/esm/tracekit/computeStackTrace.js +1 -3
- package/esm/tracekit/computeStackTrace.js.map +1 -1
- package/esm/tracekit/tracekit.js.map +1 -1
- package/esm/transport/batch.js +0 -1
- package/esm/transport/batch.js.map +1 -1
- package/esm/transport/eventBridge.js +27 -3
- package/esm/transport/eventBridge.js.map +1 -1
- package/esm/transport/flushController.js.map +1 -1
- package/esm/transport/httpRequest.js.map +1 -1
- package/esm/transport/index.js +1 -1
- package/esm/transport/index.js.map +1 -1
- package/esm/transport/sendWithRetryStrategy.js.map +1 -1
- package/esm/transport/startBatchWithReplica.js.map +1 -1
- package/package.json +24 -24
- package/src/configuration/remoteConfiguration.js +213 -0
- package/src/configuration/transportConfiguration.js +1 -1
- package/src/dataMap.js +7 -0
- package/src/index.js +1 -0
- package/src/session/sessionManagement.js +2 -1
- package/src/session/sessionState.js +0 -3
- package/src/transport/eventBridge.js +39 -4
- package/src/transport/index.js +6 -1
- package/types/index.d.ts +43 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"valueHistory.js","names":["relativeNow","ONE_MINUTE","removeItem","addDuration","setInterval","clearInterval","END_OF_TIMES","Infinity","CLEAR_OLD_VALUES_INTERVAL","createValueHistory","params","expireDelay","maxEntries","entries","clearOldValuesInterval","clearOldValues","oldTimeThreshold","length","endTime","pop","add","value","startTime","entry","remove","close","unshift","find","options","returnInactive","_i","entries_1","closeActive","latestEntry","findAll","duration","undefined","filter","map","reset","stop"],"sources":["../../src/helper/valueHistory.js"],"sourcesContent":["import { relativeNow, ONE_MINUTE, removeItem, addDuration } from './tools'\nimport { setInterval, clearInterval } from './timer'\nvar END_OF_TIMES = Infinity\n\nexport var CLEAR_OLD_VALUES_INTERVAL = ONE_MINUTE\n\n/**\n *\n * @param {expireDelay,maxEntries } params\n * @returns\n */\nexport function createValueHistory(params) {\n var expireDelay = params.expireDelay\n var maxEntries = params.maxEntries\n\n var entries = []\n var clearOldValuesInterval = setInterval(function () {\n return clearOldValues()\n }, CLEAR_OLD_VALUES_INTERVAL)\n\n function clearOldValues() {\n var oldTimeThreshold = relativeNow() - expireDelay\n while (\n entries.length > 0 &&\n entries[entries.length - 1].endTime < oldTimeThreshold\n ) {\n entries.pop()\n }\n }\n\n function add(value, startTime) {\n var entry = {\n value: value,\n startTime: startTime,\n endTime: END_OF_TIMES,\n remove: function () {\n removeItem(entries, entry)\n },\n close: function (endTime) {\n entry.endTime = endTime\n }\n }\n\n if (maxEntries && entries.length >= maxEntries) {\n entries.pop()\n }\n\n entries.unshift(entry)\n\n return entry\n }\n\n function find(startTime, options) {\n if (typeof startTime === 'undefined') {\n startTime = END_OF_TIMES\n }\n if (typeof options === 'undefined') {\n options = { returnInactive: false }\n }\n for (var _i = 0, entries_1 = entries; _i < entries_1.length; _i++) {\n var entry = entries_1[_i]\n if (entry.startTime <= startTime) {\n if (options.returnInactive || startTime <= entry.endTime) {\n return entry.value\n }\n break\n }\n }\n }\n\n function closeActive(endTime) {\n var latestEntry = entries[0]\n if (latestEntry && latestEntry.endTime === END_OF_TIMES) {\n latestEntry.close(endTime)\n }\n }\n\n function findAll(startTime, duration) {\n if (startTime === undefined) {\n startTime = END_OF_TIMES\n }\n if (duration === undefined) {\n duration = 0\n }\n var endTime = addDuration(startTime, duration)\n return entries\n .filter(function (entry) {\n return entry.startTime <= endTime && startTime <= entry.endTime\n })\n .map(function (entry) {\n return entry.value\n })\n }\n\n /**\n * Remove all entries from this collection.\n */\n function reset() {\n entries = []\n }\n\n /**\n * Stop internal garbage collection of past entries.\n */\n function stop() {\n clearInterval(clearOldValuesInterval)\n }\n\n return {\n add: add,\n find: find,\n closeActive: closeActive,\n findAll: findAll,\n reset: reset,\n stop: stop\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,EAAEC,UAAU,EAAEC,UAAU,EAAEC,WAAW,QAAQ,SAAS;AAC1E,SAASC,WAAW,EAAEC,aAAa,QAAQ,SAAS;AACpD,IAAIC,YAAY,GAAGC,QAAQ;AAE3B,OAAO,IAAIC,yBAAyB,GAAGP,UAAU;;AAEjD;AACA;AACA;AACA;AACA;AACA,OAAO,SAASQ,kBAAkBA,CAACC,MAAM,EAAE;EACzC,IAAIC,WAAW,GAAGD,MAAM,CAACC,WAAW;EACpC,IAAIC,UAAU,GAAGF,MAAM,CAACE,UAAU;EAElC,IAAIC,OAAO,GAAG,EAAE;EAChB,IAAIC,sBAAsB,GAAGV,WAAW,CAAC,YAAY;IACnD,OAAOW,cAAc,CAAC,CAAC;EACzB,CAAC,EAAEP,yBAAyB,CAAC;EAE7B,SAASO,cAAcA,CAAA,EAAG;IACxB,IAAIC,gBAAgB,GAAGhB,WAAW,CAAC,CAAC,GAAGW,WAAW;IAClD,OACEE,OAAO,CAACI,MAAM,GAAG,CAAC,IAClBJ,OAAO,CAACA,OAAO,CAACI,MAAM,GAAG,CAAC,CAAC,CAACC,OAAO,GAAGF,gBAAgB,EACtD;MACAH,OAAO,CAACM,GAAG,CAAC,CAAC;IACf;EACF;EAEA,SAASC,GAAGA,CAACC,KAAK,EAAEC,SAAS,EAAE;IAC7B,IAAIC,KAAK,GAAG;MACVF,KAAK,EAAEA,KAAK;MACZC,SAAS,EAAEA,SAAS;MACpBJ,OAAO,EAAEZ,YAAY;MACrBkB,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"valueHistory.js","names":["relativeNow","ONE_MINUTE","removeItem","addDuration","setInterval","clearInterval","END_OF_TIMES","Infinity","CLEAR_OLD_VALUES_INTERVAL","createValueHistory","params","expireDelay","maxEntries","entries","clearOldValuesInterval","clearOldValues","oldTimeThreshold","length","endTime","pop","add","value","startTime","entry","remove","close","unshift","find","options","returnInactive","_i","entries_1","closeActive","latestEntry","findAll","duration","undefined","filter","map","reset","stop"],"sources":["../../src/helper/valueHistory.js"],"sourcesContent":["import { relativeNow, ONE_MINUTE, removeItem, addDuration } from './tools'\nimport { setInterval, clearInterval } from './timer'\nvar END_OF_TIMES = Infinity\n\nexport var CLEAR_OLD_VALUES_INTERVAL = ONE_MINUTE\n\n/**\n *\n * @param {expireDelay,maxEntries } params\n * @returns\n */\nexport function createValueHistory(params) {\n var expireDelay = params.expireDelay\n var maxEntries = params.maxEntries\n\n var entries = []\n var clearOldValuesInterval = setInterval(function () {\n return clearOldValues()\n }, CLEAR_OLD_VALUES_INTERVAL)\n\n function clearOldValues() {\n var oldTimeThreshold = relativeNow() - expireDelay\n while (\n entries.length > 0 &&\n entries[entries.length - 1].endTime < oldTimeThreshold\n ) {\n entries.pop()\n }\n }\n\n function add(value, startTime) {\n var entry = {\n value: value,\n startTime: startTime,\n endTime: END_OF_TIMES,\n remove: function () {\n removeItem(entries, entry)\n },\n close: function (endTime) {\n entry.endTime = endTime\n }\n }\n\n if (maxEntries && entries.length >= maxEntries) {\n entries.pop()\n }\n\n entries.unshift(entry)\n\n return entry\n }\n\n function find(startTime, options) {\n if (typeof startTime === 'undefined') {\n startTime = END_OF_TIMES\n }\n if (typeof options === 'undefined') {\n options = { returnInactive: false }\n }\n for (var _i = 0, entries_1 = entries; _i < entries_1.length; _i++) {\n var entry = entries_1[_i]\n if (entry.startTime <= startTime) {\n if (options.returnInactive || startTime <= entry.endTime) {\n return entry.value\n }\n break\n }\n }\n }\n\n function closeActive(endTime) {\n var latestEntry = entries[0]\n if (latestEntry && latestEntry.endTime === END_OF_TIMES) {\n latestEntry.close(endTime)\n }\n }\n\n function findAll(startTime, duration) {\n if (startTime === undefined) {\n startTime = END_OF_TIMES\n }\n if (duration === undefined) {\n duration = 0\n }\n var endTime = addDuration(startTime, duration)\n return entries\n .filter(function (entry) {\n return entry.startTime <= endTime && startTime <= entry.endTime\n })\n .map(function (entry) {\n return entry.value\n })\n }\n\n /**\n * Remove all entries from this collection.\n */\n function reset() {\n entries = []\n }\n\n /**\n * Stop internal garbage collection of past entries.\n */\n function stop() {\n clearInterval(clearOldValuesInterval)\n }\n\n return {\n add: add,\n find: find,\n closeActive: closeActive,\n findAll: findAll,\n reset: reset,\n stop: stop\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
package/esm/index.js
CHANGED
|
@@ -27,6 +27,7 @@ export * from './helper/taskQueue';
|
|
|
27
27
|
export * from './tracekit';
|
|
28
28
|
export * from './configuration/configuration';
|
|
29
29
|
export * from './configuration/transportConfiguration';
|
|
30
|
+
export * from './configuration/remoteConfiguration';
|
|
30
31
|
export * from './browser/cookie';
|
|
31
32
|
export * from './browser/fetchObservable';
|
|
32
33
|
export * from './browser/xhrObservable';
|
package/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["startSessionManager","stopSessionManager","SESSION_TIME_OUT_DELAY","SESSION_STORE_KEY","STORAGE_POLL_DELAY"],"sources":["../src/index.js"],"sourcesContent":["export * from './helper/boundedBuffer'\nexport * from './helper/valueHistory'\nexport * from './helper/deviceInfo'\nexport * from './helper/enums'\nexport * from './helper/instrumentMethod'\nexport * from './helper/errorTools'\nexport * from './helper/byteUtils'\nexport * from './error/trackRuntimeError'\nexport * from './console/consoleObservable'\nexport * from './report/reportObservable'\nexport * from './helper/display'\nexport * from './helper/monitor'\nexport * from './helper/sanitize'\nexport * from './helper/eventEmitter'\nexport * from './helper/lifeCycle'\nexport * from './helper/limitModification'\nexport * from './helper/createEventRateLimiter'\nexport * from './helper/observable'\nexport * from './helper/tools'\nexport * from './helper/urlPolyfill'\nexport * from './helper/mobileUtil'\nexport * from './helper/getZoneJsOriginalValue'\nexport * from './helper/timer'\nexport * from './helper/readBytesFromStream'\nexport * from './helper/requestIdleCallback'\nexport * from './helper/taskQueue'\nexport * from './tracekit'\nexport * from './configuration/configuration'\nexport * from './configuration/transportConfiguration'\nexport * from './browser/cookie'\nexport * from './browser/fetchObservable'\nexport * from './browser/xhrObservable'\nexport * from './browser/pageExitObservable'\nexport * from './browser/htmlDomUtils'\nexport * from './browser/addEventListener'\nexport * from './browser/runOnReadyState'\nexport * from './browser/scroll'\n\nexport * from './dataMap'\nexport * from './init'\nexport {\n startSessionManager,\n stopSessionManager\n} from './session/sessionManagement'\nexport {\n SESSION_TIME_OUT_DELAY,\n SESSION_STORE_KEY\n} from './session/sessionConstants'\nexport { STORAGE_POLL_DELAY } from './session/sessionStore'\nexport * from './transport'\nexport * from './synthetics/syntheticsWorkerValues'\n\nexport * from './helper/serialisation/contextManager'\nexport * from './helper/serialisation/const'\nexport * from './helper/serialisation/jsonStringify'\nexport * from './helper/serialisation/rowData'\nexport * from './helper/serialisation/storedContextManager'\nexport * from './helper/serialisation/customerDataTracker'\nexport * from './helper/encoder'\nexport * from './user'\nexport * from './helper/polyfills'\nexport * from './telemetry/telemetry'\nexport * from './helper/catchUserErrors'\nexport * from './helper/connectivity'\nexport * from './helper/displayAlreadyInitializedError'\n"],"mappings":"AAAA,cAAc,wBAAwB;AACtC,cAAc,uBAAuB;AACrC,cAAc,qBAAqB;AACnC,cAAc,gBAAgB;AAC9B,cAAc,2BAA2B;AACzC,cAAc,qBAAqB;AACnC,cAAc,oBAAoB;AAClC,cAAc,2BAA2B;AACzC,cAAc,6BAA6B;AAC3C,cAAc,2BAA2B;AACzC,cAAc,kBAAkB;AAChC,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,uBAAuB;AACrC,cAAc,oBAAoB;AAClC,cAAc,4BAA4B;AAC1C,cAAc,iCAAiC;AAC/C,cAAc,qBAAqB;AACnC,cAAc,gBAAgB;AAC9B,cAAc,sBAAsB;AACpC,cAAc,qBAAqB;AACnC,cAAc,iCAAiC;AAC/C,cAAc,gBAAgB;AAC9B,cAAc,8BAA8B;AAC5C,cAAc,8BAA8B;AAC5C,cAAc,oBAAoB;AAClC,cAAc,YAAY;AAC1B,cAAc,+BAA+B;AAC7C,cAAc,wCAAwC;AACtD,cAAc,kBAAkB;AAChC,cAAc,2BAA2B;AACzC,cAAc,yBAAyB;AACvC,cAAc,8BAA8B;AAC5C,cAAc,wBAAwB;AACtC,cAAc,4BAA4B;AAC1C,cAAc,2BAA2B;AACzC,cAAc,kBAAkB;AAEhC,cAAc,WAAW;AACzB,cAAc,QAAQ;AACtB,SACEA,mBAAmB,EACnBC,kBAAkB,QACb,6BAA6B;AACpC,SACEC,sBAAsB,EACtBC,iBAAiB,QACZ,4BAA4B;AACnC,SAASC,kBAAkB,QAAQ,wBAAwB;AAC3D,cAAc,aAAa;AAC3B,cAAc,qCAAqC;AAEnD,cAAc,uCAAuC;AACrD,cAAc,8BAA8B;AAC5C,cAAc,sCAAsC;AACpD,cAAc,gCAAgC;AAC9C,cAAc,6CAA6C;AAC3D,cAAc,4CAA4C;AAC1D,cAAc,kBAAkB;AAChC,cAAc,QAAQ;AACtB,cAAc,oBAAoB;AAClC,cAAc,uBAAuB;AACrC,cAAc,0BAA0B;AACxC,cAAc,uBAAuB;AACrC,cAAc,yCAAyC","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["startSessionManager","stopSessionManager","SESSION_TIME_OUT_DELAY","SESSION_STORE_KEY","STORAGE_POLL_DELAY"],"sources":["../src/index.js"],"sourcesContent":["export * from './helper/boundedBuffer'\nexport * from './helper/valueHistory'\nexport * from './helper/deviceInfo'\nexport * from './helper/enums'\nexport * from './helper/instrumentMethod'\nexport * from './helper/errorTools'\nexport * from './helper/byteUtils'\nexport * from './error/trackRuntimeError'\nexport * from './console/consoleObservable'\nexport * from './report/reportObservable'\nexport * from './helper/display'\nexport * from './helper/monitor'\nexport * from './helper/sanitize'\nexport * from './helper/eventEmitter'\nexport * from './helper/lifeCycle'\nexport * from './helper/limitModification'\nexport * from './helper/createEventRateLimiter'\nexport * from './helper/observable'\nexport * from './helper/tools'\nexport * from './helper/urlPolyfill'\nexport * from './helper/mobileUtil'\nexport * from './helper/getZoneJsOriginalValue'\nexport * from './helper/timer'\nexport * from './helper/readBytesFromStream'\nexport * from './helper/requestIdleCallback'\nexport * from './helper/taskQueue'\nexport * from './tracekit'\nexport * from './configuration/configuration'\nexport * from './configuration/transportConfiguration'\nexport * from './configuration/remoteConfiguration'\nexport * from './browser/cookie'\nexport * from './browser/fetchObservable'\nexport * from './browser/xhrObservable'\nexport * from './browser/pageExitObservable'\nexport * from './browser/htmlDomUtils'\nexport * from './browser/addEventListener'\nexport * from './browser/runOnReadyState'\nexport * from './browser/scroll'\n\nexport * from './dataMap'\nexport * from './init'\nexport {\n startSessionManager,\n stopSessionManager\n} from './session/sessionManagement'\nexport {\n SESSION_TIME_OUT_DELAY,\n SESSION_STORE_KEY\n} from './session/sessionConstants'\nexport { STORAGE_POLL_DELAY } from './session/sessionStore'\nexport * from './transport'\nexport * from './synthetics/syntheticsWorkerValues'\n\nexport * from './helper/serialisation/contextManager'\nexport * from './helper/serialisation/const'\nexport * from './helper/serialisation/jsonStringify'\nexport * from './helper/serialisation/rowData'\nexport * from './helper/serialisation/storedContextManager'\nexport * from './helper/serialisation/customerDataTracker'\nexport * from './helper/encoder'\nexport * from './user'\nexport * from './helper/polyfills'\nexport * from './telemetry/telemetry'\nexport * from './helper/catchUserErrors'\nexport * from './helper/connectivity'\nexport * from './helper/displayAlreadyInitializedError'\n"],"mappings":"AAAA,cAAc,wBAAwB;AACtC,cAAc,uBAAuB;AACrC,cAAc,qBAAqB;AACnC,cAAc,gBAAgB;AAC9B,cAAc,2BAA2B;AACzC,cAAc,qBAAqB;AACnC,cAAc,oBAAoB;AAClC,cAAc,2BAA2B;AACzC,cAAc,6BAA6B;AAC3C,cAAc,2BAA2B;AACzC,cAAc,kBAAkB;AAChC,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,uBAAuB;AACrC,cAAc,oBAAoB;AAClC,cAAc,4BAA4B;AAC1C,cAAc,iCAAiC;AAC/C,cAAc,qBAAqB;AACnC,cAAc,gBAAgB;AAC9B,cAAc,sBAAsB;AACpC,cAAc,qBAAqB;AACnC,cAAc,iCAAiC;AAC/C,cAAc,gBAAgB;AAC9B,cAAc,8BAA8B;AAC5C,cAAc,8BAA8B;AAC5C,cAAc,oBAAoB;AAClC,cAAc,YAAY;AAC1B,cAAc,+BAA+B;AAC7C,cAAc,wCAAwC;AACtD,cAAc,qCAAqC;AACnD,cAAc,kBAAkB;AAChC,cAAc,2BAA2B;AACzC,cAAc,yBAAyB;AACvC,cAAc,8BAA8B;AAC5C,cAAc,wBAAwB;AACtC,cAAc,4BAA4B;AAC1C,cAAc,2BAA2B;AACzC,cAAc,kBAAkB;AAEhC,cAAc,WAAW;AACzB,cAAc,QAAQ;AACtB,SACEA,mBAAmB,EACnBC,kBAAkB,QACb,6BAA6B;AACpC,SACEC,sBAAsB,EACtBC,iBAAiB,QACZ,4BAA4B;AACnC,SAASC,kBAAkB,QAAQ,wBAAwB;AAC3D,cAAc,aAAa;AAC3B,cAAc,qCAAqC;AAEnD,cAAc,uCAAuC;AACrD,cAAc,8BAA8B;AAC5C,cAAc,sCAAsC;AACpD,cAAc,gCAAgC;AAC9C,cAAc,6CAA6C;AAC3D,cAAc,4CAA4C;AAC1D,cAAc,kBAAkB;AAChC,cAAc,QAAQ;AACtB,cAAc,oBAAoB;AAClC,cAAc,uBAAuB;AACrC,cAAc,0BAA0B;AACxC,cAAc,uBAAuB;AACrC,cAAc,yCAAyC","ignoreList":[]}
|
package/esm/init.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
function _typeof(
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
2
|
import { each, assign } from './helper/tools';
|
|
3
3
|
import { setDebugMode } from './helper/monitor';
|
|
4
4
|
import { catchUserErrors } from './helper/catchUserErrors';
|
package/esm/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","names":["each","assign","setDebugMode","catchUserErrors","makePublicApi","stub","publicApi","onReady","callback","Object","defineProperty","get","enumerable","defineGlobal","global","name","api","existingGlobalVariable","q","fn","getGlobalObject","globalThis","_typeof","prototype","configurable","globalObject","_gc_temp_","self","window"],"sources":["../src/init.js"],"sourcesContent":["import { each, assign } from './helper/tools'\nimport { setDebugMode } from './helper/monitor'\nimport { catchUserErrors } from './helper/catchUserErrors'\n\nexport function makePublicApi(stub) {\n var publicApi = assign(\n {\n onReady: function (callback) {\n callback()\n }\n },\n stub\n )\n\n // Add an \"hidden\" property to set debug mode. We define it that way to hide it\n // as much as possible but of course it's not a real protection.\n Object.defineProperty(publicApi, '_setDebug', {\n get: function () {\n return setDebugMode\n },\n enumerable: false\n })\n\n return publicApi\n}\nexport function defineGlobal(global, name, api) {\n var existingGlobalVariable = global[name]\n global[name] = api\n if (existingGlobalVariable && existingGlobalVariable.q) {\n each(existingGlobalVariable.q, function (fn) {\n catchUserErrors(fn, 'onReady callback threw an error:')()\n })\n }\n}\n\nexport function getGlobalObject() {\n if (typeof globalThis === 'object') {\n return globalThis\n }\n Object.defineProperty(Object.prototype, '_gc_temp_', {\n get: function () {\n return this\n },\n configurable: true\n })\n // @ts-ignore\n var globalObject = _gc_temp_\n // @ts-ignore\n delete Object.prototype._gc_temp_\n if (typeof globalObject !== 'object') {\n // on safari _gc_temp_ is available on window but not globally\n // fallback on other browser globals check\n if (typeof self === 'object') {\n globalObject = self\n } else if (typeof window === 'object') {\n globalObject = window\n } else {\n globalObject = {}\n }\n }\n return globalObject\n}\n"],"mappings":";AAAA,SAASA,IAAI,EAAEC,MAAM,QAAQ,gBAAgB;AAC7C,SAASC,YAAY,QAAQ,kBAAkB;AAC/C,SAASC,eAAe,QAAQ,0BAA0B;AAE1D,OAAO,SAASC,aAAaA,CAACC,IAAI,EAAE;EAClC,IAAIC,SAAS,GAAGL,MAAM,CACpB;IACEM,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"init.js","names":["each","assign","setDebugMode","catchUserErrors","makePublicApi","stub","publicApi","onReady","callback","Object","defineProperty","get","enumerable","defineGlobal","global","name","api","existingGlobalVariable","q","fn","getGlobalObject","globalThis","_typeof","prototype","configurable","globalObject","_gc_temp_","self","window"],"sources":["../src/init.js"],"sourcesContent":["import { each, assign } from './helper/tools'\nimport { setDebugMode } from './helper/monitor'\nimport { catchUserErrors } from './helper/catchUserErrors'\n\nexport function makePublicApi(stub) {\n var publicApi = assign(\n {\n onReady: function (callback) {\n callback()\n }\n },\n stub\n )\n\n // Add an \"hidden\" property to set debug mode. We define it that way to hide it\n // as much as possible but of course it's not a real protection.\n Object.defineProperty(publicApi, '_setDebug', {\n get: function () {\n return setDebugMode\n },\n enumerable: false\n })\n\n return publicApi\n}\nexport function defineGlobal(global, name, api) {\n var existingGlobalVariable = global[name]\n global[name] = api\n if (existingGlobalVariable && existingGlobalVariable.q) {\n each(existingGlobalVariable.q, function (fn) {\n catchUserErrors(fn, 'onReady callback threw an error:')()\n })\n }\n}\n\nexport function getGlobalObject() {\n if (typeof globalThis === 'object') {\n return globalThis\n }\n Object.defineProperty(Object.prototype, '_gc_temp_', {\n get: function () {\n return this\n },\n configurable: true\n })\n // @ts-ignore\n var globalObject = _gc_temp_\n // @ts-ignore\n delete Object.prototype._gc_temp_\n if (typeof globalObject !== 'object') {\n // on safari _gc_temp_ is available on window but not globally\n // fallback on other browser globals check\n if (typeof self === 'object') {\n globalObject = self\n } else if (typeof window === 'object') {\n globalObject = window\n } else {\n globalObject = {}\n }\n }\n return globalObject\n}\n"],"mappings":";AAAA,SAASA,IAAI,EAAEC,MAAM,QAAQ,gBAAgB;AAC7C,SAASC,YAAY,QAAQ,kBAAkB;AAC/C,SAASC,eAAe,QAAQ,0BAA0B;AAE1D,OAAO,SAASC,aAAaA,CAACC,IAAI,EAAE;EAClC,IAAIC,SAAS,GAAGL,MAAM,CACpB;IACEM,OAAO,EAAE,SAATA,OAAOA,CAAYC,QAAQ,EAAE;MAC3BA,QAAQ,CAAC,CAAC;IACZ;EACF,CAAC,EACDH,IACF,CAAC;;EAED;EACA;EACAI,MAAM,CAACC,cAAc,CAACJ,SAAS,EAAE,WAAW,EAAE;IAC5CK,GAAG,EAAE,SAALA,GAAGA,CAAA,EAAc;MACf,OAAOT,YAAY;IACrB,CAAC;IACDU,UAAU,EAAE;EACd,CAAC,CAAC;EAEF,OAAON,SAAS;AAClB;AACA,OAAO,SAASO,YAAYA,CAACC,MAAM,EAAEC,IAAI,EAAEC,GAAG,EAAE;EAC9C,IAAIC,sBAAsB,GAAGH,MAAM,CAACC,IAAI,CAAC;EACzCD,MAAM,CAACC,IAAI,CAAC,GAAGC,GAAG;EAClB,IAAIC,sBAAsB,IAAIA,sBAAsB,CAACC,CAAC,EAAE;IACtDlB,IAAI,CAACiB,sBAAsB,CAACC,CAAC,EAAE,UAAUC,EAAE,EAAE;MAC3ChB,eAAe,CAACgB,EAAE,EAAE,kCAAkC,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC;EACJ;AACF;AAEA,OAAO,SAASC,eAAeA,CAAA,EAAG;EAChC,IAAI,QAAOC,UAAU,iCAAAC,OAAA,CAAVD,UAAU,OAAK,QAAQ,EAAE;IAClC,OAAOA,UAAU;EACnB;EACAZ,MAAM,CAACC,cAAc,CAACD,MAAM,CAACc,SAAS,EAAE,WAAW,EAAE;IACnDZ,GAAG,EAAE,SAALA,GAAGA,CAAA,EAAc;MACf,OAAO,IAAI;IACb,CAAC;IACDa,YAAY,EAAE;EAChB,CAAC,CAAC;EACF;EACA,IAAIC,YAAY,GAAGC,SAAS;EAC5B;EACA,OAAOjB,MAAM,CAACc,SAAS,CAACG,SAAS;EACjC,IAAIJ,OAAA,CAAOG,YAAY,MAAK,QAAQ,EAAE;IACpC;IACA;IACA,IAAI,QAAOE,IAAI,iCAAAL,OAAA,CAAJK,IAAI,OAAK,QAAQ,EAAE;MAC5BF,YAAY,GAAGE,IAAI;IACrB,CAAC,MAAM,IAAI,QAAOC,MAAM,iCAAAN,OAAA,CAANM,MAAM,OAAK,QAAQ,EAAE;MACrCH,YAAY,GAAGG,MAAM;IACvB,CAAC,MAAM;MACLH,YAAY,GAAG,CAAC,CAAC;IACnB;EACF;EACA,OAAOA,YAAY;AACrB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionInCookie.js","names":["isChromium","getCurrentSite","areCookiesAuthorized","getCookie","setCookie","SESSION_EXPIRATION_DELAY","SESSION_TIME_OUT_DELAY","SESSION_STORE_KEY","toSessionString","toSessionState","getExpiredSessionState","selectCookieStrategy","initConfiguration","cookieOptions","buildCookieOptions","type","undefined","initCookieStrategy","cookieStore","isLockEnabled","persistSession","persistSessionCookie","retrieveSession","retrieveSessionCookie","expireSession","expireSessionCookie","options","session","sessionString","secure","useSecureSessionCookie","usePartitionedCrossSiteSessionCookie","useCrossSiteSessionCookie","crossSite","partitioned","trackSessionAcrossSubdomains","domain"],"sources":["../../src/session/sessionInCookie.js"],"sourcesContent":["import { isChromium } from '../helper/tools'\nimport {\n getCurrentSite,\n areCookiesAuthorized,\n getCookie,\n setCookie\n} from '../browser/cookie'\nimport {\n SESSION_EXPIRATION_DELAY,\n SESSION_TIME_OUT_DELAY,\n SESSION_STORE_KEY\n} from './sessionConstants'\nimport {\n toSessionString,\n toSessionState,\n getExpiredSessionState\n} from './sessionState'\n\nexport function selectCookieStrategy(initConfiguration) {\n const cookieOptions = buildCookieOptions(initConfiguration)\n return areCookiesAuthorized(cookieOptions)\n ? { type: 'Cookie', cookieOptions }\n : undefined\n}\n\nexport function initCookieStrategy(cookieOptions) {\n const cookieStore = {\n /**\n * Lock strategy allows mitigating issues due to concurrent access to cookie.\n * This issue concerns only chromium browsers and enabling this on firefox increases cookie write failures.\n */\n isLockEnabled: isChromium(),\n persistSession: persistSessionCookie(cookieOptions),\n retrieveSession: retrieveSessionCookie(cookieOptions),\n expireSession: function () {\n return expireSessionCookie(cookieOptions)\n }\n }\n return cookieStore\n}\n\nfunction persistSessionCookie(options) {\n return function (session) {\n setCookie(\n SESSION_STORE_KEY,\n toSessionString(session),\n SESSION_EXPIRATION_DELAY,\n options\n )\n }\n}\n\nfunction expireSessionCookie(options) {\n setCookie(\n SESSION_STORE_KEY,\n toSessionString(getExpiredSessionState()),\n SESSION_TIME_OUT_DELAY,\n options\n )\n}\n\nfunction retrieveSessionCookie(options) {\n return function () {\n var sessionString = getCookie(SESSION_STORE_KEY, options)\n return toSessionState(sessionString)\n }\n}\n\nexport function buildCookieOptions(initConfiguration) {\n const cookieOptions = {}\n\n cookieOptions.secure =\n !!initConfiguration.useSecureSessionCookie ||\n !!initConfiguration.usePartitionedCrossSiteSessionCookie ||\n !!initConfiguration.useCrossSiteSessionCookie\n cookieOptions.crossSite =\n !!initConfiguration.usePartitionedCrossSiteSessionCookie ||\n !!initConfiguration.useCrossSiteSessionCookie\n cookieOptions.partitioned =\n !!initConfiguration.usePartitionedCrossSiteSessionCookie\n\n if (initConfiguration.trackSessionAcrossSubdomains) {\n cookieOptions.domain = getCurrentSite()\n }\n\n return cookieOptions\n}\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,iBAAiB;AAC5C,SACEC,cAAc,EACdC,oBAAoB,EACpBC,SAAS,EACTC,SAAS,QACJ,mBAAmB;AAC1B,SACEC,wBAAwB,EACxBC,sBAAsB,EACtBC,iBAAiB,QACZ,oBAAoB;AAC3B,SACEC,eAAe,EACfC,cAAc,EACdC,sBAAsB,QACjB,gBAAgB;AAEvB,OAAO,SAASC,oBAAoBA,CAACC,iBAAiB,EAAE;EACtD,IAAMC,aAAa,GAAGC,kBAAkB,CAACF,iBAAiB,CAAC;EAC3D,OAAOV,oBAAoB,CAACW,aAAa,CAAC,GACtC;IAAEE,IAAI,EAAE,QAAQ;IAAEF,aAAa,EAAbA;EAAc,CAAC,GACjCG,SAAS;AACf;AAEA,OAAO,SAASC,kBAAkBA,CAACJ,aAAa,EAAE;EAChD,IAAMK,WAAW,GAAG;IAClB;AACJ;AACA;AACA;IACIC,aAAa,EAAEnB,UAAU,CAAC,CAAC;IAC3BoB,cAAc,EAAEC,oBAAoB,CAACR,aAAa,CAAC;IACnDS,eAAe,EAAEC,qBAAqB,CAACV,aAAa,CAAC;IACrDW,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"sessionInCookie.js","names":["isChromium","getCurrentSite","areCookiesAuthorized","getCookie","setCookie","SESSION_EXPIRATION_DELAY","SESSION_TIME_OUT_DELAY","SESSION_STORE_KEY","toSessionString","toSessionState","getExpiredSessionState","selectCookieStrategy","initConfiguration","cookieOptions","buildCookieOptions","type","undefined","initCookieStrategy","cookieStore","isLockEnabled","persistSession","persistSessionCookie","retrieveSession","retrieveSessionCookie","expireSession","expireSessionCookie","options","session","sessionString","secure","useSecureSessionCookie","usePartitionedCrossSiteSessionCookie","useCrossSiteSessionCookie","crossSite","partitioned","trackSessionAcrossSubdomains","domain"],"sources":["../../src/session/sessionInCookie.js"],"sourcesContent":["import { isChromium } from '../helper/tools'\nimport {\n getCurrentSite,\n areCookiesAuthorized,\n getCookie,\n setCookie\n} from '../browser/cookie'\nimport {\n SESSION_EXPIRATION_DELAY,\n SESSION_TIME_OUT_DELAY,\n SESSION_STORE_KEY\n} from './sessionConstants'\nimport {\n toSessionString,\n toSessionState,\n getExpiredSessionState\n} from './sessionState'\n\nexport function selectCookieStrategy(initConfiguration) {\n const cookieOptions = buildCookieOptions(initConfiguration)\n return areCookiesAuthorized(cookieOptions)\n ? { type: 'Cookie', cookieOptions }\n : undefined\n}\n\nexport function initCookieStrategy(cookieOptions) {\n const cookieStore = {\n /**\n * Lock strategy allows mitigating issues due to concurrent access to cookie.\n * This issue concerns only chromium browsers and enabling this on firefox increases cookie write failures.\n */\n isLockEnabled: isChromium(),\n persistSession: persistSessionCookie(cookieOptions),\n retrieveSession: retrieveSessionCookie(cookieOptions),\n expireSession: function () {\n return expireSessionCookie(cookieOptions)\n }\n }\n return cookieStore\n}\n\nfunction persistSessionCookie(options) {\n return function (session) {\n setCookie(\n SESSION_STORE_KEY,\n toSessionString(session),\n SESSION_EXPIRATION_DELAY,\n options\n )\n }\n}\n\nfunction expireSessionCookie(options) {\n setCookie(\n SESSION_STORE_KEY,\n toSessionString(getExpiredSessionState()),\n SESSION_TIME_OUT_DELAY,\n options\n )\n}\n\nfunction retrieveSessionCookie(options) {\n return function () {\n var sessionString = getCookie(SESSION_STORE_KEY, options)\n return toSessionState(sessionString)\n }\n}\n\nexport function buildCookieOptions(initConfiguration) {\n const cookieOptions = {}\n\n cookieOptions.secure =\n !!initConfiguration.useSecureSessionCookie ||\n !!initConfiguration.usePartitionedCrossSiteSessionCookie ||\n !!initConfiguration.useCrossSiteSessionCookie\n cookieOptions.crossSite =\n !!initConfiguration.usePartitionedCrossSiteSessionCookie ||\n !!initConfiguration.useCrossSiteSessionCookie\n cookieOptions.partitioned =\n !!initConfiguration.usePartitionedCrossSiteSessionCookie\n\n if (initConfiguration.trackSessionAcrossSubdomains) {\n cookieOptions.domain = getCurrentSite()\n }\n\n return cookieOptions\n}\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,iBAAiB;AAC5C,SACEC,cAAc,EACdC,oBAAoB,EACpBC,SAAS,EACTC,SAAS,QACJ,mBAAmB;AAC1B,SACEC,wBAAwB,EACxBC,sBAAsB,EACtBC,iBAAiB,QACZ,oBAAoB;AAC3B,SACEC,eAAe,EACfC,cAAc,EACdC,sBAAsB,QACjB,gBAAgB;AAEvB,OAAO,SAASC,oBAAoBA,CAACC,iBAAiB,EAAE;EACtD,IAAMC,aAAa,GAAGC,kBAAkB,CAACF,iBAAiB,CAAC;EAC3D,OAAOV,oBAAoB,CAACW,aAAa,CAAC,GACtC;IAAEE,IAAI,EAAE,QAAQ;IAAEF,aAAa,EAAbA;EAAc,CAAC,GACjCG,SAAS;AACf;AAEA,OAAO,SAASC,kBAAkBA,CAACJ,aAAa,EAAE;EAChD,IAAMK,WAAW,GAAG;IAClB;AACJ;AACA;AACA;IACIC,aAAa,EAAEnB,UAAU,CAAC,CAAC;IAC3BoB,cAAc,EAAEC,oBAAoB,CAACR,aAAa,CAAC;IACnDS,eAAe,EAAEC,qBAAqB,CAACV,aAAa,CAAC;IACrDW,aAAa,EAAE,SAAfA,aAAaA,CAAA,EAAc;MACzB,OAAOC,mBAAmB,CAACZ,aAAa,CAAC;IAC3C;EACF,CAAC;EACD,OAAOK,WAAW;AACpB;AAEA,SAASG,oBAAoBA,CAACK,OAAO,EAAE;EACrC,OAAO,UAAUC,OAAO,EAAE;IACxBvB,SAAS,CACPG,iBAAiB,EACjBC,eAAe,CAACmB,OAAO,CAAC,EACxBtB,wBAAwB,EACxBqB,OACF,CAAC;EACH,CAAC;AACH;AAEA,SAASD,mBAAmBA,CAACC,OAAO,EAAE;EACpCtB,SAAS,CACPG,iBAAiB,EACjBC,eAAe,CAACE,sBAAsB,CAAC,CAAC,CAAC,EACzCJ,sBAAsB,EACtBoB,OACF,CAAC;AACH;AAEA,SAASH,qBAAqBA,CAACG,OAAO,EAAE;EACtC,OAAO,YAAY;IACjB,IAAIE,aAAa,GAAGzB,SAAS,CAACI,iBAAiB,EAAEmB,OAAO,CAAC;IACzD,OAAOjB,cAAc,CAACmB,aAAa,CAAC;EACtC,CAAC;AACH;AAEA,OAAO,SAASd,kBAAkBA,CAACF,iBAAiB,EAAE;EACpD,IAAMC,aAAa,GAAG,CAAC,CAAC;EAExBA,aAAa,CAACgB,MAAM,GAClB,CAAC,CAACjB,iBAAiB,CAACkB,sBAAsB,IAC1C,CAAC,CAAClB,iBAAiB,CAACmB,oCAAoC,IACxD,CAAC,CAACnB,iBAAiB,CAACoB,yBAAyB;EAC/CnB,aAAa,CAACoB,SAAS,GACrB,CAAC,CAACrB,iBAAiB,CAACmB,oCAAoC,IACxD,CAAC,CAACnB,iBAAiB,CAACoB,yBAAyB;EAC/CnB,aAAa,CAACqB,WAAW,GACvB,CAAC,CAACtB,iBAAiB,CAACmB,oCAAoC;EAE1D,IAAInB,iBAAiB,CAACuB,4BAA4B,EAAE;IAClDtB,aAAa,CAACuB,MAAM,GAAGnC,cAAc,CAAC,CAAC;EACzC;EAEA,OAAOY,aAAa;AACtB","ignoreList":[]}
|
|
@@ -46,7 +46,8 @@ export function startSessionManager(configuration, productKey, computeSessionSta
|
|
|
46
46
|
function buildSessionContext() {
|
|
47
47
|
return {
|
|
48
48
|
id: sessionStore.getSession().id,
|
|
49
|
-
trackingType: sessionStore.getSession()[productKey]
|
|
49
|
+
trackingType: sessionStore.getSession()[productKey],
|
|
50
|
+
hasError: !!sessionStore.getSession().hasError
|
|
50
51
|
};
|
|
51
52
|
}
|
|
52
53
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionManagement.js","names":["Observable","createValueHistory","relativeNow","clocksOrigin","ONE_MINUTE","DOM_EVENT","addEventListener","addEventListeners","clearInterval","setInterval","SESSION_TIME_OUT_DELAY","startSessionStore","VISIBILITY_CHECK_DELAY","SESSION_CONTEXT_TIMEOUT_DELAY","stopCallbacks","startSessionManager","configuration","productKey","computeSessionState","renewObservable","expireObservable","sessionStore","sessionStoreStrategyType","push","stop","sessionContextHistory","expireDelay","subscribe","add","buildSessionContext","notify","closeActive","expandOrRenewSession","relative","trackActivity","trackVisibility","expandSession","trackResume","restartSession","id","getSession","trackingType","findSession","startTime","options","find","sessionStateUpdateObservable","expire","updateSessionState","stopSessionManager","forEach","e","_addEventListeners","window","CLICK","TOUCH_START","KEY_DOWN","SCROLL","capture","passive","expandSessionWhenVisible","document","visibilityState","_addEventListener","VISIBILITY_CHANGE","visibilityCheckInterval","cb","_addEventListener2","RESUME"],"sources":["../../src/session/sessionManagement.js"],"sourcesContent":["import { Observable } from '../helper/observable'\nimport { createValueHistory } from '../helper/valueHistory'\nimport { relativeNow, clocksOrigin, ONE_MINUTE } from '../helper/tools'\nimport { DOM_EVENT } from '../helper/enums'\nimport {\n addEventListener,\n addEventListeners\n} from '../browser/addEventListener'\nimport { clearInterval, setInterval } from '../helper/timer'\nimport { SESSION_TIME_OUT_DELAY } from './sessionConstants'\nimport { startSessionStore } from './sessionStore'\n\nexport const VISIBILITY_CHECK_DELAY = ONE_MINUTE\nconst SESSION_CONTEXT_TIMEOUT_DELAY = SESSION_TIME_OUT_DELAY\nlet stopCallbacks = []\n\nexport function startSessionManager(\n configuration,\n productKey,\n computeSessionState\n) {\n const renewObservable = new Observable()\n const expireObservable = new Observable()\n\n const sessionStore = startSessionStore(\n configuration.sessionStoreStrategyType,\n productKey,\n computeSessionState\n )\n stopCallbacks.push(function () {\n return sessionStore.stop()\n })\n\n const sessionContextHistory = createValueHistory({\n expireDelay: SESSION_CONTEXT_TIMEOUT_DELAY\n })\n stopCallbacks.push(function () {\n return sessionContextHistory.stop()\n })\n\n sessionStore.renewObservable.subscribe(function () {\n sessionContextHistory.add(buildSessionContext(), relativeNow())\n renewObservable.notify()\n })\n sessionStore.expireObservable.subscribe(function () {\n expireObservable.notify()\n sessionContextHistory.closeActive(relativeNow())\n })\n\n // manager is started.\n sessionStore.expandOrRenewSession()\n sessionContextHistory.add(buildSessionContext(), clocksOrigin().relative)\n\n trackActivity(function () {\n sessionStore.expandOrRenewSession()\n })\n trackVisibility(function () {\n return sessionStore.expandSession()\n })\n trackResume(function () {\n sessionStore.restartSession()\n })\n\n function buildSessionContext() {\n return {\n id: sessionStore.getSession().id,\n trackingType: sessionStore.getSession()[productKey]\n }\n }\n\n return {\n findSession: function (startTime, options) {\n return sessionContextHistory.find(startTime, options)\n },\n renewObservable,\n expireObservable,\n sessionStateUpdateObservable: sessionStore.sessionStateUpdateObservable,\n expire: sessionStore.expire,\n updateSessionState: sessionStore.updateSessionState\n }\n}\n\nexport function stopSessionManager() {\n stopCallbacks.forEach(function (e) {\n e()\n })\n stopCallbacks = []\n}\n\nfunction trackActivity(expandOrRenewSession) {\n const { stop } = addEventListeners(\n window,\n [\n DOM_EVENT.CLICK,\n DOM_EVENT.TOUCH_START,\n DOM_EVENT.KEY_DOWN,\n DOM_EVENT.SCROLL\n ],\n expandOrRenewSession,\n { capture: true, passive: true }\n )\n stopCallbacks.push(stop)\n}\n\nfunction trackVisibility(expandSession) {\n const expandSessionWhenVisible = function () {\n if (document.visibilityState === 'visible') {\n expandSession()\n }\n }\n\n const { stop } = addEventListener(\n document,\n DOM_EVENT.VISIBILITY_CHANGE,\n expandSessionWhenVisible\n )\n stopCallbacks.push(stop)\n\n const visibilityCheckInterval = setInterval(\n expandSessionWhenVisible,\n VISIBILITY_CHECK_DELAY\n )\n stopCallbacks.push(function () {\n clearInterval(visibilityCheckInterval)\n })\n}\n\nfunction trackResume(cb) {\n const { stop } = addEventListener(window, DOM_EVENT.RESUME, cb, {\n capture: true\n })\n stopCallbacks.push(stop)\n}\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,sBAAsB;AACjD,SAASC,kBAAkB,QAAQ,wBAAwB;AAC3D,SAASC,WAAW,EAAEC,YAAY,EAAEC,UAAU,QAAQ,iBAAiB;AACvE,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SACEC,gBAAgB,EAChBC,iBAAiB,QACZ,6BAA6B;AACpC,SAASC,aAAa,EAAEC,WAAW,QAAQ,iBAAiB;AAC5D,SAASC,sBAAsB,QAAQ,oBAAoB;AAC3D,SAASC,iBAAiB,QAAQ,gBAAgB;AAElD,OAAO,IAAMC,sBAAsB,GAAGR,UAAU;AAChD,IAAMS,6BAA6B,GAAGH,sBAAsB;AAC5D,IAAII,aAAa,GAAG,EAAE;AAEtB,OAAO,SAASC,mBAAmBA,CACjCC,aAAa,EACbC,UAAU,EACVC,mBAAmB,EACnB;EACA,IAAMC,eAAe,GAAG,IAAInB,UAAU,CAAC,CAAC;EACxC,IAAMoB,gBAAgB,GAAG,IAAIpB,UAAU,CAAC,CAAC;EAEzC,IAAMqB,YAAY,GAAGV,iBAAiB,CACpCK,aAAa,CAACM,wBAAwB,EACtCL,UAAU,EACVC,mBACF,CAAC;EACDJ,aAAa,CAACS,IAAI,CAAC,YAAY;IAC7B,OAAOF,YAAY,CAACG,IAAI,CAAC,CAAC;EAC5B,CAAC,CAAC;EAEF,IAAMC,qBAAqB,GAAGxB,kBAAkB,CAAC;IAC/CyB,WAAW,EAAEb;EACf,CAAC,CAAC;EACFC,aAAa,CAACS,IAAI,CAAC,YAAY;IAC7B,OAAOE,qBAAqB,CAACD,IAAI,CAAC,CAAC;EACrC,CAAC,CAAC;EAEFH,YAAY,CAACF,eAAe,CAACQ,SAAS,CAAC,YAAY;IACjDF,qBAAqB,CAACG,GAAG,CAACC,mBAAmB,CAAC,CAAC,EAAE3B,WAAW,CAAC,CAAC,CAAC;IAC/DiB,eAAe,CAACW,MAAM,CAAC,CAAC;EAC1B,CAAC,CAAC;EACFT,YAAY,CAACD,gBAAgB,CAACO,SAAS,CAAC,YAAY;IAClDP,gBAAgB,CAACU,MAAM,CAAC,CAAC;IACzBL,qBAAqB,CAACM,WAAW,CAAC7B,WAAW,CAAC,CAAC,CAAC;EAClD,CAAC,CAAC;;EAEF;EACAmB,YAAY,CAACW,oBAAoB,CAAC,CAAC;EACnCP,qBAAqB,CAACG,GAAG,CAACC,mBAAmB,CAAC,CAAC,EAAE1B,YAAY,CAAC,CAAC,CAAC8B,QAAQ,CAAC;EAEzEC,aAAa,CAAC,YAAY;IACxBb,YAAY,CAACW,oBAAoB,CAAC,CAAC;EACrC,CAAC,CAAC;EACFG,eAAe,CAAC,YAAY;IAC1B,OAAOd,YAAY,CAACe,aAAa,CAAC,CAAC;EACrC,CAAC,CAAC;EACFC,WAAW,CAAC,YAAY;IACtBhB,YAAY,CAACiB,cAAc,CAAC,CAAC;EAC/B,CAAC,CAAC;EAEF,SAAST,mBAAmBA,CAAA,EAAG;IAC7B,OAAO;MACLU,EAAE,EAAElB,YAAY,CAACmB,UAAU,CAAC,CAAC,CAACD,EAAE;MAChCE,YAAY,EAAEpB,YAAY,CAACmB,UAAU,CAAC,CAAC,CAACvB,UAAU;
|
|
1
|
+
{"version":3,"file":"sessionManagement.js","names":["Observable","createValueHistory","relativeNow","clocksOrigin","ONE_MINUTE","DOM_EVENT","addEventListener","addEventListeners","clearInterval","setInterval","SESSION_TIME_OUT_DELAY","startSessionStore","VISIBILITY_CHECK_DELAY","SESSION_CONTEXT_TIMEOUT_DELAY","stopCallbacks","startSessionManager","configuration","productKey","computeSessionState","renewObservable","expireObservable","sessionStore","sessionStoreStrategyType","push","stop","sessionContextHistory","expireDelay","subscribe","add","buildSessionContext","notify","closeActive","expandOrRenewSession","relative","trackActivity","trackVisibility","expandSession","trackResume","restartSession","id","getSession","trackingType","hasError","findSession","startTime","options","find","sessionStateUpdateObservable","expire","updateSessionState","stopSessionManager","forEach","e","_addEventListeners","window","CLICK","TOUCH_START","KEY_DOWN","SCROLL","capture","passive","expandSessionWhenVisible","document","visibilityState","_addEventListener","VISIBILITY_CHANGE","visibilityCheckInterval","cb","_addEventListener2","RESUME"],"sources":["../../src/session/sessionManagement.js"],"sourcesContent":["import { Observable } from '../helper/observable'\nimport { createValueHistory } from '../helper/valueHistory'\nimport { relativeNow, clocksOrigin, ONE_MINUTE } from '../helper/tools'\nimport { DOM_EVENT } from '../helper/enums'\nimport {\n addEventListener,\n addEventListeners\n} from '../browser/addEventListener'\nimport { clearInterval, setInterval } from '../helper/timer'\nimport { SESSION_TIME_OUT_DELAY } from './sessionConstants'\nimport { startSessionStore } from './sessionStore'\n\nexport const VISIBILITY_CHECK_DELAY = ONE_MINUTE\nconst SESSION_CONTEXT_TIMEOUT_DELAY = SESSION_TIME_OUT_DELAY\nlet stopCallbacks = []\n\nexport function startSessionManager(\n configuration,\n productKey,\n computeSessionState\n) {\n const renewObservable = new Observable()\n const expireObservable = new Observable()\n\n const sessionStore = startSessionStore(\n configuration.sessionStoreStrategyType,\n productKey,\n computeSessionState\n )\n stopCallbacks.push(function () {\n return sessionStore.stop()\n })\n\n const sessionContextHistory = createValueHistory({\n expireDelay: SESSION_CONTEXT_TIMEOUT_DELAY\n })\n stopCallbacks.push(function () {\n return sessionContextHistory.stop()\n })\n\n sessionStore.renewObservable.subscribe(function () {\n sessionContextHistory.add(buildSessionContext(), relativeNow())\n renewObservable.notify()\n })\n sessionStore.expireObservable.subscribe(function () {\n expireObservable.notify()\n sessionContextHistory.closeActive(relativeNow())\n })\n\n // manager is started.\n sessionStore.expandOrRenewSession()\n sessionContextHistory.add(buildSessionContext(), clocksOrigin().relative)\n\n trackActivity(function () {\n sessionStore.expandOrRenewSession()\n })\n trackVisibility(function () {\n return sessionStore.expandSession()\n })\n trackResume(function () {\n sessionStore.restartSession()\n })\n\n function buildSessionContext() {\n return {\n id: sessionStore.getSession().id,\n trackingType: sessionStore.getSession()[productKey],\n hasError: !!sessionStore.getSession().hasError\n }\n }\n\n return {\n findSession: function (startTime, options) {\n return sessionContextHistory.find(startTime, options)\n },\n renewObservable,\n expireObservable,\n sessionStateUpdateObservable: sessionStore.sessionStateUpdateObservable,\n expire: sessionStore.expire,\n updateSessionState: sessionStore.updateSessionState\n }\n}\n\nexport function stopSessionManager() {\n stopCallbacks.forEach(function (e) {\n e()\n })\n stopCallbacks = []\n}\n\nfunction trackActivity(expandOrRenewSession) {\n const { stop } = addEventListeners(\n window,\n [\n DOM_EVENT.CLICK,\n DOM_EVENT.TOUCH_START,\n DOM_EVENT.KEY_DOWN,\n DOM_EVENT.SCROLL\n ],\n expandOrRenewSession,\n { capture: true, passive: true }\n )\n stopCallbacks.push(stop)\n}\n\nfunction trackVisibility(expandSession) {\n const expandSessionWhenVisible = function () {\n if (document.visibilityState === 'visible') {\n expandSession()\n }\n }\n\n const { stop } = addEventListener(\n document,\n DOM_EVENT.VISIBILITY_CHANGE,\n expandSessionWhenVisible\n )\n stopCallbacks.push(stop)\n\n const visibilityCheckInterval = setInterval(\n expandSessionWhenVisible,\n VISIBILITY_CHECK_DELAY\n )\n stopCallbacks.push(function () {\n clearInterval(visibilityCheckInterval)\n })\n}\n\nfunction trackResume(cb) {\n const { stop } = addEventListener(window, DOM_EVENT.RESUME, cb, {\n capture: true\n })\n stopCallbacks.push(stop)\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
function _slicedToArray(
|
|
1
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
2
2
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
|
-
function _unsupportedIterableToArray(
|
|
4
|
-
function _arrayLikeToArray(
|
|
5
|
-
function _iterableToArrayLimit(
|
|
6
|
-
function _arrayWithHoles(
|
|
3
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
4
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
5
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
6
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
7
7
|
import { isEmptyObject, objectEntries, dateNow, map } from '../helper/tools';
|
|
8
8
|
import { SESSION_EXPIRATION_DELAY, SESSION_TIME_OUT_DELAY } from './sessionConstants';
|
|
9
9
|
var SESSION_ENTRY_REGEXP = /^([a-zA-Z]+)=([a-z0-9-]+)$/;
|
|
@@ -23,11 +23,7 @@ export function isSessionStarted(session) {
|
|
|
23
23
|
export function isSessionInExpiredState(session) {
|
|
24
24
|
return session.isExpired !== undefined || !isActiveSession(session);
|
|
25
25
|
}
|
|
26
|
-
|
|
27
|
-
// An active session is a session in either `Tracked` or `NotTracked` state
|
|
28
26
|
function isActiveSession(sessionState) {
|
|
29
|
-
// created and expire can be undefined for versions which was not storing them
|
|
30
|
-
// these checks could be removed when older versions will not be available/live anymore
|
|
31
27
|
return (sessionState.created === undefined || dateNow() - Number(sessionState.created) < SESSION_TIME_OUT_DELAY) && (sessionState.expire === undefined || dateNow() < Number(sessionState.expire));
|
|
32
28
|
}
|
|
33
29
|
export function expandSessionState(session) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionState.js","names":["isEmptyObject","objectEntries","dateNow","map","SESSION_EXPIRATION_DELAY","SESSION_TIME_OUT_DELAY","SESSION_ENTRY_REGEXP","SESSION_ENTRY_SEPARATOR","EXPIRED","getExpiredSessionState","isExpired","isSessionInNotStartedState","session","isSessionStarted","isSessionInExpiredState","undefined","isActiveSession","sessionState","created","Number","expire","expandSessionState","String","toSessionString","item","join","toSessionState","sessionString","isValidSessionString","split","forEach","entry","matches","exec","_matches","_slicedToArray","key","value","indexOf","test"],"sources":["../../src/session/sessionState.js"],"sourcesContent":["import { isEmptyObject, objectEntries, dateNow, map } from '../helper/tools'\nimport {\n SESSION_EXPIRATION_DELAY,\n SESSION_TIME_OUT_DELAY\n} from './sessionConstants'\n\nconst SESSION_ENTRY_REGEXP = /^([a-zA-Z]+)=([a-z0-9-]+)$/\nconst SESSION_ENTRY_SEPARATOR = '&'\n\nexport const EXPIRED = '1'\n\nexport function getExpiredSessionState() {\n return {\n isExpired: EXPIRED\n }\n}\n\nexport function isSessionInNotStartedState(session) {\n return isEmptyObject(session)\n}\n\nexport function isSessionStarted(session) {\n return !isSessionInNotStartedState(session)\n}\n\nexport function isSessionInExpiredState(session) {\n return session.isExpired !== undefined || !isActiveSession(session)\n}\n\
|
|
1
|
+
{"version":3,"file":"sessionState.js","names":["isEmptyObject","objectEntries","dateNow","map","SESSION_EXPIRATION_DELAY","SESSION_TIME_OUT_DELAY","SESSION_ENTRY_REGEXP","SESSION_ENTRY_SEPARATOR","EXPIRED","getExpiredSessionState","isExpired","isSessionInNotStartedState","session","isSessionStarted","isSessionInExpiredState","undefined","isActiveSession","sessionState","created","Number","expire","expandSessionState","String","toSessionString","item","join","toSessionState","sessionString","isValidSessionString","split","forEach","entry","matches","exec","_matches","_slicedToArray","key","value","indexOf","test"],"sources":["../../src/session/sessionState.js"],"sourcesContent":["import { isEmptyObject, objectEntries, dateNow, map } from '../helper/tools'\nimport {\n SESSION_EXPIRATION_DELAY,\n SESSION_TIME_OUT_DELAY\n} from './sessionConstants'\n\nconst SESSION_ENTRY_REGEXP = /^([a-zA-Z]+)=([a-z0-9-]+)$/\nconst SESSION_ENTRY_SEPARATOR = '&'\n\nexport const EXPIRED = '1'\n\nexport function getExpiredSessionState() {\n return {\n isExpired: EXPIRED\n }\n}\n\nexport function isSessionInNotStartedState(session) {\n return isEmptyObject(session)\n}\n\nexport function isSessionStarted(session) {\n return !isSessionInNotStartedState(session)\n}\n\nexport function isSessionInExpiredState(session) {\n return session.isExpired !== undefined || !isActiveSession(session)\n}\n\nfunction isActiveSession(sessionState) {\n return (\n (sessionState.created === undefined ||\n dateNow() - Number(sessionState.created) < SESSION_TIME_OUT_DELAY) &&\n (sessionState.expire === undefined ||\n dateNow() < Number(sessionState.expire))\n )\n}\n\nexport function expandSessionState(session) {\n session.expire = String(dateNow() + SESSION_EXPIRATION_DELAY)\n}\n\nexport function toSessionString(session) {\n return map(objectEntries(session), function (item) {\n return item[0] + '=' + item[1]\n }).join(SESSION_ENTRY_SEPARATOR)\n}\n\nexport function toSessionState(sessionString) {\n const session = {}\n if (isValidSessionString(sessionString)) {\n sessionString.split(SESSION_ENTRY_SEPARATOR).forEach(function (entry) {\n const matches = SESSION_ENTRY_REGEXP.exec(entry)\n if (matches !== null) {\n const [, key, value] = matches\n session[key] = value\n }\n })\n }\n return session\n}\n\nfunction isValidSessionString(sessionString) {\n return (\n !!sessionString &&\n (sessionString.indexOf(SESSION_ENTRY_SEPARATOR) !== -1 ||\n SESSION_ENTRY_REGEXP.test(sessionString))\n )\n}\n"],"mappings":";;;;;;AAAA,SAASA,aAAa,EAAEC,aAAa,EAAEC,OAAO,EAAEC,GAAG,QAAQ,iBAAiB;AAC5E,SACEC,wBAAwB,EACxBC,sBAAsB,QACjB,oBAAoB;AAE3B,IAAMC,oBAAoB,GAAG,4BAA4B;AACzD,IAAMC,uBAAuB,GAAG,GAAG;AAEnC,OAAO,IAAMC,OAAO,GAAG,GAAG;AAE1B,OAAO,SAASC,sBAAsBA,CAAA,EAAG;EACvC,OAAO;IACLC,SAAS,EAAEF;EACb,CAAC;AACH;AAEA,OAAO,SAASG,0BAA0BA,CAACC,OAAO,EAAE;EAClD,OAAOZ,aAAa,CAACY,OAAO,CAAC;AAC/B;AAEA,OAAO,SAASC,gBAAgBA,CAACD,OAAO,EAAE;EACxC,OAAO,CAACD,0BAA0B,CAACC,OAAO,CAAC;AAC7C;AAEA,OAAO,SAASE,uBAAuBA,CAACF,OAAO,EAAE;EAC/C,OAAOA,OAAO,CAACF,SAAS,KAAKK,SAAS,IAAI,CAACC,eAAe,CAACJ,OAAO,CAAC;AACrE;AAEA,SAASI,eAAeA,CAACC,YAAY,EAAE;EACrC,OACE,CAACA,YAAY,CAACC,OAAO,KAAKH,SAAS,IACjCb,OAAO,CAAC,CAAC,GAAGiB,MAAM,CAACF,YAAY,CAACC,OAAO,CAAC,GAAGb,sBAAsB,MAClEY,YAAY,CAACG,MAAM,KAAKL,SAAS,IAChCb,OAAO,CAAC,CAAC,GAAGiB,MAAM,CAACF,YAAY,CAACG,MAAM,CAAC,CAAC;AAE9C;AAEA,OAAO,SAASC,kBAAkBA,CAACT,OAAO,EAAE;EAC1CA,OAAO,CAACQ,MAAM,GAAGE,MAAM,CAACpB,OAAO,CAAC,CAAC,GAAGE,wBAAwB,CAAC;AAC/D;AAEA,OAAO,SAASmB,eAAeA,CAACX,OAAO,EAAE;EACvC,OAAOT,GAAG,CAACF,aAAa,CAACW,OAAO,CAAC,EAAE,UAAUY,IAAI,EAAE;IACjD,OAAOA,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,GAAGA,IAAI,CAAC,CAAC,CAAC;EAChC,CAAC,CAAC,CAACC,IAAI,CAAClB,uBAAuB,CAAC;AAClC;AAEA,OAAO,SAASmB,cAAcA,CAACC,aAAa,EAAE;EAC5C,IAAMf,OAAO,GAAG,CAAC,CAAC;EAClB,IAAIgB,oBAAoB,CAACD,aAAa,CAAC,EAAE;IACvCA,aAAa,CAACE,KAAK,CAACtB,uBAAuB,CAAC,CAACuB,OAAO,CAAC,UAAUC,KAAK,EAAE;MACpE,IAAMC,OAAO,GAAG1B,oBAAoB,CAAC2B,IAAI,CAACF,KAAK,CAAC;MAChD,IAAIC,OAAO,KAAK,IAAI,EAAE;QACpB,IAAAE,QAAA,GAAAC,cAAA,CAAuBH,OAAO;UAArBI,GAAG,GAAAF,QAAA;UAAEG,KAAK,GAAAH,QAAA;QACnBtB,OAAO,CAACwB,GAAG,CAAC,GAAGC,KAAK;MACtB;IACF,CAAC,CAAC;EACJ;EACA,OAAOzB,OAAO;AAChB;AAEA,SAASgB,oBAAoBA,CAACD,aAAa,EAAE;EAC3C,OACE,CAAC,CAACA,aAAa,KACdA,aAAa,CAACW,OAAO,CAAC/B,uBAAuB,CAAC,KAAK,CAAC,CAAC,IACpDD,oBAAoB,CAACiC,IAAI,CAACZ,aAAa,CAAC,CAAC;AAE/C","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionStore.js","names":["clearInterval","setInterval","Observable","ONE_SECOND","dateNow","throttle","UUID","assign","selectCookieStrategy","initCookieStrategy","getExpiredSessionState","isSessionInExpiredState","isSessionInNotStartedState","isSessionStarted","initLocalStorageStrategy","selectLocalStorageStrategy","processSessionStoreOperations","STORAGE_POLL_DELAY","selectSessionStoreStrategyType","initConfiguration","sessionStoreStrategyType","allowFallbackToLocalStorage","startSessionStore","productKey","computeSessionState","renewObservable","expireObservable","sessionStateUpdateObservable","sessionStoreStrategy","type","cookieOptions","expireSession","watchSessionTimeoutId","watchSession","sessionCache","startSession","_throttle","process","sessionState","synchronizedSession","synchronizeSession","expandOrRenewSessionState","after","hasSessionInCache","renewSessionInCache","throttledExpandOrRenewSession","throttled","cancelExpandOrRenewSession","cancel","expandSession","undefined","isSessionInCacheOutdated","expireSessionInCache","notify","previousState","newState","_computeSessionState","trackingType","isTracked","isExpired","id","created","String","updateSessionState","partialSessionState","expandOrRenewSession","getSession","restartSession","expire","stop"],"sources":["../../src/session/sessionStore.js"],"sourcesContent":["import { clearInterval, setInterval } from '../helper/timer'\nimport { Observable } from '../helper/observable'\nimport { ONE_SECOND, dateNow, throttle, UUID, assign } from '../helper/tools'\nimport { selectCookieStrategy, initCookieStrategy } from './sessionInCookie'\nimport {\n getExpiredSessionState,\n isSessionInExpiredState,\n isSessionInNotStartedState,\n isSessionStarted\n} from './sessionState'\nimport {\n initLocalStorageStrategy,\n selectLocalStorageStrategy\n} from './sessionInLocalStorage'\nimport { processSessionStoreOperations } from './sessionStoreOperations'\n\n/**\n * Every second, the storage will be polled to check for any change that can occur\n * to the session state in another browser tab, or another window.\n * This value has been determined from our previous cookie-only implementation.\n */\nexport const STORAGE_POLL_DELAY = ONE_SECOND\n\n/**\n * Checks if cookies are available as the preferred storage\n * Else, checks if LocalStorage is allowed and available\n */\nexport function selectSessionStoreStrategyType(initConfiguration) {\n let sessionStoreStrategyType = selectCookieStrategy(initConfiguration)\n if (\n !sessionStoreStrategyType &&\n initConfiguration.allowFallbackToLocalStorage\n ) {\n sessionStoreStrategyType = selectLocalStorageStrategy()\n }\n return sessionStoreStrategyType\n}\n\n/**\n * Different session concepts:\n * - tracked, the session has an id and is updated along the user navigation\n * - not tracked, the session does not have an id but it is updated along the user navigation\n * - inactive, no session in store or session expired, waiting for a renew session\n */\nexport function startSessionStore(\n sessionStoreStrategyType,\n productKey,\n computeSessionState\n) {\n const renewObservable = new Observable()\n const expireObservable = new Observable()\n const sessionStateUpdateObservable = new Observable()\n const sessionStoreStrategy =\n sessionStoreStrategyType.type === 'Cookie'\n ? initCookieStrategy(sessionStoreStrategyType.cookieOptions)\n : initLocalStorageStrategy()\n const { expireSession } = sessionStoreStrategy\n\n const watchSessionTimeoutId = setInterval(watchSession, STORAGE_POLL_DELAY)\n let sessionCache\n\n startSession()\n\n const {\n throttled: throttledExpandOrRenewSession,\n cancel: cancelExpandOrRenewSession\n } = throttle(function () {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n if (isSessionInNotStartedState(sessionState)) {\n return\n }\n\n const synchronizedSession = synchronizeSession(sessionState)\n expandOrRenewSessionState(synchronizedSession)\n return synchronizedSession\n },\n after: function (sessionState) {\n if (isSessionStarted(sessionState) && !hasSessionInCache()) {\n renewSessionInCache(sessionState)\n }\n sessionCache = sessionState\n }\n },\n sessionStoreStrategy\n )\n }, STORAGE_POLL_DELAY)\n\n function expandSession() {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n return hasSessionInCache()\n ? synchronizeSession(sessionState)\n : undefined\n }\n },\n sessionStoreStrategy\n )\n }\n\n /**\n * allows two behaviors:\n * - if the session is active, synchronize the session cache without updating the session store\n * - if the session is not active, clear the session store and expire the session cache\n */\n function watchSession() {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n return isSessionInExpiredState(sessionState)\n ? getExpiredSessionState()\n : undefined\n },\n after: synchronizeSession\n },\n sessionStoreStrategy\n )\n }\n\n function synchronizeSession(sessionState) {\n if (isSessionInExpiredState(sessionState)) {\n sessionState = getExpiredSessionState()\n }\n if (hasSessionInCache()) {\n if (isSessionInCacheOutdated(sessionState)) {\n expireSessionInCache()\n } else {\n sessionStateUpdateObservable.notify({\n previousState: sessionCache,\n newState: sessionState\n })\n sessionCache = sessionState\n }\n }\n return sessionState\n }\n\n function startSession() {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n if (isSessionInNotStartedState(sessionState)) {\n return getExpiredSessionState()\n }\n },\n after: function (sessionState) {\n sessionCache = sessionState\n }\n },\n sessionStoreStrategy\n )\n }\n\n function expandOrRenewSessionState(sessionState) {\n if (isSessionInNotStartedState(sessionState)) {\n return false\n }\n\n const { trackingType, isTracked } = computeSessionState(\n sessionState[productKey]\n )\n sessionState[productKey] = trackingType\n delete sessionState.isExpired\n if (isTracked && !sessionState.id) {\n sessionState.id = UUID()\n sessionState.created = String(dateNow())\n }\n }\n\n function hasSessionInCache() {\n return sessionCache[productKey] !== undefined\n }\n\n function isSessionInCacheOutdated(sessionState) {\n return (\n sessionCache.id !== sessionState.id ||\n sessionCache[productKey] !== sessionState[productKey]\n )\n }\n\n function expireSessionInCache() {\n sessionCache = getExpiredSessionState()\n expireObservable.notify()\n }\n\n function renewSessionInCache(sessionState) {\n sessionCache = sessionState\n renewObservable.notify()\n }\n\n function updateSessionState(partialSessionState) {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n return assign({}, sessionState, partialSessionState)\n },\n after: synchronizeSession\n },\n sessionStoreStrategy\n )\n }\n\n return {\n expandOrRenewSession: throttledExpandOrRenewSession,\n expandSession,\n getSession: function () {\n return sessionCache || {}\n },\n renewObservable,\n expireObservable,\n sessionStateUpdateObservable,\n restartSession: startSession,\n expire: function () {\n cancelExpandOrRenewSession()\n expireSession()\n synchronizeSession(getExpiredSessionState())\n },\n stop: function () {\n clearInterval(watchSessionTimeoutId)\n },\n updateSessionState\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"sessionStore.js","names":["clearInterval","setInterval","Observable","ONE_SECOND","dateNow","throttle","UUID","assign","selectCookieStrategy","initCookieStrategy","getExpiredSessionState","isSessionInExpiredState","isSessionInNotStartedState","isSessionStarted","initLocalStorageStrategy","selectLocalStorageStrategy","processSessionStoreOperations","STORAGE_POLL_DELAY","selectSessionStoreStrategyType","initConfiguration","sessionStoreStrategyType","allowFallbackToLocalStorage","startSessionStore","productKey","computeSessionState","renewObservable","expireObservable","sessionStateUpdateObservable","sessionStoreStrategy","type","cookieOptions","expireSession","watchSessionTimeoutId","watchSession","sessionCache","startSession","_throttle","process","sessionState","synchronizedSession","synchronizeSession","expandOrRenewSessionState","after","hasSessionInCache","renewSessionInCache","throttledExpandOrRenewSession","throttled","cancelExpandOrRenewSession","cancel","expandSession","undefined","isSessionInCacheOutdated","expireSessionInCache","notify","previousState","newState","_computeSessionState","trackingType","isTracked","isExpired","id","created","String","updateSessionState","partialSessionState","expandOrRenewSession","getSession","restartSession","expire","stop"],"sources":["../../src/session/sessionStore.js"],"sourcesContent":["import { clearInterval, setInterval } from '../helper/timer'\nimport { Observable } from '../helper/observable'\nimport { ONE_SECOND, dateNow, throttle, UUID, assign } from '../helper/tools'\nimport { selectCookieStrategy, initCookieStrategy } from './sessionInCookie'\nimport {\n getExpiredSessionState,\n isSessionInExpiredState,\n isSessionInNotStartedState,\n isSessionStarted\n} from './sessionState'\nimport {\n initLocalStorageStrategy,\n selectLocalStorageStrategy\n} from './sessionInLocalStorage'\nimport { processSessionStoreOperations } from './sessionStoreOperations'\n\n/**\n * Every second, the storage will be polled to check for any change that can occur\n * to the session state in another browser tab, or another window.\n * This value has been determined from our previous cookie-only implementation.\n */\nexport const STORAGE_POLL_DELAY = ONE_SECOND\n\n/**\n * Checks if cookies are available as the preferred storage\n * Else, checks if LocalStorage is allowed and available\n */\nexport function selectSessionStoreStrategyType(initConfiguration) {\n let sessionStoreStrategyType = selectCookieStrategy(initConfiguration)\n if (\n !sessionStoreStrategyType &&\n initConfiguration.allowFallbackToLocalStorage\n ) {\n sessionStoreStrategyType = selectLocalStorageStrategy()\n }\n return sessionStoreStrategyType\n}\n\n/**\n * Different session concepts:\n * - tracked, the session has an id and is updated along the user navigation\n * - not tracked, the session does not have an id but it is updated along the user navigation\n * - inactive, no session in store or session expired, waiting for a renew session\n */\nexport function startSessionStore(\n sessionStoreStrategyType,\n productKey,\n computeSessionState\n) {\n const renewObservable = new Observable()\n const expireObservable = new Observable()\n const sessionStateUpdateObservable = new Observable()\n const sessionStoreStrategy =\n sessionStoreStrategyType.type === 'Cookie'\n ? initCookieStrategy(sessionStoreStrategyType.cookieOptions)\n : initLocalStorageStrategy()\n const { expireSession } = sessionStoreStrategy\n\n const watchSessionTimeoutId = setInterval(watchSession, STORAGE_POLL_DELAY)\n let sessionCache\n\n startSession()\n\n const {\n throttled: throttledExpandOrRenewSession,\n cancel: cancelExpandOrRenewSession\n } = throttle(function () {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n if (isSessionInNotStartedState(sessionState)) {\n return\n }\n\n const synchronizedSession = synchronizeSession(sessionState)\n expandOrRenewSessionState(synchronizedSession)\n return synchronizedSession\n },\n after: function (sessionState) {\n if (isSessionStarted(sessionState) && !hasSessionInCache()) {\n renewSessionInCache(sessionState)\n }\n sessionCache = sessionState\n }\n },\n sessionStoreStrategy\n )\n }, STORAGE_POLL_DELAY)\n\n function expandSession() {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n return hasSessionInCache()\n ? synchronizeSession(sessionState)\n : undefined\n }\n },\n sessionStoreStrategy\n )\n }\n\n /**\n * allows two behaviors:\n * - if the session is active, synchronize the session cache without updating the session store\n * - if the session is not active, clear the session store and expire the session cache\n */\n function watchSession() {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n return isSessionInExpiredState(sessionState)\n ? getExpiredSessionState()\n : undefined\n },\n after: synchronizeSession\n },\n sessionStoreStrategy\n )\n }\n\n function synchronizeSession(sessionState) {\n if (isSessionInExpiredState(sessionState)) {\n sessionState = getExpiredSessionState()\n }\n if (hasSessionInCache()) {\n if (isSessionInCacheOutdated(sessionState)) {\n expireSessionInCache()\n } else {\n sessionStateUpdateObservable.notify({\n previousState: sessionCache,\n newState: sessionState\n })\n sessionCache = sessionState\n }\n }\n return sessionState\n }\n\n function startSession() {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n if (isSessionInNotStartedState(sessionState)) {\n return getExpiredSessionState()\n }\n },\n after: function (sessionState) {\n sessionCache = sessionState\n }\n },\n sessionStoreStrategy\n )\n }\n\n function expandOrRenewSessionState(sessionState) {\n if (isSessionInNotStartedState(sessionState)) {\n return false\n }\n\n const { trackingType, isTracked } = computeSessionState(\n sessionState[productKey]\n )\n sessionState[productKey] = trackingType\n delete sessionState.isExpired\n if (isTracked && !sessionState.id) {\n sessionState.id = UUID()\n sessionState.created = String(dateNow())\n }\n }\n\n function hasSessionInCache() {\n return sessionCache[productKey] !== undefined\n }\n\n function isSessionInCacheOutdated(sessionState) {\n return (\n sessionCache.id !== sessionState.id ||\n sessionCache[productKey] !== sessionState[productKey]\n )\n }\n\n function expireSessionInCache() {\n sessionCache = getExpiredSessionState()\n expireObservable.notify()\n }\n\n function renewSessionInCache(sessionState) {\n sessionCache = sessionState\n renewObservable.notify()\n }\n\n function updateSessionState(partialSessionState) {\n processSessionStoreOperations(\n {\n process: function (sessionState) {\n return assign({}, sessionState, partialSessionState)\n },\n after: synchronizeSession\n },\n sessionStoreStrategy\n )\n }\n\n return {\n expandOrRenewSession: throttledExpandOrRenewSession,\n expandSession,\n getSession: function () {\n return sessionCache || {}\n },\n renewObservable,\n expireObservable,\n sessionStateUpdateObservable,\n restartSession: startSession,\n expire: function () {\n cancelExpandOrRenewSession()\n expireSession()\n synchronizeSession(getExpiredSessionState())\n },\n stop: function () {\n clearInterval(watchSessionTimeoutId)\n },\n updateSessionState\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.js","names":["ConsoleApiName","toStackTraceString","NO_ERROR_STACK_PRESENT_MESSAGE","createBoundedBuffer","computeStackTrace","Observable","getConnectivity","displayIfDebugEnabled","startMonitorErrorCollection","startsWith","assign","performDraw","timeStampNow","extend2Lev","jsonStringify","NonErrorPrefix","TelemetryStatusType","TelemetryType","ALLOWED_FRAME_URLS","TelemetryService","LOGS","RUM","preStartTelemetryBuffer","onRawTelemetryEventCollected","event","add","startTelemetry","telemetryService","configuration","contextProvider","observable","alreadySentEvents","Set","telemetryEnabled","telemetrySampleRate","runtimeEnvInfo","getRuntimeEnvInfo","_onRawTelemetryEventCollected","rawEvent","stringifiedEvent","size","maxTelemetryEventsPerPage","has","toTelemetryEvent","notify","addTelemetryError","type","date","service","version","__BUILD_ENV__SDK_VERSION__","source","telemetry","runtime_env","connectivity","undefined","setContextProvider","provider","enabled","is_local_file","window","location","protocol","is_worker","self","startFakeTelemetry","events","push","drainPreStartTelemetry","drain","resetTelemetry","addTelemetryDebug","message","context","log","status","debug","e","error","formatError","addTelemetryConfiguration","addTelemetryUsage","usage","Error","stackTrace","kind","name","stack","scrubCustomerFrames","UNCAUGHT","filter","frame","url","some","allowedFrameUrl"],"sources":["../../src/telemetry/telemetry.js"],"sourcesContent":["import { ConsoleApiName } from '../helper/display'\nimport {\n toStackTraceString,\n NO_ERROR_STACK_PRESENT_MESSAGE\n} from '../helper/errorTools'\nimport { createBoundedBuffer } from '../helper/boundedBuffer'\nimport { computeStackTrace } from '../tracekit'\nimport { Observable } from '../helper/observable'\nimport { getConnectivity } from '../helper/connectivity'\nimport {\n displayIfDebugEnabled,\n startMonitorErrorCollection\n} from '..//helper/monitor'\nimport {\n startsWith,\n assign,\n performDraw,\n timeStampNow,\n extend2Lev\n} from '../helper/tools'\nimport { jsonStringify } from '../helper/serialisation/jsonStringify'\nimport { NonErrorPrefix } from '../helper/enums'\nimport { TelemetryStatusType, TelemetryType } from './types'\n\nconst ALLOWED_FRAME_URLS = [\n 'https://static.guance.com',\n 'http://localhost',\n '<anonymous>'\n]\n\nexport var TelemetryService = {\n LOGS: 'browser-logs-sdk',\n RUM: 'browser-rum-sdk'\n}\n\n// eslint-disable-next-line local-rules/disallow-side-effects\nvar preStartTelemetryBuffer = createBoundedBuffer()\nvar onRawTelemetryEventCollected = function (event) {\n preStartTelemetryBuffer.add(function () {\n onRawTelemetryEventCollected(event)\n })\n}\n\nexport function startTelemetry(telemetryService, configuration) {\n let contextProvider\n var observable = new Observable()\n const alreadySentEvents = new Set()\n const telemetryEnabled =\n configuration.telemetryEnabled &&\n performDraw(configuration.telemetrySampleRate)\n const runtimeEnvInfo = getRuntimeEnvInfo()\n onRawTelemetryEventCollected = function (rawEvent) {\n const stringifiedEvent = jsonStringify(rawEvent)\n if (\n telemetryEnabled &&\n alreadySentEvents.size < configuration.maxTelemetryEventsPerPage &&\n !alreadySentEvents.has(stringifiedEvent)\n ) {\n var event = toTelemetryEvent(telemetryService, rawEvent, runtimeEnvInfo)\n observable.notify(event)\n alreadySentEvents.add(stringifiedEvent)\n }\n }\n startMonitorErrorCollection(addTelemetryError)\n\n function toTelemetryEvent(telemetryService, event, runtimeEnvInfo) {\n return extend2Lev(\n {\n type: 'telemetry',\n date: timeStampNow(),\n service: telemetryService,\n version: __BUILD_ENV__SDK_VERSION__,\n source: 'browser',\n telemetry: extend2Lev(event, {\n runtime_env: runtimeEnvInfo,\n connectivity: getConnectivity()\n })\n },\n contextProvider !== undefined ? contextProvider() : {}\n )\n }\n\n return {\n setContextProvider: function (provider) {\n contextProvider = provider\n },\n observable: observable,\n enabled: telemetryEnabled\n }\n}\nfunction getRuntimeEnvInfo() {\n return {\n is_local_file: window.location.protocol === 'file:',\n is_worker: 'WorkerGlobalScope' in self\n }\n}\nexport function startFakeTelemetry() {\n const events = []\n\n onRawTelemetryEventCollected = function (event) {\n events.push(event)\n }\n\n return events\n}\nexport function drainPreStartTelemetry() {\n preStartTelemetryBuffer.drain()\n}\nexport function resetTelemetry() {\n preStartTelemetryBuffer = createBoundedBuffer()\n onRawTelemetryEventCollected = function (event) {\n preStartTelemetryBuffer.add(function () {\n onRawTelemetryEventCollected(event)\n })\n }\n}\n\nexport function addTelemetryDebug(message, context) {\n displayIfDebugEnabled(message, context)\n onRawTelemetryEventCollected(\n assign(\n {\n type: TelemetryType.log,\n message: message,\n status: TelemetryStatusType.debug\n },\n context\n )\n )\n}\n\nexport function addTelemetryError(e, context) {\n onRawTelemetryEventCollected(\n assign(\n {\n type: TelemetryType.log,\n status: TelemetryStatusType.error\n },\n formatError(e),\n context\n )\n )\n}\n\nexport function addTelemetryConfiguration(configuration) {\n onRawTelemetryEventCollected({\n type: TelemetryType.configuration,\n configuration: configuration\n })\n}\n\nexport function addTelemetryUsage(usage) {\n onRawTelemetryEventCollected({\n type: TelemetryType.usage,\n usage: usage\n })\n}\n\nexport function formatError(e) {\n if (e instanceof Error) {\n var stackTrace = computeStackTrace(e)\n return {\n error: {\n kind: stackTrace.name,\n stack: toStackTraceString(scrubCustomerFrames(stackTrace))\n },\n message: stackTrace.message\n }\n }\n return {\n error: {\n stack: NO_ERROR_STACK_PRESENT_MESSAGE\n },\n message: NonErrorPrefix.UNCAUGHT + ' ' + jsonStringify(e)\n }\n}\n\nexport function scrubCustomerFrames(stackTrace) {\n stackTrace.stack = stackTrace.stack.filter(function (frame) {\n return (\n !frame.url ||\n ALLOWED_FRAME_URLS.some(function (allowedFrameUrl) {\n return startsWith(frame.url, allowedFrameUrl)\n })\n )\n })\n return stackTrace\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"telemetry.js","names":["ConsoleApiName","toStackTraceString","NO_ERROR_STACK_PRESENT_MESSAGE","createBoundedBuffer","computeStackTrace","Observable","getConnectivity","displayIfDebugEnabled","startMonitorErrorCollection","startsWith","assign","performDraw","timeStampNow","extend2Lev","jsonStringify","NonErrorPrefix","TelemetryStatusType","TelemetryType","ALLOWED_FRAME_URLS","TelemetryService","LOGS","RUM","preStartTelemetryBuffer","onRawTelemetryEventCollected","event","add","startTelemetry","telemetryService","configuration","contextProvider","observable","alreadySentEvents","Set","telemetryEnabled","telemetrySampleRate","runtimeEnvInfo","getRuntimeEnvInfo","rawEvent","stringifiedEvent","size","maxTelemetryEventsPerPage","has","toTelemetryEvent","notify","addTelemetryError","type","date","service","version","__BUILD_ENV__SDK_VERSION__","source","telemetry","runtime_env","connectivity","undefined","setContextProvider","provider","enabled","is_local_file","window","location","protocol","is_worker","self","startFakeTelemetry","events","push","drainPreStartTelemetry","drain","resetTelemetry","addTelemetryDebug","message","context","log","status","debug","e","error","formatError","addTelemetryConfiguration","addTelemetryUsage","usage","Error","stackTrace","kind","name","stack","scrubCustomerFrames","UNCAUGHT","filter","frame","url","some","allowedFrameUrl"],"sources":["../../src/telemetry/telemetry.js"],"sourcesContent":["import { ConsoleApiName } from '../helper/display'\nimport {\n toStackTraceString,\n NO_ERROR_STACK_PRESENT_MESSAGE\n} from '../helper/errorTools'\nimport { createBoundedBuffer } from '../helper/boundedBuffer'\nimport { computeStackTrace } from '../tracekit'\nimport { Observable } from '../helper/observable'\nimport { getConnectivity } from '../helper/connectivity'\nimport {\n displayIfDebugEnabled,\n startMonitorErrorCollection\n} from '..//helper/monitor'\nimport {\n startsWith,\n assign,\n performDraw,\n timeStampNow,\n extend2Lev\n} from '../helper/tools'\nimport { jsonStringify } from '../helper/serialisation/jsonStringify'\nimport { NonErrorPrefix } from '../helper/enums'\nimport { TelemetryStatusType, TelemetryType } from './types'\n\nconst ALLOWED_FRAME_URLS = [\n 'https://static.guance.com',\n 'http://localhost',\n '<anonymous>'\n]\n\nexport var TelemetryService = {\n LOGS: 'browser-logs-sdk',\n RUM: 'browser-rum-sdk'\n}\n\n// eslint-disable-next-line local-rules/disallow-side-effects\nvar preStartTelemetryBuffer = createBoundedBuffer()\nvar onRawTelemetryEventCollected = function (event) {\n preStartTelemetryBuffer.add(function () {\n onRawTelemetryEventCollected(event)\n })\n}\n\nexport function startTelemetry(telemetryService, configuration) {\n let contextProvider\n var observable = new Observable()\n const alreadySentEvents = new Set()\n const telemetryEnabled =\n configuration.telemetryEnabled &&\n performDraw(configuration.telemetrySampleRate)\n const runtimeEnvInfo = getRuntimeEnvInfo()\n onRawTelemetryEventCollected = function (rawEvent) {\n const stringifiedEvent = jsonStringify(rawEvent)\n if (\n telemetryEnabled &&\n alreadySentEvents.size < configuration.maxTelemetryEventsPerPage &&\n !alreadySentEvents.has(stringifiedEvent)\n ) {\n var event = toTelemetryEvent(telemetryService, rawEvent, runtimeEnvInfo)\n observable.notify(event)\n alreadySentEvents.add(stringifiedEvent)\n }\n }\n startMonitorErrorCollection(addTelemetryError)\n\n function toTelemetryEvent(telemetryService, event, runtimeEnvInfo) {\n return extend2Lev(\n {\n type: 'telemetry',\n date: timeStampNow(),\n service: telemetryService,\n version: __BUILD_ENV__SDK_VERSION__,\n source: 'browser',\n telemetry: extend2Lev(event, {\n runtime_env: runtimeEnvInfo,\n connectivity: getConnectivity()\n })\n },\n contextProvider !== undefined ? contextProvider() : {}\n )\n }\n\n return {\n setContextProvider: function (provider) {\n contextProvider = provider\n },\n observable: observable,\n enabled: telemetryEnabled\n }\n}\nfunction getRuntimeEnvInfo() {\n return {\n is_local_file: window.location.protocol === 'file:',\n is_worker: 'WorkerGlobalScope' in self\n }\n}\nexport function startFakeTelemetry() {\n const events = []\n\n onRawTelemetryEventCollected = function (event) {\n events.push(event)\n }\n\n return events\n}\nexport function drainPreStartTelemetry() {\n preStartTelemetryBuffer.drain()\n}\nexport function resetTelemetry() {\n preStartTelemetryBuffer = createBoundedBuffer()\n onRawTelemetryEventCollected = function (event) {\n preStartTelemetryBuffer.add(function () {\n onRawTelemetryEventCollected(event)\n })\n }\n}\n\nexport function addTelemetryDebug(message, context) {\n displayIfDebugEnabled(message, context)\n onRawTelemetryEventCollected(\n assign(\n {\n type: TelemetryType.log,\n message: message,\n status: TelemetryStatusType.debug\n },\n context\n )\n )\n}\n\nexport function addTelemetryError(e, context) {\n onRawTelemetryEventCollected(\n assign(\n {\n type: TelemetryType.log,\n status: TelemetryStatusType.error\n },\n formatError(e),\n context\n )\n )\n}\n\nexport function addTelemetryConfiguration(configuration) {\n onRawTelemetryEventCollected({\n type: TelemetryType.configuration,\n configuration: configuration\n })\n}\n\nexport function addTelemetryUsage(usage) {\n onRawTelemetryEventCollected({\n type: TelemetryType.usage,\n usage: usage\n })\n}\n\nexport function formatError(e) {\n if (e instanceof Error) {\n var stackTrace = computeStackTrace(e)\n return {\n error: {\n kind: stackTrace.name,\n stack: toStackTraceString(scrubCustomerFrames(stackTrace))\n },\n message: stackTrace.message\n }\n }\n return {\n error: {\n stack: NO_ERROR_STACK_PRESENT_MESSAGE\n },\n message: NonErrorPrefix.UNCAUGHT + ' ' + jsonStringify(e)\n }\n}\n\nexport function scrubCustomerFrames(stackTrace) {\n stackTrace.stack = stackTrace.stack.filter(function (frame) {\n return (\n !frame.url ||\n ALLOWED_FRAME_URLS.some(function (allowedFrameUrl) {\n return startsWith(frame.url, allowedFrameUrl)\n })\n )\n })\n return stackTrace\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
function _typeof(
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
2
|
import { each } from '../helper/tools';
|
|
3
3
|
var UNKNOWN_FUNCTION = '?';
|
|
4
4
|
|
|
@@ -47,7 +47,6 @@ function parseChromeLine(line) {
|
|
|
47
47
|
parts[3] = submatch[2]; // line
|
|
48
48
|
parts[4] = submatch[3]; // column
|
|
49
49
|
}
|
|
50
|
-
|
|
51
50
|
return {
|
|
52
51
|
args: isNative ? [parts[2]] : [],
|
|
53
52
|
column: parts[4] ? +parts[4] : undefined,
|
|
@@ -99,7 +98,6 @@ function parseGeckoLine(line) {
|
|
|
99
98
|
parts[4] = submatch[2];
|
|
100
99
|
parts[5] = undefined; // no column when eval
|
|
101
100
|
}
|
|
102
|
-
|
|
103
101
|
return {
|
|
104
102
|
args: parts[2] ? parts[2].split(',') : [],
|
|
105
103
|
column: parts[5] ? +parts[5] : undefined,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computeStackTrace.js","names":["each","UNKNOWN_FUNCTION","computeStackTrace","ex","stack","stackProperty","tryToGetString","exString","String","startsWith","slice","length","split","line","stackFrame","parseChromeLine","parseChromeAnonymousLine","parseWinLine","parseGeckoLine","func","push","message","name","fileUrl","filePosition","CHROME_LINE_RE","RegExp","CHROME_EVAL_RE","parts","exec","isNative","indexOf","isEval","submatch","args","column","undefined","url","CHROME_ANONYMOUS_FUNCTION_RE","WINJS_LINE_RE","GECKO_LINE_RE","GECKO_EVAL_RE","candidate","property","_typeof","value"],"sources":["../../src/tracekit/computeStackTrace.js"],"sourcesContent":["import { each } from '../helper/tools'\nvar UNKNOWN_FUNCTION = '?'\n\n/**\n * Computes a stack trace for an exception.\n */\nexport function computeStackTrace(ex) {\n var stack = []\n\n var stackProperty = tryToGetString(ex, 'stack')\n var exString = String(ex)\n if (stackProperty && stackProperty.startsWith(exString)) {\n stackProperty = stackProperty.slice(exString.length)\n }\n if (stackProperty) {\n each(stackProperty.split('\\n'), function (line) {\n var stackFrame =\n parseChromeLine(line) ||\n parseChromeAnonymousLine(line) ||\n parseWinLine(line) ||\n parseGeckoLine(line)\n if (stackFrame) {\n if (!stackFrame.func && stackFrame.line) {\n stackFrame.func = UNKNOWN_FUNCTION\n }\n stack.push(stackFrame)\n }\n })\n }\n\n return {\n message: tryToGetString(ex, 'message'),\n name: tryToGetString(ex, 'name'),\n stack: stack\n }\n}\nvar fileUrl =\n '((?:file|https?|blob|chrome-extension|electron|native|eval|webpack|<anonymous>|\\\\w+\\\\.|\\\\/).*?)'\nvar filePosition = '(?::(\\\\d+))'\nvar CHROME_LINE_RE = new RegExp(\n '^\\\\s*at (.*?) ?\\\\(' +\n fileUrl +\n filePosition +\n '?' +\n filePosition +\n '?\\\\)?\\\\s*$',\n 'i'\n)\nvar CHROME_EVAL_RE = new RegExp(\n '\\\\((\\\\S*)' + filePosition + filePosition + '\\\\)'\n)\n\nfunction parseChromeLine(line) {\n var parts = CHROME_LINE_RE.exec(line)\n\n if (!parts) {\n return\n }\n\n var isNative = parts[2] && parts[2].indexOf('native') === 0 // start of line\n var isEval = parts[2] && parts[2].indexOf('eval') === 0 // start of line\n var submatch = CHROME_EVAL_RE.exec(parts[2])\n\n if (isEval && submatch) {\n // throw out eval line/column and use top-most line/column number\n parts[2] = submatch[1] // url\n parts[3] = submatch[2] // line\n parts[4] = submatch[3] // column\n }\n\n return {\n args: isNative ? [parts[2]] : [],\n column: parts[4] ? +parts[4] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: parts[3] ? +parts[3] : undefined,\n url: !isNative ? parts[2] : undefined\n }\n}\n\nvar CHROME_ANONYMOUS_FUNCTION_RE = new RegExp(\n '^\\\\s*at ?' + fileUrl + filePosition + '?' + filePosition + '??\\\\s*$',\n 'i'\n)\n\nfunction parseChromeAnonymousLine(line) {\n var parts = CHROME_ANONYMOUS_FUNCTION_RE.exec(line)\n\n if (!parts) {\n return\n }\n\n return {\n args: [],\n column: parts[3] ? +parts[3] : undefined,\n func: UNKNOWN_FUNCTION,\n line: parts[2] ? +parts[2] : undefined,\n url: parts[1]\n }\n}\n\nvar WINJS_LINE_RE =\n /^\\s*at (?:((?:\\[object object\\])?.+) )?\\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\\d+)(?::(\\d+))?\\)?\\s*$/i\n\nfunction parseWinLine(line) {\n var parts = WINJS_LINE_RE.exec(line)\n if (!parts) {\n return\n }\n\n return {\n args: [],\n column: parts[4] ? +parts[4] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: +parts[3],\n url: parts[2]\n }\n}\n\nvar GECKO_LINE_RE =\n /^\\s*(.*?)(?:\\((.*?)\\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\\[native).*?|[^@]*bundle)(?::(\\d+))?(?::(\\d+))?\\s*$/i\nvar GECKO_EVAL_RE = /(\\S+) line (\\d+)(?: > eval line \\d+)* > eval/i\n\nfunction parseGeckoLine(line) {\n var parts = GECKO_LINE_RE.exec(line)\n if (!parts) {\n return\n }\n\n var isEval = parts[3] && parts[3].indexOf(' > eval') > -1\n var submatch = GECKO_EVAL_RE.exec(parts[3])\n\n if (isEval && submatch) {\n // throw out eval line/column and use top-most line number\n parts[3] = submatch[1]\n parts[4] = submatch[2]\n parts[5] = undefined // no column when eval\n }\n\n return {\n args: parts[2] ? parts[2].split(',') : [],\n column: parts[5] ? +parts[5] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: parts[4] ? +parts[4] : undefined,\n url: parts[3]\n }\n}\n\nfunction tryToGetString(candidate, property) {\n if (typeof candidate !== 'object' || !candidate || !(property in candidate)) {\n return undefined\n }\n var value = candidate[property]\n return typeof value === 'string' ? value : undefined\n}\n"],"mappings":";AAAA,SAASA,IAAI,QAAQ,iBAAiB;AACtC,IAAIC,gBAAgB,GAAG,GAAG;;AAE1B;AACA;AACA;AACA,OAAO,SAASC,iBAAiBA,CAACC,EAAE,EAAE;EACpC,IAAIC,KAAK,GAAG,EAAE;EAEd,IAAIC,aAAa,GAAGC,cAAc,CAACH,EAAE,EAAE,OAAO,CAAC;EAC/C,IAAII,QAAQ,GAAGC,MAAM,CAACL,EAAE,CAAC;EACzB,IAAIE,aAAa,IAAIA,aAAa,CAACI,UAAU,CAACF,QAAQ,CAAC,EAAE;IACvDF,aAAa,GAAGA,aAAa,CAACK,KAAK,CAACH,QAAQ,CAACI,MAAM,CAAC;EACtD;EACA,IAAIN,aAAa,EAAE;IACjBL,IAAI,CAACK,aAAa,CAACO,KAAK,CAAC,IAAI,CAAC,EAAE,UAAUC,IAAI,EAAE;MAC9C,IAAIC,UAAU,GACZC,eAAe,CAACF,IAAI,CAAC,IACrBG,wBAAwB,CAACH,IAAI,CAAC,IAC9BI,YAAY,CAACJ,IAAI,CAAC,IAClBK,cAAc,CAACL,IAAI,CAAC;MACtB,IAAIC,UAAU,EAAE;QACd,IAAI,CAACA,UAAU,CAACK,IAAI,IAAIL,UAAU,CAACD,IAAI,EAAE;UACvCC,UAAU,CAACK,IAAI,GAAGlB,gBAAgB;QACpC;QACAG,KAAK,CAACgB,IAAI,CAACN,UAAU,CAAC;MACxB;IACF,CAAC,CAAC;EACJ;EAEA,OAAO;IACLO,OAAO,EAAEf,cAAc,CAACH,EAAE,EAAE,SAAS,CAAC;IACtCmB,IAAI,EAAEhB,cAAc,CAACH,EAAE,EAAE,MAAM,CAAC;IAChCC,KAAK,EAAEA;EACT,CAAC;AACH;AACA,IAAImB,OAAO,GACT,iGAAiG;AACnG,IAAIC,YAAY,GAAG,aAAa;AAChC,IAAIC,cAAc,GAAG,IAAIC,MAAM,CAC7B,oBAAoB,GAClBH,OAAO,GACPC,YAAY,GACZ,GAAG,GACHA,YAAY,GACZ,YAAY,EACd,GACF,CAAC;AACD,IAAIG,cAAc,GAAG,IAAID,MAAM,CAC7B,WAAW,GAAGF,YAAY,GAAGA,YAAY,GAAG,KAC9C,CAAC;AAED,SAAST,eAAeA,CAACF,IAAI,EAAE;EAC7B,IAAIe,KAAK,GAAGH,cAAc,CAACI,IAAI,CAAChB,IAAI,CAAC;EAErC,IAAI,CAACe,KAAK,EAAE;IACV;EACF;EAEA,IAAIE,QAAQ,GAAGF,KAAK,CAAC,CAAC,CAAC,IAAIA,KAAK,CAAC,CAAC,CAAC,CAACG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAC;EAC5D,IAAIC,MAAM,GAAGJ,KAAK,CAAC,CAAC,CAAC,IAAIA,KAAK,CAAC,CAAC,CAAC,CAACG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAC;EACxD,IAAIE,QAAQ,GAAGN,cAAc,CAACE,IAAI,CAACD,KAAK,CAAC,CAAC,CAAC,CAAC;EAE5C,IAAII,MAAM,IAAIC,QAAQ,EAAE;IACtB;IACAL,KAAK,CAAC,CAAC,CAAC,GAAGK,QAAQ,CAAC,CAAC,CAAC,EAAC;IACvBL,KAAK,CAAC,CAAC,CAAC,GAAGK,QAAQ,CAAC,CAAC,CAAC,EAAC;IACvBL,KAAK,CAAC,CAAC,CAAC,GAAGK,QAAQ,CAAC,CAAC,CAAC,EAAC;EACzB
|
|
1
|
+
{"version":3,"file":"computeStackTrace.js","names":["each","UNKNOWN_FUNCTION","computeStackTrace","ex","stack","stackProperty","tryToGetString","exString","String","startsWith","slice","length","split","line","stackFrame","parseChromeLine","parseChromeAnonymousLine","parseWinLine","parseGeckoLine","func","push","message","name","fileUrl","filePosition","CHROME_LINE_RE","RegExp","CHROME_EVAL_RE","parts","exec","isNative","indexOf","isEval","submatch","args","column","undefined","url","CHROME_ANONYMOUS_FUNCTION_RE","WINJS_LINE_RE","GECKO_LINE_RE","GECKO_EVAL_RE","candidate","property","_typeof","value"],"sources":["../../src/tracekit/computeStackTrace.js"],"sourcesContent":["import { each } from '../helper/tools'\nvar UNKNOWN_FUNCTION = '?'\n\n/**\n * Computes a stack trace for an exception.\n */\nexport function computeStackTrace(ex) {\n var stack = []\n\n var stackProperty = tryToGetString(ex, 'stack')\n var exString = String(ex)\n if (stackProperty && stackProperty.startsWith(exString)) {\n stackProperty = stackProperty.slice(exString.length)\n }\n if (stackProperty) {\n each(stackProperty.split('\\n'), function (line) {\n var stackFrame =\n parseChromeLine(line) ||\n parseChromeAnonymousLine(line) ||\n parseWinLine(line) ||\n parseGeckoLine(line)\n if (stackFrame) {\n if (!stackFrame.func && stackFrame.line) {\n stackFrame.func = UNKNOWN_FUNCTION\n }\n stack.push(stackFrame)\n }\n })\n }\n\n return {\n message: tryToGetString(ex, 'message'),\n name: tryToGetString(ex, 'name'),\n stack: stack\n }\n}\nvar fileUrl =\n '((?:file|https?|blob|chrome-extension|electron|native|eval|webpack|<anonymous>|\\\\w+\\\\.|\\\\/).*?)'\nvar filePosition = '(?::(\\\\d+))'\nvar CHROME_LINE_RE = new RegExp(\n '^\\\\s*at (.*?) ?\\\\(' +\n fileUrl +\n filePosition +\n '?' +\n filePosition +\n '?\\\\)?\\\\s*$',\n 'i'\n)\nvar CHROME_EVAL_RE = new RegExp(\n '\\\\((\\\\S*)' + filePosition + filePosition + '\\\\)'\n)\n\nfunction parseChromeLine(line) {\n var parts = CHROME_LINE_RE.exec(line)\n\n if (!parts) {\n return\n }\n\n var isNative = parts[2] && parts[2].indexOf('native') === 0 // start of line\n var isEval = parts[2] && parts[2].indexOf('eval') === 0 // start of line\n var submatch = CHROME_EVAL_RE.exec(parts[2])\n\n if (isEval && submatch) {\n // throw out eval line/column and use top-most line/column number\n parts[2] = submatch[1] // url\n parts[3] = submatch[2] // line\n parts[4] = submatch[3] // column\n }\n\n return {\n args: isNative ? [parts[2]] : [],\n column: parts[4] ? +parts[4] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: parts[3] ? +parts[3] : undefined,\n url: !isNative ? parts[2] : undefined\n }\n}\n\nvar CHROME_ANONYMOUS_FUNCTION_RE = new RegExp(\n '^\\\\s*at ?' + fileUrl + filePosition + '?' + filePosition + '??\\\\s*$',\n 'i'\n)\n\nfunction parseChromeAnonymousLine(line) {\n var parts = CHROME_ANONYMOUS_FUNCTION_RE.exec(line)\n\n if (!parts) {\n return\n }\n\n return {\n args: [],\n column: parts[3] ? +parts[3] : undefined,\n func: UNKNOWN_FUNCTION,\n line: parts[2] ? +parts[2] : undefined,\n url: parts[1]\n }\n}\n\nvar WINJS_LINE_RE =\n /^\\s*at (?:((?:\\[object object\\])?.+) )?\\(?((?:file|ms-appx|https?|webpack|blob):.*?):(\\d+)(?::(\\d+))?\\)?\\s*$/i\n\nfunction parseWinLine(line) {\n var parts = WINJS_LINE_RE.exec(line)\n if (!parts) {\n return\n }\n\n return {\n args: [],\n column: parts[4] ? +parts[4] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: +parts[3],\n url: parts[2]\n }\n}\n\nvar GECKO_LINE_RE =\n /^\\s*(.*?)(?:\\((.*?)\\))?(?:^|@)((?:file|https?|blob|chrome|webpack|resource|capacitor|\\[native).*?|[^@]*bundle)(?::(\\d+))?(?::(\\d+))?\\s*$/i\nvar GECKO_EVAL_RE = /(\\S+) line (\\d+)(?: > eval line \\d+)* > eval/i\n\nfunction parseGeckoLine(line) {\n var parts = GECKO_LINE_RE.exec(line)\n if (!parts) {\n return\n }\n\n var isEval = parts[3] && parts[3].indexOf(' > eval') > -1\n var submatch = GECKO_EVAL_RE.exec(parts[3])\n\n if (isEval && submatch) {\n // throw out eval line/column and use top-most line number\n parts[3] = submatch[1]\n parts[4] = submatch[2]\n parts[5] = undefined // no column when eval\n }\n\n return {\n args: parts[2] ? parts[2].split(',') : [],\n column: parts[5] ? +parts[5] : undefined,\n func: parts[1] || UNKNOWN_FUNCTION,\n line: parts[4] ? +parts[4] : undefined,\n url: parts[3]\n }\n}\n\nfunction tryToGetString(candidate, property) {\n if (typeof candidate !== 'object' || !candidate || !(property in candidate)) {\n return undefined\n }\n var value = candidate[property]\n return typeof value === 'string' ? value : undefined\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracekit.js","names":["instrumentMethod","isNullUndefinedDefaultValue","computeStackTrace","ERROR_TYPES_RE","startUnhandledErrorCollection","callback","_instrumentOnError","instrumentOnError","_instrumentUnhandledRejection","instrumentUnhandledRejection","stop","window","params","parameters","messageObj","url","line","column","errorObj","stackTrace","Error","location","parse","tryToParseMessage","name","message","stack","toString","call","groups","exec","e","reason"],"sources":["../../src/tracekit/tracekit.js"],"sourcesContent":["import { instrumentMethod } from '../helper/instrumentMethod'\nimport { isNullUndefinedDefaultValue } from '../helper/tools'\nimport { computeStackTrace } from './computeStackTrace'\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error#Error_types\nvar ERROR_TYPES_RE =\n /^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?([\\s\\S]*)$/\n/**\n * Cross-browser collection of unhandled errors\n *\n * Supports:\n * - Firefox: full stack trace with line numbers, plus column number\n * on top frame; column number is not guaranteed\n * - Opera: full stack trace with line and column numbers\n * - Chrome: full stack trace with line and column numbers\n * - Safari: line and column number for the top frame only; some frames\n * may be missing, and column number is not guaranteed\n * - IE: line and column number for the top frame only; some frames\n * may be missing, and column number is not guaranteed\n *\n * In theory, TraceKit should work on all of the following versions:\n * - IE5.5+ (only 8.0 tested)\n * - Firefox 0.9+ (only 3.5+ tested)\n * - Opera 7+ (only 10.50 tested; versions 9 and earlier may require\n * Exceptions Have Stacktrace to be enabled in opera:config)\n * - Safari 3+ (only 4+ tested)\n * - Chrome 1+ (only 5+ tested)\n * - Konqueror 3.5+ (untested)\n *\n * Tries to catch all unhandled errors and report them to the\n * callback.\n *\n * Callbacks receive a StackTrace object as described in the\n * computeStackTrace docs.\n *\n * @memberof TraceKit\n * @namespace\n */\n\nexport function startUnhandledErrorCollection(callback) {\n var _instrumentOnError = instrumentOnError(callback)\n var _instrumentUnhandledRejection = instrumentUnhandledRejection(callback)\n return {\n stop: function () {\n _instrumentOnError.stop()\n _instrumentUnhandledRejection.stop()\n }\n }\n}\n\n/**\n * Install a global onerror handler\n */\nfunction instrumentOnError(callback) {\n return instrumentMethod(window, 'onerror', function (params) {\n var parameters = params.parameters\n var messageObj = parameters[0]\n var url = parameters[1]\n var line = parameters[2]\n var column = parameters[3]\n var errorObj = parameters[4]\n var stackTrace\n if (errorObj instanceof Error) {\n stackTrace = computeStackTrace(errorObj)\n } else {\n var location = {\n url: url,\n column: column,\n line: line\n }\n var parse = tryToParseMessage(messageObj)\n\n stackTrace = {\n name: parse.name,\n message: parse.message,\n stack: [location]\n }\n }\n callback(stackTrace, isNullUndefinedDefaultValue(errorObj, messageObj))\n })\n}\nfunction tryToParseMessage(messageObj) {\n let name\n let message\n if ({}.toString.call(messageObj) === '[object String]') {\n var groups = ERROR_TYPES_RE.exec(messageObj)\n if (groups) {\n name = groups[1]\n message = groups[2]\n }\n }\n return { name: name, message: message }\n}\n/**\n * Install a global onunhandledrejection handler\n */\nfunction instrumentUnhandledRejection(callback) {\n return instrumentMethod(window, 'onunhandledrejection', function (params) {\n var parameters = params.parameters\n var e = parameters[0]\n var reason = e.reason || 'Empty reason'\n var stack = computeStackTrace(reason)\n callback(stack, reason)\n })\n}\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,4BAA4B;AAC7D,SAASC,2BAA2B,QAAQ,iBAAiB;AAC7D,SAASC,iBAAiB,QAAQ,qBAAqB;;AAEvD;AACA,IAAIC,cAAc,GAChB,8GAA8G;AAChH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,SAASC,6BAA6BA,CAACC,QAAQ,EAAE;EACtD,IAAIC,kBAAkB,GAAGC,iBAAiB,CAACF,QAAQ,CAAC;EACpD,IAAIG,6BAA6B,GAAGC,4BAA4B,CAACJ,QAAQ,CAAC;EAC1E,OAAO;IACLK,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"tracekit.js","names":["instrumentMethod","isNullUndefinedDefaultValue","computeStackTrace","ERROR_TYPES_RE","startUnhandledErrorCollection","callback","_instrumentOnError","instrumentOnError","_instrumentUnhandledRejection","instrumentUnhandledRejection","stop","window","params","parameters","messageObj","url","line","column","errorObj","stackTrace","Error","location","parse","tryToParseMessage","name","message","stack","toString","call","groups","exec","e","reason"],"sources":["../../src/tracekit/tracekit.js"],"sourcesContent":["import { instrumentMethod } from '../helper/instrumentMethod'\nimport { isNullUndefinedDefaultValue } from '../helper/tools'\nimport { computeStackTrace } from './computeStackTrace'\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error#Error_types\nvar ERROR_TYPES_RE =\n /^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?([\\s\\S]*)$/\n/**\n * Cross-browser collection of unhandled errors\n *\n * Supports:\n * - Firefox: full stack trace with line numbers, plus column number\n * on top frame; column number is not guaranteed\n * - Opera: full stack trace with line and column numbers\n * - Chrome: full stack trace with line and column numbers\n * - Safari: line and column number for the top frame only; some frames\n * may be missing, and column number is not guaranteed\n * - IE: line and column number for the top frame only; some frames\n * may be missing, and column number is not guaranteed\n *\n * In theory, TraceKit should work on all of the following versions:\n * - IE5.5+ (only 8.0 tested)\n * - Firefox 0.9+ (only 3.5+ tested)\n * - Opera 7+ (only 10.50 tested; versions 9 and earlier may require\n * Exceptions Have Stacktrace to be enabled in opera:config)\n * - Safari 3+ (only 4+ tested)\n * - Chrome 1+ (only 5+ tested)\n * - Konqueror 3.5+ (untested)\n *\n * Tries to catch all unhandled errors and report them to the\n * callback.\n *\n * Callbacks receive a StackTrace object as described in the\n * computeStackTrace docs.\n *\n * @memberof TraceKit\n * @namespace\n */\n\nexport function startUnhandledErrorCollection(callback) {\n var _instrumentOnError = instrumentOnError(callback)\n var _instrumentUnhandledRejection = instrumentUnhandledRejection(callback)\n return {\n stop: function () {\n _instrumentOnError.stop()\n _instrumentUnhandledRejection.stop()\n }\n }\n}\n\n/**\n * Install a global onerror handler\n */\nfunction instrumentOnError(callback) {\n return instrumentMethod(window, 'onerror', function (params) {\n var parameters = params.parameters\n var messageObj = parameters[0]\n var url = parameters[1]\n var line = parameters[2]\n var column = parameters[3]\n var errorObj = parameters[4]\n var stackTrace\n if (errorObj instanceof Error) {\n stackTrace = computeStackTrace(errorObj)\n } else {\n var location = {\n url: url,\n column: column,\n line: line\n }\n var parse = tryToParseMessage(messageObj)\n\n stackTrace = {\n name: parse.name,\n message: parse.message,\n stack: [location]\n }\n }\n callback(stackTrace, isNullUndefinedDefaultValue(errorObj, messageObj))\n })\n}\nfunction tryToParseMessage(messageObj) {\n let name\n let message\n if ({}.toString.call(messageObj) === '[object String]') {\n var groups = ERROR_TYPES_RE.exec(messageObj)\n if (groups) {\n name = groups[1]\n message = groups[2]\n }\n }\n return { name: name, message: message }\n}\n/**\n * Install a global onunhandledrejection handler\n */\nfunction instrumentUnhandledRejection(callback) {\n return instrumentMethod(window, 'onunhandledrejection', function (params) {\n var parameters = params.parameters\n var e = parameters[0]\n var reason = e.reason || 'Empty reason'\n var stack = computeStackTrace(reason)\n callback(stack, reason)\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
package/esm/transport/batch.js
CHANGED