@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
|
@@ -1,104 +1,98 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
const sessionConstants_1 = require("../sessionConstants");
|
|
12
|
-
const sessionState_1 = require("../sessionState");
|
|
13
|
-
const sessionStoreStrategy_1 = require("./sessionStoreStrategy");
|
|
1
|
+
const require_objectUtils = require("../../../tools/utils/objectUtils.js");
|
|
2
|
+
const require_cookie = require("../../../browser/cookie.js");
|
|
3
|
+
const require_monitor = require("../../../tools/monitor.js");
|
|
4
|
+
const require_observable = require("../../../tools/observable.js");
|
|
5
|
+
const require_mockable = require("../../../tools/mockable.js");
|
|
6
|
+
const require_sessionConstants = require("../sessionConstants.js");
|
|
7
|
+
const require_sessionState = require("../sessionState.js");
|
|
8
|
+
const require_cookieAccess = require("../../../browser/cookieAccess.js");
|
|
9
|
+
const require_sessionStoreStrategy = require("./sessionStoreStrategy.js");
|
|
10
|
+
//#region src/domain/session/storeStrategies/sessionInCookie.ts
|
|
14
11
|
const SESSION_COOKIE_VERSION = 0;
|
|
15
|
-
function selectCookieStrategy(
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
12
|
+
async function selectCookieStrategy(configuration) {
|
|
13
|
+
const { cookieOptions } = configuration;
|
|
14
|
+
if (!cookieOptions) return;
|
|
15
|
+
if (require_cookieAccess.isCookieStoreSupported() && await require_cookieAccess.areCookiesAuthorized(require_cookieAccess.createCookieStoreAccess, cookieOptions)) return {
|
|
16
|
+
type: require_sessionConstants.SessionPersistence.COOKIE,
|
|
17
|
+
cookieOptions,
|
|
18
|
+
cookieApi: 1
|
|
19
|
+
};
|
|
20
|
+
if (await require_cookieAccess.areCookiesAuthorized(require_cookieAccess.createDocumentCookieAccess, cookieOptions)) return {
|
|
21
|
+
type: require_sessionConstants.SessionPersistence.COOKIE,
|
|
22
|
+
cookieOptions,
|
|
23
|
+
cookieApi: 0
|
|
24
|
+
};
|
|
20
25
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
26
|
+
let pendingChain;
|
|
27
|
+
function initCookieStrategy(sessionStoreStrategyType, configuration) {
|
|
28
|
+
const { cookieOptions, cookieApi } = sessionStoreStrategyType;
|
|
29
|
+
const sessionObservable = new require_observable.Observable();
|
|
30
|
+
const trackAnonymousUser = !!configuration.trackAnonymousUser;
|
|
31
|
+
const opts = encodeCookieOptions(cookieOptions);
|
|
32
|
+
const cookieAccess = require_mockable.mockable(createCookieAccess)(cookieApi, cookieOptions);
|
|
33
|
+
let isFirstCall = true;
|
|
34
|
+
cookieAccess.observable.subscribe(() => {
|
|
35
|
+
cookieAccess.getAll().then((cookieValues) => {
|
|
36
|
+
sessionObservable.notify(findMatchingSessionState(cookieValues, opts));
|
|
37
|
+
}).catch((error) => require_monitor.monitorError(/* @__PURE__ */ new Error(`Error while reading session cookies on change: ${error}`)));
|
|
38
|
+
});
|
|
39
|
+
function applyAndWrite(fn) {
|
|
40
|
+
return cookieAccess.getAllAndSet((cookieValues) => {
|
|
41
|
+
let currentState = findMatchingSessionState(cookieValues, opts);
|
|
42
|
+
if (isFirstCall && require_objectUtils.isEmptyObject(currentState)) currentState = findMatchingSessionState(require_cookie.getCookies(require_sessionStoreStrategy.LEGACY_SESSION_STORE_KEY), opts);
|
|
43
|
+
isFirstCall = false;
|
|
44
|
+
return {
|
|
45
|
+
value: buildSessionString(fn(currentState), cookieOptions),
|
|
46
|
+
expireDelay: trackAnonymousUser ? require_sessionConstants.SESSION_COOKIE_EXPIRATION_DELAY : require_sessionConstants.SESSION_TIME_OUT_DELAY
|
|
47
|
+
};
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return {
|
|
51
|
+
async setSessionState(fn, _operation) {
|
|
52
|
+
if (typeof navigator !== "undefined" && navigator.locks) await navigator.locks.request(require_sessionStoreStrategy.SESSION_STORE_KEY, () => applyAndWrite(fn)).catch((error) => {
|
|
53
|
+
if (isContextGoingAwayError(error)) return;
|
|
54
|
+
throw error;
|
|
55
|
+
});
|
|
56
|
+
else {
|
|
57
|
+
pendingChain = (pendingChain ?? Promise.resolve()).then(() => applyAndWrite(fn));
|
|
58
|
+
await pendingChain;
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
sessionObservable
|
|
62
|
+
};
|
|
34
63
|
}
|
|
35
|
-
function
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
sessionStateString = (0, sessionState_1.toSessionString)({
|
|
39
|
-
...sessionState,
|
|
40
|
-
// deleting a cookie is writing a new cookie with an empty value
|
|
41
|
-
// we don't want to store the cookie options in this case otherwise the cookie will not be deleted
|
|
42
|
-
...(!(0, objectUtils_1.isEmptyObject)(sessionState) ? { c: encodeCookieOptions(options) } : {}),
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
(0, cookie_1.setCookie)(sessionStoreStrategy_1.SESSION_STORE_KEY, sessionStateString, configuration.trackAnonymousUser ? sessionConstants_1.SESSION_COOKIE_EXPIRATION_DELAY : defaultTimeout, options);
|
|
64
|
+
function isContextGoingAwayError(error) {
|
|
65
|
+
if (!(error instanceof Error)) return false;
|
|
66
|
+
return error.name === "AbortError" || error.message.includes("no longer runnable");
|
|
46
67
|
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
* If there is no match, return the first cookie, because that's how `getCookie()` works
|
|
50
|
-
*/
|
|
51
|
-
function retrieveSessionCookie(cookieOptions, configuration) {
|
|
52
|
-
if (configuration.betaEncodeCookieOptions) {
|
|
53
|
-
return retrieveSessionCookieFromEncodedCookie(cookieOptions);
|
|
54
|
-
}
|
|
55
|
-
const sessionString = (0, cookie_1.getCookie)(sessionStoreStrategy_1.SESSION_STORE_KEY);
|
|
56
|
-
const sessionState = (0, sessionState_1.toSessionState)(sessionString);
|
|
57
|
-
return sessionState;
|
|
68
|
+
function createCookieAccess(cookieApi, cookieOptions) {
|
|
69
|
+
return cookieApi === 1 ? require_cookieAccess.createCookieStoreAccess(require_sessionStoreStrategy.SESSION_STORE_KEY, cookieOptions) : require_cookieAccess.createDocumentCookieAccess(require_sessionStoreStrategy.SESSION_STORE_KEY, cookieOptions);
|
|
58
70
|
}
|
|
59
|
-
function
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
if (!currentSite) {
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
cookieOptions.domain = currentSite;
|
|
71
|
-
}
|
|
72
|
-
return cookieOptions;
|
|
71
|
+
function findMatchingSessionState(items, opts) {
|
|
72
|
+
let sessionState;
|
|
73
|
+
for (const item of items.slice().reverse()) {
|
|
74
|
+
sessionState = require_sessionState.toSessionState(item);
|
|
75
|
+
if (sessionState.c === opts) break;
|
|
76
|
+
}
|
|
77
|
+
delete sessionState?.c;
|
|
78
|
+
return sessionState ?? {};
|
|
73
79
|
}
|
|
74
|
-
function
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
byte |= domainCount << 1; // Store domain count in next 4 bits
|
|
80
|
-
byte |= cookieOptions.crossSite ? 1 : 0; // Store useCrossSiteScripting in next bit
|
|
81
|
-
/* eslint-enable no-bitwise */
|
|
82
|
-
return byte.toString(16); // Convert to hex string
|
|
80
|
+
function buildSessionString(sessionState, cookieOptions) {
|
|
81
|
+
return require_sessionState.toSessionString(require_objectUtils.isEmptyObject(sessionState) ? sessionState : {
|
|
82
|
+
...sessionState,
|
|
83
|
+
c: encodeCookieOptions(cookieOptions)
|
|
84
|
+
});
|
|
83
85
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
const opts = encodeCookieOptions(cookieOptions);
|
|
92
|
-
let sessionState;
|
|
93
|
-
// reverse the cookies so that if there is no match, the cookie returned is the first one
|
|
94
|
-
for (const cookie of cookies.reverse()) {
|
|
95
|
-
sessionState = (0, sessionState_1.toSessionState)(cookie);
|
|
96
|
-
if (sessionState.c === opts) {
|
|
97
|
-
break;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
// remove the cookie options from the session state as this is not part of the session state
|
|
101
|
-
sessionState === null || sessionState === void 0 ? true : delete sessionState.c;
|
|
102
|
-
return sessionState !== null && sessionState !== void 0 ? sessionState : {};
|
|
86
|
+
function encodeCookieOptions(cookieOptions) {
|
|
87
|
+
const domainCount = cookieOptions.domain ? cookieOptions.domain.split(".").length - 1 : 0;
|
|
88
|
+
let byte = 0;
|
|
89
|
+
byte |= SESSION_COOKIE_VERSION << 5;
|
|
90
|
+
byte |= domainCount << 1;
|
|
91
|
+
byte |= cookieOptions.crossSite ? 1 : 0;
|
|
92
|
+
return byte.toString(16);
|
|
103
93
|
}
|
|
94
|
+
//#endregion
|
|
95
|
+
exports.initCookieStrategy = initCookieStrategy;
|
|
96
|
+
exports.selectCookieStrategy = selectCookieStrategy;
|
|
97
|
+
|
|
104
98
|
//# sourceMappingURL=sessionInCookie.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionInCookie.js","
|
|
1
|
+
{"version":3,"file":"sessionInCookie.js","names":["isCookieStoreSupported","areCookiesAuthorized","createCookieStoreAccess","SessionPersistence","createDocumentCookieAccess","Observable","mockable","monitorError","isEmptyObject","getCookies","LEGACY_SESSION_STORE_KEY","SESSION_COOKIE_EXPIRATION_DELAY","SESSION_TIME_OUT_DELAY","SESSION_STORE_KEY","toSessionState","toSessionString"],"sources":["../../../../src/domain/session/storeStrategies/sessionInCookie.ts"],"sourcesContent":["import { isEmptyObject } from '../../../tools/utils/objectUtils'\nimport type { CookieOptions } from '../../../browser/cookie'\nimport { getCookies } from '../../../browser/cookie'\nimport type { Configuration } from '../../configuration'\nimport { SESSION_COOKIE_EXPIRATION_DELAY, SESSION_TIME_OUT_DELAY, SessionPersistence } from '../sessionConstants'\nimport type { SessionState } from '../sessionState'\nimport { toSessionString, toSessionState } from '../sessionState'\nimport { Observable } from '../../../tools/observable'\nimport { mockable } from '../../../tools/mockable'\nimport { monitorError } from '../../../tools/monitor'\nimport type { CookieAccess } from '../../../browser/cookieAccess'\nimport {\n areCookiesAuthorized,\n createCookieStoreAccess,\n createDocumentCookieAccess,\n isCookieStoreSupported,\n} from '../../../browser/cookieAccess'\nimport { CookieApi, LEGACY_SESSION_STORE_KEY, SESSION_STORE_KEY } from './sessionStoreStrategy'\nimport type {\n SessionStoreStrategy,\n SessionStoreStrategyType,\n CookieSessionStoreStrategyType,\n SessionStateOperation,\n} from './sessionStoreStrategy'\n\nconst SESSION_COOKIE_VERSION = 0\n\nexport async function selectCookieStrategy(\n configuration: Configuration\n): Promise<SessionStoreStrategyType | undefined> {\n const { cookieOptions } = configuration\n if (!cookieOptions) {\n return undefined\n }\n\n if (isCookieStoreSupported() && (await areCookiesAuthorized(createCookieStoreAccess, cookieOptions))) {\n return { type: SessionPersistence.COOKIE, cookieOptions, cookieApi: CookieApi.COOKIE_STORE }\n }\n\n if (await areCookiesAuthorized(createDocumentCookieAccess, cookieOptions)) {\n return { type: SessionPersistence.COOKIE, cookieOptions, cookieApi: CookieApi.DOCUMENT_COOKIE }\n }\n\n return undefined\n}\n\n// Promise chain serializes calls when Web Locks are unavailable\nlet pendingChain: Promise<void> | undefined\n\nexport function initCookieStrategy(\n sessionStoreStrategyType: CookieSessionStoreStrategyType,\n configuration: Configuration\n): SessionStoreStrategy {\n const { cookieOptions, cookieApi } = sessionStoreStrategyType\n const sessionObservable = new Observable<SessionState>()\n const trackAnonymousUser = !!configuration.trackAnonymousUser\n const opts = encodeCookieOptions(cookieOptions)\n const cookieAccess = mockable(createCookieAccess)(cookieApi, cookieOptions)\n let isFirstCall = true\n\n cookieAccess.observable.subscribe(() => {\n cookieAccess\n .getAll()\n .then((cookieValues) => {\n sessionObservable.notify(findMatchingSessionState(cookieValues, opts))\n })\n .catch((error) => monitorError(new Error(`Error while reading session cookies on change: ${error}`)))\n })\n\n function applyAndWrite(fn: (state: SessionState) => SessionState) {\n return cookieAccess.getAllAndSet((cookieValues) => {\n let currentState = findMatchingSessionState(cookieValues, opts)\n\n if (isFirstCall && isEmptyObject(currentState)) {\n currentState = findMatchingSessionState(getCookies(LEGACY_SESSION_STORE_KEY), opts)\n }\n isFirstCall = false\n\n const newState = fn(currentState)\n const sessionString = buildSessionString(newState, cookieOptions)\n const expireDelay = trackAnonymousUser ? SESSION_COOKIE_EXPIRATION_DELAY : SESSION_TIME_OUT_DELAY\n\n return { value: sessionString, expireDelay }\n })\n }\n\n return {\n async setSessionState(\n fn: (sessionState: SessionState) => SessionState,\n _operation: SessionStateOperation\n ): Promise<void> {\n if (typeof navigator !== 'undefined' && navigator.locks) {\n await navigator.locks\n .request(SESSION_STORE_KEY, () => applyAndWrite(fn))\n .catch((error: unknown) => {\n if (isContextGoingAwayError(error)) {\n return\n }\n throw error\n })\n } else {\n pendingChain = (pendingChain ?? Promise.resolve()).then(() => applyAndWrite(fn))\n await pendingChain\n }\n },\n sessionObservable,\n }\n}\n\n// Thrown when the browsing context tears down mid-lock-request.\n// - \"AbortError: Promise was rejected because the browsing context is going away\" (Webkit)\n// - \"Error: Failed to execute 'request' on 'LockManager': The provided callback is no longer runnable.\" (Chromium)\nfunction isContextGoingAwayError(error: unknown): boolean {\n if (!(error instanceof Error)) {\n return false\n }\n return error.name === 'AbortError' || error.message.includes('no longer runnable')\n}\n\nexport function createCookieAccess(cookieApi: CookieApi, cookieOptions: CookieOptions): CookieAccess {\n return cookieApi === CookieApi.COOKIE_STORE\n ? createCookieStoreAccess(SESSION_STORE_KEY, cookieOptions)\n : createDocumentCookieAccess(SESSION_STORE_KEY, cookieOptions)\n}\n\nfunction findMatchingSessionState(items: string[], opts: string): SessionState {\n let sessionState: SessionState | undefined\n\n // reverse the cookies so that if there is no match, the cookie returned is the first one\n for (const item of items.slice().reverse()) {\n sessionState = toSessionState(item)\n if (sessionState.c === opts) {\n break\n }\n }\n\n // remove the cookie options from the session state as this is not part of the session state\n delete sessionState?.c\n\n return sessionState ?? {}\n}\n\nfunction buildSessionString(sessionState: SessionState, cookieOptions: CookieOptions): string {\n return toSessionString(\n isEmptyObject(sessionState) ? sessionState : { ...sessionState, c: encodeCookieOptions(cookieOptions) }\n )\n}\n\nfunction encodeCookieOptions(cookieOptions: CookieOptions): string {\n const domainCount = cookieOptions.domain ? cookieOptions.domain.split('.').length - 1 : 0\n\n /* eslint-disable no-bitwise */\n let byte = 0\n byte |= SESSION_COOKIE_VERSION << 5 // Store version in upper 3 bits\n byte |= domainCount << 1 // Store domain count in next 4 bits\n byte |= cookieOptions.crossSite ? 1 : 0 // Store useCrossSiteScripting in next bit\n /* eslint-enable no-bitwise */\n\n return byte.toString(16) // Convert to hex string\n}\n"],"mappings":";;;;;;;;;;AAyBA,MAAM,yBAAyB;AAE/B,eAAsB,qBACpB,eAC+C;CAC/C,MAAM,EAAE,kBAAkB;CAC1B,IAAI,CAAC,eACH;CAGF,IAAIA,qBAAAA,uBAAuB,KAAM,MAAMC,qBAAAA,qBAAqBC,qBAAAA,yBAAyB,aAAa,GAChG,OAAO;EAAE,MAAMC,yBAAAA,mBAAmB;EAAQ;EAAe,WAAA;CAAkC;CAG7F,IAAI,MAAMF,qBAAAA,qBAAqBG,qBAAAA,4BAA4B,aAAa,GACtE,OAAO;EAAE,MAAMD,yBAAAA,mBAAmB;EAAQ;EAAe,WAAA;CAAqC;AAIlG;AAGA,IAAI;AAEJ,SAAgB,mBACd,0BACA,eACsB;CACtB,MAAM,EAAE,eAAe,cAAc;CACrC,MAAM,oBAAoB,IAAIE,mBAAAA,WAAyB;CACvD,MAAM,qBAAqB,CAAC,CAAC,cAAc;CAC3C,MAAM,OAAO,oBAAoB,aAAa;CAC9C,MAAM,eAAeC,iBAAAA,SAAS,kBAAkB,CAAC,CAAC,WAAW,aAAa;CAC1E,IAAI,cAAc;CAElB,aAAa,WAAW,gBAAgB;EACtC,aACG,OAAO,CAAC,CACR,MAAM,iBAAiB;GACtB,kBAAkB,OAAO,yBAAyB,cAAc,IAAI,CAAC;EACvE,CAAC,CAAC,CACD,OAAO,UAAUC,gBAAAA,6BAAa,IAAI,MAAM,kDAAkD,OAAO,CAAC,CAAC;CACxG,CAAC;CAED,SAAS,cAAc,IAA2C;EAChE,OAAO,aAAa,cAAc,iBAAiB;GACjD,IAAI,eAAe,yBAAyB,cAAc,IAAI;GAE9D,IAAI,eAAeC,oBAAAA,cAAc,YAAY,GAC3C,eAAe,yBAAyBC,eAAAA,WAAWC,6BAAAA,wBAAwB,GAAG,IAAI;GAEpF,cAAc;GAMd,OAAO;IAAE,OAHa,mBADL,GAAG,YAC4B,GAAG,aAGvB;IAAG,aAFX,qBAAqBC,yBAAAA,kCAAkCC,yBAAAA;GAEhC;EAC7C,CAAC;CACH;CAEA,OAAO;EACL,MAAM,gBACJ,IACA,YACe;GACf,IAAI,OAAO,cAAc,eAAe,UAAU,OAChD,MAAM,UAAU,MACb,QAAQC,6BAAAA,yBAAyB,cAAc,EAAE,CAAC,CAAC,CACnD,OAAO,UAAmB;IACzB,IAAI,wBAAwB,KAAK,GAC/B;IAEF,MAAM;GACR,CAAC;QACE;IACL,gBAAgB,gBAAgB,QAAQ,QAAQ,EAAA,CAAG,WAAW,cAAc,EAAE,CAAC;IAC/E,MAAM;GACR;EACF;EACA;CACF;AACF;AAKA,SAAS,wBAAwB,OAAyB;CACxD,IAAI,EAAE,iBAAiB,QACrB,OAAO;CAET,OAAO,MAAM,SAAS,gBAAgB,MAAM,QAAQ,SAAS,oBAAoB;AACnF;AAEA,SAAgB,mBAAmB,WAAsB,eAA4C;CACnG,OAAO,cAAA,IACHX,qBAAAA,wBAAwBW,6BAAAA,mBAAmB,aAAa,IACxDT,qBAAAA,2BAA2BS,6BAAAA,mBAAmB,aAAa;AACjE;AAEA,SAAS,yBAAyB,OAAiB,MAA4B;CAC7E,IAAI;CAGJ,KAAK,MAAM,QAAQ,MAAM,MAAM,CAAC,CAAC,QAAQ,GAAG;EAC1C,eAAeC,qBAAAA,eAAe,IAAI;EAClC,IAAI,aAAa,MAAM,MACrB;CAEJ;CAGA,OAAO,cAAc;CAErB,OAAO,gBAAgB,CAAC;AAC1B;AAEA,SAAS,mBAAmB,cAA4B,eAAsC;CAC5F,OAAOC,qBAAAA,gBACLP,oBAAAA,cAAc,YAAY,IAAI,eAAe;EAAE,GAAG;EAAc,GAAG,oBAAoB,aAAa;CAAE,CACxG;AACF;AAEA,SAAS,oBAAoB,eAAsC;CACjE,MAAM,cAAc,cAAc,SAAS,cAAc,OAAO,MAAM,GAAG,CAAC,CAAC,SAAS,IAAI;CAGxF,IAAI,OAAO;CACX,QAAQ,0BAA0B;CAClC,QAAQ,eAAe;CACvB,QAAQ,cAAc,YAAY,IAAI;CAGtC,OAAO,KAAK,SAAS,EAAE;AACzB"}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import type { Configuration } from '../../configuration';
|
|
2
|
-
import type { SessionState } from '../sessionState';
|
|
3
1
|
import type { SessionStoreStrategy, SessionStoreStrategyType } from './sessionStoreStrategy';
|
|
4
2
|
export declare function selectLocalStorageStrategy(): SessionStoreStrategyType | undefined;
|
|
5
|
-
export declare function initLocalStorageStrategy(
|
|
6
|
-
export declare function retrieveSessionFromLocalStorage(): SessionState;
|
|
3
|
+
export declare function initLocalStorageStrategy(): SessionStoreStrategy;
|
|
@@ -1,42 +1,43 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
const sessionStoreStrategy_1 = require("./sessionStoreStrategy");
|
|
10
|
-
const LOCAL_STORAGE_TEST_KEY = '_oo_test_';
|
|
1
|
+
const require_stringUtils = require("../../../tools/utils/stringUtils.js");
|
|
2
|
+
const require_observable = require("../../../tools/observable.js");
|
|
3
|
+
const require_addEventListener = require("../../../browser/addEventListener.js");
|
|
4
|
+
const require_sessionConstants = require("../sessionConstants.js");
|
|
5
|
+
const require_sessionState = require("../sessionState.js");
|
|
6
|
+
const require_sessionStoreStrategy = require("./sessionStoreStrategy.js");
|
|
7
|
+
//#region src/domain/session/storeStrategies/sessionInLocalStorage.ts
|
|
8
|
+
const LOCAL_STORAGE_TEST_KEY = "_oo_test_";
|
|
11
9
|
function selectLocalStorageStrategy() {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
function initLocalStorageStrategy(configuration) {
|
|
25
|
-
return {
|
|
26
|
-
isLockEnabled: false,
|
|
27
|
-
persistSession: persistInLocalStorage,
|
|
28
|
-
retrieveSession: retrieveSessionFromLocalStorage,
|
|
29
|
-
expireSession: (sessionState) => expireSessionFromLocalStorage(sessionState, configuration),
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
function persistInLocalStorage(sessionState) {
|
|
33
|
-
localStorage.setItem(sessionStoreStrategy_1.SESSION_STORE_KEY, (0, sessionState_1.toSessionString)(sessionState));
|
|
10
|
+
try {
|
|
11
|
+
const id = require_stringUtils.generateUUID();
|
|
12
|
+
const testKey = `${LOCAL_STORAGE_TEST_KEY}${id}`;
|
|
13
|
+
localStorage.setItem(testKey, id);
|
|
14
|
+
const retrievedId = localStorage.getItem(testKey);
|
|
15
|
+
localStorage.removeItem(testKey);
|
|
16
|
+
return id === retrievedId ? { type: require_sessionConstants.SessionPersistence.LOCAL_STORAGE } : void 0;
|
|
17
|
+
} catch {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
34
20
|
}
|
|
35
|
-
function
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
|
|
21
|
+
function initLocalStorageStrategy() {
|
|
22
|
+
const sessionObservable = new require_observable.Observable((observable) => require_addEventListener.addEventListener(window, "storage", (event) => {
|
|
23
|
+
if (event.key === "_oo_s_v2" && event.storageArea === localStorage) observable.notify(require_sessionState.toSessionState(event.newValue));
|
|
24
|
+
}).stop);
|
|
25
|
+
let isFirstCall = true;
|
|
26
|
+
return {
|
|
27
|
+
async setSessionState(fn, _operation) {
|
|
28
|
+
let currentState = require_sessionState.toSessionState(localStorage.getItem(require_sessionStoreStrategy.SESSION_STORE_KEY));
|
|
29
|
+
if (isFirstCall && require_sessionState.isSessionInNotStartedState(currentState)) currentState = require_sessionState.toSessionState(localStorage.getItem(require_sessionStoreStrategy.LEGACY_SESSION_STORE_KEY));
|
|
30
|
+
isFirstCall = false;
|
|
31
|
+
const newState = fn(currentState);
|
|
32
|
+
localStorage.setItem(require_sessionStoreStrategy.SESSION_STORE_KEY, require_sessionState.toSessionString(newState));
|
|
33
|
+
await Promise.resolve();
|
|
34
|
+
sessionObservable.notify(newState);
|
|
35
|
+
},
|
|
36
|
+
sessionObservable
|
|
37
|
+
};
|
|
41
38
|
}
|
|
39
|
+
//#endregion
|
|
40
|
+
exports.initLocalStorageStrategy = initLocalStorageStrategy;
|
|
41
|
+
exports.selectLocalStorageStrategy = selectLocalStorageStrategy;
|
|
42
|
+
|
|
42
43
|
//# sourceMappingURL=sessionInLocalStorage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionInLocalStorage.js","
|
|
1
|
+
{"version":3,"file":"sessionInLocalStorage.js","names":["generateUUID","SessionPersistence","Observable","addEventListener","toSessionState","SESSION_STORE_KEY","isSessionInNotStartedState","LEGACY_SESSION_STORE_KEY","toSessionString"],"sources":["../../../../src/domain/session/storeStrategies/sessionInLocalStorage.ts"],"sourcesContent":["import { generateUUID } from '../../../tools/utils/stringUtils'\nimport { Observable } from '../../../tools/observable'\nimport { addEventListener } from '../../../browser/addEventListener'\nimport { SessionPersistence } from '../sessionConstants'\nimport type { SessionState } from '../sessionState'\nimport { isSessionInNotStartedState, toSessionString, toSessionState } from '../sessionState'\nimport type { SessionStateOperation, SessionStoreStrategy, SessionStoreStrategyType } from './sessionStoreStrategy'\nimport { SESSION_STORE_KEY, LEGACY_SESSION_STORE_KEY } from './sessionStoreStrategy'\n\nconst LOCAL_STORAGE_TEST_KEY = '_oo_test_'\n\nexport function selectLocalStorageStrategy(): SessionStoreStrategyType | undefined {\n try {\n const id = generateUUID()\n const testKey = `${LOCAL_STORAGE_TEST_KEY}${id}`\n localStorage.setItem(testKey, id)\n const retrievedId = localStorage.getItem(testKey)\n localStorage.removeItem(testKey)\n return id === retrievedId ? { type: SessionPersistence.LOCAL_STORAGE } : undefined\n } catch {\n return undefined\n }\n}\n\nexport function initLocalStorageStrategy(): SessionStoreStrategy {\n const sessionObservable = new Observable<SessionState>(\n (observable) =>\n addEventListener(window, 'storage', (event) => {\n if (event.key === SESSION_STORE_KEY && event.storageArea === localStorage) {\n observable.notify(toSessionState(event.newValue))\n }\n }).stop\n )\n\n let isFirstCall = true\n\n return {\n async setSessionState(\n fn: (sessionState: SessionState) => SessionState,\n _operation: SessionStateOperation\n ): Promise<void> {\n let currentState = toSessionState(localStorage.getItem(SESSION_STORE_KEY))\n\n if (isFirstCall && isSessionInNotStartedState(currentState)) {\n currentState = toSessionState(localStorage.getItem(LEGACY_SESSION_STORE_KEY))\n }\n isFirstCall = false\n\n const newState = fn(currentState)\n localStorage.setItem(SESSION_STORE_KEY, toSessionString(newState))\n await Promise.resolve()\n sessionObservable.notify(newState)\n },\n sessionObservable,\n }\n}\n"],"mappings":";;;;;;;AASA,MAAM,yBAAyB;AAE/B,SAAgB,6BAAmE;CACjF,IAAI;EACF,MAAM,KAAKA,oBAAAA,aAAa;EACxB,MAAM,UAAU,GAAG,yBAAyB;EAC5C,aAAa,QAAQ,SAAS,EAAE;EAChC,MAAM,cAAc,aAAa,QAAQ,OAAO;EAChD,aAAa,WAAW,OAAO;EAC/B,OAAO,OAAO,cAAc,EAAE,MAAMC,yBAAAA,mBAAmB,cAAc,IAAI,KAAA;CAC3E,QAAQ;EACN;CACF;AACF;AAEA,SAAgB,2BAAiD;CAC/D,MAAM,oBAAoB,IAAIC,mBAAAA,YAC3B,eACCC,yBAAAA,iBAAiB,QAAQ,YAAY,UAAU;EAC7C,IAAI,MAAM,QAAA,cAA6B,MAAM,gBAAgB,cAC3D,WAAW,OAAOC,qBAAAA,eAAe,MAAM,QAAQ,CAAC;CAEpD,CAAC,CAAC,CAAC,IACP;CAEA,IAAI,cAAc;CAElB,OAAO;EACL,MAAM,gBACJ,IACA,YACe;GACf,IAAI,eAAeA,qBAAAA,eAAe,aAAa,QAAQC,6BAAAA,iBAAiB,CAAC;GAEzE,IAAI,eAAeC,qBAAAA,2BAA2B,YAAY,GACxD,eAAeF,qBAAAA,eAAe,aAAa,QAAQG,6BAAAA,wBAAwB,CAAC;GAE9E,cAAc;GAEd,MAAM,WAAW,GAAG,YAAY;GAChC,aAAa,QAAQF,6BAAAA,mBAAmBG,qBAAAA,gBAAgB,QAAQ,CAAC;GACjE,MAAM,QAAQ,QAAQ;GACtB,kBAAkB,OAAO,QAAQ;EACnC;EACA;CACF;AACF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { SessionState } from '../sessionState';
|
|
2
|
+
import type { SessionStoreStrategy, SessionStoreStrategyType } from './sessionStoreStrategy';
|
|
3
|
+
export declare const MEMORY_SESSION_STORE_KEY = "_DD_SESSION";
|
|
4
|
+
export interface MemorySession {
|
|
5
|
+
state?: SessionState;
|
|
6
|
+
onChange?: (state: SessionState) => void;
|
|
7
|
+
}
|
|
8
|
+
export interface GlobalObjectWithSession {
|
|
9
|
+
[MEMORY_SESSION_STORE_KEY]?: MemorySession;
|
|
10
|
+
}
|
|
11
|
+
export declare function selectMemorySessionStoreStrategy(): SessionStoreStrategyType;
|
|
12
|
+
export declare function initMemorySessionStoreStrategy(): SessionStoreStrategy;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
const require_objectUtils = require("../../../tools/utils/objectUtils.js");
|
|
2
|
+
const require_globalObject = require("../../../tools/globalObject.js");
|
|
3
|
+
const require_observable = require("../../../tools/observable.js");
|
|
4
|
+
const require_sessionConstants = require("../sessionConstants.js");
|
|
5
|
+
//#region src/domain/session/storeStrategies/sessionInMemory.ts
|
|
6
|
+
const MEMORY_SESSION_STORE_KEY = "_DD_SESSION";
|
|
7
|
+
function selectMemorySessionStoreStrategy() {
|
|
8
|
+
return { type: require_sessionConstants.SessionPersistence.MEMORY };
|
|
9
|
+
}
|
|
10
|
+
function initMemorySessionStoreStrategy() {
|
|
11
|
+
const globalObjectWithSession = require_globalObject.globalObject;
|
|
12
|
+
if (!globalObjectWithSession["_DD_SESSION"]) globalObjectWithSession[MEMORY_SESSION_STORE_KEY] = {};
|
|
13
|
+
const memorySession = globalObjectWithSession[MEMORY_SESSION_STORE_KEY];
|
|
14
|
+
const sessionObservable = new require_observable.Observable();
|
|
15
|
+
const previousOnChange = memorySession.onChange;
|
|
16
|
+
memorySession.onChange = (state) => {
|
|
17
|
+
previousOnChange?.(state);
|
|
18
|
+
sessionObservable.notify(state);
|
|
19
|
+
};
|
|
20
|
+
return {
|
|
21
|
+
async setSessionState(fn, _operation) {
|
|
22
|
+
const newState = require_objectUtils.shallowClone(fn(memorySession.state ?? {}));
|
|
23
|
+
memorySession.state = newState;
|
|
24
|
+
await Promise.resolve();
|
|
25
|
+
memorySession.onChange?.(newState);
|
|
26
|
+
},
|
|
27
|
+
sessionObservable
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
//#endregion
|
|
31
|
+
exports.MEMORY_SESSION_STORE_KEY = MEMORY_SESSION_STORE_KEY;
|
|
32
|
+
exports.initMemorySessionStoreStrategy = initMemorySessionStoreStrategy;
|
|
33
|
+
exports.selectMemorySessionStoreStrategy = selectMemorySessionStoreStrategy;
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=sessionInMemory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sessionInMemory.js","names":["SessionPersistence","globalObject","Observable","shallowClone"],"sources":["../../../../src/domain/session/storeStrategies/sessionInMemory.ts"],"sourcesContent":["import { globalObject } from '../../../tools/globalObject'\nimport { Observable } from '../../../tools/observable'\nimport { shallowClone } from '../../../tools/utils/objectUtils'\nimport { SessionPersistence } from '../sessionConstants'\nimport type { SessionState } from '../sessionState'\nimport type { SessionStateOperation, SessionStoreStrategy, SessionStoreStrategyType } from './sessionStoreStrategy'\n\nexport const MEMORY_SESSION_STORE_KEY = '_DD_SESSION'\n\nexport interface MemorySession {\n state?: SessionState\n onChange?: (state: SessionState) => void\n}\n\nexport interface GlobalObjectWithSession {\n [MEMORY_SESSION_STORE_KEY]?: MemorySession\n}\n\nexport function selectMemorySessionStoreStrategy(): SessionStoreStrategyType {\n return { type: SessionPersistence.MEMORY }\n}\n\nexport function initMemorySessionStoreStrategy(): SessionStoreStrategy {\n const globalObjectWithSession = globalObject as GlobalObjectWithSession\n\n // Share the observable across SDK instances (RUM + Logs)\n if (!globalObjectWithSession[MEMORY_SESSION_STORE_KEY]) {\n globalObjectWithSession[MEMORY_SESSION_STORE_KEY] = {}\n }\n const memorySession = globalObjectWithSession[MEMORY_SESSION_STORE_KEY]\n\n const sessionObservable = new Observable<SessionState>()\n\n // Wire the local observable to the shared onChange callback so that\n // multiple SDK instances (RUM + Logs) can observe each other's changes.\n const previousOnChange = memorySession.onChange\n memorySession.onChange = (state: SessionState) => {\n previousOnChange?.(state)\n sessionObservable.notify(state)\n }\n\n return {\n async setSessionState(\n fn: (sessionState: SessionState) => SessionState,\n _operation: SessionStateOperation\n ): Promise<void> {\n const currentState = memorySession.state ?? {}\n const newState = shallowClone(fn(currentState))\n memorySession.state = newState\n await Promise.resolve()\n memorySession.onChange?.(newState)\n },\n sessionObservable,\n }\n}\n"],"mappings":";;;;;AAOA,MAAa,2BAA2B;AAWxC,SAAgB,mCAA6D;CAC3E,OAAO,EAAE,MAAMA,yBAAAA,mBAAmB,OAAO;AAC3C;AAEA,SAAgB,iCAAuD;CACrE,MAAM,0BAA0BC,qBAAAA;CAGhC,IAAI,CAAC,wBAAA,gBACH,wBAAwB,4BAA4B,CAAC;CAEvD,MAAM,gBAAgB,wBAAwB;CAE9C,MAAM,oBAAoB,IAAIC,mBAAAA,WAAyB;CAIvD,MAAM,mBAAmB,cAAc;CACvC,cAAc,YAAY,UAAwB;EAChD,mBAAmB,KAAK;EACxB,kBAAkB,OAAO,KAAK;CAChC;CAEA,OAAO;EACL,MAAM,gBACJ,IACA,YACe;GAEf,MAAM,WAAWC,oBAAAA,aAAa,GADT,cAAc,SAAS,CAAC,CACA,CAAC;GAC9C,cAAc,QAAQ;GACtB,MAAM,QAAQ,QAAQ;GACtB,cAAc,WAAW,QAAQ;EACnC;EACA;CACF;AACF"}
|
|
@@ -1,16 +1,25 @@
|
|
|
1
1
|
import type { CookieOptions } from '../../../browser/cookie';
|
|
2
2
|
import type { SessionPersistence } from '../sessionConstants';
|
|
3
3
|
import type { SessionState } from '../sessionState';
|
|
4
|
-
|
|
5
|
-
export
|
|
4
|
+
import type { Observable } from '../../../tools/observable';
|
|
5
|
+
export declare const SESSION_STORE_KEY = "_oo_s_v2";
|
|
6
|
+
export declare const LEGACY_SESSION_STORE_KEY = "_oo_s";
|
|
7
|
+
export declare const enum CookieApi {
|
|
8
|
+
DOCUMENT_COOKIE = 0,
|
|
9
|
+
COOKIE_STORE = 1
|
|
10
|
+
}
|
|
11
|
+
export interface CookieSessionStoreStrategyType {
|
|
6
12
|
type: typeof SessionPersistence.COOKIE;
|
|
7
13
|
cookieOptions: CookieOptions;
|
|
8
|
-
|
|
14
|
+
cookieApi: CookieApi;
|
|
15
|
+
}
|
|
16
|
+
export type SessionStoreStrategyType = CookieSessionStoreStrategyType | {
|
|
9
17
|
type: typeof SessionPersistence.LOCAL_STORAGE;
|
|
18
|
+
} | {
|
|
19
|
+
type: typeof SessionPersistence.MEMORY;
|
|
10
20
|
};
|
|
21
|
+
export type SessionStateOperation = 'initialize' | 'expandOrRenewOnActivity' | 'expandOrRenewOnConsent' | 'expandOnVisibility' | 'initializeOnResume' | 'expireOnTimeout' | 'expire' | 'updateState';
|
|
11
22
|
export interface SessionStoreStrategy {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
retrieveSession: () => SessionState;
|
|
15
|
-
expireSession: (previousSessionState: SessionState) => void;
|
|
23
|
+
setSessionState(fn: (sessionState: SessionState) => SessionState, operation: SessionStateOperation): Promise<void>;
|
|
24
|
+
sessionObservable: Observable<SessionState>;
|
|
16
25
|
}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
//#region src/domain/session/storeStrategies/sessionStoreStrategy.ts
|
|
2
|
+
const SESSION_STORE_KEY = "_oo_s_v2";
|
|
3
|
+
const LEGACY_SESSION_STORE_KEY = "_oo_s";
|
|
4
|
+
//#endregion
|
|
5
|
+
exports.LEGACY_SESSION_STORE_KEY = LEGACY_SESSION_STORE_KEY;
|
|
6
|
+
exports.SESSION_STORE_KEY = SESSION_STORE_KEY;
|
|
7
|
+
|
|
5
8
|
//# sourceMappingURL=sessionStoreStrategy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionStoreStrategy.js","
|
|
1
|
+
{"version":3,"file":"sessionStoreStrategy.js","names":[],"sources":["../../../../src/domain/session/storeStrategies/sessionStoreStrategy.ts"],"sourcesContent":["import type { CookieOptions } from '../../../browser/cookie'\nimport type { SessionPersistence } from '../sessionConstants'\nimport type { SessionState } from '../sessionState'\nimport type { Observable } from '../../../tools/observable'\n\nexport const SESSION_STORE_KEY = '_oo_s_v2'\nexport const LEGACY_SESSION_STORE_KEY = '_oo_s'\n\nexport const enum CookieApi {\n DOCUMENT_COOKIE,\n COOKIE_STORE,\n}\n\nexport interface CookieSessionStoreStrategyType {\n type: typeof SessionPersistence.COOKIE\n cookieOptions: CookieOptions\n cookieApi: CookieApi\n}\n\nexport type SessionStoreStrategyType =\n | CookieSessionStoreStrategyType\n | { type: typeof SessionPersistence.LOCAL_STORAGE }\n | { type: typeof SessionPersistence.MEMORY }\n\nexport type SessionStateOperation =\n | 'initialize'\n | 'expandOrRenewOnActivity'\n | 'expandOrRenewOnConsent'\n | 'expandOnVisibility'\n | 'initializeOnResume'\n | 'expireOnTimeout'\n | 'expire'\n | 'updateState'\n\nexport interface SessionStoreStrategy {\n setSessionState(fn: (sessionState: SessionState) => SessionState, operation: SessionStateOperation): Promise<void>\n sessionObservable: Observable<SessionState>\n}\n"],"mappings":";AAKA,MAAa,oBAAoB;AACjC,MAAa,2BAA2B"}
|
|
@@ -1,12 +1,18 @@
|
|
|
1
1
|
export declare const SYNTHETICS_TEST_ID_COOKIE_NAME = "openobserve-synthetics-public-id";
|
|
2
2
|
export declare const SYNTHETICS_RESULT_ID_COOKIE_NAME = "openobserve-synthetics-result-id";
|
|
3
3
|
export declare const SYNTHETICS_INJECTS_RUM_COOKIE_NAME = "openobserve-synthetics-injects-rum";
|
|
4
|
-
export
|
|
4
|
+
export declare const SYNTHETICS_CONTEXT_COOKIE_NAME = "openobserve-synthetics-rum-context";
|
|
5
|
+
export interface BrowserWindow {
|
|
5
6
|
_OO_SYNTHETICS_PUBLIC_ID?: unknown;
|
|
6
7
|
_OO_SYNTHETICS_RESULT_ID?: unknown;
|
|
7
8
|
_OO_SYNTHETICS_INJECTS_RUM?: unknown;
|
|
9
|
+
_OO_SYNTHETICS_RUM_CONTEXT?: unknown;
|
|
10
|
+
}
|
|
11
|
+
export interface SyntheticsContext {
|
|
12
|
+
test_id: string;
|
|
13
|
+
result_id: string;
|
|
14
|
+
[key: string]: unknown;
|
|
8
15
|
}
|
|
9
16
|
export declare function willSyntheticsInjectRum(): boolean;
|
|
10
|
-
export declare function
|
|
11
|
-
export declare function getSyntheticsResultId(): string | undefined;
|
|
17
|
+
export declare function getSyntheticsContext(): SyntheticsContext | undefined;
|
|
12
18
|
export declare function isSyntheticsTest(): boolean;
|
|
@@ -1,31 +1,39 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
exports.SYNTHETICS_TEST_ID_COOKIE_NAME = 'openobserve-synthetics-public-id';
|
|
11
|
-
exports.SYNTHETICS_RESULT_ID_COOKIE_NAME = 'openobserve-synthetics-result-id';
|
|
12
|
-
exports.SYNTHETICS_INJECTS_RUM_COOKIE_NAME = 'openobserve-synthetics-injects-rum';
|
|
1
|
+
const require_objectUtils = require("../../tools/utils/objectUtils.js");
|
|
2
|
+
const require_globalObject = require("../../tools/globalObject.js");
|
|
3
|
+
const require_cookie = require("../../browser/cookie.js");
|
|
4
|
+
//#region src/domain/synthetics/syntheticsWorkerValues.ts
|
|
5
|
+
const cookieNamePrefix = "openobserve-synthetics-";
|
|
6
|
+
const SYNTHETICS_TEST_ID_COOKIE_NAME = `${cookieNamePrefix}public-id`;
|
|
7
|
+
const SYNTHETICS_RESULT_ID_COOKIE_NAME = `${cookieNamePrefix}result-id`;
|
|
8
|
+
const SYNTHETICS_INJECTS_RUM_COOKIE_NAME = `${cookieNamePrefix}injects-rum`;
|
|
9
|
+
const SYNTHETICS_CONTEXT_COOKIE_NAME = `${cookieNamePrefix}rum-context`;
|
|
13
10
|
function willSyntheticsInjectRum() {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
return false;
|
|
17
|
-
}
|
|
18
|
-
return Boolean(globalObject_1.globalObject._OO_SYNTHETICS_INJECTS_RUM || (0, cookie_1.getInitCookie)(exports.SYNTHETICS_INJECTS_RUM_COOKIE_NAME));
|
|
11
|
+
if (require_globalObject.isWorkerEnvironment) return false;
|
|
12
|
+
return Boolean(require_globalObject.globalObject._OO_SYNTHETICS_INJECTS_RUM || require_cookie.getInitCookie(SYNTHETICS_INJECTS_RUM_COOKIE_NAME));
|
|
19
13
|
}
|
|
20
|
-
function
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}
|
|
24
|
-
function getSyntheticsResultId() {
|
|
25
|
-
const value = window._OO_SYNTHETICS_RESULT_ID || (0, cookie_1.getInitCookie)(exports.SYNTHETICS_RESULT_ID_COOKIE_NAME);
|
|
26
|
-
return typeof value === 'string' ? value : undefined;
|
|
14
|
+
function getSyntheticsContext() {
|
|
15
|
+
const raw = getRawSyntheticsContext();
|
|
16
|
+
return isValidSyntheticsContext(raw) ? raw : void 0;
|
|
27
17
|
}
|
|
28
18
|
function isSyntheticsTest() {
|
|
29
|
-
|
|
19
|
+
return Boolean(getSyntheticsContext());
|
|
20
|
+
}
|
|
21
|
+
function getRawSyntheticsContext() {
|
|
22
|
+
const rawGlobal = require_globalObject.globalObject._OO_SYNTHETICS_RUM_CONTEXT;
|
|
23
|
+
if (rawGlobal) return rawGlobal;
|
|
24
|
+
const rawCookie = require_cookie.getInitCookie(SYNTHETICS_CONTEXT_COOKIE_NAME);
|
|
25
|
+
if (rawCookie) return require_objectUtils.tryJsonParse(decodeURIComponent(rawCookie));
|
|
26
|
+
return {
|
|
27
|
+
test_id: window._OO_SYNTHETICS_PUBLIC_ID || require_cookie.getInitCookie(SYNTHETICS_TEST_ID_COOKIE_NAME),
|
|
28
|
+
result_id: window._OO_SYNTHETICS_RESULT_ID || require_cookie.getInitCookie(SYNTHETICS_RESULT_ID_COOKIE_NAME)
|
|
29
|
+
};
|
|
30
30
|
}
|
|
31
|
+
function isValidSyntheticsContext(value) {
|
|
32
|
+
return typeof value === "object" && value !== null && typeof value.test_id === "string" && typeof value.result_id === "string";
|
|
33
|
+
}
|
|
34
|
+
//#endregion
|
|
35
|
+
exports.getSyntheticsContext = getSyntheticsContext;
|
|
36
|
+
exports.isSyntheticsTest = isSyntheticsTest;
|
|
37
|
+
exports.willSyntheticsInjectRum = willSyntheticsInjectRum;
|
|
38
|
+
|
|
31
39
|
//# sourceMappingURL=syntheticsWorkerValues.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syntheticsWorkerValues.js","
|
|
1
|
+
{"version":3,"file":"syntheticsWorkerValues.js","names":["isWorkerEnvironment","globalObject","getInitCookie","tryJsonParse"],"sources":["../../../src/domain/synthetics/syntheticsWorkerValues.ts"],"sourcesContent":["import { getInitCookie } from '../../browser/cookie'\nimport { globalObject, isWorkerEnvironment } from '../../tools/globalObject'\nimport { tryJsonParse } from '../../tools/utils/objectUtils'\n\nconst cookieNamePrefix = 'openobserve-synthetics-'\nexport const SYNTHETICS_TEST_ID_COOKIE_NAME = `${cookieNamePrefix}public-id`\nexport const SYNTHETICS_RESULT_ID_COOKIE_NAME = `${cookieNamePrefix}result-id`\nexport const SYNTHETICS_INJECTS_RUM_COOKIE_NAME = `${cookieNamePrefix}injects-rum`\nexport const SYNTHETICS_CONTEXT_COOKIE_NAME = `${cookieNamePrefix}rum-context`\n\nexport interface BrowserWindow {\n _OO_SYNTHETICS_PUBLIC_ID?: unknown\n _OO_SYNTHETICS_RESULT_ID?: unknown\n _OO_SYNTHETICS_INJECTS_RUM?: unknown\n _OO_SYNTHETICS_RUM_CONTEXT?: unknown\n}\n\nexport interface SyntheticsContext {\n test_id: string\n result_id: string\n [key: string]: unknown\n}\n\nexport function willSyntheticsInjectRum(): boolean {\n if (isWorkerEnvironment) {\n // We don't expect to run synthetics tests in a worker environment\n return false\n }\n\n return Boolean(\n (globalObject as BrowserWindow)._OO_SYNTHETICS_INJECTS_RUM || getInitCookie(SYNTHETICS_INJECTS_RUM_COOKIE_NAME)\n )\n}\n\nexport function getSyntheticsContext(): SyntheticsContext | undefined {\n const raw = getRawSyntheticsContext()\n return isValidSyntheticsContext(raw) ? raw : undefined\n}\n\nexport function isSyntheticsTest(): boolean {\n return Boolean(getSyntheticsContext())\n}\n\nfunction getRawSyntheticsContext(): unknown {\n const rawGlobal = (globalObject as BrowserWindow)._OO_SYNTHETICS_RUM_CONTEXT\n if (rawGlobal) {\n return rawGlobal\n }\n\n const rawCookie = getInitCookie(SYNTHETICS_CONTEXT_COOKIE_NAME)\n if (rawCookie) {\n return tryJsonParse(decodeURIComponent(rawCookie))\n }\n\n return {\n test_id: (window as BrowserWindow)._OO_SYNTHETICS_PUBLIC_ID || getInitCookie(SYNTHETICS_TEST_ID_COOKIE_NAME),\n result_id:\n (window as BrowserWindow)._OO_SYNTHETICS_RESULT_ID || getInitCookie(SYNTHETICS_RESULT_ID_COOKIE_NAME),\n }\n}\n\nfunction isValidSyntheticsContext(value: unknown): value is SyntheticsContext {\n return (\n typeof value === 'object' &&\n value !== null &&\n typeof (value as Record<string, unknown>).test_id === 'string' &&\n typeof (value as Record<string, unknown>).result_id === 'string'\n )\n}\n"],"mappings":";;;;AAIA,MAAM,mBAAmB;AACzB,MAAa,iCAAiC,GAAG,iBAAiB;AAClE,MAAa,mCAAmC,GAAG,iBAAiB;AACpE,MAAa,qCAAqC,GAAG,iBAAiB;AACtE,MAAa,iCAAiC,GAAG,iBAAiB;AAelE,SAAgB,0BAAmC;CACjD,IAAIA,qBAAAA,qBAEF,OAAO;CAGT,OAAO,QACJC,qBAAAA,aAA+B,8BAA8BC,eAAAA,cAAc,kCAAkC,CAChH;AACF;AAEA,SAAgB,uBAAsD;CACpE,MAAM,MAAM,wBAAwB;CACpC,OAAO,yBAAyB,GAAG,IAAI,MAAM,KAAA;AAC/C;AAEA,SAAgB,mBAA4B;CAC1C,OAAO,QAAQ,qBAAqB,CAAC;AACvC;AAEA,SAAS,0BAAmC;CAC1C,MAAM,YAAaD,qBAAAA,aAA+B;CAClD,IAAI,WACF,OAAO;CAGT,MAAM,YAAYC,eAAAA,cAAc,8BAA8B;CAC9D,IAAI,WACF,OAAOC,oBAAAA,aAAa,mBAAmB,SAAS,CAAC;CAGnD,OAAO;EACL,SAAU,OAAyB,4BAA4BD,eAAAA,cAAc,8BAA8B;EAC3G,WACG,OAAyB,4BAA4BA,eAAAA,cAAc,gCAAgC;CACxG;AACF;AAEA,SAAS,yBAAyB,OAA4C;CAC5E,OACE,OAAO,UAAU,YACjB,UAAU,QACV,OAAQ,MAAkC,YAAY,YACtD,OAAQ,MAAkC,cAAc;AAE5D"}
|
package/cjs/domain/tags.d.ts
CHANGED
|
@@ -3,4 +3,3 @@ export declare const TAG_SIZE_LIMIT = 200;
|
|
|
3
3
|
export declare function buildTags(configuration: Configuration): string[];
|
|
4
4
|
export declare function buildTag(key: string, rawValue?: string): string;
|
|
5
5
|
export declare function sanitizeTag(tag: string): string;
|
|
6
|
-
export declare function supportUnicodePropertyEscapes(): boolean;
|