@kubesense/kubesense-browser-core 1.7.0 → 2.0.0-beta.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 (935) hide show
  1. package/LICENSE +1 -1
  2. package/cjs/boot/displayAlreadyInitializedError.js +6 -7
  3. package/cjs/boot/displayAlreadyInitializedError.js.map +1 -1
  4. package/cjs/boot/init.d.ts +1 -0
  5. package/cjs/boot/init.js +26 -34
  6. package/cjs/boot/init.js.map +1 -1
  7. package/cjs/browser/addEventListener.d.ts +12 -9
  8. package/cjs/browser/addEventListener.js +107 -50
  9. package/cjs/browser/addEventListener.js.map +1 -1
  10. package/cjs/browser/browser.types.d.ts +0 -24
  11. package/cjs/browser/cookie.d.ts +4 -1
  12. package/cjs/browser/cookie.js +76 -89
  13. package/cjs/browser/cookie.js.map +1 -1
  14. package/cjs/browser/cookieAccess.d.ts +18 -0
  15. package/cjs/browser/cookieAccess.js +129 -0
  16. package/cjs/browser/cookieAccess.js.map +1 -0
  17. package/cjs/browser/fetch.d.ts +9 -0
  18. package/cjs/browser/fetch.js +18 -0
  19. package/cjs/browser/fetch.js.map +1 -0
  20. package/cjs/browser/fetchObservable.d.ts +3 -3
  21. package/cjs/browser/fetchObservable.js +79 -92
  22. package/cjs/browser/fetchObservable.js.map +1 -1
  23. package/cjs/browser/pageMayExitObservable.d.ts +1 -2
  24. package/cjs/browser/pageMayExitObservable.js +53 -51
  25. package/cjs/browser/pageMayExitObservable.js.map +1 -1
  26. package/cjs/browser/runOnReadyState.d.ts +2 -3
  27. package/cjs/browser/runOnReadyState.js +18 -17
  28. package/cjs/browser/runOnReadyState.js.map +1 -1
  29. package/cjs/browser/webSocketObservable.d.ts +44 -0
  30. package/cjs/browser/webSocketObservable.js +92 -0
  31. package/cjs/browser/webSocketObservable.js.map +1 -0
  32. package/cjs/browser/xhrObservable.d.ts +8 -3
  33. package/cjs/browser/xhrObservable.js +64 -77
  34. package/cjs/browser/xhrObservable.js.map +1 -1
  35. package/cjs/domain/allowedTrackingOrigins.d.ts +2 -2
  36. package/cjs/domain/allowedTrackingOrigins.js +27 -23
  37. package/cjs/domain/allowedTrackingOrigins.js.map +1 -1
  38. package/cjs/domain/bufferedData.d.ts +20 -6
  39. package/cjs/domain/bufferedData.js +41 -19
  40. package/cjs/domain/bufferedData.js.map +1 -1
  41. package/cjs/domain/configuration/configuration.d.ts +169 -76
  42. package/cjs/domain/configuration/configuration.js +159 -128
  43. package/cjs/domain/configuration/configuration.js.map +1 -1
  44. package/cjs/domain/configuration/index.d.ts +5 -7
  45. package/cjs/domain/configuration/remoteSdkConfig.d.ts +26 -6
  46. package/cjs/domain/configuration/remoteSdkConfig.js +152 -159
  47. package/cjs/domain/configuration/remoteSdkConfig.js.map +1 -1
  48. package/cjs/domain/connectivity/connectivity.d.ts +2 -10
  49. package/cjs/domain/connectivity/connectivity.js +13 -13
  50. package/cjs/domain/connectivity/connectivity.js.map +1 -1
  51. package/cjs/domain/console/consoleObservable.d.ts +1 -1
  52. package/cjs/domain/console/consoleObservable.js +62 -74
  53. package/cjs/domain/console/consoleObservable.js.map +1 -1
  54. package/cjs/domain/context/contextConstants.js +24 -15
  55. package/cjs/domain/context/contextConstants.js.map +1 -1
  56. package/cjs/domain/context/contextManager.js +49 -53
  57. package/cjs/domain/context/contextManager.js.map +1 -1
  58. package/cjs/domain/context/contextUtils.js +11 -12
  59. package/cjs/domain/context/contextUtils.js.map +1 -1
  60. package/cjs/domain/context/defineContextMethod.d.ts +2 -2
  61. package/cjs/domain/context/defineContextMethod.js +15 -16
  62. package/cjs/domain/context/defineContextMethod.js.map +1 -1
  63. package/cjs/domain/context/storeContextManager.d.ts +1 -2
  64. package/cjs/domain/context/storeContextManager.js +31 -33
  65. package/cjs/domain/context/storeContextManager.js.map +1 -1
  66. package/cjs/domain/contexts/accountContext.d.ts +2 -2
  67. package/cjs/domain/contexts/accountContext.js +26 -29
  68. package/cjs/domain/contexts/accountContext.js.map +1 -1
  69. package/cjs/domain/contexts/globalContext.d.ts +2 -2
  70. package/cjs/domain/contexts/globalContext.js +17 -17
  71. package/cjs/domain/contexts/globalContext.js.map +1 -1
  72. package/cjs/domain/contexts/tabContext.d.ts +4 -0
  73. package/cjs/domain/contexts/tabContext.js +28 -0
  74. package/cjs/domain/contexts/tabContext.js.map +1 -0
  75. package/cjs/domain/contexts/telemetrySessionContext.d.ts +4 -0
  76. package/cjs/domain/contexts/telemetrySessionContext.js +17 -0
  77. package/cjs/domain/contexts/telemetrySessionContext.js.map +1 -0
  78. package/cjs/domain/contexts/userContext.d.ts +8 -3
  79. package/cjs/domain/contexts/userContext.js +79 -114
  80. package/cjs/domain/contexts/userContext.js.map +1 -1
  81. package/cjs/domain/deflate/deflate.types.js +11 -2
  82. package/cjs/domain/deflate/deflate.types.js.map +1 -1
  83. package/cjs/domain/error/error.d.ts +14 -6
  84. package/cjs/domain/error/error.js +101 -70
  85. package/cjs/domain/error/error.js.map +1 -1
  86. package/cjs/domain/error/error.types.d.ts +6 -4
  87. package/cjs/domain/error/error.types.js +24 -11
  88. package/cjs/domain/error/error.types.js.map +1 -1
  89. package/cjs/domain/error/isError.d.ts +2 -0
  90. package/cjs/domain/error/isError.js +14 -0
  91. package/cjs/domain/error/isError.js.map +1 -0
  92. package/cjs/domain/error/trackRuntimeError.d.ts +3 -2
  93. package/cjs/domain/error/trackRuntimeError.js +44 -41
  94. package/cjs/domain/error/trackRuntimeError.js.map +1 -1
  95. package/cjs/domain/eventRateLimiter/createEventRateLimiter.d.ts +1 -2
  96. package/cjs/domain/eventRateLimiter/createEventRateLimiter.js +28 -38
  97. package/cjs/domain/eventRateLimiter/createEventRateLimiter.js.map +1 -1
  98. package/cjs/domain/extension/extensionUtils.js +20 -25
  99. package/cjs/domain/extension/extensionUtils.js.map +1 -1
  100. package/cjs/domain/geo/geocoding.js +64 -0
  101. package/cjs/domain/geo/geocoding.js.map +1 -0
  102. package/cjs/domain/geo/geolocation.js +72 -0
  103. package/cjs/domain/geo/geolocation.js.map +1 -0
  104. package/cjs/domain/report/reportObservable.d.ts +1 -2
  105. package/cjs/domain/report/reportObservable.js +76 -85
  106. package/cjs/domain/report/reportObservable.js.map +1 -1
  107. package/cjs/domain/resourceUtils.d.ts +1 -0
  108. package/cjs/domain/resourceUtils.js +20 -17
  109. package/cjs/domain/resourceUtils.js.map +1 -1
  110. package/cjs/domain/sampler.d.ts +11 -0
  111. package/cjs/domain/sampler.js +40 -0
  112. package/cjs/domain/sampler.js.map +1 -0
  113. package/cjs/domain/session/sessionConstants.d.ts +1 -0
  114. package/cjs/domain/session/sessionConstants.js +19 -13
  115. package/cjs/domain/session/sessionConstants.js.map +1 -1
  116. package/cjs/domain/session/sessionManager.d.ts +21 -13
  117. package/cjs/domain/session/sessionManager.js +254 -191
  118. package/cjs/domain/session/sessionManager.js.map +1 -1
  119. package/cjs/domain/session/sessionState.d.ts +10 -1
  120. package/cjs/domain/session/sessionState.js +72 -56
  121. package/cjs/domain/session/sessionState.js.map +1 -1
  122. package/cjs/domain/session/sessionStateValidation.js +7 -8
  123. package/cjs/domain/session/sessionStateValidation.js.map +1 -1
  124. package/cjs/domain/session/sessionStore.d.ts +4 -33
  125. package/cjs/domain/session/sessionStore.js +41 -181
  126. package/cjs/domain/session/sessionStore.js.map +1 -1
  127. package/cjs/domain/session/storeStrategies/sessionInCookie.d.ts +7 -11
  128. package/cjs/domain/session/storeStrategies/sessionInCookie.js +90 -96
  129. package/cjs/domain/session/storeStrategies/sessionInCookie.js.map +1 -1
  130. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.d.ts +1 -4
  131. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js +39 -38
  132. package/cjs/domain/session/storeStrategies/sessionInLocalStorage.js.map +1 -1
  133. package/cjs/domain/session/storeStrategies/sessionInMemory.d.ts +12 -0
  134. package/cjs/domain/session/storeStrategies/sessionInMemory.js +36 -0
  135. package/cjs/domain/session/storeStrategies/sessionInMemory.js.map +1 -0
  136. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.d.ts +16 -7
  137. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.js +7 -4
  138. package/cjs/domain/session/storeStrategies/sessionStoreStrategy.js.map +1 -1
  139. package/cjs/domain/sourceCodeContext.d.ts +22 -0
  140. package/cjs/domain/sourceCodeContext.js +56 -0
  141. package/cjs/domain/sourceCodeContext.js.map +1 -0
  142. package/cjs/domain/synthetics/syntheticsWorkerValues.d.ts +9 -3
  143. package/cjs/domain/synthetics/syntheticsWorkerValues.js +37 -25
  144. package/cjs/domain/synthetics/syntheticsWorkerValues.js.map +1 -1
  145. package/cjs/domain/tags.d.ts +1 -2
  146. package/cjs/domain/tags.js +23 -57
  147. package/cjs/domain/tags.js.map +1 -1
  148. package/cjs/domain/telemetry/rawTelemetryEvent.types.js +8 -7
  149. package/cjs/domain/telemetry/rawTelemetryEvent.types.js.map +1 -1
  150. package/cjs/domain/telemetry/telemetry.d.ts +7 -8
  151. package/cjs/domain/telemetry/telemetry.js +192 -215
  152. package/cjs/domain/telemetry/telemetry.js.map +1 -1
  153. package/cjs/domain/telemetry/telemetryEvent.types.d.ts +161 -16
  154. package/cjs/domain/trackingConsent.d.ts +1 -0
  155. package/cjs/domain/trackingConsent.js +35 -24
  156. package/cjs/domain/trackingConsent.js.map +1 -1
  157. package/cjs/domain/userAgentData/userAgentData.js +65 -96
  158. package/cjs/domain/userAgentData/userAgentData.js.map +1 -1
  159. package/cjs/index.d.ts +34 -30
  160. package/cjs/index.js +297 -213
  161. package/cjs/tools/abstractLifeCycle.js +19 -26
  162. package/cjs/tools/abstractLifeCycle.js.map +1 -1
  163. package/cjs/tools/catchUserErrors.js +12 -12
  164. package/cjs/tools/catchUserErrors.js.map +1 -1
  165. package/cjs/tools/display.d.ts +1 -37
  166. package/cjs/tools/display.js +8 -43
  167. package/cjs/tools/display.js.map +1 -1
  168. package/cjs/tools/encoder.js +36 -37
  169. package/cjs/tools/encoder.js.map +1 -1
  170. package/cjs/tools/experimentalFeatures.d.ts +1 -4
  171. package/cjs/tools/experimentalFeatures.js +29 -40
  172. package/cjs/tools/experimentalFeatures.js.map +1 -1
  173. package/cjs/tools/getZoneJsOriginalValue.d.ts +1 -1
  174. package/cjs/tools/getZoneJsOriginalValue.js +22 -25
  175. package/cjs/tools/getZoneJsOriginalValue.js.map +1 -1
  176. package/cjs/tools/instrumentMethod.d.ts +57 -0
  177. package/cjs/tools/instrumentMethod.js +179 -112
  178. package/cjs/tools/instrumentMethod.js.map +1 -1
  179. package/cjs/tools/matchOption.d.ts +0 -1
  180. package/cjs/tools/matchOption.js +21 -31
  181. package/cjs/tools/matchOption.js.map +1 -1
  182. package/cjs/tools/mockable.d.ts +22 -0
  183. package/cjs/tools/mockable.js +28 -0
  184. package/cjs/tools/mockable.js.map +1 -0
  185. package/cjs/tools/observable.d.ts +3 -1
  186. package/cjs/tools/observable.js +75 -85
  187. package/cjs/tools/observable.js.map +1 -1
  188. package/cjs/tools/queueMicrotask.js +9 -14
  189. package/cjs/tools/queueMicrotask.js.map +1 -1
  190. package/cjs/tools/readBytesFromStream.d.ts +1 -6
  191. package/cjs/tools/readBytesFromStream.js +18 -25
  192. package/cjs/tools/readBytesFromStream.js.map +1 -1
  193. package/cjs/tools/requestIdleCallback.js +23 -29
  194. package/cjs/tools/requestIdleCallback.js.map +1 -1
  195. package/cjs/tools/sendToExtension.js +10 -8
  196. package/cjs/tools/sendToExtension.js.map +1 -1
  197. package/cjs/tools/serialisation/jsonStringify.js +37 -42
  198. package/cjs/tools/serialisation/jsonStringify.js.map +1 -1
  199. package/cjs/tools/serialisation/sanitize.d.ts +1 -0
  200. package/cjs/tools/serialisation/sanitize.js +112 -167
  201. package/cjs/tools/serialisation/sanitize.js.map +1 -1
  202. package/cjs/tools/serialisation/stringify.d.ts +2 -0
  203. package/cjs/tools/serialisation/stringify.js +18 -0
  204. package/cjs/tools/serialisation/stringify.js.map +1 -0
  205. package/cjs/tools/stackTrace/computeStackTrace.js +121 -159
  206. package/cjs/tools/stackTrace/computeStackTrace.js.map +1 -1
  207. package/cjs/tools/stackTrace/handlingStack.d.ts +1 -1
  208. package/cjs/tools/stackTrace/handlingStack.js +39 -38
  209. package/cjs/tools/stackTrace/handlingStack.js.map +1 -1
  210. package/cjs/tools/taskQueue.js +40 -49
  211. package/cjs/tools/taskQueue.js.map +1 -1
  212. package/cjs/tools/thenable.d.ts +8 -0
  213. package/cjs/tools/thenable.js +27 -0
  214. package/cjs/tools/thenable.js.map +1 -0
  215. package/cjs/tools/timer.d.ts +2 -1
  216. package/cjs/tools/timer.js +14 -13
  217. package/cjs/tools/timer.js.map +1 -1
  218. package/cjs/tools/utils/arrayUtils.d.ts +1 -0
  219. package/cjs/tools/utils/arrayUtils.js +17 -13
  220. package/cjs/tools/utils/arrayUtils.js.map +1 -1
  221. package/cjs/tools/utils/browserDetection.d.ts +1 -0
  222. package/cjs/tools/utils/browserDetection.js +25 -23
  223. package/cjs/tools/utils/browserDetection.js.map +1 -1
  224. package/cjs/tools/utils/byteUtils.js +20 -28
  225. package/cjs/tools/utils/byteUtils.js.map +1 -1
  226. package/cjs/tools/utils/functionUtils.js +33 -40
  227. package/cjs/tools/utils/functionUtils.js.map +1 -1
  228. package/cjs/tools/utils/numberUtils.d.ts +0 -6
  229. package/cjs/tools/utils/numberUtils.js +7 -18
  230. package/cjs/tools/utils/numberUtils.js.map +1 -1
  231. package/cjs/tools/utils/objectUtils.d.ts +2 -0
  232. package/cjs/tools/utils/objectUtils.js +27 -14
  233. package/cjs/tools/utils/objectUtils.js.map +1 -1
  234. package/cjs/tools/utils/polyfills.js +12 -16
  235. package/cjs/tools/utils/polyfills.js.map +1 -1
  236. package/cjs/tools/utils/responseUtils.js +11 -12
  237. package/cjs/tools/utils/responseUtils.js.map +1 -1
  238. package/cjs/tools/utils/stringUtils.d.ts +9 -0
  239. package/cjs/tools/utils/stringUtils.js +73 -77
  240. package/cjs/tools/utils/stringUtils.js.map +1 -1
  241. package/cjs/tools/utils/timezone.js +9 -10
  242. package/cjs/tools/utils/timezone.js.map +1 -1
  243. package/cjs/tools/valueHistory.d.ts +16 -3
  244. package/cjs/tools/valueHistory.js +113 -99
  245. package/cjs/tools/valueHistory.js.map +1 -1
  246. package/cjs/transport/batch.d.ts +11 -7
  247. package/cjs/transport/batch.js +93 -106
  248. package/cjs/transport/batch.js.map +1 -1
  249. package/cjs/transport/eventBridge.d.ts +6 -2
  250. package/cjs/transport/eventBridge.js +54 -38
  251. package/cjs/transport/eventBridge.js.map +1 -1
  252. package/cjs/transport/flushController.d.ts +6 -15
  253. package/cjs/transport/flushController.js +99 -118
  254. package/cjs/transport/flushController.js.map +1 -1
  255. package/cjs/transport/httpRequest.d.ts +8 -9
  256. package/cjs/transport/httpRequest.js +61 -97
  257. package/cjs/transport/httpRequest.js.map +1 -1
  258. package/cjs/transport/index.d.ts +3 -2
  259. package/cjs/transport/sendWithRetryStrategy.d.ts +9 -4
  260. package/cjs/transport/sendWithRetryStrategy.js +144 -148
  261. package/cjs/transport/sendWithRetryStrategy.js.map +1 -1
  262. package/esm/boot/displayAlreadyInitializedError.mjs +9 -0
  263. package/esm/boot/displayAlreadyInitializedError.mjs.map +1 -0
  264. package/esm/boot/init.mjs +30 -0
  265. package/esm/boot/init.mjs.map +1 -0
  266. package/esm/browser/addEventListener.mjs +107 -0
  267. package/esm/browser/addEventListener.mjs.map +1 -0
  268. package/esm/browser/cookie.mjs +92 -0
  269. package/esm/browser/cookie.mjs.map +1 -0
  270. package/esm/browser/cookieAccess.mjs +124 -0
  271. package/esm/browser/cookieAccess.mjs.map +1 -0
  272. package/esm/browser/fetch.mjs +18 -0
  273. package/esm/browser/fetch.mjs.map +1 -0
  274. package/esm/browser/fetchObservable.mjs +89 -0
  275. package/esm/browser/fetchObservable.mjs.map +1 -0
  276. package/esm/browser/pageMayExitObservable.mjs +56 -0
  277. package/esm/browser/pageMayExitObservable.mjs.map +1 -0
  278. package/esm/browser/runOnReadyState.mjs +19 -0
  279. package/esm/browser/runOnReadyState.mjs.map +1 -0
  280. package/esm/browser/webSocketObservable.mjs +92 -0
  281. package/esm/browser/webSocketObservable.mjs.map +1 -0
  282. package/esm/browser/xhrObservable.mjs +73 -0
  283. package/esm/browser/xhrObservable.mjs.map +1 -0
  284. package/esm/domain/allowedTrackingOrigins.mjs +27 -0
  285. package/esm/domain/allowedTrackingOrigins.mjs.map +1 -0
  286. package/esm/domain/bufferedData.mjs +43 -0
  287. package/esm/domain/bufferedData.mjs.map +1 -0
  288. package/esm/domain/configuration/configuration.mjs +163 -0
  289. package/esm/domain/configuration/configuration.mjs.map +1 -0
  290. package/esm/domain/configuration/remoteSdkConfig.mjs +163 -0
  291. package/esm/domain/configuration/remoteSdkConfig.mjs.map +1 -0
  292. package/esm/domain/connectivity/connectivity.mjs +16 -0
  293. package/esm/domain/connectivity/connectivity.mjs.map +1 -0
  294. package/esm/domain/console/consoleObservable.mjs +72 -0
  295. package/esm/domain/console/consoleObservable.mjs.map +1 -0
  296. package/esm/domain/context/contextConstants.mjs +25 -0
  297. package/esm/domain/context/contextConstants.mjs.map +1 -0
  298. package/esm/domain/context/contextManager.mjs +55 -0
  299. package/esm/domain/context/contextManager.mjs.map +1 -0
  300. package/esm/domain/context/contextUtils.mjs +15 -0
  301. package/esm/domain/context/contextUtils.mjs.map +1 -0
  302. package/esm/domain/context/defineContextMethod.mjs +19 -0
  303. package/esm/domain/context/defineContextMethod.mjs.map +1 -0
  304. package/esm/domain/context/storeContextManager.mjs +36 -0
  305. package/esm/domain/context/storeContextManager.mjs.map +1 -0
  306. package/esm/domain/contexts/accountContext.mjs +29 -0
  307. package/esm/domain/contexts/accountContext.mjs.map +1 -0
  308. package/esm/domain/contexts/globalContext.mjs +20 -0
  309. package/esm/domain/contexts/globalContext.mjs.map +1 -0
  310. package/esm/domain/contexts/tabContext.mjs +27 -0
  311. package/esm/domain/contexts/tabContext.mjs.map +1 -0
  312. package/esm/domain/contexts/telemetrySessionContext.mjs +17 -0
  313. package/esm/domain/contexts/telemetrySessionContext.mjs.map +1 -0
  314. package/esm/domain/contexts/userContext.mjs +88 -0
  315. package/esm/domain/contexts/userContext.mjs.map +1 -0
  316. package/esm/domain/deflate/deflate.types.mjs +12 -0
  317. package/esm/domain/deflate/deflate.types.mjs.map +1 -0
  318. package/esm/domain/error/error.mjs +104 -0
  319. package/esm/domain/error/error.mjs.map +1 -0
  320. package/esm/domain/error/error.types.mjs +24 -0
  321. package/esm/domain/error/error.types.mjs.map +1 -0
  322. package/esm/domain/error/isError.mjs +13 -0
  323. package/esm/domain/error/isError.mjs.map +1 -0
  324. package/esm/domain/error/trackRuntimeError.mjs +49 -0
  325. package/esm/domain/error/trackRuntimeError.mjs.map +1 -0
  326. package/esm/domain/eventRateLimiter/createEventRateLimiter.mjs +31 -0
  327. package/esm/domain/eventRateLimiter/createEventRateLimiter.mjs.map +1 -0
  328. package/esm/domain/extension/extensionUtils.mjs +23 -0
  329. package/esm/domain/extension/extensionUtils.mjs.map +1 -0
  330. package/esm/domain/geo/geocoding.mjs +60 -0
  331. package/esm/domain/geo/geocoding.mjs.map +1 -0
  332. package/esm/domain/geo/geolocation.mjs +69 -0
  333. package/esm/domain/geo/geolocation.mjs.map +1 -0
  334. package/esm/domain/report/reportObservable.mjs +89 -0
  335. package/esm/domain/report/reportObservable.mjs.map +1 -0
  336. package/esm/domain/resourceUtils.mjs +22 -0
  337. package/esm/domain/resourceUtils.mjs.map +1 -0
  338. package/esm/domain/sampler.mjs +37 -0
  339. package/esm/domain/sampler.mjs.map +1 -0
  340. package/esm/domain/session/sessionConstants.mjs +18 -0
  341. package/esm/domain/session/sessionConstants.mjs.map +1 -0
  342. package/esm/domain/session/sessionManager.mjs +258 -0
  343. package/esm/domain/session/sessionManager.mjs.map +1 -0
  344. package/esm/domain/session/sessionState.mjs +76 -0
  345. package/esm/domain/session/sessionState.mjs.map +1 -0
  346. package/esm/domain/session/sessionStateValidation.mjs +9 -0
  347. package/esm/domain/session/sessionStateValidation.mjs.map +1 -0
  348. package/esm/domain/session/sessionStore.mjs +45 -0
  349. package/esm/domain/session/sessionStore.mjs.map +1 -0
  350. package/esm/domain/session/storeStrategies/sessionInCookie.mjs +96 -0
  351. package/esm/domain/session/storeStrategies/sessionInCookie.mjs.map +1 -0
  352. package/esm/domain/session/storeStrategies/sessionInLocalStorage.mjs +42 -0
  353. package/esm/domain/session/storeStrategies/sessionInLocalStorage.mjs.map +1 -0
  354. package/esm/domain/session/storeStrategies/sessionInMemory.mjs +34 -0
  355. package/esm/domain/session/storeStrategies/sessionInMemory.mjs.map +1 -0
  356. package/esm/domain/session/storeStrategies/sessionStoreStrategy.mjs +7 -0
  357. package/esm/domain/session/storeStrategies/sessionStoreStrategy.mjs.map +1 -0
  358. package/esm/domain/sourceCodeContext.mjs +55 -0
  359. package/esm/domain/sourceCodeContext.mjs.map +1 -0
  360. package/esm/domain/synthetics/syntheticsWorkerValues.mjs +37 -0
  361. package/esm/domain/synthetics/syntheticsWorkerValues.mjs.map +1 -0
  362. package/esm/domain/tags.mjs +29 -0
  363. package/esm/domain/tags.mjs.map +1 -0
  364. package/esm/domain/telemetry/rawTelemetryEvent.types.mjs +10 -0
  365. package/esm/domain/telemetry/rawTelemetryEvent.types.mjs.map +1 -0
  366. package/esm/domain/telemetry/telemetry.mjs +210 -0
  367. package/esm/domain/telemetry/telemetry.mjs.map +1 -0
  368. package/esm/domain/trackingConsent.mjs +38 -0
  369. package/esm/domain/trackingConsent.mjs.map +1 -0
  370. package/esm/domain/userAgentData/userAgentData.mjs +77 -0
  371. package/esm/domain/userAgentData/userAgentData.mjs.map +1 -0
  372. package/esm/index.mjs +85 -0
  373. package/esm/tools/abstractLifeCycle.mjs +21 -0
  374. package/esm/tools/abstractLifeCycle.mjs.map +1 -0
  375. package/esm/tools/catchUserErrors.mjs +15 -0
  376. package/esm/tools/catchUserErrors.mjs.map +1 -0
  377. package/esm/tools/display.mjs +8 -0
  378. package/esm/tools/display.mjs.map +1 -0
  379. package/esm/tools/encoder.mjs +39 -0
  380. package/esm/tools/encoder.mjs.map +1 -0
  381. package/esm/tools/experimentalFeatures.mjs +35 -0
  382. package/esm/tools/experimentalFeatures.mjs.map +1 -0
  383. package/esm/tools/getZoneJsOriginalValue.mjs +26 -0
  384. package/esm/tools/getZoneJsOriginalValue.mjs.map +1 -0
  385. package/esm/tools/instrumentMethod.mjs +183 -0
  386. package/esm/tools/instrumentMethod.mjs.map +1 -0
  387. package/esm/tools/matchOption.mjs +25 -0
  388. package/esm/tools/matchOption.mjs.map +1 -0
  389. package/esm/tools/mockable.mjs +28 -0
  390. package/esm/tools/mockable.mjs.map +1 -0
  391. package/esm/tools/observable.mjs +77 -0
  392. package/esm/tools/observable.mjs.map +1 -0
  393. package/esm/tools/queueMicrotask.mjs +12 -0
  394. package/esm/tools/queueMicrotask.mjs.map +1 -0
  395. package/esm/tools/readBytesFromStream.mjs +21 -0
  396. package/esm/tools/readBytesFromStream.mjs.map +1 -0
  397. package/esm/tools/requestIdleCallback.mjs +28 -0
  398. package/esm/tools/requestIdleCallback.mjs.map +1 -0
  399. package/esm/tools/sendToExtension.mjs +13 -0
  400. package/esm/tools/sendToExtension.mjs.map +1 -0
  401. package/esm/tools/serialisation/jsonStringify.mjs +42 -0
  402. package/esm/tools/serialisation/jsonStringify.mjs.map +1 -0
  403. package/esm/tools/serialisation/sanitize.mjs +132 -0
  404. package/esm/tools/serialisation/sanitize.mjs.map +1 -0
  405. package/esm/tools/serialisation/stringify.mjs +17 -0
  406. package/esm/tools/serialisation/stringify.mjs.map +1 -0
  407. package/esm/tools/stackTrace/computeStackTrace.mjs +148 -0
  408. package/esm/tools/stackTrace/computeStackTrace.mjs.map +1 -0
  409. package/esm/tools/stackTrace/handlingStack.mjs +45 -0
  410. package/esm/tools/stackTrace/handlingStack.mjs.map +1 -0
  411. package/esm/tools/taskQueue.mjs +45 -0
  412. package/esm/tools/taskQueue.mjs.map +1 -0
  413. package/esm/tools/thenable.mjs +24 -0
  414. package/esm/tools/thenable.mjs.map +1 -0
  415. package/esm/tools/timer.mjs +20 -0
  416. package/esm/tools/timer.mjs.map +1 -0
  417. package/esm/tools/utils/arrayUtils.mjs +21 -0
  418. package/esm/tools/utils/arrayUtils.mjs.map +1 -0
  419. package/esm/tools/utils/browserDetection.mjs +31 -0
  420. package/esm/tools/utils/browserDetection.mjs.map +1 -0
  421. package/esm/tools/utils/byteUtils.mjs +23 -0
  422. package/esm/tools/utils/byteUtils.mjs.map +1 -0
  423. package/esm/tools/utils/functionUtils.mjs +35 -0
  424. package/esm/tools/utils/functionUtils.mjs.map +1 -0
  425. package/esm/tools/utils/numberUtils.mjs +11 -0
  426. package/esm/tools/utils/numberUtils.mjs.map +1 -0
  427. package/esm/tools/utils/objectUtils.mjs +31 -0
  428. package/esm/tools/utils/objectUtils.mjs.map +1 -0
  429. package/esm/tools/utils/polyfills.mjs +17 -0
  430. package/esm/tools/utils/polyfills.mjs.map +1 -0
  431. package/esm/tools/utils/responseUtils.mjs +15 -0
  432. package/esm/tools/utils/responseUtils.mjs.map +1 -0
  433. package/esm/tools/utils/stringUtils.mjs +81 -0
  434. package/esm/tools/utils/stringUtils.mjs.map +1 -0
  435. package/esm/tools/utils/timezone.mjs +12 -0
  436. package/esm/tools/utils/timezone.mjs.map +1 -0
  437. package/esm/tools/valueHistory.mjs +117 -0
  438. package/esm/tools/valueHistory.mjs.map +1 -0
  439. package/esm/transport/batch.mjs +96 -0
  440. package/esm/transport/batch.mjs.map +1 -0
  441. package/esm/transport/eventBridge.mjs +58 -0
  442. package/esm/transport/eventBridge.mjs.map +1 -0
  443. package/esm/transport/flushController.mjs +103 -0
  444. package/esm/transport/flushController.mjs.map +1 -0
  445. package/esm/transport/httpRequest.mjs +69 -0
  446. package/esm/transport/httpRequest.mjs.map +1 -0
  447. package/esm/transport/sendWithRetryStrategy.mjs +154 -0
  448. package/esm/transport/sendWithRetryStrategy.mjs.map +1 -0
  449. package/package.json +20 -11
  450. package/src/boot/displayAlreadyInitializedError.ts +4 -1
  451. package/src/boot/init.ts +3 -2
  452. package/src/browser/addEventListener.ts +43 -8
  453. package/src/browser/browser.types.ts +0 -32
  454. package/src/browser/cookie.ts +45 -30
  455. package/src/browser/cookieAccess.ts +172 -0
  456. package/src/browser/fetch.ts +14 -0
  457. package/src/browser/fetchObservable.ts +25 -26
  458. package/src/browser/pageMayExitObservable.ts +9 -5
  459. package/src/browser/runOnReadyState.ts +3 -8
  460. package/src/browser/webSocketObservable.ts +181 -0
  461. package/src/browser/xhrObservable.ts +22 -13
  462. package/src/domain/allowedTrackingOrigins.ts +7 -6
  463. package/src/domain/bufferedData.ts +41 -14
  464. package/src/domain/configuration/configuration.ts +121 -171
  465. package/src/domain/configuration/index.ts +6 -7
  466. package/src/domain/configuration/remoteSdkConfig.ts +65 -16
  467. package/src/domain/connectivity/connectivity.ts +11 -23
  468. package/src/domain/console/consoleObservable.ts +9 -5
  469. package/src/domain/context/contextManager.ts +6 -2
  470. package/src/domain/context/contextUtils.ts +1 -1
  471. package/src/domain/context/defineContextMethod.ts +4 -4
  472. package/src/domain/context/storeContextManager.ts +9 -6
  473. package/src/domain/contexts/accountContext.ts +5 -5
  474. package/src/domain/contexts/globalContext.ts +4 -5
  475. package/src/domain/contexts/tabContext.ts +43 -0
  476. package/src/domain/contexts/telemetrySessionContext.ts +26 -0
  477. package/src/domain/contexts/userContext.ts +21 -16
  478. package/src/domain/error/error.ts +83 -35
  479. package/src/domain/error/error.types.ts +6 -4
  480. package/src/domain/error/isError.ts +13 -0
  481. package/src/domain/error/trackRuntimeError.ts +11 -4
  482. package/src/domain/eventRateLimiter/createEventRateLimiter.ts +3 -9
  483. package/src/{tools/utils → domain/geo}/geocoding.ts +7 -18
  484. package/src/{tools/utils → domain/geo}/geolocation.ts +1 -1
  485. package/src/domain/report/reportObservable.ts +15 -8
  486. package/src/domain/resourceUtils.ts +1 -0
  487. package/src/domain/sampler.ts +59 -0
  488. package/src/domain/session/sessionConstants.ts +2 -1
  489. package/src/domain/session/sessionManager.ts +347 -178
  490. package/src/domain/session/sessionState.ts +71 -10
  491. package/src/domain/session/sessionStore.ts +53 -226
  492. package/src/domain/session/storeStrategies/sessionInCookie.ts +122 -107
  493. package/src/domain/session/storeStrategies/sessionInLocalStorage.ts +33 -21
  494. package/src/domain/session/storeStrategies/sessionInMemory.ts +55 -0
  495. package/src/domain/session/storeStrategies/sessionStoreStrategy.ts +28 -6
  496. package/src/domain/sourceCodeContext.ts +100 -0
  497. package/src/domain/synthetics/syntheticsWorkerValues.ts +47 -15
  498. package/src/domain/tags.ts +5 -19
  499. package/src/domain/telemetry/rawTelemetryEvent.types.ts +1 -1
  500. package/src/domain/telemetry/telemetry.ts +44 -52
  501. package/src/domain/telemetry/telemetryEvent.types.ts +177 -19
  502. package/src/domain/trackingConsent.ts +18 -3
  503. package/src/domain/userAgentData/userAgentData.ts +1 -1
  504. package/src/index.ts +59 -43
  505. package/src/tools/display.ts +2 -52
  506. package/src/tools/experimentalFeatures.ts +3 -4
  507. package/src/tools/getZoneJsOriginalValue.ts +3 -3
  508. package/src/tools/instrumentMethod.ts +228 -18
  509. package/src/tools/matchOption.ts +2 -6
  510. package/src/tools/mockable.ts +32 -0
  511. package/src/tools/observable.ts +11 -2
  512. package/src/tools/queueMicrotask.ts +8 -3
  513. package/src/tools/readBytesFromStream.ts +3 -12
  514. package/src/tools/requestIdleCallback.ts +2 -2
  515. package/src/tools/sendToExtension.ts +1 -1
  516. package/src/tools/serialisation/sanitize.ts +71 -64
  517. package/src/tools/serialisation/stringify.ts +18 -0
  518. package/src/tools/stackTrace/computeStackTrace.ts +19 -19
  519. package/src/tools/stackTrace/handlingStack.ts +15 -2
  520. package/src/tools/taskQueue.ts +5 -3
  521. package/src/tools/thenable.ts +23 -0
  522. package/src/tools/timer.ts +8 -7
  523. package/src/tools/utils/arrayUtils.ts +8 -2
  524. package/src/tools/utils/browserDetection.ts +8 -0
  525. package/src/tools/utils/byteUtils.ts +2 -6
  526. package/src/tools/utils/functionUtils.ts +2 -2
  527. package/src/tools/utils/numberUtils.ts +0 -12
  528. package/src/tools/utils/objectUtils.ts +20 -0
  529. package/src/tools/utils/stringUtils.ts +23 -1
  530. package/src/tools/valueHistory.ts +59 -18
  531. package/src/transport/batch.ts +50 -31
  532. package/src/transport/eventBridge.ts +24 -10
  533. package/src/transport/flushController.ts +22 -30
  534. package/src/transport/httpRequest.ts +18 -47
  535. package/src/transport/index.ts +3 -2
  536. package/src/transport/sendWithRetryStrategy.ts +29 -17
  537. package/cjs/browser/browser.types.js +0 -6
  538. package/cjs/browser/browser.types.js.map +0 -1
  539. package/cjs/domain/configuration/endpointBuilder.d.ts +0 -12
  540. package/cjs/domain/configuration/endpointBuilder.js +0 -66
  541. package/cjs/domain/configuration/endpointBuilder.js.map +0 -1
  542. package/cjs/domain/configuration/index.js +0 -44
  543. package/cjs/domain/configuration/index.js.map +0 -1
  544. package/cjs/domain/configuration/transportConfiguration.d.ts +0 -21
  545. package/cjs/domain/configuration/transportConfiguration.js +0 -58
  546. package/cjs/domain/configuration/transportConfiguration.js.map +0 -1
  547. package/cjs/domain/connectivity/index.js +0 -18
  548. package/cjs/domain/connectivity/index.js.map +0 -1
  549. package/cjs/domain/contexts/rumInternalContext.type.js +0 -3
  550. package/cjs/domain/contexts/rumInternalContext.type.js.map +0 -1
  551. package/cjs/domain/deflate/index.js +0 -18
  552. package/cjs/domain/deflate/index.js.map +0 -1
  553. package/cjs/domain/intakeSites.d.ts +0 -4
  554. package/cjs/domain/intakeSites.js +0 -7
  555. package/cjs/domain/intakeSites.js.map +0 -1
  556. package/cjs/domain/report/browser.types.js +0 -3
  557. package/cjs/domain/report/browser.types.js.map +0 -1
  558. package/cjs/domain/session/oldCookiesMigration.d.ts +0 -11
  559. package/cjs/domain/session/oldCookiesMigration.js +0 -40
  560. package/cjs/domain/session/oldCookiesMigration.js.map +0 -1
  561. package/cjs/domain/session/sessionStoreOperations.d.ts +0 -12
  562. package/cjs/domain/session/sessionStoreOperations.js +0 -119
  563. package/cjs/domain/session/sessionStoreOperations.js.map +0 -1
  564. package/cjs/domain/telemetry/index.js +0 -28
  565. package/cjs/domain/telemetry/index.js.map +0 -1
  566. package/cjs/domain/telemetry/telemetryEvent.types.js +0 -7
  567. package/cjs/domain/telemetry/telemetryEvent.types.js.map +0 -1
  568. package/cjs/domain/userAgentData/index.js +0 -18
  569. package/cjs/domain/userAgentData/index.js.map +0 -1
  570. package/cjs/index.js.map +0 -1
  571. package/cjs/tools/abstractHooks.d.ts +0 -24
  572. package/cjs/tools/abstractHooks.js +0 -41
  573. package/cjs/tools/abstractHooks.js.map +0 -1
  574. package/cjs/tools/boundedBuffer.d.ts +0 -16
  575. package/cjs/tools/boundedBuffer.js +0 -32
  576. package/cjs/tools/boundedBuffer.js.map +0 -1
  577. package/cjs/tools/globalObject.d.ts +0 -19
  578. package/cjs/tools/globalObject.js +0 -44
  579. package/cjs/tools/globalObject.js.map +0 -1
  580. package/cjs/tools/mergeInto.d.ts +0 -25
  581. package/cjs/tools/mergeInto.js +0 -98
  582. package/cjs/tools/mergeInto.js.map +0 -1
  583. package/cjs/tools/monitor.d.ts +0 -9
  584. package/cjs/tools/monitor.js +0 -61
  585. package/cjs/tools/monitor.js.map +0 -1
  586. package/cjs/tools/serialisation/context.js +0 -3
  587. package/cjs/tools/serialisation/context.js.map +0 -1
  588. package/cjs/tools/utils/geocoding.js +0 -80
  589. package/cjs/tools/utils/geocoding.js.map +0 -1
  590. package/cjs/tools/utils/geolocation.js +0 -77
  591. package/cjs/tools/utils/geolocation.js.map +0 -1
  592. package/cjs/tools/utils/timeUtils.d.ts +0 -53
  593. package/cjs/tools/utils/timeUtils.js +0 -101
  594. package/cjs/tools/utils/timeUtils.js.map +0 -1
  595. package/cjs/tools/utils/typeUtils.d.ts +0 -4
  596. package/cjs/tools/utils/typeUtils.js +0 -16
  597. package/cjs/tools/utils/typeUtils.js.map +0 -1
  598. package/cjs/tools/utils/urlPolyfill.d.ts +0 -5
  599. package/cjs/tools/utils/urlPolyfill.js +0 -59
  600. package/cjs/tools/utils/urlPolyfill.js.map +0 -1
  601. package/cjs/transport/index.js +0 -15
  602. package/cjs/transport/index.js.map +0 -1
  603. package/esm/boot/displayAlreadyInitializedError.d.ts +0 -2
  604. package/esm/boot/displayAlreadyInitializedError.js +0 -7
  605. package/esm/boot/displayAlreadyInitializedError.js.map +0 -1
  606. package/esm/boot/init.d.ts +0 -13
  607. package/esm/boot/init.js +0 -35
  608. package/esm/boot/init.js.map +0 -1
  609. package/esm/browser/addEventListener.d.ts +0 -87
  610. package/esm/browser/addEventListener.js +0 -51
  611. package/esm/browser/addEventListener.js.map +0 -1
  612. package/esm/browser/browser.types.d.ts +0 -51
  613. package/esm/browser/browser.types.js +0 -5
  614. package/esm/browser/browser.types.js.map +0 -1
  615. package/esm/browser/cookie.d.ts +0 -26
  616. package/esm/browser/cookie.js +0 -101
  617. package/esm/browser/cookie.js.map +0 -1
  618. package/esm/browser/fetchObservable.d.ts +0 -38
  619. package/esm/browser/fetchObservable.js +0 -99
  620. package/esm/browser/fetchObservable.js.map +0 -1
  621. package/esm/browser/pageMayExitObservable.d.ts +0 -14
  622. package/esm/browser/pageMayExitObservable.js +0 -51
  623. package/esm/browser/pageMayExitObservable.js.map +0 -1
  624. package/esm/browser/runOnReadyState.d.ts +0 -5
  625. package/esm/browser/runOnReadyState.js +0 -16
  626. package/esm/browser/runOnReadyState.js.map +0 -1
  627. package/esm/browser/xhrObservable.d.ts +0 -24
  628. package/esm/browser/xhrObservable.js +0 -83
  629. package/esm/browser/xhrObservable.js.map +0 -1
  630. package/esm/domain/allowedTrackingOrigins.d.ts +0 -4
  631. package/esm/domain/allowedTrackingOrigins.js +0 -21
  632. package/esm/domain/allowedTrackingOrigins.js.map +0 -1
  633. package/esm/domain/bufferedData.d.ts +0 -14
  634. package/esm/domain/bufferedData.js +0 -19
  635. package/esm/domain/bufferedData.js.map +0 -1
  636. package/esm/domain/configuration/configuration.d.ts +0 -284
  637. package/esm/domain/configuration/configuration.js +0 -129
  638. package/esm/domain/configuration/configuration.js.map +0 -1
  639. package/esm/domain/configuration/endpointBuilder.d.ts +0 -12
  640. package/esm/domain/configuration/endpointBuilder.js +0 -62
  641. package/esm/domain/configuration/endpointBuilder.js.map +0 -1
  642. package/esm/domain/configuration/index.d.ts +0 -8
  643. package/esm/domain/configuration/index.js +0 -6
  644. package/esm/domain/configuration/index.js.map +0 -1
  645. package/esm/domain/configuration/remoteSdkConfig.d.ts +0 -81
  646. package/esm/domain/configuration/remoteSdkConfig.js +0 -172
  647. package/esm/domain/configuration/remoteSdkConfig.js.map +0 -1
  648. package/esm/domain/configuration/transportConfiguration.d.ts +0 -21
  649. package/esm/domain/configuration/transportConfiguration.js +0 -54
  650. package/esm/domain/configuration/transportConfiguration.js.map +0 -1
  651. package/esm/domain/connectivity/connectivity.d.ts +0 -18
  652. package/esm/domain/connectivity/connectivity.js +0 -13
  653. package/esm/domain/connectivity/connectivity.js.map +0 -1
  654. package/esm/domain/connectivity/index.d.ts +0 -1
  655. package/esm/domain/connectivity/index.js +0 -2
  656. package/esm/domain/connectivity/index.js.map +0 -1
  657. package/esm/domain/console/consoleObservable.d.ts +0 -21
  658. package/esm/domain/console/consoleObservable.js +0 -80
  659. package/esm/domain/console/consoleObservable.js.map +0 -1
  660. package/esm/domain/context/contextConstants.d.ts +0 -21
  661. package/esm/domain/context/contextConstants.js +0 -15
  662. package/esm/domain/context/contextConstants.js.map +0 -1
  663. package/esm/domain/context/contextManager.d.ts +0 -19
  664. package/esm/domain/context/contextManager.js +0 -56
  665. package/esm/domain/context/contextManager.js.map +0 -1
  666. package/esm/domain/context/contextUtils.d.ts +0 -5
  667. package/esm/domain/context/contextUtils.js +0 -13
  668. package/esm/domain/context/contextUtils.js.map +0 -1
  669. package/esm/domain/context/defineContextMethod.d.ts +0 -6
  670. package/esm/domain/context/defineContextMethod.js +0 -17
  671. package/esm/domain/context/defineContextMethod.js.map +0 -1
  672. package/esm/domain/context/storeContextManager.d.ts +0 -6
  673. package/esm/domain/context/storeContextManager.js +0 -35
  674. package/esm/domain/context/storeContextManager.js.map +0 -1
  675. package/esm/domain/contexts/accountContext.d.ts +0 -26
  676. package/esm/domain/contexts/accountContext.js +0 -29
  677. package/esm/domain/contexts/accountContext.js.map +0 -1
  678. package/esm/domain/contexts/globalContext.d.ts +0 -18
  679. package/esm/domain/contexts/globalContext.js +0 -17
  680. package/esm/domain/contexts/globalContext.js.map +0 -1
  681. package/esm/domain/contexts/rumInternalContext.type.d.ts +0 -14
  682. package/esm/domain/contexts/rumInternalContext.type.js +0 -2
  683. package/esm/domain/contexts/rumInternalContext.type.js.map +0 -1
  684. package/esm/domain/contexts/userContext.d.ts +0 -32
  685. package/esm/domain/contexts/userContext.js +0 -120
  686. package/esm/domain/contexts/userContext.js.map +0 -1
  687. package/esm/domain/deflate/deflate.types.d.ts +0 -40
  688. package/esm/domain/deflate/deflate.types.js +0 -2
  689. package/esm/domain/deflate/deflate.types.js.map +0 -1
  690. package/esm/domain/deflate/index.d.ts +0 -1
  691. package/esm/domain/deflate/index.js +0 -2
  692. package/esm/domain/deflate/index.js.map +0 -1
  693. package/esm/domain/error/error.d.ts +0 -23
  694. package/esm/domain/error/error.js +0 -72
  695. package/esm/domain/error/error.js.map +0 -1
  696. package/esm/domain/error/error.types.d.ts +0 -47
  697. package/esm/domain/error/error.types.js +0 -10
  698. package/esm/domain/error/error.types.js.map +0 -1
  699. package/esm/domain/error/trackRuntimeError.d.ts +0 -11
  700. package/esm/domain/error/trackRuntimeError.js +0 -43
  701. package/esm/domain/error/trackRuntimeError.js.map +0 -1
  702. package/esm/domain/eventRateLimiter/createEventRateLimiter.d.ts +0 -5
  703. package/esm/domain/eventRateLimiter/createEventRateLimiter.js +0 -38
  704. package/esm/domain/eventRateLimiter/createEventRateLimiter.js.map +0 -1
  705. package/esm/domain/extension/extensionUtils.d.ts +0 -10
  706. package/esm/domain/extension/extensionUtils.js +0 -25
  707. package/esm/domain/extension/extensionUtils.js.map +0 -1
  708. package/esm/domain/intakeSites.d.ts +0 -4
  709. package/esm/domain/intakeSites.js +0 -4
  710. package/esm/domain/intakeSites.js.map +0 -1
  711. package/esm/domain/report/browser.types.d.ts +0 -34
  712. package/esm/domain/report/browser.types.js +0 -2
  713. package/esm/domain/report/browser.types.js.map +0 -1
  714. package/esm/domain/report/reportObservable.d.ts +0 -14
  715. package/esm/domain/report/reportObservable.js +0 -95
  716. package/esm/domain/report/reportObservable.js.map +0 -1
  717. package/esm/domain/resourceUtils.d.ts +0 -18
  718. package/esm/domain/resourceUtils.js +0 -17
  719. package/esm/domain/resourceUtils.js.map +0 -1
  720. package/esm/domain/session/oldCookiesMigration.d.ts +0 -11
  721. package/esm/domain/session/oldCookiesMigration.js +0 -36
  722. package/esm/domain/session/oldCookiesMigration.js.map +0 -1
  723. package/esm/domain/session/sessionConstants.d.ts +0 -15
  724. package/esm/domain/session/sessionConstants.js +0 -13
  725. package/esm/domain/session/sessionConstants.js.map +0 -1
  726. package/esm/domain/session/sessionManager.d.ts +0 -28
  727. package/esm/domain/session/sessionManager.js +0 -196
  728. package/esm/domain/session/sessionManager.js.map +0 -1
  729. package/esm/domain/session/sessionState.d.ts +0 -16
  730. package/esm/domain/session/sessionState.js +0 -60
  731. package/esm/domain/session/sessionState.js.map +0 -1
  732. package/esm/domain/session/sessionStateValidation.d.ts +0 -3
  733. package/esm/domain/session/sessionStateValidation.js +0 -7
  734. package/esm/domain/session/sessionStateValidation.js.map +0 -1
  735. package/esm/domain/session/sessionStore.d.ts +0 -38
  736. package/esm/domain/session/sessionStore.js +0 -180
  737. package/esm/domain/session/sessionStore.js.map +0 -1
  738. package/esm/domain/session/sessionStoreOperations.d.ts +0 -12
  739. package/esm/domain/session/sessionStoreOperations.js +0 -114
  740. package/esm/domain/session/sessionStoreOperations.js.map +0 -1
  741. package/esm/domain/session/storeStrategies/sessionInCookie.d.ts +0 -12
  742. package/esm/domain/session/storeStrategies/sessionInCookie.js +0 -98
  743. package/esm/domain/session/storeStrategies/sessionInCookie.js.map +0 -1
  744. package/esm/domain/session/storeStrategies/sessionInLocalStorage.d.ts +0 -6
  745. package/esm/domain/session/storeStrategies/sessionInLocalStorage.js +0 -37
  746. package/esm/domain/session/storeStrategies/sessionInLocalStorage.js.map +0 -1
  747. package/esm/domain/session/storeStrategies/sessionStoreStrategy.d.ts +0 -16
  748. package/esm/domain/session/storeStrategies/sessionStoreStrategy.js +0 -2
  749. package/esm/domain/session/storeStrategies/sessionStoreStrategy.js.map +0 -1
  750. package/esm/domain/synthetics/syntheticsWorkerValues.d.ts +0 -12
  751. package/esm/domain/synthetics/syntheticsWorkerValues.js +0 -24
  752. package/esm/domain/synthetics/syntheticsWorkerValues.js.map +0 -1
  753. package/esm/domain/tags.d.ts +0 -6
  754. package/esm/domain/tags.js +0 -59
  755. package/esm/domain/tags.js.map +0 -1
  756. package/esm/domain/telemetry/index.d.ts +0 -4
  757. package/esm/domain/telemetry/index.js +0 -3
  758. package/esm/domain/telemetry/index.js.map +0 -1
  759. package/esm/domain/telemetry/rawTelemetryEvent.types.d.ts +0 -18
  760. package/esm/domain/telemetry/rawTelemetryEvent.types.js +0 -6
  761. package/esm/domain/telemetry/rawTelemetryEvent.types.js.map +0 -1
  762. package/esm/domain/telemetry/telemetry.d.ts +0 -56
  763. package/esm/domain/telemetry/telemetry.js +0 -232
  764. package/esm/domain/telemetry/telemetry.js.map +0 -1
  765. package/esm/domain/telemetry/telemetryEvent.types.d.ts +0 -866
  766. package/esm/domain/telemetry/telemetryEvent.types.js +0 -6
  767. package/esm/domain/telemetry/telemetryEvent.types.js.map +0 -1
  768. package/esm/domain/trackingConsent.d.ts +0 -13
  769. package/esm/domain/trackingConsent.js +0 -24
  770. package/esm/domain/trackingConsent.js.map +0 -1
  771. package/esm/domain/userAgentData/index.d.ts +0 -1
  772. package/esm/domain/userAgentData/index.js +0 -2
  773. package/esm/domain/userAgentData/index.js.map +0 -1
  774. package/esm/domain/userAgentData/userAgentData.d.ts +0 -22
  775. package/esm/domain/userAgentData/userAgentData.js +0 -105
  776. package/esm/domain/userAgentData/userAgentData.js.map +0 -1
  777. package/esm/index.d.ts +0 -104
  778. package/esm/index.js +0 -79
  779. package/esm/index.js.map +0 -1
  780. package/esm/tools/abstractHooks.d.ts +0 -24
  781. package/esm/tools/abstractHooks.js +0 -37
  782. package/esm/tools/abstractHooks.js.map +0 -1
  783. package/esm/tools/abstractLifeCycle.d.ts +0 -23
  784. package/esm/tools/abstractLifeCycle.js +0 -24
  785. package/esm/tools/abstractLifeCycle.js.map +0 -1
  786. package/esm/tools/boundedBuffer.d.ts +0 -16
  787. package/esm/tools/boundedBuffer.js +0 -29
  788. package/esm/tools/boundedBuffer.js.map +0 -1
  789. package/esm/tools/catchUserErrors.d.ts +0 -1
  790. package/esm/tools/catchUserErrors.js +0 -12
  791. package/esm/tools/catchUserErrors.js.map +0 -1
  792. package/esm/tools/display.d.ts +0 -38
  793. package/esm/tools/display.js +0 -41
  794. package/esm/tools/display.js.map +0 -1
  795. package/esm/tools/encoder.d.ts +0 -54
  796. package/esm/tools/encoder.js +0 -37
  797. package/esm/tools/encoder.js.map +0 -1
  798. package/esm/tools/experimentalFeatures.d.ts +0 -21
  799. package/esm/tools/experimentalFeatures.js +0 -42
  800. package/esm/tools/experimentalFeatures.js.map +0 -1
  801. package/esm/tools/getZoneJsOriginalValue.d.ts +0 -19
  802. package/esm/tools/getZoneJsOriginalValue.js +0 -26
  803. package/esm/tools/getZoneJsOriginalValue.js.map +0 -1
  804. package/esm/tools/globalObject.d.ts +0 -19
  805. package/esm/tools/globalObject.js +0 -40
  806. package/esm/tools/globalObject.js.map +0 -1
  807. package/esm/tools/instrumentMethod.d.ts +0 -75
  808. package/esm/tools/instrumentMethod.js +0 -114
  809. package/esm/tools/instrumentMethod.js.map +0 -1
  810. package/esm/tools/matchOption.d.ts +0 -8
  811. package/esm/tools/matchOption.js +0 -31
  812. package/esm/tools/matchOption.js.map +0 -1
  813. package/esm/tools/mergeInto.d.ts +0 -25
  814. package/esm/tools/mergeInto.js +0 -93
  815. package/esm/tools/mergeInto.js.map +0 -1
  816. package/esm/tools/monitor.d.ts +0 -9
  817. package/esm/tools/monitor.js +0 -51
  818. package/esm/tools/monitor.js.map +0 -1
  819. package/esm/tools/observable.d.ts +0 -30
  820. package/esm/tools/observable.js +0 -83
  821. package/esm/tools/observable.js.map +0 -1
  822. package/esm/tools/queueMicrotask.d.ts +0 -1
  823. package/esm/tools/queueMicrotask.js +0 -14
  824. package/esm/tools/queueMicrotask.js.map +0 -1
  825. package/esm/tools/readBytesFromStream.d.ts +0 -10
  826. package/esm/tools/readBytesFromStream.js +0 -25
  827. package/esm/tools/readBytesFromStream.js.map +0 -1
  828. package/esm/tools/requestIdleCallback.d.ts +0 -12
  829. package/esm/tools/requestIdleCallback.js +0 -30
  830. package/esm/tools/requestIdleCallback.js.map +0 -1
  831. package/esm/tools/sendToExtension.d.ts +0 -3
  832. package/esm/tools/sendToExtension.js +0 -8
  833. package/esm/tools/sendToExtension.js.map +0 -1
  834. package/esm/tools/serialisation/context.d.ts +0 -9
  835. package/esm/tools/serialisation/context.js +0 -2
  836. package/esm/tools/serialisation/context.js.map +0 -1
  837. package/esm/tools/serialisation/jsonStringify.d.ts +0 -13
  838. package/esm/tools/serialisation/jsonStringify.js +0 -44
  839. package/esm/tools/serialisation/jsonStringify.js.map +0 -1
  840. package/esm/tools/serialisation/sanitize.d.ts +0 -18
  841. package/esm/tools/serialisation/sanitize.js +0 -185
  842. package/esm/tools/serialisation/sanitize.js.map +0 -1
  843. package/esm/tools/stackTrace/computeStackTrace.d.ts +0 -25
  844. package/esm/tools/stackTrace/computeStackTrace.js +0 -183
  845. package/esm/tools/stackTrace/computeStackTrace.js.map +0 -1
  846. package/esm/tools/stackTrace/handlingStack.d.ts +0 -10
  847. package/esm/tools/stackTrace/handlingStack.js +0 -41
  848. package/esm/tools/stackTrace/handlingStack.js.map +0 -1
  849. package/esm/tools/taskQueue.d.ts +0 -15
  850. package/esm/tools/taskQueue.js +0 -50
  851. package/esm/tools/taskQueue.js.map +0 -1
  852. package/esm/tools/timer.d.ts +0 -5
  853. package/esm/tools/timer.js +0 -16
  854. package/esm/tools/timer.js.map +0 -1
  855. package/esm/tools/utils/arrayUtils.d.ts +0 -3
  856. package/esm/tools/utils/arrayUtils.js +0 -15
  857. package/esm/tools/utils/arrayUtils.js.map +0 -1
  858. package/esm/tools/utils/browserDetection.d.ts +0 -8
  859. package/esm/tools/utils/browserDetection.js +0 -28
  860. package/esm/tools/utils/browserDetection.js.map +0 -1
  861. package/esm/tools/utils/byteUtils.d.ts +0 -8
  862. package/esm/tools/utils/byteUtils.js +0 -29
  863. package/esm/tools/utils/byteUtils.js.map +0 -1
  864. package/esm/tools/utils/functionUtils.d.ts +0 -8
  865. package/esm/tools/utils/functionUtils.js +0 -39
  866. package/esm/tools/utils/functionUtils.js.map +0 -1
  867. package/esm/tools/utils/geocoding.d.ts +0 -60
  868. package/esm/tools/utils/geocoding.js +0 -73
  869. package/esm/tools/utils/geocoding.js.map +0 -1
  870. package/esm/tools/utils/geolocation.d.ts +0 -24
  871. package/esm/tools/utils/geolocation.js +0 -71
  872. package/esm/tools/utils/geolocation.js.map +0 -1
  873. package/esm/tools/utils/numberUtils.d.ts +0 -8
  874. package/esm/tools/utils/numberUtils.js +0 -17
  875. package/esm/tools/utils/numberUtils.js.map +0 -1
  876. package/esm/tools/utils/objectUtils.d.ts +0 -10
  877. package/esm/tools/utils/objectUtils.js +0 -17
  878. package/esm/tools/utils/objectUtils.js.map +0 -1
  879. package/esm/tools/utils/polyfills.d.ts +0 -7
  880. package/esm/tools/utils/polyfills.js +0 -18
  881. package/esm/tools/utils/polyfills.js.map +0 -1
  882. package/esm/tools/utils/responseUtils.d.ts +0 -2
  883. package/esm/tools/utils/responseUtils.js +0 -13
  884. package/esm/tools/utils/responseUtils.js.map +0 -1
  885. package/esm/tools/utils/stringUtils.d.ts +0 -23
  886. package/esm/tools/utils/stringUtils.js +0 -84
  887. package/esm/tools/utils/stringUtils.js.map +0 -1
  888. package/esm/tools/utils/timeUtils.d.ts +0 -53
  889. package/esm/tools/utils/timeUtils.js +0 -84
  890. package/esm/tools/utils/timeUtils.js.map +0 -1
  891. package/esm/tools/utils/timezone.d.ts +0 -1
  892. package/esm/tools/utils/timezone.js +0 -10
  893. package/esm/tools/utils/timezone.js.map +0 -1
  894. package/esm/tools/utils/typeUtils.d.ts +0 -4
  895. package/esm/tools/utils/typeUtils.js +0 -13
  896. package/esm/tools/utils/typeUtils.js.map +0 -1
  897. package/esm/tools/utils/urlPolyfill.d.ts +0 -5
  898. package/esm/tools/utils/urlPolyfill.js +0 -52
  899. package/esm/tools/utils/urlPolyfill.js.map +0 -1
  900. package/esm/tools/valueHistory.d.ts +0 -27
  901. package/esm/tools/valueHistory.js +0 -100
  902. package/esm/tools/valueHistory.js.map +0 -1
  903. package/esm/transport/batch.d.ts +0 -16
  904. package/esm/transport/batch.js +0 -106
  905. package/esm/transport/batch.js.map +0 -1
  906. package/esm/transport/eventBridge.d.ts +0 -21
  907. package/esm/transport/eventBridge.js +0 -41
  908. package/esm/transport/eventBridge.js.map +0 -1
  909. package/esm/transport/flushController.d.ts +0 -65
  910. package/esm/transport/flushController.js +0 -119
  911. package/esm/transport/flushController.js.map +0 -1
  912. package/esm/transport/httpRequest.d.ts +0 -57
  913. package/esm/transport/httpRequest.js +0 -101
  914. package/esm/transport/httpRequest.js.map +0 -1
  915. package/esm/transport/index.d.ts +0 -7
  916. package/esm/transport/index.js +0 -5
  917. package/esm/transport/index.js.map +0 -1
  918. package/esm/transport/sendWithRetryStrategy.d.ts +0 -41
  919. package/esm/transport/sendWithRetryStrategy.js +0 -158
  920. package/esm/transport/sendWithRetryStrategy.js.map +0 -1
  921. package/src/domain/configuration/endpointBuilder.ts +0 -105
  922. package/src/domain/configuration/transportConfiguration.ts +0 -86
  923. package/src/domain/intakeSites.ts +0 -6
  924. package/src/domain/session/oldCookiesMigration.ts +0 -42
  925. package/src/domain/session/sessionStoreOperations.ts +0 -131
  926. package/src/tools/abstractHooks.ts +0 -72
  927. package/src/tools/boundedBuffer.ts +0 -44
  928. package/src/tools/globalObject.ts +0 -51
  929. package/src/tools/mergeInto.ts +0 -177
  930. package/src/tools/monitor.ts +0 -71
  931. package/src/tools/utils/timeUtils.ts +0 -117
  932. package/src/tools/utils/typeUtils.ts +0 -12
  933. package/src/tools/utils/urlPolyfill.ts +0 -55
  934. /package/cjs/{tools/utils → domain/geo}/geocoding.d.ts +0 -0
  935. /package/cjs/{tools/utils → domain/geo}/geolocation.d.ts +0 -0
@@ -182,7 +182,7 @@ export type TelemetryConfigurationEvent = CommonTelemetryProperties & {
182
182
  /**
183
183
  * Configure the storage strategy for persisting sessions
184
184
  */
185
- session_persistence?: 'local-storage' | 'cookie';
185
+ session_persistence?: 'local-storage' | 'cookie' | 'memory';
186
186
  /**
187
187
  * Whether contexts are stored in local storage
188
188
  */
@@ -379,6 +379,10 @@ export type TelemetryConfigurationEvent = CommonTelemetryProperties & {
379
379
  * The version of Unity used in a Unity application
380
380
  */
381
381
  unity_version?: string;
382
+ /**
383
+ * The version of MAUI used in a .NET MAUI application
384
+ */
385
+ maui_version?: string;
382
386
  /**
383
387
  * The threshold used for iOS App Hangs monitoring (in milliseconds)
384
388
  */
@@ -438,7 +442,7 @@ export type TelemetryConfigurationEvent = CommonTelemetryProperties & {
438
442
  */
439
443
  sdk_version?: string;
440
444
  /**
441
- * The source of the SDK, e.g., 'browser', 'ios', 'android', 'flutter', 'react-native', 'unity', 'kotlin-multiplatform'.
445
+ * The source of the SDK, e.g., 'browser', 'ios', 'android', 'flutter', 'react-native', 'unity', 'kotlin-multiplatform', 'maui'.
442
446
  */
443
447
  source?: string;
444
448
  /**
@@ -453,6 +457,48 @@ export type TelemetryConfigurationEvent = CommonTelemetryProperties & {
453
457
  * Whether a proxy is used for remote configuration
454
458
  */
455
459
  use_remote_configuration_proxy?: boolean;
460
+ /**
461
+ * Whether dashboard-managed SDK settings served by the KubeSense collector are enabled
462
+ */
463
+ enable_remote_sdk_configuration?: boolean;
464
+ /**
465
+ * Whether Session Replay recording is restricted to specific routes
466
+ */
467
+ use_session_replay_routes?: boolean;
468
+ /**
469
+ * Whether an explicit list of first-party domains is configured for resource classification
470
+ */
471
+ use_first_party_domains?: boolean;
472
+ /**
473
+ * Metadata of the remote configuration currently applied for this session
474
+ */
475
+ remote_configuration?: {
476
+ /**
477
+ * Identifier of the remote configuration bundle this metadata belongs to
478
+ */
479
+ config_id?: string;
480
+ /**
481
+ * CDN version identifier of the applied configuration
482
+ */
483
+ version_id?: string;
484
+ /**
485
+ * CDN publish timestamp of the applied configuration, in ms from epoch
486
+ */
487
+ last_modified?: number;
488
+ /**
489
+ * Timestamp at which the device fetched and cached this configuration version, in ms from epoch
490
+ */
491
+ last_synced?: number;
492
+ /**
493
+ * Timestamp at which this configuration version was first observed as applied by the device, in ms from epoch. Stamped once and reused on every subsequent session that runs on the same version
494
+ */
495
+ first_applied?: number;
496
+ /**
497
+ * Identifier of the sync that produced this configuration version, used to deduplicate repeat sessions from the same device without a persistent identifier
498
+ */
499
+ sync_id?: string;
500
+ [k: string]: unknown;
501
+ };
456
502
  /**
457
503
  * The percentage of sessions with Profiling enabled
458
504
  */
@@ -461,10 +507,30 @@ export type TelemetryConfigurationEvent = CommonTelemetryProperties & {
461
507
  * Whether trace baggage is propagated to child spans
462
508
  */
463
509
  propagate_trace_baggage?: boolean;
510
+ /**
511
+ * How the SDK tracks resource request/response headers
512
+ */
513
+ track_resource_headers?: 'default_headers' | 'custom';
464
514
  /**
465
515
  * Whether the beta encode cookie options is enabled
466
516
  */
467
517
  beta_encode_cookie_options?: boolean;
518
+ /**
519
+ * Whether the beta partial view updates feature is enabled
520
+ */
521
+ beta_enable_view_updates?: boolean;
522
+ /**
523
+ * Whether the beta track WebSockets feature is enabled
524
+ */
525
+ beta_track_web_sockets?: boolean;
526
+ /**
527
+ * Whether tracing feature's client-side-stats generation is enabled
528
+ */
529
+ use_client_side_stats?: boolean;
530
+ /**
531
+ * Whether trace sampling rules are configured
532
+ */
533
+ use_trace_sampling_rules?: boolean;
468
534
  [k: string]: unknown;
469
535
  };
470
536
  [k: string]: unknown;
@@ -491,15 +557,15 @@ export type TelemetryUsageEvent = CommonTelemetryProperties & {
491
557
  /**
492
558
  * Schema of features usage common across SDKs
493
559
  */
494
- export type TelemetryCommonFeaturesUsage = SetTrackingConsent | StopSession | StartView | SetViewContext | SetViewContextProperty | SetViewName | GetViewContext | AddAction | AddError | GetGlobalContext | SetGlobalContext | SetGlobalContextProperty | RemoveGlobalContextProperty | ClearGlobalContext | GetUser | SetUser | SetUserProperty | RemoveUserProperty | ClearUser | GetAccount | SetAccount | SetAccountProperty | RemoveAccountProperty | ClearAccount | AddFeatureFlagEvaluation | AddOperationStepVital;
560
+ export type TelemetryCommonFeaturesUsage = SetTrackingConsent | StopSession | StartView | SetViewContext | SetViewContextProperty | SetViewName | GetViewContext | AddAction | AddError | GetGlobalContext | SetGlobalContext | SetGlobalContextProperty | RemoveGlobalContextProperty | ClearGlobalContext | GetUser | SetUser | SetUserProperty | RemoveUserProperty | ClearUser | GetAccount | SetAccount | SetAccountProperty | RemoveAccountProperty | ClearAccount | AddFeatureFlagEvaluation | AddOperationStepVital | GraphQLRequest | AddViewLoadingTime;
495
561
  /**
496
562
  * Schema of browser specific features usage
497
563
  */
498
- export type TelemetryBrowserFeaturesUsage = StartSessionReplayRecording | StartDurationVital | StopDurationVital | AddDurationVital;
564
+ export type TelemetryBrowserFeaturesUsage = StartSessionReplayRecording | StartDurationVital | StopDurationVital | AddDurationVital | StartAction | StopAction | StartResource | StopResource | SourceCodeContext;
499
565
  /**
500
566
  * Schema of mobile specific features usage
501
567
  */
502
- export type TelemetryMobileFeaturesUsage = AddViewLoadingTime;
568
+ export type TelemetryMobileFeaturesUsage = TrackWebView | Timeseries | AndroidNetworkInstrumentation;
503
569
  /**
504
570
  * Schema of common properties of Telemetry events
505
571
  */
@@ -529,7 +595,7 @@ export interface CommonTelemetryProperties {
529
595
  /**
530
596
  * The source of this event
531
597
  */
532
- readonly source: 'android' | 'ios' | 'browser' | 'flutter' | 'react-native' | 'unity' | 'kotlin-multiplatform';
598
+ readonly source: 'android' | 'ios' | 'browser' | 'flutter' | 'react-native' | 'unity' | 'kotlin-multiplatform' | 'electron' | 'cpp' | 'maui';
533
599
  /**
534
600
  * The version of the SDK generating the telemetry event
535
601
  */
@@ -571,7 +637,7 @@ export interface CommonTelemetryProperties {
571
637
  /**
572
638
  * UUID of the action
573
639
  */
574
- id: string;
640
+ readonly id: string | string[];
575
641
  [k: string]: unknown;
576
642
  };
577
643
  /**
@@ -599,6 +665,18 @@ export interface CommonTelemetryProperties {
599
665
  * Model of the device
600
666
  */
601
667
  model?: string;
668
+ /**
669
+ * Number of logical CPU cores available for scheduling on the device at runtime, as reported by the operating system.
670
+ */
671
+ readonly logical_cpu_count?: number;
672
+ /**
673
+ * Total RAM in megabytes
674
+ */
675
+ readonly total_ram?: number;
676
+ /**
677
+ * Whether the device is considered a low RAM device (Android)
678
+ */
679
+ readonly is_low_ram?: boolean;
602
680
  [k: string]: unknown;
603
681
  };
604
682
  /**
@@ -813,6 +891,32 @@ export interface AddOperationStepVital {
813
891
  action_type: 'start' | 'succeed' | 'fail';
814
892
  [k: string]: unknown;
815
893
  }
894
+ export interface GraphQLRequest {
895
+ /**
896
+ * GraphQL request detected
897
+ */
898
+ feature: 'graphql-request';
899
+ [k: string]: unknown;
900
+ }
901
+ export interface AddViewLoadingTime {
902
+ /**
903
+ * addViewLoadingTime API
904
+ */
905
+ feature: 'addViewLoadingTime';
906
+ /**
907
+ * Whether the view is not available
908
+ */
909
+ no_view?: boolean;
910
+ /**
911
+ * Whether the available view is not active
912
+ */
913
+ no_active_view?: boolean;
914
+ /**
915
+ * Whether this call overwrote a previously set loading time
916
+ */
917
+ overwritten?: boolean;
918
+ [k: string]: unknown;
919
+ }
816
920
  export interface StartSessionReplayRecording {
817
921
  /**
818
922
  * startSessionReplayRecording API
@@ -845,22 +949,63 @@ export interface AddDurationVital {
845
949
  feature: 'add-duration-vital';
846
950
  [k: string]: unknown;
847
951
  }
848
- export interface AddViewLoadingTime {
952
+ export interface StartAction {
849
953
  /**
850
- * addViewLoadingTime API
954
+ * startAction API
851
955
  */
852
- feature: 'addViewLoadingTime';
956
+ feature: 'start-action';
957
+ [k: string]: unknown;
958
+ }
959
+ export interface StopAction {
853
960
  /**
854
- * Whether the view is not available
961
+ * stopAction API
962
+ */
963
+ feature: 'stop-action';
964
+ [k: string]: unknown;
965
+ }
966
+ export interface StartResource {
967
+ /**
968
+ * startResource API
855
969
  */
856
- no_view: boolean;
970
+ feature: 'start-resource';
971
+ [k: string]: unknown;
972
+ }
973
+ export interface StopResource {
857
974
  /**
858
- * Whether the available view is not active
975
+ * stopResource API
976
+ */
977
+ feature: 'stop-resource';
978
+ [k: string]: unknown;
979
+ }
980
+ export interface SourceCodeContext {
981
+ /**
982
+ * KUBESENSE_SOURCE_CODE_CONTEXT global for microfrontends
983
+ */
984
+ feature: 'source-code-context';
985
+ [k: string]: unknown;
986
+ }
987
+ export interface TrackWebView {
988
+ /**
989
+ * trackWebView API
990
+ */
991
+ feature: 'trackWebView';
992
+ [k: string]: unknown;
993
+ }
994
+ export interface Timeseries {
995
+ /**
996
+ * Timeseries tracking enabled
997
+ */
998
+ feature: 'timeseries';
999
+ [k: string]: unknown;
1000
+ }
1001
+ export interface AndroidNetworkInstrumentation {
1002
+ /**
1003
+ * Android network instrumentation
859
1004
  */
860
- no_active_view: boolean;
1005
+ feature: 'androidNetworkInstrumentation';
861
1006
  /**
862
- * Whether the loading time was overwritten
1007
+ * The network instrumentation API used
863
1008
  */
864
- overwritten: boolean;
1009
+ type: 'CRONET' | 'OKHTTP' | 'LEGACY_OKHTTP';
865
1010
  [k: string]: unknown;
866
1011
  }
@@ -9,5 +9,6 @@ export interface TrackingConsentState {
9
9
  update: (trackingConsent: TrackingConsent) => void;
10
10
  isGranted: () => boolean;
11
11
  observable: Observable<void>;
12
+ onGrantedOnce: (callback: () => void) => void;
12
13
  }
13
14
  export declare function createTrackingConsentState(currentConsent?: TrackingConsent): TrackingConsentState;
@@ -1,28 +1,39 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TrackingConsent = void 0;
4
- exports.createTrackingConsentState = createTrackingConsentState;
5
- const observable_1 = require("../tools/observable");
6
- exports.TrackingConsent = {
7
- GRANTED: 'granted',
8
- NOT_GRANTED: 'not-granted',
1
+ const require_observable = require("../tools/observable.js");
2
+ //#region src/domain/trackingConsent.ts
3
+ const TrackingConsent = {
4
+ GRANTED: "granted",
5
+ NOT_GRANTED: "not-granted"
9
6
  };
10
7
  function createTrackingConsentState(currentConsent) {
11
- const observable = new observable_1.Observable();
12
- return {
13
- tryToInit(trackingConsent) {
14
- if (!currentConsent) {
15
- currentConsent = trackingConsent;
16
- }
17
- },
18
- update(trackingConsent) {
19
- currentConsent = trackingConsent;
20
- observable.notify();
21
- },
22
- isGranted() {
23
- return currentConsent === exports.TrackingConsent.GRANTED;
24
- },
25
- observable,
26
- };
8
+ const observable = new require_observable.Observable();
9
+ function isGranted() {
10
+ return currentConsent === TrackingConsent.GRANTED;
11
+ }
12
+ return {
13
+ tryToInit(trackingConsent) {
14
+ if (!currentConsent) currentConsent = trackingConsent;
15
+ },
16
+ onGrantedOnce(fn) {
17
+ if (isGranted()) fn();
18
+ else {
19
+ const subscription = observable.subscribe(() => {
20
+ if (isGranted()) {
21
+ fn();
22
+ subscription.unsubscribe();
23
+ }
24
+ });
25
+ }
26
+ },
27
+ update(trackingConsent) {
28
+ currentConsent = trackingConsent;
29
+ observable.notify();
30
+ },
31
+ isGranted,
32
+ observable
33
+ };
27
34
  }
35
+ //#endregion
36
+ exports.TrackingConsent = TrackingConsent;
37
+ exports.createTrackingConsentState = createTrackingConsentState;
38
+
28
39
  //# sourceMappingURL=trackingConsent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"trackingConsent.js","sourceRoot":"","sources":["../../src/domain/trackingConsent.ts"],"names":[],"mappings":";;;AAeA,gEAkBC;AAjCD,oDAAgD;AAEnC,QAAA,eAAe,GAAG;IAC7B,OAAO,EAAE,SAAS;IAClB,WAAW,EAAE,aAAa;CAClB,CAAA;AAUV,SAAgB,0BAA0B,CAAC,cAAgC;IACzE,MAAM,UAAU,GAAG,IAAI,uBAAU,EAAQ,CAAA;IAEzC,OAAO;QACL,SAAS,CAAC,eAAgC;YACxC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,cAAc,GAAG,eAAe,CAAA;YAClC,CAAC;QACH,CAAC;QACD,MAAM,CAAC,eAAgC;YACrC,cAAc,GAAG,eAAe,CAAA;YAChC,UAAU,CAAC,MAAM,EAAE,CAAA;QACrB,CAAC;QACD,SAAS;YACP,OAAO,cAAc,KAAK,uBAAe,CAAC,OAAO,CAAA;QACnD,CAAC;QACD,UAAU;KACX,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"trackingConsent.js","names":["Observable"],"sources":["../../src/domain/trackingConsent.ts"],"sourcesContent":["import { Observable } from '../tools/observable'\n\nexport const TrackingConsent = {\n GRANTED: 'granted',\n NOT_GRANTED: 'not-granted',\n} as const\nexport type TrackingConsent = (typeof TrackingConsent)[keyof typeof TrackingConsent]\n\nexport interface TrackingConsentState {\n tryToInit: (trackingConsent: TrackingConsent) => void\n update: (trackingConsent: TrackingConsent) => void\n isGranted: () => boolean\n observable: Observable<void>\n onGrantedOnce: (callback: () => void) => void\n}\n\nexport function createTrackingConsentState(currentConsent?: TrackingConsent): TrackingConsentState {\n const observable = new Observable<void>()\n\n function isGranted() {\n return currentConsent === TrackingConsent.GRANTED\n }\n\n return {\n tryToInit(trackingConsent: TrackingConsent) {\n if (!currentConsent) {\n currentConsent = trackingConsent\n }\n },\n onGrantedOnce(fn) {\n if (isGranted()) {\n fn()\n } else {\n const subscription = observable.subscribe(() => {\n if (isGranted()) {\n fn()\n subscription.unsubscribe()\n }\n })\n }\n },\n update(trackingConsent: TrackingConsent) {\n currentConsent = trackingConsent\n observable.notify()\n },\n isGranted,\n observable,\n }\n}\n"],"mappings":";;AAEA,MAAa,kBAAkB;CAC7B,SAAS;CACT,aAAa;AACf;AAWA,SAAgB,2BAA2B,gBAAwD;CACjG,MAAM,aAAa,IAAIA,mBAAAA,WAAiB;CAExC,SAAS,YAAY;EACnB,OAAO,mBAAmB,gBAAgB;CAC5C;CAEA,OAAO;EACL,UAAU,iBAAkC;GAC1C,IAAI,CAAC,gBACH,iBAAiB;EAErB;EACA,cAAc,IAAI;GAChB,IAAI,UAAU,GACZ,GAAG;QACE;IACL,MAAM,eAAe,WAAW,gBAAgB;KAC9C,IAAI,UAAU,GAAG;MACf,GAAG;MACH,aAAa,YAAY;KAC3B;IACF,CAAC;GACH;EACF;EACA,OAAO,iBAAkC;GACvC,iBAAiB;GACjB,WAAW,OAAO;EACpB;EACA;EACA;CACF;AACF"}
@@ -1,109 +1,78 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getSyncUserAgentContext = getSyncUserAgentContext;
4
- exports.resolveHighEntropyUserAgentContext = resolveHighEntropyUserAgentContext;
5
- const globalObject_1 = require("../../tools/globalObject");
6
- // Chromium ships its brand list with intentionally-shuffled "Not-A.Brand" /
7
- // "Not(A:Brand" entries to discourage UA sniffing. Pick the most-specific real
8
- // brand: Edge > Chrome > Chromium > anything else.
1
+ let _kubesense_kubesense_js_core_util = require("@kubesense/kubesense-js-core/util");
2
+ //#region src/domain/userAgentData/userAgentData.ts
9
3
  const BRAND_PRIORITY = {
10
- 'Microsoft Edge': 1,
11
- 'Google Chrome': 2,
12
- Chromium: 3,
13
- Opera: 4,
14
- Brave: 5,
4
+ "Microsoft Edge": 1,
5
+ "Google Chrome": 2,
6
+ Chromium: 3,
7
+ Opera: 4,
8
+ Brave: 5
15
9
  };
16
10
  function pickBrand(brands) {
17
- var _a;
18
- if (!brands || brands.length === 0) {
19
- return undefined;
20
- }
21
- let best;
22
- let bestPriority = Number.MAX_SAFE_INTEGER;
23
- for (const entry of brands) {
24
- if (!entry.brand || entry.brand.indexOf('Not') === 0) {
25
- continue;
26
- }
27
- const priority = (_a = BRAND_PRIORITY[entry.brand]) !== null && _a !== void 0 ? _a : 99;
28
- if (priority < bestPriority) {
29
- best = entry;
30
- bestPriority = priority;
31
- }
32
- }
33
- return best !== null && best !== void 0 ? best : brands.find((b) => b.brand && b.brand.indexOf('Not') !== 0);
11
+ if (!brands || brands.length === 0) return;
12
+ let best;
13
+ let bestPriority = Number.MAX_SAFE_INTEGER;
14
+ for (const entry of brands) {
15
+ if (!entry.brand || entry.brand.indexOf("Not") === 0) continue;
16
+ const priority = BRAND_PRIORITY[entry.brand] ?? 99;
17
+ if (priority < bestPriority) {
18
+ best = entry;
19
+ bestPriority = priority;
20
+ }
21
+ }
22
+ return best ?? brands.find((b) => b.brand && b.brand.indexOf("Not") !== 0);
34
23
  }
35
24
  function majorVersion(version) {
36
- const dot = version.indexOf('.');
37
- return dot >= 0 ? version.slice(0, dot) : version;
25
+ const dot = version.indexOf(".");
26
+ return dot >= 0 ? version.slice(0, dot) : version;
38
27
  }
39
28
  function getUAData() {
40
- const nav = globalObject_1.globalObject.navigator;
41
- return nav === null || nav === void 0 ? void 0 : nav.userAgentData;
29
+ return _kubesense_kubesense_js_core_util.globalObject.navigator?.userAgentData;
42
30
  }
43
- // Sync values available immediately on first paint: brand + major version
44
- // from low-entropy hints. We deliberately do NOT emit os/device here — only
45
- // the platform *name* is available synchronously, not the version, and the
46
- // server's setOperatingSystem/setDevice overwrites unconditionally, so
47
- // shipping empty version strings would clobber the server-side UA fallback.
48
- // Browser brand + major version, by contrast, is reliable from sync hints.
49
- // Returns undefined on non-Chromium so the server's UA parser handles
50
- // Safari/Firefox — their classic UA isn't frozen.
51
31
  function getSyncUserAgentContext() {
52
- const uaData = getUAData();
53
- if (!uaData) {
54
- return undefined;
55
- }
56
- const brand = pickBrand(uaData.brands);
57
- if (!brand) {
58
- return undefined;
59
- }
60
- return { browser: { name: brand.brand, version: brand.version } };
32
+ const uaData = getUAData();
33
+ if (!uaData) return;
34
+ const brand = pickBrand(uaData.brands);
35
+ if (!brand) return;
36
+ return { browser: {
37
+ name: brand.brand,
38
+ version: brand.version
39
+ } };
61
40
  }
62
- // Async high-entropy values: full browser version, real OS version (recovers
63
- // the value the classic UA freezes — macOS 14.x.y instead of 10.15.7, Windows
64
- // 13.x build instead of 10.0), model on mobile, CPU architecture.
65
41
  function resolveHighEntropyUserAgentContext() {
66
- const uaData = getUAData();
67
- if (!uaData || typeof uaData.getHighEntropyValues !== 'function') {
68
- return Promise.resolve(undefined);
69
- }
70
- return uaData
71
- .getHighEntropyValues(['fullVersionList', 'platformVersion', 'model', 'architecture', 'bitness'])
72
- .then((values) => {
73
- var _a, _b;
74
- const ctx = {};
75
- const fullBrand = (_a = pickBrand(values.fullVersionList)) !== null && _a !== void 0 ? _a : pickBrand(uaData.brands);
76
- if (fullBrand) {
77
- ctx.browser = { name: fullBrand.brand, version: fullBrand.version };
78
- }
79
- // Only emit os when we have a real version — empty strings would
80
- // overwrite the server-side UA fallback (setOperatingSystem is an
81
- // unconditional assign). platformVersion can be blank when the page
82
- // sets Permissions-Policy: ch-ua-platform-version=() or in some
83
- // privacy-hardened browsers (Brave strict mode).
84
- const platformVersion = (_b = values.platformVersion) !== null && _b !== void 0 ? _b : '';
85
- const platformName = uaData.platform || values.platform || '';
86
- if (platformVersion && platformName) {
87
- ctx.os = {
88
- name: platformName,
89
- version: platformVersion,
90
- version_major: majorVersion(platformVersion),
91
- };
92
- }
93
- // Same reasoning for device — only emit if we have a meaningful model
94
- // or architecture; otherwise the server-side device_name/brand
95
- // fallback ("Mac", "Apple", "Windows", …) survives.
96
- const model = values.model || '';
97
- const architecture = values.architecture || '';
98
- if (model || architecture || uaData.mobile) {
99
- ctx.device = {
100
- type: uaData.mobile ? 'mobile' : 'desktop',
101
- model: model || undefined,
102
- architecture: architecture || undefined,
103
- };
104
- }
105
- return ctx;
106
- })
107
- .catch(() => undefined);
42
+ const uaData = getUAData();
43
+ if (!uaData || typeof uaData.getHighEntropyValues !== "function") return Promise.resolve(void 0);
44
+ return uaData.getHighEntropyValues([
45
+ "fullVersionList",
46
+ "platformVersion",
47
+ "model",
48
+ "architecture",
49
+ "bitness"
50
+ ]).then((values) => {
51
+ const ctx = {};
52
+ const fullBrand = pickBrand(values.fullVersionList) ?? pickBrand(uaData.brands);
53
+ if (fullBrand) ctx.browser = {
54
+ name: fullBrand.brand,
55
+ version: fullBrand.version
56
+ };
57
+ const platformVersion = values.platformVersion ?? "";
58
+ const platformName = uaData.platform || values.platform || "";
59
+ if (platformVersion && platformName) ctx.os = {
60
+ name: platformName,
61
+ version: platformVersion,
62
+ version_major: majorVersion(platformVersion)
63
+ };
64
+ const model = values.model || "";
65
+ const architecture = values.architecture || "";
66
+ if (model || architecture || uaData.mobile) ctx.device = {
67
+ type: uaData.mobile ? "mobile" : "desktop",
68
+ model: model || void 0,
69
+ architecture: architecture || void 0
70
+ };
71
+ return ctx;
72
+ }).catch(() => void 0);
108
73
  }
74
+ //#endregion
75
+ exports.getSyncUserAgentContext = getSyncUserAgentContext;
76
+ exports.resolveHighEntropyUserAgentContext = resolveHighEntropyUserAgentContext;
77
+
109
78
  //# sourceMappingURL=userAgentData.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"userAgentData.js","sourceRoot":"","sources":["../../../src/domain/userAgentData/userAgentData.ts"],"names":[],"mappings":";;AAoGA,0DAUC;AAKD,gFA+CC;AAlKD,2DAAuD;AAoDvD,4EAA4E;AAC5E,+EAA+E;AAC/E,mDAAmD;AACnD,MAAM,cAAc,GAA2B;IAC7C,gBAAgB,EAAE,CAAC;IACnB,eAAe,EAAE,CAAC;IAClB,QAAQ,EAAE,CAAC;IACX,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;CACT,CAAA;AAED,SAAS,SAAS,CAAC,MAAiC;;IAClD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,IAA6B,CAAA;IACjC,IAAI,YAAY,GAAG,MAAM,CAAC,gBAAgB,CAAA;IAC1C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,SAAQ;QACV,CAAC;QACD,MAAM,QAAQ,GAAG,MAAA,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,mCAAI,EAAE,CAAA;QAClD,IAAI,QAAQ,GAAG,YAAY,EAAE,CAAC;YAC5B,IAAI,GAAG,KAAK,CAAA;YACZ,YAAY,GAAG,QAAQ,CAAA;QACzB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;AAC5E,CAAC;AAED,SAAS,YAAY,CAAC,OAAe;IACnC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAChC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;AACnD,CAAC;AAED,SAAS,SAAS;IAChB,MAAM,GAAG,GAAG,2BAAY,CAAC,SAA4C,CAAA;IACrE,OAAO,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,aAAa,CAAA;AAC3B,CAAC;AAED,0EAA0E;AAC1E,4EAA4E;AAC5E,2EAA2E;AAC3E,uEAAuE;AACvE,4EAA4E;AAC5E,2EAA2E;AAC3E,sEAAsE;AACtE,kDAAkD;AAClD,SAAgB,uBAAuB;IACrC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACtC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,CAAA;AACnE,CAAC;AAED,6EAA6E;AAC7E,8EAA8E;AAC9E,kEAAkE;AAClE,SAAgB,kCAAkC;IAChD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,oBAAoB,KAAK,UAAU,EAAE,CAAC;QACjE,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACnC,CAAC;IAED,OAAO,MAAM;SACV,oBAAoB,CAAC,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC;SAChG,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;;QACf,MAAM,GAAG,GAAqB,EAAE,CAAA;QAEhC,MAAM,SAAS,GAAG,MAAA,SAAS,CAAC,MAAM,CAAC,eAAe,CAAC,mCAAI,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC/E,IAAI,SAAS,EAAE,CAAC;YACd,GAAG,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAA;QACrE,CAAC;QAED,iEAAiE;QACjE,kEAAkE;QAClE,oEAAoE;QACpE,gEAAgE;QAChE,iDAAiD;QACjD,MAAM,eAAe,GAAG,MAAA,MAAM,CAAC,eAAe,mCAAI,EAAE,CAAA;QACpD,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAA;QAC7D,IAAI,eAAe,IAAI,YAAY,EAAE,CAAC;YACpC,GAAG,CAAC,EAAE,GAAG;gBACP,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,eAAe;gBACxB,aAAa,EAAE,YAAY,CAAC,eAAe,CAAC;aAC7C,CAAA;QACH,CAAC;QAED,sEAAsE;QACtE,+DAA+D;QAC/D,oDAAoD;QACpD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAA;QAChC,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAA;QAC9C,IAAI,KAAK,IAAI,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC3C,GAAG,CAAC,MAAM,GAAG;gBACX,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;gBAC1C,KAAK,EAAE,KAAK,IAAI,SAAS;gBACzB,YAAY,EAAE,YAAY,IAAI,SAAS;aACxC,CAAA;QACH,CAAC;QAED,OAAO,GAAG,CAAA;IACZ,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;AAC3B,CAAC"}
1
+ {"version":3,"file":"userAgentData.js","names":["globalObject"],"sources":["../../../src/domain/userAgentData/userAgentData.ts"],"sourcesContent":["import { globalObject } from '@kubesense/kubesense-js-core/util'\n\nexport interface UserAgentBrowser {\n name: string\n version: string\n}\n\nexport interface UserAgentOS {\n name: string\n version: string\n version_major: string\n}\n\nexport interface UserAgentDevice {\n type?: 'mobile' | 'desktop' | 'tablet' | 'tv' | 'gaming_console' | 'bot' | 'other'\n model?: string\n brand?: string\n architecture?: string\n}\n\nexport interface UserAgentContext {\n browser?: UserAgentBrowser\n os?: UserAgentOS\n device?: UserAgentDevice\n}\n\ninterface UADataBrand {\n brand: string\n version: string\n}\n\ninterface NavigatorUAData {\n readonly brands: UADataBrand[]\n readonly mobile: boolean\n readonly platform: string\n getHighEntropyValues(hints: string[]): Promise<{\n architecture?: string\n bitness?: string\n brands?: UADataBrand[]\n fullVersionList?: UADataBrand[]\n mobile?: boolean\n model?: string\n platform?: string\n platformVersion?: string\n wow64?: boolean\n }>\n}\n\ninterface NavigatorWithUAData extends Navigator {\n userAgentData?: NavigatorUAData\n}\n\n// Chromium ships its brand list with intentionally-shuffled \"Not-A.Brand\" /\n// \"Not(A:Brand\" entries to discourage UA sniffing. Pick the most-specific real\n// brand: Edge > Chrome > Chromium > anything else.\nconst BRAND_PRIORITY: Record<string, number> = {\n 'Microsoft Edge': 1,\n 'Google Chrome': 2,\n Chromium: 3,\n Opera: 4,\n Brave: 5,\n}\n\nfunction pickBrand(brands: UADataBrand[] | undefined): UADataBrand | undefined {\n if (!brands || brands.length === 0) {\n return undefined\n }\n let best: UADataBrand | undefined\n let bestPriority = Number.MAX_SAFE_INTEGER\n for (const entry of brands) {\n if (!entry.brand || entry.brand.indexOf('Not') === 0) {\n continue\n }\n const priority = BRAND_PRIORITY[entry.brand] ?? 99\n if (priority < bestPriority) {\n best = entry\n bestPriority = priority\n }\n }\n return best ?? brands.find((b) => b.brand && b.brand.indexOf('Not') !== 0)\n}\n\nfunction majorVersion(version: string): string {\n const dot = version.indexOf('.')\n return dot >= 0 ? version.slice(0, dot) : version\n}\n\nfunction getUAData(): NavigatorUAData | undefined {\n const nav = globalObject.navigator as NavigatorWithUAData | undefined\n return nav?.userAgentData\n}\n\n// Sync values available immediately on first paint: brand + major version\n// from low-entropy hints. We deliberately do NOT emit os/device here — only\n// the platform *name* is available synchronously, not the version, and the\n// server's setOperatingSystem/setDevice overwrites unconditionally, so\n// shipping empty version strings would clobber the server-side UA fallback.\n// Browser brand + major version, by contrast, is reliable from sync hints.\n// Returns undefined on non-Chromium so the server's UA parser handles\n// Safari/Firefox — their classic UA isn't frozen.\nexport function getSyncUserAgentContext(): UserAgentContext | undefined {\n const uaData = getUAData()\n if (!uaData) {\n return undefined\n }\n const brand = pickBrand(uaData.brands)\n if (!brand) {\n return undefined\n }\n return { browser: { name: brand.brand, version: brand.version } }\n}\n\n// Async high-entropy values: full browser version, real OS version (recovers\n// the value the classic UA freezes — macOS 14.x.y instead of 10.15.7, Windows\n// 13.x build instead of 10.0), model on mobile, CPU architecture.\nexport function resolveHighEntropyUserAgentContext(): Promise<UserAgentContext | undefined> {\n const uaData = getUAData()\n if (!uaData || typeof uaData.getHighEntropyValues !== 'function') {\n return Promise.resolve(undefined)\n }\n\n return uaData\n .getHighEntropyValues(['fullVersionList', 'platformVersion', 'model', 'architecture', 'bitness'])\n .then((values) => {\n const ctx: UserAgentContext = {}\n\n const fullBrand = pickBrand(values.fullVersionList) ?? pickBrand(uaData.brands)\n if (fullBrand) {\n ctx.browser = { name: fullBrand.brand, version: fullBrand.version }\n }\n\n // Only emit os when we have a real version — empty strings would\n // overwrite the server-side UA fallback (setOperatingSystem is an\n // unconditional assign). platformVersion can be blank when the page\n // sets Permissions-Policy: ch-ua-platform-version=() or in some\n // privacy-hardened browsers (Brave strict mode).\n const platformVersion = values.platformVersion ?? ''\n const platformName = uaData.platform || values.platform || ''\n if (platformVersion && platformName) {\n ctx.os = {\n name: platformName,\n version: platformVersion,\n version_major: majorVersion(platformVersion),\n }\n }\n\n // Same reasoning for device — only emit if we have a meaningful model\n // or architecture; otherwise the server-side device_name/brand\n // fallback (\"Mac\", \"Apple\", \"Windows\", …) survives.\n const model = values.model || ''\n const architecture = values.architecture || ''\n if (model || architecture || uaData.mobile) {\n ctx.device = {\n type: uaData.mobile ? 'mobile' : 'desktop',\n model: model || undefined,\n architecture: architecture || undefined,\n }\n }\n\n return ctx\n })\n .catch(() => undefined)\n}\n"],"mappings":";;AAuDA,MAAM,iBAAyC;CAC7C,kBAAkB;CAClB,iBAAiB;CACjB,UAAU;CACV,OAAO;CACP,OAAO;AACT;AAEA,SAAS,UAAU,QAA4D;CAC7E,IAAI,CAAC,UAAU,OAAO,WAAW,GAC/B;CAEF,IAAI;CACJ,IAAI,eAAe,OAAO;CAC1B,KAAK,MAAM,SAAS,QAAQ;EAC1B,IAAI,CAAC,MAAM,SAAS,MAAM,MAAM,QAAQ,KAAK,MAAM,GACjD;EAEF,MAAM,WAAW,eAAe,MAAM,UAAU;EAChD,IAAI,WAAW,cAAc;GAC3B,OAAO;GACP,eAAe;EACjB;CACF;CACA,OAAO,QAAQ,OAAO,MAAM,MAAM,EAAE,SAAS,EAAE,MAAM,QAAQ,KAAK,MAAM,CAAC;AAC3E;AAEA,SAAS,aAAa,SAAyB;CAC7C,MAAM,MAAM,QAAQ,QAAQ,GAAG;CAC/B,OAAO,OAAO,IAAI,QAAQ,MAAM,GAAG,GAAG,IAAI;AAC5C;AAEA,SAAS,YAAyC;CAEhD,OADYA,kCAAAA,aAAa,WACb;AACd;AAUA,SAAgB,0BAAwD;CACtE,MAAM,SAAS,UAAU;CACzB,IAAI,CAAC,QACH;CAEF,MAAM,QAAQ,UAAU,OAAO,MAAM;CACrC,IAAI,CAAC,OACH;CAEF,OAAO,EAAE,SAAS;EAAE,MAAM,MAAM;EAAO,SAAS,MAAM;CAAQ,EAAE;AAClE;AAKA,SAAgB,qCAA4E;CAC1F,MAAM,SAAS,UAAU;CACzB,IAAI,CAAC,UAAU,OAAO,OAAO,yBAAyB,YACpD,OAAO,QAAQ,QAAQ,KAAA,CAAS;CAGlC,OAAO,OACJ,qBAAqB;EAAC;EAAmB;EAAmB;EAAS;EAAgB;CAAS,CAAC,CAAC,CAChG,MAAM,WAAW;EAChB,MAAM,MAAwB,CAAC;EAE/B,MAAM,YAAY,UAAU,OAAO,eAAe,KAAK,UAAU,OAAO,MAAM;EAC9E,IAAI,WACF,IAAI,UAAU;GAAE,MAAM,UAAU;GAAO,SAAS,UAAU;EAAQ;EAQpE,MAAM,kBAAkB,OAAO,mBAAmB;EAClD,MAAM,eAAe,OAAO,YAAY,OAAO,YAAY;EAC3D,IAAI,mBAAmB,cACrB,IAAI,KAAK;GACP,MAAM;GACN,SAAS;GACT,eAAe,aAAa,eAAe;EAC7C;EAMF,MAAM,QAAQ,OAAO,SAAS;EAC9B,MAAM,eAAe,OAAO,gBAAgB;EAC5C,IAAI,SAAS,gBAAgB,OAAO,QAClC,IAAI,SAAS;GACX,MAAM,OAAO,SAAS,WAAW;GACjC,OAAO,SAAS,KAAA;GAChB,cAAc,gBAAgB,KAAA;EAChC;EAGF,OAAO;CACT,CAAC,CAAC,CACD,YAAY,KAAA,CAAS;AAC1B"}