@safaricom-mxl/web-sdk 0.0.15 → 0.0.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (827) 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 +30 -0
  80. package/dist/constants/attributes.cjs.map +1 -1
  81. package/dist/constants/attributes.d.cts +18 -2
  82. package/dist/constants/attributes.d.cts.map +1 -1
  83. package/dist/constants/attributes.d.ts +18 -2
  84. package/dist/constants/attributes.d.ts.map +1 -1
  85. package/dist/constants/attributes.js +17 -1
  86. package/dist/constants/attributes.js.map +1 -1
  87. package/dist/constants/index.cjs +14 -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 +3 -3
  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 +4 -4
  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 +22 -20
  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 +23 -21
  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 -58
  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 +139 -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 +139 -98
  482. package/dist/sdk/initSDK.js.map +1 -1
  483. package/dist/sdk/noopSessionRecording.cjs +10 -0
  484. package/dist/sdk/noopSessionRecording.cjs.map +1 -0
  485. package/dist/sdk/noopSessionRecording.d.cts +7 -0
  486. package/dist/sdk/noopSessionRecording.d.cts.map +1 -0
  487. package/dist/sdk/noopSessionRecording.d.ts +7 -0
  488. package/dist/sdk/noopSessionRecording.d.ts.map +1 -0
  489. package/dist/sdk/noopSessionRecording.js +9 -0
  490. package/dist/sdk/noopSessionRecording.js.map +1 -0
  491. package/dist/sdk/registry.cjs +1 -3
  492. package/dist/sdk/registry.cjs.map +1 -1
  493. package/dist/sdk/registry.d.cts.map +1 -1
  494. package/dist/sdk/registry.d.ts.map +1 -1
  495. package/dist/sdk/registry.js +1 -3
  496. package/dist/sdk/registry.js.map +1 -1
  497. package/dist/sdk/setupDefaultInstrumentations.cjs +9 -5
  498. package/dist/sdk/setupDefaultInstrumentations.cjs.map +1 -1
  499. package/dist/sdk/setupDefaultInstrumentations.d.cts +5 -2
  500. package/dist/sdk/setupDefaultInstrumentations.d.cts.map +1 -1
  501. package/dist/sdk/setupDefaultInstrumentations.d.ts +5 -2
  502. package/dist/sdk/setupDefaultInstrumentations.d.ts.map +1 -1
  503. package/dist/sdk/setupDefaultInstrumentations.js +9 -5
  504. package/dist/sdk/setupDefaultInstrumentations.js.map +1 -1
  505. package/dist/sdk/types.d.cts +68 -56
  506. package/dist/sdk/types.d.cts.map +1 -1
  507. package/dist/sdk/types.d.ts +69 -57
  508. package/dist/sdk/types.d.ts.map +1 -1
  509. package/dist/sdk/utils.cjs +1 -1
  510. package/dist/sdk/utils.cjs.map +1 -1
  511. package/dist/sdk/utils.d.cts.map +1 -1
  512. package/dist/sdk/utils.d.ts.map +1 -1
  513. package/dist/sdk/utils.js +1 -1
  514. package/dist/sdk/utils.js.map +1 -1
  515. package/dist/transport/FetchTransport/FetchTransport.cjs +13 -13
  516. package/dist/transport/FetchTransport/FetchTransport.cjs.map +1 -1
  517. package/dist/transport/FetchTransport/FetchTransport.js +13 -13
  518. package/dist/transport/FetchTransport/FetchTransport.js.map +1 -1
  519. package/dist/transport/RetryingTransport/RetryingTransport.cjs +1 -1
  520. package/dist/transport/RetryingTransport/RetryingTransport.cjs.map +1 -1
  521. package/dist/transport/RetryingTransport/RetryingTransport.js +1 -1
  522. package/dist/transport/RetryingTransport/RetryingTransport.js.map +1 -1
  523. package/dist/utils/NamespacedStorage/NamespacedStorage.cjs +69 -24
  524. package/dist/utils/NamespacedStorage/NamespacedStorage.cjs.map +1 -1
  525. package/dist/utils/NamespacedStorage/NamespacedStorage.d.cts +27 -13
  526. package/dist/utils/NamespacedStorage/NamespacedStorage.d.cts.map +1 -1
  527. package/dist/utils/NamespacedStorage/NamespacedStorage.d.ts +27 -13
  528. package/dist/utils/NamespacedStorage/NamespacedStorage.d.ts.map +1 -1
  529. package/dist/utils/NamespacedStorage/NamespacedStorage.js +68 -24
  530. package/dist/utils/NamespacedStorage/NamespacedStorage.js.map +1 -1
  531. package/dist/utils/PerformanceManager/OTelPerformanceManager.cjs.map +1 -1
  532. package/dist/utils/PerformanceManager/OTelPerformanceManager.js.map +1 -1
  533. package/dist/utils/clampNumber.cjs +23 -0
  534. package/dist/utils/clampNumber.cjs.map +1 -0
  535. package/dist/utils/clampNumber.d.cts +24 -0
  536. package/dist/utils/clampNumber.d.cts.map +1 -0
  537. package/dist/utils/clampNumber.d.ts +24 -0
  538. package/dist/utils/clampNumber.d.ts.map +1 -0
  539. package/dist/utils/clampNumber.js +22 -0
  540. package/dist/utils/clampNumber.js.map +1 -0
  541. package/dist/utils/createSafeProxy/createSafeProxy.cjs +2 -2
  542. package/dist/utils/createSafeProxy/createSafeProxy.cjs.map +1 -1
  543. package/dist/utils/createSafeProxy/createSafeProxy.d.cts.map +1 -1
  544. package/dist/utils/createSafeProxy/createSafeProxy.d.ts.map +1 -1
  545. package/dist/utils/createSafeProxy/createSafeProxy.js +2 -2
  546. package/dist/utils/createSafeProxy/createSafeProxy.js.map +1 -1
  547. package/dist/utils/generateWebVitalID.cjs +1 -3
  548. package/dist/utils/generateWebVitalID.cjs.map +1 -1
  549. package/dist/utils/generateWebVitalID.js +1 -3
  550. package/dist/utils/generateWebVitalID.js.map +1 -1
  551. package/dist/utils/getIncrementedCount.cjs +2 -2
  552. package/dist/utils/getIncrementedCount.cjs.map +1 -1
  553. package/dist/utils/getIncrementedCount.js +2 -2
  554. package/dist/utils/getIncrementedCount.js.map +1 -1
  555. package/dist/utils/globalConfig.cjs.map +1 -1
  556. package/dist/utils/globalConfig.d.cts +2 -2
  557. package/dist/utils/globalConfig.d.cts.map +1 -1
  558. package/dist/utils/globalConfig.d.ts +2 -2
  559. package/dist/utils/globalConfig.d.ts.map +1 -1
  560. package/dist/utils/globalConfig.js.map +1 -1
  561. package/dist/utils/index.cjs +2 -2
  562. package/dist/utils/index.d.cts +3 -3
  563. package/dist/utils/index.d.ts +3 -3
  564. package/dist/utils/index.js +2 -2
  565. package/dist/utils/isDeviceIdEnabled.cjs.map +1 -1
  566. package/dist/utils/isDeviceIdEnabled.js.map +1 -1
  567. package/dist/utils/performanceObserver/performanceObserver.cjs +3 -3
  568. package/dist/utils/performanceObserver/performanceObserver.cjs.map +1 -1
  569. package/dist/utils/performanceObserver/performanceObserver.js +3 -3
  570. package/dist/utils/performanceObserver/performanceObserver.js.map +1 -1
  571. package/dist/utils/throttle.cjs +13 -9
  572. package/dist/utils/throttle.cjs.map +1 -1
  573. package/dist/utils/throttle.d.cts +6 -3
  574. package/dist/utils/throttle.d.cts.map +1 -1
  575. package/dist/utils/throttle.d.ts +6 -3
  576. package/dist/utils/throttle.d.ts.map +1 -1
  577. package/dist/utils/throttle.js +13 -9
  578. package/dist/utils/throttle.js.map +1 -1
  579. package/package.json +56 -56
  580. package/dist/api-sessions/api/SessionAPI/types.d.cts +0 -8
  581. package/dist/api-sessions/api/SessionAPI/types.d.cts.map +0 -1
  582. package/dist/api-sessions/api/SessionAPI/types.d.ts +0 -8
  583. package/dist/api-sessions/api/SessionAPI/types.d.ts.map +0 -1
  584. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.cjs +0 -31
  585. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.cjs.map +0 -1
  586. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.d.cts +0 -24
  587. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.d.cts.map +0 -1
  588. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.d.ts +0 -24
  589. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.d.ts.map +0 -1
  590. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.js +0 -30
  591. package/dist/api-sessions/manager/NoOpSpanSessionManager/NoOpSpanSessionManager.js.map +0 -1
  592. package/dist/api-sessions/manager/NoOpSpanSessionManager/index.cjs +0 -3
  593. package/dist/api-sessions/manager/NoOpSpanSessionManager/index.d.cts +0 -2
  594. package/dist/api-sessions/manager/NoOpSpanSessionManager/index.d.ts +0 -2
  595. package/dist/api-sessions/manager/NoOpSpanSessionManager/index.js +0 -2
  596. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.cjs +0 -55
  597. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.cjs.map +0 -1
  598. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.d.cts +0 -27
  599. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.d.cts.map +0 -1
  600. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.d.ts +0 -27
  601. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.d.ts.map +0 -1
  602. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.js +0 -55
  603. package/dist/api-sessions/manager/ProxySpanSessionManager/ProxySpanSessionManager.js.map +0 -1
  604. package/dist/api-sessions/manager/ProxySpanSessionManager/index.cjs +0 -3
  605. package/dist/api-sessions/manager/ProxySpanSessionManager/index.d.cts +0 -2
  606. package/dist/api-sessions/manager/ProxySpanSessionManager/index.d.ts +0 -2
  607. package/dist/api-sessions/manager/ProxySpanSessionManager/index.js +0 -2
  608. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.cjs +0 -27
  609. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.cjs.map +0 -1
  610. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.d.cts +0 -15
  611. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.d.cts.map +0 -1
  612. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.d.ts +0 -15
  613. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.d.ts.map +0 -1
  614. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.js +0 -25
  615. package/dist/instrumentations/fetch/MXLFetchInstrumentation/MXLFetchInstrumentation.js.map +0 -1
  616. package/dist/instrumentations/fetch/MXLFetchInstrumentation/index.cjs +0 -3
  617. package/dist/instrumentations/fetch/MXLFetchInstrumentation/index.d.cts +0 -2
  618. package/dist/instrumentations/fetch/MXLFetchInstrumentation/index.d.ts +0 -2
  619. package/dist/instrumentations/fetch/MXLFetchInstrumentation/index.js +0 -2
  620. package/dist/instrumentations/fetch/MXLFetchInstrumentation/types.d.cts +0 -9
  621. package/dist/instrumentations/fetch/MXLFetchInstrumentation/types.d.cts.map +0 -1
  622. package/dist/instrumentations/fetch/MXLFetchInstrumentation/types.d.ts +0 -9
  623. package/dist/instrumentations/fetch/MXLFetchInstrumentation/types.d.ts.map +0 -1
  624. package/dist/instrumentations/fetch/index.cjs +0 -3
  625. package/dist/instrumentations/fetch/index.d.cts +0 -3
  626. package/dist/instrumentations/fetch/index.d.ts +0 -3
  627. package/dist/instrumentations/fetch/index.js +0 -2
  628. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.cjs +0 -60
  629. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.cjs.map +0 -1
  630. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.d.cts +0 -24
  631. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.d.cts.map +0 -1
  632. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.d.ts +0 -24
  633. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.d.ts.map +0 -1
  634. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.js +0 -59
  635. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/SpanSessionBrowserActivityInstrumentation.js.map +0 -1
  636. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.cjs +0 -19
  637. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.cjs.map +0 -1
  638. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.d.cts +0 -10
  639. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.d.cts.map +0 -1
  640. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.d.ts +0 -10
  641. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.d.ts.map +0 -1
  642. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.js +0 -16
  643. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/constants.js.map +0 -1
  644. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/index.cjs +0 -3
  645. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/index.d.cts +0 -3
  646. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/index.d.ts +0 -3
  647. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/index.js +0 -2
  648. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/types.d.cts +0 -6
  649. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/types.d.cts.map +0 -1
  650. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/types.d.ts +0 -6
  651. package/dist/instrumentations/session/SpanSessionBrowserActivityInstrumentation/types.d.ts.map +0 -1
  652. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.cjs +0 -24
  653. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.cjs.map +0 -1
  654. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.d.cts +0 -14
  655. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.d.cts.map +0 -1
  656. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.d.ts +0 -14
  657. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.d.ts.map +0 -1
  658. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.js +0 -23
  659. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/SpanSessionOnLoadInstrumentation.js.map +0 -1
  660. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/index.cjs +0 -3
  661. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/index.d.cts +0 -3
  662. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/index.d.ts +0 -3
  663. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/index.js +0 -2
  664. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/types.d.cts +0 -6
  665. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/types.d.cts.map +0 -1
  666. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/types.d.ts +0 -6
  667. package/dist/instrumentations/session/SpanSessionOnLoadInstrumentation/types.d.ts.map +0 -1
  668. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.cjs +0 -55
  669. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.cjs.map +0 -1
  670. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.d.cts +0 -22
  671. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.d.cts.map +0 -1
  672. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.d.ts +0 -22
  673. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.d.ts.map +0 -1
  674. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.js +0 -54
  675. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/SpanSessionTimeoutInstrumentation.js.map +0 -1
  676. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.cjs +0 -7
  677. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.cjs.map +0 -1
  678. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.d.cts +0 -5
  679. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.d.cts.map +0 -1
  680. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.d.ts +0 -5
  681. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.d.ts.map +0 -1
  682. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.js +0 -6
  683. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/constants.js.map +0 -1
  684. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/index.cjs +0 -3
  685. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/index.d.cts +0 -3
  686. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/index.d.ts +0 -3
  687. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/index.js +0 -2
  688. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.cjs +0 -0
  689. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.d.cts +0 -6
  690. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.d.cts.map +0 -1
  691. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.d.ts +0 -6
  692. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.d.ts.map +0 -1
  693. package/dist/instrumentations/session/SpanSessionTimeoutInstrumentation/types.js +0 -0
  694. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.cjs +0 -38
  695. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.cjs.map +0 -1
  696. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.d.cts +0 -17
  697. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.d.cts.map +0 -1
  698. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.d.ts +0 -17
  699. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.d.ts.map +0 -1
  700. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.js +0 -37
  701. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/SpanSessionVisibilityInstrumentation.js.map +0 -1
  702. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/index.cjs +0 -3
  703. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/index.d.cts +0 -3
  704. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/index.d.ts +0 -3
  705. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/index.js +0 -2
  706. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.cjs +0 -0
  707. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.d.cts +0 -10
  708. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.d.cts.map +0 -1
  709. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.d.ts +0 -10
  710. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.d.ts.map +0 -1
  711. package/dist/instrumentations/session/SpanSessionVisibilityInstrumentation/types.js +0 -0
  712. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.cjs +0 -27
  713. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.cjs.map +0 -1
  714. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.d.cts +0 -15
  715. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.d.cts.map +0 -1
  716. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.d.ts +0 -15
  717. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.d.ts.map +0 -1
  718. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.js +0 -25
  719. package/dist/instrumentations/xhr/MXLXHRInstrumentation/MXLXHRInstrumentation.js.map +0 -1
  720. package/dist/instrumentations/xhr/MXLXHRInstrumentation/index.cjs +0 -3
  721. package/dist/instrumentations/xhr/MXLXHRInstrumentation/index.d.cts +0 -2
  722. package/dist/instrumentations/xhr/MXLXHRInstrumentation/index.d.ts +0 -2
  723. package/dist/instrumentations/xhr/MXLXHRInstrumentation/index.js +0 -2
  724. package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.cjs +0 -0
  725. package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.d.cts +0 -9
  726. package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.d.cts.map +0 -1
  727. package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.d.ts +0 -9
  728. package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.d.ts.map +0 -1
  729. package/dist/instrumentations/xhr/MXLXHRInstrumentation/types.js +0 -0
  730. package/dist/instrumentations/xhr/index.cjs +0 -3
  731. package/dist/instrumentations/xhr/index.d.cts +0 -3
  732. package/dist/instrumentations/xhr/index.d.ts +0 -3
  733. package/dist/instrumentations/xhr/index.js +0 -2
  734. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.cjs +0 -350
  735. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.cjs.map +0 -1
  736. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.d.cts +0 -72
  737. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.d.cts.map +0 -1
  738. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.d.ts +0 -72
  739. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.d.ts.map +0 -1
  740. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.js +0 -348
  741. package/dist/managers/MXLSpanSessionManager/MXLSpanSessionManager.js.map +0 -1
  742. package/dist/managers/MXLSpanSessionManager/constants.cjs +0 -11
  743. package/dist/managers/MXLSpanSessionManager/constants.cjs.map +0 -1
  744. package/dist/managers/MXLSpanSessionManager/constants.d.cts +0 -7
  745. package/dist/managers/MXLSpanSessionManager/constants.d.cts.map +0 -1
  746. package/dist/managers/MXLSpanSessionManager/constants.d.ts +0 -7
  747. package/dist/managers/MXLSpanSessionManager/constants.d.ts.map +0 -1
  748. package/dist/managers/MXLSpanSessionManager/constants.js +0 -8
  749. package/dist/managers/MXLSpanSessionManager/constants.js.map +0 -1
  750. package/dist/managers/MXLSpanSessionManager/index.cjs +0 -3
  751. package/dist/managers/MXLSpanSessionManager/index.d.cts +0 -3
  752. package/dist/managers/MXLSpanSessionManager/index.d.ts +0 -3
  753. package/dist/managers/MXLSpanSessionManager/index.js +0 -2
  754. package/dist/managers/MXLSpanSessionManager/types.cjs +0 -0
  755. package/dist/managers/MXLSpanSessionManager/types.d.cts +0 -41
  756. package/dist/managers/MXLSpanSessionManager/types.d.cts.map +0 -1
  757. package/dist/managers/MXLSpanSessionManager/types.d.ts +0 -41
  758. package/dist/managers/MXLSpanSessionManager/types.d.ts.map +0 -1
  759. package/dist/managers/MXLSpanSessionManager/types.js +0 -0
  760. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.cjs +0 -28
  761. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.cjs.map +0 -1
  762. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.d.cts +0 -16
  763. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.d.cts.map +0 -1
  764. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.d.ts +0 -16
  765. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.d.ts.map +0 -1
  766. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.js +0 -26
  767. package/dist/processors/IdentifiableSessionLogRecordProcessor/IdentifiableSessionLogRecordProcessor.js.map +0 -1
  768. package/dist/processors/IdentifiableSessionLogRecordProcessor/index.cjs +0 -3
  769. package/dist/processors/IdentifiableSessionLogRecordProcessor/index.d.cts +0 -2
  770. package/dist/processors/IdentifiableSessionLogRecordProcessor/index.d.ts +0 -2
  771. package/dist/processors/IdentifiableSessionLogRecordProcessor/index.js +0 -2
  772. package/dist/processors/IdentifiableSessionLogRecordProcessor/types.cjs +0 -0
  773. package/dist/processors/IdentifiableSessionLogRecordProcessor/types.d.cts +0 -9
  774. package/dist/processors/IdentifiableSessionLogRecordProcessor/types.d.cts.map +0 -1
  775. package/dist/processors/IdentifiableSessionLogRecordProcessor/types.d.ts +0 -9
  776. package/dist/processors/IdentifiableSessionLogRecordProcessor/types.d.ts.map +0 -1
  777. package/dist/processors/IdentifiableSessionLogRecordProcessor/types.js +0 -0
  778. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.cjs +0 -95
  779. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.cjs.map +0 -1
  780. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.d.cts +0 -34
  781. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.d.cts.map +0 -1
  782. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.d.ts +0 -34
  783. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.d.ts.map +0 -1
  784. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.js +0 -93
  785. package/dist/processors/MXLSessionBatchedSpanProcessor/MXLSessionBatchedSpanProcessor.js.map +0 -1
  786. package/dist/processors/MXLSessionBatchedSpanProcessor/index.cjs +0 -3
  787. package/dist/processors/MXLSessionBatchedSpanProcessor/index.d.cts +0 -2
  788. package/dist/processors/MXLSessionBatchedSpanProcessor/index.d.ts +0 -2
  789. package/dist/processors/MXLSessionBatchedSpanProcessor/index.js +0 -2
  790. package/dist/processors/MXLSessionBatchedSpanProcessor/types.cjs +0 -0
  791. package/dist/processors/MXLSessionBatchedSpanProcessor/types.d.cts +0 -19
  792. package/dist/processors/MXLSessionBatchedSpanProcessor/types.d.cts.map +0 -1
  793. package/dist/processors/MXLSessionBatchedSpanProcessor/types.d.ts +0 -19
  794. package/dist/processors/MXLSessionBatchedSpanProcessor/types.d.ts.map +0 -1
  795. package/dist/processors/MXLSessionBatchedSpanProcessor/types.js +0 -0
  796. package/dist/sdk/setupSessionRecorder.cjs +0 -45
  797. package/dist/sdk/setupSessionRecorder.cjs.map +0 -1
  798. package/dist/sdk/setupSessionRecorder.d.cts +0 -21
  799. package/dist/sdk/setupSessionRecorder.d.cts.map +0 -1
  800. package/dist/sdk/setupSessionRecorder.d.ts +0 -21
  801. package/dist/sdk/setupSessionRecorder.d.ts.map +0 -1
  802. package/dist/sdk/setupSessionRecorder.js +0 -42
  803. package/dist/sdk/setupSessionRecorder.js.map +0 -1
  804. package/dist/utils/MXLSpanStorage/MXLSpanStorage.cjs +0 -116
  805. package/dist/utils/MXLSpanStorage/MXLSpanStorage.cjs.map +0 -1
  806. package/dist/utils/MXLSpanStorage/MXLSpanStorage.d.cts +0 -42
  807. package/dist/utils/MXLSpanStorage/MXLSpanStorage.d.cts.map +0 -1
  808. package/dist/utils/MXLSpanStorage/MXLSpanStorage.d.ts +0 -42
  809. package/dist/utils/MXLSpanStorage/MXLSpanStorage.d.ts.map +0 -1
  810. package/dist/utils/MXLSpanStorage/MXLSpanStorage.js +0 -114
  811. package/dist/utils/MXLSpanStorage/MXLSpanStorage.js.map +0 -1
  812. package/dist/utils/MXLSpanStorage/index.cjs +0 -3
  813. package/dist/utils/MXLSpanStorage/index.d.cts +0 -2
  814. package/dist/utils/MXLSpanStorage/index.d.ts +0 -2
  815. package/dist/utils/MXLSpanStorage/index.js +0 -2
  816. package/dist/utils/MXLSpanStorage/types.cjs +0 -0
  817. package/dist/utils/MXLSpanStorage/types.d.cts +0 -2
  818. package/dist/utils/MXLSpanStorage/types.d.ts +0 -2
  819. package/dist/utils/MXLSpanStorage/types.js +0 -0
  820. /package/dist/{api-sessions/api/SessionAPI → instrumentations/replay/ReplayInstrumentation}/types.cjs +0 -0
  821. /package/dist/{api-sessions/api/SessionAPI → instrumentations/replay/ReplayInstrumentation}/types.js +0 -0
  822. /package/dist/{instrumentations/fetch/MXLFetchInstrumentation → managers/MXLUserSessionManager}/types.cjs +0 -0
  823. /package/dist/{instrumentations/fetch/MXLFetchInstrumentation → managers/MXLUserSessionManager}/types.js +0 -0
  824. /package/dist/{instrumentations/session/SpanSessionBrowserActivityInstrumentation → processors/MXLSessionPartBatchedSpanProcessor}/types.cjs +0 -0
  825. /package/dist/{instrumentations/session/SpanSessionBrowserActivityInstrumentation → processors/MXLSessionPartBatchedSpanProcessor}/types.js +0 -0
  826. /package/dist/{instrumentations/session/SpanSessionOnLoadInstrumentation → processors/UserSessionLogRecordProcessor}/types.cjs +0 -0
  827. /package/dist/{instrumentations/session/SpanSessionOnLoadInstrumentation → processors/UserSessionLogRecordProcessor}/types.js +0 -0
@@ -1,42 +0,0 @@
1
- import { getMXLHeaders } from "../exporters/utils.js";
2
- import { getLogEndpoint } from "../exporters/MXLLogExporter/utils.js";
3
- import { SessionRecorder, VERSION } from "@safaricom-mxl/session-recorder";
4
- //#region src/sdk/setupSessionRecorder.ts
5
- const noopSessionRecording = {
6
- isRecording: () => false,
7
- setEnabled: () => {}
8
- };
9
- function buildInitConfig({ resource, spanSessionManager, tracerProvider, appID, userID, mxlDataURL, sessionRecorder: userOptions }) {
10
- return {
11
- resource,
12
- getSessionId: () => spanSessionManager.getSessionId(),
13
- tracer: tracerProvider.getTracer("mxl.session-recorder", VERSION),
14
- url: getLogEndpoint(appID, mxlDataURL),
15
- headers: getMXLHeaders(appID, userID),
16
- ...userOptions
17
- };
18
- }
19
- function createSessionRecordingControl(args) {
20
- const initConfig = () => buildInitConfig(args);
21
- if (args.recordUserSessions) {
22
- SessionRecorder.init(initConfig());
23
- return {
24
- isRecording: () => SessionRecorder.isRecording(),
25
- setEnabled: (enabled) => {
26
- SessionRecorder.setEnabled(enabled);
27
- }
28
- };
29
- }
30
- return {
31
- isRecording: () => SessionRecorder.isRecording(),
32
- setEnabled: (enabled) => {
33
- if (enabled) if (!SessionRecorder.inited) SessionRecorder.init(initConfig());
34
- else SessionRecorder.resume();
35
- else if (SessionRecorder.inited) SessionRecorder.stop();
36
- }
37
- };
38
- }
39
- //#endregion
40
- export { createSessionRecordingControl, noopSessionRecording };
41
-
42
- //# sourceMappingURL=setupSessionRecorder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"setupSessionRecorder.js","names":["SESSION_RECORDER_VERSION"],"sources":["../../src/sdk/setupSessionRecorder.ts"],"sourcesContent":["import type { Resource } from '@opentelemetry/resources';\nimport type { WebTracerProvider } from '@opentelemetry/sdk-trace-web';\nimport type { SessionRecorderConfig } from '@safaricom-mxl/session-recorder';\nimport {\n VERSION as SESSION_RECORDER_VERSION,\n SessionRecorder,\n} from '@safaricom-mxl/session-recorder';\nimport { getLogEndpoint } from '../exporters/MXLLogExporter/utils';\nimport { getMXLHeaders } from '../exporters';\nimport type {\n SessionRecorderUserConfig,\n SessionRecordingControl,\n} from './types';\n\nexport const noopSessionRecording: SessionRecordingControl = {\n isRecording: () => false,\n setEnabled: () => {\n // Session recording is only available when using MXL (appID + user ID).\n },\n};\n\nfunction buildInitConfig({\n resource,\n spanSessionManager,\n tracerProvider,\n appID,\n userID,\n mxlDataURL,\n sessionRecorder: userOptions,\n}: {\n resource: Resource;\n spanSessionManager: { getSessionId: () => string | null };\n tracerProvider: WebTracerProvider;\n appID: string;\n userID: string;\n mxlDataURL?: string;\n sessionRecorder?: SessionRecorderUserConfig;\n}): SessionRecorderConfig {\n const tracer = tracerProvider.getTracer(\n 'mxl.session-recorder',\n SESSION_RECORDER_VERSION,\n );\n return {\n resource,\n getSessionId: () => spanSessionManager.getSessionId(),\n tracer,\n url: getLogEndpoint(appID, mxlDataURL),\n headers: getMXLHeaders(appID, userID),\n ...userOptions,\n } as SessionRecorderConfig;\n}\n\nexport function createSessionRecordingControl(args: {\n resource: Resource;\n spanSessionManager: { getSessionId: () => string | null };\n tracerProvider: WebTracerProvider;\n appID: string;\n userID: string;\n mxlDataURL?: string;\n recordUserSessions: boolean;\n sessionRecorder?: SessionRecorderUserConfig;\n}): SessionRecordingControl {\n const initConfig = () => buildInitConfig(args);\n\n if (args.recordUserSessions) {\n SessionRecorder.init(initConfig());\n return {\n isRecording: () => SessionRecorder.isRecording(),\n setEnabled: (enabled: boolean) => {\n SessionRecorder.setEnabled(enabled);\n },\n };\n }\n\n // Defer rrweb + OTLP until the app calls setEnabled(true) (lazy start).\n return {\n isRecording: () => SessionRecorder.isRecording(),\n setEnabled: (enabled: boolean) => {\n if (enabled) {\n if (!SessionRecorder.inited) {\n SessionRecorder.init(initConfig());\n } else {\n SessionRecorder.resume();\n }\n } else if (SessionRecorder.inited) {\n SessionRecorder.stop();\n }\n },\n };\n}\n"],"mappings":";;;;AAcA,MAAa,uBAAgD;CAC3D,mBAAmB;CACnB,kBAAkB;CAGnB;AAED,SAAS,gBAAgB,EACvB,UACA,oBACA,gBACA,OACA,QACA,YACA,iBAAiB,eASO;AAKxB,QAAO;EACL;EACA,oBAAoB,mBAAmB,cAAc;EACrD,QAPa,eAAe,UAC5B,wBACAA,QAKM;EACN,KAAK,eAAe,OAAO,WAAW;EACtC,SAAS,cAAc,OAAO,OAAO;EACrC,GAAG;EACJ;;AAGH,SAAgB,8BAA8B,MASlB;CAC1B,MAAM,mBAAmB,gBAAgB,KAAK;AAE9C,KAAI,KAAK,oBAAoB;AAC3B,kBAAgB,KAAK,YAAY,CAAC;AAClC,SAAO;GACL,mBAAmB,gBAAgB,aAAa;GAChD,aAAa,YAAqB;AAChC,oBAAgB,WAAW,QAAQ;;GAEtC;;AAIH,QAAO;EACL,mBAAmB,gBAAgB,aAAa;EAChD,aAAa,YAAqB;AAChC,OAAI,QACF,KAAI,CAAC,gBAAgB,OACnB,iBAAgB,KAAK,YAAY,CAAC;OAElC,iBAAgB,QAAQ;YAEjB,gBAAgB,OACzB,iBAAgB,MAAM;;EAG3B"}
@@ -1,116 +0,0 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- require("../../_virtual/_rolldown/runtime.cjs");
3
- const require_constants_attributes = require("../../constants/attributes.cjs");
4
- let _opentelemetry_api = require("@opentelemetry/api");
5
- let _opentelemetry_resources = require("@opentelemetry/resources");
6
- let _opentelemetry_sdk_trace_web = require("@opentelemetry/sdk-trace-web");
7
- //#region src/utils/MXLSpanStorage/MXLSpanStorage.ts
8
- const PENDING_SPANS_STORAGE_KEY_PREFIX = "mxl_pending_";
9
- const MAX_PENDING_SPANS_ITEMS = 10;
10
- var MXLSpanStorage = class {
11
- _noExportTracer;
12
- _storage;
13
- _diag;
14
- _onExpiredSpansExport;
15
- _storedSpansExpireTimeoutMS;
16
- _spanSessionManager;
17
- _checkExpiredSpansInterval;
18
- constructor({ resource = (0, _opentelemetry_resources.emptyResource)(), storage = window.localStorage, diag: diagParam = _opentelemetry_api.diag.createComponentLogger({ namespace: "MXLSpanStorage" }), storedSpansExpireTimeoutMS = 3600 * 1e3, onExpiredSpansExport, spanSessionManager }) {
19
- this._noExportTracer = new _opentelemetry_sdk_trace_web.BasicTracerProvider({ resource }).getTracer("mxl-web-sdk-sessions");
20
- this._storage = storage;
21
- this._diag = diagParam;
22
- this._storedSpansExpireTimeoutMS = storedSpansExpireTimeoutMS;
23
- this._onExpiredSpansExport = onExpiredSpansExport;
24
- this._spanSessionManager = spanSessionManager;
25
- this.startExpiredSpansCheck();
26
- }
27
- storePendingSpans(sessionId, sessionSpan, pendingSpans) {
28
- try {
29
- this.clearStoredSpans(sessionId);
30
- if (this._getPendingSpansKeys().length >= MAX_PENDING_SPANS_ITEMS) {
31
- this._spanSessionManager.incrSessionCountForKey(require_constants_attributes.KEY_MXL_MAX_PENDING_SPANS_REACHED);
32
- this._diag.warn("Not storing pending spans as the max number of items was reached");
33
- return;
34
- }
35
- const key = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_${Date.now()}`;
36
- this._storage.setItem(key, JSON.stringify([sessionSpan, ...pendingSpans], (key, value) => key.startsWith("_") ? void 0 : value));
37
- this._diag.debug(`Stored pending span: ${key}`);
38
- } catch (error) {
39
- this._diag.error("Failed to store spans to storage:", error);
40
- }
41
- }
42
- clearStoredSpans(sessionId) {
43
- try {
44
- const prefix = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_`;
45
- this._getPendingSpansKeys().forEach((key) => {
46
- if (key.startsWith(prefix)) this._storage.removeItem(key);
47
- });
48
- } catch (error) {
49
- this._diag.error("Failed to clear stored spans from storage:", error);
50
- }
51
- }
52
- startExpiredSpansCheck() {
53
- this._checkExpiredSpansInterval = setInterval(() => {
54
- this.checkAndExportExpiredSpans();
55
- }, 300 * 1e3);
56
- }
57
- stopExpiredSpansCheck() {
58
- if (this._checkExpiredSpansInterval) {
59
- clearInterval(this._checkExpiredSpansInterval);
60
- this._checkExpiredSpansInterval = void 0;
61
- }
62
- }
63
- checkAndExportExpiredSpans() {
64
- try {
65
- const keys = this._getPendingSpansKeys();
66
- if (keys.length === 0) return;
67
- const currentTime = Date.now();
68
- keys.forEach((key) => {
69
- const parts = key.split("_");
70
- const storedTime = parseInt(parts[parts.length - 1], 10);
71
- if (Number.isNaN(storedTime)) {
72
- this._diag.error("Found invalid timestamp in stored span:", storedTime);
73
- this._storage.removeItem(key);
74
- }
75
- if (currentTime - storedTime <= this._storedSpansExpireTimeoutMS) return;
76
- const storedData = this._storage.getItem(key);
77
- if (!storedData) return;
78
- try {
79
- const spans = [];
80
- for (const storedSpan of JSON.parse(storedData)) {
81
- const span = this._noExportTracer.startSpan(storedSpan.name, {
82
- kind: storedSpan.kind,
83
- attributes: storedSpan.attributes,
84
- links: storedSpan.links,
85
- startTime: storedSpan.startTime
86
- });
87
- span.setStatus(storedSpan.status);
88
- span.end(storedSpan.endTime);
89
- spans.push(span);
90
- }
91
- if (this._onExpiredSpansExport && spans.length > 0) this._onExpiredSpansExport(spans);
92
- } catch (e) {
93
- this._diag.error("Failed to process expired spans:", e);
94
- }
95
- this._storage.removeItem(key);
96
- });
97
- } catch (e) {
98
- this._diag.error("Failed to check and export expired spans:", e);
99
- }
100
- }
101
- _getPendingSpansKeys() {
102
- const keys = [];
103
- for (let i = 0; i < this._storage.length; i++) {
104
- const key = this._storage.key(i);
105
- if (key?.startsWith(PENDING_SPANS_STORAGE_KEY_PREFIX)) keys.push(key);
106
- }
107
- return keys;
108
- }
109
- destroy() {
110
- this.stopExpiredSpansCheck();
111
- }
112
- };
113
- //#endregion
114
- exports.MXLSpanStorage = MXLSpanStorage;
115
-
116
- //# sourceMappingURL=MXLSpanStorage.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MXLSpanStorage.cjs","names":["diag","BasicTracerProvider","KEY_MXL_MAX_PENDING_SPANS_REACHED"],"sources":["../../../src/utils/MXLSpanStorage/MXLSpanStorage.ts"],"sourcesContent":["import type { DiagLogger, Tracer } from '@opentelemetry/api';\nimport { diag } from '@opentelemetry/api';\nimport type { Resource } from '@opentelemetry/resources';\nimport { emptyResource } from '@opentelemetry/resources';\nimport type { ReadableSpan } from '@opentelemetry/sdk-trace-web';\nimport { BasicTracerProvider } from '@opentelemetry/sdk-trace-web';\nimport { KEY_MXL_MAX_PENDING_SPANS_REACHED } from '../../constants';\nimport type { SpanSessionManagerInternal } from '../../managers';\n\nconst PENDING_SPANS_STORAGE_KEY_PREFIX = 'mxl_pending_';\nconst MAX_PENDING_SPANS_ITEMS = 10;\n\nexport interface SpanStorageOptions {\n spanSessionManager: SpanSessionManagerInternal;\n resource?: Resource;\n storage?: Storage;\n diag?: DiagLogger;\n storedSpansExpireTimeoutMS?: number;\n onExpiredSpansExport?: (spans: ReadableSpan[]) => void;\n}\n\n// MXLSpanStorage is used to keep pending spans that are not meant to be exported (yet) in localStorage,\n// and periodically checks whenever those stored spans are ready to be exported.\n// This functionality has some custom logic to be able to store these spans as JSONs and then recreate them back\n// that could eventually be improved. In particular the things that would need to be improved are:\n// - Avoid serializing as JSON and instead try to use a customExporter that produces the body as it was going to be\n// sent over the wire (serialized, compressed, etc), and store that, so that later when it decides to export those,\n// it's just using that body as a regular fetch call.\n// - Create a service worker that is responsible for tracking the pending spans and deciding when to actually export them.\n// That way we would avoid a potential race condition where two different tabs would try to export the same data.\n// - Make this a more comprehensive component so that the MXLSessionBatchedSpanProcessor doesn't need to be in the\n// middle of SpanSessionVisibilityInstrumentation and this component. Ideally this component would know when and how\n// to take snapshots of the current pending spans and the current session span at any moment, so that the visibility\n// instrumentation doesn't need to be telling that to the batch span processor.\nexport class MXLSpanStorage {\n private readonly _noExportTracer: Tracer;\n private readonly _storage: Storage;\n private readonly _diag: DiagLogger;\n private readonly _onExpiredSpansExport?: (spans: ReadableSpan[]) => void;\n private readonly _storedSpansExpireTimeoutMS: number;\n private readonly _spanSessionManager: SpanSessionManagerInternal;\n private _checkExpiredSpansInterval?: ReturnType<typeof setInterval>;\n\n public constructor({\n resource = emptyResource(),\n storage = window.localStorage,\n diag: diagParam = diag.createComponentLogger({\n namespace: 'MXLSpanStorage',\n }),\n storedSpansExpireTimeoutMS = 60 * 60 * 1000, // 1 hour\n onExpiredSpansExport,\n spanSessionManager,\n }: SpanStorageOptions) {\n this._noExportTracer = new BasicTracerProvider({ resource }).getTracer(\n 'mxl-web-sdk-sessions',\n );\n this._storage = storage;\n this._diag = diagParam;\n this._storedSpansExpireTimeoutMS = storedSpansExpireTimeoutMS;\n this._onExpiredSpansExport = onExpiredSpansExport;\n this._spanSessionManager = spanSessionManager;\n\n this.startExpiredSpansCheck();\n }\n\n public storePendingSpans(\n sessionId: string,\n sessionSpan: ReadableSpan,\n pendingSpans: ReadableSpan[],\n ): void {\n try {\n // If this session was already stored, clear it first:\n this.clearStoredSpans(sessionId);\n\n if (this._getPendingSpansKeys().length >= MAX_PENDING_SPANS_ITEMS) {\n this._spanSessionManager.incrSessionCountForKey(\n KEY_MXL_MAX_PENDING_SPANS_REACHED,\n );\n this._diag.warn(\n 'Not storing pending spans as the max number of items was reached',\n );\n return;\n }\n\n const key = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_${Date.now()}`;\n this._storage.setItem(\n key,\n JSON.stringify([sessionSpan, ...pendingSpans], (key, value) =>\n key.startsWith('_') ? undefined : value,\n ),\n );\n\n this._diag.debug(`Stored pending span: ${key}`);\n } catch (error) {\n this._diag.error('Failed to store spans to storage:', error);\n }\n }\n\n public clearStoredSpans(sessionId: string): void {\n try {\n const prefix = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_`;\n this._getPendingSpansKeys().forEach((key) => {\n if (key.startsWith(prefix)) {\n this._storage.removeItem(key);\n }\n });\n } catch (error) {\n this._diag.error('Failed to clear stored spans from storage:', error);\n }\n }\n\n public startExpiredSpansCheck(): void {\n this._checkExpiredSpansInterval = setInterval(\n () => {\n this.checkAndExportExpiredSpans();\n },\n 5 * 60 * 1000,\n ); // Check every 5 minutes\n }\n\n public stopExpiredSpansCheck(): void {\n if (this._checkExpiredSpansInterval) {\n clearInterval(this._checkExpiredSpansInterval);\n this._checkExpiredSpansInterval = undefined;\n }\n }\n\n public checkAndExportExpiredSpans(): void {\n try {\n const keys = this._getPendingSpansKeys();\n if (keys.length === 0) {\n return;\n }\n\n const currentTime = Date.now();\n keys.forEach((key) => {\n const parts = key.split('_');\n const storedTime = parseInt(parts[parts.length - 1], 10);\n\n if (Number.isNaN(storedTime)) {\n this._diag.error(\n 'Found invalid timestamp in stored span:',\n storedTime,\n );\n this._storage.removeItem(key);\n }\n\n if (currentTime - storedTime <= this._storedSpansExpireTimeoutMS) {\n return;\n }\n\n const storedData = this._storage.getItem(key);\n if (!storedData) return;\n\n try {\n const spans: ReadableSpan[] = [];\n for (const storedSpan of JSON.parse(storedData) as ReadableSpan[]) {\n const span = this._noExportTracer.startSpan(storedSpan.name, {\n kind: storedSpan.kind,\n attributes: storedSpan.attributes,\n links: storedSpan.links,\n startTime: storedSpan.startTime,\n });\n span.setStatus(storedSpan.status);\n span.end(storedSpan.endTime);\n spans.push(span as unknown as ReadableSpan);\n }\n\n if (this._onExpiredSpansExport && spans.length > 0) {\n this._onExpiredSpansExport(spans);\n }\n } catch (e) {\n this._diag.error('Failed to process expired spans:', e);\n }\n\n // Always remove the storage item even if processing failed\n this._storage.removeItem(key);\n });\n } catch (e) {\n this._diag.error('Failed to check and export expired spans:', e);\n }\n }\n\n public _getPendingSpansKeys(): string[] {\n const keys: string[] = [];\n for (let i = 0; i < this._storage.length; i++) {\n const key = this._storage.key(i);\n if (key?.startsWith(PENDING_SPANS_STORAGE_KEY_PREFIX)) {\n keys.push(key);\n }\n }\n return keys;\n }\n\n public destroy(): void {\n this.stopExpiredSpansCheck();\n }\n}\n"],"mappings":"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"}
@@ -1,42 +0,0 @@
1
- import { SpanSessionManagerInternal } from "../../managers/MXLSpanSessionManager/types.cjs";
2
- import { DiagLogger } from "@opentelemetry/api";
3
- import { ReadableSpan } from "@opentelemetry/sdk-trace-web";
4
- import { Resource } from "@opentelemetry/resources";
5
-
6
- //#region src/utils/MXLSpanStorage/MXLSpanStorage.d.ts
7
- interface SpanStorageOptions {
8
- spanSessionManager: SpanSessionManagerInternal;
9
- resource?: Resource;
10
- storage?: Storage;
11
- diag?: DiagLogger;
12
- storedSpansExpireTimeoutMS?: number;
13
- onExpiredSpansExport?: (spans: ReadableSpan[]) => void;
14
- }
15
- declare class MXLSpanStorage {
16
- private readonly _noExportTracer;
17
- private readonly _storage;
18
- private readonly _diag;
19
- private readonly _onExpiredSpansExport?;
20
- private readonly _storedSpansExpireTimeoutMS;
21
- private readonly _spanSessionManager;
22
- private _checkExpiredSpansInterval?;
23
- constructor({
24
- resource,
25
- storage,
26
- diag: diagParam,
27
- storedSpansExpireTimeoutMS,
28
- // 1 hour
29
- onExpiredSpansExport,
30
- spanSessionManager
31
- }: SpanStorageOptions);
32
- storePendingSpans(sessionId: string, sessionSpan: ReadableSpan, pendingSpans: ReadableSpan[]): void;
33
- clearStoredSpans(sessionId: string): void;
34
- startExpiredSpansCheck(): void;
35
- stopExpiredSpansCheck(): void;
36
- checkAndExportExpiredSpans(): void;
37
- _getPendingSpansKeys(): string[];
38
- destroy(): void;
39
- }
40
- //#endregion
41
- export { MXLSpanStorage, SpanStorageOptions };
42
- //# sourceMappingURL=MXLSpanStorage.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MXLSpanStorage.d.cts","names":[],"sources":["../../../src/utils/MXLSpanStorage/MXLSpanStorage.ts"],"mappings":";;;;;;UAYiB,kBAAA;EACf,kBAAA,EAAoB,0BAAA;EACpB,QAAA,GAAW,QAAA;EACX,OAAA,GAAU,OAAA;EACV,IAAA,GAAO,UAAA;EACP,0BAAA;EACA,oBAAA,IAAwB,KAAA,EAAO,YAAA;AAAA;AAAA,cAgBpB,cAAA;EAAA,iBACM,eAAA;EAAA,iBACA,QAAA;EAAA,iBACA,KAAA;EAAA,iBACA,qBAAA;EAAA,iBACA,2BAAA;EAAA,iBACA,mBAAA;EAAA,QACT,0BAAA;;IAGN,QAAA;IACA,OAAA;IACA,IAAA,EAAM,SAAA;IAGN,0BAAA;IAAA;IACA,oBAAA;IACA;EAAA,GACC,kBAAA;EAaI,iBAAA,CACL,SAAA,UACA,WAAA,EAAa,YAAA,EACb,YAAA,EAAc,YAAA;EA8BT,gBAAA,CAAiB,SAAA;EAajB,sBAAA,CAAA;EASA,qBAAA,CAAA;EAOA,0BAAA,CAAA;EAwDA,oBAAA,CAAA;EAWA,OAAA,CAAA;AAAA"}
@@ -1,42 +0,0 @@
1
- import { SpanSessionManagerInternal } from "../../managers/MXLSpanSessionManager/types.js";
2
- import { DiagLogger } from "@opentelemetry/api";
3
- import { Resource } from "@opentelemetry/resources";
4
- import { ReadableSpan } from "@opentelemetry/sdk-trace-web";
5
-
6
- //#region src/utils/MXLSpanStorage/MXLSpanStorage.d.ts
7
- interface SpanStorageOptions {
8
- spanSessionManager: SpanSessionManagerInternal;
9
- resource?: Resource;
10
- storage?: Storage;
11
- diag?: DiagLogger;
12
- storedSpansExpireTimeoutMS?: number;
13
- onExpiredSpansExport?: (spans: ReadableSpan[]) => void;
14
- }
15
- declare class MXLSpanStorage {
16
- private readonly _noExportTracer;
17
- private readonly _storage;
18
- private readonly _diag;
19
- private readonly _onExpiredSpansExport?;
20
- private readonly _storedSpansExpireTimeoutMS;
21
- private readonly _spanSessionManager;
22
- private _checkExpiredSpansInterval?;
23
- constructor({
24
- resource,
25
- storage,
26
- diag: diagParam,
27
- storedSpansExpireTimeoutMS,
28
- // 1 hour
29
- onExpiredSpansExport,
30
- spanSessionManager
31
- }: SpanStorageOptions);
32
- storePendingSpans(sessionId: string, sessionSpan: ReadableSpan, pendingSpans: ReadableSpan[]): void;
33
- clearStoredSpans(sessionId: string): void;
34
- startExpiredSpansCheck(): void;
35
- stopExpiredSpansCheck(): void;
36
- checkAndExportExpiredSpans(): void;
37
- _getPendingSpansKeys(): string[];
38
- destroy(): void;
39
- }
40
- //#endregion
41
- export { MXLSpanStorage, SpanStorageOptions };
42
- //# sourceMappingURL=MXLSpanStorage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MXLSpanStorage.d.ts","names":[],"sources":["../../../src/utils/MXLSpanStorage/MXLSpanStorage.ts"],"mappings":";;;;;;UAYiB,kBAAA;EACf,kBAAA,EAAoB,0BAAA;EACpB,QAAA,GAAW,QAAA;EACX,OAAA,GAAU,OAAA;EACV,IAAA,GAAO,UAAA;EACP,0BAAA;EACA,oBAAA,IAAwB,KAAA,EAAO,YAAA;AAAA;AAAA,cAgBpB,cAAA;EAAA,iBACM,eAAA;EAAA,iBACA,QAAA;EAAA,iBACA,KAAA;EAAA,iBACA,qBAAA;EAAA,iBACA,2BAAA;EAAA,iBACA,mBAAA;EAAA,QACT,0BAAA;;IAGN,QAAA;IACA,OAAA;IACA,IAAA,EAAM,SAAA;IAGN,0BAAA;IAAA;IACA,oBAAA;IACA;EAAA,GACC,kBAAA;EAaI,iBAAA,CACL,SAAA,UACA,WAAA,EAAa,YAAA,EACb,YAAA,EAAc,YAAA;EA8BT,gBAAA,CAAiB,SAAA;EAajB,sBAAA,CAAA;EASA,qBAAA,CAAA;EAOA,0BAAA,CAAA;EAwDA,oBAAA,CAAA;EAWA,OAAA,CAAA;AAAA"}
@@ -1,114 +0,0 @@
1
- import { KEY_MXL_MAX_PENDING_SPANS_REACHED } from "../../constants/attributes.js";
2
- import { diag } from "@opentelemetry/api";
3
- import { emptyResource } from "@opentelemetry/resources";
4
- import { BasicTracerProvider } from "@opentelemetry/sdk-trace-web";
5
- //#region src/utils/MXLSpanStorage/MXLSpanStorage.ts
6
- const PENDING_SPANS_STORAGE_KEY_PREFIX = "mxl_pending_";
7
- const MAX_PENDING_SPANS_ITEMS = 10;
8
- var MXLSpanStorage = class {
9
- _noExportTracer;
10
- _storage;
11
- _diag;
12
- _onExpiredSpansExport;
13
- _storedSpansExpireTimeoutMS;
14
- _spanSessionManager;
15
- _checkExpiredSpansInterval;
16
- constructor({ resource = emptyResource(), storage = window.localStorage, diag: diagParam = diag.createComponentLogger({ namespace: "MXLSpanStorage" }), storedSpansExpireTimeoutMS = 3600 * 1e3, onExpiredSpansExport, spanSessionManager }) {
17
- this._noExportTracer = new BasicTracerProvider({ resource }).getTracer("mxl-web-sdk-sessions");
18
- this._storage = storage;
19
- this._diag = diagParam;
20
- this._storedSpansExpireTimeoutMS = storedSpansExpireTimeoutMS;
21
- this._onExpiredSpansExport = onExpiredSpansExport;
22
- this._spanSessionManager = spanSessionManager;
23
- this.startExpiredSpansCheck();
24
- }
25
- storePendingSpans(sessionId, sessionSpan, pendingSpans) {
26
- try {
27
- this.clearStoredSpans(sessionId);
28
- if (this._getPendingSpansKeys().length >= MAX_PENDING_SPANS_ITEMS) {
29
- this._spanSessionManager.incrSessionCountForKey(KEY_MXL_MAX_PENDING_SPANS_REACHED);
30
- this._diag.warn("Not storing pending spans as the max number of items was reached");
31
- return;
32
- }
33
- const key = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_${Date.now()}`;
34
- this._storage.setItem(key, JSON.stringify([sessionSpan, ...pendingSpans], (key, value) => key.startsWith("_") ? void 0 : value));
35
- this._diag.debug(`Stored pending span: ${key}`);
36
- } catch (error) {
37
- this._diag.error("Failed to store spans to storage:", error);
38
- }
39
- }
40
- clearStoredSpans(sessionId) {
41
- try {
42
- const prefix = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_`;
43
- this._getPendingSpansKeys().forEach((key) => {
44
- if (key.startsWith(prefix)) this._storage.removeItem(key);
45
- });
46
- } catch (error) {
47
- this._diag.error("Failed to clear stored spans from storage:", error);
48
- }
49
- }
50
- startExpiredSpansCheck() {
51
- this._checkExpiredSpansInterval = setInterval(() => {
52
- this.checkAndExportExpiredSpans();
53
- }, 300 * 1e3);
54
- }
55
- stopExpiredSpansCheck() {
56
- if (this._checkExpiredSpansInterval) {
57
- clearInterval(this._checkExpiredSpansInterval);
58
- this._checkExpiredSpansInterval = void 0;
59
- }
60
- }
61
- checkAndExportExpiredSpans() {
62
- try {
63
- const keys = this._getPendingSpansKeys();
64
- if (keys.length === 0) return;
65
- const currentTime = Date.now();
66
- keys.forEach((key) => {
67
- const parts = key.split("_");
68
- const storedTime = parseInt(parts[parts.length - 1], 10);
69
- if (Number.isNaN(storedTime)) {
70
- this._diag.error("Found invalid timestamp in stored span:", storedTime);
71
- this._storage.removeItem(key);
72
- }
73
- if (currentTime - storedTime <= this._storedSpansExpireTimeoutMS) return;
74
- const storedData = this._storage.getItem(key);
75
- if (!storedData) return;
76
- try {
77
- const spans = [];
78
- for (const storedSpan of JSON.parse(storedData)) {
79
- const span = this._noExportTracer.startSpan(storedSpan.name, {
80
- kind: storedSpan.kind,
81
- attributes: storedSpan.attributes,
82
- links: storedSpan.links,
83
- startTime: storedSpan.startTime
84
- });
85
- span.setStatus(storedSpan.status);
86
- span.end(storedSpan.endTime);
87
- spans.push(span);
88
- }
89
- if (this._onExpiredSpansExport && spans.length > 0) this._onExpiredSpansExport(spans);
90
- } catch (e) {
91
- this._diag.error("Failed to process expired spans:", e);
92
- }
93
- this._storage.removeItem(key);
94
- });
95
- } catch (e) {
96
- this._diag.error("Failed to check and export expired spans:", e);
97
- }
98
- }
99
- _getPendingSpansKeys() {
100
- const keys = [];
101
- for (let i = 0; i < this._storage.length; i++) {
102
- const key = this._storage.key(i);
103
- if (key?.startsWith(PENDING_SPANS_STORAGE_KEY_PREFIX)) keys.push(key);
104
- }
105
- return keys;
106
- }
107
- destroy() {
108
- this.stopExpiredSpansCheck();
109
- }
110
- };
111
- //#endregion
112
- export { MXLSpanStorage };
113
-
114
- //# sourceMappingURL=MXLSpanStorage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MXLSpanStorage.js","names":[],"sources":["../../../src/utils/MXLSpanStorage/MXLSpanStorage.ts"],"sourcesContent":["import type { DiagLogger, Tracer } from '@opentelemetry/api';\nimport { diag } from '@opentelemetry/api';\nimport type { Resource } from '@opentelemetry/resources';\nimport { emptyResource } from '@opentelemetry/resources';\nimport type { ReadableSpan } from '@opentelemetry/sdk-trace-web';\nimport { BasicTracerProvider } from '@opentelemetry/sdk-trace-web';\nimport { KEY_MXL_MAX_PENDING_SPANS_REACHED } from '../../constants';\nimport type { SpanSessionManagerInternal } from '../../managers';\n\nconst PENDING_SPANS_STORAGE_KEY_PREFIX = 'mxl_pending_';\nconst MAX_PENDING_SPANS_ITEMS = 10;\n\nexport interface SpanStorageOptions {\n spanSessionManager: SpanSessionManagerInternal;\n resource?: Resource;\n storage?: Storage;\n diag?: DiagLogger;\n storedSpansExpireTimeoutMS?: number;\n onExpiredSpansExport?: (spans: ReadableSpan[]) => void;\n}\n\n// MXLSpanStorage is used to keep pending spans that are not meant to be exported (yet) in localStorage,\n// and periodically checks whenever those stored spans are ready to be exported.\n// This functionality has some custom logic to be able to store these spans as JSONs and then recreate them back\n// that could eventually be improved. In particular the things that would need to be improved are:\n// - Avoid serializing as JSON and instead try to use a customExporter that produces the body as it was going to be\n// sent over the wire (serialized, compressed, etc), and store that, so that later when it decides to export those,\n// it's just using that body as a regular fetch call.\n// - Create a service worker that is responsible for tracking the pending spans and deciding when to actually export them.\n// That way we would avoid a potential race condition where two different tabs would try to export the same data.\n// - Make this a more comprehensive component so that the MXLSessionBatchedSpanProcessor doesn't need to be in the\n// middle of SpanSessionVisibilityInstrumentation and this component. Ideally this component would know when and how\n// to take snapshots of the current pending spans and the current session span at any moment, so that the visibility\n// instrumentation doesn't need to be telling that to the batch span processor.\nexport class MXLSpanStorage {\n private readonly _noExportTracer: Tracer;\n private readonly _storage: Storage;\n private readonly _diag: DiagLogger;\n private readonly _onExpiredSpansExport?: (spans: ReadableSpan[]) => void;\n private readonly _storedSpansExpireTimeoutMS: number;\n private readonly _spanSessionManager: SpanSessionManagerInternal;\n private _checkExpiredSpansInterval?: ReturnType<typeof setInterval>;\n\n public constructor({\n resource = emptyResource(),\n storage = window.localStorage,\n diag: diagParam = diag.createComponentLogger({\n namespace: 'MXLSpanStorage',\n }),\n storedSpansExpireTimeoutMS = 60 * 60 * 1000, // 1 hour\n onExpiredSpansExport,\n spanSessionManager,\n }: SpanStorageOptions) {\n this._noExportTracer = new BasicTracerProvider({ resource }).getTracer(\n 'mxl-web-sdk-sessions',\n );\n this._storage = storage;\n this._diag = diagParam;\n this._storedSpansExpireTimeoutMS = storedSpansExpireTimeoutMS;\n this._onExpiredSpansExport = onExpiredSpansExport;\n this._spanSessionManager = spanSessionManager;\n\n this.startExpiredSpansCheck();\n }\n\n public storePendingSpans(\n sessionId: string,\n sessionSpan: ReadableSpan,\n pendingSpans: ReadableSpan[],\n ): void {\n try {\n // If this session was already stored, clear it first:\n this.clearStoredSpans(sessionId);\n\n if (this._getPendingSpansKeys().length >= MAX_PENDING_SPANS_ITEMS) {\n this._spanSessionManager.incrSessionCountForKey(\n KEY_MXL_MAX_PENDING_SPANS_REACHED,\n );\n this._diag.warn(\n 'Not storing pending spans as the max number of items was reached',\n );\n return;\n }\n\n const key = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_${Date.now()}`;\n this._storage.setItem(\n key,\n JSON.stringify([sessionSpan, ...pendingSpans], (key, value) =>\n key.startsWith('_') ? undefined : value,\n ),\n );\n\n this._diag.debug(`Stored pending span: ${key}`);\n } catch (error) {\n this._diag.error('Failed to store spans to storage:', error);\n }\n }\n\n public clearStoredSpans(sessionId: string): void {\n try {\n const prefix = `${PENDING_SPANS_STORAGE_KEY_PREFIX}${sessionId}_`;\n this._getPendingSpansKeys().forEach((key) => {\n if (key.startsWith(prefix)) {\n this._storage.removeItem(key);\n }\n });\n } catch (error) {\n this._diag.error('Failed to clear stored spans from storage:', error);\n }\n }\n\n public startExpiredSpansCheck(): void {\n this._checkExpiredSpansInterval = setInterval(\n () => {\n this.checkAndExportExpiredSpans();\n },\n 5 * 60 * 1000,\n ); // Check every 5 minutes\n }\n\n public stopExpiredSpansCheck(): void {\n if (this._checkExpiredSpansInterval) {\n clearInterval(this._checkExpiredSpansInterval);\n this._checkExpiredSpansInterval = undefined;\n }\n }\n\n public checkAndExportExpiredSpans(): void {\n try {\n const keys = this._getPendingSpansKeys();\n if (keys.length === 0) {\n return;\n }\n\n const currentTime = Date.now();\n keys.forEach((key) => {\n const parts = key.split('_');\n const storedTime = parseInt(parts[parts.length - 1], 10);\n\n if (Number.isNaN(storedTime)) {\n this._diag.error(\n 'Found invalid timestamp in stored span:',\n storedTime,\n );\n this._storage.removeItem(key);\n }\n\n if (currentTime - storedTime <= this._storedSpansExpireTimeoutMS) {\n return;\n }\n\n const storedData = this._storage.getItem(key);\n if (!storedData) return;\n\n try {\n const spans: ReadableSpan[] = [];\n for (const storedSpan of JSON.parse(storedData) as ReadableSpan[]) {\n const span = this._noExportTracer.startSpan(storedSpan.name, {\n kind: storedSpan.kind,\n attributes: storedSpan.attributes,\n links: storedSpan.links,\n startTime: storedSpan.startTime,\n });\n span.setStatus(storedSpan.status);\n span.end(storedSpan.endTime);\n spans.push(span as unknown as ReadableSpan);\n }\n\n if (this._onExpiredSpansExport && spans.length > 0) {\n this._onExpiredSpansExport(spans);\n }\n } catch (e) {\n this._diag.error('Failed to process expired spans:', e);\n }\n\n // Always remove the storage item even if processing failed\n this._storage.removeItem(key);\n });\n } catch (e) {\n this._diag.error('Failed to check and export expired spans:', e);\n }\n }\n\n public _getPendingSpansKeys(): string[] {\n const keys: string[] = [];\n for (let i = 0; i < this._storage.length; i++) {\n const key = this._storage.key(i);\n if (key?.startsWith(PENDING_SPANS_STORAGE_KEY_PREFIX)) {\n keys.push(key);\n }\n }\n return keys;\n }\n\n public destroy(): void {\n this.stopExpiredSpansCheck();\n }\n}\n"],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_utils_MXLSpanStorage_MXLSpanStorage = require("./MXLSpanStorage.cjs");
3
- exports.MXLSpanStorage = require_utils_MXLSpanStorage_MXLSpanStorage.MXLSpanStorage;
@@ -1,2 +0,0 @@
1
- import { MXLSpanStorage, SpanStorageOptions } from "./MXLSpanStorage.cjs";
2
- export { MXLSpanStorage, type SpanStorageOptions };
@@ -1,2 +0,0 @@
1
- import { MXLSpanStorage, SpanStorageOptions } from "./MXLSpanStorage.js";
2
- export { MXLSpanStorage, type SpanStorageOptions };
@@ -1,2 +0,0 @@
1
- import { MXLSpanStorage } from "./MXLSpanStorage.js";
2
- export { MXLSpanStorage };
File without changes
@@ -1,2 +0,0 @@
1
- import { SpanStorageOptions } from "./MXLSpanStorage.cjs";
2
- export { type SpanStorageOptions };
@@ -1,2 +0,0 @@
1
- import { SpanStorageOptions } from "./MXLSpanStorage.js";
2
- export { type SpanStorageOptions };
File without changes