@atlaskit/react-ufo 3.14.9 → 3.14.11

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 (23) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/cjs/interactions-performance-observer/index.js +23 -19
  3. package/dist/cjs/vc/vc-observer-new/index.js +1 -2
  4. package/dist/cjs/vc/vc-observer-new/metric-calculator/fy25_03/index.js +1 -1
  5. package/dist/es2019/interactions-performance-observer/index.js +24 -20
  6. package/dist/es2019/vc/vc-observer-new/index.js +1 -2
  7. package/dist/es2019/vc/vc-observer-new/metric-calculator/fy25_03/index.js +1 -1
  8. package/dist/esm/interactions-performance-observer/index.js +23 -19
  9. package/dist/esm/vc/vc-observer-new/index.js +1 -2
  10. package/dist/esm/vc/vc-observer-new/metric-calculator/fy25_03/index.js +1 -1
  11. package/dist/types/common/react-ufo-payload-schema.d.ts +2 -2
  12. package/dist/types/create-payload/common/utils/index.d.ts +2 -2
  13. package/dist/types/create-payload/critical-metrics-payload/index.d.ts +1 -1
  14. package/dist/types/create-payload/critical-metrics-payload/segment-metrics/create-segment-metrics.d.ts +2 -2
  15. package/dist/types/create-payload/critical-metrics-payload/types.d.ts +1 -1
  16. package/dist/types/interaction-context/index.d.ts +1 -1
  17. package/dist/types-ts4.5/common/react-ufo-payload-schema.d.ts +2 -2
  18. package/dist/types-ts4.5/create-payload/common/utils/index.d.ts +2 -2
  19. package/dist/types-ts4.5/create-payload/critical-metrics-payload/index.d.ts +1 -1
  20. package/dist/types-ts4.5/create-payload/critical-metrics-payload/segment-metrics/create-segment-metrics.d.ts +2 -2
  21. package/dist/types-ts4.5/create-payload/critical-metrics-payload/types.d.ts +1 -1
  22. package/dist/types-ts4.5/interaction-context/index.d.ts +1 -1
  23. package/package.json +1 -4
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # @atlaskit/ufo-interaction-ignore
2
2
 
3
+ ## 3.14.11
4
+
5
+ ### Patch Changes
6
+
7
+ - [#183338](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/183338)
8
+ [`890b79158a11b`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/890b79158a11b) -
9
+ FG cleanup - platform_ufo_vc_observer_new_ssr_abort_listener
10
+
11
+ ## 3.14.10
12
+
13
+ ### Patch Changes
14
+
15
+ - [#180425](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/180425)
16
+ [`b932e1047acb7`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/b932e1047acb7) -
17
+ Check if responsiveness exists before updating for press interactions
18
+
3
19
  ## 3.14.9
4
20
 
5
21
  ### Patch Changes
@@ -29,6 +29,12 @@ function getTestIdName(memoizedProps) {
29
29
  }
30
30
  return null;
31
31
  }
32
+ function getUFOSegmentName(componentName, memoizedProps) {
33
+ if (memoizedProps && memoizedProps['name']) {
34
+ return "UFOSegment[name=".concat(memoizedProps['name'], "]");
35
+ }
36
+ return componentName;
37
+ }
32
38
  function getReactComponentHierarchy(element) {
33
39
  var componentHierarchy = [];
34
40
  // Function to traverse up the fiber tree
@@ -40,11 +46,12 @@ function getReactComponentHierarchy(element) {
40
46
  var componentName = currentFiber.type.displayName || currentFiber.type.name;
41
47
  // checking when component name is bigger than the minimized name produced by react
42
48
  if (componentName && componentName.length > 2 && !componentName.includes('Listener') && !componentName.includes('Provider')) {
49
+ if (componentName === 'UFOSegment') {
50
+ componentHierarchy.push(getUFOSegmentName(componentName, currentFiber.memoizedProps));
51
+ break;
52
+ }
43
53
  componentHierarchy.push(componentName);
44
54
  }
45
- if (componentName === 'UFOSegment') {
46
- break;
47
- }
48
55
  }
49
56
  if (currentFiber.memoizedProps) {
50
57
  var dataIdInfo = getTestIdName(currentFiber.memoizedProps);
@@ -90,23 +97,20 @@ var getPerformanceObserver = exports.getPerformanceObserver = function getPerfor
90
97
  var setInteractionPerformanceEvent = exports.setInteractionPerformanceEvent = function setInteractionPerformanceEvent(entry) {
91
98
  var interaction = (0, _interactionMetrics.getActiveInteraction)();
92
99
  if ((interaction === null || interaction === void 0 ? void 0 : interaction.type) === 'press') {
93
- var _interaction$responsi, _interaction$responsi2;
94
- // if happens there is another event interaction that has started after
95
- // the initial one, we don't want to replace the values if they have already been set up
96
- interaction.responsiveness = _objectSpread(_objectSpread({}, interaction.responsiveness), {}, {
97
- experimentalInputToNextPaint: ((_interaction$responsi = interaction.responsiveness) === null || _interaction$responsi === void 0 ? void 0 : _interaction$responsi.experimentalInputToNextPaint) || entry.duration,
98
- inputDelay: ((_interaction$responsi2 = interaction.responsiveness) === null || _interaction$responsi2 === void 0 ? void 0 : _interaction$responsi2.inputDelay) || entry.processingStart - entry.startTime
99
- });
100
- // if the entry start time is lower than the one in the interaction
101
- // it means the interaction start time is not accurate, we assign
102
- // this value which will match the timestamp in the event
103
- interaction.start = Math.min(interaction.start, entry.startTime);
104
- if (interaction.ufoName === 'unknown' && (0, _platformFeatureFlags.fg)('platform_ufo_enable_unknown_interactions_elements')) {
105
- if (entry.target) {
106
- var componentHierarchy = getReactComponentHierarchy(entry.target);
107
- interaction.unknownElementHierarchy = componentHierarchy;
100
+ var _interaction$responsi;
101
+ if (!((_interaction$responsi = interaction.responsiveness) !== null && _interaction$responsi !== void 0 && _interaction$responsi.experimentalInputToNextPaint)) {
102
+ var _interaction$responsi2, _interaction$responsi3;
103
+ interaction.responsiveness = _objectSpread(_objectSpread({}, interaction.responsiveness), {}, {
104
+ experimentalInputToNextPaint: ((_interaction$responsi2 = interaction.responsiveness) === null || _interaction$responsi2 === void 0 ? void 0 : _interaction$responsi2.experimentalInputToNextPaint) || entry.duration,
105
+ inputDelay: ((_interaction$responsi3 = interaction.responsiveness) === null || _interaction$responsi3 === void 0 ? void 0 : _interaction$responsi3.inputDelay) || entry.processingStart - entry.startTime
106
+ });
107
+ if (interaction.ufoName === 'unknown' && (0, _platformFeatureFlags.fg)('platform_ufo_enable_unknown_interactions_elements')) {
108
+ if (entry.target) {
109
+ var componentHierarchy = getReactComponentHierarchy(entry.target);
110
+ interaction.unknownElementHierarchy = componentHierarchy;
111
+ }
112
+ interaction.unknownElementName = (0, _getUniqueElementName.default)(selectorConfig, entry.target);
108
113
  }
109
- interaction.unknownElementName = (0, _getUniqueElementName.default)(selectorConfig, entry.target);
110
114
  }
111
115
  }
112
116
  };
@@ -12,7 +12,6 @@ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
12
12
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
13
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
14
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
- var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
16
15
  var _ssrPlaceholders = require("../vc-observer/observers/ssr-placeholders");
17
16
  var _entriesTimeline = _interopRequireDefault(require("./entries-timeline"));
18
17
  var _getElementName2 = _interopRequireDefault(require("./get-element-name"));
@@ -133,7 +132,7 @@ var VCObserverNew = exports.default = /*#__PURE__*/function () {
133
132
  renderStop: -1
134
133
  };
135
134
  (_this$viewportObserve = this.viewportObserver) === null || _this$viewportObserve === void 0 || _this$viewportObserve.start();
136
- if ((_window = window) !== null && _window !== void 0 && _window.__SSR_ABORT_LISTENERS__ && (0, _platformFeatureFlags.fg)('platform_ufo_vc_observer_new_ssr_abort_listener')) {
135
+ if ((_window = window) !== null && _window !== void 0 && _window.__SSR_ABORT_LISTENERS__) {
137
136
  var abortListeners = window.__SSR_ABORT_LISTENERS__;
138
137
  var aborts = abortListeners.aborts;
139
138
  if (aborts && (0, _typeof2.default)(aborts) === 'object') {
@@ -34,7 +34,7 @@ var getConsideredEntryTypes = function getConsideredEntryTypes() {
34
34
  // TODO: AFO-3523
35
35
  // Those are the attributes we have found when testing the 'fy25.03' manually.
36
36
  // We still need to replace this hardcoded list with a proper automation
37
- var KNOWN_ATTRIBUTES_THAT_DOES_NOT_CAUSE_LAYOUT_SHIFTS = exports.KNOWN_ATTRIBUTES_THAT_DOES_NOT_CAUSE_LAYOUT_SHIFTS = ['data-drop-target-for-element', 'draggable'];
37
+ var KNOWN_ATTRIBUTES_THAT_DOES_NOT_CAUSE_LAYOUT_SHIFTS = exports.KNOWN_ATTRIBUTES_THAT_DOES_NOT_CAUSE_LAYOUT_SHIFTS = ['data-drop-target-for-element', 'data-drop-target-for-external', 'draggable'];
38
38
 
39
39
  // Common aria attributes that don't cause visual layout shifts
40
40
  var NON_VISUAL_ARIA_ATTRIBUTES = exports.NON_VISUAL_ARIA_ATTRIBUTES = ['aria-label', 'aria-labelledby', 'aria-describedby', 'aria-hidden', 'aria-expanded', 'aria-controls', 'aria-selected', 'aria-checked', 'aria-disabled', 'aria-required', 'aria-current', 'aria-haspopup', 'aria-pressed', 'aria-atomic', 'aria-live'];
@@ -16,6 +16,12 @@ function getTestIdName(memoizedProps) {
16
16
  }
17
17
  return null;
18
18
  }
19
+ function getUFOSegmentName(componentName, memoizedProps) {
20
+ if (memoizedProps && memoizedProps['name']) {
21
+ return `UFOSegment[name=${memoizedProps['name']}]`;
22
+ }
23
+ return componentName;
24
+ }
19
25
  function getReactComponentHierarchy(element) {
20
26
  const componentHierarchy = [];
21
27
  // Function to traverse up the fiber tree
@@ -27,11 +33,12 @@ function getReactComponentHierarchy(element) {
27
33
  const componentName = currentFiber.type.displayName || currentFiber.type.name;
28
34
  // checking when component name is bigger than the minimized name produced by react
29
35
  if (componentName && componentName.length > 2 && !componentName.includes('Listener') && !componentName.includes('Provider')) {
36
+ if (componentName === 'UFOSegment') {
37
+ componentHierarchy.push(getUFOSegmentName(componentName, currentFiber.memoizedProps));
38
+ break;
39
+ }
30
40
  componentHierarchy.push(componentName);
31
41
  }
32
- if (componentName === 'UFOSegment') {
33
- break;
34
- }
35
42
  }
36
43
  if (currentFiber.memoizedProps) {
37
44
  const dataIdInfo = getTestIdName(currentFiber.memoizedProps);
@@ -66,24 +73,21 @@ export const getPerformanceObserver = () => {
66
73
  export const setInteractionPerformanceEvent = entry => {
67
74
  const interaction = getActiveInteraction();
68
75
  if ((interaction === null || interaction === void 0 ? void 0 : interaction.type) === 'press') {
69
- var _interaction$responsi, _interaction$responsi2;
70
- // if happens there is another event interaction that has started after
71
- // the initial one, we don't want to replace the values if they have already been set up
72
- interaction.responsiveness = {
73
- ...interaction.responsiveness,
74
- experimentalInputToNextPaint: ((_interaction$responsi = interaction.responsiveness) === null || _interaction$responsi === void 0 ? void 0 : _interaction$responsi.experimentalInputToNextPaint) || entry.duration,
75
- inputDelay: ((_interaction$responsi2 = interaction.responsiveness) === null || _interaction$responsi2 === void 0 ? void 0 : _interaction$responsi2.inputDelay) || entry.processingStart - entry.startTime
76
- };
77
- // if the entry start time is lower than the one in the interaction
78
- // it means the interaction start time is not accurate, we assign
79
- // this value which will match the timestamp in the event
80
- interaction.start = Math.min(interaction.start, entry.startTime);
81
- if (interaction.ufoName === 'unknown' && fg('platform_ufo_enable_unknown_interactions_elements')) {
82
- if (entry.target) {
83
- const componentHierarchy = getReactComponentHierarchy(entry.target);
84
- interaction.unknownElementHierarchy = componentHierarchy;
76
+ var _interaction$responsi;
77
+ if (!((_interaction$responsi = interaction.responsiveness) !== null && _interaction$responsi !== void 0 && _interaction$responsi.experimentalInputToNextPaint)) {
78
+ var _interaction$responsi2, _interaction$responsi3;
79
+ interaction.responsiveness = {
80
+ ...interaction.responsiveness,
81
+ experimentalInputToNextPaint: ((_interaction$responsi2 = interaction.responsiveness) === null || _interaction$responsi2 === void 0 ? void 0 : _interaction$responsi2.experimentalInputToNextPaint) || entry.duration,
82
+ inputDelay: ((_interaction$responsi3 = interaction.responsiveness) === null || _interaction$responsi3 === void 0 ? void 0 : _interaction$responsi3.inputDelay) || entry.processingStart - entry.startTime
83
+ };
84
+ if (interaction.ufoName === 'unknown' && fg('platform_ufo_enable_unknown_interactions_elements')) {
85
+ if (entry.target) {
86
+ const componentHierarchy = getReactComponentHierarchy(entry.target);
87
+ interaction.unknownElementHierarchy = componentHierarchy;
88
+ }
89
+ interaction.unknownElementName = getElementName(selectorConfig, entry.target);
85
90
  }
86
- interaction.unknownElementName = getElementName(selectorConfig, entry.target);
87
91
  }
88
92
  }
89
93
  };
@@ -1,5 +1,4 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- import { fg } from '@atlaskit/platform-feature-flags';
3
2
  import { SSRPlaceholderHandlers } from '../vc-observer/observers/ssr-placeholders';
4
3
  import EntriesTimeline from './entries-timeline';
5
4
  import getElementName from './get-element-name';
@@ -112,7 +111,7 @@ export default class VCObserverNew {
112
111
  renderStop: -1
113
112
  };
114
113
  (_this$viewportObserve = this.viewportObserver) === null || _this$viewportObserve === void 0 ? void 0 : _this$viewportObserve.start();
115
- if ((_window = window) !== null && _window !== void 0 && _window.__SSR_ABORT_LISTENERS__ && fg('platform_ufo_vc_observer_new_ssr_abort_listener')) {
114
+ if ((_window = window) !== null && _window !== void 0 && _window.__SSR_ABORT_LISTENERS__) {
116
115
  const abortListeners = window.__SSR_ABORT_LISTENERS__;
117
116
  const aborts = abortListeners.aborts;
118
117
  if (aborts && typeof aborts === 'object') {
@@ -20,7 +20,7 @@ const getConsideredEntryTypes = () => {
20
20
  // TODO: AFO-3523
21
21
  // Those are the attributes we have found when testing the 'fy25.03' manually.
22
22
  // We still need to replace this hardcoded list with a proper automation
23
- export const KNOWN_ATTRIBUTES_THAT_DOES_NOT_CAUSE_LAYOUT_SHIFTS = ['data-drop-target-for-element', 'draggable'];
23
+ export const KNOWN_ATTRIBUTES_THAT_DOES_NOT_CAUSE_LAYOUT_SHIFTS = ['data-drop-target-for-element', 'data-drop-target-for-external', 'draggable'];
24
24
 
25
25
  // Common aria attributes that don't cause visual layout shifts
26
26
  export const NON_VISUAL_ARIA_ATTRIBUTES = ['aria-label', 'aria-labelledby', 'aria-describedby', 'aria-hidden', 'aria-expanded', 'aria-controls', 'aria-selected', 'aria-checked', 'aria-disabled', 'aria-required', 'aria-current', 'aria-haspopup', 'aria-pressed', 'aria-atomic', 'aria-live'];
@@ -22,6 +22,12 @@ function getTestIdName(memoizedProps) {
22
22
  }
23
23
  return null;
24
24
  }
25
+ function getUFOSegmentName(componentName, memoizedProps) {
26
+ if (memoizedProps && memoizedProps['name']) {
27
+ return "UFOSegment[name=".concat(memoizedProps['name'], "]");
28
+ }
29
+ return componentName;
30
+ }
25
31
  function getReactComponentHierarchy(element) {
26
32
  var componentHierarchy = [];
27
33
  // Function to traverse up the fiber tree
@@ -33,11 +39,12 @@ function getReactComponentHierarchy(element) {
33
39
  var componentName = currentFiber.type.displayName || currentFiber.type.name;
34
40
  // checking when component name is bigger than the minimized name produced by react
35
41
  if (componentName && componentName.length > 2 && !componentName.includes('Listener') && !componentName.includes('Provider')) {
42
+ if (componentName === 'UFOSegment') {
43
+ componentHierarchy.push(getUFOSegmentName(componentName, currentFiber.memoizedProps));
44
+ break;
45
+ }
36
46
  componentHierarchy.push(componentName);
37
47
  }
38
- if (componentName === 'UFOSegment') {
39
- break;
40
- }
41
48
  }
42
49
  if (currentFiber.memoizedProps) {
43
50
  var dataIdInfo = getTestIdName(currentFiber.memoizedProps);
@@ -83,23 +90,20 @@ export var getPerformanceObserver = function getPerformanceObserver() {
83
90
  export var setInteractionPerformanceEvent = function setInteractionPerformanceEvent(entry) {
84
91
  var interaction = getActiveInteraction();
85
92
  if ((interaction === null || interaction === void 0 ? void 0 : interaction.type) === 'press') {
86
- var _interaction$responsi, _interaction$responsi2;
87
- // if happens there is another event interaction that has started after
88
- // the initial one, we don't want to replace the values if they have already been set up
89
- interaction.responsiveness = _objectSpread(_objectSpread({}, interaction.responsiveness), {}, {
90
- experimentalInputToNextPaint: ((_interaction$responsi = interaction.responsiveness) === null || _interaction$responsi === void 0 ? void 0 : _interaction$responsi.experimentalInputToNextPaint) || entry.duration,
91
- inputDelay: ((_interaction$responsi2 = interaction.responsiveness) === null || _interaction$responsi2 === void 0 ? void 0 : _interaction$responsi2.inputDelay) || entry.processingStart - entry.startTime
92
- });
93
- // if the entry start time is lower than the one in the interaction
94
- // it means the interaction start time is not accurate, we assign
95
- // this value which will match the timestamp in the event
96
- interaction.start = Math.min(interaction.start, entry.startTime);
97
- if (interaction.ufoName === 'unknown' && fg('platform_ufo_enable_unknown_interactions_elements')) {
98
- if (entry.target) {
99
- var componentHierarchy = getReactComponentHierarchy(entry.target);
100
- interaction.unknownElementHierarchy = componentHierarchy;
93
+ var _interaction$responsi;
94
+ if (!((_interaction$responsi = interaction.responsiveness) !== null && _interaction$responsi !== void 0 && _interaction$responsi.experimentalInputToNextPaint)) {
95
+ var _interaction$responsi2, _interaction$responsi3;
96
+ interaction.responsiveness = _objectSpread(_objectSpread({}, interaction.responsiveness), {}, {
97
+ experimentalInputToNextPaint: ((_interaction$responsi2 = interaction.responsiveness) === null || _interaction$responsi2 === void 0 ? void 0 : _interaction$responsi2.experimentalInputToNextPaint) || entry.duration,
98
+ inputDelay: ((_interaction$responsi3 = interaction.responsiveness) === null || _interaction$responsi3 === void 0 ? void 0 : _interaction$responsi3.inputDelay) || entry.processingStart - entry.startTime
99
+ });
100
+ if (interaction.ufoName === 'unknown' && fg('platform_ufo_enable_unknown_interactions_elements')) {
101
+ if (entry.target) {
102
+ var componentHierarchy = getReactComponentHierarchy(entry.target);
103
+ interaction.unknownElementHierarchy = componentHierarchy;
104
+ }
105
+ interaction.unknownElementName = getElementName(selectorConfig, entry.target);
101
106
  }
102
- interaction.unknownElementName = getElementName(selectorConfig, entry.target);
103
107
  }
104
108
  }
105
109
  };
@@ -5,7 +5,6 @@ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
5
5
  import _createClass from "@babel/runtime/helpers/createClass";
6
6
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
7
7
  import _regeneratorRuntime from "@babel/runtime/regenerator";
8
- import { fg } from '@atlaskit/platform-feature-flags';
9
8
  import { SSRPlaceholderHandlers } from '../vc-observer/observers/ssr-placeholders';
10
9
  import EntriesTimeline from './entries-timeline';
11
10
  import _getElementName from './get-element-name';
@@ -126,7 +125,7 @@ var VCObserverNew = /*#__PURE__*/function () {
126
125
  renderStop: -1
127
126
  };
128
127
  (_this$viewportObserve = this.viewportObserver) === null || _this$viewportObserve === void 0 || _this$viewportObserve.start();
129
- if ((_window = window) !== null && _window !== void 0 && _window.__SSR_ABORT_LISTENERS__ && fg('platform_ufo_vc_observer_new_ssr_abort_listener')) {
128
+ if ((_window = window) !== null && _window !== void 0 && _window.__SSR_ABORT_LISTENERS__) {
130
129
  var abortListeners = window.__SSR_ABORT_LISTENERS__;
131
130
  var aborts = abortListeners.aborts;
132
131
  if (aborts && _typeof(aborts) === 'object') {
@@ -27,7 +27,7 @@ var getConsideredEntryTypes = function getConsideredEntryTypes() {
27
27
  // TODO: AFO-3523
28
28
  // Those are the attributes we have found when testing the 'fy25.03' manually.
29
29
  // We still need to replace this hardcoded list with a proper automation
30
- export var KNOWN_ATTRIBUTES_THAT_DOES_NOT_CAUSE_LAYOUT_SHIFTS = ['data-drop-target-for-element', 'draggable'];
30
+ export var KNOWN_ATTRIBUTES_THAT_DOES_NOT_CAUSE_LAYOUT_SHIFTS = ['data-drop-target-for-element', 'data-drop-target-for-external', 'draggable'];
31
31
 
32
32
  // Common aria attributes that don't cause visual layout shifts
33
33
  export var NON_VISUAL_ARIA_ATTRIBUTES = ['aria-label', 'aria-labelledby', 'aria-describedby', 'aria-hidden', 'aria-expanded', 'aria-controls', 'aria-selected', 'aria-checked', 'aria-disabled', 'aria-required', 'aria-current', 'aria-haspopup', 'aria-pressed', 'aria-atomic', 'aria-live'];
@@ -1,6 +1,6 @@
1
- import { createPayloads } from '../create-payload';
1
+ import { type createPayloads } from '../create-payload';
2
2
  import { type LabelStack } from '../interaction-context';
3
- import { VCObserver } from '../vc/vc-observer';
3
+ import { type VCObserver } from '../vc/vc-observer';
4
4
  import type { AbortReasonType, ApdexType, HoldActive, InteractionError, InteractionType, SegmentInfo } from './common/types';
5
5
  import type { RevisionPayload } from './vc/types';
6
6
  type ExtractPromise<T> = T extends Promise<infer U> ? U : never;
@@ -1,6 +1,6 @@
1
1
  import type { LabelStack, SegmentLabel } from '../../../interaction-context';
2
- import { UFOSegmentType } from '../../../segment/segment';
3
- import { getReactUFOPayloadVersion } from '../../utils/get-react-ufo-payload-version';
2
+ import { type UFOSegmentType } from '../../../segment/segment';
3
+ import { type getReactUFOPayloadVersion } from '../../utils/get-react-ufo-payload-version';
4
4
  export type SegmentItem = {
5
5
  n: string;
6
6
  c?: Record<string, SegmentItem>;
@@ -1,6 +1,6 @@
1
1
  import type { InteractionMetrics } from '../../common';
2
2
  import type { VCResult } from '../../common/vc/types';
3
- import { CriticalMetricsPayload } from './types';
3
+ import { type CriticalMetricsPayload } from './types';
4
4
  export declare function createCriticalMetricsPayloads(interactionId: string, interaction: InteractionMetrics, vcMetrics?: VCResult & {
5
5
  'metric:vc90'?: number | null;
6
6
  }): Promise<CriticalMetricsPayload[]>;
@@ -1,3 +1,3 @@
1
- import { InteractionMetrics } from '../../../common';
2
- import { CriticalMetricsPayload } from '../types';
1
+ import { type InteractionMetrics } from '../../../common';
2
+ import { type CriticalMetricsPayload } from '../types';
3
3
  export declare function createSegmentMetricsPayloads(interactionId: string, interaction: InteractionMetrics): Promise<CriticalMetricsPayload[]>;
@@ -1,5 +1,5 @@
1
1
  import type { InteractionType } from '../../common';
2
- import { NavigationMetrics } from '../utils/get-navigation-metrics';
2
+ import { type NavigationMetrics } from '../utils/get-navigation-metrics';
3
3
  export interface CriticalMetricsPayloadProperties {
4
4
  'event:hostname': string;
5
5
  'event:product': string;
@@ -1,6 +1,6 @@
1
1
  import { type Context } from 'react';
2
2
  import { type InteractionContextType } from '@atlaskit/interaction-context';
3
- import { UFOSegmentType } from '../segment/segment';
3
+ import { type UFOSegmentType } from '../segment/segment';
4
4
  export type CustomData = {
5
5
  [key: string]: null | string | number | boolean | undefined | CustomData;
6
6
  };
@@ -1,6 +1,6 @@
1
- import { createPayloads } from '../create-payload';
1
+ import { type createPayloads } from '../create-payload';
2
2
  import { type LabelStack } from '../interaction-context';
3
- import { VCObserver } from '../vc/vc-observer';
3
+ import { type VCObserver } from '../vc/vc-observer';
4
4
  import type { AbortReasonType, ApdexType, HoldActive, InteractionError, InteractionType, SegmentInfo } from './common/types';
5
5
  import type { RevisionPayload } from './vc/types';
6
6
  type ExtractPromise<T> = T extends Promise<infer U> ? U : never;
@@ -1,6 +1,6 @@
1
1
  import type { LabelStack, SegmentLabel } from '../../../interaction-context';
2
- import { UFOSegmentType } from '../../../segment/segment';
3
- import { getReactUFOPayloadVersion } from '../../utils/get-react-ufo-payload-version';
2
+ import { type UFOSegmentType } from '../../../segment/segment';
3
+ import { type getReactUFOPayloadVersion } from '../../utils/get-react-ufo-payload-version';
4
4
  export type SegmentItem = {
5
5
  n: string;
6
6
  c?: Record<string, SegmentItem>;
@@ -1,6 +1,6 @@
1
1
  import type { InteractionMetrics } from '../../common';
2
2
  import type { VCResult } from '../../common/vc/types';
3
- import { CriticalMetricsPayload } from './types';
3
+ import { type CriticalMetricsPayload } from './types';
4
4
  export declare function createCriticalMetricsPayloads(interactionId: string, interaction: InteractionMetrics, vcMetrics?: VCResult & {
5
5
  'metric:vc90'?: number | null;
6
6
  }): Promise<CriticalMetricsPayload[]>;
@@ -1,3 +1,3 @@
1
- import { InteractionMetrics } from '../../../common';
2
- import { CriticalMetricsPayload } from '../types';
1
+ import { type InteractionMetrics } from '../../../common';
2
+ import { type CriticalMetricsPayload } from '../types';
3
3
  export declare function createSegmentMetricsPayloads(interactionId: string, interaction: InteractionMetrics): Promise<CriticalMetricsPayload[]>;
@@ -1,5 +1,5 @@
1
1
  import type { InteractionType } from '../../common';
2
- import { NavigationMetrics } from '../utils/get-navigation-metrics';
2
+ import { type NavigationMetrics } from '../utils/get-navigation-metrics';
3
3
  export interface CriticalMetricsPayloadProperties {
4
4
  'event:hostname': string;
5
5
  'event:product': string;
@@ -1,6 +1,6 @@
1
1
  import { type Context } from 'react';
2
2
  import { type InteractionContextType } from '@atlaskit/interaction-context';
3
- import { UFOSegmentType } from '../segment/segment';
3
+ import { type UFOSegmentType } from '../segment/segment';
4
4
  export type CustomData = {
5
5
  [key: string]: null | string | number | boolean | undefined | CustomData;
6
6
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/react-ufo",
3
- "version": "3.14.9",
3
+ "version": "3.14.11",
4
4
  "description": "Parts of React UFO that are publicly available",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -160,9 +160,6 @@
160
160
  "platform_ufo_enable_events_observer": {
161
161
  "type": "boolean"
162
162
  },
163
- "platform_ufo_vc_observer_new_ssr_abort_listener": {
164
- "type": "boolean"
165
- },
166
163
  "platform_ufo_rev_ratios": {
167
164
  "type": "boolean"
168
165
  },