@openobserve/browser-core 0.3.3 → 0.4.0-beta.1
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/README.md +1 -1
- package/cjs/boot/displayAlreadyInitializedError.js +6 -7
- package/cjs/boot/displayAlreadyInitializedError.js.map +1 -1
- package/cjs/boot/init.js +26 -34
- package/cjs/boot/init.js.map +1 -1
- package/cjs/browser/addEventListener.d.ts +10 -8
- package/cjs/browser/addEventListener.js +107 -50
- package/cjs/browser/addEventListener.js.map +1 -1
- package/cjs/browser/browser.types.d.ts +91 -4
- package/cjs/browser/cookie.d.ts +0 -1
- package/cjs/browser/cookie.js +65 -92
- package/cjs/browser/cookie.js.map +1 -1
- package/cjs/browser/cookieAccess.d.ts +16 -0
- package/cjs/browser/cookieAccess.js +114 -0
- package/cjs/browser/cookieAccess.js.map +1 -0
- package/cjs/browser/fetch.d.ts +9 -0
- package/cjs/browser/fetch.js +18 -0
- package/cjs/browser/fetch.js.map +1 -0
- package/cjs/browser/fetchObservable.d.ts +3 -3
- package/cjs/browser/fetchObservable.js +80 -92
- package/cjs/browser/fetchObservable.js.map +1 -1
- package/cjs/browser/pageMayExitObservable.d.ts +1 -2
- package/cjs/browser/pageMayExitObservable.js +41 -40
- package/cjs/browser/pageMayExitObservable.js.map +1 -1
- package/cjs/browser/runOnReadyState.d.ts +2 -3
- package/cjs/browser/runOnReadyState.js +18 -17
- package/cjs/browser/runOnReadyState.js.map +1 -1
- package/cjs/browser/xhrObservable.d.ts +8 -3
- package/cjs/browser/xhrObservable.js +65 -77
- package/cjs/browser/xhrObservable.js.map +1 -1
- package/cjs/domain/allowedTrackingOrigins.d.ts +1 -1
- package/cjs/domain/allowedTrackingOrigins.js +25 -23
- package/cjs/domain/allowedTrackingOrigins.js.map +1 -1
- package/cjs/domain/bufferedData.d.ts +20 -6
- package/cjs/domain/bufferedData.js +41 -19
- package/cjs/domain/bufferedData.js.map +1 -1
- package/cjs/domain/configuration/configuration.d.ts +44 -43
- package/cjs/domain/configuration/configuration.js +122 -125
- package/cjs/domain/configuration/configuration.js.map +1 -1
- package/cjs/domain/configuration/endpointBuilder.d.ts +42 -7
- package/cjs/domain/configuration/endpointBuilder.js +67 -74
- package/cjs/domain/configuration/endpointBuilder.js.map +1 -1
- package/cjs/domain/configuration/index.d.ts +2 -3
- package/cjs/domain/connectivity/connectivity.d.ts +1 -7
- package/cjs/domain/connectivity/connectivity.js +11 -11
- package/cjs/domain/connectivity/connectivity.js.map +1 -1
- package/cjs/domain/console/consoleObservable.d.ts +1 -1
- package/cjs/domain/console/consoleObservable.js +59 -74
- package/cjs/domain/console/consoleObservable.js.map +1 -1
- package/cjs/domain/context/contextConstants.js +24 -15
- package/cjs/domain/context/contextConstants.js.map +1 -1
- package/cjs/domain/context/contextManager.js +49 -54
- package/cjs/domain/context/contextManager.js.map +1 -1
- package/cjs/domain/context/contextUtils.js +11 -12
- package/cjs/domain/context/contextUtils.js.map +1 -1
- package/cjs/domain/context/defineContextMethod.d.ts +2 -2
- package/cjs/domain/context/defineContextMethod.js +15 -16
- package/cjs/domain/context/defineContextMethod.js.map +1 -1
- package/cjs/domain/context/storeContextManager.d.ts +1 -2
- package/cjs/domain/context/storeContextManager.js +30 -33
- package/cjs/domain/context/storeContextManager.js.map +1 -1
- package/cjs/domain/contexts/accountContext.d.ts +2 -2
- package/cjs/domain/contexts/accountContext.js +26 -29
- package/cjs/domain/contexts/accountContext.js.map +1 -1
- package/cjs/domain/contexts/globalContext.d.ts +2 -2
- package/cjs/domain/contexts/globalContext.js +17 -17
- package/cjs/domain/contexts/globalContext.js.map +1 -1
- package/cjs/domain/contexts/tabContext.d.ts +4 -0
- package/cjs/domain/contexts/tabContext.js +27 -0
- package/cjs/domain/contexts/tabContext.js.map +1 -0
- package/cjs/domain/contexts/telemetrySessionContext.d.ts +4 -0
- package/cjs/domain/contexts/telemetrySessionContext.js +17 -0
- package/cjs/domain/contexts/telemetrySessionContext.js.map +1 -0
- package/cjs/domain/contexts/userContext.d.ts +8 -3
- package/cjs/domain/contexts/userContext.js +29 -41
- package/cjs/domain/contexts/userContext.js.map +1 -1
- package/cjs/domain/deflate/deflate.types.js +11 -2
- package/cjs/domain/deflate/deflate.types.js.map +1 -1
- package/cjs/domain/error/error.d.ts +1 -1
- package/cjs/domain/error/error.js +62 -60
- package/cjs/domain/error/error.js.map +1 -1
- package/cjs/domain/error/error.types.d.ts +1 -1
- package/cjs/domain/error/error.types.js +24 -11
- package/cjs/domain/error/error.types.js.map +1 -1
- package/cjs/domain/error/trackRuntimeError.d.ts +3 -2
- package/cjs/domain/error/trackRuntimeError.js +41 -41
- package/cjs/domain/error/trackRuntimeError.js.map +1 -1
- package/cjs/domain/eventRateLimiter/createEventRateLimiter.js +33 -38
- package/cjs/domain/eventRateLimiter/createEventRateLimiter.js.map +1 -1
- package/cjs/domain/extension/extensionUtils.js +18 -25
- package/cjs/domain/extension/extensionUtils.js.map +1 -1
- package/cjs/domain/intakeSites.d.ts +3 -3
- package/cjs/domain/intakeSites.js +23 -10
- package/cjs/domain/intakeSites.js.map +1 -1
- package/cjs/domain/report/reportObservable.d.ts +1 -2
- package/cjs/domain/report/reportObservable.js +73 -85
- package/cjs/domain/report/reportObservable.js.map +1 -1
- package/cjs/domain/resourceUtils.js +19 -17
- package/cjs/domain/resourceUtils.js.map +1 -1
- package/cjs/domain/sampler.d.ts +11 -0
- package/cjs/domain/sampler.js +40 -0
- package/cjs/domain/sampler.js.map +1 -0
- package/cjs/domain/session/sessionConstants.d.ts +1 -0
- package/cjs/domain/session/sessionConstants.js +19 -13
- package/cjs/domain/session/sessionConstants.js.map +1 -1
- package/cjs/domain/session/sessionManager.d.ts +13 -13
- package/cjs/domain/session/sessionManager.js +219 -193
- package/cjs/domain/session/sessionManager.js.map +1 -1
- package/cjs/domain/session/sessionState.d.ts +10 -1
- package/cjs/domain/session/sessionState.js +70 -55
- package/cjs/domain/session/sessionState.js.map +1 -1
- package/cjs/domain/session/sessionStateValidation.js +7 -8
- package/cjs/domain/session/sessionStateValidation.js.map +1 -1
- package/cjs/domain/session/sessionStore.d.ts +4 -33
- package/cjs/domain/session/sessionStore.js +42 -180
- package/cjs/domain/session/sessionStore.js.map +1 -1
- package/cjs/domain/session/storeStrategies/sessionInCookie.d.ts +7 -11
- package/cjs/domain/session/storeStrategies/sessionInCookie.js +89 -95
- package/cjs/domain/session/storeStrategies/sessionInCookie.js.map +1 -1
- package/cjs/domain/session/storeStrategies/sessionInLocalStorage.d.ts +1 -4
- package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js +39 -38
- package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js.map +1 -1
- package/cjs/domain/session/storeStrategies/sessionInMemory.d.ts +12 -0
- package/cjs/domain/session/storeStrategies/sessionInMemory.js +35 -0
- package/cjs/domain/session/storeStrategies/sessionInMemory.js.map +1 -0
- package/cjs/domain/session/storeStrategies/sessionStoreStrategy.d.ts +16 -7
- package/cjs/domain/session/storeStrategies/sessionStoreStrategy.js +7 -4
- package/cjs/domain/session/storeStrategies/sessionStoreStrategy.js.map +1 -1
- package/cjs/domain/synthetics/syntheticsWorkerValues.d.ts +9 -3
- package/cjs/domain/synthetics/syntheticsWorkerValues.js +33 -25
- package/cjs/domain/synthetics/syntheticsWorkerValues.js.map +1 -1
- package/cjs/domain/tags.d.ts +0 -1
- package/cjs/domain/tags.js +22 -58
- package/cjs/domain/tags.js.map +1 -1
- package/cjs/domain/telemetry/rawTelemetryEvent.types.js +8 -7
- package/cjs/domain/telemetry/rawTelemetryEvent.types.js.map +1 -1
- package/cjs/domain/telemetry/telemetry.d.ts +8 -8
- package/cjs/domain/telemetry/telemetry.js +196 -211
- package/cjs/domain/telemetry/telemetry.js.map +1 -1
- package/cjs/domain/telemetry/telemetryEvent.types.d.ts +97 -17
- package/cjs/domain/trackingConsent.d.ts +1 -0
- package/cjs/domain/trackingConsent.js +35 -24
- package/cjs/domain/trackingConsent.js.map +1 -1
- package/cjs/index.d.ts +25 -22
- package/cjs/index.js +281 -194
- package/cjs/tools/abstractLifeCycle.js +19 -26
- package/cjs/tools/abstractLifeCycle.js.map +1 -1
- package/cjs/tools/catchUserErrors.js +12 -12
- package/cjs/tools/catchUserErrors.js.map +1 -1
- package/cjs/tools/display.d.ts +1 -35
- package/cjs/tools/display.js +11 -43
- package/cjs/tools/display.js.map +1 -1
- package/cjs/tools/encoder.js +36 -37
- package/cjs/tools/encoder.js.map +1 -1
- package/cjs/tools/experimentalFeatures.d.ts +1 -4
- package/cjs/tools/experimentalFeatures.js +29 -40
- package/cjs/tools/experimentalFeatures.js.map +1 -1
- package/cjs/tools/getZoneJsOriginalValue.d.ts +1 -1
- package/cjs/tools/getZoneJsOriginalValue.js +22 -25
- package/cjs/tools/getZoneJsOriginalValue.js.map +1 -1
- package/cjs/tools/globalObject.d.ts +16 -15
- package/cjs/tools/globalObject.js +7 -43
- package/cjs/tools/globalObject.js.map +1 -1
- package/cjs/tools/instrumentMethod.d.ts +58 -1
- package/cjs/tools/instrumentMethod.js +174 -112
- package/cjs/tools/instrumentMethod.js.map +1 -1
- package/cjs/tools/matchOption.js +25 -29
- package/cjs/tools/matchOption.js.map +1 -1
- package/cjs/tools/mockable.d.ts +22 -0
- package/cjs/tools/mockable.js +28 -0
- package/cjs/tools/mockable.js.map +1 -0
- package/cjs/tools/monitor.d.ts +5 -7
- package/cjs/tools/monitor.js +13 -58
- package/cjs/tools/monitor.js.map +1 -1
- package/cjs/tools/observable.d.ts +3 -1
- package/cjs/tools/observable.js +75 -85
- package/cjs/tools/observable.js.map +1 -1
- package/cjs/tools/queueMicrotask.js +9 -14
- package/cjs/tools/queueMicrotask.js.map +1 -1
- package/cjs/tools/readBytesFromStream.d.ts +1 -6
- package/cjs/tools/readBytesFromStream.js +18 -25
- package/cjs/tools/readBytesFromStream.js.map +1 -1
- package/cjs/tools/requestIdleCallback.js +22 -29
- package/cjs/tools/requestIdleCallback.js.map +1 -1
- package/cjs/tools/sendToExtension.js +10 -8
- package/cjs/tools/sendToExtension.js.map +1 -1
- package/cjs/tools/serialisation/jsonStringify.js +37 -42
- package/cjs/tools/serialisation/jsonStringify.js.map +1 -1
- package/cjs/tools/serialisation/sanitize.d.ts +1 -0
- package/cjs/tools/serialisation/sanitize.js +111 -167
- package/cjs/tools/serialisation/sanitize.js.map +1 -1
- package/cjs/tools/serialisation/stringify.d.ts +2 -0
- package/cjs/tools/serialisation/stringify.js +18 -0
- package/cjs/tools/serialisation/stringify.js.map +1 -0
- package/cjs/tools/stackTrace/computeStackTrace.js +121 -159
- package/cjs/tools/stackTrace/computeStackTrace.js.map +1 -1
- package/cjs/tools/stackTrace/handlingStack.d.ts +1 -1
- package/cjs/tools/stackTrace/handlingStack.js +39 -38
- package/cjs/tools/stackTrace/handlingStack.js.map +1 -1
- package/cjs/tools/taskQueue.js +40 -49
- package/cjs/tools/taskQueue.js.map +1 -1
- package/cjs/tools/timer.d.ts +2 -1
- package/cjs/tools/timer.js +14 -13
- package/cjs/tools/timer.js.map +1 -1
- package/cjs/tools/utils/arrayUtils.d.ts +1 -0
- package/cjs/tools/utils/arrayUtils.js +17 -13
- package/cjs/tools/utils/arrayUtils.js.map +1 -1
- package/cjs/tools/utils/browserDetection.d.ts +1 -0
- package/cjs/tools/utils/browserDetection.js +25 -23
- package/cjs/tools/utils/browserDetection.js.map +1 -1
- package/cjs/tools/utils/byteUtils.js +20 -28
- package/cjs/tools/utils/byteUtils.js.map +1 -1
- package/cjs/tools/utils/functionUtils.js +33 -40
- package/cjs/tools/utils/functionUtils.js.map +1 -1
- package/cjs/tools/utils/numberUtils.js +15 -14
- package/cjs/tools/utils/numberUtils.js.map +1 -1
- package/cjs/tools/utils/objectUtils.d.ts +2 -0
- package/cjs/tools/utils/objectUtils.js +27 -14
- package/cjs/tools/utils/objectUtils.js.map +1 -1
- package/cjs/tools/utils/polyfills.js +12 -16
- package/cjs/tools/utils/polyfills.js.map +1 -1
- package/cjs/tools/utils/responseUtils.js +11 -12
- package/cjs/tools/utils/responseUtils.js.map +1 -1
- package/cjs/tools/utils/stringUtils.js +56 -77
- package/cjs/tools/utils/stringUtils.js.map +1 -1
- package/cjs/tools/utils/timezone.js +9 -10
- package/cjs/tools/utils/timezone.js.map +1 -1
- package/cjs/tools/utils/urlPolyfill.js +42 -46
- package/cjs/tools/utils/urlPolyfill.js.map +1 -1
- package/cjs/tools/valueHistory.d.ts +9 -1
- package/cjs/tools/valueHistory.js +110 -99
- package/cjs/tools/valueHistory.js.map +1 -1
- package/cjs/transport/batch.js +73 -106
- package/cjs/transport/batch.js.map +1 -1
- package/cjs/transport/eventBridge.d.ts +6 -2
- package/cjs/transport/eventBridge.js +53 -38
- package/cjs/transport/eventBridge.js.map +1 -1
- package/cjs/transport/flushController.d.ts +2 -12
- package/cjs/transport/flushController.js +98 -117
- package/cjs/transport/flushController.js.map +1 -1
- package/cjs/transport/httpRequest.d.ts +0 -1
- package/cjs/transport/httpRequest.js +51 -85
- package/cjs/transport/httpRequest.js.map +1 -1
- package/cjs/transport/index.d.ts +1 -0
- package/cjs/transport/sendWithRetryStrategy.js +133 -146
- package/cjs/transport/sendWithRetryStrategy.js.map +1 -1
- package/esm/boot/displayAlreadyInitializedError.mjs +9 -0
- package/esm/boot/displayAlreadyInitializedError.mjs.map +1 -0
- package/esm/boot/init.mjs +30 -0
- package/esm/boot/init.mjs.map +1 -0
- package/esm/browser/addEventListener.mjs +107 -0
- package/esm/browser/addEventListener.mjs.map +1 -0
- package/esm/browser/cookie.mjs +81 -0
- package/esm/browser/cookie.mjs.map +1 -0
- package/esm/browser/cookieAccess.mjs +111 -0
- package/esm/browser/cookieAccess.mjs.map +1 -0
- package/esm/browser/fetch.mjs +18 -0
- package/esm/browser/fetch.mjs.map +1 -0
- package/esm/browser/fetchObservable.mjs +90 -0
- package/esm/browser/fetchObservable.mjs.map +1 -0
- package/esm/browser/pageMayExitObservable.mjs +44 -0
- package/esm/browser/pageMayExitObservable.mjs.map +1 -0
- package/esm/browser/runOnReadyState.mjs +19 -0
- package/esm/browser/runOnReadyState.mjs.map +1 -0
- package/esm/browser/xhrObservable.mjs +74 -0
- package/esm/browser/xhrObservable.mjs.map +1 -0
- package/esm/domain/allowedTrackingOrigins.mjs +27 -0
- package/esm/domain/allowedTrackingOrigins.mjs.map +1 -0
- package/esm/domain/bufferedData.mjs +43 -0
- package/esm/domain/bufferedData.mjs.map +1 -0
- package/esm/domain/configuration/configuration.mjs +131 -0
- package/esm/domain/configuration/configuration.mjs.map +1 -0
- package/esm/domain/configuration/endpointBuilder.mjs +72 -0
- package/esm/domain/configuration/endpointBuilder.mjs.map +1 -0
- package/esm/domain/connectivity/connectivity.mjs +14 -0
- package/esm/domain/connectivity/connectivity.mjs.map +1 -0
- package/esm/domain/console/consoleObservable.mjs +69 -0
- package/esm/domain/console/consoleObservable.mjs.map +1 -0
- package/esm/domain/context/contextConstants.mjs +25 -0
- package/esm/domain/context/contextConstants.mjs.map +1 -0
- package/esm/domain/context/contextManager.mjs +55 -0
- package/esm/domain/context/contextManager.mjs.map +1 -0
- package/esm/domain/context/contextUtils.mjs +15 -0
- package/esm/domain/context/contextUtils.mjs.map +1 -0
- package/esm/domain/context/defineContextMethod.mjs +19 -0
- package/esm/domain/context/defineContextMethod.mjs.map +1 -0
- package/esm/domain/context/storeContextManager.mjs +36 -0
- package/esm/domain/context/storeContextManager.mjs.map +1 -0
- package/esm/domain/contexts/accountContext.mjs +29 -0
- package/esm/domain/contexts/accountContext.mjs.map +1 -0
- package/esm/domain/contexts/globalContext.mjs +20 -0
- package/esm/domain/contexts/globalContext.mjs.map +1 -0
- package/esm/domain/contexts/tabContext.mjs +27 -0
- package/esm/domain/contexts/tabContext.mjs.map +1 -0
- package/esm/domain/contexts/telemetrySessionContext.mjs +17 -0
- package/esm/domain/contexts/telemetrySessionContext.mjs.map +1 -0
- package/esm/domain/contexts/userContext.mjs +32 -0
- package/esm/domain/contexts/userContext.mjs.map +1 -0
- package/esm/domain/deflate/deflate.types.mjs +12 -0
- package/esm/domain/deflate/deflate.types.mjs.map +1 -0
- package/esm/domain/error/error.mjs +73 -0
- package/esm/domain/error/error.mjs.map +1 -0
- package/esm/domain/error/error.types.mjs +24 -0
- package/esm/domain/error/error.types.mjs.map +1 -0
- package/esm/domain/error/trackRuntimeError.mjs +48 -0
- package/esm/domain/error/trackRuntimeError.mjs.map +1 -0
- package/esm/domain/eventRateLimiter/createEventRateLimiter.mjs +36 -0
- package/esm/domain/eventRateLimiter/createEventRateLimiter.mjs.map +1 -0
- package/esm/domain/extension/extensionUtils.mjs +23 -0
- package/esm/domain/extension/extensionUtils.mjs.map +1 -0
- package/esm/domain/intakeSites.mjs +18 -0
- package/esm/domain/intakeSites.mjs.map +1 -0
- package/esm/domain/report/reportObservable.mjs +86 -0
- package/esm/domain/report/reportObservable.mjs.map +1 -0
- package/esm/domain/resourceUtils.mjs +21 -0
- package/esm/domain/resourceUtils.mjs.map +1 -0
- package/esm/domain/sampler.mjs +37 -0
- package/esm/domain/sampler.mjs.map +1 -0
- package/esm/domain/session/sessionConstants.mjs +18 -0
- package/esm/domain/session/sessionConstants.mjs.map +1 -0
- package/esm/domain/session/sessionManager.mjs +225 -0
- package/esm/domain/session/sessionManager.mjs.map +1 -0
- package/esm/domain/session/sessionState.mjs +76 -0
- package/esm/domain/session/sessionState.mjs.map +1 -0
- package/esm/domain/session/sessionStateValidation.mjs +9 -0
- package/esm/domain/session/sessionStateValidation.mjs.map +1 -0
- package/esm/domain/session/sessionStore.mjs +46 -0
- package/esm/domain/session/sessionStore.mjs.map +1 -0
- package/esm/domain/session/storeStrategies/sessionInCookie.mjs +97 -0
- package/esm/domain/session/storeStrategies/sessionInCookie.mjs.map +1 -0
- package/esm/domain/session/storeStrategies/sessionInLocalStorage.mjs +42 -0
- package/esm/domain/session/storeStrategies/sessionInLocalStorage.mjs.map +1 -0
- package/esm/domain/session/storeStrategies/sessionInMemory.mjs +33 -0
- package/esm/domain/session/storeStrategies/sessionInMemory.mjs.map +1 -0
- package/esm/domain/session/storeStrategies/sessionStoreStrategy.mjs +7 -0
- package/esm/domain/session/storeStrategies/sessionStoreStrategy.mjs.map +1 -0
- package/esm/domain/synthetics/syntheticsWorkerValues.mjs +37 -0
- package/esm/domain/synthetics/syntheticsWorkerValues.mjs.map +1 -0
- package/esm/domain/tags.mjs +28 -0
- package/esm/domain/tags.mjs.map +1 -0
- package/esm/domain/telemetry/rawTelemetryEvent.types.mjs +10 -0
- package/esm/domain/telemetry/rawTelemetryEvent.types.mjs.map +1 -0
- package/esm/domain/telemetry/telemetry.mjs +219 -0
- package/esm/domain/telemetry/telemetry.mjs.map +1 -0
- package/esm/domain/trackingConsent.mjs +38 -0
- package/esm/domain/trackingConsent.mjs.map +1 -0
- package/esm/index.mjs +81 -0
- package/esm/tools/abstractLifeCycle.mjs +21 -0
- package/esm/tools/abstractLifeCycle.mjs.map +1 -0
- package/esm/tools/catchUserErrors.mjs +15 -0
- package/esm/tools/catchUserErrors.mjs.map +1 -0
- package/esm/tools/display.mjs +10 -0
- package/esm/tools/display.mjs.map +1 -0
- package/esm/tools/encoder.mjs +39 -0
- package/esm/tools/encoder.mjs.map +1 -0
- package/esm/tools/experimentalFeatures.mjs +35 -0
- package/esm/tools/experimentalFeatures.mjs.map +1 -0
- package/esm/tools/getZoneJsOriginalValue.mjs +26 -0
- package/esm/tools/getZoneJsOriginalValue.mjs.map +1 -0
- package/esm/tools/globalObject.mjs +7 -0
- package/esm/tools/globalObject.mjs.map +1 -0
- package/esm/tools/instrumentMethod.mjs +178 -0
- package/esm/tools/instrumentMethod.mjs.map +1 -0
- package/esm/tools/matchOption.mjs +30 -0
- package/esm/tools/matchOption.mjs.map +1 -0
- package/esm/tools/mockable.mjs +28 -0
- package/esm/tools/mockable.mjs.map +1 -0
- package/esm/tools/monitor.mjs +13 -0
- package/esm/tools/monitor.mjs.map +1 -0
- package/esm/tools/observable.mjs +77 -0
- package/esm/tools/observable.mjs.map +1 -0
- package/esm/tools/queueMicrotask.mjs +12 -0
- package/esm/tools/queueMicrotask.mjs.map +1 -0
- package/esm/tools/readBytesFromStream.mjs +21 -0
- package/esm/tools/readBytesFromStream.mjs.map +1 -0
- package/esm/tools/requestIdleCallback.mjs +28 -0
- package/esm/tools/requestIdleCallback.mjs.map +1 -0
- package/esm/tools/sendToExtension.mjs +13 -0
- package/esm/tools/sendToExtension.mjs.map +1 -0
- package/esm/tools/serialisation/jsonStringify.mjs +42 -0
- package/esm/tools/serialisation/jsonStringify.mjs.map +1 -0
- package/esm/tools/serialisation/sanitize.mjs +131 -0
- package/esm/tools/serialisation/sanitize.mjs.map +1 -0
- package/esm/tools/serialisation/stringify.mjs +17 -0
- package/esm/tools/serialisation/stringify.mjs.map +1 -0
- package/esm/tools/stackTrace/computeStackTrace.mjs +148 -0
- package/esm/tools/stackTrace/computeStackTrace.mjs.map +1 -0
- package/esm/tools/stackTrace/handlingStack.mjs +45 -0
- package/esm/tools/stackTrace/handlingStack.mjs.map +1 -0
- package/esm/tools/taskQueue.mjs +45 -0
- package/esm/tools/taskQueue.mjs.map +1 -0
- package/esm/tools/timer.mjs +20 -0
- package/esm/tools/timer.mjs.map +1 -0
- package/esm/tools/utils/arrayUtils.mjs +21 -0
- package/esm/tools/utils/arrayUtils.mjs.map +1 -0
- package/esm/tools/utils/browserDetection.mjs +31 -0
- package/esm/tools/utils/browserDetection.mjs.map +1 -0
- package/esm/tools/utils/byteUtils.mjs +23 -0
- package/esm/tools/utils/byteUtils.mjs.map +1 -0
- package/esm/tools/utils/functionUtils.mjs +35 -0
- package/esm/tools/utils/functionUtils.mjs.map +1 -0
- package/esm/tools/utils/numberUtils.mjs +22 -0
- package/esm/tools/utils/numberUtils.mjs.map +1 -0
- package/esm/tools/utils/objectUtils.mjs +31 -0
- package/esm/tools/utils/objectUtils.mjs.map +1 -0
- package/esm/tools/utils/polyfills.mjs +17 -0
- package/esm/tools/utils/polyfills.mjs.map +1 -0
- package/esm/tools/utils/responseUtils.mjs +15 -0
- package/esm/tools/utils/responseUtils.mjs.map +1 -0
- package/esm/tools/utils/stringUtils.mjs +66 -0
- package/esm/tools/utils/stringUtils.mjs.map +1 -0
- package/esm/tools/utils/timezone.mjs +12 -0
- package/esm/tools/utils/timezone.mjs.map +1 -0
- package/esm/tools/utils/urlPolyfill.mjs +51 -0
- package/esm/tools/utils/urlPolyfill.mjs.map +1 -0
- package/esm/tools/valueHistory.mjs +114 -0
- package/esm/tools/valueHistory.mjs.map +1 -0
- package/esm/transport/batch.mjs +77 -0
- package/esm/transport/batch.mjs.map +1 -0
- package/esm/transport/eventBridge.mjs +58 -0
- package/esm/transport/eventBridge.mjs.map +1 -0
- package/esm/transport/flushController.mjs +104 -0
- package/esm/transport/flushController.mjs.map +1 -0
- package/esm/transport/httpRequest.mjs +60 -0
- package/esm/transport/httpRequest.mjs.map +1 -0
- package/esm/transport/sendWithRetryStrategy.mjs +149 -0
- package/esm/transport/sendWithRetryStrategy.mjs.map +1 -0
- package/package.json +16 -5
- package/src/boot/init.ts +2 -2
- package/src/browser/addEventListener.ts +37 -5
- package/src/browser/browser.types.ts +127 -13
- package/src/browser/cookie.ts +21 -27
- package/src/browser/cookieAccess.ts +150 -0
- package/src/browser/fetch.ts +14 -0
- package/src/browser/fetchObservable.ts +22 -22
- package/src/browser/pageMayExitObservable.ts +7 -4
- package/src/browser/runOnReadyState.ts +3 -8
- package/src/browser/xhrObservable.ts +22 -12
- package/src/domain/allowedTrackingOrigins.ts +5 -5
- package/src/domain/bufferedData.ts +41 -14
- package/src/domain/configuration/configuration.ts +87 -72
- package/src/domain/configuration/endpointBuilder.ts +82 -52
- package/src/domain/configuration/index.ts +2 -2
- package/src/domain/connectivity/connectivity.ts +3 -15
- package/src/domain/console/consoleObservable.ts +3 -3
- package/src/domain/context/contextManager.ts +1 -1
- package/src/domain/context/contextUtils.ts +1 -1
- package/src/domain/context/defineContextMethod.ts +3 -3
- package/src/domain/context/storeContextManager.ts +9 -6
- package/src/domain/contexts/accountContext.ts +5 -5
- package/src/domain/contexts/globalContext.ts +4 -5
- package/src/domain/contexts/tabContext.ts +43 -0
- package/src/domain/contexts/telemetrySessionContext.ts +26 -0
- package/src/domain/contexts/userContext.ts +7 -11
- package/src/domain/error/error.ts +53 -23
- package/src/domain/error/error.types.ts +1 -1
- package/src/domain/error/trackRuntimeError.ts +11 -4
- package/src/domain/eventRateLimiter/createEventRateLimiter.ts +1 -1
- package/src/domain/intakeSites.ts +8 -3
- package/src/domain/report/reportObservable.ts +11 -7
- package/src/domain/sampler.ts +64 -0
- package/src/domain/session/sessionConstants.ts +2 -1
- package/src/domain/session/sessionManager.ts +281 -176
- package/src/domain/session/sessionState.ts +64 -8
- package/src/domain/session/sessionStore.ts +57 -223
- package/src/domain/session/storeStrategies/sessionInCookie.ts +121 -107
- package/src/domain/session/storeStrategies/sessionInLocalStorage.ts +33 -21
- package/src/domain/session/storeStrategies/sessionInMemory.ts +55 -0
- package/src/domain/session/storeStrategies/sessionStoreStrategy.ts +28 -6
- package/src/domain/synthetics/syntheticsWorkerValues.ts +44 -13
- package/src/domain/tags.ts +0 -16
- package/src/domain/telemetry/telemetry.ts +38 -34
- package/src/domain/telemetry/telemetryEvent.types.ts +116 -20
- package/src/domain/trackingConsent.ts +18 -3
- package/src/index.ts +51 -31
- package/src/tools/display.ts +2 -50
- package/src/tools/experimentalFeatures.ts +1 -4
- package/src/tools/getZoneJsOriginalValue.ts +3 -3
- package/src/tools/globalObject.ts +27 -41
- package/src/tools/instrumentMethod.ts +230 -20
- package/src/tools/matchOption.ts +3 -1
- package/src/tools/mockable.ts +32 -0
- package/src/tools/monitor.ts +14 -62
- package/src/tools/observable.ts +9 -1
- package/src/tools/queueMicrotask.ts +6 -1
- package/src/tools/readBytesFromStream.ts +3 -12
- package/src/tools/requestIdleCallback.ts +1 -1
- package/src/tools/serialisation/sanitize.ts +67 -65
- package/src/tools/serialisation/stringify.ts +18 -0
- package/src/tools/stackTrace/computeStackTrace.ts +15 -13
- package/src/tools/stackTrace/handlingStack.ts +14 -1
- package/src/tools/taskQueue.ts +5 -3
- package/src/tools/timer.ts +7 -6
- package/src/tools/utils/arrayUtils.ts +7 -0
- package/src/tools/utils/browserDetection.ts +8 -0
- package/src/tools/utils/byteUtils.ts +1 -5
- package/src/tools/utils/functionUtils.ts +2 -2
- package/src/tools/utils/objectUtils.ts +20 -0
- package/src/tools/utils/stringUtils.ts +4 -1
- package/src/tools/utils/urlPolyfill.ts +5 -4
- package/src/tools/valueHistory.ts +39 -6
- package/src/transport/batch.ts +9 -18
- package/src/transport/eventBridge.ts +23 -10
- package/src/transport/flushController.ts +17 -24
- package/src/transport/httpRequest.ts +4 -36
- package/src/transport/index.ts +1 -0
- package/src/transport/sendWithRetryStrategy.ts +1 -1
- package/cjs/browser/browser.types.js +0 -6
- package/cjs/browser/browser.types.js.map +0 -1
- package/cjs/domain/configuration/index.js +0 -16
- package/cjs/domain/configuration/index.js.map +0 -1
- package/cjs/domain/configuration/transportConfiguration.d.ts +0 -20
- package/cjs/domain/configuration/transportConfiguration.js +0 -54
- package/cjs/domain/configuration/transportConfiguration.js.map +0 -1
- package/cjs/domain/connectivity/index.js +0 -18
- package/cjs/domain/connectivity/index.js.map +0 -1
- package/cjs/domain/contexts/rumInternalContext.type.js +0 -3
- package/cjs/domain/contexts/rumInternalContext.type.js.map +0 -1
- package/cjs/domain/deflate/index.js +0 -18
- package/cjs/domain/deflate/index.js.map +0 -1
- package/cjs/domain/report/browser.types.js +0 -3
- package/cjs/domain/report/browser.types.js.map +0 -1
- package/cjs/domain/session/oldCookiesMigration.d.ts +0 -11
- package/cjs/domain/session/oldCookiesMigration.js +0 -40
- package/cjs/domain/session/oldCookiesMigration.js.map +0 -1
- package/cjs/domain/session/sessionStoreOperations.d.ts +0 -12
- package/cjs/domain/session/sessionStoreOperations.js +0 -119
- package/cjs/domain/session/sessionStoreOperations.js.map +0 -1
- package/cjs/domain/telemetry/index.js +0 -28
- package/cjs/domain/telemetry/index.js.map +0 -1
- package/cjs/domain/telemetry/telemetryEvent.types.js +0 -7
- package/cjs/domain/telemetry/telemetryEvent.types.js.map +0 -1
- package/cjs/index.js.map +0 -1
- package/cjs/tools/abstractHooks.d.ts +0 -24
- package/cjs/tools/abstractHooks.js +0 -41
- package/cjs/tools/abstractHooks.js.map +0 -1
- package/cjs/tools/boundedBuffer.d.ts +0 -16
- package/cjs/tools/boundedBuffer.js +0 -32
- package/cjs/tools/boundedBuffer.js.map +0 -1
- package/cjs/tools/mergeInto.d.ts +0 -25
- package/cjs/tools/mergeInto.js +0 -98
- package/cjs/tools/mergeInto.js.map +0 -1
- package/cjs/tools/serialisation/context.js +0 -3
- package/cjs/tools/serialisation/context.js.map +0 -1
- package/cjs/tools/utils/timeUtils.d.ts +0 -53
- package/cjs/tools/utils/timeUtils.js +0 -101
- package/cjs/tools/utils/timeUtils.js.map +0 -1
- package/cjs/tools/utils/typeUtils.d.ts +0 -4
- package/cjs/tools/utils/typeUtils.js +0 -16
- package/cjs/tools/utils/typeUtils.js.map +0 -1
- package/cjs/transport/index.js +0 -15
- package/cjs/transport/index.js.map +0 -1
- package/esm/boot/displayAlreadyInitializedError.d.ts +0 -2
- package/esm/boot/displayAlreadyInitializedError.js +0 -7
- package/esm/boot/displayAlreadyInitializedError.js.map +0 -1
- package/esm/boot/init.d.ts +0 -14
- package/esm/boot/init.js +0 -35
- package/esm/boot/init.js.map +0 -1
- package/esm/browser/addEventListener.d.ts +0 -87
- package/esm/browser/addEventListener.js +0 -51
- package/esm/browser/addEventListener.js.map +0 -1
- package/esm/browser/browser.types.d.ts +0 -51
- package/esm/browser/browser.types.js +0 -5
- package/esm/browser/browser.types.js.map +0 -1
- package/esm/browser/cookie.d.ts +0 -28
- package/esm/browser/cookie.js +0 -103
- package/esm/browser/cookie.js.map +0 -1
- package/esm/browser/fetchObservable.d.ts +0 -38
- package/esm/browser/fetchObservable.js +0 -99
- package/esm/browser/fetchObservable.js.map +0 -1
- package/esm/browser/pageMayExitObservable.d.ts +0 -14
- package/esm/browser/pageMayExitObservable.js +0 -40
- package/esm/browser/pageMayExitObservable.js.map +0 -1
- package/esm/browser/runOnReadyState.d.ts +0 -5
- package/esm/browser/runOnReadyState.js +0 -16
- package/esm/browser/runOnReadyState.js.map +0 -1
- package/esm/browser/xhrObservable.d.ts +0 -24
- package/esm/browser/xhrObservable.js +0 -83
- package/esm/browser/xhrObservable.js.map +0 -1
- package/esm/domain/allowedTrackingOrigins.d.ts +0 -4
- package/esm/domain/allowedTrackingOrigins.js +0 -21
- package/esm/domain/allowedTrackingOrigins.js.map +0 -1
- package/esm/domain/bufferedData.d.ts +0 -14
- package/esm/domain/bufferedData.js +0 -19
- package/esm/domain/bufferedData.js.map +0 -1
- package/esm/domain/configuration/configuration.d.ts +0 -312
- package/esm/domain/configuration/configuration.js +0 -132
- package/esm/domain/configuration/configuration.js.map +0 -1
- package/esm/domain/configuration/endpointBuilder.d.ts +0 -12
- package/esm/domain/configuration/endpointBuilder.js +0 -77
- package/esm/domain/configuration/endpointBuilder.js.map +0 -1
- package/esm/domain/configuration/index.d.ts +0 -5
- package/esm/domain/configuration/index.js +0 -4
- package/esm/domain/configuration/index.js.map +0 -1
- package/esm/domain/configuration/transportConfiguration.d.ts +0 -20
- package/esm/domain/configuration/transportConfiguration.js +0 -50
- package/esm/domain/configuration/transportConfiguration.js.map +0 -1
- package/esm/domain/connectivity/connectivity.d.ts +0 -14
- package/esm/domain/connectivity/connectivity.js +0 -11
- package/esm/domain/connectivity/connectivity.js.map +0 -1
- package/esm/domain/connectivity/index.d.ts +0 -1
- package/esm/domain/connectivity/index.js +0 -2
- package/esm/domain/connectivity/index.js.map +0 -1
- package/esm/domain/console/consoleObservable.d.ts +0 -21
- package/esm/domain/console/consoleObservable.js +0 -80
- package/esm/domain/console/consoleObservable.js.map +0 -1
- package/esm/domain/context/contextConstants.d.ts +0 -21
- package/esm/domain/context/contextConstants.js +0 -15
- package/esm/domain/context/contextConstants.js.map +0 -1
- package/esm/domain/context/contextManager.d.ts +0 -19
- package/esm/domain/context/contextManager.js +0 -57
- package/esm/domain/context/contextManager.js.map +0 -1
- package/esm/domain/context/contextUtils.d.ts +0 -5
- package/esm/domain/context/contextUtils.js +0 -13
- package/esm/domain/context/contextUtils.js.map +0 -1
- package/esm/domain/context/defineContextMethod.d.ts +0 -6
- package/esm/domain/context/defineContextMethod.js +0 -17
- package/esm/domain/context/defineContextMethod.js.map +0 -1
- package/esm/domain/context/storeContextManager.d.ts +0 -6
- package/esm/domain/context/storeContextManager.js +0 -35
- package/esm/domain/context/storeContextManager.js.map +0 -1
- package/esm/domain/contexts/accountContext.d.ts +0 -26
- package/esm/domain/contexts/accountContext.js +0 -29
- package/esm/domain/contexts/accountContext.js.map +0 -1
- package/esm/domain/contexts/globalContext.d.ts +0 -18
- package/esm/domain/contexts/globalContext.js +0 -17
- package/esm/domain/contexts/globalContext.js.map +0 -1
- package/esm/domain/contexts/rumInternalContext.type.d.ts +0 -14
- package/esm/domain/contexts/rumInternalContext.type.js +0 -2
- package/esm/domain/contexts/rumInternalContext.type.js.map +0 -1
- package/esm/domain/contexts/userContext.d.ts +0 -29
- package/esm/domain/contexts/userContext.js +0 -41
- package/esm/domain/contexts/userContext.js.map +0 -1
- package/esm/domain/deflate/deflate.types.d.ts +0 -40
- package/esm/domain/deflate/deflate.types.js +0 -2
- package/esm/domain/deflate/deflate.types.js.map +0 -1
- package/esm/domain/deflate/index.d.ts +0 -1
- package/esm/domain/deflate/index.js +0 -2
- package/esm/domain/deflate/index.js.map +0 -1
- package/esm/domain/error/error.d.ts +0 -23
- package/esm/domain/error/error.js +0 -65
- package/esm/domain/error/error.js.map +0 -1
- package/esm/domain/error/error.types.d.ts +0 -47
- package/esm/domain/error/error.types.js +0 -10
- package/esm/domain/error/error.types.js.map +0 -1
- package/esm/domain/error/trackRuntimeError.d.ts +0 -11
- package/esm/domain/error/trackRuntimeError.js +0 -43
- package/esm/domain/error/trackRuntimeError.js.map +0 -1
- package/esm/domain/eventRateLimiter/createEventRateLimiter.d.ts +0 -5
- package/esm/domain/eventRateLimiter/createEventRateLimiter.js +0 -38
- package/esm/domain/eventRateLimiter/createEventRateLimiter.js.map +0 -1
- package/esm/domain/extension/extensionUtils.d.ts +0 -10
- package/esm/domain/extension/extensionUtils.js +0 -25
- package/esm/domain/extension/extensionUtils.js.map +0 -1
- package/esm/domain/intakeSites.d.ts +0 -8
- package/esm/domain/intakeSites.js +0 -8
- package/esm/domain/intakeSites.js.map +0 -1
- package/esm/domain/report/browser.types.d.ts +0 -34
- package/esm/domain/report/browser.types.js +0 -2
- package/esm/domain/report/browser.types.js.map +0 -1
- package/esm/domain/report/reportObservable.d.ts +0 -14
- package/esm/domain/report/reportObservable.js +0 -95
- package/esm/domain/report/reportObservable.js.map +0 -1
- package/esm/domain/resourceUtils.d.ts +0 -18
- package/esm/domain/resourceUtils.js +0 -17
- package/esm/domain/resourceUtils.js.map +0 -1
- package/esm/domain/session/oldCookiesMigration.d.ts +0 -11
- package/esm/domain/session/oldCookiesMigration.js +0 -36
- package/esm/domain/session/oldCookiesMigration.js.map +0 -1
- package/esm/domain/session/sessionConstants.d.ts +0 -15
- package/esm/domain/session/sessionConstants.js +0 -13
- package/esm/domain/session/sessionConstants.js.map +0 -1
- package/esm/domain/session/sessionManager.d.ts +0 -28
- package/esm/domain/session/sessionManager.js +0 -196
- package/esm/domain/session/sessionManager.js.map +0 -1
- package/esm/domain/session/sessionState.d.ts +0 -16
- package/esm/domain/session/sessionState.js +0 -60
- package/esm/domain/session/sessionState.js.map +0 -1
- package/esm/domain/session/sessionStateValidation.d.ts +0 -3
- package/esm/domain/session/sessionStateValidation.js +0 -7
- package/esm/domain/session/sessionStateValidation.js.map +0 -1
- package/esm/domain/session/sessionStore.d.ts +0 -38
- package/esm/domain/session/sessionStore.js +0 -179
- package/esm/domain/session/sessionStore.js.map +0 -1
- package/esm/domain/session/sessionStoreOperations.d.ts +0 -12
- package/esm/domain/session/sessionStoreOperations.js +0 -114
- package/esm/domain/session/sessionStoreOperations.js.map +0 -1
- package/esm/domain/session/storeStrategies/sessionInCookie.d.ts +0 -12
- package/esm/domain/session/storeStrategies/sessionInCookie.js +0 -98
- package/esm/domain/session/storeStrategies/sessionInCookie.js.map +0 -1
- package/esm/domain/session/storeStrategies/sessionInLocalStorage.d.ts +0 -6
- package/esm/domain/session/storeStrategies/sessionInLocalStorage.js +0 -37
- package/esm/domain/session/storeStrategies/sessionInLocalStorage.js.map +0 -1
- package/esm/domain/session/storeStrategies/sessionStoreStrategy.d.ts +0 -16
- package/esm/domain/session/storeStrategies/sessionStoreStrategy.js +0 -2
- package/esm/domain/session/storeStrategies/sessionStoreStrategy.js.map +0 -1
- package/esm/domain/synthetics/syntheticsWorkerValues.d.ts +0 -12
- package/esm/domain/synthetics/syntheticsWorkerValues.js +0 -24
- package/esm/domain/synthetics/syntheticsWorkerValues.js.map +0 -1
- package/esm/domain/tags.d.ts +0 -6
- package/esm/domain/tags.js +0 -60
- package/esm/domain/tags.js.map +0 -1
- package/esm/domain/telemetry/index.d.ts +0 -4
- package/esm/domain/telemetry/index.js +0 -3
- package/esm/domain/telemetry/index.js.map +0 -1
- package/esm/domain/telemetry/rawTelemetryEvent.types.d.ts +0 -18
- package/esm/domain/telemetry/rawTelemetryEvent.types.js +0 -6
- package/esm/domain/telemetry/rawTelemetryEvent.types.js.map +0 -1
- package/esm/domain/telemetry/telemetry.d.ts +0 -56
- package/esm/domain/telemetry/telemetry.js +0 -228
- package/esm/domain/telemetry/telemetry.js.map +0 -1
- package/esm/domain/telemetry/telemetryEvent.types.d.ts +0 -866
- package/esm/domain/telemetry/telemetryEvent.types.js +0 -6
- package/esm/domain/telemetry/telemetryEvent.types.js.map +0 -1
- package/esm/domain/trackingConsent.d.ts +0 -13
- package/esm/domain/trackingConsent.js +0 -24
- package/esm/domain/trackingConsent.js.map +0 -1
- package/esm/index.d.ts +0 -100
- package/esm/index.js +0 -76
- package/esm/index.js.map +0 -1
- package/esm/tools/abstractHooks.d.ts +0 -24
- package/esm/tools/abstractHooks.js +0 -37
- package/esm/tools/abstractHooks.js.map +0 -1
- package/esm/tools/abstractLifeCycle.d.ts +0 -23
- package/esm/tools/abstractLifeCycle.js +0 -24
- package/esm/tools/abstractLifeCycle.js.map +0 -1
- package/esm/tools/boundedBuffer.d.ts +0 -16
- package/esm/tools/boundedBuffer.js +0 -29
- package/esm/tools/boundedBuffer.js.map +0 -1
- package/esm/tools/catchUserErrors.d.ts +0 -1
- package/esm/tools/catchUserErrors.js +0 -12
- package/esm/tools/catchUserErrors.js.map +0 -1
- package/esm/tools/display.d.ts +0 -38
- package/esm/tools/display.js +0 -41
- package/esm/tools/display.js.map +0 -1
- package/esm/tools/encoder.d.ts +0 -54
- package/esm/tools/encoder.js +0 -37
- package/esm/tools/encoder.js.map +0 -1
- package/esm/tools/experimentalFeatures.d.ts +0 -21
- package/esm/tools/experimentalFeatures.js +0 -42
- package/esm/tools/experimentalFeatures.js.map +0 -1
- package/esm/tools/getZoneJsOriginalValue.d.ts +0 -19
- package/esm/tools/getZoneJsOriginalValue.js +0 -26
- package/esm/tools/getZoneJsOriginalValue.js.map +0 -1
- package/esm/tools/globalObject.d.ts +0 -19
- package/esm/tools/globalObject.js +0 -40
- package/esm/tools/globalObject.js.map +0 -1
- package/esm/tools/instrumentMethod.d.ts +0 -75
- package/esm/tools/instrumentMethod.js +0 -114
- package/esm/tools/instrumentMethod.js.map +0 -1
- package/esm/tools/matchOption.d.ts +0 -8
- package/esm/tools/matchOption.js +0 -31
- package/esm/tools/matchOption.js.map +0 -1
- package/esm/tools/mergeInto.d.ts +0 -25
- package/esm/tools/mergeInto.js +0 -93
- package/esm/tools/mergeInto.js.map +0 -1
- package/esm/tools/monitor.d.ts +0 -9
- package/esm/tools/monitor.js +0 -52
- package/esm/tools/monitor.js.map +0 -1
- package/esm/tools/observable.d.ts +0 -30
- package/esm/tools/observable.js +0 -83
- package/esm/tools/observable.js.map +0 -1
- package/esm/tools/queueMicrotask.d.ts +0 -1
- package/esm/tools/queueMicrotask.js +0 -14
- package/esm/tools/queueMicrotask.js.map +0 -1
- package/esm/tools/readBytesFromStream.d.ts +0 -10
- package/esm/tools/readBytesFromStream.js +0 -25
- package/esm/tools/readBytesFromStream.js.map +0 -1
- package/esm/tools/requestIdleCallback.d.ts +0 -12
- package/esm/tools/requestIdleCallback.js +0 -30
- package/esm/tools/requestIdleCallback.js.map +0 -1
- package/esm/tools/sendToExtension.d.ts +0 -3
- package/esm/tools/sendToExtension.js +0 -8
- package/esm/tools/sendToExtension.js.map +0 -1
- package/esm/tools/serialisation/context.d.ts +0 -9
- package/esm/tools/serialisation/context.js +0 -2
- package/esm/tools/serialisation/context.js.map +0 -1
- package/esm/tools/serialisation/jsonStringify.d.ts +0 -13
- package/esm/tools/serialisation/jsonStringify.js +0 -44
- package/esm/tools/serialisation/jsonStringify.js.map +0 -1
- package/esm/tools/serialisation/sanitize.d.ts +0 -18
- package/esm/tools/serialisation/sanitize.js +0 -185
- package/esm/tools/serialisation/sanitize.js.map +0 -1
- package/esm/tools/stackTrace/computeStackTrace.d.ts +0 -25
- package/esm/tools/stackTrace/computeStackTrace.js +0 -183
- package/esm/tools/stackTrace/computeStackTrace.js.map +0 -1
- package/esm/tools/stackTrace/handlingStack.d.ts +0 -10
- package/esm/tools/stackTrace/handlingStack.js +0 -41
- package/esm/tools/stackTrace/handlingStack.js.map +0 -1
- package/esm/tools/taskQueue.d.ts +0 -15
- package/esm/tools/taskQueue.js +0 -50
- package/esm/tools/taskQueue.js.map +0 -1
- package/esm/tools/timer.d.ts +0 -5
- package/esm/tools/timer.js +0 -16
- package/esm/tools/timer.js.map +0 -1
- package/esm/tools/utils/arrayUtils.d.ts +0 -3
- package/esm/tools/utils/arrayUtils.js +0 -15
- package/esm/tools/utils/arrayUtils.js.map +0 -1
- package/esm/tools/utils/browserDetection.d.ts +0 -8
- package/esm/tools/utils/browserDetection.js +0 -28
- package/esm/tools/utils/browserDetection.js.map +0 -1
- package/esm/tools/utils/byteUtils.d.ts +0 -8
- package/esm/tools/utils/byteUtils.js +0 -29
- package/esm/tools/utils/byteUtils.js.map +0 -1
- package/esm/tools/utils/functionUtils.d.ts +0 -8
- package/esm/tools/utils/functionUtils.js +0 -39
- package/esm/tools/utils/functionUtils.js.map +0 -1
- package/esm/tools/utils/numberUtils.d.ts +0 -9
- package/esm/tools/utils/numberUtils.js +0 -18
- package/esm/tools/utils/numberUtils.js.map +0 -1
- package/esm/tools/utils/objectUtils.d.ts +0 -10
- package/esm/tools/utils/objectUtils.js +0 -17
- package/esm/tools/utils/objectUtils.js.map +0 -1
- package/esm/tools/utils/polyfills.d.ts +0 -7
- package/esm/tools/utils/polyfills.js +0 -18
- package/esm/tools/utils/polyfills.js.map +0 -1
- package/esm/tools/utils/responseUtils.d.ts +0 -2
- package/esm/tools/utils/responseUtils.js +0 -13
- package/esm/tools/utils/responseUtils.js.map +0 -1
- package/esm/tools/utils/stringUtils.d.ts +0 -23
- package/esm/tools/utils/stringUtils.js +0 -84
- package/esm/tools/utils/stringUtils.js.map +0 -1
- package/esm/tools/utils/timeUtils.d.ts +0 -53
- package/esm/tools/utils/timeUtils.js +0 -84
- package/esm/tools/utils/timeUtils.js.map +0 -1
- package/esm/tools/utils/timezone.d.ts +0 -1
- package/esm/tools/utils/timezone.js +0 -10
- package/esm/tools/utils/timezone.js.map +0 -1
- package/esm/tools/utils/typeUtils.d.ts +0 -4
- package/esm/tools/utils/typeUtils.js +0 -13
- package/esm/tools/utils/typeUtils.js.map +0 -1
- package/esm/tools/utils/urlPolyfill.d.ts +0 -5
- package/esm/tools/utils/urlPolyfill.js +0 -52
- package/esm/tools/utils/urlPolyfill.js.map +0 -1
- package/esm/tools/valueHistory.d.ts +0 -27
- package/esm/tools/valueHistory.js +0 -100
- package/esm/tools/valueHistory.js.map +0 -1
- package/esm/transport/batch.d.ts +0 -16
- package/esm/transport/batch.js +0 -106
- package/esm/transport/batch.js.map +0 -1
- package/esm/transport/eventBridge.d.ts +0 -21
- package/esm/transport/eventBridge.js +0 -41
- package/esm/transport/eventBridge.js.map +0 -1
- package/esm/transport/flushController.d.ts +0 -65
- package/esm/transport/flushController.js +0 -119
- package/esm/transport/flushController.js.map +0 -1
- package/esm/transport/httpRequest.d.ts +0 -56
- package/esm/transport/httpRequest.js +0 -89
- package/esm/transport/httpRequest.js.map +0 -1
- package/esm/transport/index.d.ts +0 -7
- package/esm/transport/index.js +0 -5
- package/esm/transport/index.js.map +0 -1
- package/esm/transport/sendWithRetryStrategy.d.ts +0 -41
- package/esm/transport/sendWithRetryStrategy.js +0 -158
- package/esm/transport/sendWithRetryStrategy.js.map +0 -1
- package/src/domain/configuration/transportConfiguration.ts +0 -78
- package/src/domain/session/oldCookiesMigration.ts +0 -42
- package/src/domain/session/sessionStoreOperations.ts +0 -131
- package/src/tools/abstractHooks.ts +0 -72
- package/src/tools/boundedBuffer.ts +0 -45
- package/src/tools/mergeInto.ts +0 -177
- package/src/tools/utils/timeUtils.ts +0 -117
- package/src/tools/utils/typeUtils.ts +0 -12
package/cjs/browser/cookie.js
CHANGED
|
@@ -1,114 +1,87 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
exports.getInitCookie = getInitCookie;
|
|
7
|
-
exports.resetInitCookies = resetInitCookies;
|
|
8
|
-
exports.deleteCookie = deleteCookie;
|
|
9
|
-
exports.areCookiesAuthorized = areCookiesAuthorized;
|
|
10
|
-
exports.getCurrentSite = getCurrentSite;
|
|
11
|
-
exports.resetGetCurrentSite = resetGetCurrentSite;
|
|
12
|
-
const display_1 = require("../tools/display");
|
|
13
|
-
const timeUtils_1 = require("../tools/utils/timeUtils");
|
|
14
|
-
const stringUtils_1 = require("../tools/utils/stringUtils");
|
|
15
|
-
const urlPolyfill_1 = require("../tools/utils/urlPolyfill");
|
|
1
|
+
const require_stringUtils = require("../tools/utils/stringUtils.js");
|
|
2
|
+
const require_globalObject = require("../tools/globalObject.js");
|
|
3
|
+
const require_urlPolyfill = require("../tools/utils/urlPolyfill.js");
|
|
4
|
+
let _openobserve_js_core_time = require("@openobserve/js-core/time");
|
|
5
|
+
//#region src/browser/cookie.ts
|
|
16
6
|
function setCookie(name, value, expireDelay = 0, options) {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
7
|
+
const date = /* @__PURE__ */ new Date();
|
|
8
|
+
date.setTime(date.getTime() + expireDelay);
|
|
9
|
+
const expires = `expires=${date.toUTCString()}`;
|
|
10
|
+
const sameSite = options?.crossSite ? "none" : "strict";
|
|
11
|
+
const domain = options?.domain ? `;domain=${options.domain}` : "";
|
|
12
|
+
const secure = options?.secure ? ";secure" : "";
|
|
13
|
+
const partitioned = options?.partitioned ? ";partitioned" : "";
|
|
14
|
+
document.cookie = `${name}=${value};${expires};path=/;samesite=${sameSite}${domain}${secure}${partitioned}`;
|
|
25
15
|
}
|
|
26
16
|
/**
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
17
|
+
* Returns the value of the cookie with the given name
|
|
18
|
+
* If there are multiple cookies with the same name, returns the first one
|
|
19
|
+
*/
|
|
30
20
|
function getCookie(name) {
|
|
31
|
-
|
|
21
|
+
const value = require_stringUtils.findCommaSeparatedValue(document.cookie, name);
|
|
22
|
+
if (value === "") return;
|
|
23
|
+
return value;
|
|
32
24
|
}
|
|
33
25
|
/**
|
|
34
|
-
|
|
35
|
-
|
|
26
|
+
* Returns all the values of the cookies with the given name
|
|
27
|
+
*/
|
|
36
28
|
function getCookies(name) {
|
|
37
|
-
|
|
29
|
+
return require_stringUtils.findAllCommaSeparatedValues(document.cookie).get(name) || [];
|
|
38
30
|
}
|
|
39
31
|
let initCookieParsed;
|
|
40
32
|
/**
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
33
|
+
* Returns a cached value of the cookie. Use this during SDK initialization (and whenever possible)
|
|
34
|
+
* to avoid accessing document.cookie multiple times.
|
|
35
|
+
*
|
|
36
|
+
* ⚠️ If there are multiple cookies with the same name, returns the LAST one (unlike `getCookie()`)
|
|
37
|
+
*/
|
|
46
38
|
function getInitCookie(name) {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
}
|
|
50
|
-
return initCookieParsed.get(name);
|
|
39
|
+
if (!initCookieParsed) initCookieParsed = require_stringUtils.findCommaSeparatedValues(document.cookie);
|
|
40
|
+
return initCookieParsed.get(name);
|
|
51
41
|
}
|
|
52
42
|
function resetInitCookies() {
|
|
53
|
-
|
|
43
|
+
initCookieParsed = void 0;
|
|
54
44
|
}
|
|
55
45
|
function deleteCookie(name, options) {
|
|
56
|
-
|
|
57
|
-
}
|
|
58
|
-
function areCookiesAuthorized(options) {
|
|
59
|
-
if (document.cookie === undefined || document.cookie === null) {
|
|
60
|
-
return false;
|
|
61
|
-
}
|
|
62
|
-
try {
|
|
63
|
-
// Use a unique cookie name to avoid issues when the SDK is initialized multiple times during
|
|
64
|
-
// the test cookie lifetime
|
|
65
|
-
const testCookieName = `oo_cookie_test_${(0, stringUtils_1.generateUUID)()}`;
|
|
66
|
-
const testCookieValue = 'test';
|
|
67
|
-
setCookie(testCookieName, testCookieValue, timeUtils_1.ONE_MINUTE, options);
|
|
68
|
-
const isCookieCorrectlySet = getCookie(testCookieName) === testCookieValue;
|
|
69
|
-
deleteCookie(testCookieName, options);
|
|
70
|
-
return isCookieCorrectlySet;
|
|
71
|
-
}
|
|
72
|
-
catch (error) {
|
|
73
|
-
display_1.display.error(error);
|
|
74
|
-
return false;
|
|
75
|
-
}
|
|
46
|
+
setCookie(name, "", 0, options);
|
|
76
47
|
}
|
|
77
48
|
/**
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
49
|
+
* No API to retrieve it, number of levels for subdomain and suffix are unknown
|
|
50
|
+
* strategy: find the minimal domain on which cookies are allowed to be set
|
|
51
|
+
* https://web.dev/same-site-same-origin/#site
|
|
52
|
+
*/
|
|
82
53
|
let getCurrentSiteCache;
|
|
83
|
-
function getCurrentSite(hostname = location
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
return getCurrentSiteCache;
|
|
54
|
+
function getCurrentSite(hostname = require_globalObject.globalObject.location?.hostname ?? "", referrer = typeof document !== "undefined" ? document.referrer : "") {
|
|
55
|
+
if (typeof document === "undefined") return;
|
|
56
|
+
if (getCurrentSiteCache === void 0) {
|
|
57
|
+
const defaultHostName = getCookieDefaultHostName(hostname, referrer);
|
|
58
|
+
if (defaultHostName) {
|
|
59
|
+
const testCookieName = `oo_site_test_${require_stringUtils.generateUUID()}`;
|
|
60
|
+
const testCookieValue = "test";
|
|
61
|
+
const domainLevels = defaultHostName.split(".");
|
|
62
|
+
let candidateDomain = domainLevels.pop();
|
|
63
|
+
while (domainLevels.length && !getCookie(testCookieName)) {
|
|
64
|
+
candidateDomain = `${domainLevels.pop()}.${candidateDomain}`;
|
|
65
|
+
setCookie(testCookieName, testCookieValue, _openobserve_js_core_time.ONE_SECOND, { domain: candidateDomain });
|
|
66
|
+
}
|
|
67
|
+
deleteCookie(testCookieName, { domain: candidateDomain });
|
|
68
|
+
getCurrentSiteCache = candidateDomain;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return getCurrentSiteCache;
|
|
102
72
|
}
|
|
103
73
|
function getCookieDefaultHostName(hostname, referrer) {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
catch (_a) {
|
|
108
|
-
// Ignore
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
function resetGetCurrentSite() {
|
|
112
|
-
getCurrentSiteCache = undefined;
|
|
74
|
+
try {
|
|
75
|
+
return hostname || require_urlPolyfill.buildUrl(referrer).hostname;
|
|
76
|
+
} catch {}
|
|
113
77
|
}
|
|
78
|
+
//#endregion
|
|
79
|
+
exports.deleteCookie = deleteCookie;
|
|
80
|
+
exports.getCookie = getCookie;
|
|
81
|
+
exports.getCookies = getCookies;
|
|
82
|
+
exports.getCurrentSite = getCurrentSite;
|
|
83
|
+
exports.getInitCookie = getInitCookie;
|
|
84
|
+
exports.resetInitCookies = resetInitCookies;
|
|
85
|
+
exports.setCookie = setCookie;
|
|
86
|
+
|
|
114
87
|
//# sourceMappingURL=cookie.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cookie.js","
|
|
1
|
+
{"version":3,"file":"cookie.js","names":["findCommaSeparatedValue","findAllCommaSeparatedValues","findCommaSeparatedValues","globalObject","generateUUID","ONE_SECOND","buildUrl"],"sources":["../../src/browser/cookie.ts"],"sourcesContent":["import { ONE_SECOND } from '@openobserve/js-core/time'\nimport {\n findAllCommaSeparatedValues,\n findCommaSeparatedValue,\n findCommaSeparatedValues,\n generateUUID,\n} from '../tools/utils/stringUtils'\nimport { buildUrl } from '../tools/utils/urlPolyfill'\nimport { globalObject } from '../tools/globalObject'\n\nexport interface CookieOptions {\n secure?: boolean\n crossSite?: boolean\n partitioned?: boolean\n domain?: string\n}\n\nexport function setCookie(name: string, value: string, expireDelay: number = 0, options?: CookieOptions) {\n const date = new Date()\n date.setTime(date.getTime() + expireDelay)\n const expires = `expires=${date.toUTCString()}`\n const sameSite = options?.crossSite ? 'none' : 'strict'\n const domain = options?.domain ? `;domain=${options.domain}` : ''\n const secure = options?.secure ? ';secure' : ''\n const partitioned = options?.partitioned ? ';partitioned' : ''\n document.cookie = `${name}=${value};${expires};path=/;samesite=${sameSite}${domain}${secure}${partitioned}`\n}\n\n/**\n * Returns the value of the cookie with the given name\n * If there are multiple cookies with the same name, returns the first one\n */\nexport function getCookie(name: string) {\n const value = findCommaSeparatedValue(document.cookie, name)\n\n if (value === '') {\n return\n }\n\n return value\n}\n\n/**\n * Returns all the values of the cookies with the given name\n */\nexport function getCookies(name: string): string[] {\n return findAllCommaSeparatedValues(document.cookie).get(name) || []\n}\n\nlet initCookieParsed: Map<string, string> | undefined\n\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 *\n * ⚠️ If there are multiple cookies with the same name, returns the LAST one (unlike `getCookie()`)\n */\nexport function getInitCookie(name: string) {\n if (!initCookieParsed) {\n initCookieParsed = findCommaSeparatedValues(document.cookie)\n }\n return initCookieParsed.get(name)\n}\n\nexport function resetInitCookies() {\n initCookieParsed = undefined\n}\n\nexport function deleteCookie(name: string, options?: CookieOptions) {\n setCookie(name, '', 0, options)\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 */\nlet getCurrentSiteCache: string | undefined\nexport function getCurrentSite(\n hostname = globalObject.location?.hostname ?? '',\n referrer = typeof document !== 'undefined' ? document.referrer : ''\n): string | undefined {\n // Cookie probing requires document.cookie, which is not available in Web Workers or Node.js\n if (typeof document === 'undefined') {\n return undefined\n }\n if (getCurrentSiteCache === undefined) {\n const defaultHostName = getCookieDefaultHostName(hostname, referrer)\n if (defaultHostName) {\n // Use a unique cookie name to avoid issues when the SDK is initialized multiple times during\n // the test cookie lifetime\n const testCookieName = `oo_site_test_${generateUUID()}`\n const testCookieValue = 'test'\n\n const domainLevels = defaultHostName.split('.')\n let candidateDomain = domainLevels.pop()!\n while (domainLevels.length && !getCookie(testCookieName)) {\n candidateDomain = `${domainLevels.pop()!}.${candidateDomain}`\n setCookie(testCookieName, testCookieValue, ONE_SECOND, { domain: candidateDomain })\n }\n deleteCookie(testCookieName, { domain: candidateDomain })\n getCurrentSiteCache = candidateDomain\n }\n }\n\n return getCurrentSiteCache\n}\n\nfunction getCookieDefaultHostName(hostname: string, referrer: string) {\n try {\n return hostname || buildUrl(referrer).hostname\n } catch {\n // Ignore\n }\n}\n\nexport function resetGetCurrentSite() {\n getCurrentSiteCache = undefined\n}\n"],"mappings":";;;;;AAiBA,SAAgB,UAAU,MAAc,OAAe,cAAsB,GAAG,SAAyB;CACvG,MAAM,uBAAO,IAAI,KAAK;CACtB,KAAK,QAAQ,KAAK,QAAQ,IAAI,WAAW;CACzC,MAAM,UAAU,WAAW,KAAK,YAAY;CAC5C,MAAM,WAAW,SAAS,YAAY,SAAS;CAC/C,MAAM,SAAS,SAAS,SAAS,WAAW,QAAQ,WAAW;CAC/D,MAAM,SAAS,SAAS,SAAS,YAAY;CAC7C,MAAM,cAAc,SAAS,cAAc,iBAAiB;CAC5D,SAAS,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,mBAAmB,WAAW,SAAS,SAAS;AAChG;;;;;AAMA,SAAgB,UAAU,MAAc;CACtC,MAAM,QAAQA,oBAAAA,wBAAwB,SAAS,QAAQ,IAAI;CAE3D,IAAI,UAAU,IACZ;CAGF,OAAO;AACT;;;;AAKA,SAAgB,WAAW,MAAwB;CACjD,OAAOC,oBAAAA,4BAA4B,SAAS,MAAM,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC;AACpE;AAEA,IAAI;;;;;;;AAQJ,SAAgB,cAAc,MAAc;CAC1C,IAAI,CAAC,kBACH,mBAAmBC,oBAAAA,yBAAyB,SAAS,MAAM;CAE7D,OAAO,iBAAiB,IAAI,IAAI;AAClC;AAEA,SAAgB,mBAAmB;CACjC,mBAAmB,KAAA;AACrB;AAEA,SAAgB,aAAa,MAAc,SAAyB;CAClE,UAAU,MAAM,IAAI,GAAG,OAAO;AAChC;;;;;;AAOA,IAAI;AACJ,SAAgB,eACd,WAAWC,qBAAAA,aAAa,UAAU,YAAY,IAC9C,WAAW,OAAO,aAAa,cAAc,SAAS,WAAW,IAC7C;CAEpB,IAAI,OAAO,aAAa,aACtB;CAEF,IAAI,wBAAwB,KAAA,GAAW;EACrC,MAAM,kBAAkB,yBAAyB,UAAU,QAAQ;EACnE,IAAI,iBAAiB;GAGnB,MAAM,iBAAiB,gBAAgBC,oBAAAA,aAAa;GACpD,MAAM,kBAAkB;GAExB,MAAM,eAAe,gBAAgB,MAAM,GAAG;GAC9C,IAAI,kBAAkB,aAAa,IAAI;GACvC,OAAO,aAAa,UAAU,CAAC,UAAU,cAAc,GAAG;IACxD,kBAAkB,GAAG,aAAa,IAAI,EAAG,GAAG;IAC5C,UAAU,gBAAgB,iBAAiBC,0BAAAA,YAAY,EAAE,QAAQ,gBAAgB,CAAC;GACpF;GACA,aAAa,gBAAgB,EAAE,QAAQ,gBAAgB,CAAC;GACxD,sBAAsB;EACxB;CACF;CAEA,OAAO;AACT;AAEA,SAAS,yBAAyB,UAAkB,UAAkB;CACpE,IAAI;EACF,OAAO,YAAYC,oBAAAA,SAAS,QAAQ,CAAC,CAAC;CACxC,QAAQ,CAER;AACF"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Observable } from '../tools/observable';
|
|
2
|
+
import type { CookieOptions } from './cookie';
|
|
3
|
+
export interface CookieAccess {
|
|
4
|
+
getAll(): Promise<string[]>;
|
|
5
|
+
getAllAndSet(cb: (value: string[]) => {
|
|
6
|
+
value: string;
|
|
7
|
+
expireDelay: number;
|
|
8
|
+
}): Promise<void>;
|
|
9
|
+
observable: Observable<void>;
|
|
10
|
+
}
|
|
11
|
+
export type CookieAccessFactory = (cookieName: string, cookieOptions: CookieOptions) => CookieAccess;
|
|
12
|
+
export declare function areCookiesAuthorized(createAccess: CookieAccessFactory, cookieOptions: CookieOptions): Promise<boolean>;
|
|
13
|
+
export declare function createCookieStoreAccess(cookieName: string, cookieOptions: CookieOptions): CookieAccess;
|
|
14
|
+
export declare const WATCH_COOKIE_INTERVAL_DELAY = 1000;
|
|
15
|
+
export declare function createDocumentCookieAccess(cookieName: string, cookieOptions: CookieOptions): CookieAccess;
|
|
16
|
+
export declare function isCookieStoreSupported(): boolean;
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
const require_display = require("../tools/display.js");
|
|
2
|
+
const require_stringUtils = require("../tools/utils/stringUtils.js");
|
|
3
|
+
const require_globalObject = require("../tools/globalObject.js");
|
|
4
|
+
const require_cookie = require("./cookie.js");
|
|
5
|
+
const require_observable = require("../tools/observable.js");
|
|
6
|
+
const require_mockable = require("../tools/mockable.js");
|
|
7
|
+
const require_timer = require("../tools/timer.js");
|
|
8
|
+
const require_addEventListener = require("./addEventListener.js");
|
|
9
|
+
const require_telemetry = require("../domain/telemetry/telemetry.js");
|
|
10
|
+
let _openobserve_js_core_time = require("@openobserve/js-core/time");
|
|
11
|
+
//#region src/browser/cookieAccess.ts
|
|
12
|
+
async function areCookiesAuthorized(createAccess, cookieOptions) {
|
|
13
|
+
const testCookieName = `oo_cookie_test_${require_stringUtils.generateUUID()}`;
|
|
14
|
+
const testCookieValue = "test";
|
|
15
|
+
const access = createAccess(testCookieName, cookieOptions);
|
|
16
|
+
try {
|
|
17
|
+
await access.getAllAndSet(() => ({
|
|
18
|
+
value: testCookieValue,
|
|
19
|
+
expireDelay: _openobserve_js_core_time.ONE_MINUTE
|
|
20
|
+
}));
|
|
21
|
+
return (await access.getAll()).includes(testCookieValue);
|
|
22
|
+
} catch (error) {
|
|
23
|
+
require_display.display.error(error);
|
|
24
|
+
return false;
|
|
25
|
+
} finally {
|
|
26
|
+
try {
|
|
27
|
+
await access.getAllAndSet(() => ({
|
|
28
|
+
value: "",
|
|
29
|
+
expireDelay: 0
|
|
30
|
+
}));
|
|
31
|
+
} catch {}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
function createCookieStoreAccess(cookieName, cookieOptions) {
|
|
35
|
+
const cookieStore = require_mockable.mockable(require_globalObject.globalObject.cookieStore);
|
|
36
|
+
const observable = new require_observable.Observable(() => {
|
|
37
|
+
return require_addEventListener.addEventListener(cookieStore, "change", (event) => {
|
|
38
|
+
if (event.changed.some((event) => event.name === cookieName) || event.deleted.some((event) => event.name === cookieName)) observable.notify();
|
|
39
|
+
}).stop;
|
|
40
|
+
});
|
|
41
|
+
return {
|
|
42
|
+
async getAll() {
|
|
43
|
+
return (await cookieStore.getAll(cookieName)).map((item) => item.value);
|
|
44
|
+
},
|
|
45
|
+
async getAllAndSet(cb) {
|
|
46
|
+
const items = await cookieStore.getAll(cookieName);
|
|
47
|
+
const { value, expireDelay } = cb(items.map((item) => item.value));
|
|
48
|
+
try {
|
|
49
|
+
await cookieStore.set({
|
|
50
|
+
name: cookieName,
|
|
51
|
+
value,
|
|
52
|
+
expires: (0, _openobserve_js_core_time.dateNow)() + expireDelay,
|
|
53
|
+
path: "/",
|
|
54
|
+
sameSite: cookieOptions.crossSite ? "none" : "strict",
|
|
55
|
+
domain: cookieOptions.domain,
|
|
56
|
+
secure: cookieOptions.secure,
|
|
57
|
+
partitioned: cookieOptions.partitioned
|
|
58
|
+
});
|
|
59
|
+
} catch (error) {
|
|
60
|
+
const documentCookies = require_cookie.getCookies(cookieName);
|
|
61
|
+
require_telemetry.addTelemetryDebug("Failed to set cookie using Cookie Store API", {
|
|
62
|
+
"error.message": error.message,
|
|
63
|
+
newValue: value,
|
|
64
|
+
cookieOptions: { ...cookieOptions },
|
|
65
|
+
cookies: items.map((item) => ({ ...item })),
|
|
66
|
+
cookieCount: items.length,
|
|
67
|
+
documentCookies
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
observable
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
const WATCH_COOKIE_INTERVAL_DELAY = _openobserve_js_core_time.ONE_SECOND;
|
|
75
|
+
function createDocumentCookieAccess(cookieName, cookieOptions) {
|
|
76
|
+
let previousCookieValues = require_cookie.getCookies(cookieName);
|
|
77
|
+
const observable = new require_observable.Observable(() => {
|
|
78
|
+
const watchCookieIntervalId = require_timer.setInterval(() => {
|
|
79
|
+
notifyCookieValueIfChanged(require_cookie.getCookies(cookieName));
|
|
80
|
+
}, WATCH_COOKIE_INTERVAL_DELAY);
|
|
81
|
+
return () => {
|
|
82
|
+
require_timer.clearInterval(watchCookieIntervalId);
|
|
83
|
+
};
|
|
84
|
+
});
|
|
85
|
+
function notifyCookieValueIfChanged(cookieValues) {
|
|
86
|
+
if (String(cookieValues) !== String(previousCookieValues)) {
|
|
87
|
+
previousCookieValues = cookieValues;
|
|
88
|
+
observable.notify();
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
return {
|
|
92
|
+
getAll() {
|
|
93
|
+
return Promise.resolve(require_cookie.getCookies(cookieName));
|
|
94
|
+
},
|
|
95
|
+
async getAllAndSet(cb) {
|
|
96
|
+
const { value, expireDelay } = cb(require_cookie.getCookies(cookieName));
|
|
97
|
+
require_cookie.setCookie(cookieName, value, expireDelay, cookieOptions);
|
|
98
|
+
await Promise.resolve();
|
|
99
|
+
notifyCookieValueIfChanged([value]);
|
|
100
|
+
},
|
|
101
|
+
observable
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
function isCookieStoreSupported() {
|
|
105
|
+
const cookieStore = require_mockable.mockable(require_globalObject.globalObject.cookieStore);
|
|
106
|
+
return Boolean(cookieStore && require_addEventListener.isEventSupported(cookieStore, "change"));
|
|
107
|
+
}
|
|
108
|
+
//#endregion
|
|
109
|
+
exports.areCookiesAuthorized = areCookiesAuthorized;
|
|
110
|
+
exports.createCookieStoreAccess = createCookieStoreAccess;
|
|
111
|
+
exports.createDocumentCookieAccess = createDocumentCookieAccess;
|
|
112
|
+
exports.isCookieStoreSupported = isCookieStoreSupported;
|
|
113
|
+
|
|
114
|
+
//# sourceMappingURL=cookieAccess.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookieAccess.js","names":["generateUUID","ONE_MINUTE","mockable","globalObject","Observable","addEventListener","getCookies","ONE_SECOND","setInterval","isEventSupported"],"sources":["../../src/browser/cookieAccess.ts"],"sourcesContent":["import { ONE_MINUTE, ONE_SECOND, dateNow } from '@openobserve/js-core/time'\nimport { setInterval, clearInterval } from '../tools/timer'\nimport { Observable } from '../tools/observable'\nimport { mockable } from '../tools/mockable'\nimport { display } from '../tools/display'\nimport { generateUUID } from '../tools/utils/stringUtils'\nimport { addTelemetryDebug } from '../domain/telemetry'\nimport { globalObject } from '../tools/globalObject'\nimport { addEventListener, DOM_EVENT, isEventSupported } from './addEventListener'\nimport { getCookies, setCookie } from './cookie'\nimport type { CookieOptions } from './cookie'\n\nexport interface CookieAccess {\n getAll(): Promise<string[]>\n getAllAndSet(cb: (value: string[]) => { value: string; expireDelay: number }): Promise<void>\n observable: Observable<void>\n}\n\nexport type CookieAccessFactory = (cookieName: string, cookieOptions: CookieOptions) => CookieAccess\n\nexport async function areCookiesAuthorized(\n createAccess: CookieAccessFactory,\n cookieOptions: CookieOptions\n): Promise<boolean> {\n // Use a unique cookie name to avoid issues when the SDK is initialized multiple times during\n // the test cookie lifetime\n const testCookieName = `oo_cookie_test_${generateUUID()}`\n const testCookieValue = 'test'\n const access = createAccess(testCookieName, cookieOptions)\n try {\n await access.getAllAndSet(() => ({ value: testCookieValue, expireDelay: ONE_MINUTE }))\n const values = await access.getAll()\n return values.includes(testCookieValue)\n } catch (error) {\n display.error(error)\n return false\n } finally {\n try {\n await access.getAllAndSet(() => ({ value: '', expireDelay: 0 }))\n } catch {\n // Best-effort cleanup\n }\n }\n}\n\nexport function createCookieStoreAccess(cookieName: string, cookieOptions: CookieOptions): CookieAccess {\n const cookieStore = mockable(globalObject.cookieStore)!\n const observable = new Observable<void>(() => {\n const listener = addEventListener(cookieStore, DOM_EVENT.CHANGE, (event) => {\n // Based on our experimentation, we're assuming that entries for the same cookie cannot be in both the 'changed' and 'deleted' arrays.\n // However, due to ambiguity in the specification, we asked for clarification: https://github.com/WICG/cookie-store/issues/226\n const changeEvent =\n event.changed.some((event) => event.name === cookieName) ||\n event.deleted.some((event) => event.name === cookieName)\n if (changeEvent) {\n observable.notify()\n }\n })\n return listener.stop\n })\n\n return {\n async getAll() {\n const items = await cookieStore.getAll(cookieName)\n return items.map((item) => item.value)\n },\n\n async getAllAndSet(cb: (value: string[]) => { value: string; expireDelay: number }) {\n const items = await cookieStore.getAll(cookieName)\n\n const currentValues = items.map((item) => item.value)\n const { value, expireDelay } = cb(currentValues)\n\n try {\n await cookieStore.set({\n name: cookieName,\n value,\n expires: dateNow() + expireDelay,\n path: '/',\n sameSite: cookieOptions.crossSite ? 'none' : 'strict',\n domain: cookieOptions.domain,\n secure: cookieOptions.secure,\n partitioned: cookieOptions.partitioned,\n })\n } catch (error) {\n const documentCookies = getCookies(cookieName)\n // monitor-until: 2026-07-01\n addTelemetryDebug('Failed to set cookie using Cookie Store API', {\n 'error.message': (error as Error).message,\n newValue: value,\n cookieOptions: {\n ...cookieOptions,\n },\n cookies: items.map((item) => ({\n ...item,\n })),\n cookieCount: items.length,\n documentCookies,\n })\n }\n },\n\n observable,\n }\n}\n\nexport const WATCH_COOKIE_INTERVAL_DELAY = ONE_SECOND\nexport function createDocumentCookieAccess(cookieName: string, cookieOptions: CookieOptions): CookieAccess {\n let previousCookieValues = getCookies(cookieName)\n\n const observable = new Observable<void>(() => {\n const watchCookieIntervalId = setInterval(() => {\n const cookieValues = getCookies(cookieName)\n notifyCookieValueIfChanged(cookieValues)\n }, WATCH_COOKIE_INTERVAL_DELAY)\n\n return () => {\n clearInterval(watchCookieIntervalId)\n }\n })\n\n function notifyCookieValueIfChanged(cookieValues: string[]) {\n if (String(cookieValues) !== String(previousCookieValues)) {\n previousCookieValues = cookieValues\n observable.notify()\n }\n }\n\n return {\n getAll() {\n return Promise.resolve(getCookies(cookieName))\n },\n\n async getAllAndSet(cb: (value: string[]) => { value: string; expireDelay: number }) {\n const currentValue = getCookies(cookieName)\n const { value, expireDelay } = cb(currentValue)\n setCookie(cookieName, value, expireDelay, cookieOptions)\n await Promise.resolve()\n notifyCookieValueIfChanged([value])\n },\n\n observable,\n }\n}\n\n// Salesforce LWS does not support the change event of CookieStore objects. https://developer.salesforce.com/tools/lws-distortion-viewer\nexport function isCookieStoreSupported(): boolean {\n const cookieStore = mockable(globalObject.cookieStore)\n return Boolean(cookieStore && isEventSupported(cookieStore, DOM_EVENT.CHANGE))\n}\n"],"mappings":";;;;;;;;;;;AAoBA,eAAsB,qBACpB,cACA,eACkB;CAGlB,MAAM,iBAAiB,kBAAkBA,oBAAAA,aAAa;CACtD,MAAM,kBAAkB;CACxB,MAAM,SAAS,aAAa,gBAAgB,aAAa;CACzD,IAAI;EACF,MAAM,OAAO,oBAAoB;GAAE,OAAO;GAAiB,aAAaC,0BAAAA;EAAW,EAAE;EAErF,QAAO,MADc,OAAO,OAAO,EAAA,CACrB,SAAS,eAAe;CACxC,SAAS,OAAO;EACd,gBAAA,QAAQ,MAAM,KAAK;EACnB,OAAO;CACT,UAAU;EACR,IAAI;GACF,MAAM,OAAO,oBAAoB;IAAE,OAAO;IAAI,aAAa;GAAE,EAAE;EACjE,QAAQ,CAER;CACF;AACF;AAEA,SAAgB,wBAAwB,YAAoB,eAA4C;CACtG,MAAM,cAAcC,iBAAAA,SAASC,qBAAAA,aAAa,WAAW;CACrD,MAAM,aAAa,IAAIC,mBAAAA,iBAAuB;EAW5C,OAViBC,yBAAAA,iBAAiB,aAAA,WAAgC,UAAU;GAM1E,IAFE,MAAM,QAAQ,MAAM,UAAU,MAAM,SAAS,UAAU,KACvD,MAAM,QAAQ,MAAM,UAAU,MAAM,SAAS,UAAU,GAEvD,WAAW,OAAO;EAEtB,CACc,CAAC,CAAC;CAClB,CAAC;CAED,OAAO;EACL,MAAM,SAAS;GAEb,QAAO,MADa,YAAY,OAAO,UAAU,EAAA,CACpC,KAAK,SAAS,KAAK,KAAK;EACvC;EAEA,MAAM,aAAa,IAAiE;GAClF,MAAM,QAAQ,MAAM,YAAY,OAAO,UAAU;GAGjD,MAAM,EAAE,OAAO,gBAAgB,GADT,MAAM,KAAK,SAAS,KAAK,KACD,CAAC;GAE/C,IAAI;IACF,MAAM,YAAY,IAAI;KACpB,MAAM;KACN;KACA,UAAA,GAAA,0BAAA,QAAA,CAAiB,IAAI;KACrB,MAAM;KACN,UAAU,cAAc,YAAY,SAAS;KAC7C,QAAQ,cAAc;KACtB,QAAQ,cAAc;KACtB,aAAa,cAAc;IAC7B,CAAC;GACH,SAAS,OAAO;IACd,MAAM,kBAAkBC,eAAAA,WAAW,UAAU;IAE7C,kBAAA,kBAAkB,+CAA+C;KAC/D,iBAAkB,MAAgB;KAClC,UAAU;KACV,eAAe,EACb,GAAG,cACL;KACA,SAAS,MAAM,KAAK,UAAU,EAC5B,GAAG,KACL,EAAE;KACF,aAAa,MAAM;KACnB;IACF,CAAC;GACH;EACF;EAEA;CACF;AACF;AAEA,MAAa,8BAA8BC,0BAAAA;AAC3C,SAAgB,2BAA2B,YAAoB,eAA4C;CACzG,IAAI,uBAAuBD,eAAAA,WAAW,UAAU;CAEhD,MAAM,aAAa,IAAIF,mBAAAA,iBAAuB;EAC5C,MAAM,wBAAwBI,cAAAA,kBAAkB;GAE9C,2BADqBF,eAAAA,WAAW,UACM,CAAC;EACzC,GAAG,2BAA2B;EAE9B,aAAa;GACX,cAAA,cAAc,qBAAqB;EACrC;CACF,CAAC;CAED,SAAS,2BAA2B,cAAwB;EAC1D,IAAI,OAAO,YAAY,MAAM,OAAO,oBAAoB,GAAG;GACzD,uBAAuB;GACvB,WAAW,OAAO;EACpB;CACF;CAEA,OAAO;EACL,SAAS;GACP,OAAO,QAAQ,QAAQA,eAAAA,WAAW,UAAU,CAAC;EAC/C;EAEA,MAAM,aAAa,IAAiE;GAElF,MAAM,EAAE,OAAO,gBAAgB,GADVA,eAAAA,WAAW,UACa,CAAC;GAC9C,eAAA,UAAU,YAAY,OAAO,aAAa,aAAa;GACvD,MAAM,QAAQ,QAAQ;GACtB,2BAA2B,CAAC,KAAK,CAAC;EACpC;EAEA;CACF;AACF;AAGA,SAAgB,yBAAkC;CAChD,MAAM,cAAcJ,iBAAAA,SAASC,qBAAAA,aAAa,WAAW;CACrD,OAAO,QAAQ,eAAeM,yBAAAA,iBAAiB,aAAA,QAA6B,CAAC;AAC/E"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Make a fetch request using the native implementation, bypassing Zone.js patching.
|
|
3
|
+
* This prevents unnecessary Angular change detection cycles.
|
|
4
|
+
*
|
|
5
|
+
* @param input - The resource to fetch (URL or Request object)
|
|
6
|
+
* @param init - Optional fetch options
|
|
7
|
+
* @returns A Promise that resolves to the Response
|
|
8
|
+
*/
|
|
9
|
+
export declare function fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
const require_globalObject = require("../tools/globalObject.js");
|
|
2
|
+
const require_getZoneJsOriginalValue = require("../tools/getZoneJsOriginalValue.js");
|
|
3
|
+
//#region src/browser/fetch.ts
|
|
4
|
+
/**
|
|
5
|
+
* Make a fetch request using the native implementation, bypassing Zone.js patching.
|
|
6
|
+
* This prevents unnecessary Angular change detection cycles.
|
|
7
|
+
*
|
|
8
|
+
* @param input - The resource to fetch (URL or Request object)
|
|
9
|
+
* @param init - Optional fetch options
|
|
10
|
+
* @returns A Promise that resolves to the Response
|
|
11
|
+
*/
|
|
12
|
+
function fetch(input, init) {
|
|
13
|
+
return require_getZoneJsOriginalValue.getZoneJsOriginalValue(require_globalObject.globalObject, "fetch")(input, init);
|
|
14
|
+
}
|
|
15
|
+
//#endregion
|
|
16
|
+
exports.fetch = fetch;
|
|
17
|
+
|
|
18
|
+
//# sourceMappingURL=fetch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch.js","names":["getZoneJsOriginalValue","globalObject"],"sources":["../../src/browser/fetch.ts"],"sourcesContent":["import { getZoneJsOriginalValue } from '../tools/getZoneJsOriginalValue'\nimport { globalObject } from '../tools/globalObject'\n\n/**\n * Make a fetch request using the native implementation, bypassing Zone.js patching.\n * This prevents unnecessary Angular change detection cycles.\n *\n * @param input - The resource to fetch (URL or Request object)\n * @param init - Optional fetch options\n * @returns A Promise that resolves to the Response\n */\nexport function fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response> {\n return getZoneJsOriginalValue(globalObject, 'fetch')(input, init)\n}\n"],"mappings":";;;;;;;;;;;AAWA,SAAgB,MAAM,OAA0B,MAAuC;CACrF,OAAOA,+BAAAA,uBAAuBC,qBAAAA,cAAc,OAAO,CAAC,CAAC,OAAO,IAAI;AAClE"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import type { ClocksState } from '@openobserve/js-core/time';
|
|
1
2
|
import { Observable } from '../tools/observable';
|
|
2
|
-
import type { ClocksState } from '../tools/utils/timeUtils';
|
|
3
3
|
interface FetchContextBase {
|
|
4
4
|
method: string;
|
|
5
5
|
startClocks: ClocksState;
|
|
@@ -7,6 +7,7 @@ interface FetchContextBase {
|
|
|
7
7
|
init?: RequestInit;
|
|
8
8
|
url: string;
|
|
9
9
|
handlingStack?: string;
|
|
10
|
+
isAbortedOnStart: boolean;
|
|
10
11
|
}
|
|
11
12
|
export interface FetchStartContext extends FetchContextBase {
|
|
12
13
|
state: 'start';
|
|
@@ -28,8 +29,7 @@ type ResponseBodyActionGetter = (context: FetchResolveContext) => ResponseBodyAc
|
|
|
28
29
|
*/
|
|
29
30
|
export declare const enum ResponseBodyAction {
|
|
30
31
|
IGNORE = 0,
|
|
31
|
-
|
|
32
|
-
COLLECT = 2
|
|
32
|
+
COLLECT = 1
|
|
33
33
|
}
|
|
34
34
|
export declare function initFetchObservable({ responseBodyAction }?: {
|
|
35
35
|
responseBodyAction?: ResponseBodyActionGetter;
|
|
@@ -1,103 +1,91 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
const require_globalObject = require("../tools/globalObject.js");
|
|
2
|
+
const require_urlPolyfill = require("../tools/utils/urlPolyfill.js");
|
|
3
|
+
const require_monitor = require("../tools/monitor.js");
|
|
4
|
+
const require_observable = require("../tools/observable.js");
|
|
5
|
+
const require_instrumentMethod = require("../tools/instrumentMethod.js");
|
|
6
|
+
const require_responseUtils = require("../tools/utils/responseUtils.js");
|
|
7
|
+
const require_readBytesFromStream = require("../tools/readBytesFromStream.js");
|
|
8
|
+
let _openobserve_js_core_time = require("@openobserve/js-core/time");
|
|
9
|
+
//#region src/browser/fetchObservable.ts
|
|
10
|
+
/**
|
|
11
|
+
* Action to take with the response body of a fetch request.
|
|
12
|
+
* Values are ordered by priority: higher values take precedence when multiple actions are requested.
|
|
13
|
+
*/
|
|
14
|
+
let ResponseBodyAction = /* @__PURE__ */ function(ResponseBodyAction) {
|
|
15
|
+
ResponseBodyAction[ResponseBodyAction["IGNORE"] = 0] = "IGNORE";
|
|
16
|
+
ResponseBodyAction[ResponseBodyAction["COLLECT"] = 1] = "COLLECT";
|
|
17
|
+
return ResponseBodyAction;
|
|
18
|
+
}({});
|
|
13
19
|
let fetchObservable;
|
|
14
20
|
const responseBodyActionGetters = [];
|
|
15
21
|
function initFetchObservable({ responseBodyAction } = {}) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
if (!fetchObservable) {
|
|
20
|
-
fetchObservable = createFetchObservable();
|
|
21
|
-
}
|
|
22
|
-
return fetchObservable;
|
|
23
|
-
}
|
|
24
|
-
function resetFetchObservable() {
|
|
25
|
-
fetchObservable = undefined;
|
|
26
|
-
responseBodyActionGetters.length = 0;
|
|
22
|
+
if (responseBodyAction) responseBodyActionGetters.push(responseBodyAction);
|
|
23
|
+
if (!fetchObservable) fetchObservable = createFetchObservable();
|
|
24
|
+
return fetchObservable;
|
|
27
25
|
}
|
|
28
26
|
function createFetchObservable() {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
computeHandlingStack: true,
|
|
35
|
-
});
|
|
36
|
-
return stop;
|
|
37
|
-
});
|
|
27
|
+
return new require_observable.Observable((observable) => {
|
|
28
|
+
if (!require_globalObject.globalObject.fetch) return;
|
|
29
|
+
const { stop } = require_instrumentMethod.instrumentMethod(require_globalObject.globalObject, "fetch", (call) => beforeSend(call, observable), { computeHandlingStack: true });
|
|
30
|
+
return stop;
|
|
31
|
+
});
|
|
38
32
|
}
|
|
39
33
|
function beforeSend({ parameters, onPostCall, handlingStack }, observable) {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
onPostCall((responsePromise) => {
|
|
62
|
-
afterSend(observable, responsePromise, context).catch(monitor_1.monitorError);
|
|
63
|
-
});
|
|
34
|
+
const [input, init] = parameters;
|
|
35
|
+
let methodFromParams = init?.method;
|
|
36
|
+
if (methodFromParams === void 0 && input instanceof Request) methodFromParams = input.method;
|
|
37
|
+
const method = methodFromParams !== void 0 ? String(methodFromParams).toUpperCase() : "GET";
|
|
38
|
+
const url = input instanceof Request ? input.url : require_urlPolyfill.normalizeUrl(String(input));
|
|
39
|
+
const context = {
|
|
40
|
+
state: "start",
|
|
41
|
+
init,
|
|
42
|
+
input,
|
|
43
|
+
method,
|
|
44
|
+
startClocks: (0, _openobserve_js_core_time.clocksNow)(),
|
|
45
|
+
url,
|
|
46
|
+
handlingStack,
|
|
47
|
+
isAbortedOnStart: input instanceof Request && input.signal?.aborted || init?.signal?.aborted || false
|
|
48
|
+
};
|
|
49
|
+
observable.notify(context);
|
|
50
|
+
parameters[0] = context.input;
|
|
51
|
+
parameters[1] = context.init;
|
|
52
|
+
onPostCall((responsePromise) => {
|
|
53
|
+
afterSend(observable, responsePromise, context).catch(require_monitor.monitorError);
|
|
54
|
+
});
|
|
64
55
|
}
|
|
65
56
|
async function afterSend(observable, responsePromise, startContext) {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
catch (_c) {
|
|
96
|
-
// Ignore errors when reading the response body (e.g., stream aborted, network errors)
|
|
97
|
-
// This is not critical and should not be reported as an SDK error
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
observable.notify(context);
|
|
57
|
+
const context = startContext;
|
|
58
|
+
let response;
|
|
59
|
+
try {
|
|
60
|
+
response = await responsePromise;
|
|
61
|
+
} catch (error) {
|
|
62
|
+
observable.notify({
|
|
63
|
+
...context,
|
|
64
|
+
state: "resolve",
|
|
65
|
+
status: 0,
|
|
66
|
+
isAborted: context.init?.signal?.aborted || error instanceof DOMException && error.code === DOMException.ABORT_ERR,
|
|
67
|
+
error
|
|
68
|
+
});
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
context.response = response;
|
|
72
|
+
context.status = response.status;
|
|
73
|
+
context.responseType = response.type;
|
|
74
|
+
context.isAborted = false;
|
|
75
|
+
if (responseBodyActionGetters.reduce((action, getter) => Math.max(action, getter(context)), 0) === 1) {
|
|
76
|
+
const clonedResponse = require_responseUtils.tryToClone(response);
|
|
77
|
+
if (clonedResponse?.body) try {
|
|
78
|
+
const bytes = await require_readBytesFromStream.readBytesFromStream(clonedResponse.body);
|
|
79
|
+
context.responseBody = new TextDecoder().decode(bytes);
|
|
80
|
+
} catch {}
|
|
81
|
+
}
|
|
82
|
+
observable.notify({
|
|
83
|
+
...context,
|
|
84
|
+
state: "resolve"
|
|
85
|
+
});
|
|
102
86
|
}
|
|
87
|
+
//#endregion
|
|
88
|
+
exports.ResponseBodyAction = ResponseBodyAction;
|
|
89
|
+
exports.initFetchObservable = initFetchObservable;
|
|
90
|
+
|
|
103
91
|
//# sourceMappingURL=fetchObservable.js.map
|