@cloudcare/browser-core 3.0.29 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (264) hide show
  1. package/cjs/browser/addEventListener.js +3 -8
  2. package/cjs/browser/addEventListener.js.map +1 -0
  3. package/cjs/browser/cookie.js +3 -14
  4. package/cjs/browser/cookie.js.map +1 -0
  5. package/cjs/browser/fetchObservable.js +4 -21
  6. package/cjs/browser/fetchObservable.js.map +1 -0
  7. package/cjs/browser/htmlDomUtils.js +3 -9
  8. package/cjs/browser/htmlDomUtils.js.map +1 -0
  9. package/cjs/browser/pageExitObservable.js +3 -9
  10. package/cjs/browser/pageExitObservable.js.map +1 -0
  11. package/cjs/browser/runOnReadyState.js +2 -4
  12. package/cjs/browser/runOnReadyState.js.map +1 -0
  13. package/cjs/browser/scroll.js +32 -0
  14. package/cjs/browser/scroll.js.map +1 -0
  15. package/cjs/browser/xhrObservable.js +2 -21
  16. package/cjs/browser/xhrObservable.js.map +1 -0
  17. package/cjs/configuration/configuration.js +9 -20
  18. package/cjs/configuration/configuration.js.map +1 -0
  19. package/cjs/configuration/transportConfiguration.js +6 -20
  20. package/cjs/configuration/transportConfiguration.js.map +1 -0
  21. package/cjs/console/consoleObservable.js +3 -21
  22. package/cjs/console/consoleObservable.js.map +1 -0
  23. package/cjs/dataMap.js +24 -10
  24. package/cjs/dataMap.js.map +1 -0
  25. package/cjs/error/trackRuntimeError.js +3 -7
  26. package/cjs/error/trackRuntimeError.js.map +1 -0
  27. package/cjs/helper/boundedBuffer.js +2 -6
  28. package/cjs/helper/boundedBuffer.js.map +1 -0
  29. package/cjs/helper/byteUtils.js +6 -16
  30. package/cjs/helper/byteUtils.js.map +1 -0
  31. package/cjs/helper/catchUserErrors.js +2 -4
  32. package/cjs/helper/catchUserErrors.js.map +1 -0
  33. package/cjs/helper/contextHistory.js +21 -37
  34. package/cjs/helper/contextHistory.js.map +1 -0
  35. package/cjs/helper/createEventRateLimiter.js +2 -10
  36. package/cjs/helper/createEventRateLimiter.js.map +1 -0
  37. package/cjs/helper/deviceInfo.js +10 -64
  38. package/cjs/helper/deviceInfo.js.map +1 -0
  39. package/cjs/helper/display.js +2 -5
  40. package/cjs/helper/display.js.map +1 -0
  41. package/cjs/helper/enums.js +8 -2
  42. package/cjs/helper/enums.js.map +1 -0
  43. package/cjs/helper/errorTools.js +32 -38
  44. package/cjs/helper/errorTools.js.map +1 -0
  45. package/cjs/helper/eventEmitter.js +2 -6
  46. package/cjs/helper/eventEmitter.js.map +1 -0
  47. package/cjs/helper/getZoneJsOriginalValue.js +2 -5
  48. package/cjs/helper/getZoneJsOriginalValue.js.map +1 -0
  49. package/cjs/helper/instrumentMethod.js +10 -22
  50. package/cjs/helper/instrumentMethod.js.map +1 -0
  51. package/cjs/helper/lifeCycle.js +2 -9
  52. package/cjs/helper/lifeCycle.js.map +1 -0
  53. package/cjs/helper/limitModification.js +4 -22
  54. package/cjs/helper/limitModification.js.map +1 -0
  55. package/cjs/helper/mobileUtil.js +2 -20
  56. package/cjs/helper/mobileUtil.js.map +1 -0
  57. package/cjs/helper/monitor.js +2 -11
  58. package/cjs/helper/monitor.js.map +1 -0
  59. package/cjs/helper/observable.js +2 -9
  60. package/cjs/helper/observable.js.map +1 -0
  61. package/cjs/helper/readBytesFromStream.js +4 -14
  62. package/cjs/helper/readBytesFromStream.js.map +1 -0
  63. package/cjs/helper/sanitize.js +38 -61
  64. package/cjs/helper/sanitize.js.map +1 -0
  65. package/cjs/helper/serialisation/contextManager.js +5 -15
  66. package/cjs/helper/serialisation/contextManager.js.map +1 -0
  67. package/cjs/helper/serialisation/heavyCustomerDataWarning.js +2 -7
  68. package/cjs/helper/serialisation/heavyCustomerDataWarning.js.map +1 -0
  69. package/cjs/helper/serialisation/jsonStringify.js +6 -12
  70. package/cjs/helper/serialisation/jsonStringify.js.map +1 -0
  71. package/cjs/helper/serialisation/rowData.js +3 -10
  72. package/cjs/helper/serialisation/rowData.js.map +1 -0
  73. package/cjs/helper/timer.js +2 -8
  74. package/cjs/helper/timer.js.map +1 -0
  75. package/cjs/helper/tools.js +57 -444
  76. package/cjs/helper/tools.js.map +1 -0
  77. package/cjs/helper/urlPolyfill.js +5 -18
  78. package/cjs/helper/urlPolyfill.js.map +1 -0
  79. package/cjs/index.js +24 -95
  80. package/cjs/index.js.map +1 -0
  81. package/cjs/init.js +14 -20
  82. package/cjs/init.js.map +1 -0
  83. package/cjs/report/reportObservable.js +5 -24
  84. package/cjs/report/reportObservable.js.map +1 -0
  85. package/cjs/session/sessionConstants.js +2 -3
  86. package/cjs/session/sessionConstants.js.map +1 -0
  87. package/cjs/session/sessionCookieStore.js +11 -46
  88. package/cjs/session/sessionCookieStore.js.map +1 -0
  89. package/cjs/session/sessionManagement.js +2 -19
  90. package/cjs/session/sessionManagement.js.map +1 -0
  91. package/cjs/session/sessionStore.js +3 -28
  92. package/cjs/session/sessionStore.js.map +1 -0
  93. package/cjs/synthetics/syntheticsWorkerValues.js +2 -6
  94. package/cjs/synthetics/syntheticsWorkerValues.js.map +1 -0
  95. package/cjs/synthetics/usr.js +2 -8
  96. package/cjs/synthetics/usr.js.map +1 -0
  97. package/cjs/telemetry/telemetry.js +125 -0
  98. package/cjs/telemetry/telemetry.js.map +1 -0
  99. package/cjs/telemetry/types.js +17 -0
  100. package/cjs/telemetry/types.js.map +1 -0
  101. package/cjs/tracekit/computeStackTrace.js +4 -34
  102. package/cjs/tracekit/computeStackTrace.js.map +1 -0
  103. package/cjs/tracekit/index.js +2 -3
  104. package/cjs/tracekit/index.js.map +1 -0
  105. package/cjs/tracekit/tracekit.js +3 -18
  106. package/cjs/tracekit/tracekit.js.map +1 -0
  107. package/cjs/transport/batch.js +5 -54
  108. package/cjs/transport/batch.js.map +1 -0
  109. package/cjs/transport/eventBridge.js +2 -7
  110. package/cjs/transport/eventBridge.js.map +1 -0
  111. package/cjs/transport/flushController.js +8 -21
  112. package/cjs/transport/flushController.js.map +1 -0
  113. package/cjs/transport/httpRequest.js +4 -18
  114. package/cjs/transport/httpRequest.js.map +1 -0
  115. package/cjs/transport/index.js +2 -6
  116. package/cjs/transport/index.js.map +1 -0
  117. package/cjs/transport/sendWithRetryStrategy.js +4 -23
  118. package/cjs/transport/sendWithRetryStrategy.js.map +1 -0
  119. package/cjs/transport/startBatchWithReplica.js +2 -7
  120. package/cjs/transport/startBatchWithReplica.js.map +1 -0
  121. package/cjs/user/index.js +2 -3
  122. package/cjs/user/index.js.map +1 -0
  123. package/cjs/user/user.js +3 -8
  124. package/cjs/user/user.js.map +1 -0
  125. package/cjs/worker.js +2 -2
  126. package/cjs/worker.js.map +1 -0
  127. package/esm/browser/addEventListener.js +3 -3
  128. package/esm/browser/addEventListener.js.map +1 -0
  129. package/esm/browser/cookie.js +3 -6
  130. package/esm/browser/cookie.js.map +1 -0
  131. package/esm/browser/fetchObservable.js +4 -14
  132. package/esm/browser/fetchObservable.js.map +1 -0
  133. package/esm/browser/htmlDomUtils.js +3 -2
  134. package/esm/browser/htmlDomUtils.js.map +1 -0
  135. package/esm/browser/pageExitObservable.js +3 -2
  136. package/esm/browser/pageExitObservable.js.map +1 -0
  137. package/esm/browser/runOnReadyState.js +2 -1
  138. package/esm/browser/runOnReadyState.js.map +1 -0
  139. package/esm/browser/scroll.js +25 -0
  140. package/esm/browser/scroll.js.map +1 -0
  141. package/esm/browser/xhrObservable.js +2 -14
  142. package/esm/browser/xhrObservable.js.map +1 -0
  143. package/esm/configuration/configuration.js +9 -9
  144. package/esm/configuration/configuration.js.map +1 -0
  145. package/esm/configuration/transportConfiguration.js +6 -17
  146. package/esm/configuration/transportConfiguration.js.map +1 -0
  147. package/esm/console/consoleObservable.js +3 -11
  148. package/esm/console/consoleObservable.js.map +1 -0
  149. package/esm/dataMap.js +24 -8
  150. package/esm/dataMap.js.map +1 -0
  151. package/esm/error/trackRuntimeError.js +4 -3
  152. package/esm/error/trackRuntimeError.js.map +1 -0
  153. package/esm/helper/boundedBuffer.js +2 -4
  154. package/esm/helper/boundedBuffer.js.map +1 -0
  155. package/esm/helper/byteUtils.js +6 -13
  156. package/esm/helper/byteUtils.js.map +1 -0
  157. package/esm/helper/catchUserErrors.js +2 -2
  158. package/esm/helper/catchUserErrors.js.map +1 -0
  159. package/esm/helper/contextHistory.js +21 -33
  160. package/esm/helper/contextHistory.js.map +1 -0
  161. package/esm/helper/createEventRateLimiter.js +2 -6
  162. package/esm/helper/createEventRateLimiter.js.map +1 -0
  163. package/esm/helper/deviceInfo.js +10 -62
  164. package/esm/helper/deviceInfo.js.map +1 -0
  165. package/esm/helper/display.js +2 -3
  166. package/esm/helper/display.js.map +1 -0
  167. package/esm/helper/enums.js +6 -1
  168. package/esm/helper/enums.js.map +1 -0
  169. package/esm/helper/errorTools.js +30 -25
  170. package/esm/helper/errorTools.js.map +1 -0
  171. package/esm/helper/eventEmitter.js +2 -5
  172. package/esm/helper/eventEmitter.js.map +1 -0
  173. package/esm/helper/getZoneJsOriginalValue.js +2 -4
  174. package/esm/helper/getZoneJsOriginalValue.js.map +1 -0
  175. package/esm/helper/instrumentMethod.js +10 -16
  176. package/esm/helper/instrumentMethod.js.map +1 -0
  177. package/esm/helper/lifeCycle.js +2 -5
  178. package/esm/helper/lifeCycle.js.map +1 -0
  179. package/esm/helper/limitModification.js +5 -20
  180. package/esm/helper/limitModification.js.map +1 -0
  181. package/esm/helper/mobileUtil.js +2 -16
  182. package/esm/helper/mobileUtil.js.map +1 -0
  183. package/esm/helper/monitor.js +2 -3
  184. package/esm/helper/monitor.js.map +1 -0
  185. package/esm/helper/observable.js +2 -7
  186. package/esm/helper/observable.js.map +1 -0
  187. package/esm/helper/readBytesFromStream.js +4 -12
  188. package/esm/helper/readBytesFromStream.js.map +1 -0
  189. package/esm/helper/sanitize.js +40 -57
  190. package/esm/helper/sanitize.js.map +1 -0
  191. package/esm/helper/serialisation/contextManager.js +5 -9
  192. package/esm/helper/serialisation/contextManager.js.map +1 -0
  193. package/esm/helper/serialisation/heavyCustomerDataWarning.js +5 -4
  194. package/esm/helper/serialisation/heavyCustomerDataWarning.js.map +1 -0
  195. package/esm/helper/serialisation/jsonStringify.js +7 -10
  196. package/esm/helper/serialisation/jsonStringify.js.map +1 -0
  197. package/esm/helper/serialisation/rowData.js +3 -4
  198. package/esm/helper/serialisation/rowData.js.map +1 -0
  199. package/esm/helper/timer.js +2 -1
  200. package/esm/helper/timer.js.map +1 -0
  201. package/esm/helper/tools.js +57 -256
  202. package/esm/helper/tools.js.map +1 -0
  203. package/esm/helper/urlPolyfill.js +5 -9
  204. package/esm/helper/urlPolyfill.js.map +1 -0
  205. package/esm/index.js +4 -1
  206. package/esm/index.js.map +1 -0
  207. package/esm/init.js +14 -14
  208. package/esm/init.js.map +1 -0
  209. package/esm/report/reportObservable.js +5 -16
  210. package/esm/report/reportObservable.js.map +1 -0
  211. package/esm/session/sessionConstants.js +2 -1
  212. package/esm/session/sessionConstants.js.map +1 -0
  213. package/esm/session/sessionCookieStore.js +11 -38
  214. package/esm/session/sessionCookieStore.js.map +1 -0
  215. package/esm/session/sessionManagement.js +2 -8
  216. package/esm/session/sessionManagement.js.map +1 -0
  217. package/esm/session/sessionStore.js +4 -22
  218. package/esm/session/sessionStore.js.map +1 -0
  219. package/esm/synthetics/syntheticsWorkerValues.js +2 -1
  220. package/esm/synthetics/syntheticsWorkerValues.js.map +1 -0
  221. package/esm/synthetics/usr.js +2 -3
  222. package/esm/synthetics/usr.js.map +1 -0
  223. package/esm/telemetry/telemetry.js +111 -0
  224. package/esm/telemetry/telemetry.js.map +1 -0
  225. package/esm/telemetry/types.js +9 -0
  226. package/esm/telemetry/types.js.map +1 -0
  227. package/esm/tracekit/computeStackTrace.js +4 -31
  228. package/esm/tracekit/computeStackTrace.js.map +1 -0
  229. package/esm/tracekit/index.js +2 -1
  230. package/esm/tracekit/index.js.map +1 -0
  231. package/esm/tracekit/tracekit.js +5 -14
  232. package/esm/tracekit/tracekit.js.map +1 -0
  233. package/esm/transport/batch.js +7 -45
  234. package/esm/transport/batch.js.map +1 -0
  235. package/esm/transport/eventBridge.js +2 -5
  236. package/esm/transport/eventBridge.js.map +1 -0
  237. package/esm/transport/flushController.js +11 -20
  238. package/esm/transport/flushController.js.map +1 -0
  239. package/esm/transport/httpRequest.js +4 -15
  240. package/esm/transport/httpRequest.js.map +1 -0
  241. package/esm/transport/index.js +2 -1
  242. package/esm/transport/index.js.map +1 -0
  243. package/esm/transport/sendWithRetryStrategy.js +4 -17
  244. package/esm/transport/sendWithRetryStrategy.js.map +1 -0
  245. package/esm/transport/startBatchWithReplica.js +2 -3
  246. package/esm/transport/startBatchWithReplica.js.map +1 -0
  247. package/esm/user/index.js.map +1 -0
  248. package/esm/user/user.js +4 -5
  249. package/esm/user/user.js.map +1 -0
  250. package/esm/worker.js.map +1 -0
  251. package/package.json +2 -2
  252. package/src/browser/scroll.js +25 -0
  253. package/src/configuration/configuration.js +16 -0
  254. package/src/configuration/transportConfiguration.js +2 -2
  255. package/src/dataMap.js +17 -3
  256. package/src/error/trackRuntimeError.js +2 -2
  257. package/src/helper/contextHistory.js +3 -3
  258. package/src/helper/enums.js +4 -0
  259. package/src/helper/errorTools.js +49 -19
  260. package/src/helper/tools.js +1 -0
  261. package/src/index.js +3 -0
  262. package/src/report/reportObservable.js +3 -3
  263. package/src/telemetry/telemetry.js +164 -0
  264. package/src/telemetry/types.js +9 -0
@@ -5,16 +5,13 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.addEventListener = addEventListener;
7
7
  exports.addEventListeners = addEventListeners;
8
-
9
8
  var _tools = require("../helper/tools");
10
-
11
9
  var _getZoneJsOriginalValue = require("../helper/getZoneJsOriginalValue");
12
-
13
10
  var _monitor = require("../helper/monitor");
14
-
15
11
  function addEventListener(eventTarget, event, listener, options) {
16
12
  return addEventListeners(eventTarget, [event], listener, options);
17
13
  }
14
+
18
15
  /**
19
16
  * Add event listeners to an event emitter object (Window, Element, mock object...). This provides
20
17
  * a few conveniences compared to using `element.addEventListener` directly:
@@ -31,7 +28,6 @@ function addEventListener(eventTarget, event, listener, options) {
31
28
  * listened
32
29
  */
33
30
 
34
-
35
31
  function addEventListeners(eventTarget, eventNames, listener, options) {
36
32
  var wrappedListener = (0, _monitor.monitor)(options && options.once ? function (event) {
37
33
  stop();
@@ -45,15 +41,14 @@ function addEventListeners(eventTarget, eventNames, listener, options) {
45
41
  (0, _tools.each)(eventNames, function (eventName) {
46
42
  add.call(eventTarget, eventName, wrappedListener, options);
47
43
  });
48
-
49
44
  var stop = function stop() {
50
45
  var remove = (0, _getZoneJsOriginalValue.getZoneJsOriginalValue)(eventTarget, 'removeEventListener');
51
46
  (0, _tools.each)(eventNames, function (eventName) {
52
47
  remove.call(eventTarget, eventName, wrappedListener, options);
53
48
  });
54
49
  };
55
-
56
50
  return {
57
51
  stop: stop
58
52
  };
59
- }
53
+ }
54
+ //# sourceMappingURL=addEventListener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addEventListener.js","names":["_tools","require","_getZoneJsOriginalValue","_monitor","addEventListener","eventTarget","event","listener","options","addEventListeners","eventNames","wrappedListener","monitor","once","stop","passive","capture","add","getZoneJsOriginalValue","each","eventName","call","remove"],"sources":["../../src/browser/addEventListener.js"],"sourcesContent":["import { each } from '../helper/tools'\nimport { getZoneJsOriginalValue } from '../helper/getZoneJsOriginalValue'\nimport { monitor } from '../helper/monitor'\nexport function addEventListener(eventTarget, event, listener, options) {\n return addEventListeners(eventTarget, [event], listener, options)\n}\n\n/**\n * Add event listeners to an event emitter object (Window, Element, mock object...). This provides\n * a few conveniences compared to using `element.addEventListener` directly:\n *\n * * supports IE11 by:\n * * using an option object only if needed\n * * emulating the `once` option\n *\n * * wraps the listener with a `monitor` function\n *\n * * returns a `stop` function to remove the listener\n *\n * * with `once: true`, the listener will be called at most once, even if different events are\n * listened\n */\n\nexport function addEventListeners(eventTarget, eventNames, listener, options) {\n var wrappedListener = monitor(\n options && options.once\n ? function (event) {\n stop()\n listener(event)\n }\n : listener\n )\n options =\n options && options.passive\n ? { capture: options.capture, passive: options.passive }\n : options && options.capture\n var add = getZoneJsOriginalValue(eventTarget, 'addEventListener')\n\n each(eventNames, function (eventName) {\n add.call(eventTarget, eventName, wrappedListener, options)\n })\n var stop = function () {\n var remove = getZoneJsOriginalValue(eventTarget, 'removeEventListener')\n each(eventNames, function (eventName) {\n remove.call(eventTarget, eventName, wrappedListener, options)\n })\n }\n return {\n stop: stop\n }\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACO,SAASG,gBAAgBA,CAACC,WAAW,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,EAAE;EACtE,OAAOC,iBAAiB,CAACJ,WAAW,EAAE,CAACC,KAAK,CAAC,EAAEC,QAAQ,EAAEC,OAAO,CAAC;AACnE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,SAASC,iBAAiBA,CAACJ,WAAW,EAAEK,UAAU,EAAEH,QAAQ,EAAEC,OAAO,EAAE;EAC5E,IAAIG,eAAe,GAAG,IAAAC,gBAAO,EAC3BJ,OAAO,IAAIA,OAAO,CAACK,IAAI,GACnB,UAAUP,KAAK,EAAE;IACfQ,IAAI,CAAC,CAAC;IACNP,QAAQ,CAACD,KAAK,CAAC;EACjB,CAAC,GACDC,QACN,CAAC;EACDC,OAAO,GACLA,OAAO,IAAIA,OAAO,CAACO,OAAO,GACtB;IAAEC,OAAO,EAAER,OAAO,CAACQ,OAAO;IAAED,OAAO,EAAEP,OAAO,CAACO;EAAQ,CAAC,GACtDP,OAAO,IAAIA,OAAO,CAACQ,OAAO;EAChC,IAAIC,GAAG,GAAG,IAAAC,8CAAsB,EAACb,WAAW,EAAE,kBAAkB,CAAC;EAEjE,IAAAc,WAAI,EAACT,UAAU,EAAE,UAAUU,SAAS,EAAE;IACpCH,GAAG,CAACI,IAAI,CAAChB,WAAW,EAAEe,SAAS,EAAET,eAAe,EAAEH,OAAO,CAAC;EAC5D,CAAC,CAAC;EACF,IAAIM,IAAI,GAAG,SAAPA,IAAIA,CAAA,EAAe;IACrB,IAAIQ,MAAM,GAAG,IAAAJ,8CAAsB,EAACb,WAAW,EAAE,qBAAqB,CAAC;IACvE,IAAAc,WAAI,EAACT,UAAU,EAAE,UAAUU,SAAS,EAAE;MACpCE,MAAM,CAACD,IAAI,CAAChB,WAAW,EAAEe,SAAS,EAAET,eAAe,EAAEH,OAAO,CAAC;IAC/D,CAAC,CAAC;EACJ,CAAC;EACD,OAAO;IACLM,IAAI,EAAEA;EACR,CAAC;AACH"}
@@ -9,12 +9,9 @@ exports.deleteCookie = deleteCookie;
9
9
  exports.getCookie = getCookie;
10
10
  exports.getCurrentSite = getCurrentSite;
11
11
  exports.setCookie = setCookie;
12
-
13
12
  var _tools = require("../helper/tools");
14
-
15
13
  var COOKIE_ACCESS_DELAY = _tools.ONE_SECOND;
16
14
  exports.COOKIE_ACCESS_DELAY = COOKIE_ACCESS_DELAY;
17
-
18
15
  function setCookie(name, value, expireDelay, options) {
19
16
  var date = new Date();
20
17
  date.setTime(date.getTime() + expireDelay);
@@ -24,20 +21,16 @@ function setCookie(name, value, expireDelay, options) {
24
21
  var secure = options && options.secure ? ';secure' : '';
25
22
  document.cookie = name + '=' + value + ';' + expires + ';path=/;samesite=' + sameSite + domain + secure;
26
23
  }
27
-
28
24
  function getCookie(name) {
29
25
  return (0, _tools.findCommaSeparatedValue)(document.cookie, name);
30
26
  }
31
-
32
27
  function deleteCookie(name, options) {
33
28
  setCookie(name, '', 0, options);
34
29
  }
35
-
36
30
  function areCookiesAuthorized(options) {
37
31
  if (document.cookie === undefined || document.cookie === null) {
38
32
  return false;
39
33
  }
40
-
41
34
  try {
42
35
  // Use a unique cookie name to avoid issues when the SDK is initialized multiple times during
43
36
  // the test cookie lifetime
@@ -49,15 +42,13 @@ function areCookiesAuthorized(options) {
49
42
  return false;
50
43
  }
51
44
  }
45
+
52
46
  /**
53
47
  * No API to retrieve it, number of levels for subdomain and suffix are unknown
54
48
  * strategy: find the minimal domain on which cookies are allowed to be set
55
49
  * https://web.dev/same-site-same-origin/#site
56
50
  */
57
-
58
-
59
51
  var getCurrentSiteCache;
60
-
61
52
  function getCurrentSite() {
62
53
  if (getCurrentSiteCache === undefined) {
63
54
  // Use a unique cookie name to avoid issues when the SDK is initialized multiple times during
@@ -66,16 +57,14 @@ function getCurrentSite() {
66
57
  var testCookieValue = 'test';
67
58
  var domainLevels = window.location.hostname.split('.');
68
59
  var candidateDomain = domainLevels.pop();
69
-
70
60
  while (domainLevels.length && !getCookie(testCookieName)) {
71
61
  candidateDomain = domainLevels.pop() + '.' + candidateDomain;
72
62
  setCookie(testCookieName, testCookieValue, _tools.ONE_SECOND, {
73
63
  domain: candidateDomain
74
64
  });
75
65
  }
76
-
77
66
  getCurrentSiteCache = candidateDomain;
78
67
  }
79
-
80
68
  return getCurrentSiteCache;
81
- }
69
+ }
70
+ //# sourceMappingURL=cookie.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cookie.js","names":["_tools","require","COOKIE_ACCESS_DELAY","ONE_SECOND","exports","setCookie","name","value","expireDelay","options","date","Date","setTime","getTime","expires","toUTCString","sameSite","crossSite","domain","secure","document","cookie","getCookie","findCommaSeparatedValue","deleteCookie","areCookiesAuthorized","undefined","testCookieName","concat","UUID","testCookieValue","error","getCurrentSiteCache","getCurrentSite","domainLevels","window","location","hostname","split","candidateDomain","pop","length"],"sources":["../../src/browser/cookie.js"],"sourcesContent":["import { findCommaSeparatedValue, UUID, ONE_SECOND } from '../helper/tools'\nexport var COOKIE_ACCESS_DELAY = ONE_SECOND\n\nexport function setCookie(name, value, expireDelay, options) {\n var date = new Date()\n date.setTime(date.getTime() + expireDelay)\n var expires = 'expires=' + date.toUTCString()\n var sameSite = options && options.crossSite ? 'none' : 'strict'\n var domain = options && options.domain ? ';domain=' + options.domain : ''\n var secure = options && options.secure ? ';secure' : ''\n document.cookie =\n name +\n '=' +\n value +\n ';' +\n expires +\n ';path=/;samesite=' +\n sameSite +\n domain +\n secure\n}\n\nexport function getCookie(name) {\n return findCommaSeparatedValue(document.cookie, name)\n}\n\nexport function deleteCookie(name, options) {\n setCookie(name, '', 0, options)\n}\n\nexport function areCookiesAuthorized(options) {\n if (document.cookie === undefined || document.cookie === null) {\n return false\n }\n try {\n // Use a unique cookie name to avoid issues when the SDK is initialized multiple times during\n // the test cookie lifetime\n var testCookieName = `dd_cookie_test_${UUID()}`\n var testCookieValue = 'test'\n setCookie(testCookieName, testCookieValue, ONE_SECOND, options)\n return getCookie(testCookieName) === testCookieValue\n } catch (error) {\n return false\n }\n}\n\n/**\n * No API to retrieve it, number of levels for subdomain and suffix are unknown\n * strategy: find the minimal domain on which cookies are allowed to be set\n * https://web.dev/same-site-same-origin/#site\n */\nvar getCurrentSiteCache\nexport function getCurrentSite() {\n if (getCurrentSiteCache === undefined) {\n // Use a unique cookie name to avoid issues when the SDK is initialized multiple times during\n // the test cookie lifetime\n var testCookieName = `dd_site_test_${UUID()}`\n var testCookieValue = 'test'\n\n var domainLevels = window.location.hostname.split('.')\n var candidateDomain = domainLevels.pop()\n while (domainLevels.length && !getCookie(testCookieName)) {\n candidateDomain = domainLevels.pop() + '.' + candidateDomain\n setCookie(testCookieName, testCookieValue, ONE_SECOND, {\n domain: candidateDomain\n })\n }\n getCurrentSiteCache = candidateDomain\n }\n return getCurrentSiteCache\n}\n"],"mappings":";;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACO,IAAIC,mBAAmB,GAAGC,iBAAU;AAAAC,OAAA,CAAAF,mBAAA,GAAAA,mBAAA;AAEpC,SAASG,SAASA,CAACC,IAAI,EAAEC,KAAK,EAAEC,WAAW,EAAEC,OAAO,EAAE;EAC3D,IAAIC,IAAI,GAAG,IAAIC,IAAI,CAAC,CAAC;EACrBD,IAAI,CAACE,OAAO,CAACF,IAAI,CAACG,OAAO,CAAC,CAAC,GAAGL,WAAW,CAAC;EAC1C,IAAIM,OAAO,GAAG,UAAU,GAAGJ,IAAI,CAACK,WAAW,CAAC,CAAC;EAC7C,IAAIC,QAAQ,GAAGP,OAAO,IAAIA,OAAO,CAACQ,SAAS,GAAG,MAAM,GAAG,QAAQ;EAC/D,IAAIC,MAAM,GAAGT,OAAO,IAAIA,OAAO,CAACS,MAAM,GAAG,UAAU,GAAGT,OAAO,CAACS,MAAM,GAAG,EAAE;EACzE,IAAIC,MAAM,GAAGV,OAAO,IAAIA,OAAO,CAACU,MAAM,GAAG,SAAS,GAAG,EAAE;EACvDC,QAAQ,CAACC,MAAM,GACbf,IAAI,GACJ,GAAG,GACHC,KAAK,GACL,GAAG,GACHO,OAAO,GACP,mBAAmB,GACnBE,QAAQ,GACRE,MAAM,GACNC,MAAM;AACV;AAEO,SAASG,SAASA,CAAChB,IAAI,EAAE;EAC9B,OAAO,IAAAiB,8BAAuB,EAACH,QAAQ,CAACC,MAAM,EAAEf,IAAI,CAAC;AACvD;AAEO,SAASkB,YAAYA,CAAClB,IAAI,EAAEG,OAAO,EAAE;EAC1CJ,SAAS,CAACC,IAAI,EAAE,EAAE,EAAE,CAAC,EAAEG,OAAO,CAAC;AACjC;AAEO,SAASgB,oBAAoBA,CAAChB,OAAO,EAAE;EAC5C,IAAIW,QAAQ,CAACC,MAAM,KAAKK,SAAS,IAAIN,QAAQ,CAACC,MAAM,KAAK,IAAI,EAAE;IAC7D,OAAO,KAAK;EACd;EACA,IAAI;IACF;IACA;IACA,IAAIM,cAAc,qBAAAC,MAAA,CAAqB,IAAAC,WAAI,EAAC,CAAC,CAAE;IAC/C,IAAIC,eAAe,GAAG,MAAM;IAC5BzB,SAAS,CAACsB,cAAc,EAAEG,eAAe,EAAE3B,iBAAU,EAAEM,OAAO,CAAC;IAC/D,OAAOa,SAAS,CAACK,cAAc,CAAC,KAAKG,eAAe;EACtD,CAAC,CAAC,OAAOC,KAAK,EAAE;IACd,OAAO,KAAK;EACd;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAIC,mBAAmB;AAChB,SAASC,cAAcA,CAAA,EAAG;EAC/B,IAAID,mBAAmB,KAAKN,SAAS,EAAE;IACrC;IACA;IACA,IAAIC,cAAc,mBAAAC,MAAA,CAAmB,IAAAC,WAAI,EAAC,CAAC,CAAE;IAC7C,IAAIC,eAAe,GAAG,MAAM;IAE5B,IAAII,YAAY,GAAGC,MAAM,CAACC,QAAQ,CAACC,QAAQ,CAACC,KAAK,CAAC,GAAG,CAAC;IACtD,IAAIC,eAAe,GAAGL,YAAY,CAACM,GAAG,CAAC,CAAC;IACxC,OAAON,YAAY,CAACO,MAAM,IAAI,CAACnB,SAAS,CAACK,cAAc,CAAC,EAAE;MACxDY,eAAe,GAAGL,YAAY,CAACM,GAAG,CAAC,CAAC,GAAG,GAAG,GAAGD,eAAe;MAC5DlC,SAAS,CAACsB,cAAc,EAAEG,eAAe,EAAE3B,iBAAU,EAAE;QACrDe,MAAM,EAAEqB;MACV,CAAC,CAAC;IACJ;IACAP,mBAAmB,GAAGO,eAAe;EACvC;EACA,OAAOP,mBAAmB;AAC5B"}
@@ -4,45 +4,33 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.initFetchObservable = initFetchObservable;
7
-
8
7
  var _instrumentMethod = require("../helper/instrumentMethod");
9
-
10
8
  var _observable = require("../helper/observable");
11
-
12
9
  var _tools = require("../helper/tools");
13
-
14
10
  var _monitor = require("../helper/monitor");
15
-
16
11
  var _urlPolyfill = require("../helper/urlPolyfill");
17
-
18
12
  var fetchObservable;
19
-
20
13
  function initFetchObservable() {
21
14
  if (!fetchObservable) {
22
15
  fetchObservable = createFetchObservable();
23
16
  }
24
-
25
17
  return fetchObservable;
26
18
  }
27
-
28
19
  function createFetchObservable() {
29
20
  var observable = new _observable.Observable(function () {
30
21
  if (!window.fetch) {
31
22
  return;
32
23
  }
33
-
34
24
  var fetchMethod = (0, _instrumentMethod.instrumentMethod)(window, 'fetch', function (originalFetch) {
35
25
  return function (input, init) {
36
26
  var responsePromise;
37
27
  var context = (0, _monitor.callMonitored)(beforeSend, null, [observable, input, init]);
38
-
39
28
  if (context) {
40
29
  responsePromise = originalFetch.call(this, context.input, context.init);
41
30
  (0, _monitor.callMonitored)(afterSend, null, [observable, responsePromise, context]);
42
31
  } else {
43
32
  responsePromise = originalFetch.call(this, input, init);
44
33
  }
45
-
46
34
  return responsePromise;
47
35
  };
48
36
  });
@@ -50,7 +38,6 @@ function createFetchObservable() {
50
38
  });
51
39
  return observable;
52
40
  }
53
-
54
41
  function beforeSend(observable, input, init) {
55
42
  var method = init && init.method || input instanceof Request && input.method || 'GET';
56
43
  var url = input instanceof Request ? input.url : (0, _urlPolyfill.normalizeUrl)(String(input));
@@ -66,31 +53,27 @@ function beforeSend(observable, input, init) {
66
53
  observable.notify(context);
67
54
  return context;
68
55
  }
69
-
70
56
  function afterSend(observable, responsePromise, startContext) {
71
57
  var reportFetch = function reportFetch(response) {
72
58
  var context = startContext;
73
- context.state = 'resolve'; // context.duration = elapsed(context.startClocks.timeStamp, timeStampNow())
74
-
59
+ context.state = 'resolve';
60
+ // context.duration = elapsed(context.startClocks.timeStamp, timeStampNow())
75
61
  if ('stack' in response || response instanceof Error) {
76
62
  context.status = 0;
77
63
  context.isAborted = response instanceof DOMException && response.code === DOMException.ABORT_ERR;
78
64
  context.error = response;
79
65
  } else if ('status' in response) {
80
66
  context.response = response;
81
-
82
67
  try {
83
68
  context.responseType = response.constructor === Response && response.type || ''; // issue The Response type getter can only be used on instances of Response
84
69
  } catch (err) {
85
70
  context.responseType = '';
86
71
  }
87
-
88
72
  context.status = response.status;
89
73
  context.isAborted = false;
90
74
  }
91
-
92
75
  observable.notify(context);
93
76
  };
94
-
95
77
  responsePromise.then((0, _monitor.monitor)(reportFetch), (0, _monitor.monitor)(reportFetch));
96
- }
78
+ }
79
+ //# sourceMappingURL=fetchObservable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchObservable.js","names":["_instrumentMethod","require","_observable","_tools","_monitor","_urlPolyfill","fetchObservable","initFetchObservable","createFetchObservable","observable","Observable","window","fetch","fetchMethod","instrumentMethod","originalFetch","input","init","responsePromise","context","callMonitored","beforeSend","call","afterSend","stop","method","Request","url","normalizeUrl","String","startClocks","clocksNow","state","notify","startContext","reportFetch","response","Error","status","isAborted","DOMException","code","ABORT_ERR","error","responseType","constructor","Response","type","err","then","monitor"],"sources":["../../src/browser/fetchObservable.js"],"sourcesContent":["import { instrumentMethod } from '../helper/instrumentMethod'\nimport { Observable } from '../helper/observable'\nimport { clocksNow } from '../helper/tools'\nimport { monitor, callMonitored } from '../helper/monitor'\nimport { normalizeUrl } from '../helper/urlPolyfill'\n\nvar fetchObservable\n\nexport function initFetchObservable() {\n if (!fetchObservable) {\n fetchObservable = createFetchObservable()\n }\n return fetchObservable\n}\n\nfunction createFetchObservable() {\n var observable = new Observable(function () {\n if (!window.fetch) {\n return\n }\n\n var fetchMethod = instrumentMethod(\n window,\n 'fetch',\n function (originalFetch) {\n return function (input, init) {\n var responsePromise\n var context = callMonitored(beforeSend, null, [\n observable,\n input,\n init\n ])\n if (context) {\n responsePromise = originalFetch.call(\n this,\n context.input,\n context.init\n )\n callMonitored(afterSend, null, [\n observable,\n responsePromise,\n context\n ])\n } else {\n responsePromise = originalFetch.call(this, input, init)\n }\n return responsePromise\n }\n }\n )\n return fetchMethod.stop\n })\n\n return observable\n}\n\nfunction beforeSend(observable, input, init) {\n var method =\n (init && init.method) || (input instanceof Request && input.method) || 'GET'\n var url = input instanceof Request ? input.url : normalizeUrl(String(input))\n\n var startClocks = clocksNow()\n\n var context = {\n state: 'start',\n init: init,\n input: input,\n method: method,\n startClocks: startClocks,\n url: url\n }\n\n observable.notify(context)\n\n return context\n}\n\nfunction afterSend(observable, responsePromise, startContext) {\n var reportFetch = function (response) {\n var context = startContext\n context.state = 'resolve'\n // context.duration = elapsed(context.startClocks.timeStamp, timeStampNow())\n if ('stack' in response || response instanceof Error) {\n context.status = 0\n context.isAborted =\n response instanceof DOMException &&\n response.code === DOMException.ABORT_ERR\n context.error = response\n } else if ('status' in response) {\n context.response = response\n try {\n context.responseType =\n (response.constructor === Response && response.type) || '' // issue The Response type getter can only be used on instances of Response\n } catch (err) {\n context.responseType = ''\n }\n\n context.status = response.status\n context.isAborted = false\n }\n observable.notify(context)\n }\n responsePromise.then(monitor(reportFetch), monitor(reportFetch))\n}\n"],"mappings":"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"}
@@ -10,36 +10,30 @@ exports.isElementNode = isElementNode;
10
10
  exports.isNodeShadowHost = isNodeShadowHost;
11
11
  exports.isNodeShadowRoot = isNodeShadowRoot;
12
12
  exports.isTextNode = isTextNode;
13
-
14
13
  function isTextNode(node) {
15
14
  return node.nodeType === Node.TEXT_NODE;
16
15
  }
17
-
18
16
  function isCommentNode(node) {
19
17
  return node.nodeType === Node.COMMENT_NODE;
20
18
  }
21
-
22
19
  function isElementNode(node) {
23
20
  return node.nodeType === Node.ELEMENT_NODE;
24
21
  }
25
-
26
22
  function isNodeShadowHost(node) {
27
23
  return isElementNode(node) && Boolean(node.shadowRoot);
28
24
  }
29
-
30
25
  function isNodeShadowRoot(node) {
31
26
  var shadowRoot = node;
32
27
  return !!shadowRoot.host && shadowRoot.nodeType === Node.DOCUMENT_FRAGMENT_NODE && isElementNode(shadowRoot.host);
33
28
  }
34
-
35
29
  function getChildNodes(node) {
36
30
  return isNodeShadowHost(node) ? node.shadowRoot.childNodes : node.childNodes;
37
31
  }
32
+
38
33
  /**
39
34
  * Return `host` in case if the current node is a shadow root otherwise will return the `parentNode`
40
35
  */
41
-
42
-
43
36
  function getParentNode(node) {
44
37
  return isNodeShadowRoot(node) ? node.host : node.parentNode;
45
- }
38
+ }
39
+ //# sourceMappingURL=htmlDomUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"htmlDomUtils.js","names":["isTextNode","node","nodeType","Node","TEXT_NODE","isCommentNode","COMMENT_NODE","isElementNode","ELEMENT_NODE","isNodeShadowHost","Boolean","shadowRoot","isNodeShadowRoot","host","DOCUMENT_FRAGMENT_NODE","getChildNodes","childNodes","getParentNode","parentNode"],"sources":["../../src/browser/htmlDomUtils.js"],"sourcesContent":["export function isTextNode(node) {\n return node.nodeType === Node.TEXT_NODE\n}\n\nexport function isCommentNode(node) {\n return node.nodeType === Node.COMMENT_NODE\n}\n\nexport function isElementNode(node) {\n return node.nodeType === Node.ELEMENT_NODE\n}\n\nexport function isNodeShadowHost(node) {\n return isElementNode(node) && Boolean(node.shadowRoot)\n}\n\nexport function isNodeShadowRoot(node) {\n var shadowRoot = node\n return (\n !!shadowRoot.host &&\n shadowRoot.nodeType === Node.DOCUMENT_FRAGMENT_NODE &&\n isElementNode(shadowRoot.host)\n )\n}\n\nexport function getChildNodes(node) {\n return isNodeShadowHost(node) ? node.shadowRoot.childNodes : node.childNodes\n}\n\n/**\n * Return `host` in case if the current node is a shadow root otherwise will return the `parentNode`\n */\nexport function getParentNode(node) {\n return isNodeShadowRoot(node) ? node.host : node.parentNode\n}\n"],"mappings":";;;;;;;;;;;;AAAO,SAASA,UAAUA,CAACC,IAAI,EAAE;EAC/B,OAAOA,IAAI,CAACC,QAAQ,KAAKC,IAAI,CAACC,SAAS;AACzC;AAEO,SAASC,aAAaA,CAACJ,IAAI,EAAE;EAClC,OAAOA,IAAI,CAACC,QAAQ,KAAKC,IAAI,CAACG,YAAY;AAC5C;AAEO,SAASC,aAAaA,CAACN,IAAI,EAAE;EAClC,OAAOA,IAAI,CAACC,QAAQ,KAAKC,IAAI,CAACK,YAAY;AAC5C;AAEO,SAASC,gBAAgBA,CAACR,IAAI,EAAE;EACrC,OAAOM,aAAa,CAACN,IAAI,CAAC,IAAIS,OAAO,CAACT,IAAI,CAACU,UAAU,CAAC;AACxD;AAEO,SAASC,gBAAgBA,CAACX,IAAI,EAAE;EACrC,IAAIU,UAAU,GAAGV,IAAI;EACrB,OACE,CAAC,CAACU,UAAU,CAACE,IAAI,IACjBF,UAAU,CAACT,QAAQ,KAAKC,IAAI,CAACW,sBAAsB,IACnDP,aAAa,CAACI,UAAU,CAACE,IAAI,CAAC;AAElC;AAEO,SAASE,aAAaA,CAACd,IAAI,EAAE;EAClC,OAAOQ,gBAAgB,CAACR,IAAI,CAAC,GAAGA,IAAI,CAACU,UAAU,CAACK,UAAU,GAAGf,IAAI,CAACe,UAAU;AAC9E;;AAEA;AACA;AACA;AACO,SAASC,aAAaA,CAAChB,IAAI,EAAE;EAClC,OAAOW,gBAAgB,CAACX,IAAI,CAAC,GAAGA,IAAI,CAACY,IAAI,GAAGZ,IAAI,CAACiB,UAAU;AAC7D"}
@@ -6,15 +6,10 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.PageExitReason = void 0;
7
7
  exports.createPageExitObservable = createPageExitObservable;
8
8
  exports.isPageExitReason = isPageExitReason;
9
-
10
9
  var _observable = require("../helper/observable");
11
-
12
10
  var _tools = require("../helper/tools");
13
-
14
11
  var _enums = require("../helper/enums");
15
-
16
12
  var _addEventListener = require("../browser/addEventListener");
17
-
18
13
  var PageExitReason = {
19
14
  HIDDEN: 'visibility_hidden',
20
15
  UNLOADING: 'before_unload',
@@ -22,7 +17,6 @@ var PageExitReason = {
22
17
  FROZEN: 'page_frozen'
23
18
  };
24
19
  exports.PageExitReason = PageExitReason;
25
-
26
20
  function createPageExitObservable() {
27
21
  var observable = new _observable.Observable(function () {
28
22
  /**
@@ -50,12 +44,12 @@ function createPageExitObservable() {
50
44
  }, {
51
45
  capture: true
52
46
  });
47
+
53
48
  /**
54
49
  * Safari does not support yet to send a request during:
55
50
  * - a visibility change during doc unload (cf: https://bugs.webkit.org/show_bug.cgi?id=194897)
56
51
  * - a page hide transition (cf: https://bugs.webkit.org/show_bug.cgi?id=188329)
57
52
  */
58
-
59
53
  var beforeUnloadListener = (0, _addEventListener.addEventListener)(window, _enums.DOM_EVENT.BEFORE_UNLOAD, function () {
60
54
  observable.notify({
61
55
  reason: PageExitReason.UNLOADING
@@ -68,7 +62,7 @@ function createPageExitObservable() {
68
62
  });
69
63
  return observable;
70
64
  }
71
-
72
65
  function isPageExitReason(reason) {
73
66
  return (0, _tools.includes)((0, _tools.values)(PageExitReason), reason);
74
- }
67
+ }
68
+ //# sourceMappingURL=pageExitObservable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pageExitObservable.js","names":["_observable","require","_tools","_enums","_addEventListener","PageExitReason","HIDDEN","UNLOADING","PAGEHIDE","FROZEN","exports","createPageExitObservable","observable","Observable","visibilityChangeListener","addEventListeners","document","DOM_EVENT","VISIBILITY_CHANGE","FREEZE","PAGE_HIDE","event","type","visibilityState","notify","reason","capture","beforeUnloadListener","addEventListener","window","BEFORE_UNLOAD","stop","isPageExitReason","includes","values"],"sources":["../../src/browser/pageExitObservable.js"],"sourcesContent":["import { Observable } from '../helper/observable'\nimport { includes, values } from '../helper/tools'\nimport { DOM_EVENT } from '../helper/enums'\nimport {\n addEventListener,\n addEventListeners\n} from '../browser/addEventListener'\nexport var PageExitReason = {\n HIDDEN: 'visibility_hidden',\n UNLOADING: 'before_unload',\n PAGEHIDE: 'page_hide',\n FROZEN: 'page_frozen'\n}\n\nexport function createPageExitObservable() {\n var observable = new Observable(function () {\n /**\n * Only event that guarantee to fire on mobile devices when the page transitions to background state\n * (e.g. when user switches to a different application, goes to homescreen, etc), or is being unloaded.\n */\n var visibilityChangeListener = addEventListeners(\n document,\n [DOM_EVENT.VISIBILITY_CHANGE, DOM_EVENT.FREEZE, DOM_EVENT.PAGE_HIDE],\n function (event) {\n if (\n event.type === DOM_EVENT.VISIBILITY_CHANGE &&\n document.visibilityState === 'hidden'\n ) {\n /**\n * Only event that guarantee to fire on mobile devices when the page transitions to background state\n * (e.g. when user switches to a different application, goes to homescreen, etc), or is being unloaded.\n */\n observable.notify({ reason: PageExitReason.HIDDEN })\n } else if (event.type === DOM_EVENT.FREEZE) {\n /**\n * After transitioning in background a tab can be freezed to preserve resources. (cf: https://developer.chrome.com/blog/page-lifecycle-api)\n * Allow to collect events happening between hidden and frozen state.\n */\n observable.notify({ reason: PageExitReason.FROZEN })\n }\n },\n { capture: true }\n )\n\n /**\n * Safari does not support yet to send a request during:\n * - a visibility change during doc unload (cf: https://bugs.webkit.org/show_bug.cgi?id=194897)\n * - a page hide transition (cf: https://bugs.webkit.org/show_bug.cgi?id=188329)\n */\n var beforeUnloadListener = addEventListener(\n window,\n DOM_EVENT.BEFORE_UNLOAD,\n function () {\n observable.notify({ reason: PageExitReason.UNLOADING })\n }\n )\n\n return function () {\n visibilityChangeListener.stop()\n beforeUnloadListener.stop()\n }\n })\n\n return observable\n}\n\nexport function isPageExitReason(reason) {\n return includes(values(PageExitReason), reason)\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AAIO,IAAII,cAAc,GAAG;EAC1BC,MAAM,EAAE,mBAAmB;EAC3BC,SAAS,EAAE,eAAe;EAC1BC,QAAQ,EAAE,WAAW;EACrBC,MAAM,EAAE;AACV,CAAC;AAAAC,OAAA,CAAAL,cAAA,GAAAA,cAAA;AAEM,SAASM,wBAAwBA,CAAA,EAAG;EACzC,IAAIC,UAAU,GAAG,IAAIC,sBAAU,CAAC,YAAY;IAC1C;AACJ;AACA;AACA;IACI,IAAIC,wBAAwB,GAAG,IAAAC,mCAAiB,EAC9CC,QAAQ,EACR,CAACC,gBAAS,CAACC,iBAAiB,EAAED,gBAAS,CAACE,MAAM,EAAEF,gBAAS,CAACG,SAAS,CAAC,EACpE,UAAUC,KAAK,EAAE;MACf,IACEA,KAAK,CAACC,IAAI,KAAKL,gBAAS,CAACC,iBAAiB,IAC1CF,QAAQ,CAACO,eAAe,KAAK,QAAQ,EACrC;QACA;AACV;AACA;AACA;QACUX,UAAU,CAACY,MAAM,CAAC;UAAEC,MAAM,EAAEpB,cAAc,CAACC;QAAO,CAAC,CAAC;MACtD,CAAC,MAAM,IAAIe,KAAK,CAACC,IAAI,KAAKL,gBAAS,CAACE,MAAM,EAAE;QAC1C;AACV;AACA;AACA;QACUP,UAAU,CAACY,MAAM,CAAC;UAAEC,MAAM,EAAEpB,cAAc,CAACI;QAAO,CAAC,CAAC;MACtD;IACF,CAAC,EACD;MAAEiB,OAAO,EAAE;IAAK,CAClB,CAAC;;IAED;AACJ;AACA;AACA;AACA;IACI,IAAIC,oBAAoB,GAAG,IAAAC,kCAAgB,EACzCC,MAAM,EACNZ,gBAAS,CAACa,aAAa,EACvB,YAAY;MACVlB,UAAU,CAACY,MAAM,CAAC;QAAEC,MAAM,EAAEpB,cAAc,CAACE;MAAU,CAAC,CAAC;IACzD,CACF,CAAC;IAED,OAAO,YAAY;MACjBO,wBAAwB,CAACiB,IAAI,CAAC,CAAC;MAC/BJ,oBAAoB,CAACI,IAAI,CAAC,CAAC;IAC7B,CAAC;EACH,CAAC,CAAC;EAEF,OAAOnB,UAAU;AACnB;AAEO,SAASoB,gBAAgBA,CAACP,MAAM,EAAE;EACvC,OAAO,IAAAQ,eAAQ,EAAC,IAAAC,aAAM,EAAC7B,cAAc,CAAC,EAAEoB,MAAM,CAAC;AACjD"}
@@ -4,11 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.runOnReadyState = runOnReadyState;
7
-
8
7
  var _addEventListener = require("./addEventListener");
9
-
10
8
  var _enums = require("../helper/enums");
11
-
12
9
  function runOnReadyState(expectedReadyState, callback) {
13
10
  if (document.readyState === expectedReadyState || document.readyState === 'complete') {
14
11
  callback();
@@ -18,4 +15,5 @@ function runOnReadyState(expectedReadyState, callback) {
18
15
  once: true
19
16
  });
20
17
  }
21
- }
18
+ }
19
+ //# sourceMappingURL=runOnReadyState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runOnReadyState.js","names":["_addEventListener","require","_enums","runOnReadyState","expectedReadyState","callback","document","readyState","eventName","DOM_EVENT","LOAD","DOM_CONTENT_LOADED","addEventListener","window","once"],"sources":["../../src/browser/runOnReadyState.js"],"sourcesContent":["import { addEventListener } from './addEventListener'\nimport { DOM_EVENT } from '../helper/enums'\nexport function runOnReadyState(expectedReadyState, callback) {\n if (\n document.readyState === expectedReadyState ||\n document.readyState === 'complete'\n ) {\n callback()\n } else {\n var eventName =\n expectedReadyState === 'complete'\n ? DOM_EVENT.LOAD\n : DOM_EVENT.DOM_CONTENT_LOADED\n addEventListener(window, eventName, callback, { once: true })\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACO,SAASE,eAAeA,CAACC,kBAAkB,EAAEC,QAAQ,EAAE;EAC5D,IACEC,QAAQ,CAACC,UAAU,KAAKH,kBAAkB,IAC1CE,QAAQ,CAACC,UAAU,KAAK,UAAU,EAClC;IACAF,QAAQ,CAAC,CAAC;EACZ,CAAC,MAAM;IACL,IAAIG,SAAS,GACXJ,kBAAkB,KAAK,UAAU,GAC7BK,gBAAS,CAACC,IAAI,GACdD,gBAAS,CAACE,kBAAkB;IAClC,IAAAC,kCAAgB,EAACC,MAAM,EAAEL,SAAS,EAAEH,QAAQ,EAAE;MAAES,IAAI,EAAE;IAAK,CAAC,CAAC;EAC/D;AACF"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getScrollX = getScrollX;
7
+ exports.getScrollY = getScrollY;
8
+ function getScrollX() {
9
+ var scrollX;
10
+ var visual = window.visualViewport;
11
+ if (visual) {
12
+ scrollX = visual.pageLeft - visual.offsetLeft;
13
+ } else if (window.scrollX !== undefined) {
14
+ scrollX = window.scrollX;
15
+ } else {
16
+ scrollX = window.pageXOffset || 0;
17
+ }
18
+ return Math.round(scrollX);
19
+ }
20
+ function getScrollY() {
21
+ var scrollY;
22
+ var visual = window.visualViewport;
23
+ if (visual) {
24
+ scrollY = visual.pageTop - visual.offsetTop;
25
+ } else if (window.scrollY !== undefined) {
26
+ scrollY = window.scrollY;
27
+ } else {
28
+ scrollY = window.pageYOffset || 0;
29
+ }
30
+ return Math.round(scrollY);
31
+ }
32
+ //# sourceMappingURL=scroll.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scroll.js","names":["getScrollX","scrollX","visual","window","visualViewport","pageLeft","offsetLeft","undefined","pageXOffset","Math","round","getScrollY","scrollY","pageTop","offsetTop","pageYOffset"],"sources":["../../src/browser/scroll.js"],"sourcesContent":["export function getScrollX() {\n var scrollX\n var visual = window.visualViewport\n if (visual) {\n scrollX = visual.pageLeft - visual.offsetLeft\n } else if (window.scrollX !== undefined) {\n scrollX = window.scrollX\n } else {\n scrollX = window.pageXOffset || 0\n }\n return Math.round(scrollX)\n}\n\nexport function getScrollY() {\n var scrollY\n var visual = window.visualViewport\n if (visual) {\n scrollY = visual.pageTop - visual.offsetTop\n } else if (window.scrollY !== undefined) {\n scrollY = window.scrollY\n } else {\n scrollY = window.pageYOffset || 0\n }\n return Math.round(scrollY)\n}\n"],"mappings":";;;;;;;AAAO,SAASA,UAAUA,CAAA,EAAG;EAC3B,IAAIC,OAAO;EACX,IAAIC,MAAM,GAAGC,MAAM,CAACC,cAAc;EAClC,IAAIF,MAAM,EAAE;IACVD,OAAO,GAAGC,MAAM,CAACG,QAAQ,GAAGH,MAAM,CAACI,UAAU;EAC/C,CAAC,MAAM,IAAIH,MAAM,CAACF,OAAO,KAAKM,SAAS,EAAE;IACvCN,OAAO,GAAGE,MAAM,CAACF,OAAO;EAC1B,CAAC,MAAM;IACLA,OAAO,GAAGE,MAAM,CAACK,WAAW,IAAI,CAAC;EACnC;EACA,OAAOC,IAAI,CAACC,KAAK,CAACT,OAAO,CAAC;AAC5B;AAEO,SAASU,UAAUA,CAAA,EAAG;EAC3B,IAAIC,OAAO;EACX,IAAIV,MAAM,GAAGC,MAAM,CAACC,cAAc;EAClC,IAAIF,MAAM,EAAE;IACVU,OAAO,GAAGV,MAAM,CAACW,OAAO,GAAGX,MAAM,CAACY,SAAS;EAC7C,CAAC,MAAM,IAAIX,MAAM,CAACS,OAAO,KAAKL,SAAS,EAAE;IACvCK,OAAO,GAAGT,MAAM,CAACS,OAAO;EAC1B,CAAC,MAAM;IACLA,OAAO,GAAGT,MAAM,CAACY,WAAW,IAAI,CAAC;EACnC;EACA,OAAON,IAAI,CAACC,KAAK,CAACE,OAAO,CAAC;AAC5B"}
@@ -4,29 +4,20 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.initXhrObservable = initXhrObservable;
7
-
8
7
  var _instrumentMethod = require("../helper/instrumentMethod");
9
-
10
8
  var _observable = require("../helper/observable");
11
-
12
9
  var _urlPolyfill = require("../helper/urlPolyfill");
13
-
14
10
  var _tools = require("../helper/tools");
15
-
16
11
  var _addEventListener = require("../browser/addEventListener");
17
-
18
12
  var xhrObservable;
19
13
  var xhrContexts = {};
20
14
  var DATA_FLUX_REQUEST_ID_KEY = '_DATAFLUX_REQUEST_UUID';
21
-
22
15
  function initXhrObservable() {
23
16
  if (!xhrObservable) {
24
17
  xhrObservable = createXhrObservable();
25
18
  }
26
-
27
19
  return xhrObservable;
28
20
  }
29
-
30
21
  function createXhrObservable() {
31
22
  var observable = new _observable.Observable(function () {
32
23
  var openInstrumentMethod = (0, _instrumentMethod.instrumentMethodAndCallOriginal)(XMLHttpRequest.prototype, 'open', {
@@ -48,7 +39,6 @@ function createXhrObservable() {
48
39
  });
49
40
  return observable;
50
41
  }
51
-
52
42
  function openXhr(method, url) {
53
43
  var requestUUID = this[DATA_FLUX_REQUEST_ID_KEY] || (0, _tools.UUID)();
54
44
  this[DATA_FLUX_REQUEST_ID_KEY] = requestUUID;
@@ -58,14 +48,11 @@ function openXhr(method, url) {
58
48
  url: (0, _urlPolyfill.normalizeUrl)(String(url))
59
49
  };
60
50
  }
61
-
62
51
  function sendXhr(observable) {
63
52
  var context = xhrContexts[this[DATA_FLUX_REQUEST_ID_KEY]];
64
-
65
53
  if (!context) {
66
54
  return;
67
55
  }
68
-
69
56
  var startContext = context;
70
57
  startContext.state = 'start';
71
58
  startContext.startTime = (0, _tools.relativeNow)();
@@ -84,15 +71,12 @@ function sendXhr(observable) {
84
71
  }
85
72
  }
86
73
  }).stop;
87
-
88
74
  var onEnd = function onEnd() {
89
75
  unsubscribeLoadEndListener();
90
76
  stopInstrumentingOnReadyStateChange();
91
-
92
77
  if (hasBeenReported) {
93
78
  return;
94
79
  }
95
-
96
80
  hasBeenReported = true;
97
81
  var completeContext = context;
98
82
  completeContext.state = 'complete';
@@ -101,20 +85,17 @@ function sendXhr(observable) {
101
85
  observable.notify((0, _tools.shallowClone)(completeContext));
102
86
  clearRequestId.call(this);
103
87
  };
104
-
105
88
  var unsubscribeLoadEndListener = (0, _addEventListener.addEventListener)(this, 'loadend', onEnd).stop;
106
89
  observable.notify(startContext);
107
90
  }
108
-
109
91
  function clearRequestId() {
110
92
  delete xhrContexts[this[DATA_FLUX_REQUEST_ID_KEY]];
111
93
  delete this[DATA_FLUX_REQUEST_ID_KEY];
112
94
  }
113
-
114
95
  function abortXhr() {
115
96
  var context = xhrContexts[this[DATA_FLUX_REQUEST_ID_KEY]];
116
-
117
97
  if (context) {
118
98
  context.isAborted = true;
119
99
  }
120
- }
100
+ }
101
+ //# sourceMappingURL=xhrObservable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xhrObservable.js","names":["_instrumentMethod","require","_observable","_urlPolyfill","_tools","_addEventListener","xhrObservable","xhrContexts","DATA_FLUX_REQUEST_ID_KEY","initXhrObservable","createXhrObservable","observable","Observable","openInstrumentMethod","instrumentMethodAndCallOriginal","XMLHttpRequest","prototype","before","openXhr","sendInstrumentMethod","sendXhr","call","abortInstrumentMethod","abortXhr","stop","method","url","requestUUID","UUID","state","normalizeUrl","String","context","startContext","startTime","relativeNow","startClocks","clocksNow","isAborted","xhr","hasBeenReported","stopInstrumentingOnReadyStateChange","readyState","DONE","onEnd","unsubscribeLoadEndListener","completeContext","duration","elapsed","timeStamp","timeStampNow","status","notify","shallowClone","clearRequestId","addEventListener"],"sources":["../../src/browser/xhrObservable.js"],"sourcesContent":["import { instrumentMethodAndCallOriginal } from '../helper/instrumentMethod'\nimport { Observable } from '../helper/observable'\nimport { normalizeUrl } from '../helper/urlPolyfill'\nimport {\n shallowClone,\n elapsed,\n relativeNow,\n clocksNow,\n timeStampNow,\n UUID\n} from '../helper/tools'\nimport { addEventListener } from '../browser/addEventListener'\nvar xhrObservable\nvar xhrContexts = {}\nvar DATA_FLUX_REQUEST_ID_KEY = '_DATAFLUX_REQUEST_UUID'\nexport function initXhrObservable() {\n if (!xhrObservable) {\n xhrObservable = createXhrObservable()\n }\n return xhrObservable\n}\n\nfunction createXhrObservable() {\n var observable = new Observable(function () {\n var openInstrumentMethod = instrumentMethodAndCallOriginal(\n XMLHttpRequest.prototype,\n 'open',\n {\n before: openXhr\n }\n )\n\n var sendInstrumentMethod = instrumentMethodAndCallOriginal(\n XMLHttpRequest.prototype,\n 'send',\n {\n before: function () {\n sendXhr.call(this, observable)\n }\n }\n )\n\n var abortInstrumentMethod = instrumentMethodAndCallOriginal(\n XMLHttpRequest.prototype,\n 'abort',\n {\n before: abortXhr\n }\n )\n\n return function () {\n openInstrumentMethod.stop()\n sendInstrumentMethod.stop()\n abortInstrumentMethod.stop()\n }\n })\n return observable\n}\n\nfunction openXhr(method, url) {\n var requestUUID = this[DATA_FLUX_REQUEST_ID_KEY] || UUID()\n this[DATA_FLUX_REQUEST_ID_KEY] = requestUUID\n xhrContexts[requestUUID] = {\n state: 'open',\n method: method,\n url: normalizeUrl(String(url))\n }\n}\n\nfunction sendXhr(observable) {\n var context = xhrContexts[this[DATA_FLUX_REQUEST_ID_KEY]]\n if (!context) {\n return\n }\n var startContext = context\n startContext.state = 'start'\n startContext.startTime = relativeNow()\n startContext.startClocks = clocksNow()\n startContext.isAborted = false\n startContext.xhr = this\n var hasBeenReported = false\n var stopInstrumentingOnReadyStateChange = instrumentMethodAndCallOriginal(\n this,\n 'onreadystatechange',\n {\n before: function () {\n if (this.readyState === XMLHttpRequest.DONE) {\n // Try to report the XHR as soon as possible, because the XHR may be mutated by the\n // application during a future event. For example, Angular is calling .abort() on\n // completed requests during a onreadystatechange event, so the status becomes '0'\n // before the request is collected.\n onEnd.call(this)\n }\n }\n }\n ).stop\n\n var onEnd = function () {\n unsubscribeLoadEndListener()\n stopInstrumentingOnReadyStateChange()\n if (hasBeenReported) {\n return\n }\n hasBeenReported = true\n var completeContext = context\n completeContext.state = 'complete'\n completeContext.duration = elapsed(\n startContext.startClocks.timeStamp,\n timeStampNow()\n )\n completeContext.status = this.status\n observable.notify(shallowClone(completeContext))\n clearRequestId.call(this)\n }\n var unsubscribeLoadEndListener = addEventListener(this, 'loadend', onEnd).stop\n observable.notify(startContext)\n}\nfunction clearRequestId() {\n delete xhrContexts[this[DATA_FLUX_REQUEST_ID_KEY]]\n delete this[DATA_FLUX_REQUEST_ID_KEY]\n}\nfunction abortXhr() {\n var context = xhrContexts[this[DATA_FLUX_REQUEST_ID_KEY]]\n if (context) {\n context.isAborted = true\n }\n}\n"],"mappings":"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"}
@@ -6,39 +6,31 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.DefaultPrivacyLevel = void 0;
7
7
  exports.buildCookieOptions = buildCookieOptions;
8
8
  exports.validateAndBuildConfiguration = validateAndBuildConfiguration;
9
-
10
9
  var _cookie = require("../browser/cookie");
11
-
12
10
  var _catchUserErrors = require("../helper/catchUserErrors");
13
-
14
11
  var _display = require("../helper/display");
15
-
16
12
  var _tools = require("../helper/tools");
17
-
18
13
  var _byteUtils = require("../helper/byteUtils");
19
-
20
14
  var _transportConfiguration = require("./transportConfiguration");
21
-
22
15
  var DefaultPrivacyLevel = {
23
16
  ALLOW: 'allow',
24
17
  MASK: 'mask',
25
18
  MASK_USER_INPUT: 'mask-user-input'
26
19
  };
27
20
  exports.DefaultPrivacyLevel = DefaultPrivacyLevel;
28
-
29
21
  function validateAndBuildConfiguration(initConfiguration) {
30
22
  if (initConfiguration.sampleRate !== undefined && !(0, _tools.isPercentage)(initConfiguration.sampleRate)) {
31
23
  _display.display.error('Sample Rate should be a number between 0 and 100');
32
-
33
24
  return;
34
25
  }
35
-
36
26
  if (initConfiguration.sessionSampleRate !== undefined && !(0, _tools.isPercentage)(initConfiguration.sessionSampleRate)) {
37
27
  _display.display.error('Sample Rate should be a number between 0 and 100');
38
-
39
28
  return;
40
29
  }
41
-
30
+ if (initConfiguration.telemetrySampleRate !== undefined && !(0, _tools.isPercentage)(initConfiguration.telemetrySampleRate)) {
31
+ _display.display.error('Telemetry Sample Rate should be a number between 0 and 100');
32
+ return;
33
+ }
42
34
  var sessionSampleRate = initConfiguration.sessionSampleRate || initConfiguration.sampleRate;
43
35
  return (0, _tools.assign)({
44
36
  beforeSend: initConfiguration.beforeSend && (0, _catchUserErrors.catchUserErrors)(initConfiguration.beforeSend, 'beforeSend threw an error:'),
@@ -47,21 +39,21 @@ function validateAndBuildConfiguration(initConfiguration) {
47
39
  service: initConfiguration.service,
48
40
  version: initConfiguration.version,
49
41
  env: initConfiguration.env,
42
+ telemetrySampleRate: (0, _tools.isNullUndefinedDefaultValue)(initConfiguration.telemetrySampleRate, 100),
43
+ telemetryEnabled: (0, _tools.isNullUndefinedDefaultValue)(initConfiguration.telemetryEnabled, false),
50
44
  silentMultipleInit: !!initConfiguration.silentMultipleInit,
51
-
52
45
  /**
53
46
  * beacon payload max queue size implementation is 64kb
54
47
  * ensure that we leave room for logs, rum and potential other users
55
48
  */
56
49
  batchBytesLimit: 16 * _byteUtils.ONE_KIBI_BYTE,
57
50
  eventRateLimiterThreshold: 3000,
58
-
51
+ maxTelemetryEventsPerPage: 15,
59
52
  /**
60
53
  * flush automatically, aim to be lower than ALB connection timeout
61
54
  * to maximize connection reuse.
62
55
  */
63
56
  flushTimeout: 30 * _tools.ONE_SECOND,
64
-
65
57
  /**
66
58
  * Logs intake limit
67
59
  */
@@ -70,19 +62,16 @@ function validateAndBuildConfiguration(initConfiguration) {
70
62
  resourceUrlLimit: 5 * _byteUtils.ONE_KIBI_BYTE
71
63
  }, (0, _transportConfiguration.computeTransportConfiguration)(initConfiguration));
72
64
  }
73
-
74
65
  function buildCookieOptions(initConfiguration) {
75
66
  var cookieOptions = {};
76
67
  cookieOptions.secure = mustUseSecureCookie(initConfiguration);
77
68
  cookieOptions.crossSite = !!initConfiguration.useCrossSiteSessionCookie;
78
-
79
69
  if (initConfiguration.trackSessionAcrossSubdomains) {
80
70
  cookieOptions.domain = (0, _cookie.getCurrentSite)();
81
71
  }
82
-
83
72
  return cookieOptions;
84
73
  }
85
-
86
74
  function mustUseSecureCookie(initConfiguration) {
87
75
  return !!initConfiguration.useSecureSessionCookie || !!initConfiguration.useCrossSiteSessionCookie;
88
- }
76
+ }
77
+ //# sourceMappingURL=configuration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configuration.js","names":["_cookie","require","_catchUserErrors","_display","_tools","_byteUtils","_transportConfiguration","DefaultPrivacyLevel","ALLOW","MASK","MASK_USER_INPUT","exports","validateAndBuildConfiguration","initConfiguration","sampleRate","undefined","isPercentage","display","error","sessionSampleRate","telemetrySampleRate","assign","beforeSend","catchUserErrors","cookieOptions","buildCookieOptions","isNullUndefinedDefaultValue","service","version","env","telemetryEnabled","silentMultipleInit","batchBytesLimit","ONE_KIBI_BYTE","eventRateLimiterThreshold","maxTelemetryEventsPerPage","flushTimeout","ONE_SECOND","batchMessagesLimit","messageBytesLimit","resourceUrlLimit","computeTransportConfiguration","secure","mustUseSecureCookie","crossSite","useCrossSiteSessionCookie","trackSessionAcrossSubdomains","domain","getCurrentSite","useSecureSessionCookie"],"sources":["../../src/configuration/configuration.js"],"sourcesContent":["import { getCurrentSite } from '../browser/cookie'\nimport { catchUserErrors } from '../helper/catchUserErrors'\nimport { display } from '../helper/display'\nimport {\n assign,\n isPercentage,\n ONE_SECOND,\n isNullUndefinedDefaultValue\n} from '../helper/tools'\nimport { ONE_KIBI_BYTE } from '../helper/byteUtils'\nimport { computeTransportConfiguration } from './transportConfiguration'\n\nexport var DefaultPrivacyLevel = {\n ALLOW: 'allow',\n MASK: 'mask',\n MASK_USER_INPUT: 'mask-user-input'\n}\nexport function validateAndBuildConfiguration(initConfiguration) {\n if (\n initConfiguration.sampleRate !== undefined &&\n !isPercentage(initConfiguration.sampleRate)\n ) {\n display.error('Sample Rate should be a number between 0 and 100')\n return\n }\n if (\n initConfiguration.sessionSampleRate !== undefined &&\n !isPercentage(initConfiguration.sessionSampleRate)\n ) {\n display.error('Sample Rate should be a number between 0 and 100')\n return\n }\n if (\n initConfiguration.telemetrySampleRate !== undefined &&\n !isPercentage(initConfiguration.telemetrySampleRate)\n ) {\n display.error('Telemetry Sample Rate should be a number between 0 and 100')\n return\n }\n var sessionSampleRate =\n initConfiguration.sessionSampleRate || initConfiguration.sampleRate\n return assign(\n {\n beforeSend:\n initConfiguration.beforeSend &&\n catchUserErrors(\n initConfiguration.beforeSend,\n 'beforeSend threw an error:'\n ),\n cookieOptions: buildCookieOptions(initConfiguration),\n sessionSampleRate: isNullUndefinedDefaultValue(sessionSampleRate, 100),\n service: initConfiguration.service,\n version: initConfiguration.version,\n env: initConfiguration.env,\n telemetrySampleRate: isNullUndefinedDefaultValue(\n initConfiguration.telemetrySampleRate,\n 100\n ),\n telemetryEnabled: isNullUndefinedDefaultValue(\n initConfiguration.telemetryEnabled,\n false\n ),\n silentMultipleInit: !!initConfiguration.silentMultipleInit,\n\n /**\n * beacon payload max queue size implementation is 64kb\n * ensure that we leave room for logs, rum and potential other users\n */\n batchBytesLimit: 16 * ONE_KIBI_BYTE,\n\n eventRateLimiterThreshold: 3000,\n maxTelemetryEventsPerPage: 15,\n\n /**\n * flush automatically, aim to be lower than ALB connection timeout\n * to maximize connection reuse.\n */\n flushTimeout: 30 * ONE_SECOND,\n\n /**\n * Logs intake limit\n */\n batchMessagesLimit: 50,\n messageBytesLimit: 256 * ONE_KIBI_BYTE,\n resourceUrlLimit: 5 * ONE_KIBI_BYTE\n },\n computeTransportConfiguration(initConfiguration)\n )\n}\n\nexport function buildCookieOptions(initConfiguration) {\n var cookieOptions = {}\n\n cookieOptions.secure = mustUseSecureCookie(initConfiguration)\n cookieOptions.crossSite = !!initConfiguration.useCrossSiteSessionCookie\n\n if (initConfiguration.trackSessionAcrossSubdomains) {\n cookieOptions.domain = getCurrentSite()\n }\n\n return cookieOptions\n}\n\nfunction mustUseSecureCookie(initConfiguration) {\n return (\n !!initConfiguration.useSecureSessionCookie ||\n !!initConfiguration.useCrossSiteSessionCookie\n )\n}\n"],"mappings":"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"}