@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.
Files changed (819) hide show
  1. package/DATA_EXPORT.md +2 -3
  2. package/REACT.md +5 -7
  3. package/README.md +94 -57
  4. package/UPGRADING.md +29 -19
  5. package/dist/api-logs/api/LogAPI/LogAPI.cjs +3 -3
  6. package/dist/api-logs/api/LogAPI/LogAPI.cjs.map +1 -1
  7. package/dist/api-logs/api/LogAPI/LogAPI.js +3 -3
  8. package/dist/api-logs/api/LogAPI/LogAPI.js.map +1 -1
  9. package/dist/api-logs/manager/NoOpLogManager/NoOpLogManager.cjs.map +1 -1
  10. package/dist/api-logs/manager/NoOpLogManager/NoOpLogManager.js.map +1 -1
  11. package/dist/api-logs/manager/types.d.cts +4 -4
  12. package/dist/api-logs/manager/types.d.cts.map +1 -1
  13. package/dist/api-logs/manager/types.d.ts +4 -4
  14. package/dist/api-logs/manager/types.d.ts.map +1 -1
  15. package/dist/api-page/api/PageAPI/PageAPI.cjs +3 -3
  16. package/dist/api-page/api/PageAPI/PageAPI.cjs.map +1 -1
  17. package/dist/api-page/api/PageAPI/PageAPI.js +3 -3
  18. package/dist/api-page/api/PageAPI/PageAPI.js.map +1 -1
  19. package/dist/api-sessions/api/SessionAPI/SessionAPI.cjs +9 -9
  20. package/dist/api-sessions/api/SessionAPI/SessionAPI.cjs.map +1 -1
  21. package/dist/api-sessions/api/SessionAPI/SessionAPI.d.cts +5 -7
  22. package/dist/api-sessions/api/SessionAPI/SessionAPI.d.cts.map +1 -1
  23. package/dist/api-sessions/api/SessionAPI/SessionAPI.d.ts +5 -7
  24. package/dist/api-sessions/api/SessionAPI/SessionAPI.d.ts.map +1 -1
  25. package/dist/api-sessions/api/SessionAPI/SessionAPI.js +9 -9
  26. package/dist/api-sessions/api/SessionAPI/SessionAPI.js.map +1 -1
  27. package/dist/api-sessions/index.cjs +4 -4
  28. package/dist/api-sessions/index.d.cts +4 -4
  29. package/dist/api-sessions/index.d.ts +4 -4
  30. package/dist/api-sessions/index.js +3 -3
  31. package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.cjs +47 -0
  32. package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.cjs.map +1 -0
  33. package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.d.cts +30 -0
  34. package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.d.cts.map +1 -0
  35. package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.d.ts +30 -0
  36. package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.d.ts.map +1 -0
  37. package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.js +46 -0
  38. package/dist/api-sessions/manager/NoOpUserSessionManager/NoOpUserSessionManager.js.map +1 -0
  39. package/dist/api-sessions/manager/NoOpUserSessionManager/index.cjs +3 -0
  40. package/dist/api-sessions/manager/NoOpUserSessionManager/index.d.cts +2 -0
  41. package/dist/api-sessions/manager/NoOpUserSessionManager/index.d.ts +2 -0
  42. package/dist/api-sessions/manager/NoOpUserSessionManager/index.js +2 -0
  43. package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.cjs +81 -0
  44. package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.cjs.map +1 -0
  45. package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.d.cts +35 -0
  46. package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.d.cts.map +1 -0
  47. package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.d.ts +35 -0
  48. package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.d.ts.map +1 -0
  49. package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.js +81 -0
  50. package/dist/api-sessions/manager/ProxyUserSessionManager/ProxyUserSessionManager.js.map +1 -0
  51. package/dist/api-sessions/manager/ProxyUserSessionManager/index.cjs +3 -0
  52. package/dist/api-sessions/manager/ProxyUserSessionManager/index.d.cts +2 -0
  53. package/dist/api-sessions/manager/ProxyUserSessionManager/index.d.ts +2 -0
  54. package/dist/api-sessions/manager/ProxyUserSessionManager/index.js +2 -0
  55. package/dist/api-sessions/manager/index.cjs +4 -4
  56. package/dist/api-sessions/manager/index.d.cts +4 -4
  57. package/dist/api-sessions/manager/index.d.ts +4 -4
  58. package/dist/api-sessions/manager/index.js +3 -3
  59. package/dist/api-sessions/manager/types.d.cts +14 -24
  60. package/dist/api-sessions/manager/types.d.cts.map +1 -1
  61. package/dist/api-sessions/manager/types.d.ts +14 -24
  62. package/dist/api-sessions/manager/types.d.ts.map +1 -1
  63. package/dist/api-traces/api/TraceAPI/TraceAPI.cjs +3 -3
  64. package/dist/api-traces/api/TraceAPI/TraceAPI.cjs.map +1 -1
  65. package/dist/api-traces/api/TraceAPI/TraceAPI.js +3 -3
  66. package/dist/api-traces/api/TraceAPI/TraceAPI.js.map +1 -1
  67. package/dist/api-traces/api/TraceAPI/types.d.cts +2 -2
  68. package/dist/api-traces/api/TraceAPI/types.d.cts.map +1 -1
  69. package/dist/api-traces/api/TraceAPI/types.d.ts +2 -2
  70. package/dist/api-traces/api/TraceAPI/types.d.ts.map +1 -1
  71. package/dist/api-users/api/UserAPI/UserAPI.cjs +3 -3
  72. package/dist/api-users/api/UserAPI/UserAPI.cjs.map +1 -1
  73. package/dist/api-users/api/UserAPI/UserAPI.js +3 -3
  74. package/dist/api-users/api/UserAPI/UserAPI.js.map +1 -1
  75. package/dist/common/types.d.cts +2 -0
  76. package/dist/common/types.d.cts.map +1 -1
  77. package/dist/common/types.d.ts +2 -0
  78. package/dist/common/types.d.ts.map +1 -1
  79. package/dist/constants/attributes.cjs +28 -0
  80. package/dist/constants/attributes.cjs.map +1 -1
  81. package/dist/constants/attributes.d.cts +17 -2
  82. package/dist/constants/attributes.d.cts.map +1 -1
  83. package/dist/constants/attributes.d.ts +17 -2
  84. package/dist/constants/attributes.d.ts.map +1 -1
  85. package/dist/constants/attributes.js +16 -1
  86. package/dist/constants/attributes.js.map +1 -1
  87. package/dist/constants/index.cjs +13 -0
  88. package/dist/constants/index.d.cts +2 -2
  89. package/dist/constants/index.d.ts +2 -2
  90. package/dist/constants/index.js +2 -2
  91. package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.cjs +1 -2
  92. package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.cjs.map +1 -1
  93. package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.d.cts +1 -2
  94. package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.d.cts.map +1 -1
  95. package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.d.ts +1 -2
  96. package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.d.ts.map +1 -1
  97. package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.js +1 -2
  98. package/dist/exporters/MXLLogExporter/OTLPFetchLogExporter.js.map +1 -1
  99. package/dist/exporters/MXLTraceExporter/OTLPFetchTraceExporter.cjs.map +1 -1
  100. package/dist/exporters/MXLTraceExporter/OTLPFetchTraceExporter.js.map +1 -1
  101. package/dist/exporters/constants.cjs +1 -1
  102. package/dist/exporters/constants.cjs.map +1 -1
  103. package/dist/exporters/constants.d.cts +1 -1
  104. package/dist/exporters/constants.d.ts +1 -1
  105. package/dist/exporters/constants.js +1 -1
  106. package/dist/exporters/constants.js.map +1 -1
  107. package/dist/exporters/otlpBrowserFetchExportDelegate.cjs.map +1 -1
  108. package/dist/exporters/otlpBrowserFetchExportDelegate.js.map +1 -1
  109. package/dist/index.cjs +2 -0
  110. package/dist/index.d.cts +2 -1
  111. package/dist/index.d.ts +2 -1
  112. package/dist/index.js +2 -1
  113. package/dist/instrumentations/InstrumentationAbstract/InstrumentationAbstract.cjs +2 -2
  114. package/dist/instrumentations/InstrumentationAbstract/InstrumentationAbstract.cjs.map +1 -1
  115. package/dist/instrumentations/InstrumentationAbstract/InstrumentationAbstract.d.cts.map +1 -1
  116. package/dist/instrumentations/InstrumentationAbstract/InstrumentationAbstract.d.ts.map +1 -1
  117. package/dist/instrumentations/InstrumentationAbstract/InstrumentationAbstract.js +2 -2
  118. package/dist/instrumentations/InstrumentationAbstract/InstrumentationAbstract.js.map +1 -1
  119. package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.cjs +6 -7
  120. package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.cjs.map +1 -1
  121. package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.d.cts +4 -5
  122. package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.d.cts.map +1 -1
  123. package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.d.ts +4 -5
  124. package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.d.ts.map +1 -1
  125. package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.js +6 -7
  126. package/dist/instrumentations/MXLInstrumentationBase/MXLInstrumentationBase.js.map +1 -1
  127. package/dist/instrumentations/clicks/ClicksInstrumentation/ClicksInstrumentation.cjs +8 -8
  128. package/dist/instrumentations/clicks/ClicksInstrumentation/ClicksInstrumentation.cjs.map +1 -1
  129. package/dist/instrumentations/clicks/ClicksInstrumentation/ClicksInstrumentation.d.cts.map +1 -1
  130. package/dist/instrumentations/clicks/ClicksInstrumentation/ClicksInstrumentation.d.ts.map +1 -1
  131. package/dist/instrumentations/clicks/ClicksInstrumentation/ClicksInstrumentation.js +8 -8
  132. package/dist/instrumentations/clicks/ClicksInstrumentation/ClicksInstrumentation.js.map +1 -1
  133. package/dist/instrumentations/document-load/DocumentLoadInstrumentation/DocumentLoadInstrumentation.cjs +10 -10
  134. package/dist/instrumentations/document-load/DocumentLoadInstrumentation/DocumentLoadInstrumentation.cjs.map +1 -1
  135. package/dist/instrumentations/document-load/DocumentLoadInstrumentation/DocumentLoadInstrumentation.js +10 -10
  136. package/dist/instrumentations/document-load/DocumentLoadInstrumentation/DocumentLoadInstrumentation.js.map +1 -1
  137. package/dist/instrumentations/document-load/DocumentLoadInstrumentation/utils.cjs +2 -2
  138. package/dist/instrumentations/document-load/DocumentLoadInstrumentation/utils.cjs.map +1 -1
  139. package/dist/instrumentations/document-load/DocumentLoadInstrumentation/utils.js +2 -2
  140. package/dist/instrumentations/document-load/DocumentLoadInstrumentation/utils.js.map +1 -1
  141. package/dist/instrumentations/element-timing/ElementTimingInstrumentation/ElementTimingInstrumentation.cjs +5 -5
  142. package/dist/instrumentations/element-timing/ElementTimingInstrumentation/ElementTimingInstrumentation.cjs.map +1 -1
  143. package/dist/instrumentations/element-timing/ElementTimingInstrumentation/ElementTimingInstrumentation.js +5 -5
  144. package/dist/instrumentations/element-timing/ElementTimingInstrumentation/ElementTimingInstrumentation.js.map +1 -1
  145. package/dist/instrumentations/empty-root/EmptyRootInstrumentation/EmptyRootInstrumentation.cjs +4 -4
  146. package/dist/instrumentations/empty-root/EmptyRootInstrumentation/EmptyRootInstrumentation.cjs.map +1 -1
  147. package/dist/instrumentations/empty-root/EmptyRootInstrumentation/EmptyRootInstrumentation.js +4 -4
  148. package/dist/instrumentations/empty-root/EmptyRootInstrumentation/EmptyRootInstrumentation.js.map +1 -1
  149. package/dist/instrumentations/exceptions/GlobalExceptionInstrumentation/GlobalExceptionInstrumentation.cjs +7 -7
  150. package/dist/instrumentations/exceptions/GlobalExceptionInstrumentation/GlobalExceptionInstrumentation.cjs.map +1 -1
  151. package/dist/instrumentations/exceptions/GlobalExceptionInstrumentation/GlobalExceptionInstrumentation.js +7 -7
  152. package/dist/instrumentations/exceptions/GlobalExceptionInstrumentation/GlobalExceptionInstrumentation.js.map +1 -1
  153. package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.cjs +2 -2
  154. package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.cjs.map +1 -1
  155. package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.d.cts +4 -4
  156. package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.d.cts.map +1 -1
  157. package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.d.ts +4 -4
  158. package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.d.ts.map +1 -1
  159. package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.js +2 -2
  160. package/dist/instrumentations/exceptions/react/MXLErrorBoundary/MXLErrorBoundary.js.map +1 -1
  161. package/dist/instrumentations/index.cjs +2 -4
  162. package/dist/instrumentations/index.d.cts +4 -6
  163. package/dist/instrumentations/index.d.ts +4 -6
  164. package/dist/instrumentations/index.js +2 -3
  165. package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.cjs +23 -23
  166. package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.cjs.map +1 -1
  167. package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.d.cts +2 -3
  168. package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.d.cts.map +1 -1
  169. package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.d.ts +2 -3
  170. package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.d.ts.map +1 -1
  171. package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.js +23 -23
  172. package/dist/instrumentations/loaf/LoafInstrumentation/LoafInstrumentation.js.map +1 -1
  173. package/dist/instrumentations/navigation/NavigationInstrumentation/NavigationInstrumentation.cjs +5 -5
  174. package/dist/instrumentations/navigation/NavigationInstrumentation/NavigationInstrumentation.cjs.map +1 -1
  175. package/dist/instrumentations/navigation/NavigationInstrumentation/NavigationInstrumentation.d.cts.map +1 -1
  176. package/dist/instrumentations/navigation/NavigationInstrumentation/NavigationInstrumentation.d.ts.map +1 -1
  177. package/dist/instrumentations/navigation/NavigationInstrumentation/NavigationInstrumentation.js +5 -5
  178. package/dist/instrumentations/navigation/NavigationInstrumentation/NavigationInstrumentation.js.map +1 -1
  179. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV5/withMXLRoutingLegacy.cjs.map +1 -1
  180. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV5/withMXLRoutingLegacy.js.map +1 -1
  181. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/listenToRouterChanges.cjs +1 -1
  182. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/listenToRouterChanges.cjs.map +1 -1
  183. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/listenToRouterChanges.js +1 -1
  184. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/listenToRouterChanges.js.map +1 -1
  185. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/types.d.cts +10 -10
  186. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/types.d.cts.map +1 -1
  187. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/types.d.ts +10 -10
  188. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Data/types.d.ts.map +1 -1
  189. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Declarative/types.d.cts +2 -2
  190. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Declarative/types.d.cts.map +1 -1
  191. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Declarative/types.d.ts +2 -2
  192. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Declarative/types.d.ts.map +1 -1
  193. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Declarative/withMXLRouting.cjs.map +1 -1
  194. package/dist/instrumentations/navigation/NavigationInstrumentation/react/reactRouterV6Declarative/withMXLRouting.js.map +1 -1
  195. package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.cjs +257 -0
  196. package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.cjs.map +1 -0
  197. package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.d.cts +56 -0
  198. package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.d.cts.map +1 -0
  199. package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.d.ts +56 -0
  200. package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.d.ts.map +1 -0
  201. package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.js +252 -0
  202. package/dist/instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.js.map +1 -0
  203. package/dist/instrumentations/replay/ReplayInstrumentation/constants.cjs +15 -0
  204. package/dist/instrumentations/replay/ReplayInstrumentation/constants.cjs.map +1 -0
  205. package/dist/instrumentations/replay/ReplayInstrumentation/constants.d.cts +9 -0
  206. package/dist/instrumentations/replay/ReplayInstrumentation/constants.d.cts.map +1 -0
  207. package/dist/instrumentations/replay/ReplayInstrumentation/constants.d.ts +9 -0
  208. package/dist/instrumentations/replay/ReplayInstrumentation/constants.d.ts.map +1 -0
  209. package/dist/instrumentations/replay/ReplayInstrumentation/constants.js +10 -0
  210. package/dist/instrumentations/replay/ReplayInstrumentation/constants.js.map +1 -0
  211. package/dist/instrumentations/replay/ReplayInstrumentation/index.cjs +3 -0
  212. package/dist/instrumentations/replay/ReplayInstrumentation/index.d.cts +3 -0
  213. package/dist/instrumentations/replay/ReplayInstrumentation/index.d.ts +3 -0
  214. package/dist/instrumentations/replay/ReplayInstrumentation/index.js +2 -0
  215. package/dist/instrumentations/replay/ReplayInstrumentation/types.d.cts +17 -0
  216. package/dist/instrumentations/replay/ReplayInstrumentation/types.d.cts.map +1 -0
  217. package/dist/instrumentations/replay/ReplayInstrumentation/types.d.ts +17 -0
  218. package/dist/instrumentations/replay/ReplayInstrumentation/types.d.ts.map +1 -0
  219. package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.cjs +18 -0
  220. package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.cjs.map +1 -0
  221. package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.d.cts +8 -0
  222. package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.d.cts.map +1 -0
  223. package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.d.ts +8 -0
  224. package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.d.ts.map +1 -0
  225. package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.js +17 -0
  226. package/dist/instrumentations/replay/createSessionRecordingControlFromReplay.js.map +1 -0
  227. package/dist/instrumentations/replay/index.cjs +8 -0
  228. package/dist/instrumentations/replay/index.d.cts +4 -0
  229. package/dist/instrumentations/replay/index.d.ts +4 -0
  230. package/dist/instrumentations/replay/index.js +3 -0
  231. package/dist/instrumentations/replay/utils/index.cjs +5 -0
  232. package/dist/instrumentations/replay/utils/index.d.cts +2 -0
  233. package/dist/instrumentations/replay/utils/index.d.ts +2 -0
  234. package/dist/instrumentations/replay/utils/index.js +2 -0
  235. package/dist/instrumentations/replay/utils/session-recording-utils.cjs +79 -0
  236. package/dist/instrumentations/replay/utils/session-recording-utils.cjs.map +1 -0
  237. package/dist/instrumentations/replay/utils/session-recording-utils.d.cts +32 -0
  238. package/dist/instrumentations/replay/utils/session-recording-utils.d.cts.map +1 -0
  239. package/dist/instrumentations/replay/utils/session-recording-utils.d.ts +32 -0
  240. package/dist/instrumentations/replay/utils/session-recording-utils.d.ts.map +1 -0
  241. package/dist/instrumentations/replay/utils/session-recording-utils.js +73 -0
  242. package/dist/instrumentations/replay/utils/session-recording-utils.js.map +1 -0
  243. package/dist/instrumentations/server-timing/ServerTimingInstrumentation/ServerTimingInstrumentation.cjs +6 -6
  244. package/dist/instrumentations/server-timing/ServerTimingInstrumentation/ServerTimingInstrumentation.cjs.map +1 -1
  245. package/dist/instrumentations/server-timing/ServerTimingInstrumentation/ServerTimingInstrumentation.js +6 -6
  246. package/dist/instrumentations/server-timing/ServerTimingInstrumentation/ServerTimingInstrumentation.js.map +1 -1
  247. package/dist/instrumentations/session/index.cjs +0 -6
  248. package/dist/instrumentations/session/index.d.cts +2 -7
  249. package/dist/instrumentations/session/index.d.ts +2 -7
  250. package/dist/instrumentations/session/index.js +1 -4
  251. package/dist/instrumentations/session/types.d.cts +5 -5
  252. package/dist/instrumentations/session/types.d.cts.map +1 -1
  253. package/dist/instrumentations/session/types.d.ts +5 -5
  254. package/dist/instrumentations/session/types.d.ts.map +1 -1
  255. package/dist/instrumentations/user-timing/UserTimingInstrumentation/UserTimingInstrumentation.cjs +10 -10
  256. package/dist/instrumentations/user-timing/UserTimingInstrumentation/UserTimingInstrumentation.cjs.map +1 -1
  257. package/dist/instrumentations/user-timing/UserTimingInstrumentation/UserTimingInstrumentation.js +10 -10
  258. package/dist/instrumentations/user-timing/UserTimingInstrumentation/UserTimingInstrumentation.js.map +1 -1
  259. package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/WebVitalsInstrumentation.cjs +15 -15
  260. package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/WebVitalsInstrumentation.cjs.map +1 -1
  261. package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/WebVitalsInstrumentation.js +15 -15
  262. package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/WebVitalsInstrumentation.js.map +1 -1
  263. package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/types.d.cts +1 -3
  264. package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/types.d.cts.map +1 -1
  265. package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/types.d.ts +1 -3
  266. package/dist/instrumentations/web-vitals/WebVitalsInstrumentation/types.d.ts.map +1 -1
  267. package/dist/managers/MXLConfigManager/MXLDynamicConfigManager.cjs +0 -1
  268. package/dist/managers/MXLConfigManager/MXLDynamicConfigManager.cjs.map +1 -1
  269. package/dist/managers/MXLConfigManager/MXLDynamicConfigManager.d.cts.map +1 -1
  270. package/dist/managers/MXLConfigManager/MXLDynamicConfigManager.d.ts.map +1 -1
  271. package/dist/managers/MXLConfigManager/MXLDynamicConfigManager.js +0 -1
  272. package/dist/managers/MXLConfigManager/MXLDynamicConfigManager.js.map +1 -1
  273. package/dist/managers/MXLConfigManager/constants.cjs +2 -2
  274. package/dist/managers/MXLConfigManager/constants.cjs.map +1 -1
  275. package/dist/managers/MXLConfigManager/constants.js +2 -2
  276. package/dist/managers/MXLConfigManager/constants.js.map +1 -1
  277. package/dist/managers/MXLConfigManager/types.d.cts +8 -7
  278. package/dist/managers/MXLConfigManager/types.d.cts.map +1 -1
  279. package/dist/managers/MXLConfigManager/types.d.ts +8 -7
  280. package/dist/managers/MXLConfigManager/types.d.ts.map +1 -1
  281. package/dist/managers/MXLLimitManager/MXLLimitManager.cjs +20 -20
  282. package/dist/managers/MXLLimitManager/MXLLimitManager.cjs.map +1 -1
  283. package/dist/managers/MXLLimitManager/MXLLimitManager.js +20 -20
  284. package/dist/managers/MXLLimitManager/MXLLimitManager.js.map +1 -1
  285. package/dist/managers/MXLLimitManager/constants.cjs +20 -20
  286. package/dist/managers/MXLLimitManager/constants.cjs.map +1 -1
  287. package/dist/managers/MXLLimitManager/constants.js +20 -20
  288. package/dist/managers/MXLLimitManager/constants.js.map +1 -1
  289. package/dist/managers/MXLLimitManager/types.d.cts +8 -8
  290. package/dist/managers/MXLLimitManager/types.d.cts.map +1 -1
  291. package/dist/managers/MXLLimitManager/types.d.ts +8 -8
  292. package/dist/managers/MXLLimitManager/types.d.ts.map +1 -1
  293. package/dist/managers/MXLLogManager/MXLLogManager.cjs +19 -19
  294. package/dist/managers/MXLLogManager/MXLLogManager.cjs.map +1 -1
  295. package/dist/managers/MXLLogManager/MXLLogManager.d.cts +2 -2
  296. package/dist/managers/MXLLogManager/MXLLogManager.d.cts.map +1 -1
  297. package/dist/managers/MXLLogManager/MXLLogManager.d.ts +2 -2
  298. package/dist/managers/MXLLogManager/MXLLogManager.d.ts.map +1 -1
  299. package/dist/managers/MXLLogManager/MXLLogManager.js +19 -19
  300. package/dist/managers/MXLLogManager/MXLLogManager.js.map +1 -1
  301. package/dist/managers/MXLLogManager/types.d.cts +2 -2
  302. package/dist/managers/MXLLogManager/types.d.ts +2 -2
  303. package/dist/managers/MXLPageManager/MXLPageManager.cjs +1 -3
  304. package/dist/managers/MXLPageManager/MXLPageManager.cjs.map +1 -1
  305. package/dist/managers/MXLPageManager/MXLPageManager.d.cts.map +1 -1
  306. package/dist/managers/MXLPageManager/MXLPageManager.d.ts.map +1 -1
  307. package/dist/managers/MXLPageManager/MXLPageManager.js +1 -3
  308. package/dist/managers/MXLPageManager/MXLPageManager.js.map +1 -1
  309. package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.cjs +0 -4
  310. package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.cjs.map +1 -1
  311. package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.d.cts +0 -1
  312. package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.d.cts.map +1 -1
  313. package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.d.ts +0 -1
  314. package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.d.ts.map +1 -1
  315. package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.js +0 -4
  316. package/dist/managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.js.map +1 -1
  317. package/dist/managers/MXLSDKFeaturesManager/types.d.cts +0 -1
  318. package/dist/managers/MXLSDKFeaturesManager/types.d.cts.map +1 -1
  319. package/dist/managers/MXLSDKFeaturesManager/types.d.ts +0 -1
  320. package/dist/managers/MXLSDKFeaturesManager/types.d.ts.map +1 -1
  321. package/dist/managers/MXLTraceManager/MXLExtendedSpan.cjs.map +1 -1
  322. package/dist/managers/MXLTraceManager/MXLExtendedSpan.js.map +1 -1
  323. package/dist/managers/MXLUserManager/MXLUserManager.cjs +14 -14
  324. package/dist/managers/MXLUserManager/MXLUserManager.cjs.map +1 -1
  325. package/dist/managers/MXLUserManager/MXLUserManager.js +14 -14
  326. package/dist/managers/MXLUserManager/MXLUserManager.js.map +1 -1
  327. package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.cjs +574 -0
  328. package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.cjs.map +1 -0
  329. package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.d.cts +142 -0
  330. package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.d.cts.map +1 -0
  331. package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.d.ts +142 -0
  332. package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.d.ts.map +1 -0
  333. package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.js +572 -0
  334. package/dist/managers/MXLUserSessionManager/MXLUserSessionManager.js.map +1 -0
  335. package/dist/managers/MXLUserSessionManager/constants.cjs +55 -0
  336. package/dist/managers/MXLUserSessionManager/constants.cjs.map +1 -0
  337. package/dist/managers/MXLUserSessionManager/constants.d.cts +31 -0
  338. package/dist/managers/MXLUserSessionManager/constants.d.cts.map +1 -0
  339. package/dist/managers/MXLUserSessionManager/constants.d.ts +31 -0
  340. package/dist/managers/MXLUserSessionManager/constants.d.ts.map +1 -0
  341. package/dist/managers/MXLUserSessionManager/constants.js +37 -0
  342. package/dist/managers/MXLUserSessionManager/constants.js.map +1 -0
  343. package/dist/managers/MXLUserSessionManager/index.cjs +6 -0
  344. package/dist/managers/MXLUserSessionManager/index.d.cts +4 -0
  345. package/dist/managers/MXLUserSessionManager/index.d.ts +4 -0
  346. package/dist/managers/MXLUserSessionManager/index.js +3 -0
  347. package/dist/managers/MXLUserSessionManager/types.d.cts +84 -0
  348. package/dist/managers/MXLUserSessionManager/types.d.cts.map +1 -0
  349. package/dist/managers/MXLUserSessionManager/types.d.ts +84 -0
  350. package/dist/managers/MXLUserSessionManager/types.d.ts.map +1 -0
  351. package/dist/managers/MXLUserSessionManager/utils/activity.cjs +25 -0
  352. package/dist/managers/MXLUserSessionManager/utils/activity.cjs.map +1 -0
  353. package/dist/managers/MXLUserSessionManager/utils/activity.d.cts +40 -0
  354. package/dist/managers/MXLUserSessionManager/utils/activity.d.cts.map +1 -0
  355. package/dist/managers/MXLUserSessionManager/utils/activity.d.ts +40 -0
  356. package/dist/managers/MXLUserSessionManager/utils/activity.d.ts.map +1 -0
  357. package/dist/managers/MXLUserSessionManager/utils/activity.js +22 -0
  358. package/dist/managers/MXLUserSessionManager/utils/activity.js.map +1 -0
  359. package/dist/managers/MXLUserSessionManager/utils/index.cjs +11 -0
  360. package/dist/managers/MXLUserSessionManager/utils/index.d.cts +3 -0
  361. package/dist/managers/MXLUserSessionManager/utils/index.d.ts +3 -0
  362. package/dist/managers/MXLUserSessionManager/utils/index.js +3 -0
  363. package/dist/managers/MXLUserSessionManager/utils/state.cjs +78 -0
  364. package/dist/managers/MXLUserSessionManager/utils/state.cjs.map +1 -0
  365. package/dist/managers/MXLUserSessionManager/utils/state.d.cts +39 -0
  366. package/dist/managers/MXLUserSessionManager/utils/state.d.cts.map +1 -0
  367. package/dist/managers/MXLUserSessionManager/utils/state.d.ts +39 -0
  368. package/dist/managers/MXLUserSessionManager/utils/state.d.ts.map +1 -0
  369. package/dist/managers/MXLUserSessionManager/utils/state.js +73 -0
  370. package/dist/managers/MXLUserSessionManager/utils/state.js.map +1 -0
  371. package/dist/managers/MXLUserSessionManager/utils/tabTracking.cjs +132 -0
  372. package/dist/managers/MXLUserSessionManager/utils/tabTracking.cjs.map +1 -0
  373. package/dist/managers/MXLUserSessionManager/utils/tabTracking.d.cts +33 -0
  374. package/dist/managers/MXLUserSessionManager/utils/tabTracking.d.cts.map +1 -0
  375. package/dist/managers/MXLUserSessionManager/utils/tabTracking.d.ts +33 -0
  376. package/dist/managers/MXLUserSessionManager/utils/tabTracking.d.ts.map +1 -0
  377. package/dist/managers/MXLUserSessionManager/utils/tabTracking.js +127 -0
  378. package/dist/managers/MXLUserSessionManager/utils/tabTracking.js.map +1 -0
  379. package/dist/managers/index.cjs +5 -2
  380. package/dist/managers/index.d.cts +4 -3
  381. package/dist/managers/index.d.ts +4 -3
  382. package/dist/managers/index.js +3 -2
  383. package/dist/mxl-web-sdk.js +1 -23
  384. package/dist/mxl-web-sdk.js.map +1 -1
  385. package/dist/processors/BrowserLogRecordProcessor/BrowserLogRecordProcessor.cjs.map +1 -1
  386. package/dist/processors/BrowserLogRecordProcessor/BrowserLogRecordProcessor.js.map +1 -1
  387. package/dist/processors/BrowserSpanProcessor/BrowserSpanProcessor.cjs.map +1 -1
  388. package/dist/processors/BrowserSpanProcessor/BrowserSpanProcessor.js.map +1 -1
  389. package/dist/processors/LogRecordScrubProcessor/LogRecordScrubProcessor.cjs.map +1 -1
  390. package/dist/processors/LogRecordScrubProcessor/LogRecordScrubProcessor.js.map +1 -1
  391. package/dist/processors/LogRecordScrubProcessor/types.d.cts +2 -2
  392. package/dist/processors/LogRecordScrubProcessor/types.d.cts.map +1 -1
  393. package/dist/processors/LogRecordScrubProcessor/types.d.ts +2 -2
  394. package/dist/processors/LogRecordScrubProcessor/types.d.ts.map +1 -1
  395. package/dist/processors/MXLLogRecordProcessor/MXLLogRecordProcessor.cjs.map +1 -1
  396. package/dist/processors/MXLLogRecordProcessor/MXLLogRecordProcessor.js.map +1 -1
  397. package/dist/processors/MXLLogRecordProcessor/types.d.cts +2 -2
  398. package/dist/processors/MXLLogRecordProcessor/types.d.cts.map +1 -1
  399. package/dist/processors/MXLLogRecordProcessor/types.d.ts +2 -2
  400. package/dist/processors/MXLLogRecordProcessor/types.d.ts.map +1 -1
  401. package/dist/processors/MXLNetworkSpanProcessor/MXLNetworkSpanProcessor.cjs.map +1 -1
  402. package/dist/processors/MXLNetworkSpanProcessor/MXLNetworkSpanProcessor.js.map +1 -1
  403. package/dist/processors/MXLNetworkSpanProcessor/types.cjs.map +1 -1
  404. package/dist/processors/MXLNetworkSpanProcessor/types.js.map +1 -1
  405. package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.cjs +74 -0
  406. package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.cjs.map +1 -0
  407. package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.d.cts +28 -0
  408. package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.d.cts.map +1 -0
  409. package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.d.ts +28 -0
  410. package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.d.ts.map +1 -0
  411. package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.js +72 -0
  412. package/dist/processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.js.map +1 -0
  413. package/dist/processors/MXLSessionPartBatchedSpanProcessor/index.cjs +3 -0
  414. package/dist/processors/MXLSessionPartBatchedSpanProcessor/index.d.cts +3 -0
  415. package/dist/processors/MXLSessionPartBatchedSpanProcessor/index.d.ts +3 -0
  416. package/dist/processors/MXLSessionPartBatchedSpanProcessor/index.js +2 -0
  417. package/dist/processors/MXLSessionPartBatchedSpanProcessor/types.d.cts +15 -0
  418. package/dist/processors/MXLSessionPartBatchedSpanProcessor/types.d.cts.map +1 -0
  419. package/dist/processors/MXLSessionPartBatchedSpanProcessor/types.d.ts +15 -0
  420. package/dist/processors/MXLSessionPartBatchedSpanProcessor/types.d.ts.map +1 -0
  421. package/dist/processors/PageLogRecordProcessor/PageLogRecordProcessor.cjs.map +1 -1
  422. package/dist/processors/PageLogRecordProcessor/PageLogRecordProcessor.js.map +1 -1
  423. package/dist/processors/PageSpanProcessor/PageSpanProcessor.cjs.map +1 -1
  424. package/dist/processors/PageSpanProcessor/PageSpanProcessor.js.map +1 -1
  425. package/dist/processors/SpanScrubProcessor/SpanScrubProcessor.cjs.map +1 -1
  426. package/dist/processors/SpanScrubProcessor/SpanScrubProcessor.js.map +1 -1
  427. package/dist/processors/UserLogRecordProcessor/UserLogRecordProcessor.cjs.map +1 -1
  428. package/dist/processors/UserLogRecordProcessor/UserLogRecordProcessor.js.map +1 -1
  429. package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.cjs +34 -0
  430. package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.cjs.map +1 -0
  431. package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.d.cts +16 -0
  432. package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.d.cts.map +1 -0
  433. package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.d.ts +16 -0
  434. package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.d.ts.map +1 -0
  435. package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.js +32 -0
  436. package/dist/processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.js.map +1 -0
  437. package/dist/processors/UserSessionLogRecordProcessor/index.cjs +3 -0
  438. package/dist/processors/UserSessionLogRecordProcessor/index.d.cts +3 -0
  439. package/dist/processors/UserSessionLogRecordProcessor/index.d.ts +3 -0
  440. package/dist/processors/UserSessionLogRecordProcessor/index.js +2 -0
  441. package/dist/processors/UserSessionLogRecordProcessor/types.d.cts +8 -0
  442. package/dist/processors/UserSessionLogRecordProcessor/types.d.cts.map +1 -0
  443. package/dist/processors/UserSessionLogRecordProcessor/types.d.ts +8 -0
  444. package/dist/processors/UserSessionLogRecordProcessor/types.d.ts.map +1 -0
  445. package/dist/processors/UserSpanProcessor/UserSpanProcessor.cjs.map +1 -1
  446. package/dist/processors/UserSpanProcessor/UserSpanProcessor.js.map +1 -1
  447. package/dist/processors/index.cjs +4 -4
  448. package/dist/processors/index.d.cts +3 -3
  449. package/dist/processors/index.d.ts +3 -3
  450. package/dist/processors/index.js +3 -3
  451. package/dist/propagators/MXLW3CTraceContextPropagator/MXLW3CTraceContextPropagator.cjs.map +1 -1
  452. package/dist/propagators/MXLW3CTraceContextPropagator/MXLW3CTraceContextPropagator.js.map +1 -1
  453. package/dist/resources/appInstanceId.cjs +4 -4
  454. package/dist/resources/appInstanceId.cjs.map +1 -1
  455. package/dist/resources/appInstanceId.js +4 -4
  456. package/dist/resources/appInstanceId.js.map +1 -1
  457. package/dist/resources/constants/index.cjs +1 -1
  458. package/dist/resources/constants/index.cjs.map +1 -1
  459. package/dist/resources/constants/index.d.cts +1 -1
  460. package/dist/resources/constants/index.d.ts +1 -1
  461. package/dist/resources/constants/index.js +1 -1
  462. package/dist/resources/constants/index.js.map +1 -1
  463. package/dist/resources/webSdkResource.cjs +15 -19
  464. package/dist/resources/webSdkResource.cjs.map +1 -1
  465. package/dist/resources/webSdkResource.d.cts.map +1 -1
  466. package/dist/resources/webSdkResource.d.ts.map +1 -1
  467. package/dist/resources/webSdkResource.js +15 -19
  468. package/dist/resources/webSdkResource.js.map +1 -1
  469. package/dist/sdk/defaultAttributeScrubbers.cjs +8 -8
  470. package/dist/sdk/defaultAttributeScrubbers.cjs.map +1 -1
  471. package/dist/sdk/defaultAttributeScrubbers.js +8 -8
  472. package/dist/sdk/defaultAttributeScrubbers.js.map +1 -1
  473. package/dist/sdk/index.d.cts +3 -2
  474. package/dist/sdk/index.d.ts +3 -2
  475. package/dist/sdk/initSDK.cjs +137 -98
  476. package/dist/sdk/initSDK.cjs.map +1 -1
  477. package/dist/sdk/initSDK.d.cts +4 -2
  478. package/dist/sdk/initSDK.d.cts.map +1 -1
  479. package/dist/sdk/initSDK.d.ts +4 -2
  480. package/dist/sdk/initSDK.d.ts.map +1 -1
  481. package/dist/sdk/initSDK.js +137 -98
  482. package/dist/sdk/initSDK.js.map +1 -1
  483. package/dist/sdk/registry.cjs +1 -3
  484. package/dist/sdk/registry.cjs.map +1 -1
  485. package/dist/sdk/registry.d.cts.map +1 -1
  486. package/dist/sdk/registry.d.ts.map +1 -1
  487. package/dist/sdk/registry.js +1 -3
  488. package/dist/sdk/registry.js.map +1 -1
  489. package/dist/sdk/setupDefaultInstrumentations.cjs +9 -5
  490. package/dist/sdk/setupDefaultInstrumentations.cjs.map +1 -1
  491. package/dist/sdk/setupDefaultInstrumentations.d.cts +5 -2
  492. package/dist/sdk/setupDefaultInstrumentations.d.cts.map +1 -1
  493. package/dist/sdk/setupDefaultInstrumentations.d.ts +5 -2
  494. package/dist/sdk/setupDefaultInstrumentations.d.ts.map +1 -1
  495. package/dist/sdk/setupDefaultInstrumentations.js +9 -5
  496. package/dist/sdk/setupDefaultInstrumentations.js.map +1 -1
  497. package/dist/sdk/types.d.cts +68 -56
  498. package/dist/sdk/types.d.cts.map +1 -1
  499. package/dist/sdk/types.d.ts +69 -57
  500. package/dist/sdk/types.d.ts.map +1 -1
  501. package/dist/sdk/utils.cjs +1 -1
  502. package/dist/sdk/utils.cjs.map +1 -1
  503. package/dist/sdk/utils.d.cts.map +1 -1
  504. package/dist/sdk/utils.d.ts.map +1 -1
  505. package/dist/sdk/utils.js +1 -1
  506. package/dist/sdk/utils.js.map +1 -1
  507. package/dist/transport/FetchTransport/FetchTransport.cjs +13 -13
  508. package/dist/transport/FetchTransport/FetchTransport.cjs.map +1 -1
  509. package/dist/transport/FetchTransport/FetchTransport.js +13 -13
  510. package/dist/transport/FetchTransport/FetchTransport.js.map +1 -1
  511. package/dist/transport/RetryingTransport/RetryingTransport.cjs +1 -1
  512. package/dist/transport/RetryingTransport/RetryingTransport.cjs.map +1 -1
  513. package/dist/transport/RetryingTransport/RetryingTransport.js +1 -1
  514. package/dist/transport/RetryingTransport/RetryingTransport.js.map +1 -1
  515. package/dist/utils/NamespacedStorage/NamespacedStorage.cjs +69 -24
  516. package/dist/utils/NamespacedStorage/NamespacedStorage.cjs.map +1 -1
  517. package/dist/utils/NamespacedStorage/NamespacedStorage.d.cts +27 -13
  518. package/dist/utils/NamespacedStorage/NamespacedStorage.d.cts.map +1 -1
  519. package/dist/utils/NamespacedStorage/NamespacedStorage.d.ts +27 -13
  520. package/dist/utils/NamespacedStorage/NamespacedStorage.d.ts.map +1 -1
  521. package/dist/utils/NamespacedStorage/NamespacedStorage.js +68 -24
  522. package/dist/utils/NamespacedStorage/NamespacedStorage.js.map +1 -1
  523. package/dist/utils/PerformanceManager/OTelPerformanceManager.cjs.map +1 -1
  524. package/dist/utils/PerformanceManager/OTelPerformanceManager.js.map +1 -1
  525. package/dist/utils/clampNumber.cjs +23 -0
  526. package/dist/utils/clampNumber.cjs.map +1 -0
  527. package/dist/utils/clampNumber.d.cts +24 -0
  528. package/dist/utils/clampNumber.d.cts.map +1 -0
  529. package/dist/utils/clampNumber.d.ts +24 -0
  530. package/dist/utils/clampNumber.d.ts.map +1 -0
  531. package/dist/utils/clampNumber.js +22 -0
  532. package/dist/utils/clampNumber.js.map +1 -0
  533. package/dist/utils/createSafeProxy/createSafeProxy.cjs +2 -2
  534. package/dist/utils/createSafeProxy/createSafeProxy.cjs.map +1 -1
  535. package/dist/utils/createSafeProxy/createSafeProxy.d.cts.map +1 -1
  536. package/dist/utils/createSafeProxy/createSafeProxy.d.ts.map +1 -1
  537. package/dist/utils/createSafeProxy/createSafeProxy.js +2 -2
  538. package/dist/utils/createSafeProxy/createSafeProxy.js.map +1 -1
  539. package/dist/utils/generateWebVitalID.cjs +1 -3
  540. package/dist/utils/generateWebVitalID.cjs.map +1 -1
  541. package/dist/utils/generateWebVitalID.js +1 -3
  542. package/dist/utils/generateWebVitalID.js.map +1 -1
  543. package/dist/utils/getIncrementedCount.cjs +2 -2
  544. package/dist/utils/getIncrementedCount.cjs.map +1 -1
  545. package/dist/utils/getIncrementedCount.js +2 -2
  546. package/dist/utils/getIncrementedCount.js.map +1 -1
  547. package/dist/utils/globalConfig.cjs.map +1 -1
  548. package/dist/utils/globalConfig.d.cts +2 -2
  549. package/dist/utils/globalConfig.d.cts.map +1 -1
  550. package/dist/utils/globalConfig.d.ts +2 -2
  551. package/dist/utils/globalConfig.d.ts.map +1 -1
  552. package/dist/utils/globalConfig.js.map +1 -1
  553. package/dist/utils/index.cjs +2 -2
  554. package/dist/utils/index.d.cts +3 -3
  555. package/dist/utils/index.d.ts +3 -3
  556. package/dist/utils/index.js +2 -2
  557. package/dist/utils/isDeviceIdEnabled.cjs.map +1 -1
  558. package/dist/utils/isDeviceIdEnabled.js.map +1 -1
  559. package/dist/utils/performanceObserver/performanceObserver.cjs +3 -3
  560. package/dist/utils/performanceObserver/performanceObserver.cjs.map +1 -1
  561. package/dist/utils/performanceObserver/performanceObserver.js +3 -3
  562. package/dist/utils/performanceObserver/performanceObserver.js.map +1 -1
  563. package/dist/utils/throttle.cjs +13 -9
  564. package/dist/utils/throttle.cjs.map +1 -1
  565. package/dist/utils/throttle.d.cts +6 -3
  566. package/dist/utils/throttle.d.cts.map +1 -1
  567. package/dist/utils/throttle.d.ts +6 -3
  568. package/dist/utils/throttle.d.ts.map +1 -1
  569. package/dist/utils/throttle.js +13 -9
  570. package/dist/utils/throttle.js.map +1 -1
  571. package/package.json +56 -56
  572. package/dist/api-sessions/api/SessionAPI/types.d.cts +0 -8
  573. package/dist/api-sessions/api/SessionAPI/types.d.cts.map +0 -1
  574. package/dist/api-sessions/api/SessionAPI/types.d.ts +0 -8
  575. package/dist/api-sessions/api/SessionAPI/types.d.ts.map +0 -1
  576. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.cjs +0 -31
  577. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.cjs.map +0 -1
  578. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.d.cts +0 -24
  579. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.d.cts.map +0 -1
  580. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.d.ts +0 -24
  581. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.d.ts.map +0 -1
  582. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.js +0 -30
  583. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.js.map +0 -1
  584. package/dist/api-sessions/manager/NoOpSpanSessionManager/index.cjs +0 -3
  585. package/dist/api-sessions/manager/NoOpSpanSessionManager/index.d.cts +0 -2
  586. package/dist/api-sessions/manager/NoOpSpanSessionManager/index.d.ts +0 -2
  587. package/dist/api-sessions/manager/NoOpSpanSessionManager/index.js +0 -2
  588. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.cjs +0 -55
  589. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.cjs.map +0 -1
  590. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.d.cts +0 -27
  591. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.d.cts.map +0 -1
  592. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.d.ts +0 -27
  593. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.d.ts.map +0 -1
  594. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.js +0 -55
  595. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.js.map +0 -1
  596. package/dist/api-sessions/manager/ProxySpanSessionManager/index.cjs +0 -3
  597. package/dist/api-sessions/manager/ProxySpanSessionManager/index.d.cts +0 -2
  598. package/dist/api-sessions/manager/ProxySpanSessionManager/index.d.ts +0 -2
  599. package/dist/api-sessions/manager/ProxySpanSessionManager/index.js +0 -2
  600. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.cjs +0 -27
  601. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.cjs.map +0 -1
  602. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.d.cts +0 -15
  603. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.d.cts.map +0 -1
  604. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.d.ts +0 -15
  605. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.d.ts.map +0 -1
  606. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.js +0 -25
  607. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.js.map +0 -1
  608. package/dist/instrumentations/fetch/MXLFetchInstrumentation/index.cjs +0 -3
  609. package/dist/instrumentations/fetch/MXLFetchInstrumentation/index.d.cts +0 -2
  610. package/dist/instrumentations/fetch/MXLFetchInstrumentation/index.d.ts +0 -2
  611. package/dist/instrumentations/fetch/MXLFetchInstrumentation/index.js +0 -2
  612. package/dist/instrumentations/fetch/MXLFetchInstrumentation/types.d.cts +0 -9
  613. package/dist/instrumentations/fetch/MXLFetchInstrumentation/types.d.cts.map +0 -1
  614. package/dist/instrumentations/fetch/MXLFetchInstrumentation/types.d.ts +0 -9
  615. package/dist/instrumentations/fetch/MXLFetchInstrumentation/types.d.ts.map +0 -1
  616. package/dist/instrumentations/fetch/index.cjs +0 -3
  617. package/dist/instrumentations/fetch/index.d.cts +0 -3
  618. package/dist/instrumentations/fetch/index.d.ts +0 -3
  619. package/dist/instrumentations/fetch/index.js +0 -2
  620. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.cjs +0 -60
  621. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.cjs.map +0 -1
  622. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.d.cts +0 -24
  623. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.d.cts.map +0 -1
  624. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.d.ts +0 -24
  625. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.d.ts.map +0 -1
  626. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.js +0 -59
  627. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.js.map +0 -1
  628. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.cjs +0 -19
  629. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.cjs.map +0 -1
  630. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.d.cts +0 -10
  631. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.d.cts.map +0 -1
  632. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.d.ts +0 -10
  633. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.d.ts.map +0 -1
  634. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.js +0 -16
  635. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.js.map +0 -1
  636. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/index.cjs +0 -3
  637. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/index.d.cts +0 -3
  638. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/index.d.ts +0 -3
  639. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/index.js +0 -2
  640. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/types.d.cts +0 -6
  641. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/types.d.cts.map +0 -1
  642. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/types.d.ts +0 -6
  643. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/types.d.ts.map +0 -1
  644. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.cjs +0 -24
  645. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.cjs.map +0 -1
  646. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.d.cts +0 -14
  647. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.d.cts.map +0 -1
  648. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.d.ts +0 -14
  649. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.d.ts.map +0 -1
  650. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.js +0 -23
  651. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.js.map +0 -1
  652. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/index.cjs +0 -3
  653. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/index.d.cts +0 -3
  654. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/index.d.ts +0 -3
  655. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/index.js +0 -2
  656. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/types.d.cts +0 -6
  657. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/types.d.cts.map +0 -1
  658. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/types.d.ts +0 -6
  659. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/types.d.ts.map +0 -1
  660. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.cjs +0 -55
  661. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.cjs.map +0 -1
  662. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.d.cts +0 -22
  663. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.d.cts.map +0 -1
  664. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.d.ts +0 -22
  665. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.d.ts.map +0 -1
  666. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.js +0 -54
  667. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.js.map +0 -1
  668. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.cjs +0 -7
  669. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.cjs.map +0 -1
  670. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.d.cts +0 -5
  671. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.d.cts.map +0 -1
  672. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.d.ts +0 -5
  673. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.d.ts.map +0 -1
  674. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.js +0 -6
  675. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.js.map +0 -1
  676. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/index.cjs +0 -3
  677. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/index.d.cts +0 -3
  678. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/index.d.ts +0 -3
  679. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/index.js +0 -2
  680. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.cjs +0 -0
  681. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.d.cts +0 -6
  682. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.d.cts.map +0 -1
  683. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.d.ts +0 -6
  684. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.d.ts.map +0 -1
  685. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.js +0 -0
  686. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.cjs +0 -38
  687. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.cjs.map +0 -1
  688. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.d.cts +0 -17
  689. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.d.cts.map +0 -1
  690. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.d.ts +0 -17
  691. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.d.ts.map +0 -1
  692. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.js +0 -37
  693. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.js.map +0 -1
  694. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/index.cjs +0 -3
  695. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/index.d.cts +0 -3
  696. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/index.d.ts +0 -3
  697. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/index.js +0 -2
  698. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.cjs +0 -0
  699. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.d.cts +0 -10
  700. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.d.cts.map +0 -1
  701. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.d.ts +0 -10
  702. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.d.ts.map +0 -1
  703. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.js +0 -0
  704. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.cjs +0 -27
  705. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.cjs.map +0 -1
  706. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.d.cts +0 -15
  707. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.d.cts.map +0 -1
  708. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.d.ts +0 -15
  709. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.d.ts.map +0 -1
  710. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.js +0 -25
  711. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.js.map +0 -1
  712. package/dist/instrumentations/xhr/MXLXHRInstrumentation/index.cjs +0 -3
  713. package/dist/instrumentations/xhr/MXLXHRInstrumentation/index.d.cts +0 -2
  714. package/dist/instrumentations/xhr/MXLXHRInstrumentation/index.d.ts +0 -2
  715. package/dist/instrumentations/xhr/MXLXHRInstrumentation/index.js +0 -2
  716. package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.cjs +0 -0
  717. package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.d.cts +0 -9
  718. package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.d.cts.map +0 -1
  719. package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.d.ts +0 -9
  720. package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.d.ts.map +0 -1
  721. package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.js +0 -0
  722. package/dist/instrumentations/xhr/index.cjs +0 -3
  723. package/dist/instrumentations/xhr/index.d.cts +0 -3
  724. package/dist/instrumentations/xhr/index.d.ts +0 -3
  725. package/dist/instrumentations/xhr/index.js +0 -2
  726. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.cjs +0 -350
  727. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.cjs.map +0 -1
  728. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.d.cts +0 -72
  729. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.d.cts.map +0 -1
  730. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.d.ts +0 -72
  731. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.d.ts.map +0 -1
  732. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.js +0 -348
  733. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.js.map +0 -1
  734. package/dist/managers/MXLSpanSessionManager/constants.cjs +0 -11
  735. package/dist/managers/MXLSpanSessionManager/constants.cjs.map +0 -1
  736. package/dist/managers/MXLSpanSessionManager/constants.d.cts +0 -7
  737. package/dist/managers/MXLSpanSessionManager/constants.d.cts.map +0 -1
  738. package/dist/managers/MXLSpanSessionManager/constants.d.ts +0 -7
  739. package/dist/managers/MXLSpanSessionManager/constants.d.ts.map +0 -1
  740. package/dist/managers/MXLSpanSessionManager/constants.js +0 -8
  741. package/dist/managers/MXLSpanSessionManager/constants.js.map +0 -1
  742. package/dist/managers/MXLSpanSessionManager/index.cjs +0 -3
  743. package/dist/managers/MXLSpanSessionManager/index.d.cts +0 -3
  744. package/dist/managers/MXLSpanSessionManager/index.d.ts +0 -3
  745. package/dist/managers/MXLSpanSessionManager/index.js +0 -2
  746. package/dist/managers/MXLSpanSessionManager/types.cjs +0 -0
  747. package/dist/managers/MXLSpanSessionManager/types.d.cts +0 -41
  748. package/dist/managers/MXLSpanSessionManager/types.d.cts.map +0 -1
  749. package/dist/managers/MXLSpanSessionManager/types.d.ts +0 -41
  750. package/dist/managers/MXLSpanSessionManager/types.d.ts.map +0 -1
  751. package/dist/managers/MXLSpanSessionManager/types.js +0 -0
  752. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.cjs +0 -28
  753. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.cjs.map +0 -1
  754. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.d.cts +0 -16
  755. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.d.cts.map +0 -1
  756. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.d.ts +0 -16
  757. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.d.ts.map +0 -1
  758. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.js +0 -26
  759. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.js.map +0 -1
  760. package/dist/processors/IdentifiableSessionLogRecordProcessor/index.cjs +0 -3
  761. package/dist/processors/IdentifiableSessionLogRecordProcessor/index.d.cts +0 -2
  762. package/dist/processors/IdentifiableSessionLogRecordProcessor/index.d.ts +0 -2
  763. package/dist/processors/IdentifiableSessionLogRecordProcessor/index.js +0 -2
  764. package/dist/processors/IdentifiableSessionLogRecordProcessor/types.cjs +0 -0
  765. package/dist/processors/IdentifiableSessionLogRecordProcessor/types.d.cts +0 -9
  766. package/dist/processors/IdentifiableSessionLogRecordProcessor/types.d.cts.map +0 -1
  767. package/dist/processors/IdentifiableSessionLogRecordProcessor/types.d.ts +0 -9
  768. package/dist/processors/IdentifiableSessionLogRecordProcessor/types.d.ts.map +0 -1
  769. package/dist/processors/IdentifiableSessionLogRecordProcessor/types.js +0 -0
  770. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.cjs +0 -95
  771. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.cjs.map +0 -1
  772. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.d.cts +0 -34
  773. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.d.cts.map +0 -1
  774. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.d.ts +0 -34
  775. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.d.ts.map +0 -1
  776. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.js +0 -93
  777. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.js.map +0 -1
  778. package/dist/processors/MXLSessionBatchedSpanProcessor/index.cjs +0 -3
  779. package/dist/processors/MXLSessionBatchedSpanProcessor/index.d.cts +0 -2
  780. package/dist/processors/MXLSessionBatchedSpanProcessor/index.d.ts +0 -2
  781. package/dist/processors/MXLSessionBatchedSpanProcessor/index.js +0 -2
  782. package/dist/processors/MXLSessionBatchedSpanProcessor/types.cjs +0 -0
  783. package/dist/processors/MXLSessionBatchedSpanProcessor/types.d.cts +0 -19
  784. package/dist/processors/MXLSessionBatchedSpanProcessor/types.d.cts.map +0 -1
  785. package/dist/processors/MXLSessionBatchedSpanProcessor/types.d.ts +0 -19
  786. package/dist/processors/MXLSessionBatchedSpanProcessor/types.d.ts.map +0 -1
  787. package/dist/processors/MXLSessionBatchedSpanProcessor/types.js +0 -0
  788. package/dist/sdk/setupSessionRecorder.cjs +0 -87
  789. package/dist/sdk/setupSessionRecorder.cjs.map +0 -1
  790. package/dist/sdk/setupSessionRecorder.d.cts +0 -30
  791. package/dist/sdk/setupSessionRecorder.d.cts.map +0 -1
  792. package/dist/sdk/setupSessionRecorder.d.ts +0 -30
  793. package/dist/sdk/setupSessionRecorder.d.ts.map +0 -1
  794. package/dist/sdk/setupSessionRecorder.js +0 -83
  795. package/dist/sdk/setupSessionRecorder.js.map +0 -1
  796. package/dist/utils/MXLSpanStorage/MXLSpanStorage.cjs +0 -116
  797. package/dist/utils/MXLSpanStorage/MXLSpanStorage.cjs.map +0 -1
  798. package/dist/utils/MXLSpanStorage/MXLSpanStorage.d.cts +0 -42
  799. package/dist/utils/MXLSpanStorage/MXLSpanStorage.d.cts.map +0 -1
  800. package/dist/utils/MXLSpanStorage/MXLSpanStorage.d.ts +0 -42
  801. package/dist/utils/MXLSpanStorage/MXLSpanStorage.d.ts.map +0 -1
  802. package/dist/utils/MXLSpanStorage/MXLSpanStorage.js +0 -114
  803. package/dist/utils/MXLSpanStorage/MXLSpanStorage.js.map +0 -1
  804. package/dist/utils/MXLSpanStorage/index.cjs +0 -3
  805. package/dist/utils/MXLSpanStorage/index.d.cts +0 -2
  806. package/dist/utils/MXLSpanStorage/index.d.ts +0 -2
  807. package/dist/utils/MXLSpanStorage/index.js +0 -2
  808. package/dist/utils/MXLSpanStorage/types.cjs +0 -0
  809. package/dist/utils/MXLSpanStorage/types.d.cts +0 -2
  810. package/dist/utils/MXLSpanStorage/types.d.ts +0 -2
  811. package/dist/utils/MXLSpanStorage/types.js +0 -0
  812. /package/dist/{api-sessions/api/SessionAPI → instrumentations/replay/ReplayInstrumentation}/types.cjs +0 -0
  813. /package/dist/{api-sessions/api/SessionAPI → instrumentations/replay/ReplayInstrumentation}/types.js +0 -0
  814. /package/dist/{instrumentations/fetch/MXLFetchInstrumentation → managers/MXLUserSessionManager}/types.cjs +0 -0
  815. /package/dist/{instrumentations/fetch/MXLFetchInstrumentation → managers/MXLUserSessionManager}/types.js +0 -0
  816. /package/dist/{instrumentations/session/SpanSessionBrowserActivityInstrumentation → processors/MXLSessionPartBatchedSpanProcessor}/types.cjs +0 -0
  817. /package/dist/{instrumentations/session/SpanSessionBrowserActivityInstrumentation → processors/MXLSessionPartBatchedSpanProcessor}/types.js +0 -0
  818. /package/dist/{instrumentations/session/SpanSessionOnLoadInstrumentation → processors/UserSessionLogRecordProcessor}/types.cjs +0 -0
  819. /package/dist/{instrumentations/session/SpanSessionOnLoadInstrumentation → processors/UserSessionLogRecordProcessor}/types.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"initSDK.cjs","names":["DiagLogLevel","diag","registry","DiagConsoleLogger","OTelPerformanceManager","validateAppID","validateAppVersion","NamespacedStorage","MXLDynamicConfigManager","getWebSDKOverridableResource","getWebSDKResource","MXLSDKFeaturesManager","nsfConfigValidation","MXLLimitManager","DEFAULT_LIMITS","getDefaultAttributeScrubbers","MXLSessionBatchedSpanProcessor","MXLTraceExporter","BatchLogRecordProcessor","MXLLogExporter","MXLW3CTraceContextPropagator","createSessionRecordingControl","noopSessionRecording","setupDefaultInstrumentations","MXLUserManager","MXLSpanSessionManager","BrowserSpanProcessor","MXLNetworkSpanProcessor","UserSpanProcessor","PageSpanProcessor","SpanScrubProcessor","BatchSpanProcessor","WebTracerProvider","MXLTraceManager","StackContextManager","IdentifiableSessionLogRecordProcessor","BrowserLogRecordProcessor","MXLLogRecordProcessor","UserLogRecordProcessor","LogRecordScrubProcessor","PageLogRecordProcessor","LoggerProvider","MXLLogManager","MXLPageManager"],"sources":["../../src/sdk/initSDK.ts"],"sourcesContent":["import { DiagConsoleLogger, DiagLogLevel, diag } from '@opentelemetry/api';\nimport { logs } from '@opentelemetry/api-logs';\nimport { registerInstrumentations } from '@opentelemetry/instrumentation';\nimport { emptyResource } from '@opentelemetry/resources';\nimport type { LogRecordProcessor } from '@opentelemetry/sdk-logs';\nimport {\n BatchLogRecordProcessor,\n LoggerProvider,\n} from '@opentelemetry/sdk-logs';\nimport type { SpanProcessor } from '@opentelemetry/sdk-trace-web';\nimport {\n BatchSpanProcessor,\n StackContextManager,\n WebTracerProvider,\n} from '@opentelemetry/sdk-trace-web';\nimport { createSessionSpanProcessor } from '@opentelemetry/web-common';\nimport { log } from '../api-logs';\nimport { page } from '../api-page';\nimport { session } from '../api-sessions';\nimport { trace } from '../api-traces';\nimport { user } from '../api-users';\nimport type { AttributeScrubber } from '../common';\nimport { MXLLogExporter, MXLTraceExporter } from '../exporters';\nimport {\n DEFAULT_LIMITS,\n MXLDynamicConfigManager,\n MXLLimitManager,\n MXLLogManager,\n MXLPageManager,\n MXLSDKFeaturesManager,\n MXLSpanSessionManager,\n MXLTraceManager,\n MXLUserManager,\n} from '../managers';\nimport {\n BrowserLogRecordProcessor,\n BrowserSpanProcessor,\n IdentifiableSessionLogRecordProcessor,\n LogRecordScrubProcessor,\n MXLLogRecordProcessor,\n MXLNetworkSpanProcessor,\n MXLSessionBatchedSpanProcessor,\n PageLogRecordProcessor,\n PageSpanProcessor,\n SpanScrubProcessor,\n UserLogRecordProcessor,\n UserSpanProcessor,\n} from '../processors';\nimport { MXLW3CTraceContextPropagator } from '../propagators';\nimport {\n getWebSDKOverridableResource,\n getWebSDKResource,\n OTEL_DEFAULT_SERVICE_NAME,\n} from '../resources';\nimport {\n NamespacedStorage,\n nsfConfigValidation,\n OTelPerformanceManager,\n} from '../utils';\nimport { getDefaultAttributeScrubbers } from './defaultAttributeScrubbers';\nimport { noopSessionRecording } from './noopSessionRecording';\nimport { registry } from './registry';\nimport { createSessionRecordingControl } from './setupSessionRecorder';\nimport { setupDefaultInstrumentations } from './setupDefaultInstrumentations';\nimport type {\n DynamicSDKConfig,\n SDKControl,\n SDKInitConfig,\n SetupLogsArgs,\n SetupPageArgs,\n SetupSessionArgs,\n SetupTracesArgs,\n SetupUserArgs,\n} from './types';\nimport { validateAppID, validateAppVersion } from './utils';\n\nexport const initSDK = (\n {\n appID,\n appVersion,\n resource = emptyResource(),\n spanExporters = [],\n logExporters = [],\n spanProcessors = [],\n propagator = null,\n defaultInstrumentationConfig,\n instrumentations = [],\n contextManager = null,\n logProcessors = [],\n attributeScrubbers = [],\n enableDefaultAttributeScrubbing = true,\n additionalQueryParamsToScrub = [],\n logLevel = DiagLogLevel.ERROR,\n mxlDataURL,\n mxlConfigURL,\n diagLogger = diag.createComponentLogger({\n namespace: 'mxl-sdk',\n }),\n dynamicSDKConfigManager: providedDynamicSDKConfigManager,\n dynamicSDKConfig,\n registerGlobally = true,\n blockNetworkSpanForwarding = false,\n restrictedProtocols = new Set(['file:']),\n useDocumentTitleAsPageLabel = true,\n recordUserSessions = true,\n sessionRecorder,\n serviceName,\n }: SDKInitConfig = {} as SDKInitConfig,\n): SDKControl | false => {\n try {\n if (registerGlobally) {\n const existingSDK = registry.registered();\n if (existingSDK !== null) {\n diagLogger.warn(\n 'SDK has already been successfully initialized, skipping this invocation of initSDK',\n );\n return existingSDK;\n }\n }\n\n diag.setLogger(new DiagConsoleLogger(), {\n logLevel,\n });\n\n if (typeof window === 'undefined') {\n diagLogger.warn('browser not detected, skipping initialization');\n return false;\n }\n\n const perf = new OTelPerformanceManager();\n const initSDKStart = perf.getNowMillis();\n const validatedAppID = validateAppID(appID);\n const validatedAppVersion = validateAppVersion(appVersion);\n\n const sendingToMXL = validatedAppID !== undefined;\n\n if (!sendingToMXL && !logExporters.length && !spanExporters.length) {\n throw new Error(\n 'when appID is omitted, at least one logExporter or spanExporter must be set',\n );\n }\n\n if (restrictedProtocols.has(window.location.protocol)) {\n throw new Error(\n `not initializing due to restricted protocol: ${window.location.protocol}`,\n );\n }\n\n if (sendingToMXL && typeof CompressionStream === 'undefined') {\n throw new Error(\n 'CompressionStream is not supported in this browser and required for data compression.',\n );\n }\n\n const useNamespace = !registerGlobally && appID;\n const sdkLocalStorage = useNamespace\n ? new NamespacedStorage(appID, window.localStorage)\n : window.localStorage;\n const sdkSessionStorage = useNamespace\n ? new NamespacedStorage(appID, window.sessionStorage)\n : window.sessionStorage;\n\n const userManager = setupUser({ registerGlobally, sdkLocalStorage });\n const enduserPseudoID = userManager.getMXLUserId();\n if (sendingToMXL && !enduserPseudoID) {\n throw new Error('userID is required when using MXL exporter');\n }\n\n const dynamicDefaultConfig = {\n ...dynamicSDKConfig,\n };\n\n const dynamicConfigManager =\n providedDynamicSDKConfigManager ??\n new MXLDynamicConfigManager({\n appID: validatedAppID,\n appVersion: validatedAppVersion,\n mxlConfigURL,\n defaultConfig: dynamicDefaultConfig,\n deviceId: enduserPseudoID,\n storage: sdkLocalStorage,\n });\n void dynamicConfigManager.refreshRemoteConfig();\n\n const resolvedServiceName =\n dynamicConfigManager.resolveApplicationServiceName?.(serviceName) ??\n (() => {\n const fromInit = serviceName?.trim();\n if (fromInit) {\n return fromInit;\n }\n const fromCfg = dynamicConfigManager.getConfig().serviceName?.trim();\n if (fromCfg) {\n return fromCfg;\n }\n return OTEL_DEFAULT_SERVICE_NAME;\n })();\n\n const resourceWithWebSDKAttributes = getWebSDKOverridableResource({\n serviceName: resolvedServiceName,\n })\n .merge(resource)\n .merge(\n getWebSDKResource({\n diagLogger,\n appVersion: validatedAppVersion,\n pageSessionStorage: sdkSessionStorage,\n }),\n );\n\n const sdkFeaturesManager = new MXLSDKFeaturesManager({\n dynamicConfigManager,\n deviceId: enduserPseudoID,\n blockNetworkSpanForwarding,\n });\n\n if (!sdkFeaturesManager.isSDKEnabled()) {\n diagLogger.debug('SDK is disabled, skipping initialization.');\n\n return false;\n }\n\n const nsfValid = nsfConfigValidation({\n featureManager: sdkFeaturesManager,\n diag: diagLogger,\n registerGlobally,\n defaultInstrumentationConfig,\n propagator,\n });\n\n const limitManager = new MXLLimitManager(DEFAULT_LIMITS);\n\n const finalAttributeScrubbers: AttributeScrubber[] = [\n ...(enableDefaultAttributeScrubbing\n ? getDefaultAttributeScrubbers(additionalQueryParamsToScrub)\n : []),\n ...attributeScrubbers,\n ];\n\n const spanSessionManager = setupSession({\n limitManager,\n registerGlobally,\n sdkLocalStorage,\n sdkSessionStorage,\n });\n\n let mxlSpanProcessor: MXLSessionBatchedSpanProcessor | undefined;\n let mxlLogProcessor: BatchLogRecordProcessor | undefined;\n if (sendingToMXL) {\n mxlSpanProcessor = new MXLSessionBatchedSpanProcessor({\n resource: resourceWithWebSDKAttributes,\n exporter: new MXLTraceExporter({\n appID: validatedAppID,\n mxlDataURL,\n userID: enduserPseudoID,\n }),\n limitManager,\n storedSpansExpireTimeoutMS:\n defaultInstrumentationConfig?.['session-visibility']\n ?.storedSpansExpireTimeoutMS,\n storage: sdkLocalStorage,\n spanSessionManager,\n });\n\n mxlLogProcessor = new BatchLogRecordProcessor(\n new MXLLogExporter({\n appID: validatedAppID,\n mxlDataURL,\n userID: enduserPseudoID,\n }),\n );\n }\n\n const pageManager = setupPage({\n useDocumentTitleAsPageLabel,\n registerGlobally,\n });\n\n const { tracerProvider, mxlTraceManager } = setupTraces({\n resource: resourceWithWebSDKAttributes,\n spanSessionManager,\n userManager,\n spanExporters,\n spanProcessors,\n propagator: nsfValid ? new MXLW3CTraceContextPropagator() : propagator,\n contextManager,\n attributeScrubbers: finalAttributeScrubbers,\n registerGlobally,\n mxlSpanProcessor,\n pageManager,\n });\n\n spanSessionManager.setTracerProvider(tracerProvider);\n\n const { loggerProvider, mxlLogManager } = setupLogs({\n resource: resourceWithWebSDKAttributes,\n userManager,\n logExporters,\n logProcessors,\n spanSessionManager,\n limitManager,\n attributeScrubbers: finalAttributeScrubbers,\n registerGlobally,\n mxlLogProcessor,\n sdkLocalStorage,\n pageManager,\n });\n\n spanSessionManager.startSessionSpan({ reason: 'init' });\n\n const windowDisableSessionRec =\n typeof window !== 'undefined' &&\n (window as unknown as { __MXL_DISABLE_SESSION_RECORDER?: boolean })\n .__MXL_DISABLE_SESSION_RECORDER === true;\n\n const sessionRecording =\n sendingToMXL &&\n validatedAppID &&\n enduserPseudoID &&\n !windowDisableSessionRec\n ? createSessionRecordingControl({\n resource: resourceWithWebSDKAttributes,\n spanSessionManager,\n tracerProvider,\n appID: validatedAppID,\n userID: enduserPseudoID,\n mxlDataURL,\n recordUserSessions,\n sessionRecorder,\n diagLogger,\n })\n : noopSessionRecording;\n\n // NOTE: we require setupInstrumentation to run the last, after setupLogs and setupTraces. This is how OTel works wrt\n // the dependencies between instrumentations and global providers. We need the providers for tracers, and logs to be\n // setup before we enable instrumentations.\n if (!registerGlobally) {\n registerInstrumentations({\n tracerProvider,\n loggerProvider,\n instrumentations: [\n setupDefaultInstrumentations(defaultInstrumentationConfig, {\n logManager: mxlLogManager,\n spanSessionManager,\n pageManager,\n limitManager,\n }),\n ...instrumentations,\n ],\n });\n } else {\n registerInstrumentations({\n instrumentations: [\n setupDefaultInstrumentations(defaultInstrumentationConfig, {\n spanSessionManager,\n pageManager,\n limitManager,\n }),\n ...instrumentations,\n ],\n });\n }\n\n diagLogger.info('successfully initialized the SDK');\n\n const sdkControl: SDKControl = {\n setDynamicConfig: (config: Partial<DynamicSDKConfig>) => {\n dynamicConfigManager.setConfig(config);\n },\n flush: async () => {\n await tracerProvider.forceFlush();\n await loggerProvider.forceFlush();\n },\n log: mxlLogManager,\n trace: mxlTraceManager,\n session: spanSessionManager,\n user: userManager,\n page: pageManager,\n sessionRecording,\n };\n\n if (registerGlobally) {\n registry.register(sdkControl);\n }\n\n spanSessionManager.recordSDKStartupDuration(\n perf.getNowMillis() - initSDKStart,\n );\n\n return sdkControl;\n } catch (e) {\n const message = e instanceof Error ? e.message : 'Unknown error.';\n diagLogger.error(`failed to initialize the SDK: ${message}`);\n return false;\n }\n};\n\nconst setupUser = ({ registerGlobally, sdkLocalStorage }: SetupUserArgs) => {\n const mxlUserManager = new MXLUserManager({\n storage: sdkLocalStorage,\n });\n\n if (registerGlobally) {\n user.setGlobalUserManager(mxlUserManager);\n }\n\n return mxlUserManager;\n};\n\nconst setupSession = ({\n limitManager,\n registerGlobally,\n sdkLocalStorage,\n sdkSessionStorage,\n}: SetupSessionArgs) => {\n const mxlSpanSessionManager = new MXLSpanSessionManager({\n limitManager,\n storage: sdkLocalStorage,\n sessionStorage: sdkSessionStorage,\n });\n\n if (registerGlobally) {\n session.setGlobalSessionManager(mxlSpanSessionManager);\n }\n\n return mxlSpanSessionManager;\n};\n\nconst setupTraces = ({\n resource,\n spanSessionManager,\n userManager,\n spanExporters,\n spanProcessors = [],\n propagator = null,\n contextManager = null,\n attributeScrubbers,\n registerGlobally,\n mxlSpanProcessor,\n pageManager,\n}: SetupTracesArgs) => {\n const finalSpanProcessors: SpanProcessor[] = [\n ...spanProcessors,\n createSessionSpanProcessor(spanSessionManager),\n new BrowserSpanProcessor(),\n new MXLNetworkSpanProcessor(),\n new UserSpanProcessor({ userManager }),\n new PageSpanProcessor({ pageManager }),\n new SpanScrubProcessor({ attributeScrubbers }),\n ];\n\n spanExporters?.forEach((exporter) => {\n finalSpanProcessors.push(new BatchSpanProcessor(exporter));\n });\n\n if (mxlSpanProcessor) {\n finalSpanProcessors.push(mxlSpanProcessor);\n }\n\n const tracerProvider = new WebTracerProvider({\n resource,\n spanProcessors: finalSpanProcessors,\n spanLimits: {\n // Session properties are stored as attributes on the session span, add a\n // buffer here so that there is room for our internal attributes\n attributeCountLimit: DEFAULT_LIMITS.maxAllowed.session_property * 2,\n // Breadcrumbs are stored as events on the session span, add a\n // buffer here so that there is room for our internal events\n eventCountLimit: DEFAULT_LIMITS.maxAllowed.breadcrumb * 2,\n },\n });\n\n const mxlTraceManager = new MXLTraceManager({\n tracerProvider: registerGlobally ? undefined : tracerProvider,\n });\n\n if (registerGlobally) {\n trace.setGlobalTraceManager(mxlTraceManager);\n tracerProvider.register({\n // WebTracerProvider.register has different fallback behaviours depending on whether null or undefined is passed,\n // be more explicit here and always supply a StackContextManager if the config did not specify one. If a user really\n // wants to turn off context management they can pass a no-op manager explicitly:\n // https://github.com/open-telemetry/opentelemetry-js/blob/4f0b6285af24b71a9fa022755aaa3b6a63ae5033/packages/opentelemetry-sdk-trace-web/src/WebTracerProvider.ts#L39\n contextManager: contextManager || new StackContextManager(),\n propagator,\n });\n }\n\n return { tracerProvider, mxlTraceManager };\n};\n\nconst setupLogs = ({\n resource,\n userManager,\n logExporters,\n logProcessors,\n spanSessionManager,\n limitManager,\n attributeScrubbers,\n registerGlobally,\n mxlLogProcessor,\n sdkLocalStorage,\n pageManager,\n}: SetupLogsArgs) => {\n const finalLogProcessors: LogRecordProcessor[] = [\n ...logProcessors,\n new IdentifiableSessionLogRecordProcessor({\n spanSessionManager,\n }),\n new BrowserLogRecordProcessor(),\n new MXLLogRecordProcessor(),\n new UserLogRecordProcessor({ userManager }),\n new LogRecordScrubProcessor({ attributeScrubbers }),\n new PageLogRecordProcessor({ pageManager }),\n ];\n\n logExporters?.forEach((exporter) => {\n finalLogProcessors.push(new BatchLogRecordProcessor(exporter));\n });\n\n if (mxlLogProcessor) {\n finalLogProcessors.push(mxlLogProcessor);\n }\n\n const loggerProvider = new LoggerProvider({\n resource,\n processors: finalLogProcessors,\n });\n\n const mxlLogManager = new MXLLogManager({\n spanSessionManager,\n limitManager,\n loggerProvider: registerGlobally ? undefined : loggerProvider,\n storage: sdkLocalStorage,\n });\n\n if (registerGlobally) {\n logs.setGlobalLoggerProvider(loggerProvider);\n log.setGlobalLogManager(mxlLogManager);\n }\n\n return { loggerProvider, mxlLogManager };\n};\n\nconst setupPage = ({\n useDocumentTitleAsPageLabel,\n registerGlobally,\n}: SetupPageArgs) => {\n const mxlPageManager = new MXLPageManager({\n useDocumentTitleAsPageLabel,\n });\n\n if (registerGlobally) {\n page.setGlobalPageManager(mxlPageManager);\n }\n\n return mxlPageManager;\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"initSDK.cjs","names":["DiagLogLevel","diag","DEFAULT_USER_SESSION_MAX_DURATION_SECONDS","DEFAULT_USER_SESSION_INACTIVITY_TIMEOUT_SECONDS","registry","DiagConsoleLogger","OTelPerformanceManager","validateAppID","validateAppVersion","NamespacedStorage","MXLDynamicConfigManager","getWebSDKOverridableResource","getWebSDKResource","MXLSDKFeaturesManager","nsfConfigValidation","MXLLimitManager","DEFAULT_LIMITS","getDefaultAttributeScrubbers","MXLSessionPartBatchedSpanProcessor","MXLTraceExporter","BatchLogRecordProcessor","MXLLogExporter","MXLW3CTraceContextPropagator","setupDefaultInstrumentations","ReplayInstrumentation","createSessionRecordingControlFromReplay","noopSessionRecording","MXLUserManager","MXLUserSessionManager","BrowserSpanProcessor","MXLNetworkSpanProcessor","UserSpanProcessor","PageSpanProcessor","SpanScrubProcessor","BatchSpanProcessor","WebTracerProvider","MXLTraceManager","StackContextManager","UserSessionLogRecordProcessor","BrowserLogRecordProcessor","MXLLogRecordProcessor","UserLogRecordProcessor","LogRecordScrubProcessor","PageLogRecordProcessor","LoggerProvider","MXLLogManager","MXLPageManager"],"sources":["../../src/sdk/initSDK.ts"],"sourcesContent":["import { DiagConsoleLogger, DiagLogLevel, diag } from '@opentelemetry/api';\nimport { logs } from '@opentelemetry/api-logs';\nimport { registerInstrumentations } from '@opentelemetry/instrumentation';\nimport { emptyResource } from '@opentelemetry/resources';\nimport type { LogRecordProcessor } from '@opentelemetry/sdk-logs';\nimport {\n BatchLogRecordProcessor,\n LoggerProvider,\n} from '@opentelemetry/sdk-logs';\nimport type { SpanProcessor } from '@opentelemetry/sdk-trace-web';\nimport {\n BatchSpanProcessor,\n StackContextManager,\n WebTracerProvider,\n} from '@opentelemetry/sdk-trace-web';\nimport { log } from '../api-logs';\nimport { page } from '../api-page';\nimport { session } from '../api-sessions';\nimport { trace } from '../api-traces';\nimport { user } from '../api-users';\nimport type { AttributeScrubber } from '../common';\nimport { MXLLogExporter, MXLTraceExporter } from '../exporters';\nimport {\n ReplayInstrumentation,\n createSessionRecordingControlFromReplay,\n} from '../instrumentations/replay';\nimport {\n DEFAULT_LIMITS,\n DEFAULT_USER_SESSION_INACTIVITY_TIMEOUT_SECONDS,\n DEFAULT_USER_SESSION_MAX_DURATION_SECONDS,\n MXLDynamicConfigManager,\n MXLLimitManager,\n MXLLogManager,\n MXLPageManager,\n MXLSDKFeaturesManager,\n MXLTraceManager,\n MXLUserManager,\n MXLUserSessionManager,\n} from '../managers';\nimport {\n BrowserLogRecordProcessor,\n BrowserSpanProcessor,\n LogRecordScrubProcessor,\n MXLLogRecordProcessor,\n MXLNetworkSpanProcessor,\n MXLSessionPartBatchedSpanProcessor,\n PageLogRecordProcessor,\n PageSpanProcessor,\n SpanScrubProcessor,\n UserLogRecordProcessor,\n UserSessionLogRecordProcessor,\n UserSpanProcessor,\n} from '../processors';\nimport { MXLW3CTraceContextPropagator } from '../propagators';\nimport {\n OTEL_DEFAULT_SERVICE_NAME,\n getWebSDKOverridableResource,\n getWebSDKResource,\n} from '../resources';\nimport {\n NamespacedStorage,\n OTelPerformanceManager,\n nsfConfigValidation,\n} from '../utils';\nimport { getDefaultAttributeScrubbers } from './defaultAttributeScrubbers';\nimport { noopSessionRecording } from './noopSessionRecording';\nimport { registry } from './registry';\nimport { setupDefaultInstrumentations } from './setupDefaultInstrumentations';\nimport type {\n DynamicSDKConfig,\n SDKControl,\n SDKInitConfig,\n SetupLogsArgs,\n SetupPageArgs,\n SetupTracesArgs,\n SetupUserArgs,\n SetupUserSessionArgs,\n} from './types';\nimport { validateAppID, validateAppVersion } from './utils';\n\nexport const initSDK = (\n {\n appID,\n appVersion,\n resource = emptyResource(),\n spanExporters = [],\n logExporters = [],\n spanProcessors = [],\n propagator = null,\n defaultInstrumentationConfig,\n instrumentations = [],\n contextManager = null,\n logProcessors = [],\n attributeScrubbers = [],\n enableDefaultAttributeScrubbing = true,\n additionalQueryParamsToScrub = [],\n logLevel = DiagLogLevel.ERROR,\n mxlDataURL,\n mxlConfigURL,\n diagLogger = diag.createComponentLogger({\n namespace: 'mxl-sdk',\n }),\n dynamicSDKConfigManager: providedDynamicSDKConfigManager,\n dynamicSDKConfig,\n registerGlobally = true,\n blockNetworkSpanForwarding = false,\n restrictedProtocols = new Set(['file:']),\n useDocumentTitleAsPageLabel = true,\n recordUserSessions = true,\n replay,\n serviceName,\n maxUserSessionDurationSeconds = DEFAULT_USER_SESSION_MAX_DURATION_SECONDS,\n inactivityTimeoutSeconds = DEFAULT_USER_SESSION_INACTIVITY_TIMEOUT_SECONDS,\n }: SDKInitConfig = {} as SDKInitConfig,\n): SDKControl | false => {\n try {\n if (registerGlobally) {\n const existingSDK = registry.registered();\n if (existingSDK !== null) {\n diagLogger.warn(\n 'SDK has already been successfully initialized, skipping this invocation of initSDK',\n );\n return existingSDK;\n }\n }\n\n diag.setLogger(new DiagConsoleLogger(), {\n logLevel,\n });\n\n if (typeof window === 'undefined') {\n diagLogger.warn('browser not detected, skipping initialization');\n return false;\n }\n\n const perf = new OTelPerformanceManager();\n const initSDKStart = perf.getNowMillis();\n const validatedAppID = validateAppID(appID);\n const validatedAppVersion = validateAppVersion(appVersion);\n\n const sendingToMXL = validatedAppID !== undefined;\n\n if (!sendingToMXL && !logExporters.length && !spanExporters.length) {\n throw new Error(\n 'when appID is omitted, at least one logExporter or spanExporter must be set',\n );\n }\n\n if (restrictedProtocols.has(window.location.protocol)) {\n throw new Error(\n `not initializing due to restricted protocol: ${window.location.protocol}`,\n );\n }\n\n if (sendingToMXL && typeof CompressionStream === 'undefined') {\n throw new Error(\n 'CompressionStream is not supported in this browser and required for data compression.',\n );\n }\n\n const namespace = registerGlobally ? undefined : validatedAppID;\n const sdkLocalStorage = new NamespacedStorage({\n diag: diagLogger,\n namespace,\n storage: window.localStorage,\n });\n const sdkSessionStorage = new NamespacedStorage({\n diag: diagLogger,\n namespace,\n storage: window.sessionStorage,\n });\n\n const userManager = setupUser({ registerGlobally, sdkLocalStorage });\n const enduserPseudoID = userManager.getMXLUserId();\n if (sendingToMXL && !enduserPseudoID) {\n throw new Error('userID is required when using MXL exporter');\n }\n\n const dynamicDefaultConfig = {\n ...dynamicSDKConfig,\n };\n\n const dynamicConfigManager =\n providedDynamicSDKConfigManager ??\n new MXLDynamicConfigManager({\n appID: validatedAppID,\n appVersion: validatedAppVersion,\n defaultConfig: dynamicDefaultConfig,\n deviceId: enduserPseudoID,\n mxlConfigURL,\n storage: sdkLocalStorage,\n });\n void dynamicConfigManager.refreshRemoteConfig();\n\n const resolvedServiceName =\n dynamicConfigManager.resolveApplicationServiceName?.(serviceName) ??\n (() => {\n const fromInit = serviceName?.trim();\n if (fromInit) {\n return fromInit;\n }\n const fromCfg = dynamicConfigManager.getConfig().serviceName?.trim();\n if (fromCfg) {\n return fromCfg;\n }\n return OTEL_DEFAULT_SERVICE_NAME;\n })();\n\n const resourceWithWebSDKAttributes = getWebSDKOverridableResource({\n serviceName: resolvedServiceName,\n })\n .merge(resource)\n .merge(\n getWebSDKResource({\n appVersion: validatedAppVersion,\n diagLogger,\n pageSessionStorage: sdkSessionStorage,\n }),\n );\n\n const sdkFeaturesManager = new MXLSDKFeaturesManager({\n blockNetworkSpanForwarding,\n deviceId: enduserPseudoID,\n dynamicConfigManager,\n });\n\n if (!sdkFeaturesManager.isSDKEnabled()) {\n diagLogger.debug('SDK is disabled, skipping initialization.');\n\n return false;\n }\n\n const nsfValid = nsfConfigValidation({\n defaultInstrumentationConfig,\n diag: diagLogger,\n featureManager: sdkFeaturesManager,\n propagator,\n registerGlobally,\n });\n\n const limitManager = new MXLLimitManager(DEFAULT_LIMITS);\n\n const finalAttributeScrubbers: AttributeScrubber[] = [\n ...(enableDefaultAttributeScrubbing\n ? getDefaultAttributeScrubbers(additionalQueryParamsToScrub)\n : []),\n ...attributeScrubbers,\n ];\n\n const userSessionManager = setupUserSession({\n limitManager,\n perf,\n registerGlobally,\n sdkLocalStorage,\n sdkSessionStorage,\n userSessionConfig: {\n inactivityTimeoutSeconds,\n maxUserSessionDurationSeconds,\n },\n });\n\n let mxlSpanProcessor: MXLSessionPartBatchedSpanProcessor | undefined;\n let mxlLogProcessor: BatchLogRecordProcessor | undefined;\n if (sendingToMXL) {\n mxlSpanProcessor = new MXLSessionPartBatchedSpanProcessor({\n exporter: new MXLTraceExporter({\n appID: validatedAppID,\n mxlDataURL,\n userID: enduserPseudoID,\n }),\n limitManager,\n userSessionManager,\n });\n\n mxlLogProcessor = new BatchLogRecordProcessor(\n new MXLLogExporter({\n appID: validatedAppID,\n mxlDataURL,\n userID: enduserPseudoID,\n }),\n );\n }\n\n const pageManager = setupPage({\n registerGlobally,\n useDocumentTitleAsPageLabel,\n });\n\n const { tracerProvider, mxlTraceManager } = setupTraces({\n attributeScrubbers: finalAttributeScrubbers,\n contextManager,\n mxlSpanProcessor,\n pageManager,\n propagator: nsfValid ? new MXLW3CTraceContextPropagator() : propagator,\n registerGlobally,\n resource: resourceWithWebSDKAttributes,\n spanExporters,\n spanProcessors,\n userManager,\n });\n\n userSessionManager.setTracerProvider(tracerProvider);\n\n const { loggerProvider, mxlLogManager } = setupLogs({\n attributeScrubbers: finalAttributeScrubbers,\n limitManager,\n logExporters,\n logProcessors,\n mxlLogProcessor,\n pageManager,\n registerGlobally,\n resource: resourceWithWebSDKAttributes,\n sdkLocalStorage,\n userManager,\n userSessionManager,\n visibilityDoc: window.document,\n });\n\n userSessionManager.startSessionPartInternal('init');\n\n const windowDisableSessionRec =\n typeof window !== 'undefined' &&\n (window as unknown as { __MXL_DISABLE_SESSION_RECORDER?: boolean })\n .__MXL_DISABLE_SESSION_RECORDER === true;\n\n const includeReplay = Boolean(\n sendingToMXL &&\n validatedAppID &&\n enduserPseudoID &&\n !windowDisableSessionRec,\n );\n\n const replayUserOptions = replay;\n\n const buildDefaultInstrumentations = () =>\n setupDefaultInstrumentations(defaultInstrumentationConfig, {\n includeReplay,\n limitManager,\n logManager: mxlLogManager,\n pageManager,\n recordUserSessions,\n replayOptions: replayUserOptions,\n userSessionManager,\n });\n\n // NOTE: we require setupInstrumentation to run the last, after setupLogs and setupTraces. This is how OTel works wrt\n // The dependencies between instrumentations and global providers. We need the providers for tracers, and logs to be\n // Setup before we enable instrumentations.\n let replayInstrumentation: ReplayInstrumentation | undefined;\n\n let disableInstrumentations: (() => void) | undefined;\n\n if (!registerGlobally) {\n const defaultInstrumentations = buildDefaultInstrumentations();\n replayInstrumentation = defaultInstrumentations.find(\n (instrumentation): instrumentation is ReplayInstrumentation =>\n instrumentation instanceof ReplayInstrumentation,\n );\n\n disableInstrumentations = registerInstrumentations({\n instrumentations: [...defaultInstrumentations, ...instrumentations],\n loggerProvider,\n tracerProvider,\n });\n } else {\n const defaultInstrumentations = setupDefaultInstrumentations(\n defaultInstrumentationConfig,\n {\n includeReplay,\n limitManager,\n pageManager,\n recordUserSessions,\n replayOptions: replayUserOptions,\n userSessionManager,\n },\n );\n replayInstrumentation = defaultInstrumentations.find(\n (instrumentation): instrumentation is ReplayInstrumentation =>\n instrumentation instanceof ReplayInstrumentation,\n );\n\n disableInstrumentations = registerInstrumentations({\n instrumentations: [...defaultInstrumentations, ...instrumentations],\n });\n }\n\n let shutdownCalled = false;\n let stopCalled = false;\n\n const stopSdk = (): void => {\n if (stopCalled) {\n return;\n }\n stopCalled = true;\n\n replayInstrumentation?.disable();\n disableInstrumentations?.();\n userSessionManager._shutdown();\n };\n\n const sessionRecording = replayInstrumentation\n ? createSessionRecordingControlFromReplay(replayInstrumentation)\n : noopSessionRecording;\n\n diagLogger.info('successfully initialized the SDK');\n\n const sdkControl: SDKControl = {\n flush: async () => {\n await tracerProvider.forceFlush();\n await loggerProvider.forceFlush();\n },\n log: mxlLogManager,\n page: pageManager,\n session: userSessionManager,\n sessionRecording,\n setDynamicConfig: (config: Partial<DynamicSDKConfig>) => {\n dynamicConfigManager.setConfig(config);\n },\n shutdown: async () => {\n if (shutdownCalled) {\n return;\n }\n shutdownCalled = true;\n stopSdk();\n await tracerProvider.shutdown();\n await loggerProvider.shutdown();\n },\n stop: stopSdk,\n trace: mxlTraceManager,\n user: userManager,\n };\n\n if (registerGlobally) {\n registry.register(sdkControl);\n }\n\n userSessionManager.recordSDKStartupDuration(\n perf.getNowMillis() - initSDKStart,\n );\n\n return sdkControl;\n } catch (error) {\n const message = error instanceof Error ? error.message : 'Unknown error.';\n diagLogger.error(`failed to initialize the SDK: ${message}`);\n return false;\n }\n};\n\nconst setupUser = ({ registerGlobally, sdkLocalStorage }: SetupUserArgs) => {\n const mxlUserManager = new MXLUserManager({\n storage: sdkLocalStorage,\n });\n\n if (registerGlobally) {\n user.setGlobalUserManager(mxlUserManager);\n }\n\n return mxlUserManager;\n};\n\nconst setupUserSession = ({\n limitManager,\n perf,\n registerGlobally,\n sdkLocalStorage,\n sdkSessionStorage,\n userSessionConfig,\n}: SetupUserSessionArgs) => {\n const mxlUserSessionManager = new MXLUserSessionManager({\n config: userSessionConfig,\n limitManager,\n perf,\n storage: sdkLocalStorage,\n tabStorage: sdkSessionStorage,\n visibilityDoc: window.document,\n });\n\n if (registerGlobally) {\n session.setGlobalUserSessionManager(mxlUserSessionManager);\n }\n\n return mxlUserSessionManager;\n};\n\nconst setupTraces = ({\n resource,\n userManager,\n spanExporters,\n spanProcessors = [],\n propagator = null,\n contextManager = null,\n attributeScrubbers,\n registerGlobally,\n mxlSpanProcessor,\n pageManager,\n}: SetupTracesArgs) => {\n const finalSpanProcessors: SpanProcessor[] = [\n ...spanProcessors,\n new BrowserSpanProcessor(),\n new MXLNetworkSpanProcessor(),\n new UserSpanProcessor({ userManager }),\n new PageSpanProcessor({ pageManager }),\n new SpanScrubProcessor({ attributeScrubbers }),\n ];\n\n spanExporters?.forEach((exporter) => {\n finalSpanProcessors.push(new BatchSpanProcessor(exporter));\n });\n\n if (mxlSpanProcessor) {\n finalSpanProcessors.push(mxlSpanProcessor);\n }\n\n const tracerProvider = new WebTracerProvider({\n resource,\n spanLimits: {\n // Session properties are stored as attributes on the session span, add a\n // Buffer here so that there is room for our internal attributes\n attributeCountLimit: DEFAULT_LIMITS.maxAllowed.session_property * 2,\n // Breadcrumbs are stored as events on the session span, add a\n // Buffer here so that there is room for our internal events\n eventCountLimit: DEFAULT_LIMITS.maxAllowed.breadcrumb * 2,\n },\n spanProcessors: finalSpanProcessors,\n });\n\n const mxlTraceManager = new MXLTraceManager({\n tracerProvider: registerGlobally ? undefined : tracerProvider,\n });\n\n if (registerGlobally) {\n trace.setGlobalTraceManager(mxlTraceManager);\n tracerProvider.register({\n // WebTracerProvider.register has different fallback behaviours depending on whether null or undefined is passed,\n // Be more explicit here and always supply a StackContextManager if the config did not specify one. If a user really\n // Wants to turn off context management they can pass a no-op manager explicitly:\n // https://github.com/open-telemetry/opentelemetry-js/blob/4f0b6285af24b71a9fa022755aaa3b6a63ae5033/packages/opentelemetry-sdk-trace-web/src/WebTracerProvider.ts#L39\n contextManager: contextManager || new StackContextManager(),\n propagator,\n });\n }\n\n return { mxlTraceManager, tracerProvider };\n};\n\nconst setupLogs = ({\n resource,\n userManager,\n logExporters,\n logProcessors,\n userSessionManager,\n limitManager,\n attributeScrubbers,\n registerGlobally,\n mxlLogProcessor,\n sdkLocalStorage,\n pageManager,\n visibilityDoc = window.document,\n}: SetupLogsArgs) => {\n const finalLogProcessors: LogRecordProcessor[] = [\n ...logProcessors,\n new UserSessionLogRecordProcessor({\n userSessionManager,\n }),\n new BrowserLogRecordProcessor(),\n new MXLLogRecordProcessor(),\n new UserLogRecordProcessor({ userManager }),\n new LogRecordScrubProcessor({ attributeScrubbers }),\n new PageLogRecordProcessor({ pageManager }),\n ];\n\n logExporters?.forEach((exporter) => {\n finalLogProcessors.push(new BatchLogRecordProcessor(exporter));\n });\n\n if (mxlLogProcessor) {\n finalLogProcessors.push(mxlLogProcessor);\n }\n\n const loggerProvider = new LoggerProvider({\n processors: finalLogProcessors,\n resource,\n });\n\n const mxlLogManager = new MXLLogManager({\n limitManager,\n loggerProvider: registerGlobally ? undefined : loggerProvider,\n storage: sdkLocalStorage,\n userSessionManager,\n visibilityDoc,\n });\n\n if (registerGlobally) {\n logs.setGlobalLoggerProvider(loggerProvider);\n log.setGlobalLogManager(mxlLogManager);\n }\n\n return { loggerProvider, mxlLogManager };\n};\n\nconst setupPage = ({\n useDocumentTitleAsPageLabel,\n registerGlobally,\n}: SetupPageArgs) => {\n const mxlPageManager = new MXLPageManager({\n useDocumentTitleAsPageLabel,\n });\n\n if (registerGlobally) {\n page.setGlobalPageManager(mxlPageManager);\n }\n\n return mxlPageManager;\n};\n"],"mappings":"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"}
@@ -27,8 +27,10 @@ declare const initSDK: ({
27
27
  restrictedProtocols,
28
28
  useDocumentTitleAsPageLabel,
29
29
  recordUserSessions,
30
- sessionRecorder,
31
- serviceName
30
+ replay,
31
+ serviceName,
32
+ maxUserSessionDurationSeconds,
33
+ inactivityTimeoutSeconds
32
34
  }?: SDKInitConfig) => SDKControl | false;
33
35
  //#endregion
34
36
  export { initSDK };
@@ -1 +1 @@
1
- {"version":3,"file":"initSDK.d.cts","names":[],"sources":["../../src/sdk/initSDK.ts"],"mappings":";;;cA4Ea,OAAA;EACX,KAAA;EAAA,UAAA;EAAA,QAAA;EAAA,aAAA;EAAA,YAAA;EAAA,cAAA;EAAA,UAAA;EAAA,4BAAA;EAAA,gBAAA;EAAA,cAAA;EAAA,aAAA;EAAA,kBAAA;EAAA,+BAAA;EAAA,4BAAA;EAAA,QAAA;EAAA,UAAA;EAAA,YAAA;EAAA,UAAA;EAAA,uBAAA,EAAA,+BAAA;EAAA,gBAAA;EAAA,gBAAA;EAAA,0BAAA;EAAA,mBAAA;EAAA,2BAAA;EAAA,kBAAA;EAAA,eAAA;EAAA;AAAA,IA8BG,aAAA,KACF,UAAA"}
1
+ {"version":3,"file":"initSDK.d.cts","names":[],"sources":["../../src/sdk/initSDK.ts"],"mappings":";;;cAgFa,OAAA;EACX,KAAA;EAAA,UAAA;EAAA,QAAA;EAAA,aAAA;EAAA,YAAA;EAAA,cAAA;EAAA,UAAA;EAAA,4BAAA;EAAA,gBAAA;EAAA,cAAA;EAAA,aAAA;EAAA,kBAAA;EAAA,+BAAA;EAAA,4BAAA;EAAA,QAAA;EAAA,UAAA;EAAA,YAAA;EAAA,UAAA;EAAA,uBAAA,EAAA,+BAAA;EAAA,gBAAA;EAAA,gBAAA;EAAA,0BAAA;EAAA,mBAAA;EAAA,2BAAA;EAAA,kBAAA;EAAA,MAAA;EAAA,WAAA;EAAA,6BAAA;EAAA;AAAA,IAgCG,aAAA,KACF,UAAA"}
@@ -27,8 +27,10 @@ declare const initSDK: ({
27
27
  restrictedProtocols,
28
28
  useDocumentTitleAsPageLabel,
29
29
  recordUserSessions,
30
- sessionRecorder,
31
- serviceName
30
+ replay,
31
+ serviceName,
32
+ maxUserSessionDurationSeconds,
33
+ inactivityTimeoutSeconds
32
34
  }?: SDKInitConfig) => SDKControl | false;
33
35
  //#endregion
34
36
  export { initSDK };
@@ -1 +1 @@
1
- {"version":3,"file":"initSDK.d.ts","names":[],"sources":["../../src/sdk/initSDK.ts"],"mappings":";;;cA4Ea,OAAA;EACX,KAAA;EAAA,UAAA;EAAA,QAAA;EAAA,aAAA;EAAA,YAAA;EAAA,cAAA;EAAA,UAAA;EAAA,4BAAA;EAAA,gBAAA;EAAA,cAAA;EAAA,aAAA;EAAA,kBAAA;EAAA,+BAAA;EAAA,4BAAA;EAAA,QAAA;EAAA,UAAA;EAAA,YAAA;EAAA,UAAA;EAAA,uBAAA,EAAA,+BAAA;EAAA,gBAAA;EAAA,gBAAA;EAAA,0BAAA;EAAA,mBAAA;EAAA,2BAAA;EAAA,kBAAA;EAAA,eAAA;EAAA;AAAA,IA8BG,aAAA,KACF,UAAA"}
1
+ {"version":3,"file":"initSDK.d.ts","names":[],"sources":["../../src/sdk/initSDK.ts"],"mappings":";;;cAgFa,OAAA;EACX,KAAA;EAAA,UAAA;EAAA,QAAA;EAAA,aAAA;EAAA,YAAA;EAAA,cAAA;EAAA,UAAA;EAAA,4BAAA;EAAA,gBAAA;EAAA,cAAA;EAAA,aAAA;EAAA,kBAAA;EAAA,+BAAA;EAAA,4BAAA;EAAA,QAAA;EAAA,UAAA;EAAA,YAAA;EAAA,UAAA;EAAA,uBAAA,EAAA,+BAAA;EAAA,gBAAA;EAAA,gBAAA;EAAA,0BAAA;EAAA,mBAAA;EAAA,2BAAA;EAAA,kBAAA;EAAA,MAAA;EAAA,WAAA;EAAA,6BAAA;EAAA;AAAA,IAgCG,aAAA,KACF,UAAA"}
@@ -6,6 +6,10 @@ import { page } from "../api-page/pageAPI.js";
6
6
  import { session } from "../api-sessions/sessionAPI.js";
7
7
  import { trace as trace$1 } from "../api-traces/traceAPI.js";
8
8
  import { user } from "../api-users/userAPI.js";
9
+ import { ReplayInstrumentation } from "../instrumentations/replay/ReplayInstrumentation/ReplayInstrumentation.js";
10
+ import { createSessionRecordingControlFromReplay } from "../instrumentations/replay/createSessionRecordingControlFromReplay.js";
11
+ import { MXLLogExporter } from "../exporters/MXLLogExporter/MXLLogExporter.js";
12
+ import { MXLTraceExporter } from "../exporters/MXLTraceExporter/MXLTraceExporter.js";
9
13
  import { getWebSDKOverridableResource, getWebSDKResource } from "../resources/webSdkResource.js";
10
14
  import { MXLDynamicConfigManager } from "../managers/MXLConfigManager/MXLDynamicConfigManager.js";
11
15
  import { DEFAULT_LIMITS } from "../managers/MXLLimitManager/constants.js";
@@ -13,39 +17,36 @@ import { MXLLimitManager } from "../managers/MXLLimitManager/MXLLimitManager.js"
13
17
  import { MXLLogManager } from "../managers/MXLLogManager/MXLLogManager.js";
14
18
  import { MXLPageManager } from "../managers/MXLPageManager/MXLPageManager.js";
15
19
  import { MXLSDKFeaturesManager } from "../managers/MXLSDKFeaturesManager/MXLSDKFeaturesManager.js";
16
- import { MXLSpanSessionManager } from "../managers/MXLSpanSessionManager/MXLSpanSessionManager.js";
20
+ import { DEFAULT_USER_SESSION_INACTIVITY_TIMEOUT_SECONDS, DEFAULT_USER_SESSION_MAX_DURATION_SECONDS } from "../managers/MXLUserSessionManager/constants.js";
21
+ import { MXLUserSessionManager } from "../managers/MXLUserSessionManager/MXLUserSessionManager.js";
17
22
  import { MXLTraceManager } from "../managers/MXLTraceManager/MXLTraceManager.js";
18
23
  import { MXLUserManager } from "../managers/MXLUserManager/MXLUserManager.js";
19
- import { MXLLogExporter } from "../exporters/MXLLogExporter/MXLLogExporter.js";
20
- import { MXLTraceExporter } from "../exporters/MXLTraceExporter/MXLTraceExporter.js";
21
24
  import { BrowserLogRecordProcessor } from "../processors/BrowserLogRecordProcessor/BrowserLogRecordProcessor.js";
22
25
  import { BrowserSpanProcessor } from "../processors/BrowserSpanProcessor/BrowserSpanProcessor.js";
23
- import { IdentifiableSessionLogRecordProcessor } from "../processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.js";
24
26
  import { LogRecordScrubProcessor } from "../processors/LogRecordScrubProcessor/LogRecordScrubProcessor.js";
25
27
  import { MXLLogRecordProcessor } from "../processors/MXLLogRecordProcessor/MXLLogRecordProcessor.js";
26
28
  import { MXLNetworkSpanProcessor } from "../processors/MXLNetworkSpanProcessor/MXLNetworkSpanProcessor.js";
27
- import { MXLSessionBatchedSpanProcessor } from "../processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.js";
29
+ import { MXLSessionPartBatchedSpanProcessor } from "../processors/MXLSessionPartBatchedSpanProcessor/MXLSessionPartBatchedSpanProcessor.js";
28
30
  import { PageLogRecordProcessor } from "../processors/PageLogRecordProcessor/PageLogRecordProcessor.js";
29
31
  import { PageSpanProcessor } from "../processors/PageSpanProcessor/PageSpanProcessor.js";
30
32
  import { SpanScrubProcessor } from "../processors/SpanScrubProcessor/SpanScrubProcessor.js";
31
33
  import { UserLogRecordProcessor } from "../processors/UserLogRecordProcessor/UserLogRecordProcessor.js";
34
+ import { UserSessionLogRecordProcessor } from "../processors/UserSessionLogRecordProcessor/UserSessionLogRecordProcessor.js";
32
35
  import { UserSpanProcessor } from "../processors/UserSpanProcessor/UserSpanProcessor.js";
33
36
  import { MXLW3CTraceContextPropagator } from "../propagators/MXLW3CTraceContextPropagator/MXLW3CTraceContextPropagator.js";
34
37
  import { getDefaultAttributeScrubbers } from "./defaultAttributeScrubbers.js";
35
38
  import { noopSessionRecording } from "./noopSessionRecording.js";
36
39
  import { registry } from "./registry.js";
37
- import { createSessionRecordingControl } from "./setupSessionRecorder.js";
38
40
  import { setupDefaultInstrumentations } from "./setupDefaultInstrumentations.js";
39
41
  import { validateAppID, validateAppVersion } from "./utils.js";
40
42
  import { DiagConsoleLogger, DiagLogLevel, diag } from "@opentelemetry/api";
41
- import { emptyResource } from "@opentelemetry/resources";
42
- import { BatchSpanProcessor, StackContextManager, WebTracerProvider } from "@opentelemetry/sdk-trace-web";
43
43
  import { registerInstrumentations } from "@opentelemetry/instrumentation";
44
+ import { BatchSpanProcessor, StackContextManager, WebTracerProvider } from "@opentelemetry/sdk-trace-web";
44
45
  import { logs } from "@opentelemetry/api-logs";
46
+ import { emptyResource } from "@opentelemetry/resources";
45
47
  import { BatchLogRecordProcessor, LoggerProvider } from "@opentelemetry/sdk-logs";
46
- import { createSessionSpanProcessor } from "@opentelemetry/web-common";
47
48
  //#region src/sdk/initSDK.ts
48
- const initSDK = ({ appID, appVersion, resource = emptyResource(), spanExporters = [], logExporters = [], spanProcessors = [], propagator = null, defaultInstrumentationConfig, instrumentations = [], contextManager = null, logProcessors = [], attributeScrubbers = [], enableDefaultAttributeScrubbing = true, additionalQueryParamsToScrub = [], logLevel = DiagLogLevel.ERROR, mxlDataURL, mxlConfigURL, diagLogger = diag.createComponentLogger({ namespace: "mxl-sdk" }), dynamicSDKConfigManager: providedDynamicSDKConfigManager, dynamicSDKConfig, registerGlobally = true, blockNetworkSpanForwarding = false, restrictedProtocols = new Set(["file:"]), useDocumentTitleAsPageLabel = true, recordUserSessions = true, sessionRecorder, serviceName } = {}) => {
49
+ const initSDK = ({ appID, appVersion, resource = emptyResource(), spanExporters = [], logExporters = [], spanProcessors = [], propagator = null, defaultInstrumentationConfig, instrumentations = [], contextManager = null, logProcessors = [], attributeScrubbers = [], enableDefaultAttributeScrubbing = true, additionalQueryParamsToScrub = [], logLevel = DiagLogLevel.ERROR, mxlDataURL, mxlConfigURL, diagLogger = diag.createComponentLogger({ namespace: "mxl-sdk" }), dynamicSDKConfigManager: providedDynamicSDKConfigManager, dynamicSDKConfig, registerGlobally = true, blockNetworkSpanForwarding = false, restrictedProtocols = new Set(["file:"]), useDocumentTitleAsPageLabel = true, recordUserSessions = true, replay, serviceName, maxUserSessionDurationSeconds = DEFAULT_USER_SESSION_MAX_DURATION_SECONDS, inactivityTimeoutSeconds = DEFAULT_USER_SESSION_INACTIVITY_TIMEOUT_SECONDS } = {}) => {
49
50
  try {
50
51
  if (registerGlobally) {
51
52
  const existingSDK = registry.registered();
@@ -67,9 +68,17 @@ const initSDK = ({ appID, appVersion, resource = emptyResource(), spanExporters
67
68
  if (!sendingToMXL && !logExporters.length && !spanExporters.length) throw new Error("when appID is omitted, at least one logExporter or spanExporter must be set");
68
69
  if (restrictedProtocols.has(window.location.protocol)) throw new Error(`not initializing due to restricted protocol: ${window.location.protocol}`);
69
70
  if (sendingToMXL && typeof CompressionStream === "undefined") throw new Error("CompressionStream is not supported in this browser and required for data compression.");
70
- const useNamespace = !registerGlobally && appID;
71
- const sdkLocalStorage = useNamespace ? new NamespacedStorage(appID, window.localStorage) : window.localStorage;
72
- const sdkSessionStorage = useNamespace ? new NamespacedStorage(appID, window.sessionStorage) : window.sessionStorage;
71
+ const namespace = registerGlobally ? void 0 : validatedAppID;
72
+ const sdkLocalStorage = new NamespacedStorage({
73
+ diag: diagLogger,
74
+ namespace,
75
+ storage: window.localStorage
76
+ });
77
+ const sdkSessionStorage = new NamespacedStorage({
78
+ diag: diagLogger,
79
+ namespace,
80
+ storage: window.sessionStorage
81
+ });
73
82
  const userManager = setupUser({
74
83
  registerGlobally,
75
84
  sdkLocalStorage
@@ -80,9 +89,9 @@ const initSDK = ({ appID, appVersion, resource = emptyResource(), spanExporters
80
89
  const dynamicConfigManager = providedDynamicSDKConfigManager ?? new MXLDynamicConfigManager({
81
90
  appID: validatedAppID,
82
91
  appVersion: validatedAppVersion,
83
- mxlConfigURL,
84
92
  defaultConfig: dynamicDefaultConfig,
85
93
  deviceId: enduserPseudoID,
94
+ mxlConfigURL,
86
95
  storage: sdkLocalStorage
87
96
  });
88
97
  dynamicConfigManager.refreshRemoteConfig();
@@ -93,48 +102,50 @@ const initSDK = ({ appID, appVersion, resource = emptyResource(), spanExporters
93
102
  if (fromCfg) return fromCfg;
94
103
  return "unknown_service";
95
104
  })() }).merge(resource).merge(getWebSDKResource({
96
- diagLogger,
97
105
  appVersion: validatedAppVersion,
106
+ diagLogger,
98
107
  pageSessionStorage: sdkSessionStorage
99
108
  }));
100
109
  const sdkFeaturesManager = new MXLSDKFeaturesManager({
101
- dynamicConfigManager,
110
+ blockNetworkSpanForwarding,
102
111
  deviceId: enduserPseudoID,
103
- blockNetworkSpanForwarding
112
+ dynamicConfigManager
104
113
  });
105
114
  if (!sdkFeaturesManager.isSDKEnabled()) {
106
115
  diagLogger.debug("SDK is disabled, skipping initialization.");
107
116
  return false;
108
117
  }
109
118
  const nsfValid = nsfConfigValidation({
110
- featureManager: sdkFeaturesManager,
111
- diag: diagLogger,
112
- registerGlobally,
113
119
  defaultInstrumentationConfig,
114
- propagator
120
+ diag: diagLogger,
121
+ featureManager: sdkFeaturesManager,
122
+ propagator,
123
+ registerGlobally
115
124
  });
116
125
  const limitManager = new MXLLimitManager(DEFAULT_LIMITS);
117
126
  const finalAttributeScrubbers = [...enableDefaultAttributeScrubbing ? getDefaultAttributeScrubbers(additionalQueryParamsToScrub) : [], ...attributeScrubbers];
118
- const spanSessionManager = setupSession({
127
+ const userSessionManager = setupUserSession({
119
128
  limitManager,
129
+ perf,
120
130
  registerGlobally,
121
131
  sdkLocalStorage,
122
- sdkSessionStorage
132
+ sdkSessionStorage,
133
+ userSessionConfig: {
134
+ inactivityTimeoutSeconds,
135
+ maxUserSessionDurationSeconds
136
+ }
123
137
  });
124
138
  let mxlSpanProcessor;
125
139
  let mxlLogProcessor;
126
140
  if (sendingToMXL) {
127
- mxlSpanProcessor = new MXLSessionBatchedSpanProcessor({
128
- resource: resourceWithWebSDKAttributes,
141
+ mxlSpanProcessor = new MXLSessionPartBatchedSpanProcessor({
129
142
  exporter: new MXLTraceExporter({
130
143
  appID: validatedAppID,
131
144
  mxlDataURL,
132
145
  userID: enduserPseudoID
133
146
  }),
134
147
  limitManager,
135
- storedSpansExpireTimeoutMS: defaultInstrumentationConfig?.["session-visibility"]?.storedSpansExpireTimeoutMS,
136
- storage: sdkLocalStorage,
137
- spanSessionManager
148
+ userSessionManager
138
149
  });
139
150
  mxlLogProcessor = new BatchLogRecordProcessor(new MXLLogExporter({
140
151
  appID: validatedAppID,
@@ -143,85 +154,110 @@ const initSDK = ({ appID, appVersion, resource = emptyResource(), spanExporters
143
154
  }));
144
155
  }
145
156
  const pageManager = setupPage({
146
- useDocumentTitleAsPageLabel,
147
- registerGlobally
157
+ registerGlobally,
158
+ useDocumentTitleAsPageLabel
148
159
  });
149
160
  const { tracerProvider, mxlTraceManager } = setupTraces({
161
+ attributeScrubbers: finalAttributeScrubbers,
162
+ contextManager,
163
+ mxlSpanProcessor,
164
+ pageManager,
165
+ propagator: nsfValid ? new MXLW3CTraceContextPropagator() : propagator,
166
+ registerGlobally,
150
167
  resource: resourceWithWebSDKAttributes,
151
- spanSessionManager,
152
- userManager,
153
168
  spanExporters,
154
169
  spanProcessors,
155
- propagator: nsfValid ? new MXLW3CTraceContextPropagator() : propagator,
156
- contextManager,
157
- attributeScrubbers: finalAttributeScrubbers,
158
- registerGlobally,
159
- mxlSpanProcessor,
160
- pageManager
170
+ userManager
161
171
  });
162
- spanSessionManager.setTracerProvider(tracerProvider);
172
+ userSessionManager.setTracerProvider(tracerProvider);
163
173
  const { loggerProvider, mxlLogManager } = setupLogs({
164
- resource: resourceWithWebSDKAttributes,
165
- userManager,
174
+ attributeScrubbers: finalAttributeScrubbers,
175
+ limitManager,
166
176
  logExporters,
167
177
  logProcessors,
168
- spanSessionManager,
169
- limitManager,
170
- attributeScrubbers: finalAttributeScrubbers,
171
- registerGlobally,
172
178
  mxlLogProcessor,
179
+ pageManager,
180
+ registerGlobally,
181
+ resource: resourceWithWebSDKAttributes,
173
182
  sdkLocalStorage,
174
- pageManager
183
+ userManager,
184
+ userSessionManager,
185
+ visibilityDoc: window.document
175
186
  });
176
- spanSessionManager.startSessionSpan({ reason: "init" });
187
+ userSessionManager.startSessionPartInternal("init");
177
188
  const windowDisableSessionRec = typeof window !== "undefined" && window.__MXL_DISABLE_SESSION_RECORDER === true;
178
- const sessionRecording = sendingToMXL && validatedAppID && enduserPseudoID && !windowDisableSessionRec ? createSessionRecordingControl({
179
- resource: resourceWithWebSDKAttributes,
180
- spanSessionManager,
181
- tracerProvider,
182
- appID: validatedAppID,
183
- userID: enduserPseudoID,
184
- mxlDataURL,
189
+ const includeReplay = Boolean(sendingToMXL && validatedAppID && enduserPseudoID && !windowDisableSessionRec);
190
+ const replayUserOptions = replay;
191
+ const buildDefaultInstrumentations = () => setupDefaultInstrumentations(defaultInstrumentationConfig, {
192
+ includeReplay,
193
+ limitManager,
194
+ logManager: mxlLogManager,
195
+ pageManager,
185
196
  recordUserSessions,
186
- sessionRecorder,
187
- diagLogger
188
- }) : noopSessionRecording;
189
- if (!registerGlobally) registerInstrumentations({
190
- tracerProvider,
191
- loggerProvider,
192
- instrumentations: [setupDefaultInstrumentations(defaultInstrumentationConfig, {
193
- logManager: mxlLogManager,
194
- spanSessionManager,
195
- pageManager,
196
- limitManager
197
- }), ...instrumentations]
197
+ replayOptions: replayUserOptions,
198
+ userSessionManager
198
199
  });
199
- else registerInstrumentations({ instrumentations: [setupDefaultInstrumentations(defaultInstrumentationConfig, {
200
- spanSessionManager,
201
- pageManager,
202
- limitManager
203
- }), ...instrumentations] });
200
+ let replayInstrumentation;
201
+ let disableInstrumentations;
202
+ if (!registerGlobally) {
203
+ const defaultInstrumentations = buildDefaultInstrumentations();
204
+ replayInstrumentation = defaultInstrumentations.find((instrumentation) => instrumentation instanceof ReplayInstrumentation);
205
+ disableInstrumentations = registerInstrumentations({
206
+ instrumentations: [...defaultInstrumentations, ...instrumentations],
207
+ loggerProvider,
208
+ tracerProvider
209
+ });
210
+ } else {
211
+ const defaultInstrumentations = setupDefaultInstrumentations(defaultInstrumentationConfig, {
212
+ includeReplay,
213
+ limitManager,
214
+ pageManager,
215
+ recordUserSessions,
216
+ replayOptions: replayUserOptions,
217
+ userSessionManager
218
+ });
219
+ replayInstrumentation = defaultInstrumentations.find((instrumentation) => instrumentation instanceof ReplayInstrumentation);
220
+ disableInstrumentations = registerInstrumentations({ instrumentations: [...defaultInstrumentations, ...instrumentations] });
221
+ }
222
+ let shutdownCalled = false;
223
+ let stopCalled = false;
224
+ const stopSdk = () => {
225
+ if (stopCalled) return;
226
+ stopCalled = true;
227
+ replayInstrumentation?.disable();
228
+ disableInstrumentations?.();
229
+ userSessionManager._shutdown();
230
+ };
231
+ const sessionRecording = replayInstrumentation ? createSessionRecordingControlFromReplay(replayInstrumentation) : noopSessionRecording;
204
232
  diagLogger.info("successfully initialized the SDK");
205
233
  const sdkControl = {
206
- setDynamicConfig: (config) => {
207
- dynamicConfigManager.setConfig(config);
208
- },
209
234
  flush: async () => {
210
235
  await tracerProvider.forceFlush();
211
236
  await loggerProvider.forceFlush();
212
237
  },
213
238
  log: mxlLogManager,
214
- trace: mxlTraceManager,
215
- session: spanSessionManager,
216
- user: userManager,
217
239
  page: pageManager,
218
- sessionRecording
240
+ session: userSessionManager,
241
+ sessionRecording,
242
+ setDynamicConfig: (config) => {
243
+ dynamicConfigManager.setConfig(config);
244
+ },
245
+ shutdown: async () => {
246
+ if (shutdownCalled) return;
247
+ shutdownCalled = true;
248
+ stopSdk();
249
+ await tracerProvider.shutdown();
250
+ await loggerProvider.shutdown();
251
+ },
252
+ stop: stopSdk,
253
+ trace: mxlTraceManager,
254
+ user: userManager
219
255
  };
220
256
  if (registerGlobally) registry.register(sdkControl);
221
- spanSessionManager.recordSDKStartupDuration(perf.getNowMillis() - initSDKStart);
257
+ userSessionManager.recordSDKStartupDuration(perf.getNowMillis() - initSDKStart);
222
258
  return sdkControl;
223
- } catch (e) {
224
- const message = e instanceof Error ? e.message : "Unknown error.";
259
+ } catch (error) {
260
+ const message = error instanceof Error ? error.message : "Unknown error.";
225
261
  diagLogger.error(`failed to initialize the SDK: ${message}`);
226
262
  return false;
227
263
  }
@@ -231,19 +267,21 @@ const setupUser = ({ registerGlobally, sdkLocalStorage }) => {
231
267
  if (registerGlobally) user.setGlobalUserManager(mxlUserManager);
232
268
  return mxlUserManager;
233
269
  };
234
- const setupSession = ({ limitManager, registerGlobally, sdkLocalStorage, sdkSessionStorage }) => {
235
- const mxlSpanSessionManager = new MXLSpanSessionManager({
270
+ const setupUserSession = ({ limitManager, perf, registerGlobally, sdkLocalStorage, sdkSessionStorage, userSessionConfig }) => {
271
+ const mxlUserSessionManager = new MXLUserSessionManager({
272
+ config: userSessionConfig,
236
273
  limitManager,
274
+ perf,
237
275
  storage: sdkLocalStorage,
238
- sessionStorage: sdkSessionStorage
276
+ tabStorage: sdkSessionStorage,
277
+ visibilityDoc: window.document
239
278
  });
240
- if (registerGlobally) session.setGlobalSessionManager(mxlSpanSessionManager);
241
- return mxlSpanSessionManager;
279
+ if (registerGlobally) session.setGlobalUserSessionManager(mxlUserSessionManager);
280
+ return mxlUserSessionManager;
242
281
  };
243
- const setupTraces = ({ resource, spanSessionManager, userManager, spanExporters, spanProcessors = [], propagator = null, contextManager = null, attributeScrubbers, registerGlobally, mxlSpanProcessor, pageManager }) => {
282
+ const setupTraces = ({ resource, userManager, spanExporters, spanProcessors = [], propagator = null, contextManager = null, attributeScrubbers, registerGlobally, mxlSpanProcessor, pageManager }) => {
244
283
  const finalSpanProcessors = [
245
284
  ...spanProcessors,
246
- createSessionSpanProcessor(spanSessionManager),
247
285
  new BrowserSpanProcessor(),
248
286
  new MXLNetworkSpanProcessor(),
249
287
  new UserSpanProcessor({ userManager }),
@@ -256,11 +294,11 @@ const setupTraces = ({ resource, spanSessionManager, userManager, spanExporters,
256
294
  if (mxlSpanProcessor) finalSpanProcessors.push(mxlSpanProcessor);
257
295
  const tracerProvider = new WebTracerProvider({
258
296
  resource,
259
- spanProcessors: finalSpanProcessors,
260
297
  spanLimits: {
261
298
  attributeCountLimit: DEFAULT_LIMITS.maxAllowed.session_property * 2,
262
299
  eventCountLimit: DEFAULT_LIMITS.maxAllowed.breadcrumb * 2
263
- }
300
+ },
301
+ spanProcessors: finalSpanProcessors
264
302
  });
265
303
  const mxlTraceManager = new MXLTraceManager({ tracerProvider: registerGlobally ? void 0 : tracerProvider });
266
304
  if (registerGlobally) {
@@ -271,14 +309,14 @@ const setupTraces = ({ resource, spanSessionManager, userManager, spanExporters,
271
309
  });
272
310
  }
273
311
  return {
274
- tracerProvider,
275
- mxlTraceManager
312
+ mxlTraceManager,
313
+ tracerProvider
276
314
  };
277
315
  };
278
- const setupLogs = ({ resource, userManager, logExporters, logProcessors, spanSessionManager, limitManager, attributeScrubbers, registerGlobally, mxlLogProcessor, sdkLocalStorage, pageManager }) => {
316
+ const setupLogs = ({ resource, userManager, logExporters, logProcessors, userSessionManager, limitManager, attributeScrubbers, registerGlobally, mxlLogProcessor, sdkLocalStorage, pageManager, visibilityDoc = window.document }) => {
279
317
  const finalLogProcessors = [
280
318
  ...logProcessors,
281
- new IdentifiableSessionLogRecordProcessor({ spanSessionManager }),
319
+ new UserSessionLogRecordProcessor({ userSessionManager }),
282
320
  new BrowserLogRecordProcessor(),
283
321
  new MXLLogRecordProcessor(),
284
322
  new UserLogRecordProcessor({ userManager }),
@@ -290,14 +328,15 @@ const setupLogs = ({ resource, userManager, logExporters, logProcessors, spanSes
290
328
  });
291
329
  if (mxlLogProcessor) finalLogProcessors.push(mxlLogProcessor);
292
330
  const loggerProvider = new LoggerProvider({
293
- resource,
294
- processors: finalLogProcessors
331
+ processors: finalLogProcessors,
332
+ resource
295
333
  });
296
334
  const mxlLogManager = new MXLLogManager({
297
- spanSessionManager,
298
335
  limitManager,
299
336
  loggerProvider: registerGlobally ? void 0 : loggerProvider,
300
- storage: sdkLocalStorage
337
+ storage: sdkLocalStorage,
338
+ userSessionManager,
339
+ visibilityDoc
301
340
  });
302
341
  if (registerGlobally) {
303
342
  logs.setGlobalLoggerProvider(loggerProvider);