@openobserve/browser-core 0.2.11-rc1 → 0.2.11

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 (393) hide show
  1. package/cjs/boot/init.js +1 -1
  2. package/cjs/boot/init.js.map +1 -1
  3. package/cjs/browser/addEventListener.d.ts +4 -12
  4. package/cjs/browser/addEventListener.js +8 -50
  5. package/cjs/browser/addEventListener.js.map +1 -1
  6. package/cjs/browser/cookie.d.ts +0 -7
  7. package/cjs/browser/cookie.js +2 -19
  8. package/cjs/browser/cookie.js.map +1 -1
  9. package/cjs/browser/fetchObservable.js +19 -14
  10. package/cjs/browser/fetchObservable.js.map +1 -1
  11. package/cjs/browser/pageExitObservable.js +7 -6
  12. package/cjs/browser/pageExitObservable.js.map +1 -1
  13. package/cjs/browser/runOnReadyState.js +1 -1
  14. package/cjs/browser/runOnReadyState.js.map +1 -1
  15. package/cjs/browser/xhrObservable.d.ts +2 -1
  16. package/cjs/browser/xhrObservable.js +34 -26
  17. package/cjs/browser/xhrObservable.js.map +1 -1
  18. package/cjs/domain/configuration/configuration.d.ts +12 -17
  19. package/cjs/domain/configuration/configuration.js +9 -8
  20. package/cjs/domain/configuration/configuration.js.map +1 -1
  21. package/cjs/domain/configuration/endpointBuilder.d.ts +10 -6
  22. package/cjs/domain/configuration/endpointBuilder.js +33 -23
  23. package/cjs/domain/configuration/endpointBuilder.js.map +1 -1
  24. package/cjs/domain/configuration/index.d.ts +1 -2
  25. package/cjs/domain/configuration/index.js +1 -3
  26. package/cjs/domain/configuration/index.js.map +1 -1
  27. package/cjs/domain/configuration/tags.js.map +1 -1
  28. package/cjs/domain/configuration/transportConfiguration.js +1 -1
  29. package/cjs/domain/configuration/transportConfiguration.js.map +1 -1
  30. package/cjs/domain/console/consoleObservable.js +7 -4
  31. package/cjs/domain/console/consoleObservable.js.map +1 -1
  32. package/cjs/domain/deflate/index.d.ts +1 -0
  33. package/cjs/domain/{connectivity → deflate}/index.js +1 -1
  34. package/cjs/domain/deflate/index.js.map +1 -0
  35. package/cjs/domain/deflate/types.d.ts +26 -0
  36. package/cjs/domain/error/error.d.ts +1 -1
  37. package/cjs/domain/error/error.js +3 -3
  38. package/cjs/domain/error/error.js.map +1 -1
  39. package/cjs/domain/error/error.types.d.ts +2 -2
  40. package/cjs/domain/error/error.types.js.map +1 -1
  41. package/cjs/domain/error/trackRuntimeError.d.ts +0 -8
  42. package/cjs/domain/error/trackRuntimeError.js +6 -39
  43. package/cjs/domain/error/trackRuntimeError.js.map +1 -1
  44. package/cjs/domain/eventRateLimiter/createEventRateLimiter.js.map +1 -1
  45. package/cjs/domain/report/browser.types.d.ts +0 -10
  46. package/cjs/domain/report/reportObservable.d.ts +0 -2
  47. package/cjs/domain/report/reportObservable.js +7 -7
  48. package/cjs/domain/report/reportObservable.js.map +1 -1
  49. package/cjs/domain/session/oldCookiesMigration.js +4 -4
  50. package/cjs/domain/session/oldCookiesMigration.js.map +1 -1
  51. package/cjs/domain/session/sessionManager.js +2 -2
  52. package/cjs/domain/session/sessionManager.js.map +1 -1
  53. package/cjs/domain/session/sessionState.js.map +1 -1
  54. package/cjs/domain/session/sessionStore.js.map +1 -1
  55. package/cjs/domain/session/sessionStoreOperations.d.ts +5 -0
  56. package/cjs/domain/session/sessionStoreOperations.js +14 -6
  57. package/cjs/domain/session/sessionStoreOperations.js.map +1 -1
  58. package/cjs/domain/session/storeStrategies/sessionInCookie.js +2 -13
  59. package/cjs/domain/session/storeStrategies/sessionInCookie.js.map +1 -1
  60. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js +0 -1
  61. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js.map +1 -1
  62. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.d.ts +0 -1
  63. package/cjs/domain/synthetics/syntheticsWorkerValues.js +3 -3
  64. package/cjs/domain/synthetics/syntheticsWorkerValues.js.map +1 -1
  65. package/cjs/domain/telemetry/rawTelemetryEvent.types.d.ts +0 -4
  66. package/cjs/domain/telemetry/telemetry.d.ts +1 -5
  67. package/cjs/domain/telemetry/telemetry.js +6 -17
  68. package/cjs/domain/telemetry/telemetry.js.map +1 -1
  69. package/cjs/domain/telemetry/telemetryEvent.types.d.ts +2 -18
  70. package/cjs/domain/tracekit/computeStackTrace.d.ts +5 -0
  71. package/cjs/domain/{error → tracekit}/computeStackTrace.js +4 -28
  72. package/cjs/domain/tracekit/computeStackTrace.js.map +1 -0
  73. package/cjs/domain/tracekit/index.d.ts +3 -0
  74. package/cjs/domain/tracekit/index.js +8 -0
  75. package/cjs/domain/tracekit/index.js.map +1 -0
  76. package/cjs/domain/tracekit/tracekit.d.ts +35 -0
  77. package/cjs/domain/tracekit/tracekit.js +95 -0
  78. package/cjs/domain/tracekit/tracekit.js.map +1 -0
  79. package/cjs/domain/tracekit/types.d.ts +44 -0
  80. package/cjs/domain/{context/contextConstants.js → tracekit/types.js} +1 -1
  81. package/cjs/domain/tracekit/types.js.map +1 -0
  82. package/cjs/domain/user/user.js.map +1 -1
  83. package/cjs/index.d.ts +63 -0
  84. package/cjs/index.js +155 -0
  85. package/cjs/index.js.map +1 -0
  86. package/cjs/tools/abstractLifeCycle.js.map +1 -1
  87. package/cjs/tools/boundedBuffer.js.map +1 -1
  88. package/cjs/tools/catchUserErrors.js.map +1 -1
  89. package/cjs/tools/display.d.ts +2 -2
  90. package/cjs/tools/display.js +17 -13
  91. package/cjs/tools/display.js.map +1 -1
  92. package/cjs/tools/experimentalFeatures.d.ts +5 -3
  93. package/cjs/tools/experimentalFeatures.js +4 -2
  94. package/cjs/tools/experimentalFeatures.js.map +1 -1
  95. package/cjs/tools/getGlobalObject.js.map +1 -1
  96. package/cjs/tools/getZoneJsOriginalValue.js.map +1 -1
  97. package/cjs/tools/instrumentMethod.d.ts +10 -50
  98. package/cjs/tools/instrumentMethod.js +36 -59
  99. package/cjs/tools/instrumentMethod.js.map +1 -1
  100. package/cjs/tools/matchOption.js.map +1 -1
  101. package/cjs/tools/mergeInto.js.map +1 -1
  102. package/cjs/tools/monitor.d.ts +2 -1
  103. package/cjs/tools/monitor.js +6 -6
  104. package/cjs/tools/monitor.js.map +1 -1
  105. package/cjs/tools/observable.d.ts +1 -1
  106. package/cjs/tools/observable.js +3 -2
  107. package/cjs/tools/observable.js.map +1 -1
  108. package/cjs/tools/readBytesFromStream.js.map +1 -1
  109. package/cjs/tools/sendToExtension.js.map +1 -1
  110. package/cjs/tools/serialisation/contextManager.d.ts +21 -0
  111. package/cjs/tools/serialisation/contextManager.js +70 -0
  112. package/cjs/tools/serialisation/contextManager.js.map +1 -0
  113. package/cjs/tools/serialisation/heavyCustomerDataWarning.d.ts +8 -0
  114. package/cjs/tools/serialisation/heavyCustomerDataWarning.js +18 -0
  115. package/cjs/tools/serialisation/heavyCustomerDataWarning.js.map +1 -0
  116. package/cjs/tools/serialisation/jsonStringify.d.ts +2 -1
  117. package/cjs/tools/serialisation/jsonStringify.js.map +1 -1
  118. package/cjs/tools/serialisation/sanitize.js.map +1 -1
  119. package/cjs/tools/utils/browserDetection.d.ts +0 -8
  120. package/cjs/tools/utils/browserDetection.js +3 -33
  121. package/cjs/tools/utils/browserDetection.js.map +1 -1
  122. package/cjs/tools/utils/byteUtils.js.map +1 -1
  123. package/cjs/tools/utils/functionUtils.js.map +1 -1
  124. package/cjs/tools/utils/objectUtils.js.map +1 -1
  125. package/cjs/tools/utils/polyfills.js.map +1 -1
  126. package/cjs/tools/utils/responseUtils.js.map +1 -1
  127. package/cjs/tools/utils/stringUtils.d.ts +0 -1
  128. package/cjs/tools/utils/stringUtils.js +4 -31
  129. package/cjs/tools/utils/stringUtils.js.map +1 -1
  130. package/cjs/tools/utils/timeUtils.js.map +1 -1
  131. package/cjs/tools/utils/typeUtils.js.map +1 -1
  132. package/cjs/tools/utils/urlPolyfill.js.map +1 -1
  133. package/cjs/tools/valueHistory.js.map +1 -1
  134. package/cjs/transport/batch.d.ts +3 -5
  135. package/cjs/transport/batch.js +29 -73
  136. package/cjs/transport/batch.js.map +1 -1
  137. package/cjs/transport/eventBridge.js.map +1 -1
  138. package/cjs/transport/flushController.d.ts +2 -12
  139. package/cjs/transport/flushController.js +7 -22
  140. package/cjs/transport/flushController.js.map +1 -1
  141. package/cjs/transport/httpRequest.d.ts +2 -3
  142. package/cjs/transport/httpRequest.js +17 -21
  143. package/cjs/transport/httpRequest.js.map +1 -1
  144. package/cjs/transport/sendWithRetryStrategy.d.ts +2 -2
  145. package/cjs/transport/sendWithRetryStrategy.js +9 -9
  146. package/cjs/transport/sendWithRetryStrategy.js.map +1 -1
  147. package/cjs/transport/startBatchWithReplica.d.ts +4 -9
  148. package/cjs/transport/startBatchWithReplica.js +4 -9
  149. package/cjs/transport/startBatchWithReplica.js.map +1 -1
  150. package/esm/boot/init.js +1 -1
  151. package/esm/boot/init.js.map +1 -1
  152. package/esm/browser/addEventListener.d.ts +4 -12
  153. package/esm/browser/addEventListener.js +7 -49
  154. package/esm/browser/addEventListener.js.map +1 -1
  155. package/esm/browser/cookie.d.ts +0 -7
  156. package/esm/browser/cookie.js +2 -17
  157. package/esm/browser/cookie.js.map +1 -1
  158. package/esm/browser/fetchObservable.js +20 -15
  159. package/esm/browser/fetchObservable.js.map +1 -1
  160. package/esm/browser/pageExitObservable.js +8 -7
  161. package/esm/browser/pageExitObservable.js.map +1 -1
  162. package/esm/browser/runOnReadyState.js +2 -2
  163. package/esm/browser/runOnReadyState.js.map +1 -1
  164. package/esm/browser/xhrObservable.d.ts +2 -1
  165. package/esm/browser/xhrObservable.js +36 -28
  166. package/esm/browser/xhrObservable.js.map +1 -1
  167. package/esm/domain/configuration/configuration.d.ts +12 -17
  168. package/esm/domain/configuration/configuration.js +9 -8
  169. package/esm/domain/configuration/configuration.js.map +1 -1
  170. package/esm/domain/configuration/endpointBuilder.d.ts +10 -6
  171. package/esm/domain/configuration/endpointBuilder.js +32 -22
  172. package/esm/domain/configuration/endpointBuilder.js.map +1 -1
  173. package/esm/domain/configuration/index.d.ts +1 -2
  174. package/esm/domain/configuration/index.js +0 -1
  175. package/esm/domain/configuration/index.js.map +1 -1
  176. package/esm/domain/configuration/tags.js.map +1 -1
  177. package/esm/domain/configuration/transportConfiguration.js +1 -1
  178. package/esm/domain/configuration/transportConfiguration.js.map +1 -1
  179. package/esm/domain/console/consoleObservable.js +5 -2
  180. package/esm/domain/console/consoleObservable.js.map +1 -1
  181. package/esm/domain/deflate/types.d.ts +0 -12
  182. package/esm/domain/error/error.d.ts +1 -1
  183. package/esm/domain/error/error.js +1 -1
  184. package/esm/domain/error/error.js.map +1 -1
  185. package/esm/domain/error/error.types.d.ts +2 -2
  186. package/esm/domain/error/error.types.js.map +1 -1
  187. package/esm/domain/error/trackRuntimeError.d.ts +0 -8
  188. package/esm/domain/error/trackRuntimeError.js +4 -35
  189. package/esm/domain/error/trackRuntimeError.js.map +1 -1
  190. package/esm/domain/eventRateLimiter/createEventRateLimiter.js.map +1 -1
  191. package/esm/domain/report/browser.types.d.ts +0 -10
  192. package/esm/domain/report/reportObservable.d.ts +0 -2
  193. package/esm/domain/report/reportObservable.js +8 -8
  194. package/esm/domain/report/reportObservable.js.map +1 -1
  195. package/esm/domain/session/oldCookiesMigration.js +5 -5
  196. package/esm/domain/session/oldCookiesMigration.js.map +1 -1
  197. package/esm/domain/session/sessionManager.js +3 -3
  198. package/esm/domain/session/sessionManager.js.map +1 -1
  199. package/esm/domain/session/sessionState.js.map +1 -1
  200. package/esm/domain/session/sessionStore.js.map +1 -1
  201. package/esm/domain/session/sessionStoreOperations.d.ts +5 -0
  202. package/esm/domain/session/sessionStoreOperations.js +12 -5
  203. package/esm/domain/session/sessionStoreOperations.js.map +1 -1
  204. package/esm/domain/session/storeStrategies/sessionInCookie.js +2 -13
  205. package/esm/domain/session/storeStrategies/sessionInCookie.js.map +1 -1
  206. package/esm/domain/session/storeStrategies/sessionInLocalStorage.js +0 -1
  207. package/esm/domain/session/storeStrategies/sessionInLocalStorage.js.map +1 -1
  208. package/esm/domain/session/storeStrategies/sessionStoreStrategy.d.ts +0 -1
  209. package/esm/domain/synthetics/syntheticsWorkerValues.js +4 -4
  210. package/esm/domain/synthetics/syntheticsWorkerValues.js.map +1 -1
  211. package/esm/domain/telemetry/rawTelemetryEvent.types.d.ts +0 -4
  212. package/esm/domain/telemetry/telemetry.d.ts +1 -5
  213. package/esm/domain/telemetry/telemetry.js +5 -16
  214. package/esm/domain/telemetry/telemetry.js.map +1 -1
  215. package/esm/domain/telemetry/telemetryEvent.types.d.ts +2 -18
  216. package/esm/domain/tracekit/computeStackTrace.d.ts +5 -0
  217. package/esm/domain/{error → tracekit}/computeStackTrace.js +3 -26
  218. package/esm/domain/tracekit/computeStackTrace.js.map +1 -0
  219. package/esm/domain/tracekit/index.d.ts +3 -0
  220. package/esm/domain/tracekit/index.js +3 -0
  221. package/esm/domain/tracekit/index.js.map +1 -0
  222. package/esm/domain/tracekit/tracekit.d.ts +35 -0
  223. package/esm/domain/tracekit/tracekit.js +91 -0
  224. package/esm/domain/tracekit/tracekit.js.map +1 -0
  225. package/esm/domain/tracekit/types.d.ts +44 -0
  226. package/esm/domain/tracekit/types.js +2 -0
  227. package/esm/domain/tracekit/types.js.map +1 -0
  228. package/esm/domain/user/user.js.map +1 -1
  229. package/esm/index.d.ts +5 -9
  230. package/esm/index.js +5 -8
  231. package/esm/index.js.map +1 -1
  232. package/esm/tools/abstractLifeCycle.js.map +1 -1
  233. package/esm/tools/boundedBuffer.js.map +1 -1
  234. package/esm/tools/catchUserErrors.js.map +1 -1
  235. package/esm/tools/display.d.ts +2 -2
  236. package/esm/tools/display.js +15 -12
  237. package/esm/tools/display.js.map +1 -1
  238. package/esm/tools/experimentalFeatures.d.ts +5 -3
  239. package/esm/tools/experimentalFeatures.js +4 -2
  240. package/esm/tools/experimentalFeatures.js.map +1 -1
  241. package/esm/tools/getGlobalObject.js.map +1 -1
  242. package/esm/tools/getZoneJsOriginalValue.js.map +1 -1
  243. package/esm/tools/instrumentMethod.d.ts +10 -50
  244. package/esm/tools/instrumentMethod.js +34 -58
  245. package/esm/tools/instrumentMethod.js.map +1 -1
  246. package/esm/tools/matchOption.js.map +1 -1
  247. package/esm/tools/mergeInto.js.map +1 -1
  248. package/esm/tools/monitor.d.ts +2 -1
  249. package/esm/tools/monitor.js +7 -7
  250. package/esm/tools/monitor.js.map +1 -1
  251. package/esm/tools/observable.d.ts +1 -1
  252. package/esm/tools/observable.js +3 -2
  253. package/esm/tools/observable.js.map +1 -1
  254. package/esm/tools/readBytesFromStream.js.map +1 -1
  255. package/esm/tools/sendToExtension.js.map +1 -1
  256. package/esm/tools/serialisation/contextManager.d.ts +21 -0
  257. package/esm/tools/serialisation/contextManager.js +66 -0
  258. package/esm/tools/serialisation/contextManager.js.map +1 -0
  259. package/esm/tools/serialisation/heavyCustomerDataWarning.d.ts +8 -0
  260. package/esm/tools/serialisation/heavyCustomerDataWarning.js +14 -0
  261. package/esm/tools/serialisation/heavyCustomerDataWarning.js.map +1 -0
  262. package/esm/tools/serialisation/jsonStringify.d.ts +2 -1
  263. package/esm/tools/serialisation/jsonStringify.js.map +1 -1
  264. package/esm/tools/serialisation/sanitize.js.map +1 -1
  265. package/esm/tools/utils/browserDetection.d.ts +0 -8
  266. package/esm/tools/utils/browserDetection.js +2 -30
  267. package/esm/tools/utils/browserDetection.js.map +1 -1
  268. package/esm/tools/utils/byteUtils.js.map +1 -1
  269. package/esm/tools/utils/functionUtils.js.map +1 -1
  270. package/esm/tools/utils/objectUtils.js.map +1 -1
  271. package/esm/tools/utils/polyfills.js.map +1 -1
  272. package/esm/tools/utils/responseUtils.js.map +1 -1
  273. package/esm/tools/utils/stringUtils.d.ts +0 -1
  274. package/esm/tools/utils/stringUtils.js +3 -29
  275. package/esm/tools/utils/stringUtils.js.map +1 -1
  276. package/esm/tools/utils/timeUtils.js.map +1 -1
  277. package/esm/tools/utils/typeUtils.js.map +1 -1
  278. package/esm/tools/utils/urlPolyfill.js.map +1 -1
  279. package/esm/tools/valueHistory.js.map +1 -1
  280. package/esm/transport/batch.d.ts +3 -5
  281. package/esm/transport/batch.js +29 -73
  282. package/esm/transport/batch.js.map +1 -1
  283. package/esm/transport/eventBridge.js.map +1 -1
  284. package/esm/transport/flushController.d.ts +2 -12
  285. package/esm/transport/flushController.js +7 -22
  286. package/esm/transport/flushController.js.map +1 -1
  287. package/esm/transport/httpRequest.d.ts +2 -3
  288. package/esm/transport/httpRequest.js +17 -21
  289. package/esm/transport/httpRequest.js.map +1 -1
  290. package/esm/transport/sendWithRetryStrategy.d.ts +2 -2
  291. package/esm/transport/sendWithRetryStrategy.js +9 -9
  292. package/esm/transport/sendWithRetryStrategy.js.map +1 -1
  293. package/esm/transport/startBatchWithReplica.d.ts +4 -9
  294. package/esm/transport/startBatchWithReplica.js +4 -9
  295. package/esm/transport/startBatchWithReplica.js.map +1 -1
  296. package/package.json +1 -1
  297. package/src/browser/addEventListener.ts +31 -37
  298. package/src/browser/cookie.ts +2 -21
  299. package/src/browser/fetchObservable.ts +25 -21
  300. package/src/browser/pageExitObservable.ts +3 -1
  301. package/src/browser/xhrObservable.ts +37 -31
  302. package/src/domain/configuration/configuration.ts +22 -24
  303. package/src/domain/configuration/endpointBuilder.ts +46 -33
  304. package/src/domain/configuration/index.ts +1 -2
  305. package/src/domain/configuration/transportConfiguration.ts +1 -1
  306. package/src/domain/console/consoleObservable.ts +7 -3
  307. package/src/domain/deflate/types.ts +0 -14
  308. package/src/domain/error/error.ts +2 -2
  309. package/src/domain/error/error.types.ts +2 -11
  310. package/src/domain/error/trackRuntimeError.ts +12 -44
  311. package/src/domain/report/browser.types.ts +0 -12
  312. package/src/domain/report/reportObservable.ts +6 -8
  313. package/src/domain/session/oldCookiesMigration.ts +5 -5
  314. package/src/domain/session/sessionStoreOperations.ts +13 -5
  315. package/src/domain/session/storeStrategies/sessionInCookie.ts +2 -13
  316. package/src/domain/session/storeStrategies/sessionInLocalStorage.ts +0 -1
  317. package/src/domain/session/storeStrategies/sessionStoreStrategy.ts +0 -1
  318. package/src/domain/synthetics/syntheticsWorkerValues.ts +4 -4
  319. package/src/domain/telemetry/rawTelemetryEvent.types.ts +0 -5
  320. package/src/domain/telemetry/telemetry.ts +7 -22
  321. package/src/domain/telemetry/telemetryEvent.types.ts +2 -18
  322. package/src/domain/{error → tracekit}/computeStackTrace.ts +4 -49
  323. package/src/domain/tracekit/index.ts +3 -0
  324. package/src/domain/tracekit/tracekit.ts +96 -0
  325. package/src/domain/tracekit/types.ts +47 -0
  326. package/src/index.ts +7 -13
  327. package/src/tools/display.ts +13 -14
  328. package/src/tools/experimentalFeatures.ts +4 -2
  329. package/src/tools/instrumentMethod.ts +59 -103
  330. package/src/tools/mergeInto.ts +16 -16
  331. package/src/tools/monitor.ts +5 -5
  332. package/src/tools/observable.ts +5 -3
  333. package/src/tools/serialisation/contextManager.ts +79 -0
  334. package/src/tools/serialisation/heavyCustomerDataWarning.ts +26 -0
  335. package/src/tools/utils/browserDetection.ts +2 -43
  336. package/src/tools/utils/polyfills.ts +4 -1
  337. package/src/tools/utils/stringUtils.ts +4 -30
  338. package/src/transport/batch.ts +31 -86
  339. package/src/transport/flushController.ts +7 -22
  340. package/src/transport/httpRequest.ts +16 -23
  341. package/src/transport/sendWithRetryStrategy.ts +10 -10
  342. package/src/transport/startBatchWithReplica.ts +6 -22
  343. package/cjs/domain/connectivity/connectivity.d.ts +0 -13
  344. package/cjs/domain/connectivity/connectivity.js +0 -14
  345. package/cjs/domain/connectivity/connectivity.js.map +0 -1
  346. package/cjs/domain/connectivity/index.d.ts +0 -1
  347. package/cjs/domain/connectivity/index.js.map +0 -1
  348. package/cjs/domain/context/contextConstants.d.ts +0 -5
  349. package/cjs/domain/context/contextConstants.js.map +0 -1
  350. package/cjs/domain/context/contextManager.d.ts +0 -12
  351. package/cjs/domain/context/contextManager.js +0 -43
  352. package/cjs/domain/context/contextManager.js.map +0 -1
  353. package/cjs/domain/context/customerDataTracker.d.ts +0 -45
  354. package/cjs/domain/context/customerDataTracker.js +0 -107
  355. package/cjs/domain/context/customerDataTracker.js.map +0 -1
  356. package/cjs/domain/context/storeContextManager.d.ts +0 -6
  357. package/cjs/domain/context/storeContextManager.js +0 -38
  358. package/cjs/domain/context/storeContextManager.js.map +0 -1
  359. package/cjs/domain/error/computeStackTrace.d.ts +0 -33
  360. package/cjs/domain/error/computeStackTrace.js.map +0 -1
  361. package/cjs/tools/encoder.d.ts +0 -53
  362. package/cjs/tools/encoder.js +0 -41
  363. package/cjs/tools/encoder.js.map +0 -1
  364. package/esm/domain/connectivity/connectivity.d.ts +0 -13
  365. package/esm/domain/connectivity/connectivity.js +0 -10
  366. package/esm/domain/connectivity/connectivity.js.map +0 -1
  367. package/esm/domain/connectivity/index.d.ts +0 -1
  368. package/esm/domain/connectivity/index.js +0 -2
  369. package/esm/domain/connectivity/index.js.map +0 -1
  370. package/esm/domain/context/contextConstants.d.ts +0 -5
  371. package/esm/domain/context/contextConstants.js +0 -2
  372. package/esm/domain/context/contextConstants.js.map +0 -1
  373. package/esm/domain/context/contextManager.d.ts +0 -12
  374. package/esm/domain/context/contextManager.js +0 -39
  375. package/esm/domain/context/contextManager.js.map +0 -1
  376. package/esm/domain/context/customerDataTracker.d.ts +0 -45
  377. package/esm/domain/context/customerDataTracker.js +0 -102
  378. package/esm/domain/context/customerDataTracker.js.map +0 -1
  379. package/esm/domain/context/storeContextManager.d.ts +0 -6
  380. package/esm/domain/context/storeContextManager.js +0 -32
  381. package/esm/domain/context/storeContextManager.js.map +0 -1
  382. package/esm/domain/error/computeStackTrace.d.ts +0 -33
  383. package/esm/domain/error/computeStackTrace.js.map +0 -1
  384. package/esm/tools/encoder.d.ts +0 -53
  385. package/esm/tools/encoder.js +0 -37
  386. package/esm/tools/encoder.js.map +0 -1
  387. package/src/domain/connectivity/connectivity.ts +0 -27
  388. package/src/domain/connectivity/index.ts +0 -1
  389. package/src/domain/context/contextConstants.ts +0 -5
  390. package/src/domain/context/contextManager.ts +0 -48
  391. package/src/domain/context/customerDataTracker.ts +0 -134
  392. package/src/domain/context/storeContextManager.ts +0 -51
  393. package/src/tools/encoder.ts +0 -102
@@ -1,4 +1,4 @@
1
- import type { TrackType } from '../domain/configuration';
1
+ import type { EndpointType } from '../domain/configuration';
2
2
  import type { RawError } from '../domain/error/error.types';
3
3
  import type { Payload, HttpResponse } from './httpRequest';
4
4
  export declare const MAX_ONGOING_BYTES_COUNT: number;
@@ -19,7 +19,7 @@ export interface RetryState {
19
19
  queueFullReported: boolean;
20
20
  }
21
21
  type SendStrategy = (payload: Payload, onResponse: (r: HttpResponse) => void) => void;
22
- export declare function sendWithRetryStrategy(payload: Payload, state: RetryState, sendStrategy: SendStrategy, trackType: TrackType, reportError: (error: RawError) => void): void;
22
+ export declare function sendWithRetryStrategy(payload: Payload, state: RetryState, sendStrategy: SendStrategy, endpointType: EndpointType, reportError: (error: RawError) => void): void;
23
23
  export declare function newRetryState(): RetryState;
24
24
  declare function newPayloadQueue(): {
25
25
  bytesCount: number;
@@ -8,15 +8,15 @@ export var MAX_ONGOING_REQUESTS = 32;
8
8
  export var MAX_QUEUE_BYTES_COUNT = 3 * ONE_MEBI_BYTE;
9
9
  export var MAX_BACKOFF_TIME = ONE_MINUTE;
10
10
  export var INITIAL_BACKOFF_TIME = ONE_SECOND;
11
- export function sendWithRetryStrategy(payload, state, sendStrategy, trackType, reportError) {
11
+ export function sendWithRetryStrategy(payload, state, sendStrategy, endpointType, reportError) {
12
12
  if (state.transportStatus === 0 /* TransportStatus.UP */ &&
13
13
  state.queuedPayloads.size() === 0 &&
14
14
  state.bandwidthMonitor.canHandle(payload)) {
15
15
  send(payload, state, sendStrategy, {
16
- onSuccess: function () { return retryQueuedPayloads(0 /* RetryReason.AFTER_SUCCESS */, state, sendStrategy, trackType, reportError); },
16
+ onSuccess: function () { return retryQueuedPayloads(0 /* RetryReason.AFTER_SUCCESS */, state, sendStrategy, endpointType, reportError); },
17
17
  onFailure: function () {
18
18
  state.queuedPayloads.enqueue(payload);
19
- scheduleRetry(state, sendStrategy, trackType, reportError);
19
+ scheduleRetry(state, sendStrategy, endpointType, reportError);
20
20
  },
21
21
  });
22
22
  }
@@ -24,7 +24,7 @@ export function sendWithRetryStrategy(payload, state, sendStrategy, trackType, r
24
24
  state.queuedPayloads.enqueue(payload);
25
25
  }
26
26
  }
27
- function scheduleRetry(state, sendStrategy, trackType, reportError) {
27
+ function scheduleRetry(state, sendStrategy, endpointType, reportError) {
28
28
  if (state.transportStatus !== 2 /* TransportStatus.DOWN */) {
29
29
  return;
30
30
  }
@@ -34,11 +34,11 @@ function scheduleRetry(state, sendStrategy, trackType, reportError) {
34
34
  onSuccess: function () {
35
35
  state.queuedPayloads.dequeue();
36
36
  state.currentBackoffTime = INITIAL_BACKOFF_TIME;
37
- retryQueuedPayloads(1 /* RetryReason.AFTER_RESUME */, state, sendStrategy, trackType, reportError);
37
+ retryQueuedPayloads(1 /* RetryReason.AFTER_RESUME */, state, sendStrategy, endpointType, reportError);
38
38
  },
39
39
  onFailure: function () {
40
40
  state.currentBackoffTime = Math.min(MAX_BACKOFF_TIME, state.currentBackoffTime * 2);
41
- scheduleRetry(state, sendStrategy, trackType, reportError);
41
+ scheduleRetry(state, sendStrategy, endpointType, reportError);
42
42
  },
43
43
  });
44
44
  }, state.currentBackoffTime);
@@ -64,10 +64,10 @@ function send(payload, state, sendStrategy, _a) {
64
64
  }
65
65
  });
66
66
  }
67
- function retryQueuedPayloads(reason, state, sendStrategy, trackType, reportError) {
67
+ function retryQueuedPayloads(reason, state, sendStrategy, endpointType, reportError) {
68
68
  if (reason === 0 /* RetryReason.AFTER_SUCCESS */ && state.queuedPayloads.isFull() && !state.queueFullReported) {
69
69
  reportError({
70
- message: "Reached max ".concat(trackType, " events size queued for upload: ").concat(MAX_QUEUE_BYTES_COUNT / ONE_MEBI_BYTE, "MiB"),
70
+ message: "Reached max ".concat(endpointType, " events size queued for upload: ").concat(MAX_QUEUE_BYTES_COUNT / ONE_MEBI_BYTE, "MiB"),
71
71
  source: ErrorSource.AGENT,
72
72
  startClocks: clocksNow(),
73
73
  });
@@ -76,7 +76,7 @@ function retryQueuedPayloads(reason, state, sendStrategy, trackType, reportError
76
76
  var previousQueue = state.queuedPayloads;
77
77
  state.queuedPayloads = newPayloadQueue();
78
78
  while (previousQueue.size() > 0) {
79
- sendWithRetryStrategy(previousQueue.dequeue(), state, sendStrategy, trackType, reportError);
79
+ sendWithRetryStrategy(previousQueue.dequeue(), state, sendStrategy, endpointType, reportError);
80
80
  }
81
81
  }
82
82
  function shouldRetryRequest(response) {
@@ -1 +1 @@
1
- {"version":3,"file":"sendWithRetryStrategy.js","sourceRoot":"","sources":["../../src/transport/sendWithRetryStrategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sendWithRetryStrategy.js","sourceRoot":"","sources":["../../src/transport/sendWithRetryStrategy.ts"],"names":[],"mappings":"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"}
@@ -3,18 +3,13 @@ import type { Context } from '../tools/serialisation/context';
3
3
  import type { Observable } from '../tools/observable';
4
4
  import type { PageExitEvent } from '../browser/pageExitObservable';
5
5
  import type { RawError } from '../domain/error/error.types';
6
- import type { Encoder } from '../tools/encoder';
7
- export interface BatchConfiguration {
6
+ export declare function startBatchWithReplica<T extends Context>(configuration: Configuration, primary: {
7
+ endpoint: EndpointBuilder;
8
+ }, replica: {
8
9
  endpoint: EndpointBuilder;
9
- encoder: Encoder;
10
- }
11
- interface ReplicaBatchConfiguration<T> extends BatchConfiguration {
12
10
  transformMessage?: (message: T) => T;
13
- }
14
- export declare function startBatchWithReplica<T extends Context>(configuration: Configuration, primary: BatchConfiguration, replica: ReplicaBatchConfiguration<T> | undefined, reportError: (error: RawError) => void, pageExitObservable: Observable<PageExitEvent>, sessionExpireObservable: Observable<void>): {
11
+ } | undefined, reportError: (error: RawError) => void, pageExitObservable: Observable<PageExitEvent>, sessionExpireObservable: Observable<void>): {
15
12
  flushObservable: Observable<import("./flushController").FlushEvent>;
16
13
  add(message: T, replicated?: boolean): void;
17
14
  upsert: (message: T, key: string) => void;
18
- stop: () => void;
19
15
  };
20
- export {};
@@ -2,11 +2,10 @@ import { Batch } from './batch';
2
2
  import { createHttpRequest } from './httpRequest';
3
3
  import { createFlushController } from './flushController';
4
4
  export function startBatchWithReplica(configuration, primary, replica, reportError, pageExitObservable, sessionExpireObservable) {
5
- var primaryBatch = createBatch(configuration, primary);
6
- var replicaBatch = replica && createBatch(configuration, replica);
7
- function createBatch(configuration, _a) {
8
- var endpoint = _a.endpoint, encoder = _a.encoder;
9
- return new Batch(encoder, createHttpRequest(configuration, endpoint, configuration.batchBytesLimit, reportError), createFlushController({
5
+ var primaryBatch = createBatch(configuration, primary.endpoint);
6
+ var replicaBatch = replica && createBatch(configuration, replica.endpoint);
7
+ function createBatch(configuration, endpointBuilder) {
8
+ return new Batch(createHttpRequest(configuration, endpointBuilder, configuration.batchBytesLimit, reportError), createFlushController({
10
9
  messagesLimit: configuration.batchMessagesLimit,
11
10
  bytesLimit: configuration.batchBytesLimit,
12
11
  durationLimit: configuration.flushTimeout,
@@ -29,10 +28,6 @@ export function startBatchWithReplica(configuration, primary, replica, reportErr
29
28
  replicaBatch.upsert(replica.transformMessage ? replica.transformMessage(message) : message, key);
30
29
  }
31
30
  },
32
- stop: function () {
33
- primaryBatch.stop();
34
- replicaBatch === null || replicaBatch === void 0 ? void 0 : replicaBatch.stop();
35
- },
36
31
  };
37
32
  }
38
33
  //# sourceMappingURL=startBatchWithReplica.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"startBatchWithReplica.js","sourceRoot":"","sources":["../../src/transport/startBatchWithReplica.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAWzD,MAAM,UAAU,qBAAqB,CACnC,aAA4B,EAC5B,OAA2B,EAC3B,OAAiD,EACjD,WAAsC,EACtC,kBAA6C,EAC7C,uBAAyC;IAEzC,IAAM,YAAY,GAAG,WAAW,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;IACxD,IAAM,YAAY,GAAG,OAAO,IAAI,WAAW,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;IAEnE,SAAS,WAAW,CAAC,aAA4B,EAAE,EAAyC;YAAvC,QAAQ,cAAA,EAAE,OAAO,aAAA;QACpE,OAAO,IAAI,KAAK,CACd,OAAO,EACP,iBAAiB,CAAC,aAAa,EAAE,QAAQ,EAAE,aAAa,CAAC,eAAe,EAAE,WAAW,CAAC,EACtF,qBAAqB,CAAC;YACpB,aAAa,EAAE,aAAa,CAAC,kBAAkB;YAC/C,UAAU,EAAE,aAAa,CAAC,eAAe;YACzC,aAAa,EAAE,aAAa,CAAC,YAAY;YACzC,kBAAkB,oBAAA;YAClB,uBAAuB,yBAAA;SACxB,CAAC,EACF,aAAa,CAAC,iBAAiB,CAChC,CAAA;IACH,CAAC;IAED,OAAO;QACL,eAAe,EAAE,YAAY,CAAC,eAAe,CAAC,eAAe;QAE7D,GAAG,YAAC,OAAU,EAAE,UAAiB;YAAjB,2BAAA,EAAA,iBAAiB;YAC/B,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YACzB,IAAI,YAAY,IAAI,UAAU,EAAE,CAAC;gBAC/B,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YAC1F,CAAC;QACH,CAAC;QAED,MAAM,EAAE,UAAC,OAAU,EAAE,GAAW;YAC9B,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;YACjC,IAAI,YAAY,EAAE,CAAC;gBACjB,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;YAClG,CAAC;QACH,CAAC;QAED,IAAI,EAAE;YACJ,YAAY,CAAC,IAAI,EAAE,CAAA;YACnB,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,EAAE,CAAA;QACtB,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"startBatchWithReplica.js","sourceRoot":"","sources":["../../src/transport/startBatchWithReplica.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAEzD,MAAM,UAAU,qBAAqB,CACnC,aAA4B,EAC5B,OAAsC,EACtC,OAAwF,EACxF,WAAsC,EACtC,kBAA6C,EAC7C,uBAAyC;IAEzC,IAAM,YAAY,GAAG,WAAW,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;IACjE,IAAM,YAAY,GAAG,OAAO,IAAI,WAAW,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;IAE5E,SAAS,WAAW,CAAC,aAA4B,EAAE,eAAgC;QACjF,OAAO,IAAI,KAAK,CACd,iBAAiB,CAAC,aAAa,EAAE,eAAe,EAAE,aAAa,CAAC,eAAe,EAAE,WAAW,CAAC,EAC7F,qBAAqB,CAAC;YACpB,aAAa,EAAE,aAAa,CAAC,kBAAkB;YAC/C,UAAU,EAAE,aAAa,CAAC,eAAe;YACzC,aAAa,EAAE,aAAa,CAAC,YAAY;YACzC,kBAAkB,oBAAA;YAClB,uBAAuB,yBAAA;SACxB,CAAC,EACF,aAAa,CAAC,iBAAiB,CAChC,CAAA;IACH,CAAC;IAED,OAAO;QACL,eAAe,EAAE,YAAY,CAAC,eAAe,CAAC,eAAe;QAE7D,GAAG,YAAC,OAAU,EAAE,UAAiB;YAAjB,2BAAA,EAAA,iBAAiB;YAC/B,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YACzB,IAAI,YAAY,IAAI,UAAU,EAAE;gBAC9B,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;aACzF;QACH,CAAC;QAED,MAAM,EAAE,UAAC,OAAU,EAAE,GAAW;YAC9B,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;YACjC,IAAI,YAAY,EAAE;gBAChB,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;aACjG;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openobserve/browser-core",
3
- "version": "0.2.11-rc1",
3
+ "version": "0.2.11",
4
4
  "license": "Apache-2.0",
5
5
  "main": "cjs/index.js",
6
6
  "module": "esm/index.js",
@@ -3,11 +3,7 @@ import { getZoneJsOriginalValue } from '../tools/getZoneJsOriginalValue'
3
3
  import type { Configuration } from '../domain/configuration'
4
4
  import type { VisualViewport, VisualViewportEventMap } from './types'
5
5
 
6
- export type TrustableEvent<E extends Event = Event> = E & { __ddIsTrusted?: boolean }
7
-
8
- // We want to use a real enum (i.e. not a const enum) here, to be able to iterate over it to automatically add _ddIsTrusted in e2e tests
9
- // eslint-disable-next-line no-restricted-syntax
10
- export enum DOM_EVENT {
6
+ export const enum DOM_EVENT {
11
7
  BEFORE_UNLOAD = 'beforeunload',
12
8
  CLICK = 'click',
13
9
  DBL_CLICK = 'dblclick',
@@ -41,7 +37,6 @@ export enum DOM_EVENT {
41
37
  PAUSE = 'pause',
42
38
  SECURITY_POLICY_VIOLATION = 'securitypolicyviolation',
43
39
  SELECTION_CHANGE = 'selectionchange',
44
- STORAGE = 'storage',
45
40
  }
46
41
 
47
42
  interface AddEventListenerOptions {
@@ -59,23 +54,23 @@ type EventMapFor<T> = T extends Window
59
54
  visibilitychange: Event
60
55
  }
61
56
  : T extends Document
62
- ? DocumentEventMap
63
- : T extends HTMLElement
64
- ? HTMLElementEventMap
65
- : T extends VisualViewport
66
- ? VisualViewportEventMap
67
- : T extends ShadowRoot
68
- ? // ShadowRootEventMap is not yet defined in our supported TS version. Instead, use
69
- // GlobalEventHandlersEventMap which is more than enough as we only need to listen for events bubbling
70
- // through the ShadowRoot like "change" or "input"
71
- GlobalEventHandlersEventMap
72
- : T extends XMLHttpRequest
73
- ? XMLHttpRequestEventMap
74
- : T extends Performance
75
- ? PerformanceEventMap
76
- : T extends Worker
77
- ? WorkerEventMap
78
- : Record<never, never>
57
+ ? DocumentEventMap
58
+ : T extends HTMLElement
59
+ ? HTMLElementEventMap
60
+ : T extends VisualViewport
61
+ ? VisualViewportEventMap
62
+ : T extends ShadowRoot
63
+ ? // ShadowRootEventMap is not yet defined in our supported TS version. Instead, use
64
+ // GlobalEventHandlersEventMap which is more than enough as we only need to listen for events bubbling
65
+ // through the ShadowRoot like "change" or "input"
66
+ GlobalEventHandlersEventMap
67
+ : T extends XMLHttpRequest
68
+ ? XMLHttpRequestEventMap
69
+ : T extends Performance
70
+ ? PerformanceEventMap
71
+ : T extends Worker
72
+ ? WorkerEventMap
73
+ : Record<never, never>
79
74
 
80
75
  /**
81
76
  * Add an event listener to an event target object (Window, Element, mock object...). This provides
@@ -91,7 +86,7 @@ export function addEventListener<Target extends EventTarget, EventName extends k
91
86
  configuration: Configuration,
92
87
  eventTarget: Target,
93
88
  eventName: EventName,
94
- listener: (event: EventMapFor<Target>[EventName] & { type: EventName }) => void,
89
+ listener: (event: EventMapFor<Target>[EventName]) => void,
95
90
  options?: AddEventListenerOptions
96
91
  ) {
97
92
  return addEventListeners(configuration, eventTarget, [eventName], listener, options)
@@ -110,30 +105,29 @@ export function addEventListener<Target extends EventTarget, EventName extends k
110
105
  * * with `once: true`, the listener will be called at most once, even if different events are listened
111
106
  */
112
107
  export function addEventListeners<Target extends EventTarget, EventName extends keyof EventMapFor<Target> & string>(
113
- configuration: Configuration,
108
+ _: Configuration,
114
109
  eventTarget: Target,
115
110
  eventNames: EventName[],
116
- listener: (event: EventMapFor<Target>[EventName] & { type: EventName }) => void,
111
+ listener: (event: EventMapFor<Target>[EventName]) => void,
117
112
  { once, capture, passive }: AddEventListenerOptions = {}
118
113
  ) {
119
- const listenerWithMonitor = monitor((event: TrustableEvent) => {
120
- if (!event.isTrusted && !event.__ddIsTrusted && !configuration.allowUntrustedEvents) {
121
- return
122
- }
123
- if (once) {
124
- stop()
125
- }
126
- listener(event as unknown as EventMapFor<Target>[EventName] & { type: EventName })
127
- })
114
+ const wrappedListener = monitor(
115
+ once
116
+ ? (event: Event) => {
117
+ stop()
118
+ listener(event as EventMapFor<Target>[EventName])
119
+ }
120
+ : (listener as (event: Event) => void)
121
+ )
128
122
 
129
123
  const options = passive ? { capture, passive } : capture
130
124
 
131
125
  const add = getZoneJsOriginalValue(eventTarget, 'addEventListener')
132
- eventNames.forEach((eventName) => add.call(eventTarget, eventName, listenerWithMonitor, options))
126
+ eventNames.forEach((eventName) => add.call(eventTarget, eventName, wrappedListener, options))
133
127
 
134
128
  function stop() {
135
129
  const remove = getZoneJsOriginalValue(eventTarget, 'removeEventListener')
136
- eventNames.forEach((eventName) => remove.call(eventTarget, eventName, listenerWithMonitor, options))
130
+ eventNames.forEach((eventName) => remove.call(eventTarget, eventName, wrappedListener, options))
137
131
  }
138
132
 
139
133
  return {
@@ -1,11 +1,10 @@
1
1
  import { display } from '../tools/display'
2
2
  import { ONE_MINUTE, ONE_SECOND } from '../tools/utils/timeUtils'
3
- import { findCommaSeparatedValue, findCommaSeparatedValues, generateUUID } from '../tools/utils/stringUtils'
3
+ import { findCommaSeparatedValue, generateUUID } from '../tools/utils/stringUtils'
4
4
 
5
5
  export interface CookieOptions {
6
6
  secure?: boolean
7
7
  crossSite?: boolean
8
- partitioned?: boolean
9
8
  domain?: string
10
9
  }
11
10
 
@@ -16,31 +15,13 @@ export function setCookie(name: string, value: string, expireDelay: number, opti
16
15
  const sameSite = options && options.crossSite ? 'none' : 'strict'
17
16
  const domain = options && options.domain ? `;domain=${options.domain}` : ''
18
17
  const secure = options && options.secure ? ';secure' : ''
19
- const partitioned = options && options.partitioned ? ';partitioned' : ''
20
- document.cookie = `${name}=${value};${expires};path=/;samesite=${sameSite}${domain}${secure}${partitioned}`
18
+ document.cookie = `${name}=${value};${expires};path=/;samesite=${sameSite}${domain}${secure}`
21
19
  }
22
20
 
23
21
  export function getCookie(name: string) {
24
22
  return findCommaSeparatedValue(document.cookie, name)
25
23
  }
26
24
 
27
- let initCookieParsed: Map<string, string> | undefined
28
-
29
- /**
30
- * Returns a cached value of the cookie. Use this during SDK initialization (and whenever possible)
31
- * to avoid accessing document.cookie multiple times.
32
- */
33
- export function getInitCookie(name: string) {
34
- if (!initCookieParsed) {
35
- initCookieParsed = findCommaSeparatedValues(document.cookie)
36
- }
37
- return initCookieParsed.get(name)
38
- }
39
-
40
- export function resetInitCookies() {
41
- initCookieParsed = undefined
42
- }
43
-
44
25
  export function deleteCookie(name: string, options?: CookieOptions) {
45
26
  setCookie(name, '', 0, options)
46
27
  }
@@ -1,6 +1,5 @@
1
- import type { InstrumentedMethodCall } from '../tools/instrumentMethod'
2
1
  import { instrumentMethod } from '../tools/instrumentMethod'
3
- import { monitor } from '../tools/monitor'
2
+ import { callMonitored, monitor } from '../tools/monitor'
4
3
  import { Observable } from '../tools/observable'
5
4
  import type { ClocksState } from '../tools/utils/timeUtils'
6
5
  import { clocksNow } from '../tools/utils/timeUtils'
@@ -39,29 +38,38 @@ export function initFetchObservable() {
39
38
  }
40
39
 
41
40
  function createFetchObservable() {
42
- return new Observable<FetchContext>((observable) => {
41
+ const observable = new Observable<FetchContext>(() => {
43
42
  if (!window.fetch) {
44
43
  return
45
44
  }
46
45
 
47
- const { stop } = instrumentMethod(window, 'fetch', (call) => beforeSend(call, observable))
46
+ const { stop } = instrumentMethod(
47
+ window,
48
+ 'fetch',
49
+ (originalFetch) =>
50
+ function (input, init) {
51
+ let responsePromise: Promise<Response>
52
+
53
+ const context = callMonitored(beforeSend, null, [observable, input, init])
54
+ if (context) {
55
+ responsePromise = originalFetch.call(this, context.input as RequestInfo, context.init)
56
+ callMonitored(afterSend, null, [observable, responsePromise, context])
57
+ } else {
58
+ responsePromise = originalFetch.call(this, input, init)
59
+ }
60
+
61
+ return responsePromise
62
+ }
63
+ )
48
64
 
49
65
  return stop
50
66
  })
51
- }
52
-
53
- function beforeSend(
54
- { parameters, onPostCall }: InstrumentedMethodCall<Window, 'fetch'>,
55
- observable: Observable<FetchContext>
56
- ) {
57
- const [input, init] = parameters
58
- let methodFromParams = init && init.method
59
67
 
60
- if (methodFromParams === undefined && input instanceof Request) {
61
- methodFromParams = input.method
62
- }
68
+ return observable
69
+ }
63
70
 
64
- const method = methodFromParams !== undefined ? String(methodFromParams).toUpperCase() : 'GET'
71
+ function beforeSend(observable: Observable<FetchContext>, input: unknown, init?: RequestInit) {
72
+ const method = (init && init.method) || (input instanceof Request && input.method) || 'GET'
65
73
  const url = input instanceof Request ? input.url : normalizeUrl(String(input))
66
74
  const startClocks = clocksNow()
67
75
 
@@ -76,11 +84,7 @@ function beforeSend(
76
84
 
77
85
  observable.notify(context)
78
86
 
79
- // Those properties can be changed by observable subscribers
80
- parameters[0] = context.input as RequestInfo | URL
81
- parameters[1] = context.init
82
-
83
- onPostCall((responsePromise) => afterSend(observable, responsePromise, context))
87
+ return context
84
88
  }
85
89
 
86
90
  function afterSend(
@@ -19,7 +19,7 @@ export interface PageExitEvent {
19
19
  }
20
20
 
21
21
  export function createPageExitObservable(configuration: Configuration): Observable<PageExitEvent> {
22
- return new Observable<PageExitEvent>((observable) => {
22
+ const observable = new Observable<PageExitEvent>(() => {
23
23
  const pagehideEnabled = isExperimentalFeatureEnabled(ExperimentalFeature.PAGEHIDE)
24
24
  const { stop: stopListeners } = addEventListeners(
25
25
  configuration,
@@ -60,6 +60,8 @@ export function createPageExitObservable(configuration: Configuration): Observab
60
60
  stopBeforeUnloadListener()
61
61
  }
62
62
  })
63
+
64
+ return observable
63
65
  }
64
66
 
65
67
  export function isPageExitReason(reason: string | undefined): reason is PageExitReason {
@@ -1,8 +1,7 @@
1
- import type { InstrumentedMethodCall } from '../tools/instrumentMethod'
2
- import { instrumentMethod } from '../tools/instrumentMethod'
1
+ import { instrumentMethodAndCallOriginal } from '../tools/instrumentMethod'
3
2
  import { Observable } from '../tools/observable'
4
- import type { Duration, ClocksState } from '../tools/utils/timeUtils'
5
- import { elapsed, clocksNow, timeStampNow } from '../tools/utils/timeUtils'
3
+ import type { Duration, RelativeTime, ClocksState } from '../tools/utils/timeUtils'
4
+ import { elapsed, relativeNow, clocksNow, timeStampNow } from '../tools/utils/timeUtils'
6
5
  import { normalizeUrl } from '../tools/utils/urlPolyfill'
7
6
  import { shallowClone } from '../tools/utils/objectUtils'
8
7
  import type { Configuration } from '../domain/configuration'
@@ -16,6 +15,7 @@ export interface XhrOpenContext {
16
15
 
17
16
  export interface XhrStartContext extends Omit<XhrOpenContext, 'state'> {
18
17
  state: 'start'
18
+ startTime: RelativeTime // deprecated
19
19
  startClocks: ClocksState
20
20
  isAborted: boolean
21
21
  xhr: XMLHttpRequest
@@ -40,14 +40,20 @@ export function initXhrObservable(configuration: Configuration) {
40
40
  }
41
41
 
42
42
  function createXhrObservable(configuration: Configuration) {
43
- return new Observable<XhrContext>((observable) => {
44
- const { stop: stopInstrumentingStart } = instrumentMethod(XMLHttpRequest.prototype, 'open', openXhr)
43
+ const observable = new Observable<XhrContext>(() => {
44
+ const { stop: stopInstrumentingStart } = instrumentMethodAndCallOriginal(XMLHttpRequest.prototype, 'open', {
45
+ before: openXhr,
46
+ })
45
47
 
46
- const { stop: stopInstrumentingSend } = instrumentMethod(XMLHttpRequest.prototype, 'send', (call) => {
47
- sendXhr(call, configuration, observable)
48
+ const { stop: stopInstrumentingSend } = instrumentMethodAndCallOriginal(XMLHttpRequest.prototype, 'send', {
49
+ before() {
50
+ sendXhr.call(this, configuration, observable)
51
+ },
48
52
  })
49
53
 
50
- const { stop: stopInstrumentingAbort } = instrumentMethod(XMLHttpRequest.prototype, 'abort', abortXhr)
54
+ const { stop: stopInstrumentingAbort } = instrumentMethodAndCallOriginal(XMLHttpRequest.prototype, 'abort', {
55
+ before: abortXhr,
56
+ })
51
57
 
52
58
  return () => {
53
59
  stopInstrumentingStart()
@@ -55,42 +61,42 @@ function createXhrObservable(configuration: Configuration) {
55
61
  stopInstrumentingAbort()
56
62
  }
57
63
  })
64
+ return observable
58
65
  }
59
66
 
60
- function openXhr({ target: xhr, parameters: [method, url] }: InstrumentedMethodCall<XMLHttpRequest, 'open'>) {
61
- xhrContexts.set(xhr, {
67
+ function openXhr(this: XMLHttpRequest, method: string, url: string | URL | undefined | null) {
68
+ xhrContexts.set(this, {
62
69
  state: 'open',
63
- method: String(method).toUpperCase(),
70
+ method,
64
71
  url: normalizeUrl(String(url)),
65
72
  })
66
73
  }
67
74
 
68
- function sendXhr(
69
- { target: xhr }: InstrumentedMethodCall<XMLHttpRequest, 'send'>,
70
- configuration: Configuration,
71
- observable: Observable<XhrContext>
72
- ) {
73
- const context = xhrContexts.get(xhr)
75
+ function sendXhr(this: XMLHttpRequest, configuration: Configuration, observable: Observable<XhrContext>) {
76
+ const context = xhrContexts.get(this)
74
77
  if (!context) {
75
78
  return
76
79
  }
77
80
 
78
81
  const startContext = context as XhrStartContext
79
82
  startContext.state = 'start'
83
+ startContext.startTime = relativeNow()
80
84
  startContext.startClocks = clocksNow()
81
85
  startContext.isAborted = false
82
- startContext.xhr = xhr
86
+ startContext.xhr = this
83
87
 
84
88
  let hasBeenReported = false
85
89
 
86
- const { stop: stopInstrumentingOnReadyStateChange } = instrumentMethod(xhr, 'onreadystatechange', () => {
87
- if (xhr.readyState === XMLHttpRequest.DONE) {
88
- // Try to report the XHR as soon as possible, because the XHR may be mutated by the
89
- // application during a future event. For example, Angular is calling .abort() on
90
- // completed requests during an onreadystatechange event, so the status becomes '0'
91
- // before the request is collected.
92
- onEnd()
93
- }
90
+ const { stop: stopInstrumentingOnReadyStateChange } = instrumentMethodAndCallOriginal(this, 'onreadystatechange', {
91
+ before() {
92
+ if (this.readyState === XMLHttpRequest.DONE) {
93
+ // Try to report the XHR as soon as possible, because the XHR may be mutated by the
94
+ // application during a future event. For example, Angular is calling .abort() on
95
+ // completed requests during a onreadystatechange event, so the status becomes '0'
96
+ // before the request is collected.
97
+ onEnd()
98
+ }
99
+ },
94
100
  })
95
101
 
96
102
  const onEnd = () => {
@@ -104,17 +110,17 @@ function sendXhr(
104
110
  const completeContext = context as XhrCompleteContext
105
111
  completeContext.state = 'complete'
106
112
  completeContext.duration = elapsed(startContext.startClocks.timeStamp, timeStampNow())
107
- completeContext.status = xhr.status
113
+ completeContext.status = this.status
108
114
  observable.notify(shallowClone(completeContext))
109
115
  }
110
116
 
111
- const { stop: unsubscribeLoadEndListener } = addEventListener(configuration, xhr, 'loadend', onEnd)
117
+ const { stop: unsubscribeLoadEndListener } = addEventListener(configuration, this, 'loadend', onEnd)
112
118
 
113
119
  observable.notify(startContext)
114
120
  }
115
121
 
116
- function abortXhr({ target: xhr }: InstrumentedMethodCall<XMLHttpRequest, 'abort'>) {
117
- const context = xhrContexts.get(xhr) as XhrStartContext | undefined
122
+ function abortXhr(this: XMLHttpRequest) {
123
+ const context = xhrContexts.get(this) as XhrStartContext | undefined
118
124
  if (context) {
119
125
  context.isAborted = true
120
126
  }