@openobserve/browser-core 0.3.4 → 0.4.0-beta.2

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 (934) hide show
  1. package/README.md +1 -1
  2. package/cjs/boot/displayAlreadyInitializedError.js +6 -7
  3. package/cjs/boot/displayAlreadyInitializedError.js.map +1 -1
  4. package/cjs/boot/init.js +26 -34
  5. package/cjs/boot/init.js.map +1 -1
  6. package/cjs/browser/addEventListener.d.ts +10 -8
  7. package/cjs/browser/addEventListener.js +107 -50
  8. package/cjs/browser/addEventListener.js.map +1 -1
  9. package/cjs/browser/browser.types.d.ts +91 -4
  10. package/cjs/browser/cookie.d.ts +0 -1
  11. package/cjs/browser/cookie.js +65 -92
  12. package/cjs/browser/cookie.js.map +1 -1
  13. package/cjs/browser/cookieAccess.d.ts +16 -0
  14. package/cjs/browser/cookieAccess.js +114 -0
  15. package/cjs/browser/cookieAccess.js.map +1 -0
  16. package/cjs/browser/fetch.d.ts +9 -0
  17. package/cjs/browser/fetch.js +18 -0
  18. package/cjs/browser/fetch.js.map +1 -0
  19. package/cjs/browser/fetchObservable.d.ts +3 -3
  20. package/cjs/browser/fetchObservable.js +80 -92
  21. package/cjs/browser/fetchObservable.js.map +1 -1
  22. package/cjs/browser/pageMayExitObservable.d.ts +1 -2
  23. package/cjs/browser/pageMayExitObservable.js +41 -40
  24. package/cjs/browser/pageMayExitObservable.js.map +1 -1
  25. package/cjs/browser/runOnReadyState.d.ts +2 -3
  26. package/cjs/browser/runOnReadyState.js +18 -17
  27. package/cjs/browser/runOnReadyState.js.map +1 -1
  28. package/cjs/browser/xhrObservable.d.ts +8 -3
  29. package/cjs/browser/xhrObservable.js +65 -77
  30. package/cjs/browser/xhrObservable.js.map +1 -1
  31. package/cjs/domain/allowedTrackingOrigins.d.ts +1 -1
  32. package/cjs/domain/allowedTrackingOrigins.js +25 -23
  33. package/cjs/domain/allowedTrackingOrigins.js.map +1 -1
  34. package/cjs/domain/bufferedData.d.ts +20 -6
  35. package/cjs/domain/bufferedData.js +41 -19
  36. package/cjs/domain/bufferedData.js.map +1 -1
  37. package/cjs/domain/configuration/configuration.d.ts +44 -43
  38. package/cjs/domain/configuration/configuration.js +122 -125
  39. package/cjs/domain/configuration/configuration.js.map +1 -1
  40. package/cjs/domain/configuration/endpointBuilder.d.ts +42 -7
  41. package/cjs/domain/configuration/endpointBuilder.js +67 -74
  42. package/cjs/domain/configuration/endpointBuilder.js.map +1 -1
  43. package/cjs/domain/configuration/index.d.ts +2 -3
  44. package/cjs/domain/connectivity/connectivity.d.ts +1 -7
  45. package/cjs/domain/connectivity/connectivity.js +11 -11
  46. package/cjs/domain/connectivity/connectivity.js.map +1 -1
  47. package/cjs/domain/console/consoleObservable.d.ts +1 -1
  48. package/cjs/domain/console/consoleObservable.js +59 -74
  49. package/cjs/domain/console/consoleObservable.js.map +1 -1
  50. package/cjs/domain/context/contextConstants.js +24 -15
  51. package/cjs/domain/context/contextConstants.js.map +1 -1
  52. package/cjs/domain/context/contextManager.js +49 -54
  53. package/cjs/domain/context/contextManager.js.map +1 -1
  54. package/cjs/domain/context/contextUtils.js +11 -12
  55. package/cjs/domain/context/contextUtils.js.map +1 -1
  56. package/cjs/domain/context/defineContextMethod.d.ts +2 -2
  57. package/cjs/domain/context/defineContextMethod.js +15 -16
  58. package/cjs/domain/context/defineContextMethod.js.map +1 -1
  59. package/cjs/domain/context/storeContextManager.d.ts +1 -2
  60. package/cjs/domain/context/storeContextManager.js +30 -33
  61. package/cjs/domain/context/storeContextManager.js.map +1 -1
  62. package/cjs/domain/contexts/accountContext.d.ts +2 -2
  63. package/cjs/domain/contexts/accountContext.js +26 -29
  64. package/cjs/domain/contexts/accountContext.js.map +1 -1
  65. package/cjs/domain/contexts/globalContext.d.ts +2 -2
  66. package/cjs/domain/contexts/globalContext.js +17 -17
  67. package/cjs/domain/contexts/globalContext.js.map +1 -1
  68. package/cjs/domain/contexts/tabContext.d.ts +4 -0
  69. package/cjs/domain/contexts/tabContext.js +27 -0
  70. package/cjs/domain/contexts/tabContext.js.map +1 -0
  71. package/cjs/domain/contexts/telemetrySessionContext.d.ts +4 -0
  72. package/cjs/domain/contexts/telemetrySessionContext.js +17 -0
  73. package/cjs/domain/contexts/telemetrySessionContext.js.map +1 -0
  74. package/cjs/domain/contexts/userContext.d.ts +8 -3
  75. package/cjs/domain/contexts/userContext.js +29 -41
  76. package/cjs/domain/contexts/userContext.js.map +1 -1
  77. package/cjs/domain/deflate/deflate.types.js +11 -2
  78. package/cjs/domain/deflate/deflate.types.js.map +1 -1
  79. package/cjs/domain/error/error.d.ts +1 -1
  80. package/cjs/domain/error/error.js +62 -60
  81. package/cjs/domain/error/error.js.map +1 -1
  82. package/cjs/domain/error/error.types.d.ts +1 -1
  83. package/cjs/domain/error/error.types.js +24 -11
  84. package/cjs/domain/error/error.types.js.map +1 -1
  85. package/cjs/domain/error/trackRuntimeError.d.ts +3 -2
  86. package/cjs/domain/error/trackRuntimeError.js +41 -41
  87. package/cjs/domain/error/trackRuntimeError.js.map +1 -1
  88. package/cjs/domain/eventRateLimiter/createEventRateLimiter.js +33 -38
  89. package/cjs/domain/eventRateLimiter/createEventRateLimiter.js.map +1 -1
  90. package/cjs/domain/extension/extensionUtils.js +18 -25
  91. package/cjs/domain/extension/extensionUtils.js.map +1 -1
  92. package/cjs/domain/intakeSites.d.ts +3 -3
  93. package/cjs/domain/intakeSites.js +23 -10
  94. package/cjs/domain/intakeSites.js.map +1 -1
  95. package/cjs/domain/report/reportObservable.d.ts +1 -2
  96. package/cjs/domain/report/reportObservable.js +73 -85
  97. package/cjs/domain/report/reportObservable.js.map +1 -1
  98. package/cjs/domain/resourceUtils.js +19 -17
  99. package/cjs/domain/resourceUtils.js.map +1 -1
  100. package/cjs/domain/sampler.d.ts +11 -0
  101. package/cjs/domain/sampler.js +40 -0
  102. package/cjs/domain/sampler.js.map +1 -0
  103. package/cjs/domain/session/sessionConstants.d.ts +1 -0
  104. package/cjs/domain/session/sessionConstants.js +19 -13
  105. package/cjs/domain/session/sessionConstants.js.map +1 -1
  106. package/cjs/domain/session/sessionManager.d.ts +13 -13
  107. package/cjs/domain/session/sessionManager.js +219 -193
  108. package/cjs/domain/session/sessionManager.js.map +1 -1
  109. package/cjs/domain/session/sessionState.d.ts +10 -1
  110. package/cjs/domain/session/sessionState.js +70 -55
  111. package/cjs/domain/session/sessionState.js.map +1 -1
  112. package/cjs/domain/session/sessionStateValidation.js +7 -8
  113. package/cjs/domain/session/sessionStateValidation.js.map +1 -1
  114. package/cjs/domain/session/sessionStore.d.ts +4 -33
  115. package/cjs/domain/session/sessionStore.js +42 -180
  116. package/cjs/domain/session/sessionStore.js.map +1 -1
  117. package/cjs/domain/session/storeStrategies/sessionInCookie.d.ts +7 -11
  118. package/cjs/domain/session/storeStrategies/sessionInCookie.js +89 -95
  119. package/cjs/domain/session/storeStrategies/sessionInCookie.js.map +1 -1
  120. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.d.ts +1 -4
  121. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js +39 -38
  122. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js.map +1 -1
  123. package/cjs/domain/session/storeStrategies/sessionInMemory.d.ts +12 -0
  124. package/cjs/domain/session/storeStrategies/sessionInMemory.js +35 -0
  125. package/cjs/domain/session/storeStrategies/sessionInMemory.js.map +1 -0
  126. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.d.ts +16 -7
  127. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.js +7 -4
  128. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.js.map +1 -1
  129. package/cjs/domain/synthetics/syntheticsWorkerValues.d.ts +9 -3
  130. package/cjs/domain/synthetics/syntheticsWorkerValues.js +33 -25
  131. package/cjs/domain/synthetics/syntheticsWorkerValues.js.map +1 -1
  132. package/cjs/domain/tags.d.ts +0 -1
  133. package/cjs/domain/tags.js +22 -58
  134. package/cjs/domain/tags.js.map +1 -1
  135. package/cjs/domain/telemetry/rawTelemetryEvent.types.js +8 -7
  136. package/cjs/domain/telemetry/rawTelemetryEvent.types.js.map +1 -1
  137. package/cjs/domain/telemetry/telemetry.d.ts +8 -8
  138. package/cjs/domain/telemetry/telemetry.js +196 -211
  139. package/cjs/domain/telemetry/telemetry.js.map +1 -1
  140. package/cjs/domain/telemetry/telemetryEvent.types.d.ts +97 -17
  141. package/cjs/domain/trackingConsent.d.ts +1 -0
  142. package/cjs/domain/trackingConsent.js +35 -24
  143. package/cjs/domain/trackingConsent.js.map +1 -1
  144. package/cjs/index.d.ts +25 -22
  145. package/cjs/index.js +281 -194
  146. package/cjs/tools/abstractLifeCycle.js +19 -26
  147. package/cjs/tools/abstractLifeCycle.js.map +1 -1
  148. package/cjs/tools/catchUserErrors.js +12 -12
  149. package/cjs/tools/catchUserErrors.js.map +1 -1
  150. package/cjs/tools/display.d.ts +1 -35
  151. package/cjs/tools/display.js +11 -43
  152. package/cjs/tools/display.js.map +1 -1
  153. package/cjs/tools/encoder.js +36 -37
  154. package/cjs/tools/encoder.js.map +1 -1
  155. package/cjs/tools/experimentalFeatures.d.ts +1 -4
  156. package/cjs/tools/experimentalFeatures.js +29 -40
  157. package/cjs/tools/experimentalFeatures.js.map +1 -1
  158. package/cjs/tools/getZoneJsOriginalValue.d.ts +1 -1
  159. package/cjs/tools/getZoneJsOriginalValue.js +22 -25
  160. package/cjs/tools/getZoneJsOriginalValue.js.map +1 -1
  161. package/cjs/tools/globalObject.d.ts +16 -15
  162. package/cjs/tools/globalObject.js +7 -43
  163. package/cjs/tools/globalObject.js.map +1 -1
  164. package/cjs/tools/instrumentMethod.d.ts +58 -1
  165. package/cjs/tools/instrumentMethod.js +174 -112
  166. package/cjs/tools/instrumentMethod.js.map +1 -1
  167. package/cjs/tools/matchOption.js +25 -29
  168. package/cjs/tools/matchOption.js.map +1 -1
  169. package/cjs/tools/mockable.d.ts +22 -0
  170. package/cjs/tools/mockable.js +28 -0
  171. package/cjs/tools/mockable.js.map +1 -0
  172. package/cjs/tools/monitor.d.ts +5 -7
  173. package/cjs/tools/monitor.js +13 -58
  174. package/cjs/tools/monitor.js.map +1 -1
  175. package/cjs/tools/observable.d.ts +3 -1
  176. package/cjs/tools/observable.js +75 -85
  177. package/cjs/tools/observable.js.map +1 -1
  178. package/cjs/tools/queueMicrotask.js +9 -14
  179. package/cjs/tools/queueMicrotask.js.map +1 -1
  180. package/cjs/tools/readBytesFromStream.d.ts +1 -6
  181. package/cjs/tools/readBytesFromStream.js +18 -25
  182. package/cjs/tools/readBytesFromStream.js.map +1 -1
  183. package/cjs/tools/requestIdleCallback.js +22 -29
  184. package/cjs/tools/requestIdleCallback.js.map +1 -1
  185. package/cjs/tools/sendToExtension.js +10 -8
  186. package/cjs/tools/sendToExtension.js.map +1 -1
  187. package/cjs/tools/serialisation/jsonStringify.js +37 -42
  188. package/cjs/tools/serialisation/jsonStringify.js.map +1 -1
  189. package/cjs/tools/serialisation/sanitize.d.ts +1 -0
  190. package/cjs/tools/serialisation/sanitize.js +111 -167
  191. package/cjs/tools/serialisation/sanitize.js.map +1 -1
  192. package/cjs/tools/serialisation/stringify.d.ts +2 -0
  193. package/cjs/tools/serialisation/stringify.js +18 -0
  194. package/cjs/tools/serialisation/stringify.js.map +1 -0
  195. package/cjs/tools/stackTrace/computeStackTrace.js +121 -159
  196. package/cjs/tools/stackTrace/computeStackTrace.js.map +1 -1
  197. package/cjs/tools/stackTrace/handlingStack.d.ts +1 -1
  198. package/cjs/tools/stackTrace/handlingStack.js +39 -38
  199. package/cjs/tools/stackTrace/handlingStack.js.map +1 -1
  200. package/cjs/tools/taskQueue.js +40 -49
  201. package/cjs/tools/taskQueue.js.map +1 -1
  202. package/cjs/tools/timer.d.ts +2 -1
  203. package/cjs/tools/timer.js +14 -13
  204. package/cjs/tools/timer.js.map +1 -1
  205. package/cjs/tools/utils/arrayUtils.d.ts +1 -0
  206. package/cjs/tools/utils/arrayUtils.js +17 -13
  207. package/cjs/tools/utils/arrayUtils.js.map +1 -1
  208. package/cjs/tools/utils/browserDetection.d.ts +1 -0
  209. package/cjs/tools/utils/browserDetection.js +25 -23
  210. package/cjs/tools/utils/browserDetection.js.map +1 -1
  211. package/cjs/tools/utils/byteUtils.js +20 -28
  212. package/cjs/tools/utils/byteUtils.js.map +1 -1
  213. package/cjs/tools/utils/functionUtils.js +33 -40
  214. package/cjs/tools/utils/functionUtils.js.map +1 -1
  215. package/cjs/tools/utils/numberUtils.js +15 -14
  216. package/cjs/tools/utils/numberUtils.js.map +1 -1
  217. package/cjs/tools/utils/objectUtils.d.ts +2 -0
  218. package/cjs/tools/utils/objectUtils.js +27 -14
  219. package/cjs/tools/utils/objectUtils.js.map +1 -1
  220. package/cjs/tools/utils/polyfills.js +12 -16
  221. package/cjs/tools/utils/polyfills.js.map +1 -1
  222. package/cjs/tools/utils/responseUtils.js +11 -12
  223. package/cjs/tools/utils/responseUtils.js.map +1 -1
  224. package/cjs/tools/utils/stringUtils.js +56 -77
  225. package/cjs/tools/utils/stringUtils.js.map +1 -1
  226. package/cjs/tools/utils/timezone.js +9 -10
  227. package/cjs/tools/utils/timezone.js.map +1 -1
  228. package/cjs/tools/utils/urlPolyfill.js +42 -46
  229. package/cjs/tools/utils/urlPolyfill.js.map +1 -1
  230. package/cjs/tools/valueHistory.d.ts +9 -1
  231. package/cjs/tools/valueHistory.js +110 -99
  232. package/cjs/tools/valueHistory.js.map +1 -1
  233. package/cjs/transport/batch.js +73 -106
  234. package/cjs/transport/batch.js.map +1 -1
  235. package/cjs/transport/eventBridge.d.ts +6 -2
  236. package/cjs/transport/eventBridge.js +53 -38
  237. package/cjs/transport/eventBridge.js.map +1 -1
  238. package/cjs/transport/flushController.d.ts +2 -12
  239. package/cjs/transport/flushController.js +98 -117
  240. package/cjs/transport/flushController.js.map +1 -1
  241. package/cjs/transport/httpRequest.d.ts +0 -1
  242. package/cjs/transport/httpRequest.js +51 -85
  243. package/cjs/transport/httpRequest.js.map +1 -1
  244. package/cjs/transport/index.d.ts +1 -0
  245. package/cjs/transport/sendWithRetryStrategy.js +133 -146
  246. package/cjs/transport/sendWithRetryStrategy.js.map +1 -1
  247. package/esm/boot/displayAlreadyInitializedError.mjs +9 -0
  248. package/esm/boot/displayAlreadyInitializedError.mjs.map +1 -0
  249. package/esm/boot/init.mjs +30 -0
  250. package/esm/boot/init.mjs.map +1 -0
  251. package/esm/browser/addEventListener.mjs +107 -0
  252. package/esm/browser/addEventListener.mjs.map +1 -0
  253. package/esm/browser/cookie.mjs +81 -0
  254. package/esm/browser/cookie.mjs.map +1 -0
  255. package/esm/browser/cookieAccess.mjs +111 -0
  256. package/esm/browser/cookieAccess.mjs.map +1 -0
  257. package/esm/browser/fetch.mjs +18 -0
  258. package/esm/browser/fetch.mjs.map +1 -0
  259. package/esm/browser/fetchObservable.mjs +90 -0
  260. package/esm/browser/fetchObservable.mjs.map +1 -0
  261. package/esm/browser/pageMayExitObservable.mjs +44 -0
  262. package/esm/browser/pageMayExitObservable.mjs.map +1 -0
  263. package/esm/browser/runOnReadyState.mjs +19 -0
  264. package/esm/browser/runOnReadyState.mjs.map +1 -0
  265. package/esm/browser/xhrObservable.mjs +74 -0
  266. package/esm/browser/xhrObservable.mjs.map +1 -0
  267. package/esm/domain/allowedTrackingOrigins.mjs +27 -0
  268. package/esm/domain/allowedTrackingOrigins.mjs.map +1 -0
  269. package/esm/domain/bufferedData.mjs +43 -0
  270. package/esm/domain/bufferedData.mjs.map +1 -0
  271. package/esm/domain/configuration/configuration.mjs +131 -0
  272. package/esm/domain/configuration/configuration.mjs.map +1 -0
  273. package/esm/domain/configuration/endpointBuilder.mjs +72 -0
  274. package/esm/domain/configuration/endpointBuilder.mjs.map +1 -0
  275. package/esm/domain/connectivity/connectivity.mjs +14 -0
  276. package/esm/domain/connectivity/connectivity.mjs.map +1 -0
  277. package/esm/domain/console/consoleObservable.mjs +69 -0
  278. package/esm/domain/console/consoleObservable.mjs.map +1 -0
  279. package/esm/domain/context/contextConstants.mjs +25 -0
  280. package/esm/domain/context/contextConstants.mjs.map +1 -0
  281. package/esm/domain/context/contextManager.mjs +55 -0
  282. package/esm/domain/context/contextManager.mjs.map +1 -0
  283. package/esm/domain/context/contextUtils.mjs +15 -0
  284. package/esm/domain/context/contextUtils.mjs.map +1 -0
  285. package/esm/domain/context/defineContextMethod.mjs +19 -0
  286. package/esm/domain/context/defineContextMethod.mjs.map +1 -0
  287. package/esm/domain/context/storeContextManager.mjs +36 -0
  288. package/esm/domain/context/storeContextManager.mjs.map +1 -0
  289. package/esm/domain/contexts/accountContext.mjs +29 -0
  290. package/esm/domain/contexts/accountContext.mjs.map +1 -0
  291. package/esm/domain/contexts/globalContext.mjs +20 -0
  292. package/esm/domain/contexts/globalContext.mjs.map +1 -0
  293. package/esm/domain/contexts/tabContext.mjs +27 -0
  294. package/esm/domain/contexts/tabContext.mjs.map +1 -0
  295. package/esm/domain/contexts/telemetrySessionContext.mjs +17 -0
  296. package/esm/domain/contexts/telemetrySessionContext.mjs.map +1 -0
  297. package/esm/domain/contexts/userContext.mjs +32 -0
  298. package/esm/domain/contexts/userContext.mjs.map +1 -0
  299. package/esm/domain/deflate/deflate.types.mjs +12 -0
  300. package/esm/domain/deflate/deflate.types.mjs.map +1 -0
  301. package/esm/domain/error/error.mjs +73 -0
  302. package/esm/domain/error/error.mjs.map +1 -0
  303. package/esm/domain/error/error.types.mjs +24 -0
  304. package/esm/domain/error/error.types.mjs.map +1 -0
  305. package/esm/domain/error/trackRuntimeError.mjs +48 -0
  306. package/esm/domain/error/trackRuntimeError.mjs.map +1 -0
  307. package/esm/domain/eventRateLimiter/createEventRateLimiter.mjs +36 -0
  308. package/esm/domain/eventRateLimiter/createEventRateLimiter.mjs.map +1 -0
  309. package/esm/domain/extension/extensionUtils.mjs +23 -0
  310. package/esm/domain/extension/extensionUtils.mjs.map +1 -0
  311. package/esm/domain/intakeSites.mjs +18 -0
  312. package/esm/domain/intakeSites.mjs.map +1 -0
  313. package/esm/domain/report/reportObservable.mjs +86 -0
  314. package/esm/domain/report/reportObservable.mjs.map +1 -0
  315. package/esm/domain/resourceUtils.mjs +21 -0
  316. package/esm/domain/resourceUtils.mjs.map +1 -0
  317. package/esm/domain/sampler.mjs +37 -0
  318. package/esm/domain/sampler.mjs.map +1 -0
  319. package/esm/domain/session/sessionConstants.mjs +18 -0
  320. package/esm/domain/session/sessionConstants.mjs.map +1 -0
  321. package/esm/domain/session/sessionManager.mjs +225 -0
  322. package/esm/domain/session/sessionManager.mjs.map +1 -0
  323. package/esm/domain/session/sessionState.mjs +76 -0
  324. package/esm/domain/session/sessionState.mjs.map +1 -0
  325. package/esm/domain/session/sessionStateValidation.mjs +9 -0
  326. package/esm/domain/session/sessionStateValidation.mjs.map +1 -0
  327. package/esm/domain/session/sessionStore.mjs +46 -0
  328. package/esm/domain/session/sessionStore.mjs.map +1 -0
  329. package/esm/domain/session/storeStrategies/sessionInCookie.mjs +97 -0
  330. package/esm/domain/session/storeStrategies/sessionInCookie.mjs.map +1 -0
  331. package/esm/domain/session/storeStrategies/sessionInLocalStorage.mjs +42 -0
  332. package/esm/domain/session/storeStrategies/sessionInLocalStorage.mjs.map +1 -0
  333. package/esm/domain/session/storeStrategies/sessionInMemory.mjs +33 -0
  334. package/esm/domain/session/storeStrategies/sessionInMemory.mjs.map +1 -0
  335. package/esm/domain/session/storeStrategies/sessionStoreStrategy.mjs +7 -0
  336. package/esm/domain/session/storeStrategies/sessionStoreStrategy.mjs.map +1 -0
  337. package/esm/domain/synthetics/syntheticsWorkerValues.mjs +37 -0
  338. package/esm/domain/synthetics/syntheticsWorkerValues.mjs.map +1 -0
  339. package/esm/domain/tags.mjs +28 -0
  340. package/esm/domain/tags.mjs.map +1 -0
  341. package/esm/domain/telemetry/rawTelemetryEvent.types.mjs +10 -0
  342. package/esm/domain/telemetry/rawTelemetryEvent.types.mjs.map +1 -0
  343. package/esm/domain/telemetry/telemetry.mjs +219 -0
  344. package/esm/domain/telemetry/telemetry.mjs.map +1 -0
  345. package/esm/domain/trackingConsent.mjs +38 -0
  346. package/esm/domain/trackingConsent.mjs.map +1 -0
  347. package/esm/index.mjs +81 -0
  348. package/esm/tools/abstractLifeCycle.mjs +21 -0
  349. package/esm/tools/abstractLifeCycle.mjs.map +1 -0
  350. package/esm/tools/catchUserErrors.mjs +15 -0
  351. package/esm/tools/catchUserErrors.mjs.map +1 -0
  352. package/esm/tools/display.mjs +10 -0
  353. package/esm/tools/display.mjs.map +1 -0
  354. package/esm/tools/encoder.mjs +39 -0
  355. package/esm/tools/encoder.mjs.map +1 -0
  356. package/esm/tools/experimentalFeatures.mjs +35 -0
  357. package/esm/tools/experimentalFeatures.mjs.map +1 -0
  358. package/esm/tools/getZoneJsOriginalValue.mjs +26 -0
  359. package/esm/tools/getZoneJsOriginalValue.mjs.map +1 -0
  360. package/esm/tools/globalObject.mjs +7 -0
  361. package/esm/tools/globalObject.mjs.map +1 -0
  362. package/esm/tools/instrumentMethod.mjs +178 -0
  363. package/esm/tools/instrumentMethod.mjs.map +1 -0
  364. package/esm/tools/matchOption.mjs +30 -0
  365. package/esm/tools/matchOption.mjs.map +1 -0
  366. package/esm/tools/mockable.mjs +28 -0
  367. package/esm/tools/mockable.mjs.map +1 -0
  368. package/esm/tools/monitor.mjs +13 -0
  369. package/esm/tools/monitor.mjs.map +1 -0
  370. package/esm/tools/observable.mjs +77 -0
  371. package/esm/tools/observable.mjs.map +1 -0
  372. package/esm/tools/queueMicrotask.mjs +12 -0
  373. package/esm/tools/queueMicrotask.mjs.map +1 -0
  374. package/esm/tools/readBytesFromStream.mjs +21 -0
  375. package/esm/tools/readBytesFromStream.mjs.map +1 -0
  376. package/esm/tools/requestIdleCallback.mjs +28 -0
  377. package/esm/tools/requestIdleCallback.mjs.map +1 -0
  378. package/esm/tools/sendToExtension.mjs +13 -0
  379. package/esm/tools/sendToExtension.mjs.map +1 -0
  380. package/esm/tools/serialisation/jsonStringify.mjs +42 -0
  381. package/esm/tools/serialisation/jsonStringify.mjs.map +1 -0
  382. package/esm/tools/serialisation/sanitize.mjs +131 -0
  383. package/esm/tools/serialisation/sanitize.mjs.map +1 -0
  384. package/esm/tools/serialisation/stringify.mjs +17 -0
  385. package/esm/tools/serialisation/stringify.mjs.map +1 -0
  386. package/esm/tools/stackTrace/computeStackTrace.mjs +148 -0
  387. package/esm/tools/stackTrace/computeStackTrace.mjs.map +1 -0
  388. package/esm/tools/stackTrace/handlingStack.mjs +45 -0
  389. package/esm/tools/stackTrace/handlingStack.mjs.map +1 -0
  390. package/esm/tools/taskQueue.mjs +45 -0
  391. package/esm/tools/taskQueue.mjs.map +1 -0
  392. package/esm/tools/timer.mjs +20 -0
  393. package/esm/tools/timer.mjs.map +1 -0
  394. package/esm/tools/utils/arrayUtils.mjs +21 -0
  395. package/esm/tools/utils/arrayUtils.mjs.map +1 -0
  396. package/esm/tools/utils/browserDetection.mjs +31 -0
  397. package/esm/tools/utils/browserDetection.mjs.map +1 -0
  398. package/esm/tools/utils/byteUtils.mjs +23 -0
  399. package/esm/tools/utils/byteUtils.mjs.map +1 -0
  400. package/esm/tools/utils/functionUtils.mjs +35 -0
  401. package/esm/tools/utils/functionUtils.mjs.map +1 -0
  402. package/esm/tools/utils/numberUtils.mjs +22 -0
  403. package/esm/tools/utils/numberUtils.mjs.map +1 -0
  404. package/esm/tools/utils/objectUtils.mjs +31 -0
  405. package/esm/tools/utils/objectUtils.mjs.map +1 -0
  406. package/esm/tools/utils/polyfills.mjs +17 -0
  407. package/esm/tools/utils/polyfills.mjs.map +1 -0
  408. package/esm/tools/utils/responseUtils.mjs +15 -0
  409. package/esm/tools/utils/responseUtils.mjs.map +1 -0
  410. package/esm/tools/utils/stringUtils.mjs +66 -0
  411. package/esm/tools/utils/stringUtils.mjs.map +1 -0
  412. package/esm/tools/utils/timezone.mjs +12 -0
  413. package/esm/tools/utils/timezone.mjs.map +1 -0
  414. package/esm/tools/utils/urlPolyfill.mjs +51 -0
  415. package/esm/tools/utils/urlPolyfill.mjs.map +1 -0
  416. package/esm/tools/valueHistory.mjs +114 -0
  417. package/esm/tools/valueHistory.mjs.map +1 -0
  418. package/esm/transport/batch.mjs +77 -0
  419. package/esm/transport/batch.mjs.map +1 -0
  420. package/esm/transport/eventBridge.mjs +58 -0
  421. package/esm/transport/eventBridge.mjs.map +1 -0
  422. package/esm/transport/flushController.mjs +104 -0
  423. package/esm/transport/flushController.mjs.map +1 -0
  424. package/esm/transport/httpRequest.mjs +60 -0
  425. package/esm/transport/httpRequest.mjs.map +1 -0
  426. package/esm/transport/sendWithRetryStrategy.mjs +149 -0
  427. package/esm/transport/sendWithRetryStrategy.mjs.map +1 -0
  428. package/package.json +15 -4
  429. package/src/boot/init.ts +2 -2
  430. package/src/browser/addEventListener.ts +37 -5
  431. package/src/browser/browser.types.ts +127 -13
  432. package/src/browser/cookie.ts +21 -27
  433. package/src/browser/cookieAccess.ts +150 -0
  434. package/src/browser/fetch.ts +14 -0
  435. package/src/browser/fetchObservable.ts +22 -22
  436. package/src/browser/pageMayExitObservable.ts +7 -4
  437. package/src/browser/runOnReadyState.ts +3 -8
  438. package/src/browser/xhrObservable.ts +22 -12
  439. package/src/domain/allowedTrackingOrigins.ts +5 -5
  440. package/src/domain/bufferedData.ts +41 -14
  441. package/src/domain/configuration/configuration.ts +87 -72
  442. package/src/domain/configuration/endpointBuilder.ts +82 -52
  443. package/src/domain/configuration/index.ts +2 -2
  444. package/src/domain/connectivity/connectivity.ts +3 -15
  445. package/src/domain/console/consoleObservable.ts +3 -3
  446. package/src/domain/context/contextManager.ts +1 -1
  447. package/src/domain/context/contextUtils.ts +1 -1
  448. package/src/domain/context/defineContextMethod.ts +3 -3
  449. package/src/domain/context/storeContextManager.ts +9 -6
  450. package/src/domain/contexts/accountContext.ts +5 -5
  451. package/src/domain/contexts/globalContext.ts +4 -5
  452. package/src/domain/contexts/tabContext.ts +43 -0
  453. package/src/domain/contexts/telemetrySessionContext.ts +26 -0
  454. package/src/domain/contexts/userContext.ts +7 -11
  455. package/src/domain/error/error.ts +53 -23
  456. package/src/domain/error/error.types.ts +1 -1
  457. package/src/domain/error/trackRuntimeError.ts +11 -4
  458. package/src/domain/eventRateLimiter/createEventRateLimiter.ts +1 -1
  459. package/src/domain/intakeSites.ts +8 -3
  460. package/src/domain/report/reportObservable.ts +11 -7
  461. package/src/domain/sampler.ts +64 -0
  462. package/src/domain/session/sessionConstants.ts +2 -1
  463. package/src/domain/session/sessionManager.ts +281 -176
  464. package/src/domain/session/sessionState.ts +64 -8
  465. package/src/domain/session/sessionStore.ts +57 -223
  466. package/src/domain/session/storeStrategies/sessionInCookie.ts +121 -107
  467. package/src/domain/session/storeStrategies/sessionInLocalStorage.ts +33 -21
  468. package/src/domain/session/storeStrategies/sessionInMemory.ts +55 -0
  469. package/src/domain/session/storeStrategies/sessionStoreStrategy.ts +28 -6
  470. package/src/domain/synthetics/syntheticsWorkerValues.ts +44 -13
  471. package/src/domain/tags.ts +0 -16
  472. package/src/domain/telemetry/telemetry.ts +38 -34
  473. package/src/domain/telemetry/telemetryEvent.types.ts +116 -20
  474. package/src/domain/trackingConsent.ts +18 -3
  475. package/src/index.ts +51 -31
  476. package/src/tools/display.ts +2 -50
  477. package/src/tools/experimentalFeatures.ts +1 -4
  478. package/src/tools/getZoneJsOriginalValue.ts +3 -3
  479. package/src/tools/globalObject.ts +27 -41
  480. package/src/tools/instrumentMethod.ts +230 -20
  481. package/src/tools/matchOption.ts +3 -1
  482. package/src/tools/mockable.ts +32 -0
  483. package/src/tools/monitor.ts +14 -62
  484. package/src/tools/observable.ts +9 -1
  485. package/src/tools/queueMicrotask.ts +6 -1
  486. package/src/tools/readBytesFromStream.ts +3 -12
  487. package/src/tools/requestIdleCallback.ts +1 -1
  488. package/src/tools/serialisation/sanitize.ts +67 -65
  489. package/src/tools/serialisation/stringify.ts +18 -0
  490. package/src/tools/stackTrace/computeStackTrace.ts +15 -13
  491. package/src/tools/stackTrace/handlingStack.ts +14 -1
  492. package/src/tools/taskQueue.ts +5 -3
  493. package/src/tools/timer.ts +7 -6
  494. package/src/tools/utils/arrayUtils.ts +7 -0
  495. package/src/tools/utils/browserDetection.ts +8 -0
  496. package/src/tools/utils/byteUtils.ts +1 -5
  497. package/src/tools/utils/functionUtils.ts +2 -2
  498. package/src/tools/utils/objectUtils.ts +20 -0
  499. package/src/tools/utils/stringUtils.ts +4 -1
  500. package/src/tools/utils/urlPolyfill.ts +5 -4
  501. package/src/tools/valueHistory.ts +39 -6
  502. package/src/transport/batch.ts +9 -18
  503. package/src/transport/eventBridge.ts +23 -10
  504. package/src/transport/flushController.ts +17 -24
  505. package/src/transport/httpRequest.ts +4 -36
  506. package/src/transport/index.ts +1 -0
  507. package/src/transport/sendWithRetryStrategy.ts +1 -1
  508. package/cjs/browser/browser.types.js +0 -6
  509. package/cjs/browser/browser.types.js.map +0 -1
  510. package/cjs/domain/configuration/index.js +0 -16
  511. package/cjs/domain/configuration/index.js.map +0 -1
  512. package/cjs/domain/configuration/transportConfiguration.d.ts +0 -20
  513. package/cjs/domain/configuration/transportConfiguration.js +0 -54
  514. package/cjs/domain/configuration/transportConfiguration.js.map +0 -1
  515. package/cjs/domain/connectivity/index.js +0 -18
  516. package/cjs/domain/connectivity/index.js.map +0 -1
  517. package/cjs/domain/contexts/rumInternalContext.type.js +0 -3
  518. package/cjs/domain/contexts/rumInternalContext.type.js.map +0 -1
  519. package/cjs/domain/deflate/index.js +0 -18
  520. package/cjs/domain/deflate/index.js.map +0 -1
  521. package/cjs/domain/report/browser.types.js +0 -3
  522. package/cjs/domain/report/browser.types.js.map +0 -1
  523. package/cjs/domain/session/oldCookiesMigration.d.ts +0 -11
  524. package/cjs/domain/session/oldCookiesMigration.js +0 -40
  525. package/cjs/domain/session/oldCookiesMigration.js.map +0 -1
  526. package/cjs/domain/session/sessionStoreOperations.d.ts +0 -12
  527. package/cjs/domain/session/sessionStoreOperations.js +0 -119
  528. package/cjs/domain/session/sessionStoreOperations.js.map +0 -1
  529. package/cjs/domain/telemetry/index.js +0 -28
  530. package/cjs/domain/telemetry/index.js.map +0 -1
  531. package/cjs/domain/telemetry/telemetryEvent.types.js +0 -7
  532. package/cjs/domain/telemetry/telemetryEvent.types.js.map +0 -1
  533. package/cjs/index.js.map +0 -1
  534. package/cjs/tools/abstractHooks.d.ts +0 -24
  535. package/cjs/tools/abstractHooks.js +0 -41
  536. package/cjs/tools/abstractHooks.js.map +0 -1
  537. package/cjs/tools/boundedBuffer.d.ts +0 -16
  538. package/cjs/tools/boundedBuffer.js +0 -32
  539. package/cjs/tools/boundedBuffer.js.map +0 -1
  540. package/cjs/tools/mergeInto.d.ts +0 -25
  541. package/cjs/tools/mergeInto.js +0 -98
  542. package/cjs/tools/mergeInto.js.map +0 -1
  543. package/cjs/tools/serialisation/context.js +0 -3
  544. package/cjs/tools/serialisation/context.js.map +0 -1
  545. package/cjs/tools/utils/timeUtils.d.ts +0 -53
  546. package/cjs/tools/utils/timeUtils.js +0 -101
  547. package/cjs/tools/utils/timeUtils.js.map +0 -1
  548. package/cjs/tools/utils/typeUtils.d.ts +0 -4
  549. package/cjs/tools/utils/typeUtils.js +0 -16
  550. package/cjs/tools/utils/typeUtils.js.map +0 -1
  551. package/cjs/transport/index.js +0 -15
  552. package/cjs/transport/index.js.map +0 -1
  553. package/esm/boot/displayAlreadyInitializedError.d.ts +0 -2
  554. package/esm/boot/displayAlreadyInitializedError.js +0 -7
  555. package/esm/boot/displayAlreadyInitializedError.js.map +0 -1
  556. package/esm/boot/init.d.ts +0 -14
  557. package/esm/boot/init.js +0 -35
  558. package/esm/boot/init.js.map +0 -1
  559. package/esm/browser/addEventListener.d.ts +0 -87
  560. package/esm/browser/addEventListener.js +0 -51
  561. package/esm/browser/addEventListener.js.map +0 -1
  562. package/esm/browser/browser.types.d.ts +0 -51
  563. package/esm/browser/browser.types.js +0 -5
  564. package/esm/browser/browser.types.js.map +0 -1
  565. package/esm/browser/cookie.d.ts +0 -28
  566. package/esm/browser/cookie.js +0 -103
  567. package/esm/browser/cookie.js.map +0 -1
  568. package/esm/browser/fetchObservable.d.ts +0 -38
  569. package/esm/browser/fetchObservable.js +0 -99
  570. package/esm/browser/fetchObservable.js.map +0 -1
  571. package/esm/browser/pageMayExitObservable.d.ts +0 -14
  572. package/esm/browser/pageMayExitObservable.js +0 -40
  573. package/esm/browser/pageMayExitObservable.js.map +0 -1
  574. package/esm/browser/runOnReadyState.d.ts +0 -5
  575. package/esm/browser/runOnReadyState.js +0 -16
  576. package/esm/browser/runOnReadyState.js.map +0 -1
  577. package/esm/browser/xhrObservable.d.ts +0 -24
  578. package/esm/browser/xhrObservable.js +0 -83
  579. package/esm/browser/xhrObservable.js.map +0 -1
  580. package/esm/domain/allowedTrackingOrigins.d.ts +0 -4
  581. package/esm/domain/allowedTrackingOrigins.js +0 -21
  582. package/esm/domain/allowedTrackingOrigins.js.map +0 -1
  583. package/esm/domain/bufferedData.d.ts +0 -14
  584. package/esm/domain/bufferedData.js +0 -19
  585. package/esm/domain/bufferedData.js.map +0 -1
  586. package/esm/domain/configuration/configuration.d.ts +0 -312
  587. package/esm/domain/configuration/configuration.js +0 -132
  588. package/esm/domain/configuration/configuration.js.map +0 -1
  589. package/esm/domain/configuration/endpointBuilder.d.ts +0 -12
  590. package/esm/domain/configuration/endpointBuilder.js +0 -77
  591. package/esm/domain/configuration/endpointBuilder.js.map +0 -1
  592. package/esm/domain/configuration/index.d.ts +0 -5
  593. package/esm/domain/configuration/index.js +0 -4
  594. package/esm/domain/configuration/index.js.map +0 -1
  595. package/esm/domain/configuration/transportConfiguration.d.ts +0 -20
  596. package/esm/domain/configuration/transportConfiguration.js +0 -50
  597. package/esm/domain/configuration/transportConfiguration.js.map +0 -1
  598. package/esm/domain/connectivity/connectivity.d.ts +0 -14
  599. package/esm/domain/connectivity/connectivity.js +0 -11
  600. package/esm/domain/connectivity/connectivity.js.map +0 -1
  601. package/esm/domain/connectivity/index.d.ts +0 -1
  602. package/esm/domain/connectivity/index.js +0 -2
  603. package/esm/domain/connectivity/index.js.map +0 -1
  604. package/esm/domain/console/consoleObservable.d.ts +0 -21
  605. package/esm/domain/console/consoleObservable.js +0 -80
  606. package/esm/domain/console/consoleObservable.js.map +0 -1
  607. package/esm/domain/context/contextConstants.d.ts +0 -21
  608. package/esm/domain/context/contextConstants.js +0 -15
  609. package/esm/domain/context/contextConstants.js.map +0 -1
  610. package/esm/domain/context/contextManager.d.ts +0 -19
  611. package/esm/domain/context/contextManager.js +0 -57
  612. package/esm/domain/context/contextManager.js.map +0 -1
  613. package/esm/domain/context/contextUtils.d.ts +0 -5
  614. package/esm/domain/context/contextUtils.js +0 -13
  615. package/esm/domain/context/contextUtils.js.map +0 -1
  616. package/esm/domain/context/defineContextMethod.d.ts +0 -6
  617. package/esm/domain/context/defineContextMethod.js +0 -17
  618. package/esm/domain/context/defineContextMethod.js.map +0 -1
  619. package/esm/domain/context/storeContextManager.d.ts +0 -6
  620. package/esm/domain/context/storeContextManager.js +0 -35
  621. package/esm/domain/context/storeContextManager.js.map +0 -1
  622. package/esm/domain/contexts/accountContext.d.ts +0 -26
  623. package/esm/domain/contexts/accountContext.js +0 -29
  624. package/esm/domain/contexts/accountContext.js.map +0 -1
  625. package/esm/domain/contexts/globalContext.d.ts +0 -18
  626. package/esm/domain/contexts/globalContext.js +0 -17
  627. package/esm/domain/contexts/globalContext.js.map +0 -1
  628. package/esm/domain/contexts/rumInternalContext.type.d.ts +0 -14
  629. package/esm/domain/contexts/rumInternalContext.type.js +0 -2
  630. package/esm/domain/contexts/rumInternalContext.type.js.map +0 -1
  631. package/esm/domain/contexts/userContext.d.ts +0 -29
  632. package/esm/domain/contexts/userContext.js +0 -41
  633. package/esm/domain/contexts/userContext.js.map +0 -1
  634. package/esm/domain/deflate/deflate.types.d.ts +0 -40
  635. package/esm/domain/deflate/deflate.types.js +0 -2
  636. package/esm/domain/deflate/deflate.types.js.map +0 -1
  637. package/esm/domain/deflate/index.d.ts +0 -1
  638. package/esm/domain/deflate/index.js +0 -2
  639. package/esm/domain/deflate/index.js.map +0 -1
  640. package/esm/domain/error/error.d.ts +0 -23
  641. package/esm/domain/error/error.js +0 -65
  642. package/esm/domain/error/error.js.map +0 -1
  643. package/esm/domain/error/error.types.d.ts +0 -47
  644. package/esm/domain/error/error.types.js +0 -10
  645. package/esm/domain/error/error.types.js.map +0 -1
  646. package/esm/domain/error/trackRuntimeError.d.ts +0 -11
  647. package/esm/domain/error/trackRuntimeError.js +0 -43
  648. package/esm/domain/error/trackRuntimeError.js.map +0 -1
  649. package/esm/domain/eventRateLimiter/createEventRateLimiter.d.ts +0 -5
  650. package/esm/domain/eventRateLimiter/createEventRateLimiter.js +0 -38
  651. package/esm/domain/eventRateLimiter/createEventRateLimiter.js.map +0 -1
  652. package/esm/domain/extension/extensionUtils.d.ts +0 -10
  653. package/esm/domain/extension/extensionUtils.js +0 -25
  654. package/esm/domain/extension/extensionUtils.js.map +0 -1
  655. package/esm/domain/intakeSites.d.ts +0 -8
  656. package/esm/domain/intakeSites.js +0 -8
  657. package/esm/domain/intakeSites.js.map +0 -1
  658. package/esm/domain/report/browser.types.d.ts +0 -34
  659. package/esm/domain/report/browser.types.js +0 -2
  660. package/esm/domain/report/browser.types.js.map +0 -1
  661. package/esm/domain/report/reportObservable.d.ts +0 -14
  662. package/esm/domain/report/reportObservable.js +0 -95
  663. package/esm/domain/report/reportObservable.js.map +0 -1
  664. package/esm/domain/resourceUtils.d.ts +0 -18
  665. package/esm/domain/resourceUtils.js +0 -17
  666. package/esm/domain/resourceUtils.js.map +0 -1
  667. package/esm/domain/session/oldCookiesMigration.d.ts +0 -11
  668. package/esm/domain/session/oldCookiesMigration.js +0 -36
  669. package/esm/domain/session/oldCookiesMigration.js.map +0 -1
  670. package/esm/domain/session/sessionConstants.d.ts +0 -15
  671. package/esm/domain/session/sessionConstants.js +0 -13
  672. package/esm/domain/session/sessionConstants.js.map +0 -1
  673. package/esm/domain/session/sessionManager.d.ts +0 -28
  674. package/esm/domain/session/sessionManager.js +0 -196
  675. package/esm/domain/session/sessionManager.js.map +0 -1
  676. package/esm/domain/session/sessionState.d.ts +0 -16
  677. package/esm/domain/session/sessionState.js +0 -60
  678. package/esm/domain/session/sessionState.js.map +0 -1
  679. package/esm/domain/session/sessionStateValidation.d.ts +0 -3
  680. package/esm/domain/session/sessionStateValidation.js +0 -7
  681. package/esm/domain/session/sessionStateValidation.js.map +0 -1
  682. package/esm/domain/session/sessionStore.d.ts +0 -38
  683. package/esm/domain/session/sessionStore.js +0 -179
  684. package/esm/domain/session/sessionStore.js.map +0 -1
  685. package/esm/domain/session/sessionStoreOperations.d.ts +0 -12
  686. package/esm/domain/session/sessionStoreOperations.js +0 -114
  687. package/esm/domain/session/sessionStoreOperations.js.map +0 -1
  688. package/esm/domain/session/storeStrategies/sessionInCookie.d.ts +0 -12
  689. package/esm/domain/session/storeStrategies/sessionInCookie.js +0 -98
  690. package/esm/domain/session/storeStrategies/sessionInCookie.js.map +0 -1
  691. package/esm/domain/session/storeStrategies/sessionInLocalStorage.d.ts +0 -6
  692. package/esm/domain/session/storeStrategies/sessionInLocalStorage.js +0 -37
  693. package/esm/domain/session/storeStrategies/sessionInLocalStorage.js.map +0 -1
  694. package/esm/domain/session/storeStrategies/sessionStoreStrategy.d.ts +0 -16
  695. package/esm/domain/session/storeStrategies/sessionStoreStrategy.js +0 -2
  696. package/esm/domain/session/storeStrategies/sessionStoreStrategy.js.map +0 -1
  697. package/esm/domain/synthetics/syntheticsWorkerValues.d.ts +0 -12
  698. package/esm/domain/synthetics/syntheticsWorkerValues.js +0 -24
  699. package/esm/domain/synthetics/syntheticsWorkerValues.js.map +0 -1
  700. package/esm/domain/tags.d.ts +0 -6
  701. package/esm/domain/tags.js +0 -60
  702. package/esm/domain/tags.js.map +0 -1
  703. package/esm/domain/telemetry/index.d.ts +0 -4
  704. package/esm/domain/telemetry/index.js +0 -3
  705. package/esm/domain/telemetry/index.js.map +0 -1
  706. package/esm/domain/telemetry/rawTelemetryEvent.types.d.ts +0 -18
  707. package/esm/domain/telemetry/rawTelemetryEvent.types.js +0 -6
  708. package/esm/domain/telemetry/rawTelemetryEvent.types.js.map +0 -1
  709. package/esm/domain/telemetry/telemetry.d.ts +0 -56
  710. package/esm/domain/telemetry/telemetry.js +0 -228
  711. package/esm/domain/telemetry/telemetry.js.map +0 -1
  712. package/esm/domain/telemetry/telemetryEvent.types.d.ts +0 -866
  713. package/esm/domain/telemetry/telemetryEvent.types.js +0 -6
  714. package/esm/domain/telemetry/telemetryEvent.types.js.map +0 -1
  715. package/esm/domain/trackingConsent.d.ts +0 -13
  716. package/esm/domain/trackingConsent.js +0 -24
  717. package/esm/domain/trackingConsent.js.map +0 -1
  718. package/esm/index.d.ts +0 -100
  719. package/esm/index.js +0 -76
  720. package/esm/index.js.map +0 -1
  721. package/esm/tools/abstractHooks.d.ts +0 -24
  722. package/esm/tools/abstractHooks.js +0 -37
  723. package/esm/tools/abstractHooks.js.map +0 -1
  724. package/esm/tools/abstractLifeCycle.d.ts +0 -23
  725. package/esm/tools/abstractLifeCycle.js +0 -24
  726. package/esm/tools/abstractLifeCycle.js.map +0 -1
  727. package/esm/tools/boundedBuffer.d.ts +0 -16
  728. package/esm/tools/boundedBuffer.js +0 -29
  729. package/esm/tools/boundedBuffer.js.map +0 -1
  730. package/esm/tools/catchUserErrors.d.ts +0 -1
  731. package/esm/tools/catchUserErrors.js +0 -12
  732. package/esm/tools/catchUserErrors.js.map +0 -1
  733. package/esm/tools/display.d.ts +0 -38
  734. package/esm/tools/display.js +0 -41
  735. package/esm/tools/display.js.map +0 -1
  736. package/esm/tools/encoder.d.ts +0 -54
  737. package/esm/tools/encoder.js +0 -37
  738. package/esm/tools/encoder.js.map +0 -1
  739. package/esm/tools/experimentalFeatures.d.ts +0 -21
  740. package/esm/tools/experimentalFeatures.js +0 -42
  741. package/esm/tools/experimentalFeatures.js.map +0 -1
  742. package/esm/tools/getZoneJsOriginalValue.d.ts +0 -19
  743. package/esm/tools/getZoneJsOriginalValue.js +0 -26
  744. package/esm/tools/getZoneJsOriginalValue.js.map +0 -1
  745. package/esm/tools/globalObject.d.ts +0 -19
  746. package/esm/tools/globalObject.js +0 -40
  747. package/esm/tools/globalObject.js.map +0 -1
  748. package/esm/tools/instrumentMethod.d.ts +0 -75
  749. package/esm/tools/instrumentMethod.js +0 -114
  750. package/esm/tools/instrumentMethod.js.map +0 -1
  751. package/esm/tools/matchOption.d.ts +0 -8
  752. package/esm/tools/matchOption.js +0 -31
  753. package/esm/tools/matchOption.js.map +0 -1
  754. package/esm/tools/mergeInto.d.ts +0 -25
  755. package/esm/tools/mergeInto.js +0 -93
  756. package/esm/tools/mergeInto.js.map +0 -1
  757. package/esm/tools/monitor.d.ts +0 -9
  758. package/esm/tools/monitor.js +0 -52
  759. package/esm/tools/monitor.js.map +0 -1
  760. package/esm/tools/observable.d.ts +0 -30
  761. package/esm/tools/observable.js +0 -83
  762. package/esm/tools/observable.js.map +0 -1
  763. package/esm/tools/queueMicrotask.d.ts +0 -1
  764. package/esm/tools/queueMicrotask.js +0 -14
  765. package/esm/tools/queueMicrotask.js.map +0 -1
  766. package/esm/tools/readBytesFromStream.d.ts +0 -10
  767. package/esm/tools/readBytesFromStream.js +0 -25
  768. package/esm/tools/readBytesFromStream.js.map +0 -1
  769. package/esm/tools/requestIdleCallback.d.ts +0 -12
  770. package/esm/tools/requestIdleCallback.js +0 -30
  771. package/esm/tools/requestIdleCallback.js.map +0 -1
  772. package/esm/tools/sendToExtension.d.ts +0 -3
  773. package/esm/tools/sendToExtension.js +0 -8
  774. package/esm/tools/sendToExtension.js.map +0 -1
  775. package/esm/tools/serialisation/context.d.ts +0 -9
  776. package/esm/tools/serialisation/context.js +0 -2
  777. package/esm/tools/serialisation/context.js.map +0 -1
  778. package/esm/tools/serialisation/jsonStringify.d.ts +0 -13
  779. package/esm/tools/serialisation/jsonStringify.js +0 -44
  780. package/esm/tools/serialisation/jsonStringify.js.map +0 -1
  781. package/esm/tools/serialisation/sanitize.d.ts +0 -18
  782. package/esm/tools/serialisation/sanitize.js +0 -185
  783. package/esm/tools/serialisation/sanitize.js.map +0 -1
  784. package/esm/tools/stackTrace/computeStackTrace.d.ts +0 -25
  785. package/esm/tools/stackTrace/computeStackTrace.js +0 -183
  786. package/esm/tools/stackTrace/computeStackTrace.js.map +0 -1
  787. package/esm/tools/stackTrace/handlingStack.d.ts +0 -10
  788. package/esm/tools/stackTrace/handlingStack.js +0 -41
  789. package/esm/tools/stackTrace/handlingStack.js.map +0 -1
  790. package/esm/tools/taskQueue.d.ts +0 -15
  791. package/esm/tools/taskQueue.js +0 -50
  792. package/esm/tools/taskQueue.js.map +0 -1
  793. package/esm/tools/timer.d.ts +0 -5
  794. package/esm/tools/timer.js +0 -16
  795. package/esm/tools/timer.js.map +0 -1
  796. package/esm/tools/utils/arrayUtils.d.ts +0 -3
  797. package/esm/tools/utils/arrayUtils.js +0 -15
  798. package/esm/tools/utils/arrayUtils.js.map +0 -1
  799. package/esm/tools/utils/browserDetection.d.ts +0 -8
  800. package/esm/tools/utils/browserDetection.js +0 -28
  801. package/esm/tools/utils/browserDetection.js.map +0 -1
  802. package/esm/tools/utils/byteUtils.d.ts +0 -8
  803. package/esm/tools/utils/byteUtils.js +0 -29
  804. package/esm/tools/utils/byteUtils.js.map +0 -1
  805. package/esm/tools/utils/functionUtils.d.ts +0 -8
  806. package/esm/tools/utils/functionUtils.js +0 -39
  807. package/esm/tools/utils/functionUtils.js.map +0 -1
  808. package/esm/tools/utils/numberUtils.d.ts +0 -9
  809. package/esm/tools/utils/numberUtils.js +0 -18
  810. package/esm/tools/utils/numberUtils.js.map +0 -1
  811. package/esm/tools/utils/objectUtils.d.ts +0 -10
  812. package/esm/tools/utils/objectUtils.js +0 -17
  813. package/esm/tools/utils/objectUtils.js.map +0 -1
  814. package/esm/tools/utils/polyfills.d.ts +0 -7
  815. package/esm/tools/utils/polyfills.js +0 -18
  816. package/esm/tools/utils/polyfills.js.map +0 -1
  817. package/esm/tools/utils/responseUtils.d.ts +0 -2
  818. package/esm/tools/utils/responseUtils.js +0 -13
  819. package/esm/tools/utils/responseUtils.js.map +0 -1
  820. package/esm/tools/utils/stringUtils.d.ts +0 -23
  821. package/esm/tools/utils/stringUtils.js +0 -84
  822. package/esm/tools/utils/stringUtils.js.map +0 -1
  823. package/esm/tools/utils/timeUtils.d.ts +0 -53
  824. package/esm/tools/utils/timeUtils.js +0 -84
  825. package/esm/tools/utils/timeUtils.js.map +0 -1
  826. package/esm/tools/utils/timezone.d.ts +0 -1
  827. package/esm/tools/utils/timezone.js +0 -10
  828. package/esm/tools/utils/timezone.js.map +0 -1
  829. package/esm/tools/utils/typeUtils.d.ts +0 -4
  830. package/esm/tools/utils/typeUtils.js +0 -13
  831. package/esm/tools/utils/typeUtils.js.map +0 -1
  832. package/esm/tools/utils/urlPolyfill.d.ts +0 -5
  833. package/esm/tools/utils/urlPolyfill.js +0 -52
  834. package/esm/tools/utils/urlPolyfill.js.map +0 -1
  835. package/esm/tools/valueHistory.d.ts +0 -27
  836. package/esm/tools/valueHistory.js +0 -100
  837. package/esm/tools/valueHistory.js.map +0 -1
  838. package/esm/transport/batch.d.ts +0 -16
  839. package/esm/transport/batch.js +0 -106
  840. package/esm/transport/batch.js.map +0 -1
  841. package/esm/transport/eventBridge.d.ts +0 -21
  842. package/esm/transport/eventBridge.js +0 -41
  843. package/esm/transport/eventBridge.js.map +0 -1
  844. package/esm/transport/flushController.d.ts +0 -65
  845. package/esm/transport/flushController.js +0 -119
  846. package/esm/transport/flushController.js.map +0 -1
  847. package/esm/transport/httpRequest.d.ts +0 -56
  848. package/esm/transport/httpRequest.js +0 -89
  849. package/esm/transport/httpRequest.js.map +0 -1
  850. package/esm/transport/index.d.ts +0 -7
  851. package/esm/transport/index.js +0 -5
  852. package/esm/transport/index.js.map +0 -1
  853. package/esm/transport/sendWithRetryStrategy.d.ts +0 -41
  854. package/esm/transport/sendWithRetryStrategy.js +0 -158
  855. package/esm/transport/sendWithRetryStrategy.js.map +0 -1
  856. package/src/boot/displayAlreadyInitializedError.spec.ts +0 -18
  857. package/src/boot/init.spec.ts +0 -50
  858. package/src/browser/addEventListener.spec.ts +0 -141
  859. package/src/browser/cookie.spec.ts +0 -53
  860. package/src/browser/fetchObservable.spec.ts +0 -334
  861. package/src/browser/pageMayExitObservable.spec.ts +0 -56
  862. package/src/browser/xhrObservable.spec.ts +0 -405
  863. package/src/domain/allowedTrackingOrigins.spec.ts +0 -210
  864. package/src/domain/bufferedData.spec.ts +0 -34
  865. package/src/domain/configuration/configuration.spec.ts +0 -236
  866. package/src/domain/configuration/endpointBuilder.spec.ts +0 -173
  867. package/src/domain/configuration/transportConfiguration.spec.ts +0 -130
  868. package/src/domain/configuration/transportConfiguration.ts +0 -78
  869. package/src/domain/connectivity/connectivity.spec.ts +0 -50
  870. package/src/domain/console/consoleObservable.spec.ts +0 -151
  871. package/src/domain/context/contextManager.spec.ts +0 -152
  872. package/src/domain/context/contextUtils.spec.ts +0 -26
  873. package/src/domain/context/storeContextManager.spec.ts +0 -103
  874. package/src/domain/contexts/accountContext.spec.ts +0 -99
  875. package/src/domain/contexts/globalContext.spec.ts +0 -88
  876. package/src/domain/contexts/userContext.spec.ts +0 -156
  877. package/src/domain/error/error.spec.ts +0 -294
  878. package/src/domain/error/trackRuntimeError.spec.ts +0 -343
  879. package/src/domain/eventRateLimiter/createEventRateLimiter.spec.ts +0 -119
  880. package/src/domain/extension/extensionUtils.spec.ts +0 -47
  881. package/src/domain/report/reportObservable.spec.ts +0 -71
  882. package/src/domain/session/oldCookiesMigration.spec.ts +0 -76
  883. package/src/domain/session/oldCookiesMigration.ts +0 -42
  884. package/src/domain/session/sessionManager.spec.ts +0 -684
  885. package/src/domain/session/sessionState.spec.ts +0 -88
  886. package/src/domain/session/sessionStore.spec.ts +0 -647
  887. package/src/domain/session/sessionStoreOperations.spec.ts +0 -234
  888. package/src/domain/session/sessionStoreOperations.ts +0 -131
  889. package/src/domain/session/storeStrategies/sessionInCookie.spec.ts +0 -228
  890. package/src/domain/session/storeStrategies/sessionInLocalStorage.spec.ts +0 -75
  891. package/src/domain/synthetics/syntheticsWorkerValues.spec.ts +0 -82
  892. package/src/domain/tags.spec.ts +0 -74
  893. package/src/domain/telemetry/telemetry.spec.ts +0 -494
  894. package/src/domain/trackingConsent.spec.ts +0 -44
  895. package/src/tools/abstractHooks.spec.ts +0 -76
  896. package/src/tools/abstractHooks.ts +0 -72
  897. package/src/tools/abstractLifeCycle.spec.ts +0 -46
  898. package/src/tools/boundedBuffer.spec.ts +0 -40
  899. package/src/tools/boundedBuffer.ts +0 -45
  900. package/src/tools/catchUserErrors.spec.ts +0 -20
  901. package/src/tools/encoder.spec.ts +0 -112
  902. package/src/tools/experimentalFeatures.spec.ts +0 -60
  903. package/src/tools/getZoneJsOriginalValue.spec.ts +0 -36
  904. package/src/tools/instrumentMethod.spec.ts +0 -381
  905. package/src/tools/matchOption.spec.ts +0 -41
  906. package/src/tools/mergeInto.spec.ts +0 -198
  907. package/src/tools/mergeInto.ts +0 -177
  908. package/src/tools/monitor.spec.ts +0 -172
  909. package/src/tools/observable.spec.ts +0 -259
  910. package/src/tools/queueMicrotask.spec.ts +0 -24
  911. package/src/tools/readBytesFromStream.spec.ts +0 -62
  912. package/src/tools/requestIdleCallback.spec.ts +0 -65
  913. package/src/tools/serialisation/jsonStringify.spec.ts +0 -76
  914. package/src/tools/serialisation/sanitize.spec.ts +0 -284
  915. package/src/tools/stackTrace/capturedExceptions.specHelper.ts +0 -316
  916. package/src/tools/stackTrace/computeStackTrace.spec.ts +0 -1007
  917. package/src/tools/stackTrace/handlingStack.spec.ts +0 -20
  918. package/src/tools/taskQueue.spec.ts +0 -60
  919. package/src/tools/timer.spec.ts +0 -76
  920. package/src/tools/utils/browserDetection.spec.ts +0 -120
  921. package/src/tools/utils/byteUtils.spec.ts +0 -29
  922. package/src/tools/utils/functionUtils.spec.ts +0 -229
  923. package/src/tools/utils/numberUtils.spec.ts +0 -27
  924. package/src/tools/utils/stringUtils.spec.ts +0 -74
  925. package/src/tools/utils/timeUtils.ts +0 -117
  926. package/src/tools/utils/typeUtils.spec.ts +0 -25
  927. package/src/tools/utils/typeUtils.ts +0 -12
  928. package/src/tools/utils/urlPolyfill.spec.ts +0 -55
  929. package/src/tools/valueHistory.spec.ts +0 -180
  930. package/src/transport/batch.spec.ts +0 -261
  931. package/src/transport/eventBridge.spec.ts +0 -90
  932. package/src/transport/flushController.spec.ts +0 -267
  933. package/src/transport/httpRequest.spec.ts +0 -400
  934. package/src/transport/sendWithRetryStrategy.spec.ts +0 -393
@@ -1,15 +1,15 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.catchUserErrors = catchUserErrors;
4
- const display_1 = require("./display");
1
+ const require_display = require("./display.js");
2
+ //#region src/tools/catchUserErrors.ts
5
3
  function catchUserErrors(fn, errorMsg) {
6
- return (...args) => {
7
- try {
8
- return fn(...args);
9
- }
10
- catch (err) {
11
- display_1.display.error(errorMsg, err);
12
- }
13
- };
4
+ return (...args) => {
5
+ try {
6
+ return fn(...args);
7
+ } catch (err) {
8
+ require_display.display.error(errorMsg, err);
9
+ }
10
+ };
14
11
  }
12
+ //#endregion
13
+ exports.catchUserErrors = catchUserErrors;
14
+
15
15
  //# sourceMappingURL=catchUserErrors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"catchUserErrors.js","sourceRoot":"","sources":["../../src/tools/catchUserErrors.ts"],"names":[],"mappings":";;AAEA,0CAQC;AAVD,uCAAmC;AAEnC,SAAgB,eAAe,CAAwB,EAAwB,EAAE,QAAgB;IAC/F,OAAO,CAAC,GAAG,IAAU,EAAE,EAAE;QACvB,IAAI,CAAC;YACH,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,iBAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;QAC9B,CAAC;IACH,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"catchUserErrors.js","names":[],"sources":["../../src/tools/catchUserErrors.ts"],"sourcesContent":["import { display } from './display'\n\nexport function catchUserErrors<Args extends any[], R>(fn: (...args: Args) => R, errorMsg: string) {\n return (...args: Args) => {\n try {\n return fn(...args)\n } catch (err) {\n display.error(errorMsg, err)\n }\n }\n}\n"],"mappings":";;AAEA,SAAgB,gBAAuC,IAA0B,UAAkB;CACjG,QAAQ,GAAG,SAAe;EACxB,IAAI;GACF,OAAO,GAAG,GAAG,IAAI;EACnB,SAAS,KAAK;GACZ,gBAAA,QAAQ,MAAM,UAAU,GAAG;EAC7B;CACF;AACF"}
@@ -1,38 +1,4 @@
1
- /**
2
- * Keep references on console methods to avoid triggering patched behaviors
3
- *
4
- * NB: in some setup, console could already be patched by another SDK.
5
- * In this case, some display messages can be sent by the other SDK
6
- * but we should be safe from infinite loop nonetheless.
7
- */
8
- export declare const ConsoleApiName: {
9
- readonly log: "log";
10
- readonly debug: "debug";
11
- readonly info: "info";
12
- readonly warn: "warn";
13
- readonly error: "error";
14
- };
15
- export type ConsoleApiName = (typeof ConsoleApiName)[keyof typeof ConsoleApiName];
16
- interface Display {
17
- debug: typeof console.debug;
18
- log: typeof console.log;
19
- info: typeof console.info;
20
- warn: typeof console.warn;
21
- error: typeof console.error;
22
- }
23
- /**
24
- * When building JS bundles, some users might use a plugin[1] or configuration[2] to remove
25
- * "console.*" references. This causes some issue as we expect `console.*` to be defined.
26
- * As a workaround, let's use a variable alias, so those expressions won't be taken into account by
27
- * simple static analysis.
28
- *
29
- * [1]: https://babeljs.io/docs/babel-plugin-transform-remove-console/
30
- * [2]: https://github.com/terser/terser#compress-options (look for drop_console)
31
- */
32
- export declare const globalConsole: Console;
33
- export declare const originalConsoleMethods: Display;
34
- export declare const display: Display;
1
+ export declare const display: import("@openobserve/js-core/util").Display;
35
2
  export declare const DOCS_ORIGIN = "https://openobserve.ai";
36
3
  export declare const DOCS_TROUBLESHOOTING = "https://openobserve.ai/docs/user-guide/rum/";
37
4
  export declare const MORE_DETAILS = "More details:";
38
- export {};
@@ -1,44 +1,12 @@
1
- "use strict";
2
- /* eslint-disable local-rules/disallow-side-effects */
3
- /**
4
- * Keep references on console methods to avoid triggering patched behaviors
5
- *
6
- * NB: in some setup, console could already be patched by another SDK.
7
- * In this case, some display messages can be sent by the other SDK
8
- * but we should be safe from infinite loop nonetheless.
9
- */
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- exports.MORE_DETAILS = exports.DOCS_TROUBLESHOOTING = exports.DOCS_ORIGIN = exports.display = exports.originalConsoleMethods = exports.globalConsole = exports.ConsoleApiName = void 0;
12
- exports.ConsoleApiName = {
13
- log: 'log',
14
- debug: 'debug',
15
- info: 'info',
16
- warn: 'warn',
17
- error: 'error',
18
- };
19
- /**
20
- * When building JS bundles, some users might use a plugin[1] or configuration[2] to remove
21
- * "console.*" references. This causes some issue as we expect `console.*` to be defined.
22
- * As a workaround, let's use a variable alias, so those expressions won't be taken into account by
23
- * simple static analysis.
24
- *
25
- * [1]: https://babeljs.io/docs/babel-plugin-transform-remove-console/
26
- * [2]: https://github.com/terser/terser#compress-options (look for drop_console)
27
- */
28
- exports.globalConsole = console;
29
- exports.originalConsoleMethods = {};
30
- Object.keys(exports.ConsoleApiName).forEach((name) => {
31
- exports.originalConsoleMethods[name] = exports.globalConsole[name];
32
- });
33
- const PREFIX = 'Openobserve Browser SDK:';
34
- exports.display = {
35
- debug: exports.originalConsoleMethods.debug.bind(exports.globalConsole, PREFIX),
36
- log: exports.originalConsoleMethods.log.bind(exports.globalConsole, PREFIX),
37
- info: exports.originalConsoleMethods.info.bind(exports.globalConsole, PREFIX),
38
- warn: exports.originalConsoleMethods.warn.bind(exports.globalConsole, PREFIX),
39
- error: exports.originalConsoleMethods.error.bind(exports.globalConsole, PREFIX),
40
- };
41
- exports.DOCS_ORIGIN = 'https://openobserve.ai';
42
- exports.DOCS_TROUBLESHOOTING = `${exports.DOCS_ORIGIN}/docs/user-guide/rum/`;
43
- exports.MORE_DETAILS = 'More details:';
1
+ //#region src/tools/display.ts
2
+ const display = (0, require("@openobserve/js-core/util").createDisplay)("OpenObserve Browser SDK:");
3
+ const DOCS_ORIGIN = "https://openobserve.ai";
4
+ const DOCS_TROUBLESHOOTING = `${DOCS_ORIGIN}/docs/user-guide/rum/`;
5
+ const MORE_DETAILS = "More details:";
6
+ //#endregion
7
+ exports.DOCS_ORIGIN = DOCS_ORIGIN;
8
+ exports.DOCS_TROUBLESHOOTING = DOCS_TROUBLESHOOTING;
9
+ exports.MORE_DETAILS = MORE_DETAILS;
10
+ exports.display = display;
11
+
44
12
  //# sourceMappingURL=display.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"display.js","sourceRoot":"","sources":["../../src/tools/display.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD;;;;;;GAMG;;;AAEU,QAAA,cAAc,GAAG;IAC5B,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;CACN,CAAA;AAYV;;;;;;;;GAQG;AACU,QAAA,aAAa,GAAG,OAAO,CAAA;AAEvB,QAAA,sBAAsB,GAAG,EAAa,CAAA;AACnD,MAAM,CAAC,IAAI,CAAC,sBAAc,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;IAC3C,8BAAsB,CAAC,IAAsB,CAAC,GAAG,qBAAa,CAAC,IAAsB,CAAC,CAAA;AACxF,CAAC,CAAC,CAAA;AAEF,MAAM,MAAM,GAAG,0BAA0B,CAAA;AAE5B,QAAA,OAAO,GAAY;IAC9B,KAAK,EAAE,8BAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAa,EAAE,MAAM,CAAC;IAC/D,GAAG,EAAE,8BAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAa,EAAE,MAAM,CAAC;IAC3D,IAAI,EAAE,8BAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAa,EAAE,MAAM,CAAC;IAC7D,IAAI,EAAE,8BAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAa,EAAE,MAAM,CAAC;IAC7D,KAAK,EAAE,8BAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAa,EAAE,MAAM,CAAC;CAChE,CAAA;AAEY,QAAA,WAAW,GAAG,wBAAwB,CAAA;AACtC,QAAA,oBAAoB,GAAG,GAAG,mBAAW,uBAAuB,CAAA;AAC5D,QAAA,YAAY,GAAG,eAAe,CAAA"}
1
+ {"version":3,"file":"display.js","names":[],"sources":["../../src/tools/display.ts"],"sourcesContent":["/* eslint-disable local-rules/disallow-side-effects */\nimport { createDisplay } from '@openobserve/js-core/util'\n\nexport const display = createDisplay('OpenObserve Browser SDK:')\n\nexport const DOCS_ORIGIN = 'https://openobserve.ai'\nexport const DOCS_TROUBLESHOOTING = `${DOCS_ORIGIN}/docs/user-guide/rum/`\nexport const MORE_DETAILS = 'More details:'\n"],"mappings":";AAGA,MAAa,WAAA,sCAAA,CAAA,CAAA,cAAA,CAAwB,0BAA0B;AAE/D,MAAa,cAAc;AAC3B,MAAa,uBAAuB,GAAG,YAAY;AACnD,MAAa,eAAe"}
@@ -1,40 +1,39 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createIdentityEncoder = createIdentityEncoder;
4
- const byteUtils_1 = require("./utils/byteUtils");
1
+ const require_byteUtils = require("./utils/byteUtils.js");
2
+ //#region src/tools/encoder.ts
5
3
  function createIdentityEncoder() {
6
- let output = '';
7
- let outputBytesCount = 0;
8
- return {
9
- isAsync: false,
10
- get isEmpty() {
11
- return !output;
12
- },
13
- write(data, callback) {
14
- const additionalEncodedBytesCount = (0, byteUtils_1.computeBytesCount)(data);
15
- outputBytesCount += additionalEncodedBytesCount;
16
- output += data;
17
- if (callback) {
18
- callback(additionalEncodedBytesCount);
19
- }
20
- },
21
- finish(callback) {
22
- callback(this.finishSync());
23
- },
24
- finishSync() {
25
- const result = {
26
- output,
27
- outputBytesCount,
28
- rawBytesCount: outputBytesCount,
29
- pendingData: '',
30
- };
31
- output = '';
32
- outputBytesCount = 0;
33
- return result;
34
- },
35
- estimateEncodedBytesCount(data) {
36
- return data.length;
37
- },
38
- };
4
+ let output = "";
5
+ let outputBytesCount = 0;
6
+ return {
7
+ isAsync: false,
8
+ get isEmpty() {
9
+ return !output;
10
+ },
11
+ write(data, callback) {
12
+ const additionalEncodedBytesCount = require_byteUtils.computeBytesCount(data);
13
+ outputBytesCount += additionalEncodedBytesCount;
14
+ output += data;
15
+ if (callback) callback(additionalEncodedBytesCount);
16
+ },
17
+ finish(callback) {
18
+ callback(this.finishSync());
19
+ },
20
+ finishSync() {
21
+ const result = {
22
+ output,
23
+ outputBytesCount,
24
+ rawBytesCount: outputBytesCount,
25
+ pendingData: ""
26
+ };
27
+ output = "";
28
+ outputBytesCount = 0;
29
+ return result;
30
+ },
31
+ estimateEncodedBytesCount(data) {
32
+ return data.length;
33
+ }
34
+ };
39
35
  }
36
+ //#endregion
37
+ exports.createIdentityEncoder = createIdentityEncoder;
38
+
40
39
  //# sourceMappingURL=encoder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"encoder.js","sourceRoot":"","sources":["../../src/tools/encoder.ts"],"names":[],"mappings":";;AA8DA,sDAwCC;AArGD,iDAAqD;AA6DrD,SAAgB,qBAAqB;IACnC,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,IAAI,gBAAgB,GAAG,CAAC,CAAA;IAExB,OAAO;QACL,OAAO,EAAE,KAAK;QAEd,IAAI,OAAO;YACT,OAAO,CAAC,MAAM,CAAA;QAChB,CAAC;QAED,KAAK,CAAC,IAAI,EAAE,QAAQ;YAClB,MAAM,2BAA2B,GAAG,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAA;YAC3D,gBAAgB,IAAI,2BAA2B,CAAA;YAC/C,MAAM,IAAI,IAAI,CAAA;YACd,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,CAAC,2BAA2B,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;QAED,MAAM,CAAC,QAAQ;YACb,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;QAC7B,CAAC;QAED,UAAU;YACR,MAAM,MAAM,GAAG;gBACb,MAAM;gBACN,gBAAgB;gBAChB,aAAa,EAAE,gBAAgB;gBAC/B,WAAW,EAAE,EAAE;aAChB,CAAA;YACD,MAAM,GAAG,EAAE,CAAA;YACX,gBAAgB,GAAG,CAAC,CAAA;YACpB,OAAO,MAAM,CAAA;QACf,CAAC;QAED,yBAAyB,CAAC,IAAI;YAC5B,OAAO,IAAI,CAAC,MAAM,CAAA;QACpB,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"encoder.js","names":["computeBytesCount"],"sources":["../../src/tools/encoder.ts"],"sourcesContent":["import type { Uint8ArrayBuffer } from './utils/byteUtils'\nimport { computeBytesCount } from './utils/byteUtils'\n\nexport interface Encoder<Output extends string | Uint8ArrayBuffer = string | Uint8ArrayBuffer> {\n /**\n * Whether this encoder might call the provided callbacks asynchronously\n */\n isAsync: boolean\n\n /**\n * Whether some data has been written since the last finish() or finishSync() call\n */\n isEmpty: boolean\n\n /**\n * Write a string to be encoded.\n *\n * This operation can be synchronous or asynchronous depending on the encoder implementation.\n *\n * If specified, the callback will be invoked when the operation finishes, unless the operation is\n * asynchronous and finish() or finishSync() is called in the meantime.\n */\n write(data: string, callback?: (additionalEncodedBytesCount: number) => void): void\n\n /**\n * Waits for pending data to be encoded and resets the encoder state.\n *\n * This operation can be synchronous or asynchronous depending on the encoder implementation.\n *\n * The callback will be invoked when the operation finishes, unless the operation is asynchronous\n * and another call to finish() or finishSync() occurs in the meantime.\n */\n finish(callback: (result: EncoderResult<Output>) => void): void\n\n /**\n * Resets the encoder state then returns the encoded data and any potential pending data directly,\n * discarding all pending write operations and finish() callbacks.\n */\n finishSync(): EncoderResult<Output> & { pendingData: string }\n\n /**\n * Returns a rough estimation of the bytes count if the data was encoded.\n */\n estimateEncodedBytesCount(data: string): number\n}\n\nexport interface EncoderResult<Output extends string | Uint8ArrayBuffer = string | Uint8ArrayBuffer> {\n output: Output\n outputBytesCount: number\n\n /**\n * An encoding type supported by HTTP Content-Encoding, if applicable.\n * See https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Encoding#directives\n */\n encoding?: 'deflate'\n\n /**\n * Total bytes count of the input strings encoded to UTF-8.\n */\n rawBytesCount: number\n}\n\nexport function createIdentityEncoder(): Encoder<string> {\n let output = ''\n let outputBytesCount = 0\n\n return {\n isAsync: false,\n\n get isEmpty() {\n return !output\n },\n\n write(data, callback) {\n const additionalEncodedBytesCount = computeBytesCount(data)\n outputBytesCount += additionalEncodedBytesCount\n output += data\n if (callback) {\n callback(additionalEncodedBytesCount)\n }\n },\n\n finish(callback) {\n callback(this.finishSync())\n },\n\n finishSync() {\n const result = {\n output,\n outputBytesCount,\n rawBytesCount: outputBytesCount,\n pendingData: '',\n }\n output = ''\n outputBytesCount = 0\n return result\n },\n\n estimateEncodedBytesCount(data) {\n return data.length\n },\n }\n}\n"],"mappings":";;AA8DA,SAAgB,wBAAyC;CACvD,IAAI,SAAS;CACb,IAAI,mBAAmB;CAEvB,OAAO;EACL,SAAS;EAET,IAAI,UAAU;GACZ,OAAO,CAAC;EACV;EAEA,MAAM,MAAM,UAAU;GACpB,MAAM,8BAA8BA,kBAAAA,kBAAkB,IAAI;GAC1D,oBAAoB;GACpB,UAAU;GACV,IAAI,UACF,SAAS,2BAA2B;EAExC;EAEA,OAAO,UAAU;GACf,SAAS,KAAK,WAAW,CAAC;EAC5B;EAEA,aAAa;GACX,MAAM,SAAS;IACb;IACA;IACA,eAAe;IACf,aAAa;GACf;GACA,SAAS;GACT,mBAAmB;GACnB,OAAO;EACT;EAEA,0BAA0B,MAAM;GAC9B,OAAO,KAAK;EACd;CACF;AACF"}
@@ -9,10 +9,7 @@
9
9
  */
10
10
  export declare enum ExperimentalFeature {
11
11
  TRACK_INTAKE_REQUESTS = "track_intake_requests",
12
- USE_TREE_WALKER_FOR_ACTION_NAME = "use_tree_walker_for_action_name",
13
- FEATURE_OPERATION_VITAL = "feature_operation_vital",
14
- SHORT_SESSION_INVESTIGATION = "short_session_investigation",
15
- AVOID_FETCH_KEEPALIVE = "avoid_fetch_keepalive"
12
+ PARTIAL_VIEW_UPDATES = "partial_view_updates"
16
13
  }
17
14
  export declare function initFeatureFlags(enableExperimentalFeatures: string[] | undefined): void;
18
15
  export declare function addExperimentalFeatures(enabledFeatures: ExperimentalFeature[]): void;
@@ -1,50 +1,39 @@
1
- "use strict";
1
+ const require_objectUtils = require("./utils/objectUtils.js");
2
+ //#region src/tools/experimentalFeatures.ts
2
3
  /**
3
- * LIMITATION:
4
- * For NPM setup, this feature flag singleton is shared between RUM and Logs product.
5
- * This means that an experimental flag set on the RUM product will be set on the Logs product.
6
- * So keep in mind that in certain configurations, your experimental feature flag may affect other products.
7
- *
8
- * FORMAT:
9
- * All feature flags should be snake_cased
10
- */
11
- // We want to use a real enum (i.e. not a const enum) here, to be able to check whether an arbitrary
12
- // string is an expected feature flag
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.ExperimentalFeature = void 0;
15
- exports.initFeatureFlags = initFeatureFlags;
16
- exports.addExperimentalFeatures = addExperimentalFeatures;
17
- exports.isExperimentalFeatureEnabled = isExperimentalFeatureEnabled;
18
- exports.resetExperimentalFeatures = resetExperimentalFeatures;
19
- exports.getExperimentalFeatures = getExperimentalFeatures;
20
- const objectUtils_1 = require("./utils/objectUtils");
21
- // eslint-disable-next-line no-restricted-syntax
22
- var ExperimentalFeature;
23
- (function (ExperimentalFeature) {
24
- ExperimentalFeature["TRACK_INTAKE_REQUESTS"] = "track_intake_requests";
25
- ExperimentalFeature["USE_TREE_WALKER_FOR_ACTION_NAME"] = "use_tree_walker_for_action_name";
26
- ExperimentalFeature["FEATURE_OPERATION_VITAL"] = "feature_operation_vital";
27
- ExperimentalFeature["SHORT_SESSION_INVESTIGATION"] = "short_session_investigation";
28
- ExperimentalFeature["AVOID_FETCH_KEEPALIVE"] = "avoid_fetch_keepalive";
29
- })(ExperimentalFeature || (exports.ExperimentalFeature = ExperimentalFeature = {}));
30
- const enabledExperimentalFeatures = new Set();
4
+ * LIMITATION:
5
+ * For NPM setup, this feature flag singleton is shared between RUM and Logs product.
6
+ * This means that an experimental flag set on the RUM product will be set on the Logs product.
7
+ * So keep in mind that in certain configurations, your experimental feature flag may affect other products.
8
+ *
9
+ * FORMAT:
10
+ * All feature flags should be snake_cased
11
+ */
12
+ let ExperimentalFeature = /* @__PURE__ */ function(ExperimentalFeature) {
13
+ ExperimentalFeature["TRACK_INTAKE_REQUESTS"] = "track_intake_requests";
14
+ ExperimentalFeature["PARTIAL_VIEW_UPDATES"] = "partial_view_updates";
15
+ return ExperimentalFeature;
16
+ }({});
17
+ const enabledExperimentalFeatures = /* @__PURE__ */ new Set();
31
18
  function initFeatureFlags(enableExperimentalFeatures) {
32
- if (Array.isArray(enableExperimentalFeatures)) {
33
- addExperimentalFeatures(enableExperimentalFeatures.filter((flag) => (0, objectUtils_1.objectHasValue)(ExperimentalFeature, flag)));
34
- }
19
+ if (Array.isArray(enableExperimentalFeatures)) addExperimentalFeatures(enableExperimentalFeatures.filter((flag) => require_objectUtils.objectHasValue(ExperimentalFeature, flag)));
35
20
  }
36
21
  function addExperimentalFeatures(enabledFeatures) {
37
- enabledFeatures.forEach((flag) => {
38
- enabledExperimentalFeatures.add(flag);
39
- });
22
+ enabledFeatures.forEach((flag) => {
23
+ enabledExperimentalFeatures.add(flag);
24
+ });
40
25
  }
41
26
  function isExperimentalFeatureEnabled(featureName) {
42
- return enabledExperimentalFeatures.has(featureName);
43
- }
44
- function resetExperimentalFeatures() {
45
- enabledExperimentalFeatures.clear();
27
+ return enabledExperimentalFeatures.has(featureName);
46
28
  }
47
29
  function getExperimentalFeatures() {
48
- return enabledExperimentalFeatures;
30
+ return enabledExperimentalFeatures;
49
31
  }
32
+ //#endregion
33
+ exports.ExperimentalFeature = ExperimentalFeature;
34
+ exports.addExperimentalFeatures = addExperimentalFeatures;
35
+ exports.getExperimentalFeatures = getExperimentalFeatures;
36
+ exports.initFeatureFlags = initFeatureFlags;
37
+ exports.isExperimentalFeatureEnabled = isExperimentalFeatureEnabled;
38
+
50
39
  //# sourceMappingURL=experimentalFeatures.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"experimentalFeatures.js","sourceRoot":"","sources":["../../src/tools/experimentalFeatures.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;AACH,oGAAoG;AACpG,qCAAqC;;;AAerC,4CAQC;AAED,0DAIC;AAED,oEAEC;AAED,8DAEC;AAED,0DAEC;AAvCD,qDAAoD;AAEpD,gDAAgD;AAChD,IAAY,mBAMX;AAND,WAAY,mBAAmB;IAC7B,sEAA+C,CAAA;IAC/C,0FAAmE,CAAA;IACnE,0EAAmD,CAAA;IACnD,kFAA2D,CAAA;IAC3D,sEAA+C,CAAA;AACjD,CAAC,EANW,mBAAmB,mCAAnB,mBAAmB,QAM9B;AAED,MAAM,2BAA2B,GAA6B,IAAI,GAAG,EAAE,CAAA;AAEvE,SAAgB,gBAAgB,CAAC,0BAAgD;IAC/E,IAAI,KAAK,CAAC,OAAO,CAAC,0BAA0B,CAAC,EAAE,CAAC;QAC9C,uBAAuB,CACrB,0BAA0B,CAAC,MAAM,CAAC,CAAC,IAAI,EAA+B,EAAE,CACtE,IAAA,4BAAc,EAAC,mBAAmB,EAAE,IAAI,CAAC,CAC1C,CACF,CAAA;IACH,CAAC;AACH,CAAC;AAED,SAAgB,uBAAuB,CAAC,eAAsC;IAC5E,eAAe,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC/B,2BAA2B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAgB,4BAA4B,CAAC,WAAgC;IAC3E,OAAO,2BAA2B,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;AACrD,CAAC;AAED,SAAgB,yBAAyB;IACvC,2BAA2B,CAAC,KAAK,EAAE,CAAA;AACrC,CAAC;AAED,SAAgB,uBAAuB;IACrC,OAAO,2BAA2B,CAAA;AACpC,CAAC"}
1
+ {"version":3,"file":"experimentalFeatures.js","names":["objectHasValue"],"sources":["../../src/tools/experimentalFeatures.ts"],"sourcesContent":["/**\n * LIMITATION:\n * For NPM setup, this feature flag singleton is shared between RUM and Logs product.\n * This means that an experimental flag set on the RUM product will be set on the Logs product.\n * So keep in mind that in certain configurations, your experimental feature flag may affect other products.\n *\n * FORMAT:\n * All feature flags should be snake_cased\n */\n// We want to use a real enum (i.e. not a const enum) here, to be able to check whether an arbitrary\n// string is an expected feature flag\n\nimport { objectHasValue } from './utils/objectUtils'\n\n// eslint-disable-next-line no-restricted-syntax\nexport enum ExperimentalFeature {\n TRACK_INTAKE_REQUESTS = 'track_intake_requests',\n PARTIAL_VIEW_UPDATES = 'partial_view_updates',\n}\n\nconst enabledExperimentalFeatures: Set<ExperimentalFeature> = new Set()\n\nexport function initFeatureFlags(enableExperimentalFeatures: string[] | undefined) {\n if (Array.isArray(enableExperimentalFeatures)) {\n addExperimentalFeatures(\n enableExperimentalFeatures.filter((flag): flag is ExperimentalFeature =>\n objectHasValue(ExperimentalFeature, flag)\n )\n )\n }\n}\n\nexport function addExperimentalFeatures(enabledFeatures: ExperimentalFeature[]): void {\n enabledFeatures.forEach((flag) => {\n enabledExperimentalFeatures.add(flag)\n })\n}\n\nexport function isExperimentalFeatureEnabled(featureName: ExperimentalFeature): boolean {\n return enabledExperimentalFeatures.has(featureName)\n}\n\nexport function resetExperimentalFeatures(): void {\n enabledExperimentalFeatures.clear()\n}\n\nexport function getExperimentalFeatures(): Set<ExperimentalFeature> {\n return enabledExperimentalFeatures\n}\n"],"mappings":";;;;;;;;;;;AAeA,IAAY,sBAAL,yBAAA,qBAAA;CACL,oBAAA,2BAAA;CACA,oBAAA,0BAAA;;AACF,EAAA,CAAA,CAAA;AAEA,MAAM,8CAAwD,IAAI,IAAI;AAEtE,SAAgB,iBAAiB,4BAAkD;CACjF,IAAI,MAAM,QAAQ,0BAA0B,GAC1C,wBACE,2BAA2B,QAAQ,SACjCA,oBAAAA,eAAe,qBAAqB,IAAI,CAC1C,CACF;AAEJ;AAEA,SAAgB,wBAAwB,iBAA8C;CACpF,gBAAgB,SAAS,SAAS;EAChC,4BAA4B,IAAI,IAAI;CACtC,CAAC;AACH;AAEA,SAAgB,6BAA6B,aAA2C;CACtF,OAAO,4BAA4B,IAAI,WAAW;AACpD;AAMA,SAAgB,0BAAoD;CAClE,OAAO;AACT"}
@@ -1,4 +1,4 @@
1
- export interface BrowserWindowWithZoneJs extends Window {
1
+ export interface BrowserWindowWithZoneJs {
2
2
  Zone?: {
3
3
  __symbol__?: (name: string) => string;
4
4
  };
@@ -1,29 +1,26 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getZoneJsOriginalValue = getZoneJsOriginalValue;
4
- const globalObject_1 = require("./globalObject");
1
+ const require_globalObject = require("./globalObject.js");
2
+ //#region src/tools/getZoneJsOriginalValue.ts
5
3
  /**
6
- * Gets the original value for a DOM API that was potentially patched by Zone.js.
7
- *
8
- * Zone.js[1] is a library that patches a bunch of JS and DOM APIs. It usually stores the original
9
- * value of the patched functions/constructors/methods in a hidden property prefixed by
10
- * __zone_symbol__.
11
- *
12
- * In multiple occasions, we observed that Zone.js is the culprit of important issues leading to
13
- * browser resource exhaustion (memory leak, high CPU usage). This method is used as a workaround to
14
- * use the original DOM API instead of the one patched by Zone.js.
15
- *
16
- * [1]: https://github.com/angular/angular/tree/main/packages/zone.js
17
- */
4
+ * Gets the original value for a DOM API that was potentially patched by Zone.js.
5
+ *
6
+ * Zone.js[1] is a library that patches a bunch of JS and DOM APIs. It usually stores the original
7
+ * value of the patched functions/constructors/methods in a hidden property prefixed by
8
+ * __zone_symbol__.
9
+ *
10
+ * In multiple occasions, we observed that Zone.js is the culprit of important issues leading to
11
+ * browser resource exhaustion (memory leak, high CPU usage). This method is used as a workaround to
12
+ * use the original DOM API instead of the one patched by Zone.js.
13
+ *
14
+ * [1]: https://github.com/angular/angular/tree/main/packages/zone.js
15
+ */
18
16
  function getZoneJsOriginalValue(target, name) {
19
- const browserWindow = (0, globalObject_1.getGlobalObject)();
20
- let original;
21
- if (browserWindow.Zone && typeof browserWindow.Zone.__symbol__ === 'function') {
22
- original = target[browserWindow.Zone.__symbol__(name)];
23
- }
24
- if (!original) {
25
- original = target[name];
26
- }
27
- return original;
17
+ const browserWindow = require_globalObject.globalObject;
18
+ let original;
19
+ if (browserWindow.Zone && typeof browserWindow.Zone.__symbol__ === "function") original = target[browserWindow.Zone.__symbol__(name)];
20
+ if (!original) original = target[name];
21
+ return original;
28
22
  }
23
+ //#endregion
24
+ exports.getZoneJsOriginalValue = getZoneJsOriginalValue;
25
+
29
26
  //# sourceMappingURL=getZoneJsOriginalValue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getZoneJsOriginalValue.js","sourceRoot":"","sources":["../../src/tools/getZoneJsOriginalValue.ts"],"names":[],"mappings":";;AAwBA,wDAaC;AArCD,iDAAgD;AAWhD;;;;;;;;;;;;GAYG;AACH,SAAgB,sBAAsB,CACpC,MAAc,EACd,IAAU;IAEV,MAAM,aAAa,GAAG,IAAA,8BAAe,GAA2B,CAAA;IAChE,IAAI,QAAkC,CAAA;IACtC,IAAI,aAAa,CAAC,IAAI,IAAI,OAAO,aAAa,CAAC,IAAI,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QAC9E,QAAQ,GAAI,MAAc,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;IACjE,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IACzB,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC"}
1
+ {"version":3,"file":"getZoneJsOriginalValue.js","names":["globalObject"],"sources":["../../src/tools/getZoneJsOriginalValue.ts"],"sourcesContent":["import { globalObject } from './globalObject'\n\nexport interface BrowserWindowWithZoneJs {\n Zone?: {\n // All Zone.js versions expose the __symbol__ method, but we observed that some website have a\n // 'Zone' global variable unrelated to Zone.js, so let's consider this method optional\n // nonetheless.\n __symbol__?: (name: string) => string\n }\n}\n\n/**\n * Gets the original value for a DOM API that was potentially patched by Zone.js.\n *\n * Zone.js[1] is a library that patches a bunch of JS and DOM APIs. It usually stores the original\n * value of the patched functions/constructors/methods in a hidden property prefixed by\n * __zone_symbol__.\n *\n * In multiple occasions, we observed that Zone.js is the culprit of important issues leading to\n * browser resource exhaustion (memory leak, high CPU usage). This method is used as a workaround to\n * use the original DOM API instead of the one patched by Zone.js.\n *\n * [1]: https://github.com/angular/angular/tree/main/packages/zone.js\n */\nexport function getZoneJsOriginalValue<Target, Name extends keyof Target & string>(\n target: Target,\n name: Name\n): Target[Name] {\n const browserWindow = globalObject as BrowserWindowWithZoneJs\n let original: Target[Name] | undefined\n if (browserWindow.Zone && typeof browserWindow.Zone.__symbol__ === 'function') {\n original = (target as any)[browserWindow.Zone.__symbol__(name)]\n }\n if (!original) {\n original = target[name]\n }\n return original\n}\n"],"mappings":";;;;;;;;;;;;;;;AAwBA,SAAgB,uBACd,QACA,MACc;CACd,MAAM,gBAAgBA,qBAAAA;CACtB,IAAI;CACJ,IAAI,cAAc,QAAQ,OAAO,cAAc,KAAK,eAAe,YACjE,WAAY,OAAe,cAAc,KAAK,WAAW,IAAI;CAE/D,IAAI,CAAC,UACH,WAAW,OAAO;CAEpB,OAAO;AACT"}
@@ -1,19 +1,20 @@
1
+ import type { BrowserNavigator, CookieStore, ProfilerConstructor } from '../browser/browser.types';
1
2
  /**
2
- * inspired by https://mathiasbynens.be/notes/globalthis
3
+ * Reflects values available in the global object (e.g. window or self). We use our own type to
4
+ * adjust the expectations across the codebase when the native types offered by TypeScript aren't
5
+ * sufficient.
6
+ *
7
+ * For example, we can mark a property as optional when it is not available in all browsers, or add
8
+ * new browser APIs that are not yet typed properly in the typescript lib.
9
+ *
10
+ * Feel free to add more properties as needed, or mark some properties as optional when they are.
3
11
  */
4
- interface WorkerGlobalScope {
5
- empty: never;
12
+ export interface GlobalObject extends Omit<typeof globalThis, 'queueMicrotask' | 'cookieStore' | 'Profiler' | 'window'> {
13
+ navigator: BrowserNavigator;
14
+ cookieStore?: CookieStore;
15
+ queueMicrotask?: typeof queueMicrotask;
16
+ Profiler?: ProfilerConstructor;
17
+ window?: Window;
6
18
  }
7
- type Without<T, U> = {
8
- [P in Exclude<keyof T, keyof U>]?: never;
9
- };
10
- type XOR<T, U> = T | U extends object ? (Without<T, U> & U) | (Without<U, T> & T) : T | U;
11
- export type GlobalObject = XOR<Window, WorkerGlobalScope>;
12
- export declare function getGlobalObject<T = typeof globalThis>(): T;
13
- /**
14
- * Cached reference to the global object so it can be imported and re-used without
15
- * re-evaluating the heavyweight fallback logic in `getGlobalObject()`.
16
- */
17
- export declare const globalObject: (Without<Window, WorkerGlobalScope> & WorkerGlobalScope) | (Without<WorkerGlobalScope, Window> & Window);
19
+ export declare const globalObject: GlobalObject;
18
20
  export declare const isWorkerEnvironment: boolean;
19
- export {};
@@ -1,44 +1,8 @@
1
- "use strict";
2
- /**
3
- * inspired by https://mathiasbynens.be/notes/globalthis
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.isWorkerEnvironment = exports.globalObject = void 0;
7
- exports.getGlobalObject = getGlobalObject;
8
- function getGlobalObject() {
9
- if (typeof globalThis === 'object') {
10
- return globalThis;
11
- }
12
- Object.defineProperty(Object.prototype, '_oo_temp_', {
13
- get() {
14
- return this;
15
- },
16
- configurable: true,
17
- });
18
- // @ts-ignore _oo_temp is defined using defineProperty
19
- let globalObject = _oo_temp_;
20
- // @ts-ignore _oo_temp is defined using defineProperty
21
- delete Object.prototype._oo_temp_;
22
- if (typeof globalObject !== 'object') {
23
- // on safari _oo_temp_ is available on window but not globally
24
- // fallback on other browser globals check
25
- if (typeof self === 'object') {
26
- globalObject = self;
27
- }
28
- else if (typeof window === 'object') {
29
- globalObject = window;
30
- }
31
- else {
32
- globalObject = {};
33
- }
34
- }
35
- return globalObject;
36
- }
37
- /**
38
- * Cached reference to the global object so it can be imported and re-used without
39
- * re-evaluating the heavyweight fallback logic in `getGlobalObject()`.
40
- */
41
- // eslint-disable-next-line local-rules/disallow-side-effects
42
- exports.globalObject = getGlobalObject();
43
- exports.isWorkerEnvironment = 'WorkerGlobalScope' in exports.globalObject;
1
+ //#region src/tools/globalObject.ts
2
+ const globalObject = globalThis;
3
+ const isWorkerEnvironment = "WorkerGlobalScope" in globalObject;
4
+ //#endregion
5
+ exports.globalObject = globalObject;
6
+ exports.isWorkerEnvironment = isWorkerEnvironment;
7
+
44
8
  //# sourceMappingURL=globalObject.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"globalObject.js","sourceRoot":"","sources":["../../src/tools/globalObject.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAaH,0CA0BC;AA1BD,SAAgB,eAAe;IAC7B,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QACnC,OAAO,UAA0B,CAAA;IACnC,CAAC;IACD,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE;QACnD,GAAG;YACD,OAAO,IAAc,CAAA;QACvB,CAAC;QACD,YAAY,EAAE,IAAI;KACnB,CAAC,CAAA;IACF,sDAAsD;IACtD,IAAI,YAAY,GAAY,SAAS,CAAA;IACrC,sDAAsD;IACtD,OAAO,MAAM,CAAC,SAAS,CAAC,SAAS,CAAA;IACjC,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;QACrC,8DAA8D;QAC9D,0CAA0C;QAC1C,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,YAAY,GAAG,IAAI,CAAA;QACrB,CAAC;aAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACtC,YAAY,GAAG,MAAM,CAAA;QACvB,CAAC;aAAM,CAAC;YACN,YAAY,GAAG,EAAE,CAAA;QACnB,CAAC;IACH,CAAC;IACD,OAAO,YAAiB,CAAA;AAC1B,CAAC;AAED;;;GAGG;AACH,6DAA6D;AAChD,QAAA,YAAY,GAAG,eAAe,EAAgB,CAAA;AAE9C,QAAA,mBAAmB,GAAG,mBAAmB,IAAI,oBAAY,CAAA"}
1
+ {"version":3,"file":"globalObject.js","names":[],"sources":["../../src/tools/globalObject.ts"],"sourcesContent":["// eslint-disable-next-line no-restricted-imports\nimport type { BrowserNavigator, CookieStore, ProfilerConstructor } from '../browser/browser.types'\n\n/**\n * Reflects values available in the global object (e.g. window or self). We use our own type to\n * adjust the expectations across the codebase when the native types offered by TypeScript aren't\n * sufficient.\n *\n * For example, we can mark a property as optional when it is not available in all browsers, or add\n * new browser APIs that are not yet typed properly in the typescript lib.\n *\n * Feel free to add more properties as needed, or mark some properties as optional when they are.\n */\nexport interface GlobalObject extends Omit<\n // eslint-disable-next-line no-restricted-syntax\n typeof globalThis,\n 'queueMicrotask' | 'cookieStore' | 'Profiler' | 'window'\n> {\n navigator: BrowserNavigator\n\n // cookieStore is not available in all browsers yet\n cookieStore?: CookieStore\n\n // queueMicrotask is not available in all browsers yet\n queueMicrotask?: typeof queueMicrotask\n\n // Profiler is not available in all browsers yet\n Profiler?: ProfilerConstructor\n\n // window is not available in SSR environments\n window?: Window\n}\n\n// eslint-disable-next-line no-restricted-syntax\nexport const globalObject = globalThis as GlobalObject\n\nexport const isWorkerEnvironment = 'WorkerGlobalScope' in globalObject\n"],"mappings":";AAkCA,MAAa,eAAe;AAE5B,MAAa,sBAAsB,uBAAuB"}
@@ -29,6 +29,29 @@ export interface InstrumentedMethodCall<TARGET extends {
29
29
  type PostCallCallback<TARGET extends {
30
30
  [key: string]: any;
31
31
  }, METHOD extends keyof TARGET> = (result: ReturnType<TARGET[METHOD]>) => void;
32
+ type ConstructorParametersOf<CONSTRUCTOR> = CONSTRUCTOR extends new (...args: infer P) => any ? P : never;
33
+ type ConstructorInstanceOf<CONSTRUCTOR> = CONSTRUCTOR extends new (...args: any[]) => infer R ? R : never;
34
+ /**
35
+ * Object passed to the callback of an instrumented constructor call. See `instrumentConstructor`
36
+ * for more info.
37
+ */
38
+ export interface InstrumentedConstructorCall<CONSTRUCTOR> {
39
+ /**
40
+ * The parameters with which the constructor was called.
41
+ *
42
+ * Note: if needed, parameters can be mutated by the instrumentation
43
+ */
44
+ parameters: ConstructorParametersOf<CONSTRUCTOR>;
45
+ /**
46
+ * Registers a callback that will be called after the original constructor is called, with the
47
+ * constructed instance passed as argument.
48
+ */
49
+ onPostCall: (callback: (result: ConstructorInstanceOf<CONSTRUCTOR>) => void) => void;
50
+ /**
51
+ * The stack trace of the constructor call.
52
+ */
53
+ handlingStack?: string;
54
+ }
32
55
  /**
33
56
  * Instruments a method on a object, calling the given callback before the original method is
34
57
  * invoked. The callback receives an object with information about the method call.
@@ -50,6 +73,8 @@ type PostCallCallback<TARGET extends {
50
73
  * * if the event handler is set by a third party after us, we need to keep it in place when
51
74
  * removing ours.
52
75
  *
76
+ * To instrument a constructor @see {@link instrumentConstructor}.
77
+ *
53
78
  * @example
54
79
  *
55
80
  * instrumentMethod(window, 'fetch', ({ target, parameters, onPostCall }) => {
@@ -62,7 +87,39 @@ type PostCallCallback<TARGET extends {
62
87
  */
63
88
  export declare function instrumentMethod<TARGET extends {
64
89
  [key: string]: any;
65
- }, METHOD extends keyof TARGET & string>(targetPrototype: TARGET, method: METHOD, onPreCall: (this: null, callInfos: InstrumentedMethodCall<TARGET, METHOD>) => void, { computeHandlingStack }?: {
90
+ }, METHOD extends keyof TARGET>(targetPrototype: TARGET, method: METHOD, onPreCall: (this: null, callInfos: InstrumentedMethodCall<TARGET, METHOD>) => void, { computeHandlingStack }?: {
91
+ computeHandlingStack?: boolean;
92
+ }): {
93
+ stop: typeof noop;
94
+ };
95
+ /**
96
+ * Instruments a constructor on an object (typically a global, e.g. `window.WebSocket`), calling the
97
+ * given callback before the original constructor is invoked. The callback receives an object with
98
+ * information about the constructor call, and can register an `onPostCall` callback to be notified
99
+ * with the constructed instance.
100
+ *
101
+ * Like `instrumentMethod`, this is a "good citizen" regarding third party instrumentations: stopping
102
+ * restores the original constructor unless a third party replaced it afterwards.
103
+ *
104
+ * The wrapper preserves the original prototype (so `instanceof` keeps working), the original
105
+ * `new.target` (so constructors that inspect it behave as if not instrumented), the original
106
+ * static members (e.g. `WebSocket.OPEN`), and `instance.constructor ===` so checks like
107
+ * `new WebSocket(url).constructor === WebSocket` stay true.
108
+ *
109
+ * @see {@link preserveConstructorShape} for limitations on static members preservation.
110
+ * @example
111
+ *
112
+ * instrumentConstructor(window, 'WebSocket', ({ parameters, onPostCall }) => {
113
+ * console.log('Before constructing WebSocket with parameters', parameters)
114
+ *
115
+ * onPostCall((instance) => {
116
+ * console.log('Constructed WebSocket instance', instance)
117
+ * })
118
+ * })
119
+ */
120
+ export declare function instrumentConstructor<CONTAINER extends {
121
+ [key: string]: any;
122
+ }, CONSTRUCTOR extends keyof CONTAINER>(container: CONTAINER, constructor: CONSTRUCTOR, onPreCall: (this: null, callInfos: InstrumentedConstructorCall<CONTAINER[CONSTRUCTOR]>) => void, { computeHandlingStack }?: {
66
123
  computeHandlingStack?: boolean;
67
124
  }): {
68
125
  stop: typeof noop;