@kubesense/kubesense-browser-core 1.0.0

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 (725) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +3 -0
  3. package/cjs/boot/displayAlreadyInitializedError.d.ts +2 -0
  4. package/cjs/boot/displayAlreadyInitializedError.js +10 -0
  5. package/cjs/boot/displayAlreadyInitializedError.js.map +1 -0
  6. package/cjs/boot/init.d.ts +13 -0
  7. package/cjs/boot/init.js +39 -0
  8. package/cjs/boot/init.js.map +1 -0
  9. package/cjs/browser/addEventListener.d.ts +87 -0
  10. package/cjs/browser/addEventListener.js +55 -0
  11. package/cjs/browser/addEventListener.js.map +1 -0
  12. package/cjs/browser/browser.types.d.ts +51 -0
  13. package/cjs/browser/browser.types.js +6 -0
  14. package/cjs/browser/browser.types.js.map +1 -0
  15. package/cjs/browser/cookie.d.ts +26 -0
  16. package/cjs/browser/cookie.js +112 -0
  17. package/cjs/browser/cookie.js.map +1 -0
  18. package/cjs/browser/fetchObservable.d.ts +38 -0
  19. package/cjs/browser/fetchObservable.js +103 -0
  20. package/cjs/browser/fetchObservable.js.map +1 -0
  21. package/cjs/browser/pageMayExitObservable.d.ts +14 -0
  22. package/cjs/browser/pageMayExitObservable.js +45 -0
  23. package/cjs/browser/pageMayExitObservable.js.map +1 -0
  24. package/cjs/browser/runOnReadyState.d.ts +5 -0
  25. package/cjs/browser/runOnReadyState.js +20 -0
  26. package/cjs/browser/runOnReadyState.js.map +1 -0
  27. package/cjs/browser/xhrObservable.d.ts +24 -0
  28. package/cjs/browser/xhrObservable.js +86 -0
  29. package/cjs/browser/xhrObservable.js.map +1 -0
  30. package/cjs/domain/allowedTrackingOrigins.d.ts +4 -0
  31. package/cjs/domain/allowedTrackingOrigins.js +25 -0
  32. package/cjs/domain/allowedTrackingOrigins.js.map +1 -0
  33. package/cjs/domain/bufferedData.d.ts +14 -0
  34. package/cjs/domain/bufferedData.js +22 -0
  35. package/cjs/domain/bufferedData.js.map +1 -0
  36. package/cjs/domain/configuration/configuration.d.ts +284 -0
  37. package/cjs/domain/configuration/configuration.js +135 -0
  38. package/cjs/domain/configuration/configuration.js.map +1 -0
  39. package/cjs/domain/configuration/endpointBuilder.d.ts +12 -0
  40. package/cjs/domain/configuration/endpointBuilder.js +66 -0
  41. package/cjs/domain/configuration/endpointBuilder.js.map +1 -0
  42. package/cjs/domain/configuration/index.d.ts +6 -0
  43. package/cjs/domain/configuration/index.js +31 -0
  44. package/cjs/domain/configuration/index.js.map +1 -0
  45. package/cjs/domain/configuration/transportConfiguration.d.ts +21 -0
  46. package/cjs/domain/configuration/transportConfiguration.js +58 -0
  47. package/cjs/domain/configuration/transportConfiguration.js.map +1 -0
  48. package/cjs/domain/connectivity/connectivity.d.ts +14 -0
  49. package/cjs/domain/connectivity/connectivity.js +14 -0
  50. package/cjs/domain/connectivity/connectivity.js.map +1 -0
  51. package/cjs/domain/connectivity/index.d.ts +1 -0
  52. package/cjs/domain/connectivity/index.js +18 -0
  53. package/cjs/domain/connectivity/index.js.map +1 -0
  54. package/cjs/domain/console/consoleObservable.d.ts +21 -0
  55. package/cjs/domain/console/consoleObservable.js +84 -0
  56. package/cjs/domain/console/consoleObservable.js.map +1 -0
  57. package/cjs/domain/context/contextConstants.d.ts +21 -0
  58. package/cjs/domain/context/contextConstants.js +18 -0
  59. package/cjs/domain/context/contextConstants.js.map +1 -0
  60. package/cjs/domain/context/contextManager.d.ts +19 -0
  61. package/cjs/domain/context/contextManager.js +59 -0
  62. package/cjs/domain/context/contextManager.js.map +1 -0
  63. package/cjs/domain/context/contextUtils.d.ts +5 -0
  64. package/cjs/domain/context/contextUtils.js +16 -0
  65. package/cjs/domain/context/contextUtils.js.map +1 -0
  66. package/cjs/domain/context/defineContextMethod.d.ts +6 -0
  67. package/cjs/domain/context/defineContextMethod.js +21 -0
  68. package/cjs/domain/context/defineContextMethod.js.map +1 -0
  69. package/cjs/domain/context/storeContextManager.d.ts +6 -0
  70. package/cjs/domain/context/storeContextManager.js +40 -0
  71. package/cjs/domain/context/storeContextManager.js.map +1 -0
  72. package/cjs/domain/contexts/accountContext.d.ts +26 -0
  73. package/cjs/domain/contexts/accountContext.js +33 -0
  74. package/cjs/domain/contexts/accountContext.js.map +1 -0
  75. package/cjs/domain/contexts/globalContext.d.ts +18 -0
  76. package/cjs/domain/contexts/globalContext.js +21 -0
  77. package/cjs/domain/contexts/globalContext.js.map +1 -0
  78. package/cjs/domain/contexts/rumInternalContext.type.d.ts +14 -0
  79. package/cjs/domain/contexts/rumInternalContext.type.js +3 -0
  80. package/cjs/domain/contexts/rumInternalContext.type.js.map +1 -0
  81. package/cjs/domain/contexts/userContext.d.ts +31 -0
  82. package/cjs/domain/contexts/userContext.js +120 -0
  83. package/cjs/domain/contexts/userContext.js.map +1 -0
  84. package/cjs/domain/deflate/deflate.types.d.ts +40 -0
  85. package/cjs/domain/deflate/deflate.types.js +3 -0
  86. package/cjs/domain/deflate/deflate.types.js.map +1 -0
  87. package/cjs/domain/deflate/index.d.ts +1 -0
  88. package/cjs/domain/deflate/index.js +18 -0
  89. package/cjs/domain/deflate/index.js.map +1 -0
  90. package/cjs/domain/error/error.d.ts +23 -0
  91. package/cjs/domain/error/error.js +81 -0
  92. package/cjs/domain/error/error.js.map +1 -0
  93. package/cjs/domain/error/error.types.d.ts +47 -0
  94. package/cjs/domain/error/error.types.js +13 -0
  95. package/cjs/domain/error/error.types.js.map +1 -0
  96. package/cjs/domain/error/trackRuntimeError.d.ts +11 -0
  97. package/cjs/domain/error/trackRuntimeError.js +48 -0
  98. package/cjs/domain/error/trackRuntimeError.js.map +1 -0
  99. package/cjs/domain/eventRateLimiter/createEventRateLimiter.d.ts +5 -0
  100. package/cjs/domain/eventRateLimiter/createEventRateLimiter.js +41 -0
  101. package/cjs/domain/eventRateLimiter/createEventRateLimiter.js.map +1 -0
  102. package/cjs/domain/extension/extensionUtils.d.ts +10 -0
  103. package/cjs/domain/extension/extensionUtils.js +30 -0
  104. package/cjs/domain/extension/extensionUtils.js.map +1 -0
  105. package/cjs/domain/intakeSites.d.ts +4 -0
  106. package/cjs/domain/intakeSites.js +7 -0
  107. package/cjs/domain/intakeSites.js.map +1 -0
  108. package/cjs/domain/report/browser.types.d.ts +34 -0
  109. package/cjs/domain/report/browser.types.js +3 -0
  110. package/cjs/domain/report/browser.types.js.map +1 -0
  111. package/cjs/domain/report/reportObservable.d.ts +14 -0
  112. package/cjs/domain/report/reportObservable.js +99 -0
  113. package/cjs/domain/report/reportObservable.js.map +1 -0
  114. package/cjs/domain/resourceUtils.d.ts +18 -0
  115. package/cjs/domain/resourceUtils.js +20 -0
  116. package/cjs/domain/resourceUtils.js.map +1 -0
  117. package/cjs/domain/session/oldCookiesMigration.d.ts +11 -0
  118. package/cjs/domain/session/oldCookiesMigration.js +40 -0
  119. package/cjs/domain/session/oldCookiesMigration.js.map +1 -0
  120. package/cjs/domain/session/sessionConstants.d.ts +15 -0
  121. package/cjs/domain/session/sessionConstants.js +16 -0
  122. package/cjs/domain/session/sessionConstants.js.map +1 -0
  123. package/cjs/domain/session/sessionManager.d.ts +28 -0
  124. package/cjs/domain/session/sessionManager.js +201 -0
  125. package/cjs/domain/session/sessionManager.js.map +1 -0
  126. package/cjs/domain/session/sessionState.d.ts +16 -0
  127. package/cjs/domain/session/sessionState.js +70 -0
  128. package/cjs/domain/session/sessionState.js.map +1 -0
  129. package/cjs/domain/session/sessionStateValidation.d.ts +3 -0
  130. package/cjs/domain/session/sessionStateValidation.js +11 -0
  131. package/cjs/domain/session/sessionStateValidation.js.map +1 -0
  132. package/cjs/domain/session/sessionStore.d.ts +38 -0
  133. package/cjs/domain/session/sessionStore.js +186 -0
  134. package/cjs/domain/session/sessionStore.js.map +1 -0
  135. package/cjs/domain/session/sessionStoreOperations.d.ts +12 -0
  136. package/cjs/domain/session/sessionStoreOperations.js +119 -0
  137. package/cjs/domain/session/sessionStoreOperations.js.map +1 -0
  138. package/cjs/domain/session/storeStrategies/sessionInCookie.d.ts +12 -0
  139. package/cjs/domain/session/storeStrategies/sessionInCookie.js +104 -0
  140. package/cjs/domain/session/storeStrategies/sessionInCookie.js.map +1 -0
  141. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.d.ts +6 -0
  142. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js +42 -0
  143. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js.map +1 -0
  144. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.d.ts +16 -0
  145. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.js +5 -0
  146. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.js.map +1 -0
  147. package/cjs/domain/synthetics/syntheticsWorkerValues.d.ts +12 -0
  148. package/cjs/domain/synthetics/syntheticsWorkerValues.js +31 -0
  149. package/cjs/domain/synthetics/syntheticsWorkerValues.js.map +1 -0
  150. package/cjs/domain/tags.d.ts +6 -0
  151. package/cjs/domain/tags.js +66 -0
  152. package/cjs/domain/tags.js.map +1 -0
  153. package/cjs/domain/telemetry/index.d.ts +4 -0
  154. package/cjs/domain/telemetry/index.js +28 -0
  155. package/cjs/domain/telemetry/index.js.map +1 -0
  156. package/cjs/domain/telemetry/rawTelemetryEvent.types.d.ts +18 -0
  157. package/cjs/domain/telemetry/rawTelemetryEvent.types.js +9 -0
  158. package/cjs/domain/telemetry/rawTelemetryEvent.types.js.map +1 -0
  159. package/cjs/domain/telemetry/telemetry.d.ts +56 -0
  160. package/cjs/domain/telemetry/telemetry.js +245 -0
  161. package/cjs/domain/telemetry/telemetry.js.map +1 -0
  162. package/cjs/domain/telemetry/telemetryEvent.types.d.ts +866 -0
  163. package/cjs/domain/telemetry/telemetryEvent.types.js +7 -0
  164. package/cjs/domain/telemetry/telemetryEvent.types.js.map +1 -0
  165. package/cjs/domain/trackingConsent.d.ts +13 -0
  166. package/cjs/domain/trackingConsent.js +28 -0
  167. package/cjs/domain/trackingConsent.js.map +1 -0
  168. package/cjs/domain/userAgentData/index.d.ts +1 -0
  169. package/cjs/domain/userAgentData/index.js +18 -0
  170. package/cjs/domain/userAgentData/index.js.map +1 -0
  171. package/cjs/domain/userAgentData/userAgentData.d.ts +22 -0
  172. package/cjs/domain/userAgentData/userAgentData.js +109 -0
  173. package/cjs/domain/userAgentData/userAgentData.js.map +1 -0
  174. package/cjs/index.d.ts +101 -0
  175. package/cjs/index.js +199 -0
  176. package/cjs/index.js.map +1 -0
  177. package/cjs/tools/abstractHooks.d.ts +24 -0
  178. package/cjs/tools/abstractHooks.js +41 -0
  179. package/cjs/tools/abstractHooks.js.map +1 -0
  180. package/cjs/tools/abstractLifeCycle.d.ts +23 -0
  181. package/cjs/tools/abstractLifeCycle.js +28 -0
  182. package/cjs/tools/abstractLifeCycle.js.map +1 -0
  183. package/cjs/tools/boundedBuffer.d.ts +16 -0
  184. package/cjs/tools/boundedBuffer.js +32 -0
  185. package/cjs/tools/boundedBuffer.js.map +1 -0
  186. package/cjs/tools/catchUserErrors.d.ts +1 -0
  187. package/cjs/tools/catchUserErrors.js +15 -0
  188. package/cjs/tools/catchUserErrors.js.map +1 -0
  189. package/cjs/tools/display.d.ts +38 -0
  190. package/cjs/tools/display.js +44 -0
  191. package/cjs/tools/display.js.map +1 -0
  192. package/cjs/tools/encoder.d.ts +54 -0
  193. package/cjs/tools/encoder.js +40 -0
  194. package/cjs/tools/encoder.js.map +1 -0
  195. package/cjs/tools/experimentalFeatures.d.ts +21 -0
  196. package/cjs/tools/experimentalFeatures.js +50 -0
  197. package/cjs/tools/experimentalFeatures.js.map +1 -0
  198. package/cjs/tools/getZoneJsOriginalValue.d.ts +19 -0
  199. package/cjs/tools/getZoneJsOriginalValue.js +29 -0
  200. package/cjs/tools/getZoneJsOriginalValue.js.map +1 -0
  201. package/cjs/tools/globalObject.d.ts +19 -0
  202. package/cjs/tools/globalObject.js +44 -0
  203. package/cjs/tools/globalObject.js.map +1 -0
  204. package/cjs/tools/instrumentMethod.d.ts +75 -0
  205. package/cjs/tools/instrumentMethod.js +118 -0
  206. package/cjs/tools/instrumentMethod.js.map +1 -0
  207. package/cjs/tools/matchOption.d.ts +8 -0
  208. package/cjs/tools/matchOption.js +35 -0
  209. package/cjs/tools/matchOption.js.map +1 -0
  210. package/cjs/tools/mergeInto.d.ts +25 -0
  211. package/cjs/tools/mergeInto.js +98 -0
  212. package/cjs/tools/mergeInto.js.map +1 -0
  213. package/cjs/tools/monitor.d.ts +9 -0
  214. package/cjs/tools/monitor.js +61 -0
  215. package/cjs/tools/monitor.js.map +1 -0
  216. package/cjs/tools/observable.d.ts +30 -0
  217. package/cjs/tools/observable.js +89 -0
  218. package/cjs/tools/observable.js.map +1 -0
  219. package/cjs/tools/queueMicrotask.d.ts +1 -0
  220. package/cjs/tools/queueMicrotask.js +17 -0
  221. package/cjs/tools/queueMicrotask.js.map +1 -0
  222. package/cjs/tools/readBytesFromStream.d.ts +10 -0
  223. package/cjs/tools/readBytesFromStream.js +28 -0
  224. package/cjs/tools/readBytesFromStream.js.map +1 -0
  225. package/cjs/tools/requestIdleCallback.d.ts +12 -0
  226. package/cjs/tools/requestIdleCallback.js +35 -0
  227. package/cjs/tools/requestIdleCallback.js.map +1 -0
  228. package/cjs/tools/sendToExtension.d.ts +3 -0
  229. package/cjs/tools/sendToExtension.js +11 -0
  230. package/cjs/tools/sendToExtension.js.map +1 -0
  231. package/cjs/tools/serialisation/context.d.ts +9 -0
  232. package/cjs/tools/serialisation/context.js +3 -0
  233. package/cjs/tools/serialisation/context.js.map +1 -0
  234. package/cjs/tools/serialisation/jsonStringify.d.ts +13 -0
  235. package/cjs/tools/serialisation/jsonStringify.js +48 -0
  236. package/cjs/tools/serialisation/jsonStringify.js.map +1 -0
  237. package/cjs/tools/serialisation/sanitize.d.ts +18 -0
  238. package/cjs/tools/serialisation/sanitize.js +188 -0
  239. package/cjs/tools/serialisation/sanitize.js.map +1 -0
  240. package/cjs/tools/stackTrace/computeStackTrace.d.ts +25 -0
  241. package/cjs/tools/stackTrace/computeStackTrace.js +187 -0
  242. package/cjs/tools/stackTrace/computeStackTrace.js.map +1 -0
  243. package/cjs/tools/stackTrace/handlingStack.d.ts +10 -0
  244. package/cjs/tools/stackTrace/handlingStack.js +46 -0
  245. package/cjs/tools/stackTrace/handlingStack.js.map +1 -0
  246. package/cjs/tools/taskQueue.d.ts +15 -0
  247. package/cjs/tools/taskQueue.js +54 -0
  248. package/cjs/tools/taskQueue.js.map +1 -0
  249. package/cjs/tools/timer.d.ts +5 -0
  250. package/cjs/tools/timer.js +22 -0
  251. package/cjs/tools/timer.js.map +1 -0
  252. package/cjs/tools/utils/arrayUtils.d.ts +3 -0
  253. package/cjs/tools/utils/arrayUtils.js +20 -0
  254. package/cjs/tools/utils/arrayUtils.js.map +1 -0
  255. package/cjs/tools/utils/browserDetection.d.ts +8 -0
  256. package/cjs/tools/utils/browserDetection.js +33 -0
  257. package/cjs/tools/utils/browserDetection.js.map +1 -0
  258. package/cjs/tools/utils/byteUtils.d.ts +8 -0
  259. package/cjs/tools/utils/byteUtils.js +34 -0
  260. package/cjs/tools/utils/byteUtils.js.map +1 -0
  261. package/cjs/tools/utils/functionUtils.d.ts +8 -0
  262. package/cjs/tools/utils/functionUtils.js +43 -0
  263. package/cjs/tools/utils/functionUtils.js.map +1 -0
  264. package/cjs/tools/utils/numberUtils.d.ts +8 -0
  265. package/cjs/tools/utils/numberUtils.js +23 -0
  266. package/cjs/tools/utils/numberUtils.js.map +1 -0
  267. package/cjs/tools/utils/objectUtils.d.ts +10 -0
  268. package/cjs/tools/utils/objectUtils.js +23 -0
  269. package/cjs/tools/utils/objectUtils.js.map +1 -0
  270. package/cjs/tools/utils/polyfills.d.ts +7 -0
  271. package/cjs/tools/utils/polyfills.js +23 -0
  272. package/cjs/tools/utils/polyfills.js.map +1 -0
  273. package/cjs/tools/utils/responseUtils.d.ts +2 -0
  274. package/cjs/tools/utils/responseUtils.js +17 -0
  275. package/cjs/tools/utils/responseUtils.js.map +1 -0
  276. package/cjs/tools/utils/stringUtils.d.ts +23 -0
  277. package/cjs/tools/utils/stringUtils.js +91 -0
  278. package/cjs/tools/utils/stringUtils.js.map +1 -0
  279. package/cjs/tools/utils/timeUtils.d.ts +53 -0
  280. package/cjs/tools/utils/timeUtils.js +101 -0
  281. package/cjs/tools/utils/timeUtils.js.map +1 -0
  282. package/cjs/tools/utils/timezone.d.ts +1 -0
  283. package/cjs/tools/utils/timezone.js +13 -0
  284. package/cjs/tools/utils/timezone.js.map +1 -0
  285. package/cjs/tools/utils/typeUtils.d.ts +4 -0
  286. package/cjs/tools/utils/typeUtils.js +16 -0
  287. package/cjs/tools/utils/typeUtils.js.map +1 -0
  288. package/cjs/tools/utils/urlPolyfill.d.ts +5 -0
  289. package/cjs/tools/utils/urlPolyfill.js +59 -0
  290. package/cjs/tools/utils/urlPolyfill.js.map +1 -0
  291. package/cjs/tools/valueHistory.d.ts +27 -0
  292. package/cjs/tools/valueHistory.js +104 -0
  293. package/cjs/tools/valueHistory.js.map +1 -0
  294. package/cjs/transport/batch.d.ts +16 -0
  295. package/cjs/transport/batch.js +110 -0
  296. package/cjs/transport/batch.js.map +1 -0
  297. package/cjs/transport/eventBridge.d.ts +21 -0
  298. package/cjs/transport/eventBridge.js +46 -0
  299. package/cjs/transport/eventBridge.js.map +1 -0
  300. package/cjs/transport/flushController.d.ts +65 -0
  301. package/cjs/transport/flushController.js +123 -0
  302. package/cjs/transport/flushController.js.map +1 -0
  303. package/cjs/transport/httpRequest.d.ts +57 -0
  304. package/cjs/transport/httpRequest.js +107 -0
  305. package/cjs/transport/httpRequest.js.map +1 -0
  306. package/cjs/transport/index.d.ts +7 -0
  307. package/cjs/transport/index.js +15 -0
  308. package/cjs/transport/index.js.map +1 -0
  309. package/cjs/transport/sendWithRetryStrategy.d.ts +41 -0
  310. package/cjs/transport/sendWithRetryStrategy.js +163 -0
  311. package/cjs/transport/sendWithRetryStrategy.js.map +1 -0
  312. package/esm/boot/displayAlreadyInitializedError.d.ts +2 -0
  313. package/esm/boot/displayAlreadyInitializedError.js +7 -0
  314. package/esm/boot/displayAlreadyInitializedError.js.map +1 -0
  315. package/esm/boot/init.d.ts +13 -0
  316. package/esm/boot/init.js +35 -0
  317. package/esm/boot/init.js.map +1 -0
  318. package/esm/browser/addEventListener.d.ts +87 -0
  319. package/esm/browser/addEventListener.js +51 -0
  320. package/esm/browser/addEventListener.js.map +1 -0
  321. package/esm/browser/browser.types.d.ts +51 -0
  322. package/esm/browser/browser.types.js +5 -0
  323. package/esm/browser/browser.types.js.map +1 -0
  324. package/esm/browser/cookie.d.ts +26 -0
  325. package/esm/browser/cookie.js +101 -0
  326. package/esm/browser/cookie.js.map +1 -0
  327. package/esm/browser/fetchObservable.d.ts +38 -0
  328. package/esm/browser/fetchObservable.js +99 -0
  329. package/esm/browser/fetchObservable.js.map +1 -0
  330. package/esm/browser/pageMayExitObservable.d.ts +14 -0
  331. package/esm/browser/pageMayExitObservable.js +40 -0
  332. package/esm/browser/pageMayExitObservable.js.map +1 -0
  333. package/esm/browser/runOnReadyState.d.ts +5 -0
  334. package/esm/browser/runOnReadyState.js +16 -0
  335. package/esm/browser/runOnReadyState.js.map +1 -0
  336. package/esm/browser/xhrObservable.d.ts +24 -0
  337. package/esm/browser/xhrObservable.js +83 -0
  338. package/esm/browser/xhrObservable.js.map +1 -0
  339. package/esm/domain/allowedTrackingOrigins.d.ts +4 -0
  340. package/esm/domain/allowedTrackingOrigins.js +21 -0
  341. package/esm/domain/allowedTrackingOrigins.js.map +1 -0
  342. package/esm/domain/bufferedData.d.ts +14 -0
  343. package/esm/domain/bufferedData.js +19 -0
  344. package/esm/domain/bufferedData.js.map +1 -0
  345. package/esm/domain/configuration/configuration.d.ts +284 -0
  346. package/esm/domain/configuration/configuration.js +129 -0
  347. package/esm/domain/configuration/configuration.js.map +1 -0
  348. package/esm/domain/configuration/endpointBuilder.d.ts +12 -0
  349. package/esm/domain/configuration/endpointBuilder.js +62 -0
  350. package/esm/domain/configuration/endpointBuilder.js.map +1 -0
  351. package/esm/domain/configuration/index.d.ts +6 -0
  352. package/esm/domain/configuration/index.js +5 -0
  353. package/esm/domain/configuration/index.js.map +1 -0
  354. package/esm/domain/configuration/transportConfiguration.d.ts +21 -0
  355. package/esm/domain/configuration/transportConfiguration.js +54 -0
  356. package/esm/domain/configuration/transportConfiguration.js.map +1 -0
  357. package/esm/domain/connectivity/connectivity.d.ts +14 -0
  358. package/esm/domain/connectivity/connectivity.js +11 -0
  359. package/esm/domain/connectivity/connectivity.js.map +1 -0
  360. package/esm/domain/connectivity/index.d.ts +1 -0
  361. package/esm/domain/connectivity/index.js +2 -0
  362. package/esm/domain/connectivity/index.js.map +1 -0
  363. package/esm/domain/console/consoleObservable.d.ts +21 -0
  364. package/esm/domain/console/consoleObservable.js +80 -0
  365. package/esm/domain/console/consoleObservable.js.map +1 -0
  366. package/esm/domain/context/contextConstants.d.ts +21 -0
  367. package/esm/domain/context/contextConstants.js +15 -0
  368. package/esm/domain/context/contextConstants.js.map +1 -0
  369. package/esm/domain/context/contextManager.d.ts +19 -0
  370. package/esm/domain/context/contextManager.js +56 -0
  371. package/esm/domain/context/contextManager.js.map +1 -0
  372. package/esm/domain/context/contextUtils.d.ts +5 -0
  373. package/esm/domain/context/contextUtils.js +13 -0
  374. package/esm/domain/context/contextUtils.js.map +1 -0
  375. package/esm/domain/context/defineContextMethod.d.ts +6 -0
  376. package/esm/domain/context/defineContextMethod.js +17 -0
  377. package/esm/domain/context/defineContextMethod.js.map +1 -0
  378. package/esm/domain/context/storeContextManager.d.ts +6 -0
  379. package/esm/domain/context/storeContextManager.js +35 -0
  380. package/esm/domain/context/storeContextManager.js.map +1 -0
  381. package/esm/domain/contexts/accountContext.d.ts +26 -0
  382. package/esm/domain/contexts/accountContext.js +29 -0
  383. package/esm/domain/contexts/accountContext.js.map +1 -0
  384. package/esm/domain/contexts/globalContext.d.ts +18 -0
  385. package/esm/domain/contexts/globalContext.js +17 -0
  386. package/esm/domain/contexts/globalContext.js.map +1 -0
  387. package/esm/domain/contexts/rumInternalContext.type.d.ts +14 -0
  388. package/esm/domain/contexts/rumInternalContext.type.js +2 -0
  389. package/esm/domain/contexts/rumInternalContext.type.js.map +1 -0
  390. package/esm/domain/contexts/userContext.d.ts +31 -0
  391. package/esm/domain/contexts/userContext.js +116 -0
  392. package/esm/domain/contexts/userContext.js.map +1 -0
  393. package/esm/domain/deflate/deflate.types.d.ts +40 -0
  394. package/esm/domain/deflate/deflate.types.js +2 -0
  395. package/esm/domain/deflate/deflate.types.js.map +1 -0
  396. package/esm/domain/deflate/index.d.ts +1 -0
  397. package/esm/domain/deflate/index.js +2 -0
  398. package/esm/domain/deflate/index.js.map +1 -0
  399. package/esm/domain/error/error.d.ts +23 -0
  400. package/esm/domain/error/error.js +72 -0
  401. package/esm/domain/error/error.js.map +1 -0
  402. package/esm/domain/error/error.types.d.ts +47 -0
  403. package/esm/domain/error/error.types.js +10 -0
  404. package/esm/domain/error/error.types.js.map +1 -0
  405. package/esm/domain/error/trackRuntimeError.d.ts +11 -0
  406. package/esm/domain/error/trackRuntimeError.js +43 -0
  407. package/esm/domain/error/trackRuntimeError.js.map +1 -0
  408. package/esm/domain/eventRateLimiter/createEventRateLimiter.d.ts +5 -0
  409. package/esm/domain/eventRateLimiter/createEventRateLimiter.js +38 -0
  410. package/esm/domain/eventRateLimiter/createEventRateLimiter.js.map +1 -0
  411. package/esm/domain/extension/extensionUtils.d.ts +10 -0
  412. package/esm/domain/extension/extensionUtils.js +25 -0
  413. package/esm/domain/extension/extensionUtils.js.map +1 -0
  414. package/esm/domain/intakeSites.d.ts +4 -0
  415. package/esm/domain/intakeSites.js +4 -0
  416. package/esm/domain/intakeSites.js.map +1 -0
  417. package/esm/domain/report/browser.types.d.ts +34 -0
  418. package/esm/domain/report/browser.types.js +2 -0
  419. package/esm/domain/report/browser.types.js.map +1 -0
  420. package/esm/domain/report/reportObservable.d.ts +14 -0
  421. package/esm/domain/report/reportObservable.js +95 -0
  422. package/esm/domain/report/reportObservable.js.map +1 -0
  423. package/esm/domain/resourceUtils.d.ts +18 -0
  424. package/esm/domain/resourceUtils.js +17 -0
  425. package/esm/domain/resourceUtils.js.map +1 -0
  426. package/esm/domain/session/oldCookiesMigration.d.ts +11 -0
  427. package/esm/domain/session/oldCookiesMigration.js +36 -0
  428. package/esm/domain/session/oldCookiesMigration.js.map +1 -0
  429. package/esm/domain/session/sessionConstants.d.ts +15 -0
  430. package/esm/domain/session/sessionConstants.js +13 -0
  431. package/esm/domain/session/sessionConstants.js.map +1 -0
  432. package/esm/domain/session/sessionManager.d.ts +28 -0
  433. package/esm/domain/session/sessionManager.js +196 -0
  434. package/esm/domain/session/sessionManager.js.map +1 -0
  435. package/esm/domain/session/sessionState.d.ts +16 -0
  436. package/esm/domain/session/sessionState.js +60 -0
  437. package/esm/domain/session/sessionState.js.map +1 -0
  438. package/esm/domain/session/sessionStateValidation.d.ts +3 -0
  439. package/esm/domain/session/sessionStateValidation.js +7 -0
  440. package/esm/domain/session/sessionStateValidation.js.map +1 -0
  441. package/esm/domain/session/sessionStore.d.ts +38 -0
  442. package/esm/domain/session/sessionStore.js +180 -0
  443. package/esm/domain/session/sessionStore.js.map +1 -0
  444. package/esm/domain/session/sessionStoreOperations.d.ts +12 -0
  445. package/esm/domain/session/sessionStoreOperations.js +114 -0
  446. package/esm/domain/session/sessionStoreOperations.js.map +1 -0
  447. package/esm/domain/session/storeStrategies/sessionInCookie.d.ts +12 -0
  448. package/esm/domain/session/storeStrategies/sessionInCookie.js +98 -0
  449. package/esm/domain/session/storeStrategies/sessionInCookie.js.map +1 -0
  450. package/esm/domain/session/storeStrategies/sessionInLocalStorage.d.ts +6 -0
  451. package/esm/domain/session/storeStrategies/sessionInLocalStorage.js +37 -0
  452. package/esm/domain/session/storeStrategies/sessionInLocalStorage.js.map +1 -0
  453. package/esm/domain/session/storeStrategies/sessionStoreStrategy.d.ts +16 -0
  454. package/esm/domain/session/storeStrategies/sessionStoreStrategy.js +2 -0
  455. package/esm/domain/session/storeStrategies/sessionStoreStrategy.js.map +1 -0
  456. package/esm/domain/synthetics/syntheticsWorkerValues.d.ts +12 -0
  457. package/esm/domain/synthetics/syntheticsWorkerValues.js +24 -0
  458. package/esm/domain/synthetics/syntheticsWorkerValues.js.map +1 -0
  459. package/esm/domain/tags.d.ts +6 -0
  460. package/esm/domain/tags.js +59 -0
  461. package/esm/domain/tags.js.map +1 -0
  462. package/esm/domain/telemetry/index.d.ts +4 -0
  463. package/esm/domain/telemetry/index.js +3 -0
  464. package/esm/domain/telemetry/index.js.map +1 -0
  465. package/esm/domain/telemetry/rawTelemetryEvent.types.d.ts +18 -0
  466. package/esm/domain/telemetry/rawTelemetryEvent.types.js +6 -0
  467. package/esm/domain/telemetry/rawTelemetryEvent.types.js.map +1 -0
  468. package/esm/domain/telemetry/telemetry.d.ts +56 -0
  469. package/esm/domain/telemetry/telemetry.js +232 -0
  470. package/esm/domain/telemetry/telemetry.js.map +1 -0
  471. package/esm/domain/telemetry/telemetryEvent.types.d.ts +866 -0
  472. package/esm/domain/telemetry/telemetryEvent.types.js +6 -0
  473. package/esm/domain/telemetry/telemetryEvent.types.js.map +1 -0
  474. package/esm/domain/trackingConsent.d.ts +13 -0
  475. package/esm/domain/trackingConsent.js +24 -0
  476. package/esm/domain/trackingConsent.js.map +1 -0
  477. package/esm/domain/userAgentData/index.d.ts +1 -0
  478. package/esm/domain/userAgentData/index.js +2 -0
  479. package/esm/domain/userAgentData/index.js.map +1 -0
  480. package/esm/domain/userAgentData/userAgentData.d.ts +22 -0
  481. package/esm/domain/userAgentData/userAgentData.js +105 -0
  482. package/esm/domain/userAgentData/userAgentData.js.map +1 -0
  483. package/esm/index.d.ts +101 -0
  484. package/esm/index.js +77 -0
  485. package/esm/index.js.map +1 -0
  486. package/esm/tools/abstractHooks.d.ts +24 -0
  487. package/esm/tools/abstractHooks.js +37 -0
  488. package/esm/tools/abstractHooks.js.map +1 -0
  489. package/esm/tools/abstractLifeCycle.d.ts +23 -0
  490. package/esm/tools/abstractLifeCycle.js +24 -0
  491. package/esm/tools/abstractLifeCycle.js.map +1 -0
  492. package/esm/tools/boundedBuffer.d.ts +16 -0
  493. package/esm/tools/boundedBuffer.js +29 -0
  494. package/esm/tools/boundedBuffer.js.map +1 -0
  495. package/esm/tools/catchUserErrors.d.ts +1 -0
  496. package/esm/tools/catchUserErrors.js +12 -0
  497. package/esm/tools/catchUserErrors.js.map +1 -0
  498. package/esm/tools/display.d.ts +38 -0
  499. package/esm/tools/display.js +41 -0
  500. package/esm/tools/display.js.map +1 -0
  501. package/esm/tools/encoder.d.ts +54 -0
  502. package/esm/tools/encoder.js +37 -0
  503. package/esm/tools/encoder.js.map +1 -0
  504. package/esm/tools/experimentalFeatures.d.ts +21 -0
  505. package/esm/tools/experimentalFeatures.js +42 -0
  506. package/esm/tools/experimentalFeatures.js.map +1 -0
  507. package/esm/tools/getZoneJsOriginalValue.d.ts +19 -0
  508. package/esm/tools/getZoneJsOriginalValue.js +26 -0
  509. package/esm/tools/getZoneJsOriginalValue.js.map +1 -0
  510. package/esm/tools/globalObject.d.ts +19 -0
  511. package/esm/tools/globalObject.js +40 -0
  512. package/esm/tools/globalObject.js.map +1 -0
  513. package/esm/tools/instrumentMethod.d.ts +75 -0
  514. package/esm/tools/instrumentMethod.js +114 -0
  515. package/esm/tools/instrumentMethod.js.map +1 -0
  516. package/esm/tools/matchOption.d.ts +8 -0
  517. package/esm/tools/matchOption.js +31 -0
  518. package/esm/tools/matchOption.js.map +1 -0
  519. package/esm/tools/mergeInto.d.ts +25 -0
  520. package/esm/tools/mergeInto.js +93 -0
  521. package/esm/tools/mergeInto.js.map +1 -0
  522. package/esm/tools/monitor.d.ts +9 -0
  523. package/esm/tools/monitor.js +51 -0
  524. package/esm/tools/monitor.js.map +1 -0
  525. package/esm/tools/observable.d.ts +30 -0
  526. package/esm/tools/observable.js +83 -0
  527. package/esm/tools/observable.js.map +1 -0
  528. package/esm/tools/queueMicrotask.d.ts +1 -0
  529. package/esm/tools/queueMicrotask.js +14 -0
  530. package/esm/tools/queueMicrotask.js.map +1 -0
  531. package/esm/tools/readBytesFromStream.d.ts +10 -0
  532. package/esm/tools/readBytesFromStream.js +25 -0
  533. package/esm/tools/readBytesFromStream.js.map +1 -0
  534. package/esm/tools/requestIdleCallback.d.ts +12 -0
  535. package/esm/tools/requestIdleCallback.js +30 -0
  536. package/esm/tools/requestIdleCallback.js.map +1 -0
  537. package/esm/tools/sendToExtension.d.ts +3 -0
  538. package/esm/tools/sendToExtension.js +8 -0
  539. package/esm/tools/sendToExtension.js.map +1 -0
  540. package/esm/tools/serialisation/context.d.ts +9 -0
  541. package/esm/tools/serialisation/context.js +2 -0
  542. package/esm/tools/serialisation/context.js.map +1 -0
  543. package/esm/tools/serialisation/jsonStringify.d.ts +13 -0
  544. package/esm/tools/serialisation/jsonStringify.js +44 -0
  545. package/esm/tools/serialisation/jsonStringify.js.map +1 -0
  546. package/esm/tools/serialisation/sanitize.d.ts +18 -0
  547. package/esm/tools/serialisation/sanitize.js +185 -0
  548. package/esm/tools/serialisation/sanitize.js.map +1 -0
  549. package/esm/tools/stackTrace/computeStackTrace.d.ts +25 -0
  550. package/esm/tools/stackTrace/computeStackTrace.js +183 -0
  551. package/esm/tools/stackTrace/computeStackTrace.js.map +1 -0
  552. package/esm/tools/stackTrace/handlingStack.d.ts +10 -0
  553. package/esm/tools/stackTrace/handlingStack.js +41 -0
  554. package/esm/tools/stackTrace/handlingStack.js.map +1 -0
  555. package/esm/tools/taskQueue.d.ts +15 -0
  556. package/esm/tools/taskQueue.js +50 -0
  557. package/esm/tools/taskQueue.js.map +1 -0
  558. package/esm/tools/timer.d.ts +5 -0
  559. package/esm/tools/timer.js +16 -0
  560. package/esm/tools/timer.js.map +1 -0
  561. package/esm/tools/utils/arrayUtils.d.ts +3 -0
  562. package/esm/tools/utils/arrayUtils.js +15 -0
  563. package/esm/tools/utils/arrayUtils.js.map +1 -0
  564. package/esm/tools/utils/browserDetection.d.ts +8 -0
  565. package/esm/tools/utils/browserDetection.js +28 -0
  566. package/esm/tools/utils/browserDetection.js.map +1 -0
  567. package/esm/tools/utils/byteUtils.d.ts +8 -0
  568. package/esm/tools/utils/byteUtils.js +29 -0
  569. package/esm/tools/utils/byteUtils.js.map +1 -0
  570. package/esm/tools/utils/functionUtils.d.ts +8 -0
  571. package/esm/tools/utils/functionUtils.js +39 -0
  572. package/esm/tools/utils/functionUtils.js.map +1 -0
  573. package/esm/tools/utils/numberUtils.d.ts +8 -0
  574. package/esm/tools/utils/numberUtils.js +17 -0
  575. package/esm/tools/utils/numberUtils.js.map +1 -0
  576. package/esm/tools/utils/objectUtils.d.ts +10 -0
  577. package/esm/tools/utils/objectUtils.js +17 -0
  578. package/esm/tools/utils/objectUtils.js.map +1 -0
  579. package/esm/tools/utils/polyfills.d.ts +7 -0
  580. package/esm/tools/utils/polyfills.js +18 -0
  581. package/esm/tools/utils/polyfills.js.map +1 -0
  582. package/esm/tools/utils/responseUtils.d.ts +2 -0
  583. package/esm/tools/utils/responseUtils.js +13 -0
  584. package/esm/tools/utils/responseUtils.js.map +1 -0
  585. package/esm/tools/utils/stringUtils.d.ts +23 -0
  586. package/esm/tools/utils/stringUtils.js +84 -0
  587. package/esm/tools/utils/stringUtils.js.map +1 -0
  588. package/esm/tools/utils/timeUtils.d.ts +53 -0
  589. package/esm/tools/utils/timeUtils.js +84 -0
  590. package/esm/tools/utils/timeUtils.js.map +1 -0
  591. package/esm/tools/utils/timezone.d.ts +1 -0
  592. package/esm/tools/utils/timezone.js +10 -0
  593. package/esm/tools/utils/timezone.js.map +1 -0
  594. package/esm/tools/utils/typeUtils.d.ts +4 -0
  595. package/esm/tools/utils/typeUtils.js +13 -0
  596. package/esm/tools/utils/typeUtils.js.map +1 -0
  597. package/esm/tools/utils/urlPolyfill.d.ts +5 -0
  598. package/esm/tools/utils/urlPolyfill.js +52 -0
  599. package/esm/tools/utils/urlPolyfill.js.map +1 -0
  600. package/esm/tools/valueHistory.d.ts +27 -0
  601. package/esm/tools/valueHistory.js +100 -0
  602. package/esm/tools/valueHistory.js.map +1 -0
  603. package/esm/transport/batch.d.ts +16 -0
  604. package/esm/transport/batch.js +106 -0
  605. package/esm/transport/batch.js.map +1 -0
  606. package/esm/transport/eventBridge.d.ts +21 -0
  607. package/esm/transport/eventBridge.js +41 -0
  608. package/esm/transport/eventBridge.js.map +1 -0
  609. package/esm/transport/flushController.d.ts +65 -0
  610. package/esm/transport/flushController.js +119 -0
  611. package/esm/transport/flushController.js.map +1 -0
  612. package/esm/transport/httpRequest.d.ts +57 -0
  613. package/esm/transport/httpRequest.js +101 -0
  614. package/esm/transport/httpRequest.js.map +1 -0
  615. package/esm/transport/index.d.ts +7 -0
  616. package/esm/transport/index.js +5 -0
  617. package/esm/transport/index.js.map +1 -0
  618. package/esm/transport/sendWithRetryStrategy.d.ts +41 -0
  619. package/esm/transport/sendWithRetryStrategy.js +158 -0
  620. package/esm/transport/sendWithRetryStrategy.js.map +1 -0
  621. package/package.json +28 -0
  622. package/src/boot/displayAlreadyInitializedError.ts +8 -0
  623. package/src/boot/init.ts +54 -0
  624. package/src/browser/addEventListener.ts +145 -0
  625. package/src/browser/browser.types.ts +84 -0
  626. package/src/browser/cookie.ts +122 -0
  627. package/src/browser/fetchObservable.ts +167 -0
  628. package/src/browser/pageMayExitObservable.ts +56 -0
  629. package/src/browser/runOnReadyState.ts +25 -0
  630. package/src/browser/xhrObservable.ts +134 -0
  631. package/src/domain/allowedTrackingOrigins.ts +29 -0
  632. package/src/domain/bufferedData.ts +32 -0
  633. package/src/domain/configuration/configuration.ts +409 -0
  634. package/src/domain/configuration/endpointBuilder.ts +105 -0
  635. package/src/domain/configuration/index.ts +12 -0
  636. package/src/domain/configuration/transportConfiguration.ts +86 -0
  637. package/src/domain/connectivity/connectivity.ts +31 -0
  638. package/src/domain/connectivity/index.ts +1 -0
  639. package/src/domain/console/consoleObservable.ts +118 -0
  640. package/src/domain/context/contextConstants.ts +27 -0
  641. package/src/domain/context/contextManager.ts +81 -0
  642. package/src/domain/context/contextUtils.ts +14 -0
  643. package/src/domain/context/defineContextMethod.ts +31 -0
  644. package/src/domain/context/storeContextManager.ts +55 -0
  645. package/src/domain/contexts/accountContext.ts +47 -0
  646. package/src/domain/contexts/globalContext.ts +30 -0
  647. package/src/domain/contexts/rumInternalContext.type.ts +15 -0
  648. package/src/domain/contexts/userContext.ts +148 -0
  649. package/src/domain/deflate/deflate.types.ts +57 -0
  650. package/src/domain/deflate/index.ts +1 -0
  651. package/src/domain/error/error.ts +127 -0
  652. package/src/domain/error/error.types.ts +64 -0
  653. package/src/domain/error/trackRuntimeError.ts +50 -0
  654. package/src/domain/eventRateLimiter/createEventRateLimiter.ts +49 -0
  655. package/src/domain/extension/extensionUtils.ts +28 -0
  656. package/src/domain/intakeSites.ts +6 -0
  657. package/src/domain/report/browser.types.ts +38 -0
  658. package/src/domain/report/reportObservable.ts +133 -0
  659. package/src/domain/resourceUtils.ts +21 -0
  660. package/src/domain/session/README.md +193 -0
  661. package/src/domain/session/oldCookiesMigration.ts +42 -0
  662. package/src/domain/session/sessionConstants.ts +19 -0
  663. package/src/domain/session/sessionManager.ts +262 -0
  664. package/src/domain/session/sessionState.ts +83 -0
  665. package/src/domain/session/sessionStateValidation.ts +9 -0
  666. package/src/domain/session/sessionStore.ts +250 -0
  667. package/src/domain/session/sessionStoreOperations.ts +131 -0
  668. package/src/domain/session/storeStrategies/sessionInCookie.ts +146 -0
  669. package/src/domain/session/storeStrategies/sessionInLocalStorage.ts +44 -0
  670. package/src/domain/session/storeStrategies/sessionStoreStrategy.ts +16 -0
  671. package/src/domain/synthetics/syntheticsWorkerValues.ts +38 -0
  672. package/src/domain/tags.ts +75 -0
  673. package/src/domain/telemetry/index.ts +22 -0
  674. package/src/domain/telemetry/rawTelemetryEvent.types.ts +22 -0
  675. package/src/domain/telemetry/telemetry.ts +344 -0
  676. package/src/domain/telemetry/telemetryEvent.types.ts +907 -0
  677. package/src/domain/trackingConsent.ts +34 -0
  678. package/src/domain/userAgentData/index.ts +1 -0
  679. package/src/domain/userAgentData/userAgentData.ts +163 -0
  680. package/src/index.ts +169 -0
  681. package/src/tools/abstractHooks.ts +72 -0
  682. package/src/tools/abstractLifeCycle.ts +46 -0
  683. package/src/tools/boundedBuffer.ts +44 -0
  684. package/src/tools/catchUserErrors.ts +11 -0
  685. package/src/tools/display.ts +56 -0
  686. package/src/tools/encoder.ts +103 -0
  687. package/src/tools/experimentalFeatures.ts +52 -0
  688. package/src/tools/getZoneJsOriginalValue.ts +38 -0
  689. package/src/tools/globalObject.ts +51 -0
  690. package/src/tools/instrumentMethod.ts +170 -0
  691. package/src/tools/matchOption.ts +31 -0
  692. package/src/tools/mergeInto.ts +177 -0
  693. package/src/tools/monitor.ts +71 -0
  694. package/src/tools/observable.ts +103 -0
  695. package/src/tools/queueMicrotask.ts +13 -0
  696. package/src/tools/readBytesFromStream.ts +37 -0
  697. package/src/tools/requestIdleCallback.ts +40 -0
  698. package/src/tools/sendToExtension.ts +14 -0
  699. package/src/tools/serialisation/context.ts +11 -0
  700. package/src/tools/serialisation/jsonStringify.ts +53 -0
  701. package/src/tools/serialisation/sanitize.ts +273 -0
  702. package/src/tools/stackTrace/computeStackTrace.ts +251 -0
  703. package/src/tools/stackTrace/handlingStack.ts +48 -0
  704. package/src/tools/taskQueue.ts +63 -0
  705. package/src/tools/timer.ts +21 -0
  706. package/src/tools/utils/arrayUtils.ts +16 -0
  707. package/src/tools/utils/browserDetection.ts +39 -0
  708. package/src/tools/utils/byteUtils.ts +40 -0
  709. package/src/tools/utils/functionUtils.ts +45 -0
  710. package/src/tools/utils/numberUtils.ts +19 -0
  711. package/src/tools/utils/objectUtils.ts +19 -0
  712. package/src/tools/utils/polyfills.ts +23 -0
  713. package/src/tools/utils/responseUtils.ts +12 -0
  714. package/src/tools/utils/stringUtils.ts +86 -0
  715. package/src/tools/utils/timeUtils.ts +117 -0
  716. package/src/tools/utils/timezone.ts +9 -0
  717. package/src/tools/utils/typeUtils.ts +12 -0
  718. package/src/tools/utils/urlPolyfill.ts +55 -0
  719. package/src/tools/valueHistory.ts +151 -0
  720. package/src/transport/batch.ts +144 -0
  721. package/src/transport/eventBridge.ts +60 -0
  722. package/src/transport/flushController.ts +150 -0
  723. package/src/transport/httpRequest.ts +191 -0
  724. package/src/transport/index.ts +7 -0
  725. package/src/transport/sendWithRetryStrategy.ts +222 -0
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.instrumentMethod = instrumentMethod;
4
+ exports.instrumentSetter = instrumentSetter;
5
+ const timer_1 = require("./timer");
6
+ const monitor_1 = require("./monitor");
7
+ const functionUtils_1 = require("./utils/functionUtils");
8
+ const handlingStack_1 = require("./stackTrace/handlingStack");
9
+ /**
10
+ * Instruments a method on a object, calling the given callback before the original method is
11
+ * invoked. The callback receives an object with information about the method call.
12
+ *
13
+ * This function makes sure that we are "good citizens" regarding third party instrumentations: when
14
+ * removing the instrumentation, the original method is usually restored, but if a third party
15
+ * instrumentation was set after ours, we keep it in place and just replace our instrumentation with
16
+ * a noop.
17
+ *
18
+ * Note: it is generally better to instrument methods that are "owned" by the object instead of ones
19
+ * that are inherited from the prototype chain. Example:
20
+ * * do: `instrumentMethod(Array.prototype, 'push', ...)`
21
+ * * don't: `instrumentMethod([], 'push', ...)`
22
+ *
23
+ * This method is also used to set event handler properties (ex: window.onerror = ...), as it has
24
+ * the same requirements as instrumenting a method:
25
+ * * if the event handler is already set by a third party, we need to call it and not just blindly
26
+ * override it.
27
+ * * if the event handler is set by a third party after us, we need to keep it in place when
28
+ * removing ours.
29
+ *
30
+ * @example
31
+ *
32
+ * instrumentMethod(window, 'fetch', ({ target, parameters, onPostCall }) => {
33
+ * console.log('Before calling fetch on', target, 'with parameters', parameters)
34
+ *
35
+ * onPostCall((result) => {
36
+ * console.log('After fetch calling on', target, 'with parameters', parameters, 'and result', result)
37
+ * })
38
+ * })
39
+ */
40
+ function instrumentMethod(targetPrototype, method, onPreCall, { computeHandlingStack } = {}) {
41
+ let original = targetPrototype[method];
42
+ if (typeof original !== 'function') {
43
+ if (method in targetPrototype && typeof method === 'string' && method.startsWith('on')) {
44
+ original = functionUtils_1.noop;
45
+ }
46
+ else {
47
+ return { stop: functionUtils_1.noop };
48
+ }
49
+ }
50
+ let stopped = false;
51
+ const instrumentation = function () {
52
+ if (stopped) {
53
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-call
54
+ return original.apply(this, arguments);
55
+ }
56
+ const parameters = Array.from(arguments);
57
+ let postCallCallback;
58
+ (0, monitor_1.callMonitored)(onPreCall, null, [
59
+ {
60
+ target: this,
61
+ parameters,
62
+ onPostCall: (callback) => {
63
+ postCallCallback = callback;
64
+ },
65
+ handlingStack: computeHandlingStack ? (0, handlingStack_1.createHandlingStack)('instrumented method') : undefined,
66
+ },
67
+ ]);
68
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call
69
+ const result = original.apply(this, parameters);
70
+ if (postCallCallback) {
71
+ (0, monitor_1.callMonitored)(postCallCallback, null, [result]);
72
+ }
73
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-return
74
+ return result;
75
+ };
76
+ targetPrototype[method] = instrumentation;
77
+ return {
78
+ stop: () => {
79
+ stopped = true;
80
+ // If the instrumentation has been removed by a third party, keep the last one
81
+ if (targetPrototype[method] === instrumentation) {
82
+ targetPrototype[method] = original;
83
+ }
84
+ },
85
+ };
86
+ }
87
+ function instrumentSetter(targetPrototype, property, after) {
88
+ const originalDescriptor = Object.getOwnPropertyDescriptor(targetPrototype, property);
89
+ if (!originalDescriptor || !originalDescriptor.set || !originalDescriptor.configurable) {
90
+ return { stop: functionUtils_1.noop };
91
+ }
92
+ const stoppedInstrumentation = functionUtils_1.noop;
93
+ let instrumentation = (target, value) => {
94
+ // put hooked setter into event loop to avoid of set latency
95
+ (0, timer_1.setTimeout)(() => {
96
+ if (instrumentation !== stoppedInstrumentation) {
97
+ after(target, value);
98
+ }
99
+ }, 0);
100
+ };
101
+ const instrumentationWrapper = function (value) {
102
+ originalDescriptor.set.call(this, value);
103
+ instrumentation(this, value);
104
+ };
105
+ Object.defineProperty(targetPrototype, property, {
106
+ set: instrumentationWrapper,
107
+ });
108
+ return {
109
+ stop: () => {
110
+ var _a;
111
+ if (((_a = Object.getOwnPropertyDescriptor(targetPrototype, property)) === null || _a === void 0 ? void 0 : _a.set) === instrumentationWrapper) {
112
+ Object.defineProperty(targetPrototype, property, originalDescriptor);
113
+ }
114
+ instrumentation = stoppedInstrumentation;
115
+ },
116
+ };
117
+ }
118
+ //# sourceMappingURL=instrumentMethod.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instrumentMethod.js","sourceRoot":"","sources":["../../src/tools/instrumentMethod.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export type MatchOption = string | RegExp | ((value: string) => boolean);
2
+ export declare function isMatchOption(item: unknown): item is MatchOption;
3
+ /**
4
+ * Returns true if value can be matched by at least one of the provided MatchOptions.
5
+ * When comparing strings, setting useStartsWith to true will compare the value with the start of
6
+ * the option, instead of requiring an exact match.
7
+ */
8
+ export declare function matchList(list: MatchOption[], value: string, useStartsWith?: boolean): boolean;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isMatchOption = isMatchOption;
4
+ exports.matchList = matchList;
5
+ const display_1 = require("./display");
6
+ const typeUtils_1 = require("./utils/typeUtils");
7
+ function isMatchOption(item) {
8
+ const itemType = (0, typeUtils_1.getType)(item);
9
+ return itemType === 'string' || itemType === 'function' || item instanceof RegExp;
10
+ }
11
+ /**
12
+ * Returns true if value can be matched by at least one of the provided MatchOptions.
13
+ * When comparing strings, setting useStartsWith to true will compare the value with the start of
14
+ * the option, instead of requiring an exact match.
15
+ */
16
+ function matchList(list, value, useStartsWith = false) {
17
+ return list.some((item) => {
18
+ try {
19
+ if (typeof item === 'function') {
20
+ return item(value);
21
+ }
22
+ else if (item instanceof RegExp) {
23
+ return item.test(value);
24
+ }
25
+ else if (typeof item === 'string') {
26
+ return useStartsWith ? value.startsWith(item) : item === value;
27
+ }
28
+ }
29
+ catch (e) {
30
+ display_1.display.error(e);
31
+ }
32
+ return false;
33
+ });
34
+ }
35
+ //# sourceMappingURL=matchOption.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matchOption.js","sourceRoot":"","sources":["../../src/tools/matchOption.ts"],"names":[],"mappings":";;AAKA,sCAGC;AAOD,8BAeC;AA9BD,uCAAmC;AACnC,iDAA2C;AAI3C,SAAgB,aAAa,CAAC,IAAa;IACzC,MAAM,QAAQ,GAAG,IAAA,mBAAO,EAAC,IAAI,CAAC,CAAA;IAC9B,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,UAAU,IAAI,IAAI,YAAY,MAAM,CAAA;AACnF,CAAC;AAED;;;;GAIG;AACH,SAAgB,SAAS,CAAC,IAAmB,EAAE,KAAa,EAAE,aAAa,GAAG,KAAK;IACjF,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,IAAI,CAAC;YACH,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;YACpB,CAAC;iBAAM,IAAI,IAAI,YAAY,MAAM,EAAE,CAAC;gBAClC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACzB,CAAC;iBAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACpC,OAAO,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAA;YAChE,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,iBAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAClB,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,25 @@
1
+ type Merged<TDestination, TSource> = TSource extends undefined ? TDestination : TDestination extends undefined ? TSource : TSource extends any[] ? TDestination extends any[] ? TDestination & TSource : TSource : TSource extends object ? TDestination extends object ? TDestination extends any[] ? TSource : TDestination & TSource : TSource : TSource;
2
+ /**
3
+ * Iterate over source and affect its sub values into destination, recursively.
4
+ * If the source and destination can't be merged, return source.
5
+ */
6
+ export declare function mergeInto<D, S>(destination: D, source: S, circularReferenceChecker?: CircularReferenceChecker): Merged<D, S>;
7
+ /**
8
+ * A simplistic implementation of a deep clone algorithm.
9
+ * Caveats:
10
+ * - It doesn't maintain prototype chains - don't use with instances of custom classes.
11
+ * - It doesn't handle Map and Set
12
+ */
13
+ export declare function deepClone<T>(value: T): T;
14
+ type Combined<A, B> = A extends null ? B : B extends null ? A : Merged<A, B>;
15
+ export declare function combine<A, B>(a: A, b: B): Combined<A, B>;
16
+ export declare function combine<A, B, C>(a: A, b: B, c: C): Combined<Combined<A, B>, C>;
17
+ export declare function combine<A, B, C, D>(a: A, b: B, c: C, d: D): Combined<Combined<Combined<A, B>, C>, D>;
18
+ export declare function combine<A, B, C, D, E>(a: A, b: B, c: C, d: D, e: E): Combined<Combined<Combined<Combined<A, B>, C>, D>, E>;
19
+ export declare function combine<A, B, C, D, E, F>(a: A, b: B, c: C, d: D, e: E, f: F): Combined<Combined<Combined<Combined<Combined<A, B>, C>, D>, E>, F>;
20
+ export declare function combine<A, B, C, D, E, F, G>(a: A, b: B, c: C, d: D, e: E, f: F, g: G): Combined<Combined<Combined<Combined<Combined<Combined<A, B>, C>, D>, E>, F>, G>;
21
+ export declare function combine<A, B, C, D, E, F, G, H>(a: A, b: B, c: C, d: D, e: E, f: F, g: G, h: H): Combined<Combined<Combined<Combined<Combined<Combined<Combined<A, B>, C>, D>, E>, F>, G>, H>;
22
+ interface CircularReferenceChecker {
23
+ hasAlreadyBeenSeen(value: any): boolean;
24
+ }
25
+ export {};
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mergeInto = mergeInto;
4
+ exports.deepClone = deepClone;
5
+ exports.combine = combine;
6
+ const typeUtils_1 = require("./utils/typeUtils");
7
+ /**
8
+ * Iterate over source and affect its sub values into destination, recursively.
9
+ * If the source and destination can't be merged, return source.
10
+ */
11
+ function mergeInto(destination, source, circularReferenceChecker = createCircularReferenceChecker()) {
12
+ // ignore the source if it is undefined
13
+ if (source === undefined) {
14
+ return destination;
15
+ }
16
+ if (typeof source !== 'object' || source === null) {
17
+ // primitive values - just return source
18
+ return source;
19
+ }
20
+ else if (source instanceof Date) {
21
+ return new Date(source.getTime());
22
+ }
23
+ else if (source instanceof RegExp) {
24
+ const flags = source.flags ||
25
+ // old browsers compatibility
26
+ [
27
+ source.global ? 'g' : '',
28
+ source.ignoreCase ? 'i' : '',
29
+ source.multiline ? 'm' : '',
30
+ source.sticky ? 'y' : '',
31
+ source.unicode ? 'u' : '',
32
+ ].join('');
33
+ return new RegExp(source.source, flags);
34
+ }
35
+ if (circularReferenceChecker.hasAlreadyBeenSeen(source)) {
36
+ // remove circular references
37
+ return undefined;
38
+ }
39
+ else if (Array.isArray(source)) {
40
+ const merged = Array.isArray(destination) ? destination : [];
41
+ for (let i = 0; i < source.length; ++i) {
42
+ merged[i] = mergeInto(merged[i], source[i], circularReferenceChecker);
43
+ }
44
+ return merged;
45
+ }
46
+ const merged = (0, typeUtils_1.getType)(destination) === 'object' ? destination : {};
47
+ for (const key in source) {
48
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
49
+ merged[key] = mergeInto(merged[key], source[key], circularReferenceChecker);
50
+ }
51
+ }
52
+ return merged;
53
+ }
54
+ /**
55
+ * A simplistic implementation of a deep clone algorithm.
56
+ * Caveats:
57
+ * - It doesn't maintain prototype chains - don't use with instances of custom classes.
58
+ * - It doesn't handle Map and Set
59
+ */
60
+ function deepClone(value) {
61
+ return mergeInto(undefined, value);
62
+ }
63
+ function combine(...sources) {
64
+ let destination;
65
+ for (const source of sources) {
66
+ // Ignore any undefined or null sources.
67
+ if (source === undefined || source === null) {
68
+ continue;
69
+ }
70
+ destination = mergeInto(destination, source);
71
+ }
72
+ return destination;
73
+ }
74
+ function createCircularReferenceChecker() {
75
+ if (typeof WeakSet !== 'undefined') {
76
+ const set = new WeakSet();
77
+ return {
78
+ hasAlreadyBeenSeen(value) {
79
+ const has = set.has(value);
80
+ if (!has) {
81
+ set.add(value);
82
+ }
83
+ return has;
84
+ },
85
+ };
86
+ }
87
+ const array = [];
88
+ return {
89
+ hasAlreadyBeenSeen(value) {
90
+ const has = array.indexOf(value) >= 0;
91
+ if (!has) {
92
+ array.push(value);
93
+ }
94
+ return has;
95
+ },
96
+ };
97
+ }
98
+ //# sourceMappingURL=mergeInto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeInto.js","sourceRoot":"","sources":["../../src/tools/mergeInto.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export declare function startMonitorErrorCollection(newOnMonitorErrorCollected: (error: unknown) => void): void;
2
+ export declare function setDebugMode(newDebugMode: boolean): void;
3
+ export declare function resetMonitor(): void;
4
+ export declare function monitored<T extends (...params: any[]) => unknown>(_: any, __: string, descriptor: TypedPropertyDescriptor<T>): void;
5
+ export declare function monitor<T extends (...args: any[]) => unknown>(fn: T): T;
6
+ export declare function callMonitored<T extends (...args: any[]) => unknown>(fn: T, context: ThisParameterType<T>, args: Parameters<T>): ReturnType<T> | undefined;
7
+ export declare function callMonitored<T extends (this: void) => unknown>(fn: T): ReturnType<T> | undefined;
8
+ export declare function monitorError(e: unknown): void;
9
+ export declare function displayIfDebugEnabled(...args: unknown[]): void;
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.startMonitorErrorCollection = startMonitorErrorCollection;
4
+ exports.setDebugMode = setDebugMode;
5
+ exports.resetMonitor = resetMonitor;
6
+ exports.monitored = monitored;
7
+ exports.monitor = monitor;
8
+ exports.callMonitored = callMonitored;
9
+ exports.monitorError = monitorError;
10
+ exports.displayIfDebugEnabled = displayIfDebugEnabled;
11
+ const display_1 = require("./display");
12
+ let onMonitorErrorCollected;
13
+ let debugMode = false;
14
+ function startMonitorErrorCollection(newOnMonitorErrorCollected) {
15
+ onMonitorErrorCollected = newOnMonitorErrorCollected;
16
+ }
17
+ function setDebugMode(newDebugMode) {
18
+ debugMode = newDebugMode;
19
+ }
20
+ function resetMonitor() {
21
+ onMonitorErrorCollected = undefined;
22
+ debugMode = false;
23
+ }
24
+ function monitored(_, __, descriptor) {
25
+ const originalMethod = descriptor.value;
26
+ descriptor.value = function (...args) {
27
+ const decorated = onMonitorErrorCollected ? monitor(originalMethod) : originalMethod;
28
+ return decorated.apply(this, args);
29
+ };
30
+ }
31
+ function monitor(fn) {
32
+ return function (...args) {
33
+ return callMonitored(fn, this, args);
34
+ }; // consider output type has input type
35
+ }
36
+ function callMonitored(fn, context, args) {
37
+ try {
38
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-return
39
+ return fn.apply(context, args);
40
+ }
41
+ catch (e) {
42
+ monitorError(e);
43
+ }
44
+ }
45
+ function monitorError(e) {
46
+ displayIfDebugEnabled(e);
47
+ if (onMonitorErrorCollected) {
48
+ try {
49
+ onMonitorErrorCollected(e);
50
+ }
51
+ catch (e) {
52
+ displayIfDebugEnabled(e);
53
+ }
54
+ }
55
+ }
56
+ function displayIfDebugEnabled(...args) {
57
+ if (debugMode) {
58
+ display_1.display.error('[MONITOR]', ...args);
59
+ }
60
+ }
61
+ //# sourceMappingURL=monitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/tools/monitor.ts"],"names":[],"mappings":";;AAKA,kEAEC;AAED,oCAEC;AAED,oCAGC;AAED,8BAUC;AAED,0BAIC;AAQD,sCAWC;AAED,oCASC;AAED,sDAIC;AAtED,uCAAmC;AAEnC,IAAI,uBAA+D,CAAA;AACnE,IAAI,SAAS,GAAG,KAAK,CAAA;AAErB,SAAgB,2BAA2B,CAAC,0BAAoD;IAC9F,uBAAuB,GAAG,0BAA0B,CAAA;AACtD,CAAC;AAED,SAAgB,YAAY,CAAC,YAAqB;IAChD,SAAS,GAAG,YAAY,CAAA;AAC1B,CAAC;AAED,SAAgB,YAAY;IAC1B,uBAAuB,GAAG,SAAS,CAAA;IACnC,SAAS,GAAG,KAAK,CAAA;AACnB,CAAC;AAED,SAAgB,SAAS,CACvB,CAAM,EACN,EAAU,EACV,UAAsC;IAEtC,MAAM,cAAc,GAAG,UAAU,CAAC,KAAM,CAAA;IACxC,UAAU,CAAC,KAAK,GAAG,UAAsC,GAAG,IAAmB;QAC7E,MAAM,SAAS,GAAG,uBAAuB,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAA;QACpF,OAAO,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAkB,CAAA;IACrD,CAAM,CAAA;AACR,CAAC;AAED,SAAgB,OAAO,CAAwC,EAAK;IAClE,OAAO,UAAsC,GAAG,IAAmB;QACjE,OAAO,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IACtC,CAAiB,CAAA,CAAC,sCAAsC;AAC1D,CAAC;AAQD,SAAgB,aAAa,CAC3B,EAAK,EACL,OAAa,EACb,IAAU;IAEV,IAAI,CAAC;QACH,+DAA+D;QAC/D,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAkB,CAAA;IACjD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,YAAY,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC;AAED,SAAgB,YAAY,CAAC,CAAU;IACrC,qBAAqB,CAAC,CAAC,CAAC,CAAA;IACxB,IAAI,uBAAuB,EAAE,CAAC;QAC5B,IAAI,CAAC;YACH,uBAAuB,CAAC,CAAC,CAAC,CAAA;QAC5B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,qBAAqB,CAAC,CAAC,CAAC,CAAA;QAC1B,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAgB,qBAAqB,CAAC,GAAG,IAAe;IACtD,IAAI,SAAS,EAAE,CAAC;QACd,iBAAO,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,CAAA;IACrC,CAAC;AACH,CAAC"}
@@ -0,0 +1,30 @@
1
+ export interface Subscription {
2
+ unsubscribe: () => void;
3
+ }
4
+ type Observer<T> = (data: T) => void;
5
+ export declare class Observable<T> {
6
+ private onFirstSubscribe?;
7
+ protected observers: Array<Observer<T>>;
8
+ private onLastUnsubscribe?;
9
+ constructor(onFirstSubscribe?: ((observable: Observable<T>) => (() => void) | void) | undefined);
10
+ subscribe(observer: Observer<T>): Subscription;
11
+ notify(data: T): void;
12
+ protected addObserver(observer: Observer<T>): void;
13
+ protected removeObserver(observer: Observer<T>): void;
14
+ }
15
+ export declare function mergeObservables<T>(...observables: Array<Observable<T>>): Observable<T>;
16
+ export declare class BufferedObservable<T> extends Observable<T> {
17
+ private maxBufferSize;
18
+ private buffer;
19
+ constructor(maxBufferSize: number);
20
+ notify(data: T): void;
21
+ subscribe(observer: Observer<T>): Subscription;
22
+ /**
23
+ * Drop buffered data and don't buffer future data. This is to avoid leaking memory when it's not
24
+ * needed anymore. This can be seen as a performance optimization, and things will work probably
25
+ * even if this method isn't called, but still useful to clarify our intent and lowering our
26
+ * memory impact.
27
+ */
28
+ unbuffer(): void;
29
+ }
30
+ export {};
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BufferedObservable = exports.Observable = void 0;
4
+ exports.mergeObservables = mergeObservables;
5
+ const queueMicrotask_1 = require("./queueMicrotask");
6
+ // eslint-disable-next-line no-restricted-syntax
7
+ class Observable {
8
+ constructor(onFirstSubscribe) {
9
+ this.onFirstSubscribe = onFirstSubscribe;
10
+ this.observers = [];
11
+ }
12
+ subscribe(observer) {
13
+ this.addObserver(observer);
14
+ return {
15
+ unsubscribe: () => this.removeObserver(observer),
16
+ };
17
+ }
18
+ notify(data) {
19
+ this.observers.forEach((observer) => observer(data));
20
+ }
21
+ addObserver(observer) {
22
+ this.observers.push(observer);
23
+ if (this.observers.length === 1 && this.onFirstSubscribe) {
24
+ this.onLastUnsubscribe = this.onFirstSubscribe(this) || undefined;
25
+ }
26
+ }
27
+ removeObserver(observer) {
28
+ this.observers = this.observers.filter((other) => observer !== other);
29
+ if (!this.observers.length && this.onLastUnsubscribe) {
30
+ this.onLastUnsubscribe();
31
+ }
32
+ }
33
+ }
34
+ exports.Observable = Observable;
35
+ function mergeObservables(...observables) {
36
+ return new Observable((globalObservable) => {
37
+ const subscriptions = observables.map((observable) => observable.subscribe((data) => globalObservable.notify(data)));
38
+ return () => subscriptions.forEach((subscription) => subscription.unsubscribe());
39
+ });
40
+ }
41
+ // eslint-disable-next-line no-restricted-syntax
42
+ class BufferedObservable extends Observable {
43
+ constructor(maxBufferSize) {
44
+ super();
45
+ this.maxBufferSize = maxBufferSize;
46
+ this.buffer = [];
47
+ }
48
+ notify(data) {
49
+ this.buffer.push(data);
50
+ if (this.buffer.length > this.maxBufferSize) {
51
+ this.buffer.shift();
52
+ }
53
+ super.notify(data);
54
+ }
55
+ subscribe(observer) {
56
+ let closed = false;
57
+ const subscription = {
58
+ unsubscribe: () => {
59
+ closed = true;
60
+ this.removeObserver(observer);
61
+ },
62
+ };
63
+ (0, queueMicrotask_1.queueMicrotask)(() => {
64
+ for (const data of this.buffer) {
65
+ if (closed) {
66
+ return;
67
+ }
68
+ observer(data);
69
+ }
70
+ if (!closed) {
71
+ this.addObserver(observer);
72
+ }
73
+ });
74
+ return subscription;
75
+ }
76
+ /**
77
+ * Drop buffered data and don't buffer future data. This is to avoid leaking memory when it's not
78
+ * needed anymore. This can be seen as a performance optimization, and things will work probably
79
+ * even if this method isn't called, but still useful to clarify our intent and lowering our
80
+ * memory impact.
81
+ */
82
+ unbuffer() {
83
+ (0, queueMicrotask_1.queueMicrotask)(() => {
84
+ this.maxBufferSize = this.buffer.length = 0;
85
+ });
86
+ }
87
+ }
88
+ exports.BufferedObservable = BufferedObservable;
89
+ //# sourceMappingURL=observable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"observable.js","sourceRoot":"","sources":["../../src/tools/observable.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function queueMicrotask(callback: () => void): void;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.queueMicrotask = queueMicrotask;
4
+ const monitor_1 = require("./monitor");
5
+ const globalObject_1 = require("./globalObject");
6
+ function queueMicrotask(callback) {
7
+ var _a;
8
+ const nativeImplementation = (_a = globalObject_1.globalObject.queueMicrotask) === null || _a === void 0 ? void 0 : _a.bind(globalObject_1.globalObject);
9
+ if (typeof nativeImplementation === 'function') {
10
+ nativeImplementation((0, monitor_1.monitor)(callback));
11
+ }
12
+ else {
13
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises -- the callback is monitored, so it'll never throw
14
+ Promise.resolve().then((0, monitor_1.monitor)(callback));
15
+ }
16
+ }
17
+ //# sourceMappingURL=queueMicrotask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queueMicrotask.js","sourceRoot":"","sources":["../../src/tools/queueMicrotask.ts"],"names":[],"mappings":";;AAGA,wCASC;AAZD,uCAAmC;AACnC,iDAA6C;AAE7C,SAAgB,cAAc,CAAC,QAAoB;;IACjD,MAAM,oBAAoB,GAAG,MAAA,2BAAY,CAAC,cAAc,0CAAE,IAAI,CAAC,2BAAY,CAAC,CAAA;IAE5E,IAAI,OAAO,oBAAoB,KAAK,UAAU,EAAE,CAAC;QAC/C,oBAAoB,CAAC,IAAA,iBAAO,EAAC,QAAQ,CAAC,CAAC,CAAA;IACzC,CAAC;SAAM,CAAC;QACN,sHAAsH;QACtH,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,IAAA,iBAAO,EAAC,QAAQ,CAAC,CAAC,CAAA;IAC3C,CAAC;AACH,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { Uint8ArrayBuffer } from './utils/byteUtils';
2
+ interface Options {
3
+ collectStreamBody?: boolean;
4
+ }
5
+ /**
6
+ * Read bytes from a ReadableStream until the end of the stream.
7
+ * Returns the bytes if collectStreamBody is true, otherwise returns undefined.
8
+ */
9
+ export declare function readBytesFromStream(stream: ReadableStream<Uint8ArrayBuffer>, options: Options): Promise<Uint8ArrayBuffer | undefined>;
10
+ export {};
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.readBytesFromStream = readBytesFromStream;
4
+ const byteUtils_1 = require("./utils/byteUtils");
5
+ const functionUtils_1 = require("./utils/functionUtils");
6
+ /**
7
+ * Read bytes from a ReadableStream until the end of the stream.
8
+ * Returns the bytes if collectStreamBody is true, otherwise returns undefined.
9
+ */
10
+ async function readBytesFromStream(stream, options) {
11
+ const reader = stream.getReader();
12
+ const chunks = [];
13
+ while (true) {
14
+ const result = await reader.read();
15
+ if (result.done) {
16
+ break;
17
+ }
18
+ if (options.collectStreamBody) {
19
+ chunks.push(result.value);
20
+ }
21
+ }
22
+ reader.cancel().catch(
23
+ // we don't care if cancel fails, but we still need to catch the error to avoid reporting it
24
+ // as an unhandled rejection
25
+ functionUtils_1.noop);
26
+ return options.collectStreamBody ? (0, byteUtils_1.concatBuffers)(chunks) : undefined;
27
+ }
28
+ //# sourceMappingURL=readBytesFromStream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readBytesFromStream.js","sourceRoot":"","sources":["../../src/tools/readBytesFromStream.ts"],"names":[],"mappings":";;AAcA,kDAsBC;AAnCD,iDAAiD;AACjD,yDAA4C;AAQ5C;;;GAGG;AACI,KAAK,UAAU,mBAAmB,CAAC,MAAwC,EAAE,OAAgB;IAClG,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;IACjC,MAAM,MAAM,GAAuB,EAAE,CAAA;IAErC,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;QAClC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,MAAK;QACP,CAAC;QAED,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC3B,CAAC;IACH,CAAC;IAED,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK;IACnB,4FAA4F;IAC5F,4BAA4B;IAC5B,oBAAI,CACL,CAAA;IAED,OAAO,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAA,yBAAa,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AACtE,CAAC"}
@@ -0,0 +1,12 @@
1
+ export interface IdleDeadline {
2
+ readonly didTimeout: boolean;
3
+ timeRemaining(): DOMHighResTimeStamp;
4
+ }
5
+ /**
6
+ * 'requestIdleCallback' with a shim.
7
+ */
8
+ export declare function requestIdleCallback(callback: (deadline: IdleDeadline) => void, opts?: {
9
+ timeout?: number;
10
+ }): () => void;
11
+ export declare const MAX_TASK_TIME = 50;
12
+ export declare function requestIdleCallbackShim(callback: (deadline: IdleDeadline) => void): () => void;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MAX_TASK_TIME = void 0;
4
+ exports.requestIdleCallback = requestIdleCallback;
5
+ exports.requestIdleCallbackShim = requestIdleCallbackShim;
6
+ const timer_1 = require("./timer");
7
+ const monitor_1 = require("./monitor");
8
+ const timeUtils_1 = require("./utils/timeUtils");
9
+ /**
10
+ * 'requestIdleCallback' with a shim.
11
+ */
12
+ function requestIdleCallback(callback, opts) {
13
+ // Note: check both 'requestIdleCallback' and 'cancelIdleCallback' existence because some polyfills only implement 'requestIdleCallback'.
14
+ if (window.requestIdleCallback && window.cancelIdleCallback) {
15
+ const id = window.requestIdleCallback((0, monitor_1.monitor)(callback), opts);
16
+ return () => window.cancelIdleCallback(id);
17
+ }
18
+ return requestIdleCallbackShim(callback);
19
+ }
20
+ exports.MAX_TASK_TIME = 50;
21
+ /*
22
+ * Shim from https://developer.chrome.com/blog/using-requestidlecallback#checking_for_requestidlecallback
23
+ * Note: there is no simple way to support the "timeout" option, so we ignore it.
24
+ */
25
+ function requestIdleCallbackShim(callback) {
26
+ const start = (0, timeUtils_1.dateNow)();
27
+ const timeoutId = (0, timer_1.setTimeout)(() => {
28
+ callback({
29
+ didTimeout: false,
30
+ timeRemaining: () => Math.max(0, exports.MAX_TASK_TIME - ((0, timeUtils_1.dateNow)() - start)),
31
+ });
32
+ }, 0);
33
+ return () => (0, timer_1.clearTimeout)(timeoutId);
34
+ }
35
+ //# sourceMappingURL=requestIdleCallback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requestIdleCallback.js","sourceRoot":"","sources":["../../src/tools/requestIdleCallback.ts"],"names":[],"mappings":";;;AAeA,kDAOC;AAQD,0DASC;AAvCD,mCAAkD;AAClD,uCAAmC;AACnC,iDAA2C;AAU3C;;GAEG;AACH,SAAgB,mBAAmB,CAAC,QAA0C,EAAE,IAA2B;IACzG,yIAAyI;IACzI,IAAI,MAAM,CAAC,mBAAmB,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;QAC5D,MAAM,EAAE,GAAG,MAAM,CAAC,mBAAmB,CAAC,IAAA,iBAAO,EAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAA;QAC9D,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAA;IAC5C,CAAC;IACD,OAAO,uBAAuB,CAAC,QAAQ,CAAC,CAAA;AAC1C,CAAC;AAEY,QAAA,aAAa,GAAG,EAAE,CAAA;AAE/B;;;GAGG;AACH,SAAgB,uBAAuB,CAAC,QAA0C;IAChF,MAAM,KAAK,GAAG,IAAA,mBAAO,GAAE,CAAA;IACvB,MAAM,SAAS,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE;QAChC,QAAQ,CAAC;YACP,UAAU,EAAE,KAAK;YACjB,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAa,GAAG,CAAC,IAAA,mBAAO,GAAE,GAAG,KAAK,CAAC,CAAC;SACtE,CAAC,CAAA;IACJ,CAAC,EAAE,CAAC,CAAC,CAAA;IACL,OAAO,GAAG,EAAE,CAAC,IAAA,oBAAY,EAAC,SAAS,CAAC,CAAA;AACtC,CAAC"}
@@ -0,0 +1,3 @@
1
+ type ExtensionMessageType = 'logs' | 'record' | 'rum' | 'telemetry';
2
+ export declare function sendToExtension(type: ExtensionMessageType, payload: unknown): void;
3
+ export {};