@atlaskit/react-ufo 3.6.7 → 3.8.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 (50) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/cjs/config/index.js +0 -9
  3. package/dist/cjs/create-payload/index.js +6 -4
  4. package/dist/cjs/interaction-metrics/index.js +57 -17
  5. package/dist/cjs/interaction-metrics-init/index.js +11 -0
  6. package/dist/cjs/interactions-performance-observer/index.js +51 -0
  7. package/dist/cjs/segment/segment.js +0 -8
  8. package/dist/cjs/vc/vc-observer/observers/index.js +4 -18
  9. package/dist/cjs/vc/vc-observer/revisions/fy25_01.js +1 -1
  10. package/dist/es2019/config/index.js +0 -8
  11. package/dist/es2019/create-payload/index.js +5 -1
  12. package/dist/es2019/interaction-metrics/index.js +30 -0
  13. package/dist/es2019/interaction-metrics-init/index.js +11 -0
  14. package/dist/es2019/interactions-performance-observer/index.js +30 -0
  15. package/dist/es2019/segment/segment.js +0 -8
  16. package/dist/es2019/vc/vc-observer/observers/index.js +0 -15
  17. package/dist/es2019/vc/vc-observer/revisions/fy25_01.js +1 -1
  18. package/dist/esm/config/index.js +0 -8
  19. package/dist/esm/create-payload/index.js +6 -4
  20. package/dist/esm/interaction-metrics/index.js +55 -16
  21. package/dist/esm/interaction-metrics-init/index.js +11 -0
  22. package/dist/esm/interactions-performance-observer/index.js +44 -0
  23. package/dist/esm/segment/segment.js +0 -8
  24. package/dist/esm/vc/vc-observer/observers/index.js +4 -18
  25. package/dist/esm/vc/vc-observer/revisions/fy25_01.js +1 -1
  26. package/dist/types/common/common/types.d.ts +7 -0
  27. package/dist/types/common/vc/types.d.ts +1 -1
  28. package/dist/types/config/index.d.ts +0 -2
  29. package/dist/types/create-payload/index.d.ts +256 -0
  30. package/dist/types/interaction-metrics/index.d.ts +2 -0
  31. package/dist/types/interactions-performance-observer/index.d.ts +2 -0
  32. package/dist/types/vc/vc-observer/observers/index.d.ts +0 -1
  33. package/dist/types-ts4.5/common/common/types.d.ts +7 -0
  34. package/dist/types-ts4.5/common/vc/types.d.ts +1 -1
  35. package/dist/types-ts4.5/config/index.d.ts +0 -2
  36. package/dist/types-ts4.5/create-payload/index.d.ts +256 -0
  37. package/dist/types-ts4.5/interaction-metrics/index.d.ts +2 -0
  38. package/dist/types-ts4.5/interactions-performance-observer/index.d.ts +2 -0
  39. package/dist/types-ts4.5/vc/vc-observer/observers/index.d.ts +0 -1
  40. package/package.json +5 -5
  41. package/dist/cjs/vc/vc-observer/observers/editor-lnv/index.js +0 -186
  42. package/dist/cjs/vc/vc-observer/observers/editor-lnv/test-utils.js +0 -68
  43. package/dist/es2019/vc/vc-observer/observers/editor-lnv/index.js +0 -140
  44. package/dist/es2019/vc/vc-observer/observers/editor-lnv/test-utils.js +0 -41
  45. package/dist/esm/vc/vc-observer/observers/editor-lnv/index.js +0 -180
  46. package/dist/esm/vc/vc-observer/observers/editor-lnv/test-utils.js +0 -58
  47. package/dist/types/vc/vc-observer/observers/editor-lnv/index.d.ts +0 -24
  48. package/dist/types/vc/vc-observer/observers/editor-lnv/test-utils.d.ts +0 -35
  49. package/dist/types-ts4.5/vc/vc-observer/observers/editor-lnv/index.d.ts +0 -24
  50. package/dist/types-ts4.5/vc/vc-observer/observers/editor-lnv/test-utils.d.ts +0 -35
@@ -694,7 +694,7 @@ function createInteractionMetricsPayload(_x3, _x4, _x5) {
694
694
  function _createInteractionMetricsPayload() {
695
695
  _createInteractionMetricsPayload = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(interaction, interactionId, experimental) {
696
696
  var _window$location, _config$additionalPay;
697
- var interactionPayloadStart, config, end, start, ufoName, knownSegments, rate, type, abortReason, routeName, featureFlags, previousInteractionName, isPreviousInteractionAborted, abortedByInteractionName, pageVisibilityAtTTI, pageVisibilityAtTTAI, segments, segmentTree, isDetailedPayload, isPageLoad, calculatePageVisibilityFromTheStartOfPageLoad, moreAccuratePageVisibilityAtTTI, moreAccuratePageVisibilityAtTTAI, labelStack, getInitialPageLoadSSRMetrics, pageLoadInteractionMetrics, getDetailedInteractionMetrics, getPageLoadDetailedInteractionMetrics, newUFOName, resourceTimings, _yield$Promise$all, _yield$Promise$all2, vcMetrics, experimentalMetrics, paintMetrics, payload;
697
+ var interactionPayloadStart, config, end, start, ufoName, knownSegments, rate, type, abortReason, routeName, featureFlags, previousInteractionName, isPreviousInteractionAborted, abortedByInteractionName, responsiveness, pageVisibilityAtTTI, pageVisibilityAtTTAI, segments, segmentTree, isDetailedPayload, isPageLoad, calculatePageVisibilityFromTheStartOfPageLoad, moreAccuratePageVisibilityAtTTI, moreAccuratePageVisibilityAtTTAI, labelStack, getInitialPageLoadSSRMetrics, pageLoadInteractionMetrics, getDetailedInteractionMetrics, getPageLoadDetailedInteractionMetrics, newUFOName, resourceTimings, _yield$Promise$all, _yield$Promise$all2, vcMetrics, experimentalMetrics, paintMetrics, payload;
698
698
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
699
699
  while (1) switch (_context2.prev = _context2.next) {
700
700
  case 0:
@@ -706,7 +706,7 @@ function _createInteractionMetricsPayload() {
706
706
  }
707
707
  throw Error('UFO Configuration not provided');
708
708
  case 4:
709
- end = interaction.end, start = interaction.start, ufoName = interaction.ufoName, knownSegments = interaction.knownSegments, rate = interaction.rate, type = interaction.type, abortReason = interaction.abortReason, routeName = interaction.routeName, featureFlags = interaction.featureFlags, previousInteractionName = interaction.previousInteractionName, isPreviousInteractionAborted = interaction.isPreviousInteractionAborted, abortedByInteractionName = interaction.abortedByInteractionName;
709
+ end = interaction.end, start = interaction.start, ufoName = interaction.ufoName, knownSegments = interaction.knownSegments, rate = interaction.rate, type = interaction.type, abortReason = interaction.abortReason, routeName = interaction.routeName, featureFlags = interaction.featureFlags, previousInteractionName = interaction.previousInteractionName, isPreviousInteractionAborted = interaction.isPreviousInteractionAborted, abortedByInteractionName = interaction.abortedByInteractionName, responsiveness = interaction.responsiveness;
710
710
  pageVisibilityAtTTI = getPageVisibilityUpToTTI(interaction);
711
711
  pageVisibilityAtTTAI = getPageVisibilityUpToTTAI(interaction);
712
712
  segments = config.killswitchNestedSegments ? [] : knownSegments;
@@ -808,7 +808,7 @@ function _createInteractionMetricsPayload() {
808
808
  'experience:key': experimental ? 'custom.experimental-interaction-metrics' : 'custom.interaction-metrics',
809
809
  'experience:name': newUFOName
810
810
  }, getBrowserMetadata()), getSSRProperties(type)), getAssetsMetrics(interaction, pageLoadInteractionMetrics === null || pageLoadInteractionMetrics === void 0 ? void 0 : pageLoadInteractionMetrics.SSRDoneTime)), getPPSMetrics(interaction)), paintMetrics), getNavigationMetrics(type)), vcMetrics), experimentalMetrics), (_config$additionalPay = config.additionalPayloadData) === null || _config$additionalPay === void 0 ? void 0 : _config$additionalPay.call(config, interaction)), getTracingContextData(interaction)), getStylesheetMetrics()), getErrorCounts(interaction)), {}, {
811
- interactionMetrics: _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
811
+ interactionMetrics: _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
812
812
  namePrefix: config.namePrefix || '',
813
813
  segmentPrefix: config.segmentPrefix || '',
814
814
  interactionId: interactionId,
@@ -839,7 +839,9 @@ function _createInteractionMetricsPayload() {
839
839
  marks: optimizeMarks(interaction.marks, getReactUFOPayloadVersion(interaction.type)),
840
840
  customData: optimizeCustomData(interaction),
841
841
  reactProfilerTimings: optimizeReactProfilerTimings(interaction.reactProfilerTimings, start, getReactUFOPayloadVersion(interaction.type))
842
- }, labelStack), pageLoadInteractionMetrics), getDetailedInteractionMetrics(resourceTimings)), getPageLoadDetailedInteractionMetrics()), getBm3TrackerTimings(interaction)), {}, {
842
+ }, responsiveness ? {
843
+ responsiveness: responsiveness
844
+ } : {}), labelStack), pageLoadInteractionMetrics), getDetailedInteractionMetrics(resourceTimings)), getPageLoadDetailedInteractionMetrics()), getBm3TrackerTimings(interaction)), {}, {
843
845
  'metric:ttai': experimental ? regularTTAI || expTTAI : undefined,
844
846
  'metric:experimental:ttai': expTTAI
845
847
  }),
@@ -39,6 +39,45 @@ function isPerformanceTracingEnabled() {
39
39
  var _getConfig;
40
40
  return ((_getConfig = getConfig()) === null || _getConfig === void 0 ? void 0 : _getConfig.enableAdditionalPerformanceMarks) || window.__REACT_UFO_ENABLE_PERF_TRACING || process.env.NODE_ENV !== 'production';
41
41
  }
42
+ var performanceEventObserver;
43
+ export var getPerformanceObserver = function getPerformanceObserver() {
44
+ performanceEventObserver = performanceEventObserver || new PerformanceObserver(function (entries) {
45
+ var list = entries.getEntries();
46
+ var _iterator = _createForOfIteratorHelper(list),
47
+ _step;
48
+ try {
49
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
50
+ var entry = _step.value;
51
+ if (entry.name === 'click') {
52
+ setInteractionPerformanceEvent(entry);
53
+ }
54
+ }
55
+ } catch (err) {
56
+ _iterator.e(err);
57
+ } finally {
58
+ _iterator.f();
59
+ }
60
+ });
61
+ return performanceEventObserver;
62
+ };
63
+ export var setInteractionPerformanceEvent = function setInteractionPerformanceEvent(entry) {
64
+ var interaction = getActiveInteraction();
65
+ if ((interaction === null || interaction === void 0 ? void 0 : interaction.type) === 'press') {
66
+ var responsiveness = interaction.responsiveness || {};
67
+ // if happens there is another event interaction that has started after
68
+ // the initial one, we don't want to replace the values if they have already
69
+ // been set up
70
+ responsiveness.experimentalInputToNextPaint = responsiveness.experimentalInputToNextPaint || entry.duration;
71
+ responsiveness.inputDelay = responsiveness.experimentalInputToNextPaint || entry.processingStart - entry.startTime;
72
+ interaction.responsiveness = responsiveness;
73
+ // if the entry start time is lower than the one in the interaction
74
+ // it means the interaction start time is not accurate, we assign
75
+ // this value which will match the timestamp in the event
76
+ if (entry.startTime < interaction.start) {
77
+ interaction.start = entry.startTime;
78
+ }
79
+ }
80
+ };
42
81
  function labelStackToString(labelStack, name) {
43
82
  var _stack$map;
44
83
  var stack = _toConsumableArray(labelStack !== null && labelStack !== void 0 ? labelStack : []);
@@ -59,17 +98,17 @@ function labelStackToIdString(labelStack) {
59
98
  }
60
99
  function addSegmentObserver(observer) {
61
100
  segmentObservers.push(observer);
62
- var _iterator = _createForOfIteratorHelper(segmentCache.values()),
63
- _step;
101
+ var _iterator2 = _createForOfIteratorHelper(segmentCache.values()),
102
+ _step2;
64
103
  try {
65
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
66
- var segmentInfo = _step.value;
104
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
105
+ var segmentInfo = _step2.value;
67
106
  observer.onAdd(segmentInfo);
68
107
  }
69
108
  } catch (err) {
70
- _iterator.e(err);
109
+ _iterator2.e(err);
71
110
  } finally {
72
- _iterator.f();
111
+ _iterator2.f();
73
112
  }
74
113
  }
75
114
  function removeSegmentObserver(observer) {
@@ -486,24 +525,24 @@ function finishInteraction(id, data) {
486
525
  });
487
526
  try {
488
527
  // for Firefox 102 and older
489
- var _iterator2 = _createForOfIteratorHelper(profilerTimingMap.entries()),
490
- _step2;
528
+ var _iterator3 = _createForOfIteratorHelper(profilerTimingMap.entries()),
529
+ _step3;
491
530
  try {
492
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
493
- var _step2$value = _slicedToArray(_step2.value, 2),
494
- _step2$value$ = _step2$value[1],
495
- labelStack = _step2$value$.labelStack,
496
- start = _step2$value$.start,
497
- end = _step2$value$.end;
531
+ for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
532
+ var _step3$value = _slicedToArray(_step3.value, 2),
533
+ _step3$value$ = _step3$value[1],
534
+ labelStack = _step3$value$.labelStack,
535
+ start = _step3$value$.start,
536
+ end = _step3$value$.end;
498
537
  performance.measure("\uD83D\uDEF8 ".concat(labelStackToString(labelStack), " [segment_ttai]"), {
499
538
  start: start,
500
539
  end: end
501
540
  });
502
541
  }
503
542
  } catch (err) {
504
- _iterator2.e(err);
543
+ _iterator3.e(err);
505
544
  } finally {
506
- _iterator2.f();
545
+ _iterator3.f();
507
546
  }
508
547
  } catch (e) {
509
548
  // do nothing
@@ -5,6 +5,7 @@ import { setUFOConfig } from '../config';
5
5
  import { experimentalVC, sinkExperimentalHandler } from '../create-experimental-interaction-metrics-payload';
6
6
  import { setupHiddenTimingCapture } from '../hidden-timing';
7
7
  import { postInteractionLog, sinkInteractionHandler, sinkPostInteractionLogHandler } from '../interaction-metrics';
8
+ import { getPerformanceObserver } from '../interactions-performance-observer';
8
9
  import { getVCObserver } from '../vc';
9
10
  import scheduleIdleCallback from './schedule-idle-callback';
10
11
  var initialized = false;
@@ -98,6 +99,16 @@ export function init(analyticsWebClientAsync, config) {
98
99
  setupHiddenTimingCapture();
99
100
  startLighthouseObserver();
100
101
  initialized = true;
102
+ if (fg('platform_ufo_enable_events_observer')) {
103
+ if (typeof PerformanceObserver !== 'undefined') {
104
+ var observer = getPerformanceObserver();
105
+ observer.observe({
106
+ type: 'event',
107
+ buffered: true,
108
+ durationThreshold: 16
109
+ });
110
+ }
111
+ }
101
112
  Promise.all([analyticsWebClientAsync, import( /* webpackChunkName: "create-payloads" */'../create-payload'), import( /* webpackChunkName: "create-post-interaction-log-payload" */'../create-post-interaction-log-payload')]).then(function (_ref) {
102
113
  var _ref2 = _slicedToArray(_ref, 3),
103
114
  awc = _ref2[0],
@@ -0,0 +1,44 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
5
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
6
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
7
+ import { getActiveInteraction } from '../interaction-metrics';
8
+ var performanceEventObserver;
9
+ export var getPerformanceObserver = function getPerformanceObserver() {
10
+ performanceEventObserver = performanceEventObserver || new PerformanceObserver(function (entries) {
11
+ var list = entries.getEntries();
12
+ var _iterator = _createForOfIteratorHelper(list),
13
+ _step;
14
+ try {
15
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
16
+ var entry = _step.value;
17
+ if (entry.name === 'click') {
18
+ setInteractionPerformanceEvent(entry);
19
+ }
20
+ }
21
+ } catch (err) {
22
+ _iterator.e(err);
23
+ } finally {
24
+ _iterator.f();
25
+ }
26
+ });
27
+ return performanceEventObserver;
28
+ };
29
+ export var setInteractionPerformanceEvent = function setInteractionPerformanceEvent(entry) {
30
+ var interaction = getActiveInteraction();
31
+ if ((interaction === null || interaction === void 0 ? void 0 : interaction.type) === 'press') {
32
+ var _interaction$responsi, _interaction$responsi2;
33
+ // if happens there is another event interaction that has started after
34
+ // the initial one, we don't want to replace the values if they have already been set up
35
+ interaction.responsiveness = _objectSpread(_objectSpread({}, interaction.responsiveness), {}, {
36
+ experimentalInputToNextPaint: ((_interaction$responsi = interaction.responsiveness) === null || _interaction$responsi === void 0 ? void 0 : _interaction$responsi.experimentalInputToNextPaint) || entry.duration,
37
+ inputDelay: ((_interaction$responsi2 = interaction.responsiveness) === null || _interaction$responsi2 === void 0 ? void 0 : _interaction$responsi2.inputDelay) || entry.processingStart - entry.startTime
38
+ });
39
+ // if the entry start time is lower than the one in the interaction
40
+ // it means the interaction start time is not accurate, we assign
41
+ // this value which will match the timestamp in the event
42
+ interaction.start = Math.min(interaction.start, entry.startTime);
43
+ }
44
+ };
@@ -23,7 +23,6 @@ var AsyncSegmentHighlight = /*#__PURE__*/lazy(function () {
23
23
  };
24
24
  });
25
25
  });
26
- var noopIdMap = new Map();
27
26
 
28
27
  // KARL TODO: finish self profiling
29
28
  /** A portion of the page we apply measurement to */
@@ -35,19 +34,12 @@ export default function UFOSegment(_ref) {
35
34
  mode = _ref$mode === void 0 ? 'single' : _ref$mode;
36
35
  var parentContext = useContext(UFOInteractionContext);
37
36
  var segmentIdMap = useMemo(function () {
38
- if (!fg('platform_ufo_segment_list_mode')) {
39
- // just in case we cause rerender issues, use noop map
40
- return noopIdMap;
41
- }
42
37
  if (!(parentContext !== null && parentContext !== void 0 && parentContext.segmentIdMap)) {
43
38
  return new Map();
44
39
  }
45
40
  return parentContext.segmentIdMap;
46
41
  }, [parentContext]);
47
42
  var segmentId = useMemo(function () {
48
- if (!fg('platform_ufo_segment_list_mode')) {
49
- return generateId();
50
- }
51
43
  if (mode === 'single') {
52
44
  return generateId();
53
45
  }
@@ -4,9 +4,7 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
4
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
5
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
6
  import { fg } from '@atlaskit/platform-feature-flags';
7
- import { shouldHandleEditorLnv } from '../../../config';
8
7
  import { isContainedWithinMediaWrapper } from '../media-wrapper/vc-utils';
9
- import { EditorLnvHandler } from './editor-lnv';
10
8
  import isNonVisualStyleMutation from './non-visual-styles/is-non-visual-style-mutation';
11
9
  import { SSRPlaceholderHandlers } from './ssr-placeholders';
12
10
  var state = {
@@ -76,7 +74,6 @@ export var Observers = /*#__PURE__*/function () {
76
74
  this.intersectionObserver = this.getIntersectionObserver();
77
75
  this.mutationObserver = this.getMutationObserver();
78
76
  this.ssrPlaceholderHandler = new SSRPlaceholderHandlers();
79
- this.editorLnvHandler = new EditorLnvHandler();
80
77
  }
81
78
  return _createClass(Observers, [{
82
79
  key: "isBrowserSupported",
@@ -113,7 +110,6 @@ export var Observers = /*#__PURE__*/function () {
113
110
  this.callbacks = new Set();
114
111
  this.ssr.reactRootElement = null;
115
112
  this.ssrPlaceholderHandler.clear();
116
- this.editorLnvHandler.clear();
117
113
  }
118
114
  }, {
119
115
  key: "getTotalTime",
@@ -145,7 +141,6 @@ export var Observers = /*#__PURE__*/function () {
145
141
  if (!this.isBrowserSupported()) {
146
142
  return null;
147
143
  }
148
- var shouldHandleEditorLnvLocal = shouldHandleEditorLnv();
149
144
  return new MutationObserver(function (mutations) {
150
145
  _this2.measureStart();
151
146
  mutations.forEach(function (mutation) {
@@ -191,15 +186,6 @@ export var Observers = /*#__PURE__*/function () {
191
186
  });
192
187
  return;
193
188
  }
194
- if (shouldHandleEditorLnvLocal) {
195
- if (_this2.editorLnvHandler.shouldHandleAddedNode(node)) {
196
- _this2.editorLnvHandler.handleAddedNode(node).then(function (_ref) {
197
- var shouldIgnore = _ref.shouldIgnore;
198
- _this2.observeElement(node, mutation, 'html', shouldIgnore ? 'editor-lazy-node-view' : ignoreReason);
199
- });
200
- return;
201
- }
202
- }
203
189
  _this2.observeElement(node, mutation, 'html', ignoreReason);
204
190
  }
205
191
  if (node instanceof Text && node.parentElement != null) {
@@ -277,10 +263,10 @@ export var Observers = /*#__PURE__*/function () {
277
263
  }
278
264
  return new IntersectionObserver(function (entries) {
279
265
  _this3.measureStart();
280
- entries.forEach(function (_ref2) {
281
- var isIntersecting = _ref2.isIntersecting,
282
- ir = _ref2.intersectionRect,
283
- target = _ref2.target;
266
+ entries.forEach(function (_ref) {
267
+ var isIntersecting = _ref.isIntersecting,
268
+ ir = _ref.intersectionRect,
269
+ target = _ref.target;
284
270
  var data = _this3.observedMutations.get(target);
285
271
  _this3.observedMutations.delete(target);
286
272
  if (isIntersecting && ir.width > 0 && ir.height > 0) {
@@ -7,7 +7,7 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
7
7
  function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
8
8
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
9
9
  import { ViewportUpdateClassifier } from './ViewportUpdateClassifier';
10
- var legacyIgnoreReasons = ['image', 'ssr-hydration', 'editor-lazy-node-view'];
10
+ var legacyIgnoreReasons = ['image', 'ssr-hydration'];
11
11
  export var FY25_01Classifier = /*#__PURE__*/function (_ViewportUpdateClassi) {
12
12
  function FY25_01Classifier() {
13
13
  var _this;
@@ -82,6 +82,12 @@ export interface Redirect {
82
82
  fromInteractionName: string;
83
83
  time: number;
84
84
  }
85
+ export type ResponsivenessMetric = {
86
+ experimentalInputToNextPaint?: number;
87
+ inputDelay?: number;
88
+ visuallyComplete?: number;
89
+ totalBlockingTime?: number;
90
+ };
85
91
  export interface InteractionMetrics {
86
92
  id: string;
87
93
  start: number;
@@ -138,6 +144,7 @@ export interface InteractionMetrics {
138
144
  * ]
139
145
  * ```
140
146
  */
147
+ responsiveness?: ResponsivenessMetric;
141
148
  labelStack: LabelStack | null;
142
149
  routeName: string | null;
143
150
  featureFlags?: {
@@ -37,7 +37,7 @@ export type VCEntryType = {
37
37
  vc: number;
38
38
  elements: string[];
39
39
  };
40
- export type VCIgnoreReason = 'image' | 'ssr-hydration' | 'editor-lazy-node-view' | 'not-visible' | 'non-visual-style' | '';
40
+ export type VCIgnoreReason = 'image' | 'ssr-hydration' | 'not-visible' | 'non-visual-style' | '';
41
41
  export type ComponentsLogEntry = {
42
42
  type?: string;
43
43
  targetName: string;
@@ -90,7 +90,6 @@ export type Config = {
90
90
  readonly shouldCalculateLighthouseMetricsFromTTAI?: boolean;
91
91
  readonly timeWindowForLateMutationsInMilliseconds?: number;
92
92
  readonly manuallyTrackReactProfilerMounts?: boolean;
93
- readonly enableEditorLnvHandler?: boolean;
94
93
  /**
95
94
  * @private
96
95
  * @deprecated setting this will do nothing now
@@ -112,5 +111,4 @@ export declare function getRemoveInteractionsUFOPrefixes(): boolean;
112
111
  export declare function getUfoNameOverrides(): UFONameOverride | undefined;
113
112
  export declare function getDoNotAbortActivePressInteraction(): string[] | undefined;
114
113
  export declare function getDoNotAbortActivePressInteractionOnTransition(): string[] | undefined;
115
- export declare function shouldHandleEditorLnv(): boolean;
116
114
  export {};