@cloudcare/browser-rum-slim 3.3.3

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 (309) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +15 -0
  3. package/bundle/dataflux-rum-slim.js +1 -0
  4. package/cjs/boot/buildEnv.js +11 -0
  5. package/cjs/boot/buildEnv.js.map +1 -0
  6. package/cjs/boot/perStartRum.js +227 -0
  7. package/cjs/boot/perStartRum.js.map +1 -0
  8. package/cjs/boot/rum.js +180 -0
  9. package/cjs/boot/rum.js.map +1 -0
  10. package/cjs/boot/rum.slim.entry.js +13 -0
  11. package/cjs/boot/rum.slim.entry.js.map +1 -0
  12. package/cjs/boot/rumEntryFactory.js +15 -0
  13. package/cjs/boot/rumEntryFactory.js.map +1 -0
  14. package/cjs/boot/rumPublicApi.js +285 -0
  15. package/cjs/boot/rumPublicApi.js.map +1 -0
  16. package/cjs/boot/rumRecorderApiStub.js +19 -0
  17. package/cjs/boot/rumRecorderApiStub.js.map +1 -0
  18. package/cjs/boot/rumSlimConfiguration.js +16 -0
  19. package/cjs/boot/rumSlimConfiguration.js.map +1 -0
  20. package/cjs/constants.js +41 -0
  21. package/cjs/constants.js.map +1 -0
  22. package/cjs/domain/assembly.js +172 -0
  23. package/cjs/domain/assembly.js.map +1 -0
  24. package/cjs/domain/configuration.js +272 -0
  25. package/cjs/domain/configuration.js.map +1 -0
  26. package/cjs/domain/contexts/commonContext.js +14 -0
  27. package/cjs/domain/contexts/commonContext.js.map +1 -0
  28. package/cjs/domain/contexts/displayContext.js +22 -0
  29. package/cjs/domain/contexts/displayContext.js.map +1 -0
  30. package/cjs/domain/contexts/foregroundContexts.js +111 -0
  31. package/cjs/domain/contexts/foregroundContexts.js.map +1 -0
  32. package/cjs/domain/contexts/internalContext.js +47 -0
  33. package/cjs/domain/contexts/internalContext.js.map +1 -0
  34. package/cjs/domain/contexts/pageStateHistory.js +111 -0
  35. package/cjs/domain/contexts/pageStateHistory.js.map +1 -0
  36. package/cjs/domain/contexts/urlContexts.js +73 -0
  37. package/cjs/domain/contexts/urlContexts.js.map +1 -0
  38. package/cjs/domain/contexts/viewContexts.js +51 -0
  39. package/cjs/domain/contexts/viewContexts.js.map +1 -0
  40. package/cjs/domain/domMutationObservable.js +69 -0
  41. package/cjs/domain/domMutationObservable.js.map +1 -0
  42. package/cjs/domain/encoderStreamId.js +11 -0
  43. package/cjs/domain/encoderStreamId.js.map +1 -0
  44. package/cjs/domain/firstInputPolyfill.js +83 -0
  45. package/cjs/domain/firstInputPolyfill.js.map +1 -0
  46. package/cjs/domain/initViewportObservable.js +44 -0
  47. package/cjs/domain/initViewportObservable.js.map +1 -0
  48. package/cjs/domain/locationChangeObservable.js +57 -0
  49. package/cjs/domain/locationChangeObservable.js.map +1 -0
  50. package/cjs/domain/performanceObservable.js +124 -0
  51. package/cjs/domain/performanceObservable.js.map +1 -0
  52. package/cjs/domain/performanceUtils.js +47 -0
  53. package/cjs/domain/performanceUtils.js.map +1 -0
  54. package/cjs/domain/requestCollection.js +127 -0
  55. package/cjs/domain/requestCollection.js.map +1 -0
  56. package/cjs/domain/rumEventsCollection/actions/actionCollection.js +89 -0
  57. package/cjs/domain/rumEventsCollection/actions/actionCollection.js.map +1 -0
  58. package/cjs/domain/rumEventsCollection/actions/clickChain.js +69 -0
  59. package/cjs/domain/rumEventsCollection/actions/clickChain.js.map +1 -0
  60. package/cjs/domain/rumEventsCollection/actions/computeFrustration.js +75 -0
  61. package/cjs/domain/rumEventsCollection/actions/computeFrustration.js.map +1 -0
  62. package/cjs/domain/rumEventsCollection/actions/getActionNameFromElement.js +232 -0
  63. package/cjs/domain/rumEventsCollection/actions/getActionNameFromElement.js.map +1 -0
  64. package/cjs/domain/rumEventsCollection/actions/getSelectorsFromElement.js +220 -0
  65. package/cjs/domain/rumEventsCollection/actions/getSelectorsFromElement.js.map +1 -0
  66. package/cjs/domain/rumEventsCollection/actions/interactionSelectorCache.js +28 -0
  67. package/cjs/domain/rumEventsCollection/actions/interactionSelectorCache.js.map +1 -0
  68. package/cjs/domain/rumEventsCollection/actions/listenActionEvents.js +73 -0
  69. package/cjs/domain/rumEventsCollection/actions/listenActionEvents.js.map +1 -0
  70. package/cjs/domain/rumEventsCollection/actions/trackClickActions.js +253 -0
  71. package/cjs/domain/rumEventsCollection/actions/trackClickActions.js.map +1 -0
  72. package/cjs/domain/rumEventsCollection/error/errorCollection.js +90 -0
  73. package/cjs/domain/rumEventsCollection/error/errorCollection.js.map +1 -0
  74. package/cjs/domain/rumEventsCollection/error/trackConsoleError.js +18 -0
  75. package/cjs/domain/rumEventsCollection/error/trackConsoleError.js.map +1 -0
  76. package/cjs/domain/rumEventsCollection/error/trackReportError.js +25 -0
  77. package/cjs/domain/rumEventsCollection/error/trackReportError.js.map +1 -0
  78. package/cjs/domain/rumEventsCollection/longTask/longAnimationFrameCollection.js +61 -0
  79. package/cjs/domain/rumEventsCollection/longTask/longAnimationFrameCollection.js.map +1 -0
  80. package/cjs/domain/rumEventsCollection/longTask/longTaskCollection.js +44 -0
  81. package/cjs/domain/rumEventsCollection/longTask/longTaskCollection.js.map +1 -0
  82. package/cjs/domain/rumEventsCollection/resource/matchRequestResourceEntry.js +74 -0
  83. package/cjs/domain/rumEventsCollection/resource/matchRequestResourceEntry.js.map +1 -0
  84. package/cjs/domain/rumEventsCollection/resource/resourceCollection.js +239 -0
  85. package/cjs/domain/rumEventsCollection/resource/resourceCollection.js.map +1 -0
  86. package/cjs/domain/rumEventsCollection/resource/resourceTrackerManager.js +237 -0
  87. package/cjs/domain/rumEventsCollection/resource/resourceTrackerManager.js.map +1 -0
  88. package/cjs/domain/rumEventsCollection/resource/resourceUtils.js +240 -0
  89. package/cjs/domain/rumEventsCollection/resource/resourceUtils.js.map +1 -0
  90. package/cjs/domain/rumEventsCollection/resource/retrieveInitialDocumentResourceTiming.js +25 -0
  91. package/cjs/domain/rumEventsCollection/resource/retrieveInitialDocumentResourceTiming.js.map +1 -0
  92. package/cjs/domain/rumEventsCollection/view/interactionCountPolyfill.js +54 -0
  93. package/cjs/domain/rumEventsCollection/view/interactionCountPolyfill.js.map +1 -0
  94. package/cjs/domain/rumEventsCollection/view/trackCommonViewMetrics.js +48 -0
  95. package/cjs/domain/rumEventsCollection/view/trackCommonViewMetrics.js.map +1 -0
  96. package/cjs/domain/rumEventsCollection/view/trackCumulativeLayoutShift.js +125 -0
  97. package/cjs/domain/rumEventsCollection/view/trackCumulativeLayoutShift.js.map +1 -0
  98. package/cjs/domain/rumEventsCollection/view/trackFirstContentfulPaint.js +27 -0
  99. package/cjs/domain/rumEventsCollection/view/trackFirstContentfulPaint.js.map +1 -0
  100. package/cjs/domain/rumEventsCollection/view/trackFirstHidden.js +55 -0
  101. package/cjs/domain/rumEventsCollection/view/trackFirstHidden.js.map +1 -0
  102. package/cjs/domain/rumEventsCollection/view/trackFirstInput.js +47 -0
  103. package/cjs/domain/rumEventsCollection/view/trackFirstInput.js.map +1 -0
  104. package/cjs/domain/rumEventsCollection/view/trackInitialViewTimings.js +51 -0
  105. package/cjs/domain/rumEventsCollection/view/trackInitialViewTimings.js.map +1 -0
  106. package/cjs/domain/rumEventsCollection/view/trackInteractionToNextPaint.js +162 -0
  107. package/cjs/domain/rumEventsCollection/view/trackInteractionToNextPaint.js.map +1 -0
  108. package/cjs/domain/rumEventsCollection/view/trackLargestContentfulPaint.js +61 -0
  109. package/cjs/domain/rumEventsCollection/view/trackLargestContentfulPaint.js.map +1 -0
  110. package/cjs/domain/rumEventsCollection/view/trackLoadingTime.js +51 -0
  111. package/cjs/domain/rumEventsCollection/view/trackLoadingTime.js.map +1 -0
  112. package/cjs/domain/rumEventsCollection/view/trackNavigationTimings.js +57 -0
  113. package/cjs/domain/rumEventsCollection/view/trackNavigationTimings.js.map +1 -0
  114. package/cjs/domain/rumEventsCollection/view/trackScrollMetrics.js +92 -0
  115. package/cjs/domain/rumEventsCollection/view/trackScrollMetrics.js.map +1 -0
  116. package/cjs/domain/rumEventsCollection/view/trackViewEventCounts.js +21 -0
  117. package/cjs/domain/rumEventsCollection/view/trackViewEventCounts.js.map +1 -0
  118. package/cjs/domain/rumEventsCollection/view/trackViews.js +269 -0
  119. package/cjs/domain/rumEventsCollection/view/trackViews.js.map +1 -0
  120. package/cjs/domain/rumEventsCollection/view/viewCollection.js +131 -0
  121. package/cjs/domain/rumEventsCollection/view/viewCollection.js.map +1 -0
  122. package/cjs/domain/rumSessionManager.js +187 -0
  123. package/cjs/domain/rumSessionManager.js.map +1 -0
  124. package/cjs/domain/tracing/ddtraceTracer.js +46 -0
  125. package/cjs/domain/tracing/ddtraceTracer.js.map +1 -0
  126. package/cjs/domain/tracing/getDocumentTraceId.js +80 -0
  127. package/cjs/domain/tracing/getDocumentTraceId.js.map +1 -0
  128. package/cjs/domain/tracing/jaegerTracer.js +48 -0
  129. package/cjs/domain/tracing/jaegerTracer.js.map +1 -0
  130. package/cjs/domain/tracing/sampler.js +69 -0
  131. package/cjs/domain/tracing/sampler.js.map +1 -0
  132. package/cjs/domain/tracing/skywalkingTracer.js +96 -0
  133. package/cjs/domain/tracing/skywalkingTracer.js.map +1 -0
  134. package/cjs/domain/tracing/traceIdentifier.js +66 -0
  135. package/cjs/domain/tracing/traceIdentifier.js.map +1 -0
  136. package/cjs/domain/tracing/tracer.js +133 -0
  137. package/cjs/domain/tracing/tracer.js.map +1 -0
  138. package/cjs/domain/tracing/w3cTraceParentTracer.js +74 -0
  139. package/cjs/domain/tracing/w3cTraceParentTracer.js.map +1 -0
  140. package/cjs/domain/tracing/zipkinMultiTracer.js +48 -0
  141. package/cjs/domain/tracing/zipkinMultiTracer.js.map +1 -0
  142. package/cjs/domain/tracing/zipkinSingleTracer.js +47 -0
  143. package/cjs/domain/tracing/zipkinSingleTracer.js.map +1 -0
  144. package/cjs/domain/trackEventCounts.js +55 -0
  145. package/cjs/domain/trackEventCounts.js.map +1 -0
  146. package/cjs/domain/usr/index.js +44 -0
  147. package/cjs/domain/usr/index.js.map +1 -0
  148. package/cjs/domain/waitPageActivityEnd.js +151 -0
  149. package/cjs/domain/waitPageActivityEnd.js.map +1 -0
  150. package/cjs/index.js +13 -0
  151. package/cjs/index.js.map +1 -0
  152. package/cjs/transport/startRumBatch.js +26 -0
  153. package/cjs/transport/startRumBatch.js.map +1 -0
  154. package/cjs/transport/startRumEventBridge.js +15 -0
  155. package/cjs/transport/startRumEventBridge.js.map +1 -0
  156. package/esm/boot/buildEnv.js +5 -0
  157. package/esm/boot/buildEnv.js.map +1 -0
  158. package/esm/boot/perStartRum.js +221 -0
  159. package/esm/boot/perStartRum.js.map +1 -0
  160. package/esm/boot/rum.js +173 -0
  161. package/esm/boot/rum.js.map +1 -0
  162. package/esm/boot/rum.slim.entry.js +7 -0
  163. package/esm/boot/rum.slim.entry.js.map +1 -0
  164. package/esm/boot/rumEntryFactory.js +9 -0
  165. package/esm/boot/rumEntryFactory.js.map +1 -0
  166. package/esm/boot/rumPublicApi.js +279 -0
  167. package/esm/boot/rumPublicApi.js.map +1 -0
  168. package/esm/boot/rumRecorderApiStub.js +13 -0
  169. package/esm/boot/rumRecorderApiStub.js.map +1 -0
  170. package/esm/boot/rumSlimConfiguration.js +10 -0
  171. package/esm/boot/rumSlimConfiguration.js.map +1 -0
  172. package/esm/constants.js +35 -0
  173. package/esm/constants.js.map +1 -0
  174. package/esm/domain/assembly.js +166 -0
  175. package/esm/domain/assembly.js.map +1 -0
  176. package/esm/domain/configuration.js +266 -0
  177. package/esm/domain/configuration.js.map +1 -0
  178. package/esm/domain/contexts/commonContext.js +8 -0
  179. package/esm/domain/contexts/commonContext.js.map +1 -0
  180. package/esm/domain/contexts/displayContext.js +16 -0
  181. package/esm/domain/contexts/displayContext.js.map +1 -0
  182. package/esm/domain/contexts/foregroundContexts.js +103 -0
  183. package/esm/domain/contexts/foregroundContexts.js.map +1 -0
  184. package/esm/domain/contexts/internalContext.js +41 -0
  185. package/esm/domain/contexts/internalContext.js.map +1 -0
  186. package/esm/domain/contexts/pageStateHistory.js +104 -0
  187. package/esm/domain/contexts/pageStateHistory.js.map +1 -0
  188. package/esm/domain/contexts/urlContexts.js +67 -0
  189. package/esm/domain/contexts/urlContexts.js.map +1 -0
  190. package/esm/domain/contexts/viewContexts.js +44 -0
  191. package/esm/domain/contexts/viewContexts.js.map +1 -0
  192. package/esm/domain/domMutationObservable.js +62 -0
  193. package/esm/domain/domMutationObservable.js.map +1 -0
  194. package/esm/domain/encoderStreamId.js +5 -0
  195. package/esm/domain/encoderStreamId.js.map +1 -0
  196. package/esm/domain/firstInputPolyfill.js +77 -0
  197. package/esm/domain/firstInputPolyfill.js.map +1 -0
  198. package/esm/domain/initViewportObservable.js +36 -0
  199. package/esm/domain/initViewportObservable.js.map +1 -0
  200. package/esm/domain/locationChangeObservable.js +51 -0
  201. package/esm/domain/locationChangeObservable.js.map +1 -0
  202. package/esm/domain/performanceObservable.js +116 -0
  203. package/esm/domain/performanceObservable.js.map +1 -0
  204. package/esm/domain/performanceUtils.js +40 -0
  205. package/esm/domain/performanceUtils.js.map +1 -0
  206. package/esm/domain/requestCollection.js +119 -0
  207. package/esm/domain/requestCollection.js.map +1 -0
  208. package/esm/domain/rumEventsCollection/actions/actionCollection.js +83 -0
  209. package/esm/domain/rumEventsCollection/actions/actionCollection.js.map +1 -0
  210. package/esm/domain/rumEventsCollection/actions/clickChain.js +62 -0
  211. package/esm/domain/rumEventsCollection/actions/clickChain.js.map +1 -0
  212. package/esm/domain/rumEventsCollection/actions/computeFrustration.js +67 -0
  213. package/esm/domain/rumEventsCollection/actions/computeFrustration.js.map +1 -0
  214. package/esm/domain/rumEventsCollection/actions/getActionNameFromElement.js +225 -0
  215. package/esm/domain/rumEventsCollection/actions/getActionNameFromElement.js.map +1 -0
  216. package/esm/domain/rumEventsCollection/actions/getSelectorsFromElement.js +212 -0
  217. package/esm/domain/rumEventsCollection/actions/getSelectorsFromElement.js.map +1 -0
  218. package/esm/domain/rumEventsCollection/actions/interactionSelectorCache.js +20 -0
  219. package/esm/domain/rumEventsCollection/actions/interactionSelectorCache.js.map +1 -0
  220. package/esm/domain/rumEventsCollection/actions/listenActionEvents.js +67 -0
  221. package/esm/domain/rumEventsCollection/actions/listenActionEvents.js.map +1 -0
  222. package/esm/domain/rumEventsCollection/actions/trackClickActions.js +244 -0
  223. package/esm/domain/rumEventsCollection/actions/trackClickActions.js.map +1 -0
  224. package/esm/domain/rumEventsCollection/error/errorCollection.js +83 -0
  225. package/esm/domain/rumEventsCollection/error/errorCollection.js.map +1 -0
  226. package/esm/domain/rumEventsCollection/error/trackConsoleError.js +12 -0
  227. package/esm/domain/rumEventsCollection/error/trackConsoleError.js.map +1 -0
  228. package/esm/domain/rumEventsCollection/error/trackReportError.js +19 -0
  229. package/esm/domain/rumEventsCollection/error/trackReportError.js.map +1 -0
  230. package/esm/domain/rumEventsCollection/longTask/longAnimationFrameCollection.js +55 -0
  231. package/esm/domain/rumEventsCollection/longTask/longAnimationFrameCollection.js.map +1 -0
  232. package/esm/domain/rumEventsCollection/longTask/longTaskCollection.js +38 -0
  233. package/esm/domain/rumEventsCollection/longTask/longTaskCollection.js.map +1 -0
  234. package/esm/domain/rumEventsCollection/resource/matchRequestResourceEntry.js +69 -0
  235. package/esm/domain/rumEventsCollection/resource/matchRequestResourceEntry.js.map +1 -0
  236. package/esm/domain/rumEventsCollection/resource/resourceCollection.js +233 -0
  237. package/esm/domain/rumEventsCollection/resource/resourceCollection.js.map +1 -0
  238. package/esm/domain/rumEventsCollection/resource/resourceTrackerManager.js +231 -0
  239. package/esm/domain/rumEventsCollection/resource/resourceTrackerManager.js.map +1 -0
  240. package/esm/domain/rumEventsCollection/resource/resourceUtils.js +218 -0
  241. package/esm/domain/rumEventsCollection/resource/resourceUtils.js.map +1 -0
  242. package/esm/domain/rumEventsCollection/resource/retrieveInitialDocumentResourceTiming.js +19 -0
  243. package/esm/domain/rumEventsCollection/resource/retrieveInitialDocumentResourceTiming.js.map +1 -0
  244. package/esm/domain/rumEventsCollection/view/interactionCountPolyfill.js +47 -0
  245. package/esm/domain/rumEventsCollection/view/interactionCountPolyfill.js.map +1 -0
  246. package/esm/domain/rumEventsCollection/view/trackCommonViewMetrics.js +42 -0
  247. package/esm/domain/rumEventsCollection/view/trackCommonViewMetrics.js.map +1 -0
  248. package/esm/domain/rumEventsCollection/view/trackCumulativeLayoutShift.js +117 -0
  249. package/esm/domain/rumEventsCollection/view/trackCumulativeLayoutShift.js.map +1 -0
  250. package/esm/domain/rumEventsCollection/view/trackFirstContentfulPaint.js +20 -0
  251. package/esm/domain/rumEventsCollection/view/trackFirstContentfulPaint.js.map +1 -0
  252. package/esm/domain/rumEventsCollection/view/trackFirstHidden.js +49 -0
  253. package/esm/domain/rumEventsCollection/view/trackFirstHidden.js.map +1 -0
  254. package/esm/domain/rumEventsCollection/view/trackFirstInput.js +41 -0
  255. package/esm/domain/rumEventsCollection/view/trackFirstInput.js.map +1 -0
  256. package/esm/domain/rumEventsCollection/view/trackInitialViewTimings.js +44 -0
  257. package/esm/domain/rumEventsCollection/view/trackInitialViewTimings.js.map +1 -0
  258. package/esm/domain/rumEventsCollection/view/trackInteractionToNextPaint.js +153 -0
  259. package/esm/domain/rumEventsCollection/view/trackInteractionToNextPaint.js.map +1 -0
  260. package/esm/domain/rumEventsCollection/view/trackLargestContentfulPaint.js +54 -0
  261. package/esm/domain/rumEventsCollection/view/trackLargestContentfulPaint.js.map +1 -0
  262. package/esm/domain/rumEventsCollection/view/trackLoadingTime.js +45 -0
  263. package/esm/domain/rumEventsCollection/view/trackLoadingTime.js.map +1 -0
  264. package/esm/domain/rumEventsCollection/view/trackNavigationTimings.js +51 -0
  265. package/esm/domain/rumEventsCollection/view/trackNavigationTimings.js.map +1 -0
  266. package/esm/domain/rumEventsCollection/view/trackScrollMetrics.js +84 -0
  267. package/esm/domain/rumEventsCollection/view/trackScrollMetrics.js.map +1 -0
  268. package/esm/domain/rumEventsCollection/view/trackViewEventCounts.js +15 -0
  269. package/esm/domain/rumEventsCollection/view/trackViewEventCounts.js.map +1 -0
  270. package/esm/domain/rumEventsCollection/view/trackViews.js +262 -0
  271. package/esm/domain/rumEventsCollection/view/trackViews.js.map +1 -0
  272. package/esm/domain/rumEventsCollection/view/viewCollection.js +125 -0
  273. package/esm/domain/rumEventsCollection/view/viewCollection.js.map +1 -0
  274. package/esm/domain/rumSessionManager.js +179 -0
  275. package/esm/domain/rumSessionManager.js.map +1 -0
  276. package/esm/domain/tracing/ddtraceTracer.js +40 -0
  277. package/esm/domain/tracing/ddtraceTracer.js.map +1 -0
  278. package/esm/domain/tracing/getDocumentTraceId.js +69 -0
  279. package/esm/domain/tracing/getDocumentTraceId.js.map +1 -0
  280. package/esm/domain/tracing/jaegerTracer.js +42 -0
  281. package/esm/domain/tracing/jaegerTracer.js.map +1 -0
  282. package/esm/domain/tracing/sampler.js +61 -0
  283. package/esm/domain/tracing/sampler.js.map +1 -0
  284. package/esm/domain/tracing/skywalkingTracer.js +90 -0
  285. package/esm/domain/tracing/skywalkingTracer.js.map +1 -0
  286. package/esm/domain/tracing/traceIdentifier.js +57 -0
  287. package/esm/domain/tracing/traceIdentifier.js.map +1 -0
  288. package/esm/domain/tracing/tracer.js +124 -0
  289. package/esm/domain/tracing/tracer.js.map +1 -0
  290. package/esm/domain/tracing/w3cTraceParentTracer.js +69 -0
  291. package/esm/domain/tracing/w3cTraceParentTracer.js.map +1 -0
  292. package/esm/domain/tracing/zipkinMultiTracer.js +42 -0
  293. package/esm/domain/tracing/zipkinMultiTracer.js.map +1 -0
  294. package/esm/domain/tracing/zipkinSingleTracer.js +41 -0
  295. package/esm/domain/tracing/zipkinSingleTracer.js.map +1 -0
  296. package/esm/domain/trackEventCounts.js +49 -0
  297. package/esm/domain/trackEventCounts.js.map +1 -0
  298. package/esm/domain/usr/index.js +38 -0
  299. package/esm/domain/usr/index.js.map +1 -0
  300. package/esm/domain/waitPageActivityEnd.js +142 -0
  301. package/esm/domain/waitPageActivityEnd.js.map +1 -0
  302. package/esm/index.js +3 -0
  303. package/esm/index.js.map +1 -0
  304. package/esm/transport/startRumBatch.js +20 -0
  305. package/esm/transport/startRumBatch.js.map +1 -0
  306. package/esm/transport/startRumEventBridge.js +9 -0
  307. package/esm/transport/startRumEventBridge.js.map +1 -0
  308. package/package.json +39 -0
  309. package/types/index.d.ts +134 -0
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TraceIdentifier = TraceIdentifier;
7
+ exports.createRandomHexIdentifier = createRandomHexIdentifier;
8
+ exports.getCrypto = getCrypto;
9
+ exports.normalizeHexIdentifier = normalizeHexIdentifier;
10
+ function TraceIdentifier() {
11
+ this.buffer = new Uint8Array(8);
12
+ getCrypto().getRandomValues(this.buffer);
13
+ this.buffer[0] = this.buffer[0] & 0x7f;
14
+ }
15
+ TraceIdentifier.prototype = {
16
+ // buffer: new Uint8Array(8),
17
+ toString: function toString(radix) {
18
+ var high = this.readInt32(0);
19
+ var low = this.readInt32(4);
20
+ var str = '';
21
+ do {
22
+ var mod = high % radix * 4294967296 + low;
23
+ high = Math.floor(high / radix);
24
+ low = Math.floor(mod / radix);
25
+ str = (mod % radix).toString(radix) + str;
26
+ } while (high || low);
27
+ return str;
28
+ },
29
+ toDecimalString: function toDecimalString() {
30
+ return this.toString(10);
31
+ },
32
+ /**
33
+ * Format used by OTel headers
34
+ */
35
+ toPaddedHexadecimalString: function toPaddedHexadecimalString() {
36
+ var traceId = this.toString(16);
37
+ return Array(17 - traceId.length).join('0') + traceId;
38
+ },
39
+ readInt32: function readInt32(offset) {
40
+ return this.buffer[offset] * 16777216 + (this.buffer[offset + 1] << 16) + (this.buffer[offset + 2] << 8) + this.buffer[offset + 3];
41
+ }
42
+ };
43
+ function getCrypto() {
44
+ return window.crypto || window.msCrypto;
45
+ }
46
+ function createRandomHexIdentifier(byteLength) {
47
+ var buffer = new Uint8Array(byteLength);
48
+ getCrypto().getRandomValues(buffer);
49
+ var parts = [];
50
+ for (var i = 0; i < buffer.length; i += 1) {
51
+ var hex = buffer[i].toString(16);
52
+ parts.push(hex.length === 1 ? '0' + hex : hex);
53
+ }
54
+ return parts.join('');
55
+ }
56
+ function normalizeHexIdentifier(value, allowedLengths) {
57
+ if (typeof value !== 'string') {
58
+ return undefined;
59
+ }
60
+ var normalized = value.toLowerCase();
61
+ if (allowedLengths.indexOf(normalized.length) === -1) {
62
+ return undefined;
63
+ }
64
+ return /^[0-9a-f]+$/.test(normalized) ? normalized : undefined;
65
+ }
66
+ //# sourceMappingURL=traceIdentifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"traceIdentifier.js","names":["TraceIdentifier","buffer","Uint8Array","getCrypto","getRandomValues","prototype","toString","radix","high","readInt32","low","str","mod","Math","floor","toDecimalString","toPaddedHexadecimalString","traceId","Array","length","join","offset","window","crypto","msCrypto","createRandomHexIdentifier","byteLength","parts","i","hex","push","normalizeHexIdentifier","value","allowedLengths","undefined","normalized","toLowerCase","indexOf","test"],"sources":["../../../../rum/src/domain/tracing/traceIdentifier.js"],"sourcesContent":["export function TraceIdentifier() {\n this.buffer = new Uint8Array(8)\n getCrypto().getRandomValues(this.buffer)\n this.buffer[0] = this.buffer[0] & 0x7f\n}\n\nTraceIdentifier.prototype = {\n // buffer: new Uint8Array(8),\n toString: function (radix) {\n var high = this.readInt32(0)\n var low = this.readInt32(4)\n var str = ''\n\n do {\n var mod = (high % radix) * 4294967296 + low\n high = Math.floor(high / radix)\n low = Math.floor(mod / radix)\n str = (mod % radix).toString(radix) + str\n } while (high || low)\n return str\n },\n toDecimalString: function () {\n return this.toString(10)\n },\n /**\n * Format used by OTel headers\n */\n toPaddedHexadecimalString() {\n var traceId = this.toString(16)\n return Array(17 - traceId.length).join('0') + traceId\n },\n readInt32: function (offset) {\n return (\n this.buffer[offset] * 16777216 +\n (this.buffer[offset + 1] << 16) +\n (this.buffer[offset + 2] << 8) +\n this.buffer[offset + 3]\n )\n }\n}\nexport function getCrypto() {\n return window.crypto || window.msCrypto\n}\n\nexport function createRandomHexIdentifier(byteLength) {\n var buffer = new Uint8Array(byteLength)\n getCrypto().getRandomValues(buffer)\n var parts = []\n for (var i = 0; i < buffer.length; i += 1) {\n var hex = buffer[i].toString(16)\n parts.push(hex.length === 1 ? '0' + hex : hex)\n }\n return parts.join('')\n}\n\nexport function normalizeHexIdentifier(value, allowedLengths) {\n if (typeof value !== 'string') {\n return undefined\n }\n\n var normalized = value.toLowerCase()\n if (allowedLengths.indexOf(normalized.length) === -1) {\n return undefined\n }\n\n return /^[0-9a-f]+$/.test(normalized) ? normalized : undefined\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,133 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.clearTracingIfNeeded = clearTracingIfNeeded;
7
+ exports.injectHeadersIfTracingAllowed = injectHeadersIfTracingAllowed;
8
+ exports.isTracingOption = isTracingOption;
9
+ exports.startTracer = startTracer;
10
+ var _browserCore = require("@cloudcare/browser-core");
11
+ var _ddtraceTracer = require("./ddtraceTracer");
12
+ var _skywalkingTracer = require("./skywalkingTracer");
13
+ var _jaegerTracer = require("./jaegerTracer");
14
+ var _zipkinSingleTracer = require("./zipkinSingleTracer");
15
+ var _zipkinMultiTracer = require("./zipkinMultiTracer");
16
+ var _w3cTraceParentTracer = require("./w3cTraceParentTracer");
17
+ var _sampler = require("./sampler");
18
+ function isTracingOption(item) {
19
+ var expectedItem = item;
20
+ return (0, _browserCore.getType)(expectedItem) === 'object' && (0, _browserCore.isMatchOption)(expectedItem.match) && (0, _browserCore.isString)(expectedItem.traceType);
21
+ }
22
+ function clearTracingIfNeeded(context) {
23
+ if (context.status === 0 && !context.isAborted) {
24
+ context.traceId = undefined;
25
+ context.spanId = undefined;
26
+ context.traceSampled = undefined;
27
+ }
28
+ }
29
+ function startTracer(configuration, sessionManager) {
30
+ return {
31
+ clearTracingIfNeeded: clearTracingIfNeeded,
32
+ traceFetch: function traceFetch(context) {
33
+ return injectHeadersIfTracingAllowed(configuration, context, sessionManager, function (tracingHeaders) {
34
+ if (context.input instanceof Request && (!context.init || !context.init.headers)) {
35
+ context.input = new Request(context.input);
36
+ (0, _browserCore.each)(tracingHeaders, function (value, key) {
37
+ context.input.headers.append(key, value);
38
+ });
39
+ } else {
40
+ context.init = (0, _browserCore.shallowClone)(context.init);
41
+ var headers = [];
42
+ if (context.init.headers instanceof Headers) {
43
+ context.init.headers.forEach(function (value, key) {
44
+ headers.push([key, value]);
45
+ });
46
+ } else if ((0, _browserCore.isArray)(context.init.headers)) {
47
+ (0, _browserCore.each)(context.init.headers, function (header) {
48
+ headers.push(header);
49
+ });
50
+ } else if (context.init.headers) {
51
+ (0, _browserCore.each)(context.init.headers, function (value, key) {
52
+ headers.push([key, value]);
53
+ });
54
+ }
55
+ // context.init.headers = headers.concat(objectEntries(tracingHeaders))
56
+ var headersMap = {};
57
+ (0, _browserCore.each)(headers.concat((0, _browserCore.objectEntries)(tracingHeaders)), function (header) {
58
+ headersMap[header[0]] = header[1];
59
+ });
60
+ context.init.headers = headersMap;
61
+ }
62
+ });
63
+ },
64
+ traceXhr: function traceXhr(context, xhr) {
65
+ return injectHeadersIfTracingAllowed(configuration, context, sessionManager, function (tracingHeaders) {
66
+ (0, _browserCore.each)(tracingHeaders, function (value, name) {
67
+ xhr.setRequestHeader(name, value);
68
+ });
69
+ });
70
+ }
71
+ };
72
+ }
73
+ function injectHeadersIfTracingAllowed(configuration, context, sessionManager, inject) {
74
+ var session = sessionManager.findTrackedSession();
75
+ if (!session) {
76
+ return;
77
+ }
78
+ var tracingOption = (0, _browserCore.find)(configuration.allowedTracingUrls, function (tracingOption) {
79
+ return (0, _browserCore.matchList)([tracingOption.match], context.url, true);
80
+ });
81
+ if (!tracingOption) {
82
+ return;
83
+ }
84
+ var traceSampled = (0, _sampler.isTraceSampled)(session.id, configuration.tracingSampleRate);
85
+
86
+ // if (!traceSampled) return
87
+ var tracer,
88
+ traceType = tracingOption.traceType;
89
+ switch (traceType) {
90
+ case _browserCore.TraceType.DDTRACE:
91
+ tracer = new _ddtraceTracer.DDtraceTracer(configuration, traceSampled);
92
+ break;
93
+ case _browserCore.TraceType.SKYWALKING_V3:
94
+ tracer = new _skywalkingTracer.SkyWalkingTracer(configuration, context.url, traceSampled);
95
+ break;
96
+ case _browserCore.TraceType.ZIPKIN_MULTI_HEADER:
97
+ tracer = new _zipkinMultiTracer.ZipkinMultiTracer(configuration, traceSampled);
98
+ break;
99
+ case _browserCore.TraceType.JAEGER:
100
+ tracer = new _jaegerTracer.JaegerTracer(configuration, traceSampled);
101
+ break;
102
+ case _browserCore.TraceType.W3C_TRACEPARENT:
103
+ tracer = new _w3cTraceParentTracer.W3cTraceParentTracer(configuration, traceSampled);
104
+ break;
105
+ case _browserCore.TraceType.W3C_TRACEPARENT_64:
106
+ tracer = new _w3cTraceParentTracer.W3cTraceParentTracer(configuration, traceSampled, true);
107
+ break;
108
+ case _browserCore.TraceType.ZIPKIN_SINGLE_HEADER:
109
+ tracer = new _zipkinSingleTracer.ZipkinSingleTracer(configuration, traceSampled);
110
+ break;
111
+ default:
112
+ break;
113
+ }
114
+ if (!tracer || !tracer.isTracingSupported()) {
115
+ return;
116
+ }
117
+ context.traceId = tracer.getTraceId();
118
+ context.spanId = tracer.getSpanId();
119
+ context.traceSampled = traceSampled;
120
+ var headers = tracer.makeTracingHeaders();
121
+ if (configuration.injectTraceHeader) {
122
+ var result = configuration.injectTraceHeader((0, _browserCore.shallowClone)(context));
123
+ if ((0, _browserCore.getType)(result) === 'object') {
124
+ (0, _browserCore.each)(result, function (value, key) {
125
+ if ((0, _browserCore.getType)(value) === 'string') {
126
+ headers[key] = value;
127
+ }
128
+ });
129
+ }
130
+ }
131
+ inject(headers);
132
+ }
133
+ //# sourceMappingURL=tracer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracer.js","names":["_browserCore","require","_ddtraceTracer","_skywalkingTracer","_jaegerTracer","_zipkinSingleTracer","_zipkinMultiTracer","_w3cTraceParentTracer","_sampler","isTracingOption","item","expectedItem","getType","isMatchOption","match","isString","traceType","clearTracingIfNeeded","context","status","isAborted","traceId","undefined","spanId","traceSampled","startTracer","configuration","sessionManager","traceFetch","injectHeadersIfTracingAllowed","tracingHeaders","input","Request","init","headers","each","value","key","append","shallowClone","Headers","forEach","push","isArray","header","headersMap","concat","objectEntries","traceXhr","xhr","name","setRequestHeader","inject","session","findTrackedSession","tracingOption","find","allowedTracingUrls","matchList","url","isTraceSampled","id","tracingSampleRate","tracer","TraceType","DDTRACE","DDtraceTracer","SKYWALKING_V3","SkyWalkingTracer","ZIPKIN_MULTI_HEADER","ZipkinMultiTracer","JAEGER","JaegerTracer","W3C_TRACEPARENT","W3cTraceParentTracer","W3C_TRACEPARENT_64","ZIPKIN_SINGLE_HEADER","ZipkinSingleTracer","isTracingSupported","getTraceId","getSpanId","makeTracingHeaders","injectTraceHeader","result"],"sources":["../../../../rum/src/domain/tracing/tracer.js"],"sourcesContent":["import {\n objectEntries,\n each,\n shallowClone,\n isArray,\n TraceType,\n performDraw,\n isNumber,\n getType,\n find,\n isMatchOption,\n matchList,\n isString\n} from '@cloudcare/browser-core'\nimport { DDtraceTracer } from './ddtraceTracer'\nimport { SkyWalkingTracer } from './skywalkingTracer'\nimport { JaegerTracer } from './jaegerTracer'\nimport { ZipkinSingleTracer } from './zipkinSingleTracer'\nimport { ZipkinMultiTracer } from './zipkinMultiTracer'\nimport { W3cTraceParentTracer } from './w3cTraceParentTracer'\nimport { isTraceSampled } from './sampler'\nexport function isTracingOption(item) {\n var expectedItem = item\n return (\n getType(expectedItem) === 'object' &&\n isMatchOption(expectedItem.match) &&\n isString(expectedItem.traceType)\n )\n}\nexport function clearTracingIfNeeded(context) {\n if (context.status === 0 && !context.isAborted) {\n context.traceId = undefined\n context.spanId = undefined\n context.traceSampled = undefined\n }\n}\n\nexport function startTracer(configuration, sessionManager) {\n return {\n clearTracingIfNeeded: clearTracingIfNeeded,\n traceFetch: function (context) {\n return injectHeadersIfTracingAllowed(\n configuration,\n context,\n sessionManager,\n function (tracingHeaders) {\n if (\n context.input instanceof Request &&\n (!context.init || !context.init.headers)\n ) {\n context.input = new Request(context.input)\n each(tracingHeaders, function (value, key) {\n context.input.headers.append(key, value)\n })\n } else {\n context.init = shallowClone(context.init)\n var headers = []\n if (context.init.headers instanceof Headers) {\n context.init.headers.forEach(function (value, key) {\n headers.push([key, value])\n })\n } else if (isArray(context.init.headers)) {\n each(context.init.headers, function (header) {\n headers.push(header)\n })\n } else if (context.init.headers) {\n each(context.init.headers, function (value, key) {\n headers.push([key, value])\n })\n }\n // context.init.headers = headers.concat(objectEntries(tracingHeaders))\n var headersMap = {}\n each(\n headers.concat(objectEntries(tracingHeaders)),\n function (header) {\n headersMap[header[0]] = header[1]\n }\n )\n context.init.headers = headersMap\n }\n }\n )\n },\n traceXhr: function (context, xhr) {\n return injectHeadersIfTracingAllowed(\n configuration,\n context,\n sessionManager,\n function (tracingHeaders) {\n each(tracingHeaders, function (value, name) {\n xhr.setRequestHeader(name, value)\n })\n }\n )\n }\n }\n}\n\nexport function injectHeadersIfTracingAllowed(\n configuration,\n context,\n sessionManager,\n inject\n) {\n const session = sessionManager.findTrackedSession()\n if (!session) {\n return\n }\n var tracingOption = find(\n configuration.allowedTracingUrls,\n function (tracingOption) {\n return matchList([tracingOption.match], context.url, true)\n }\n )\n if (!tracingOption) {\n return\n }\n const traceSampled = isTraceSampled(\n session.id,\n configuration.tracingSampleRate\n )\n\n // if (!traceSampled) return\n var tracer,\n traceType = tracingOption.traceType\n switch (traceType) {\n case TraceType.DDTRACE:\n tracer = new DDtraceTracer(configuration, traceSampled)\n break\n case TraceType.SKYWALKING_V3:\n tracer = new SkyWalkingTracer(configuration, context.url, traceSampled)\n break\n case TraceType.ZIPKIN_MULTI_HEADER:\n tracer = new ZipkinMultiTracer(configuration, traceSampled)\n break\n case TraceType.JAEGER:\n tracer = new JaegerTracer(configuration, traceSampled)\n break\n case TraceType.W3C_TRACEPARENT:\n tracer = new W3cTraceParentTracer(configuration, traceSampled)\n break\n case TraceType.W3C_TRACEPARENT_64:\n tracer = new W3cTraceParentTracer(configuration, traceSampled, true)\n break\n case TraceType.ZIPKIN_SINGLE_HEADER:\n tracer = new ZipkinSingleTracer(configuration, traceSampled)\n break\n default:\n break\n }\n if (!tracer || !tracer.isTracingSupported()) {\n return\n }\n\n context.traceId = tracer.getTraceId()\n context.spanId = tracer.getSpanId()\n context.traceSampled = traceSampled\n var headers = tracer.makeTracingHeaders()\n if (configuration.injectTraceHeader) {\n var result = configuration.injectTraceHeader(shallowClone(context))\n if (getType(result) === 'object') {\n each(result, function (value, key) {\n if (getType(value) === 'string') {\n headers[key] = value\n }\n })\n }\n }\n inject(headers)\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.W3cTraceParentTracer = W3cTraceParentTracer;
7
+ var _traceIdentifier = require("./traceIdentifier");
8
+ var _browserCore = require("@cloudcare/browser-core");
9
+ // === Generate a random 64-bit number in fixed-length hex format
10
+ function randomTraceId() {
11
+ var digits = '0123456789abcdef';
12
+ var n = '';
13
+ for (var i = 0; i < 16; i += 1) {
14
+ var rand = Math.floor(Math.random() * 16);
15
+ n += digits[rand];
16
+ }
17
+ return n;
18
+ }
19
+ /**
20
+ *
21
+ * @param {*} traceSampled
22
+ * @param {*} isHexTraceId
23
+ */
24
+ function W3cTraceParentTracer(configuration, traceSampled, isHexTraceId) {
25
+ this._traceId = new _traceIdentifier.TraceIdentifier();
26
+ this._spanId = new _traceIdentifier.TraceIdentifier();
27
+ this._traceSampled = traceSampled;
28
+ this.isHexTraceId = isHexTraceId;
29
+ if (configuration.generateTraceId && (0, _browserCore.getType)(configuration.generateTraceId) === 'function') {
30
+ var customTraceId = configuration.generateTraceId();
31
+ if ((0, _browserCore.getType)(customTraceId) === 'string') {
32
+ this.customTraceId = customTraceId;
33
+ }
34
+ }
35
+ }
36
+ W3cTraceParentTracer.prototype = {
37
+ isTracingSupported: function isTracingSupported() {
38
+ return (0, _traceIdentifier.getCrypto)() !== undefined;
39
+ },
40
+ getSpanId: function getSpanId() {
41
+ return this.isHexTraceId ? this._spanId.toDecimalString() : this._spanId.toPaddedHexadecimalString();
42
+ },
43
+ getTraceId: function getTraceId() {
44
+ if (this.customTraceId) {
45
+ return this.customTraceId;
46
+ }
47
+ if (this.isHexTraceId) {
48
+ return this._traceId.toDecimalString();
49
+ } else {
50
+ return this._traceId.toPaddedHexadecimalString() + this._spanId.toPaddedHexadecimalString();
51
+ }
52
+ },
53
+ getTraceParent: function getTraceParent() {
54
+ // '{version}-{traceId}-{spanId}-{sampleDecision}'
55
+ if (this.isHexTraceId) {
56
+ return '00-0000000000000000' + this._traceId.toPaddedHexadecimalString() + '-' + this._spanId.toPaddedHexadecimalString() + '-' + (this._traceSampled ? '01' : '00');
57
+ } else {
58
+ return '00-' + this.getTraceId() + '-' + this.getSpanId() + '-' + (this._traceSampled ? '01' : '00');
59
+ }
60
+ },
61
+ makeTracingHeaders: function makeTracingHeaders() {
62
+ var baseHeaders = {
63
+ traceparent: this.getTraceParent()
64
+ };
65
+ if (this.isHexTraceId) {
66
+ return (0, _browserCore.assign)(baseHeaders, {
67
+ 'x-gc-trace-id': this.getTraceId(),
68
+ 'x-gc-span-id': this.getSpanId()
69
+ });
70
+ }
71
+ return baseHeaders;
72
+ }
73
+ };
74
+ //# sourceMappingURL=w3cTraceParentTracer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"w3cTraceParentTracer.js","names":["_traceIdentifier","require","_browserCore","randomTraceId","digits","n","i","rand","Math","floor","random","W3cTraceParentTracer","configuration","traceSampled","isHexTraceId","_traceId","TraceIdentifier","_spanId","_traceSampled","generateTraceId","getType","customTraceId","prototype","isTracingSupported","getCrypto","undefined","getSpanId","toDecimalString","toPaddedHexadecimalString","getTraceId","getTraceParent","makeTracingHeaders","baseHeaders","traceparent","assign"],"sources":["../../../../rum/src/domain/tracing/w3cTraceParentTracer.js"],"sourcesContent":["import { TraceIdentifier, getCrypto } from './traceIdentifier'\nimport { assign, getType } from '@cloudcare/browser-core'\n\n// === Generate a random 64-bit number in fixed-length hex format\nfunction randomTraceId() {\n var digits = '0123456789abcdef'\n var n = ''\n for (var i = 0; i < 16; i += 1) {\n var rand = Math.floor(Math.random() * 16)\n n += digits[rand]\n }\n return n\n}\n/**\n *\n * @param {*} traceSampled\n * @param {*} isHexTraceId\n */\nexport function W3cTraceParentTracer(\n configuration,\n traceSampled,\n isHexTraceId\n) {\n this._traceId = new TraceIdentifier()\n this._spanId = new TraceIdentifier()\n this._traceSampled = traceSampled\n this.isHexTraceId = isHexTraceId\n if (\n configuration.generateTraceId &&\n getType(configuration.generateTraceId) === 'function'\n ) {\n const customTraceId = configuration.generateTraceId()\n if (getType(customTraceId) === 'string') {\n this.customTraceId = customTraceId\n }\n }\n}\nW3cTraceParentTracer.prototype = {\n isTracingSupported: function () {\n return getCrypto() !== undefined\n },\n getSpanId: function () {\n return this.isHexTraceId\n ? this._spanId.toDecimalString()\n : this._spanId.toPaddedHexadecimalString()\n },\n getTraceId: function () {\n if (this.customTraceId) {\n return this.customTraceId\n }\n if (this.isHexTraceId) {\n return this._traceId.toDecimalString()\n } else {\n return (\n this._traceId.toPaddedHexadecimalString() +\n this._spanId.toPaddedHexadecimalString()\n )\n }\n },\n getTraceParent: function () {\n // '{version}-{traceId}-{spanId}-{sampleDecision}'\n if (this.isHexTraceId) {\n return (\n '00-0000000000000000' +\n this._traceId.toPaddedHexadecimalString() +\n '-' +\n this._spanId.toPaddedHexadecimalString() +\n '-' +\n (this._traceSampled ? '01' : '00')\n )\n } else {\n return (\n '00-' +\n this.getTraceId() +\n '-' +\n this.getSpanId() +\n '-' +\n (this._traceSampled ? '01' : '00')\n )\n }\n },\n makeTracingHeaders: function () {\n var baseHeaders = {\n traceparent: this.getTraceParent()\n }\n if (this.isHexTraceId) {\n return assign(baseHeaders, {\n 'x-gc-trace-id': this.getTraceId(),\n 'x-gc-span-id': this.getSpanId()\n })\n }\n return baseHeaders\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA;AACA,SAASE,aAAaA,CAAA,EAAG;EACvB,IAAIC,MAAM,GAAG,kBAAkB;EAC/B,IAAIC,CAAC,GAAG,EAAE;EACV,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,EAAE,EAAEA,CAAC,IAAI,CAAC,EAAE;IAC9B,IAAIC,IAAI,GAAGC,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC;IACzCL,CAAC,IAAID,MAAM,CAACG,IAAI,CAAC;EACnB;EACA,OAAOF,CAAC;AACV;AACA;AACA;AACA;AACA;AACA;AACO,SAASM,oBAAoBA,CAClCC,aAAa,EACbC,YAAY,EACZC,YAAY,EACZ;EACA,IAAI,CAACC,QAAQ,GAAG,IAAIC,gCAAe,CAAC,CAAC;EACrC,IAAI,CAACC,OAAO,GAAG,IAAID,gCAAe,CAAC,CAAC;EACpC,IAAI,CAACE,aAAa,GAAGL,YAAY;EACjC,IAAI,CAACC,YAAY,GAAGA,YAAY;EAChC,IACEF,aAAa,CAACO,eAAe,IAC7B,IAAAC,oBAAO,EAACR,aAAa,CAACO,eAAe,CAAC,KAAK,UAAU,EACrD;IACA,IAAME,aAAa,GAAGT,aAAa,CAACO,eAAe,CAAC,CAAC;IACrD,IAAI,IAAAC,oBAAO,EAACC,aAAa,CAAC,KAAK,QAAQ,EAAE;MACvC,IAAI,CAACA,aAAa,GAAGA,aAAa;IACpC;EACF;AACF;AACAV,oBAAoB,CAACW,SAAS,GAAG;EAC/BC,kBAAkB,EAAE,SAApBA,kBAAkBA,CAAA,EAAc;IAC9B,OAAO,IAAAC,0BAAS,EAAC,CAAC,KAAKC,SAAS;EAClC,CAAC;EACDC,SAAS,EAAE,SAAXA,SAASA,CAAA,EAAc;IACrB,OAAO,IAAI,CAACZ,YAAY,GACpB,IAAI,CAACG,OAAO,CAACU,eAAe,CAAC,CAAC,GAC9B,IAAI,CAACV,OAAO,CAACW,yBAAyB,CAAC,CAAC;EAC9C,CAAC;EACDC,UAAU,EAAE,SAAZA,UAAUA,CAAA,EAAc;IACtB,IAAI,IAAI,CAACR,aAAa,EAAE;MACtB,OAAO,IAAI,CAACA,aAAa;IAC3B;IACA,IAAI,IAAI,CAACP,YAAY,EAAE;MACrB,OAAO,IAAI,CAACC,QAAQ,CAACY,eAAe,CAAC,CAAC;IACxC,CAAC,MAAM;MACL,OACE,IAAI,CAACZ,QAAQ,CAACa,yBAAyB,CAAC,CAAC,GACzC,IAAI,CAACX,OAAO,CAACW,yBAAyB,CAAC,CAAC;IAE5C;EACF,CAAC;EACDE,cAAc,EAAE,SAAhBA,cAAcA,CAAA,EAAc;IAC1B;IACA,IAAI,IAAI,CAAChB,YAAY,EAAE;MACrB,OACE,qBAAqB,GACrB,IAAI,CAACC,QAAQ,CAACa,yBAAyB,CAAC,CAAC,GACzC,GAAG,GACH,IAAI,CAACX,OAAO,CAACW,yBAAyB,CAAC,CAAC,GACxC,GAAG,IACF,IAAI,CAACV,aAAa,GAAG,IAAI,GAAG,IAAI,CAAC;IAEtC,CAAC,MAAM;MACL,OACE,KAAK,GACL,IAAI,CAACW,UAAU,CAAC,CAAC,GACjB,GAAG,GACH,IAAI,CAACH,SAAS,CAAC,CAAC,GAChB,GAAG,IACF,IAAI,CAACR,aAAa,GAAG,IAAI,GAAG,IAAI,CAAC;IAEtC;EACF,CAAC;EACDa,kBAAkB,EAAE,SAApBA,kBAAkBA,CAAA,EAAc;IAC9B,IAAIC,WAAW,GAAG;MAChBC,WAAW,EAAE,IAAI,CAACH,cAAc,CAAC;IACnC,CAAC;IACD,IAAI,IAAI,CAAChB,YAAY,EAAE;MACrB,OAAO,IAAAoB,mBAAM,EAACF,WAAW,EAAE;QACzB,eAAe,EAAE,IAAI,CAACH,UAAU,CAAC,CAAC;QAClC,cAAc,EAAE,IAAI,CAACH,SAAS,CAAC;MACjC,CAAC,CAAC;IACJ;IACA,OAAOM,WAAW;EACpB;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ZipkinMultiTracer = ZipkinMultiTracer;
7
+ var _traceIdentifier = require("./traceIdentifier");
8
+ var _browserCore = require("@cloudcare/browser-core");
9
+ /**
10
+ *
11
+ * @param {*} configuration
12
+ */
13
+ function ZipkinMultiTracer(configuration, traceSampled) {
14
+ this._traceId = configuration.traceId128Bit ? (0, _traceIdentifier.createRandomHexIdentifier)(16) : (0, _traceIdentifier.createRandomHexIdentifier)(8);
15
+ this._spanId = (0, _traceIdentifier.createRandomHexIdentifier)(8);
16
+ this._traceSampled = traceSampled;
17
+ this.is128Bit = configuration.traceId128Bit;
18
+ if (configuration.generateTraceId && (0, _browserCore.getType)(configuration.generateTraceId) === 'function') {
19
+ var customTraceId = (0, _traceIdentifier.normalizeHexIdentifier)(configuration.generateTraceId(), [16, 32]);
20
+ if (customTraceId) {
21
+ this.customTraceId = customTraceId;
22
+ }
23
+ }
24
+ }
25
+ ZipkinMultiTracer.prototype = {
26
+ isTracingSupported: function isTracingSupported() {
27
+ return (0, _traceIdentifier.getCrypto)() !== undefined;
28
+ },
29
+ getSpanId: function getSpanId() {
30
+ return this._spanId;
31
+ },
32
+ getTraceId: function getTraceId() {
33
+ if (this.customTraceId) {
34
+ return this.customTraceId;
35
+ }
36
+ return this._traceId;
37
+ },
38
+ makeTracingHeaders: function makeTracingHeaders() {
39
+ return {
40
+ 'X-B3-TraceId': this.getTraceId(),
41
+ 'X-B3-SpanId': this.getSpanId(),
42
+ // 'X-B3-ParentSpanId': '',
43
+ 'X-B3-Sampled': this._traceSampled ? '1' : '0'
44
+ // 'X-B3-Flags': '0'
45
+ };
46
+ }
47
+ };
48
+ //# sourceMappingURL=zipkinMultiTracer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zipkinMultiTracer.js","names":["_traceIdentifier","require","_browserCore","ZipkinMultiTracer","configuration","traceSampled","_traceId","traceId128Bit","createRandomHexIdentifier","_spanId","_traceSampled","is128Bit","generateTraceId","getType","customTraceId","normalizeHexIdentifier","prototype","isTracingSupported","getCrypto","undefined","getSpanId","getTraceId","makeTracingHeaders"],"sources":["../../../../rum/src/domain/tracing/zipkinMultiTracer.js"],"sourcesContent":["import {\n createRandomHexIdentifier,\n getCrypto,\n normalizeHexIdentifier\n} from './traceIdentifier'\nimport { getType } from '@cloudcare/browser-core'\n/**\n *\n * @param {*} configuration\n */\nexport function ZipkinMultiTracer(configuration, traceSampled) {\n this._traceId = configuration.traceId128Bit\n ? createRandomHexIdentifier(16)\n : createRandomHexIdentifier(8)\n this._spanId = createRandomHexIdentifier(8)\n this._traceSampled = traceSampled\n this.is128Bit = configuration.traceId128Bit\n if (\n configuration.generateTraceId &&\n getType(configuration.generateTraceId) === 'function'\n ) {\n const customTraceId = normalizeHexIdentifier(\n configuration.generateTraceId(),\n [16, 32]\n )\n if (customTraceId) {\n this.customTraceId = customTraceId\n }\n }\n}\nZipkinMultiTracer.prototype = {\n isTracingSupported: function () {\n return getCrypto() !== undefined\n },\n getSpanId: function () {\n return this._spanId\n },\n getTraceId: function () {\n if (this.customTraceId) {\n return this.customTraceId\n }\n return this._traceId\n },\n\n makeTracingHeaders: function () {\n return {\n 'X-B3-TraceId': this.getTraceId(),\n 'X-B3-SpanId': this.getSpanId(),\n // 'X-B3-ParentSpanId': '',\n 'X-B3-Sampled': this._traceSampled ? '1' : '0'\n // 'X-B3-Flags': '0'\n }\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AAKA,IAAAC,YAAA,GAAAD,OAAA;AACA;AACA;AACA;AACA;AACO,SAASE,iBAAiBA,CAACC,aAAa,EAAEC,YAAY,EAAE;EAC7D,IAAI,CAACC,QAAQ,GAAGF,aAAa,CAACG,aAAa,GACvC,IAAAC,0CAAyB,EAAC,EAAE,CAAC,GAC7B,IAAAA,0CAAyB,EAAC,CAAC,CAAC;EAChC,IAAI,CAACC,OAAO,GAAG,IAAAD,0CAAyB,EAAC,CAAC,CAAC;EAC3C,IAAI,CAACE,aAAa,GAAGL,YAAY;EACjC,IAAI,CAACM,QAAQ,GAAGP,aAAa,CAACG,aAAa;EAC3C,IACEH,aAAa,CAACQ,eAAe,IAC7B,IAAAC,oBAAO,EAACT,aAAa,CAACQ,eAAe,CAAC,KAAK,UAAU,EACrD;IACA,IAAME,aAAa,GAAG,IAAAC,uCAAsB,EAC1CX,aAAa,CAACQ,eAAe,CAAC,CAAC,EAC/B,CAAC,EAAE,EAAE,EAAE,CACT,CAAC;IACD,IAAIE,aAAa,EAAE;MACjB,IAAI,CAACA,aAAa,GAAGA,aAAa;IACpC;EACF;AACF;AACAX,iBAAiB,CAACa,SAAS,GAAG;EAC5BC,kBAAkB,EAAE,SAApBA,kBAAkBA,CAAA,EAAc;IAC9B,OAAO,IAAAC,0BAAS,EAAC,CAAC,KAAKC,SAAS;EAClC,CAAC;EACDC,SAAS,EAAE,SAAXA,SAASA,CAAA,EAAc;IACrB,OAAO,IAAI,CAACX,OAAO;EACrB,CAAC;EACDY,UAAU,EAAE,SAAZA,UAAUA,CAAA,EAAc;IACtB,IAAI,IAAI,CAACP,aAAa,EAAE;MACtB,OAAO,IAAI,CAACA,aAAa;IAC3B;IACA,OAAO,IAAI,CAACR,QAAQ;EACtB,CAAC;EAEDgB,kBAAkB,EAAE,SAApBA,kBAAkBA,CAAA,EAAc;IAC9B,OAAO;MACL,cAAc,EAAE,IAAI,CAACD,UAAU,CAAC,CAAC;MACjC,aAAa,EAAE,IAAI,CAACD,SAAS,CAAC,CAAC;MAC/B;MACA,cAAc,EAAE,IAAI,CAACV,aAAa,GAAG,GAAG,GAAG;MAC3C;IACF,CAAC;EACH;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ZipkinSingleTracer = ZipkinSingleTracer;
7
+ var _traceIdentifier = require("./traceIdentifier");
8
+ var _browserCore = require("@cloudcare/browser-core");
9
+ /**
10
+ *
11
+ * @param {*} configuration
12
+ */
13
+ function ZipkinSingleTracer(configuration, traceSampled) {
14
+ this._traceId = (0, _traceIdentifier.createRandomHexIdentifier)(8);
15
+ this._spanId = (0, _traceIdentifier.createRandomHexIdentifier)(8);
16
+ this._traceSampled = traceSampled;
17
+ if (configuration.generateTraceId && (0, _browserCore.getType)(configuration.generateTraceId) === 'function') {
18
+ var customTraceId = (0, _traceIdentifier.normalizeHexIdentifier)(configuration.generateTraceId(), [16, 32]);
19
+ if (customTraceId) {
20
+ this.customTraceId = customTraceId;
21
+ }
22
+ }
23
+ }
24
+ ZipkinSingleTracer.prototype = {
25
+ isTracingSupported: function isTracingSupported() {
26
+ return (0, _traceIdentifier.getCrypto)() !== undefined;
27
+ },
28
+ getSpanId: function getSpanId() {
29
+ return this._spanId;
30
+ },
31
+ getTraceId: function getTraceId() {
32
+ if (this.customTraceId) {
33
+ return this.customTraceId;
34
+ }
35
+ return this._traceId;
36
+ },
37
+ getB3Str: function getB3Str() {
38
+ //{TraceId}-{SpanId}-{SamplingState}-{ParentSpanId}
39
+ return this.getTraceId() + '-' + this.getSpanId() + '-' + (this._traceSampled ? '1' : '0');
40
+ },
41
+ makeTracingHeaders: function makeTracingHeaders() {
42
+ return {
43
+ b3: this.getB3Str()
44
+ };
45
+ }
46
+ };
47
+ //# sourceMappingURL=zipkinSingleTracer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zipkinSingleTracer.js","names":["_traceIdentifier","require","_browserCore","ZipkinSingleTracer","configuration","traceSampled","_traceId","createRandomHexIdentifier","_spanId","_traceSampled","generateTraceId","getType","customTraceId","normalizeHexIdentifier","prototype","isTracingSupported","getCrypto","undefined","getSpanId","getTraceId","getB3Str","makeTracingHeaders","b3"],"sources":["../../../../rum/src/domain/tracing/zipkinSingleTracer.js"],"sourcesContent":["import {\n createRandomHexIdentifier,\n getCrypto,\n normalizeHexIdentifier\n} from './traceIdentifier'\nimport { getType } from '@cloudcare/browser-core'\n/**\n *\n * @param {*} configuration\n */\nexport function ZipkinSingleTracer(configuration, traceSampled) {\n this._traceId = createRandomHexIdentifier(8)\n this._spanId = createRandomHexIdentifier(8)\n this._traceSampled = traceSampled\n if (\n configuration.generateTraceId &&\n getType(configuration.generateTraceId) === 'function'\n ) {\n const customTraceId = normalizeHexIdentifier(\n configuration.generateTraceId(),\n [16, 32]\n )\n if (customTraceId) {\n this.customTraceId = customTraceId\n }\n }\n}\nZipkinSingleTracer.prototype = {\n isTracingSupported: function () {\n return getCrypto() !== undefined\n },\n getSpanId: function () {\n return this._spanId\n },\n getTraceId: function () {\n if (this.customTraceId) {\n return this.customTraceId\n }\n return this._traceId\n },\n getB3Str: function () {\n //{TraceId}-{SpanId}-{SamplingState}-{ParentSpanId}\n return (\n this.getTraceId() +\n '-' +\n this.getSpanId() +\n '-' +\n (this._traceSampled ? '1' : '0')\n )\n },\n makeTracingHeaders: function () {\n return {\n b3: this.getB3Str()\n }\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AAKA,IAAAC,YAAA,GAAAD,OAAA;AACA;AACA;AACA;AACA;AACO,SAASE,kBAAkBA,CAACC,aAAa,EAAEC,YAAY,EAAE;EAC9D,IAAI,CAACC,QAAQ,GAAG,IAAAC,0CAAyB,EAAC,CAAC,CAAC;EAC5C,IAAI,CAACC,OAAO,GAAG,IAAAD,0CAAyB,EAAC,CAAC,CAAC;EAC3C,IAAI,CAACE,aAAa,GAAGJ,YAAY;EACjC,IACED,aAAa,CAACM,eAAe,IAC7B,IAAAC,oBAAO,EAACP,aAAa,CAACM,eAAe,CAAC,KAAK,UAAU,EACrD;IACA,IAAME,aAAa,GAAG,IAAAC,uCAAsB,EAC1CT,aAAa,CAACM,eAAe,CAAC,CAAC,EAC/B,CAAC,EAAE,EAAE,EAAE,CACT,CAAC;IACD,IAAIE,aAAa,EAAE;MACjB,IAAI,CAACA,aAAa,GAAGA,aAAa;IACpC;EACF;AACF;AACAT,kBAAkB,CAACW,SAAS,GAAG;EAC7BC,kBAAkB,EAAE,SAApBA,kBAAkBA,CAAA,EAAc;IAC9B,OAAO,IAAAC,0BAAS,EAAC,CAAC,KAAKC,SAAS;EAClC,CAAC;EACDC,SAAS,EAAE,SAAXA,SAASA,CAAA,EAAc;IACrB,OAAO,IAAI,CAACV,OAAO;EACrB,CAAC;EACDW,UAAU,EAAE,SAAZA,UAAUA,CAAA,EAAc;IACtB,IAAI,IAAI,CAACP,aAAa,EAAE;MACtB,OAAO,IAAI,CAACA,aAAa;IAC3B;IACA,OAAO,IAAI,CAACN,QAAQ;EACtB,CAAC;EACDc,QAAQ,EAAE,SAAVA,QAAQA,CAAA,EAAc;IACpB;IACA,OACE,IAAI,CAACD,UAAU,CAAC,CAAC,GACjB,GAAG,GACH,IAAI,CAACD,SAAS,CAAC,CAAC,GAChB,GAAG,IACF,IAAI,CAACT,aAAa,GAAG,GAAG,GAAG,GAAG,CAAC;EAEpC,CAAC;EACDY,kBAAkB,EAAE,SAApBA,kBAAkBA,CAAA,EAAc;IAC9B,OAAO;MACLC,EAAE,EAAE,IAAI,CAACF,QAAQ,CAAC;IACpB,CAAC;EACH;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.trackEventCounts = trackEventCounts;
7
+ var _browserCore = require("@cloudcare/browser-core");
8
+ function trackEventCounts(data) {
9
+ var lifeCycle = data.lifeCycle;
10
+ var isChildEvent = data.isChildEvent;
11
+ var callback = data.onChange;
12
+ if (callback === undefined) {
13
+ callback = _browserCore.noop;
14
+ }
15
+ var eventCounts = {
16
+ errorCount: 0,
17
+ longTaskCount: 0,
18
+ resourceCount: 0,
19
+ actionCount: 0,
20
+ frustrationCount: 0
21
+ };
22
+ var subscription = lifeCycle.subscribe(_browserCore.LifeCycleEventType.RUM_EVENT_COLLECTED, function (event) {
23
+ if (event.type === _browserCore.RumEventType.VIEW || !isChildEvent(event)) {
24
+ return;
25
+ }
26
+ switch (event.type) {
27
+ case _browserCore.RumEventType.ERROR:
28
+ eventCounts.errorCount += 1;
29
+ callback();
30
+ break;
31
+ case _browserCore.RumEventType.ACTION:
32
+ if (event.action.frustration) {
33
+ eventCounts.frustrationCount += event.action.frustration.type.length;
34
+ }
35
+ eventCounts.actionCount += 1;
36
+ callback();
37
+ break;
38
+ case _browserCore.RumEventType.LONG_TASK:
39
+ eventCounts.longTaskCount += 1;
40
+ callback();
41
+ break;
42
+ case _browserCore.RumEventType.RESOURCE:
43
+ eventCounts.resourceCount += 1;
44
+ callback();
45
+ break;
46
+ }
47
+ });
48
+ return {
49
+ stop: function stop() {
50
+ subscription.unsubscribe();
51
+ },
52
+ eventCounts: eventCounts
53
+ };
54
+ }
55
+ //# sourceMappingURL=trackEventCounts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trackEventCounts.js","names":["_browserCore","require","trackEventCounts","data","lifeCycle","isChildEvent","callback","onChange","undefined","noop","eventCounts","errorCount","longTaskCount","resourceCount","actionCount","frustrationCount","subscription","subscribe","LifeCycleEventType","RUM_EVENT_COLLECTED","event","type","RumEventType","VIEW","ERROR","ACTION","action","frustration","length","LONG_TASK","RESOURCE","stop","unsubscribe"],"sources":["../../../rum/src/domain/trackEventCounts.js"],"sourcesContent":["import { noop, RumEventType, LifeCycleEventType } from '@cloudcare/browser-core'\n\nexport function trackEventCounts(data) {\n var lifeCycle = data.lifeCycle\n var isChildEvent = data.isChildEvent\n var callback = data.onChange\n if (callback === undefined) {\n callback = noop\n }\n var eventCounts = {\n errorCount: 0,\n longTaskCount: 0,\n resourceCount: 0,\n actionCount: 0,\n frustrationCount: 0\n }\n\n var subscription = lifeCycle.subscribe(\n LifeCycleEventType.RUM_EVENT_COLLECTED,\n function (event) {\n if (event.type === RumEventType.VIEW || !isChildEvent(event)) {\n return\n }\n switch (event.type) {\n case RumEventType.ERROR:\n eventCounts.errorCount += 1\n\n callback()\n break\n case RumEventType.ACTION:\n if (event.action.frustration) {\n eventCounts.frustrationCount += event.action.frustration.type.length\n }\n eventCounts.actionCount += 1\n callback()\n break\n case RumEventType.LONG_TASK:\n eventCounts.longTaskCount += 1\n callback()\n break\n case RumEventType.RESOURCE:\n eventCounts.resourceCount += 1\n callback()\n break\n }\n }\n )\n\n return {\n stop: function () {\n subscription.unsubscribe()\n },\n eventCounts: eventCounts\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEO,SAASC,gBAAgBA,CAACC,IAAI,EAAE;EACrC,IAAIC,SAAS,GAAGD,IAAI,CAACC,SAAS;EAC9B,IAAIC,YAAY,GAAGF,IAAI,CAACE,YAAY;EACpC,IAAIC,QAAQ,GAAGH,IAAI,CAACI,QAAQ;EAC5B,IAAID,QAAQ,KAAKE,SAAS,EAAE;IAC1BF,QAAQ,GAAGG,iBAAI;EACjB;EACA,IAAIC,WAAW,GAAG;IAChBC,UAAU,EAAE,CAAC;IACbC,aAAa,EAAE,CAAC;IAChBC,aAAa,EAAE,CAAC;IAChBC,WAAW,EAAE,CAAC;IACdC,gBAAgB,EAAE;EACpB,CAAC;EAED,IAAIC,YAAY,GAAGZ,SAAS,CAACa,SAAS,CACpCC,+BAAkB,CAACC,mBAAmB,EACtC,UAAUC,KAAK,EAAE;IACf,IAAIA,KAAK,CAACC,IAAI,KAAKC,yBAAY,CAACC,IAAI,IAAI,CAAClB,YAAY,CAACe,KAAK,CAAC,EAAE;MAC5D;IACF;IACA,QAAQA,KAAK,CAACC,IAAI;MAChB,KAAKC,yBAAY,CAACE,KAAK;QACrBd,WAAW,CAACC,UAAU,IAAI,CAAC;QAE3BL,QAAQ,CAAC,CAAC;QACV;MACF,KAAKgB,yBAAY,CAACG,MAAM;QACtB,IAAIL,KAAK,CAACM,MAAM,CAACC,WAAW,EAAE;UAC5BjB,WAAW,CAACK,gBAAgB,IAAIK,KAAK,CAACM,MAAM,CAACC,WAAW,CAACN,IAAI,CAACO,MAAM;QACtE;QACAlB,WAAW,CAACI,WAAW,IAAI,CAAC;QAC5BR,QAAQ,CAAC,CAAC;QACV;MACF,KAAKgB,yBAAY,CAACO,SAAS;QACzBnB,WAAW,CAACE,aAAa,IAAI,CAAC;QAC9BN,QAAQ,CAAC,CAAC;QACV;MACF,KAAKgB,yBAAY,CAACQ,QAAQ;QACxBpB,WAAW,CAACG,aAAa,IAAI,CAAC;QAC9BP,QAAQ,CAAC,CAAC;QACV;IACJ;EACF,CACF,CAAC;EAED,OAAO;IACLyB,IAAI,EAAE,SAANA,IAAIA,CAAA,EAAc;MAChBf,YAAY,CAACgB,WAAW,CAAC,CAAC;IAC5B,CAAC;IACDtB,WAAW,EAAEA;EACf,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.startCacheUsrCache = exports.USR_ID_COOKIE_NAME = exports.ANONYMOUS_ID_EXPIRATION = void 0;
7
+ var _browserCore = require("@cloudcare/browser-core");
8
+ var USR_ID_COOKIE_NAME = exports.USR_ID_COOKIE_NAME = '_gc_usr_id';
9
+ var ANONYMOUS_ID_EXPIRATION = exports.ANONYMOUS_ID_EXPIRATION = 60 * 24 * _browserCore.ONE_HOUR;
10
+ function initUsrCookie(cookieOptions) {
11
+ var usrCacheId = (0, _browserCore.getCookie)(USR_ID_COOKIE_NAME, cookieOptions);
12
+ if (!usrCacheId) {
13
+ usrCacheId = (0, _browserCore.UUID)();
14
+ (0, _browserCore.setCookie)(USR_ID_COOKIE_NAME, usrCacheId, ANONYMOUS_ID_EXPIRATION, cookieOptions);
15
+ }
16
+ return usrCacheId;
17
+ }
18
+ function initUsrLocalStorage() {
19
+ var usrCacheId = localStorage.getItem(USR_ID_COOKIE_NAME);
20
+ if (!usrCacheId) {
21
+ usrCacheId = (0, _browserCore.UUID)();
22
+ localStorage.setItem(USR_ID_COOKIE_NAME, usrCacheId);
23
+ }
24
+ return usrCacheId;
25
+ }
26
+ var startCacheUsrCache = exports.startCacheUsrCache = function startCacheUsrCache(configuration) {
27
+ if (!configuration.sessionStoreStrategyType) {
28
+ return {
29
+ getId: _browserCore.noop
30
+ };
31
+ }
32
+ var usrCacheId;
33
+ if (configuration.sessionStoreStrategyType.type === _browserCore.SessionPersistence.COOKIE) {
34
+ usrCacheId = initUsrCookie(configuration.sessionStoreStrategyType.cookieOptions);
35
+ } else {
36
+ usrCacheId = initUsrLocalStorage();
37
+ }
38
+ return {
39
+ getId: function getId() {
40
+ return usrCacheId;
41
+ }
42
+ };
43
+ };
44
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_browserCore","require","USR_ID_COOKIE_NAME","exports","ANONYMOUS_ID_EXPIRATION","ONE_HOUR","initUsrCookie","cookieOptions","usrCacheId","getCookie","UUID","setCookie","initUsrLocalStorage","localStorage","getItem","setItem","startCacheUsrCache","configuration","sessionStoreStrategyType","getId","noop","type","SessionPersistence","COOKIE"],"sources":["../../../../rum/src/domain/usr/index.js"],"sourcesContent":["import {\n getCookie,\n setCookie,\n UUID,\n ONE_HOUR,\n noop,\n SessionPersistence\n} from '@cloudcare/browser-core'\nexport var USR_ID_COOKIE_NAME = '_gc_usr_id'\nexport var ANONYMOUS_ID_EXPIRATION = 60 * 24 * ONE_HOUR\n\nfunction initUsrCookie(cookieOptions) {\n var usrCacheId = getCookie(USR_ID_COOKIE_NAME, cookieOptions)\n if (!usrCacheId) {\n usrCacheId = UUID()\n setCookie(\n USR_ID_COOKIE_NAME,\n usrCacheId,\n ANONYMOUS_ID_EXPIRATION,\n cookieOptions\n )\n }\n return usrCacheId\n}\nfunction initUsrLocalStorage() {\n var usrCacheId = localStorage.getItem(USR_ID_COOKIE_NAME)\n if (!usrCacheId) {\n usrCacheId = UUID()\n localStorage.setItem(USR_ID_COOKIE_NAME, usrCacheId)\n }\n return usrCacheId\n}\nexport var startCacheUsrCache = function (configuration) {\n if (!configuration.sessionStoreStrategyType) {\n return {\n getId: noop\n }\n }\n\n let usrCacheId\n if (\n configuration.sessionStoreStrategyType.type === SessionPersistence.COOKIE\n ) {\n usrCacheId = initUsrCookie(\n configuration.sessionStoreStrategyType.cookieOptions\n )\n } else {\n usrCacheId = initUsrLocalStorage()\n }\n\n return {\n getId: function () {\n return usrCacheId\n }\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAQO,IAAIC,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,GAAG,YAAY;AACrC,IAAIE,uBAAuB,GAAAD,OAAA,CAAAC,uBAAA,GAAG,EAAE,GAAG,EAAE,GAAGC,qBAAQ;AAEvD,SAASC,aAAaA,CAACC,aAAa,EAAE;EACpC,IAAIC,UAAU,GAAG,IAAAC,sBAAS,EAACP,kBAAkB,EAAEK,aAAa,CAAC;EAC7D,IAAI,CAACC,UAAU,EAAE;IACfA,UAAU,GAAG,IAAAE,iBAAI,EAAC,CAAC;IACnB,IAAAC,sBAAS,EACPT,kBAAkB,EAClBM,UAAU,EACVJ,uBAAuB,EACvBG,aACF,CAAC;EACH;EACA,OAAOC,UAAU;AACnB;AACA,SAASI,mBAAmBA,CAAA,EAAG;EAC7B,IAAIJ,UAAU,GAAGK,YAAY,CAACC,OAAO,CAACZ,kBAAkB,CAAC;EACzD,IAAI,CAACM,UAAU,EAAE;IACfA,UAAU,GAAG,IAAAE,iBAAI,EAAC,CAAC;IACnBG,YAAY,CAACE,OAAO,CAACb,kBAAkB,EAAEM,UAAU,CAAC;EACtD;EACA,OAAOA,UAAU;AACnB;AACO,IAAIQ,kBAAkB,GAAAb,OAAA,CAAAa,kBAAA,GAAG,SAArBA,kBAAkBA,CAAaC,aAAa,EAAE;EACvD,IAAI,CAACA,aAAa,CAACC,wBAAwB,EAAE;IAC3C,OAAO;MACLC,KAAK,EAAEC;IACT,CAAC;EACH;EAEA,IAAIZ,UAAU;EACd,IACES,aAAa,CAACC,wBAAwB,CAACG,IAAI,KAAKC,+BAAkB,CAACC,MAAM,EACzE;IACAf,UAAU,GAAGF,aAAa,CACxBW,aAAa,CAACC,wBAAwB,CAACX,aACzC,CAAC;EACH,CAAC,MAAM;IACLC,UAAU,GAAGI,mBAAmB,CAAC,CAAC;EACpC;EAEA,OAAO;IACLO,KAAK,EAAE,SAAPA,KAAKA,CAAA,EAAc;MACjB,OAAOX,UAAU;IACnB;EACF,CAAC;AACH,CAAC","ignoreList":[]}