@safaricom-mxl/web-sdk 0.0.15 → 0.0.17
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/DATA_EXPORT.md +2 -3
- package/REACT.md +5 -7
- package/README.md +94 -57
- package/UPGRADING.md +29 -19
- package/dist/api-logs/api/LogAPI/LogAPI.cjs +3 -3
- package/dist/api-logs/api/LogAPI/LogAPI.cjs.map +1 -1
- package/dist/api-logs/api/LogAPI/LogAPI.js +3 -3
- package/dist/api-logs/api/LogAPI/LogAPI.js.map +1 -1
- package/dist/api-logs/manager/NoOpLogManager/NoOpLogManager.cjs.map +1 -1
- package/dist/api-logs/manager/NoOpLogManager/NoOpLogManager.js.map +1 -1
- package/dist/api-logs/manager/types.d.cts +4 -4
- package/dist/api-logs/manager/types.d.cts.map +1 -1
- package/dist/api-logs/manager/types.d.ts +4 -4
- package/dist/api-logs/manager/types.d.ts.map +1 -1
- package/dist/api-page/api/PageAPI/PageAPI.cjs +3 -3
- package/dist/api-page/api/PageAPI/PageAPI.cjs.map +1 -1
- package/dist/api-page/api/PageAPI/PageAPI.js +3 -3
- package/dist/api-page/api/PageAPI/PageAPI.js.map +1 -1
- package/dist/api-sessions/api/SessionAPI/SessionAPI.cjs +9 -9
- package/dist/api-sessions/api/SessionAPI/SessionAPI.cjs.map +1 -1
- package/dist/api-sessions/api/SessionAPI/SessionAPI.d.cts +5 -7
- package/dist/api-sessions/api/SessionAPI/SessionAPI.d.cts.map +1 -1
- package/dist/api-sessions/api/SessionAPI/SessionAPI.d.ts +5 -7
- package/dist/api-sessions/api/SessionAPI/SessionAPI.d.ts.map +1 -1
- package/dist/api-sessions/api/SessionAPI/SessionAPI.js +9 -9
- package/dist/api-sessions/api/SessionAPI/SessionAPI.js.map +1 -1
- package/dist/api-sessions/index.cjs +4 -4
- package/dist/api-sessions/index.d.cts +4 -4
- package/dist/api-sessions/index.d.ts +4 -4
- package/dist/api-sessions/index.js +3 -3
- package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.cjs +47 -0
- package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.cjs.map +1 -0
- package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.d.cts +30 -0
- package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.d.cts.map +1 -0
- package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.d.ts +30 -0
- package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.d.ts.map +1 -0
- package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.js +46 -0
- package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.js.map +1 -0
- package/dist/api-sessions/manager/NoOpUserSessionManager/index.cjs +3 -0
- package/dist/api-sessions/manager/NoOpUserSessionManager/index.d.cts +2 -0
- package/dist/api-sessions/manager/NoOpUserSessionManager/index.d.ts +2 -0
- package/dist/api-sessions/manager/NoOpUserSessionManager/index.js +2 -0
- package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.cjs +81 -0
- package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.cjs.map +1 -0
- package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.d.cts +35 -0
- package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.d.cts.map +1 -0
- package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.d.ts +35 -0
- package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.d.ts.map +1 -0
- package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.js +81 -0
- package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.js.map +1 -0
- package/dist/api-sessions/manager/ProxyUserSessionManager/index.cjs +3 -0
- package/dist/api-sessions/manager/ProxyUserSessionManager/index.d.cts +2 -0
- package/dist/api-sessions/manager/ProxyUserSessionManager/index.d.ts +2 -0
- package/dist/api-sessions/manager/ProxyUserSessionManager/index.js +2 -0
- package/dist/api-sessions/manager/index.cjs +4 -4
- package/dist/api-sessions/manager/index.d.cts +4 -4
- package/dist/api-sessions/manager/index.d.ts +4 -4
- package/dist/api-sessions/manager/index.js +3 -3
- package/dist/api-sessions/manager/types.d.cts +14 -24
- package/dist/api-sessions/manager/types.d.cts.map +1 -1
- package/dist/api-sessions/manager/types.d.ts +14 -24
- package/dist/api-sessions/manager/types.d.ts.map +1 -1
- package/dist/api-traces/api/TraceAPI/TraceAPI.cjs +3 -3
- package/dist/api-traces/api/TraceAPI/TraceAPI.cjs.map +1 -1
- package/dist/api-traces/api/TraceAPI/TraceAPI.js +3 -3
- package/dist/api-traces/api/TraceAPI/TraceAPI.js.map +1 -1
- package/dist/api-traces/api/TraceAPI/types.d.cts +2 -2
- package/dist/api-traces/api/TraceAPI/types.d.cts.map +1 -1
- package/dist/api-traces/api/TraceAPI/types.d.ts +2 -2
- package/dist/api-traces/api/TraceAPI/types.d.ts.map +1 -1
- package/dist/api-users/api/UserAPI/UserAPI.cjs +3 -3
- package/dist/api-users/api/UserAPI/UserAPI.cjs.map +1 -1
- package/dist/api-users/api/UserAPI/UserAPI.js +3 -3
- package/dist/api-users/api/UserAPI/UserAPI.js.map +1 -1
- package/dist/common/types.d.cts +2 -0
- package/dist/common/types.d.cts.map +1 -1
- package/dist/common/types.d.ts +2 -0
- package/dist/common/types.d.ts.map +1 -1
- package/dist/constants/attributes.cjs +30 -0
- package/dist/constants/attributes.cjs.map +1 -1
- package/dist/constants/attributes.d.cts +18 -2
- package/dist/constants/attributes.d.cts.map +1 -1
- package/dist/constants/attributes.d.ts +18 -2
- package/dist/constants/attributes.d.ts.map +1 -1
- package/dist/constants/attributes.js +17 -1
- package/dist/constants/attributes.js.map +1 -1
- package/dist/constants/index.cjs +14 -0
- package/dist/constants/index.d.cts +2 -2
- package/dist/constants/index.d.ts +2 -2
- package/dist/constants/index.js +2 -2
- package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.cjs +1 -2
- package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.cjs.map +1 -1
- package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.d.cts +1 -2
- package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.d.cts.map +1 -1
- package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.d.ts +1 -2
- package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.d.ts.map +1 -1
- package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.js +1 -2
- package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.js.map +1 -1
- package/dist/exporters/MXLTraceExporter/OTLPFetchTraceExporter.cjs.map +1 -1
- package/dist/exporters/MXLTraceExporter/OTLPFetchTraceExporter.js.map +1 -1
- package/dist/exporters/constants.cjs +1 -1
- package/dist/exporters/constants.cjs.map +1 -1
- package/dist/exporters/constants.d.cts +1 -1
- package/dist/exporters/constants.d.ts +1 -1
- package/dist/exporters/constants.js +1 -1
- package/dist/exporters/constants.js.map +1 -1
- package/dist/exporters/otlpBrowserFetchExportDelegate.cjs.map +1 -1
- package/dist/exporters/otlpBrowserFetchExportDelegate.js.map +1 -1
- package/dist/index.cjs +2 -0
- package/dist/index.d.cts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +2 -1
- package/dist/instrumentations/InstrumentationAbstract/InstrumentationAbstract.cjs +2 -2
- package/dist/instrumentations/InstrumentationAbstract/InstrumentationAbstract.cjs.map +1 -1
- package/dist/instrumentations/InstrumentationAbstract/InstrumentationAbstract.d.cts.map +1 -1
- package/dist/instrumentations/InstrumentationAbstract/InstrumentationAbstract.d.ts.map +1 -1
- package/dist/instrumentations/InstrumentationAbstract/InstrumentationAbstract.js +2 -2
- package/dist/instrumentations/InstrumentationAbstract/InstrumentationAbstract.js.map +1 -1
- package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.cjs +6 -7
- package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.cjs.map +1 -1
- package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.d.cts +4 -5
- package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.d.cts.map +1 -1
- package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.d.ts +4 -5
- package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.d.ts.map +1 -1
- package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.js +6 -7
- package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.js.map +1 -1
- package/dist/instrumentations/clicks/ClicksInstrumentation/ClicksInstrumentation.cjs +8 -8
- package/dist/instrumentations/clicks/ClicksInstrumentation/ClicksInstrumentation.cjs.map +1 -1
- package/dist/instrumentations/clicks/ClicksInstrumentation/ClicksInstrumentation.d.cts.map +1 -1
- package/dist/instrumentations/clicks/ClicksInstrumentation/ClicksInstrumentation.d.ts.map +1 -1
- package/dist/instrumentations/clicks/ClicksInstrumentation/ClicksInstrumentation.js +8 -8
- package/dist/instrumentations/clicks/ClicksInstrumentation/ClicksInstrumentation.js.map +1 -1
- package/dist/instrumentations/document-load/DocumentLoadInstrumentation/DocumentLoadInstrumentation.cjs +10 -10
- package/dist/instrumentations/document-load/DocumentLoadInstrumentation/DocumentLoadInstrumentation.cjs.map +1 -1
- package/dist/instrumentations/document-load/DocumentLoadInstrumentation/DocumentLoadInstrumentation.js +10 -10
- package/dist/instrumentations/document-load/DocumentLoadInstrumentation/DocumentLoadInstrumentation.js.map +1 -1
- package/dist/instrumentations/document-load/DocumentLoadInstrumentation/utils.cjs +2 -2
- package/dist/instrumentations/document-load/DocumentLoadInstrumentation/utils.cjs.map +1 -1
- package/dist/instrumentations/document-load/DocumentLoadInstrumentation/utils.js +2 -2
- package/dist/instrumentations/document-load/DocumentLoadInstrumentation/utils.js.map +1 -1
- package/dist/instrumentations/element-timing/ElementTimingInstrumentation/ElementTimingInstrumentation.cjs +5 -5
- package/dist/instrumentations/element-timing/ElementTimingInstrumentation/ElementTimingInstrumentation.cjs.map +1 -1
- package/dist/instrumentations/element-timing/ElementTimingInstrumentation/ElementTimingInstrumentation.js +5 -5
- package/dist/instrumentations/element-timing/ElementTimingInstrumentation/ElementTimingInstrumentation.js.map +1 -1
- package/dist/instrumentations/empty-root/EmptyRootInstrumentation/EmptyRootInstrumentation.cjs +4 -4
- package/dist/instrumentations/empty-root/EmptyRootInstrumentation/EmptyRootInstrumentation.cjs.map +1 -1
- package/dist/instrumentations/empty-root/EmptyRootInstrumentation/EmptyRootInstrumentation.js +4 -4
- package/dist/instrumentations/empty-root/EmptyRootInstrumentation/EmptyRootInstrumentation.js.map +1 -1
- package/dist/instrumentations/exceptions/GlobalExceptionInstrumentation/GlobalExceptionInstrumentation.cjs +7 -7
- package/dist/instrumentations/exceptions/GlobalExceptionInstrumentation/GlobalExceptionInstrumentation.cjs.map +1 -1
- package/dist/instrumentations/exceptions/GlobalExceptionInstrumentation/GlobalExceptionInstrumentation.js +7 -7
- package/dist/instrumentations/exceptions/GlobalExceptionInstrumentation/GlobalExceptionInstrumentation.js.map +1 -1
- package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.cjs +3 -3
- package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.cjs.map +1 -1
- package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.d.cts +4 -4
- package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.d.cts.map +1 -1
- package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.d.ts +4 -4
- package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.d.ts.map +1 -1
- package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.js +4 -4
- package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.js.map +1 -1
- package/dist/instrumentations/index.cjs +2 -4
- package/dist/instrumentations/index.d.cts +4 -6
- package/dist/instrumentations/index.d.ts +4 -6
- package/dist/instrumentations/index.js +2 -3
- package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.cjs +23 -23
- package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.cjs.map +1 -1
- package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.d.cts +2 -3
- package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.d.cts.map +1 -1
- package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.d.ts +2 -3
- package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.d.ts.map +1 -1
- package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.js +23 -23
- package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.js.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/NavigationInstrumentation.cjs +5 -5
- package/dist/instrumentations/navigation/NavigationInstrumentation/NavigationInstrumentation.cjs.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/NavigationInstrumentation.d.cts.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/NavigationInstrumentation.d.ts.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/NavigationInstrumentation.js +5 -5
- package/dist/instrumentations/navigation/NavigationInstrumentation/NavigationInstrumentation.js.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV5/withMXLRoutingLegacy.cjs.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV5/withMXLRoutingLegacy.js.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/listenToRouterChanges.cjs +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/listenToRouterChanges.cjs.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/listenToRouterChanges.js +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/listenToRouterChanges.js.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/types.d.cts +10 -10
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/types.d.cts.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/types.d.ts +10 -10
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/types.d.ts.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Declarative/types.d.cts +2 -2
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Declarative/types.d.cts.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Declarative/types.d.ts +2 -2
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Declarative/types.d.ts.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Declarative/withMXLRouting.cjs.map +1 -1
- package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Declarative/withMXLRouting.js.map +1 -1
- package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.cjs +257 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.cjs.map +1 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.d.cts +56 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.d.cts.map +1 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.d.ts +56 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.d.ts.map +1 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.js +252 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.js.map +1 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/constants.cjs +15 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/constants.cjs.map +1 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/constants.d.cts +9 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/constants.d.cts.map +1 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/constants.d.ts +9 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/constants.d.ts.map +1 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/constants.js +10 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/constants.js.map +1 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/index.cjs +3 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/index.d.cts +3 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/index.d.ts +3 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/index.js +2 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/types.d.cts +17 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/types.d.cts.map +1 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/types.d.ts +17 -0
- package/dist/instrumentations/replay/ReplayInstrumentation/types.d.ts.map +1 -0
- package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.cjs +18 -0
- package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.cjs.map +1 -0
- package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.d.cts +8 -0
- package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.d.cts.map +1 -0
- package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.d.ts +8 -0
- package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.d.ts.map +1 -0
- package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.js +17 -0
- package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.js.map +1 -0
- package/dist/instrumentations/replay/index.cjs +8 -0
- package/dist/instrumentations/replay/index.d.cts +4 -0
- package/dist/instrumentations/replay/index.d.ts +4 -0
- package/dist/instrumentations/replay/index.js +3 -0
- package/dist/instrumentations/replay/utils/index.cjs +5 -0
- package/dist/instrumentations/replay/utils/index.d.cts +2 -0
- package/dist/instrumentations/replay/utils/index.d.ts +2 -0
- package/dist/instrumentations/replay/utils/index.js +2 -0
- package/dist/instrumentations/replay/utils/session-recording-utils.cjs +79 -0
- package/dist/instrumentations/replay/utils/session-recording-utils.cjs.map +1 -0
- package/dist/instrumentations/replay/utils/session-recording-utils.d.cts +32 -0
- package/dist/instrumentations/replay/utils/session-recording-utils.d.cts.map +1 -0
- package/dist/instrumentations/replay/utils/session-recording-utils.d.ts +32 -0
- package/dist/instrumentations/replay/utils/session-recording-utils.d.ts.map +1 -0
- package/dist/instrumentations/replay/utils/session-recording-utils.js +73 -0
- package/dist/instrumentations/replay/utils/session-recording-utils.js.map +1 -0
- package/dist/instrumentations/server-timing/ServerTimingInstrumentation/ServerTimingInstrumentation.cjs +6 -6
- package/dist/instrumentations/server-timing/ServerTimingInstrumentation/ServerTimingInstrumentation.cjs.map +1 -1
- package/dist/instrumentations/server-timing/ServerTimingInstrumentation/ServerTimingInstrumentation.js +6 -6
- package/dist/instrumentations/server-timing/ServerTimingInstrumentation/ServerTimingInstrumentation.js.map +1 -1
- package/dist/instrumentations/session/index.cjs +0 -6
- package/dist/instrumentations/session/index.d.cts +2 -7
- package/dist/instrumentations/session/index.d.ts +2 -7
- package/dist/instrumentations/session/index.js +1 -4
- package/dist/instrumentations/session/types.d.cts +5 -5
- package/dist/instrumentations/session/types.d.cts.map +1 -1
- package/dist/instrumentations/session/types.d.ts +5 -5
- package/dist/instrumentations/session/types.d.ts.map +1 -1
- package/dist/instrumentations/user-timing/UserTimingInstrumentation/UserTimingInstrumentation.cjs +10 -10
- package/dist/instrumentations/user-timing/UserTimingInstrumentation/UserTimingInstrumentation.cjs.map +1 -1
- package/dist/instrumentations/user-timing/UserTimingInstrumentation/UserTimingInstrumentation.js +10 -10
- package/dist/instrumentations/user-timing/UserTimingInstrumentation/UserTimingInstrumentation.js.map +1 -1
- package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/WebVitalsInstrumentation.cjs +15 -15
- package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/WebVitalsInstrumentation.cjs.map +1 -1
- package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/WebVitalsInstrumentation.js +15 -15
- package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/WebVitalsInstrumentation.js.map +1 -1
- package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/types.d.cts +1 -3
- package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/types.d.cts.map +1 -1
- package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/types.d.ts +1 -3
- package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/types.d.ts.map +1 -1
- package/dist/managers/MXLConfigManager/MXLDynamicConfigManager.cjs +0 -1
- package/dist/managers/MXLConfigManager/MXLDynamicConfigManager.cjs.map +1 -1
- package/dist/managers/MXLConfigManager/MXLDynamicConfigManager.d.cts.map +1 -1
- package/dist/managers/MXLConfigManager/MXLDynamicConfigManager.d.ts.map +1 -1
- package/dist/managers/MXLConfigManager/MXLDynamicConfigManager.js +0 -1
- package/dist/managers/MXLConfigManager/MXLDynamicConfigManager.js.map +1 -1
- package/dist/managers/MXLConfigManager/constants.cjs +2 -2
- package/dist/managers/MXLConfigManager/constants.cjs.map +1 -1
- package/dist/managers/MXLConfigManager/constants.js +2 -2
- package/dist/managers/MXLConfigManager/constants.js.map +1 -1
- package/dist/managers/MXLConfigManager/types.d.cts +8 -7
- package/dist/managers/MXLConfigManager/types.d.cts.map +1 -1
- package/dist/managers/MXLConfigManager/types.d.ts +8 -7
- package/dist/managers/MXLConfigManager/types.d.ts.map +1 -1
- package/dist/managers/MXLLimitManager/MXLLimitManager.cjs +20 -20
- package/dist/managers/MXLLimitManager/MXLLimitManager.cjs.map +1 -1
- package/dist/managers/MXLLimitManager/MXLLimitManager.js +20 -20
- package/dist/managers/MXLLimitManager/MXLLimitManager.js.map +1 -1
- package/dist/managers/MXLLimitManager/constants.cjs +20 -20
- package/dist/managers/MXLLimitManager/constants.cjs.map +1 -1
- package/dist/managers/MXLLimitManager/constants.js +20 -20
- package/dist/managers/MXLLimitManager/constants.js.map +1 -1
- package/dist/managers/MXLLimitManager/types.d.cts +8 -8
- package/dist/managers/MXLLimitManager/types.d.cts.map +1 -1
- package/dist/managers/MXLLimitManager/types.d.ts +8 -8
- package/dist/managers/MXLLimitManager/types.d.ts.map +1 -1
- package/dist/managers/MXLLogManager/MXLLogManager.cjs +22 -20
- package/dist/managers/MXLLogManager/MXLLogManager.cjs.map +1 -1
- package/dist/managers/MXLLogManager/MXLLogManager.d.cts +2 -2
- package/dist/managers/MXLLogManager/MXLLogManager.d.cts.map +1 -1
- package/dist/managers/MXLLogManager/MXLLogManager.d.ts +2 -2
- package/dist/managers/MXLLogManager/MXLLogManager.d.ts.map +1 -1
- package/dist/managers/MXLLogManager/MXLLogManager.js +23 -21
- package/dist/managers/MXLLogManager/MXLLogManager.js.map +1 -1
- package/dist/managers/MXLLogManager/types.d.cts +2 -2
- package/dist/managers/MXLLogManager/types.d.ts +2 -2
- package/dist/managers/MXLPageManager/MXLPageManager.cjs +1 -3
- package/dist/managers/MXLPageManager/MXLPageManager.cjs.map +1 -1
- package/dist/managers/MXLPageManager/MXLPageManager.d.cts.map +1 -1
- package/dist/managers/MXLPageManager/MXLPageManager.d.ts.map +1 -1
- package/dist/managers/MXLPageManager/MXLPageManager.js +1 -3
- package/dist/managers/MXLPageManager/MXLPageManager.js.map +1 -1
- package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.cjs +0 -4
- package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.cjs.map +1 -1
- package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.d.cts +0 -1
- package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.d.cts.map +1 -1
- package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.d.ts +0 -1
- package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.d.ts.map +1 -1
- package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.js +0 -4
- package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.js.map +1 -1
- package/dist/managers/MXLSDKFeaturesManager/types.d.cts +0 -1
- package/dist/managers/MXLSDKFeaturesManager/types.d.cts.map +1 -1
- package/dist/managers/MXLSDKFeaturesManager/types.d.ts +0 -1
- package/dist/managers/MXLSDKFeaturesManager/types.d.ts.map +1 -1
- package/dist/managers/MXLTraceManager/MXLExtendedSpan.cjs.map +1 -1
- package/dist/managers/MXLTraceManager/MXLExtendedSpan.js.map +1 -1
- package/dist/managers/MXLUserManager/MXLUserManager.cjs +14 -14
- package/dist/managers/MXLUserManager/MXLUserManager.cjs.map +1 -1
- package/dist/managers/MXLUserManager/MXLUserManager.js +14 -14
- package/dist/managers/MXLUserManager/MXLUserManager.js.map +1 -1
- package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.cjs +574 -0
- package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.cjs.map +1 -0
- package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.d.cts +142 -0
- package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.d.cts.map +1 -0
- package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.d.ts +142 -0
- package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.d.ts.map +1 -0
- package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.js +572 -0
- package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.js.map +1 -0
- package/dist/managers/MXLUserSessionManager/constants.cjs +55 -0
- package/dist/managers/MXLUserSessionManager/constants.cjs.map +1 -0
- package/dist/managers/MXLUserSessionManager/constants.d.cts +31 -0
- package/dist/managers/MXLUserSessionManager/constants.d.cts.map +1 -0
- package/dist/managers/MXLUserSessionManager/constants.d.ts +31 -0
- package/dist/managers/MXLUserSessionManager/constants.d.ts.map +1 -0
- package/dist/managers/MXLUserSessionManager/constants.js +37 -0
- package/dist/managers/MXLUserSessionManager/constants.js.map +1 -0
- package/dist/managers/MXLUserSessionManager/index.cjs +6 -0
- package/dist/managers/MXLUserSessionManager/index.d.cts +4 -0
- package/dist/managers/MXLUserSessionManager/index.d.ts +4 -0
- package/dist/managers/MXLUserSessionManager/index.js +3 -0
- package/dist/managers/MXLUserSessionManager/types.d.cts +84 -0
- package/dist/managers/MXLUserSessionManager/types.d.cts.map +1 -0
- package/dist/managers/MXLUserSessionManager/types.d.ts +84 -0
- package/dist/managers/MXLUserSessionManager/types.d.ts.map +1 -0
- package/dist/managers/MXLUserSessionManager/utils/activity.cjs +25 -0
- package/dist/managers/MXLUserSessionManager/utils/activity.cjs.map +1 -0
- package/dist/managers/MXLUserSessionManager/utils/activity.d.cts +40 -0
- package/dist/managers/MXLUserSessionManager/utils/activity.d.cts.map +1 -0
- package/dist/managers/MXLUserSessionManager/utils/activity.d.ts +40 -0
- package/dist/managers/MXLUserSessionManager/utils/activity.d.ts.map +1 -0
- package/dist/managers/MXLUserSessionManager/utils/activity.js +22 -0
- package/dist/managers/MXLUserSessionManager/utils/activity.js.map +1 -0
- package/dist/managers/MXLUserSessionManager/utils/index.cjs +11 -0
- package/dist/managers/MXLUserSessionManager/utils/index.d.cts +3 -0
- package/dist/managers/MXLUserSessionManager/utils/index.d.ts +3 -0
- package/dist/managers/MXLUserSessionManager/utils/index.js +3 -0
- package/dist/managers/MXLUserSessionManager/utils/state.cjs +78 -0
- package/dist/managers/MXLUserSessionManager/utils/state.cjs.map +1 -0
- package/dist/managers/MXLUserSessionManager/utils/state.d.cts +39 -0
- package/dist/managers/MXLUserSessionManager/utils/state.d.cts.map +1 -0
- package/dist/managers/MXLUserSessionManager/utils/state.d.ts +39 -0
- package/dist/managers/MXLUserSessionManager/utils/state.d.ts.map +1 -0
- package/dist/managers/MXLUserSessionManager/utils/state.js +73 -0
- package/dist/managers/MXLUserSessionManager/utils/state.js.map +1 -0
- package/dist/managers/MXLUserSessionManager/utils/tabTracking.cjs +132 -0
- package/dist/managers/MXLUserSessionManager/utils/tabTracking.cjs.map +1 -0
- package/dist/managers/MXLUserSessionManager/utils/tabTracking.d.cts +33 -0
- package/dist/managers/MXLUserSessionManager/utils/tabTracking.d.cts.map +1 -0
- package/dist/managers/MXLUserSessionManager/utils/tabTracking.d.ts +33 -0
- package/dist/managers/MXLUserSessionManager/utils/tabTracking.d.ts.map +1 -0
- package/dist/managers/MXLUserSessionManager/utils/tabTracking.js +127 -0
- package/dist/managers/MXLUserSessionManager/utils/tabTracking.js.map +1 -0
- package/dist/managers/index.cjs +5 -2
- package/dist/managers/index.d.cts +4 -3
- package/dist/managers/index.d.ts +4 -3
- package/dist/managers/index.js +3 -2
- package/dist/mxl-web-sdk.js +1 -58
- package/dist/mxl-web-sdk.js.map +1 -1
- package/dist/processors/BrowserLogRecordProcessor/BrowserLogRecordProcessor.cjs.map +1 -1
- package/dist/processors/BrowserLogRecordProcessor/BrowserLogRecordProcessor.js.map +1 -1
- package/dist/processors/BrowserSpanProcessor/BrowserSpanProcessor.cjs.map +1 -1
- package/dist/processors/BrowserSpanProcessor/BrowserSpanProcessor.js.map +1 -1
- package/dist/processors/LogRecordScrubProcessor/LogRecordScrubProcessor.cjs.map +1 -1
- package/dist/processors/LogRecordScrubProcessor/LogRecordScrubProcessor.js.map +1 -1
- package/dist/processors/LogRecordScrubProcessor/types.d.cts +2 -2
- package/dist/processors/LogRecordScrubProcessor/types.d.cts.map +1 -1
- package/dist/processors/LogRecordScrubProcessor/types.d.ts +2 -2
- package/dist/processors/LogRecordScrubProcessor/types.d.ts.map +1 -1
- package/dist/processors/MXLLogRecordProcessor/MXLLogRecordProcessor.cjs.map +1 -1
- package/dist/processors/MXLLogRecordProcessor/MXLLogRecordProcessor.js.map +1 -1
- package/dist/processors/MXLLogRecordProcessor/types.d.cts +2 -2
- package/dist/processors/MXLLogRecordProcessor/types.d.cts.map +1 -1
- package/dist/processors/MXLLogRecordProcessor/types.d.ts +2 -2
- package/dist/processors/MXLLogRecordProcessor/types.d.ts.map +1 -1
- package/dist/processors/MXLNetworkSpanProcessor/MXLNetworkSpanProcessor.cjs.map +1 -1
- package/dist/processors/MXLNetworkSpanProcessor/MXLNetworkSpanProcessor.js.map +1 -1
- package/dist/processors/MXLNetworkSpanProcessor/types.cjs.map +1 -1
- package/dist/processors/MXLNetworkSpanProcessor/types.js.map +1 -1
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.cjs +74 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.cjs.map +1 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.d.cts +28 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.d.cts.map +1 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.d.ts +28 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.d.ts.map +1 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.js +72 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.js.map +1 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/index.cjs +3 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/index.d.cts +3 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/index.d.ts +3 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/index.js +2 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/types.d.cts +15 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/types.d.cts.map +1 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/types.d.ts +15 -0
- package/dist/processors/MXLSessionPartBatchedSpanProcessor/types.d.ts.map +1 -0
- package/dist/processors/PageLogRecordProcessor/PageLogRecordProcessor.cjs.map +1 -1
- package/dist/processors/PageLogRecordProcessor/PageLogRecordProcessor.js.map +1 -1
- package/dist/processors/PageSpanProcessor/PageSpanProcessor.cjs.map +1 -1
- package/dist/processors/PageSpanProcessor/PageSpanProcessor.js.map +1 -1
- package/dist/processors/SpanScrubProcessor/SpanScrubProcessor.cjs.map +1 -1
- package/dist/processors/SpanScrubProcessor/SpanScrubProcessor.js.map +1 -1
- package/dist/processors/UserLogRecordProcessor/UserLogRecordProcessor.cjs.map +1 -1
- package/dist/processors/UserLogRecordProcessor/UserLogRecordProcessor.js.map +1 -1
- package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.cjs +34 -0
- package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.cjs.map +1 -0
- package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.d.cts +16 -0
- package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.d.cts.map +1 -0
- package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.d.ts +16 -0
- package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.d.ts.map +1 -0
- package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.js +32 -0
- package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.js.map +1 -0
- package/dist/processors/UserSessionLogRecordProcessor/index.cjs +3 -0
- package/dist/processors/UserSessionLogRecordProcessor/index.d.cts +3 -0
- package/dist/processors/UserSessionLogRecordProcessor/index.d.ts +3 -0
- package/dist/processors/UserSessionLogRecordProcessor/index.js +2 -0
- package/dist/processors/UserSessionLogRecordProcessor/types.d.cts +8 -0
- package/dist/processors/UserSessionLogRecordProcessor/types.d.cts.map +1 -0
- package/dist/processors/UserSessionLogRecordProcessor/types.d.ts +8 -0
- package/dist/processors/UserSessionLogRecordProcessor/types.d.ts.map +1 -0
- package/dist/processors/UserSpanProcessor/UserSpanProcessor.cjs.map +1 -1
- package/dist/processors/UserSpanProcessor/UserSpanProcessor.js.map +1 -1
- package/dist/processors/index.cjs +4 -4
- package/dist/processors/index.d.cts +3 -3
- package/dist/processors/index.d.ts +3 -3
- package/dist/processors/index.js +3 -3
- package/dist/propagators/MXLW3CTraceContextPropagator/MXLW3CTraceContextPropagator.cjs.map +1 -1
- package/dist/propagators/MXLW3CTraceContextPropagator/MXLW3CTraceContextPropagator.js.map +1 -1
- package/dist/resources/appInstanceId.cjs +4 -4
- package/dist/resources/appInstanceId.cjs.map +1 -1
- package/dist/resources/appInstanceId.js +4 -4
- package/dist/resources/appInstanceId.js.map +1 -1
- package/dist/resources/constants/index.cjs +1 -1
- package/dist/resources/constants/index.cjs.map +1 -1
- package/dist/resources/constants/index.d.cts +1 -1
- package/dist/resources/constants/index.d.ts +1 -1
- package/dist/resources/constants/index.js +1 -1
- package/dist/resources/constants/index.js.map +1 -1
- package/dist/resources/webSdkResource.cjs +15 -19
- package/dist/resources/webSdkResource.cjs.map +1 -1
- package/dist/resources/webSdkResource.d.cts.map +1 -1
- package/dist/resources/webSdkResource.d.ts.map +1 -1
- package/dist/resources/webSdkResource.js +15 -19
- package/dist/resources/webSdkResource.js.map +1 -1
- package/dist/sdk/defaultAttributeScrubbers.cjs +8 -8
- package/dist/sdk/defaultAttributeScrubbers.cjs.map +1 -1
- package/dist/sdk/defaultAttributeScrubbers.js +8 -8
- package/dist/sdk/defaultAttributeScrubbers.js.map +1 -1
- package/dist/sdk/index.d.cts +3 -2
- package/dist/sdk/index.d.ts +3 -2
- package/dist/sdk/initSDK.cjs +139 -98
- package/dist/sdk/initSDK.cjs.map +1 -1
- package/dist/sdk/initSDK.d.cts +4 -2
- package/dist/sdk/initSDK.d.cts.map +1 -1
- package/dist/sdk/initSDK.d.ts +4 -2
- package/dist/sdk/initSDK.d.ts.map +1 -1
- package/dist/sdk/initSDK.js +139 -98
- package/dist/sdk/initSDK.js.map +1 -1
- package/dist/sdk/noopSessionRecording.cjs +10 -0
- package/dist/sdk/noopSessionRecording.cjs.map +1 -0
- package/dist/sdk/noopSessionRecording.d.cts +7 -0
- package/dist/sdk/noopSessionRecording.d.cts.map +1 -0
- package/dist/sdk/noopSessionRecording.d.ts +7 -0
- package/dist/sdk/noopSessionRecording.d.ts.map +1 -0
- package/dist/sdk/noopSessionRecording.js +9 -0
- package/dist/sdk/noopSessionRecording.js.map +1 -0
- package/dist/sdk/registry.cjs +1 -3
- package/dist/sdk/registry.cjs.map +1 -1
- package/dist/sdk/registry.d.cts.map +1 -1
- package/dist/sdk/registry.d.ts.map +1 -1
- package/dist/sdk/registry.js +1 -3
- package/dist/sdk/registry.js.map +1 -1
- package/dist/sdk/setupDefaultInstrumentations.cjs +9 -5
- package/dist/sdk/setupDefaultInstrumentations.cjs.map +1 -1
- package/dist/sdk/setupDefaultInstrumentations.d.cts +5 -2
- package/dist/sdk/setupDefaultInstrumentations.d.cts.map +1 -1
- package/dist/sdk/setupDefaultInstrumentations.d.ts +5 -2
- package/dist/sdk/setupDefaultInstrumentations.d.ts.map +1 -1
- package/dist/sdk/setupDefaultInstrumentations.js +9 -5
- package/dist/sdk/setupDefaultInstrumentations.js.map +1 -1
- package/dist/sdk/types.d.cts +68 -56
- package/dist/sdk/types.d.cts.map +1 -1
- package/dist/sdk/types.d.ts +69 -57
- package/dist/sdk/types.d.ts.map +1 -1
- package/dist/sdk/utils.cjs +1 -1
- package/dist/sdk/utils.cjs.map +1 -1
- package/dist/sdk/utils.d.cts.map +1 -1
- package/dist/sdk/utils.d.ts.map +1 -1
- package/dist/sdk/utils.js +1 -1
- package/dist/sdk/utils.js.map +1 -1
- package/dist/transport/FetchTransport/FetchTransport.cjs +13 -13
- package/dist/transport/FetchTransport/FetchTransport.cjs.map +1 -1
- package/dist/transport/FetchTransport/FetchTransport.js +13 -13
- package/dist/transport/FetchTransport/FetchTransport.js.map +1 -1
- package/dist/transport/RetryingTransport/RetryingTransport.cjs +1 -1
- package/dist/transport/RetryingTransport/RetryingTransport.cjs.map +1 -1
- package/dist/transport/RetryingTransport/RetryingTransport.js +1 -1
- package/dist/transport/RetryingTransport/RetryingTransport.js.map +1 -1
- package/dist/utils/NamespacedStorage/NamespacedStorage.cjs +69 -24
- package/dist/utils/NamespacedStorage/NamespacedStorage.cjs.map +1 -1
- package/dist/utils/NamespacedStorage/NamespacedStorage.d.cts +27 -13
- package/dist/utils/NamespacedStorage/NamespacedStorage.d.cts.map +1 -1
- package/dist/utils/NamespacedStorage/NamespacedStorage.d.ts +27 -13
- package/dist/utils/NamespacedStorage/NamespacedStorage.d.ts.map +1 -1
- package/dist/utils/NamespacedStorage/NamespacedStorage.js +68 -24
- package/dist/utils/NamespacedStorage/NamespacedStorage.js.map +1 -1
- package/dist/utils/PerformanceManager/OTelPerformanceManager.cjs.map +1 -1
- package/dist/utils/PerformanceManager/OTelPerformanceManager.js.map +1 -1
- package/dist/utils/clampNumber.cjs +23 -0
- package/dist/utils/clampNumber.cjs.map +1 -0
- package/dist/utils/clampNumber.d.cts +24 -0
- package/dist/utils/clampNumber.d.cts.map +1 -0
- package/dist/utils/clampNumber.d.ts +24 -0
- package/dist/utils/clampNumber.d.ts.map +1 -0
- package/dist/utils/clampNumber.js +22 -0
- package/dist/utils/clampNumber.js.map +1 -0
- package/dist/utils/createSafeProxy/createSafeProxy.cjs +2 -2
- package/dist/utils/createSafeProxy/createSafeProxy.cjs.map +1 -1
- package/dist/utils/createSafeProxy/createSafeProxy.d.cts.map +1 -1
- package/dist/utils/createSafeProxy/createSafeProxy.d.ts.map +1 -1
- package/dist/utils/createSafeProxy/createSafeProxy.js +2 -2
- package/dist/utils/createSafeProxy/createSafeProxy.js.map +1 -1
- package/dist/utils/generateWebVitalID.cjs +1 -3
- package/dist/utils/generateWebVitalID.cjs.map +1 -1
- package/dist/utils/generateWebVitalID.js +1 -3
- package/dist/utils/generateWebVitalID.js.map +1 -1
- package/dist/utils/getIncrementedCount.cjs +2 -2
- package/dist/utils/getIncrementedCount.cjs.map +1 -1
- package/dist/utils/getIncrementedCount.js +2 -2
- package/dist/utils/getIncrementedCount.js.map +1 -1
- package/dist/utils/globalConfig.cjs.map +1 -1
- package/dist/utils/globalConfig.d.cts +2 -2
- package/dist/utils/globalConfig.d.cts.map +1 -1
- package/dist/utils/globalConfig.d.ts +2 -2
- package/dist/utils/globalConfig.d.ts.map +1 -1
- package/dist/utils/globalConfig.js.map +1 -1
- package/dist/utils/index.cjs +2 -2
- package/dist/utils/index.d.cts +3 -3
- package/dist/utils/index.d.ts +3 -3
- package/dist/utils/index.js +2 -2
- package/dist/utils/isDeviceIdEnabled.cjs.map +1 -1
- package/dist/utils/isDeviceIdEnabled.js.map +1 -1
- package/dist/utils/performanceObserver/performanceObserver.cjs +3 -3
- package/dist/utils/performanceObserver/performanceObserver.cjs.map +1 -1
- package/dist/utils/performanceObserver/performanceObserver.js +3 -3
- package/dist/utils/performanceObserver/performanceObserver.js.map +1 -1
- package/dist/utils/throttle.cjs +13 -9
- package/dist/utils/throttle.cjs.map +1 -1
- package/dist/utils/throttle.d.cts +6 -3
- package/dist/utils/throttle.d.cts.map +1 -1
- package/dist/utils/throttle.d.ts +6 -3
- package/dist/utils/throttle.d.ts.map +1 -1
- package/dist/utils/throttle.js +13 -9
- package/dist/utils/throttle.js.map +1 -1
- package/package.json +56 -56
- package/dist/api-sessions/api/SessionAPI/types.d.cts +0 -8
- package/dist/api-sessions/api/SessionAPI/types.d.cts.map +0 -1
- package/dist/api-sessions/api/SessionAPI/types.d.ts +0 -8
- package/dist/api-sessions/api/SessionAPI/types.d.ts.map +0 -1
- package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.cjs +0 -31
- package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.cjs.map +0 -1
- package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.d.cts +0 -24
- package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.d.cts.map +0 -1
- package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.d.ts +0 -24
- package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.d.ts.map +0 -1
- package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.js +0 -30
- package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.js.map +0 -1
- package/dist/api-sessions/manager/NoOpSpanSessionManager/index.cjs +0 -3
- package/dist/api-sessions/manager/NoOpSpanSessionManager/index.d.cts +0 -2
- package/dist/api-sessions/manager/NoOpSpanSessionManager/index.d.ts +0 -2
- package/dist/api-sessions/manager/NoOpSpanSessionManager/index.js +0 -2
- package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.cjs +0 -55
- package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.cjs.map +0 -1
- package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.d.cts +0 -27
- package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.d.cts.map +0 -1
- package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.d.ts +0 -27
- package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.d.ts.map +0 -1
- package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.js +0 -55
- package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.js.map +0 -1
- package/dist/api-sessions/manager/ProxySpanSessionManager/index.cjs +0 -3
- package/dist/api-sessions/manager/ProxySpanSessionManager/index.d.cts +0 -2
- package/dist/api-sessions/manager/ProxySpanSessionManager/index.d.ts +0 -2
- package/dist/api-sessions/manager/ProxySpanSessionManager/index.js +0 -2
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.cjs +0 -27
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.cjs.map +0 -1
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.d.cts +0 -15
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.d.cts.map +0 -1
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.d.ts +0 -15
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.d.ts.map +0 -1
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.js +0 -25
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.js.map +0 -1
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/index.cjs +0 -3
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/index.d.cts +0 -2
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/index.d.ts +0 -2
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/index.js +0 -2
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/types.d.cts +0 -9
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/types.d.cts.map +0 -1
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/types.d.ts +0 -9
- package/dist/instrumentations/fetch/MXLFetchInstrumentation/types.d.ts.map +0 -1
- package/dist/instrumentations/fetch/index.cjs +0 -3
- package/dist/instrumentations/fetch/index.d.cts +0 -3
- package/dist/instrumentations/fetch/index.d.ts +0 -3
- package/dist/instrumentations/fetch/index.js +0 -2
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.cjs +0 -60
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.cjs.map +0 -1
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.d.cts +0 -24
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.d.cts.map +0 -1
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.d.ts +0 -24
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.d.ts.map +0 -1
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.js +0 -59
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.js.map +0 -1
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.cjs +0 -19
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.cjs.map +0 -1
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.d.cts +0 -10
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.d.cts.map +0 -1
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.d.ts +0 -10
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.d.ts.map +0 -1
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.js +0 -16
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.js.map +0 -1
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/index.cjs +0 -3
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/index.d.cts +0 -3
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/index.d.ts +0 -3
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/index.js +0 -2
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/types.d.cts +0 -6
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/types.d.cts.map +0 -1
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/types.d.ts +0 -6
- package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/types.d.ts.map +0 -1
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.cjs +0 -24
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.cjs.map +0 -1
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.d.cts +0 -14
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.d.cts.map +0 -1
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.d.ts +0 -14
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.d.ts.map +0 -1
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.js +0 -23
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.js.map +0 -1
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/index.cjs +0 -3
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/index.d.cts +0 -3
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/index.d.ts +0 -3
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/index.js +0 -2
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/types.d.cts +0 -6
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/types.d.cts.map +0 -1
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/types.d.ts +0 -6
- package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/types.d.ts.map +0 -1
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.cjs +0 -55
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.cjs.map +0 -1
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.d.cts +0 -22
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.d.cts.map +0 -1
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.d.ts +0 -22
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.d.ts.map +0 -1
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.js +0 -54
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.js.map +0 -1
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.cjs +0 -7
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.cjs.map +0 -1
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.d.cts +0 -5
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.d.cts.map +0 -1
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.d.ts +0 -5
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.d.ts.map +0 -1
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.js +0 -6
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.js.map +0 -1
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/index.cjs +0 -3
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/index.d.cts +0 -3
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/index.d.ts +0 -3
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/index.js +0 -2
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.cjs +0 -0
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.d.cts +0 -6
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.d.cts.map +0 -1
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.d.ts +0 -6
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.d.ts.map +0 -1
- package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.js +0 -0
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.cjs +0 -38
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.cjs.map +0 -1
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.d.cts +0 -17
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.d.cts.map +0 -1
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.d.ts +0 -17
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.d.ts.map +0 -1
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.js +0 -37
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.js.map +0 -1
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/index.cjs +0 -3
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/index.d.cts +0 -3
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/index.d.ts +0 -3
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/index.js +0 -2
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.cjs +0 -0
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.d.cts +0 -10
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.d.cts.map +0 -1
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.d.ts +0 -10
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.d.ts.map +0 -1
- package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.js +0 -0
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.cjs +0 -27
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.cjs.map +0 -1
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.d.cts +0 -15
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.d.cts.map +0 -1
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.d.ts +0 -15
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.d.ts.map +0 -1
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.js +0 -25
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.js.map +0 -1
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/index.cjs +0 -3
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/index.d.cts +0 -2
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/index.d.ts +0 -2
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/index.js +0 -2
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.cjs +0 -0
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.d.cts +0 -9
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.d.cts.map +0 -1
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.d.ts +0 -9
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.d.ts.map +0 -1
- package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.js +0 -0
- package/dist/instrumentations/xhr/index.cjs +0 -3
- package/dist/instrumentations/xhr/index.d.cts +0 -3
- package/dist/instrumentations/xhr/index.d.ts +0 -3
- package/dist/instrumentations/xhr/index.js +0 -2
- package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.cjs +0 -350
- package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.cjs.map +0 -1
- package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.d.cts +0 -72
- package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.d.cts.map +0 -1
- package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.d.ts +0 -72
- package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.d.ts.map +0 -1
- package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.js +0 -348
- package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.js.map +0 -1
- package/dist/managers/MXLSpanSessionManager/constants.cjs +0 -11
- package/dist/managers/MXLSpanSessionManager/constants.cjs.map +0 -1
- package/dist/managers/MXLSpanSessionManager/constants.d.cts +0 -7
- package/dist/managers/MXLSpanSessionManager/constants.d.cts.map +0 -1
- package/dist/managers/MXLSpanSessionManager/constants.d.ts +0 -7
- package/dist/managers/MXLSpanSessionManager/constants.d.ts.map +0 -1
- package/dist/managers/MXLSpanSessionManager/constants.js +0 -8
- package/dist/managers/MXLSpanSessionManager/constants.js.map +0 -1
- package/dist/managers/MXLSpanSessionManager/index.cjs +0 -3
- package/dist/managers/MXLSpanSessionManager/index.d.cts +0 -3
- package/dist/managers/MXLSpanSessionManager/index.d.ts +0 -3
- package/dist/managers/MXLSpanSessionManager/index.js +0 -2
- package/dist/managers/MXLSpanSessionManager/types.cjs +0 -0
- package/dist/managers/MXLSpanSessionManager/types.d.cts +0 -41
- package/dist/managers/MXLSpanSessionManager/types.d.cts.map +0 -1
- package/dist/managers/MXLSpanSessionManager/types.d.ts +0 -41
- package/dist/managers/MXLSpanSessionManager/types.d.ts.map +0 -1
- package/dist/managers/MXLSpanSessionManager/types.js +0 -0
- package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.cjs +0 -28
- package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.cjs.map +0 -1
- package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.d.cts +0 -16
- package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.d.cts.map +0 -1
- package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.d.ts +0 -16
- package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.d.ts.map +0 -1
- package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.js +0 -26
- package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.js.map +0 -1
- package/dist/processors/IdentifiableSessionLogRecordProcessor/index.cjs +0 -3
- package/dist/processors/IdentifiableSessionLogRecordProcessor/index.d.cts +0 -2
- package/dist/processors/IdentifiableSessionLogRecordProcessor/index.d.ts +0 -2
- package/dist/processors/IdentifiableSessionLogRecordProcessor/index.js +0 -2
- package/dist/processors/IdentifiableSessionLogRecordProcessor/types.cjs +0 -0
- package/dist/processors/IdentifiableSessionLogRecordProcessor/types.d.cts +0 -9
- package/dist/processors/IdentifiableSessionLogRecordProcessor/types.d.cts.map +0 -1
- package/dist/processors/IdentifiableSessionLogRecordProcessor/types.d.ts +0 -9
- package/dist/processors/IdentifiableSessionLogRecordProcessor/types.d.ts.map +0 -1
- package/dist/processors/IdentifiableSessionLogRecordProcessor/types.js +0 -0
- package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.cjs +0 -95
- package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.cjs.map +0 -1
- package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.d.cts +0 -34
- package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.d.cts.map +0 -1
- package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.d.ts +0 -34
- package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.d.ts.map +0 -1
- package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.js +0 -93
- package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.js.map +0 -1
- package/dist/processors/MXLSessionBatchedSpanProcessor/index.cjs +0 -3
- package/dist/processors/MXLSessionBatchedSpanProcessor/index.d.cts +0 -2
- package/dist/processors/MXLSessionBatchedSpanProcessor/index.d.ts +0 -2
- package/dist/processors/MXLSessionBatchedSpanProcessor/index.js +0 -2
- package/dist/processors/MXLSessionBatchedSpanProcessor/types.cjs +0 -0
- package/dist/processors/MXLSessionBatchedSpanProcessor/types.d.cts +0 -19
- package/dist/processors/MXLSessionBatchedSpanProcessor/types.d.cts.map +0 -1
- package/dist/processors/MXLSessionBatchedSpanProcessor/types.d.ts +0 -19
- package/dist/processors/MXLSessionBatchedSpanProcessor/types.d.ts.map +0 -1
- package/dist/processors/MXLSessionBatchedSpanProcessor/types.js +0 -0
- package/dist/sdk/setupSessionRecorder.cjs +0 -45
- package/dist/sdk/setupSessionRecorder.cjs.map +0 -1
- package/dist/sdk/setupSessionRecorder.d.cts +0 -21
- package/dist/sdk/setupSessionRecorder.d.cts.map +0 -1
- package/dist/sdk/setupSessionRecorder.d.ts +0 -21
- package/dist/sdk/setupSessionRecorder.d.ts.map +0 -1
- package/dist/sdk/setupSessionRecorder.js +0 -42
- package/dist/sdk/setupSessionRecorder.js.map +0 -1
- package/dist/utils/MXLSpanStorage/MXLSpanStorage.cjs +0 -116
- package/dist/utils/MXLSpanStorage/MXLSpanStorage.cjs.map +0 -1
- package/dist/utils/MXLSpanStorage/MXLSpanStorage.d.cts +0 -42
- package/dist/utils/MXLSpanStorage/MXLSpanStorage.d.cts.map +0 -1
- package/dist/utils/MXLSpanStorage/MXLSpanStorage.d.ts +0 -42
- package/dist/utils/MXLSpanStorage/MXLSpanStorage.d.ts.map +0 -1
- package/dist/utils/MXLSpanStorage/MXLSpanStorage.js +0 -114
- package/dist/utils/MXLSpanStorage/MXLSpanStorage.js.map +0 -1
- package/dist/utils/MXLSpanStorage/index.cjs +0 -3
- package/dist/utils/MXLSpanStorage/index.d.cts +0 -2
- package/dist/utils/MXLSpanStorage/index.d.ts +0 -2
- package/dist/utils/MXLSpanStorage/index.js +0 -2
- package/dist/utils/MXLSpanStorage/types.cjs +0 -0
- package/dist/utils/MXLSpanStorage/types.d.cts +0 -2
- package/dist/utils/MXLSpanStorage/types.d.ts +0 -2
- package/dist/utils/MXLSpanStorage/types.js +0 -0
- /package/dist/{api-sessions/api/SessionAPI → instrumentations/replay/ReplayInstrumentation}/types.cjs +0 -0
- /package/dist/{api-sessions/api/SessionAPI → instrumentations/replay/ReplayInstrumentation}/types.js +0 -0
- /package/dist/{instrumentations/fetch/MXLFetchInstrumentation → managers/MXLUserSessionManager}/types.cjs +0 -0
- /package/dist/{instrumentations/fetch/MXLFetchInstrumentation → managers/MXLUserSessionManager}/types.js +0 -0
- /package/dist/{instrumentations/session/SpanSessionBrowserActivityInstrumentation → processors/MXLSessionPartBatchedSpanProcessor}/types.cjs +0 -0
- /package/dist/{instrumentations/session/SpanSessionBrowserActivityInstrumentation → processors/MXLSessionPartBatchedSpanProcessor}/types.js +0 -0
- /package/dist/{instrumentations/session/SpanSessionOnLoadInstrumentation → processors/UserSessionLogRecordProcessor}/types.cjs +0 -0
- /package/dist/{instrumentations/session/SpanSessionOnLoadInstrumentation → processors/UserSessionLogRecordProcessor}/types.js +0 -0
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { getMXLHeaders } from "../exporters/utils.js";
|
|
2
|
-
import { getLogEndpoint } from "../exporters/MXLLogExporter/utils.js";
|
|
3
|
-
import { SessionRecorder, VERSION } from "@safaricom-mxl/session-recorder";
|
|
4
|
-
//#region src/sdk/setupSessionRecorder.ts
|
|
5
|
-
const noopSessionRecording = {
|
|
6
|
-
isRecording: () => false,
|
|
7
|
-
setEnabled: () => {}
|
|
8
|
-
};
|
|
9
|
-
function buildInitConfig({ resource, spanSessionManager, tracerProvider, appID, userID, mxlDataURL, sessionRecorder: userOptions }) {
|
|
10
|
-
return {
|
|
11
|
-
resource,
|
|
12
|
-
getSessionId: () => spanSessionManager.getSessionId(),
|
|
13
|
-
tracer: tracerProvider.getTracer("mxl.session-recorder", VERSION),
|
|
14
|
-
url: getLogEndpoint(appID, mxlDataURL),
|
|
15
|
-
headers: getMXLHeaders(appID, userID),
|
|
16
|
-
...userOptions
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
function createSessionRecordingControl(args) {
|
|
20
|
-
const initConfig = () => buildInitConfig(args);
|
|
21
|
-
if (args.recordUserSessions) {
|
|
22
|
-
SessionRecorder.init(initConfig());
|
|
23
|
-
return {
|
|
24
|
-
isRecording: () => SessionRecorder.isRecording(),
|
|
25
|
-
setEnabled: (enabled) => {
|
|
26
|
-
SessionRecorder.setEnabled(enabled);
|
|
27
|
-
}
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
return {
|
|
31
|
-
isRecording: () => SessionRecorder.isRecording(),
|
|
32
|
-
setEnabled: (enabled) => {
|
|
33
|
-
if (enabled) if (!SessionRecorder.inited) SessionRecorder.init(initConfig());
|
|
34
|
-
else SessionRecorder.resume();
|
|
35
|
-
else if (SessionRecorder.inited) SessionRecorder.stop();
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
//#endregion
|
|
40
|
-
export { createSessionRecordingControl, noopSessionRecording };
|
|
41
|
-
|
|
42
|
-
//# sourceMappingURL=setupSessionRecorder.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setupSessionRecorder.js","names":["SESSION_RECORDER_VERSION"],"sources":["../../src/sdk/setupSessionRecorder.ts"],"sourcesContent":["import type { Resource } from '@opentelemetry/resources';\nimport type { WebTracerProvider } from '@opentelemetry/sdk-trace-web';\nimport type { SessionRecorderConfig } from '@safaricom-mxl/session-recorder';\nimport {\n VERSION as SESSION_RECORDER_VERSION,\n SessionRecorder,\n} from '@safaricom-mxl/session-recorder';\nimport { getLogEndpoint } from '../exporters/MXLLogExporter/utils';\nimport { getMXLHeaders } from '../exporters';\nimport type {\n SessionRecorderUserConfig,\n SessionRecordingControl,\n} from './types';\n\nexport const noopSessionRecording: SessionRecordingControl = {\n isRecording: () => false,\n setEnabled: () => {\n // Session recording is only available when using MXL (appID + user ID).\n },\n};\n\nfunction buildInitConfig({\n resource,\n spanSessionManager,\n tracerProvider,\n appID,\n userID,\n mxlDataURL,\n sessionRecorder: userOptions,\n}: {\n resource: Resource;\n spanSessionManager: { getSessionId: () => string | null };\n tracerProvider: WebTracerProvider;\n appID: string;\n userID: string;\n mxlDataURL?: string;\n sessionRecorder?: SessionRecorderUserConfig;\n}): SessionRecorderConfig {\n const tracer = tracerProvider.getTracer(\n 'mxl.session-recorder',\n SESSION_RECORDER_VERSION,\n );\n return {\n resource,\n getSessionId: () => spanSessionManager.getSessionId(),\n tracer,\n url: getLogEndpoint(appID, mxlDataURL),\n headers: getMXLHeaders(appID, userID),\n ...userOptions,\n } as SessionRecorderConfig;\n}\n\nexport function createSessionRecordingControl(args: {\n resource: Resource;\n spanSessionManager: { getSessionId: () => string | null };\n tracerProvider: WebTracerProvider;\n appID: string;\n userID: string;\n mxlDataURL?: string;\n recordUserSessions: boolean;\n sessionRecorder?: SessionRecorderUserConfig;\n}): SessionRecordingControl {\n const initConfig = () => buildInitConfig(args);\n\n if (args.recordUserSessions) {\n SessionRecorder.init(initConfig());\n return {\n isRecording: () => SessionRecorder.isRecording(),\n setEnabled: (enabled: boolean) => {\n SessionRecorder.setEnabled(enabled);\n },\n };\n }\n\n // Defer rrweb + OTLP until the app calls setEnabled(true) (lazy start).\n return {\n isRecording: () => SessionRecorder.isRecording(),\n setEnabled: (enabled: boolean) => {\n if (enabled) {\n if (!SessionRecorder.inited) {\n SessionRecorder.init(initConfig());\n } else {\n SessionRecorder.resume();\n }\n } else if (SessionRecorder.inited) {\n SessionRecorder.stop();\n }\n },\n };\n}\n"],"mappings":";;;;AAcA,MAAa,uBAAgD;CAC3D,mBAAmB;CACnB,kBAAkB;CAGnB;AAED,SAAS,gBAAgB,EACvB,UACA,oBACA,gBACA,OACA,QACA,YACA,iBAAiB,eASO;AAKxB,QAAO;EACL;EACA,oBAAoB,mBAAmB,cAAc;EACrD,QAPa,eAAe,UAC5B,wBACAA,QAKM;EACN,KAAK,eAAe,OAAO,WAAW;EACtC,SAAS,cAAc,OAAO,OAAO;EACrC,GAAG;EACJ;;AAGH,SAAgB,8BAA8B,MASlB;CAC1B,MAAM,mBAAmB,gBAAgB,KAAK;AAE9C,KAAI,KAAK,oBAAoB;AAC3B,kBAAgB,KAAK,YAAY,CAAC;AAClC,SAAO;GACL,mBAAmB,gBAAgB,aAAa;GAChD,aAAa,YAAqB;AAChC,oBAAgB,WAAW,QAAQ;;GAEtC;;AAIH,QAAO;EACL,mBAAmB,gBAAgB,aAAa;EAChD,aAAa,YAAqB;AAChC,OAAI,QACF,KAAI,CAAC,gBAAgB,OACnB,iBAAgB,KAAK,YAAY,CAAC;OAElC,iBAAgB,QAAQ;YAEjB,gBAAgB,OACzB,iBAAgB,MAAM;;EAG3B"}
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
require("../../_virtual/_rolldown/runtime.cjs");
|
|
3
|
-
const require_constants_attributes = require("../../constants/attributes.cjs");
|
|
4
|
-
let _opentelemetry_api = require("@opentelemetry/api");
|
|
5
|
-
let _opentelemetry_resources = require("@opentelemetry/resources");
|
|
6
|
-
let _opentelemetry_sdk_trace_web = require("@opentelemetry/sdk-trace-web");
|
|
7
|
-
//#region src/utils/MXLSpanStorage/MXLSpanStorage.ts
|
|
8
|
-
const PENDING_SPANS_STORAGE_KEY_PREFIX = "mxl_pending_";
|
|
9
|
-
const MAX_PENDING_SPANS_ITEMS = 10;
|
|
10
|
-
var MXLSpanStorage = class {
|
|
11
|
-
_noExportTracer;
|
|
12
|
-
_storage;
|
|
13
|
-
_diag;
|
|
14
|
-
_onExpiredSpansExport;
|
|
15
|
-
_storedSpansExpireTimeoutMS;
|
|
16
|
-
_spanSessionManager;
|
|
17
|
-
_checkExpiredSpansInterval;
|
|
18
|
-
constructor({ resource = (0, _opentelemetry_resources.emptyResource)(), storage = window.localStorage, diag: diagParam = _opentelemetry_api.diag.createComponentLogger({ namespace: "MXLSpanStorage" }), storedSpansExpireTimeoutMS = 3600 * 1e3, onExpiredSpansExport, spanSessionManager }) {
|
|
19
|
-
this._noExportTracer = new _opentelemetry_sdk_trace_web.BasicTracerProvider({ resource }).getTracer("mxl-web-sdk-sessions");
|
|
20
|
-
this._storage = storage;
|
|
21
|
-
this._diag = diagParam;
|
|
22
|
-
this._storedSpansExpireTimeoutMS = storedSpansExpireTimeoutMS;
|
|
23
|
-
this._onExpiredSpansExport = onExpiredSpansExport;
|
|
24
|
-
this._spanSessionManager = spanSessionManager;
|
|
25
|
-
this.startExpiredSpansCheck();
|
|
26
|
-
}
|
|
27
|
-
storePendingSpans(sessionId, sessionSpan, pendingSpans) {
|
|
28
|
-
try {
|
|
29
|
-
this.clearStoredSpans(sessionId);
|
|
30
|
-
if (this._getPendingSpansKeys().length >= MAX_PENDING_SPANS_ITEMS) {
|
|
31
|
-
this._spanSessionManager.incrSessionCountForKey(require_constants_attributes.KEY_MXL_MAX_PENDING_SPANS_REACHED);
|
|
32
|
-
this._diag.warn("Not storing pending spans as the max number of items was reached");
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
const key = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_${Date.now()}`;
|
|
36
|
-
this._storage.setItem(key, JSON.stringify([sessionSpan, ...pendingSpans], (key, value) => key.startsWith("_") ? void 0 : value));
|
|
37
|
-
this._diag.debug(`Stored pending span: ${key}`);
|
|
38
|
-
} catch (error) {
|
|
39
|
-
this._diag.error("Failed to store spans to storage:", error);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
clearStoredSpans(sessionId) {
|
|
43
|
-
try {
|
|
44
|
-
const prefix = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_`;
|
|
45
|
-
this._getPendingSpansKeys().forEach((key) => {
|
|
46
|
-
if (key.startsWith(prefix)) this._storage.removeItem(key);
|
|
47
|
-
});
|
|
48
|
-
} catch (error) {
|
|
49
|
-
this._diag.error("Failed to clear stored spans from storage:", error);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
startExpiredSpansCheck() {
|
|
53
|
-
this._checkExpiredSpansInterval = setInterval(() => {
|
|
54
|
-
this.checkAndExportExpiredSpans();
|
|
55
|
-
}, 300 * 1e3);
|
|
56
|
-
}
|
|
57
|
-
stopExpiredSpansCheck() {
|
|
58
|
-
if (this._checkExpiredSpansInterval) {
|
|
59
|
-
clearInterval(this._checkExpiredSpansInterval);
|
|
60
|
-
this._checkExpiredSpansInterval = void 0;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
checkAndExportExpiredSpans() {
|
|
64
|
-
try {
|
|
65
|
-
const keys = this._getPendingSpansKeys();
|
|
66
|
-
if (keys.length === 0) return;
|
|
67
|
-
const currentTime = Date.now();
|
|
68
|
-
keys.forEach((key) => {
|
|
69
|
-
const parts = key.split("_");
|
|
70
|
-
const storedTime = parseInt(parts[parts.length - 1], 10);
|
|
71
|
-
if (Number.isNaN(storedTime)) {
|
|
72
|
-
this._diag.error("Found invalid timestamp in stored span:", storedTime);
|
|
73
|
-
this._storage.removeItem(key);
|
|
74
|
-
}
|
|
75
|
-
if (currentTime - storedTime <= this._storedSpansExpireTimeoutMS) return;
|
|
76
|
-
const storedData = this._storage.getItem(key);
|
|
77
|
-
if (!storedData) return;
|
|
78
|
-
try {
|
|
79
|
-
const spans = [];
|
|
80
|
-
for (const storedSpan of JSON.parse(storedData)) {
|
|
81
|
-
const span = this._noExportTracer.startSpan(storedSpan.name, {
|
|
82
|
-
kind: storedSpan.kind,
|
|
83
|
-
attributes: storedSpan.attributes,
|
|
84
|
-
links: storedSpan.links,
|
|
85
|
-
startTime: storedSpan.startTime
|
|
86
|
-
});
|
|
87
|
-
span.setStatus(storedSpan.status);
|
|
88
|
-
span.end(storedSpan.endTime);
|
|
89
|
-
spans.push(span);
|
|
90
|
-
}
|
|
91
|
-
if (this._onExpiredSpansExport && spans.length > 0) this._onExpiredSpansExport(spans);
|
|
92
|
-
} catch (e) {
|
|
93
|
-
this._diag.error("Failed to process expired spans:", e);
|
|
94
|
-
}
|
|
95
|
-
this._storage.removeItem(key);
|
|
96
|
-
});
|
|
97
|
-
} catch (e) {
|
|
98
|
-
this._diag.error("Failed to check and export expired spans:", e);
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
_getPendingSpansKeys() {
|
|
102
|
-
const keys = [];
|
|
103
|
-
for (let i = 0; i < this._storage.length; i++) {
|
|
104
|
-
const key = this._storage.key(i);
|
|
105
|
-
if (key?.startsWith(PENDING_SPANS_STORAGE_KEY_PREFIX)) keys.push(key);
|
|
106
|
-
}
|
|
107
|
-
return keys;
|
|
108
|
-
}
|
|
109
|
-
destroy() {
|
|
110
|
-
this.stopExpiredSpansCheck();
|
|
111
|
-
}
|
|
112
|
-
};
|
|
113
|
-
//#endregion
|
|
114
|
-
exports.MXLSpanStorage = MXLSpanStorage;
|
|
115
|
-
|
|
116
|
-
//# sourceMappingURL=MXLSpanStorage.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MXLSpanStorage.cjs","names":["diag","BasicTracerProvider","KEY_MXL_MAX_PENDING_SPANS_REACHED"],"sources":["../../../src/utils/MXLSpanStorage/MXLSpanStorage.ts"],"sourcesContent":["import type { DiagLogger, Tracer } from '@opentelemetry/api';\nimport { diag } from '@opentelemetry/api';\nimport type { Resource } from '@opentelemetry/resources';\nimport { emptyResource } from '@opentelemetry/resources';\nimport type { ReadableSpan } from '@opentelemetry/sdk-trace-web';\nimport { BasicTracerProvider } from '@opentelemetry/sdk-trace-web';\nimport { KEY_MXL_MAX_PENDING_SPANS_REACHED } from '../../constants';\nimport type { SpanSessionManagerInternal } from '../../managers';\n\nconst PENDING_SPANS_STORAGE_KEY_PREFIX = 'mxl_pending_';\nconst MAX_PENDING_SPANS_ITEMS = 10;\n\nexport interface SpanStorageOptions {\n spanSessionManager: SpanSessionManagerInternal;\n resource?: Resource;\n storage?: Storage;\n diag?: DiagLogger;\n storedSpansExpireTimeoutMS?: number;\n onExpiredSpansExport?: (spans: ReadableSpan[]) => void;\n}\n\n// MXLSpanStorage is used to keep pending spans that are not meant to be exported (yet) in localStorage,\n// and periodically checks whenever those stored spans are ready to be exported.\n// This functionality has some custom logic to be able to store these spans as JSONs and then recreate them back\n// that could eventually be improved. In particular the things that would need to be improved are:\n// - Avoid serializing as JSON and instead try to use a customExporter that produces the body as it was going to be\n// sent over the wire (serialized, compressed, etc), and store that, so that later when it decides to export those,\n// it's just using that body as a regular fetch call.\n// - Create a service worker that is responsible for tracking the pending spans and deciding when to actually export them.\n// That way we would avoid a potential race condition where two different tabs would try to export the same data.\n// - Make this a more comprehensive component so that the MXLSessionBatchedSpanProcessor doesn't need to be in the\n// middle of SpanSessionVisibilityInstrumentation and this component. Ideally this component would know when and how\n// to take snapshots of the current pending spans and the current session span at any moment, so that the visibility\n// instrumentation doesn't need to be telling that to the batch span processor.\nexport class MXLSpanStorage {\n private readonly _noExportTracer: Tracer;\n private readonly _storage: Storage;\n private readonly _diag: DiagLogger;\n private readonly _onExpiredSpansExport?: (spans: ReadableSpan[]) => void;\n private readonly _storedSpansExpireTimeoutMS: number;\n private readonly _spanSessionManager: SpanSessionManagerInternal;\n private _checkExpiredSpansInterval?: ReturnType<typeof setInterval>;\n\n public constructor({\n resource = emptyResource(),\n storage = window.localStorage,\n diag: diagParam = diag.createComponentLogger({\n namespace: 'MXLSpanStorage',\n }),\n storedSpansExpireTimeoutMS = 60 * 60 * 1000, // 1 hour\n onExpiredSpansExport,\n spanSessionManager,\n }: SpanStorageOptions) {\n this._noExportTracer = new BasicTracerProvider({ resource }).getTracer(\n 'mxl-web-sdk-sessions',\n );\n this._storage = storage;\n this._diag = diagParam;\n this._storedSpansExpireTimeoutMS = storedSpansExpireTimeoutMS;\n this._onExpiredSpansExport = onExpiredSpansExport;\n this._spanSessionManager = spanSessionManager;\n\n this.startExpiredSpansCheck();\n }\n\n public storePendingSpans(\n sessionId: string,\n sessionSpan: ReadableSpan,\n pendingSpans: ReadableSpan[],\n ): void {\n try {\n // If this session was already stored, clear it first:\n this.clearStoredSpans(sessionId);\n\n if (this._getPendingSpansKeys().length >= MAX_PENDING_SPANS_ITEMS) {\n this._spanSessionManager.incrSessionCountForKey(\n KEY_MXL_MAX_PENDING_SPANS_REACHED,\n );\n this._diag.warn(\n 'Not storing pending spans as the max number of items was reached',\n );\n return;\n }\n\n const key = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_${Date.now()}`;\n this._storage.setItem(\n key,\n JSON.stringify([sessionSpan, ...pendingSpans], (key, value) =>\n key.startsWith('_') ? undefined : value,\n ),\n );\n\n this._diag.debug(`Stored pending span: ${key}`);\n } catch (error) {\n this._diag.error('Failed to store spans to storage:', error);\n }\n }\n\n public clearStoredSpans(sessionId: string): void {\n try {\n const prefix = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_`;\n this._getPendingSpansKeys().forEach((key) => {\n if (key.startsWith(prefix)) {\n this._storage.removeItem(key);\n }\n });\n } catch (error) {\n this._diag.error('Failed to clear stored spans from storage:', error);\n }\n }\n\n public startExpiredSpansCheck(): void {\n this._checkExpiredSpansInterval = setInterval(\n () => {\n this.checkAndExportExpiredSpans();\n },\n 5 * 60 * 1000,\n ); // Check every 5 minutes\n }\n\n public stopExpiredSpansCheck(): void {\n if (this._checkExpiredSpansInterval) {\n clearInterval(this._checkExpiredSpansInterval);\n this._checkExpiredSpansInterval = undefined;\n }\n }\n\n public checkAndExportExpiredSpans(): void {\n try {\n const keys = this._getPendingSpansKeys();\n if (keys.length === 0) {\n return;\n }\n\n const currentTime = Date.now();\n keys.forEach((key) => {\n const parts = key.split('_');\n const storedTime = parseInt(parts[parts.length - 1], 10);\n\n if (Number.isNaN(storedTime)) {\n this._diag.error(\n 'Found invalid timestamp in stored span:',\n storedTime,\n );\n this._storage.removeItem(key);\n }\n\n if (currentTime - storedTime <= this._storedSpansExpireTimeoutMS) {\n return;\n }\n\n const storedData = this._storage.getItem(key);\n if (!storedData) return;\n\n try {\n const spans: ReadableSpan[] = [];\n for (const storedSpan of JSON.parse(storedData) as ReadableSpan[]) {\n const span = this._noExportTracer.startSpan(storedSpan.name, {\n kind: storedSpan.kind,\n attributes: storedSpan.attributes,\n links: storedSpan.links,\n startTime: storedSpan.startTime,\n });\n span.setStatus(storedSpan.status);\n span.end(storedSpan.endTime);\n spans.push(span as unknown as ReadableSpan);\n }\n\n if (this._onExpiredSpansExport && spans.length > 0) {\n this._onExpiredSpansExport(spans);\n }\n } catch (e) {\n this._diag.error('Failed to process expired spans:', e);\n }\n\n // Always remove the storage item even if processing failed\n this._storage.removeItem(key);\n });\n } catch (e) {\n this._diag.error('Failed to check and export expired spans:', e);\n }\n }\n\n public _getPendingSpansKeys(): string[] {\n const keys: string[] = [];\n for (let i = 0; i < this._storage.length; i++) {\n const key = this._storage.key(i);\n if (key?.startsWith(PENDING_SPANS_STORAGE_KEY_PREFIX)) {\n keys.push(key);\n }\n }\n return keys;\n }\n\n public destroy(): void {\n this.stopExpiredSpansCheck();\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { SpanSessionManagerInternal } from "../../managers/MXLSpanSessionManager/types.cjs";
|
|
2
|
-
import { DiagLogger } from "@opentelemetry/api";
|
|
3
|
-
import { ReadableSpan } from "@opentelemetry/sdk-trace-web";
|
|
4
|
-
import { Resource } from "@opentelemetry/resources";
|
|
5
|
-
|
|
6
|
-
//#region src/utils/MXLSpanStorage/MXLSpanStorage.d.ts
|
|
7
|
-
interface SpanStorageOptions {
|
|
8
|
-
spanSessionManager: SpanSessionManagerInternal;
|
|
9
|
-
resource?: Resource;
|
|
10
|
-
storage?: Storage;
|
|
11
|
-
diag?: DiagLogger;
|
|
12
|
-
storedSpansExpireTimeoutMS?: number;
|
|
13
|
-
onExpiredSpansExport?: (spans: ReadableSpan[]) => void;
|
|
14
|
-
}
|
|
15
|
-
declare class MXLSpanStorage {
|
|
16
|
-
private readonly _noExportTracer;
|
|
17
|
-
private readonly _storage;
|
|
18
|
-
private readonly _diag;
|
|
19
|
-
private readonly _onExpiredSpansExport?;
|
|
20
|
-
private readonly _storedSpansExpireTimeoutMS;
|
|
21
|
-
private readonly _spanSessionManager;
|
|
22
|
-
private _checkExpiredSpansInterval?;
|
|
23
|
-
constructor({
|
|
24
|
-
resource,
|
|
25
|
-
storage,
|
|
26
|
-
diag: diagParam,
|
|
27
|
-
storedSpansExpireTimeoutMS,
|
|
28
|
-
// 1 hour
|
|
29
|
-
onExpiredSpansExport,
|
|
30
|
-
spanSessionManager
|
|
31
|
-
}: SpanStorageOptions);
|
|
32
|
-
storePendingSpans(sessionId: string, sessionSpan: ReadableSpan, pendingSpans: ReadableSpan[]): void;
|
|
33
|
-
clearStoredSpans(sessionId: string): void;
|
|
34
|
-
startExpiredSpansCheck(): void;
|
|
35
|
-
stopExpiredSpansCheck(): void;
|
|
36
|
-
checkAndExportExpiredSpans(): void;
|
|
37
|
-
_getPendingSpansKeys(): string[];
|
|
38
|
-
destroy(): void;
|
|
39
|
-
}
|
|
40
|
-
//#endregion
|
|
41
|
-
export { MXLSpanStorage, SpanStorageOptions };
|
|
42
|
-
//# sourceMappingURL=MXLSpanStorage.d.cts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MXLSpanStorage.d.cts","names":[],"sources":["../../../src/utils/MXLSpanStorage/MXLSpanStorage.ts"],"mappings":";;;;;;UAYiB,kBAAA;EACf,kBAAA,EAAoB,0BAAA;EACpB,QAAA,GAAW,QAAA;EACX,OAAA,GAAU,OAAA;EACV,IAAA,GAAO,UAAA;EACP,0BAAA;EACA,oBAAA,IAAwB,KAAA,EAAO,YAAA;AAAA;AAAA,cAgBpB,cAAA;EAAA,iBACM,eAAA;EAAA,iBACA,QAAA;EAAA,iBACA,KAAA;EAAA,iBACA,qBAAA;EAAA,iBACA,2BAAA;EAAA,iBACA,mBAAA;EAAA,QACT,0BAAA;;IAGN,QAAA;IACA,OAAA;IACA,IAAA,EAAM,SAAA;IAGN,0BAAA;IAAA;IACA,oBAAA;IACA;EAAA,GACC,kBAAA;EAaI,iBAAA,CACL,SAAA,UACA,WAAA,EAAa,YAAA,EACb,YAAA,EAAc,YAAA;EA8BT,gBAAA,CAAiB,SAAA;EAajB,sBAAA,CAAA;EASA,qBAAA,CAAA;EAOA,0BAAA,CAAA;EAwDA,oBAAA,CAAA;EAWA,OAAA,CAAA;AAAA"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { SpanSessionManagerInternal } from "../../managers/MXLSpanSessionManager/types.js";
|
|
2
|
-
import { DiagLogger } from "@opentelemetry/api";
|
|
3
|
-
import { Resource } from "@opentelemetry/resources";
|
|
4
|
-
import { ReadableSpan } from "@opentelemetry/sdk-trace-web";
|
|
5
|
-
|
|
6
|
-
//#region src/utils/MXLSpanStorage/MXLSpanStorage.d.ts
|
|
7
|
-
interface SpanStorageOptions {
|
|
8
|
-
spanSessionManager: SpanSessionManagerInternal;
|
|
9
|
-
resource?: Resource;
|
|
10
|
-
storage?: Storage;
|
|
11
|
-
diag?: DiagLogger;
|
|
12
|
-
storedSpansExpireTimeoutMS?: number;
|
|
13
|
-
onExpiredSpansExport?: (spans: ReadableSpan[]) => void;
|
|
14
|
-
}
|
|
15
|
-
declare class MXLSpanStorage {
|
|
16
|
-
private readonly _noExportTracer;
|
|
17
|
-
private readonly _storage;
|
|
18
|
-
private readonly _diag;
|
|
19
|
-
private readonly _onExpiredSpansExport?;
|
|
20
|
-
private readonly _storedSpansExpireTimeoutMS;
|
|
21
|
-
private readonly _spanSessionManager;
|
|
22
|
-
private _checkExpiredSpansInterval?;
|
|
23
|
-
constructor({
|
|
24
|
-
resource,
|
|
25
|
-
storage,
|
|
26
|
-
diag: diagParam,
|
|
27
|
-
storedSpansExpireTimeoutMS,
|
|
28
|
-
// 1 hour
|
|
29
|
-
onExpiredSpansExport,
|
|
30
|
-
spanSessionManager
|
|
31
|
-
}: SpanStorageOptions);
|
|
32
|
-
storePendingSpans(sessionId: string, sessionSpan: ReadableSpan, pendingSpans: ReadableSpan[]): void;
|
|
33
|
-
clearStoredSpans(sessionId: string): void;
|
|
34
|
-
startExpiredSpansCheck(): void;
|
|
35
|
-
stopExpiredSpansCheck(): void;
|
|
36
|
-
checkAndExportExpiredSpans(): void;
|
|
37
|
-
_getPendingSpansKeys(): string[];
|
|
38
|
-
destroy(): void;
|
|
39
|
-
}
|
|
40
|
-
//#endregion
|
|
41
|
-
export { MXLSpanStorage, SpanStorageOptions };
|
|
42
|
-
//# sourceMappingURL=MXLSpanStorage.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MXLSpanStorage.d.ts","names":[],"sources":["../../../src/utils/MXLSpanStorage/MXLSpanStorage.ts"],"mappings":";;;;;;UAYiB,kBAAA;EACf,kBAAA,EAAoB,0BAAA;EACpB,QAAA,GAAW,QAAA;EACX,OAAA,GAAU,OAAA;EACV,IAAA,GAAO,UAAA;EACP,0BAAA;EACA,oBAAA,IAAwB,KAAA,EAAO,YAAA;AAAA;AAAA,cAgBpB,cAAA;EAAA,iBACM,eAAA;EAAA,iBACA,QAAA;EAAA,iBACA,KAAA;EAAA,iBACA,qBAAA;EAAA,iBACA,2BAAA;EAAA,iBACA,mBAAA;EAAA,QACT,0BAAA;;IAGN,QAAA;IACA,OAAA;IACA,IAAA,EAAM,SAAA;IAGN,0BAAA;IAAA;IACA,oBAAA;IACA;EAAA,GACC,kBAAA;EAaI,iBAAA,CACL,SAAA,UACA,WAAA,EAAa,YAAA,EACb,YAAA,EAAc,YAAA;EA8BT,gBAAA,CAAiB,SAAA;EAajB,sBAAA,CAAA;EASA,qBAAA,CAAA;EAOA,0BAAA,CAAA;EAwDA,oBAAA,CAAA;EAWA,OAAA,CAAA;AAAA"}
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
import { KEY_MXL_MAX_PENDING_SPANS_REACHED } from "../../constants/attributes.js";
|
|
2
|
-
import { diag } from "@opentelemetry/api";
|
|
3
|
-
import { emptyResource } from "@opentelemetry/resources";
|
|
4
|
-
import { BasicTracerProvider } from "@opentelemetry/sdk-trace-web";
|
|
5
|
-
//#region src/utils/MXLSpanStorage/MXLSpanStorage.ts
|
|
6
|
-
const PENDING_SPANS_STORAGE_KEY_PREFIX = "mxl_pending_";
|
|
7
|
-
const MAX_PENDING_SPANS_ITEMS = 10;
|
|
8
|
-
var MXLSpanStorage = class {
|
|
9
|
-
_noExportTracer;
|
|
10
|
-
_storage;
|
|
11
|
-
_diag;
|
|
12
|
-
_onExpiredSpansExport;
|
|
13
|
-
_storedSpansExpireTimeoutMS;
|
|
14
|
-
_spanSessionManager;
|
|
15
|
-
_checkExpiredSpansInterval;
|
|
16
|
-
constructor({ resource = emptyResource(), storage = window.localStorage, diag: diagParam = diag.createComponentLogger({ namespace: "MXLSpanStorage" }), storedSpansExpireTimeoutMS = 3600 * 1e3, onExpiredSpansExport, spanSessionManager }) {
|
|
17
|
-
this._noExportTracer = new BasicTracerProvider({ resource }).getTracer("mxl-web-sdk-sessions");
|
|
18
|
-
this._storage = storage;
|
|
19
|
-
this._diag = diagParam;
|
|
20
|
-
this._storedSpansExpireTimeoutMS = storedSpansExpireTimeoutMS;
|
|
21
|
-
this._onExpiredSpansExport = onExpiredSpansExport;
|
|
22
|
-
this._spanSessionManager = spanSessionManager;
|
|
23
|
-
this.startExpiredSpansCheck();
|
|
24
|
-
}
|
|
25
|
-
storePendingSpans(sessionId, sessionSpan, pendingSpans) {
|
|
26
|
-
try {
|
|
27
|
-
this.clearStoredSpans(sessionId);
|
|
28
|
-
if (this._getPendingSpansKeys().length >= MAX_PENDING_SPANS_ITEMS) {
|
|
29
|
-
this._spanSessionManager.incrSessionCountForKey(KEY_MXL_MAX_PENDING_SPANS_REACHED);
|
|
30
|
-
this._diag.warn("Not storing pending spans as the max number of items was reached");
|
|
31
|
-
return;
|
|
32
|
-
}
|
|
33
|
-
const key = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_${Date.now()}`;
|
|
34
|
-
this._storage.setItem(key, JSON.stringify([sessionSpan, ...pendingSpans], (key, value) => key.startsWith("_") ? void 0 : value));
|
|
35
|
-
this._diag.debug(`Stored pending span: ${key}`);
|
|
36
|
-
} catch (error) {
|
|
37
|
-
this._diag.error("Failed to store spans to storage:", error);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
clearStoredSpans(sessionId) {
|
|
41
|
-
try {
|
|
42
|
-
const prefix = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_`;
|
|
43
|
-
this._getPendingSpansKeys().forEach((key) => {
|
|
44
|
-
if (key.startsWith(prefix)) this._storage.removeItem(key);
|
|
45
|
-
});
|
|
46
|
-
} catch (error) {
|
|
47
|
-
this._diag.error("Failed to clear stored spans from storage:", error);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
startExpiredSpansCheck() {
|
|
51
|
-
this._checkExpiredSpansInterval = setInterval(() => {
|
|
52
|
-
this.checkAndExportExpiredSpans();
|
|
53
|
-
}, 300 * 1e3);
|
|
54
|
-
}
|
|
55
|
-
stopExpiredSpansCheck() {
|
|
56
|
-
if (this._checkExpiredSpansInterval) {
|
|
57
|
-
clearInterval(this._checkExpiredSpansInterval);
|
|
58
|
-
this._checkExpiredSpansInterval = void 0;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
checkAndExportExpiredSpans() {
|
|
62
|
-
try {
|
|
63
|
-
const keys = this._getPendingSpansKeys();
|
|
64
|
-
if (keys.length === 0) return;
|
|
65
|
-
const currentTime = Date.now();
|
|
66
|
-
keys.forEach((key) => {
|
|
67
|
-
const parts = key.split("_");
|
|
68
|
-
const storedTime = parseInt(parts[parts.length - 1], 10);
|
|
69
|
-
if (Number.isNaN(storedTime)) {
|
|
70
|
-
this._diag.error("Found invalid timestamp in stored span:", storedTime);
|
|
71
|
-
this._storage.removeItem(key);
|
|
72
|
-
}
|
|
73
|
-
if (currentTime - storedTime <= this._storedSpansExpireTimeoutMS) return;
|
|
74
|
-
const storedData = this._storage.getItem(key);
|
|
75
|
-
if (!storedData) return;
|
|
76
|
-
try {
|
|
77
|
-
const spans = [];
|
|
78
|
-
for (const storedSpan of JSON.parse(storedData)) {
|
|
79
|
-
const span = this._noExportTracer.startSpan(storedSpan.name, {
|
|
80
|
-
kind: storedSpan.kind,
|
|
81
|
-
attributes: storedSpan.attributes,
|
|
82
|
-
links: storedSpan.links,
|
|
83
|
-
startTime: storedSpan.startTime
|
|
84
|
-
});
|
|
85
|
-
span.setStatus(storedSpan.status);
|
|
86
|
-
span.end(storedSpan.endTime);
|
|
87
|
-
spans.push(span);
|
|
88
|
-
}
|
|
89
|
-
if (this._onExpiredSpansExport && spans.length > 0) this._onExpiredSpansExport(spans);
|
|
90
|
-
} catch (e) {
|
|
91
|
-
this._diag.error("Failed to process expired spans:", e);
|
|
92
|
-
}
|
|
93
|
-
this._storage.removeItem(key);
|
|
94
|
-
});
|
|
95
|
-
} catch (e) {
|
|
96
|
-
this._diag.error("Failed to check and export expired spans:", e);
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
_getPendingSpansKeys() {
|
|
100
|
-
const keys = [];
|
|
101
|
-
for (let i = 0; i < this._storage.length; i++) {
|
|
102
|
-
const key = this._storage.key(i);
|
|
103
|
-
if (key?.startsWith(PENDING_SPANS_STORAGE_KEY_PREFIX)) keys.push(key);
|
|
104
|
-
}
|
|
105
|
-
return keys;
|
|
106
|
-
}
|
|
107
|
-
destroy() {
|
|
108
|
-
this.stopExpiredSpansCheck();
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
//#endregion
|
|
112
|
-
export { MXLSpanStorage };
|
|
113
|
-
|
|
114
|
-
//# sourceMappingURL=MXLSpanStorage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MXLSpanStorage.js","names":[],"sources":["../../../src/utils/MXLSpanStorage/MXLSpanStorage.ts"],"sourcesContent":["import type { DiagLogger, Tracer } from '@opentelemetry/api';\nimport { diag } from '@opentelemetry/api';\nimport type { Resource } from '@opentelemetry/resources';\nimport { emptyResource } from '@opentelemetry/resources';\nimport type { ReadableSpan } from '@opentelemetry/sdk-trace-web';\nimport { BasicTracerProvider } from '@opentelemetry/sdk-trace-web';\nimport { KEY_MXL_MAX_PENDING_SPANS_REACHED } from '../../constants';\nimport type { SpanSessionManagerInternal } from '../../managers';\n\nconst PENDING_SPANS_STORAGE_KEY_PREFIX = 'mxl_pending_';\nconst MAX_PENDING_SPANS_ITEMS = 10;\n\nexport interface SpanStorageOptions {\n spanSessionManager: SpanSessionManagerInternal;\n resource?: Resource;\n storage?: Storage;\n diag?: DiagLogger;\n storedSpansExpireTimeoutMS?: number;\n onExpiredSpansExport?: (spans: ReadableSpan[]) => void;\n}\n\n// MXLSpanStorage is used to keep pending spans that are not meant to be exported (yet) in localStorage,\n// and periodically checks whenever those stored spans are ready to be exported.\n// This functionality has some custom logic to be able to store these spans as JSONs and then recreate them back\n// that could eventually be improved. In particular the things that would need to be improved are:\n// - Avoid serializing as JSON and instead try to use a customExporter that produces the body as it was going to be\n// sent over the wire (serialized, compressed, etc), and store that, so that later when it decides to export those,\n// it's just using that body as a regular fetch call.\n// - Create a service worker that is responsible for tracking the pending spans and deciding when to actually export them.\n// That way we would avoid a potential race condition where two different tabs would try to export the same data.\n// - Make this a more comprehensive component so that the MXLSessionBatchedSpanProcessor doesn't need to be in the\n// middle of SpanSessionVisibilityInstrumentation and this component. Ideally this component would know when and how\n// to take snapshots of the current pending spans and the current session span at any moment, so that the visibility\n// instrumentation doesn't need to be telling that to the batch span processor.\nexport class MXLSpanStorage {\n private readonly _noExportTracer: Tracer;\n private readonly _storage: Storage;\n private readonly _diag: DiagLogger;\n private readonly _onExpiredSpansExport?: (spans: ReadableSpan[]) => void;\n private readonly _storedSpansExpireTimeoutMS: number;\n private readonly _spanSessionManager: SpanSessionManagerInternal;\n private _checkExpiredSpansInterval?: ReturnType<typeof setInterval>;\n\n public constructor({\n resource = emptyResource(),\n storage = window.localStorage,\n diag: diagParam = diag.createComponentLogger({\n namespace: 'MXLSpanStorage',\n }),\n storedSpansExpireTimeoutMS = 60 * 60 * 1000, // 1 hour\n onExpiredSpansExport,\n spanSessionManager,\n }: SpanStorageOptions) {\n this._noExportTracer = new BasicTracerProvider({ resource }).getTracer(\n 'mxl-web-sdk-sessions',\n );\n this._storage = storage;\n this._diag = diagParam;\n this._storedSpansExpireTimeoutMS = storedSpansExpireTimeoutMS;\n this._onExpiredSpansExport = onExpiredSpansExport;\n this._spanSessionManager = spanSessionManager;\n\n this.startExpiredSpansCheck();\n }\n\n public storePendingSpans(\n sessionId: string,\n sessionSpan: ReadableSpan,\n pendingSpans: ReadableSpan[],\n ): void {\n try {\n // If this session was already stored, clear it first:\n this.clearStoredSpans(sessionId);\n\n if (this._getPendingSpansKeys().length >= MAX_PENDING_SPANS_ITEMS) {\n this._spanSessionManager.incrSessionCountForKey(\n KEY_MXL_MAX_PENDING_SPANS_REACHED,\n );\n this._diag.warn(\n 'Not storing pending spans as the max number of items was reached',\n );\n return;\n }\n\n const key = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_${Date.now()}`;\n this._storage.setItem(\n key,\n JSON.stringify([sessionSpan, ...pendingSpans], (key, value) =>\n key.startsWith('_') ? undefined : value,\n ),\n );\n\n this._diag.debug(`Stored pending span: ${key}`);\n } catch (error) {\n this._diag.error('Failed to store spans to storage:', error);\n }\n }\n\n public clearStoredSpans(sessionId: string): void {\n try {\n const prefix = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_`;\n this._getPendingSpansKeys().forEach((key) => {\n if (key.startsWith(prefix)) {\n this._storage.removeItem(key);\n }\n });\n } catch (error) {\n this._diag.error('Failed to clear stored spans from storage:', error);\n }\n }\n\n public startExpiredSpansCheck(): void {\n this._checkExpiredSpansInterval = setInterval(\n () => {\n this.checkAndExportExpiredSpans();\n },\n 5 * 60 * 1000,\n ); // Check every 5 minutes\n }\n\n public stopExpiredSpansCheck(): void {\n if (this._checkExpiredSpansInterval) {\n clearInterval(this._checkExpiredSpansInterval);\n this._checkExpiredSpansInterval = undefined;\n }\n }\n\n public checkAndExportExpiredSpans(): void {\n try {\n const keys = this._getPendingSpansKeys();\n if (keys.length === 0) {\n return;\n }\n\n const currentTime = Date.now();\n keys.forEach((key) => {\n const parts = key.split('_');\n const storedTime = parseInt(parts[parts.length - 1], 10);\n\n if (Number.isNaN(storedTime)) {\n this._diag.error(\n 'Found invalid timestamp in stored span:',\n storedTime,\n );\n this._storage.removeItem(key);\n }\n\n if (currentTime - storedTime <= this._storedSpansExpireTimeoutMS) {\n return;\n }\n\n const storedData = this._storage.getItem(key);\n if (!storedData) return;\n\n try {\n const spans: ReadableSpan[] = [];\n for (const storedSpan of JSON.parse(storedData) as ReadableSpan[]) {\n const span = this._noExportTracer.startSpan(storedSpan.name, {\n kind: storedSpan.kind,\n attributes: storedSpan.attributes,\n links: storedSpan.links,\n startTime: storedSpan.startTime,\n });\n span.setStatus(storedSpan.status);\n span.end(storedSpan.endTime);\n spans.push(span as unknown as ReadableSpan);\n }\n\n if (this._onExpiredSpansExport && spans.length > 0) {\n this._onExpiredSpansExport(spans);\n }\n } catch (e) {\n this._diag.error('Failed to process expired spans:', e);\n }\n\n // Always remove the storage item even if processing failed\n this._storage.removeItem(key);\n });\n } catch (e) {\n this._diag.error('Failed to check and export expired spans:', e);\n }\n }\n\n public _getPendingSpansKeys(): string[] {\n const keys: string[] = [];\n for (let i = 0; i < this._storage.length; i++) {\n const key = this._storage.key(i);\n if (key?.startsWith(PENDING_SPANS_STORAGE_KEY_PREFIX)) {\n keys.push(key);\n }\n }\n return keys;\n }\n\n public destroy(): void {\n this.stopExpiredSpansCheck();\n }\n}\n"],"mappings":"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"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/{api-sessions/api/SessionAPI → instrumentations/replay/ReplayInstrumentation}/types.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|