@newrelic/browser-agent 0.1.230 → 1.232.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 (365) hide show
  1. package/README.md +27 -3
  2. package/dist/cjs/common/browser-version/ios-version.js +4 -3
  3. package/dist/cjs/common/config/state/configurable.js +27 -21
  4. package/dist/cjs/common/config/state/info.js +1 -1
  5. package/dist/cjs/common/config/state/init.js +9 -1
  6. package/dist/cjs/common/config/state/loader-config.js +1 -1
  7. package/dist/cjs/common/config/state/runtime.js +26 -28
  8. package/dist/cjs/common/constants/env.cdn.js +29 -0
  9. package/dist/cjs/common/constants/env.js +32 -0
  10. package/dist/cjs/common/constants/env.npm.js +30 -0
  11. package/dist/cjs/common/context/shared-context.js +2 -1
  12. package/dist/cjs/common/event-emitter/contextual-ee.test.js +282 -0
  13. package/dist/cjs/common/event-emitter/handle.test.js +58 -0
  14. package/dist/cjs/common/event-emitter/register-handler.test.js +55 -0
  15. package/dist/cjs/common/event-listener/event-listener-opts.js +4 -2
  16. package/dist/cjs/common/harvest/harvest-scheduler.js +14 -11
  17. package/dist/cjs/common/harvest/harvest.js +5 -3
  18. package/dist/cjs/common/ids/id.js +14 -6
  19. package/dist/cjs/common/ids/id.test.js +85 -0
  20. package/dist/cjs/common/ids/unique-id.js +75 -51
  21. package/dist/cjs/common/ids/unique-id.test.js +49 -0
  22. package/dist/cjs/common/session/constants.js +12 -0
  23. package/dist/cjs/common/session/session-entity.js +278 -0
  24. package/dist/cjs/common/session/session-entity.test.js +436 -0
  25. package/dist/cjs/common/storage/first-party-cookies.js +35 -0
  26. package/dist/cjs/common/storage/local-memory.js +35 -0
  27. package/dist/cjs/common/storage/local-memory.test.js +20 -0
  28. package/dist/cjs/common/storage/local-storage.js +33 -0
  29. package/dist/cjs/common/storage/local-storage.test.js +14 -0
  30. package/dist/cjs/common/timer/interaction-timer.js +78 -0
  31. package/dist/cjs/common/timer/interaction-timer.test.js +216 -0
  32. package/dist/cjs/common/timer/timer.js +32 -0
  33. package/dist/cjs/common/timer/timer.test.js +105 -0
  34. package/dist/cjs/common/timing/nav-timing.js +51 -30
  35. package/dist/cjs/common/timing/nav-timing.test.js +192 -0
  36. package/dist/cjs/common/unload/eol.js +2 -2
  37. package/dist/cjs/common/url/clean-url.test.js +9 -0
  38. package/dist/cjs/common/url/encode.test.js +74 -0
  39. package/dist/cjs/common/url/location.js +4 -0
  40. package/dist/cjs/common/url/location.test.js +13 -0
  41. package/dist/cjs/common/url/parse-url.test.js +111 -0
  42. package/dist/cjs/common/url/protocol.js +2 -12
  43. package/dist/cjs/common/url/protocol.test.js +16 -0
  44. package/dist/cjs/common/util/console.js +1 -1
  45. package/dist/cjs/common/util/data-size.js +6 -0
  46. package/dist/cjs/common/util/data-size.test.js +47 -0
  47. package/dist/cjs/common/util/invoke.js +73 -0
  48. package/dist/cjs/common/util/invoke.test.js +49 -0
  49. package/dist/cjs/common/util/map-own.test.js +3 -3
  50. package/dist/cjs/common/util/obfuscate.js +1 -5
  51. package/dist/cjs/common/window/page-visibility.js +5 -2
  52. package/dist/cjs/common/wrap/index.js +0 -7
  53. package/dist/cjs/common/wrap/wrap-events.js +6 -9
  54. package/dist/cjs/common/wrap/wrap-fetch.js +6 -6
  55. package/dist/cjs/common/wrap/wrap-history.js +7 -6
  56. package/dist/cjs/common/wrap/wrap-jsonp.js +7 -6
  57. package/dist/cjs/common/wrap/wrap-mutation.js +7 -6
  58. package/dist/cjs/common/wrap/wrap-promise.js +7 -6
  59. package/dist/cjs/common/wrap/wrap-promise.test.js +119 -0
  60. package/dist/cjs/common/wrap/wrap-raf.js +6 -6
  61. package/dist/cjs/common/wrap/wrap-timer.js +7 -7
  62. package/dist/cjs/common/wrap/wrap-xhr.js +5 -6
  63. package/dist/cjs/features/ajax/aggregate/index.js +3 -3
  64. package/dist/cjs/features/jserrors/aggregate/compute-stack-trace.test.js +5 -5
  65. package/dist/cjs/features/jserrors/aggregate/format-stack-trace.test.js +1 -1
  66. package/dist/cjs/features/jserrors/aggregate/index.js +6 -6
  67. package/dist/cjs/features/jserrors/instrument/index.js +2 -2
  68. package/dist/cjs/features/metrics/aggregate/index.js +19 -9
  69. package/dist/cjs/features/metrics/instrument/index.js +0 -25
  70. package/dist/cjs/features/metrics/instrument/workers-helper.js +5 -5
  71. package/dist/cjs/features/page_action/aggregate/index.js +3 -3
  72. package/dist/cjs/features/page_view_event/aggregate/index.js +23 -9
  73. package/dist/cjs/features/page_view_timing/aggregate/index.js +40 -30
  74. package/dist/cjs/features/session_trace/aggregate/index.js +18 -15
  75. package/dist/cjs/features/spa/aggregate/index.js +6 -5
  76. package/dist/cjs/features/utils/agent-session.js +73 -0
  77. package/dist/cjs/features/utils/feature-base.js +1 -1
  78. package/dist/cjs/features/utils/instrument-base.js +12 -3
  79. package/dist/cjs/features/utils/lazy-loader.js +2 -2
  80. package/dist/cjs/loaders/agent.js +2 -2
  81. package/dist/cjs/loaders/api/api.js +9 -9
  82. package/dist/cjs/loaders/api/apiAsync.js +3 -2
  83. package/dist/cjs/loaders/configure/configure.js +0 -6
  84. package/dist/cjs/loaders/features/enabled-features.js +1 -1
  85. package/dist/cjs/loaders/micro-agent.js +2 -1
  86. package/dist/esm/common/browser-version/ios-version.js +4 -3
  87. package/dist/esm/common/config/state/configurable.js +26 -20
  88. package/dist/esm/common/config/state/info.js +1 -1
  89. package/dist/esm/common/config/state/init.js +9 -1
  90. package/dist/esm/common/config/state/loader-config.js +1 -1
  91. package/dist/esm/common/config/state/runtime.js +26 -28
  92. package/dist/esm/common/constants/env.cdn.js +20 -0
  93. package/dist/esm/common/constants/env.js +23 -0
  94. package/dist/esm/common/constants/env.npm.js +21 -0
  95. package/dist/esm/common/context/shared-context.js +2 -1
  96. package/dist/esm/common/event-emitter/contextual-ee.test.js +278 -0
  97. package/dist/esm/common/event-emitter/handle.test.js +54 -0
  98. package/dist/esm/common/event-emitter/register-handler.test.js +51 -0
  99. package/dist/esm/common/event-listener/event-listener-opts.js +4 -2
  100. package/dist/esm/common/harvest/harvest-scheduler.js +14 -11
  101. package/dist/esm/common/harvest/harvest.js +4 -2
  102. package/dist/esm/common/ids/id.js +16 -6
  103. package/dist/esm/common/ids/id.test.js +81 -0
  104. package/dist/esm/common/ids/unique-id.js +75 -51
  105. package/dist/esm/common/ids/unique-id.test.js +44 -0
  106. package/dist/esm/common/session/constants.js +3 -0
  107. package/dist/esm/common/session/session-entity.js +271 -0
  108. package/dist/esm/common/session/session-entity.test.js +434 -0
  109. package/dist/esm/common/storage/first-party-cookies.js +28 -0
  110. package/dist/esm/common/storage/local-memory.js +28 -0
  111. package/dist/esm/common/storage/local-memory.test.js +18 -0
  112. package/dist/esm/common/storage/local-storage.js +26 -0
  113. package/dist/esm/common/storage/local-storage.test.js +12 -0
  114. package/dist/esm/common/timer/interaction-timer.js +71 -0
  115. package/dist/esm/common/timer/interaction-timer.test.js +214 -0
  116. package/dist/esm/common/timer/timer.js +25 -0
  117. package/dist/esm/common/timer/timer.test.js +103 -0
  118. package/dist/esm/common/timing/nav-timing.js +51 -29
  119. package/dist/esm/common/timing/nav-timing.test.js +190 -0
  120. package/dist/esm/common/unload/eol.js +1 -1
  121. package/dist/esm/common/url/clean-url.test.js +7 -0
  122. package/dist/esm/common/url/encode.test.js +70 -0
  123. package/dist/esm/common/url/location.js +4 -0
  124. package/dist/esm/common/url/location.test.js +11 -0
  125. package/dist/esm/common/url/parse-url.test.js +107 -0
  126. package/dist/esm/common/url/protocol.js +3 -12
  127. package/dist/esm/common/url/protocol.test.js +14 -0
  128. package/dist/esm/common/util/console.js +1 -1
  129. package/dist/esm/common/util/data-size.js +7 -0
  130. package/dist/esm/common/util/data-size.test.js +45 -0
  131. package/dist/esm/common/util/invoke.js +66 -0
  132. package/dist/esm/common/util/invoke.test.js +47 -0
  133. package/dist/esm/common/util/map-own.test.js +3 -3
  134. package/dist/esm/common/util/obfuscate.js +2 -6
  135. package/dist/esm/common/window/page-visibility.js +5 -2
  136. package/dist/esm/common/wrap/index.js +1 -2
  137. package/dist/esm/common/wrap/wrap-events.js +6 -9
  138. package/dist/esm/common/wrap/wrap-fetch.js +6 -6
  139. package/dist/esm/common/wrap/wrap-history.js +7 -6
  140. package/dist/esm/common/wrap/wrap-jsonp.js +7 -6
  141. package/dist/esm/common/wrap/wrap-mutation.js +7 -6
  142. package/dist/esm/common/wrap/wrap-promise.js +7 -6
  143. package/dist/esm/common/wrap/wrap-promise.test.js +115 -0
  144. package/dist/esm/common/wrap/wrap-raf.js +6 -6
  145. package/dist/esm/common/wrap/wrap-timer.js +7 -7
  146. package/dist/esm/common/wrap/wrap-xhr.js +5 -6
  147. package/dist/esm/features/ajax/aggregate/index.js +3 -3
  148. package/dist/esm/features/jserrors/aggregate/compute-stack-trace.test.js +5 -5
  149. package/dist/esm/features/jserrors/aggregate/format-stack-trace.test.js +1 -1
  150. package/dist/esm/features/jserrors/aggregate/index.js +6 -6
  151. package/dist/esm/features/jserrors/instrument/index.js +2 -2
  152. package/dist/esm/features/metrics/aggregate/index.js +21 -11
  153. package/dist/esm/features/metrics/instrument/index.js +0 -25
  154. package/dist/esm/features/metrics/instrument/workers-helper.js +5 -5
  155. package/dist/esm/features/page_action/aggregate/index.js +3 -3
  156. package/dist/esm/features/page_view_event/aggregate/index.js +23 -9
  157. package/dist/esm/features/page_view_timing/aggregate/index.js +40 -30
  158. package/dist/esm/features/session_trace/aggregate/index.js +18 -15
  159. package/dist/esm/features/spa/aggregate/index.js +6 -5
  160. package/dist/esm/features/utils/agent-session.js +67 -0
  161. package/dist/esm/features/utils/feature-base.js +1 -1
  162. package/dist/esm/features/utils/instrument-base.js +7 -2
  163. package/dist/esm/features/utils/lazy-loader.js +2 -2
  164. package/dist/esm/loaders/agent.js +2 -2
  165. package/dist/esm/loaders/api/api.js +6 -9
  166. package/dist/esm/loaders/api/apiAsync.js +2 -1
  167. package/dist/esm/loaders/configure/configure.js +2 -8
  168. package/dist/esm/loaders/features/enabled-features.js +1 -1
  169. package/dist/types/common/config/state/configurable.d.ts.map +1 -1
  170. package/dist/types/common/config/state/init.d.ts.map +1 -1
  171. package/dist/types/common/config/state/runtime.d.ts.map +1 -1
  172. package/dist/types/common/constants/env.cdn.d.ts +18 -0
  173. package/dist/types/common/constants/env.cdn.d.ts.map +1 -0
  174. package/dist/types/common/constants/env.d.ts +13 -0
  175. package/dist/types/common/constants/env.d.ts.map +1 -0
  176. package/dist/types/common/constants/env.npm.d.ts +19 -0
  177. package/dist/types/common/constants/env.npm.d.ts.map +1 -0
  178. package/dist/types/common/context/shared-context.d.ts.map +1 -1
  179. package/dist/types/common/event-listener/event-listener-opts.d.ts +2 -2
  180. package/dist/types/common/event-listener/event-listener-opts.d.ts.map +1 -1
  181. package/dist/types/common/harvest/harvest-scheduler.d.ts +1 -0
  182. package/dist/types/common/harvest/harvest-scheduler.d.ts.map +1 -1
  183. package/dist/types/common/harvest/harvest.d.ts.map +1 -1
  184. package/dist/types/common/ids/id.d.ts +11 -1
  185. package/dist/types/common/ids/id.d.ts.map +1 -1
  186. package/dist/types/common/ids/unique-id.d.ts +24 -1
  187. package/dist/types/common/ids/unique-id.d.ts.map +1 -1
  188. package/dist/types/common/session/constants.d.ts +4 -0
  189. package/dist/types/common/session/constants.d.ts.map +1 -0
  190. package/dist/types/common/session/session-entity.d.ts +72 -0
  191. package/dist/types/common/session/session-entity.d.ts.map +1 -0
  192. package/dist/types/common/storage/first-party-cookies.d.ts +8 -0
  193. package/dist/types/common/storage/first-party-cookies.d.ts.map +1 -0
  194. package/dist/types/common/storage/local-memory.d.ts +8 -0
  195. package/dist/types/common/storage/local-memory.d.ts.map +1 -0
  196. package/dist/types/common/storage/local-storage.d.ts +6 -0
  197. package/dist/types/common/storage/local-storage.d.ts.map +1 -0
  198. package/dist/types/common/timer/interaction-timer.d.ts +11 -0
  199. package/dist/types/common/timer/interaction-timer.d.ts.map +1 -0
  200. package/dist/types/common/timer/timer.d.ts +12 -0
  201. package/dist/types/common/timer/timer.d.ts.map +1 -0
  202. package/dist/types/common/timing/nav-timing.d.ts +1 -2
  203. package/dist/types/common/timing/nav-timing.d.ts.map +1 -1
  204. package/dist/types/common/unload/eol.d.ts.map +1 -1
  205. package/dist/types/common/url/location.d.ts +4 -0
  206. package/dist/types/common/url/location.d.ts.map +1 -1
  207. package/dist/types/common/url/parse-url.d.ts.map +1 -1
  208. package/dist/types/common/url/protocol.d.ts +1 -6
  209. package/dist/types/common/url/protocol.d.ts.map +1 -1
  210. package/dist/types/common/util/data-size.d.ts +7 -1
  211. package/dist/types/common/util/data-size.d.ts.map +1 -1
  212. package/dist/types/common/util/global-scope.d.ts.map +1 -1
  213. package/dist/types/common/util/invoke.d.ts +35 -0
  214. package/dist/types/common/util/invoke.d.ts.map +1 -0
  215. package/dist/types/common/util/obfuscate.d.ts.map +1 -1
  216. package/dist/types/common/window/page-visibility.d.ts +1 -1
  217. package/dist/types/common/window/page-visibility.d.ts.map +1 -1
  218. package/dist/types/common/wrap/index.d.ts +1 -2
  219. package/dist/types/common/wrap/index.d.ts.map +1 -1
  220. package/dist/types/common/wrap/wrap-fetch.d.ts.map +1 -1
  221. package/dist/types/common/wrap/wrap-history.d.ts.map +1 -1
  222. package/dist/types/common/wrap/wrap-jsonp.d.ts.map +1 -1
  223. package/dist/types/common/wrap/wrap-mutation.d.ts.map +1 -1
  224. package/dist/types/common/wrap/wrap-promise.d.ts.map +1 -1
  225. package/dist/types/common/wrap/wrap-raf.d.ts.map +1 -1
  226. package/dist/types/common/wrap/wrap-timer.d.ts.map +1 -1
  227. package/dist/types/common/wrap/wrap-xhr.d.ts.map +1 -1
  228. package/dist/types/features/ajax/aggregate/index.d.ts +2 -2
  229. package/dist/types/features/ajax/aggregate/index.d.ts.map +1 -1
  230. package/dist/types/features/jserrors/aggregate/index.d.ts +2 -2
  231. package/dist/types/features/jserrors/aggregate/index.d.ts.map +1 -1
  232. package/dist/types/features/jserrors/instrument/index.d.ts.map +1 -1
  233. package/dist/types/features/metrics/aggregate/index.d.ts +2 -2
  234. package/dist/types/features/metrics/aggregate/index.d.ts.map +1 -1
  235. package/dist/types/features/metrics/instrument/index.d.ts +0 -1
  236. package/dist/types/features/metrics/instrument/index.d.ts.map +1 -1
  237. package/dist/types/features/metrics/instrument/workers-helper.d.ts.map +1 -1
  238. package/dist/types/features/page_action/aggregate/index.d.ts +2 -2
  239. package/dist/types/features/page_action/aggregate/index.d.ts.map +1 -1
  240. package/dist/types/features/page_view_event/aggregate/index.d.ts +2 -2
  241. package/dist/types/features/page_view_event/aggregate/index.d.ts.map +1 -1
  242. package/dist/types/features/page_view_timing/aggregate/index.d.ts +3 -4
  243. package/dist/types/features/page_view_timing/aggregate/index.d.ts.map +1 -1
  244. package/dist/types/features/session_trace/aggregate/index.d.ts +3 -3
  245. package/dist/types/features/session_trace/aggregate/index.d.ts.map +1 -1
  246. package/dist/types/features/session_trace/instrument/index.d.ts.map +1 -1
  247. package/dist/types/features/spa/aggregate/index.d.ts +2 -2
  248. package/dist/types/features/spa/aggregate/index.d.ts.map +1 -1
  249. package/dist/types/features/spa/instrument/index.d.ts.map +1 -1
  250. package/dist/types/features/utils/agent-session.d.ts +2 -0
  251. package/dist/types/features/utils/agent-session.d.ts.map +1 -0
  252. package/dist/types/features/utils/instrument-base.d.ts.map +1 -1
  253. package/dist/types/features/utils/lazy-loader.d.ts +2 -2
  254. package/dist/types/features/utils/lazy-loader.d.ts.map +1 -1
  255. package/dist/types/loaders/api/api.d.ts.map +1 -1
  256. package/dist/types/loaders/api/apiAsync.d.ts.map +1 -1
  257. package/dist/types/loaders/configure/configure.d.ts.map +1 -1
  258. package/package.json +12 -32
  259. package/src/common/browser-version/ios-version.js +4 -3
  260. package/src/common/config/state/configurable.js +26 -19
  261. package/src/common/config/state/init.js +7 -0
  262. package/src/common/config/state/runtime.js +7 -10
  263. package/src/common/constants/env.cdn.js +20 -0
  264. package/src/common/constants/env.js +23 -0
  265. package/src/common/constants/env.npm.js +21 -0
  266. package/src/common/context/shared-context.js +2 -1
  267. package/src/common/event-emitter/contextual-ee.test.js +310 -0
  268. package/src/common/event-emitter/handle.test.js +56 -0
  269. package/src/common/event-emitter/register-handler.test.js +61 -0
  270. package/src/common/event-listener/event-listener-opts.js +4 -4
  271. package/src/common/harvest/harvest-scheduler.js +12 -8
  272. package/src/common/harvest/harvest.js +5 -3
  273. package/src/common/ids/id.js +15 -6
  274. package/src/common/ids/id.test.js +92 -0
  275. package/src/common/ids/unique-id.js +77 -54
  276. package/src/common/ids/unique-id.test.js +58 -0
  277. package/src/common/session/constants.js +3 -0
  278. package/src/common/session/session-entity.js +271 -0
  279. package/src/common/session/session-entity.test.js +317 -0
  280. package/src/common/storage/first-party-cookies.js +31 -0
  281. package/src/common/storage/local-memory.js +30 -0
  282. package/src/common/storage/local-memory.test.js +19 -0
  283. package/src/common/storage/local-storage.js +28 -0
  284. package/src/common/storage/local-storage.test.js +17 -0
  285. package/src/common/timer/interaction-timer.js +75 -0
  286. package/src/common/timer/interaction-timer.test.js +167 -0
  287. package/src/common/timer/timer.js +31 -0
  288. package/src/common/timer/timer.test.js +100 -0
  289. package/src/common/timing/nav-timing.js +50 -30
  290. package/src/common/timing/nav-timing.test.js +161 -0
  291. package/src/common/unload/eol.js +2 -3
  292. package/src/common/url/clean-url.test.js +25 -0
  293. package/src/common/url/encode.test.js +80 -0
  294. package/src/common/url/location.js +4 -0
  295. package/src/common/url/location.test.js +15 -0
  296. package/src/common/url/parse-url.js +1 -2
  297. package/src/common/url/parse-url.test.js +110 -0
  298. package/src/common/url/protocol.js +3 -13
  299. package/src/common/url/protocol.test.js +18 -0
  300. package/src/common/util/data-size.js +6 -0
  301. package/src/common/util/data-size.test.js +50 -0
  302. package/src/common/util/global-scope.js +1 -2
  303. package/src/common/util/invoke.js +55 -0
  304. package/src/common/util/invoke.test.js +65 -0
  305. package/src/common/util/obfuscate.js +2 -6
  306. package/src/common/window/page-visibility.js +3 -3
  307. package/src/common/wrap/index.js +1 -2
  308. package/src/common/wrap/wrap-events.js +5 -5
  309. package/src/common/wrap/wrap-fetch.js +4 -3
  310. package/src/common/wrap/wrap-history.js +6 -3
  311. package/src/common/wrap/wrap-jsonp.js +5 -3
  312. package/src/common/wrap/wrap-mutation.js +6 -3
  313. package/src/common/wrap/wrap-promise.js +7 -6
  314. package/src/common/wrap/wrap-promise.test.js +140 -0
  315. package/src/common/wrap/wrap-raf.js +5 -3
  316. package/src/common/wrap/wrap-timer.js +6 -4
  317. package/src/common/wrap/wrap-xhr.js +4 -3
  318. package/src/features/ajax/aggregate/index.js +2 -2
  319. package/src/features/ajax/instrument/index.js +1 -1
  320. package/src/features/jserrors/aggregate/index.js +3 -3
  321. package/src/features/jserrors/instrument/index.js +4 -2
  322. package/src/features/metrics/aggregate/index.js +21 -7
  323. package/src/features/metrics/instrument/index.js +0 -30
  324. package/src/features/metrics/instrument/workers-helper.js +9 -6
  325. package/src/features/page_action/aggregate/index.js +2 -2
  326. package/src/features/page_view_event/aggregate/index.js +21 -9
  327. package/src/features/page_view_timing/aggregate/index.js +40 -29
  328. package/src/features/page_view_timing/long-tasks.js +10 -10
  329. package/src/features/session_trace/aggregate/index.js +17 -14
  330. package/src/features/session_trace/instrument/index.js +3 -2
  331. package/src/features/spa/aggregate/index.js +5 -5
  332. package/src/features/spa/instrument/index.js +4 -2
  333. package/src/features/utils/agent-session.js +68 -0
  334. package/src/features/utils/feature-base.js +1 -1
  335. package/src/features/utils/instrument-base.js +5 -2
  336. package/src/features/utils/lazy-loader.js +1 -1
  337. package/src/loaders/agent.js +1 -1
  338. package/src/loaders/api/api.js +3 -6
  339. package/src/loaders/api/apiAsync.js +2 -1
  340. package/src/loaders/configure/configure.js +2 -7
  341. package/dist/cjs/common/constants/environment-variables.js +0 -20
  342. package/dist/cjs/common/util/single.js +0 -23
  343. package/dist/cjs/common/window/session-storage.js +0 -87
  344. package/dist/cjs/common/wrap/wrap-console.js +0 -54
  345. package/dist/cjs/features/utils/aggregate-base.js +0 -13
  346. package/dist/esm/common/constants/environment-variables.js +0 -11
  347. package/dist/esm/common/util/single.js +0 -16
  348. package/dist/esm/common/window/session-storage.js +0 -77
  349. package/dist/esm/common/wrap/wrap-console.js +0 -46
  350. package/dist/esm/features/utils/aggregate-base.js +0 -6
  351. package/dist/types/common/constants/environment-variables.d.ts +0 -4
  352. package/dist/types/common/constants/environment-variables.d.ts.map +0 -1
  353. package/dist/types/common/util/single.d.ts +0 -2
  354. package/dist/types/common/util/single.d.ts.map +0 -1
  355. package/dist/types/common/window/session-storage.d.ts +0 -18
  356. package/dist/types/common/window/session-storage.d.ts.map +0 -1
  357. package/dist/types/common/wrap/wrap-console.d.ts +0 -16
  358. package/dist/types/common/wrap/wrap-console.d.ts.map +0 -1
  359. package/dist/types/features/utils/aggregate-base.d.ts +0 -4
  360. package/dist/types/features/utils/aggregate-base.d.ts.map +0 -1
  361. package/src/common/constants/environment-variables.js +0 -11
  362. package/src/common/util/single.js +0 -18
  363. package/src/common/window/session-storage.js +0 -75
  364. package/src/common/wrap/wrap-console.js +0 -47
  365. package/src/features/utils/aggregate-base.js +0 -7
@@ -1,4 +1,4 @@
1
- export class Aggregate extends AggregateBase {
1
+ export class Aggregate extends FeatureBase {
2
2
  static featureName: string;
3
3
  constructor(agentIdentifier: any, aggregator: any);
4
4
  state: {
@@ -20,6 +20,6 @@ export class Aggregate extends AggregateBase {
20
20
  };
21
21
  serializer: Serializer;
22
22
  }
23
- import { AggregateBase } from '../../utils/aggregate-base';
23
+ import { FeatureBase } from '../../utils/feature-base';
24
24
  import { Serializer } from './serializer';
25
25
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/spa/aggregate/index.js"],"names":[],"mappings":"AA2BA;IACE,2BAAiC;IACjC,mDAmsBC;IAhsBC;;;;;;;;;;;;;;;;MAgBC;IAED,uBAAsC;CA+qBzC;8BAltB6B,4BAA4B;2BAE/B,cAAc"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/spa/aggregate/index.js"],"names":[],"mappings":"AA2BA;IACE,2BAAiC;IACjC,mDAmsBC;IAhsBC;;;;;;;;;;;;;;;;MAgBC;IAED,uBAAsC;CA+qBzC;4BA5sB2B,0BAA0B;2BAL3B,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/spa/instrument/index.js"],"names":[],"mappings":"AAkBA;IACE,2BAAiC;IACjC,mEAoFC;IA9EO,2CAA0C;;CAqFnD;+BAvG8B,6BAA6B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/spa/instrument/index.js"],"names":[],"mappings":"AAkBA;IACE,2BAAiC;IACjC,mEAsFC;IA/EG,2CAA0C;;CAsF/C;+BAzG8B,6BAA6B"}
@@ -0,0 +1,2 @@
1
+ export function setupAgentSession(agentIdentifier: any): any;
2
+ //# sourceMappingURL=agent-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-session.d.ts","sourceRoot":"","sources":["../../../../src/features/utils/agent-session.js"],"names":[],"mappings":"AAWA,6DAwDC"}
@@ -1 +1 @@
1
- {"version":3,"file":"instrument-base.d.ts","sourceRoot":"","sources":["../../../../src/features/utils/instrument-base.js"],"names":[],"mappings":"AAYA;;;GAGG;AACH;IACE;;;;;;;;OAQG;IACH,6BAPW,MAAM,uCAEN,MAAM,8BAchB;IAPC,uBAA0B;IAC1B,cAAgB;IAEhB,8IAA8I;IAC9I,cADW,WAAW,SAAS,CACd;IAKnB;;;OAGG;IACH,yBAyBC;CACF;4BA5D2B,gBAAgB"}
1
+ {"version":3,"file":"instrument-base.d.ts","sourceRoot":"","sources":["../../../../src/features/utils/instrument-base.js"],"names":[],"mappings":"AAYA;;;GAGG;AACH;IACE;;;;;;;;OAQG;IACH,6BAPW,MAAM,uCAEN,MAAM,8BAchB;IAPC,uBAA0B;IAC1B,cAAgB;IAEhB,8IAA8I;IAC9I,cADW,WAAW,SAAS,CACd;IAKnB;;;OAGG;IACH,yBA4BC;CACF;4BA/D2B,gBAAgB"}
@@ -7,7 +7,7 @@
7
7
  * should be.
8
8
  * @param featureName Name of the feature to import such as ajax or session_trace
9
9
  * @param featurePart Name of the feature part to load; should be either instrument or aggregate
10
- * @returns {Promise<InstrumentBase|AggregateBase|null>}
10
+ * @returns {Promise<InstrumentBase|FeatureBase|null>}
11
11
  */
12
- export function lazyLoader(featureName: any, featurePart: any): Promise<InstrumentBase | AggregateBase | null>;
12
+ export function lazyLoader(featureName: any, featurePart: any): Promise<InstrumentBase | FeatureBase | null>;
13
13
  //# sourceMappingURL=lazy-loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lazy-loader.d.ts","sourceRoot":"","sources":["../../../../src/features/utils/lazy-loader.js"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,gEAFa,QAAQ,iCAA6B,IAAI,CAAC,CAyBtD"}
1
+ {"version":3,"file":"lazy-loader.d.ts","sourceRoot":"","sources":["../../../../src/features/utils/lazy-loader.js"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,gEAFa,QAAQ,+BAA2B,IAAI,CAAC,CAyBpD"}
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/loaders/api/api.js"],"names":[],"mappings":"AAmBA,2CAoBC;AAED;;;;;IA4DE;;;;OAIG;qBAFQ,MAAM;;;EAuElB;AA7JD,0CAA0C"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/loaders/api/api.js"],"names":[],"mappings":"AAkBA,2CAoBC;AAED;;;;;IA0DE;;;;OAIG;qBAFQ,MAAM;;;EAuElB;AA3JD,0CAA0C"}
@@ -1 +1 @@
1
- {"version":3,"file":"apiAsync.d.ts","sourceRoot":"","sources":["../../../../src/loaders/api/apiAsync.js"],"names":[],"mappings":"AAUA,mDAiFC"}
1
+ {"version":3,"file":"apiAsync.d.ts","sourceRoot":"","sources":["../../../../src/loaders/api/apiAsync.js"],"names":[],"mappings":"AAUA,mDAkFC"}
@@ -1 +1 @@
1
- {"version":3,"file":"configure.d.ts","sourceRoot":"","sources":["../../../../src/loaders/configure/configure.js"],"names":[],"mappings":"AAOA;;;;;;;;EA+BC"}
1
+ {"version":3,"file":"configure.d.ts","sourceRoot":"","sources":["../../../../src/loaders/configure/configure.js"],"names":[],"mappings":"AAMA;;;;;;;;EA2BC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@newrelic/browser-agent",
3
- "version": "0.1.230",
3
+ "version": "1.232.0",
4
4
  "private": false,
5
5
  "author": "New Relic Browser Agent Team <browser-agent@newrelic.com>",
6
6
  "description": "Tests for the New Relic JavaScript agent",
@@ -94,8 +94,8 @@
94
94
  "test:coverage": "jest --coverage",
95
95
  "build:all": "npm run cdn:build:local && npm run build:npm && npm run tools:test-builds",
96
96
  "build:npm": "npm run npm:build:esm && npm run npm:build:cjs && npm run npm:build:types && npm run npm:pack",
97
- "lint": "eslint -c .eslintrc.js --ext .js,.cjs,.mjs . --fix",
98
- "lint:fix": "eslint --ext .js -c .eslintrc . --fix",
97
+ "lint": "eslint -c .eslintrc.js --ext .js,.cjs,.mjs .",
98
+ "lint:fix": "npm run lint -- --fix",
99
99
  "test-all": "tools/jil/bin/cli.js -b *@*",
100
100
  "ci-build": "npm ci --cache ./.npm",
101
101
  "build-tar": "npm run ci-build && tar czf ./build/browser-agent.tar.gz --exclude=.git --exclude=.npm --exclude=build/browser-agent.tar.gz .",
@@ -103,12 +103,14 @@
103
103
  "cdn:build": "npm run cdn:build:prod",
104
104
  "cdn:build:extension": "PUBLISH=EXTENSION rm -rf ./build && npm run cdn:webpack && npm run cdn:cleanup",
105
105
  "cdn:build:local": "npm run cdn:webpack && npm run cdn:cleanup",
106
- "cdn:build:prod": "npm run cdn:fresh-build && PUBLISH=PROD npm run cdn:webpack && npm run cdn:cleanup",
106
+ "cdn:build:prod": "npm run cdn:fresh-build && PUBLISH=PROD npm run cdn:webpack && npm run cdn:cleanup && npm run cdn:clone",
107
107
  "cdn:build:dev": "npm run cdn:fresh-build && PUBLISH=DEV npm run cdn:webpack && npm run cdn:cleanup",
108
108
  "cdn:build:current": "npm run cdn:fresh-build && PUBLISH=CURRENT npm run cdn:webpack && npm run cdn:cleanup",
109
109
  "cdn:build:nr": "npm run cdn:fresh-build && PUBLISH=PROD SOURCEMAPS=false npm run cdn:webpack && npm run cdn:cleanup",
110
110
  "cdn:build:pr": "npm run cdn:fresh-build && PUBLISH=PR npm run cdn:webpack && npm run cdn:cleanup",
111
+ "cdn:build:experiment": "npm run cdn:fresh-build && PUBLISH=EXPERIMENT npm run cdn:webpack && npm run cdn:cleanup",
111
112
  "cdn:cleanup": "node ./tools/scripts/post-build-cleanup",
113
+ "cdn:clone": "node ./tools/scripts/clone",
112
114
  "cdn:fresh-build": "rm -rf ./build",
113
115
  "cdn:watch": "jung -r ./src -F '.*\\.test\\.js' --run -- npm run cdn:build:local",
114
116
  "cdn:watch:extension": "jung -r ./src -F '.*\\.test\\.js' --run -- npm run cdn:build:extension",
@@ -116,15 +118,14 @@
116
118
  "packages:bundle": "webpack -c tools/jil/webpack.modular.js",
117
119
  "test-server": "node ./tools/jil/bin/server",
118
120
  "sauce:connect": "node ./tools/wdio/bin/sauce",
119
- "sauce:get-browsers": "node ./tools/jil/util/sauce-browsers && node ./tools/wdio/util/sauce-browsers",
121
+ "sauce:get-browsers": "node ./tools/browsers-lists/sauce-browsers.mjs",
120
122
  "tools:test-builds": "npm --prefix ./tools/test-builds run build-all",
121
123
  "third-party-updates": "oss third-party manifest --includeOptDeps && oss third-party notices --includeOptDeps",
122
124
  "prepare": "husky install",
123
- "npm:build:esm": "npx babel --config-file ./babel.npm.esm.js --out-dir dist/esm --out-file-extension .js ./src",
124
- "npm:build:cjs": "npx babel --config-file ./babel.npm.cjs.js --out-dir dist/cjs --out-file-extension .js ./src",
125
+ "npm:build:esm": "npx babel --env-name npm-esm --out-dir dist/esm --out-file-extension .js ./src",
126
+ "npm:build:cjs": "npx babel --env-name npm-cjs --out-dir dist/cjs --out-file-extension .js ./src",
125
127
  "npm:build:types": "npx tsc -b",
126
- "npm:pack": "mkdir -p temp && export PKG_NAME=$(npm pack --pack-destination temp) && echo ./temp/$PKG_NAME",
127
- "sync:version": "node tools/scripts/sync-version.js"
128
+ "npm:pack": "mkdir -p temp && export PKG_NAME=$(npm pack --pack-destination temp) && echo ./temp/$PKG_NAME"
128
129
  },
129
130
  "config": {
130
131
  "unsafe-perm": true
@@ -143,13 +144,7 @@
143
144
  "@babel/cli": "^7.20.7",
144
145
  "@babel/core": "^7.20.12",
145
146
  "@babel/eslint-parser": "^7.19.1",
146
- "@babel/plugin-proposal-logical-assignment-operators": "^7.20.7",
147
- "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6",
148
- "@babel/plugin-proposal-optional-chaining": "^7.20.7",
149
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
150
147
  "@babel/plugin-syntax-import-assertions": "^7.20.0",
151
- "@babel/plugin-transform-modules-commonjs": "^7.18.2",
152
- "@babel/plugin-transform-strict-mode": "^7.18.6",
153
148
  "@babel/preset-env": "^7.20.2",
154
149
  "@faker-js/faker": "^7.6.0",
155
150
  "@fastify/cors": "^8.2.0",
@@ -167,45 +162,36 @@
167
162
  "aws-sdk": "^2.894.0",
168
163
  "babel-jest": "^29.4.1",
169
164
  "babel-loader": "^8.2.5",
170
- "babel-plugin-module-resolver": "^4.1.0",
171
- "babel-plugin-search-and-replace": "^1.1.1",
172
165
  "babel-plugin-transform-inline-environment-variables": "^0.4.4",
173
166
  "babelify": "^10.0.0",
174
167
  "browserify": "^13.3.0",
175
- "bundle-collapser": "^1.2.1",
176
168
  "chalk": "^5.1.2",
177
169
  "charm": "^1.0.1",
178
170
  "concat-stream": "^1.5.1",
179
- "cors": "^2.7.1",
180
- "create-polyfill-service-url": "^2.2.6",
181
171
  "deepmerge-ts": "^4.2.2",
182
172
  "defined": "^1.0.0",
183
173
  "dotenv-webpack": "^8.0.1",
184
174
  "eslint": "^8.34.0",
185
175
  "eslint-config-standard": "^17.0.0",
186
- "eslint-import-resolver-alias": "^1.1.2",
187
- "eslint-import-resolver-webpack": "^0.13.2",
188
176
  "eslint-plugin-import": "^2.27.5",
189
177
  "eslint-plugin-n": "^15.6.1",
190
178
  "eslint-plugin-promise": "^6.1.1",
179
+ "eslint-plugin-sonarjs": "^0.19.0",
191
180
  "fastify": "^4.13.0",
192
181
  "fastify-plugin": "^4.4.0",
193
182
  "filesize": "^10.0.6",
194
183
  "fs-extra": "^11.1.0",
195
184
  "function-bind": "^1.1.1",
196
185
  "glob": "^7.0.5",
186
+ "gzip-size": "^7.0.0",
197
187
  "html-webpack-plugin": "^5.5.0",
198
188
  "husky": "^8.0.0",
199
189
  "jest": "^28.1.1",
200
190
  "jest-environment-jsdom": "28.1.1",
201
191
  "jquery": "1.11.3",
202
- "jsonc-eslint-parser": "^2.1.0",
203
192
  "jung": "^2.1.0",
204
193
  "just-debounce": "^1.0.0",
205
- "ls-stream": "^1.0.0",
206
194
  "mime-types": "^2.1.11",
207
- "minimatch": "^3.0.3",
208
- "multiparty": "^4.1.2",
209
195
  "newrelic": "^9.7.5",
210
196
  "node-fetch": "^3.3.0",
211
197
  "npm-run-all": "^4.1.5",
@@ -217,20 +203,14 @@
217
203
  "saucelabs": "^7.2.0",
218
204
  "semver": "^5.3.0",
219
205
  "serialize-anything": "^1.2.3",
220
- "server-destroy": "^1.0.1",
221
206
  "sinon": "^1.17.5",
222
207
  "tap-parser": "^1.2.2",
223
208
  "tape": "^4.8.0",
224
209
  "through": "^2.3.8",
225
210
  "through2": "^2.0.1",
226
- "transpile-webpack-plugin": "^1.1.1",
227
211
  "typescript": "^5.0.3",
228
- "uglify-js": "^3.15.4",
229
212
  "uuid": "^9.0.0",
230
- "vinyl-buffer": "^1.0.1",
231
- "vinyl-source-stream": "^2.0.0",
232
213
  "wait-on": "^7.0.1",
233
- "watchify": "^3.7.0",
234
214
  "wd": "^1.11.2",
235
215
  "webpack": "^5.74.0",
236
216
  "webpack-bundle-analyzer": "^4.7.0",
@@ -4,7 +4,8 @@ export const isiOS = /(iPad|iPhone|iPod)/g.test(navigator.userAgent)
4
4
 
5
5
  // Shared Web Workers introduced in iOS 16.0+ and n/a in 15.6-
6
6
  export const iOS_below16 = isiOS && Boolean(typeof SharedWorker === 'undefined')
7
- /* ^ It was discovered in Safari 14 (https://bugs.webkit.org/show_bug.cgi?id=225305) that the buffered flag in PerformanceObserver
8
- did not work. This affects our onFCP metric in particular since web-vitals uses that flag to retrieve paint timing entries.
9
- This was fixed in v16+.
7
+ /*
8
+ ^ It was discovered in Safari 14 (https://bugs.webkit.org/show_bug.cgi?id=225305) that the buffered flag in PerformanceObserver
9
+ did not work. This affects our onFCP metric in particular since web-vitals uses that flag to retrieve paint timing entries.
10
+ This was fixed in v16+.
10
11
  */
@@ -3,24 +3,31 @@ import { warn } from '../../util/console'
3
3
 
4
4
  export class Configurable {
5
5
  constructor (obj, model) {
6
- try {
7
- if (!obj || typeof obj !== 'object') return warn('New setting a Configurable requires an object as input')
8
- if (!model || typeof model !== 'object') return warn('Setting a Configurable requires a model to set its initial properties')
9
- Object.assign(this, model)
10
- Object.entries(obj).forEach(([key, value]) => {
11
- const frozenAttrs = getFrozenAttributes(key)
12
- if (frozenAttrs.length && value && typeof value === 'object') {
13
- frozenAttrs.forEach(attr => {
14
- if (attr in value) {
15
- warn(`"${attr}" is a protected attribute and can not be changed in feature ${key}. It will have no effect.`)
16
- delete value[attr]
17
- }
18
- })
19
- }
20
- this[key] = value
21
- })
22
- } catch (err) {
23
- warn('An error occured while setting a Configurable', err)
24
- }
6
+ Object.assign(this, setValues(obj, model))
7
+ }
8
+ }
9
+
10
+ function setValues (obj, model) {
11
+ const state = {}
12
+ try {
13
+ if (!obj || typeof obj !== 'object') return warn('New setting a Configurable requires an object as input')
14
+ if (!model || typeof model !== 'object') return warn('Setting a Configurable requires a model to set its initial properties')
15
+ Object.assign(state, model)
16
+ Object.entries(obj).forEach(([key, value]) => {
17
+ if (!Object.keys(model).includes(key)) return
18
+ const frozenAttrs = getFrozenAttributes(key)
19
+ if (frozenAttrs.length && value && typeof value === 'object') {
20
+ frozenAttrs.forEach(attr => {
21
+ if (attr in value) {
22
+ warn(`"${attr}" is a protected attribute and can not be changed in feature ${key}. It will have no effect.`)
23
+ delete value[attr]
24
+ }
25
+ })
26
+ }
27
+ state[key] = value
28
+ })
29
+ return state
30
+ } catch (err) {
31
+ warn('An error occured while setting a Configurable', err)
25
32
  }
26
33
  }
@@ -1,4 +1,6 @@
1
1
 
2
+ import { DEFAULT_EXPIRES_MS, DEFAULT_INACTIVE_MS } from '../../session/constants'
3
+ import { globalScope } from '../../util/global-scope'
2
4
  import { gosNREUMInitializedAgents } from '../../window/nreum'
3
5
  import { Configurable } from './configurable'
4
6
 
@@ -13,6 +15,11 @@ const model = {
13
15
  cors_use_tracecontext_headers: undefined,
14
16
  allowed_origins: undefined
15
17
  },
18
+ session: {
19
+ domain: undefined, // used by first party cookies to set the top-level domain
20
+ expiresMs: DEFAULT_EXPIRES_MS,
21
+ inactiveMs: DEFAULT_INACTIVE_MS
22
+ },
16
23
  ssl: undefined,
17
24
  obfuscate: undefined,
18
25
  jserrors: { enabled: true, harvestTimeSeconds: 10 },
@@ -1,14 +1,13 @@
1
1
  import * as userAgent from '../../util/user-agent'
2
2
  import { Configurable } from './configurable'
3
3
  import { gosNREUMInitializedAgents } from '../../window/nreum'
4
- import { getCurrentSessionIdOrMakeNew } from '../../window/session-storage'
5
- import { getConfigurationValue } from '../config'
6
4
  import { globalScope } from '../../util/global-scope'
7
- import { BUILD_ENV, DIST_METHOD, VERSION } from '../../constants/environment-variables'
5
+ import { BUILD_ENV, DIST_METHOD, VERSION } from '../../constants/env'
8
6
 
9
- const model = agentId => { return {
7
+ const model = {
10
8
  buildEnv: BUILD_ENV,
11
- bytesSent: {},
9
+ bytesSent: {}, // Used for SM to capture body bytes sent per endpoint
10
+ queryBytesSent: {}, // Used for SM to capture query parameter bytes sent per endpoint
12
11
  customTransaction: undefined,
13
12
  disabled: false,
14
13
  distMethod: DIST_METHOD,
@@ -22,13 +21,11 @@ const model = agentId => { return {
22
21
  origin: '' + globalScope.location,
23
22
  ptid: undefined,
24
23
  releaseIds: {},
25
- sessionId: getConfigurationValue(agentId, 'privacy.cookies_enabled') == true
26
- ? getCurrentSessionIdOrMakeNew()
27
- : null, // if cookies (now session tracking) is turned off or can't get session ID, this is null
24
+ session: undefined,
28
25
  xhrWrappable: typeof globalScope.XMLHttpRequest?.prototype?.addEventListener === 'function',
29
26
  userAgent,
30
27
  version: VERSION
31
- } }
28
+ }
32
29
 
33
30
  const _cache = {}
34
31
 
@@ -40,6 +37,6 @@ export function getRuntime (id) {
40
37
 
41
38
  export function setRuntime (id, obj) {
42
39
  if (!id) throw new Error('All runtime objects require an agent identifier!')
43
- _cache[id] = new Configurable(obj, model(id))
40
+ _cache[id] = new Configurable(obj, model)
44
41
  gosNREUMInitializedAgents(id, _cache[id], 'runtime')
45
42
  }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @file This file exposes CDN build environment variables. These variables will
3
+ * be overridden with babel.
4
+ */
5
+
6
+ /**
7
+ * Exposes the version of the agent
8
+ */
9
+ export const VERSION = process.env.BUILD_VERSION
10
+
11
+ /**
12
+ * Exposes the build type of the agent
13
+ * Valid values are LOCAL, PROD, DEV
14
+ */
15
+ export const BUILD_ENV = process.env.BUILD_ENV
16
+
17
+ /**
18
+ * Exposes the distribution method of the agent
19
+ */
20
+ export const DIST_METHOD = 'CDN'
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @file This file exposes build time environment variables that will be included in the
3
+ * build output of the agent. This file specifically contains the normal environment variables
4
+ * for the NPM agent build and will be overridden by webpack/babel during the build based on the
5
+ * type of build being performed.
6
+ */
7
+
8
+ import pkgJSON from '../../../package.json'
9
+
10
+ /**
11
+ * Exposes the version of the agent
12
+ */
13
+ export const VERSION = pkgJSON.version
14
+
15
+ /**
16
+ * Exposes the build type of the agent
17
+ */
18
+ export const BUILD_ENV = 'NPM'
19
+
20
+ /**
21
+ * Exposes the distribution method of the agent
22
+ */
23
+ export const DIST_METHOD = 'NPM'
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @file This file exposes NPM build environment variables. These variables will
3
+ * be overridden with babel.
4
+ */
5
+
6
+ /**
7
+ * Exposes the version of the agent
8
+ */
9
+ export const VERSION = process.env.BUILD_VERSION
10
+
11
+ /**
12
+ * Exposes the build type of the agent
13
+ * Valid values are LOCAL, PROD, DEV
14
+ */
15
+ export const BUILD_ENV = 'NPM'
16
+
17
+ /**
18
+ * Exposes the distribution method of the agent
19
+ * Valid valuse are CDN, NPM
20
+ */
21
+ export const DIST_METHOD = 'NPM'
@@ -2,7 +2,8 @@
2
2
  import { warn } from '../util/console'
3
3
 
4
4
  const model = {
5
- agentIdentifier: ''
5
+ agentIdentifier: '',
6
+ ee: undefined
6
7
  }
7
8
 
8
9
  export class SharedContext {