@safaricom-mxl/web-sdk 0.0.16 → 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 +28 -0
- package/dist/constants/attributes.cjs.map +1 -1
- package/dist/constants/attributes.d.cts +17 -2
- package/dist/constants/attributes.d.cts.map +1 -1
- package/dist/constants/attributes.d.ts +17 -2
- package/dist/constants/attributes.d.ts.map +1 -1
- package/dist/constants/attributes.js +16 -1
- package/dist/constants/attributes.js.map +1 -1
- package/dist/constants/index.cjs +13 -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 +2 -2
- 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 +2 -2
- 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 +19 -19
- 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 +19 -19
- 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 -23
- 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 +137 -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 +137 -98
- package/dist/sdk/initSDK.js.map +1 -1
- 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 -87
- package/dist/sdk/setupSessionRecorder.cjs.map +0 -1
- package/dist/sdk/setupSessionRecorder.d.cts +0 -30
- package/dist/sdk/setupSessionRecorder.d.cts.map +0 -1
- package/dist/sdk/setupSessionRecorder.d.ts +0 -30
- package/dist/sdk/setupSessionRecorder.d.ts.map +0 -1
- package/dist/sdk/setupSessionRecorder.js +0 -83
- 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
|
@@ -14,21 +14,21 @@ const MXL_EXCEPTION_NUMBER_STORAGE_KEY = "mxl_exception_number";
|
|
|
14
14
|
* GLOBAL_CONFIG._MXLFileBundleIDs is populated at runtime when each file is loaded,
|
|
15
15
|
* based on the contents injected by the mxl-web-cli.
|
|
16
16
|
*/
|
|
17
|
-
const getJSFileBundleIDs = () => JSON.stringify(require_utils_globalConfig.GLOBAL_CONFIG._MXLFileBundleIDs ||
|
|
17
|
+
const getJSFileBundleIDs = () => JSON.stringify(require_utils_globalConfig.GLOBAL_CONFIG._MXLFileBundleIDs || {});
|
|
18
18
|
var MXLLogManager = class MXLLogManager {
|
|
19
19
|
_diag;
|
|
20
20
|
_perf;
|
|
21
21
|
_logger;
|
|
22
|
-
|
|
22
|
+
_userSessionManager;
|
|
23
23
|
_limitManager;
|
|
24
24
|
_visibilityDoc;
|
|
25
25
|
_storage;
|
|
26
|
-
constructor({ diag: diagParam, perf,
|
|
26
|
+
constructor({ diag: diagParam, perf, userSessionManager, limitManager, loggerProvider: globalLoggerProviderOverride, visibilityDoc = window.document, storage = window.localStorage }) {
|
|
27
27
|
const loggerProvider = globalLoggerProviderOverride ?? _opentelemetry_api_logs.logs;
|
|
28
28
|
this._diag = diagParam ?? _opentelemetry_api.diag.createComponentLogger({ namespace: "MXLLogManager" });
|
|
29
29
|
this._perf = perf ?? new require_utils_PerformanceManager_OTelPerformanceManager.OTelPerformanceManager();
|
|
30
30
|
this._logger = loggerProvider.getLogger("mxl-web-sdk-logs");
|
|
31
|
-
this.
|
|
31
|
+
this._userSessionManager = userSessionManager;
|
|
32
32
|
this._limitManager = limitManager;
|
|
33
33
|
this._visibilityDoc = visibilityDoc;
|
|
34
34
|
this._storage = storage;
|
|
@@ -49,7 +49,7 @@ var MXLLogManager = class MXLLogManager {
|
|
|
49
49
|
}
|
|
50
50
|
logException(error, { handled = true, attributes = {}, timestamp = this._perf.getNowMillis(), handler = "manual" } = {}) {
|
|
51
51
|
const validAttrs = this._validateAttributes(attributes);
|
|
52
|
-
if (!handled) this.
|
|
52
|
+
if (!handled) this._userSessionManager.incrSessionPartCountForKey(require_constants_attributes.KEY_MXL_UNHANDLED_EXCEPTIONS_COUNT);
|
|
53
53
|
const type = error?.constructor?.name || typeof error;
|
|
54
54
|
let errMessage = "";
|
|
55
55
|
let errName = type;
|
|
@@ -70,10 +70,6 @@ var MXLLogManager = class MXLLogManager {
|
|
|
70
70
|
const limited = this._limitManager.limitException(errMessage, attrsForLimiting);
|
|
71
71
|
if (limited === "dropped") return;
|
|
72
72
|
this._logger.emit({
|
|
73
|
-
timestamp,
|
|
74
|
-
severityNumber: _opentelemetry_api_logs.SeverityNumber.ERROR,
|
|
75
|
-
severityText: "ERROR",
|
|
76
|
-
body: limited.message,
|
|
77
73
|
attributes: {
|
|
78
74
|
...limited.attributes,
|
|
79
75
|
...reactComponentStack !== void 0 ? { [require_constants_attributes.KEY_REACT_COMPONENT_STACK]: String(reactComponentStack) } : {},
|
|
@@ -87,7 +83,11 @@ var MXLLogManager = class MXLLogManager {
|
|
|
87
83
|
[require_constants_attributes.KEY_MXL_JS_FILE_BUNDLE_IDS]: getJSFileBundleIDs(),
|
|
88
84
|
[require_constants_attributes.KEY_MXL_STATE]: require_utils_getVisibilityState.getVisibilityState(this._visibilityDoc),
|
|
89
85
|
[require_constants_attributes.KEY_MXL_EXCEPTION_NUMBER]: require_utils_getIncrementedCount.getIncrementedCount(this._storage, MXL_EXCEPTION_NUMBER_STORAGE_KEY, this._diag)
|
|
90
|
-
}
|
|
86
|
+
},
|
|
87
|
+
body: limited.message,
|
|
88
|
+
severityNumber: _opentelemetry_api_logs.SeverityNumber.ERROR,
|
|
89
|
+
severityText: "ERROR",
|
|
90
|
+
timestamp
|
|
91
91
|
});
|
|
92
92
|
}
|
|
93
93
|
message(message, severity, { attributes = {}, includeStacktrace = true, stacktrace } = {}) {
|
|
@@ -104,28 +104,24 @@ var MXLLogManager = class MXLLogManager {
|
|
|
104
104
|
return;
|
|
105
105
|
}
|
|
106
106
|
const validAttrs = this._validateAttributes(attributes);
|
|
107
|
-
if (severity === "error") this.
|
|
107
|
+
if (severity === "error") this._userSessionManager.incrSessionPartCountForKey(require_constants_attributes.KEY_MXL_ERROR_LOG_COUNT);
|
|
108
108
|
let stack = "";
|
|
109
109
|
if (severity !== "info") {
|
|
110
110
|
if (typeof stacktrace === "string") stack = stacktrace;
|
|
111
111
|
else if (includeStacktrace) stack = (/* @__PURE__ */ new Error()).stack || "";
|
|
112
112
|
}
|
|
113
113
|
this._logMessage({
|
|
114
|
+
attributes: validAttrs,
|
|
114
115
|
message: message.trim(),
|
|
115
116
|
severity,
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
stack
|
|
117
|
+
stack,
|
|
118
|
+
timestamp: this._perf.getNowMillis()
|
|
119
119
|
});
|
|
120
120
|
}
|
|
121
121
|
_logMessage({ message, severity, timestamp, attributes = {}, stack }) {
|
|
122
122
|
const limitedLog = this._limitManager.limitLog(message, severity, attributes);
|
|
123
123
|
if (limitedLog === "dropped") return;
|
|
124
124
|
this._logger.emit({
|
|
125
|
-
timestamp,
|
|
126
|
-
severityNumber: MXLLogManager._logSeverityToSeverityNumber(severity),
|
|
127
|
-
severityText: severity.toUpperCase(),
|
|
128
|
-
body: limitedLog.message,
|
|
129
125
|
attributes: {
|
|
130
126
|
...limitedLog.attributes,
|
|
131
127
|
[require_constants_attributes.KEY_MXL_TYPE]: "sys.log",
|
|
@@ -134,7 +130,11 @@ var MXLLogManager = class MXLLogManager {
|
|
|
134
130
|
[require_constants_attributes.KEY_MXL_JS_FILE_BUNDLE_IDS]: getJSFileBundleIDs()
|
|
135
131
|
} : {},
|
|
136
132
|
[require_constants_attributes.KEY_MXL_STATE]: require_utils_getVisibilityState.getVisibilityState(this._visibilityDoc)
|
|
137
|
-
}
|
|
133
|
+
},
|
|
134
|
+
body: limitedLog.message,
|
|
135
|
+
severityNumber: MXLLogManager._logSeverityToSeverityNumber(severity),
|
|
136
|
+
severityText: severity.toUpperCase(),
|
|
137
|
+
timestamp
|
|
138
138
|
});
|
|
139
139
|
}
|
|
140
140
|
static _exceptionHandlingType(handled, handler) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MXLLogManager.cjs","names":["GLOBAL_CONFIG","logs","diag","OTelPerformanceManager","SeverityNumber","KEY_MXL_UNHANDLED_EXCEPTIONS_COUNT","KEY_REACT_COMPONENT_STACK","KEY_MXL_TYPE","KEY_MXL_EXCEPTION_HANDLING","KEY_MXL_EXCEPTION_CAUSE","ATTR_EXCEPTION_TYPE","ATTR_EXCEPTION_MESSAGE","ATTR_EXCEPTION_STACKTRACE","KEY_MXL_JS_FILE_BUNDLE_IDS","KEY_MXL_STATE","getVisibilityState","KEY_MXL_EXCEPTION_NUMBER","getIncrementedCount","KEY_MXL_ERROR_LOG_COUNT","KEY_MXL_JS_EXCEPTION_STACKTRACE"],"sources":["../../../src/managers/MXLLogManager/MXLLogManager.ts"],"sourcesContent":["import type { Attributes, DiagLogger } from '@opentelemetry/api';\nimport { diag } from '@opentelemetry/api';\nimport type { Logger } from '@opentelemetry/api-logs';\nimport { logs, SeverityNumber } from '@opentelemetry/api-logs';\nimport {\n ATTR_EXCEPTION_MESSAGE,\n ATTR_EXCEPTION_STACKTRACE,\n ATTR_EXCEPTION_TYPE,\n} from '@opentelemetry/semantic-conventions';\nimport type { LogManager, LogSeverity } from '../../api-logs';\nimport type {\n LogExceptionOptions,\n LogMessageOptions,\n} from '../../api-logs/manager';\nimport type { ExceptionHandlerType } from '../../api-logs/manager/types';\nimport type { VisibilityStateDocument } from '../../common';\nimport {\n KEY_MXL_EXCEPTION_HANDLING,\n KEY_MXL_EXCEPTION_NUMBER,\n KEY_MXL_JS_EXCEPTION_STACKTRACE,\n KEY_MXL_STATE,\n KEY_MXL_TYPE,\n MXL_TYPES,\n} from '../../constants';\nimport {\n KEY_MXL_ERROR_LOG_COUNT,\n KEY_MXL_EXCEPTION_CAUSE,\n KEY_MXL_JS_FILE_BUNDLE_IDS,\n KEY_MXL_UNHANDLED_EXCEPTIONS_COUNT,\n KEY_REACT_COMPONENT_STACK,\n} from '../../constants/attributes';\nimport type { PerformanceManager } from '../../utils';\nimport {\n GLOBAL_CONFIG,\n getIncrementedCount,\n getVisibilityState,\n OTelPerformanceManager,\n} from '../../utils';\nimport type { LimitManagerInternal } from '../MXLLimitManager';\nimport type { SpanSessionManagerInternal } from '../MXLSpanSessionManager';\nimport type { MXLLogManagerArgs } from './types';\n\nconst MXL_EXCEPTION_NUMBER_STORAGE_KEY = 'mxl_exception_number';\n/**\n * GLOBAL_CONFIG._MXLFileBundleIDs is populated at runtime when each file is loaded,\n * based on the contents injected by the mxl-web-cli.\n */\nconst getJSFileBundleIDs = () =>\n JSON.stringify(\n GLOBAL_CONFIG._MXLFileBundleIDs || GLOBAL_CONFIG._MXLFileBundleIDs || {},\n );\n\nexport class MXLLogManager implements LogManager {\n private readonly _diag: DiagLogger;\n private readonly _perf: PerformanceManager;\n private readonly _logger: Logger;\n private readonly _spanSessionManager: SpanSessionManagerInternal;\n private readonly _limitManager: LimitManagerInternal;\n private readonly _visibilityDoc: VisibilityStateDocument;\n private readonly _storage: Storage;\n\n public constructor({\n diag: diagParam,\n perf,\n spanSessionManager,\n limitManager,\n loggerProvider: globalLoggerProviderOverride,\n visibilityDoc = window.document,\n storage = window.localStorage,\n }: MXLLogManagerArgs) {\n const loggerProvider = globalLoggerProviderOverride ?? logs;\n\n this._diag =\n diagParam ??\n diag.createComponentLogger({\n namespace: 'MXLLogManager',\n });\n this._perf = perf ?? new OTelPerformanceManager();\n this._logger = loggerProvider.getLogger('mxl-web-sdk-logs');\n this._spanSessionManager = spanSessionManager;\n this._limitManager = limitManager;\n this._visibilityDoc = visibilityDoc;\n this._storage = storage;\n }\n\n private _validateAttributes(attributes: unknown): Attributes {\n if (Object.prototype.toString.call(attributes) !== '[object Object]') {\n this._diag.warn('attributes must be a plain object', attributes);\n return {};\n }\n return attributes as Attributes;\n }\n\n private static _logSeverityToSeverityNumber(\n severity: LogSeverity,\n ): SeverityNumber {\n switch (severity) {\n case 'info':\n return SeverityNumber.INFO;\n case 'warning':\n return SeverityNumber.WARN;\n default:\n return SeverityNumber.ERROR;\n }\n }\n\n public logException(\n error: unknown,\n {\n handled = true,\n attributes = {},\n timestamp = this._perf.getNowMillis(),\n handler = 'manual',\n }: LogExceptionOptions = {},\n ) {\n const validAttrs = this._validateAttributes(attributes);\n\n if (!handled) {\n this._spanSessionManager.incrSessionCountForKey(\n KEY_MXL_UNHANDLED_EXCEPTIONS_COUNT,\n );\n }\n\n const type = error?.constructor?.name || typeof error;\n let errMessage = '';\n let errName = type;\n let errStack = '';\n let errCause = '';\n\n if (error instanceof Error) {\n errMessage = String(error.message || '').trim();\n errName = error.name || '';\n errStack = error.stack || '';\n errCause = error.cause ? 'present' : '';\n } else if (error && typeof error === 'object') {\n try {\n errMessage = JSON.stringify(error);\n } catch {\n errMessage = String(error).trim();\n }\n } else {\n errMessage = String(error).trim();\n }\n\n const {\n [KEY_REACT_COMPONENT_STACK]: reactComponentStack,\n ...attrsForLimiting\n } = validAttrs;\n\n const limited = this._limitManager.limitException(\n errMessage,\n attrsForLimiting,\n );\n if (limited === 'dropped') {\n return;\n }\n\n this._logger.emit({\n timestamp,\n severityNumber: SeverityNumber.ERROR,\n severityText: 'ERROR',\n body: limited.message,\n attributes: {\n ...limited.attributes,\n ...(reactComponentStack !== undefined\n ? { [KEY_REACT_COMPONENT_STACK]: String(reactComponentStack) }\n : {}),\n [KEY_MXL_TYPE]: MXL_TYPES.SystemException,\n [KEY_MXL_EXCEPTION_HANDLING]: MXLLogManager._exceptionHandlingType(\n handled,\n handler,\n ),\n [KEY_MXL_EXCEPTION_CAUSE]: errCause,\n [ATTR_EXCEPTION_TYPE]: type,\n ['exception.name']: errName,\n [ATTR_EXCEPTION_MESSAGE]: limited.message,\n [ATTR_EXCEPTION_STACKTRACE]: errStack,\n [KEY_MXL_JS_FILE_BUNDLE_IDS]: getJSFileBundleIDs(),\n [KEY_MXL_STATE]: getVisibilityState(this._visibilityDoc),\n [KEY_MXL_EXCEPTION_NUMBER]: getIncrementedCount(\n this._storage,\n MXL_EXCEPTION_NUMBER_STORAGE_KEY,\n this._diag,\n ),\n },\n });\n }\n\n public message(\n message: string,\n severity: LogSeverity,\n {\n attributes = {},\n includeStacktrace = true,\n stacktrace,\n }: LogMessageOptions = {},\n ) {\n if (typeof message !== 'string' || !message.trim()) {\n this._diag.warn('Message must be a non-empty string');\n return;\n }\n\n if (!['info', 'warning', 'error'].includes(severity)) {\n this._diag.warn('Severity must be info, warning, or error');\n return;\n }\n\n const validAttrs = this._validateAttributes(attributes);\n\n if (severity === 'error') {\n this._spanSessionManager.incrSessionCountForKey(KEY_MXL_ERROR_LOG_COUNT);\n }\n\n let stack = '';\n if (severity !== 'info') {\n if (typeof stacktrace === 'string') {\n stack = stacktrace;\n } else if (includeStacktrace) {\n stack = new Error().stack || '';\n }\n }\n\n this._logMessage({\n message: message.trim(),\n severity,\n timestamp: this._perf.getNowMillis(),\n attributes: validAttrs,\n stack,\n });\n }\n\n private _logMessage({\n message,\n severity,\n timestamp,\n attributes = {},\n stack,\n }: {\n message: string;\n severity: LogSeverity;\n timestamp: number;\n attributes?: Attributes;\n stack?: string;\n }) {\n const limitedLog = this._limitManager.limitLog(\n message,\n severity,\n attributes,\n );\n\n if (limitedLog === 'dropped') {\n return;\n }\n\n this._logger.emit({\n timestamp,\n severityNumber: MXLLogManager._logSeverityToSeverityNumber(severity),\n severityText: severity.toUpperCase(),\n body: limitedLog.message,\n attributes: {\n ...limitedLog.attributes,\n [KEY_MXL_TYPE]: MXL_TYPES.SystemLog,\n ...(stack\n ? {\n [KEY_MXL_JS_EXCEPTION_STACKTRACE]: stack,\n [KEY_MXL_JS_FILE_BUNDLE_IDS]: getJSFileBundleIDs(),\n }\n : {}),\n [KEY_MXL_STATE]: getVisibilityState(this._visibilityDoc),\n },\n });\n }\n\n private static _exceptionHandlingType(\n handled: boolean,\n handler: ExceptionHandlerType,\n ): string {\n if (handled) {\n return 'handled';\n }\n\n if (handler === 'global_exception') {\n return 'unhandled_error';\n }\n\n if (handler === 'promise_rejection') {\n return 'unhandled_rejection';\n }\n\n return 'unhandled';\n }\n}\n"],"mappings":";;;;;;;;;;;AA0CA,MAAM,mCAAmC;;;;;AAKzC,MAAM,2BACJ,KAAK,UACHA,2BAAAA,cAAc,qBAAqBA,2BAAAA,cAAc,qBAAqB,EAAE,CACzE;AAEH,IAAa,gBAAb,MAAa,cAAoC;CAC/C;CACA;CACA;CACA;CACA;CACA;CACA;CAEA,YAAmB,EACjB,MAAM,WACN,MACA,oBACA,cACA,gBAAgB,8BAChB,gBAAgB,OAAO,UACvB,UAAU,OAAO,gBACG;EACpB,MAAM,iBAAiB,gCAAgCC,wBAAAA;AAEvD,OAAK,QACH,aACAC,mBAAAA,KAAK,sBAAsB,EACzB,WAAW,iBACZ,CAAC;AACJ,OAAK,QAAQ,QAAQ,IAAIC,wDAAAA,wBAAwB;AACjD,OAAK,UAAU,eAAe,UAAU,mBAAmB;AAC3D,OAAK,sBAAsB;AAC3B,OAAK,gBAAgB;AACrB,OAAK,iBAAiB;AACtB,OAAK,WAAW;;CAGlB,oBAA4B,YAAiC;AAC3D,MAAI,OAAO,UAAU,SAAS,KAAK,WAAW,KAAK,mBAAmB;AACpE,QAAK,MAAM,KAAK,qCAAqC,WAAW;AAChE,UAAO,EAAE;;AAEX,SAAO;;CAGT,OAAe,6BACb,UACgB;AAChB,UAAQ,UAAR;GACE,KAAK,OACH,QAAOC,wBAAAA,eAAe;GACxB,KAAK,UACH,QAAOA,wBAAAA,eAAe;GACxB,QACE,QAAOA,wBAAAA,eAAe;;;CAI5B,aACE,OACA,EACE,UAAU,MACV,aAAa,EAAE,EACf,YAAY,KAAK,MAAM,cAAc,EACrC,UAAU,aACa,EAAE,EAC3B;EACA,MAAM,aAAa,KAAK,oBAAoB,WAAW;AAEvD,MAAI,CAAC,QACH,MAAK,oBAAoB,uBACvBC,6BAAAA,mCACD;EAGH,MAAM,OAAO,OAAO,aAAa,QAAQ,OAAO;EAChD,IAAI,aAAa;EACjB,IAAI,UAAU;EACd,IAAI,WAAW;EACf,IAAI,WAAW;AAEf,MAAI,iBAAiB,OAAO;AAC1B,gBAAa,OAAO,MAAM,WAAW,GAAG,CAAC,MAAM;AAC/C,aAAU,MAAM,QAAQ;AACxB,cAAW,MAAM,SAAS;AAC1B,cAAW,MAAM,QAAQ,YAAY;aAC5B,SAAS,OAAO,UAAU,SACnC,KAAI;AACF,gBAAa,KAAK,UAAU,MAAM;UAC5B;AACN,gBAAa,OAAO,MAAM,CAAC,MAAM;;MAGnC,cAAa,OAAO,MAAM,CAAC,MAAM;EAGnC,MAAM,GACHC,6BAAAA,4BAA4B,qBAC7B,GAAG,qBACD;EAEJ,MAAM,UAAU,KAAK,cAAc,eACjC,YACA,iBACD;AACD,MAAI,YAAY,UACd;AAGF,OAAK,QAAQ,KAAK;GAChB;GACA,gBAAgBF,wBAAAA,eAAe;GAC/B,cAAc;GACd,MAAM,QAAQ;GACd,YAAY;IACV,GAAG,QAAQ;IACX,GAAI,wBAAwB,KAAA,IACxB,GAAGE,6BAAAA,4BAA4B,OAAO,oBAAoB,EAAE,GAC5D,EAAE;KACLC,6BAAAA,eAAAA;KACAC,6BAAAA,6BAA6B,cAAc,uBAC1C,SACA,QACD;KACAC,6BAAAA,0BAA0B;KAC1BC,oCAAAA,sBAAsB;KACtB,mBAAmB;KACnBC,oCAAAA,yBAAyB,QAAQ;KACjCC,oCAAAA,4BAA4B;KAC5BC,6BAAAA,6BAA6B,oBAAoB;KACjDC,6BAAAA,gBAAgBC,iCAAAA,mBAAmB,KAAK,eAAe;KACvDC,6BAAAA,2BAA2BC,kCAAAA,oBAC1B,KAAK,UACL,kCACA,KAAK,MACN;IACF;GACF,CAAC;;CAGJ,QACE,SACA,UACA,EACE,aAAa,EAAE,EACf,oBAAoB,MACpB,eACqB,EAAE,EACzB;AACA,MAAI,OAAO,YAAY,YAAY,CAAC,QAAQ,MAAM,EAAE;AAClD,QAAK,MAAM,KAAK,qCAAqC;AACrD;;AAGF,MAAI,CAAC;GAAC;GAAQ;GAAW;GAAQ,CAAC,SAAS,SAAS,EAAE;AACpD,QAAK,MAAM,KAAK,2CAA2C;AAC3D;;EAGF,MAAM,aAAa,KAAK,oBAAoB,WAAW;AAEvD,MAAI,aAAa,QACf,MAAK,oBAAoB,uBAAuBC,6BAAAA,wBAAwB;EAG1E,IAAI,QAAQ;AACZ,MAAI,aAAa;OACX,OAAO,eAAe,SACxB,SAAQ;YACC,kBACT,0BAAQ,IAAI,OAAO,EAAC,SAAS;;AAIjC,OAAK,YAAY;GACf,SAAS,QAAQ,MAAM;GACvB;GACA,WAAW,KAAK,MAAM,cAAc;GACpC,YAAY;GACZ;GACD,CAAC;;CAGJ,YAAoB,EAClB,SACA,UACA,WACA,aAAa,EAAE,EACf,SAOC;EACD,MAAM,aAAa,KAAK,cAAc,SACpC,SACA,UACA,WACD;AAED,MAAI,eAAe,UACjB;AAGF,OAAK,QAAQ,KAAK;GAChB;GACA,gBAAgB,cAAc,6BAA6B,SAAS;GACpE,cAAc,SAAS,aAAa;GACpC,MAAM,WAAW;GACjB,YAAY;IACV,GAAG,WAAW;KACbX,6BAAAA,eAAAA;IACD,GAAI,QACA;MACGY,6BAAAA,kCAAkC;MAClCN,6BAAAA,6BAA6B,oBAAoB;KACnD,GACD,EAAE;KACLC,6BAAAA,gBAAgBC,iCAAAA,mBAAmB,KAAK,eAAe;IACzD;GACF,CAAC;;CAGJ,OAAe,uBACb,SACA,SACQ;AACR,MAAI,QACF,QAAO;AAGT,MAAI,YAAY,mBACd,QAAO;AAGT,MAAI,YAAY,oBACd,QAAO;AAGT,SAAO"}
|
|
1
|
+
{"version":3,"file":"MXLLogManager.cjs","names":["GLOBAL_CONFIG","logs","diag","OTelPerformanceManager","SeverityNumber","KEY_MXL_UNHANDLED_EXCEPTIONS_COUNT","KEY_REACT_COMPONENT_STACK","KEY_MXL_TYPE","KEY_MXL_EXCEPTION_HANDLING","KEY_MXL_EXCEPTION_CAUSE","ATTR_EXCEPTION_TYPE","ATTR_EXCEPTION_MESSAGE","ATTR_EXCEPTION_STACKTRACE","KEY_MXL_JS_FILE_BUNDLE_IDS","KEY_MXL_STATE","getVisibilityState","KEY_MXL_EXCEPTION_NUMBER","getIncrementedCount","KEY_MXL_ERROR_LOG_COUNT","KEY_MXL_JS_EXCEPTION_STACKTRACE"],"sources":["../../../src/managers/MXLLogManager/MXLLogManager.ts"],"sourcesContent":["import type { Attributes, DiagLogger } from '@opentelemetry/api';\nimport { diag } from '@opentelemetry/api';\nimport type { Logger } from '@opentelemetry/api-logs';\nimport { SeverityNumber, logs } from '@opentelemetry/api-logs';\nimport {\n ATTR_EXCEPTION_MESSAGE,\n ATTR_EXCEPTION_STACKTRACE,\n ATTR_EXCEPTION_TYPE,\n} from '@opentelemetry/semantic-conventions';\nimport type { LogManager, LogSeverity } from '../../api-logs';\nimport type {\n LogExceptionOptions,\n LogMessageOptions,\n} from '../../api-logs/manager';\nimport type { ExceptionHandlerType } from '../../api-logs/manager/types';\nimport type { VisibilityStateDocument } from '../../common';\nimport {\n KEY_MXL_EXCEPTION_HANDLING,\n KEY_MXL_EXCEPTION_NUMBER,\n KEY_MXL_JS_EXCEPTION_STACKTRACE,\n KEY_MXL_STATE,\n KEY_MXL_TYPE,\n MXL_TYPES,\n} from '../../constants';\nimport {\n KEY_MXL_ERROR_LOG_COUNT,\n KEY_MXL_EXCEPTION_CAUSE,\n KEY_MXL_JS_FILE_BUNDLE_IDS,\n KEY_MXL_UNHANDLED_EXCEPTIONS_COUNT,\n KEY_REACT_COMPONENT_STACK,\n} from '../../constants/attributes';\nimport type { PerformanceManager } from '../../utils';\nimport {\n GLOBAL_CONFIG,\n OTelPerformanceManager,\n getIncrementedCount,\n getVisibilityState,\n} from '../../utils';\nimport type { LimitManagerInternal } from '../MXLLimitManager';\nimport type { UserSessionManagerInternal } from '../MXLUserSessionManager';\nimport type { MXLLogManagerArgs } from './types';\n\nconst MXL_EXCEPTION_NUMBER_STORAGE_KEY = 'mxl_exception_number';\n/**\n * GLOBAL_CONFIG._MXLFileBundleIDs is populated at runtime when each file is loaded,\n * based on the contents injected by the mxl-web-cli.\n */\nconst getJSFileBundleIDs = () =>\n JSON.stringify(GLOBAL_CONFIG._MXLFileBundleIDs || {});\n\nexport class MXLLogManager implements LogManager {\n private readonly _diag: DiagLogger;\n private readonly _perf: PerformanceManager;\n private readonly _logger: Logger;\n private readonly _userSessionManager: UserSessionManagerInternal;\n private readonly _limitManager: LimitManagerInternal;\n private readonly _visibilityDoc: VisibilityStateDocument;\n private readonly _storage: Storage;\n\n public constructor({\n diag: diagParam,\n perf,\n userSessionManager,\n limitManager,\n loggerProvider: globalLoggerProviderOverride,\n visibilityDoc = window.document,\n storage = window.localStorage,\n }: MXLLogManagerArgs) {\n const loggerProvider = globalLoggerProviderOverride ?? logs;\n\n this._diag =\n diagParam ??\n diag.createComponentLogger({\n namespace: 'MXLLogManager',\n });\n this._perf = perf ?? new OTelPerformanceManager();\n this._logger = loggerProvider.getLogger('mxl-web-sdk-logs');\n this._userSessionManager = userSessionManager;\n this._limitManager = limitManager;\n this._visibilityDoc = visibilityDoc;\n this._storage = storage;\n }\n\n private _validateAttributes(attributes: unknown): Attributes {\n if (Object.prototype.toString.call(attributes) !== '[object Object]') {\n this._diag.warn('attributes must be a plain object', attributes);\n return {};\n }\n return attributes as Attributes;\n }\n\n private static _logSeverityToSeverityNumber(\n severity: LogSeverity,\n ): SeverityNumber {\n switch (severity) {\n case 'info': {\n return SeverityNumber.INFO;\n }\n case 'warning': {\n return SeverityNumber.WARN;\n }\n default: {\n return SeverityNumber.ERROR;\n }\n }\n }\n\n public logException(\n error: unknown,\n {\n handled = true,\n attributes = {},\n timestamp = this._perf.getNowMillis(),\n handler = 'manual',\n }: LogExceptionOptions = {},\n ) {\n const validAttrs = this._validateAttributes(attributes);\n\n if (!handled) {\n this._userSessionManager.incrSessionPartCountForKey(\n KEY_MXL_UNHANDLED_EXCEPTIONS_COUNT,\n );\n }\n\n const type = error?.constructor?.name || typeof error;\n let errMessage = '';\n let errName = type;\n let errStack = '';\n let errCause = '';\n\n if (error instanceof Error) {\n errMessage = String(error.message || '').trim();\n errName = error.name || '';\n errStack = error.stack || '';\n errCause = error.cause ? 'present' : '';\n } else if (error && typeof error === 'object') {\n try {\n errMessage = JSON.stringify(error);\n } catch {\n errMessage = String(error).trim();\n }\n } else {\n errMessage = String(error).trim();\n }\n\n const {\n [KEY_REACT_COMPONENT_STACK]: reactComponentStack,\n ...attrsForLimiting\n } = validAttrs;\n\n const limited = this._limitManager.limitException(\n errMessage,\n attrsForLimiting,\n );\n if (limited === 'dropped') {\n return;\n }\n\n this._logger.emit({\n attributes: {\n ...limited.attributes,\n ...(reactComponentStack !== undefined\n ? { [KEY_REACT_COMPONENT_STACK]: String(reactComponentStack) }\n : {}),\n [KEY_MXL_TYPE]: MXL_TYPES.SystemException,\n [KEY_MXL_EXCEPTION_HANDLING]: MXLLogManager._exceptionHandlingType(\n handled,\n handler,\n ),\n [KEY_MXL_EXCEPTION_CAUSE]: errCause,\n [ATTR_EXCEPTION_TYPE]: type,\n ['exception.name']: errName,\n [ATTR_EXCEPTION_MESSAGE]: limited.message,\n [ATTR_EXCEPTION_STACKTRACE]: errStack,\n [KEY_MXL_JS_FILE_BUNDLE_IDS]: getJSFileBundleIDs(),\n [KEY_MXL_STATE]: getVisibilityState(this._visibilityDoc),\n [KEY_MXL_EXCEPTION_NUMBER]: getIncrementedCount(\n this._storage,\n MXL_EXCEPTION_NUMBER_STORAGE_KEY,\n this._diag,\n ),\n },\n body: limited.message,\n severityNumber: SeverityNumber.ERROR,\n severityText: 'ERROR',\n timestamp,\n });\n }\n\n public message(\n message: string,\n severity: LogSeverity,\n {\n attributes = {},\n includeStacktrace = true,\n stacktrace,\n }: LogMessageOptions = {},\n ) {\n if (typeof message !== 'string' || !message.trim()) {\n this._diag.warn('Message must be a non-empty string');\n return;\n }\n\n if (!['info', 'warning', 'error'].includes(severity)) {\n this._diag.warn('Severity must be info, warning, or error');\n return;\n }\n\n const validAttrs = this._validateAttributes(attributes);\n\n if (severity === 'error') {\n this._userSessionManager.incrSessionPartCountForKey(\n KEY_MXL_ERROR_LOG_COUNT,\n );\n }\n\n let stack = '';\n if (severity !== 'info') {\n if (typeof stacktrace === 'string') {\n stack = stacktrace;\n } else if (includeStacktrace) {\n stack = new Error().stack || '';\n }\n }\n\n this._logMessage({\n attributes: validAttrs,\n message: message.trim(),\n severity,\n stack,\n timestamp: this._perf.getNowMillis(),\n });\n }\n\n private _logMessage({\n message,\n severity,\n timestamp,\n attributes = {},\n stack,\n }: {\n message: string;\n severity: LogSeverity;\n timestamp: number;\n attributes?: Attributes;\n stack?: string;\n }) {\n const limitedLog = this._limitManager.limitLog(\n message,\n severity,\n attributes,\n );\n\n if (limitedLog === 'dropped') {\n return;\n }\n\n this._logger.emit({\n attributes: {\n ...limitedLog.attributes,\n [KEY_MXL_TYPE]: MXL_TYPES.SystemLog,\n ...(stack\n ? {\n [KEY_MXL_JS_EXCEPTION_STACKTRACE]: stack,\n [KEY_MXL_JS_FILE_BUNDLE_IDS]: getJSFileBundleIDs(),\n }\n : {}),\n [KEY_MXL_STATE]: getVisibilityState(this._visibilityDoc),\n },\n body: limitedLog.message,\n severityNumber: MXLLogManager._logSeverityToSeverityNumber(severity),\n severityText: severity.toUpperCase(),\n timestamp,\n });\n }\n\n private static _exceptionHandlingType(\n handled: boolean,\n handler: ExceptionHandlerType,\n ): string {\n if (handled) {\n return 'handled';\n }\n\n if (handler === 'global_exception') {\n return 'unhandled_error';\n }\n\n if (handler === 'promise_rejection') {\n return 'unhandled_rejection';\n }\n\n return 'unhandled';\n }\n}\n"],"mappings":"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"}
|
|
@@ -6,14 +6,14 @@ declare class MXLLogManager implements LogManager {
|
|
|
6
6
|
private readonly _diag;
|
|
7
7
|
private readonly _perf;
|
|
8
8
|
private readonly _logger;
|
|
9
|
-
private readonly
|
|
9
|
+
private readonly _userSessionManager;
|
|
10
10
|
private readonly _limitManager;
|
|
11
11
|
private readonly _visibilityDoc;
|
|
12
12
|
private readonly _storage;
|
|
13
13
|
constructor({
|
|
14
14
|
diag: diagParam,
|
|
15
15
|
perf,
|
|
16
|
-
|
|
16
|
+
userSessionManager,
|
|
17
17
|
limitManager,
|
|
18
18
|
loggerProvider: globalLoggerProviderOverride,
|
|
19
19
|
visibilityDoc,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MXLLogManager.d.cts","names":[],"sources":["../../../src/managers/MXLLogManager/MXLLogManager.ts"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"MXLLogManager.d.cts","names":[],"sources":["../../../src/managers/MXLLogManager/MXLLogManager.ts"],"mappings":";;;;cAkDa,aAAA,YAAyB,UAAA;EAAA,iBACnB,KAAA;EAAA,iBACA,KAAA;EAAA,iBACA,OAAA;EAAA,iBACA,mBAAA;EAAA,iBACA,aAAA;EAAA,iBACA,cAAA;EAAA,iBACA,QAAA;;IAGf,IAAA,EAAM,SAAA;IACN,IAAA;IACA,kBAAA;IACA,YAAA;IACA,cAAA,EAAgB,4BAAA;IAChB,aAAA;IACA;EAAA,GACC,iBAAA;EAAA,QAgBK,mBAAA;EAAA,eAQO,4BAAA;EAgBR,YAAA,CACL,KAAA;IAEE,OAAA;IACA,UAAA;IACA,SAAA;IACA;EAAA,IACC,mBAAA;EA2EE,OAAA,CACL,OAAA,UACA,QAAA,EAAU,WAAA;IAER,UAAA;IACA,iBAAA;IACA;EAAA,IACC,iBAAA;EAAA,QAsCG,WAAA;EAAA,eA0CO,sBAAA;AAAA"}
|
|
@@ -6,14 +6,14 @@ declare class MXLLogManager implements LogManager {
|
|
|
6
6
|
private readonly _diag;
|
|
7
7
|
private readonly _perf;
|
|
8
8
|
private readonly _logger;
|
|
9
|
-
private readonly
|
|
9
|
+
private readonly _userSessionManager;
|
|
10
10
|
private readonly _limitManager;
|
|
11
11
|
private readonly _visibilityDoc;
|
|
12
12
|
private readonly _storage;
|
|
13
13
|
constructor({
|
|
14
14
|
diag: diagParam,
|
|
15
15
|
perf,
|
|
16
|
-
|
|
16
|
+
userSessionManager,
|
|
17
17
|
limitManager,
|
|
18
18
|
loggerProvider: globalLoggerProviderOverride,
|
|
19
19
|
visibilityDoc,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MXLLogManager.d.ts","names":[],"sources":["../../../src/managers/MXLLogManager/MXLLogManager.ts"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"MXLLogManager.d.ts","names":[],"sources":["../../../src/managers/MXLLogManager/MXLLogManager.ts"],"mappings":";;;;cAkDa,aAAA,YAAyB,UAAA;EAAA,iBACnB,KAAA;EAAA,iBACA,KAAA;EAAA,iBACA,OAAA;EAAA,iBACA,mBAAA;EAAA,iBACA,aAAA;EAAA,iBACA,cAAA;EAAA,iBACA,QAAA;;IAGf,IAAA,EAAM,SAAA;IACN,IAAA;IACA,kBAAA;IACA,YAAA;IACA,cAAA,EAAgB,4BAAA;IAChB,aAAA;IACA;EAAA,GACC,iBAAA;EAAA,QAgBK,mBAAA;EAAA,eAQO,4BAAA;EAgBR,YAAA,CACL,KAAA;IAEE,OAAA;IACA,UAAA;IACA,SAAA;IACA;EAAA,IACC,mBAAA;EA2EE,OAAA,CACL,OAAA,UACA,QAAA,EAAU,WAAA;IAER,UAAA;IACA,iBAAA;IACA;EAAA,IACC,iBAAA;EAAA,QAsCG,WAAA;EAAA,eA0CO,sBAAA;AAAA"}
|
|
@@ -12,21 +12,21 @@ const MXL_EXCEPTION_NUMBER_STORAGE_KEY = "mxl_exception_number";
|
|
|
12
12
|
* GLOBAL_CONFIG._MXLFileBundleIDs is populated at runtime when each file is loaded,
|
|
13
13
|
* based on the contents injected by the mxl-web-cli.
|
|
14
14
|
*/
|
|
15
|
-
const getJSFileBundleIDs = () => JSON.stringify(GLOBAL_CONFIG._MXLFileBundleIDs ||
|
|
15
|
+
const getJSFileBundleIDs = () => JSON.stringify(GLOBAL_CONFIG._MXLFileBundleIDs || {});
|
|
16
16
|
var MXLLogManager = class MXLLogManager {
|
|
17
17
|
_diag;
|
|
18
18
|
_perf;
|
|
19
19
|
_logger;
|
|
20
|
-
|
|
20
|
+
_userSessionManager;
|
|
21
21
|
_limitManager;
|
|
22
22
|
_visibilityDoc;
|
|
23
23
|
_storage;
|
|
24
|
-
constructor({ diag: diagParam, perf,
|
|
24
|
+
constructor({ diag: diagParam, perf, userSessionManager, limitManager, loggerProvider: globalLoggerProviderOverride, visibilityDoc = window.document, storage = window.localStorage }) {
|
|
25
25
|
const loggerProvider = globalLoggerProviderOverride ?? logs;
|
|
26
26
|
this._diag = diagParam ?? diag.createComponentLogger({ namespace: "MXLLogManager" });
|
|
27
27
|
this._perf = perf ?? new OTelPerformanceManager();
|
|
28
28
|
this._logger = loggerProvider.getLogger("mxl-web-sdk-logs");
|
|
29
|
-
this.
|
|
29
|
+
this._userSessionManager = userSessionManager;
|
|
30
30
|
this._limitManager = limitManager;
|
|
31
31
|
this._visibilityDoc = visibilityDoc;
|
|
32
32
|
this._storage = storage;
|
|
@@ -47,7 +47,7 @@ var MXLLogManager = class MXLLogManager {
|
|
|
47
47
|
}
|
|
48
48
|
logException(error, { handled = true, attributes = {}, timestamp = this._perf.getNowMillis(), handler = "manual" } = {}) {
|
|
49
49
|
const validAttrs = this._validateAttributes(attributes);
|
|
50
|
-
if (!handled) this.
|
|
50
|
+
if (!handled) this._userSessionManager.incrSessionPartCountForKey(KEY_MXL_UNHANDLED_EXCEPTIONS_COUNT);
|
|
51
51
|
const type = error?.constructor?.name || typeof error;
|
|
52
52
|
let errMessage = "";
|
|
53
53
|
let errName = type;
|
|
@@ -68,10 +68,6 @@ var MXLLogManager = class MXLLogManager {
|
|
|
68
68
|
const limited = this._limitManager.limitException(errMessage, attrsForLimiting);
|
|
69
69
|
if (limited === "dropped") return;
|
|
70
70
|
this._logger.emit({
|
|
71
|
-
timestamp,
|
|
72
|
-
severityNumber: SeverityNumber.ERROR,
|
|
73
|
-
severityText: "ERROR",
|
|
74
|
-
body: limited.message,
|
|
75
71
|
attributes: {
|
|
76
72
|
...limited.attributes,
|
|
77
73
|
...reactComponentStack !== void 0 ? { [KEY_REACT_COMPONENT_STACK]: String(reactComponentStack) } : {},
|
|
@@ -85,7 +81,11 @@ var MXLLogManager = class MXLLogManager {
|
|
|
85
81
|
[KEY_MXL_JS_FILE_BUNDLE_IDS]: getJSFileBundleIDs(),
|
|
86
82
|
[KEY_MXL_STATE]: getVisibilityState(this._visibilityDoc),
|
|
87
83
|
[KEY_MXL_EXCEPTION_NUMBER]: getIncrementedCount(this._storage, MXL_EXCEPTION_NUMBER_STORAGE_KEY, this._diag)
|
|
88
|
-
}
|
|
84
|
+
},
|
|
85
|
+
body: limited.message,
|
|
86
|
+
severityNumber: SeverityNumber.ERROR,
|
|
87
|
+
severityText: "ERROR",
|
|
88
|
+
timestamp
|
|
89
89
|
});
|
|
90
90
|
}
|
|
91
91
|
message(message, severity, { attributes = {}, includeStacktrace = true, stacktrace } = {}) {
|
|
@@ -102,28 +102,24 @@ var MXLLogManager = class MXLLogManager {
|
|
|
102
102
|
return;
|
|
103
103
|
}
|
|
104
104
|
const validAttrs = this._validateAttributes(attributes);
|
|
105
|
-
if (severity === "error") this.
|
|
105
|
+
if (severity === "error") this._userSessionManager.incrSessionPartCountForKey(KEY_MXL_ERROR_LOG_COUNT);
|
|
106
106
|
let stack = "";
|
|
107
107
|
if (severity !== "info") {
|
|
108
108
|
if (typeof stacktrace === "string") stack = stacktrace;
|
|
109
109
|
else if (includeStacktrace) stack = (/* @__PURE__ */ new Error()).stack || "";
|
|
110
110
|
}
|
|
111
111
|
this._logMessage({
|
|
112
|
+
attributes: validAttrs,
|
|
112
113
|
message: message.trim(),
|
|
113
114
|
severity,
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
stack
|
|
115
|
+
stack,
|
|
116
|
+
timestamp: this._perf.getNowMillis()
|
|
117
117
|
});
|
|
118
118
|
}
|
|
119
119
|
_logMessage({ message, severity, timestamp, attributes = {}, stack }) {
|
|
120
120
|
const limitedLog = this._limitManager.limitLog(message, severity, attributes);
|
|
121
121
|
if (limitedLog === "dropped") return;
|
|
122
122
|
this._logger.emit({
|
|
123
|
-
timestamp,
|
|
124
|
-
severityNumber: MXLLogManager._logSeverityToSeverityNumber(severity),
|
|
125
|
-
severityText: severity.toUpperCase(),
|
|
126
|
-
body: limitedLog.message,
|
|
127
123
|
attributes: {
|
|
128
124
|
...limitedLog.attributes,
|
|
129
125
|
[KEY_MXL_TYPE]: "sys.log",
|
|
@@ -132,7 +128,11 @@ var MXLLogManager = class MXLLogManager {
|
|
|
132
128
|
[KEY_MXL_JS_FILE_BUNDLE_IDS]: getJSFileBundleIDs()
|
|
133
129
|
} : {},
|
|
134
130
|
[KEY_MXL_STATE]: getVisibilityState(this._visibilityDoc)
|
|
135
|
-
}
|
|
131
|
+
},
|
|
132
|
+
body: limitedLog.message,
|
|
133
|
+
severityNumber: MXLLogManager._logSeverityToSeverityNumber(severity),
|
|
134
|
+
severityText: severity.toUpperCase(),
|
|
135
|
+
timestamp
|
|
136
136
|
});
|
|
137
137
|
}
|
|
138
138
|
static _exceptionHandlingType(handled, handler) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MXLLogManager.js","names":[],"sources":["../../../src/managers/MXLLogManager/MXLLogManager.ts"],"sourcesContent":["import type { Attributes, DiagLogger } from '@opentelemetry/api';\nimport { diag } from '@opentelemetry/api';\nimport type { Logger } from '@opentelemetry/api-logs';\nimport { logs, SeverityNumber } from '@opentelemetry/api-logs';\nimport {\n ATTR_EXCEPTION_MESSAGE,\n ATTR_EXCEPTION_STACKTRACE,\n ATTR_EXCEPTION_TYPE,\n} from '@opentelemetry/semantic-conventions';\nimport type { LogManager, LogSeverity } from '../../api-logs';\nimport type {\n LogExceptionOptions,\n LogMessageOptions,\n} from '../../api-logs/manager';\nimport type { ExceptionHandlerType } from '../../api-logs/manager/types';\nimport type { VisibilityStateDocument } from '../../common';\nimport {\n KEY_MXL_EXCEPTION_HANDLING,\n KEY_MXL_EXCEPTION_NUMBER,\n KEY_MXL_JS_EXCEPTION_STACKTRACE,\n KEY_MXL_STATE,\n KEY_MXL_TYPE,\n MXL_TYPES,\n} from '../../constants';\nimport {\n KEY_MXL_ERROR_LOG_COUNT,\n KEY_MXL_EXCEPTION_CAUSE,\n KEY_MXL_JS_FILE_BUNDLE_IDS,\n KEY_MXL_UNHANDLED_EXCEPTIONS_COUNT,\n KEY_REACT_COMPONENT_STACK,\n} from '../../constants/attributes';\nimport type { PerformanceManager } from '../../utils';\nimport {\n GLOBAL_CONFIG,\n getIncrementedCount,\n getVisibilityState,\n OTelPerformanceManager,\n} from '../../utils';\nimport type { LimitManagerInternal } from '../MXLLimitManager';\nimport type { SpanSessionManagerInternal } from '../MXLSpanSessionManager';\nimport type { MXLLogManagerArgs } from './types';\n\nconst MXL_EXCEPTION_NUMBER_STORAGE_KEY = 'mxl_exception_number';\n/**\n * GLOBAL_CONFIG._MXLFileBundleIDs is populated at runtime when each file is loaded,\n * based on the contents injected by the mxl-web-cli.\n */\nconst getJSFileBundleIDs = () =>\n JSON.stringify(\n GLOBAL_CONFIG._MXLFileBundleIDs || GLOBAL_CONFIG._MXLFileBundleIDs || {},\n );\n\nexport class MXLLogManager implements LogManager {\n private readonly _diag: DiagLogger;\n private readonly _perf: PerformanceManager;\n private readonly _logger: Logger;\n private readonly _spanSessionManager: SpanSessionManagerInternal;\n private readonly _limitManager: LimitManagerInternal;\n private readonly _visibilityDoc: VisibilityStateDocument;\n private readonly _storage: Storage;\n\n public constructor({\n diag: diagParam,\n perf,\n spanSessionManager,\n limitManager,\n loggerProvider: globalLoggerProviderOverride,\n visibilityDoc = window.document,\n storage = window.localStorage,\n }: MXLLogManagerArgs) {\n const loggerProvider = globalLoggerProviderOverride ?? logs;\n\n this._diag =\n diagParam ??\n diag.createComponentLogger({\n namespace: 'MXLLogManager',\n });\n this._perf = perf ?? new OTelPerformanceManager();\n this._logger = loggerProvider.getLogger('mxl-web-sdk-logs');\n this._spanSessionManager = spanSessionManager;\n this._limitManager = limitManager;\n this._visibilityDoc = visibilityDoc;\n this._storage = storage;\n }\n\n private _validateAttributes(attributes: unknown): Attributes {\n if (Object.prototype.toString.call(attributes) !== '[object Object]') {\n this._diag.warn('attributes must be a plain object', attributes);\n return {};\n }\n return attributes as Attributes;\n }\n\n private static _logSeverityToSeverityNumber(\n severity: LogSeverity,\n ): SeverityNumber {\n switch (severity) {\n case 'info':\n return SeverityNumber.INFO;\n case 'warning':\n return SeverityNumber.WARN;\n default:\n return SeverityNumber.ERROR;\n }\n }\n\n public logException(\n error: unknown,\n {\n handled = true,\n attributes = {},\n timestamp = this._perf.getNowMillis(),\n handler = 'manual',\n }: LogExceptionOptions = {},\n ) {\n const validAttrs = this._validateAttributes(attributes);\n\n if (!handled) {\n this._spanSessionManager.incrSessionCountForKey(\n KEY_MXL_UNHANDLED_EXCEPTIONS_COUNT,\n );\n }\n\n const type = error?.constructor?.name || typeof error;\n let errMessage = '';\n let errName = type;\n let errStack = '';\n let errCause = '';\n\n if (error instanceof Error) {\n errMessage = String(error.message || '').trim();\n errName = error.name || '';\n errStack = error.stack || '';\n errCause = error.cause ? 'present' : '';\n } else if (error && typeof error === 'object') {\n try {\n errMessage = JSON.stringify(error);\n } catch {\n errMessage = String(error).trim();\n }\n } else {\n errMessage = String(error).trim();\n }\n\n const {\n [KEY_REACT_COMPONENT_STACK]: reactComponentStack,\n ...attrsForLimiting\n } = validAttrs;\n\n const limited = this._limitManager.limitException(\n errMessage,\n attrsForLimiting,\n );\n if (limited === 'dropped') {\n return;\n }\n\n this._logger.emit({\n timestamp,\n severityNumber: SeverityNumber.ERROR,\n severityText: 'ERROR',\n body: limited.message,\n attributes: {\n ...limited.attributes,\n ...(reactComponentStack !== undefined\n ? { [KEY_REACT_COMPONENT_STACK]: String(reactComponentStack) }\n : {}),\n [KEY_MXL_TYPE]: MXL_TYPES.SystemException,\n [KEY_MXL_EXCEPTION_HANDLING]: MXLLogManager._exceptionHandlingType(\n handled,\n handler,\n ),\n [KEY_MXL_EXCEPTION_CAUSE]: errCause,\n [ATTR_EXCEPTION_TYPE]: type,\n ['exception.name']: errName,\n [ATTR_EXCEPTION_MESSAGE]: limited.message,\n [ATTR_EXCEPTION_STACKTRACE]: errStack,\n [KEY_MXL_JS_FILE_BUNDLE_IDS]: getJSFileBundleIDs(),\n [KEY_MXL_STATE]: getVisibilityState(this._visibilityDoc),\n [KEY_MXL_EXCEPTION_NUMBER]: getIncrementedCount(\n this._storage,\n MXL_EXCEPTION_NUMBER_STORAGE_KEY,\n this._diag,\n ),\n },\n });\n }\n\n public message(\n message: string,\n severity: LogSeverity,\n {\n attributes = {},\n includeStacktrace = true,\n stacktrace,\n }: LogMessageOptions = {},\n ) {\n if (typeof message !== 'string' || !message.trim()) {\n this._diag.warn('Message must be a non-empty string');\n return;\n }\n\n if (!['info', 'warning', 'error'].includes(severity)) {\n this._diag.warn('Severity must be info, warning, or error');\n return;\n }\n\n const validAttrs = this._validateAttributes(attributes);\n\n if (severity === 'error') {\n this._spanSessionManager.incrSessionCountForKey(KEY_MXL_ERROR_LOG_COUNT);\n }\n\n let stack = '';\n if (severity !== 'info') {\n if (typeof stacktrace === 'string') {\n stack = stacktrace;\n } else if (includeStacktrace) {\n stack = new Error().stack || '';\n }\n }\n\n this._logMessage({\n message: message.trim(),\n severity,\n timestamp: this._perf.getNowMillis(),\n attributes: validAttrs,\n stack,\n });\n }\n\n private _logMessage({\n message,\n severity,\n timestamp,\n attributes = {},\n stack,\n }: {\n message: string;\n severity: LogSeverity;\n timestamp: number;\n attributes?: Attributes;\n stack?: string;\n }) {\n const limitedLog = this._limitManager.limitLog(\n message,\n severity,\n attributes,\n );\n\n if (limitedLog === 'dropped') {\n return;\n }\n\n this._logger.emit({\n timestamp,\n severityNumber: MXLLogManager._logSeverityToSeverityNumber(severity),\n severityText: severity.toUpperCase(),\n body: limitedLog.message,\n attributes: {\n ...limitedLog.attributes,\n [KEY_MXL_TYPE]: MXL_TYPES.SystemLog,\n ...(stack\n ? {\n [KEY_MXL_JS_EXCEPTION_STACKTRACE]: stack,\n [KEY_MXL_JS_FILE_BUNDLE_IDS]: getJSFileBundleIDs(),\n }\n : {}),\n [KEY_MXL_STATE]: getVisibilityState(this._visibilityDoc),\n },\n });\n }\n\n private static _exceptionHandlingType(\n handled: boolean,\n handler: ExceptionHandlerType,\n ): string {\n if (handled) {\n return 'handled';\n }\n\n if (handler === 'global_exception') {\n return 'unhandled_error';\n }\n\n if (handler === 'promise_rejection') {\n return 'unhandled_rejection';\n }\n\n return 'unhandled';\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MXLLogManager.js","names":[],"sources":["../../../src/managers/MXLLogManager/MXLLogManager.ts"],"sourcesContent":["import type { Attributes, DiagLogger } from '@opentelemetry/api';\nimport { diag } from '@opentelemetry/api';\nimport type { Logger } from '@opentelemetry/api-logs';\nimport { SeverityNumber, logs } from '@opentelemetry/api-logs';\nimport {\n ATTR_EXCEPTION_MESSAGE,\n ATTR_EXCEPTION_STACKTRACE,\n ATTR_EXCEPTION_TYPE,\n} from '@opentelemetry/semantic-conventions';\nimport type { LogManager, LogSeverity } from '../../api-logs';\nimport type {\n LogExceptionOptions,\n LogMessageOptions,\n} from '../../api-logs/manager';\nimport type { ExceptionHandlerType } from '../../api-logs/manager/types';\nimport type { VisibilityStateDocument } from '../../common';\nimport {\n KEY_MXL_EXCEPTION_HANDLING,\n KEY_MXL_EXCEPTION_NUMBER,\n KEY_MXL_JS_EXCEPTION_STACKTRACE,\n KEY_MXL_STATE,\n KEY_MXL_TYPE,\n MXL_TYPES,\n} from '../../constants';\nimport {\n KEY_MXL_ERROR_LOG_COUNT,\n KEY_MXL_EXCEPTION_CAUSE,\n KEY_MXL_JS_FILE_BUNDLE_IDS,\n KEY_MXL_UNHANDLED_EXCEPTIONS_COUNT,\n KEY_REACT_COMPONENT_STACK,\n} from '../../constants/attributes';\nimport type { PerformanceManager } from '../../utils';\nimport {\n GLOBAL_CONFIG,\n OTelPerformanceManager,\n getIncrementedCount,\n getVisibilityState,\n} from '../../utils';\nimport type { LimitManagerInternal } from '../MXLLimitManager';\nimport type { UserSessionManagerInternal } from '../MXLUserSessionManager';\nimport type { MXLLogManagerArgs } from './types';\n\nconst MXL_EXCEPTION_NUMBER_STORAGE_KEY = 'mxl_exception_number';\n/**\n * GLOBAL_CONFIG._MXLFileBundleIDs is populated at runtime when each file is loaded,\n * based on the contents injected by the mxl-web-cli.\n */\nconst getJSFileBundleIDs = () =>\n JSON.stringify(GLOBAL_CONFIG._MXLFileBundleIDs || {});\n\nexport class MXLLogManager implements LogManager {\n private readonly _diag: DiagLogger;\n private readonly _perf: PerformanceManager;\n private readonly _logger: Logger;\n private readonly _userSessionManager: UserSessionManagerInternal;\n private readonly _limitManager: LimitManagerInternal;\n private readonly _visibilityDoc: VisibilityStateDocument;\n private readonly _storage: Storage;\n\n public constructor({\n diag: diagParam,\n perf,\n userSessionManager,\n limitManager,\n loggerProvider: globalLoggerProviderOverride,\n visibilityDoc = window.document,\n storage = window.localStorage,\n }: MXLLogManagerArgs) {\n const loggerProvider = globalLoggerProviderOverride ?? logs;\n\n this._diag =\n diagParam ??\n diag.createComponentLogger({\n namespace: 'MXLLogManager',\n });\n this._perf = perf ?? new OTelPerformanceManager();\n this._logger = loggerProvider.getLogger('mxl-web-sdk-logs');\n this._userSessionManager = userSessionManager;\n this._limitManager = limitManager;\n this._visibilityDoc = visibilityDoc;\n this._storage = storage;\n }\n\n private _validateAttributes(attributes: unknown): Attributes {\n if (Object.prototype.toString.call(attributes) !== '[object Object]') {\n this._diag.warn('attributes must be a plain object', attributes);\n return {};\n }\n return attributes as Attributes;\n }\n\n private static _logSeverityToSeverityNumber(\n severity: LogSeverity,\n ): SeverityNumber {\n switch (severity) {\n case 'info': {\n return SeverityNumber.INFO;\n }\n case 'warning': {\n return SeverityNumber.WARN;\n }\n default: {\n return SeverityNumber.ERROR;\n }\n }\n }\n\n public logException(\n error: unknown,\n {\n handled = true,\n attributes = {},\n timestamp = this._perf.getNowMillis(),\n handler = 'manual',\n }: LogExceptionOptions = {},\n ) {\n const validAttrs = this._validateAttributes(attributes);\n\n if (!handled) {\n this._userSessionManager.incrSessionPartCountForKey(\n KEY_MXL_UNHANDLED_EXCEPTIONS_COUNT,\n );\n }\n\n const type = error?.constructor?.name || typeof error;\n let errMessage = '';\n let errName = type;\n let errStack = '';\n let errCause = '';\n\n if (error instanceof Error) {\n errMessage = String(error.message || '').trim();\n errName = error.name || '';\n errStack = error.stack || '';\n errCause = error.cause ? 'present' : '';\n } else if (error && typeof error === 'object') {\n try {\n errMessage = JSON.stringify(error);\n } catch {\n errMessage = String(error).trim();\n }\n } else {\n errMessage = String(error).trim();\n }\n\n const {\n [KEY_REACT_COMPONENT_STACK]: reactComponentStack,\n ...attrsForLimiting\n } = validAttrs;\n\n const limited = this._limitManager.limitException(\n errMessage,\n attrsForLimiting,\n );\n if (limited === 'dropped') {\n return;\n }\n\n this._logger.emit({\n attributes: {\n ...limited.attributes,\n ...(reactComponentStack !== undefined\n ? { [KEY_REACT_COMPONENT_STACK]: String(reactComponentStack) }\n : {}),\n [KEY_MXL_TYPE]: MXL_TYPES.SystemException,\n [KEY_MXL_EXCEPTION_HANDLING]: MXLLogManager._exceptionHandlingType(\n handled,\n handler,\n ),\n [KEY_MXL_EXCEPTION_CAUSE]: errCause,\n [ATTR_EXCEPTION_TYPE]: type,\n ['exception.name']: errName,\n [ATTR_EXCEPTION_MESSAGE]: limited.message,\n [ATTR_EXCEPTION_STACKTRACE]: errStack,\n [KEY_MXL_JS_FILE_BUNDLE_IDS]: getJSFileBundleIDs(),\n [KEY_MXL_STATE]: getVisibilityState(this._visibilityDoc),\n [KEY_MXL_EXCEPTION_NUMBER]: getIncrementedCount(\n this._storage,\n MXL_EXCEPTION_NUMBER_STORAGE_KEY,\n this._diag,\n ),\n },\n body: limited.message,\n severityNumber: SeverityNumber.ERROR,\n severityText: 'ERROR',\n timestamp,\n });\n }\n\n public message(\n message: string,\n severity: LogSeverity,\n {\n attributes = {},\n includeStacktrace = true,\n stacktrace,\n }: LogMessageOptions = {},\n ) {\n if (typeof message !== 'string' || !message.trim()) {\n this._diag.warn('Message must be a non-empty string');\n return;\n }\n\n if (!['info', 'warning', 'error'].includes(severity)) {\n this._diag.warn('Severity must be info, warning, or error');\n return;\n }\n\n const validAttrs = this._validateAttributes(attributes);\n\n if (severity === 'error') {\n this._userSessionManager.incrSessionPartCountForKey(\n KEY_MXL_ERROR_LOG_COUNT,\n );\n }\n\n let stack = '';\n if (severity !== 'info') {\n if (typeof stacktrace === 'string') {\n stack = stacktrace;\n } else if (includeStacktrace) {\n stack = new Error().stack || '';\n }\n }\n\n this._logMessage({\n attributes: validAttrs,\n message: message.trim(),\n severity,\n stack,\n timestamp: this._perf.getNowMillis(),\n });\n }\n\n private _logMessage({\n message,\n severity,\n timestamp,\n attributes = {},\n stack,\n }: {\n message: string;\n severity: LogSeverity;\n timestamp: number;\n attributes?: Attributes;\n stack?: string;\n }) {\n const limitedLog = this._limitManager.limitLog(\n message,\n severity,\n attributes,\n );\n\n if (limitedLog === 'dropped') {\n return;\n }\n\n this._logger.emit({\n attributes: {\n ...limitedLog.attributes,\n [KEY_MXL_TYPE]: MXL_TYPES.SystemLog,\n ...(stack\n ? {\n [KEY_MXL_JS_EXCEPTION_STACKTRACE]: stack,\n [KEY_MXL_JS_FILE_BUNDLE_IDS]: getJSFileBundleIDs(),\n }\n : {}),\n [KEY_MXL_STATE]: getVisibilityState(this._visibilityDoc),\n },\n body: limitedLog.message,\n severityNumber: MXLLogManager._logSeverityToSeverityNumber(severity),\n severityText: severity.toUpperCase(),\n timestamp,\n });\n }\n\n private static _exceptionHandlingType(\n handled: boolean,\n handler: ExceptionHandlerType,\n ): string {\n if (handled) {\n return 'handled';\n }\n\n if (handler === 'global_exception') {\n return 'unhandled_error';\n }\n\n if (handler === 'promise_rejection') {\n return 'unhandled_rejection';\n }\n\n return 'unhandled';\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { VisibilityStateDocument } from "../../common/types.cjs";
|
|
2
2
|
import { LimitManagerInternal } from "../MXLLimitManager/types.cjs";
|
|
3
|
-
import { SpanSessionManagerInternal } from "../MXLSpanSessionManager/types.cjs";
|
|
4
3
|
import { PerformanceManager } from "../../utils/PerformanceManager/types.cjs";
|
|
4
|
+
import { UserSessionManagerInternal } from "../MXLUserSessionManager/types.cjs";
|
|
5
5
|
import { DiagLogger } from "@opentelemetry/api";
|
|
6
6
|
import { LoggerProvider } from "@opentelemetry/sdk-logs";
|
|
7
7
|
|
|
@@ -9,7 +9,7 @@ import { LoggerProvider } from "@opentelemetry/sdk-logs";
|
|
|
9
9
|
interface MXLLogManagerArgs {
|
|
10
10
|
diag?: DiagLogger;
|
|
11
11
|
perf?: PerformanceManager;
|
|
12
|
-
|
|
12
|
+
userSessionManager: UserSessionManagerInternal;
|
|
13
13
|
limitManager: LimitManagerInternal;
|
|
14
14
|
loggerProvider?: LoggerProvider;
|
|
15
15
|
visibilityDoc?: VisibilityStateDocument;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { VisibilityStateDocument } from "../../common/types.js";
|
|
2
2
|
import { LimitManagerInternal } from "../MXLLimitManager/types.js";
|
|
3
|
-
import { SpanSessionManagerInternal } from "../MXLSpanSessionManager/types.js";
|
|
4
3
|
import { PerformanceManager } from "../../utils/PerformanceManager/types.js";
|
|
4
|
+
import { UserSessionManagerInternal } from "../MXLUserSessionManager/types.js";
|
|
5
5
|
import { DiagLogger } from "@opentelemetry/api";
|
|
6
6
|
import { LoggerProvider } from "@opentelemetry/sdk-logs";
|
|
7
7
|
|
|
@@ -9,7 +9,7 @@ import { LoggerProvider } from "@opentelemetry/sdk-logs";
|
|
|
9
9
|
interface MXLLogManagerArgs {
|
|
10
10
|
diag?: DiagLogger;
|
|
11
11
|
perf?: PerformanceManager;
|
|
12
|
-
|
|
12
|
+
userSessionManager: UserSessionManagerInternal;
|
|
13
13
|
limitManager: LimitManagerInternal;
|
|
14
14
|
loggerProvider?: LoggerProvider;
|
|
15
15
|
visibilityDoc?: VisibilityStateDocument;
|
|
@@ -16,9 +16,7 @@ var MXLPageManager = class {
|
|
|
16
16
|
setPageLabel = (label) => {
|
|
17
17
|
this._pageLabel = label;
|
|
18
18
|
};
|
|
19
|
-
getPageLabel = () =>
|
|
20
|
-
return this._pageLabel || (!this._useDocumentTitleAsPageLabel || !this._titleDocument ? null : this._titleDocument.title);
|
|
21
|
-
};
|
|
19
|
+
getPageLabel = () => this._pageLabel || (!this._useDocumentTitleAsPageLabel || !this._titleDocument ? null : this._titleDocument.title);
|
|
22
20
|
setCurrentRoute = (route) => {
|
|
23
21
|
if (!this._currentRoute || this._currentRoute.url !== route.url) this._currentPageId = require_utils_generateUUID.generateUUID();
|
|
24
22
|
this._currentRoute = route;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MXLPageManager.cjs","names":["generateUUID"],"sources":["../../../src/managers/MXLPageManager/MXLPageManager.ts"],"sourcesContent":["import type { PageManager, Route } from '../../api-page';\nimport type { TitleDocument } from '../../common';\nimport { generateUUID } from '../../utils';\nimport type { MXLPageManagerArgs } from './types';\n\nexport class MXLPageManager implements PageManager {\n private _currentRoute: Route | null = null;\n private _currentPageId: string | null = null;\n private _pageLabel: string | null = null;\n private readonly _titleDocument: TitleDocument | undefined;\n private readonly _useDocumentTitleAsPageLabel: boolean;\n\n public constructor({\n useDocumentTitleAsPageLabel = true,\n titleDocument = window.document,\n }: MXLPageManagerArgs = {}) {\n this._useDocumentTitleAsPageLabel = useDocumentTitleAsPageLabel;\n this._titleDocument = titleDocument;\n }\n\n public getCurrentPageId = (): string | null => this._currentPageId;\n\n public getCurrentRoute = () => this._currentRoute;\n\n public setPageLabel = (label: string): void => {\n this._pageLabel = label;\n };\n\n public getPageLabel = (): string | null
|
|
1
|
+
{"version":3,"file":"MXLPageManager.cjs","names":["generateUUID"],"sources":["../../../src/managers/MXLPageManager/MXLPageManager.ts"],"sourcesContent":["import type { PageManager, Route } from '../../api-page';\nimport type { TitleDocument } from '../../common';\nimport { generateUUID } from '../../utils';\nimport type { MXLPageManagerArgs } from './types';\n\nexport class MXLPageManager implements PageManager {\n private _currentRoute: Route | null = null;\n private _currentPageId: string | null = null;\n private _pageLabel: string | null = null;\n private readonly _titleDocument: TitleDocument | undefined;\n private readonly _useDocumentTitleAsPageLabel: boolean;\n\n public constructor({\n useDocumentTitleAsPageLabel = true,\n titleDocument = window.document,\n }: MXLPageManagerArgs = {}) {\n this._useDocumentTitleAsPageLabel = useDocumentTitleAsPageLabel;\n this._titleDocument = titleDocument;\n }\n\n public getCurrentPageId = (): string | null => this._currentPageId;\n\n public getCurrentRoute = () => this._currentRoute;\n\n public setPageLabel = (label: string): void => {\n this._pageLabel = label;\n };\n\n public getPageLabel = (): string | null =>\n this._pageLabel ||\n (!this._useDocumentTitleAsPageLabel || !this._titleDocument\n ? null\n : this._titleDocument.title);\n\n public setCurrentRoute = (route: Route) => {\n if (!this._currentRoute || this._currentRoute.url !== route.url) {\n this._currentPageId = generateUUID();\n }\n\n this._currentRoute = route;\n\n if (route.label) {\n this._pageLabel = route.label;\n } else {\n this._pageLabel = null;\n }\n };\n\n public clearCurrentRoute = () => {\n this._currentRoute = null;\n this._currentPageId = null;\n this._pageLabel = null;\n };\n}\n"],"mappings":";;;AAKA,IAAa,iBAAb,MAAmD;CACjD,gBAAsC;CACtC,iBAAwC;CACxC,aAAoC;CACpC;CACA;CAEA,YAAmB,EACjB,8BAA8B,MAC9B,gBAAgB,OAAO,aACD,EAAE,EAAE;AAC1B,OAAK,+BAA+B;AACpC,OAAK,iBAAiB;;CAGxB,yBAA+C,KAAK;CAEpD,wBAA+B,KAAK;CAEpC,gBAAuB,UAAwB;AAC7C,OAAK,aAAa;;CAGpB,qBACE,KAAK,eACJ,CAAC,KAAK,gCAAgC,CAAC,KAAK,iBACzC,OACA,KAAK,eAAe;CAE1B,mBAA0B,UAAiB;AACzC,MAAI,CAAC,KAAK,iBAAiB,KAAK,cAAc,QAAQ,MAAM,IAC1D,MAAK,iBAAiBA,2BAAAA,cAAc;AAGtC,OAAK,gBAAgB;AAErB,MAAI,MAAM,MACR,MAAK,aAAa,MAAM;MAExB,MAAK,aAAa;;CAItB,0BAAiC;AAC/B,OAAK,gBAAgB;AACrB,OAAK,iBAAiB;AACtB,OAAK,aAAa"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MXLPageManager.d.cts","names":[],"sources":["../../../src/managers/MXLPageManager/MXLPageManager.ts"],"mappings":";;;;cAKa,cAAA,YAA0B,WAAA;EAAA,QAC7B,aAAA;EAAA,QACA,cAAA;EAAA,QACA,UAAA;EAAA,iBACS,cAAA;EAAA,iBACA,4BAAA;;IAGf,2BAAA;IACA;EAAA,IACC,kBAAA;EAKI,gBAAA;EAEA,eAAA,QAAe,KAAA;EAEf,YAAA,GAAgB,KAAA;EAIhB,YAAA;
|
|
1
|
+
{"version":3,"file":"MXLPageManager.d.cts","names":[],"sources":["../../../src/managers/MXLPageManager/MXLPageManager.ts"],"mappings":";;;;cAKa,cAAA,YAA0B,WAAA;EAAA,QAC7B,aAAA;EAAA,QACA,cAAA;EAAA,QACA,UAAA;EAAA,iBACS,cAAA;EAAA,iBACA,4BAAA;;IAGf,2BAAA;IACA;EAAA,IACC,kBAAA;EAKI,gBAAA;EAEA,eAAA,QAAe,KAAA;EAEf,YAAA,GAAgB,KAAA;EAIhB,YAAA;EAMA,eAAA,GAAmB,KAAA,EAAO,KAAA;EAc1B,iBAAA;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MXLPageManager.d.ts","names":[],"sources":["../../../src/managers/MXLPageManager/MXLPageManager.ts"],"mappings":";;;;cAKa,cAAA,YAA0B,WAAA;EAAA,QAC7B,aAAA;EAAA,QACA,cAAA;EAAA,QACA,UAAA;EAAA,iBACS,cAAA;EAAA,iBACA,4BAAA;;IAGf,2BAAA;IACA;EAAA,IACC,kBAAA;EAKI,gBAAA;EAEA,eAAA,QAAe,KAAA;EAEf,YAAA,GAAgB,KAAA;EAIhB,YAAA;
|
|
1
|
+
{"version":3,"file":"MXLPageManager.d.ts","names":[],"sources":["../../../src/managers/MXLPageManager/MXLPageManager.ts"],"mappings":";;;;cAKa,cAAA,YAA0B,WAAA;EAAA,QAC7B,aAAA;EAAA,QACA,cAAA;EAAA,QACA,UAAA;EAAA,iBACS,cAAA;EAAA,iBACA,4BAAA;;IAGf,2BAAA;IACA;EAAA,IACC,kBAAA;EAKI,gBAAA;EAEA,eAAA,QAAe,KAAA;EAEf,YAAA,GAAgB,KAAA;EAIhB,YAAA;EAMA,eAAA,GAAmB,KAAA,EAAO,KAAA;EAc1B,iBAAA;AAAA"}
|
|
@@ -15,9 +15,7 @@ var MXLPageManager = class {
|
|
|
15
15
|
setPageLabel = (label) => {
|
|
16
16
|
this._pageLabel = label;
|
|
17
17
|
};
|
|
18
|
-
getPageLabel = () =>
|
|
19
|
-
return this._pageLabel || (!this._useDocumentTitleAsPageLabel || !this._titleDocument ? null : this._titleDocument.title);
|
|
20
|
-
};
|
|
18
|
+
getPageLabel = () => this._pageLabel || (!this._useDocumentTitleAsPageLabel || !this._titleDocument ? null : this._titleDocument.title);
|
|
21
19
|
setCurrentRoute = (route) => {
|
|
22
20
|
if (!this._currentRoute || this._currentRoute.url !== route.url) this._currentPageId = generateUUID();
|
|
23
21
|
this._currentRoute = route;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MXLPageManager.js","names":[],"sources":["../../../src/managers/MXLPageManager/MXLPageManager.ts"],"sourcesContent":["import type { PageManager, Route } from '../../api-page';\nimport type { TitleDocument } from '../../common';\nimport { generateUUID } from '../../utils';\nimport type { MXLPageManagerArgs } from './types';\n\nexport class MXLPageManager implements PageManager {\n private _currentRoute: Route | null = null;\n private _currentPageId: string | null = null;\n private _pageLabel: string | null = null;\n private readonly _titleDocument: TitleDocument | undefined;\n private readonly _useDocumentTitleAsPageLabel: boolean;\n\n public constructor({\n useDocumentTitleAsPageLabel = true,\n titleDocument = window.document,\n }: MXLPageManagerArgs = {}) {\n this._useDocumentTitleAsPageLabel = useDocumentTitleAsPageLabel;\n this._titleDocument = titleDocument;\n }\n\n public getCurrentPageId = (): string | null => this._currentPageId;\n\n public getCurrentRoute = () => this._currentRoute;\n\n public setPageLabel = (label: string): void => {\n this._pageLabel = label;\n };\n\n public getPageLabel = (): string | null
|
|
1
|
+
{"version":3,"file":"MXLPageManager.js","names":[],"sources":["../../../src/managers/MXLPageManager/MXLPageManager.ts"],"sourcesContent":["import type { PageManager, Route } from '../../api-page';\nimport type { TitleDocument } from '../../common';\nimport { generateUUID } from '../../utils';\nimport type { MXLPageManagerArgs } from './types';\n\nexport class MXLPageManager implements PageManager {\n private _currentRoute: Route | null = null;\n private _currentPageId: string | null = null;\n private _pageLabel: string | null = null;\n private readonly _titleDocument: TitleDocument | undefined;\n private readonly _useDocumentTitleAsPageLabel: boolean;\n\n public constructor({\n useDocumentTitleAsPageLabel = true,\n titleDocument = window.document,\n }: MXLPageManagerArgs = {}) {\n this._useDocumentTitleAsPageLabel = useDocumentTitleAsPageLabel;\n this._titleDocument = titleDocument;\n }\n\n public getCurrentPageId = (): string | null => this._currentPageId;\n\n public getCurrentRoute = () => this._currentRoute;\n\n public setPageLabel = (label: string): void => {\n this._pageLabel = label;\n };\n\n public getPageLabel = (): string | null =>\n this._pageLabel ||\n (!this._useDocumentTitleAsPageLabel || !this._titleDocument\n ? null\n : this._titleDocument.title);\n\n public setCurrentRoute = (route: Route) => {\n if (!this._currentRoute || this._currentRoute.url !== route.url) {\n this._currentPageId = generateUUID();\n }\n\n this._currentRoute = route;\n\n if (route.label) {\n this._pageLabel = route.label;\n } else {\n this._pageLabel = null;\n }\n };\n\n public clearCurrentRoute = () => {\n this._currentRoute = null;\n this._currentPageId = null;\n this._pageLabel = null;\n };\n}\n"],"mappings":";;AAKA,IAAa,iBAAb,MAAmD;CACjD,gBAAsC;CACtC,iBAAwC;CACxC,aAAoC;CACpC;CACA;CAEA,YAAmB,EACjB,8BAA8B,MAC9B,gBAAgB,OAAO,aACD,EAAE,EAAE;AAC1B,OAAK,+BAA+B;AACpC,OAAK,iBAAiB;;CAGxB,yBAA+C,KAAK;CAEpD,wBAA+B,KAAK;CAEpC,gBAAuB,UAAwB;AAC7C,OAAK,aAAa;;CAGpB,qBACE,KAAK,eACJ,CAAC,KAAK,gCAAgC,CAAC,KAAK,iBACzC,OACA,KAAK,eAAe;CAE1B,mBAA0B,UAAiB;AACzC,MAAI,CAAC,KAAK,iBAAiB,KAAK,cAAc,QAAQ,MAAM,IAC1D,MAAK,iBAAiB,cAAc;AAGtC,OAAK,gBAAgB;AAErB,MAAI,MAAM,MACR,MAAK,aAAa,MAAM;MAExB,MAAK,aAAa;;CAItB,0BAAiC;AAC/B,OAAK,gBAAgB;AACrB,OAAK,iBAAiB;AACtB,OAAK,aAAa"}
|
|
@@ -19,10 +19,6 @@ var MXLSDKFeaturesManager = class {
|
|
|
19
19
|
const config = this._dynamicConfigManager.getConfig();
|
|
20
20
|
return require_utils_isDeviceIdEnabled.isDeviceIdEnabled(this._deviceId, config.networkSpansForwardingThreshold);
|
|
21
21
|
}
|
|
22
|
-
isEmptySessionAvoidanceEnabled() {
|
|
23
|
-
const config = this._dynamicConfigManager.getConfig();
|
|
24
|
-
return require_utils_isDeviceIdEnabled.isDeviceIdEnabled(this._deviceId, config.emptySessionAvoidanceEnabledPct);
|
|
25
|
-
}
|
|
26
22
|
};
|
|
27
23
|
//#endregion
|
|
28
24
|
exports.MXLSDKFeaturesManager = MXLSDKFeaturesManager;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MXLSDKFeaturesManager.cjs","names":["isDeviceIdEnabled"],"sources":["../../../src/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.ts"],"sourcesContent":["import type { DynamicConfigManager } from '../../sdk';\nimport { isDeviceIdEnabled } from '../../utils';\nimport type { SDKFeaturesManager, SDKFeaturesManagerArgs } from './types';\n\nexport class MXLSDKFeaturesManager implements SDKFeaturesManager {\n private readonly _dynamicConfigManager: DynamicConfigManager;\n private readonly _deviceId: string;\n private readonly _blockNetworkSpanForwarding: boolean;\n\n public constructor({\n dynamicConfigManager,\n deviceId,\n blockNetworkSpanForwarding,\n }: SDKFeaturesManagerArgs) {\n this._dynamicConfigManager = dynamicConfigManager;\n this._deviceId = deviceId;\n this._blockNetworkSpanForwarding = blockNetworkSpanForwarding;\n }\n\n public isSDKEnabled(): boolean {\n const config = this._dynamicConfigManager.getConfig();\n\n return isDeviceIdEnabled(this._deviceId, config.samplingPct);\n }\n\n public isNetworkSpanForwardingEnabled(): boolean {\n if (this._blockNetworkSpanForwarding) {\n return false;\n }\n\n const config = this._dynamicConfigManager.getConfig();\n\n return isDeviceIdEnabled(\n this._deviceId,\n config.networkSpansForwardingThreshold,\n );\n }\n\n
|
|
1
|
+
{"version":3,"file":"MXLSDKFeaturesManager.cjs","names":["isDeviceIdEnabled"],"sources":["../../../src/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.ts"],"sourcesContent":["import type { DynamicConfigManager } from '../../sdk';\nimport { isDeviceIdEnabled } from '../../utils';\nimport type { SDKFeaturesManager, SDKFeaturesManagerArgs } from './types';\n\nexport class MXLSDKFeaturesManager implements SDKFeaturesManager {\n private readonly _dynamicConfigManager: DynamicConfigManager;\n private readonly _deviceId: string;\n private readonly _blockNetworkSpanForwarding: boolean;\n\n public constructor({\n dynamicConfigManager,\n deviceId,\n blockNetworkSpanForwarding,\n }: SDKFeaturesManagerArgs) {\n this._dynamicConfigManager = dynamicConfigManager;\n this._deviceId = deviceId;\n this._blockNetworkSpanForwarding = blockNetworkSpanForwarding;\n }\n\n public isSDKEnabled(): boolean {\n const config = this._dynamicConfigManager.getConfig();\n\n return isDeviceIdEnabled(this._deviceId, config.samplingPct);\n }\n\n public isNetworkSpanForwardingEnabled(): boolean {\n if (this._blockNetworkSpanForwarding) {\n return false;\n }\n\n const config = this._dynamicConfigManager.getConfig();\n\n return isDeviceIdEnabled(\n this._deviceId,\n config.networkSpansForwardingThreshold,\n );\n }\n\n}\n"],"mappings":";;;AAIA,IAAa,wBAAb,MAAiE;CAC/D;CACA;CACA;CAEA,YAAmB,EACjB,sBACA,UACA,8BACyB;AACzB,OAAK,wBAAwB;AAC7B,OAAK,YAAY;AACjB,OAAK,8BAA8B;;CAGrC,eAA+B;EAC7B,MAAM,SAAS,KAAK,sBAAsB,WAAW;AAErD,SAAOA,gCAAAA,kBAAkB,KAAK,WAAW,OAAO,YAAY;;CAG9D,iCAAiD;AAC/C,MAAI,KAAK,4BACP,QAAO;EAGT,MAAM,SAAS,KAAK,sBAAsB,WAAW;AAErD,SAAOA,gCAAAA,kBACL,KAAK,WACL,OAAO,gCACR"}
|
|
@@ -12,7 +12,6 @@ declare class MXLSDKFeaturesManager implements SDKFeaturesManager {
|
|
|
12
12
|
}: SDKFeaturesManagerArgs);
|
|
13
13
|
isSDKEnabled(): boolean;
|
|
14
14
|
isNetworkSpanForwardingEnabled(): boolean;
|
|
15
|
-
isEmptySessionAvoidanceEnabled(): boolean;
|
|
16
15
|
}
|
|
17
16
|
//#endregion
|
|
18
17
|
export { MXLSDKFeaturesManager };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MXLSDKFeaturesManager.d.cts","names":[],"sources":["../../../src/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.ts"],"mappings":";;;cAIa,qBAAA,YAAiC,kBAAA;EAAA,iBAC3B,qBAAA;EAAA,iBACA,SAAA;EAAA,iBACA,2BAAA;;IAGf,oBAAA;IACA,QAAA;IACA;EAAA,GACC,sBAAA;EAMI,YAAA,CAAA;EAMA,8BAAA,CAAA;
|
|
1
|
+
{"version":3,"file":"MXLSDKFeaturesManager.d.cts","names":[],"sources":["../../../src/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.ts"],"mappings":";;;cAIa,qBAAA,YAAiC,kBAAA;EAAA,iBAC3B,qBAAA;EAAA,iBACA,SAAA;EAAA,iBACA,2BAAA;;IAGf,oBAAA;IACA,QAAA;IACA;EAAA,GACC,sBAAA;EAMI,YAAA,CAAA;EAMA,8BAAA,CAAA;AAAA"}
|
|
@@ -12,7 +12,6 @@ declare class MXLSDKFeaturesManager implements SDKFeaturesManager {
|
|
|
12
12
|
}: SDKFeaturesManagerArgs);
|
|
13
13
|
isSDKEnabled(): boolean;
|
|
14
14
|
isNetworkSpanForwardingEnabled(): boolean;
|
|
15
|
-
isEmptySessionAvoidanceEnabled(): boolean;
|
|
16
15
|
}
|
|
17
16
|
//#endregion
|
|
18
17
|
export { MXLSDKFeaturesManager };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MXLSDKFeaturesManager.d.ts","names":[],"sources":["../../../src/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.ts"],"mappings":";;;cAIa,qBAAA,YAAiC,kBAAA;EAAA,iBAC3B,qBAAA;EAAA,iBACA,SAAA;EAAA,iBACA,2BAAA;;IAGf,oBAAA;IACA,QAAA;IACA;EAAA,GACC,sBAAA;EAMI,YAAA,CAAA;EAMA,8BAAA,CAAA;
|
|
1
|
+
{"version":3,"file":"MXLSDKFeaturesManager.d.ts","names":[],"sources":["../../../src/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.ts"],"mappings":";;;cAIa,qBAAA,YAAiC,kBAAA;EAAA,iBAC3B,qBAAA;EAAA,iBACA,SAAA;EAAA,iBACA,2BAAA;;IAGf,oBAAA;IACA,QAAA;IACA;EAAA,GACC,sBAAA;EAMI,YAAA,CAAA;EAMA,8BAAA,CAAA;AAAA"}
|
|
@@ -18,10 +18,6 @@ var MXLSDKFeaturesManager = class {
|
|
|
18
18
|
const config = this._dynamicConfigManager.getConfig();
|
|
19
19
|
return isDeviceIdEnabled(this._deviceId, config.networkSpansForwardingThreshold);
|
|
20
20
|
}
|
|
21
|
-
isEmptySessionAvoidanceEnabled() {
|
|
22
|
-
const config = this._dynamicConfigManager.getConfig();
|
|
23
|
-
return isDeviceIdEnabled(this._deviceId, config.emptySessionAvoidanceEnabledPct);
|
|
24
|
-
}
|
|
25
21
|
};
|
|
26
22
|
//#endregion
|
|
27
23
|
export { MXLSDKFeaturesManager };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MXLSDKFeaturesManager.js","names":[],"sources":["../../../src/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.ts"],"sourcesContent":["import type { DynamicConfigManager } from '../../sdk';\nimport { isDeviceIdEnabled } from '../../utils';\nimport type { SDKFeaturesManager, SDKFeaturesManagerArgs } from './types';\n\nexport class MXLSDKFeaturesManager implements SDKFeaturesManager {\n private readonly _dynamicConfigManager: DynamicConfigManager;\n private readonly _deviceId: string;\n private readonly _blockNetworkSpanForwarding: boolean;\n\n public constructor({\n dynamicConfigManager,\n deviceId,\n blockNetworkSpanForwarding,\n }: SDKFeaturesManagerArgs) {\n this._dynamicConfigManager = dynamicConfigManager;\n this._deviceId = deviceId;\n this._blockNetworkSpanForwarding = blockNetworkSpanForwarding;\n }\n\n public isSDKEnabled(): boolean {\n const config = this._dynamicConfigManager.getConfig();\n\n return isDeviceIdEnabled(this._deviceId, config.samplingPct);\n }\n\n public isNetworkSpanForwardingEnabled(): boolean {\n if (this._blockNetworkSpanForwarding) {\n return false;\n }\n\n const config = this._dynamicConfigManager.getConfig();\n\n return isDeviceIdEnabled(\n this._deviceId,\n config.networkSpansForwardingThreshold,\n );\n }\n\n
|
|
1
|
+
{"version":3,"file":"MXLSDKFeaturesManager.js","names":[],"sources":["../../../src/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.ts"],"sourcesContent":["import type { DynamicConfigManager } from '../../sdk';\nimport { isDeviceIdEnabled } from '../../utils';\nimport type { SDKFeaturesManager, SDKFeaturesManagerArgs } from './types';\n\nexport class MXLSDKFeaturesManager implements SDKFeaturesManager {\n private readonly _dynamicConfigManager: DynamicConfigManager;\n private readonly _deviceId: string;\n private readonly _blockNetworkSpanForwarding: boolean;\n\n public constructor({\n dynamicConfigManager,\n deviceId,\n blockNetworkSpanForwarding,\n }: SDKFeaturesManagerArgs) {\n this._dynamicConfigManager = dynamicConfigManager;\n this._deviceId = deviceId;\n this._blockNetworkSpanForwarding = blockNetworkSpanForwarding;\n }\n\n public isSDKEnabled(): boolean {\n const config = this._dynamicConfigManager.getConfig();\n\n return isDeviceIdEnabled(this._deviceId, config.samplingPct);\n }\n\n public isNetworkSpanForwardingEnabled(): boolean {\n if (this._blockNetworkSpanForwarding) {\n return false;\n }\n\n const config = this._dynamicConfigManager.getConfig();\n\n return isDeviceIdEnabled(\n this._deviceId,\n config.networkSpansForwardingThreshold,\n );\n }\n\n}\n"],"mappings":";;AAIA,IAAa,wBAAb,MAAiE;CAC/D;CACA;CACA;CAEA,YAAmB,EACjB,sBACA,UACA,8BACyB;AACzB,OAAK,wBAAwB;AAC7B,OAAK,YAAY;AACjB,OAAK,8BAA8B;;CAGrC,eAA+B;EAC7B,MAAM,SAAS,KAAK,sBAAsB,WAAW;AAErD,SAAO,kBAAkB,KAAK,WAAW,OAAO,YAAY;;CAG9D,iCAAiD;AAC/C,MAAI,KAAK,4BACP,QAAO;EAGT,MAAM,SAAS,KAAK,sBAAsB,WAAW;AAErD,SAAO,kBACL,KAAK,WACL,OAAO,gCACR"}
|
|
@@ -8,7 +8,6 @@ interface SDKFeaturesManagerArgs {
|
|
|
8
8
|
interface SDKFeaturesManager {
|
|
9
9
|
isSDKEnabled: () => boolean;
|
|
10
10
|
isNetworkSpanForwardingEnabled: () => boolean;
|
|
11
|
-
isEmptySessionAvoidanceEnabled: () => boolean;
|
|
12
11
|
}
|
|
13
12
|
//#endregion
|
|
14
13
|
export { SDKFeaturesManager, SDKFeaturesManagerArgs };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.cts","names":[],"sources":["../../../src/managers/MXLSDKFeaturesManager/types.ts"],"mappings":";;UAEiB,sBAAA;EACf,QAAA;EACA,oBAAA,EAAsB,oBAAA;EACtB,0BAAA;AAAA;AAAA,UAGe,kBAAA;EACf,YAAA;EACA,8BAAA;
|
|
1
|
+
{"version":3,"file":"types.d.cts","names":[],"sources":["../../../src/managers/MXLSDKFeaturesManager/types.ts"],"mappings":";;UAEiB,sBAAA;EACf,QAAA;EACA,oBAAA,EAAsB,oBAAA;EACtB,0BAAA;AAAA;AAAA,UAGe,kBAAA;EACf,YAAA;EACA,8BAAA;AAAA"}
|
|
@@ -8,7 +8,6 @@ interface SDKFeaturesManagerArgs {
|
|
|
8
8
|
interface SDKFeaturesManager {
|
|
9
9
|
isSDKEnabled: () => boolean;
|
|
10
10
|
isNetworkSpanForwardingEnabled: () => boolean;
|
|
11
|
-
isEmptySessionAvoidanceEnabled: () => boolean;
|
|
12
11
|
}
|
|
13
12
|
//#endregion
|
|
14
13
|
export { SDKFeaturesManager, SDKFeaturesManagerArgs };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","names":[],"sources":["../../../src/managers/MXLSDKFeaturesManager/types.ts"],"mappings":";;UAEiB,sBAAA;EACf,QAAA;EACA,oBAAA,EAAsB,oBAAA;EACtB,0BAAA;AAAA;AAAA,UAGe,kBAAA;EACf,YAAA;EACA,8BAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","names":[],"sources":["../../../src/managers/MXLSDKFeaturesManager/types.ts"],"mappings":";;UAEiB,sBAAA;EACf,QAAA;EACA,oBAAA,EAAsB,oBAAA;EACtB,0BAAA;AAAA;AAAA,UAGe,kBAAA;EACf,YAAA;EACA,8BAAA;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MXLExtendedSpan.cjs","names":["KEY_MXL_ERROR_CODE"],"sources":["../../../src/managers/MXLTraceManager/MXLExtendedSpan.ts"],"sourcesContent":["import type {\n
|
|
1
|
+
{"version":3,"file":"MXLExtendedSpan.cjs","names":["KEY_MXL_ERROR_CODE"],"sources":["../../../src/managers/MXLTraceManager/MXLExtendedSpan.ts"],"sourcesContent":["import type {\n AttributeValue,\n Attributes,\n Exception,\n Link,\n Span,\n SpanContext,\n SpanStatus,\n TimeInput,\n} from '@opentelemetry/api';\nimport type { ExtendedSpan, ExtendedSpanFailedOptions } from '../../api-traces';\nimport { KEY_MXL_ERROR_CODE } from '../../constants';\n\n/**\n * MXLSpan for the most part simply delegates to the underlying Span it receives on initialization so\n * that it satisfies the Span interface. In addition, it gives us a spot where we can implement helpers that are part\n * of the MXLSpan interface.\n */\nexport class MXLExtendedSpan implements ExtendedSpan {\n private readonly _span: ExtendedSpan;\n\n public constructor(span: Span) {\n this._span = span as ExtendedSpan;\n }\n\n /**\n * Expose attributes by extending OpenTelemetry's ReadableSpan.\n */\n public get attributes(): Attributes {\n return this._span.attributes;\n }\n\n public addEvent(\n name: string,\n attributesOrStartTime?: Attributes | TimeInput,\n startTime?: TimeInput,\n ): this {\n this._span.addEvent(name, attributesOrStartTime, startTime);\n return this;\n }\n\n public addLink(link: Link): this {\n this._span.addLink(link);\n return this;\n }\n\n public addLinks(links: Link[]): this {\n this._span.addLinks(links);\n return this;\n }\n\n public end(endTime?: TimeInput): void {\n this._span.end(endTime);\n }\n\n public isRecording(): boolean {\n return this._span.isRecording();\n }\n\n public recordException(exception: Exception, time?: TimeInput): void {\n this._span.recordException(exception, time);\n }\n\n public setAttribute(key: string, value: AttributeValue): this {\n this._span.setAttribute(key, value);\n return this;\n }\n\n public setAttributes(attributes: Attributes): this {\n this._span.setAttributes(attributes);\n return this;\n }\n\n public removeAttribute(key: string): this {\n const { [key]: _, ...attributes } = this._span.attributes;\n // @ts-expect-error Read/write spans are allowed per the spec https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/sdk.md#additional-span-interfaces\n this._span.attributes = attributes;\n return this;\n }\n\n public setStatus(status: SpanStatus): this {\n this._span.setStatus(status);\n return this;\n }\n\n public spanContext(): SpanContext {\n return this._span.spanContext();\n }\n\n public updateName(name: string): this {\n this._span.updateName(name);\n return this;\n }\n\n public fail(\n options: ExtendedSpanFailedOptions = {\n code: 'failure',\n },\n ): void {\n if (options.code) {\n this._span.setAttribute(KEY_MXL_ERROR_CODE, options.code.toUpperCase());\n }\n\n this._span.end(options.endTime);\n }\n}\n"],"mappings":";;;;;;;;AAkBA,IAAa,kBAAb,MAAqD;CACnD;CAEA,YAAmB,MAAY;AAC7B,OAAK,QAAQ;;;;;CAMf,IAAW,aAAyB;AAClC,SAAO,KAAK,MAAM;;CAGpB,SACE,MACA,uBACA,WACM;AACN,OAAK,MAAM,SAAS,MAAM,uBAAuB,UAAU;AAC3D,SAAO;;CAGT,QAAe,MAAkB;AAC/B,OAAK,MAAM,QAAQ,KAAK;AACxB,SAAO;;CAGT,SAAgB,OAAqB;AACnC,OAAK,MAAM,SAAS,MAAM;AAC1B,SAAO;;CAGT,IAAW,SAA2B;AACpC,OAAK,MAAM,IAAI,QAAQ;;CAGzB,cAA8B;AAC5B,SAAO,KAAK,MAAM,aAAa;;CAGjC,gBAAuB,WAAsB,MAAwB;AACnE,OAAK,MAAM,gBAAgB,WAAW,KAAK;;CAG7C,aAAoB,KAAa,OAA6B;AAC5D,OAAK,MAAM,aAAa,KAAK,MAAM;AACnC,SAAO;;CAGT,cAAqB,YAA8B;AACjD,OAAK,MAAM,cAAc,WAAW;AACpC,SAAO;;CAGT,gBAAuB,KAAmB;EACxC,MAAM,GAAG,MAAM,GAAG,GAAG,eAAe,KAAK,MAAM;AAE/C,OAAK,MAAM,aAAa;AACxB,SAAO;;CAGT,UAAiB,QAA0B;AACzC,OAAK,MAAM,UAAU,OAAO;AAC5B,SAAO;;CAGT,cAAkC;AAChC,SAAO,KAAK,MAAM,aAAa;;CAGjC,WAAkB,MAAoB;AACpC,OAAK,MAAM,WAAW,KAAK;AAC3B,SAAO;;CAGT,KACE,UAAqC,EACnC,MAAM,WACP,EACK;AACN,MAAI,QAAQ,KACV,MAAK,MAAM,aAAaA,6BAAAA,oBAAoB,QAAQ,KAAK,aAAa,CAAC;AAGzE,OAAK,MAAM,IAAI,QAAQ,QAAQ"}
|