@newrelic/browser-agent 1.320.1 → 1.321.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 (169) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/cjs/common/config/runtime.js +3 -0
  3. package/dist/cjs/common/constants/env.cdn.js +1 -1
  4. package/dist/cjs/common/constants/env.npm.js +1 -1
  5. package/dist/cjs/common/dom/selector-path.js +1 -1
  6. package/dist/cjs/common/event-listener/event-listener-opts.js +1 -1
  7. package/dist/cjs/common/harvest/connector.js +202 -0
  8. package/dist/cjs/common/harvest/harvester.js +5 -8
  9. package/dist/cjs/common/harvest/send.js +8 -7
  10. package/dist/cjs/common/session/session-entity.js +1 -1
  11. package/dist/cjs/common/timer/interaction-timer.js +2 -2
  12. package/dist/cjs/common/unload/eol.js +3 -3
  13. package/dist/cjs/common/util/console.js +2 -1
  14. package/dist/cjs/common/util/feature-flags.js +2 -1
  15. package/dist/cjs/common/v2/constants.js +21 -0
  16. package/dist/cjs/common/v2/utils.js +25 -23
  17. package/dist/cjs/common/window/page-visibility.js +1 -1
  18. package/dist/cjs/common/wrap/wrap-events.js +4 -3
  19. package/dist/cjs/common/wrap/wrap-fetch.js +2 -2
  20. package/dist/cjs/common/wrap/wrap-function.js +1 -1
  21. package/dist/cjs/common/wrap/wrap-history.js +3 -2
  22. package/dist/cjs/common/wrap/wrap-xhr.js +2 -2
  23. package/dist/cjs/features/ajax/aggregate/index.js +1 -1
  24. package/dist/cjs/features/generic_events/aggregate/index.js +1 -1
  25. package/dist/cjs/features/generic_events/instrument/index.js +1 -1
  26. package/dist/cjs/features/jserrors/aggregate/index.js +5 -5
  27. package/dist/cjs/features/logging/instrument/index.js +1 -1
  28. package/dist/cjs/features/page_view_event/aggregate/index.js +2 -6
  29. package/dist/cjs/features/page_view_event/aggregate_v2/index.js +109 -0
  30. package/dist/cjs/features/page_view_event/instrument/index.js +6 -1
  31. package/dist/cjs/features/page_view_timing/aggregate/index.js +5 -1
  32. package/dist/cjs/features/session_replay/instrument/index.js +9 -0
  33. package/dist/cjs/features/session_replay/shared/recorder.js +2 -1
  34. package/dist/cjs/features/session_replay/shared/utils.js +3 -5
  35. package/dist/cjs/features/session_trace/instrument/index.js +3 -3
  36. package/dist/cjs/features/soft_navigations/instrument/index.js +2 -2
  37. package/dist/cjs/features/utils/aggregate-base.js +0 -12
  38. package/dist/cjs/features/utils/instrument-base.js +72 -29
  39. package/dist/cjs/loaders/agent.js +2 -1
  40. package/dist/cjs/loaders/api/consent.js +2 -2
  41. package/dist/cjs/loaders/api/register.js +26 -13
  42. package/dist/cjs/loaders/configure/configure.js +14 -0
  43. package/dist/cjs/loaders/features/features.js +2 -1
  44. package/dist/esm/common/config/runtime.js +3 -0
  45. package/dist/esm/common/constants/env.cdn.js +1 -1
  46. package/dist/esm/common/constants/env.npm.js +1 -1
  47. package/dist/esm/common/dom/selector-path.js +1 -1
  48. package/dist/esm/common/event-listener/event-listener-opts.js +1 -1
  49. package/dist/esm/common/harvest/connector.js +195 -0
  50. package/dist/esm/common/harvest/harvester.js +5 -8
  51. package/dist/esm/common/harvest/send.js +10 -9
  52. package/dist/esm/common/session/session-entity.js +1 -1
  53. package/dist/esm/common/timer/interaction-timer.js +2 -2
  54. package/dist/esm/common/unload/eol.js +3 -3
  55. package/dist/esm/common/util/console.js +2 -1
  56. package/dist/esm/common/util/feature-flags.js +2 -1
  57. package/dist/esm/common/v2/constants.js +15 -0
  58. package/dist/esm/common/v2/utils.js +24 -22
  59. package/dist/esm/common/window/page-visibility.js +1 -1
  60. package/dist/esm/common/wrap/wrap-events.js +4 -3
  61. package/dist/esm/common/wrap/wrap-fetch.js +2 -2
  62. package/dist/esm/common/wrap/wrap-function.js +1 -1
  63. package/dist/esm/common/wrap/wrap-history.js +3 -2
  64. package/dist/esm/common/wrap/wrap-xhr.js +2 -2
  65. package/dist/esm/features/ajax/aggregate/index.js +2 -2
  66. package/dist/esm/features/generic_events/aggregate/index.js +1 -1
  67. package/dist/esm/features/generic_events/instrument/index.js +1 -1
  68. package/dist/esm/features/jserrors/aggregate/index.js +6 -6
  69. package/dist/esm/features/logging/instrument/index.js +1 -1
  70. package/dist/esm/features/page_view_event/aggregate/index.js +2 -6
  71. package/dist/esm/features/page_view_event/aggregate_v2/index.js +100 -0
  72. package/dist/esm/features/page_view_event/instrument/index.js +6 -1
  73. package/dist/esm/features/page_view_timing/aggregate/index.js +5 -1
  74. package/dist/esm/features/session_replay/instrument/index.js +9 -0
  75. package/dist/esm/features/session_replay/shared/recorder.js +2 -1
  76. package/dist/esm/features/session_replay/shared/utils.js +3 -5
  77. package/dist/esm/features/session_trace/instrument/index.js +3 -3
  78. package/dist/esm/features/soft_navigations/instrument/index.js +2 -2
  79. package/dist/esm/features/utils/aggregate-base.js +0 -12
  80. package/dist/esm/features/utils/instrument-base.js +71 -28
  81. package/dist/esm/loaders/agent.js +2 -1
  82. package/dist/esm/loaders/api/consent.js +2 -2
  83. package/dist/esm/loaders/api/register.js +19 -6
  84. package/dist/esm/loaders/configure/configure.js +14 -0
  85. package/dist/esm/loaders/features/features.js +1 -0
  86. package/dist/tsconfig.tsbuildinfo +1 -1
  87. package/dist/types/common/config/runtime.d.ts.map +1 -1
  88. package/dist/types/common/event-listener/event-listener-opts.d.ts +1 -1
  89. package/dist/types/common/harvest/connector.d.ts +6 -0
  90. package/dist/types/common/harvest/connector.d.ts.map +1 -0
  91. package/dist/types/common/harvest/harvester.d.ts.map +1 -1
  92. package/dist/types/common/harvest/send.d.ts.map +1 -1
  93. package/dist/types/common/unload/eol.d.ts +1 -1
  94. package/dist/types/common/unload/eol.d.ts.map +1 -1
  95. package/dist/types/common/util/console.d.ts +2 -1
  96. package/dist/types/common/util/console.d.ts.map +1 -1
  97. package/dist/types/common/v2/constants.d.ts +9 -0
  98. package/dist/types/common/v2/constants.d.ts.map +1 -0
  99. package/dist/types/common/v2/utils.d.ts +36 -11
  100. package/dist/types/common/v2/utils.d.ts.map +1 -1
  101. package/dist/types/common/wrap/wrap-events.d.ts +2 -1
  102. package/dist/types/common/wrap/wrap-events.d.ts.map +1 -1
  103. package/dist/types/common/wrap/wrap-history.d.ts +2 -1
  104. package/dist/types/common/wrap/wrap-history.d.ts.map +1 -1
  105. package/dist/types/features/page_view_event/aggregate/index.d.ts.map +1 -1
  106. package/dist/types/features/page_view_event/aggregate_v2/index.d.ts +20 -0
  107. package/dist/types/features/page_view_event/aggregate_v2/index.d.ts.map +1 -0
  108. package/dist/types/features/page_view_event/instrument/index.d.ts.map +1 -1
  109. package/dist/types/features/page_view_timing/aggregate/index.d.ts.map +1 -1
  110. package/dist/types/features/session_replay/instrument/index.d.ts +1 -0
  111. package/dist/types/features/session_replay/instrument/index.d.ts.map +1 -1
  112. package/dist/types/features/session_replay/shared/recorder.d.ts.map +1 -1
  113. package/dist/types/features/session_replay/shared/utils.d.ts.map +1 -1
  114. package/dist/types/features/session_trace/instrument/index.d.ts.map +1 -1
  115. package/dist/types/features/utils/aggregate-base.d.ts +0 -5
  116. package/dist/types/features/utils/aggregate-base.d.ts.map +1 -1
  117. package/dist/types/features/utils/instrument-base.d.ts.map +1 -1
  118. package/dist/types/loaders/agent.d.ts.map +1 -1
  119. package/dist/types/loaders/api/register.d.ts.map +1 -1
  120. package/dist/types/loaders/configure/configure.d.ts.map +1 -1
  121. package/dist/types/loaders/features/features.d.ts +1 -0
  122. package/dist/types/loaders/features/features.d.ts.map +1 -1
  123. package/package.json +1 -1
  124. package/src/common/config/runtime.js +3 -0
  125. package/src/common/dom/selector-path.js +1 -1
  126. package/src/common/event-listener/event-listener-opts.js +1 -1
  127. package/src/common/harvest/connector.js +170 -0
  128. package/src/common/harvest/harvester.js +7 -9
  129. package/src/common/harvest/send.js +9 -7
  130. package/src/common/session/session-entity.js +1 -1
  131. package/src/common/timer/interaction-timer.js +2 -2
  132. package/src/common/unload/eol.js +3 -3
  133. package/src/common/util/console.js +2 -1
  134. package/src/common/util/feature-flags.js +1 -1
  135. package/src/common/v2/constants.js +15 -0
  136. package/src/common/v2/utils.js +23 -21
  137. package/src/common/window/page-visibility.js +1 -1
  138. package/src/common/wrap/wrap-events.js +4 -3
  139. package/src/common/wrap/wrap-fetch.js +2 -2
  140. package/src/common/wrap/wrap-function.js +1 -1
  141. package/src/common/wrap/wrap-history.js +3 -2
  142. package/src/common/wrap/wrap-xhr.js +2 -2
  143. package/src/features/ajax/aggregate/index.js +2 -2
  144. package/src/features/generic_events/aggregate/index.js +1 -1
  145. package/src/features/generic_events/instrument/index.js +1 -1
  146. package/src/features/jserrors/aggregate/index.js +6 -6
  147. package/src/features/logging/instrument/index.js +1 -1
  148. package/src/features/page_view_event/aggregate/index.js +2 -6
  149. package/src/features/page_view_event/aggregate_v2/index.js +97 -0
  150. package/src/features/page_view_event/instrument/index.js +6 -1
  151. package/src/features/page_view_timing/aggregate/index.js +5 -1
  152. package/src/features/session_replay/instrument/index.js +9 -0
  153. package/src/features/session_replay/shared/recorder.js +2 -1
  154. package/src/features/session_replay/shared/utils.js +3 -5
  155. package/src/features/session_trace/instrument/index.js +3 -3
  156. package/src/features/soft_navigations/instrument/index.js +2 -2
  157. package/src/features/utils/aggregate-base.js +0 -12
  158. package/src/features/utils/instrument-base.js +71 -25
  159. package/src/loaders/agent.js +2 -1
  160. package/src/loaders/api/consent.js +2 -2
  161. package/src/loaders/api/register.js +16 -6
  162. package/src/loaders/configure/configure.js +12 -0
  163. package/src/loaders/features/features.js +1 -0
  164. package/dist/cjs/common/url/location.js +0 -18
  165. package/dist/esm/common/url/location.js +0 -12
  166. package/dist/types/common/url/location.d.ts +0 -10
  167. package/dist/types/common/url/location.d.ts.map +0 -1
  168. package/src/common/url/__mocks__/location.js +0 -5
  169. package/src/common/url/location.js +0 -12
@@ -7,6 +7,7 @@ import { gosCDN } from '../../common/window/nreum'
7
7
  import { mergeInfo } from '../../common/config/info'
8
8
  import { mergeInit } from '../../common/config/init'
9
9
  import { mergeRuntime } from '../../common/config/runtime'
10
+ import { V2_TYPES } from '../../common/v2/constants'
10
11
  import { isWorkerScope, globalScope } from '../../common/constants/runtime'
11
12
  import { redefinePublicPath } from './public-path'
12
13
  import { ee } from '../../common/event-emitter/contextual-ee'
@@ -43,6 +44,17 @@ export function configure (agent, opts = {}, loaderType, forceDrain) {
43
44
  const updatedInit = agent.init
44
45
 
45
46
  agent.runtime ??= mergeRuntime(runtime)
47
+ agent.runtime.v2Target ??= {
48
+ type: V2_TYPES.BA,
49
+ instance: agent.agentIdentifier,
50
+ get id () { return agent.runtime.appMetadata?.agents?.[0]?.entityGuid },
51
+ get attributes () {
52
+ return {
53
+ 'entity.guid': this.id,
54
+ appId: agent.info.applicationID
55
+ }
56
+ }
57
+ }
46
58
 
47
59
  // Apply proxy settings whenever configure is called (supports late {init} setting)
48
60
  if (updatedInit.proxy.assets) {
@@ -8,6 +8,7 @@ export const EVENTS = 'events'
8
8
  export const JSERRORS = 'jserrors'
9
9
  export const BLOBS = 'browser/blobs'
10
10
  export const RUM = 'rum'
11
+ export const CONNECT = 'connect'
11
12
  export const LOGS = 'browser/logs'
12
13
 
13
14
  export const FEATURE_NAMES = {
@@ -1,18 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getLocation = getLocation;
7
- /**
8
- * Copyright 2020-2025 New Relic, Inc. All rights reserved.
9
- * SPDX-License-Identifier: Apache-2.0
10
- */
11
-
12
- /**
13
- * This method only exists to support testing in JIL and can be removed once tests are migrated to WDIO.
14
- * @returns global scope location
15
- */
16
- function getLocation() {
17
- return '' + location;
18
- }
@@ -1,12 +0,0 @@
1
- /**
2
- * Copyright 2020-2025 New Relic, Inc. All rights reserved.
3
- * SPDX-License-Identifier: Apache-2.0
4
- */
5
-
6
- /**
7
- * This method only exists to support testing in JIL and can be removed once tests are migrated to WDIO.
8
- * @returns global scope location
9
- */
10
- export function getLocation() {
11
- return '' + location;
12
- }
@@ -1,10 +0,0 @@
1
- /**
2
- * Copyright 2020-2025 New Relic, Inc. All rights reserved.
3
- * SPDX-License-Identifier: Apache-2.0
4
- */
5
- /**
6
- * This method only exists to support testing in JIL and can be removed once tests are migrated to WDIO.
7
- * @returns global scope location
8
- */
9
- export function getLocation(): string;
10
- //# sourceMappingURL=location.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"location.d.ts","sourceRoot":"","sources":["../../../../src/common/url/location.js"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,sCAEC"}
@@ -1,5 +0,0 @@
1
- /**
2
- * Copyright 2020-2025 New Relic, Inc. All rights reserved.
3
- * SPDX-License-Identifier: Apache-2.0
4
- */
5
- export const getLocation = jest.fn(() => location)
@@ -1,12 +0,0 @@
1
- /**
2
- * Copyright 2020-2025 New Relic, Inc. All rights reserved.
3
- * SPDX-License-Identifier: Apache-2.0
4
- */
5
-
6
- /**
7
- * This method only exists to support testing in JIL and can be removed once tests are migrated to WDIO.
8
- * @returns global scope location
9
- */
10
- export function getLocation () {
11
- return '' + location
12
- }