@cloudcare/browser-core 3.0.29 → 3.1.0
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/addEventListener.js +3 -8
- package/cjs/browser/addEventListener.js.map +1 -0
- package/cjs/browser/cookie.js +3 -14
- package/cjs/browser/cookie.js.map +1 -0
- package/cjs/browser/fetchObservable.js +4 -21
- package/cjs/browser/fetchObservable.js.map +1 -0
- package/cjs/browser/htmlDomUtils.js +3 -9
- package/cjs/browser/htmlDomUtils.js.map +1 -0
- package/cjs/browser/pageExitObservable.js +3 -9
- package/cjs/browser/pageExitObservable.js.map +1 -0
- package/cjs/browser/runOnReadyState.js +2 -4
- package/cjs/browser/runOnReadyState.js.map +1 -0
- package/cjs/browser/scroll.js +32 -0
- package/cjs/browser/scroll.js.map +1 -0
- package/cjs/browser/xhrObservable.js +2 -21
- package/cjs/browser/xhrObservable.js.map +1 -0
- package/cjs/configuration/configuration.js +9 -20
- package/cjs/configuration/configuration.js.map +1 -0
- package/cjs/configuration/transportConfiguration.js +6 -20
- package/cjs/configuration/transportConfiguration.js.map +1 -0
- package/cjs/console/consoleObservable.js +3 -21
- package/cjs/console/consoleObservable.js.map +1 -0
- package/cjs/dataMap.js +24 -10
- package/cjs/dataMap.js.map +1 -0
- package/cjs/error/trackRuntimeError.js +3 -7
- package/cjs/error/trackRuntimeError.js.map +1 -0
- package/cjs/helper/boundedBuffer.js +2 -6
- package/cjs/helper/boundedBuffer.js.map +1 -0
- package/cjs/helper/byteUtils.js +6 -16
- package/cjs/helper/byteUtils.js.map +1 -0
- package/cjs/helper/catchUserErrors.js +2 -4
- package/cjs/helper/catchUserErrors.js.map +1 -0
- package/cjs/helper/contextHistory.js +21 -37
- package/cjs/helper/contextHistory.js.map +1 -0
- package/cjs/helper/createEventRateLimiter.js +2 -10
- package/cjs/helper/createEventRateLimiter.js.map +1 -0
- package/cjs/helper/deviceInfo.js +10 -64
- package/cjs/helper/deviceInfo.js.map +1 -0
- package/cjs/helper/display.js +2 -5
- package/cjs/helper/display.js.map +1 -0
- package/cjs/helper/enums.js +8 -2
- package/cjs/helper/enums.js.map +1 -0
- package/cjs/helper/errorTools.js +32 -38
- package/cjs/helper/errorTools.js.map +1 -0
- package/cjs/helper/eventEmitter.js +2 -6
- package/cjs/helper/eventEmitter.js.map +1 -0
- package/cjs/helper/getZoneJsOriginalValue.js +2 -5
- package/cjs/helper/getZoneJsOriginalValue.js.map +1 -0
- package/cjs/helper/instrumentMethod.js +10 -22
- package/cjs/helper/instrumentMethod.js.map +1 -0
- package/cjs/helper/lifeCycle.js +2 -9
- package/cjs/helper/lifeCycle.js.map +1 -0
- package/cjs/helper/limitModification.js +4 -22
- package/cjs/helper/limitModification.js.map +1 -0
- package/cjs/helper/mobileUtil.js +2 -20
- package/cjs/helper/mobileUtil.js.map +1 -0
- package/cjs/helper/monitor.js +2 -11
- package/cjs/helper/monitor.js.map +1 -0
- package/cjs/helper/observable.js +2 -9
- package/cjs/helper/observable.js.map +1 -0
- package/cjs/helper/readBytesFromStream.js +4 -14
- package/cjs/helper/readBytesFromStream.js.map +1 -0
- package/cjs/helper/sanitize.js +38 -61
- package/cjs/helper/sanitize.js.map +1 -0
- package/cjs/helper/serialisation/contextManager.js +5 -15
- package/cjs/helper/serialisation/contextManager.js.map +1 -0
- package/cjs/helper/serialisation/heavyCustomerDataWarning.js +2 -7
- package/cjs/helper/serialisation/heavyCustomerDataWarning.js.map +1 -0
- package/cjs/helper/serialisation/jsonStringify.js +6 -12
- package/cjs/helper/serialisation/jsonStringify.js.map +1 -0
- package/cjs/helper/serialisation/rowData.js +3 -10
- package/cjs/helper/serialisation/rowData.js.map +1 -0
- package/cjs/helper/timer.js +2 -8
- package/cjs/helper/timer.js.map +1 -0
- package/cjs/helper/tools.js +57 -444
- package/cjs/helper/tools.js.map +1 -0
- package/cjs/helper/urlPolyfill.js +5 -18
- package/cjs/helper/urlPolyfill.js.map +1 -0
- package/cjs/index.js +24 -95
- package/cjs/index.js.map +1 -0
- package/cjs/init.js +14 -20
- package/cjs/init.js.map +1 -0
- package/cjs/report/reportObservable.js +5 -24
- package/cjs/report/reportObservable.js.map +1 -0
- package/cjs/session/sessionConstants.js +2 -3
- package/cjs/session/sessionConstants.js.map +1 -0
- package/cjs/session/sessionCookieStore.js +11 -46
- package/cjs/session/sessionCookieStore.js.map +1 -0
- package/cjs/session/sessionManagement.js +2 -19
- package/cjs/session/sessionManagement.js.map +1 -0
- package/cjs/session/sessionStore.js +3 -28
- package/cjs/session/sessionStore.js.map +1 -0
- package/cjs/synthetics/syntheticsWorkerValues.js +2 -6
- package/cjs/synthetics/syntheticsWorkerValues.js.map +1 -0
- package/cjs/synthetics/usr.js +2 -8
- package/cjs/synthetics/usr.js.map +1 -0
- package/cjs/telemetry/telemetry.js +125 -0
- package/cjs/telemetry/telemetry.js.map +1 -0
- package/cjs/telemetry/types.js +17 -0
- package/cjs/telemetry/types.js.map +1 -0
- package/cjs/tracekit/computeStackTrace.js +4 -34
- package/cjs/tracekit/computeStackTrace.js.map +1 -0
- package/cjs/tracekit/index.js +2 -3
- package/cjs/tracekit/index.js.map +1 -0
- package/cjs/tracekit/tracekit.js +3 -18
- package/cjs/tracekit/tracekit.js.map +1 -0
- package/cjs/transport/batch.js +5 -54
- package/cjs/transport/batch.js.map +1 -0
- package/cjs/transport/eventBridge.js +2 -7
- package/cjs/transport/eventBridge.js.map +1 -0
- package/cjs/transport/flushController.js +8 -21
- package/cjs/transport/flushController.js.map +1 -0
- package/cjs/transport/httpRequest.js +4 -18
- package/cjs/transport/httpRequest.js.map +1 -0
- package/cjs/transport/index.js +2 -6
- package/cjs/transport/index.js.map +1 -0
- package/cjs/transport/sendWithRetryStrategy.js +4 -23
- package/cjs/transport/sendWithRetryStrategy.js.map +1 -0
- package/cjs/transport/startBatchWithReplica.js +2 -7
- package/cjs/transport/startBatchWithReplica.js.map +1 -0
- package/cjs/user/index.js +2 -3
- package/cjs/user/index.js.map +1 -0
- package/cjs/user/user.js +3 -8
- package/cjs/user/user.js.map +1 -0
- package/cjs/worker.js +2 -2
- package/cjs/worker.js.map +1 -0
- package/esm/browser/addEventListener.js +3 -3
- package/esm/browser/addEventListener.js.map +1 -0
- package/esm/browser/cookie.js +3 -6
- package/esm/browser/cookie.js.map +1 -0
- package/esm/browser/fetchObservable.js +4 -14
- package/esm/browser/fetchObservable.js.map +1 -0
- package/esm/browser/htmlDomUtils.js +3 -2
- package/esm/browser/htmlDomUtils.js.map +1 -0
- package/esm/browser/pageExitObservable.js +3 -2
- package/esm/browser/pageExitObservable.js.map +1 -0
- package/esm/browser/runOnReadyState.js +2 -1
- package/esm/browser/runOnReadyState.js.map +1 -0
- package/esm/browser/scroll.js +25 -0
- package/esm/browser/scroll.js.map +1 -0
- package/esm/browser/xhrObservable.js +2 -14
- package/esm/browser/xhrObservable.js.map +1 -0
- package/esm/configuration/configuration.js +9 -9
- package/esm/configuration/configuration.js.map +1 -0
- package/esm/configuration/transportConfiguration.js +6 -17
- package/esm/configuration/transportConfiguration.js.map +1 -0
- package/esm/console/consoleObservable.js +3 -11
- package/esm/console/consoleObservable.js.map +1 -0
- package/esm/dataMap.js +24 -8
- package/esm/dataMap.js.map +1 -0
- package/esm/error/trackRuntimeError.js +4 -3
- package/esm/error/trackRuntimeError.js.map +1 -0
- package/esm/helper/boundedBuffer.js +2 -4
- package/esm/helper/boundedBuffer.js.map +1 -0
- package/esm/helper/byteUtils.js +6 -13
- package/esm/helper/byteUtils.js.map +1 -0
- package/esm/helper/catchUserErrors.js +2 -2
- package/esm/helper/catchUserErrors.js.map +1 -0
- package/esm/helper/contextHistory.js +21 -33
- package/esm/helper/contextHistory.js.map +1 -0
- package/esm/helper/createEventRateLimiter.js +2 -6
- package/esm/helper/createEventRateLimiter.js.map +1 -0
- package/esm/helper/deviceInfo.js +10 -62
- package/esm/helper/deviceInfo.js.map +1 -0
- package/esm/helper/display.js +2 -3
- package/esm/helper/display.js.map +1 -0
- package/esm/helper/enums.js +6 -1
- package/esm/helper/enums.js.map +1 -0
- package/esm/helper/errorTools.js +30 -25
- package/esm/helper/errorTools.js.map +1 -0
- package/esm/helper/eventEmitter.js +2 -5
- package/esm/helper/eventEmitter.js.map +1 -0
- package/esm/helper/getZoneJsOriginalValue.js +2 -4
- package/esm/helper/getZoneJsOriginalValue.js.map +1 -0
- package/esm/helper/instrumentMethod.js +10 -16
- package/esm/helper/instrumentMethod.js.map +1 -0
- package/esm/helper/lifeCycle.js +2 -5
- package/esm/helper/lifeCycle.js.map +1 -0
- package/esm/helper/limitModification.js +5 -20
- package/esm/helper/limitModification.js.map +1 -0
- package/esm/helper/mobileUtil.js +2 -16
- package/esm/helper/mobileUtil.js.map +1 -0
- package/esm/helper/monitor.js +2 -3
- package/esm/helper/monitor.js.map +1 -0
- package/esm/helper/observable.js +2 -7
- package/esm/helper/observable.js.map +1 -0
- package/esm/helper/readBytesFromStream.js +4 -12
- package/esm/helper/readBytesFromStream.js.map +1 -0
- package/esm/helper/sanitize.js +40 -57
- package/esm/helper/sanitize.js.map +1 -0
- package/esm/helper/serialisation/contextManager.js +5 -9
- package/esm/helper/serialisation/contextManager.js.map +1 -0
- package/esm/helper/serialisation/heavyCustomerDataWarning.js +5 -4
- package/esm/helper/serialisation/heavyCustomerDataWarning.js.map +1 -0
- package/esm/helper/serialisation/jsonStringify.js +7 -10
- package/esm/helper/serialisation/jsonStringify.js.map +1 -0
- package/esm/helper/serialisation/rowData.js +3 -4
- package/esm/helper/serialisation/rowData.js.map +1 -0
- package/esm/helper/timer.js +2 -1
- package/esm/helper/timer.js.map +1 -0
- package/esm/helper/tools.js +57 -256
- package/esm/helper/tools.js.map +1 -0
- package/esm/helper/urlPolyfill.js +5 -9
- package/esm/helper/urlPolyfill.js.map +1 -0
- package/esm/index.js +4 -1
- package/esm/index.js.map +1 -0
- package/esm/init.js +14 -14
- package/esm/init.js.map +1 -0
- package/esm/report/reportObservable.js +5 -16
- package/esm/report/reportObservable.js.map +1 -0
- package/esm/session/sessionConstants.js +2 -1
- package/esm/session/sessionConstants.js.map +1 -0
- package/esm/session/sessionCookieStore.js +11 -38
- package/esm/session/sessionCookieStore.js.map +1 -0
- package/esm/session/sessionManagement.js +2 -8
- package/esm/session/sessionManagement.js.map +1 -0
- package/esm/session/sessionStore.js +4 -22
- package/esm/session/sessionStore.js.map +1 -0
- package/esm/synthetics/syntheticsWorkerValues.js +2 -1
- package/esm/synthetics/syntheticsWorkerValues.js.map +1 -0
- package/esm/synthetics/usr.js +2 -3
- package/esm/synthetics/usr.js.map +1 -0
- package/esm/telemetry/telemetry.js +111 -0
- package/esm/telemetry/telemetry.js.map +1 -0
- package/esm/telemetry/types.js +9 -0
- package/esm/telemetry/types.js.map +1 -0
- package/esm/tracekit/computeStackTrace.js +4 -31
- package/esm/tracekit/computeStackTrace.js.map +1 -0
- package/esm/tracekit/index.js +2 -1
- package/esm/tracekit/index.js.map +1 -0
- package/esm/tracekit/tracekit.js +5 -14
- package/esm/tracekit/tracekit.js.map +1 -0
- package/esm/transport/batch.js +7 -45
- package/esm/transport/batch.js.map +1 -0
- package/esm/transport/eventBridge.js +2 -5
- package/esm/transport/eventBridge.js.map +1 -0
- package/esm/transport/flushController.js +11 -20
- package/esm/transport/flushController.js.map +1 -0
- package/esm/transport/httpRequest.js +4 -15
- package/esm/transport/httpRequest.js.map +1 -0
- package/esm/transport/index.js +2 -1
- package/esm/transport/index.js.map +1 -0
- package/esm/transport/sendWithRetryStrategy.js +4 -17
- package/esm/transport/sendWithRetryStrategy.js.map +1 -0
- package/esm/transport/startBatchWithReplica.js +2 -3
- package/esm/transport/startBatchWithReplica.js.map +1 -0
- package/esm/user/index.js.map +1 -0
- package/esm/user/user.js +4 -5
- package/esm/user/user.js.map +1 -0
- package/esm/worker.js.map +1 -0
- package/package.json +2 -2
- package/src/browser/scroll.js +25 -0
- package/src/configuration/configuration.js +16 -0
- package/src/configuration/transportConfiguration.js +2 -2
- package/src/dataMap.js +17 -3
- package/src/error/trackRuntimeError.js +2 -2
- package/src/helper/contextHistory.js +3 -3
- package/src/helper/enums.js +4 -0
- package/src/helper/errorTools.js +49 -19
- package/src/helper/tools.js +1 -0
- package/src/index.js +3 -0
- package/src/report/reportObservable.js +3 -3
- package/src/telemetry/telemetry.js +164 -0
- package/src/telemetry/types.js +9 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xhrObservable.js","names":["instrumentMethodAndCallOriginal","Observable","normalizeUrl","shallowClone","elapsed","relativeNow","clocksNow","timeStampNow","UUID","addEventListener","xhrObservable","xhrContexts","DATA_FLUX_REQUEST_ID_KEY","initXhrObservable","createXhrObservable","observable","openInstrumentMethod","XMLHttpRequest","prototype","before","openXhr","sendInstrumentMethod","sendXhr","call","abortInstrumentMethod","abortXhr","stop","method","url","requestUUID","state","String","context","startContext","startTime","startClocks","isAborted","xhr","hasBeenReported","stopInstrumentingOnReadyStateChange","readyState","DONE","onEnd","unsubscribeLoadEndListener","completeContext","duration","timeStamp","status","notify","clearRequestId"],"sources":["../../src/browser/xhrObservable.js"],"sourcesContent":["import { instrumentMethodAndCallOriginal } from '../helper/instrumentMethod'\nimport { Observable } from '../helper/observable'\nimport { normalizeUrl } from '../helper/urlPolyfill'\nimport {\n shallowClone,\n elapsed,\n relativeNow,\n clocksNow,\n timeStampNow,\n UUID\n} from '../helper/tools'\nimport { addEventListener } from '../browser/addEventListener'\nvar xhrObservable\nvar xhrContexts = {}\nvar DATA_FLUX_REQUEST_ID_KEY = '_DATAFLUX_REQUEST_UUID'\nexport function initXhrObservable() {\n if (!xhrObservable) {\n xhrObservable = createXhrObservable()\n }\n return xhrObservable\n}\n\nfunction createXhrObservable() {\n var observable = new Observable(function () {\n var openInstrumentMethod = instrumentMethodAndCallOriginal(\n XMLHttpRequest.prototype,\n 'open',\n {\n before: openXhr\n }\n )\n\n var sendInstrumentMethod = instrumentMethodAndCallOriginal(\n XMLHttpRequest.prototype,\n 'send',\n {\n before: function () {\n sendXhr.call(this, observable)\n }\n }\n )\n\n var abortInstrumentMethod = instrumentMethodAndCallOriginal(\n XMLHttpRequest.prototype,\n 'abort',\n {\n before: abortXhr\n }\n )\n\n return function () {\n openInstrumentMethod.stop()\n sendInstrumentMethod.stop()\n abortInstrumentMethod.stop()\n }\n })\n return observable\n}\n\nfunction openXhr(method, url) {\n var requestUUID = this[DATA_FLUX_REQUEST_ID_KEY] || UUID()\n this[DATA_FLUX_REQUEST_ID_KEY] = requestUUID\n xhrContexts[requestUUID] = {\n state: 'open',\n method: method,\n url: normalizeUrl(String(url))\n }\n}\n\nfunction sendXhr(observable) {\n var context = xhrContexts[this[DATA_FLUX_REQUEST_ID_KEY]]\n if (!context) {\n return\n }\n var startContext = context\n startContext.state = 'start'\n startContext.startTime = relativeNow()\n startContext.startClocks = clocksNow()\n startContext.isAborted = false\n startContext.xhr = this\n var hasBeenReported = false\n var stopInstrumentingOnReadyStateChange = instrumentMethodAndCallOriginal(\n this,\n 'onreadystatechange',\n {\n before: function () {\n if (this.readyState === XMLHttpRequest.DONE) {\n // Try to report the XHR as soon as possible, because the XHR may be mutated by the\n // application during a future event. For example, Angular is calling .abort() on\n // completed requests during a onreadystatechange event, so the status becomes '0'\n // before the request is collected.\n onEnd.call(this)\n }\n }\n }\n ).stop\n\n var onEnd = function () {\n unsubscribeLoadEndListener()\n stopInstrumentingOnReadyStateChange()\n if (hasBeenReported) {\n return\n }\n hasBeenReported = true\n var completeContext = context\n completeContext.state = 'complete'\n completeContext.duration = elapsed(\n startContext.startClocks.timeStamp,\n timeStampNow()\n )\n completeContext.status = this.status\n observable.notify(shallowClone(completeContext))\n clearRequestId.call(this)\n }\n var unsubscribeLoadEndListener = addEventListener(this, 'loadend', onEnd).stop\n observable.notify(startContext)\n}\nfunction clearRequestId() {\n delete xhrContexts[this[DATA_FLUX_REQUEST_ID_KEY]]\n delete this[DATA_FLUX_REQUEST_ID_KEY]\n}\nfunction abortXhr() {\n var context = xhrContexts[this[DATA_FLUX_REQUEST_ID_KEY]]\n if (context) {\n context.isAborted = true\n }\n}\n"],"mappings":"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"}
|
|
@@ -14,12 +14,14 @@ export function validateAndBuildConfiguration(initConfiguration) {
|
|
|
14
14
|
display.error('Sample Rate should be a number between 0 and 100');
|
|
15
15
|
return;
|
|
16
16
|
}
|
|
17
|
-
|
|
18
17
|
if (initConfiguration.sessionSampleRate !== undefined && !isPercentage(initConfiguration.sessionSampleRate)) {
|
|
19
18
|
display.error('Sample Rate should be a number between 0 and 100');
|
|
20
19
|
return;
|
|
21
20
|
}
|
|
22
|
-
|
|
21
|
+
if (initConfiguration.telemetrySampleRate !== undefined && !isPercentage(initConfiguration.telemetrySampleRate)) {
|
|
22
|
+
display.error('Telemetry Sample Rate should be a number between 0 and 100');
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
23
25
|
var sessionSampleRate = initConfiguration.sessionSampleRate || initConfiguration.sampleRate;
|
|
24
26
|
return assign({
|
|
25
27
|
beforeSend: initConfiguration.beforeSend && catchUserErrors(initConfiguration.beforeSend, 'beforeSend threw an error:'),
|
|
@@ -28,21 +30,21 @@ export function validateAndBuildConfiguration(initConfiguration) {
|
|
|
28
30
|
service: initConfiguration.service,
|
|
29
31
|
version: initConfiguration.version,
|
|
30
32
|
env: initConfiguration.env,
|
|
33
|
+
telemetrySampleRate: isNullUndefinedDefaultValue(initConfiguration.telemetrySampleRate, 100),
|
|
34
|
+
telemetryEnabled: isNullUndefinedDefaultValue(initConfiguration.telemetryEnabled, false),
|
|
31
35
|
silentMultipleInit: !!initConfiguration.silentMultipleInit,
|
|
32
|
-
|
|
33
36
|
/**
|
|
34
37
|
* beacon payload max queue size implementation is 64kb
|
|
35
38
|
* ensure that we leave room for logs, rum and potential other users
|
|
36
39
|
*/
|
|
37
40
|
batchBytesLimit: 16 * ONE_KIBI_BYTE,
|
|
38
41
|
eventRateLimiterThreshold: 3000,
|
|
39
|
-
|
|
42
|
+
maxTelemetryEventsPerPage: 15,
|
|
40
43
|
/**
|
|
41
44
|
* flush automatically, aim to be lower than ALB connection timeout
|
|
42
45
|
* to maximize connection reuse.
|
|
43
46
|
*/
|
|
44
47
|
flushTimeout: 30 * ONE_SECOND,
|
|
45
|
-
|
|
46
48
|
/**
|
|
47
49
|
* Logs intake limit
|
|
48
50
|
*/
|
|
@@ -55,14 +57,12 @@ export function buildCookieOptions(initConfiguration) {
|
|
|
55
57
|
var cookieOptions = {};
|
|
56
58
|
cookieOptions.secure = mustUseSecureCookie(initConfiguration);
|
|
57
59
|
cookieOptions.crossSite = !!initConfiguration.useCrossSiteSessionCookie;
|
|
58
|
-
|
|
59
60
|
if (initConfiguration.trackSessionAcrossSubdomains) {
|
|
60
61
|
cookieOptions.domain = getCurrentSite();
|
|
61
62
|
}
|
|
62
|
-
|
|
63
63
|
return cookieOptions;
|
|
64
64
|
}
|
|
65
|
-
|
|
66
65
|
function mustUseSecureCookie(initConfiguration) {
|
|
67
66
|
return !!initConfiguration.useSecureSessionCookie || !!initConfiguration.useCrossSiteSessionCookie;
|
|
68
|
-
}
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=configuration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configuration.js","names":["getCurrentSite","catchUserErrors","display","assign","isPercentage","ONE_SECOND","isNullUndefinedDefaultValue","ONE_KIBI_BYTE","computeTransportConfiguration","DefaultPrivacyLevel","ALLOW","MASK","MASK_USER_INPUT","validateAndBuildConfiguration","initConfiguration","sampleRate","undefined","error","sessionSampleRate","telemetrySampleRate","beforeSend","cookieOptions","buildCookieOptions","service","version","env","telemetryEnabled","silentMultipleInit","batchBytesLimit","eventRateLimiterThreshold","maxTelemetryEventsPerPage","flushTimeout","batchMessagesLimit","messageBytesLimit","resourceUrlLimit","secure","mustUseSecureCookie","crossSite","useCrossSiteSessionCookie","trackSessionAcrossSubdomains","domain","useSecureSessionCookie"],"sources":["../../src/configuration/configuration.js"],"sourcesContent":["import { getCurrentSite } from '../browser/cookie'\nimport { catchUserErrors } from '../helper/catchUserErrors'\nimport { display } from '../helper/display'\nimport {\n assign,\n isPercentage,\n ONE_SECOND,\n isNullUndefinedDefaultValue\n} from '../helper/tools'\nimport { ONE_KIBI_BYTE } from '../helper/byteUtils'\nimport { computeTransportConfiguration } from './transportConfiguration'\n\nexport var DefaultPrivacyLevel = {\n ALLOW: 'allow',\n MASK: 'mask',\n MASK_USER_INPUT: 'mask-user-input'\n}\nexport function validateAndBuildConfiguration(initConfiguration) {\n if (\n initConfiguration.sampleRate !== undefined &&\n !isPercentage(initConfiguration.sampleRate)\n ) {\n display.error('Sample Rate should be a number between 0 and 100')\n return\n }\n if (\n initConfiguration.sessionSampleRate !== undefined &&\n !isPercentage(initConfiguration.sessionSampleRate)\n ) {\n display.error('Sample Rate should be a number between 0 and 100')\n return\n }\n if (\n initConfiguration.telemetrySampleRate !== undefined &&\n !isPercentage(initConfiguration.telemetrySampleRate)\n ) {\n display.error('Telemetry Sample Rate should be a number between 0 and 100')\n return\n }\n var sessionSampleRate =\n initConfiguration.sessionSampleRate || initConfiguration.sampleRate\n return assign(\n {\n beforeSend:\n initConfiguration.beforeSend &&\n catchUserErrors(\n initConfiguration.beforeSend,\n 'beforeSend threw an error:'\n ),\n cookieOptions: buildCookieOptions(initConfiguration),\n sessionSampleRate: isNullUndefinedDefaultValue(sessionSampleRate, 100),\n service: initConfiguration.service,\n version: initConfiguration.version,\n env: initConfiguration.env,\n telemetrySampleRate: isNullUndefinedDefaultValue(\n initConfiguration.telemetrySampleRate,\n 100\n ),\n telemetryEnabled: isNullUndefinedDefaultValue(\n initConfiguration.telemetryEnabled,\n false\n ),\n silentMultipleInit: !!initConfiguration.silentMultipleInit,\n\n /**\n * beacon payload max queue size implementation is 64kb\n * ensure that we leave room for logs, rum and potential other users\n */\n batchBytesLimit: 16 * ONE_KIBI_BYTE,\n\n eventRateLimiterThreshold: 3000,\n maxTelemetryEventsPerPage: 15,\n\n /**\n * flush automatically, aim to be lower than ALB connection timeout\n * to maximize connection reuse.\n */\n flushTimeout: 30 * ONE_SECOND,\n\n /**\n * Logs intake limit\n */\n batchMessagesLimit: 50,\n messageBytesLimit: 256 * ONE_KIBI_BYTE,\n resourceUrlLimit: 5 * ONE_KIBI_BYTE\n },\n computeTransportConfiguration(initConfiguration)\n )\n}\n\nexport function buildCookieOptions(initConfiguration) {\n var cookieOptions = {}\n\n cookieOptions.secure = mustUseSecureCookie(initConfiguration)\n cookieOptions.crossSite = !!initConfiguration.useCrossSiteSessionCookie\n\n if (initConfiguration.trackSessionAcrossSubdomains) {\n cookieOptions.domain = getCurrentSite()\n }\n\n return cookieOptions\n}\n\nfunction mustUseSecureCookie(initConfiguration) {\n return (\n !!initConfiguration.useSecureSessionCookie ||\n !!initConfiguration.useCrossSiteSessionCookie\n )\n}\n"],"mappings":"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"}
|
|
@@ -5,44 +5,35 @@ var typeMap = {
|
|
|
5
5
|
log: '/logging',
|
|
6
6
|
sessionReplay: '/rum/replay'
|
|
7
7
|
};
|
|
8
|
-
|
|
9
8
|
function getEndPointUrl(url, type) {
|
|
10
9
|
// type: rum, log,replay
|
|
11
10
|
var subUrl = typeMap[type];
|
|
12
11
|
if (!subUrl) return '';
|
|
13
|
-
|
|
14
12
|
if (url.indexOf('/') === 0) {
|
|
15
13
|
// 绝对路径这种 /xxx
|
|
16
14
|
url = location.origin + trim(url);
|
|
17
15
|
}
|
|
18
|
-
|
|
19
16
|
if (url.lastIndexOf('/') === url.length - 1) return trim(url) + 'v1/write' + subUrl;
|
|
20
17
|
return trim(url) + '/v1/write' + subUrl;
|
|
21
18
|
}
|
|
22
|
-
|
|
23
19
|
function trim(str) {
|
|
24
20
|
return str.replace(TRIM_REGIX, '');
|
|
25
21
|
}
|
|
26
|
-
|
|
27
22
|
export function computeTransportConfiguration(initConfiguration) {
|
|
28
23
|
var isIntakeUrl = function isIntakeUrl(url) {
|
|
29
24
|
return false;
|
|
30
25
|
};
|
|
31
|
-
|
|
32
26
|
if ('isIntakeUrl' in initConfiguration && isFunction(initConfiguration.isIntakeUrl) && isBoolean(initConfiguration.isIntakeUrl())) {
|
|
33
27
|
isIntakeUrl = initConfiguration.isIntakeUrl;
|
|
34
28
|
}
|
|
35
|
-
|
|
36
29
|
var isServerError = function isServerError(request) {
|
|
37
30
|
return false;
|
|
38
31
|
};
|
|
39
|
-
|
|
40
32
|
if ('isServerError' in initConfiguration && isFunction(initConfiguration.isServerError) && isBoolean(initConfiguration.isServerError())) {
|
|
41
33
|
isServerError = initConfiguration.isServerError;
|
|
42
34
|
}
|
|
43
|
-
|
|
44
35
|
return {
|
|
45
|
-
|
|
36
|
+
rumEndpoint: getEndPointUrl(initConfiguration.datakitUrl || initConfiguration.datakitOrigin, 'rum'),
|
|
46
37
|
logsEndpoint: getEndPointUrl(initConfiguration.datakitOrigin, 'log'),
|
|
47
38
|
sessionReplayEndPoint: getEndPointUrl(initConfiguration.datakitOrigin, 'sessionReplay'),
|
|
48
39
|
isIntakeUrl: isIntakeUrl,
|
|
@@ -50,18 +41,16 @@ export function computeTransportConfiguration(initConfiguration) {
|
|
|
50
41
|
};
|
|
51
42
|
}
|
|
52
43
|
export function isIntakeRequest(url, configuration) {
|
|
53
|
-
var notTakeRequest = [configuration.
|
|
54
|
-
|
|
44
|
+
var notTakeRequest = [configuration.rumEndpoint];
|
|
55
45
|
if (configuration.logsEndpoint) {
|
|
56
46
|
notTakeRequest.push(configuration.logsEndpoint);
|
|
57
47
|
}
|
|
58
|
-
|
|
59
48
|
if (configuration.sessionReplayEndPoint) {
|
|
60
49
|
notTakeRequest.push(configuration.sessionReplayEndPoint);
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
|
|
50
|
+
}
|
|
51
|
+
// datakit 地址,log 地址,以及客户自定义过滤方法定义url
|
|
64
52
|
return some(notTakeRequest, function (takeUrl) {
|
|
65
53
|
return url.indexOf(takeUrl) === 0;
|
|
66
54
|
}) || configuration.isIntakeUrl(url);
|
|
67
|
-
}
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=transportConfiguration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transportConfiguration.js","names":["isFunction","isBoolean","some","TRIM_REGIX","typeMap","rum","log","sessionReplay","getEndPointUrl","url","type","subUrl","indexOf","location","origin","trim","lastIndexOf","length","str","replace","computeTransportConfiguration","initConfiguration","isIntakeUrl","isServerError","request","rumEndpoint","datakitUrl","datakitOrigin","logsEndpoint","sessionReplayEndPoint","isIntakeRequest","configuration","notTakeRequest","push","takeUrl"],"sources":["../../src/configuration/transportConfiguration.js"],"sourcesContent":["import { isFunction, isBoolean, some } from '../helper/tools'\nvar TRIM_REGIX = /^\\s+|\\s+$/g\nvar typeMap = {\n rum: '/rum',\n log: '/logging',\n sessionReplay: '/rum/replay'\n}\nfunction getEndPointUrl(url, type) {\n // type: rum, log,replay\n var subUrl = typeMap[type]\n if (!subUrl) return ''\n if (url.indexOf('/') === 0) {\n // 绝对路径这种 /xxx\n url = location.origin + trim(url)\n }\n if (url.lastIndexOf('/') === url.length - 1)\n return trim(url) + 'v1/write' + subUrl\n return trim(url) + '/v1/write' + subUrl\n}\n\nfunction trim(str) {\n return str.replace(TRIM_REGIX, '')\n}\n\nexport function computeTransportConfiguration(initConfiguration) {\n var isIntakeUrl = function (url) {\n return false\n }\n if (\n 'isIntakeUrl' in initConfiguration &&\n isFunction(initConfiguration.isIntakeUrl) &&\n isBoolean(initConfiguration.isIntakeUrl())\n ) {\n isIntakeUrl = initConfiguration.isIntakeUrl\n }\n var isServerError = function (request) {\n return false\n }\n if (\n 'isServerError' in initConfiguration &&\n isFunction(initConfiguration.isServerError) &&\n isBoolean(initConfiguration.isServerError())\n ) {\n isServerError = initConfiguration.isServerError\n }\n return {\n rumEndpoint: getEndPointUrl(\n initConfiguration.datakitUrl || initConfiguration.datakitOrigin,\n 'rum'\n ),\n logsEndpoint: getEndPointUrl(initConfiguration.datakitOrigin, 'log'),\n sessionReplayEndPoint: getEndPointUrl(\n initConfiguration.datakitOrigin,\n 'sessionReplay'\n ),\n isIntakeUrl: isIntakeUrl,\n isServerError: isServerError\n }\n}\nexport function isIntakeRequest(url, configuration) {\n var notTakeRequest = [configuration.rumEndpoint]\n if (configuration.logsEndpoint) {\n notTakeRequest.push(configuration.logsEndpoint)\n }\n if (configuration.sessionReplayEndPoint) {\n notTakeRequest.push(configuration.sessionReplayEndPoint)\n }\n // datakit 地址,log 地址,以及客户自定义过滤方法定义url\n return (\n some(notTakeRequest, function (takeUrl) {\n return url.indexOf(takeUrl) === 0\n }) || configuration.isIntakeUrl(url)\n )\n}\n"],"mappings":"AAAA,SAASA,UAAU,EAAEC,SAAS,EAAEC,IAAI,QAAQ,iBAAiB;AAC7D,IAAIC,UAAU,GAAG,YAAY;AAC7B,IAAIC,OAAO,GAAG;EACZC,GAAG,EAAE,MAAM;EACXC,GAAG,EAAE,UAAU;EACfC,aAAa,EAAE;AACjB,CAAC;AACD,SAASC,cAAcA,CAACC,GAAG,EAAEC,IAAI,EAAE;EACjC;EACA,IAAIC,MAAM,GAAGP,OAAO,CAACM,IAAI,CAAC;EAC1B,IAAI,CAACC,MAAM,EAAE,OAAO,EAAE;EACtB,IAAIF,GAAG,CAACG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;IAC1B;IACAH,GAAG,GAAGI,QAAQ,CAACC,MAAM,GAAGC,IAAI,CAACN,GAAG,CAAC;EACnC;EACA,IAAIA,GAAG,CAACO,WAAW,CAAC,GAAG,CAAC,KAAKP,GAAG,CAACQ,MAAM,GAAG,CAAC,EACzC,OAAOF,IAAI,CAACN,GAAG,CAAC,GAAG,UAAU,GAAGE,MAAM;EACxC,OAAOI,IAAI,CAACN,GAAG,CAAC,GAAG,WAAW,GAAGE,MAAM;AACzC;AAEA,SAASI,IAAIA,CAACG,GAAG,EAAE;EACjB,OAAOA,GAAG,CAACC,OAAO,CAAChB,UAAU,EAAE,EAAE,CAAC;AACpC;AAEA,OAAO,SAASiB,6BAA6BA,CAACC,iBAAiB,EAAE;EAC/D,IAAIC,WAAW,GAAG,SAAAA,YAAUb,GAAG,EAAE;IAC/B,OAAO,KAAK;EACd,CAAC;EACD,IACE,aAAa,IAAIY,iBAAiB,IAClCrB,UAAU,CAACqB,iBAAiB,CAACC,WAAW,CAAC,IACzCrB,SAAS,CAACoB,iBAAiB,CAACC,WAAW,CAAC,CAAC,CAAC,EAC1C;IACAA,WAAW,GAAGD,iBAAiB,CAACC,WAAW;EAC7C;EACA,IAAIC,aAAa,GAAG,SAAAA,cAAUC,OAAO,EAAE;IACrC,OAAO,KAAK;EACd,CAAC;EACD,IACE,eAAe,IAAIH,iBAAiB,IACpCrB,UAAU,CAACqB,iBAAiB,CAACE,aAAa,CAAC,IAC3CtB,SAAS,CAACoB,iBAAiB,CAACE,aAAa,CAAC,CAAC,CAAC,EAC5C;IACAA,aAAa,GAAGF,iBAAiB,CAACE,aAAa;EACjD;EACA,OAAO;IACLE,WAAW,EAAEjB,cAAc,CACzBa,iBAAiB,CAACK,UAAU,IAAIL,iBAAiB,CAACM,aAAa,EAC/D,KACF,CAAC;IACDC,YAAY,EAAEpB,cAAc,CAACa,iBAAiB,CAACM,aAAa,EAAE,KAAK,CAAC;IACpEE,qBAAqB,EAAErB,cAAc,CACnCa,iBAAiB,CAACM,aAAa,EAC/B,eACF,CAAC;IACDL,WAAW,EAAEA,WAAW;IACxBC,aAAa,EAAEA;EACjB,CAAC;AACH;AACA,OAAO,SAASO,eAAeA,CAACrB,GAAG,EAAEsB,aAAa,EAAE;EAClD,IAAIC,cAAc,GAAG,CAACD,aAAa,CAACN,WAAW,CAAC;EAChD,IAAIM,aAAa,CAACH,YAAY,EAAE;IAC9BI,cAAc,CAACC,IAAI,CAACF,aAAa,CAACH,YAAY,CAAC;EACjD;EACA,IAAIG,aAAa,CAACF,qBAAqB,EAAE;IACvCG,cAAc,CAACC,IAAI,CAACF,aAAa,CAACF,qBAAqB,CAAC;EAC1D;EACA;EACA,OACE3B,IAAI,CAAC8B,cAAc,EAAE,UAAUE,OAAO,EAAE;IACtC,OAAOzB,GAAG,CAACG,OAAO,CAACsB,OAAO,CAAC,KAAK,CAAC;EACnC,CAAC,CAAC,IAAIH,aAAa,CAACT,WAAW,CAACb,GAAG,CAAC;AAExC"}
|
|
@@ -11,17 +11,15 @@ export function initConsoleObservable(apis) {
|
|
|
11
11
|
if (!consoleObservablesByApi[api]) {
|
|
12
12
|
consoleObservablesByApi[api] = createConsoleObservable(api);
|
|
13
13
|
}
|
|
14
|
-
|
|
15
14
|
return consoleObservablesByApi[api];
|
|
16
15
|
});
|
|
17
16
|
return mergeObservables.apply(this, consoleObservables);
|
|
18
17
|
}
|
|
19
|
-
/* eslint-disable no-console */
|
|
20
18
|
|
|
19
|
+
/* eslint-disable no-console */
|
|
21
20
|
function createConsoleObservable(api) {
|
|
22
21
|
var observable = new Observable(function () {
|
|
23
22
|
var originalConsoleApi = console[api];
|
|
24
|
-
|
|
25
23
|
console[api] = function () {
|
|
26
24
|
var params = [].slice.call(arguments);
|
|
27
25
|
originalConsoleApi.apply(console, arguments);
|
|
@@ -30,21 +28,18 @@ function createConsoleObservable(api) {
|
|
|
30
28
|
observable.notify(buildConsoleLog(params, api, handlingStack));
|
|
31
29
|
});
|
|
32
30
|
};
|
|
33
|
-
|
|
34
31
|
return function () {
|
|
35
32
|
console[api] = originalConsoleApi;
|
|
36
33
|
};
|
|
37
34
|
});
|
|
38
35
|
return observable;
|
|
39
36
|
}
|
|
40
|
-
|
|
41
37
|
function buildConsoleLog(params, api, handlingStack) {
|
|
42
38
|
// Todo: remove console error prefix in the next major version
|
|
43
39
|
var message = map(params, function (param) {
|
|
44
40
|
return formatConsoleParameters(param);
|
|
45
41
|
}).join(' ');
|
|
46
42
|
var stack;
|
|
47
|
-
|
|
48
43
|
if (api === ConsoleApiName.error) {
|
|
49
44
|
var firstErrorParam = find(params, function (param) {
|
|
50
45
|
return param instanceof Error;
|
|
@@ -52,7 +47,6 @@ function buildConsoleLog(params, api, handlingStack) {
|
|
|
52
47
|
stack = firstErrorParam ? toStackTraceString(computeStackTrace(firstErrorParam)) : undefined;
|
|
53
48
|
message = 'console error: ' + message;
|
|
54
49
|
}
|
|
55
|
-
|
|
56
50
|
return {
|
|
57
51
|
api: api,
|
|
58
52
|
message: message,
|
|
@@ -60,15 +54,13 @@ function buildConsoleLog(params, api, handlingStack) {
|
|
|
60
54
|
handlingStack: handlingStack
|
|
61
55
|
};
|
|
62
56
|
}
|
|
63
|
-
|
|
64
57
|
function formatConsoleParameters(param) {
|
|
65
58
|
if (typeof param === 'string') {
|
|
66
59
|
return param;
|
|
67
60
|
}
|
|
68
|
-
|
|
69
61
|
if (param instanceof Error) {
|
|
70
62
|
return formatErrorMessage(computeStackTrace(param));
|
|
71
63
|
}
|
|
72
|
-
|
|
73
64
|
return jsonStringify(param, undefined, 2);
|
|
74
|
-
}
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=consoleObservable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consoleObservable.js","names":["computeStackTrace","createHandlingStack","formatErrorMessage","toStackTraceString","mergeObservables","Observable","find","map","jsonStringify","ConsoleApiName","callMonitored","consoleObservablesByApi","initConsoleObservable","apis","consoleObservables","api","createConsoleObservable","apply","observable","originalConsoleApi","console","params","slice","call","arguments","handlingStack","notify","buildConsoleLog","message","param","formatConsoleParameters","join","stack","error","firstErrorParam","Error","undefined"],"sources":["../../src/console/consoleObservable.js"],"sourcesContent":["import { computeStackTrace } from '../tracekit'\nimport {\n createHandlingStack,\n formatErrorMessage,\n toStackTraceString\n} from '../helper/errorTools'\nimport { mergeObservables, Observable } from '../helper/observable'\nimport { find, map } from '../helper/tools'\nimport { jsonStringify } from '../helper/serialisation/jsonStringify'\nimport { ConsoleApiName } from '../helper/display'\nimport { callMonitored } from '../helper/monitor'\nvar consoleObservablesByApi = {}\n\nexport function initConsoleObservable(apis) {\n var consoleObservables = map(apis, function (api) {\n if (!consoleObservablesByApi[api]) {\n consoleObservablesByApi[api] = createConsoleObservable(api)\n }\n return consoleObservablesByApi[api]\n })\n\n return mergeObservables.apply(this, consoleObservables)\n}\n\n/* eslint-disable no-console */\nfunction createConsoleObservable(api) {\n var observable = new Observable(function () {\n var originalConsoleApi = console[api]\n console[api] = function () {\n var params = [].slice.call(arguments)\n originalConsoleApi.apply(console, arguments)\n var handlingStack = createHandlingStack()\n callMonitored(function () {\n observable.notify(buildConsoleLog(params, api, handlingStack))\n })\n }\n return function () {\n console[api] = originalConsoleApi\n }\n })\n return observable\n}\n\nfunction buildConsoleLog(params, api, handlingStack) {\n // Todo: remove console error prefix in the next major version\n var message = map(params, function (param) {\n return formatConsoleParameters(param)\n }).join(' ')\n var stack\n\n if (api === ConsoleApiName.error) {\n var firstErrorParam = find(params, function (param) {\n return param instanceof Error\n })\n stack = firstErrorParam\n ? toStackTraceString(computeStackTrace(firstErrorParam))\n : undefined\n message = 'console error: ' + message\n }\n\n return {\n api: api,\n message: message,\n stack: stack,\n handlingStack: handlingStack\n }\n}\n\nfunction formatConsoleParameters(param) {\n if (typeof param === 'string') {\n return param\n }\n if (param instanceof Error) {\n return formatErrorMessage(computeStackTrace(param))\n }\n return jsonStringify(param, undefined, 2)\n}\n"],"mappings":"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"}
|
package/esm/dataMap.js
CHANGED
|
@@ -35,15 +35,18 @@ export var commonTags = {
|
|
|
35
35
|
};
|
|
36
36
|
export var commonFields = {
|
|
37
37
|
action_id: 'action.id',
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
action_ids: 'action.ids',
|
|
39
|
+
view_in_foreground: 'view.in_foreground',
|
|
40
|
+
display: 'display'
|
|
41
|
+
};
|
|
42
|
+
// 需要用双引号将字符串类型的field value括起来, 这里有数组标示[string, path]
|
|
41
43
|
export var dataMap = {
|
|
42
44
|
view: {
|
|
43
45
|
type: RumEventType.VIEW,
|
|
44
46
|
tags: {
|
|
45
47
|
view_loading_type: 'view.loading_type',
|
|
46
|
-
view_apdex_level: 'view.apdex_level'
|
|
48
|
+
view_apdex_level: 'view.apdex_level',
|
|
49
|
+
view_privacy_replay_level: 'privacy.replay_level'
|
|
47
50
|
},
|
|
48
51
|
fields: {
|
|
49
52
|
is_active: 'view.is_active',
|
|
@@ -65,13 +68,14 @@ export var dataMap = {
|
|
|
65
68
|
load_event: 'view.load_event',
|
|
66
69
|
first_input_time: 'view.first_input_time',
|
|
67
70
|
first_paint_time: 'view.fpt',
|
|
71
|
+
interaction_to_next_paint: 'view.interaction_to_next_paint',
|
|
68
72
|
resource_load_time: 'view.resource_load_time',
|
|
69
73
|
time_to_interactive: 'view.tti',
|
|
70
74
|
dom: 'view.dom',
|
|
71
75
|
dom_ready: 'view.dom_ready',
|
|
72
76
|
time_spent: 'view.time_spent',
|
|
73
77
|
first_byte: 'view.first_byte',
|
|
74
|
-
|
|
78
|
+
page_states: '_gc.page_states',
|
|
75
79
|
frustration_count: 'view.frustration.count',
|
|
76
80
|
custom_timings: 'view.custom_timings'
|
|
77
81
|
}
|
|
@@ -119,15 +123,16 @@ export var dataMap = {
|
|
|
119
123
|
span_id: '_gc.span_id',
|
|
120
124
|
error_source: 'error.source',
|
|
121
125
|
error_type: 'error.type',
|
|
122
|
-
error_handling: 'error.handling'
|
|
126
|
+
error_handling: 'error.handling'
|
|
127
|
+
// resource_url: 'error.resource.url',
|
|
123
128
|
// resource_url_host: 'error.resource.url_host',
|
|
124
129
|
// resource_url_path: 'error.resource.url_path',
|
|
125
130
|
// resource_url_path_group: 'error.resource.url_path_group',
|
|
126
131
|
// resource_status: 'error.resource.status',
|
|
127
132
|
// resource_status_group: 'error.resource.status_group',
|
|
128
133
|
// resource_method: 'error.resource.method'
|
|
129
|
-
|
|
130
134
|
},
|
|
135
|
+
|
|
131
136
|
fields: {
|
|
132
137
|
error_message: ['string', 'error.message'],
|
|
133
138
|
error_stack: ['string', 'error.stack'],
|
|
@@ -159,6 +164,16 @@ export var dataMap = {
|
|
|
159
164
|
action_position: '_gc.action.position'
|
|
160
165
|
}
|
|
161
166
|
},
|
|
167
|
+
telemetry: {
|
|
168
|
+
type: 'telemetry',
|
|
169
|
+
fields: {
|
|
170
|
+
status: 'telemetry.status',
|
|
171
|
+
message: ['string', 'telemetry.message'],
|
|
172
|
+
type: 'telemetry.type',
|
|
173
|
+
error_stack: ['string', 'telemetry.error.stack'],
|
|
174
|
+
error_kind: ['string', 'telemetry.error.kind']
|
|
175
|
+
}
|
|
176
|
+
},
|
|
162
177
|
browser_log: {
|
|
163
178
|
type: RumEventType.LOGGER,
|
|
164
179
|
tags: {
|
|
@@ -179,4 +194,5 @@ export var dataMap = {
|
|
|
179
194
|
message: ['string', 'message']
|
|
180
195
|
}
|
|
181
196
|
}
|
|
182
|
-
};
|
|
197
|
+
};
|
|
198
|
+
//# sourceMappingURL=dataMap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataMap.js","names":["RumEventType","commonTags","sdk_name","sdk_version","app_id","env","service","version","userid","user_email","user_name","session_id","session_type","session_sampling","session_has_replay","is_signin","os","os_version","os_version_major","browser","browser_version","browser_version_major","screen_size","network_type","device","view_id","view_referrer","view_url","view_host","view_path","view_name","view_path_group","view_url_query","commonFields","action_id","action_ids","view_in_foreground","display","dataMap","view","type","VIEW","tags","view_loading_type","view_apdex_level","view_privacy_replay_level","fields","is_active","session_replay_stats","session_is_active","view_error_count","view_resource_count","view_long_task_count","view_action_count","first_contentful_paint","largest_contentful_paint","largest_contentful_paint_element_selector","cumulative_layout_shift","first_input_delay","loading_time","dom_interactive","dom_content_loaded","dom_complete","load_event","first_input_time","first_paint_time","interaction_to_next_paint","resource_load_time","time_to_interactive","dom","dom_ready","time_spent","first_byte","page_states","frustration_count","custom_timings","resource","RESOURCE","trace_id","span_id","resource_url","resource_url_host","resource_url_path","resource_url_path_group","resource_url_query","resource_type","resource_status","resource_status_group","resource_method","duration","resource_size","resource_encode_size","resource_render_blocking_status","resource_dns","resource_tcp","resource_ssl","resource_ttfb","resource_trans","resource_redirect","resource_first_byte","resource_dns_time","resource_download_time","resource_first_byte_time","resource_connect_time","resource_ssl_time","resource_redirect_time","error","ERROR","error_id","error_source","error_type","error_handling","error_message","error_stack","error_causes","long_task","LONG_TASK","long_task_id","action","ACTION","action_type","action_name","action_error_count","action_resource_count","action_frustration_types","action_long_task_count","action_target","action_position","telemetry","status","message","error_kind","browser_log","LOGGER","error_resource_url","error_resource_url_host","error_resource_url_path","error_resource_url_path_group","error_resource_status","error_resource_status_group","error_resource_method"],"sources":["../src/dataMap.js"],"sourcesContent":["import { RumEventType } from './helper/enums'\nexport var commonTags = {\n sdk_name: '_gc.sdk_name',\n sdk_version: '_gc.sdk_version',\n app_id: 'application.id',\n env: 'env',\n service: 'service',\n version: 'version',\n userid: 'user.id',\n user_email: 'user.email',\n user_name: 'user.name',\n session_id: 'session.id',\n session_type: 'session.type',\n session_sampling: 'session.is_sampling',\n session_has_replay: 'session.has_replay',\n is_signin: 'user.is_signin',\n os: 'device.os',\n os_version: 'device.os_version',\n os_version_major: 'device.os_version_major',\n browser: 'device.browser',\n browser_version: 'device.browser_version',\n browser_version_major: 'device.browser_version_major',\n screen_size: 'device.screen_size',\n network_type: 'device.network_type',\n device: 'device.device',\n view_id: 'view.id',\n view_referrer: 'view.referrer',\n view_url: 'view.url',\n view_host: 'view.host',\n view_path: 'view.path',\n view_name: 'view.path', // 冗余一个字段\n view_path_group: 'view.path_group',\n view_url_query: 'view.url_query'\n}\nexport var commonFields = {\n action_id: 'action.id',\n action_ids: 'action.ids',\n view_in_foreground: 'view.in_foreground',\n display: 'display'\n}\n// 需要用双引号将字符串类型的field value括起来, 这里有数组标示[string, path]\nexport var dataMap = {\n view: {\n type: RumEventType.VIEW,\n tags: {\n view_loading_type: 'view.loading_type',\n view_apdex_level: 'view.apdex_level',\n view_privacy_replay_level: 'privacy.replay_level'\n },\n fields: {\n is_active: 'view.is_active',\n session_replay_stats: '_gc.replay_stats',\n session_is_active: 'session.is_active',\n view_error_count: 'view.error.count',\n view_resource_count: 'view.resource.count',\n view_long_task_count: 'view.long_task.count',\n view_action_count: 'view.action.count',\n first_contentful_paint: 'view.first_contentful_paint',\n largest_contentful_paint: 'view.largest_contentful_paint',\n largest_contentful_paint_element_selector:\n 'view.largest_contentful_paint_element_selector',\n cumulative_layout_shift: 'view.cumulative_layout_shift',\n first_input_delay: 'view.first_input_delay',\n loading_time: 'view.loading_time',\n dom_interactive: 'view.dom_interactive',\n dom_content_loaded: 'view.dom_content_loaded',\n dom_complete: 'view.dom_complete',\n load_event: 'view.load_event',\n first_input_time: 'view.first_input_time',\n first_paint_time: 'view.fpt',\n interaction_to_next_paint: 'view.interaction_to_next_paint',\n resource_load_time: 'view.resource_load_time',\n time_to_interactive: 'view.tti',\n dom: 'view.dom',\n dom_ready: 'view.dom_ready',\n time_spent: 'view.time_spent',\n first_byte: 'view.first_byte',\n page_states: '_gc.page_states',\n frustration_count: 'view.frustration.count',\n custom_timings: 'view.custom_timings'\n }\n },\n resource: {\n type: RumEventType.RESOURCE,\n tags: {\n trace_id: '_gc.trace_id',\n span_id: '_gc.span_id',\n resource_url: 'resource.url',\n resource_url_host: 'resource.url_host',\n resource_url_path: 'resource.url_path',\n resource_url_path_group: 'resource.url_path_group',\n resource_url_query: 'resource.url_query',\n resource_type: 'resource.type',\n resource_status: 'resource.status',\n resource_status_group: 'resource.status_group',\n resource_method: 'resource.method'\n },\n fields: {\n duration: 'resource.duration',\n resource_size: 'resource.size',\n resource_encode_size: 'resource.encode_size',\n resource_render_blocking_status: 'resource.render_blocking_status',\n resource_dns: 'resource.dns',\n resource_tcp: 'resource.tcp',\n resource_ssl: 'resource.ssl',\n resource_ttfb: 'resource.ttfb',\n resource_trans: 'resource.trans',\n resource_redirect: 'resource.redirect',\n resource_first_byte: 'resource.firstbyte',\n resource_dns_time: 'resource.dns_time',\n resource_download_time: 'resource.download_time',\n resource_first_byte_time: 'resource.first_byte_time',\n resource_connect_time: 'resource.connect_time',\n resource_ssl_time: 'resource.ssl_time',\n resource_redirect_time: 'resource.redirect_time'\n }\n },\n error: {\n type: RumEventType.ERROR,\n tags: {\n error_id: 'error.id',\n trace_id: '_gc.trace_id',\n span_id: '_gc.span_id',\n error_source: 'error.source',\n error_type: 'error.type',\n error_handling: 'error.handling'\n // resource_url: 'error.resource.url',\n // resource_url_host: 'error.resource.url_host',\n // resource_url_path: 'error.resource.url_path',\n // resource_url_path_group: 'error.resource.url_path_group',\n // resource_status: 'error.resource.status',\n // resource_status_group: 'error.resource.status_group',\n // resource_method: 'error.resource.method'\n },\n fields: {\n error_message: ['string', 'error.message'],\n error_stack: ['string', 'error.stack'],\n error_causes: ['string', 'error.causes']\n }\n },\n long_task: {\n type: RumEventType.LONG_TASK,\n tags: {\n long_task_id: 'long_task.id'\n },\n fields: {\n duration: 'long_task.duration'\n }\n },\n action: {\n type: RumEventType.ACTION,\n tags: {\n action_type: 'action.type'\n },\n fields: {\n action_name: 'action.target.name',\n duration: 'action.loading_time',\n action_error_count: 'action.error.count',\n action_resource_count: 'action.resource.count',\n action_frustration_types: 'action.frustration.type',\n action_long_task_count: 'action.long_task.count',\n action_target: '_gc.action.target',\n action_position: '_gc.action.position'\n }\n },\n telemetry: {\n type: 'telemetry',\n fields: {\n status: 'telemetry.status',\n message: ['string', 'telemetry.message'],\n type: 'telemetry.type',\n error_stack: ['string', 'telemetry.error.stack'],\n error_kind: ['string', 'telemetry.error.kind']\n }\n },\n browser_log: {\n type: RumEventType.LOGGER,\n tags: {\n error_source: 'error.source',\n error_type: 'error.type',\n error_resource_url: 'http.url',\n error_resource_url_host: 'http.url_host',\n error_resource_url_path: 'http.url_path',\n error_resource_url_path_group: 'http.url_path_group',\n error_resource_status: 'http.status_code',\n error_resource_status_group: 'http.status_group',\n error_resource_method: 'http.method',\n action_id: 'user_action.id',\n service: 'service',\n status: 'status'\n },\n fields: {\n message: ['string', 'message']\n }\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ErrorSource, computeRawError } from '../helper/errorTools';
|
|
2
2
|
import { clocksNow } from '../helper/tools';
|
|
3
|
-
import { ErrorHandling } from '../helper/enums';
|
|
3
|
+
import { ErrorHandling, NonErrorPrefix } from '../helper/enums';
|
|
4
4
|
import { startUnhandledErrorCollection } from '../tracekit';
|
|
5
5
|
export function trackRuntimeError(errorObservable) {
|
|
6
6
|
return startUnhandledErrorCollection(function (stackTrace, originalError) {
|
|
@@ -8,9 +8,10 @@ export function trackRuntimeError(errorObservable) {
|
|
|
8
8
|
stackTrace: stackTrace,
|
|
9
9
|
originalError: originalError,
|
|
10
10
|
startClocks: clocksNow(),
|
|
11
|
-
nonErrorPrefix:
|
|
11
|
+
nonErrorPrefix: NonErrorPrefix.UNCAUGHT,
|
|
12
12
|
source: ErrorSource.SOURCE,
|
|
13
13
|
handling: ErrorHandling.UNHANDLED
|
|
14
14
|
}));
|
|
15
15
|
});
|
|
16
|
-
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=trackRuntimeError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trackRuntimeError.js","names":["ErrorSource","computeRawError","clocksNow","ErrorHandling","NonErrorPrefix","startUnhandledErrorCollection","trackRuntimeError","errorObservable","stackTrace","originalError","notify","startClocks","nonErrorPrefix","UNCAUGHT","source","SOURCE","handling","UNHANDLED"],"sources":["../../src/error/trackRuntimeError.js"],"sourcesContent":["import { ErrorSource, computeRawError } from '../helper/errorTools'\nimport { clocksNow } from '../helper/tools'\nimport { ErrorHandling, NonErrorPrefix } from '../helper/enums'\nimport { startUnhandledErrorCollection } from '../tracekit'\n\nexport function trackRuntimeError(errorObservable) {\n return startUnhandledErrorCollection(function (stackTrace, originalError) {\n errorObservable.notify(\n computeRawError({\n stackTrace: stackTrace,\n originalError: originalError,\n startClocks: clocksNow(),\n nonErrorPrefix: NonErrorPrefix.UNCAUGHT,\n source: ErrorSource.SOURCE,\n handling: ErrorHandling.UNHANDLED\n })\n )\n })\n}\n"],"mappings":"AAAA,SAASA,WAAW,EAAEC,eAAe,QAAQ,sBAAsB;AACnE,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,aAAa,EAAEC,cAAc,QAAQ,iBAAiB;AAC/D,SAASC,6BAA6B,QAAQ,aAAa;AAE3D,OAAO,SAASC,iBAAiBA,CAACC,eAAe,EAAE;EACjD,OAAOF,6BAA6B,CAAC,UAAUG,UAAU,EAAEC,aAAa,EAAE;IACxEF,eAAe,CAACG,MAAM,CACpBT,eAAe,CAAC;MACdO,UAAU,EAAEA,UAAU;MACtBC,aAAa,EAAEA,aAAa;MAC5BE,WAAW,EAAET,SAAS,CAAC,CAAC;MACxBU,cAAc,EAAER,cAAc,CAACS,QAAQ;MACvCC,MAAM,EAAEd,WAAW,CAACe,MAAM;MAC1BC,QAAQ,EAAEb,aAAa,CAACc;IAC1B,CAAC,CACH,CAAC;EACH,CAAC,CAAC;AACJ"}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import { each } from './tools';
|
|
2
2
|
var BUFFER_LIMIT = 500;
|
|
3
|
-
|
|
4
3
|
var _BoundedBuffer = function _BoundedBuffer() {
|
|
5
4
|
this.buffer = [];
|
|
6
5
|
};
|
|
7
|
-
|
|
8
6
|
_BoundedBuffer.prototype = {
|
|
9
7
|
add: function add(callback) {
|
|
10
8
|
var length = this.buffer.push(callback);
|
|
11
|
-
|
|
12
9
|
if (length > BUFFER_LIMIT) {
|
|
13
10
|
this.buffer.splice(0, 1);
|
|
14
11
|
}
|
|
@@ -20,4 +17,5 @@ _BoundedBuffer.prototype = {
|
|
|
20
17
|
this.buffer.length = 0;
|
|
21
18
|
}
|
|
22
19
|
};
|
|
23
|
-
export var BoundedBuffer = _BoundedBuffer;
|
|
20
|
+
export var BoundedBuffer = _BoundedBuffer;
|
|
21
|
+
//# sourceMappingURL=boundedBuffer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"boundedBuffer.js","names":["each","BUFFER_LIMIT","_BoundedBuffer","buffer","prototype","add","callback","length","push","splice","drain","BoundedBuffer"],"sources":["../../src/helper/boundedBuffer.js"],"sourcesContent":["import { each } from './tools'\nvar BUFFER_LIMIT = 500\n\nvar _BoundedBuffer = function () {\n this.buffer = []\n}\n_BoundedBuffer.prototype = {\n add: function (callback) {\n var length = this.buffer.push(callback)\n if (length > BUFFER_LIMIT) {\n this.buffer.splice(0, 1)\n }\n },\n\n drain: function () {\n each(this.buffer, function (callback) {\n callback()\n })\n this.buffer.length = 0\n }\n}\nexport var BoundedBuffer = _BoundedBuffer\n"],"mappings":"AAAA,SAASA,IAAI,QAAQ,SAAS;AAC9B,IAAIC,YAAY,GAAG,GAAG;AAEtB,IAAIC,cAAc,GAAG,SAAjBA,cAAcA,CAAA,EAAe;EAC/B,IAAI,CAACC,MAAM,GAAG,EAAE;AAClB,CAAC;AACDD,cAAc,CAACE,SAAS,GAAG;EACzBC,GAAG,EAAE,SAAAA,IAAUC,QAAQ,EAAE;IACvB,IAAIC,MAAM,GAAG,IAAI,CAACJ,MAAM,CAACK,IAAI,CAACF,QAAQ,CAAC;IACvC,IAAIC,MAAM,GAAGN,YAAY,EAAE;MACzB,IAAI,CAACE,MAAM,CAACM,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1B;EACF,CAAC;EAEDC,KAAK,EAAE,SAAAA,MAAA,EAAY;IACjBV,IAAI,CAAC,IAAI,CAACG,MAAM,EAAE,UAAUG,QAAQ,EAAE;MACpCA,QAAQ,CAAC,CAAC;IACZ,CAAC,CAAC;IACF,IAAI,CAACH,MAAM,CAACI,MAAM,GAAG,CAAC;EACxB;AACF,CAAC;AACD,OAAO,IAAII,aAAa,GAAGT,cAAc"}
|
package/esm/helper/byteUtils.js
CHANGED
|
@@ -1,23 +1,18 @@
|
|
|
1
|
-
function _createForOfIteratorHelper(o, allowArrayLike) { var it
|
|
2
|
-
|
|
1
|
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
|
|
3
2
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
4
|
-
|
|
5
3
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
6
|
-
|
|
7
4
|
export var ONE_KIBI_BYTE = 1024;
|
|
8
|
-
export var ONE_MEBI_BYTE = 1024 * ONE_KIBI_BYTE;
|
|
9
|
-
|
|
5
|
+
export var ONE_MEBI_BYTE = 1024 * ONE_KIBI_BYTE;
|
|
6
|
+
// eslint-disable-next-line no-control-regex
|
|
10
7
|
var HAS_MULTI_BYTES_CHARACTERS = /[^\u0000-\u007F]/;
|
|
11
8
|
export function computeBytesCount(candidate) {
|
|
12
9
|
// Accurate bytes count computations can degrade performances when there is a lot of events to process
|
|
13
10
|
if (!HAS_MULTI_BYTES_CHARACTERS.test(candidate)) {
|
|
14
11
|
return candidate.length;
|
|
15
12
|
}
|
|
16
|
-
|
|
17
13
|
if (window.TextEncoder !== undefined) {
|
|
18
14
|
return new TextEncoder().encode(candidate).length;
|
|
19
15
|
}
|
|
20
|
-
|
|
21
16
|
return new Blob([candidate]).size;
|
|
22
17
|
}
|
|
23
18
|
export function concatBuffers(buffers) {
|
|
@@ -26,10 +21,8 @@ export function concatBuffers(buffers) {
|
|
|
26
21
|
}, 0);
|
|
27
22
|
var result = new Uint8Array(length);
|
|
28
23
|
var offset = 0;
|
|
29
|
-
|
|
30
24
|
var _iterator = _createForOfIteratorHelper(buffers),
|
|
31
|
-
|
|
32
|
-
|
|
25
|
+
_step;
|
|
33
26
|
try {
|
|
34
27
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
35
28
|
var buffer = _step.value;
|
|
@@ -41,6 +34,6 @@ export function concatBuffers(buffers) {
|
|
|
41
34
|
} finally {
|
|
42
35
|
_iterator.f();
|
|
43
36
|
}
|
|
44
|
-
|
|
45
37
|
return result;
|
|
46
|
-
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=byteUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"byteUtils.js","names":["ONE_KIBI_BYTE","ONE_MEBI_BYTE","HAS_MULTI_BYTES_CHARACTERS","computeBytesCount","candidate","test","length","window","TextEncoder","undefined","encode","Blob","size","concatBuffers","buffers","reduce","total","buffer","result","Uint8Array","offset","_iterator","_createForOfIteratorHelper","_step","s","n","done","value","set","err","e","f"],"sources":["../../src/helper/byteUtils.js"],"sourcesContent":["export var ONE_KIBI_BYTE = 1024\nexport var ONE_MEBI_BYTE = 1024 * ONE_KIBI_BYTE\n// eslint-disable-next-line no-control-regex\nvar HAS_MULTI_BYTES_CHARACTERS = /[^\\u0000-\\u007F]/\n\nexport function computeBytesCount(candidate) {\n // Accurate bytes count computations can degrade performances when there is a lot of events to process\n if (!HAS_MULTI_BYTES_CHARACTERS.test(candidate)) {\n return candidate.length\n }\n\n if (window.TextEncoder !== undefined) {\n return new TextEncoder().encode(candidate).length\n }\n\n return new Blob([candidate]).size\n}\nexport function concatBuffers(buffers) {\n var length = buffers.reduce(function (total, buffer) {\n return total + buffer.length\n }, 0)\n var result = new Uint8Array(length)\n var offset = 0\n for (var buffer of buffers) {\n result.set(buffer, offset)\n offset += buffer.length\n }\n return result\n}\n"],"mappings":";;;AAAA,OAAO,IAAIA,aAAa,GAAG,IAAI;AAC/B,OAAO,IAAIC,aAAa,GAAG,IAAI,GAAGD,aAAa;AAC/C;AACA,IAAIE,0BAA0B,GAAG,kBAAkB;AAEnD,OAAO,SAASC,iBAAiBA,CAACC,SAAS,EAAE;EAC3C;EACA,IAAI,CAACF,0BAA0B,CAACG,IAAI,CAACD,SAAS,CAAC,EAAE;IAC/C,OAAOA,SAAS,CAACE,MAAM;EACzB;EAEA,IAAIC,MAAM,CAACC,WAAW,KAAKC,SAAS,EAAE;IACpC,OAAO,IAAID,WAAW,CAAC,CAAC,CAACE,MAAM,CAACN,SAAS,CAAC,CAACE,MAAM;EACnD;EAEA,OAAO,IAAIK,IAAI,CAAC,CAACP,SAAS,CAAC,CAAC,CAACQ,IAAI;AACnC;AACA,OAAO,SAASC,aAAaA,CAACC,OAAO,EAAE;EACrC,IAAIR,MAAM,GAAGQ,OAAO,CAACC,MAAM,CAAC,UAAUC,KAAK,EAAEC,MAAM,EAAE;IACnD,OAAOD,KAAK,GAAGC,MAAM,CAACX,MAAM;EAC9B,CAAC,EAAE,CAAC,CAAC;EACL,IAAIY,MAAM,GAAG,IAAIC,UAAU,CAACb,MAAM,CAAC;EACnC,IAAIc,MAAM,GAAG,CAAC;EAAA,IAAAC,SAAA,GAAAC,0BAAA,CACKR,OAAO;IAAAS,KAAA;EAAA;IAA1B,KAAAF,SAAA,CAAAG,CAAA,MAAAD,KAAA,GAAAF,SAAA,CAAAI,CAAA,IAAAC,IAAA,GAA4B;MAAA,IAAnBT,MAAM,GAAAM,KAAA,CAAAI,KAAA;MACbT,MAAM,CAACU,GAAG,CAACX,MAAM,EAAEG,MAAM,CAAC;MAC1BA,MAAM,IAAIH,MAAM,CAACX,MAAM;IACzB;EAAC,SAAAuB,GAAA;IAAAR,SAAA,CAAAS,CAAA,CAAAD,GAAA;EAAA;IAAAR,SAAA,CAAAU,CAAA;EAAA;EACD,OAAOb,MAAM;AACf"}
|
|
@@ -2,11 +2,11 @@ import { display } from './display';
|
|
|
2
2
|
export function catchUserErrors(fn, errorMsg) {
|
|
3
3
|
return function () {
|
|
4
4
|
var args = [].slice.call(arguments);
|
|
5
|
-
|
|
6
5
|
try {
|
|
7
6
|
return fn.apply(this, args);
|
|
8
7
|
} catch (err) {
|
|
9
8
|
display.error(errorMsg, err);
|
|
10
9
|
}
|
|
11
10
|
};
|
|
12
|
-
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=catchUserErrors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"catchUserErrors.js","names":["display","catchUserErrors","fn","errorMsg","args","slice","call","arguments","apply","err","error"],"sources":["../../src/helper/catchUserErrors.js"],"sourcesContent":["import { display } from './display'\n\nexport function catchUserErrors(fn, errorMsg) {\n return function() {\n var args = [].slice.call(arguments)\n try {\n return fn.apply(this, args)\n } catch (err) {\n display.error(errorMsg, err)\n }\n }\n}"],"mappings":"AAAA,SAASA,OAAO,QAAQ,WAAW;AAEnC,OAAO,SAASC,eAAeA,CAACC,EAAE,EAAEC,QAAQ,EAAE;EAC5C,OAAO,YAAW;IAChB,IAAIC,IAAI,GAAG,EAAE,CAACC,KAAK,CAACC,IAAI,CAACC,SAAS,CAAC;IACnC,IAAI;MACF,OAAOL,EAAE,CAACM,KAAK,CAAC,IAAI,EAAEJ,IAAI,CAAC;IAC7B,CAAC,CAAC,OAAOK,GAAG,EAAE;MACZT,OAAO,CAACU,KAAK,CAACP,QAAQ,EAAEM,GAAG,CAAC;IAC9B;EACF,CAAC;AACH"}
|