@cloudcare/browser-core 3.1.11 → 3.1.12
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.map +1 -1
- package/cjs/browser/cookie.js +2 -1
- package/cjs/browser/cookie.js.map +1 -1
- package/cjs/browser/fetchObservable.js.map +1 -1
- package/cjs/browser/htmlDomUtils.js.map +1 -1
- package/cjs/browser/pageExitObservable.js.map +1 -1
- package/cjs/browser/runOnReadyState.js.map +1 -1
- package/cjs/browser/scroll.js.map +1 -1
- package/cjs/browser/xhrObservable.js.map +1 -1
- package/cjs/configuration/configuration.js +13 -5
- package/cjs/configuration/configuration.js.map +1 -1
- package/cjs/configuration/transportConfiguration.js.map +1 -1
- package/cjs/console/consoleObservable.js.map +1 -1
- package/cjs/dataMap.js +3 -1
- package/cjs/dataMap.js.map +1 -1
- package/cjs/error/trackRuntimeError.js.map +1 -1
- package/cjs/helper/boundedBuffer.js.map +1 -1
- package/cjs/helper/byteUtils.js.map +1 -1
- package/cjs/helper/catchUserErrors.js.map +1 -1
- package/cjs/helper/contextHistory.js.map +1 -1
- package/cjs/helper/createEventRateLimiter.js.map +1 -1
- package/cjs/helper/deviceInfo.js.map +1 -1
- package/cjs/helper/display.js.map +1 -1
- package/cjs/helper/enums.js.map +1 -1
- package/cjs/helper/errorTools.js.map +1 -1
- package/cjs/helper/eventEmitter.js.map +1 -1
- package/cjs/helper/getZoneJsOriginalValue.js.map +1 -1
- package/cjs/helper/instrumentMethod.js.map +1 -1
- package/cjs/helper/lifeCycle.js.map +1 -1
- package/cjs/helper/limitModification.js.map +1 -1
- package/cjs/helper/mobileUtil.js.map +1 -1
- package/cjs/helper/monitor.js.map +1 -1
- package/cjs/helper/observable.js.map +1 -1
- package/cjs/helper/readBytesFromStream.js.map +1 -1
- package/cjs/helper/sanitize.js.map +1 -1
- package/cjs/helper/serialisation/contextManager.js.map +1 -1
- package/cjs/helper/serialisation/heavyCustomerDataWarning.js.map +1 -1
- package/cjs/helper/serialisation/jsonStringify.js.map +1 -1
- package/cjs/helper/serialisation/rowData.js.map +1 -1
- package/cjs/helper/serialisation/storedContextManager.js.map +1 -1
- package/cjs/helper/timer.js.map +1 -1
- package/cjs/helper/tools.js.map +1 -1
- package/cjs/helper/urlPolyfill.js.map +1 -1
- package/cjs/index.js.map +1 -1
- package/cjs/init.js.map +1 -1
- package/cjs/report/reportObservable.js.map +1 -1
- package/cjs/session/sessionConstants.js.map +1 -1
- package/cjs/session/sessionCookieStore.js.map +1 -1
- package/cjs/session/sessionManagement.js.map +1 -1
- package/cjs/session/sessionStore.js.map +1 -1
- package/cjs/synthetics/syntheticsWorkerValues.js.map +1 -1
- package/cjs/synthetics/usr.js.map +1 -1
- package/cjs/telemetry/telemetry.js.map +1 -1
- package/cjs/telemetry/types.js.map +1 -1
- package/cjs/tracekit/computeStackTrace.js.map +1 -1
- package/cjs/tracekit/index.js.map +1 -1
- package/cjs/tracekit/tracekit.js.map +1 -1
- package/cjs/transport/batch.js.map +1 -1
- 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.map +1 -1
- package/cjs/transport/sendWithRetryStrategy.js.map +1 -1
- package/cjs/transport/startBatchWithReplica.js.map +1 -1
- package/cjs/user/index.js.map +1 -1
- package/cjs/user/user.js.map +1 -1
- package/cjs/worker.js.map +1 -1
- package/esm/browser/addEventListener.js.map +1 -1
- package/esm/browser/cookie.js +2 -1
- package/esm/browser/cookie.js.map +1 -1
- package/esm/browser/fetchObservable.js.map +1 -1
- package/esm/browser/htmlDomUtils.js.map +1 -1
- package/esm/browser/pageExitObservable.js.map +1 -1
- package/esm/browser/runOnReadyState.js.map +1 -1
- package/esm/browser/scroll.js.map +1 -1
- package/esm/browser/xhrObservable.js.map +1 -1
- package/esm/configuration/configuration.js +13 -5
- package/esm/configuration/configuration.js.map +1 -1
- package/esm/configuration/transportConfiguration.js.map +1 -1
- package/esm/console/consoleObservable.js.map +1 -1
- package/esm/dataMap.js +3 -1
- package/esm/dataMap.js.map +1 -1
- package/esm/error/trackRuntimeError.js.map +1 -1
- package/esm/helper/boundedBuffer.js.map +1 -1
- package/esm/helper/byteUtils.js.map +1 -1
- package/esm/helper/catchUserErrors.js.map +1 -1
- package/esm/helper/contextHistory.js.map +1 -1
- package/esm/helper/createEventRateLimiter.js.map +1 -1
- package/esm/helper/deviceInfo.js.map +1 -1
- package/esm/helper/display.js.map +1 -1
- package/esm/helper/enums.js.map +1 -1
- package/esm/helper/errorTools.js.map +1 -1
- package/esm/helper/eventEmitter.js.map +1 -1
- package/esm/helper/getZoneJsOriginalValue.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.map +1 -1
- package/esm/helper/mobileUtil.js.map +1 -1
- package/esm/helper/monitor.js.map +1 -1
- package/esm/helper/observable.js.map +1 -1
- package/esm/helper/readBytesFromStream.js.map +1 -1
- package/esm/helper/sanitize.js.map +1 -1
- package/esm/helper/serialisation/contextManager.js.map +1 -1
- package/esm/helper/serialisation/heavyCustomerDataWarning.js.map +1 -1
- package/esm/helper/serialisation/jsonStringify.js.map +1 -1
- package/esm/helper/serialisation/rowData.js.map +1 -1
- package/esm/helper/serialisation/storedContextManager.js.map +1 -1
- package/esm/helper/timer.js.map +1 -1
- package/esm/helper/tools.js.map +1 -1
- package/esm/helper/urlPolyfill.js.map +1 -1
- package/esm/index.js.map +1 -1
- package/esm/init.js.map +1 -1
- package/esm/report/reportObservable.js.map +1 -1
- package/esm/session/sessionConstants.js.map +1 -1
- package/esm/session/sessionCookieStore.js.map +1 -1
- package/esm/session/sessionManagement.js.map +1 -1
- package/esm/session/sessionStore.js.map +1 -1
- package/esm/synthetics/syntheticsWorkerValues.js.map +1 -1
- package/esm/synthetics/usr.js.map +1 -1
- package/esm/telemetry/telemetry.js.map +1 -1
- package/esm/telemetry/types.js.map +1 -1
- package/esm/tracekit/computeStackTrace.js.map +1 -1
- package/esm/tracekit/index.js.map +1 -1
- package/esm/tracekit/tracekit.js.map +1 -1
- package/esm/transport/batch.js.map +1 -1
- 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.map +1 -1
- package/esm/transport/sendWithRetryStrategy.js.map +1 -1
- package/esm/transport/startBatchWithReplica.js.map +1 -1
- package/esm/user/index.js.map +1 -1
- package/esm/user/user.js.map +1 -1
- package/esm/worker.js.map +1 -1
- package/package.json +2 -2
- package/src/browser/cookie.js +3 -1
- package/src/configuration/configuration.js +17 -9
- package/src/dataMap.js +3 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eventBridge.js","names":["_init","require","getEventBridgeGlobal","getGlobalObject","FTWebViewJavascriptBridge","getEventBridge","eventBridgeGlobal","send","eventType","event","sendEvent","JSON","stringify","name","data","canUseEventBridge","bridge"],"sources":["../../src/transport/eventBridge.js"],"sourcesContent":["import { getGlobalObject } from '../init'\n\nfunction getEventBridgeGlobal() {\n return getGlobalObject().FTWebViewJavascriptBridge\n}\nexport function getEventBridge() {\n var eventBridgeGlobal = getEventBridgeGlobal()\n\n if (!eventBridgeGlobal) {\n return\n }\n\n return {\n send(eventType, event) {\n eventBridgeGlobal.sendEvent(\n JSON.stringify({ name: eventType, data: event })\n )\n }\n }\n}\nexport function canUseEventBridge() {\n var bridge = getEventBridge()\n return !!bridge\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,SAASC,oBAAoBA,CAAA,EAAG;EAC9B,OAAO,IAAAC,qBAAe,EAAC,CAAC,CAACC,yBAAyB;AACpD;AACO,SAASC,cAAcA,CAAA,EAAG;EAC/B,IAAIC,iBAAiB,GAAGJ,oBAAoB,CAAC,CAAC;EAE9C,IAAI,CAACI,iBAAiB,EAAE;IACtB;EACF;EAEA,OAAO;IACLC,IAAI,WAAAA,KAACC,SAAS,EAAEC,KAAK,EAAE;MACrBH,iBAAiB,CAACI,SAAS,CACzBC,IAAI,CAACC,SAAS,CAAC;QAAEC,IAAI,EAAEL,SAAS;QAAEM,IAAI,EAAEL;MAAM,CAAC,CACjD,CAAC;IACH;EACF,CAAC;AACH;AACO,SAASM,iBAAiBA,CAAA,EAAG;EAClC,IAAIC,MAAM,GAAGX,cAAc,CAAC,CAAC;EAC7B,OAAO,CAAC,CAACW,MAAM;AACjB"}
|
|
1
|
+
{"version":3,"file":"eventBridge.js","names":["_init","require","getEventBridgeGlobal","getGlobalObject","FTWebViewJavascriptBridge","getEventBridge","eventBridgeGlobal","send","eventType","event","sendEvent","JSON","stringify","name","data","canUseEventBridge","bridge"],"sources":["../../src/transport/eventBridge.js"],"sourcesContent":["import { getGlobalObject } from '../init'\n\nfunction getEventBridgeGlobal() {\n return getGlobalObject().FTWebViewJavascriptBridge\n}\nexport function getEventBridge() {\n var eventBridgeGlobal = getEventBridgeGlobal()\n\n if (!eventBridgeGlobal) {\n return\n }\n\n return {\n send(eventType, event) {\n eventBridgeGlobal.sendEvent(\n JSON.stringify({ name: eventType, data: event })\n )\n }\n }\n}\nexport function canUseEventBridge() {\n var bridge = getEventBridge()\n return !!bridge\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,SAASC,oBAAoBA,CAAA,EAAG;EAC9B,OAAO,IAAAC,qBAAe,EAAC,CAAC,CAACC,yBAAyB;AACpD;AACO,SAASC,cAAcA,CAAA,EAAG;EAC/B,IAAIC,iBAAiB,GAAGJ,oBAAoB,CAAC,CAAC;EAE9C,IAAI,CAACI,iBAAiB,EAAE;IACtB;EACF;EAEA,OAAO;IACLC,IAAI,WAAAA,KAACC,SAAS,EAAEC,KAAK,EAAE;MACrBH,iBAAiB,CAACI,SAAS,CACzBC,IAAI,CAACC,SAAS,CAAC;QAAEC,IAAI,EAAEL,SAAS;QAAEM,IAAI,EAAEL;MAAM,CAAC,CACjD,CAAC;IACH;EACF,CAAC;AACH;AACO,SAASM,iBAAiBA,CAAA,EAAG;EAClC,IAAIC,MAAM,GAAGX,cAAc,CAAC,CAAC;EAC7B,OAAO,CAAC,CAACW,MAAM;AACjB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flushController.js","names":["_observable","require","_timer","createFlushController","_ref","messagesLimit","bytesLimit","durationLimit","pageExitObservable","sessionExpireObservable","flushObservable","Observable","subscribe","event","flush","reason","currentBytesCount","currentMessagesCount","flushReason","messagesCount","bytesCount","cancelDurationLimitTimeout","notify","durationLimitTimeoutId","scheduleDurationLimitTimeout","undefined","setTimeout","clearTimeout","getMessagesCount","notifyBeforeAddMessage","messageBytesCount","notifyAfterAddMessage","notifyAfterRemoveMessage"],"sources":["../../src/transport/flushController.js"],"sourcesContent":["import { Observable } from '../helper/observable'\nimport { clearTimeout, setTimeout } from '../helper/timer'\n\n// type FlushReason = PageExitReason | 'duration_limit' | 'bytes_limit' | 'messages_limit' | 'session_expire'\n\n/**\n * Returns a \"flush controller\", responsible of notifying when flushing a pool of pending data needs\n * to happen. The implementation is designed to support both synchronous and asynchronous usages,\n * but relies on invariants described in each method documentation to keep a coherent state.\n */\nexport function createFlushController({\n messagesLimit,\n bytesLimit,\n durationLimit,\n pageExitObservable,\n sessionExpireObservable\n}) {\n var flushObservable = new Observable()\n\n pageExitObservable.subscribe(function (event) {\n return flush(event.reason)\n })\n sessionExpireObservable.subscribe(function () {\n return flush('session_expire')\n })\n\n var currentBytesCount = 0\n var currentMessagesCount = 0\n\n function flush(flushReason) {\n if (currentMessagesCount === 0) {\n return\n }\n\n var messagesCount = currentMessagesCount\n var bytesCount = currentBytesCount\n\n currentMessagesCount = 0\n currentBytesCount = 0\n cancelDurationLimitTimeout()\n\n flushObservable.notify({\n reason: flushReason,\n messagesCount: messagesCount,\n bytesCount: bytesCount\n })\n }\n\n var durationLimitTimeoutId\n function scheduleDurationLimitTimeout() {\n if (durationLimitTimeoutId === undefined) {\n durationLimitTimeoutId = setTimeout(function () {\n flush('duration_limit')\n }, durationLimit)\n }\n }\n\n function cancelDurationLimitTimeout() {\n clearTimeout(durationLimitTimeoutId)\n durationLimitTimeoutId = undefined\n }\n\n return {\n flushObservable: flushObservable,\n getMessagesCount: function () {\n return currentMessagesCount\n },\n\n /**\n * Notifies that a message will be added to a pool of pending messages waiting to be flushed.\n *\n * This function needs to be called synchronously, right before adding the message, so no flush\n * event can happen after `notifyBeforeAddMessage` and before adding the message.\n */\n notifyBeforeAddMessage: function (messageBytesCount) {\n if (currentBytesCount + messageBytesCount >= bytesLimit) {\n flush('bytes_limit')\n }\n // Consider the message to be added now rather than in `notifyAfterAddMessage`, because if no\n // message was added yet and `notifyAfterAddMessage` is called asynchronously, we still want\n // to notify when a flush is needed (for example on page exit).\n currentMessagesCount += 1\n currentBytesCount += messageBytesCount\n scheduleDurationLimitTimeout()\n },\n\n /**\n * Notifies that a message *was* added to a pool of pending messages waiting to be flushed.\n *\n * This function can be called asynchronously after the message was added, but in this case it\n * should not be called if a flush event occurred in between.\n */\n notifyAfterAddMessage: function () {\n if (currentMessagesCount >= messagesLimit) {\n flush('messages_limit')\n } else if (currentBytesCount >= bytesLimit) {\n flush('bytes_limit')\n }\n },\n\n /**\n * Notifies that a message was removed from a pool of pending messages waiting to be flushed.\n *\n * This function needs to be called synchronously, right after removing the message, so no flush\n * event can happen after removing the message and before `notifyAfterRemoveMessage`.\n */\n notifyAfterRemoveMessage: function (messageBytesCount) {\n currentBytesCount -= messageBytesCount\n currentMessagesCount -= 1\n if (currentMessagesCount === 0) {\n cancelDurationLimitTimeout()\n }\n }\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACO,SAASE,qBAAqBA,CAAAC,IAAA,EAMlC;EAAA,IALDC,aAAa,GAAAD,IAAA,CAAbC,aAAa;IACbC,UAAU,GAAAF,IAAA,CAAVE,UAAU;IACVC,aAAa,GAAAH,IAAA,CAAbG,aAAa;IACbC,kBAAkB,GAAAJ,IAAA,CAAlBI,kBAAkB;IAClBC,uBAAuB,GAAAL,IAAA,CAAvBK,uBAAuB;EAEvB,IAAIC,eAAe,GAAG,IAAIC,sBAAU,CAAC,CAAC;EAEtCH,kBAAkB,CAACI,SAAS,CAAC,UAAUC,KAAK,EAAE;IAC5C,OAAOC,KAAK,CAACD,KAAK,CAACE,MAAM,CAAC;EAC5B,CAAC,CAAC;EACFN,uBAAuB,CAACG,SAAS,CAAC,YAAY;IAC5C,OAAOE,KAAK,CAAC,gBAAgB,CAAC;EAChC,CAAC,CAAC;EAEF,IAAIE,iBAAiB,GAAG,CAAC;EACzB,IAAIC,oBAAoB,GAAG,CAAC;EAE5B,SAASH,KAAKA,CAACI,WAAW,EAAE;IAC1B,IAAID,oBAAoB,KAAK,CAAC,EAAE;MAC9B;IACF;IAEA,IAAIE,aAAa,GAAGF,oBAAoB;IACxC,IAAIG,UAAU,GAAGJ,iBAAiB;IAElCC,oBAAoB,GAAG,CAAC;IACxBD,iBAAiB,GAAG,CAAC;IACrBK,0BAA0B,CAAC,CAAC;IAE5BX,eAAe,CAACY,MAAM,CAAC;MACrBP,MAAM,EAAEG,WAAW;MACnBC,aAAa,EAAEA,aAAa;MAC5BC,UAAU,EAAEA;IACd,CAAC,CAAC;EACJ;EAEA,IAAIG,sBAAsB;EAC1B,SAASC,4BAA4BA,CAAA,EAAG;IACtC,IAAID,sBAAsB,KAAKE,SAAS,EAAE;MACxCF,sBAAsB,GAAG,IAAAG,iBAAU,EAAC,YAAY;QAC9CZ,KAAK,CAAC,gBAAgB,CAAC;MACzB,CAAC,EAAEP,aAAa,CAAC;IACnB;EACF;EAEA,SAASc,0BAA0BA,CAAA,EAAG;IACpC,IAAAM,mBAAY,EAACJ,sBAAsB,CAAC;IACpCA,sBAAsB,GAAGE,SAAS;EACpC;EAEA,OAAO;IACLf,eAAe,EAAEA,eAAe;IAChCkB,gBAAgB,EAAE,SAAAA,iBAAA,EAAY;MAC5B,OAAOX,oBAAoB;IAC7B,CAAC;IAED;AACJ;AACA;AACA;AACA;AACA;IACIY,sBAAsB,EAAE,SAAAA,uBAAUC,iBAAiB,EAAE;MACnD,IAAId,iBAAiB,GAAGc,iBAAiB,IAAIxB,UAAU,EAAE;QACvDQ,KAAK,CAAC,aAAa,CAAC;MACtB;MACA;MACA;MACA;MACAG,oBAAoB,IAAI,CAAC;MACzBD,iBAAiB,IAAIc,iBAAiB;MACtCN,4BAA4B,CAAC,CAAC;IAChC,CAAC;IAED;AACJ;AACA;AACA;AACA;AACA;IACIO,qBAAqB,EAAE,SAAAA,sBAAA,EAAY;MACjC,IAAId,oBAAoB,IAAIZ,aAAa,EAAE;QACzCS,KAAK,CAAC,gBAAgB,CAAC;MACzB,CAAC,MAAM,IAAIE,iBAAiB,IAAIV,UAAU,EAAE;QAC1CQ,KAAK,CAAC,aAAa,CAAC;MACtB;IACF,CAAC;IAED;AACJ;AACA;AACA;AACA;AACA;IACIkB,wBAAwB,EAAE,SAAAA,yBAAUF,iBAAiB,EAAE;MACrDd,iBAAiB,IAAIc,iBAAiB;MACtCb,oBAAoB,IAAI,CAAC;MACzB,IAAIA,oBAAoB,KAAK,CAAC,EAAE;QAC9BI,0BAA0B,CAAC,CAAC;MAC9B;IACF;EACF,CAAC;AACH"}
|
|
1
|
+
{"version":3,"file":"flushController.js","names":["_observable","require","_timer","createFlushController","_ref","messagesLimit","bytesLimit","durationLimit","pageExitObservable","sessionExpireObservable","flushObservable","Observable","subscribe","event","flush","reason","currentBytesCount","currentMessagesCount","flushReason","messagesCount","bytesCount","cancelDurationLimitTimeout","notify","durationLimitTimeoutId","scheduleDurationLimitTimeout","undefined","setTimeout","clearTimeout","getMessagesCount","notifyBeforeAddMessage","messageBytesCount","notifyAfterAddMessage","notifyAfterRemoveMessage"],"sources":["../../src/transport/flushController.js"],"sourcesContent":["import { Observable } from '../helper/observable'\nimport { clearTimeout, setTimeout } from '../helper/timer'\n\n// type FlushReason = PageExitReason | 'duration_limit' | 'bytes_limit' | 'messages_limit' | 'session_expire'\n\n/**\n * Returns a \"flush controller\", responsible of notifying when flushing a pool of pending data needs\n * to happen. The implementation is designed to support both synchronous and asynchronous usages,\n * but relies on invariants described in each method documentation to keep a coherent state.\n */\nexport function createFlushController({\n messagesLimit,\n bytesLimit,\n durationLimit,\n pageExitObservable,\n sessionExpireObservable\n}) {\n var flushObservable = new Observable()\n\n pageExitObservable.subscribe(function (event) {\n return flush(event.reason)\n })\n sessionExpireObservable.subscribe(function () {\n return flush('session_expire')\n })\n\n var currentBytesCount = 0\n var currentMessagesCount = 0\n\n function flush(flushReason) {\n if (currentMessagesCount === 0) {\n return\n }\n\n var messagesCount = currentMessagesCount\n var bytesCount = currentBytesCount\n\n currentMessagesCount = 0\n currentBytesCount = 0\n cancelDurationLimitTimeout()\n\n flushObservable.notify({\n reason: flushReason,\n messagesCount: messagesCount,\n bytesCount: bytesCount\n })\n }\n\n var durationLimitTimeoutId\n function scheduleDurationLimitTimeout() {\n if (durationLimitTimeoutId === undefined) {\n durationLimitTimeoutId = setTimeout(function () {\n flush('duration_limit')\n }, durationLimit)\n }\n }\n\n function cancelDurationLimitTimeout() {\n clearTimeout(durationLimitTimeoutId)\n durationLimitTimeoutId = undefined\n }\n\n return {\n flushObservable: flushObservable,\n getMessagesCount: function () {\n return currentMessagesCount\n },\n\n /**\n * Notifies that a message will be added to a pool of pending messages waiting to be flushed.\n *\n * This function needs to be called synchronously, right before adding the message, so no flush\n * event can happen after `notifyBeforeAddMessage` and before adding the message.\n */\n notifyBeforeAddMessage: function (messageBytesCount) {\n if (currentBytesCount + messageBytesCount >= bytesLimit) {\n flush('bytes_limit')\n }\n // Consider the message to be added now rather than in `notifyAfterAddMessage`, because if no\n // message was added yet and `notifyAfterAddMessage` is called asynchronously, we still want\n // to notify when a flush is needed (for example on page exit).\n currentMessagesCount += 1\n currentBytesCount += messageBytesCount\n scheduleDurationLimitTimeout()\n },\n\n /**\n * Notifies that a message *was* added to a pool of pending messages waiting to be flushed.\n *\n * This function can be called asynchronously after the message was added, but in this case it\n * should not be called if a flush event occurred in between.\n */\n notifyAfterAddMessage: function () {\n if (currentMessagesCount >= messagesLimit) {\n flush('messages_limit')\n } else if (currentBytesCount >= bytesLimit) {\n flush('bytes_limit')\n }\n },\n\n /**\n * Notifies that a message was removed from a pool of pending messages waiting to be flushed.\n *\n * This function needs to be called synchronously, right after removing the message, so no flush\n * event can happen after removing the message and before `notifyAfterRemoveMessage`.\n */\n notifyAfterRemoveMessage: function (messageBytesCount) {\n currentBytesCount -= messageBytesCount\n currentMessagesCount -= 1\n if (currentMessagesCount === 0) {\n cancelDurationLimitTimeout()\n }\n }\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACO,SAASE,qBAAqBA,CAAAC,IAAA,EAMlC;EAAA,IALDC,aAAa,GAAAD,IAAA,CAAbC,aAAa;IACbC,UAAU,GAAAF,IAAA,CAAVE,UAAU;IACVC,aAAa,GAAAH,IAAA,CAAbG,aAAa;IACbC,kBAAkB,GAAAJ,IAAA,CAAlBI,kBAAkB;IAClBC,uBAAuB,GAAAL,IAAA,CAAvBK,uBAAuB;EAEvB,IAAIC,eAAe,GAAG,IAAIC,sBAAU,CAAC,CAAC;EAEtCH,kBAAkB,CAACI,SAAS,CAAC,UAAUC,KAAK,EAAE;IAC5C,OAAOC,KAAK,CAACD,KAAK,CAACE,MAAM,CAAC;EAC5B,CAAC,CAAC;EACFN,uBAAuB,CAACG,SAAS,CAAC,YAAY;IAC5C,OAAOE,KAAK,CAAC,gBAAgB,CAAC;EAChC,CAAC,CAAC;EAEF,IAAIE,iBAAiB,GAAG,CAAC;EACzB,IAAIC,oBAAoB,GAAG,CAAC;EAE5B,SAASH,KAAKA,CAACI,WAAW,EAAE;IAC1B,IAAID,oBAAoB,KAAK,CAAC,EAAE;MAC9B;IACF;IAEA,IAAIE,aAAa,GAAGF,oBAAoB;IACxC,IAAIG,UAAU,GAAGJ,iBAAiB;IAElCC,oBAAoB,GAAG,CAAC;IACxBD,iBAAiB,GAAG,CAAC;IACrBK,0BAA0B,CAAC,CAAC;IAE5BX,eAAe,CAACY,MAAM,CAAC;MACrBP,MAAM,EAAEG,WAAW;MACnBC,aAAa,EAAEA,aAAa;MAC5BC,UAAU,EAAEA;IACd,CAAC,CAAC;EACJ;EAEA,IAAIG,sBAAsB;EAC1B,SAASC,4BAA4BA,CAAA,EAAG;IACtC,IAAID,sBAAsB,KAAKE,SAAS,EAAE;MACxCF,sBAAsB,GAAG,IAAAG,iBAAU,EAAC,YAAY;QAC9CZ,KAAK,CAAC,gBAAgB,CAAC;MACzB,CAAC,EAAEP,aAAa,CAAC;IACnB;EACF;EAEA,SAASc,0BAA0BA,CAAA,EAAG;IACpC,IAAAM,mBAAY,EAACJ,sBAAsB,CAAC;IACpCA,sBAAsB,GAAGE,SAAS;EACpC;EAEA,OAAO;IACLf,eAAe,EAAEA,eAAe;IAChCkB,gBAAgB,EAAE,SAAAA,iBAAA,EAAY;MAC5B,OAAOX,oBAAoB;IAC7B,CAAC;IAED;AACJ;AACA;AACA;AACA;AACA;IACIY,sBAAsB,EAAE,SAAAA,uBAAUC,iBAAiB,EAAE;MACnD,IAAId,iBAAiB,GAAGc,iBAAiB,IAAIxB,UAAU,EAAE;QACvDQ,KAAK,CAAC,aAAa,CAAC;MACtB;MACA;MACA;MACA;MACAG,oBAAoB,IAAI,CAAC;MACzBD,iBAAiB,IAAIc,iBAAiB;MACtCN,4BAA4B,CAAC,CAAC;IAChC,CAAC;IAED;AACJ;AACA;AACA;AACA;AACA;IACIO,qBAAqB,EAAE,SAAAA,sBAAA,EAAY;MACjC,IAAId,oBAAoB,IAAIZ,aAAa,EAAE;QACzCS,KAAK,CAAC,gBAAgB,CAAC;MACzB,CAAC,MAAM,IAAIE,iBAAiB,IAAIV,UAAU,EAAE;QAC1CQ,KAAK,CAAC,aAAa,CAAC;MACtB;IACF,CAAC;IAED;AACJ;AACA;AACA;AACA;AACA;IACIkB,wBAAwB,EAAE,SAAAA,yBAAUF,iBAAiB,EAAE;MACrDd,iBAAiB,IAAIc,iBAAiB;MACtCb,oBAAoB,IAAI,CAAC;MACzB,IAAIA,oBAAoB,KAAK,CAAC,EAAE;QAC9BI,0BAA0B,CAAC,CAAC;MAC9B;IACF;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpRequest.js","names":["_sendWithRetryStrategy","require","_addEventListener","_monitor","addBatchPrecision","url","indexOf","createHttpRequest","endpointUrl","bytesLimit","sendContentTypeByJson","reportError","contentType","undefined","retryState","newRetryState","sendStrategyForRetry","payload","onResponse","fetchKeepAliveStrategy","send","sendWithRetryStrategy","sendOnExit","sendBeaconStrategy","data","bytesCount","canUseBeacon","navigator","sendBeacon","beaconData","Blob","type","isQueued","e","sendXHR","canUseKeepAlive","isKeepAliveSupported","fetchOption","method","body","keepalive","mode","headers","fetch","then","monitor","response","status","window","Request","_unused","request","XMLHttpRequest","open","setRequestHeader","addEventListener","once"],"sources":["../../src/transport/httpRequest.js"],"sourcesContent":["import { newRetryState, sendWithRetryStrategy } from './sendWithRetryStrategy'\nimport { addEventListener } from '../browser/addEventListener'\nimport { monitor } from '../helper/monitor'\n/**\n * Use POST request without content type to:\n * - avoid CORS preflight requests\n * - allow usage of sendBeacon\n *\n * multiple elements are sent separated by \\n in order\n * to be parsed correctly without content type header\n */\nfunction addBatchPrecision(url) {\n if (!url) return url\n return url + (url.indexOf('?') === -1 ? '?' : '&') + 'precision=ms'\n}\nexport function createHttpRequest(\n endpointUrl,\n bytesLimit,\n sendContentTypeByJson,\n reportError\n) {\n var contentType = sendContentTypeByJson\n ? 'application/json; charset=UTF-8'\n : undefined\n var retryState = newRetryState()\n var sendStrategyForRetry = function (payload, onResponse) {\n return fetchKeepAliveStrategy(\n endpointUrl,\n bytesLimit,\n contentType,\n payload,\n onResponse\n )\n }\n\n return {\n send: function (payload) {\n sendWithRetryStrategy(\n payload,\n retryState,\n sendStrategyForRetry,\n endpointUrl,\n reportError\n )\n },\n /**\n * Since fetch keepalive behaves like regular fetch on Firefox,\n * keep using sendBeaconStrategy on exit\n */\n sendOnExit: function (payload) {\n sendBeaconStrategy(endpointUrl, bytesLimit, contentType, payload)\n }\n }\n}\n\nfunction sendBeaconStrategy(endpointUrl, bytesLimit, contentType, payload) {\n var data = payload.data\n var bytesCount = payload.bytesCount\n var url = addBatchPrecision(endpointUrl)\n var canUseBeacon = !!navigator.sendBeacon && bytesCount < bytesLimit\n if (canUseBeacon) {\n try {\n var beaconData\n if (contentType) {\n beaconData = new Blob([data], {\n type: contentType\n })\n } else {\n beaconData = data\n }\n\n var isQueued = navigator.sendBeacon(url, beaconData)\n\n if (isQueued) {\n return\n }\n } catch (e) {\n // reportBeaconError(e)\n }\n }\n sendXHR(url, contentType, data)\n}\n\nexport function fetchKeepAliveStrategy(\n endpointUrl,\n bytesLimit,\n contentType,\n payload,\n onResponse\n) {\n var data = payload.data\n var bytesCount = payload.bytesCount\n var url = addBatchPrecision(endpointUrl)\n var canUseKeepAlive = isKeepAliveSupported() && bytesCount < bytesLimit\n if (canUseKeepAlive) {\n var fetchOption = {\n method: 'POST',\n body: data,\n keepalive: true,\n mode: 'cors'\n }\n if (contentType) {\n fetchOption.headers = {\n 'Content-Type': contentType\n }\n }\n fetch(url, fetchOption).then(\n monitor(function (response) {\n if (typeof onResponse === 'function') {\n onResponse({ status: response.status, type: response.type })\n }\n }),\n monitor(function () {\n // failed to queue the request\n sendXHR(url, contentType, data, onResponse)\n })\n )\n } else {\n sendXHR(url, contentType, data, onResponse)\n }\n}\n\nfunction isKeepAliveSupported() {\n // Request can throw, cf https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#errors\n try {\n return window.Request && 'keepalive' in new Request('http://a')\n } catch {\n return false\n }\n}\n\nfunction sendXHR(url, contentType, data, onResponse) {\n const request = new XMLHttpRequest()\n request.open('POST', url, true)\n if (contentType) {\n //application/json; charset=UTF-8\n request.setRequestHeader('Content-Type', contentType)\n }\n\n addEventListener(\n request,\n 'loadend',\n function () {\n if (typeof onResponse === 'function') {\n onResponse({ status: request.status })\n }\n },\n {\n once: true\n }\n )\n request.send(data)\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASG,iBAAiBA,CAACC,GAAG,EAAE;EAC9B,IAAI,CAACA,GAAG,EAAE,OAAOA,GAAG;EACpB,OAAOA,GAAG,IAAIA,GAAG,CAACC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,cAAc;AACrE;AACO,SAASC,iBAAiBA,CAC/BC,WAAW,EACXC,UAAU,EACVC,qBAAqB,EACrBC,WAAW,EACX;EACA,IAAIC,WAAW,GAAGF,qBAAqB,GACnC,iCAAiC,GACjCG,SAAS;EACb,IAAIC,UAAU,GAAG,IAAAC,oCAAa,EAAC,CAAC;EAChC,IAAIC,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAaC,OAAO,EAAEC,UAAU,EAAE;IACxD,OAAOC,sBAAsB,CAC3BX,WAAW,EACXC,UAAU,EACVG,WAAW,EACXK,OAAO,EACPC,UACF,CAAC;EACH,CAAC;EAED,OAAO;IACLE,IAAI,EAAE,SAAAA,KAAUH,OAAO,EAAE;MACvB,IAAAI,4CAAqB,EACnBJ,OAAO,EACPH,UAAU,EACVE,oBAAoB,EACpBR,WAAW,EACXG,WACF,CAAC;IACH,CAAC;IACD;AACJ;AACA;AACA;IACIW,UAAU,EAAE,SAAAA,WAAUL,OAAO,EAAE;MAC7BM,kBAAkB,CAACf,WAAW,EAAEC,UAAU,EAAEG,WAAW,EAAEK,OAAO,CAAC;IACnE;EACF,CAAC;AACH;AAEA,SAASM,kBAAkBA,CAACf,WAAW,EAAEC,UAAU,EAAEG,WAAW,EAAEK,OAAO,EAAE;EACzE,IAAIO,IAAI,GAAGP,OAAO,CAACO,IAAI;EACvB,IAAIC,UAAU,GAAGR,OAAO,CAACQ,UAAU;EACnC,IAAIpB,GAAG,GAAGD,iBAAiB,CAACI,WAAW,CAAC;EACxC,IAAIkB,YAAY,GAAG,CAAC,CAACC,SAAS,CAACC,UAAU,IAAIH,UAAU,GAAGhB,UAAU;EACpE,IAAIiB,YAAY,EAAE;IAChB,IAAI;MACF,IAAIG,UAAU;MACd,IAAIjB,WAAW,EAAE;QACfiB,UAAU,GAAG,IAAIC,IAAI,CAAC,CAACN,IAAI,CAAC,EAAE;UAC5BO,IAAI,EAAEnB;QACR,CAAC,CAAC;MACJ,CAAC,MAAM;QACLiB,UAAU,GAAGL,IAAI;MACnB;MAEA,IAAIQ,QAAQ,GAAGL,SAAS,CAACC,UAAU,CAACvB,GAAG,EAAEwB,UAAU,CAAC;MAEpD,IAAIG,QAAQ,EAAE;QACZ;MACF;IACF,CAAC,CAAC,OAAOC,CAAC,EAAE;MACV;IAAA;EAEJ;EACAC,OAAO,CAAC7B,GAAG,EAAEO,WAAW,EAAEY,IAAI,CAAC;AACjC;AAEO,SAASL,sBAAsBA,CACpCX,WAAW,EACXC,UAAU,EACVG,WAAW,EACXK,OAAO,EACPC,UAAU,EACV;EACA,IAAIM,IAAI,GAAGP,OAAO,CAACO,IAAI;EACvB,IAAIC,UAAU,GAAGR,OAAO,CAACQ,UAAU;EACnC,IAAIpB,GAAG,GAAGD,iBAAiB,CAACI,WAAW,CAAC;EACxC,IAAI2B,eAAe,GAAGC,oBAAoB,CAAC,CAAC,IAAIX,UAAU,GAAGhB,UAAU;EACvE,IAAI0B,eAAe,EAAE;IACnB,IAAIE,WAAW,GAAG;MAChBC,MAAM,EAAE,MAAM;MACdC,IAAI,EAAEf,IAAI;MACVgB,SAAS,EAAE,IAAI;MACfC,IAAI,EAAE;IACR,CAAC;IACD,IAAI7B,WAAW,EAAE;MACfyB,WAAW,CAACK,OAAO,GAAG;QACpB,cAAc,EAAE9B;MAClB,CAAC;IACH;IACA+B,KAAK,CAACtC,GAAG,EAAEgC,WAAW,CAAC,CAACO,IAAI,CAC1B,IAAAC,gBAAO,EAAC,UAAUC,QAAQ,EAAE;MAC1B,IAAI,OAAO5B,UAAU,KAAK,UAAU,EAAE;QACpCA,UAAU,CAAC;UAAE6B,MAAM,EAAED,QAAQ,CAACC,MAAM;UAAEhB,IAAI,EAAEe,QAAQ,CAACf;QAAK,CAAC,CAAC;MAC9D;IACF,CAAC,CAAC,EACF,IAAAc,gBAAO,EAAC,YAAY;MAClB;MACAX,OAAO,CAAC7B,GAAG,EAAEO,WAAW,EAAEY,IAAI,EAAEN,UAAU,CAAC;IAC7C,CAAC,CACH,CAAC;EACH,CAAC,MAAM;IACLgB,OAAO,CAAC7B,GAAG,EAAEO,WAAW,EAAEY,IAAI,EAAEN,UAAU,CAAC;EAC7C;AACF;AAEA,SAASkB,oBAAoBA,CAAA,EAAG;EAC9B;EACA,IAAI;IACF,OAAOY,MAAM,CAACC,OAAO,IAAI,WAAW,IAAI,IAAIA,OAAO,CAAC,UAAU,CAAC;EACjE,CAAC,CAAC,OAAAC,OAAA,EAAM;IACN,OAAO,KAAK;EACd;AACF;AAEA,SAAShB,OAAOA,CAAC7B,GAAG,EAAEO,WAAW,EAAEY,IAAI,EAAEN,UAAU,EAAE;EACnD,IAAMiC,OAAO,GAAG,IAAIC,cAAc,CAAC,CAAC;EACpCD,OAAO,CAACE,IAAI,CAAC,MAAM,EAAEhD,GAAG,EAAE,IAAI,CAAC;EAC/B,IAAIO,WAAW,EAAE;IACf;IACAuC,OAAO,CAACG,gBAAgB,CAAC,cAAc,EAAE1C,WAAW,CAAC;EACvD;EAEA,IAAA2C,kCAAgB,EACdJ,OAAO,EACP,SAAS,EACT,YAAY;IACV,IAAI,OAAOjC,UAAU,KAAK,UAAU,EAAE;MACpCA,UAAU,CAAC;QAAE6B,MAAM,EAAEI,OAAO,CAACJ;MAAO,CAAC,CAAC;IACxC;EACF,CAAC,EACD;IACES,IAAI,EAAE;EACR,CACF,CAAC;EACDL,OAAO,CAAC/B,IAAI,CAACI,IAAI,CAAC;AACpB"}
|
|
1
|
+
{"version":3,"file":"httpRequest.js","names":["_sendWithRetryStrategy","require","_addEventListener","_monitor","addBatchPrecision","url","indexOf","createHttpRequest","endpointUrl","bytesLimit","sendContentTypeByJson","reportError","contentType","undefined","retryState","newRetryState","sendStrategyForRetry","payload","onResponse","fetchKeepAliveStrategy","send","sendWithRetryStrategy","sendOnExit","sendBeaconStrategy","data","bytesCount","canUseBeacon","navigator","sendBeacon","beaconData","Blob","type","isQueued","e","sendXHR","canUseKeepAlive","isKeepAliveSupported","fetchOption","method","body","keepalive","mode","headers","fetch","then","monitor","response","status","window","Request","_unused","request","XMLHttpRequest","open","setRequestHeader","addEventListener","once"],"sources":["../../src/transport/httpRequest.js"],"sourcesContent":["import { newRetryState, sendWithRetryStrategy } from './sendWithRetryStrategy'\nimport { addEventListener } from '../browser/addEventListener'\nimport { monitor } from '../helper/monitor'\n/**\n * Use POST request without content type to:\n * - avoid CORS preflight requests\n * - allow usage of sendBeacon\n *\n * multiple elements are sent separated by \\n in order\n * to be parsed correctly without content type header\n */\nfunction addBatchPrecision(url) {\n if (!url) return url\n return url + (url.indexOf('?') === -1 ? '?' : '&') + 'precision=ms'\n}\nexport function createHttpRequest(\n endpointUrl,\n bytesLimit,\n sendContentTypeByJson,\n reportError\n) {\n var contentType = sendContentTypeByJson\n ? 'application/json; charset=UTF-8'\n : undefined\n var retryState = newRetryState()\n var sendStrategyForRetry = function (payload, onResponse) {\n return fetchKeepAliveStrategy(\n endpointUrl,\n bytesLimit,\n contentType,\n payload,\n onResponse\n )\n }\n\n return {\n send: function (payload) {\n sendWithRetryStrategy(\n payload,\n retryState,\n sendStrategyForRetry,\n endpointUrl,\n reportError\n )\n },\n /**\n * Since fetch keepalive behaves like regular fetch on Firefox,\n * keep using sendBeaconStrategy on exit\n */\n sendOnExit: function (payload) {\n sendBeaconStrategy(endpointUrl, bytesLimit, contentType, payload)\n }\n }\n}\n\nfunction sendBeaconStrategy(endpointUrl, bytesLimit, contentType, payload) {\n var data = payload.data\n var bytesCount = payload.bytesCount\n var url = addBatchPrecision(endpointUrl)\n var canUseBeacon = !!navigator.sendBeacon && bytesCount < bytesLimit\n if (canUseBeacon) {\n try {\n var beaconData\n if (contentType) {\n beaconData = new Blob([data], {\n type: contentType\n })\n } else {\n beaconData = data\n }\n\n var isQueued = navigator.sendBeacon(url, beaconData)\n\n if (isQueued) {\n return\n }\n } catch (e) {\n // reportBeaconError(e)\n }\n }\n sendXHR(url, contentType, data)\n}\n\nexport function fetchKeepAliveStrategy(\n endpointUrl,\n bytesLimit,\n contentType,\n payload,\n onResponse\n) {\n var data = payload.data\n var bytesCount = payload.bytesCount\n var url = addBatchPrecision(endpointUrl)\n var canUseKeepAlive = isKeepAliveSupported() && bytesCount < bytesLimit\n if (canUseKeepAlive) {\n var fetchOption = {\n method: 'POST',\n body: data,\n keepalive: true,\n mode: 'cors'\n }\n if (contentType) {\n fetchOption.headers = {\n 'Content-Type': contentType\n }\n }\n fetch(url, fetchOption).then(\n monitor(function (response) {\n if (typeof onResponse === 'function') {\n onResponse({ status: response.status, type: response.type })\n }\n }),\n monitor(function () {\n // failed to queue the request\n sendXHR(url, contentType, data, onResponse)\n })\n )\n } else {\n sendXHR(url, contentType, data, onResponse)\n }\n}\n\nfunction isKeepAliveSupported() {\n // Request can throw, cf https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#errors\n try {\n return window.Request && 'keepalive' in new Request('http://a')\n } catch {\n return false\n }\n}\n\nfunction sendXHR(url, contentType, data, onResponse) {\n const request = new XMLHttpRequest()\n request.open('POST', url, true)\n if (contentType) {\n //application/json; charset=UTF-8\n request.setRequestHeader('Content-Type', contentType)\n }\n\n addEventListener(\n request,\n 'loadend',\n function () {\n if (typeof onResponse === 'function') {\n onResponse({ status: request.status })\n }\n },\n {\n once: true\n }\n )\n request.send(data)\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_httpRequest","require","_batch","_startBatchWithReplica","_flushController","_eventBridge"],"sources":["../../src/transport/index.js"],"sourcesContent":["export { createHttpRequest } from './httpRequest'\nexport { Batch, processedMessageByDataMap } from './batch'\nexport { startBatchWithReplica } from './startBatchWithReplica'\nexport { createFlushController } from './flushController'\nexport { getEventBridge, canUseEventBridge } from './eventBridge'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AACA,IAAAG,gBAAA,GAAAH,OAAA;AACA,IAAAI,YAAA,GAAAJ,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_httpRequest","require","_batch","_startBatchWithReplica","_flushController","_eventBridge"],"sources":["../../src/transport/index.js"],"sourcesContent":["export { createHttpRequest } from './httpRequest'\nexport { Batch, processedMessageByDataMap } from './batch'\nexport { startBatchWithReplica } from './startBatchWithReplica'\nexport { createFlushController } from './flushController'\nexport { getEventBridge, canUseEventBridge } from './eventBridge'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AACA,IAAAG,gBAAA,GAAAH,OAAA;AACA,IAAAI,YAAA,GAAAJ,OAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sendWithRetryStrategy.js","names":["_tools","require","_byteUtils","_errorTools","_timer","MAX_ONGOING_BYTES_COUNT","ONE_KIBI_BYTE","exports","MAX_ONGOING_REQUESTS","MAX_QUEUE_BYTES_COUNT","ONE_MEBI_BYTE","MAX_BACKOFF_TIME","ONE_SECOND","INITIAL_BACKOFF_TIME","TransportStatus","UP","FAILURE_DETECTED","DOWN","RetryReason","AFTER_SUCCESS","AFTER_RESUME","sendWithRetryStrategy","payload","state","sendStrategy","endpointUrl","reportError","transportStatus","queuedPayloads","size","bandwidthMonitor","canHandle","send","onSuccess","retryQueuedPayloads","onFailure","enqueue","scheduleRetry","setTimeout","first","dequeue","currentBackoffTime","Math","min","responseData","add","response","remove","shouldRetryRequest","ongoingRequestCount","lastFailureStatus","status","reason","isFull","queueFullReported","message","source","ErrorSource","AGENT","startClocks","clocksNow","previousQueue","newPayloadQueue","type","navigator","onLine","newRetryState","newBandwidthMonitor","queue","bytesCount","push","shift","length","ongoingByteCount"],"sources":["../../src/transport/sendWithRetryStrategy.js"],"sourcesContent":["import { clocksNow, ONE_SECOND } from '../helper/tools'\nimport { ONE_MEBI_BYTE, ONE_KIBI_BYTE } from '../helper/byteUtils'\nimport { ErrorSource } from '../helper/errorTools'\nimport { setTimeout } from '../helper/timer'\nexport var MAX_ONGOING_BYTES_COUNT = 80 * ONE_KIBI_BYTE\nexport var MAX_ONGOING_REQUESTS = 32\nexport var MAX_QUEUE_BYTES_COUNT = 3 * ONE_MEBI_BYTE\nexport var MAX_BACKOFF_TIME = 256 * ONE_SECOND\nexport var INITIAL_BACKOFF_TIME = ONE_SECOND\n\nvar TransportStatus = {\n UP: 0,\n FAILURE_DETECTED: 1,\n DOWN: 2\n}\n\nvar RetryReason = {\n AFTER_SUCCESS: 0,\n AFTER_RESUME: 1\n}\n\nexport function sendWithRetryStrategy(\n payload,\n state,\n sendStrategy,\n endpointUrl,\n reportError\n) {\n if (\n state.transportStatus === TransportStatus.UP &&\n state.queuedPayloads.size() === 0 &&\n state.bandwidthMonitor.canHandle(payload)\n ) {\n send(payload, state, sendStrategy, {\n onSuccess: function () {\n return retryQueuedPayloads(\n RetryReason.AFTER_SUCCESS,\n state,\n sendStrategy,\n endpointUrl,\n reportError\n )\n },\n onFailure: function () {\n state.queuedPayloads.enqueue(payload)\n scheduleRetry(state, sendStrategy, endpointUrl, reportError)\n }\n })\n } else {\n state.queuedPayloads.enqueue(payload)\n }\n}\n\nfunction scheduleRetry(state, sendStrategy, endpointUrl, reportError) {\n if (state.transportStatus !== TransportStatus.DOWN) {\n return\n }\n setTimeout(function () {\n var payload = state.queuedPayloads.first()\n send(payload, state, sendStrategy, {\n onSuccess: function () {\n state.queuedPayloads.dequeue()\n\n state.currentBackoffTime = INITIAL_BACKOFF_TIME\n retryQueuedPayloads(\n RetryReason.AFTER_RESUME,\n state,\n sendStrategy,\n endpointUrl,\n reportError\n )\n },\n onFailure: function () {\n state.currentBackoffTime = Math.min(\n MAX_BACKOFF_TIME,\n state.currentBackoffTime * 2\n )\n scheduleRetry(state, sendStrategy, endpointUrl, reportError)\n }\n })\n }, state.currentBackoffTime)\n}\n\nfunction send(payload, state, sendStrategy, responseData) {\n var onSuccess = responseData.onSuccess\n var onFailure = responseData.onFailure\n state.bandwidthMonitor.add(payload)\n sendStrategy(payload, function (response) {\n state.bandwidthMonitor.remove(payload)\n if (!shouldRetryRequest(response)) {\n state.transportStatus = TransportStatus.UP\n onSuccess()\n } else {\n // do not consider transport down if another ongoing request could succeed\n state.transportStatus =\n state.bandwidthMonitor.ongoingRequestCount > 0\n ? TransportStatus.FAILURE_DETECTED\n : TransportStatus.DOWN\n state.lastFailureStatus = response.status\n onFailure()\n }\n })\n}\n\nfunction retryQueuedPayloads(\n reason,\n state,\n sendStrategy,\n endpointUrl,\n reportError\n) {\n if (\n reason === RetryReason.AFTER_SUCCESS &&\n state.queuedPayloads.isFull() &&\n !state.queueFullReported\n ) {\n reportError({\n message:\n 'Reached max ' +\n endpointUrl +\n ' events size queued for upload: ' +\n MAX_QUEUE_BYTES_COUNT / ONE_MEBI_BYTE +\n 'MiB',\n source: ErrorSource.AGENT,\n startClocks: clocksNow()\n })\n state.queueFullReported = true\n }\n var previousQueue = state.queuedPayloads\n state.queuedPayloads = newPayloadQueue()\n while (previousQueue.size() > 0) {\n sendWithRetryStrategy(\n previousQueue.dequeue(),\n state,\n sendStrategy,\n endpointUrl,\n reportError\n )\n }\n}\n\nfunction shouldRetryRequest(response) {\n return (\n response.type !== 'opaque' &&\n ((response.status === 0 && !navigator.onLine) ||\n response.status === 408 ||\n response.status === 429 ||\n response.status >= 500)\n )\n}\nexport function newRetryState() {\n return {\n transportStatus: TransportStatus.UP,\n lastFailureStatus: 0,\n currentBackoffTime: INITIAL_BACKOFF_TIME,\n bandwidthMonitor: newBandwidthMonitor(),\n queuedPayloads: newPayloadQueue(),\n queueFullReported: false\n }\n}\n\nfunction newPayloadQueue() {\n var queue = []\n return {\n bytesCount: 0,\n enqueue: function (payload) {\n if (this.isFull()) {\n return\n }\n queue.push(payload)\n this.bytesCount += payload.bytesCount\n },\n first: function () {\n return queue[0]\n },\n dequeue: function () {\n var payload = queue.shift()\n if (payload) {\n this.bytesCount -= payload.bytesCount\n }\n return payload\n },\n size: function () {\n return queue.length\n },\n isFull: function () {\n return this.bytesCount >= MAX_QUEUE_BYTES_COUNT\n }\n }\n}\n\nfunction newBandwidthMonitor() {\n return {\n ongoingRequestCount: 0,\n ongoingByteCount: 0,\n canHandle: function (payload) {\n return (\n this.ongoingRequestCount === 0 ||\n (this.ongoingByteCount + payload.bytesCount <=\n MAX_ONGOING_BYTES_COUNT &&\n this.ongoingRequestCount < MAX_ONGOING_REQUESTS)\n )\n },\n add: function (payload) {\n this.ongoingRequestCount += 1\n this.ongoingByteCount += payload.bytesCount\n },\n remove: function (payload) {\n this.ongoingRequestCount -= 1\n this.ongoingByteCount -= payload.bytesCount\n }\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sendWithRetryStrategy.js","names":["_tools","require","_byteUtils","_errorTools","_timer","MAX_ONGOING_BYTES_COUNT","ONE_KIBI_BYTE","exports","MAX_ONGOING_REQUESTS","MAX_QUEUE_BYTES_COUNT","ONE_MEBI_BYTE","MAX_BACKOFF_TIME","ONE_SECOND","INITIAL_BACKOFF_TIME","TransportStatus","UP","FAILURE_DETECTED","DOWN","RetryReason","AFTER_SUCCESS","AFTER_RESUME","sendWithRetryStrategy","payload","state","sendStrategy","endpointUrl","reportError","transportStatus","queuedPayloads","size","bandwidthMonitor","canHandle","send","onSuccess","retryQueuedPayloads","onFailure","enqueue","scheduleRetry","setTimeout","first","dequeue","currentBackoffTime","Math","min","responseData","add","response","remove","shouldRetryRequest","ongoingRequestCount","lastFailureStatus","status","reason","isFull","queueFullReported","message","source","ErrorSource","AGENT","startClocks","clocksNow","previousQueue","newPayloadQueue","type","navigator","onLine","newRetryState","newBandwidthMonitor","queue","bytesCount","push","shift","length","ongoingByteCount"],"sources":["../../src/transport/sendWithRetryStrategy.js"],"sourcesContent":["import { clocksNow, ONE_SECOND } from '../helper/tools'\nimport { ONE_MEBI_BYTE, ONE_KIBI_BYTE } from '../helper/byteUtils'\nimport { ErrorSource } from '../helper/errorTools'\nimport { setTimeout } from '../helper/timer'\nexport var MAX_ONGOING_BYTES_COUNT = 80 * ONE_KIBI_BYTE\nexport var MAX_ONGOING_REQUESTS = 32\nexport var MAX_QUEUE_BYTES_COUNT = 3 * ONE_MEBI_BYTE\nexport var MAX_BACKOFF_TIME = 256 * ONE_SECOND\nexport var INITIAL_BACKOFF_TIME = ONE_SECOND\n\nvar TransportStatus = {\n UP: 0,\n FAILURE_DETECTED: 1,\n DOWN: 2\n}\n\nvar RetryReason = {\n AFTER_SUCCESS: 0,\n AFTER_RESUME: 1\n}\n\nexport function sendWithRetryStrategy(\n payload,\n state,\n sendStrategy,\n endpointUrl,\n reportError\n) {\n if (\n state.transportStatus === TransportStatus.UP &&\n state.queuedPayloads.size() === 0 &&\n state.bandwidthMonitor.canHandle(payload)\n ) {\n send(payload, state, sendStrategy, {\n onSuccess: function () {\n return retryQueuedPayloads(\n RetryReason.AFTER_SUCCESS,\n state,\n sendStrategy,\n endpointUrl,\n reportError\n )\n },\n onFailure: function () {\n state.queuedPayloads.enqueue(payload)\n scheduleRetry(state, sendStrategy, endpointUrl, reportError)\n }\n })\n } else {\n state.queuedPayloads.enqueue(payload)\n }\n}\n\nfunction scheduleRetry(state, sendStrategy, endpointUrl, reportError) {\n if (state.transportStatus !== TransportStatus.DOWN) {\n return\n }\n setTimeout(function () {\n var payload = state.queuedPayloads.first()\n send(payload, state, sendStrategy, {\n onSuccess: function () {\n state.queuedPayloads.dequeue()\n\n state.currentBackoffTime = INITIAL_BACKOFF_TIME\n retryQueuedPayloads(\n RetryReason.AFTER_RESUME,\n state,\n sendStrategy,\n endpointUrl,\n reportError\n )\n },\n onFailure: function () {\n state.currentBackoffTime = Math.min(\n MAX_BACKOFF_TIME,\n state.currentBackoffTime * 2\n )\n scheduleRetry(state, sendStrategy, endpointUrl, reportError)\n }\n })\n }, state.currentBackoffTime)\n}\n\nfunction send(payload, state, sendStrategy, responseData) {\n var onSuccess = responseData.onSuccess\n var onFailure = responseData.onFailure\n state.bandwidthMonitor.add(payload)\n sendStrategy(payload, function (response) {\n state.bandwidthMonitor.remove(payload)\n if (!shouldRetryRequest(response)) {\n state.transportStatus = TransportStatus.UP\n onSuccess()\n } else {\n // do not consider transport down if another ongoing request could succeed\n state.transportStatus =\n state.bandwidthMonitor.ongoingRequestCount > 0\n ? TransportStatus.FAILURE_DETECTED\n : TransportStatus.DOWN\n state.lastFailureStatus = response.status\n onFailure()\n }\n })\n}\n\nfunction retryQueuedPayloads(\n reason,\n state,\n sendStrategy,\n endpointUrl,\n reportError\n) {\n if (\n reason === RetryReason.AFTER_SUCCESS &&\n state.queuedPayloads.isFull() &&\n !state.queueFullReported\n ) {\n reportError({\n message:\n 'Reached max ' +\n endpointUrl +\n ' events size queued for upload: ' +\n MAX_QUEUE_BYTES_COUNT / ONE_MEBI_BYTE +\n 'MiB',\n source: ErrorSource.AGENT,\n startClocks: clocksNow()\n })\n state.queueFullReported = true\n }\n var previousQueue = state.queuedPayloads\n state.queuedPayloads = newPayloadQueue()\n while (previousQueue.size() > 0) {\n sendWithRetryStrategy(\n previousQueue.dequeue(),\n state,\n sendStrategy,\n endpointUrl,\n reportError\n )\n }\n}\n\nfunction shouldRetryRequest(response) {\n return (\n response.type !== 'opaque' &&\n ((response.status === 0 && !navigator.onLine) ||\n response.status === 408 ||\n response.status === 429 ||\n response.status >= 500)\n )\n}\nexport function newRetryState() {\n return {\n transportStatus: TransportStatus.UP,\n lastFailureStatus: 0,\n currentBackoffTime: INITIAL_BACKOFF_TIME,\n bandwidthMonitor: newBandwidthMonitor(),\n queuedPayloads: newPayloadQueue(),\n queueFullReported: false\n }\n}\n\nfunction newPayloadQueue() {\n var queue = []\n return {\n bytesCount: 0,\n enqueue: function (payload) {\n if (this.isFull()) {\n return\n }\n queue.push(payload)\n this.bytesCount += payload.bytesCount\n },\n first: function () {\n return queue[0]\n },\n dequeue: function () {\n var payload = queue.shift()\n if (payload) {\n this.bytesCount -= payload.bytesCount\n }\n return payload\n },\n size: function () {\n return queue.length\n },\n isFull: function () {\n return this.bytesCount >= MAX_QUEUE_BYTES_COUNT\n }\n }\n}\n\nfunction newBandwidthMonitor() {\n return {\n ongoingRequestCount: 0,\n ongoingByteCount: 0,\n canHandle: function (payload) {\n return (\n this.ongoingRequestCount === 0 ||\n (this.ongoingByteCount + payload.bytesCount <=\n MAX_ONGOING_BYTES_COUNT &&\n this.ongoingRequestCount < MAX_ONGOING_REQUESTS)\n )\n },\n add: function (payload) {\n this.ongoingRequestCount += 1\n this.ongoingByteCount += payload.bytesCount\n },\n remove: function (payload) {\n this.ongoingRequestCount -= 1\n this.ongoingByteCount -= payload.bytesCount\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startBatchWithReplica.js","names":["_batch","require","_httpRequest","_flushController","startBatchWithReplica","configuration","endpointUrl","reportError","pageExitObservable","sessionExpireObservable","primaryBatch","createBatch","Batch","createHttpRequest","batchBytesLimit","sendContentTypeByJson","createFlushController","messagesLimit","batchMessagesLimit","bytesLimit","durationLimit","flushTimeout","messageBytesLimit","add","message"],"sources":["../../src/transport/startBatchWithReplica.js"],"sourcesContent":["import { Batch } from './batch'\nimport { createHttpRequest } from './httpRequest'\nimport { createFlushController } from './flushController'\nexport function startBatchWithReplica(\n configuration,\n endpointUrl,\n reportError,\n pageExitObservable,\n sessionExpireObservable\n) {\n var primaryBatch = createBatch(endpointUrl)\n\n function createBatch(endpointUrl) {\n return new Batch(\n createHttpRequest(\n endpointUrl,\n configuration.batchBytesLimit,\n configuration.sendContentTypeByJson,\n reportError\n ),\n createFlushController({\n messagesLimit: configuration.batchMessagesLimit,\n bytesLimit: configuration.batchBytesLimit,\n durationLimit: configuration.flushTimeout,\n pageExitObservable: pageExitObservable,\n sessionExpireObservable: sessionExpireObservable\n }),\n configuration.messageBytesLimit,\n configuration.sendContentTypeByJson\n )\n }\n\n return {\n add: function (message) {\n primaryBatch.add(message)\n }\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AACO,SAASG,qBAAqBA,CACnCC,aAAa,EACbC,WAAW,EACXC,WAAW,EACXC,kBAAkB,EAClBC,uBAAuB,EACvB;EACA,IAAIC,YAAY,GAAGC,WAAW,CAACL,WAAW,CAAC;EAE3C,SAASK,WAAWA,CAACL,WAAW,EAAE;IAChC,OAAO,IAAIM,YAAK,CACd,IAAAC,8BAAiB,EACfP,WAAW,EACXD,aAAa,CAACS,eAAe,EAC7BT,aAAa,CAACU,qBAAqB,EACnCR,WACF,CAAC,EACD,IAAAS,sCAAqB,EAAC;MACpBC,aAAa,EAAEZ,aAAa,CAACa,kBAAkB;MAC/CC,UAAU,EAAEd,aAAa,CAACS,eAAe;MACzCM,aAAa,EAAEf,aAAa,CAACgB,YAAY;MACzCb,kBAAkB,EAAEA,kBAAkB;MACtCC,uBAAuB,EAAEA;IAC3B,CAAC,CAAC,EACFJ,aAAa,CAACiB,iBAAiB,EAC/BjB,aAAa,CAACU,qBAChB,CAAC;EACH;EAEA,OAAO;IACLQ,GAAG,EAAE,SAAAA,IAAUC,OAAO,EAAE;MACtBd,YAAY,CAACa,GAAG,CAACC,OAAO,CAAC;IAC3B;EACF,CAAC;AACH"}
|
|
1
|
+
{"version":3,"file":"startBatchWithReplica.js","names":["_batch","require","_httpRequest","_flushController","startBatchWithReplica","configuration","endpointUrl","reportError","pageExitObservable","sessionExpireObservable","primaryBatch","createBatch","Batch","createHttpRequest","batchBytesLimit","sendContentTypeByJson","createFlushController","messagesLimit","batchMessagesLimit","bytesLimit","durationLimit","flushTimeout","messageBytesLimit","add","message"],"sources":["../../src/transport/startBatchWithReplica.js"],"sourcesContent":["import { Batch } from './batch'\nimport { createHttpRequest } from './httpRequest'\nimport { createFlushController } from './flushController'\nexport function startBatchWithReplica(\n configuration,\n endpointUrl,\n reportError,\n pageExitObservable,\n sessionExpireObservable\n) {\n var primaryBatch = createBatch(endpointUrl)\n\n function createBatch(endpointUrl) {\n return new Batch(\n createHttpRequest(\n endpointUrl,\n configuration.batchBytesLimit,\n configuration.sendContentTypeByJson,\n reportError\n ),\n createFlushController({\n messagesLimit: configuration.batchMessagesLimit,\n bytesLimit: configuration.batchBytesLimit,\n durationLimit: configuration.flushTimeout,\n pageExitObservable: pageExitObservable,\n sessionExpireObservable: sessionExpireObservable\n }),\n configuration.messageBytesLimit,\n configuration.sendContentTypeByJson\n )\n }\n\n return {\n add: function (message) {\n primaryBatch.add(message)\n }\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AACO,SAASG,qBAAqBA,CACnCC,aAAa,EACbC,WAAW,EACXC,WAAW,EACXC,kBAAkB,EAClBC,uBAAuB,EACvB;EACA,IAAIC,YAAY,GAAGC,WAAW,CAACL,WAAW,CAAC;EAE3C,SAASK,WAAWA,CAACL,WAAW,EAAE;IAChC,OAAO,IAAIM,YAAK,CACd,IAAAC,8BAAiB,EACfP,WAAW,EACXD,aAAa,CAACS,eAAe,EAC7BT,aAAa,CAACU,qBAAqB,EACnCR,WACF,CAAC,EACD,IAAAS,sCAAqB,EAAC;MACpBC,aAAa,EAAEZ,aAAa,CAACa,kBAAkB;MAC/CC,UAAU,EAAEd,aAAa,CAACS,eAAe;MACzCM,aAAa,EAAEf,aAAa,CAACgB,YAAY;MACzCb,kBAAkB,EAAEA,kBAAkB;MACtCC,uBAAuB,EAAEA;IAC3B,CAAC,CAAC,EACFJ,aAAa,CAACiB,iBAAiB,EAC/BjB,aAAa,CAACU,qBAChB,CAAC;EACH;EAEA,OAAO;IACLQ,GAAG,EAAE,SAAAA,IAAUC,OAAO,EAAE;MACtBd,YAAY,CAACa,GAAG,CAACC,OAAO,CAAC;IAC3B;EACF,CAAC;AACH","ignoreList":[]}
|
package/cjs/user/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_user","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../src/user/index.js"],"sourcesContent":["export * from './user'\n"],"mappings":";;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,KAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,KAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,KAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_user","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../src/user/index.js"],"sourcesContent":["export * from './user'\n"],"mappings":";;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,KAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,KAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,KAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
package/cjs/user/user.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.js","names":["_display","require","_tools","sanitizeUser","newUser","user","assign","keys","each","key","String","checkUser","isValid","getType","display","error"],"sources":["../../src/user/user.js"],"sourcesContent":["import { display } from '../helper/display'\nimport { assign, getType, each } from '../helper/tools'\n\n/**\n * Clone input data and ensure known user properties (id, name, email)\n * are strings, as defined here:\n */\nexport function sanitizeUser(newUser) {\n // We shallow clone only to prevent mutation of user data.\n var user = assign({}, newUser)\n var keys = ['id', 'name', 'email']\n each(keys, function (key) {\n if (key in user) {\n user[key] = String(user[key])\n }\n })\n\n return user\n}\n\n/**\n * Simple check to ensure user is valid\n */\nexport function checkUser(newUser) {\n var isValid = getType(newUser) === 'object'\n if (!isValid) {\n display.error('Unsupported user:', newUser)\n }\n return isValid\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACO,SAASE,YAAYA,CAACC,OAAO,EAAE;EACpC;EACA,IAAIC,IAAI,GAAG,IAAAC,aAAM,EAAC,CAAC,CAAC,EAAEF,OAAO,CAAC;EAC9B,IAAIG,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC;EAClC,IAAAC,WAAI,EAACD,IAAI,EAAE,UAAUE,GAAG,EAAE;IACxB,IAAIA,GAAG,IAAIJ,IAAI,EAAE;MACfA,IAAI,CAACI,GAAG,CAAC,GAAGC,MAAM,CAACL,IAAI,CAACI,GAAG,CAAC,CAAC;IAC/B;EACF,CAAC,CAAC;EAEF,OAAOJ,IAAI;AACb;;AAEA;AACA;AACA;AACO,SAASM,SAASA,CAACP,OAAO,EAAE;EACjC,IAAIQ,OAAO,GAAG,IAAAC,cAAO,EAACT,OAAO,CAAC,KAAK,QAAQ;EAC3C,IAAI,CAACQ,OAAO,EAAE;IACZE,gBAAO,CAACC,KAAK,CAAC,mBAAmB,EAAEX,OAAO,CAAC;EAC7C;EACA,OAAOQ,OAAO;AAChB"}
|
|
1
|
+
{"version":3,"file":"user.js","names":["_display","require","_tools","sanitizeUser","newUser","user","assign","keys","each","key","String","checkUser","isValid","getType","display","error"],"sources":["../../src/user/user.js"],"sourcesContent":["import { display } from '../helper/display'\nimport { assign, getType, each } from '../helper/tools'\n\n/**\n * Clone input data and ensure known user properties (id, name, email)\n * are strings, as defined here:\n */\nexport function sanitizeUser(newUser) {\n // We shallow clone only to prevent mutation of user data.\n var user = assign({}, newUser)\n var keys = ['id', 'name', 'email']\n each(keys, function (key) {\n if (key in user) {\n user[key] = String(user[key])\n }\n })\n\n return user\n}\n\n/**\n * Simple check to ensure user is valid\n */\nexport function checkUser(newUser) {\n var isValid = getType(newUser) === 'object'\n if (!isValid) {\n display.error('Unsupported user:', newUser)\n }\n return isValid\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACO,SAASE,YAAYA,CAACC,OAAO,EAAE;EACpC;EACA,IAAIC,IAAI,GAAG,IAAAC,aAAM,EAAC,CAAC,CAAC,EAAEF,OAAO,CAAC;EAC9B,IAAIG,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC;EAClC,IAAAC,WAAI,EAACD,IAAI,EAAE,UAAUE,GAAG,EAAE;IACxB,IAAIA,GAAG,IAAIJ,IAAI,EAAE;MACfA,IAAI,CAACI,GAAG,CAAC,GAAGC,MAAM,CAACL,IAAI,CAACI,GAAG,CAAC,CAAC;IAC/B;EACF,CAAC,CAAC;EAEF,OAAOJ,IAAI;AACb;;AAEA;AACA;AACA;AACO,SAASM,SAASA,CAACP,OAAO,EAAE;EACjC,IAAIQ,OAAO,GAAG,IAAAC,cAAO,EAACT,OAAO,CAAC,KAAK,QAAQ;EAC3C,IAAI,CAACQ,OAAO,EAAE;IACZE,gBAAO,CAACC,KAAK,CAAC,mBAAmB,EAAEX,OAAO,CAAC;EAC7C;EACA,OAAOQ,OAAO;AAChB","ignoreList":[]}
|
package/cjs/worker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.js","names":["_byteUtils","require"],"sources":["../src/worker.js"],"sourcesContent":["export { concatBuffers } from './helper/byteUtils'\n"],"mappings":";;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA"}
|
|
1
|
+
{"version":3,"file":"worker.js","names":["_byteUtils","require"],"sources":["../src/worker.js"],"sourcesContent":["export { concatBuffers } from './helper/byteUtils'\n"],"mappings":";;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addEventListener.js","names":["each","getZoneJsOriginalValue","monitor","addEventListener","eventTarget","event","listener","options","addEventListeners","eventNames","wrappedListener","once","stop","passive","capture","add","eventName","call","remove"],"sources":["../../src/browser/addEventListener.js"],"sourcesContent":["import { each } from '../helper/tools'\nimport { getZoneJsOriginalValue } from '../helper/getZoneJsOriginalValue'\nimport { monitor } from '../helper/monitor'\nexport function addEventListener(eventTarget, event, listener, options) {\n return addEventListeners(eventTarget, [event], listener, options)\n}\n\n/**\n * Add event listeners to an event emitter object (Window, Element, mock object...). This provides\n * a few conveniences compared to using `element.addEventListener` directly:\n *\n * * supports IE11 by:\n * * using an option object only if needed\n * * emulating the `once` option\n *\n * * wraps the listener with a `monitor` function\n *\n * * returns a `stop` function to remove the listener\n *\n * * with `once: true`, the listener will be called at most once, even if different events are\n * listened\n */\n\nexport function addEventListeners(eventTarget, eventNames, listener, options) {\n var wrappedListener = monitor(\n options && options.once\n ? function (event) {\n stop()\n listener(event)\n }\n : listener\n )\n options =\n options && options.passive\n ? { capture: options.capture, passive: options.passive }\n : options && options.capture\n var add = getZoneJsOriginalValue(eventTarget, 'addEventListener')\n\n each(eventNames, function (eventName) {\n add.call(eventTarget, eventName, wrappedListener, options)\n })\n var stop = function () {\n var remove = getZoneJsOriginalValue(eventTarget, 'removeEventListener')\n each(eventNames, function (eventName) {\n remove.call(eventTarget, eventName, wrappedListener, options)\n })\n }\n return {\n stop: stop\n }\n}\n"],"mappings":"AAAA,SAASA,IAAI,QAAQ,iBAAiB;AACtC,SAASC,sBAAsB,QAAQ,kCAAkC;AACzE,SAASC,OAAO,QAAQ,mBAAmB;AAC3C,OAAO,SAASC,gBAAgBA,CAACC,WAAW,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,EAAE;EACtE,OAAOC,iBAAiB,CAACJ,WAAW,EAAE,CAACC,KAAK,CAAC,EAAEC,QAAQ,EAAEC,OAAO,CAAC;AACnE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,SAASC,iBAAiBA,CAACJ,WAAW,EAAEK,UAAU,EAAEH,QAAQ,EAAEC,OAAO,EAAE;EAC5E,IAAIG,eAAe,GAAGR,OAAO,CAC3BK,OAAO,IAAIA,OAAO,CAACI,IAAI,GACnB,UAAUN,KAAK,EAAE;IACfO,IAAI,CAAC,CAAC;IACNN,QAAQ,CAACD,KAAK,CAAC;EACjB,CAAC,GACDC,QACN,CAAC;EACDC,OAAO,GACLA,OAAO,IAAIA,OAAO,CAACM,OAAO,GACtB;IAAEC,OAAO,EAAEP,OAAO,CAACO,OAAO;IAAED,OAAO,EAAEN,OAAO,CAACM;EAAQ,CAAC,GACtDN,OAAO,IAAIA,OAAO,CAACO,OAAO;EAChC,IAAIC,GAAG,GAAGd,sBAAsB,CAACG,WAAW,EAAE,kBAAkB,CAAC;EAEjEJ,IAAI,CAACS,UAAU,EAAE,UAAUO,SAAS,EAAE;IACpCD,GAAG,CAACE,IAAI,CAACb,WAAW,EAAEY,SAAS,EAAEN,eAAe,EAAEH,OAAO,CAAC;EAC5D,CAAC,CAAC;EACF,IAAIK,IAAI,GAAG,SAAPA,IAAIA,CAAA,EAAe;IACrB,IAAIM,MAAM,GAAGjB,sBAAsB,CAACG,WAAW,EAAE,qBAAqB,CAAC;IACvEJ,IAAI,CAACS,UAAU,EAAE,UAAUO,SAAS,EAAE;MACpCE,MAAM,CAACD,IAAI,CAACb,WAAW,EAAEY,SAAS,EAAEN,eAAe,EAAEH,OAAO,CAAC;IAC/D,CAAC,CAAC;EACJ,CAAC;EACD,OAAO;IACLK,IAAI,EAAEA;EACR,CAAC;AACH"}
|
|
1
|
+
{"version":3,"file":"addEventListener.js","names":["each","getZoneJsOriginalValue","monitor","addEventListener","eventTarget","event","listener","options","addEventListeners","eventNames","wrappedListener","once","stop","passive","capture","add","eventName","call","remove"],"sources":["../../src/browser/addEventListener.js"],"sourcesContent":["import { each } from '../helper/tools'\nimport { getZoneJsOriginalValue } from '../helper/getZoneJsOriginalValue'\nimport { monitor } from '../helper/monitor'\nexport function addEventListener(eventTarget, event, listener, options) {\n return addEventListeners(eventTarget, [event], listener, options)\n}\n\n/**\n * Add event listeners to an event emitter object (Window, Element, mock object...). This provides\n * a few conveniences compared to using `element.addEventListener` directly:\n *\n * * supports IE11 by:\n * * using an option object only if needed\n * * emulating the `once` option\n *\n * * wraps the listener with a `monitor` function\n *\n * * returns a `stop` function to remove the listener\n *\n * * with `once: true`, the listener will be called at most once, even if different events are\n * listened\n */\n\nexport function addEventListeners(eventTarget, eventNames, listener, options) {\n var wrappedListener = monitor(\n options && options.once\n ? function (event) {\n stop()\n listener(event)\n }\n : listener\n )\n options =\n options && options.passive\n ? { capture: options.capture, passive: options.passive }\n : options && options.capture\n var add = getZoneJsOriginalValue(eventTarget, 'addEventListener')\n\n each(eventNames, function (eventName) {\n add.call(eventTarget, eventName, wrappedListener, options)\n })\n var stop = function () {\n var remove = getZoneJsOriginalValue(eventTarget, 'removeEventListener')\n each(eventNames, function (eventName) {\n remove.call(eventTarget, eventName, wrappedListener, options)\n })\n }\n return {\n stop: stop\n }\n}\n"],"mappings":"AAAA,SAASA,IAAI,QAAQ,iBAAiB;AACtC,SAASC,sBAAsB,QAAQ,kCAAkC;AACzE,SAASC,OAAO,QAAQ,mBAAmB;AAC3C,OAAO,SAASC,gBAAgBA,CAACC,WAAW,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,EAAE;EACtE,OAAOC,iBAAiB,CAACJ,WAAW,EAAE,CAACC,KAAK,CAAC,EAAEC,QAAQ,EAAEC,OAAO,CAAC;AACnE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,SAASC,iBAAiBA,CAACJ,WAAW,EAAEK,UAAU,EAAEH,QAAQ,EAAEC,OAAO,EAAE;EAC5E,IAAIG,eAAe,GAAGR,OAAO,CAC3BK,OAAO,IAAIA,OAAO,CAACI,IAAI,GACnB,UAAUN,KAAK,EAAE;IACfO,IAAI,CAAC,CAAC;IACNN,QAAQ,CAACD,KAAK,CAAC;EACjB,CAAC,GACDC,QACN,CAAC;EACDC,OAAO,GACLA,OAAO,IAAIA,OAAO,CAACM,OAAO,GACtB;IAAEC,OAAO,EAAEP,OAAO,CAACO,OAAO;IAAED,OAAO,EAAEN,OAAO,CAACM;EAAQ,CAAC,GACtDN,OAAO,IAAIA,OAAO,CAACO,OAAO;EAChC,IAAIC,GAAG,GAAGd,sBAAsB,CAACG,WAAW,EAAE,kBAAkB,CAAC;EAEjEJ,IAAI,CAACS,UAAU,EAAE,UAAUO,SAAS,EAAE;IACpCD,GAAG,CAACE,IAAI,CAACb,WAAW,EAAEY,SAAS,EAAEN,eAAe,EAAEH,OAAO,CAAC;EAC5D,CAAC,CAAC;EACF,IAAIK,IAAI,GAAG,SAAPA,IAAIA,CAAA,EAAe;IACrB,IAAIM,MAAM,GAAGjB,sBAAsB,CAACG,WAAW,EAAE,qBAAqB,CAAC;IACvEJ,IAAI,CAACS,UAAU,EAAE,UAAUO,SAAS,EAAE;MACpCE,MAAM,CAACD,IAAI,CAACb,WAAW,EAAEY,SAAS,EAAEN,eAAe,EAAEH,OAAO,CAAC;IAC/D,CAAC,CAAC;EACJ,CAAC;EACD,OAAO;IACLK,IAAI,EAAEA;EACR,CAAC;AACH","ignoreList":[]}
|
package/esm/browser/cookie.js
CHANGED
|
@@ -7,7 +7,8 @@ export function setCookie(name, value, expireDelay, options) {
|
|
|
7
7
|
var sameSite = options && options.crossSite ? 'none' : 'strict';
|
|
8
8
|
var domain = options && options.domain ? ';domain=' + options.domain : '';
|
|
9
9
|
var secure = options && options.secure ? ';secure' : '';
|
|
10
|
-
|
|
10
|
+
var partitioned = options && options.partitioned ? ';partitioned' : '';
|
|
11
|
+
document.cookie = name + '=' + value + ';' + expires + ';path=/;samesite=' + sameSite + domain + secure + partitioned;
|
|
11
12
|
}
|
|
12
13
|
export function getCookie(name) {
|
|
13
14
|
return findCommaSeparatedValue(document.cookie, name);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cookie.js","names":["findCommaSeparatedValue","UUID","ONE_SECOND","findCommaSeparatedValues","COOKIE_ACCESS_DELAY","setCookie","name","value","expireDelay","options","date","Date","setTime","getTime","expires","toUTCString","sameSite","crossSite","domain","secure","document","cookie","getCookie","initCookieParsed","getInitCookie","get","resetInitCookies","undefined","deleteCookie","areCookiesAuthorized","testCookieName","concat","testCookieValue","error","getCurrentSiteCache","getCurrentSite","domainLevels","window","location","hostname","split","candidateDomain","pop","length"],"sources":["../../src/browser/cookie.js"],"sourcesContent":["import {\n findCommaSeparatedValue,\n UUID,\n ONE_SECOND,\n findCommaSeparatedValues\n} from '../helper/tools'\nexport var COOKIE_ACCESS_DELAY = ONE_SECOND\n\nexport function setCookie(name, value, expireDelay, options) {\n var date = new Date()\n date.setTime(date.getTime() + expireDelay)\n var expires = 'expires=' + date.toUTCString()\n var sameSite = options && options.crossSite ? 'none' : 'strict'\n var domain = options && options.domain ? ';domain=' + options.domain : ''\n var secure = options && options.secure ? ';secure' : ''\n document.cookie =\n name +\n '=' +\n value +\n ';' +\n expires +\n ';path=/;samesite=' +\n sameSite +\n domain +\n secure\n}\n\nexport function getCookie(name) {\n return findCommaSeparatedValue(document.cookie, name)\n}\nvar initCookieParsed\n/**\n * Returns a cached value of the cookie. Use this during SDK initialization (and whenever possible)\n * to avoid accessing document.cookie multiple times.\n */\nexport function getInitCookie(name) {\n if (!initCookieParsed) {\n initCookieParsed = findCommaSeparatedValues(document.cookie)\n }\n return initCookieParsed.get(name)\n}\n\nexport function resetInitCookies() {\n initCookieParsed = undefined\n}\nexport function deleteCookie(name, options) {\n setCookie(name, '', 0, options)\n}\n\nexport function areCookiesAuthorized(options) {\n if (document.cookie === undefined || document.cookie === null) {\n return false\n }\n try {\n // Use a unique cookie name to avoid issues when the SDK is initialized multiple times during\n // the test cookie lifetime\n var testCookieName = `gc_cookie_test_${UUID()}`\n var testCookieValue = 'test'\n setCookie(testCookieName, testCookieValue, ONE_SECOND, options)\n return getCookie(testCookieName) === testCookieValue\n } catch (error) {\n return false\n }\n}\n\n/**\n * No API to retrieve it, number of levels for subdomain and suffix are unknown\n * strategy: find the minimal domain on which cookies are allowed to be set\n * https://web.dev/same-site-same-origin/#site\n */\nvar getCurrentSiteCache\nexport function getCurrentSite() {\n if (getCurrentSiteCache === undefined) {\n // Use a unique cookie name to avoid issues when the SDK is initialized multiple times during\n // the test cookie lifetime\n var testCookieName = `gc_site_test_${UUID()}`\n var testCookieValue = 'test'\n\n var domainLevels = window.location.hostname.split('.')\n var candidateDomain = domainLevels.pop()\n while (domainLevels.length && !getCookie(testCookieName)) {\n candidateDomain = domainLevels.pop() + '.' + candidateDomain\n setCookie(testCookieName, testCookieValue, ONE_SECOND, {\n domain: candidateDomain\n })\n }\n getCurrentSiteCache = candidateDomain\n }\n return getCurrentSiteCache\n}\n"],"mappings":"AAAA,SACEA,uBAAuB,EACvBC,IAAI,EACJC,UAAU,EACVC,wBAAwB,QACnB,iBAAiB;AACxB,OAAO,IAAIC,mBAAmB,GAAGF,UAAU;AAE3C,OAAO,SAASG,SAASA,CAACC,IAAI,EAAEC,KAAK,EAAEC,WAAW,EAAEC,OAAO,EAAE;EAC3D,IAAIC,IAAI,GAAG,IAAIC,IAAI,CAAC,CAAC;EACrBD,IAAI,CAACE,OAAO,CAACF,IAAI,CAACG,OAAO,CAAC,CAAC,GAAGL,WAAW,CAAC;EAC1C,IAAIM,OAAO,GAAG,UAAU,GAAGJ,IAAI,CAACK,WAAW,CAAC,CAAC;EAC7C,IAAIC,QAAQ,GAAGP,OAAO,IAAIA,OAAO,CAACQ,SAAS,GAAG,MAAM,GAAG,QAAQ;EAC/D,IAAIC,MAAM,GAAGT,OAAO,IAAIA,OAAO,CAACS,MAAM,GAAG,UAAU,GAAGT,OAAO,CAACS,MAAM,GAAG,EAAE;EACzE,IAAIC,MAAM,GAAGV,OAAO,IAAIA,OAAO,CAACU,MAAM,GAAG,SAAS,GAAG,EAAE;
|
|
1
|
+
{"version":3,"file":"cookie.js","names":["findCommaSeparatedValue","UUID","ONE_SECOND","findCommaSeparatedValues","COOKIE_ACCESS_DELAY","setCookie","name","value","expireDelay","options","date","Date","setTime","getTime","expires","toUTCString","sameSite","crossSite","domain","secure","partitioned","document","cookie","getCookie","initCookieParsed","getInitCookie","get","resetInitCookies","undefined","deleteCookie","areCookiesAuthorized","testCookieName","concat","testCookieValue","error","getCurrentSiteCache","getCurrentSite","domainLevels","window","location","hostname","split","candidateDomain","pop","length"],"sources":["../../src/browser/cookie.js"],"sourcesContent":["import {\n findCommaSeparatedValue,\n UUID,\n ONE_SECOND,\n findCommaSeparatedValues\n} from '../helper/tools'\nexport var COOKIE_ACCESS_DELAY = ONE_SECOND\n\nexport function setCookie(name, value, expireDelay, options) {\n var date = new Date()\n date.setTime(date.getTime() + expireDelay)\n var expires = 'expires=' + date.toUTCString()\n var sameSite = options && options.crossSite ? 'none' : 'strict'\n var domain = options && options.domain ? ';domain=' + options.domain : ''\n var secure = options && options.secure ? ';secure' : ''\n var partitioned = options && options.partitioned ? ';partitioned' : ''\n document.cookie =\n name +\n '=' +\n value +\n ';' +\n expires +\n ';path=/;samesite=' +\n sameSite +\n domain +\n secure +\n partitioned\n}\n\nexport function getCookie(name) {\n return findCommaSeparatedValue(document.cookie, name)\n}\nvar initCookieParsed\n/**\n * Returns a cached value of the cookie. Use this during SDK initialization (and whenever possible)\n * to avoid accessing document.cookie multiple times.\n */\nexport function getInitCookie(name) {\n if (!initCookieParsed) {\n initCookieParsed = findCommaSeparatedValues(document.cookie)\n }\n return initCookieParsed.get(name)\n}\n\nexport function resetInitCookies() {\n initCookieParsed = undefined\n}\nexport function deleteCookie(name, options) {\n setCookie(name, '', 0, options)\n}\n\nexport function areCookiesAuthorized(options) {\n if (document.cookie === undefined || document.cookie === null) {\n return false\n }\n try {\n // Use a unique cookie name to avoid issues when the SDK is initialized multiple times during\n // the test cookie lifetime\n var testCookieName = `gc_cookie_test_${UUID()}`\n var testCookieValue = 'test'\n setCookie(testCookieName, testCookieValue, ONE_SECOND, options)\n return getCookie(testCookieName) === testCookieValue\n } catch (error) {\n return false\n }\n}\n\n/**\n * No API to retrieve it, number of levels for subdomain and suffix are unknown\n * strategy: find the minimal domain on which cookies are allowed to be set\n * https://web.dev/same-site-same-origin/#site\n */\nvar getCurrentSiteCache\nexport function getCurrentSite() {\n if (getCurrentSiteCache === undefined) {\n // Use a unique cookie name to avoid issues when the SDK is initialized multiple times during\n // the test cookie lifetime\n var testCookieName = `gc_site_test_${UUID()}`\n var testCookieValue = 'test'\n\n var domainLevels = window.location.hostname.split('.')\n var candidateDomain = domainLevels.pop()\n while (domainLevels.length && !getCookie(testCookieName)) {\n candidateDomain = domainLevels.pop() + '.' + candidateDomain\n setCookie(testCookieName, testCookieValue, ONE_SECOND, {\n domain: candidateDomain\n })\n }\n getCurrentSiteCache = candidateDomain\n }\n return getCurrentSiteCache\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchObservable.js","names":["instrumentMethod","Observable","clocksNow","monitor","callMonitored","normalizeUrl","fetchObservable","initFetchObservable","createFetchObservable","observable","window","fetch","fetchMethod","originalFetch","input","init","responsePromise","context","beforeSend","call","afterSend","stop","methodFromParams","method","undefined","Request","String","toUpperCase","url","startClocks","state","notify","startContext","reportFetch","response","Error","status","isAborted","DOMException","code","ABORT_ERR","error","responseType","constructor","Response","type","err","then"],"sources":["../../src/browser/fetchObservable.js"],"sourcesContent":["import { instrumentMethod } from '../helper/instrumentMethod'\nimport { Observable } from '../helper/observable'\nimport { clocksNow } from '../helper/tools'\nimport { monitor, callMonitored } from '../helper/monitor'\nimport { normalizeUrl } from '../helper/urlPolyfill'\n\nvar fetchObservable\n\nexport function initFetchObservable() {\n if (!fetchObservable) {\n fetchObservable = createFetchObservable()\n }\n return fetchObservable\n}\n\nfunction createFetchObservable() {\n return new Observable(function (observable) {\n if (!window.fetch) {\n return\n }\n\n var fetchMethod = instrumentMethod(\n window,\n 'fetch',\n function (originalFetch) {\n return function (input, init) {\n var responsePromise\n var context = callMonitored(beforeSend, null, [\n observable,\n input,\n init\n ])\n if (context) {\n responsePromise = originalFetch.call(\n this,\n context.input,\n context.init\n )\n callMonitored(afterSend, null, [\n observable,\n responsePromise,\n context\n ])\n } else {\n responsePromise = originalFetch.call(this, input, init)\n }\n return responsePromise\n }\n }\n )\n return fetchMethod.stop\n })\n}\n\nfunction beforeSend(observable, input, init) {\n // var method =\n // (init && init.method) || (input instanceof Request && input.method) || 'GET'\n // const methodFromParams =\n // (init && init.method) || (input instanceof Request && input.method)\n // const method = methodFromParams ? methodFromParams.toUpperCase() : 'GET'\n var methodFromParams = init && init.method\n\n if (methodFromParams === undefined && input instanceof Request) {\n methodFromParams = input.method\n }\n\n var method =\n methodFromParams !== undefined\n ? String(methodFromParams).toUpperCase()\n : 'GET'\n var url = input instanceof Request ? input.url : normalizeUrl(String(input))\n\n var startClocks = clocksNow()\n\n var context = {\n state: 'start',\n init: init,\n input: input,\n method: method,\n startClocks: startClocks,\n url: url\n }\n\n observable.notify(context)\n\n return context\n}\n\nfunction afterSend(observable, responsePromise, startContext) {\n var reportFetch = function (response) {\n var context = startContext\n context.state = 'resolve'\n // context.duration = elapsed(context.startClocks.timeStamp, timeStampNow())\n if ('stack' in response || response instanceof Error) {\n context.status = 0\n context.isAborted =\n response instanceof DOMException &&\n response.code === DOMException.ABORT_ERR\n context.error = response\n } else if ('status' in response) {\n context.response = response\n try {\n context.responseType =\n (response.constructor === Response && response.type) || '' // issue The Response type getter can only be used on instances of Response\n } catch (err) {\n context.responseType = ''\n }\n\n context.status = response.status\n context.isAborted = false\n }\n observable.notify(context)\n }\n responsePromise.then(monitor(reportFetch), monitor(reportFetch))\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fetchObservable.js","names":["instrumentMethod","Observable","clocksNow","monitor","callMonitored","normalizeUrl","fetchObservable","initFetchObservable","createFetchObservable","observable","window","fetch","fetchMethod","originalFetch","input","init","responsePromise","context","beforeSend","call","afterSend","stop","methodFromParams","method","undefined","Request","String","toUpperCase","url","startClocks","state","notify","startContext","reportFetch","response","Error","status","isAborted","DOMException","code","ABORT_ERR","error","responseType","constructor","Response","type","err","then"],"sources":["../../src/browser/fetchObservable.js"],"sourcesContent":["import { instrumentMethod } from '../helper/instrumentMethod'\nimport { Observable } from '../helper/observable'\nimport { clocksNow } from '../helper/tools'\nimport { monitor, callMonitored } from '../helper/monitor'\nimport { normalizeUrl } from '../helper/urlPolyfill'\n\nvar fetchObservable\n\nexport function initFetchObservable() {\n if (!fetchObservable) {\n fetchObservable = createFetchObservable()\n }\n return fetchObservable\n}\n\nfunction createFetchObservable() {\n return new Observable(function (observable) {\n if (!window.fetch) {\n return\n }\n\n var fetchMethod = instrumentMethod(\n window,\n 'fetch',\n function (originalFetch) {\n return function (input, init) {\n var responsePromise\n var context = callMonitored(beforeSend, null, [\n observable,\n input,\n init\n ])\n if (context) {\n responsePromise = originalFetch.call(\n this,\n context.input,\n context.init\n )\n callMonitored(afterSend, null, [\n observable,\n responsePromise,\n context\n ])\n } else {\n responsePromise = originalFetch.call(this, input, init)\n }\n return responsePromise\n }\n }\n )\n return fetchMethod.stop\n })\n}\n\nfunction beforeSend(observable, input, init) {\n // var method =\n // (init && init.method) || (input instanceof Request && input.method) || 'GET'\n // const methodFromParams =\n // (init && init.method) || (input instanceof Request && input.method)\n // const method = methodFromParams ? methodFromParams.toUpperCase() : 'GET'\n var methodFromParams = init && init.method\n\n if (methodFromParams === undefined && input instanceof Request) {\n methodFromParams = input.method\n }\n\n var method =\n methodFromParams !== undefined\n ? String(methodFromParams).toUpperCase()\n : 'GET'\n var url = input instanceof Request ? input.url : normalizeUrl(String(input))\n\n var startClocks = clocksNow()\n\n var context = {\n state: 'start',\n init: init,\n input: input,\n method: method,\n startClocks: startClocks,\n url: url\n }\n\n observable.notify(context)\n\n return context\n}\n\nfunction afterSend(observable, responsePromise, startContext) {\n var reportFetch = function (response) {\n var context = startContext\n context.state = 'resolve'\n // context.duration = elapsed(context.startClocks.timeStamp, timeStampNow())\n if ('stack' in response || response instanceof Error) {\n context.status = 0\n context.isAborted =\n response instanceof DOMException &&\n response.code === DOMException.ABORT_ERR\n context.error = response\n } else if ('status' in response) {\n context.response = response\n try {\n context.responseType =\n (response.constructor === Response && response.type) || '' // issue The Response type getter can only be used on instances of Response\n } catch (err) {\n context.responseType = ''\n }\n\n context.status = response.status\n context.isAborted = false\n }\n observable.notify(context)\n }\n responsePromise.then(monitor(reportFetch), monitor(reportFetch))\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"htmlDomUtils.js","names":["isTextNode","node","nodeType","Node","TEXT_NODE","isCommentNode","COMMENT_NODE","isElementNode","ELEMENT_NODE","isNodeShadowHost","Boolean","shadowRoot","isNodeShadowRoot","host","DOCUMENT_FRAGMENT_NODE","hasChildNodes","childNodes","length","forEachChildNodes","callback","child","firstChild","nextSibling","getParentNode","parentNode"],"sources":["../../src/browser/htmlDomUtils.js"],"sourcesContent":["export function isTextNode(node) {\n return node.nodeType === Node.TEXT_NODE\n}\n\nexport function isCommentNode(node) {\n return node.nodeType === Node.COMMENT_NODE\n}\n\nexport function isElementNode(node) {\n return node.nodeType === Node.ELEMENT_NODE\n}\n\nexport function isNodeShadowHost(node) {\n return isElementNode(node) && Boolean(node.shadowRoot)\n}\n\nexport function isNodeShadowRoot(node) {\n var shadowRoot = node\n return (\n !!shadowRoot.host &&\n shadowRoot.nodeType === Node.DOCUMENT_FRAGMENT_NODE &&\n isElementNode(shadowRoot.host)\n )\n}\nexport function hasChildNodes(node) {\n return node.childNodes.length > 0 || isNodeShadowHost(node)\n}\n// export function getChildNodes(node) {\n// return isNodeShadowHost(node) ? node.shadowRoot.childNodes : node.childNodes\n// }\nexport function forEachChildNodes(node, callback) {\n // node.childNodes.forEach(callback)\n var child = node.firstChild\n\n while (child) {\n callback(child)\n child = child.nextSibling\n }\n if (isNodeShadowHost(node)) {\n callback(node.shadowRoot)\n }\n}\n/**\n * Return `host` in case if the current node is a shadow root otherwise will return the `parentNode`\n */\nexport function getParentNode(node) {\n return isNodeShadowRoot(node) ? node.host : node.parentNode\n}\n"],"mappings":"AAAA,OAAO,SAASA,UAAUA,CAACC,IAAI,EAAE;EAC/B,OAAOA,IAAI,CAACC,QAAQ,KAAKC,IAAI,CAACC,SAAS;AACzC;AAEA,OAAO,SAASC,aAAaA,CAACJ,IAAI,EAAE;EAClC,OAAOA,IAAI,CAACC,QAAQ,KAAKC,IAAI,CAACG,YAAY;AAC5C;AAEA,OAAO,SAASC,aAAaA,CAACN,IAAI,EAAE;EAClC,OAAOA,IAAI,CAACC,QAAQ,KAAKC,IAAI,CAACK,YAAY;AAC5C;AAEA,OAAO,SAASC,gBAAgBA,CAACR,IAAI,EAAE;EACrC,OAAOM,aAAa,CAACN,IAAI,CAAC,IAAIS,OAAO,CAACT,IAAI,CAACU,UAAU,CAAC;AACxD;AAEA,OAAO,SAASC,gBAAgBA,CAACX,IAAI,EAAE;EACrC,IAAIU,UAAU,GAAGV,IAAI;EACrB,OACE,CAAC,CAACU,UAAU,CAACE,IAAI,IACjBF,UAAU,CAACT,QAAQ,KAAKC,IAAI,CAACW,sBAAsB,IACnDP,aAAa,CAACI,UAAU,CAACE,IAAI,CAAC;AAElC;AACA,OAAO,SAASE,aAAaA,CAACd,IAAI,EAAE;EAClC,OAAOA,IAAI,CAACe,UAAU,CAACC,MAAM,GAAG,CAAC,IAAIR,gBAAgB,CAACR,IAAI,CAAC;AAC7D;AACA;AACA;AACA;AACA,OAAO,SAASiB,iBAAiBA,CAACjB,IAAI,EAAEkB,QAAQ,EAAE;EAChD;EACA,IAAIC,KAAK,GAAGnB,IAAI,CAACoB,UAAU;EAE3B,OAAOD,KAAK,EAAE;IACZD,QAAQ,CAACC,KAAK,CAAC;IACfA,KAAK,GAAGA,KAAK,CAACE,WAAW;EAC3B;EACA,IAAIb,gBAAgB,CAACR,IAAI,CAAC,EAAE;IAC1BkB,QAAQ,CAAClB,IAAI,CAACU,UAAU,CAAC;EAC3B;AACF;AACA;AACA;AACA;AACA,OAAO,SAASY,aAAaA,CAACtB,IAAI,EAAE;EAClC,OAAOW,gBAAgB,CAACX,IAAI,CAAC,GAAGA,IAAI,CAACY,IAAI,GAAGZ,IAAI,CAACuB,UAAU;AAC7D"}
|
|
1
|
+
{"version":3,"file":"htmlDomUtils.js","names":["isTextNode","node","nodeType","Node","TEXT_NODE","isCommentNode","COMMENT_NODE","isElementNode","ELEMENT_NODE","isNodeShadowHost","Boolean","shadowRoot","isNodeShadowRoot","host","DOCUMENT_FRAGMENT_NODE","hasChildNodes","childNodes","length","forEachChildNodes","callback","child","firstChild","nextSibling","getParentNode","parentNode"],"sources":["../../src/browser/htmlDomUtils.js"],"sourcesContent":["export function isTextNode(node) {\n return node.nodeType === Node.TEXT_NODE\n}\n\nexport function isCommentNode(node) {\n return node.nodeType === Node.COMMENT_NODE\n}\n\nexport function isElementNode(node) {\n return node.nodeType === Node.ELEMENT_NODE\n}\n\nexport function isNodeShadowHost(node) {\n return isElementNode(node) && Boolean(node.shadowRoot)\n}\n\nexport function isNodeShadowRoot(node) {\n var shadowRoot = node\n return (\n !!shadowRoot.host &&\n shadowRoot.nodeType === Node.DOCUMENT_FRAGMENT_NODE &&\n isElementNode(shadowRoot.host)\n )\n}\nexport function hasChildNodes(node) {\n return node.childNodes.length > 0 || isNodeShadowHost(node)\n}\n// export function getChildNodes(node) {\n// return isNodeShadowHost(node) ? node.shadowRoot.childNodes : node.childNodes\n// }\nexport function forEachChildNodes(node, callback) {\n // node.childNodes.forEach(callback)\n var child = node.firstChild\n\n while (child) {\n callback(child)\n child = child.nextSibling\n }\n if (isNodeShadowHost(node)) {\n callback(node.shadowRoot)\n }\n}\n/**\n * Return `host` in case if the current node is a shadow root otherwise will return the `parentNode`\n */\nexport function getParentNode(node) {\n return isNodeShadowRoot(node) ? node.host : node.parentNode\n}\n"],"mappings":"AAAA,OAAO,SAASA,UAAUA,CAACC,IAAI,EAAE;EAC/B,OAAOA,IAAI,CAACC,QAAQ,KAAKC,IAAI,CAACC,SAAS;AACzC;AAEA,OAAO,SAASC,aAAaA,CAACJ,IAAI,EAAE;EAClC,OAAOA,IAAI,CAACC,QAAQ,KAAKC,IAAI,CAACG,YAAY;AAC5C;AAEA,OAAO,SAASC,aAAaA,CAACN,IAAI,EAAE;EAClC,OAAOA,IAAI,CAACC,QAAQ,KAAKC,IAAI,CAACK,YAAY;AAC5C;AAEA,OAAO,SAASC,gBAAgBA,CAACR,IAAI,EAAE;EACrC,OAAOM,aAAa,CAACN,IAAI,CAAC,IAAIS,OAAO,CAACT,IAAI,CAACU,UAAU,CAAC;AACxD;AAEA,OAAO,SAASC,gBAAgBA,CAACX,IAAI,EAAE;EACrC,IAAIU,UAAU,GAAGV,IAAI;EACrB,OACE,CAAC,CAACU,UAAU,CAACE,IAAI,IACjBF,UAAU,CAACT,QAAQ,KAAKC,IAAI,CAACW,sBAAsB,IACnDP,aAAa,CAACI,UAAU,CAACE,IAAI,CAAC;AAElC;AACA,OAAO,SAASE,aAAaA,CAACd,IAAI,EAAE;EAClC,OAAOA,IAAI,CAACe,UAAU,CAACC,MAAM,GAAG,CAAC,IAAIR,gBAAgB,CAACR,IAAI,CAAC;AAC7D;AACA;AACA;AACA;AACA,OAAO,SAASiB,iBAAiBA,CAACjB,IAAI,EAAEkB,QAAQ,EAAE;EAChD;EACA,IAAIC,KAAK,GAAGnB,IAAI,CAACoB,UAAU;EAE3B,OAAOD,KAAK,EAAE;IACZD,QAAQ,CAACC,KAAK,CAAC;IACfA,KAAK,GAAGA,KAAK,CAACE,WAAW;EAC3B;EACA,IAAIb,gBAAgB,CAACR,IAAI,CAAC,EAAE;IAC1BkB,QAAQ,CAAClB,IAAI,CAACU,UAAU,CAAC;EAC3B;AACF;AACA;AACA;AACA;AACA,OAAO,SAASY,aAAaA,CAACtB,IAAI,EAAE;EAClC,OAAOW,gBAAgB,CAACX,IAAI,CAAC,GAAGA,IAAI,CAACY,IAAI,GAAGZ,IAAI,CAACuB,UAAU;AAC7D","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pageExitObservable.js","names":["Observable","includes","values","DOM_EVENT","addEventListener","addEventListeners","PageExitReason","HIDDEN","UNLOADING","PAGEHIDE","FROZEN","createPageExitObservable","observable","visibilityChangeListener","document","VISIBILITY_CHANGE","FREEZE","PAGE_HIDE","event","type","visibilityState","notify","reason","capture","beforeUnloadListener","window","BEFORE_UNLOAD","stop","isPageExitReason"],"sources":["../../src/browser/pageExitObservable.js"],"sourcesContent":["import { Observable } from '../helper/observable'\nimport { includes, values } from '../helper/tools'\nimport { DOM_EVENT } from '../helper/enums'\nimport {\n addEventListener,\n addEventListeners\n} from '../browser/addEventListener'\nexport var PageExitReason = {\n HIDDEN: 'visibility_hidden',\n UNLOADING: 'before_unload',\n PAGEHIDE: 'page_hide',\n FROZEN: 'page_frozen'\n}\n\nexport function createPageExitObservable() {\n return new Observable(function (observable) {\n /**\n * Only event that guarantee to fire on mobile devices when the page transitions to background state\n * (e.g. when user switches to a different application, goes to homescreen, etc), or is being unloaded.\n */\n var visibilityChangeListener = addEventListeners(\n document,\n [DOM_EVENT.VISIBILITY_CHANGE, DOM_EVENT.FREEZE, DOM_EVENT.PAGE_HIDE],\n function (event) {\n if (\n event.type === DOM_EVENT.VISIBILITY_CHANGE &&\n document.visibilityState === 'hidden'\n ) {\n /**\n * Only event that guarantee to fire on mobile devices when the page transitions to background state\n * (e.g. when user switches to a different application, goes to homescreen, etc), or is being unloaded.\n */\n observable.notify({ reason: PageExitReason.HIDDEN })\n } else if (event.type === DOM_EVENT.FREEZE) {\n /**\n * After transitioning in background a tab can be freezed to preserve resources. (cf: https://developer.chrome.com/blog/page-lifecycle-api)\n * Allow to collect events happening between hidden and frozen state.\n */\n observable.notify({ reason: PageExitReason.FROZEN })\n }\n },\n { capture: true }\n )\n\n /**\n * Safari does not support yet to send a request during:\n * - a visibility change during doc unload (cf: https://bugs.webkit.org/show_bug.cgi?id=194897)\n * - a page hide transition (cf: https://bugs.webkit.org/show_bug.cgi?id=188329)\n */\n var beforeUnloadListener = addEventListener(\n window,\n DOM_EVENT.BEFORE_UNLOAD,\n function () {\n observable.notify({ reason: PageExitReason.UNLOADING })\n }\n )\n\n return function () {\n visibilityChangeListener.stop()\n beforeUnloadListener.stop()\n }\n })\n}\n\nexport function isPageExitReason(reason) {\n return includes(values(PageExitReason), reason)\n}\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,sBAAsB;AACjD,SAASC,QAAQ,EAAEC,MAAM,QAAQ,iBAAiB;AAClD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SACEC,gBAAgB,EAChBC,iBAAiB,QACZ,6BAA6B;AACpC,OAAO,IAAIC,cAAc,GAAG;EAC1BC,MAAM,EAAE,mBAAmB;EAC3BC,SAAS,EAAE,eAAe;EAC1BC,QAAQ,EAAE,WAAW;EACrBC,MAAM,EAAE;AACV,CAAC;AAED,OAAO,SAASC,wBAAwBA,CAAA,EAAG;EACzC,OAAO,IAAIX,UAAU,CAAC,UAAUY,UAAU,EAAE;IAC1C;AACJ;AACA;AACA;IACI,IAAIC,wBAAwB,GAAGR,iBAAiB,CAC9CS,QAAQ,EACR,CAACX,SAAS,CAACY,iBAAiB,EAAEZ,SAAS,CAACa,MAAM,EAAEb,SAAS,CAACc,SAAS,CAAC,EACpE,UAAUC,KAAK,EAAE;MACf,IACEA,KAAK,CAACC,IAAI,KAAKhB,SAAS,CAACY,iBAAiB,IAC1CD,QAAQ,CAACM,eAAe,KAAK,QAAQ,EACrC;QACA;AACV;AACA;AACA;QACUR,UAAU,CAACS,MAAM,CAAC;UAAEC,MAAM,EAAEhB,cAAc,CAACC;QAAO,CAAC,CAAC;MACtD,CAAC,MAAM,IAAIW,KAAK,CAACC,IAAI,KAAKhB,SAAS,CAACa,MAAM,EAAE;QAC1C;AACV;AACA;AACA;QACUJ,UAAU,CAACS,MAAM,CAAC;UAAEC,MAAM,EAAEhB,cAAc,CAACI;QAAO,CAAC,CAAC;MACtD;IACF,CAAC,EACD;MAAEa,OAAO,EAAE;IAAK,CAClB,CAAC;;IAED;AACJ;AACA;AACA;AACA;IACI,IAAIC,oBAAoB,GAAGpB,gBAAgB,CACzCqB,MAAM,EACNtB,SAAS,CAACuB,aAAa,EACvB,YAAY;MACVd,UAAU,CAACS,MAAM,CAAC;QAAEC,MAAM,EAAEhB,cAAc,CAACE;MAAU,CAAC,CAAC;IACzD,CACF,CAAC;IAED,OAAO,YAAY;MACjBK,wBAAwB,CAACc,IAAI,CAAC,CAAC;MAC/BH,oBAAoB,CAACG,IAAI,CAAC,CAAC;IAC7B,CAAC;EACH,CAAC,CAAC;AACJ;AAEA,OAAO,SAASC,gBAAgBA,CAACN,MAAM,EAAE;EACvC,OAAOrB,QAAQ,CAACC,MAAM,CAACI,cAAc,CAAC,EAAEgB,MAAM,CAAC;AACjD"}
|
|
1
|
+
{"version":3,"file":"pageExitObservable.js","names":["Observable","includes","values","DOM_EVENT","addEventListener","addEventListeners","PageExitReason","HIDDEN","UNLOADING","PAGEHIDE","FROZEN","createPageExitObservable","observable","visibilityChangeListener","document","VISIBILITY_CHANGE","FREEZE","PAGE_HIDE","event","type","visibilityState","notify","reason","capture","beforeUnloadListener","window","BEFORE_UNLOAD","stop","isPageExitReason"],"sources":["../../src/browser/pageExitObservable.js"],"sourcesContent":["import { Observable } from '../helper/observable'\nimport { includes, values } from '../helper/tools'\nimport { DOM_EVENT } from '../helper/enums'\nimport {\n addEventListener,\n addEventListeners\n} from '../browser/addEventListener'\nexport var PageExitReason = {\n HIDDEN: 'visibility_hidden',\n UNLOADING: 'before_unload',\n PAGEHIDE: 'page_hide',\n FROZEN: 'page_frozen'\n}\n\nexport function createPageExitObservable() {\n return new Observable(function (observable) {\n /**\n * Only event that guarantee to fire on mobile devices when the page transitions to background state\n * (e.g. when user switches to a different application, goes to homescreen, etc), or is being unloaded.\n */\n var visibilityChangeListener = addEventListeners(\n document,\n [DOM_EVENT.VISIBILITY_CHANGE, DOM_EVENT.FREEZE, DOM_EVENT.PAGE_HIDE],\n function (event) {\n if (\n event.type === DOM_EVENT.VISIBILITY_CHANGE &&\n document.visibilityState === 'hidden'\n ) {\n /**\n * Only event that guarantee to fire on mobile devices when the page transitions to background state\n * (e.g. when user switches to a different application, goes to homescreen, etc), or is being unloaded.\n */\n observable.notify({ reason: PageExitReason.HIDDEN })\n } else if (event.type === DOM_EVENT.FREEZE) {\n /**\n * After transitioning in background a tab can be freezed to preserve resources. (cf: https://developer.chrome.com/blog/page-lifecycle-api)\n * Allow to collect events happening between hidden and frozen state.\n */\n observable.notify({ reason: PageExitReason.FROZEN })\n }\n },\n { capture: true }\n )\n\n /**\n * Safari does not support yet to send a request during:\n * - a visibility change during doc unload (cf: https://bugs.webkit.org/show_bug.cgi?id=194897)\n * - a page hide transition (cf: https://bugs.webkit.org/show_bug.cgi?id=188329)\n */\n var beforeUnloadListener = addEventListener(\n window,\n DOM_EVENT.BEFORE_UNLOAD,\n function () {\n observable.notify({ reason: PageExitReason.UNLOADING })\n }\n )\n\n return function () {\n visibilityChangeListener.stop()\n beforeUnloadListener.stop()\n }\n })\n}\n\nexport function isPageExitReason(reason) {\n return includes(values(PageExitReason), reason)\n}\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,sBAAsB;AACjD,SAASC,QAAQ,EAAEC,MAAM,QAAQ,iBAAiB;AAClD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SACEC,gBAAgB,EAChBC,iBAAiB,QACZ,6BAA6B;AACpC,OAAO,IAAIC,cAAc,GAAG;EAC1BC,MAAM,EAAE,mBAAmB;EAC3BC,SAAS,EAAE,eAAe;EAC1BC,QAAQ,EAAE,WAAW;EACrBC,MAAM,EAAE;AACV,CAAC;AAED,OAAO,SAASC,wBAAwBA,CAAA,EAAG;EACzC,OAAO,IAAIX,UAAU,CAAC,UAAUY,UAAU,EAAE;IAC1C;AACJ;AACA;AACA;IACI,IAAIC,wBAAwB,GAAGR,iBAAiB,CAC9CS,QAAQ,EACR,CAACX,SAAS,CAACY,iBAAiB,EAAEZ,SAAS,CAACa,MAAM,EAAEb,SAAS,CAACc,SAAS,CAAC,EACpE,UAAUC,KAAK,EAAE;MACf,IACEA,KAAK,CAACC,IAAI,KAAKhB,SAAS,CAACY,iBAAiB,IAC1CD,QAAQ,CAACM,eAAe,KAAK,QAAQ,EACrC;QACA;AACV;AACA;AACA;QACUR,UAAU,CAACS,MAAM,CAAC;UAAEC,MAAM,EAAEhB,cAAc,CAACC;QAAO,CAAC,CAAC;MACtD,CAAC,MAAM,IAAIW,KAAK,CAACC,IAAI,KAAKhB,SAAS,CAACa,MAAM,EAAE;QAC1C;AACV;AACA;AACA;QACUJ,UAAU,CAACS,MAAM,CAAC;UAAEC,MAAM,EAAEhB,cAAc,CAACI;QAAO,CAAC,CAAC;MACtD;IACF,CAAC,EACD;MAAEa,OAAO,EAAE;IAAK,CAClB,CAAC;;IAED;AACJ;AACA;AACA;AACA;IACI,IAAIC,oBAAoB,GAAGpB,gBAAgB,CACzCqB,MAAM,EACNtB,SAAS,CAACuB,aAAa,EACvB,YAAY;MACVd,UAAU,CAACS,MAAM,CAAC;QAAEC,MAAM,EAAEhB,cAAc,CAACE;MAAU,CAAC,CAAC;IACzD,CACF,CAAC;IAED,OAAO,YAAY;MACjBK,wBAAwB,CAACc,IAAI,CAAC,CAAC;MAC/BH,oBAAoB,CAACG,IAAI,CAAC,CAAC;IAC7B,CAAC;EACH,CAAC,CAAC;AACJ;AAEA,OAAO,SAASC,gBAAgBA,CAACN,MAAM,EAAE;EACvC,OAAOrB,QAAQ,CAACC,MAAM,CAACI,cAAc,CAAC,EAAEgB,MAAM,CAAC;AACjD","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runOnReadyState.js","names":["addEventListener","DOM_EVENT","runOnReadyState","expectedReadyState","callback","document","readyState","eventName","LOAD","DOM_CONTENT_LOADED","window","once"],"sources":["../../src/browser/runOnReadyState.js"],"sourcesContent":["import { addEventListener } from './addEventListener'\nimport { DOM_EVENT } from '../helper/enums'\nexport function runOnReadyState(expectedReadyState, callback) {\n if (\n document.readyState === expectedReadyState ||\n document.readyState === 'complete'\n ) {\n callback()\n } else {\n var eventName =\n expectedReadyState === 'complete'\n ? DOM_EVENT.LOAD\n : DOM_EVENT.DOM_CONTENT_LOADED\n addEventListener(window, eventName, callback, { once: true })\n }\n}\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,OAAO,SAASC,eAAeA,CAACC,kBAAkB,EAAEC,QAAQ,EAAE;EAC5D,IACEC,QAAQ,CAACC,UAAU,KAAKH,kBAAkB,IAC1CE,QAAQ,CAACC,UAAU,KAAK,UAAU,EAClC;IACAF,QAAQ,CAAC,CAAC;EACZ,CAAC,MAAM;IACL,IAAIG,SAAS,GACXJ,kBAAkB,KAAK,UAAU,GAC7BF,SAAS,CAACO,IAAI,GACdP,SAAS,CAACQ,kBAAkB;IAClCT,gBAAgB,CAACU,MAAM,EAAEH,SAAS,EAAEH,QAAQ,EAAE;MAAEO,IAAI,EAAE;IAAK,CAAC,CAAC;EAC/D;AACF"}
|
|
1
|
+
{"version":3,"file":"runOnReadyState.js","names":["addEventListener","DOM_EVENT","runOnReadyState","expectedReadyState","callback","document","readyState","eventName","LOAD","DOM_CONTENT_LOADED","window","once"],"sources":["../../src/browser/runOnReadyState.js"],"sourcesContent":["import { addEventListener } from './addEventListener'\nimport { DOM_EVENT } from '../helper/enums'\nexport function runOnReadyState(expectedReadyState, callback) {\n if (\n document.readyState === expectedReadyState ||\n document.readyState === 'complete'\n ) {\n callback()\n } else {\n var eventName =\n expectedReadyState === 'complete'\n ? DOM_EVENT.LOAD\n : DOM_EVENT.DOM_CONTENT_LOADED\n addEventListener(window, eventName, callback, { once: true })\n }\n}\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,OAAO,SAASC,eAAeA,CAACC,kBAAkB,EAAEC,QAAQ,EAAE;EAC5D,IACEC,QAAQ,CAACC,UAAU,KAAKH,kBAAkB,IAC1CE,QAAQ,CAACC,UAAU,KAAK,UAAU,EAClC;IACAF,QAAQ,CAAC,CAAC;EACZ,CAAC,MAAM;IACL,IAAIG,SAAS,GACXJ,kBAAkB,KAAK,UAAU,GAC7BF,SAAS,CAACO,IAAI,GACdP,SAAS,CAACQ,kBAAkB;IAClCT,gBAAgB,CAACU,MAAM,EAAEH,SAAS,EAAEH,QAAQ,EAAE;MAAEO,IAAI,EAAE;IAAK,CAAC,CAAC;EAC/D;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroll.js","names":["getScrollX","scrollX","visual","window","visualViewport","pageLeft","offsetLeft","undefined","pageXOffset","Math","round","getScrollY","scrollY","pageTop","offsetTop","pageYOffset"],"sources":["../../src/browser/scroll.js"],"sourcesContent":["export function getScrollX() {\n var scrollX\n var visual = window.visualViewport\n if (visual) {\n scrollX = visual.pageLeft - visual.offsetLeft\n } else if (window.scrollX !== undefined) {\n scrollX = window.scrollX\n } else {\n scrollX = window.pageXOffset || 0\n }\n return Math.round(scrollX)\n}\n\nexport function getScrollY() {\n var scrollY\n var visual = window.visualViewport\n if (visual) {\n scrollY = visual.pageTop - visual.offsetTop\n } else if (window.scrollY !== undefined) {\n scrollY = window.scrollY\n } else {\n scrollY = window.pageYOffset || 0\n }\n return Math.round(scrollY)\n}\n"],"mappings":"AAAA,OAAO,SAASA,UAAUA,CAAA,EAAG;EAC3B,IAAIC,OAAO;EACX,IAAIC,MAAM,GAAGC,MAAM,CAACC,cAAc;EAClC,IAAIF,MAAM,EAAE;IACVD,OAAO,GAAGC,MAAM,CAACG,QAAQ,GAAGH,MAAM,CAACI,UAAU;EAC/C,CAAC,MAAM,IAAIH,MAAM,CAACF,OAAO,KAAKM,SAAS,EAAE;IACvCN,OAAO,GAAGE,MAAM,CAACF,OAAO;EAC1B,CAAC,MAAM;IACLA,OAAO,GAAGE,MAAM,CAACK,WAAW,IAAI,CAAC;EACnC;EACA,OAAOC,IAAI,CAACC,KAAK,CAACT,OAAO,CAAC;AAC5B;AAEA,OAAO,SAASU,UAAUA,CAAA,EAAG;EAC3B,IAAIC,OAAO;EACX,IAAIV,MAAM,GAAGC,MAAM,CAACC,cAAc;EAClC,IAAIF,MAAM,EAAE;IACVU,OAAO,GAAGV,MAAM,CAACW,OAAO,GAAGX,MAAM,CAACY,SAAS;EAC7C,CAAC,MAAM,IAAIX,MAAM,CAACS,OAAO,KAAKL,SAAS,EAAE;IACvCK,OAAO,GAAGT,MAAM,CAACS,OAAO;EAC1B,CAAC,MAAM;IACLA,OAAO,GAAGT,MAAM,CAACY,WAAW,IAAI,CAAC;EACnC;EACA,OAAON,IAAI,CAACC,KAAK,CAACE,OAAO,CAAC;AAC5B"}
|
|
1
|
+
{"version":3,"file":"scroll.js","names":["getScrollX","scrollX","visual","window","visualViewport","pageLeft","offsetLeft","undefined","pageXOffset","Math","round","getScrollY","scrollY","pageTop","offsetTop","pageYOffset"],"sources":["../../src/browser/scroll.js"],"sourcesContent":["export function getScrollX() {\n var scrollX\n var visual = window.visualViewport\n if (visual) {\n scrollX = visual.pageLeft - visual.offsetLeft\n } else if (window.scrollX !== undefined) {\n scrollX = window.scrollX\n } else {\n scrollX = window.pageXOffset || 0\n }\n return Math.round(scrollX)\n}\n\nexport function getScrollY() {\n var scrollY\n var visual = window.visualViewport\n if (visual) {\n scrollY = visual.pageTop - visual.offsetTop\n } else if (window.scrollY !== undefined) {\n scrollY = window.scrollY\n } else {\n scrollY = window.pageYOffset || 0\n }\n return Math.round(scrollY)\n}\n"],"mappings":"AAAA,OAAO,SAASA,UAAUA,CAAA,EAAG;EAC3B,IAAIC,OAAO;EACX,IAAIC,MAAM,GAAGC,MAAM,CAACC,cAAc;EAClC,IAAIF,MAAM,EAAE;IACVD,OAAO,GAAGC,MAAM,CAACG,QAAQ,GAAGH,MAAM,CAACI,UAAU;EAC/C,CAAC,MAAM,IAAIH,MAAM,CAACF,OAAO,KAAKM,SAAS,EAAE;IACvCN,OAAO,GAAGE,MAAM,CAACF,OAAO;EAC1B,CAAC,MAAM;IACLA,OAAO,GAAGE,MAAM,CAACK,WAAW,IAAI,CAAC;EACnC;EACA,OAAOC,IAAI,CAACC,KAAK,CAACT,OAAO,CAAC;AAC5B;AAEA,OAAO,SAASU,UAAUA,CAAA,EAAG;EAC3B,IAAIC,OAAO;EACX,IAAIV,MAAM,GAAGC,MAAM,CAACC,cAAc;EAClC,IAAIF,MAAM,EAAE;IACVU,OAAO,GAAGV,MAAM,CAACW,OAAO,GAAGX,MAAM,CAACY,SAAS;EAC7C,CAAC,MAAM,IAAIX,MAAM,CAACS,OAAO,KAAKL,SAAS,EAAE;IACvCK,OAAO,GAAGT,MAAM,CAACS,OAAO;EAC1B,CAAC,MAAM;IACLA,OAAO,GAAGT,MAAM,CAACY,WAAW,IAAI,CAAC;EACnC;EACA,OAAON,IAAI,CAACC,KAAK,CAACE,OAAO,CAAC;AAC5B","ignoreList":[]}
|
|
@@ -1 +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","toUpperCase","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 return new Observable(function (observable) {\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}\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: String(method).toUpperCase(),\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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"}
|
|
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","toUpperCase","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 return new Observable(function (observable) {\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}\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: String(method).toUpperCase(),\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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","ignoreList":[]}
|
|
@@ -74,14 +74,22 @@ export function validatePostRequestRequireParamsConfiguration(initConfiguration)
|
|
|
74
74
|
}
|
|
75
75
|
export function buildCookieOptions(initConfiguration) {
|
|
76
76
|
var cookieOptions = {};
|
|
77
|
-
|
|
78
|
-
cookieOptions.
|
|
77
|
+
|
|
78
|
+
// cookieOptions.secure = mustUseSecureCookie(initConfiguration)
|
|
79
|
+
// cookieOptions.crossSite = !!initConfiguration.useCrossSiteSessionCookie
|
|
80
|
+
cookieOptions.secure = !!initConfiguration.useSecureSessionCookie || !!initConfiguration.usePartitionedCrossSiteSessionCookie || !!initConfiguration.useCrossSiteSessionCookie;
|
|
81
|
+
cookieOptions.crossSite = !!initConfiguration.usePartitionedCrossSiteSessionCookie || !!initConfiguration.useCrossSiteSessionCookie;
|
|
82
|
+
cookieOptions.partitioned = !!initConfiguration.usePartitionedCrossSiteSessionCookie;
|
|
79
83
|
if (initConfiguration.trackSessionAcrossSubdomains) {
|
|
80
84
|
cookieOptions.domain = getCurrentSite();
|
|
81
85
|
}
|
|
82
86
|
return cookieOptions;
|
|
83
87
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
88
|
+
|
|
89
|
+
// function mustUseSecureCookie(initConfiguration) {
|
|
90
|
+
// return (
|
|
91
|
+
// !!initConfiguration.useSecureSessionCookie ||
|
|
92
|
+
// !!initConfiguration.useCrossSiteSessionCookie
|
|
93
|
+
// )
|
|
94
|
+
// }
|
|
87
95
|
//# sourceMappingURL=configuration.js.map
|
|
@@ -1 +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","storeContextsToLocal","sendContentTypeByJson","validatePostRequestRequireParamsConfiguration","site","datakitOrigin","datakitUrl","clientToken","secure","
|
|
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","storeContextsToLocal","sendContentTypeByJson","validatePostRequestRequireParamsConfiguration","site","datakitOrigin","datakitUrl","clientToken","secure","useSecureSessionCookie","usePartitionedCrossSiteSessionCookie","useCrossSiteSessionCookie","crossSite","partitioned","trackSessionAcrossSubdomains","domain"],"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 storeContextsToLocal: !!initConfiguration.storeContextsToLocal,\n sendContentTypeByJson: !!initConfiguration.sendContentTypeByJson\n },\n computeTransportConfiguration(initConfiguration)\n )\n}\nexport function validatePostRequestRequireParamsConfiguration(\n initConfiguration\n) {\n if (\n !initConfiguration.site &&\n !initConfiguration.datakitOrigin &&\n !initConfiguration.datakitUrl\n ) {\n display.error(\n 'datakitOrigin or site is not configured, no RUM data will be collected.'\n )\n return false\n }\n // if (!initConfiguration.datakitUrl && !initConfiguration.datakitOrigin) {\n // display.error(\n // 'datakitOrigin is not configured, no RUM data will be collected.'\n // )\n // return false\n // }\n if (initConfiguration.site && !initConfiguration.clientToken) {\n display.error(\n 'clientToken is not configured, no RUM data will be collected.'\n )\n return false\n }\n return true\n}\nexport function buildCookieOptions(initConfiguration) {\n var cookieOptions = {}\n\n // cookieOptions.secure = mustUseSecureCookie(initConfiguration)\n // cookieOptions.crossSite = !!initConfiguration.useCrossSiteSessionCookie\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 if (initConfiguration.trackSessionAcrossSubdomains) {\n cookieOptions.domain = getCurrentSite()\n }\n\n return cookieOptions\n}\n\n// function mustUseSecureCookie(initConfiguration) {\n// return (\n// !!initConfiguration.useSecureSessionCookie ||\n// !!initConfiguration.useCrossSiteSessionCookie\n// )\n// }\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transportConfiguration.js","names":["isFunction","isBoolean","some","TRIM_REGIX","typeMap","rum","log","sessionReplay","getEndPointUrl","configuration","type","subUrl","url","datakitOrigin","datakitUrl","site","indexOf","location","origin","trim","endpoint","lastIndexOf","length","clientToken","str","replace","computeTransportConfiguration","initConfiguration","isIntakeUrl","isServerError","request","rumEndpoint","logsEndpoint","sessionReplayEndPoint","isIntakeRequest","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(configuration, type) {\n // type: rum, log,replay\n var subUrl = typeMap[type]\n if (!subUrl) return ''\n var url =\n configuration.datakitOrigin ||\n configuration.datakitUrl ||\n configuration.site\n if (url.indexOf('/') === 0) {\n // 绝对路径这种 /xxx\n url = location.origin + trim(url)\n }\n var endpoint = url\n if (url.lastIndexOf('/') === url.length - 1) {\n endpoint = trim(url) + 'v1/write' + subUrl\n } else {\n endpoint = trim(url) + '/v1/write' + subUrl\n }\n if (configuration.site && configuration.clientToken) {\n endpoint =\n endpoint + '?token=' + configuration.clientToken + '&to_headless=true'\n }\n return endpoint\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(initConfiguration, 'rum'),\n logsEndpoint: getEndPointUrl(initConfiguration, 'log'),\n sessionReplayEndPoint: getEndPointUrl(initConfiguration, 'sessionReplay'),\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":"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"}
|
|
1
|
+
{"version":3,"file":"transportConfiguration.js","names":["isFunction","isBoolean","some","TRIM_REGIX","typeMap","rum","log","sessionReplay","getEndPointUrl","configuration","type","subUrl","url","datakitOrigin","datakitUrl","site","indexOf","location","origin","trim","endpoint","lastIndexOf","length","clientToken","str","replace","computeTransportConfiguration","initConfiguration","isIntakeUrl","isServerError","request","rumEndpoint","logsEndpoint","sessionReplayEndPoint","isIntakeRequest","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(configuration, type) {\n // type: rum, log,replay\n var subUrl = typeMap[type]\n if (!subUrl) return ''\n var url =\n configuration.datakitOrigin ||\n configuration.datakitUrl ||\n configuration.site\n if (url.indexOf('/') === 0) {\n // 绝对路径这种 /xxx\n url = location.origin + trim(url)\n }\n var endpoint = url\n if (url.lastIndexOf('/') === url.length - 1) {\n endpoint = trim(url) + 'v1/write' + subUrl\n } else {\n endpoint = trim(url) + '/v1/write' + subUrl\n }\n if (configuration.site && configuration.clientToken) {\n endpoint =\n endpoint + '?token=' + configuration.clientToken + '&to_headless=true'\n }\n return endpoint\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(initConfiguration, 'rum'),\n logsEndpoint: getEndPointUrl(initConfiguration, 'log'),\n sessionReplayEndPoint: getEndPointUrl(initConfiguration, 'sessionReplay'),\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,aAAa,EAAEC,IAAI,EAAE;EAC3C;EACA,IAAIC,MAAM,GAAGP,OAAO,CAACM,IAAI,CAAC;EAC1B,IAAI,CAACC,MAAM,EAAE,OAAO,EAAE;EACtB,IAAIC,GAAG,GACLH,aAAa,CAACI,aAAa,IAC3BJ,aAAa,CAACK,UAAU,IACxBL,aAAa,CAACM,IAAI;EACpB,IAAIH,GAAG,CAACI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;IAC1B;IACAJ,GAAG,GAAGK,QAAQ,CAACC,MAAM,GAAGC,IAAI,CAACP,GAAG,CAAC;EACnC;EACA,IAAIQ,QAAQ,GAAGR,GAAG;EAClB,IAAIA,GAAG,CAACS,WAAW,CAAC,GAAG,CAAC,KAAKT,GAAG,CAACU,MAAM,GAAG,CAAC,EAAE;IAC3CF,QAAQ,GAAGD,IAAI,CAACP,GAAG,CAAC,GAAG,UAAU,GAAGD,MAAM;EAC5C,CAAC,MAAM;IACLS,QAAQ,GAAGD,IAAI,CAACP,GAAG,CAAC,GAAG,WAAW,GAAGD,MAAM;EAC7C;EACA,IAAIF,aAAa,CAACM,IAAI,IAAIN,aAAa,CAACc,WAAW,EAAE;IACnDH,QAAQ,GACNA,QAAQ,GAAG,SAAS,GAAGX,aAAa,CAACc,WAAW,GAAG,mBAAmB;EAC1E;EACA,OAAOH,QAAQ;AACjB;AAEA,SAASD,IAAIA,CAACK,GAAG,EAAE;EACjB,OAAOA,GAAG,CAACC,OAAO,CAACtB,UAAU,EAAE,EAAE,CAAC;AACpC;AAEA,OAAO,SAASuB,6BAA6BA,CAACC,iBAAiB,EAAE;EAC/D,IAAIC,WAAW,GAAG,SAAAA,YAAUhB,GAAG,EAAE;IAC/B,OAAO,KAAK;EACd,CAAC;EACD,IACE,aAAa,IAAIe,iBAAiB,IAClC3B,UAAU,CAAC2B,iBAAiB,CAACC,WAAW,CAAC,IACzC3B,SAAS,CAAC0B,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,IACpC3B,UAAU,CAAC2B,iBAAiB,CAACE,aAAa,CAAC,IAC3C5B,SAAS,CAAC0B,iBAAiB,CAACE,aAAa,CAAC,CAAC,CAAC,EAC5C;IACAA,aAAa,GAAGF,iBAAiB,CAACE,aAAa;EACjD;EACA,OAAO;IACLE,WAAW,EAAEvB,cAAc,CAACmB,iBAAiB,EAAE,KAAK,CAAC;IACrDK,YAAY,EAAExB,cAAc,CAACmB,iBAAiB,EAAE,KAAK,CAAC;IACtDM,qBAAqB,EAAEzB,cAAc,CAACmB,iBAAiB,EAAE,eAAe,CAAC;IACzEC,WAAW,EAAEA,WAAW;IACxBC,aAAa,EAAEA;EACjB,CAAC;AACH;AACA,OAAO,SAASK,eAAeA,CAACtB,GAAG,EAAEH,aAAa,EAAE;EAClD,IAAI0B,cAAc,GAAG,CAAC1B,aAAa,CAACsB,WAAW,CAAC;EAChD,IAAItB,aAAa,CAACuB,YAAY,EAAE;IAC9BG,cAAc,CAACC,IAAI,CAAC3B,aAAa,CAACuB,YAAY,CAAC;EACjD;EACA,IAAIvB,aAAa,CAACwB,qBAAqB,EAAE;IACvCE,cAAc,CAACC,IAAI,CAAC3B,aAAa,CAACwB,qBAAqB,CAAC;EAC1D;EACA;EACA,OACE/B,IAAI,CAACiC,cAAc,EAAE,UAAUE,OAAO,EAAE;IACtC,OAAOzB,GAAG,CAACI,OAAO,CAACqB,OAAO,CAAC,KAAK,CAAC;EACnC,CAAC,CAAC,IAAI5B,aAAa,CAACmB,WAAW,CAAChB,GAAG,CAAC;AAExC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consoleObservable.js","names":["computeStackTrace","createHandlingStack","formatErrorMessage","toStackTraceString","flattenErrorCauses","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","causes","error","firstErrorParam","Error","undefined"],"sources":["../../src/console/consoleObservable.js"],"sourcesContent":["import { computeStackTrace } from '../tracekit'\nimport {\n createHandlingStack,\n formatErrorMessage,\n toStackTraceString,\n flattenErrorCauses\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 return new Observable(function (observable) {\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}\n\nfunction buildConsoleLog(params, api, handlingStack) {\n var message = map(params, function (param) {\n return formatConsoleParameters(param)\n }).join(' ')\n var stack\n var causes\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 causes = firstErrorParam\n ? flattenErrorCauses(firstErrorParam, 'console')\n : undefined\n }\n\n return {\n api: api,\n message: message,\n stack: stack,\n handlingStack: handlingStack,\n causes: causes\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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"}
|
|
1
|
+
{"version":3,"file":"consoleObservable.js","names":["computeStackTrace","createHandlingStack","formatErrorMessage","toStackTraceString","flattenErrorCauses","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","causes","error","firstErrorParam","Error","undefined"],"sources":["../../src/console/consoleObservable.js"],"sourcesContent":["import { computeStackTrace } from '../tracekit'\nimport {\n createHandlingStack,\n formatErrorMessage,\n toStackTraceString,\n flattenErrorCauses\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 return new Observable(function (observable) {\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}\n\nfunction buildConsoleLog(params, api, handlingStack) {\n var message = map(params, function (param) {\n return formatConsoleParameters(param)\n }).join(' ')\n var stack\n var causes\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 causes = firstErrorParam\n ? flattenErrorCauses(firstErrorParam, 'console')\n : undefined\n }\n\n return {\n api: api,\n message: message,\n stack: stack,\n handlingStack: handlingStack,\n causes: causes\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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","ignoreList":[]}
|
package/esm/dataMap.js
CHANGED
|
@@ -105,7 +105,9 @@ export var dataMap = {
|
|
|
105
105
|
fields: {
|
|
106
106
|
duration: 'resource.duration',
|
|
107
107
|
resource_size: 'resource.size',
|
|
108
|
-
resource_encode_size: 'resource.
|
|
108
|
+
resource_encode_size: 'resource.encoded_body_size',
|
|
109
|
+
resource_decode_size: 'resource.decoded_body_size',
|
|
110
|
+
resource_transfer_size: 'resource.transfer_size',
|
|
109
111
|
resource_render_blocking_status: 'resource.render_blocking_status',
|
|
110
112
|
resource_dns: 'resource.dns',
|
|
111
113
|
resource_tcp: 'resource.tcp',
|