@atlaskit/react-ufo 4.11.6 → 4.11.7
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.
- package/CHANGELOG.md +7 -0
- package/dist/cjs/create-payload/index.js +3 -4
- package/dist/cjs/segment/segment.js +12 -19
- package/dist/cjs/trace-interaction/internal/trace-ufo-interaction.js +11 -25
- package/dist/es2019/create-payload/index.js +1 -3
- package/dist/es2019/segment/segment.js +12 -19
- package/dist/es2019/trace-interaction/internal/trace-ufo-interaction.js +11 -25
- package/dist/esm/create-payload/index.js +3 -4
- package/dist/esm/segment/segment.js +12 -19
- package/dist/esm/trace-interaction/internal/trace-ufo-interaction.js +11 -25
- package/dist/types/create-payload/index.d.ts +768 -768
- package/dist/types-ts4.5/create-payload/index.d.ts +768 -768
- package/package.json +1 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# @atlaskit/ufo-interaction-ignore
|
|
2
2
|
|
|
3
|
+
## 4.11.7
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`273616f4575b7`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/273616f4575b7) -
|
|
8
|
+
FG cleanup - platform_ufo_enable_minor_interactions
|
|
9
|
+
|
|
3
10
|
## 4.11.6
|
|
4
11
|
|
|
5
12
|
### Patch Changes
|
|
@@ -557,7 +557,7 @@ function _createInteractionMetricsPayload() {
|
|
|
557
557
|
'ufo:multipayload': true,
|
|
558
558
|
'ufo:criticalPayloadCount': criticalPayloadCount
|
|
559
559
|
} : {}), (0, _getBrowserMetadata.getBrowserMetadataToLegacyFormat)()), getSSRProperties(type)), getAssetsMetrics(interaction, pageLoadInteractionMetrics === null || pageLoadInteractionMetrics === void 0 ? void 0 : pageLoadInteractionMetrics.SSRDoneTime)), getPPSMetrics(interaction)), paintMetrics), (0, _getNavigationMetrics.getNavigationMetricsToLegacyFormat)(type)), finalVCMetrics), experimentalMetrics), (_config$additionalPay = config.additionalPayloadData) === null || _config$additionalPay === void 0 ? void 0 : _config$additionalPay.call(config, interaction)), getTracingContextData(interaction)), getStylesheetMetrics()), getErrorCounts(interaction)), getReactHydrationStats()), {}, {
|
|
560
|
-
interactionMetrics: _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(
|
|
560
|
+
interactionMetrics: _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
561
561
|
namePrefix: config.namePrefix || '',
|
|
562
562
|
segmentPrefix: config.segmentPrefix || '',
|
|
563
563
|
interactionId: interactionId,
|
|
@@ -581,7 +581,8 @@ function _createInteractionMetricsPayload() {
|
|
|
581
581
|
segments: (0, _getReactUfoPayloadVersion.getReactUFOPayloadVersion)(interaction.type) === '2.0.0' ? segmentTree : (0, _utils.getOldSegmentsLabelStack)(segments, interaction.type),
|
|
582
582
|
marks: (0, _optimizeMarks.optimizeMarks)(interaction.marks, (0, _getReactUfoPayloadVersion.getReactUFOPayloadVersion)(interaction.type)),
|
|
583
583
|
customData: optimizeCustomData(interaction),
|
|
584
|
-
reactProfilerTimings: (0, _optimizeReactProfilerTimings.optimizeReactProfilerTimings)(interaction.reactProfilerTimings, start, (0, _getReactUfoPayloadVersion.getReactUFOPayloadVersion)(interaction.type))
|
|
584
|
+
reactProfilerTimings: (0, _optimizeReactProfilerTimings.optimizeReactProfilerTimings)(interaction.reactProfilerTimings, start, (0, _getReactUfoPayloadVersion.getReactUFOPayloadVersion)(interaction.type)),
|
|
585
|
+
minorInteractions: interaction.minorInteractions
|
|
585
586
|
}, responsiveness ? {
|
|
586
587
|
responsiveness: responsiveness
|
|
587
588
|
} : {}), labelStack), pageLoadInteractionMetrics), getDetailedInteractionMetrics(resourceTimings)), getPageLoadDetailedInteractionMetrics()), getBm3TrackerTimings(interaction)), {}, {
|
|
@@ -591,8 +592,6 @@ function _createInteractionMetricsPayload() {
|
|
|
591
592
|
unknownElementName: unknownElementName
|
|
592
593
|
} : {}), unknownElementHierarchy ? {
|
|
593
594
|
unknownElementHierarchy: unknownElementHierarchy
|
|
594
|
-
} : {}), (0, _platformFeatureFlags.fg)('platform_ufo_enable_minor_interactions') ? {
|
|
595
|
-
minorInteractions: interaction.minorInteractions
|
|
596
595
|
} : {}),
|
|
597
596
|
'ufo:payloadTime': (0, _roundNumber.roundEpsilon)(performance.now() - interactionPayloadStart)
|
|
598
597
|
})
|
|
@@ -11,7 +11,6 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
|
|
|
11
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
12
|
var _scheduler = require("scheduler");
|
|
13
13
|
var _uuid = require("uuid");
|
|
14
|
-
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
15
14
|
var _coinflip = _interopRequireDefault(require("../coinflip"));
|
|
16
15
|
var _config = require("../config");
|
|
17
16
|
var _experienceTraceIdContext = require("../experience-trace-id-context");
|
|
@@ -160,26 +159,20 @@ function UFOSegment(_ref) {
|
|
|
160
159
|
this._internalHoldByID(labelStack, id, name, true);
|
|
161
160
|
},
|
|
162
161
|
tracePress: function tracePress() {
|
|
162
|
+
var _getDoNotAbortActiveP, _getMinorInteractions;
|
|
163
163
|
var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'unknown';
|
|
164
164
|
var timestamp = arguments.length > 1 ? arguments[1] : undefined;
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
var
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
} else if (interactionId.current != null) {
|
|
177
|
-
(0, _interactionMetrics.abortByNewInteraction)(interactionId.current, name);
|
|
178
|
-
}
|
|
179
|
-
} else {
|
|
180
|
-
if (interactionId.current != null) {
|
|
181
|
-
(0, _interactionMetrics.abortByNewInteraction)(interactionId.current, name);
|
|
182
|
-
}
|
|
165
|
+
var minorInteractions = [].concat((0, _toConsumableArray2.default)((_getDoNotAbortActiveP = (0, _config.getDoNotAbortActivePressInteraction)()) !== null && _getDoNotAbortActiveP !== void 0 ? _getDoNotAbortActiveP : []), (0, _toConsumableArray2.default)((_getMinorInteractions = (0, _config.getMinorInteractions)()) !== null && _getMinorInteractions !== void 0 ? _getMinorInteractions : []));
|
|
166
|
+
if (minorInteractions.includes(name)) {
|
|
167
|
+
var _activeInteraction$mi;
|
|
168
|
+
var activeInteraction = (0, _interactionMetrics.getActiveInteraction)();
|
|
169
|
+
activeInteraction === null || activeInteraction === void 0 || (_activeInteraction$mi = activeInteraction.minorInteractions) === null || _activeInteraction$mi === void 0 || _activeInteraction$mi.push({
|
|
170
|
+
name: name,
|
|
171
|
+
startTime: timestamp !== null && timestamp !== void 0 ? timestamp : performance.now()
|
|
172
|
+
});
|
|
173
|
+
return;
|
|
174
|
+
} else if (interactionId.current != null) {
|
|
175
|
+
(0, _interactionMetrics.abortByNewInteraction)(interactionId.current, name);
|
|
183
176
|
}
|
|
184
177
|
var rate = (0, _config.getInteractionRate)(name, 'press');
|
|
185
178
|
if ((0, _coinflip.default)(rate)) {
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
var _uuid = require("uuid");
|
|
9
|
-
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
10
9
|
var _coinflip = _interopRequireDefault(require("../../coinflip"));
|
|
11
10
|
var _config = require("../../config");
|
|
12
11
|
var _experienceTraceIdContext = require("../../experience-trace-id-context");
|
|
@@ -14,33 +13,20 @@ var _interactionIdContext = require("../../interaction-id-context");
|
|
|
14
13
|
var _interactionMetrics = require("../../interaction-metrics");
|
|
15
14
|
var _routeNameContext = _interopRequireDefault(require("../../route-name-context"));
|
|
16
15
|
function traceUFOInteraction(name, interactionType, startTime) {
|
|
16
|
+
var _getMinorInteractions;
|
|
17
17
|
var rate = (0, _config.getInteractionRate)(name, interactionType);
|
|
18
18
|
var pressInteractionsList = (0, _config.getDoNotAbortActivePressInteraction)();
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
var
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
});
|
|
29
|
-
return;
|
|
30
|
-
} else {
|
|
31
|
-
(0, _interactionMetrics.abortAll)('new_interaction', name);
|
|
32
|
-
}
|
|
19
|
+
var minorInteractions = (pressInteractionsList !== null && pressInteractionsList !== void 0 ? pressInteractionsList : []).concat((_getMinorInteractions = (0, _config.getMinorInteractions)()) !== null && _getMinorInteractions !== void 0 ? _getMinorInteractions : []);
|
|
20
|
+
if (minorInteractions.includes(name)) {
|
|
21
|
+
var _activeInteraction$mi;
|
|
22
|
+
var activeInteraction = (0, _interactionMetrics.getActiveInteraction)();
|
|
23
|
+
activeInteraction === null || activeInteraction === void 0 || (_activeInteraction$mi = activeInteraction.minorInteractions) === null || _activeInteraction$mi === void 0 || _activeInteraction$mi.push({
|
|
24
|
+
name: name,
|
|
25
|
+
startTime: startTime !== null && startTime !== void 0 ? startTime : performance.now()
|
|
26
|
+
});
|
|
27
|
+
return;
|
|
33
28
|
} else {
|
|
34
|
-
|
|
35
|
-
var interaction = (0, _interactionMetrics.getActiveInteraction)();
|
|
36
|
-
if ((interaction === null || interaction === void 0 ? void 0 : interaction.ufoName) !== 'unknown' && (interaction === null || interaction === void 0 ? void 0 : interaction.type) === 'press') {
|
|
37
|
-
return;
|
|
38
|
-
}
|
|
39
|
-
} else {
|
|
40
|
-
// Abort any existing interaction regardless of the coinflip outcome
|
|
41
|
-
// Ensures measurements are not carried over between distinct interactions
|
|
42
|
-
(0, _interactionMetrics.abortAll)('new_interaction', name);
|
|
43
|
-
}
|
|
29
|
+
(0, _interactionMetrics.abortAll)('new_interaction', name);
|
|
44
30
|
}
|
|
45
31
|
if ((0, _coinflip.default)(rate)) {
|
|
46
32
|
var startTimestamp = startTime !== null && startTime !== void 0 ? startTime : performance.now();
|
|
@@ -577,6 +577,7 @@ async function createInteractionMetricsPayload(interaction, interactionId, exper
|
|
|
577
577
|
marks: optimizeMarks(interaction.marks, getReactUFOPayloadVersion(interaction.type)),
|
|
578
578
|
customData: optimizeCustomData(interaction),
|
|
579
579
|
reactProfilerTimings: optimizeReactProfilerTimings(interaction.reactProfilerTimings, start, getReactUFOPayloadVersion(interaction.type)),
|
|
580
|
+
minorInteractions: interaction.minorInteractions,
|
|
580
581
|
...(responsiveness ? {
|
|
581
582
|
responsiveness
|
|
582
583
|
} : {}),
|
|
@@ -592,9 +593,6 @@ async function createInteractionMetricsPayload(interaction, interactionId, exper
|
|
|
592
593
|
} : {}),
|
|
593
594
|
...(unknownElementHierarchy ? {
|
|
594
595
|
unknownElementHierarchy
|
|
595
|
-
} : {}),
|
|
596
|
-
...(fg('platform_ufo_enable_minor_interactions') ? {
|
|
597
|
-
minorInteractions: interaction.minorInteractions
|
|
598
596
|
} : {})
|
|
599
597
|
},
|
|
600
598
|
'ufo:payloadTime': roundEpsilon(performance.now() - interactionPayloadStart)
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import React, { Profiler, useCallback, useContext, useEffect, useMemo, useRef } from 'react';
|
|
2
2
|
import { unstable_NormalPriority as NormalPriority, unstable_scheduleCallback as scheduleCallback } from 'scheduler';
|
|
3
3
|
import { v4 as createUUID } from 'uuid';
|
|
4
|
-
import { fg } from '@atlaskit/platform-feature-flags';
|
|
5
4
|
import coinflip from '../coinflip';
|
|
6
5
|
import { getConfig, getDoNotAbortActivePressInteraction, getInteractionRate, getMinorInteractions } from '../config';
|
|
7
6
|
import { getActiveTrace, setInteractionActiveTrace } from '../experience-trace-id-context';
|
|
@@ -141,24 +140,18 @@ export default function UFOSegment({
|
|
|
141
140
|
this._internalHoldByID(labelStack, id, name, true);
|
|
142
141
|
},
|
|
143
142
|
tracePress(name = 'unknown', timestamp) {
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
abortByNewInteraction(interactionId.current, name);
|
|
157
|
-
}
|
|
158
|
-
} else {
|
|
159
|
-
if (interactionId.current != null) {
|
|
160
|
-
abortByNewInteraction(interactionId.current, name);
|
|
161
|
-
}
|
|
143
|
+
var _getDoNotAbortActiveP, _getMinorInteractions;
|
|
144
|
+
const minorInteractions = [...((_getDoNotAbortActiveP = getDoNotAbortActivePressInteraction()) !== null && _getDoNotAbortActiveP !== void 0 ? _getDoNotAbortActiveP : []), ...((_getMinorInteractions = getMinorInteractions()) !== null && _getMinorInteractions !== void 0 ? _getMinorInteractions : [])];
|
|
145
|
+
if (minorInteractions.includes(name)) {
|
|
146
|
+
var _activeInteraction$mi;
|
|
147
|
+
const activeInteraction = getActiveInteraction();
|
|
148
|
+
activeInteraction === null || activeInteraction === void 0 ? void 0 : (_activeInteraction$mi = activeInteraction.minorInteractions) === null || _activeInteraction$mi === void 0 ? void 0 : _activeInteraction$mi.push({
|
|
149
|
+
name,
|
|
150
|
+
startTime: timestamp !== null && timestamp !== void 0 ? timestamp : performance.now()
|
|
151
|
+
});
|
|
152
|
+
return;
|
|
153
|
+
} else if (interactionId.current != null) {
|
|
154
|
+
abortByNewInteraction(interactionId.current, name);
|
|
162
155
|
}
|
|
163
156
|
const rate = getInteractionRate(name, 'press');
|
|
164
157
|
if (coinflip(rate)) {
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { v4 as createUUID } from 'uuid';
|
|
2
|
-
import { fg } from '@atlaskit/platform-feature-flags';
|
|
3
2
|
import coinflip from '../../coinflip';
|
|
4
3
|
import { getDoNotAbortActivePressInteraction, getInteractionRate, getMinorInteractions } from '../../config';
|
|
5
4
|
import { getActiveTrace, setInteractionActiveTrace } from '../../experience-trace-id-context';
|
|
@@ -7,33 +6,20 @@ import { DefaultInteractionID } from '../../interaction-id-context';
|
|
|
7
6
|
import { abortAll, addNewInteraction, getActiveInteraction } from '../../interaction-metrics';
|
|
8
7
|
import UFORouteName from '../../route-name-context';
|
|
9
8
|
function traceUFOInteraction(name, interactionType, startTime) {
|
|
9
|
+
var _getMinorInteractions;
|
|
10
10
|
const rate = getInteractionRate(name, interactionType);
|
|
11
11
|
const pressInteractionsList = getDoNotAbortActivePressInteraction();
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
});
|
|
22
|
-
return;
|
|
23
|
-
} else {
|
|
24
|
-
abortAll('new_interaction', name);
|
|
25
|
-
}
|
|
12
|
+
const minorInteractions = (pressInteractionsList !== null && pressInteractionsList !== void 0 ? pressInteractionsList : []).concat((_getMinorInteractions = getMinorInteractions()) !== null && _getMinorInteractions !== void 0 ? _getMinorInteractions : []);
|
|
13
|
+
if (minorInteractions.includes(name)) {
|
|
14
|
+
var _activeInteraction$mi;
|
|
15
|
+
const activeInteraction = getActiveInteraction();
|
|
16
|
+
activeInteraction === null || activeInteraction === void 0 ? void 0 : (_activeInteraction$mi = activeInteraction.minorInteractions) === null || _activeInteraction$mi === void 0 ? void 0 : _activeInteraction$mi.push({
|
|
17
|
+
name,
|
|
18
|
+
startTime: startTime !== null && startTime !== void 0 ? startTime : performance.now()
|
|
19
|
+
});
|
|
20
|
+
return;
|
|
26
21
|
} else {
|
|
27
|
-
|
|
28
|
-
const interaction = getActiveInteraction();
|
|
29
|
-
if ((interaction === null || interaction === void 0 ? void 0 : interaction.ufoName) !== 'unknown' && (interaction === null || interaction === void 0 ? void 0 : interaction.type) === 'press') {
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
} else {
|
|
33
|
-
// Abort any existing interaction regardless of the coinflip outcome
|
|
34
|
-
// Ensures measurements are not carried over between distinct interactions
|
|
35
|
-
abortAll('new_interaction', name);
|
|
36
|
-
}
|
|
22
|
+
abortAll('new_interaction', name);
|
|
37
23
|
}
|
|
38
24
|
if (coinflip(rate)) {
|
|
39
25
|
const startTimestamp = startTime !== null && startTime !== void 0 ? startTime : performance.now();
|
|
@@ -549,7 +549,7 @@ function _createInteractionMetricsPayload() {
|
|
|
549
549
|
'ufo:multipayload': true,
|
|
550
550
|
'ufo:criticalPayloadCount': criticalPayloadCount
|
|
551
551
|
} : {}), getBrowserMetadataToLegacyFormat()), getSSRProperties(type)), getAssetsMetrics(interaction, pageLoadInteractionMetrics === null || pageLoadInteractionMetrics === void 0 ? void 0 : pageLoadInteractionMetrics.SSRDoneTime)), getPPSMetrics(interaction)), paintMetrics), getNavigationMetricsToLegacyFormat(type)), finalVCMetrics), experimentalMetrics), (_config$additionalPay = config.additionalPayloadData) === null || _config$additionalPay === void 0 ? void 0 : _config$additionalPay.call(config, interaction)), getTracingContextData(interaction)), getStylesheetMetrics()), getErrorCounts(interaction)), getReactHydrationStats()), {}, {
|
|
552
|
-
interactionMetrics: _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(
|
|
552
|
+
interactionMetrics: _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
553
553
|
namePrefix: config.namePrefix || '',
|
|
554
554
|
segmentPrefix: config.segmentPrefix || '',
|
|
555
555
|
interactionId: interactionId,
|
|
@@ -573,7 +573,8 @@ function _createInteractionMetricsPayload() {
|
|
|
573
573
|
segments: getReactUFOPayloadVersion(interaction.type) === '2.0.0' ? segmentTree : getOldSegmentsLabelStack(segments, interaction.type),
|
|
574
574
|
marks: optimizeMarks(interaction.marks, getReactUFOPayloadVersion(interaction.type)),
|
|
575
575
|
customData: optimizeCustomData(interaction),
|
|
576
|
-
reactProfilerTimings: optimizeReactProfilerTimings(interaction.reactProfilerTimings, start, getReactUFOPayloadVersion(interaction.type))
|
|
576
|
+
reactProfilerTimings: optimizeReactProfilerTimings(interaction.reactProfilerTimings, start, getReactUFOPayloadVersion(interaction.type)),
|
|
577
|
+
minorInteractions: interaction.minorInteractions
|
|
577
578
|
}, responsiveness ? {
|
|
578
579
|
responsiveness: responsiveness
|
|
579
580
|
} : {}), labelStack), pageLoadInteractionMetrics), getDetailedInteractionMetrics(resourceTimings)), getPageLoadDetailedInteractionMetrics()), getBm3TrackerTimings(interaction)), {}, {
|
|
@@ -583,8 +584,6 @@ function _createInteractionMetricsPayload() {
|
|
|
583
584
|
unknownElementName: unknownElementName
|
|
584
585
|
} : {}), unknownElementHierarchy ? {
|
|
585
586
|
unknownElementHierarchy: unknownElementHierarchy
|
|
586
|
-
} : {}), fg('platform_ufo_enable_minor_interactions') ? {
|
|
587
|
-
minorInteractions: interaction.minorInteractions
|
|
588
587
|
} : {}),
|
|
589
588
|
'ufo:payloadTime': roundEpsilon(performance.now() - interactionPayloadStart)
|
|
590
589
|
})
|
|
@@ -5,7 +5,6 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
5
5
|
import React, { Profiler, useCallback, useContext, useEffect, useMemo, useRef } from 'react';
|
|
6
6
|
import { unstable_NormalPriority as NormalPriority, unstable_scheduleCallback as scheduleCallback } from 'scheduler';
|
|
7
7
|
import { v4 as createUUID } from 'uuid';
|
|
8
|
-
import { fg } from '@atlaskit/platform-feature-flags';
|
|
9
8
|
import coinflip from '../coinflip';
|
|
10
9
|
import { getConfig, getDoNotAbortActivePressInteraction, getInteractionRate, getMinorInteractions } from '../config';
|
|
11
10
|
import { getActiveTrace, setInteractionActiveTrace } from '../experience-trace-id-context';
|
|
@@ -151,26 +150,20 @@ export default function UFOSegment(_ref) {
|
|
|
151
150
|
this._internalHoldByID(labelStack, id, name, true);
|
|
152
151
|
},
|
|
153
152
|
tracePress: function tracePress() {
|
|
153
|
+
var _getDoNotAbortActiveP, _getMinorInteractions;
|
|
154
154
|
var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'unknown';
|
|
155
155
|
var timestamp = arguments.length > 1 ? arguments[1] : undefined;
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
var
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
} else if (interactionId.current != null) {
|
|
168
|
-
abortByNewInteraction(interactionId.current, name);
|
|
169
|
-
}
|
|
170
|
-
} else {
|
|
171
|
-
if (interactionId.current != null) {
|
|
172
|
-
abortByNewInteraction(interactionId.current, name);
|
|
173
|
-
}
|
|
156
|
+
var minorInteractions = [].concat(_toConsumableArray((_getDoNotAbortActiveP = getDoNotAbortActivePressInteraction()) !== null && _getDoNotAbortActiveP !== void 0 ? _getDoNotAbortActiveP : []), _toConsumableArray((_getMinorInteractions = getMinorInteractions()) !== null && _getMinorInteractions !== void 0 ? _getMinorInteractions : []));
|
|
157
|
+
if (minorInteractions.includes(name)) {
|
|
158
|
+
var _activeInteraction$mi;
|
|
159
|
+
var activeInteraction = getActiveInteraction();
|
|
160
|
+
activeInteraction === null || activeInteraction === void 0 || (_activeInteraction$mi = activeInteraction.minorInteractions) === null || _activeInteraction$mi === void 0 || _activeInteraction$mi.push({
|
|
161
|
+
name: name,
|
|
162
|
+
startTime: timestamp !== null && timestamp !== void 0 ? timestamp : performance.now()
|
|
163
|
+
});
|
|
164
|
+
return;
|
|
165
|
+
} else if (interactionId.current != null) {
|
|
166
|
+
abortByNewInteraction(interactionId.current, name);
|
|
174
167
|
}
|
|
175
168
|
var rate = getInteractionRate(name, 'press');
|
|
176
169
|
if (coinflip(rate)) {
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { v4 as createUUID } from 'uuid';
|
|
2
|
-
import { fg } from '@atlaskit/platform-feature-flags';
|
|
3
2
|
import coinflip from '../../coinflip';
|
|
4
3
|
import { getDoNotAbortActivePressInteraction, getInteractionRate, getMinorInteractions } from '../../config';
|
|
5
4
|
import { getActiveTrace, setInteractionActiveTrace } from '../../experience-trace-id-context';
|
|
@@ -7,33 +6,20 @@ import { DefaultInteractionID } from '../../interaction-id-context';
|
|
|
7
6
|
import { abortAll, addNewInteraction, getActiveInteraction } from '../../interaction-metrics';
|
|
8
7
|
import UFORouteName from '../../route-name-context';
|
|
9
8
|
function traceUFOInteraction(name, interactionType, startTime) {
|
|
9
|
+
var _getMinorInteractions;
|
|
10
10
|
var rate = getInteractionRate(name, interactionType);
|
|
11
11
|
var pressInteractionsList = getDoNotAbortActivePressInteraction();
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
var
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
});
|
|
22
|
-
return;
|
|
23
|
-
} else {
|
|
24
|
-
abortAll('new_interaction', name);
|
|
25
|
-
}
|
|
12
|
+
var minorInteractions = (pressInteractionsList !== null && pressInteractionsList !== void 0 ? pressInteractionsList : []).concat((_getMinorInteractions = getMinorInteractions()) !== null && _getMinorInteractions !== void 0 ? _getMinorInteractions : []);
|
|
13
|
+
if (minorInteractions.includes(name)) {
|
|
14
|
+
var _activeInteraction$mi;
|
|
15
|
+
var activeInteraction = getActiveInteraction();
|
|
16
|
+
activeInteraction === null || activeInteraction === void 0 || (_activeInteraction$mi = activeInteraction.minorInteractions) === null || _activeInteraction$mi === void 0 || _activeInteraction$mi.push({
|
|
17
|
+
name: name,
|
|
18
|
+
startTime: startTime !== null && startTime !== void 0 ? startTime : performance.now()
|
|
19
|
+
});
|
|
20
|
+
return;
|
|
26
21
|
} else {
|
|
27
|
-
|
|
28
|
-
var interaction = getActiveInteraction();
|
|
29
|
-
if ((interaction === null || interaction === void 0 ? void 0 : interaction.ufoName) !== 'unknown' && (interaction === null || interaction === void 0 ? void 0 : interaction.type) === 'press') {
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
} else {
|
|
33
|
-
// Abort any existing interaction regardless of the coinflip outcome
|
|
34
|
-
// Ensures measurements are not carried over between distinct interactions
|
|
35
|
-
abortAll('new_interaction', name);
|
|
36
|
-
}
|
|
22
|
+
abortAll('new_interaction', name);
|
|
37
23
|
}
|
|
38
24
|
if (coinflip(rate)) {
|
|
39
25
|
var startTimestamp = startTime !== null && startTime !== void 0 ? startTime : performance.now();
|