@pratham.raval/browser-core 6.22.3

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 (710) hide show
  1. package/README.md +3 -0
  2. package/cjs/boot/displayAlreadyInitializedError.d.ts +2 -0
  3. package/cjs/boot/displayAlreadyInitializedError.js +10 -0
  4. package/cjs/boot/displayAlreadyInitializedError.js.map +1 -0
  5. package/cjs/boot/init.d.ts +14 -0
  6. package/cjs/boot/init.js +39 -0
  7. package/cjs/boot/init.js.map +1 -0
  8. package/cjs/browser/addEventListener.d.ts +87 -0
  9. package/cjs/browser/addEventListener.js +55 -0
  10. package/cjs/browser/addEventListener.js.map +1 -0
  11. package/cjs/browser/browser.types.d.ts +51 -0
  12. package/cjs/browser/browser.types.js +6 -0
  13. package/cjs/browser/browser.types.js.map +1 -0
  14. package/cjs/browser/cookie.d.ts +18 -0
  15. package/cjs/browser/cookie.js +101 -0
  16. package/cjs/browser/cookie.js.map +1 -0
  17. package/cjs/browser/fetchObservable.d.ts +25 -0
  18. package/cjs/browser/fetchObservable.js +79 -0
  19. package/cjs/browser/fetchObservable.js.map +1 -0
  20. package/cjs/browser/pageMayExitObservable.d.ts +14 -0
  21. package/cjs/browser/pageMayExitObservable.js +45 -0
  22. package/cjs/browser/pageMayExitObservable.js.map +1 -0
  23. package/cjs/browser/runOnReadyState.d.ts +5 -0
  24. package/cjs/browser/runOnReadyState.js +20 -0
  25. package/cjs/browser/runOnReadyState.js.map +1 -0
  26. package/cjs/browser/xhrObservable.d.ts +23 -0
  27. package/cjs/browser/xhrObservable.js +83 -0
  28. package/cjs/browser/xhrObservable.js.map +1 -0
  29. package/cjs/domain/allowedTrackingOrigins.d.ts +4 -0
  30. package/cjs/domain/allowedTrackingOrigins.js +25 -0
  31. package/cjs/domain/allowedTrackingOrigins.js.map +1 -0
  32. package/cjs/domain/bufferedData.d.ts +14 -0
  33. package/cjs/domain/bufferedData.js +22 -0
  34. package/cjs/domain/bufferedData.js.map +1 -0
  35. package/cjs/domain/configuration/configuration.d.ts +303 -0
  36. package/cjs/domain/configuration/configuration.js +152 -0
  37. package/cjs/domain/configuration/configuration.js.map +1 -0
  38. package/cjs/domain/configuration/endpointBuilder.d.ts +12 -0
  39. package/cjs/domain/configuration/endpointBuilder.js +78 -0
  40. package/cjs/domain/configuration/endpointBuilder.js.map +1 -0
  41. package/cjs/domain/configuration/index.d.ts +5 -0
  42. package/cjs/domain/configuration/index.js +16 -0
  43. package/cjs/domain/configuration/index.js.map +1 -0
  44. package/cjs/domain/configuration/transportConfiguration.d.ts +20 -0
  45. package/cjs/domain/configuration/transportConfiguration.js +54 -0
  46. package/cjs/domain/configuration/transportConfiguration.js.map +1 -0
  47. package/cjs/domain/connectivity/connectivity.d.ts +14 -0
  48. package/cjs/domain/connectivity/connectivity.js +14 -0
  49. package/cjs/domain/connectivity/connectivity.js.map +1 -0
  50. package/cjs/domain/connectivity/index.d.ts +1 -0
  51. package/cjs/domain/connectivity/index.js +18 -0
  52. package/cjs/domain/connectivity/index.js.map +1 -0
  53. package/cjs/domain/console/consoleObservable.d.ts +21 -0
  54. package/cjs/domain/console/consoleObservable.js +84 -0
  55. package/cjs/domain/console/consoleObservable.js.map +1 -0
  56. package/cjs/domain/context/contextConstants.d.ts +21 -0
  57. package/cjs/domain/context/contextConstants.js +18 -0
  58. package/cjs/domain/context/contextConstants.js.map +1 -0
  59. package/cjs/domain/context/contextManager.d.ts +19 -0
  60. package/cjs/domain/context/contextManager.js +60 -0
  61. package/cjs/domain/context/contextManager.js.map +1 -0
  62. package/cjs/domain/context/contextUtils.d.ts +5 -0
  63. package/cjs/domain/context/contextUtils.js +16 -0
  64. package/cjs/domain/context/contextUtils.js.map +1 -0
  65. package/cjs/domain/context/defineContextMethod.d.ts +6 -0
  66. package/cjs/domain/context/defineContextMethod.js +21 -0
  67. package/cjs/domain/context/defineContextMethod.js.map +1 -0
  68. package/cjs/domain/context/storeContextManager.d.ts +6 -0
  69. package/cjs/domain/context/storeContextManager.js +40 -0
  70. package/cjs/domain/context/storeContextManager.js.map +1 -0
  71. package/cjs/domain/contexts/accountContext.d.ts +26 -0
  72. package/cjs/domain/contexts/accountContext.js +33 -0
  73. package/cjs/domain/contexts/accountContext.js.map +1 -0
  74. package/cjs/domain/contexts/globalContext.d.ts +18 -0
  75. package/cjs/domain/contexts/globalContext.js +21 -0
  76. package/cjs/domain/contexts/globalContext.js.map +1 -0
  77. package/cjs/domain/contexts/rumInternalContext.type.d.ts +14 -0
  78. package/cjs/domain/contexts/rumInternalContext.type.js +3 -0
  79. package/cjs/domain/contexts/rumInternalContext.type.js.map +1 -0
  80. package/cjs/domain/contexts/userContext.d.ts +29 -0
  81. package/cjs/domain/contexts/userContext.js +45 -0
  82. package/cjs/domain/contexts/userContext.js.map +1 -0
  83. package/cjs/domain/deflate/deflate.types.d.ts +40 -0
  84. package/cjs/domain/deflate/deflate.types.js +3 -0
  85. package/cjs/domain/deflate/deflate.types.js.map +1 -0
  86. package/cjs/domain/deflate/index.d.ts +1 -0
  87. package/cjs/domain/deflate/index.js +18 -0
  88. package/cjs/domain/deflate/index.js.map +1 -0
  89. package/cjs/domain/error/error.d.ts +23 -0
  90. package/cjs/domain/error/error.js +74 -0
  91. package/cjs/domain/error/error.js.map +1 -0
  92. package/cjs/domain/error/error.types.d.ts +47 -0
  93. package/cjs/domain/error/error.types.js +13 -0
  94. package/cjs/domain/error/error.types.js.map +1 -0
  95. package/cjs/domain/error/trackRuntimeError.d.ts +11 -0
  96. package/cjs/domain/error/trackRuntimeError.js +48 -0
  97. package/cjs/domain/error/trackRuntimeError.js.map +1 -0
  98. package/cjs/domain/eventRateLimiter/createEventRateLimiter.d.ts +5 -0
  99. package/cjs/domain/eventRateLimiter/createEventRateLimiter.js +39 -0
  100. package/cjs/domain/eventRateLimiter/createEventRateLimiter.js.map +1 -0
  101. package/cjs/domain/extension/extensionUtils.d.ts +10 -0
  102. package/cjs/domain/extension/extensionUtils.js +30 -0
  103. package/cjs/domain/extension/extensionUtils.js.map +1 -0
  104. package/cjs/domain/intakeSites.d.ts +8 -0
  105. package/cjs/domain/intakeSites.js +11 -0
  106. package/cjs/domain/intakeSites.js.map +1 -0
  107. package/cjs/domain/report/browser.types.d.ts +34 -0
  108. package/cjs/domain/report/browser.types.js +3 -0
  109. package/cjs/domain/report/browser.types.js.map +1 -0
  110. package/cjs/domain/report/reportObservable.d.ts +14 -0
  111. package/cjs/domain/report/reportObservable.js +99 -0
  112. package/cjs/domain/report/reportObservable.js.map +1 -0
  113. package/cjs/domain/resourceUtils.d.ts +18 -0
  114. package/cjs/domain/resourceUtils.js +20 -0
  115. package/cjs/domain/resourceUtils.js.map +1 -0
  116. package/cjs/domain/session/oldCookiesMigration.d.ts +11 -0
  117. package/cjs/domain/session/oldCookiesMigration.js +40 -0
  118. package/cjs/domain/session/oldCookiesMigration.js.map +1 -0
  119. package/cjs/domain/session/sessionConstants.d.ts +15 -0
  120. package/cjs/domain/session/sessionConstants.js +16 -0
  121. package/cjs/domain/session/sessionConstants.js.map +1 -0
  122. package/cjs/domain/session/sessionManager.d.ts +28 -0
  123. package/cjs/domain/session/sessionManager.js +185 -0
  124. package/cjs/domain/session/sessionManager.js.map +1 -0
  125. package/cjs/domain/session/sessionState.d.ts +16 -0
  126. package/cjs/domain/session/sessionState.js +76 -0
  127. package/cjs/domain/session/sessionState.js.map +1 -0
  128. package/cjs/domain/session/sessionStateValidation.d.ts +3 -0
  129. package/cjs/domain/session/sessionStateValidation.js +11 -0
  130. package/cjs/domain/session/sessionStateValidation.js.map +1 -0
  131. package/cjs/domain/session/sessionStore.d.ts +38 -0
  132. package/cjs/domain/session/sessionStore.js +181 -0
  133. package/cjs/domain/session/sessionStore.js.map +1 -0
  134. package/cjs/domain/session/sessionStoreOperations.d.ts +12 -0
  135. package/cjs/domain/session/sessionStoreOperations.js +119 -0
  136. package/cjs/domain/session/sessionStoreOperations.js.map +1 -0
  137. package/cjs/domain/session/storeStrategies/sessionInCookie.d.ts +8 -0
  138. package/cjs/domain/session/storeStrategies/sessionInCookie.js +56 -0
  139. package/cjs/domain/session/storeStrategies/sessionInCookie.js.map +1 -0
  140. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.d.ts +4 -0
  141. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js +41 -0
  142. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js.map +1 -0
  143. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.d.ts +16 -0
  144. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.js +5 -0
  145. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.js.map +1 -0
  146. package/cjs/domain/synthetics/syntheticsWorkerValues.d.ts +12 -0
  147. package/cjs/domain/synthetics/syntheticsWorkerValues.js +31 -0
  148. package/cjs/domain/synthetics/syntheticsWorkerValues.js.map +1 -0
  149. package/cjs/domain/tags.d.ts +6 -0
  150. package/cjs/domain/tags.js +67 -0
  151. package/cjs/domain/tags.js.map +1 -0
  152. package/cjs/domain/telemetry/index.d.ts +4 -0
  153. package/cjs/domain/telemetry/index.js +28 -0
  154. package/cjs/domain/telemetry/index.js.map +1 -0
  155. package/cjs/domain/telemetry/rawTelemetryEvent.types.d.ts +18 -0
  156. package/cjs/domain/telemetry/rawTelemetryEvent.types.js +9 -0
  157. package/cjs/domain/telemetry/rawTelemetryEvent.types.js.map +1 -0
  158. package/cjs/domain/telemetry/telemetry.d.ts +56 -0
  159. package/cjs/domain/telemetry/telemetry.js +248 -0
  160. package/cjs/domain/telemetry/telemetry.js.map +1 -0
  161. package/cjs/domain/telemetry/telemetryEvent.types.d.ts +858 -0
  162. package/cjs/domain/telemetry/telemetryEvent.types.js +7 -0
  163. package/cjs/domain/telemetry/telemetryEvent.types.js.map +1 -0
  164. package/cjs/domain/trackingConsent.d.ts +13 -0
  165. package/cjs/domain/trackingConsent.js +28 -0
  166. package/cjs/domain/trackingConsent.js.map +1 -0
  167. package/cjs/index.d.ts +100 -0
  168. package/cjs/index.js +193 -0
  169. package/cjs/index.js.map +1 -0
  170. package/cjs/tools/abstractHooks.d.ts +24 -0
  171. package/cjs/tools/abstractHooks.js +41 -0
  172. package/cjs/tools/abstractHooks.js.map +1 -0
  173. package/cjs/tools/abstractLifeCycle.d.ts +23 -0
  174. package/cjs/tools/abstractLifeCycle.js +28 -0
  175. package/cjs/tools/abstractLifeCycle.js.map +1 -0
  176. package/cjs/tools/boundedBuffer.d.ts +16 -0
  177. package/cjs/tools/boundedBuffer.js +32 -0
  178. package/cjs/tools/boundedBuffer.js.map +1 -0
  179. package/cjs/tools/catchUserErrors.d.ts +1 -0
  180. package/cjs/tools/catchUserErrors.js +15 -0
  181. package/cjs/tools/catchUserErrors.js.map +1 -0
  182. package/cjs/tools/display.d.ts +38 -0
  183. package/cjs/tools/display.js +44 -0
  184. package/cjs/tools/display.js.map +1 -0
  185. package/cjs/tools/encoder.d.ts +54 -0
  186. package/cjs/tools/encoder.js +40 -0
  187. package/cjs/tools/encoder.js.map +1 -0
  188. package/cjs/tools/experimentalFeatures.d.ts +20 -0
  189. package/cjs/tools/experimentalFeatures.js +49 -0
  190. package/cjs/tools/experimentalFeatures.js.map +1 -0
  191. package/cjs/tools/getZoneJsOriginalValue.d.ts +19 -0
  192. package/cjs/tools/getZoneJsOriginalValue.js +29 -0
  193. package/cjs/tools/getZoneJsOriginalValue.js.map +1 -0
  194. package/cjs/tools/globalObject.d.ts +19 -0
  195. package/cjs/tools/globalObject.js +44 -0
  196. package/cjs/tools/globalObject.js.map +1 -0
  197. package/cjs/tools/instrumentMethod.d.ts +75 -0
  198. package/cjs/tools/instrumentMethod.js +118 -0
  199. package/cjs/tools/instrumentMethod.js.map +1 -0
  200. package/cjs/tools/matchOption.d.ts +8 -0
  201. package/cjs/tools/matchOption.js +35 -0
  202. package/cjs/tools/matchOption.js.map +1 -0
  203. package/cjs/tools/mergeInto.d.ts +25 -0
  204. package/cjs/tools/mergeInto.js +98 -0
  205. package/cjs/tools/mergeInto.js.map +1 -0
  206. package/cjs/tools/monitor.d.ts +9 -0
  207. package/cjs/tools/monitor.js +62 -0
  208. package/cjs/tools/monitor.js.map +1 -0
  209. package/cjs/tools/observable.d.ts +30 -0
  210. package/cjs/tools/observable.js +89 -0
  211. package/cjs/tools/observable.js.map +1 -0
  212. package/cjs/tools/queueMicrotask.d.ts +1 -0
  213. package/cjs/tools/queueMicrotask.js +17 -0
  214. package/cjs/tools/queueMicrotask.js.map +1 -0
  215. package/cjs/tools/readBytesFromStream.d.ts +11 -0
  216. package/cjs/tools/readBytesFromStream.js +63 -0
  217. package/cjs/tools/readBytesFromStream.js.map +1 -0
  218. package/cjs/tools/requestIdleCallback.d.ts +12 -0
  219. package/cjs/tools/requestIdleCallback.js +35 -0
  220. package/cjs/tools/requestIdleCallback.js.map +1 -0
  221. package/cjs/tools/sendToExtension.d.ts +3 -0
  222. package/cjs/tools/sendToExtension.js +11 -0
  223. package/cjs/tools/sendToExtension.js.map +1 -0
  224. package/cjs/tools/serialisation/context.d.ts +9 -0
  225. package/cjs/tools/serialisation/context.js +3 -0
  226. package/cjs/tools/serialisation/context.js.map +1 -0
  227. package/cjs/tools/serialisation/jsonStringify.d.ts +13 -0
  228. package/cjs/tools/serialisation/jsonStringify.js +48 -0
  229. package/cjs/tools/serialisation/jsonStringify.js.map +1 -0
  230. package/cjs/tools/serialisation/sanitize.d.ts +18 -0
  231. package/cjs/tools/serialisation/sanitize.js +188 -0
  232. package/cjs/tools/serialisation/sanitize.js.map +1 -0
  233. package/cjs/tools/stackTrace/computeStackTrace.d.ts +25 -0
  234. package/cjs/tools/stackTrace/computeStackTrace.js +187 -0
  235. package/cjs/tools/stackTrace/computeStackTrace.js.map +1 -0
  236. package/cjs/tools/stackTrace/handlingStack.d.ts +10 -0
  237. package/cjs/tools/stackTrace/handlingStack.js +46 -0
  238. package/cjs/tools/stackTrace/handlingStack.js.map +1 -0
  239. package/cjs/tools/taskQueue.d.ts +15 -0
  240. package/cjs/tools/taskQueue.js +54 -0
  241. package/cjs/tools/taskQueue.js.map +1 -0
  242. package/cjs/tools/timer.d.ts +5 -0
  243. package/cjs/tools/timer.js +22 -0
  244. package/cjs/tools/timer.js.map +1 -0
  245. package/cjs/tools/utils/arrayUtils.d.ts +3 -0
  246. package/cjs/tools/utils/arrayUtils.js +20 -0
  247. package/cjs/tools/utils/arrayUtils.js.map +1 -0
  248. package/cjs/tools/utils/browserDetection.d.ts +8 -0
  249. package/cjs/tools/utils/browserDetection.js +33 -0
  250. package/cjs/tools/utils/browserDetection.js.map +1 -0
  251. package/cjs/tools/utils/byteUtils.d.ts +8 -0
  252. package/cjs/tools/utils/byteUtils.js +30 -0
  253. package/cjs/tools/utils/byteUtils.js.map +1 -0
  254. package/cjs/tools/utils/functionUtils.d.ts +8 -0
  255. package/cjs/tools/utils/functionUtils.js +43 -0
  256. package/cjs/tools/utils/functionUtils.js.map +1 -0
  257. package/cjs/tools/utils/numberUtils.d.ts +9 -0
  258. package/cjs/tools/utils/numberUtils.js +24 -0
  259. package/cjs/tools/utils/numberUtils.js.map +1 -0
  260. package/cjs/tools/utils/objectUtils.d.ts +10 -0
  261. package/cjs/tools/utils/objectUtils.js +23 -0
  262. package/cjs/tools/utils/objectUtils.js.map +1 -0
  263. package/cjs/tools/utils/polyfills.d.ts +7 -0
  264. package/cjs/tools/utils/polyfills.js +23 -0
  265. package/cjs/tools/utils/polyfills.js.map +1 -0
  266. package/cjs/tools/utils/responseUtils.d.ts +2 -0
  267. package/cjs/tools/utils/responseUtils.js +17 -0
  268. package/cjs/tools/utils/responseUtils.js.map +1 -0
  269. package/cjs/tools/utils/stringUtils.d.ts +8 -0
  270. package/cjs/tools/utils/stringUtils.js +55 -0
  271. package/cjs/tools/utils/stringUtils.js.map +1 -0
  272. package/cjs/tools/utils/timeUtils.d.ts +53 -0
  273. package/cjs/tools/utils/timeUtils.js +101 -0
  274. package/cjs/tools/utils/timeUtils.js.map +1 -0
  275. package/cjs/tools/utils/timezone.d.ts +1 -0
  276. package/cjs/tools/utils/timezone.js +13 -0
  277. package/cjs/tools/utils/timezone.js.map +1 -0
  278. package/cjs/tools/utils/typeUtils.d.ts +4 -0
  279. package/cjs/tools/utils/typeUtils.js +16 -0
  280. package/cjs/tools/utils/typeUtils.js.map +1 -0
  281. package/cjs/tools/utils/urlPolyfill.d.ts +5 -0
  282. package/cjs/tools/utils/urlPolyfill.js +59 -0
  283. package/cjs/tools/utils/urlPolyfill.js.map +1 -0
  284. package/cjs/tools/valueHistory.d.ts +27 -0
  285. package/cjs/tools/valueHistory.js +104 -0
  286. package/cjs/tools/valueHistory.js.map +1 -0
  287. package/cjs/transport/batch.d.ts +16 -0
  288. package/cjs/transport/batch.js +108 -0
  289. package/cjs/transport/batch.js.map +1 -0
  290. package/cjs/transport/eventBridge.d.ts +21 -0
  291. package/cjs/transport/eventBridge.js +46 -0
  292. package/cjs/transport/eventBridge.js.map +1 -0
  293. package/cjs/transport/flushController.d.ts +58 -0
  294. package/cjs/transport/flushController.js +109 -0
  295. package/cjs/transport/flushController.js.map +1 -0
  296. package/cjs/transport/httpRequest.d.ts +51 -0
  297. package/cjs/transport/httpRequest.js +80 -0
  298. package/cjs/transport/httpRequest.js.map +1 -0
  299. package/cjs/transport/index.d.ts +7 -0
  300. package/cjs/transport/index.js +14 -0
  301. package/cjs/transport/index.js.map +1 -0
  302. package/cjs/transport/sendWithRetryStrategy.d.ts +41 -0
  303. package/cjs/transport/sendWithRetryStrategy.js +163 -0
  304. package/cjs/transport/sendWithRetryStrategy.js.map +1 -0
  305. package/esm/boot/displayAlreadyInitializedError.d.ts +2 -0
  306. package/esm/boot/displayAlreadyInitializedError.js +7 -0
  307. package/esm/boot/displayAlreadyInitializedError.js.map +1 -0
  308. package/esm/boot/init.d.ts +14 -0
  309. package/esm/boot/init.js +35 -0
  310. package/esm/boot/init.js.map +1 -0
  311. package/esm/browser/addEventListener.d.ts +87 -0
  312. package/esm/browser/addEventListener.js +51 -0
  313. package/esm/browser/addEventListener.js.map +1 -0
  314. package/esm/browser/browser.types.d.ts +51 -0
  315. package/esm/browser/browser.types.js +5 -0
  316. package/esm/browser/browser.types.js.map +1 -0
  317. package/esm/browser/cookie.d.ts +18 -0
  318. package/esm/browser/cookie.js +91 -0
  319. package/esm/browser/cookie.js.map +1 -0
  320. package/esm/browser/fetchObservable.d.ts +25 -0
  321. package/esm/browser/fetchObservable.js +75 -0
  322. package/esm/browser/fetchObservable.js.map +1 -0
  323. package/esm/browser/pageMayExitObservable.d.ts +14 -0
  324. package/esm/browser/pageMayExitObservable.js +40 -0
  325. package/esm/browser/pageMayExitObservable.js.map +1 -0
  326. package/esm/browser/runOnReadyState.d.ts +5 -0
  327. package/esm/browser/runOnReadyState.js +16 -0
  328. package/esm/browser/runOnReadyState.js.map +1 -0
  329. package/esm/browser/xhrObservable.d.ts +23 -0
  330. package/esm/browser/xhrObservable.js +80 -0
  331. package/esm/browser/xhrObservable.js.map +1 -0
  332. package/esm/domain/allowedTrackingOrigins.d.ts +4 -0
  333. package/esm/domain/allowedTrackingOrigins.js +21 -0
  334. package/esm/domain/allowedTrackingOrigins.js.map +1 -0
  335. package/esm/domain/bufferedData.d.ts +14 -0
  336. package/esm/domain/bufferedData.js +19 -0
  337. package/esm/domain/bufferedData.js.map +1 -0
  338. package/esm/domain/configuration/configuration.d.ts +303 -0
  339. package/esm/domain/configuration/configuration.js +146 -0
  340. package/esm/domain/configuration/configuration.js.map +1 -0
  341. package/esm/domain/configuration/endpointBuilder.d.ts +12 -0
  342. package/esm/domain/configuration/endpointBuilder.js +74 -0
  343. package/esm/domain/configuration/endpointBuilder.js.map +1 -0
  344. package/esm/domain/configuration/index.d.ts +5 -0
  345. package/esm/domain/configuration/index.js +4 -0
  346. package/esm/domain/configuration/index.js.map +1 -0
  347. package/esm/domain/configuration/transportConfiguration.d.ts +20 -0
  348. package/esm/domain/configuration/transportConfiguration.js +50 -0
  349. package/esm/domain/configuration/transportConfiguration.js.map +1 -0
  350. package/esm/domain/connectivity/connectivity.d.ts +14 -0
  351. package/esm/domain/connectivity/connectivity.js +11 -0
  352. package/esm/domain/connectivity/connectivity.js.map +1 -0
  353. package/esm/domain/connectivity/index.d.ts +1 -0
  354. package/esm/domain/connectivity/index.js +2 -0
  355. package/esm/domain/connectivity/index.js.map +1 -0
  356. package/esm/domain/console/consoleObservable.d.ts +21 -0
  357. package/esm/domain/console/consoleObservable.js +80 -0
  358. package/esm/domain/console/consoleObservable.js.map +1 -0
  359. package/esm/domain/context/contextConstants.d.ts +21 -0
  360. package/esm/domain/context/contextConstants.js +15 -0
  361. package/esm/domain/context/contextConstants.js.map +1 -0
  362. package/esm/domain/context/contextManager.d.ts +19 -0
  363. package/esm/domain/context/contextManager.js +57 -0
  364. package/esm/domain/context/contextManager.js.map +1 -0
  365. package/esm/domain/context/contextUtils.d.ts +5 -0
  366. package/esm/domain/context/contextUtils.js +13 -0
  367. package/esm/domain/context/contextUtils.js.map +1 -0
  368. package/esm/domain/context/defineContextMethod.d.ts +6 -0
  369. package/esm/domain/context/defineContextMethod.js +17 -0
  370. package/esm/domain/context/defineContextMethod.js.map +1 -0
  371. package/esm/domain/context/storeContextManager.d.ts +6 -0
  372. package/esm/domain/context/storeContextManager.js +35 -0
  373. package/esm/domain/context/storeContextManager.js.map +1 -0
  374. package/esm/domain/contexts/accountContext.d.ts +26 -0
  375. package/esm/domain/contexts/accountContext.js +29 -0
  376. package/esm/domain/contexts/accountContext.js.map +1 -0
  377. package/esm/domain/contexts/globalContext.d.ts +18 -0
  378. package/esm/domain/contexts/globalContext.js +17 -0
  379. package/esm/domain/contexts/globalContext.js.map +1 -0
  380. package/esm/domain/contexts/rumInternalContext.type.d.ts +14 -0
  381. package/esm/domain/contexts/rumInternalContext.type.js +2 -0
  382. package/esm/domain/contexts/rumInternalContext.type.js.map +1 -0
  383. package/esm/domain/contexts/userContext.d.ts +29 -0
  384. package/esm/domain/contexts/userContext.js +41 -0
  385. package/esm/domain/contexts/userContext.js.map +1 -0
  386. package/esm/domain/deflate/deflate.types.d.ts +40 -0
  387. package/esm/domain/deflate/deflate.types.js +2 -0
  388. package/esm/domain/deflate/deflate.types.js.map +1 -0
  389. package/esm/domain/deflate/index.d.ts +1 -0
  390. package/esm/domain/deflate/index.js +2 -0
  391. package/esm/domain/deflate/index.js.map +1 -0
  392. package/esm/domain/error/error.d.ts +23 -0
  393. package/esm/domain/error/error.js +65 -0
  394. package/esm/domain/error/error.js.map +1 -0
  395. package/esm/domain/error/error.types.d.ts +47 -0
  396. package/esm/domain/error/error.types.js +10 -0
  397. package/esm/domain/error/error.types.js.map +1 -0
  398. package/esm/domain/error/trackRuntimeError.d.ts +11 -0
  399. package/esm/domain/error/trackRuntimeError.js +43 -0
  400. package/esm/domain/error/trackRuntimeError.js.map +1 -0
  401. package/esm/domain/eventRateLimiter/createEventRateLimiter.d.ts +5 -0
  402. package/esm/domain/eventRateLimiter/createEventRateLimiter.js +36 -0
  403. package/esm/domain/eventRateLimiter/createEventRateLimiter.js.map +1 -0
  404. package/esm/domain/extension/extensionUtils.d.ts +10 -0
  405. package/esm/domain/extension/extensionUtils.js +25 -0
  406. package/esm/domain/extension/extensionUtils.js.map +1 -0
  407. package/esm/domain/intakeSites.d.ts +8 -0
  408. package/esm/domain/intakeSites.js +8 -0
  409. package/esm/domain/intakeSites.js.map +1 -0
  410. package/esm/domain/report/browser.types.d.ts +34 -0
  411. package/esm/domain/report/browser.types.js +2 -0
  412. package/esm/domain/report/browser.types.js.map +1 -0
  413. package/esm/domain/report/reportObservable.d.ts +14 -0
  414. package/esm/domain/report/reportObservable.js +95 -0
  415. package/esm/domain/report/reportObservable.js.map +1 -0
  416. package/esm/domain/resourceUtils.d.ts +18 -0
  417. package/esm/domain/resourceUtils.js +17 -0
  418. package/esm/domain/resourceUtils.js.map +1 -0
  419. package/esm/domain/session/oldCookiesMigration.d.ts +11 -0
  420. package/esm/domain/session/oldCookiesMigration.js +36 -0
  421. package/esm/domain/session/oldCookiesMigration.js.map +1 -0
  422. package/esm/domain/session/sessionConstants.d.ts +15 -0
  423. package/esm/domain/session/sessionConstants.js +13 -0
  424. package/esm/domain/session/sessionConstants.js.map +1 -0
  425. package/esm/domain/session/sessionManager.d.ts +28 -0
  426. package/esm/domain/session/sessionManager.js +180 -0
  427. package/esm/domain/session/sessionManager.js.map +1 -0
  428. package/esm/domain/session/sessionState.d.ts +16 -0
  429. package/esm/domain/session/sessionState.js +66 -0
  430. package/esm/domain/session/sessionState.js.map +1 -0
  431. package/esm/domain/session/sessionStateValidation.d.ts +3 -0
  432. package/esm/domain/session/sessionStateValidation.js +7 -0
  433. package/esm/domain/session/sessionStateValidation.js.map +1 -0
  434. package/esm/domain/session/sessionStore.d.ts +38 -0
  435. package/esm/domain/session/sessionStore.js +175 -0
  436. package/esm/domain/session/sessionStore.js.map +1 -0
  437. package/esm/domain/session/sessionStoreOperations.d.ts +12 -0
  438. package/esm/domain/session/sessionStoreOperations.js +114 -0
  439. package/esm/domain/session/sessionStoreOperations.js.map +1 -0
  440. package/esm/domain/session/storeStrategies/sessionInCookie.d.ts +8 -0
  441. package/esm/domain/session/storeStrategies/sessionInCookie.js +50 -0
  442. package/esm/domain/session/storeStrategies/sessionInCookie.js.map +1 -0
  443. package/esm/domain/session/storeStrategies/sessionInLocalStorage.d.ts +4 -0
  444. package/esm/domain/session/storeStrategies/sessionInLocalStorage.js +37 -0
  445. package/esm/domain/session/storeStrategies/sessionInLocalStorage.js.map +1 -0
  446. package/esm/domain/session/storeStrategies/sessionStoreStrategy.d.ts +16 -0
  447. package/esm/domain/session/storeStrategies/sessionStoreStrategy.js +2 -0
  448. package/esm/domain/session/storeStrategies/sessionStoreStrategy.js.map +1 -0
  449. package/esm/domain/synthetics/syntheticsWorkerValues.d.ts +12 -0
  450. package/esm/domain/synthetics/syntheticsWorkerValues.js +24 -0
  451. package/esm/domain/synthetics/syntheticsWorkerValues.js.map +1 -0
  452. package/esm/domain/tags.d.ts +6 -0
  453. package/esm/domain/tags.js +60 -0
  454. package/esm/domain/tags.js.map +1 -0
  455. package/esm/domain/telemetry/index.d.ts +4 -0
  456. package/esm/domain/telemetry/index.js +3 -0
  457. package/esm/domain/telemetry/index.js.map +1 -0
  458. package/esm/domain/telemetry/rawTelemetryEvent.types.d.ts +18 -0
  459. package/esm/domain/telemetry/rawTelemetryEvent.types.js +6 -0
  460. package/esm/domain/telemetry/rawTelemetryEvent.types.js.map +1 -0
  461. package/esm/domain/telemetry/telemetry.d.ts +56 -0
  462. package/esm/domain/telemetry/telemetry.js +235 -0
  463. package/esm/domain/telemetry/telemetry.js.map +1 -0
  464. package/esm/domain/telemetry/telemetryEvent.types.d.ts +858 -0
  465. package/esm/domain/telemetry/telemetryEvent.types.js +6 -0
  466. package/esm/domain/telemetry/telemetryEvent.types.js.map +1 -0
  467. package/esm/domain/trackingConsent.d.ts +13 -0
  468. package/esm/domain/trackingConsent.js +24 -0
  469. package/esm/domain/trackingConsent.js.map +1 -0
  470. package/esm/index.d.ts +100 -0
  471. package/esm/index.js +76 -0
  472. package/esm/index.js.map +1 -0
  473. package/esm/tools/abstractHooks.d.ts +24 -0
  474. package/esm/tools/abstractHooks.js +37 -0
  475. package/esm/tools/abstractHooks.js.map +1 -0
  476. package/esm/tools/abstractLifeCycle.d.ts +23 -0
  477. package/esm/tools/abstractLifeCycle.js +24 -0
  478. package/esm/tools/abstractLifeCycle.js.map +1 -0
  479. package/esm/tools/boundedBuffer.d.ts +16 -0
  480. package/esm/tools/boundedBuffer.js +29 -0
  481. package/esm/tools/boundedBuffer.js.map +1 -0
  482. package/esm/tools/catchUserErrors.d.ts +1 -0
  483. package/esm/tools/catchUserErrors.js +12 -0
  484. package/esm/tools/catchUserErrors.js.map +1 -0
  485. package/esm/tools/display.d.ts +38 -0
  486. package/esm/tools/display.js +41 -0
  487. package/esm/tools/display.js.map +1 -0
  488. package/esm/tools/encoder.d.ts +54 -0
  489. package/esm/tools/encoder.js +37 -0
  490. package/esm/tools/encoder.js.map +1 -0
  491. package/esm/tools/experimentalFeatures.d.ts +20 -0
  492. package/esm/tools/experimentalFeatures.js +41 -0
  493. package/esm/tools/experimentalFeatures.js.map +1 -0
  494. package/esm/tools/getZoneJsOriginalValue.d.ts +19 -0
  495. package/esm/tools/getZoneJsOriginalValue.js +26 -0
  496. package/esm/tools/getZoneJsOriginalValue.js.map +1 -0
  497. package/esm/tools/globalObject.d.ts +19 -0
  498. package/esm/tools/globalObject.js +40 -0
  499. package/esm/tools/globalObject.js.map +1 -0
  500. package/esm/tools/instrumentMethod.d.ts +75 -0
  501. package/esm/tools/instrumentMethod.js +114 -0
  502. package/esm/tools/instrumentMethod.js.map +1 -0
  503. package/esm/tools/matchOption.d.ts +8 -0
  504. package/esm/tools/matchOption.js +31 -0
  505. package/esm/tools/matchOption.js.map +1 -0
  506. package/esm/tools/mergeInto.d.ts +25 -0
  507. package/esm/tools/mergeInto.js +93 -0
  508. package/esm/tools/mergeInto.js.map +1 -0
  509. package/esm/tools/monitor.d.ts +9 -0
  510. package/esm/tools/monitor.js +52 -0
  511. package/esm/tools/monitor.js.map +1 -0
  512. package/esm/tools/observable.d.ts +30 -0
  513. package/esm/tools/observable.js +83 -0
  514. package/esm/tools/observable.js.map +1 -0
  515. package/esm/tools/queueMicrotask.d.ts +1 -0
  516. package/esm/tools/queueMicrotask.js +14 -0
  517. package/esm/tools/queueMicrotask.js.map +1 -0
  518. package/esm/tools/readBytesFromStream.d.ts +11 -0
  519. package/esm/tools/readBytesFromStream.js +60 -0
  520. package/esm/tools/readBytesFromStream.js.map +1 -0
  521. package/esm/tools/requestIdleCallback.d.ts +12 -0
  522. package/esm/tools/requestIdleCallback.js +30 -0
  523. package/esm/tools/requestIdleCallback.js.map +1 -0
  524. package/esm/tools/sendToExtension.d.ts +3 -0
  525. package/esm/tools/sendToExtension.js +8 -0
  526. package/esm/tools/sendToExtension.js.map +1 -0
  527. package/esm/tools/serialisation/context.d.ts +9 -0
  528. package/esm/tools/serialisation/context.js +2 -0
  529. package/esm/tools/serialisation/context.js.map +1 -0
  530. package/esm/tools/serialisation/jsonStringify.d.ts +13 -0
  531. package/esm/tools/serialisation/jsonStringify.js +44 -0
  532. package/esm/tools/serialisation/jsonStringify.js.map +1 -0
  533. package/esm/tools/serialisation/sanitize.d.ts +18 -0
  534. package/esm/tools/serialisation/sanitize.js +185 -0
  535. package/esm/tools/serialisation/sanitize.js.map +1 -0
  536. package/esm/tools/stackTrace/computeStackTrace.d.ts +25 -0
  537. package/esm/tools/stackTrace/computeStackTrace.js +183 -0
  538. package/esm/tools/stackTrace/computeStackTrace.js.map +1 -0
  539. package/esm/tools/stackTrace/handlingStack.d.ts +10 -0
  540. package/esm/tools/stackTrace/handlingStack.js +41 -0
  541. package/esm/tools/stackTrace/handlingStack.js.map +1 -0
  542. package/esm/tools/taskQueue.d.ts +15 -0
  543. package/esm/tools/taskQueue.js +50 -0
  544. package/esm/tools/taskQueue.js.map +1 -0
  545. package/esm/tools/timer.d.ts +5 -0
  546. package/esm/tools/timer.js +16 -0
  547. package/esm/tools/timer.js.map +1 -0
  548. package/esm/tools/utils/arrayUtils.d.ts +3 -0
  549. package/esm/tools/utils/arrayUtils.js +15 -0
  550. package/esm/tools/utils/arrayUtils.js.map +1 -0
  551. package/esm/tools/utils/browserDetection.d.ts +8 -0
  552. package/esm/tools/utils/browserDetection.js +28 -0
  553. package/esm/tools/utils/browserDetection.js.map +1 -0
  554. package/esm/tools/utils/byteUtils.d.ts +8 -0
  555. package/esm/tools/utils/byteUtils.js +25 -0
  556. package/esm/tools/utils/byteUtils.js.map +1 -0
  557. package/esm/tools/utils/functionUtils.d.ts +8 -0
  558. package/esm/tools/utils/functionUtils.js +39 -0
  559. package/esm/tools/utils/functionUtils.js.map +1 -0
  560. package/esm/tools/utils/numberUtils.d.ts +9 -0
  561. package/esm/tools/utils/numberUtils.js +18 -0
  562. package/esm/tools/utils/numberUtils.js.map +1 -0
  563. package/esm/tools/utils/objectUtils.d.ts +10 -0
  564. package/esm/tools/utils/objectUtils.js +17 -0
  565. package/esm/tools/utils/objectUtils.js.map +1 -0
  566. package/esm/tools/utils/polyfills.d.ts +7 -0
  567. package/esm/tools/utils/polyfills.js +18 -0
  568. package/esm/tools/utils/polyfills.js.map +1 -0
  569. package/esm/tools/utils/responseUtils.d.ts +2 -0
  570. package/esm/tools/utils/responseUtils.js +13 -0
  571. package/esm/tools/utils/responseUtils.js.map +1 -0
  572. package/esm/tools/utils/stringUtils.d.ts +8 -0
  573. package/esm/tools/utils/stringUtils.js +49 -0
  574. package/esm/tools/utils/stringUtils.js.map +1 -0
  575. package/esm/tools/utils/timeUtils.d.ts +53 -0
  576. package/esm/tools/utils/timeUtils.js +84 -0
  577. package/esm/tools/utils/timeUtils.js.map +1 -0
  578. package/esm/tools/utils/timezone.d.ts +1 -0
  579. package/esm/tools/utils/timezone.js +10 -0
  580. package/esm/tools/utils/timezone.js.map +1 -0
  581. package/esm/tools/utils/typeUtils.d.ts +4 -0
  582. package/esm/tools/utils/typeUtils.js +13 -0
  583. package/esm/tools/utils/typeUtils.js.map +1 -0
  584. package/esm/tools/utils/urlPolyfill.d.ts +5 -0
  585. package/esm/tools/utils/urlPolyfill.js +52 -0
  586. package/esm/tools/utils/urlPolyfill.js.map +1 -0
  587. package/esm/tools/valueHistory.d.ts +27 -0
  588. package/esm/tools/valueHistory.js +100 -0
  589. package/esm/tools/valueHistory.js.map +1 -0
  590. package/esm/transport/batch.d.ts +16 -0
  591. package/esm/transport/batch.js +105 -0
  592. package/esm/transport/batch.js.map +1 -0
  593. package/esm/transport/eventBridge.d.ts +21 -0
  594. package/esm/transport/eventBridge.js +41 -0
  595. package/esm/transport/eventBridge.js.map +1 -0
  596. package/esm/transport/flushController.d.ts +58 -0
  597. package/esm/transport/flushController.js +106 -0
  598. package/esm/transport/flushController.js.map +1 -0
  599. package/esm/transport/httpRequest.d.ts +51 -0
  600. package/esm/transport/httpRequest.js +75 -0
  601. package/esm/transport/httpRequest.js.map +1 -0
  602. package/esm/transport/index.d.ts +7 -0
  603. package/esm/transport/index.js +5 -0
  604. package/esm/transport/index.js.map +1 -0
  605. package/esm/transport/sendWithRetryStrategy.d.ts +41 -0
  606. package/esm/transport/sendWithRetryStrategy.js +158 -0
  607. package/esm/transport/sendWithRetryStrategy.js.map +1 -0
  608. package/package.json +31 -0
  609. package/src/boot/displayAlreadyInitializedError.ts +8 -0
  610. package/src/boot/init.ts +55 -0
  611. package/src/browser/addEventListener.ts +145 -0
  612. package/src/browser/browser.types.ts +82 -0
  613. package/src/browser/cookie.ts +107 -0
  614. package/src/browser/fetchObservable.ts +127 -0
  615. package/src/browser/pageMayExitObservable.ts +56 -0
  616. package/src/browser/runOnReadyState.ts +25 -0
  617. package/src/browser/xhrObservable.ts +130 -0
  618. package/src/domain/allowedTrackingOrigins.ts +30 -0
  619. package/src/domain/bufferedData.ts +32 -0
  620. package/src/domain/configuration/configuration.ts +472 -0
  621. package/src/domain/configuration/endpointBuilder.ts +119 -0
  622. package/src/domain/configuration/index.ts +11 -0
  623. package/src/domain/configuration/transportConfiguration.ts +78 -0
  624. package/src/domain/connectivity/connectivity.ts +31 -0
  625. package/src/domain/connectivity/index.ts +1 -0
  626. package/src/domain/console/consoleObservable.ts +118 -0
  627. package/src/domain/context/contextConstants.ts +27 -0
  628. package/src/domain/context/contextManager.ts +85 -0
  629. package/src/domain/context/contextUtils.ts +14 -0
  630. package/src/domain/context/defineContextMethod.ts +31 -0
  631. package/src/domain/context/storeContextManager.ts +55 -0
  632. package/src/domain/contexts/accountContext.ts +47 -0
  633. package/src/domain/contexts/globalContext.ts +30 -0
  634. package/src/domain/contexts/rumInternalContext.type.ts +15 -0
  635. package/src/domain/contexts/userContext.ts +64 -0
  636. package/src/domain/deflate/deflate.types.ts +57 -0
  637. package/src/domain/deflate/index.ts +1 -0
  638. package/src/domain/error/error.ts +103 -0
  639. package/src/domain/error/error.types.ts +64 -0
  640. package/src/domain/error/trackRuntimeError.ts +50 -0
  641. package/src/domain/eventRateLimiter/createEventRateLimiter.ts +46 -0
  642. package/src/domain/extension/extensionUtils.ts +28 -0
  643. package/src/domain/intakeSites.ts +17 -0
  644. package/src/domain/report/browser.types.ts +38 -0
  645. package/src/domain/report/reportObservable.ts +133 -0
  646. package/src/domain/resourceUtils.ts +21 -0
  647. package/src/domain/session/README.md +193 -0
  648. package/src/domain/session/oldCookiesMigration.ts +42 -0
  649. package/src/domain/session/sessionConstants.ts +19 -0
  650. package/src/domain/session/sessionManager.ts +244 -0
  651. package/src/domain/session/sessionState.ts +88 -0
  652. package/src/domain/session/sessionStateValidation.ts +9 -0
  653. package/src/domain/session/sessionStore.ts +244 -0
  654. package/src/domain/session/sessionStoreOperations.ts +131 -0
  655. package/src/domain/session/storeStrategies/sessionInCookie.ts +85 -0
  656. package/src/domain/session/storeStrategies/sessionInLocalStorage.ts +44 -0
  657. package/src/domain/session/storeStrategies/sessionStoreStrategy.ts +16 -0
  658. package/src/domain/synthetics/syntheticsWorkerValues.ts +38 -0
  659. package/src/domain/tags.ts +76 -0
  660. package/src/domain/telemetry/index.ts +22 -0
  661. package/src/domain/telemetry/rawTelemetryEvent.types.ts +22 -0
  662. package/src/domain/telemetry/telemetry.ts +345 -0
  663. package/src/domain/telemetry/telemetryEvent.types.ts +899 -0
  664. package/src/domain/trackingConsent.ts +34 -0
  665. package/src/index.ts +164 -0
  666. package/src/tools/abstractHooks.ts +72 -0
  667. package/src/tools/abstractLifeCycle.ts +46 -0
  668. package/src/tools/boundedBuffer.ts +45 -0
  669. package/src/tools/catchUserErrors.ts +11 -0
  670. package/src/tools/display.ts +56 -0
  671. package/src/tools/encoder.ts +103 -0
  672. package/src/tools/experimentalFeatures.ts +51 -0
  673. package/src/tools/getZoneJsOriginalValue.ts +38 -0
  674. package/src/tools/globalObject.ts +51 -0
  675. package/src/tools/instrumentMethod.ts +170 -0
  676. package/src/tools/matchOption.ts +31 -0
  677. package/src/tools/mergeInto.ts +177 -0
  678. package/src/tools/monitor.ts +72 -0
  679. package/src/tools/observable.ts +104 -0
  680. package/src/tools/queueMicrotask.ts +13 -0
  681. package/src/tools/readBytesFromStream.ts +77 -0
  682. package/src/tools/requestIdleCallback.ts +40 -0
  683. package/src/tools/sendToExtension.ts +14 -0
  684. package/src/tools/serialisation/context.ts +11 -0
  685. package/src/tools/serialisation/jsonStringify.ts +53 -0
  686. package/src/tools/serialisation/sanitize.ts +273 -0
  687. package/src/tools/stackTrace/computeStackTrace.ts +250 -0
  688. package/src/tools/stackTrace/handlingStack.ts +48 -0
  689. package/src/tools/taskQueue.ts +63 -0
  690. package/src/tools/timer.ts +21 -0
  691. package/src/tools/utils/arrayUtils.ts +15 -0
  692. package/src/tools/utils/browserDetection.ts +39 -0
  693. package/src/tools/utils/byteUtils.ts +35 -0
  694. package/src/tools/utils/functionUtils.ts +45 -0
  695. package/src/tools/utils/numberUtils.ts +20 -0
  696. package/src/tools/utils/objectUtils.ts +19 -0
  697. package/src/tools/utils/polyfills.ts +23 -0
  698. package/src/tools/utils/responseUtils.ts +12 -0
  699. package/src/tools/utils/stringUtils.ts +52 -0
  700. package/src/tools/utils/timeUtils.ts +117 -0
  701. package/src/tools/utils/timezone.ts +9 -0
  702. package/src/tools/utils/typeUtils.ts +12 -0
  703. package/src/tools/utils/urlPolyfill.ts +56 -0
  704. package/src/tools/valueHistory.ts +151 -0
  705. package/src/transport/batch.ts +144 -0
  706. package/src/transport/eventBridge.ts +61 -0
  707. package/src/transport/flushController.ts +144 -0
  708. package/src/transport/httpRequest.ts +164 -0
  709. package/src/transport/index.ts +7 -0
  710. package/src/transport/sendWithRetryStrategy.ts +222 -0
package/README.md ADDED
@@ -0,0 +1,3 @@
1
+ # `core`
2
+
3
+ Datadog browser core utilities.
@@ -0,0 +1,2 @@
1
+ import type { InitConfiguration } from '../domain/configuration';
2
+ export declare function displayAlreadyInitializedError(sdkName: 'DD_RUM' | 'DD_LOGS', initConfiguration: InitConfiguration): void;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.displayAlreadyInitializedError = displayAlreadyInitializedError;
4
+ const display_1 = require("../tools/display");
5
+ function displayAlreadyInitializedError(sdkName, initConfiguration) {
6
+ if (!initConfiguration.silentMultipleInit) {
7
+ display_1.display.error(`${sdkName} is already initialized.`);
8
+ }
9
+ }
10
+ //# sourceMappingURL=displayAlreadyInitializedError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"displayAlreadyInitializedError.js","sourceRoot":"","sources":["../../src/boot/displayAlreadyInitializedError.ts"],"names":[],"mappings":";;AAGA,wEAIC;AAND,8CAA0C;AAE1C,SAAgB,8BAA8B,CAAC,OAA6B,EAAE,iBAAoC;IAChH,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;QAC1C,iBAAO,CAAC,KAAK,CAAC,GAAG,OAAO,0BAA0B,CAAC,CAAA;IACrD,CAAC;AACH,CAAC"}
@@ -0,0 +1,14 @@
1
+ export interface PublicApi {
2
+ /**
3
+ * Version of the Logs browser SDK
4
+ */
5
+ version: string;
6
+ /**
7
+ * For CDN async setup: Early RUM API calls must be wrapped in the `window.DD_RUM.onReady()` callback. This ensures the code only gets executed once the SDK is properly loaded.
8
+ *
9
+ * See [CDN async setup](https://docs.datadoghq.com/real_user_monitoring/browser/#cdn-async) for further information.
10
+ */
11
+ onReady: (callback: () => void) => void;
12
+ }
13
+ export declare function makePublicApi<T extends PublicApi>(stub: Omit<T, keyof PublicApi>): T;
14
+ export declare function defineGlobal<Global, Name extends keyof Global>(global: Global, name: Name, api: Global[Name]): void;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makePublicApi = makePublicApi;
4
+ exports.defineGlobal = defineGlobal;
5
+ const catchUserErrors_1 = require("../tools/catchUserErrors");
6
+ const monitor_1 = require("../tools/monitor");
7
+ const display_1 = require("../tools/display");
8
+ function makePublicApi(stub) {
9
+ const publicApi = {
10
+ version: "dev",
11
+ // This API method is intentionally not monitored, since the only thing executed is the
12
+ // user-provided 'callback'. All SDK usages executed in the callback should be monitored, and
13
+ // we don't want to interfere with the user uncaught exceptions.
14
+ onReady(callback) {
15
+ callback();
16
+ },
17
+ ...stub,
18
+ };
19
+ // Add a "hidden" property to set debug mode. We define it that way to hide it
20
+ // as much as possible but of course it's not a real protection.
21
+ Object.defineProperty(publicApi, '_setDebug', {
22
+ get() {
23
+ return monitor_1.setDebugMode;
24
+ },
25
+ enumerable: false,
26
+ });
27
+ return publicApi;
28
+ }
29
+ function defineGlobal(global, name, api) {
30
+ const existingGlobalVariable = global[name];
31
+ if (existingGlobalVariable && !existingGlobalVariable.q && existingGlobalVariable.version) {
32
+ display_1.display.warn('SDK is loaded more than once. This is unsupported and might have unexpected behavior.');
33
+ }
34
+ global[name] = api;
35
+ if (existingGlobalVariable && existingGlobalVariable.q) {
36
+ existingGlobalVariable.q.forEach((fn) => (0, catchUserErrors_1.catchUserErrors)(fn, 'onReady callback threw an error:')());
37
+ }
38
+ }
39
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/boot/init.ts"],"names":[],"mappings":";;AAqBA,sCAsBC;AAED,oCASC;AAtDD,8DAA0D;AAC1D,8CAA+C;AAC/C,8CAA0C;AAmB1C,SAAgB,aAAa,CAAsB,IAA8B;IAC/E,MAAM,SAAS,GAAG;QAChB,OAAO,EAAE,0BAA0B;QACnC,uFAAuF;QACvF,8FAA8F;QAC9F,gEAAgE;QAChE,OAAO,CAAC,QAAoB;YAC1B,QAAQ,EAAE,CAAA;QACZ,CAAC;QACD,GAAG,IAAI;KACR,CAAA;IAED,8EAA8E;IAC9E,gEAAgE;IAChE,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,WAAW,EAAE;QAC5C,GAAG;YACD,OAAO,sBAAY,CAAA;QACrB,CAAC;QACD,UAAU,EAAE,KAAK;KAClB,CAAC,CAAA;IAEF,OAAO,SAAc,CAAA;AACvB,CAAC;AAED,SAAgB,YAAY,CAAoC,MAAc,EAAE,IAAU,EAAE,GAAiB;IAC3G,MAAM,sBAAsB,GAAG,MAAM,CAAC,IAAI,CAA4D,CAAA;IACtG,IAAI,sBAAsB,IAAI,CAAC,sBAAsB,CAAC,CAAC,IAAI,sBAAsB,CAAC,OAAO,EAAE,CAAC;QAC1F,iBAAO,CAAC,IAAI,CAAC,uFAAuF,CAAC,CAAA;IACvG,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAA;IAClB,IAAI,sBAAsB,IAAI,sBAAsB,CAAC,CAAC,EAAE,CAAC;QACvD,sBAAsB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAA,iCAAe,EAAC,EAAE,EAAE,kCAAkC,CAAC,EAAE,CAAC,CAAA;IACrG,CAAC;AACH,CAAC"}
@@ -0,0 +1,87 @@
1
+ import type { CookieStore, CookieStoreEventMap, VisualViewport, VisualViewportEventMap } from './browser.types';
2
+ export type TrustableEvent<E extends Event = Event> = E & {
3
+ __ddIsTrusted?: boolean;
4
+ };
5
+ export declare const enum DOM_EVENT {
6
+ BEFORE_UNLOAD = "beforeunload",
7
+ CLICK = "click",
8
+ DBL_CLICK = "dblclick",
9
+ KEY_DOWN = "keydown",
10
+ LOAD = "load",
11
+ POP_STATE = "popstate",
12
+ SCROLL = "scroll",
13
+ TOUCH_START = "touchstart",
14
+ TOUCH_END = "touchend",
15
+ TOUCH_MOVE = "touchmove",
16
+ VISIBILITY_CHANGE = "visibilitychange",
17
+ PAGE_SHOW = "pageshow",
18
+ FREEZE = "freeze",
19
+ RESUME = "resume",
20
+ DOM_CONTENT_LOADED = "DOMContentLoaded",
21
+ POINTER_DOWN = "pointerdown",
22
+ POINTER_UP = "pointerup",
23
+ POINTER_CANCEL = "pointercancel",
24
+ HASH_CHANGE = "hashchange",
25
+ PAGE_HIDE = "pagehide",
26
+ MOUSE_DOWN = "mousedown",
27
+ MOUSE_UP = "mouseup",
28
+ MOUSE_MOVE = "mousemove",
29
+ FOCUS = "focus",
30
+ BLUR = "blur",
31
+ CONTEXT_MENU = "contextmenu",
32
+ RESIZE = "resize",
33
+ CHANGE = "change",
34
+ INPUT = "input",
35
+ PLAY = "play",
36
+ PAUSE = "pause",
37
+ SECURITY_POLICY_VIOLATION = "securitypolicyviolation",
38
+ SELECTION_CHANGE = "selectionchange",
39
+ STORAGE = "storage"
40
+ }
41
+ interface AddEventListenerOptions {
42
+ once?: boolean;
43
+ capture?: boolean;
44
+ passive?: boolean;
45
+ }
46
+ type EventMapFor<T> = T extends Window ? WindowEventMap & {
47
+ freeze: Event;
48
+ resume: Event;
49
+ visibilitychange: Event;
50
+ } : T extends Document ? DocumentEventMap : T extends HTMLElement ? HTMLElementEventMap : T extends VisualViewport ? VisualViewportEventMap : T extends ShadowRoot ? GlobalEventHandlersEventMap : T extends XMLHttpRequest ? XMLHttpRequestEventMap : T extends Performance ? PerformanceEventMap : T extends Worker ? WorkerEventMap : T extends CookieStore ? CookieStoreEventMap : Record<never, never>;
51
+ /**
52
+ * Add an event listener to an event target object (Window, Element, mock object...). This provides
53
+ * a few conveniences compared to using `element.addEventListener` directly:
54
+ *
55
+ * * supports IE11 by: using an option object only if needed and emulating the `once` option
56
+ *
57
+ * * wraps the listener with a `monitor` function
58
+ *
59
+ * * returns a `stop` function to remove the listener
60
+ */
61
+ export declare function addEventListener<Target extends EventTarget, EventName extends keyof EventMapFor<Target> & string>(configuration: {
62
+ allowUntrustedEvents?: boolean | undefined;
63
+ }, eventTarget: Target, eventName: EventName, listener: (event: EventMapFor<Target>[EventName] & {
64
+ type: EventName;
65
+ }) => void, options?: AddEventListenerOptions): {
66
+ stop: () => void;
67
+ };
68
+ /**
69
+ * Add event listeners to an event target object (Window, Element, mock object...). This provides
70
+ * a few conveniences compared to using `element.addEventListener` directly:
71
+ *
72
+ * * supports IE11 by: using an option object only if needed and emulating the `once` option
73
+ *
74
+ * * wraps the listener with a `monitor` function
75
+ *
76
+ * * returns a `stop` function to remove the listener
77
+ *
78
+ * * with `once: true`, the listener will be called at most once, even if different events are listened
79
+ */
80
+ export declare function addEventListeners<Target extends EventTarget, EventName extends keyof EventMapFor<Target> & string>(configuration: {
81
+ allowUntrustedEvents?: boolean | undefined;
82
+ }, eventTarget: Target, eventNames: EventName[], listener: (event: EventMapFor<Target>[EventName] & {
83
+ type: EventName;
84
+ }) => void, { once, capture, passive }?: AddEventListenerOptions): {
85
+ stop: () => void;
86
+ };
87
+ export {};
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addEventListener = addEventListener;
4
+ exports.addEventListeners = addEventListeners;
5
+ const monitor_1 = require("../tools/monitor");
6
+ const getZoneJsOriginalValue_1 = require("../tools/getZoneJsOriginalValue");
7
+ /**
8
+ * Add an event listener to an event target object (Window, Element, mock object...). This provides
9
+ * a few conveniences compared to using `element.addEventListener` directly:
10
+ *
11
+ * * supports IE11 by: using an option object only if needed and emulating the `once` option
12
+ *
13
+ * * wraps the listener with a `monitor` function
14
+ *
15
+ * * returns a `stop` function to remove the listener
16
+ */
17
+ function addEventListener(configuration, eventTarget, eventName, listener, options) {
18
+ return addEventListeners(configuration, eventTarget, [eventName], listener, options);
19
+ }
20
+ /**
21
+ * Add event listeners to an event target object (Window, Element, mock object...). This provides
22
+ * a few conveniences compared to using `element.addEventListener` directly:
23
+ *
24
+ * * supports IE11 by: using an option object only if needed and emulating the `once` option
25
+ *
26
+ * * wraps the listener with a `monitor` function
27
+ *
28
+ * * returns a `stop` function to remove the listener
29
+ *
30
+ * * with `once: true`, the listener will be called at most once, even if different events are listened
31
+ */
32
+ function addEventListeners(configuration, eventTarget, eventNames, listener, { once, capture, passive } = {}) {
33
+ const listenerWithMonitor = (0, monitor_1.monitor)((event) => {
34
+ if (!event.isTrusted && !event.__ddIsTrusted && !configuration.allowUntrustedEvents) {
35
+ return;
36
+ }
37
+ if (once) {
38
+ stop();
39
+ }
40
+ listener(event);
41
+ });
42
+ const options = passive ? { capture, passive } : capture;
43
+ // Use the window.EventTarget.prototype when possible to avoid wrong overrides (e.g: https://github.com/salesforce/lwc/issues/1824)
44
+ const listenerTarget = window.EventTarget && eventTarget instanceof EventTarget ? window.EventTarget.prototype : eventTarget;
45
+ const add = (0, getZoneJsOriginalValue_1.getZoneJsOriginalValue)(listenerTarget, 'addEventListener');
46
+ eventNames.forEach((eventName) => add.call(eventTarget, eventName, listenerWithMonitor, options));
47
+ function stop() {
48
+ const remove = (0, getZoneJsOriginalValue_1.getZoneJsOriginalValue)(listenerTarget, 'removeEventListener');
49
+ eventNames.forEach((eventName) => remove.call(eventTarget, eventName, listenerWithMonitor, options));
50
+ }
51
+ return {
52
+ stop,
53
+ };
54
+ }
55
+ //# sourceMappingURL=addEventListener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addEventListener.js","sourceRoot":"","sources":["../../src/browser/addEventListener.ts"],"names":[],"mappings":";;AAwFA,4CAQC;AAcD,8CAkCC;AAhJD,8CAA0C;AAC1C,4EAAwE;AA6ExE;;;;;;;;;GASG;AACH,SAAgB,gBAAgB,CAC9B,aAA6D,EAC7D,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,SAAgB,iBAAiB,CAC/B,aAA6D,EAC7D,WAAmB,EACnB,UAAuB,EACvB,QAA+E,EAC/E,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,KAA8B,EAAE;IAExD,MAAM,mBAAmB,GAAG,IAAA,iBAAO,EAAC,CAAC,KAAqB,EAAE,EAAE;QAC5D,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,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAA;IAExD,mIAAmI;IACnI,MAAM,cAAc,GAClB,MAAM,CAAC,WAAW,IAAI,WAAW,YAAY,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAA;IAEvG,MAAM,GAAG,GAAG,IAAA,+CAAsB,EAAC,cAAc,EAAE,kBAAkB,CAAC,CAAA;IACtE,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC,CAAA;IAEjG,SAAS,IAAI;QACX,MAAM,MAAM,GAAG,IAAA,+CAAsB,EAAC,cAAc,EAAE,qBAAqB,CAAC,CAAA;QAC5E,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC,CAAA;IACtG,CAAC;IAED,OAAO;QACL,IAAI;KACL,CAAA;AACH,CAAC"}
@@ -0,0 +1,51 @@
1
+ export interface VisualViewportEventMap {
2
+ resize: Event;
3
+ scroll: Event;
4
+ }
5
+ export interface VisualViewport extends EventTarget {
6
+ readonly height: number;
7
+ readonly offsetLeft: number;
8
+ readonly offsetTop: number;
9
+ onresize: ((this: VisualViewport, ev: Event) => any) | null;
10
+ onscroll: ((this: VisualViewport, ev: Event) => any) | null;
11
+ readonly pageLeft: number;
12
+ readonly pageTop: number;
13
+ readonly scale: number;
14
+ readonly width: number;
15
+ addEventListener<K extends keyof VisualViewportEventMap>(type: K, listener: (this: VisualViewport, ev: VisualViewportEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17
+ removeEventListener<K extends keyof VisualViewportEventMap>(type: K, listener: (this: VisualViewport, ev: VisualViewportEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
18
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
19
+ }
20
+ export interface WeakRef<T extends object> {
21
+ readonly [Symbol.toStringTag]: 'WeakRef';
22
+ deref(): T | undefined;
23
+ }
24
+ export interface WeakRefConstructor {
25
+ readonly prototype: WeakRef<any>;
26
+ new <T extends object>(target: T): WeakRef<T>;
27
+ }
28
+ export interface CookieStore extends EventTarget {
29
+ get(name: string): Promise<unknown>;
30
+ getAll(name?: string): Promise<Array<{
31
+ name: string;
32
+ value: string;
33
+ domain?: string;
34
+ path?: string;
35
+ expires?: number;
36
+ secure?: boolean;
37
+ sameSite?: 'strict' | 'lax' | 'none';
38
+ partitioned?: boolean;
39
+ }>>;
40
+ }
41
+ export interface CookieStoreEventMap {
42
+ change: CookieChangeEvent;
43
+ }
44
+ export interface CookieChangeItem {
45
+ name: string;
46
+ value: string | undefined;
47
+ }
48
+ export type CookieChangeEvent = Event & {
49
+ changed: CookieChangeItem[];
50
+ deleted: CookieChangeItem[];
51
+ };
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ // Those types come from the official TypeScript DOM library, but are not included in our minimal
3
+ // supported TS version.
4
+ // https://github.com/microsoft/TypeScript/blob/13c374a868c926f6a907666a5599992c1351b773/src/lib/dom.generated.d.ts#L15399-L15418
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=browser.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.types.js","sourceRoot":"","sources":["../../src/browser/browser.types.ts"],"names":[],"mappings":";AAAA,iGAAiG;AACjG,wBAAwB;AACxB,iIAAiI"}
@@ -0,0 +1,18 @@
1
+ export interface CookieOptions {
2
+ secure?: boolean;
3
+ crossSite?: boolean;
4
+ partitioned?: boolean;
5
+ domain?: string;
6
+ }
7
+ export declare function setCookie(name: string, value: string, expireDelay?: number, options?: CookieOptions): void;
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;
15
+ export declare function deleteCookie(name: string, options?: CookieOptions): void;
16
+ export declare function areCookiesAuthorized(options: CookieOptions): boolean;
17
+ export declare function getCurrentSite(hostname?: string, referrer?: string): string | undefined;
18
+ export declare function resetGetCurrentSite(): void;
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setCookie = setCookie;
4
+ exports.getCookie = getCookie;
5
+ exports.getInitCookie = getInitCookie;
6
+ exports.resetInitCookies = resetInitCookies;
7
+ exports.deleteCookie = deleteCookie;
8
+ exports.areCookiesAuthorized = areCookiesAuthorized;
9
+ exports.getCurrentSite = getCurrentSite;
10
+ exports.resetGetCurrentSite = resetGetCurrentSite;
11
+ const display_1 = require("../tools/display");
12
+ const timeUtils_1 = require("../tools/utils/timeUtils");
13
+ const stringUtils_1 = require("../tools/utils/stringUtils");
14
+ const urlPolyfill_1 = require("../tools/utils/urlPolyfill");
15
+ function setCookie(name, value, expireDelay = 0, options) {
16
+ const date = new Date();
17
+ date.setTime(date.getTime() + expireDelay);
18
+ const expires = `expires=${date.toUTCString()}`;
19
+ const sameSite = options && options.crossSite ? 'none' : 'strict';
20
+ const domain = options && options.domain ? `;domain=${options.domain}` : '';
21
+ const secure = options && options.secure ? ';secure' : '';
22
+ const partitioned = options && options.partitioned ? ';partitioned' : '';
23
+ document.cookie = `${name}=${value};${expires};path=/;samesite=${sameSite}${domain}${secure}${partitioned}`;
24
+ }
25
+ function getCookie(name) {
26
+ return (0, stringUtils_1.findCommaSeparatedValue)(document.cookie, name);
27
+ }
28
+ let initCookieParsed;
29
+ /**
30
+ * Returns a cached value of the cookie. Use this during SDK initialization (and whenever possible)
31
+ * to avoid accessing document.cookie multiple times.
32
+ */
33
+ function getInitCookie(name) {
34
+ if (!initCookieParsed) {
35
+ initCookieParsed = (0, stringUtils_1.findCommaSeparatedValues)(document.cookie);
36
+ }
37
+ return initCookieParsed.get(name);
38
+ }
39
+ function resetInitCookies() {
40
+ initCookieParsed = undefined;
41
+ }
42
+ function deleteCookie(name, options) {
43
+ setCookie(name, '', 0, options);
44
+ }
45
+ function areCookiesAuthorized(options) {
46
+ if (document.cookie === undefined || document.cookie === null) {
47
+ return false;
48
+ }
49
+ try {
50
+ // Use a unique cookie name to avoid issues when the SDK is initialized multiple times during
51
+ // the test cookie lifetime
52
+ const testCookieName = `dd_cookie_test_${(0, stringUtils_1.generateUUID)()}`;
53
+ const testCookieValue = 'test';
54
+ setCookie(testCookieName, testCookieValue, timeUtils_1.ONE_MINUTE, options);
55
+ const isCookieCorrectlySet = getCookie(testCookieName) === testCookieValue;
56
+ deleteCookie(testCookieName, options);
57
+ return isCookieCorrectlySet;
58
+ }
59
+ catch (error) {
60
+ display_1.display.error(error);
61
+ return false;
62
+ }
63
+ }
64
+ /**
65
+ * No API to retrieve it, number of levels for subdomain and suffix are unknown
66
+ * strategy: find the minimal domain on which cookies are allowed to be set
67
+ * https://web.dev/same-site-same-origin/#site
68
+ */
69
+ let getCurrentSiteCache;
70
+ function getCurrentSite(hostname = location.hostname, referrer = document.referrer) {
71
+ if (getCurrentSiteCache === undefined) {
72
+ const defaultHostName = getCookieDefaultHostName(hostname, referrer);
73
+ if (defaultHostName) {
74
+ // Use a unique cookie name to avoid issues when the SDK is initialized multiple times during
75
+ // the test cookie lifetime
76
+ const testCookieName = `dd_site_test_${(0, stringUtils_1.generateUUID)()}`;
77
+ const testCookieValue = 'test';
78
+ const domainLevels = defaultHostName.split('.');
79
+ let candidateDomain = domainLevels.pop();
80
+ while (domainLevels.length && !getCookie(testCookieName)) {
81
+ candidateDomain = `${domainLevels.pop()}.${candidateDomain}`;
82
+ setCookie(testCookieName, testCookieValue, timeUtils_1.ONE_SECOND, { domain: candidateDomain });
83
+ }
84
+ deleteCookie(testCookieName, { domain: candidateDomain });
85
+ getCurrentSiteCache = candidateDomain;
86
+ }
87
+ }
88
+ return getCurrentSiteCache;
89
+ }
90
+ function getCookieDefaultHostName(hostname, referrer) {
91
+ try {
92
+ return hostname || (0, urlPolyfill_1.buildUrl)(referrer).hostname;
93
+ }
94
+ catch (_a) {
95
+ // Ignore
96
+ }
97
+ }
98
+ function resetGetCurrentSite() {
99
+ getCurrentSiteCache = undefined;
100
+ }
101
+ //# sourceMappingURL=cookie.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cookie.js","sourceRoot":"","sources":["../../src/browser/cookie.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { Observable } from '../tools/observable';
2
+ import type { ClocksState } from '../tools/utils/timeUtils';
3
+ interface FetchContextBase {
4
+ method: string;
5
+ startClocks: ClocksState;
6
+ input: unknown;
7
+ init?: RequestInit;
8
+ url: string;
9
+ handlingStack?: string;
10
+ }
11
+ export interface FetchStartContext extends FetchContextBase {
12
+ state: 'start';
13
+ }
14
+ export interface FetchResolveContext extends FetchContextBase {
15
+ state: 'resolve';
16
+ status: number;
17
+ response?: Response;
18
+ responseType?: string;
19
+ isAborted: boolean;
20
+ error?: Error;
21
+ }
22
+ export type FetchContext = FetchStartContext | FetchResolveContext;
23
+ export declare function initFetchObservable(): Observable<FetchContext>;
24
+ export declare function resetFetchObservable(): void;
25
+ export {};
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initFetchObservable = initFetchObservable;
4
+ exports.resetFetchObservable = resetFetchObservable;
5
+ const instrumentMethod_1 = require("../tools/instrumentMethod");
6
+ const monitor_1 = require("../tools/monitor");
7
+ const observable_1 = require("../tools/observable");
8
+ const timeUtils_1 = require("../tools/utils/timeUtils");
9
+ const urlPolyfill_1 = require("../tools/utils/urlPolyfill");
10
+ const globalObject_1 = require("../tools/globalObject");
11
+ let fetchObservable;
12
+ function initFetchObservable() {
13
+ if (!fetchObservable) {
14
+ fetchObservable = createFetchObservable();
15
+ }
16
+ return fetchObservable;
17
+ }
18
+ function resetFetchObservable() {
19
+ fetchObservable = undefined;
20
+ }
21
+ function createFetchObservable() {
22
+ return new observable_1.Observable((observable) => {
23
+ if (!globalObject_1.globalObject.fetch) {
24
+ return;
25
+ }
26
+ const { stop } = (0, instrumentMethod_1.instrumentMethod)(globalObject_1.globalObject, 'fetch', (call) => beforeSend(call, observable), {
27
+ computeHandlingStack: true,
28
+ });
29
+ return stop;
30
+ });
31
+ }
32
+ function beforeSend({ parameters, onPostCall, handlingStack }, observable) {
33
+ const [input, init] = parameters;
34
+ let methodFromParams = init && init.method;
35
+ if (methodFromParams === undefined && input instanceof Request) {
36
+ methodFromParams = input.method;
37
+ }
38
+ const method = methodFromParams !== undefined ? String(methodFromParams).toUpperCase() : 'GET';
39
+ const url = input instanceof Request ? input.url : (0, urlPolyfill_1.normalizeUrl)(String(input));
40
+ const startClocks = (0, timeUtils_1.clocksNow)();
41
+ const context = {
42
+ state: 'start',
43
+ init,
44
+ input,
45
+ method,
46
+ startClocks,
47
+ url,
48
+ handlingStack,
49
+ };
50
+ observable.notify(context);
51
+ // Those properties can be changed by observable subscribers
52
+ parameters[0] = context.input;
53
+ parameters[1] = context.init;
54
+ onPostCall((responsePromise) => afterSend(observable, responsePromise, context));
55
+ }
56
+ function afterSend(observable, responsePromise, startContext) {
57
+ const context = startContext;
58
+ function reportFetch(partialContext) {
59
+ context.state = 'resolve';
60
+ Object.assign(context, partialContext);
61
+ observable.notify(context);
62
+ }
63
+ responsePromise.then((0, monitor_1.monitor)((response) => {
64
+ reportFetch({
65
+ response,
66
+ responseType: response.type,
67
+ status: response.status,
68
+ isAborted: false,
69
+ });
70
+ }), (0, monitor_1.monitor)((error) => {
71
+ var _a, _b;
72
+ reportFetch({
73
+ status: 0,
74
+ isAborted: ((_b = (_a = context.init) === null || _a === void 0 ? void 0 : _a.signal) === null || _b === void 0 ? void 0 : _b.aborted) || (error instanceof DOMException && error.code === DOMException.ABORT_ERR),
75
+ error,
76
+ });
77
+ }));
78
+ }
79
+ //# sourceMappingURL=fetchObservable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchObservable.js","sourceRoot":"","sources":["../../src/browser/fetchObservable.ts"],"names":[],"mappings":";;AAoCA,kDAKC;AAED,oDAEC;AA5CD,gEAA4D;AAC5D,8CAA0C;AAC1C,oDAAgD;AAEhD,wDAAoD;AACpD,4DAAyD;AAEzD,wDAAoD;AA0BpD,IAAI,eAAqD,CAAA;AAEzD,SAAgB,mBAAmB;IACjC,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,eAAe,GAAG,qBAAqB,EAAE,CAAA;IAC3C,CAAC;IACD,OAAO,eAAe,CAAA;AACxB,CAAC;AAED,SAAgB,oBAAoB;IAClC,eAAe,GAAG,SAAS,CAAA;AAC7B,CAAC;AAED,SAAS,qBAAqB;IAC5B,OAAO,IAAI,uBAAU,CAAe,CAAC,UAAU,EAAE,EAAE;QACjD,IAAI,CAAC,2BAAY,CAAC,KAAK,EAAE,CAAC;YACxB,OAAM;QACR,CAAC;QAED,MAAM,EAAE,IAAI,EAAE,GAAG,IAAA,mCAAgB,EAAC,2BAAY,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE;YAC/F,oBAAoB,EAAE,IAAI;SAC3B,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,UAAU,CACjB,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAiD,EACxF,UAAoC;IAEpC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,UAAU,CAAA;IAChC,IAAI,gBAAgB,GAAG,IAAI,IAAI,IAAI,CAAC,MAAM,CAAA;IAE1C,IAAI,gBAAgB,KAAK,SAAS,IAAI,KAAK,YAAY,OAAO,EAAE,CAAC;QAC/D,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAA;IACjC,CAAC;IAED,MAAM,MAAM,GAAG,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAA;IAC9F,MAAM,GAAG,GAAG,KAAK,YAAY,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAA,0BAAY,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;IAC9E,MAAM,WAAW,GAAG,IAAA,qBAAS,GAAE,CAAA;IAE/B,MAAM,OAAO,GAAsB;QACjC,KAAK,EAAE,OAAO;QACd,IAAI;QACJ,KAAK;QACL,MAAM;QACN,WAAW;QACX,GAAG;QACH,aAAa;KACd,CAAA;IAED,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAE1B,4DAA4D;IAC5D,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAA0B,CAAA;IAClD,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAA;IAE5B,UAAU,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC,CAAA;AAClF,CAAC;AAED,SAAS,SAAS,CAChB,UAAoC,EACpC,eAAkC,EAClC,YAA+B;IAE/B,MAAM,OAAO,GAAG,YAA8C,CAAA;IAE9D,SAAS,WAAW,CAAC,cAA4C;QAC/D,OAAO,CAAC,KAAK,GAAG,SAAS,CAAA;QACzB,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC,CAAA;QACtC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAC5B,CAAC;IAED,eAAe,CAAC,IAAI,CAClB,IAAA,iBAAO,EAAC,CAAC,QAAQ,EAAE,EAAE;QACnB,WAAW,CAAC;YACV,QAAQ;YACR,YAAY,EAAE,QAAQ,CAAC,IAAI;YAC3B,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAA;IACJ,CAAC,CAAC,EACF,IAAA,iBAAO,EAAC,CAAC,KAAY,EAAE,EAAE;;QACvB,WAAW,CAAC;YACV,MAAM,EAAE,CAAC;YACT,SAAS,EACP,CAAA,MAAA,MAAA,OAAO,CAAC,IAAI,0CAAE,MAAM,0CAAE,OAAO,KAAI,CAAC,KAAK,YAAY,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC,SAAS,CAAC;YAC3G,KAAK;SACN,CAAC,CAAA;IACJ,CAAC,CAAC,CACH,CAAA;AACH,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { Observable } from '../tools/observable';
2
+ import type { Configuration } from '../domain/configuration';
3
+ export declare const PageExitReason: {
4
+ readonly HIDDEN: "visibility_hidden";
5
+ readonly UNLOADING: "before_unload";
6
+ readonly PAGEHIDE: "page_hide";
7
+ readonly FROZEN: "page_frozen";
8
+ };
9
+ export type PageExitReason = (typeof PageExitReason)[keyof typeof PageExitReason];
10
+ export interface PageMayExitEvent {
11
+ reason: PageExitReason;
12
+ }
13
+ export declare function createPageMayExitObservable(configuration: Configuration): Observable<PageMayExitEvent>;
14
+ export declare function isPageExitReason(reason: string): reason is PageExitReason;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PageExitReason = void 0;
4
+ exports.createPageMayExitObservable = createPageMayExitObservable;
5
+ exports.isPageExitReason = isPageExitReason;
6
+ const observable_1 = require("../tools/observable");
7
+ const polyfills_1 = require("../tools/utils/polyfills");
8
+ const addEventListener_1 = require("./addEventListener");
9
+ exports.PageExitReason = {
10
+ HIDDEN: 'visibility_hidden',
11
+ UNLOADING: 'before_unload',
12
+ PAGEHIDE: 'page_hide',
13
+ FROZEN: 'page_frozen',
14
+ };
15
+ function createPageMayExitObservable(configuration) {
16
+ return new observable_1.Observable((observable) => {
17
+ const { stop: stopListeners } = (0, addEventListener_1.addEventListeners)(configuration, window, ["visibilitychange" /* DOM_EVENT.VISIBILITY_CHANGE */, "freeze" /* DOM_EVENT.FREEZE */], (event) => {
18
+ if (event.type === "visibilitychange" /* DOM_EVENT.VISIBILITY_CHANGE */ && document.visibilityState === 'hidden') {
19
+ /**
20
+ * Only event that guarantee to fire on mobile devices when the page transitions to background state
21
+ * (e.g. when user switches to a different application, goes to homescreen, etc), or is being unloaded.
22
+ */
23
+ observable.notify({ reason: exports.PageExitReason.HIDDEN });
24
+ }
25
+ else if (event.type === "freeze" /* DOM_EVENT.FREEZE */) {
26
+ /**
27
+ * After transitioning in background a tab can be freezed to preserve resources. (cf: https://developer.chrome.com/blog/page-lifecycle-api)
28
+ * Allow to collect events happening between hidden and frozen state.
29
+ */
30
+ observable.notify({ reason: exports.PageExitReason.FROZEN });
31
+ }
32
+ }, { capture: true });
33
+ const stopBeforeUnloadListener = (0, addEventListener_1.addEventListener)(configuration, window, "beforeunload" /* DOM_EVENT.BEFORE_UNLOAD */, () => {
34
+ observable.notify({ reason: exports.PageExitReason.UNLOADING });
35
+ }).stop;
36
+ return () => {
37
+ stopListeners();
38
+ stopBeforeUnloadListener();
39
+ };
40
+ });
41
+ }
42
+ function isPageExitReason(reason) {
43
+ return (0, polyfills_1.objectValues)(exports.PageExitReason).includes(reason);
44
+ }
45
+ //# sourceMappingURL=pageMayExitObservable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pageMayExitObservable.js","sourceRoot":"","sources":["../../src/browser/pageMayExitObservable.ts"],"names":[],"mappings":";;;AAkBA,kEAiCC;AAED,4CAEC;AAvDD,oDAAgD;AAChD,wDAAuD;AAEvD,yDAAmF;AAEtE,QAAA,cAAc,GAAG;IAC5B,MAAM,EAAE,mBAAmB;IAC3B,SAAS,EAAE,eAAe;IAC1B,QAAQ,EAAE,WAAW;IACrB,MAAM,EAAE,aAAa;CACb,CAAA;AAQV,SAAgB,2BAA2B,CAAC,aAA4B;IACtE,OAAO,IAAI,uBAAU,CAAmB,CAAC,UAAU,EAAE,EAAE;QACrD,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,IAAA,oCAAiB,EAC/C,aAAa,EACb,MAAM,EACN,uFAA+C,EAC/C,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,KAAK,CAAC,IAAI,yDAAgC,IAAI,QAAQ,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;gBACxF;;;mBAGG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,sBAAc,CAAC,MAAM,EAAE,CAAC,CAAA;YACtD,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,oCAAqB,EAAE,CAAC;gBAC3C;;;mBAGG;gBACH,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,sBAAc,CAAC,MAAM,EAAE,CAAC,CAAA;YACtD,CAAC;QACH,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAA;QAED,MAAM,wBAAwB,GAAG,IAAA,mCAAgB,EAAC,aAAa,EAAE,MAAM,gDAA2B,GAAG,EAAE;YACrG,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,sBAAc,CAAC,SAAS,EAAE,CAAC,CAAA;QACzD,CAAC,CAAC,CAAC,IAAI,CAAA;QAEP,OAAO,GAAG,EAAE;YACV,aAAa,EAAE,CAAA;YACf,wBAAwB,EAAE,CAAA;QAC5B,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAgB,gBAAgB,CAAC,MAAc;IAC7C,OAAO,IAAA,wBAAY,EAAC,sBAAc,CAAC,CAAC,QAAQ,CAAC,MAAwB,CAAC,CAAA;AACxE,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { Configuration } from '../domain/configuration';
2
+ export declare function runOnReadyState(configuration: Configuration, expectedReadyState: 'complete' | 'interactive', callback: () => void): {
3
+ stop: () => void;
4
+ };
5
+ export declare function asyncRunOnReadyState(configuration: Configuration, expectedReadyState: 'complete' | 'interactive'): Promise<void>;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runOnReadyState = runOnReadyState;
4
+ exports.asyncRunOnReadyState = asyncRunOnReadyState;
5
+ const functionUtils_1 = require("../tools/utils/functionUtils");
6
+ const addEventListener_1 = require("./addEventListener");
7
+ function runOnReadyState(configuration, expectedReadyState, callback) {
8
+ if (document.readyState === expectedReadyState || document.readyState === 'complete') {
9
+ callback();
10
+ return { stop: functionUtils_1.noop };
11
+ }
12
+ const eventName = expectedReadyState === 'complete' ? "load" /* DOM_EVENT.LOAD */ : "DOMContentLoaded" /* DOM_EVENT.DOM_CONTENT_LOADED */;
13
+ return (0, addEventListener_1.addEventListener)(configuration, window, eventName, callback, { once: true });
14
+ }
15
+ function asyncRunOnReadyState(configuration, expectedReadyState) {
16
+ return new Promise((resolve) => {
17
+ runOnReadyState(configuration, expectedReadyState, resolve);
18
+ });
19
+ }
20
+ //# sourceMappingURL=runOnReadyState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runOnReadyState.js","sourceRoot":"","sources":["../../src/browser/runOnReadyState.ts"],"names":[],"mappings":";;AAIA,0CAWC;AAED,oDAOC;AAvBD,gEAAmD;AACnD,yDAAgE;AAEhE,SAAgB,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;QACV,OAAO,EAAE,IAAI,EAAE,oBAAI,EAAE,CAAA;IACvB,CAAC;IACD,MAAM,SAAS,GAAG,kBAAkB,KAAK,UAAU,CAAC,CAAC,6BAAgB,CAAC,sDAA6B,CAAA;IACnG,OAAO,IAAA,mCAAgB,EAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;AACrF,CAAC;AAED,SAAgB,oBAAoB,CAClC,aAA4B,EAC5B,kBAA8C;IAE9C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,eAAe,CAAC,aAAa,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAA;IAC7D,CAAC,CAAC,CAAA;AACJ,CAAC"}