@newrelic/browser-agent 1.285.0 → 1.287.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 (180) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +6 -0
  3. package/dist/cjs/common/config/init-types.js +96 -0
  4. package/dist/cjs/common/config/init.js +9 -79
  5. package/dist/cjs/common/config/runtime.js +7 -6
  6. package/dist/cjs/common/constants/env.cdn.js +1 -1
  7. package/dist/cjs/common/constants/env.npm.js +1 -1
  8. package/dist/cjs/common/dom/selector-path.js +1 -1
  9. package/dist/cjs/common/harvest/harvester.js +3 -3
  10. package/dist/cjs/common/util/feature-flags.js +6 -6
  11. package/dist/cjs/common/util/target.js +34 -0
  12. package/dist/cjs/features/ajax/aggregate/index.js +2 -1
  13. package/dist/cjs/features/generic_events/aggregate/index.js +10 -6
  14. package/dist/cjs/features/jserrors/aggregate/index.js +44 -22
  15. package/dist/cjs/features/logging/aggregate/index.js +17 -11
  16. package/dist/cjs/features/logging/shared/utils.js +3 -2
  17. package/dist/cjs/features/metrics/aggregate/index.js +6 -4
  18. package/dist/cjs/features/page_view_event/aggregate/index.js +60 -11
  19. package/dist/cjs/features/page_view_event/instrument/index.js +4 -0
  20. package/dist/cjs/features/session_replay/aggregate/index.js +8 -6
  21. package/dist/cjs/features/session_replay/instrument/index.js +1 -1
  22. package/dist/cjs/features/session_replay/shared/recorder-events.js +4 -2
  23. package/dist/cjs/features/session_replay/shared/recorder.js +17 -11
  24. package/dist/cjs/features/session_trace/aggregate/trace/storage.js +4 -3
  25. package/dist/cjs/features/soft_navigations/aggregate/index.js +12 -2
  26. package/dist/cjs/features/spa/aggregate/index.js +3 -3
  27. package/dist/cjs/features/spa/aggregate/interaction.js +6 -9
  28. package/dist/cjs/features/utils/aggregate-base.js +51 -24
  29. package/dist/cjs/features/utils/entity-manager.js +47 -0
  30. package/dist/cjs/features/utils/event-store-manager.js +79 -54
  31. package/dist/cjs/features/utils/nr1-debugger.js +1 -1
  32. package/dist/cjs/interfaces/registered-entity.js +114 -0
  33. package/dist/cjs/loaders/agent-base.js +1 -1
  34. package/dist/cjs/loaders/agent.js +3 -1
  35. package/dist/cjs/loaders/api/api-methods.js +1 -1
  36. package/dist/cjs/loaders/api/api.js +97 -69
  37. package/dist/cjs/loaders/api/apiAsync.js +19 -22
  38. package/dist/cjs/loaders/api/register-api-types.js +35 -0
  39. package/dist/cjs/loaders/api/register-api.js +165 -0
  40. package/dist/cjs/loaders/configure/configure.js +12 -15
  41. package/dist/cjs/loaders/micro-agent-base.js +17 -1
  42. package/dist/cjs/loaders/micro-agent.js +4 -1
  43. package/dist/esm/common/config/init-types.js +92 -0
  44. package/dist/esm/common/config/init.js +9 -79
  45. package/dist/esm/common/config/runtime.js +7 -6
  46. package/dist/esm/common/constants/env.cdn.js +1 -1
  47. package/dist/esm/common/constants/env.npm.js +1 -1
  48. package/dist/esm/common/dom/selector-path.js +1 -1
  49. package/dist/esm/common/harvest/harvester.js +3 -3
  50. package/dist/esm/common/util/feature-flags.js +6 -6
  51. package/dist/esm/common/util/target.js +27 -0
  52. package/dist/esm/features/ajax/aggregate/index.js +2 -1
  53. package/dist/esm/features/generic_events/aggregate/index.js +10 -6
  54. package/dist/esm/features/jserrors/aggregate/index.js +44 -22
  55. package/dist/esm/features/logging/aggregate/index.js +17 -11
  56. package/dist/esm/features/logging/shared/utils.js +3 -2
  57. package/dist/esm/features/metrics/aggregate/index.js +6 -4
  58. package/dist/esm/features/page_view_event/aggregate/index.js +60 -11
  59. package/dist/esm/features/page_view_event/instrument/index.js +4 -0
  60. package/dist/esm/features/session_replay/aggregate/index.js +8 -6
  61. package/dist/esm/features/session_replay/instrument/index.js +1 -1
  62. package/dist/esm/features/session_replay/shared/recorder-events.js +4 -2
  63. package/dist/esm/features/session_replay/shared/recorder.js +17 -11
  64. package/dist/esm/features/session_trace/aggregate/trace/storage.js +4 -3
  65. package/dist/esm/features/soft_navigations/aggregate/index.js +12 -2
  66. package/dist/esm/features/spa/aggregate/index.js +3 -3
  67. package/dist/esm/features/spa/aggregate/interaction.js +6 -9
  68. package/dist/esm/features/utils/aggregate-base.js +51 -24
  69. package/dist/esm/features/utils/entity-manager.js +40 -0
  70. package/dist/esm/features/utils/event-store-manager.js +79 -54
  71. package/dist/esm/features/utils/nr1-debugger.js +1 -1
  72. package/dist/esm/interfaces/registered-entity.js +107 -0
  73. package/dist/esm/loaders/agent-base.js +1 -1
  74. package/dist/esm/loaders/agent.js +3 -1
  75. package/dist/esm/loaders/api/api-methods.js +1 -1
  76. package/dist/esm/loaders/api/api.js +95 -67
  77. package/dist/esm/loaders/api/apiAsync.js +14 -17
  78. package/dist/esm/loaders/api/register-api-types.js +33 -0
  79. package/dist/esm/loaders/api/register-api.js +159 -0
  80. package/dist/esm/loaders/configure/configure.js +13 -16
  81. package/dist/esm/loaders/micro-agent-base.js +17 -1
  82. package/dist/esm/loaders/micro-agent.js +4 -1
  83. package/dist/tsconfig.tsbuildinfo +1 -1
  84. package/dist/types/common/config/init-types.d.ts +275 -0
  85. package/dist/types/common/config/init-types.d.ts.map +1 -0
  86. package/dist/types/common/config/init.d.ts +1 -262
  87. package/dist/types/common/config/init.d.ts.map +1 -1
  88. package/dist/types/common/config/runtime.d.ts.map +1 -1
  89. package/dist/types/common/dom/selector-path.d.ts.map +1 -1
  90. package/dist/types/common/util/feature-flags.d.ts +1 -1
  91. package/dist/types/common/util/feature-flags.d.ts.map +1 -1
  92. package/dist/types/common/util/target.d.ts +18 -0
  93. package/dist/types/common/util/target.d.ts.map +1 -0
  94. package/dist/types/features/ajax/aggregate/index.d.ts +1 -1
  95. package/dist/types/features/ajax/aggregate/index.d.ts.map +1 -1
  96. package/dist/types/features/generic_events/aggregate/index.d.ts +2 -1
  97. package/dist/types/features/generic_events/aggregate/index.d.ts.map +1 -1
  98. package/dist/types/features/jserrors/aggregate/index.d.ts +9 -1
  99. package/dist/types/features/jserrors/aggregate/index.d.ts.map +1 -1
  100. package/dist/types/features/logging/aggregate/index.d.ts +3 -3
  101. package/dist/types/features/logging/aggregate/index.d.ts.map +1 -1
  102. package/dist/types/features/logging/shared/utils.d.ts +2 -1
  103. package/dist/types/features/logging/shared/utils.d.ts.map +1 -1
  104. package/dist/types/features/metrics/aggregate/index.d.ts +1 -0
  105. package/dist/types/features/metrics/aggregate/index.d.ts.map +1 -1
  106. package/dist/types/features/page_view_event/aggregate/index.d.ts +10 -2
  107. package/dist/types/features/page_view_event/aggregate/index.d.ts.map +1 -1
  108. package/dist/types/features/page_view_event/instrument/index.d.ts.map +1 -1
  109. package/dist/types/features/session_replay/aggregate/index.d.ts +2 -11
  110. package/dist/types/features/session_replay/aggregate/index.d.ts.map +1 -1
  111. package/dist/types/features/session_replay/shared/recorder-events.d.ts +1 -0
  112. package/dist/types/features/session_replay/shared/recorder-events.d.ts.map +1 -1
  113. package/dist/types/features/session_replay/shared/recorder.d.ts +4 -4
  114. package/dist/types/features/session_replay/shared/recorder.d.ts.map +1 -1
  115. package/dist/types/features/soft_navigations/aggregate/index.d.ts.map +1 -1
  116. package/dist/types/features/spa/aggregate/interaction.d.ts +3 -4
  117. package/dist/types/features/spa/aggregate/interaction.d.ts.map +1 -1
  118. package/dist/types/features/utils/aggregate-base.d.ts +22 -5
  119. package/dist/types/features/utils/aggregate-base.d.ts.map +1 -1
  120. package/dist/types/features/utils/entity-manager.d.ts +15 -0
  121. package/dist/types/features/utils/entity-manager.d.ts.map +1 -0
  122. package/dist/types/features/utils/event-store-manager.d.ts +48 -24
  123. package/dist/types/features/utils/event-store-manager.d.ts.map +1 -1
  124. package/dist/types/interfaces/registered-entity.d.ts +72 -0
  125. package/dist/types/interfaces/registered-entity.d.ts.map +1 -0
  126. package/dist/types/loaders/agent.d.ts +2 -1
  127. package/dist/types/loaders/agent.d.ts.map +1 -1
  128. package/dist/types/loaders/api/api.d.ts +1 -20
  129. package/dist/types/loaders/api/api.d.ts.map +1 -1
  130. package/dist/types/loaders/api/apiAsync.d.ts +1 -1
  131. package/dist/types/loaders/api/apiAsync.d.ts.map +1 -1
  132. package/dist/types/loaders/api/register-api-types.d.ts +56 -0
  133. package/dist/types/loaders/api/register-api-types.d.ts.map +1 -0
  134. package/dist/types/loaders/api/register-api.d.ts +14 -0
  135. package/dist/types/loaders/api/register-api.d.ts.map +1 -0
  136. package/dist/types/loaders/configure/configure.d.ts +1 -0
  137. package/dist/types/loaders/configure/configure.d.ts.map +1 -1
  138. package/dist/types/loaders/micro-agent-base.d.ts +17 -0
  139. package/dist/types/loaders/micro-agent-base.d.ts.map +1 -1
  140. package/dist/types/loaders/micro-agent.d.ts +2 -0
  141. package/dist/types/loaders/micro-agent.d.ts.map +1 -1
  142. package/package.json +10 -1
  143. package/src/common/config/init-types.js +92 -0
  144. package/src/common/config/init.js +9 -79
  145. package/src/common/config/runtime.js +7 -6
  146. package/src/common/dom/selector-path.js +1 -3
  147. package/src/common/harvest/harvester.js +3 -3
  148. package/src/common/util/feature-flags.js +6 -6
  149. package/src/common/util/target.js +27 -0
  150. package/src/features/ajax/aggregate/index.js +2 -1
  151. package/src/features/generic_events/aggregate/index.js +8 -6
  152. package/src/features/jserrors/aggregate/index.js +42 -20
  153. package/src/features/logging/aggregate/index.js +14 -10
  154. package/src/features/logging/shared/utils.js +3 -2
  155. package/src/features/metrics/aggregate/index.js +7 -5
  156. package/src/features/page_view_event/aggregate/index.js +50 -8
  157. package/src/features/page_view_event/instrument/index.js +4 -0
  158. package/src/features/session_replay/aggregate/index.js +6 -3
  159. package/src/features/session_replay/instrument/index.js +1 -1
  160. package/src/features/session_replay/shared/recorder-events.js +5 -2
  161. package/src/features/session_replay/shared/recorder.js +17 -11
  162. package/src/features/session_trace/aggregate/trace/storage.js +3 -3
  163. package/src/features/soft_navigations/aggregate/index.js +11 -2
  164. package/src/features/spa/aggregate/index.js +3 -3
  165. package/src/features/spa/aggregate/interaction.js +6 -9
  166. package/src/features/utils/aggregate-base.js +56 -24
  167. package/src/features/utils/entity-manager.js +45 -0
  168. package/src/features/utils/event-store-manager.js +72 -49
  169. package/src/features/utils/nr1-debugger.js +1 -1
  170. package/src/interfaces/registered-entity.js +107 -0
  171. package/src/loaders/agent-base.js +2 -2
  172. package/src/loaders/agent.js +4 -1
  173. package/src/loaders/api/api-methods.js +1 -1
  174. package/src/loaders/api/api.js +94 -62
  175. package/src/loaders/api/apiAsync.js +14 -18
  176. package/src/loaders/api/register-api-types.js +33 -0
  177. package/src/loaders/api/register-api.js +152 -0
  178. package/src/loaders/configure/configure.js +12 -12
  179. package/src/loaders/micro-agent-base.js +18 -2
  180. package/src/loaders/micro-agent.js +5 -1
@@ -21,6 +21,7 @@ const nonAutoFeatures = [
21
21
  ]
22
22
 
23
23
  /**
24
+ * @deprecated This feature has been deprecated and will be removed in a future release. A future product centralizing around a single agent instance will be released as a replacement, at which time this loader will be removed.
24
25
  * A minimal agent class designed to only respond to manual user input. As such, this class does not
25
26
  * automatically instrument. Instead, each MicroAgent instance will lazy load the required features and can support loading multiple instances on one page.
26
27
  * Out of the box, it can manually handle and report Page View, Page Action, and Error events.
@@ -36,7 +37,6 @@ export class MicroAgent extends MicroAgentBase {
36
37
  setNREUMInitializedAgent(this.agentIdentifier, this)
37
38
 
38
39
  configure(this, { ...options, runtime: { isolatedBacklog: true } }, options.loaderType || 'micro-agent')
39
- Object.assign(this, this.api) // the APIs should be available at the class level for micro-agent
40
40
 
41
41
  /**
42
42
  * Starts a set of agent features if not running in "autoStart" mode
@@ -91,4 +91,8 @@ export class MicroAgent extends MicroAgentBase {
91
91
  runtime: this.runtime
92
92
  }
93
93
  }
94
+
95
+ get api () {
96
+ return this
97
+ }
94
98
  }