@openobserve/browser-core 0.2.10 → 0.2.11-rc1

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 +12 -4
  4. package/cjs/browser/addEventListener.js +50 -8
  5. package/cjs/browser/addEventListener.js.map +1 -1
  6. package/cjs/browser/cookie.d.ts +7 -0
  7. package/cjs/browser/cookie.js +19 -2
  8. package/cjs/browser/cookie.js.map +1 -1
  9. package/cjs/browser/fetchObservable.js +14 -19
  10. package/cjs/browser/fetchObservable.js.map +1 -1
  11. package/cjs/browser/pageExitObservable.js +6 -7
  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 +1 -2
  16. package/cjs/browser/xhrObservable.js +26 -34
  17. package/cjs/browser/xhrObservable.js.map +1 -1
  18. package/cjs/domain/configuration/configuration.d.ts +17 -12
  19. package/cjs/domain/configuration/configuration.js +8 -9
  20. package/cjs/domain/configuration/configuration.js.map +1 -1
  21. package/cjs/domain/configuration/endpointBuilder.d.ts +6 -10
  22. package/cjs/domain/configuration/endpointBuilder.js +23 -33
  23. package/cjs/domain/configuration/endpointBuilder.js.map +1 -1
  24. package/cjs/domain/configuration/index.d.ts +2 -1
  25. package/cjs/domain/configuration/index.js +3 -1
  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/connectivity/connectivity.d.ts +13 -0
  31. package/cjs/domain/connectivity/connectivity.js +14 -0
  32. package/cjs/domain/connectivity/connectivity.js.map +1 -0
  33. package/cjs/domain/connectivity/index.d.ts +1 -0
  34. package/cjs/domain/{deflate → connectivity}/index.js +1 -1
  35. package/cjs/domain/connectivity/index.js.map +1 -0
  36. package/cjs/domain/console/consoleObservable.js +4 -7
  37. package/cjs/domain/console/consoleObservable.js.map +1 -1
  38. package/cjs/domain/context/contextConstants.d.ts +5 -0
  39. package/cjs/domain/{tracekit/types.js → context/contextConstants.js} +1 -1
  40. package/cjs/domain/context/contextConstants.js.map +1 -0
  41. package/cjs/domain/context/contextManager.d.ts +12 -0
  42. package/cjs/domain/context/contextManager.js +43 -0
  43. package/cjs/domain/context/contextManager.js.map +1 -0
  44. package/cjs/domain/context/customerDataTracker.d.ts +45 -0
  45. package/cjs/domain/context/customerDataTracker.js +107 -0
  46. package/cjs/domain/context/customerDataTracker.js.map +1 -0
  47. package/cjs/domain/context/storeContextManager.d.ts +6 -0
  48. package/cjs/domain/context/storeContextManager.js +38 -0
  49. package/cjs/domain/context/storeContextManager.js.map +1 -0
  50. package/cjs/domain/deflate/types.d.ts +0 -26
  51. package/cjs/domain/error/computeStackTrace.d.ts +33 -0
  52. package/cjs/domain/{tracekit → error}/computeStackTrace.js +28 -4
  53. package/cjs/domain/error/computeStackTrace.js.map +1 -0
  54. package/cjs/domain/error/error.d.ts +1 -1
  55. package/cjs/domain/error/error.js +3 -3
  56. package/cjs/domain/error/error.js.map +1 -1
  57. package/cjs/domain/error/error.types.d.ts +2 -2
  58. package/cjs/domain/error/error.types.js.map +1 -1
  59. package/cjs/domain/error/trackRuntimeError.d.ts +8 -0
  60. package/cjs/domain/error/trackRuntimeError.js +39 -6
  61. package/cjs/domain/error/trackRuntimeError.js.map +1 -1
  62. package/cjs/domain/eventRateLimiter/createEventRateLimiter.js.map +1 -1
  63. package/cjs/domain/report/browser.types.d.ts +10 -0
  64. package/cjs/domain/report/reportObservable.d.ts +2 -0
  65. package/cjs/domain/report/reportObservable.js +7 -7
  66. package/cjs/domain/report/reportObservable.js.map +1 -1
  67. package/cjs/domain/session/oldCookiesMigration.js +4 -4
  68. package/cjs/domain/session/oldCookiesMigration.js.map +1 -1
  69. package/cjs/domain/session/sessionManager.js +2 -2
  70. package/cjs/domain/session/sessionManager.js.map +1 -1
  71. package/cjs/domain/session/sessionState.js.map +1 -1
  72. package/cjs/domain/session/sessionStore.js.map +1 -1
  73. package/cjs/domain/session/sessionStoreOperations.d.ts +0 -5
  74. package/cjs/domain/session/sessionStoreOperations.js +6 -14
  75. package/cjs/domain/session/sessionStoreOperations.js.map +1 -1
  76. package/cjs/domain/session/storeStrategies/sessionInCookie.js +13 -2
  77. package/cjs/domain/session/storeStrategies/sessionInCookie.js.map +1 -1
  78. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js +1 -0
  79. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js.map +1 -1
  80. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.d.ts +1 -0
  81. package/cjs/domain/synthetics/syntheticsWorkerValues.js +3 -3
  82. package/cjs/domain/synthetics/syntheticsWorkerValues.js.map +1 -1
  83. package/cjs/domain/telemetry/rawTelemetryEvent.types.d.ts +4 -0
  84. package/cjs/domain/telemetry/telemetry.d.ts +5 -1
  85. package/cjs/domain/telemetry/telemetry.js +17 -6
  86. package/cjs/domain/telemetry/telemetry.js.map +1 -1
  87. package/cjs/domain/telemetry/telemetryEvent.types.d.ts +18 -2
  88. package/cjs/domain/user/user.js.map +1 -1
  89. package/cjs/tools/abstractLifeCycle.js.map +1 -1
  90. package/cjs/tools/boundedBuffer.js.map +1 -1
  91. package/cjs/tools/catchUserErrors.js.map +1 -1
  92. package/cjs/tools/display.d.ts +2 -2
  93. package/cjs/tools/display.js +13 -17
  94. package/cjs/tools/display.js.map +1 -1
  95. package/cjs/tools/encoder.d.ts +53 -0
  96. package/cjs/tools/encoder.js +41 -0
  97. package/cjs/tools/encoder.js.map +1 -0
  98. package/cjs/tools/experimentalFeatures.d.ts +3 -5
  99. package/cjs/tools/experimentalFeatures.js +2 -4
  100. package/cjs/tools/experimentalFeatures.js.map +1 -1
  101. package/cjs/tools/getGlobalObject.js.map +1 -1
  102. package/cjs/tools/getZoneJsOriginalValue.js.map +1 -1
  103. package/cjs/tools/instrumentMethod.d.ts +50 -10
  104. package/cjs/tools/instrumentMethod.js +59 -36
  105. package/cjs/tools/instrumentMethod.js.map +1 -1
  106. package/cjs/tools/matchOption.js.map +1 -1
  107. package/cjs/tools/mergeInto.js.map +1 -1
  108. package/cjs/tools/monitor.d.ts +1 -2
  109. package/cjs/tools/monitor.js +6 -6
  110. package/cjs/tools/monitor.js.map +1 -1
  111. package/cjs/tools/observable.d.ts +1 -1
  112. package/cjs/tools/observable.js +2 -3
  113. package/cjs/tools/observable.js.map +1 -1
  114. package/cjs/tools/readBytesFromStream.js.map +1 -1
  115. package/cjs/tools/sendToExtension.js.map +1 -1
  116. package/cjs/tools/serialisation/jsonStringify.d.ts +1 -2
  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 +8 -0
  120. package/cjs/tools/utils/browserDetection.js +33 -3
  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 +1 -0
  128. package/cjs/tools/utils/stringUtils.js +31 -4
  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 +5 -3
  135. package/cjs/transport/batch.js +73 -29
  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 +12 -2
  139. package/cjs/transport/flushController.js +22 -7
  140. package/cjs/transport/flushController.js.map +1 -1
  141. package/cjs/transport/httpRequest.d.ts +3 -2
  142. package/cjs/transport/httpRequest.js +21 -17
  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 +9 -4
  148. package/cjs/transport/startBatchWithReplica.js +9 -4
  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 +12 -4
  153. package/esm/browser/addEventListener.js +49 -7
  154. package/esm/browser/addEventListener.js.map +1 -1
  155. package/esm/browser/cookie.d.ts +7 -0
  156. package/esm/browser/cookie.js +17 -2
  157. package/esm/browser/cookie.js.map +1 -1
  158. package/esm/browser/fetchObservable.js +15 -20
  159. package/esm/browser/fetchObservable.js.map +1 -1
  160. package/esm/browser/pageExitObservable.js +7 -8
  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 +1 -2
  165. package/esm/browser/xhrObservable.js +28 -36
  166. package/esm/browser/xhrObservable.js.map +1 -1
  167. package/esm/domain/configuration/configuration.d.ts +17 -12
  168. package/esm/domain/configuration/configuration.js +8 -9
  169. package/esm/domain/configuration/configuration.js.map +1 -1
  170. package/esm/domain/configuration/endpointBuilder.d.ts +6 -10
  171. package/esm/domain/configuration/endpointBuilder.js +22 -32
  172. package/esm/domain/configuration/endpointBuilder.js.map +1 -1
  173. package/esm/domain/configuration/index.d.ts +2 -1
  174. package/esm/domain/configuration/index.js +1 -0
  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/connectivity/connectivity.d.ts +13 -0
  180. package/esm/domain/connectivity/connectivity.js +10 -0
  181. package/esm/domain/connectivity/connectivity.js.map +1 -0
  182. package/esm/domain/connectivity/index.d.ts +1 -0
  183. package/esm/domain/connectivity/index.js +2 -0
  184. package/esm/domain/connectivity/index.js.map +1 -0
  185. package/esm/domain/console/consoleObservable.js +2 -5
  186. package/esm/domain/console/consoleObservable.js.map +1 -1
  187. package/esm/domain/context/contextConstants.d.ts +5 -0
  188. package/esm/domain/context/contextConstants.js +2 -0
  189. package/esm/domain/context/contextConstants.js.map +1 -0
  190. package/esm/domain/context/contextManager.d.ts +12 -0
  191. package/esm/domain/context/contextManager.js +39 -0
  192. package/esm/domain/context/contextManager.js.map +1 -0
  193. package/esm/domain/context/customerDataTracker.d.ts +45 -0
  194. package/esm/domain/context/customerDataTracker.js +102 -0
  195. package/esm/domain/context/customerDataTracker.js.map +1 -0
  196. package/esm/domain/context/storeContextManager.d.ts +6 -0
  197. package/esm/domain/context/storeContextManager.js +32 -0
  198. package/esm/domain/context/storeContextManager.js.map +1 -0
  199. package/esm/domain/deflate/types.d.ts +12 -0
  200. package/esm/domain/error/computeStackTrace.d.ts +33 -0
  201. package/esm/domain/{tracekit → error}/computeStackTrace.js +26 -3
  202. package/esm/domain/error/computeStackTrace.js.map +1 -0
  203. package/esm/domain/error/error.d.ts +1 -1
  204. package/esm/domain/error/error.js +1 -1
  205. package/esm/domain/error/error.js.map +1 -1
  206. package/esm/domain/error/error.types.d.ts +2 -2
  207. package/esm/domain/error/error.types.js.map +1 -1
  208. package/esm/domain/error/trackRuntimeError.d.ts +8 -0
  209. package/esm/domain/error/trackRuntimeError.js +35 -4
  210. package/esm/domain/error/trackRuntimeError.js.map +1 -1
  211. package/esm/domain/eventRateLimiter/createEventRateLimiter.js.map +1 -1
  212. package/esm/domain/report/browser.types.d.ts +10 -0
  213. package/esm/domain/report/reportObservable.d.ts +2 -0
  214. package/esm/domain/report/reportObservable.js +8 -8
  215. package/esm/domain/report/reportObservable.js.map +1 -1
  216. package/esm/domain/session/oldCookiesMigration.js +5 -5
  217. package/esm/domain/session/oldCookiesMigration.js.map +1 -1
  218. package/esm/domain/session/sessionManager.js +3 -3
  219. package/esm/domain/session/sessionManager.js.map +1 -1
  220. package/esm/domain/session/sessionState.js.map +1 -1
  221. package/esm/domain/session/sessionStore.js.map +1 -1
  222. package/esm/domain/session/sessionStoreOperations.d.ts +0 -5
  223. package/esm/domain/session/sessionStoreOperations.js +5 -12
  224. package/esm/domain/session/sessionStoreOperations.js.map +1 -1
  225. package/esm/domain/session/storeStrategies/sessionInCookie.js +13 -2
  226. package/esm/domain/session/storeStrategies/sessionInCookie.js.map +1 -1
  227. package/esm/domain/session/storeStrategies/sessionInLocalStorage.js +1 -0
  228. package/esm/domain/session/storeStrategies/sessionInLocalStorage.js.map +1 -1
  229. package/esm/domain/session/storeStrategies/sessionStoreStrategy.d.ts +1 -0
  230. package/esm/domain/synthetics/syntheticsWorkerValues.js +4 -4
  231. package/esm/domain/synthetics/syntheticsWorkerValues.js.map +1 -1
  232. package/esm/domain/telemetry/rawTelemetryEvent.types.d.ts +4 -0
  233. package/esm/domain/telemetry/telemetry.d.ts +5 -1
  234. package/esm/domain/telemetry/telemetry.js +16 -5
  235. package/esm/domain/telemetry/telemetry.js.map +1 -1
  236. package/esm/domain/telemetry/telemetryEvent.types.d.ts +18 -2
  237. package/esm/domain/user/user.js.map +1 -1
  238. package/esm/index.d.ts +9 -5
  239. package/esm/index.js +8 -5
  240. package/esm/index.js.map +1 -1
  241. package/esm/tools/abstractLifeCycle.js.map +1 -1
  242. package/esm/tools/boundedBuffer.js.map +1 -1
  243. package/esm/tools/catchUserErrors.js.map +1 -1
  244. package/esm/tools/display.d.ts +2 -2
  245. package/esm/tools/display.js +12 -15
  246. package/esm/tools/display.js.map +1 -1
  247. package/esm/tools/encoder.d.ts +53 -0
  248. package/esm/tools/encoder.js +37 -0
  249. package/esm/tools/encoder.js.map +1 -0
  250. package/esm/tools/experimentalFeatures.d.ts +3 -5
  251. package/esm/tools/experimentalFeatures.js +2 -4
  252. package/esm/tools/experimentalFeatures.js.map +1 -1
  253. package/esm/tools/getGlobalObject.js.map +1 -1
  254. package/esm/tools/getZoneJsOriginalValue.js.map +1 -1
  255. package/esm/tools/instrumentMethod.d.ts +50 -10
  256. package/esm/tools/instrumentMethod.js +58 -34
  257. package/esm/tools/instrumentMethod.js.map +1 -1
  258. package/esm/tools/matchOption.js.map +1 -1
  259. package/esm/tools/mergeInto.js.map +1 -1
  260. package/esm/tools/monitor.d.ts +1 -2
  261. package/esm/tools/monitor.js +7 -7
  262. package/esm/tools/monitor.js.map +1 -1
  263. package/esm/tools/observable.d.ts +1 -1
  264. package/esm/tools/observable.js +2 -3
  265. package/esm/tools/observable.js.map +1 -1
  266. package/esm/tools/readBytesFromStream.js.map +1 -1
  267. package/esm/tools/sendToExtension.js.map +1 -1
  268. package/esm/tools/serialisation/jsonStringify.d.ts +1 -2
  269. package/esm/tools/serialisation/jsonStringify.js.map +1 -1
  270. package/esm/tools/serialisation/sanitize.js.map +1 -1
  271. package/esm/tools/utils/browserDetection.d.ts +8 -0
  272. package/esm/tools/utils/browserDetection.js +30 -2
  273. package/esm/tools/utils/browserDetection.js.map +1 -1
  274. package/esm/tools/utils/byteUtils.js.map +1 -1
  275. package/esm/tools/utils/functionUtils.js.map +1 -1
  276. package/esm/tools/utils/objectUtils.js.map +1 -1
  277. package/esm/tools/utils/polyfills.js.map +1 -1
  278. package/esm/tools/utils/responseUtils.js.map +1 -1
  279. package/esm/tools/utils/stringUtils.d.ts +1 -0
  280. package/esm/tools/utils/stringUtils.js +29 -3
  281. package/esm/tools/utils/stringUtils.js.map +1 -1
  282. package/esm/tools/utils/timeUtils.js.map +1 -1
  283. package/esm/tools/utils/typeUtils.js.map +1 -1
  284. package/esm/tools/utils/urlPolyfill.js.map +1 -1
  285. package/esm/tools/valueHistory.js.map +1 -1
  286. package/esm/transport/batch.d.ts +5 -3
  287. package/esm/transport/batch.js +73 -29
  288. package/esm/transport/batch.js.map +1 -1
  289. package/esm/transport/eventBridge.js.map +1 -1
  290. package/esm/transport/flushController.d.ts +12 -2
  291. package/esm/transport/flushController.js +22 -7
  292. package/esm/transport/flushController.js.map +1 -1
  293. package/esm/transport/httpRequest.d.ts +3 -2
  294. package/esm/transport/httpRequest.js +21 -17
  295. package/esm/transport/httpRequest.js.map +1 -1
  296. package/esm/transport/sendWithRetryStrategy.d.ts +2 -2
  297. package/esm/transport/sendWithRetryStrategy.js +9 -9
  298. package/esm/transport/sendWithRetryStrategy.js.map +1 -1
  299. package/esm/transport/startBatchWithReplica.d.ts +9 -4
  300. package/esm/transport/startBatchWithReplica.js +9 -4
  301. package/esm/transport/startBatchWithReplica.js.map +1 -1
  302. package/package.json +1 -1
  303. package/src/browser/addEventListener.ts +37 -31
  304. package/src/browser/cookie.ts +21 -2
  305. package/src/browser/fetchObservable.ts +21 -25
  306. package/src/browser/pageExitObservable.ts +1 -3
  307. package/src/browser/xhrObservable.ts +31 -37
  308. package/src/domain/configuration/configuration.ts +24 -22
  309. package/src/domain/configuration/endpointBuilder.ts +33 -46
  310. package/src/domain/configuration/index.ts +2 -1
  311. package/src/domain/configuration/transportConfiguration.ts +1 -1
  312. package/src/domain/connectivity/connectivity.ts +27 -0
  313. package/src/domain/connectivity/index.ts +1 -0
  314. package/src/domain/console/consoleObservable.ts +3 -7
  315. package/src/domain/context/contextConstants.ts +5 -0
  316. package/src/domain/context/contextManager.ts +48 -0
  317. package/src/domain/context/customerDataTracker.ts +134 -0
  318. package/src/domain/context/storeContextManager.ts +51 -0
  319. package/src/domain/deflate/types.ts +14 -0
  320. package/src/domain/{tracekit → error}/computeStackTrace.ts +49 -4
  321. package/src/domain/error/error.ts +2 -2
  322. package/src/domain/error/error.types.ts +11 -2
  323. package/src/domain/error/trackRuntimeError.ts +44 -12
  324. package/src/domain/report/browser.types.ts +12 -0
  325. package/src/domain/report/reportObservable.ts +8 -6
  326. package/src/domain/session/oldCookiesMigration.ts +5 -5
  327. package/src/domain/session/sessionStoreOperations.ts +5 -13
  328. package/src/domain/session/storeStrategies/sessionInCookie.ts +13 -2
  329. package/src/domain/session/storeStrategies/sessionInLocalStorage.ts +1 -0
  330. package/src/domain/session/storeStrategies/sessionStoreStrategy.ts +1 -0
  331. package/src/domain/synthetics/syntheticsWorkerValues.ts +4 -4
  332. package/src/domain/telemetry/rawTelemetryEvent.types.ts +5 -0
  333. package/src/domain/telemetry/telemetry.ts +22 -7
  334. package/src/domain/telemetry/telemetryEvent.types.ts +18 -2
  335. package/src/index.ts +13 -7
  336. package/src/tools/display.ts +14 -13
  337. package/src/tools/encoder.ts +102 -0
  338. package/src/tools/experimentalFeatures.ts +2 -4
  339. package/src/tools/instrumentMethod.ts +103 -59
  340. package/src/tools/mergeInto.ts +16 -16
  341. package/src/tools/monitor.ts +5 -5
  342. package/src/tools/observable.ts +3 -5
  343. package/src/tools/utils/browserDetection.ts +43 -2
  344. package/src/tools/utils/polyfills.ts +1 -4
  345. package/src/tools/utils/stringUtils.ts +30 -4
  346. package/src/transport/batch.ts +86 -31
  347. package/src/transport/flushController.ts +22 -7
  348. package/src/transport/httpRequest.ts +23 -16
  349. package/src/transport/sendWithRetryStrategy.ts +10 -10
  350. package/src/transport/startBatchWithReplica.ts +22 -6
  351. package/cjs/domain/deflate/index.d.ts +0 -1
  352. package/cjs/domain/deflate/index.js.map +0 -1
  353. package/cjs/domain/tracekit/computeStackTrace.d.ts +0 -5
  354. package/cjs/domain/tracekit/computeStackTrace.js.map +0 -1
  355. package/cjs/domain/tracekit/index.d.ts +0 -3
  356. package/cjs/domain/tracekit/index.js +0 -8
  357. package/cjs/domain/tracekit/index.js.map +0 -1
  358. package/cjs/domain/tracekit/tracekit.d.ts +0 -35
  359. package/cjs/domain/tracekit/tracekit.js +0 -95
  360. package/cjs/domain/tracekit/tracekit.js.map +0 -1
  361. package/cjs/domain/tracekit/types.d.ts +0 -44
  362. package/cjs/domain/tracekit/types.js.map +0 -1
  363. package/cjs/index.d.ts +0 -63
  364. package/cjs/index.js +0 -155
  365. package/cjs/index.js.map +0 -1
  366. package/cjs/tools/serialisation/contextManager.d.ts +0 -21
  367. package/cjs/tools/serialisation/contextManager.js +0 -70
  368. package/cjs/tools/serialisation/contextManager.js.map +0 -1
  369. package/cjs/tools/serialisation/heavyCustomerDataWarning.d.ts +0 -8
  370. package/cjs/tools/serialisation/heavyCustomerDataWarning.js +0 -18
  371. package/cjs/tools/serialisation/heavyCustomerDataWarning.js.map +0 -1
  372. package/esm/domain/tracekit/computeStackTrace.d.ts +0 -5
  373. package/esm/domain/tracekit/computeStackTrace.js.map +0 -1
  374. package/esm/domain/tracekit/index.d.ts +0 -3
  375. package/esm/domain/tracekit/index.js +0 -3
  376. package/esm/domain/tracekit/index.js.map +0 -1
  377. package/esm/domain/tracekit/tracekit.d.ts +0 -35
  378. package/esm/domain/tracekit/tracekit.js +0 -91
  379. package/esm/domain/tracekit/tracekit.js.map +0 -1
  380. package/esm/domain/tracekit/types.d.ts +0 -44
  381. package/esm/domain/tracekit/types.js +0 -2
  382. package/esm/domain/tracekit/types.js.map +0 -1
  383. package/esm/tools/serialisation/contextManager.d.ts +0 -21
  384. package/esm/tools/serialisation/contextManager.js +0 -66
  385. package/esm/tools/serialisation/contextManager.js.map +0 -1
  386. package/esm/tools/serialisation/heavyCustomerDataWarning.d.ts +0 -8
  387. package/esm/tools/serialisation/heavyCustomerDataWarning.js +0 -14
  388. package/esm/tools/serialisation/heavyCustomerDataWarning.js.map +0 -1
  389. package/src/domain/tracekit/index.ts +0 -3
  390. package/src/domain/tracekit/tracekit.ts +0 -96
  391. package/src/domain/tracekit/types.ts +0 -47
  392. package/src/tools/serialisation/contextManager.ts +0 -79
  393. package/src/tools/serialisation/heavyCustomerDataWarning.ts +0 -26
@@ -3,13 +3,18 @@ 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
- export declare function startBatchWithReplica<T extends Context>(configuration: Configuration, primary: {
7
- endpoint: EndpointBuilder;
8
- }, replica: {
6
+ import type { Encoder } from '../tools/encoder';
7
+ export interface BatchConfiguration {
9
8
  endpoint: EndpointBuilder;
9
+ encoder: Encoder;
10
+ }
11
+ interface ReplicaBatchConfiguration<T> extends BatchConfiguration {
10
12
  transformMessage?: (message: T) => T;
11
- } | undefined, reportError: (error: RawError) => void, pageExitObservable: Observable<PageExitEvent>, sessionExpireObservable: Observable<void>): {
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>): {
12
15
  flushObservable: Observable<import("./flushController").FlushEvent>;
13
16
  add(message: T, replicated?: boolean): void;
14
17
  upsert: (message: T, key: string) => void;
18
+ stop: () => void;
15
19
  };
20
+ export {};
@@ -5,10 +5,11 @@ var batch_1 = require("./batch");
5
5
  var httpRequest_1 = require("./httpRequest");
6
6
  var flushController_1 = require("./flushController");
7
7
  function startBatchWithReplica(configuration, primary, replica, reportError, pageExitObservable, sessionExpireObservable) {
8
- var primaryBatch = createBatch(configuration, primary.endpoint);
9
- var replicaBatch = replica && createBatch(configuration, replica.endpoint);
10
- function createBatch(configuration, endpointBuilder) {
11
- return new batch_1.Batch((0, httpRequest_1.createHttpRequest)(configuration, endpointBuilder, configuration.batchBytesLimit, reportError), (0, flushController_1.createFlushController)({
8
+ var primaryBatch = createBatch(configuration, primary);
9
+ var replicaBatch = replica && createBatch(configuration, replica);
10
+ function createBatch(configuration, _a) {
11
+ var endpoint = _a.endpoint, encoder = _a.encoder;
12
+ return new batch_1.Batch(encoder, (0, httpRequest_1.createHttpRequest)(configuration, endpoint, configuration.batchBytesLimit, reportError), (0, flushController_1.createFlushController)({
12
13
  messagesLimit: configuration.batchMessagesLimit,
13
14
  bytesLimit: configuration.batchBytesLimit,
14
15
  durationLimit: configuration.flushTimeout,
@@ -31,6 +32,10 @@ function startBatchWithReplica(configuration, primary, replica, reportError, pag
31
32
  replicaBatch.upsert(replica.transformMessage ? replica.transformMessage(message) : message, key);
32
33
  }
33
34
  },
35
+ stop: function () {
36
+ primaryBatch.stop();
37
+ replicaBatch === null || replicaBatch === void 0 ? void 0 : replicaBatch.stop();
38
+ },
34
39
  };
35
40
  }
36
41
  exports.startBatchWithReplica = startBatchWithReplica;
@@ -1 +1 @@
1
- {"version":3,"file":"startBatchWithReplica.js","sourceRoot":"","sources":["../../src/transport/startBatchWithReplica.ts"],"names":[],"mappings":";;;AAKA,iCAA+B;AAC/B,6CAAiD;AACjD,qDAAyD;AAEzD,SAAgB,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,aAAK,CACd,IAAA,+BAAiB,EAAC,aAAa,EAAE,eAAe,EAAE,aAAa,CAAC,eAAe,EAAE,WAAW,CAAC,EAC7F,IAAA,uCAAqB,EAAC;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;AA1CD,sDA0CC"}
1
+ {"version":3,"file":"startBatchWithReplica.js","sourceRoot":"","sources":["../../src/transport/startBatchWithReplica.ts"],"names":[],"mappings":";;;AAMA,iCAA+B;AAC/B,6CAAiD;AACjD,qDAAyD;AAWzD,SAAgB,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,aAAK,CACd,OAAO,EACP,IAAA,+BAAiB,EAAC,aAAa,EAAE,QAAQ,EAAE,aAAa,CAAC,eAAe,EAAE,WAAW,CAAC,EACtF,IAAA,uCAAqB,EAAC;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;AAhDD,sDAgDC"}
package/esm/boot/init.js CHANGED
@@ -3,7 +3,7 @@ import { setDebugMode } from '../tools/monitor';
3
3
  import { assign } from '../tools/utils/polyfills';
4
4
  export function makePublicApi(stub) {
5
5
  var publicApi = assign({
6
- version: "0.2.10",
6
+ version: __BUILD_ENV__SDK_VERSION__,
7
7
  // This API method is intentionally not monitored, since the only thing executed is the
8
8
  // user-provided 'callback'. All SDK usages executed in the callback should be monitored, and
9
9
  // we don't want to interfere with the user uncaught exceptions.
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/boot/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AAKjD,MAAM,UAAU,aAAa,CAAI,IAAO;IACtC,IAAM,SAAS,GAAG,MAAM,CACtB;QACE,OAAO,EAAE,0BAA0B;QAEnC,uFAAuF;QACvF,8FAA8F;QAC9F,gEAAgE;QAChE,OAAO,YAAC,QAAoB;YAC1B,QAAQ,EAAE,CAAA;QACZ,CAAC;KACF,EACD,IAAI,CACL,CAAA;IAED,8EAA8E;IAC9E,gEAAgE;IAChE,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,WAAW,EAAE;QAC5C,GAAG;YACD,OAAO,YAAY,CAAA;QACrB,CAAC;QACD,UAAU,EAAE,KAAK;KAClB,CAAC,CAAA;IAEF,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,MAAM,UAAU,YAAY,CAAoC,MAAc,EAAE,IAAU,EAAE,GAAiB;IAC3G,IAAM,sBAAsB,GAAG,MAAM,CAAC,IAAI,CAA0C,CAAA;IACpF,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAA;IAClB,IAAI,sBAAsB,IAAI,sBAAsB,CAAC,CAAC,EAAE;QACtD,sBAAsB,CAAC,CAAC,CAAC,OAAO,CAAC,UAAC,EAAE,IAAK,OAAA,eAAe,CAAC,EAAE,EAAE,kCAAkC,CAAC,EAAE,EAAzD,CAAyD,CAAC,CAAA;KACpG;AACH,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/boot/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AAKjD,MAAM,UAAU,aAAa,CAAI,IAAO;IACtC,IAAM,SAAS,GAAG,MAAM,CACtB;QACE,OAAO,EAAE,0BAA0B;QAEnC,uFAAuF;QACvF,8FAA8F;QAC9F,gEAAgE;QAChE,OAAO,YAAC,QAAoB;YAC1B,QAAQ,EAAE,CAAA;QACZ,CAAC;KACF,EACD,IAAI,CACL,CAAA;IAED,8EAA8E;IAC9E,gEAAgE;IAChE,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,WAAW,EAAE;QAC5C,GAAG;YACD,OAAO,YAAY,CAAA;QACrB,CAAC;QACD,UAAU,EAAE,KAAK;KAClB,CAAC,CAAA;IAEF,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,MAAM,UAAU,YAAY,CAAoC,MAAc,EAAE,IAAU,EAAE,GAAiB;IAC3G,IAAM,sBAAsB,GAAG,MAAM,CAAC,IAAI,CAA0C,CAAA;IACpF,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAA;IAClB,IAAI,sBAAsB,IAAI,sBAAsB,CAAC,CAAC,EAAE,CAAC;QACvD,sBAAsB,CAAC,CAAC,CAAC,OAAO,CAAC,UAAC,EAAE,IAAK,OAAA,eAAe,CAAC,EAAE,EAAE,kCAAkC,CAAC,EAAE,EAAzD,CAAyD,CAAC,CAAA;IACrG,CAAC;AACH,CAAC"}
@@ -1,6 +1,9 @@
1
1
  import type { Configuration } from '../domain/configuration';
2
2
  import type { VisualViewport, VisualViewportEventMap } from './types';
3
- export declare const enum DOM_EVENT {
3
+ export type TrustableEvent<E extends Event = Event> = E & {
4
+ __ddIsTrusted?: boolean;
5
+ };
6
+ export declare enum DOM_EVENT {
4
7
  BEFORE_UNLOAD = "beforeunload",
5
8
  CLICK = "click",
6
9
  DBL_CLICK = "dblclick",
@@ -33,7 +36,8 @@ export declare const enum DOM_EVENT {
33
36
  PLAY = "play",
34
37
  PAUSE = "pause",
35
38
  SECURITY_POLICY_VIOLATION = "securitypolicyviolation",
36
- SELECTION_CHANGE = "selectionchange"
39
+ SELECTION_CHANGE = "selectionchange",
40
+ STORAGE = "storage"
37
41
  }
38
42
  interface AddEventListenerOptions {
39
43
  once?: boolean;
@@ -55,7 +59,9 @@ type EventMapFor<T> = T extends Window ? WindowEventMap & {
55
59
  *
56
60
  * * returns a `stop` function to remove the listener
57
61
  */
58
- export declare function addEventListener<Target extends EventTarget, EventName extends keyof EventMapFor<Target> & string>(configuration: Configuration, eventTarget: Target, eventName: EventName, listener: (event: EventMapFor<Target>[EventName]) => void, options?: AddEventListenerOptions): {
62
+ export declare function addEventListener<Target extends EventTarget, EventName extends keyof EventMapFor<Target> & string>(configuration: Configuration, eventTarget: Target, eventName: EventName, listener: (event: EventMapFor<Target>[EventName] & {
63
+ type: EventName;
64
+ }) => void, options?: AddEventListenerOptions): {
59
65
  stop: () => void;
60
66
  };
61
67
  /**
@@ -70,7 +76,9 @@ export declare function addEventListener<Target extends EventTarget, EventName e
70
76
  *
71
77
  * * with `once: true`, the listener will be called at most once, even if different events are listened
72
78
  */
73
- export declare function addEventListeners<Target extends EventTarget, EventName extends keyof EventMapFor<Target> & string>(_: Configuration, eventTarget: Target, eventNames: EventName[], listener: (event: EventMapFor<Target>[EventName]) => void, { once, capture, passive }?: AddEventListenerOptions): {
79
+ export declare function addEventListeners<Target extends EventTarget, EventName extends keyof EventMapFor<Target> & string>(configuration: Configuration, eventTarget: Target, eventNames: EventName[], listener: (event: EventMapFor<Target>[EventName] & {
80
+ type: EventName;
81
+ }) => void, { once, capture, passive }?: AddEventListenerOptions): {
74
82
  stop: () => void;
75
83
  };
76
84
  export {};
@@ -1,5 +1,44 @@
1
1
  import { monitor } from '../tools/monitor';
2
2
  import { getZoneJsOriginalValue } from '../tools/getZoneJsOriginalValue';
3
+ // 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
4
+ // eslint-disable-next-line no-restricted-syntax
5
+ export var DOM_EVENT;
6
+ (function (DOM_EVENT) {
7
+ DOM_EVENT["BEFORE_UNLOAD"] = "beforeunload";
8
+ DOM_EVENT["CLICK"] = "click";
9
+ DOM_EVENT["DBL_CLICK"] = "dblclick";
10
+ DOM_EVENT["KEY_DOWN"] = "keydown";
11
+ DOM_EVENT["LOAD"] = "load";
12
+ DOM_EVENT["POP_STATE"] = "popstate";
13
+ DOM_EVENT["SCROLL"] = "scroll";
14
+ DOM_EVENT["TOUCH_START"] = "touchstart";
15
+ DOM_EVENT["TOUCH_END"] = "touchend";
16
+ DOM_EVENT["TOUCH_MOVE"] = "touchmove";
17
+ DOM_EVENT["VISIBILITY_CHANGE"] = "visibilitychange";
18
+ DOM_EVENT["PAGE_SHOW"] = "pageshow";
19
+ DOM_EVENT["FREEZE"] = "freeze";
20
+ DOM_EVENT["RESUME"] = "resume";
21
+ DOM_EVENT["DOM_CONTENT_LOADED"] = "DOMContentLoaded";
22
+ DOM_EVENT["POINTER_DOWN"] = "pointerdown";
23
+ DOM_EVENT["POINTER_UP"] = "pointerup";
24
+ DOM_EVENT["POINTER_CANCEL"] = "pointercancel";
25
+ DOM_EVENT["HASH_CHANGE"] = "hashchange";
26
+ DOM_EVENT["PAGE_HIDE"] = "pagehide";
27
+ DOM_EVENT["MOUSE_DOWN"] = "mousedown";
28
+ DOM_EVENT["MOUSE_UP"] = "mouseup";
29
+ DOM_EVENT["MOUSE_MOVE"] = "mousemove";
30
+ DOM_EVENT["FOCUS"] = "focus";
31
+ DOM_EVENT["BLUR"] = "blur";
32
+ DOM_EVENT["CONTEXT_MENU"] = "contextmenu";
33
+ DOM_EVENT["RESIZE"] = "resize";
34
+ DOM_EVENT["CHANGE"] = "change";
35
+ DOM_EVENT["INPUT"] = "input";
36
+ DOM_EVENT["PLAY"] = "play";
37
+ DOM_EVENT["PAUSE"] = "pause";
38
+ DOM_EVENT["SECURITY_POLICY_VIOLATION"] = "securitypolicyviolation";
39
+ DOM_EVENT["SELECTION_CHANGE"] = "selectionchange";
40
+ DOM_EVENT["STORAGE"] = "storage";
41
+ })(DOM_EVENT || (DOM_EVENT = {}));
3
42
  /**
4
43
  * Add an event listener to an event target object (Window, Element, mock object...). This provides
5
44
  * a few conveniences compared to using `element.addEventListener` directly:
@@ -25,20 +64,23 @@ export function addEventListener(configuration, eventTarget, eventName, listener
25
64
  *
26
65
  * * with `once: true`, the listener will be called at most once, even if different events are listened
27
66
  */
28
- export function addEventListeners(_, eventTarget, eventNames, listener, _a) {
67
+ export function addEventListeners(configuration, eventTarget, eventNames, listener, _a) {
29
68
  var _b = _a === void 0 ? {} : _a, once = _b.once, capture = _b.capture, passive = _b.passive;
30
- var wrappedListener = monitor(once
31
- ? function (event) {
69
+ var listenerWithMonitor = monitor(function (event) {
70
+ if (!event.isTrusted && !event.__ddIsTrusted && !configuration.allowUntrustedEvents) {
71
+ return;
72
+ }
73
+ if (once) {
32
74
  stop();
33
- listener(event);
34
75
  }
35
- : listener);
76
+ listener(event);
77
+ });
36
78
  var options = passive ? { capture: capture, passive: passive } : capture;
37
79
  var add = getZoneJsOriginalValue(eventTarget, 'addEventListener');
38
- eventNames.forEach(function (eventName) { return add.call(eventTarget, eventName, wrappedListener, options); });
80
+ eventNames.forEach(function (eventName) { return add.call(eventTarget, eventName, listenerWithMonitor, options); });
39
81
  function stop() {
40
82
  var remove = getZoneJsOriginalValue(eventTarget, 'removeEventListener');
41
- eventNames.forEach(function (eventName) { return remove.call(eventTarget, eventName, wrappedListener, options); });
83
+ eventNames.forEach(function (eventName) { return remove.call(eventTarget, eventName, listenerWithMonitor, options); });
42
84
  }
43
85
  return {
44
86
  stop: stop,
@@ -1 +1 @@
1
- {"version":3,"file":"addEventListener.js","sourceRoot":"","sources":["../../src/browser/addEventListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAyExE;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAC9B,aAA4B,EAC5B,WAAmB,EACnB,SAAoB,EACpB,QAAyD,EACzD,OAAiC;IAEjC,OAAO,iBAAiB,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;AACtF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAC/B,CAAgB,EAChB,WAAmB,EACnB,UAAuB,EACvB,QAAyD,EACzD,EAAwD;QAAxD,qBAAsD,EAAE,KAAA,EAAtD,IAAI,UAAA,EAAE,OAAO,aAAA,EAAE,OAAO,aAAA;IAExB,IAAM,eAAe,GAAG,OAAO,CAC7B,IAAI;QACF,CAAC,CAAC,UAAC,KAAY;YACX,IAAI,EAAE,CAAA;YACN,QAAQ,CAAC,KAAuC,CAAC,CAAA;QACnD,CAAC;QACH,CAAC,CAAE,QAAmC,CACzC,CAAA;IAED,IAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,SAAA,EAAE,OAAO,SAAA,EAAE,CAAC,CAAC,CAAC,OAAO,CAAA;IAExD,IAAM,GAAG,GAAG,sBAAsB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAA;IACnE,UAAU,CAAC,OAAO,CAAC,UAAC,SAAS,IAAK,OAAA,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,CAAC,EAA1D,CAA0D,CAAC,CAAA;IAE7F,SAAS,IAAI;QACX,IAAM,MAAM,GAAG,sBAAsB,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAA;QACzE,UAAU,CAAC,OAAO,CAAC,UAAC,SAAS,IAAK,OAAA,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,CAAC,EAA7D,CAA6D,CAAC,CAAA;IAClG,CAAC;IAED,OAAO;QACL,IAAI,MAAA;KACL,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"addEventListener.js","sourceRoot":"","sources":["../../src/browser/addEventListener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAMxE,wIAAwI;AACxI,gDAAgD;AAChD,MAAM,CAAN,IAAY,SAmCX;AAnCD,WAAY,SAAS;IACnB,2CAA8B,CAAA;IAC9B,4BAAe,CAAA;IACf,mCAAsB,CAAA;IACtB,iCAAoB,CAAA;IACpB,0BAAa,CAAA;IACb,mCAAsB,CAAA;IACtB,8BAAiB,CAAA;IACjB,uCAA0B,CAAA;IAC1B,mCAAsB,CAAA;IACtB,qCAAwB,CAAA;IACxB,mDAAsC,CAAA;IACtC,mCAAsB,CAAA;IACtB,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;IACjB,oDAAuC,CAAA;IACvC,yCAA4B,CAAA;IAC5B,qCAAwB,CAAA;IACxB,6CAAgC,CAAA;IAChC,uCAA0B,CAAA;IAC1B,mCAAsB,CAAA;IACtB,qCAAwB,CAAA;IACxB,iCAAoB,CAAA;IACpB,qCAAwB,CAAA;IACxB,4BAAe,CAAA;IACf,0BAAa,CAAA;IACb,yCAA4B,CAAA;IAC5B,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;IACjB,4BAAe,CAAA;IACf,0BAAa,CAAA;IACb,4BAAe,CAAA;IACf,kEAAqD,CAAA;IACrD,iDAAoC,CAAA;IACpC,gCAAmB,CAAA;AACrB,CAAC,EAnCW,SAAS,KAAT,SAAS,QAmCpB;AAmCD;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAC9B,aAA4B,EAC5B,WAAmB,EACnB,SAAoB,EACpB,QAA+E,EAC/E,OAAiC;IAEjC,OAAO,iBAAiB,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;AACtF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAC/B,aAA4B,EAC5B,WAAmB,EACnB,UAAuB,EACvB,QAA+E,EAC/E,EAAwD;QAAxD,qBAAsD,EAAE,KAAA,EAAtD,IAAI,UAAA,EAAE,OAAO,aAAA,EAAE,OAAO,aAAA;IAExB,IAAM,mBAAmB,GAAG,OAAO,CAAC,UAAC,KAAqB;QACxD,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE,CAAC;YACpF,OAAM;QACR,CAAC;QACD,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,EAAE,CAAA;QACR,CAAC;QACD,QAAQ,CAAC,KAAwE,CAAC,CAAA;IACpF,CAAC,CAAC,CAAA;IAEF,IAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,SAAA,EAAE,OAAO,SAAA,EAAE,CAAC,CAAC,CAAC,OAAO,CAAA;IAExD,IAAM,GAAG,GAAG,sBAAsB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAA;IACnE,UAAU,CAAC,OAAO,CAAC,UAAC,SAAS,IAAK,OAAA,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAA9D,CAA8D,CAAC,CAAA;IAEjG,SAAS,IAAI;QACX,IAAM,MAAM,GAAG,sBAAsB,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAA;QACzE,UAAU,CAAC,OAAO,CAAC,UAAC,SAAS,IAAK,OAAA,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAjE,CAAiE,CAAC,CAAA;IACtG,CAAC;IAED,OAAO;QACL,IAAI,MAAA;KACL,CAAA;AACH,CAAC"}
@@ -1,10 +1,17 @@
1
1
  export interface CookieOptions {
2
2
  secure?: boolean;
3
3
  crossSite?: boolean;
4
+ partitioned?: boolean;
4
5
  domain?: string;
5
6
  }
6
7
  export declare function setCookie(name: string, value: string, expireDelay: number, options?: CookieOptions): void;
7
8
  export declare function getCookie(name: string): string | undefined;
9
+ /**
10
+ * Returns a cached value of the cookie. Use this during SDK initialization (and whenever possible)
11
+ * to avoid accessing document.cookie multiple times.
12
+ */
13
+ export declare function getInitCookie(name: string): string | undefined;
14
+ export declare function resetInitCookies(): void;
8
15
  export declare function deleteCookie(name: string, options?: CookieOptions): void;
9
16
  export declare function areCookiesAuthorized(options: CookieOptions): boolean;
10
17
  export declare function getCurrentSite(): string;
@@ -1,6 +1,6 @@
1
1
  import { display } from '../tools/display';
2
2
  import { ONE_MINUTE, ONE_SECOND } from '../tools/utils/timeUtils';
3
- import { findCommaSeparatedValue, generateUUID } from '../tools/utils/stringUtils';
3
+ import { findCommaSeparatedValue, findCommaSeparatedValues, generateUUID } from '../tools/utils/stringUtils';
4
4
  export function setCookie(name, value, expireDelay, options) {
5
5
  var date = new Date();
6
6
  date.setTime(date.getTime() + expireDelay);
@@ -8,11 +8,26 @@ export function setCookie(name, value, expireDelay, options) {
8
8
  var sameSite = options && options.crossSite ? 'none' : 'strict';
9
9
  var domain = options && options.domain ? ";domain=".concat(options.domain) : '';
10
10
  var secure = options && options.secure ? ';secure' : '';
11
- document.cookie = "".concat(name, "=").concat(value, ";").concat(expires, ";path=/;samesite=").concat(sameSite).concat(domain).concat(secure);
11
+ var partitioned = options && options.partitioned ? ';partitioned' : '';
12
+ document.cookie = "".concat(name, "=").concat(value, ";").concat(expires, ";path=/;samesite=").concat(sameSite).concat(domain).concat(secure).concat(partitioned);
12
13
  }
13
14
  export function getCookie(name) {
14
15
  return findCommaSeparatedValue(document.cookie, name);
15
16
  }
17
+ var initCookieParsed;
18
+ /**
19
+ * Returns a cached value of the cookie. Use this during SDK initialization (and whenever possible)
20
+ * to avoid accessing document.cookie multiple times.
21
+ */
22
+ export function getInitCookie(name) {
23
+ if (!initCookieParsed) {
24
+ initCookieParsed = findCommaSeparatedValues(document.cookie);
25
+ }
26
+ return initCookieParsed.get(name);
27
+ }
28
+ export function resetInitCookies() {
29
+ initCookieParsed = undefined;
30
+ }
16
31
  export function deleteCookie(name, options) {
17
32
  setCookie(name, '', 0, options);
18
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cookie.js","sourceRoot":"","sources":["../../src/browser/cookie.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cookie.js","sourceRoot":"","sources":["../../src/browser/cookie.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { instrumentMethod } from '../tools/instrumentMethod';
2
- import { callMonitored, monitor } from '../tools/monitor';
2
+ import { monitor } from '../tools/monitor';
3
3
  import { Observable } from '../tools/observable';
4
4
  import { clocksNow } from '../tools/utils/timeUtils';
5
5
  import { normalizeUrl } from '../tools/utils/urlPolyfill';
@@ -11,30 +11,22 @@ export function initFetchObservable() {
11
11
  return fetchObservable;
12
12
  }
13
13
  function createFetchObservable() {
14
- var observable = new Observable(function () {
14
+ return new Observable(function (observable) {
15
15
  if (!window.fetch) {
16
16
  return;
17
17
  }
18
- var stop = instrumentMethod(window, 'fetch', function (originalFetch) {
19
- return function (input, init) {
20
- var responsePromise;
21
- var context = callMonitored(beforeSend, null, [observable, input, init]);
22
- if (context) {
23
- responsePromise = originalFetch.call(this, context.input, context.init);
24
- callMonitored(afterSend, null, [observable, responsePromise, context]);
25
- }
26
- else {
27
- responsePromise = originalFetch.call(this, input, init);
28
- }
29
- return responsePromise;
30
- };
31
- }).stop;
18
+ var stop = instrumentMethod(window, 'fetch', function (call) { return beforeSend(call, observable); }).stop;
32
19
  return stop;
33
20
  });
34
- return observable;
35
21
  }
36
- function beforeSend(observable, input, init) {
37
- var method = (init && init.method) || (input instanceof Request && input.method) || 'GET';
22
+ function beforeSend(_a, observable) {
23
+ var parameters = _a.parameters, onPostCall = _a.onPostCall;
24
+ var input = parameters[0], init = parameters[1];
25
+ var methodFromParams = init && init.method;
26
+ if (methodFromParams === undefined && input instanceof Request) {
27
+ methodFromParams = input.method;
28
+ }
29
+ var method = methodFromParams !== undefined ? String(methodFromParams).toUpperCase() : 'GET';
38
30
  var url = input instanceof Request ? input.url : normalizeUrl(String(input));
39
31
  var startClocks = clocksNow();
40
32
  var context = {
@@ -46,7 +38,10 @@ function beforeSend(observable, input, init) {
46
38
  url: url,
47
39
  };
48
40
  observable.notify(context);
49
- return context;
41
+ // Those properties can be changed by observable subscribers
42
+ parameters[0] = context.input;
43
+ parameters[1] = context.init;
44
+ onPostCall(function (responsePromise) { return afterSend(observable, responsePromise, context); });
50
45
  }
51
46
  function afterSend(observable, responsePromise, startContext) {
52
47
  var reportFetch = function (response) {
@@ -1 +1 @@
1
- {"version":3,"file":"fetchObservable.js","sourceRoot":"","sources":["../../src/browser/fetchObservable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetchObservable.js","sourceRoot":"","sources":["../../src/browser/fetchObservable.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { isExperimentalFeatureEnabled, ExperimentalFeature } from '../tools/expe
2
2
  import { Observable } from '../tools/observable';
3
3
  import { objectValues, includes } from '../tools/utils/polyfills';
4
4
  import { noop } from '../tools/utils/functionUtils';
5
- import { addEventListeners, addEventListener } from './addEventListener';
5
+ import { addEventListeners, addEventListener, DOM_EVENT } from './addEventListener';
6
6
  export var PageExitReason = {
7
7
  HIDDEN: 'visibility_hidden',
8
8
  UNLOADING: 'before_unload',
@@ -10,23 +10,23 @@ export var PageExitReason = {
10
10
  FROZEN: 'page_frozen',
11
11
  };
12
12
  export function createPageExitObservable(configuration) {
13
- var observable = new Observable(function () {
13
+ return new Observable(function (observable) {
14
14
  var pagehideEnabled = isExperimentalFeatureEnabled(ExperimentalFeature.PAGEHIDE);
15
- var stopListeners = addEventListeners(configuration, window, ["visibilitychange" /* DOM_EVENT.VISIBILITY_CHANGE */, "freeze" /* DOM_EVENT.FREEZE */, "pagehide" /* DOM_EVENT.PAGE_HIDE */], function (event) {
16
- if (event.type === "pagehide" /* DOM_EVENT.PAGE_HIDE */ && pagehideEnabled) {
15
+ var stopListeners = addEventListeners(configuration, window, [DOM_EVENT.VISIBILITY_CHANGE, DOM_EVENT.FREEZE, DOM_EVENT.PAGE_HIDE], function (event) {
16
+ if (event.type === DOM_EVENT.PAGE_HIDE && pagehideEnabled) {
17
17
  /**
18
18
  * Only event that detect page unload events while being compatible with the back/forward cache (bfcache)
19
19
  */
20
20
  observable.notify({ reason: PageExitReason.PAGEHIDE });
21
21
  }
22
- else if (event.type === "visibilitychange" /* DOM_EVENT.VISIBILITY_CHANGE */ && document.visibilityState === 'hidden') {
22
+ else if (event.type === DOM_EVENT.VISIBILITY_CHANGE && document.visibilityState === 'hidden') {
23
23
  /**
24
24
  * Only event that guarantee to fire on mobile devices when the page transitions to background state
25
25
  * (e.g. when user switches to a different application, goes to homescreen, etc), or is being unloaded.
26
26
  */
27
27
  observable.notify({ reason: PageExitReason.HIDDEN });
28
28
  }
29
- else if (event.type === "freeze" /* DOM_EVENT.FREEZE */) {
29
+ else if (event.type === DOM_EVENT.FREEZE) {
30
30
  /**
31
31
  * After transitioning in background a tab can be freezed to preserve resources. (cf: https://developer.chrome.com/blog/page-lifecycle-api)
32
32
  * Allow to collect events happening between hidden and frozen state.
@@ -36,7 +36,7 @@ export function createPageExitObservable(configuration) {
36
36
  }, { capture: true }).stop;
37
37
  var stopBeforeUnloadListener = noop;
38
38
  if (!pagehideEnabled) {
39
- stopBeforeUnloadListener = addEventListener(configuration, window, "beforeunload" /* DOM_EVENT.BEFORE_UNLOAD */, function () {
39
+ stopBeforeUnloadListener = addEventListener(configuration, window, DOM_EVENT.BEFORE_UNLOAD, function () {
40
40
  observable.notify({ reason: PageExitReason.UNLOADING });
41
41
  }).stop;
42
42
  }
@@ -45,7 +45,6 @@ export function createPageExitObservable(configuration) {
45
45
  stopBeforeUnloadListener();
46
46
  };
47
47
  });
48
- return observable;
49
48
  }
50
49
  export function isPageExitReason(reason) {
51
50
  return includes(objectValues(PageExitReason), reason);
@@ -1 +1 @@
1
- {"version":3,"file":"pageExitObservable.js","sourceRoot":"","sources":["../../src/browser/pageExitObservable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA;AAEnD,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAa,MAAM,oBAAoB,CAAA;AAEnF,MAAM,CAAC,IAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,mBAAmB;IAC3B,SAAS,EAAE,eAAe;IAC1B,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,aAAa;CACb,CAAA;AAQV,MAAM,UAAU,wBAAwB,CAAC,aAA4B;IACnE,IAAM,UAAU,GAAG,IAAI,UAAU,CAAgB;QAC/C,IAAM,eAAe,GAAG,4BAA4B,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAA;QAC1E,IAAM,aAAa,GAAK,iBAAiB,CAC/C,aAAa,EACb,MAAM,EACN,6HAAoE,EACpE,UAAC,KAAK;YACJ,IAAI,KAAK,CAAC,IAAI,yCAAwB,IAAI,eAAe,EAAE;gBACzD;;mBAEG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAA;aACvD;iBAAM,IAAI,KAAK,CAAC,IAAI,yDAAgC,IAAI,QAAQ,CAAC,eAAe,KAAK,QAAQ,EAAE;gBAC9F;;;mBAGG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC,CAAA;aACrD;iBAAM,IAAI,KAAK,CAAC,IAAI,oCAAqB,EAAE;gBAC1C;;;mBAGG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC,CAAA;aACrD;QACH,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,KAzB0B,CAyB1B;QAED,IAAI,wBAAwB,GAAG,IAAI,CAAA;QACnC,IAAI,CAAC,eAAe,EAAE;YACpB,wBAAwB,GAAG,gBAAgB,CAAC,aAAa,EAAE,MAAM,gDAA2B;gBAC1F,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,SAAS,EAAE,CAAC,CAAA;YACzD,CAAC,CAAC,CAAC,IAAI,CAAA;SACR;QAED,OAAO;YACL,aAAa,EAAE,CAAA;YACf,wBAAwB,EAAE,CAAA;QAC5B,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAA0B;IACzD,OAAO,QAAQ,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,CAAA;AACvD,CAAC"}
1
+ {"version":3,"file":"pageExitObservable.js","sourceRoot":"","sources":["../../src/browser/pageExitObservable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA;AAEnD,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAEnF,MAAM,CAAC,IAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,mBAAmB;IAC3B,SAAS,EAAE,eAAe;IAC1B,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,aAAa;CACb,CAAA;AAQV,MAAM,UAAU,wBAAwB,CAAC,aAA4B;IACnE,OAAO,IAAI,UAAU,CAAgB,UAAC,UAAU;QAC9C,IAAM,eAAe,GAAG,4BAA4B,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAA;QAC1E,IAAM,aAAa,GAAK,iBAAiB,CAC/C,aAAa,EACb,MAAM,EACN,CAAC,SAAS,CAAC,iBAAiB,EAAE,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC,EACpE,UAAC,KAAK;YACJ,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,SAAS,IAAI,eAAe,EAAE,CAAC;gBAC1D;;mBAEG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAA;YACxD,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,iBAAiB,IAAI,QAAQ,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;gBAC/F;;;mBAGG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC,CAAA;YACtD,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,EAAE,CAAC;gBAC3C;;;mBAGG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC,CAAA;YACtD,CAAC;QACH,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,KAzB0B,CAyB1B;QAED,IAAI,wBAAwB,GAAG,IAAI,CAAA;QACnC,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,wBAAwB,GAAG,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,CAAC,aAAa,EAAE;gBAC1F,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,SAAS,EAAE,CAAC,CAAA;YACzD,CAAC,CAAC,CAAC,IAAI,CAAA;QACT,CAAC;QAED,OAAO;YACL,aAAa,EAAE,CAAA;YACf,wBAAwB,EAAE,CAAA;QAC5B,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAA0B;IACzD,OAAO,QAAQ,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,CAAA;AACvD,CAAC"}
@@ -1,10 +1,10 @@
1
- import { addEventListener } from './addEventListener';
1
+ import { DOM_EVENT, addEventListener } from './addEventListener';
2
2
  export function runOnReadyState(configuration, expectedReadyState, callback) {
3
3
  if (document.readyState === expectedReadyState || document.readyState === 'complete') {
4
4
  callback();
5
5
  }
6
6
  else {
7
- var eventName = expectedReadyState === 'complete' ? "load" /* DOM_EVENT.LOAD */ : "DOMContentLoaded" /* DOM_EVENT.DOM_CONTENT_LOADED */;
7
+ var eventName = expectedReadyState === 'complete' ? DOM_EVENT.LOAD : DOM_EVENT.DOM_CONTENT_LOADED;
8
8
  addEventListener(configuration, window, eventName, callback, { once: true });
9
9
  }
10
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runOnReadyState.js","sourceRoot":"","sources":["../../src/browser/runOnReadyState.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAEhE,MAAM,UAAU,eAAe,CAC7B,aAA4B,EAC5B,kBAA8C,EAC9C,QAAoB;IAEpB,IAAI,QAAQ,CAAC,UAAU,KAAK,kBAAkB,IAAI,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE;QACpF,QAAQ,EAAE,CAAA;KACX;SAAM;QACL,IAAM,SAAS,GAAG,kBAAkB,KAAK,UAAU,CAAC,CAAC,6BAAgB,CAAC,sDAA6B,CAAA;QACnG,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;KAC7E;AACH,CAAC"}
1
+ {"version":3,"file":"runOnReadyState.js","sourceRoot":"","sources":["../../src/browser/runOnReadyState.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAEhE,MAAM,UAAU,eAAe,CAC7B,aAA4B,EAC5B,kBAA8C,EAC9C,QAAoB;IAEpB,IAAI,QAAQ,CAAC,UAAU,KAAK,kBAAkB,IAAI,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QACrF,QAAQ,EAAE,CAAA;IACZ,CAAC;SAAM,CAAC;QACN,IAAM,SAAS,GAAG,kBAAkB,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAA;QACnG,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IAC9E,CAAC;AACH,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Observable } from '../tools/observable';
2
- import type { Duration, RelativeTime, ClocksState } from '../tools/utils/timeUtils';
2
+ import type { Duration, ClocksState } from '../tools/utils/timeUtils';
3
3
  import type { Configuration } from '../domain/configuration';
4
4
  export interface XhrOpenContext {
5
5
  state: 'open';
@@ -8,7 +8,6 @@ export interface XhrOpenContext {
8
8
  }
9
9
  export interface XhrStartContext extends Omit<XhrOpenContext, 'state'> {
10
10
  state: 'start';
11
- startTime: RelativeTime;
12
11
  startClocks: ClocksState;
13
12
  isAborted: boolean;
14
13
  xhr: XMLHttpRequest;
@@ -1,6 +1,6 @@
1
- import { instrumentMethodAndCallOriginal } from '../tools/instrumentMethod';
1
+ import { instrumentMethod } from '../tools/instrumentMethod';
2
2
  import { Observable } from '../tools/observable';
3
- import { elapsed, relativeNow, clocksNow, timeStampNow } from '../tools/utils/timeUtils';
3
+ import { elapsed, clocksNow, timeStampNow } from '../tools/utils/timeUtils';
4
4
  import { normalizeUrl } from '../tools/utils/urlPolyfill';
5
5
  import { shallowClone } from '../tools/utils/objectUtils';
6
6
  import { addEventListener } from './addEventListener';
@@ -13,56 +13,47 @@ export function initXhrObservable(configuration) {
13
13
  return xhrObservable;
14
14
  }
15
15
  function createXhrObservable(configuration) {
16
- var observable = new Observable(function () {
17
- var stopInstrumentingStart = instrumentMethodAndCallOriginal(XMLHttpRequest.prototype, 'open', {
18
- before: openXhr,
19
- }).stop;
20
- var stopInstrumentingSend = instrumentMethodAndCallOriginal(XMLHttpRequest.prototype, 'send', {
21
- before: function () {
22
- sendXhr.call(this, configuration, observable);
23
- },
24
- }).stop;
25
- var stopInstrumentingAbort = instrumentMethodAndCallOriginal(XMLHttpRequest.prototype, 'abort', {
26
- before: abortXhr,
16
+ return new Observable(function (observable) {
17
+ var stopInstrumentingStart = instrumentMethod(XMLHttpRequest.prototype, 'open', openXhr).stop;
18
+ var stopInstrumentingSend = instrumentMethod(XMLHttpRequest.prototype, 'send', function (call) {
19
+ sendXhr(call, configuration, observable);
27
20
  }).stop;
21
+ var stopInstrumentingAbort = instrumentMethod(XMLHttpRequest.prototype, 'abort', abortXhr).stop;
28
22
  return function () {
29
23
  stopInstrumentingStart();
30
24
  stopInstrumentingSend();
31
25
  stopInstrumentingAbort();
32
26
  };
33
27
  });
34
- return observable;
35
28
  }
36
- function openXhr(method, url) {
37
- xhrContexts.set(this, {
29
+ function openXhr(_a) {
30
+ var xhr = _a.target, _b = _a.parameters, method = _b[0], url = _b[1];
31
+ xhrContexts.set(xhr, {
38
32
  state: 'open',
39
- method: method,
33
+ method: String(method).toUpperCase(),
40
34
  url: normalizeUrl(String(url)),
41
35
  });
42
36
  }
43
- function sendXhr(configuration, observable) {
44
- var _this = this;
45
- var context = xhrContexts.get(this);
37
+ function sendXhr(_a, configuration, observable) {
38
+ var xhr = _a.target;
39
+ var context = xhrContexts.get(xhr);
46
40
  if (!context) {
47
41
  return;
48
42
  }
49
43
  var startContext = context;
50
44
  startContext.state = 'start';
51
- startContext.startTime = relativeNow();
52
45
  startContext.startClocks = clocksNow();
53
46
  startContext.isAborted = false;
54
- startContext.xhr = this;
47
+ startContext.xhr = xhr;
55
48
  var hasBeenReported = false;
56
- var stopInstrumentingOnReadyStateChange = instrumentMethodAndCallOriginal(this, 'onreadystatechange', {
57
- before: function () {
58
- if (this.readyState === XMLHttpRequest.DONE) {
59
- // Try to report the XHR as soon as possible, because the XHR may be mutated by the
60
- // application during a future event. For example, Angular is calling .abort() on
61
- // completed requests during a onreadystatechange event, so the status becomes '0'
62
- // before the request is collected.
63
- onEnd();
64
- }
65
- },
49
+ var stopInstrumentingOnReadyStateChange = instrumentMethod(xhr, 'onreadystatechange', function () {
50
+ if (xhr.readyState === XMLHttpRequest.DONE) {
51
+ // Try to report the XHR as soon as possible, because the XHR may be mutated by the
52
+ // application during a future event. For example, Angular is calling .abort() on
53
+ // completed requests during an onreadystatechange event, so the status becomes '0'
54
+ // before the request is collected.
55
+ onEnd();
56
+ }
66
57
  }).stop;
67
58
  var onEnd = function () {
68
59
  unsubscribeLoadEndListener();
@@ -74,14 +65,15 @@ function sendXhr(configuration, observable) {
74
65
  var completeContext = context;
75
66
  completeContext.state = 'complete';
76
67
  completeContext.duration = elapsed(startContext.startClocks.timeStamp, timeStampNow());
77
- completeContext.status = _this.status;
68
+ completeContext.status = xhr.status;
78
69
  observable.notify(shallowClone(completeContext));
79
70
  };
80
- var unsubscribeLoadEndListener = addEventListener(configuration, this, 'loadend', onEnd).stop;
71
+ var unsubscribeLoadEndListener = addEventListener(configuration, xhr, 'loadend', onEnd).stop;
81
72
  observable.notify(startContext);
82
73
  }
83
- function abortXhr() {
84
- var context = xhrContexts.get(this);
74
+ function abortXhr(_a) {
75
+ var xhr = _a.target;
76
+ var context = xhrContexts.get(xhr);
85
77
  if (context) {
86
78
  context.isAborted = true;
87
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"xhrObservable.js","sourceRoot":"","sources":["../../src/browser/xhrObservable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"xhrObservable.js","sourceRoot":"","sources":["../../src/browser/xhrObservable.ts"],"names":[],"mappings":"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"}