@atlaskit/react-ufo 2.5.3 → 2.6.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.
- package/CHANGELOG.md +12 -0
- package/create-experimental-interaction-metrics-payload/package.json +15 -0
- package/dist/cjs/config/index.js +40 -18
- package/dist/cjs/create-experimental-interaction-metrics-payload/index.js +100 -0
- package/dist/cjs/create-payload/common/utils/index.js +65 -2
- package/dist/cjs/create-payload/index.js +55 -78
- package/dist/cjs/interaction-metrics/common/constants.js +8 -3
- package/dist/cjs/interaction-metrics/common/index.js +151 -0
- package/dist/cjs/interaction-metrics/index.js +166 -238
- package/dist/cjs/interaction-metrics-init/index.js +31 -9
- package/dist/cjs/load-hold/UFOLoadHold.js +5 -3
- package/dist/cjs/segment/segment.js +9 -8
- package/dist/es2019/config/index.js +22 -0
- package/dist/es2019/create-experimental-interaction-metrics-payload/index.js +71 -0
- package/dist/es2019/create-payload/common/utils/index.js +67 -1
- package/dist/es2019/create-payload/index.js +48 -77
- package/dist/es2019/interaction-metrics/common/constants.js +7 -2
- package/dist/es2019/interaction-metrics/common/index.js +103 -0
- package/dist/es2019/interaction-metrics/index.js +91 -131
- package/dist/es2019/interaction-metrics-init/index.js +28 -8
- package/dist/es2019/load-hold/UFOLoadHold.js +5 -3
- package/dist/es2019/segment/segment.js +8 -11
- package/dist/esm/config/index.js +39 -18
- package/dist/esm/create-experimental-interaction-metrics-payload/index.js +90 -0
- package/dist/esm/create-payload/common/utils/index.js +62 -1
- package/dist/esm/create-payload/index.js +53 -78
- package/dist/esm/interaction-metrics/common/constants.js +7 -2
- package/dist/esm/interaction-metrics/common/index.js +132 -0
- package/dist/esm/interaction-metrics/index.js +86 -158
- package/dist/esm/interaction-metrics-init/index.js +28 -8
- package/dist/esm/load-hold/UFOLoadHold.js +5 -3
- package/dist/esm/segment/segment.js +9 -8
- package/dist/types/common/common/types.d.ts +6 -4
- package/dist/types/config/index.d.ts +6 -0
- package/dist/types/create-experimental-interaction-metrics-payload/index.d.ts +16 -0
- package/dist/types/create-payload/common/utils/index.d.ts +9 -0
- package/dist/types/create-payload/index.d.ts +13 -5660
- package/dist/types/interaction-context/index.d.ts +1 -0
- package/dist/types/interaction-metrics/common/constants.d.ts +32 -3
- package/dist/types/interaction-metrics/common/index.d.ts +16 -0
- package/dist/types/interaction-metrics/index.d.ts +1 -17
- package/dist/types/load-hold/UFOLoadHold.d.ts +1 -2
- package/dist/types-ts4.5/common/common/types.d.ts +6 -4
- package/dist/types-ts4.5/config/index.d.ts +6 -0
- package/dist/types-ts4.5/create-experimental-interaction-metrics-payload/index.d.ts +16 -0
- package/dist/types-ts4.5/create-payload/common/utils/index.d.ts +9 -0
- package/dist/types-ts4.5/create-payload/index.d.ts +13 -5660
- package/dist/types-ts4.5/interaction-context/index.d.ts +1 -0
- package/dist/types-ts4.5/interaction-metrics/common/constants.d.ts +32 -3
- package/dist/types-ts4.5/interaction-metrics/common/index.d.ts +16 -0
- package/dist/types-ts4.5/interaction-metrics/index.d.ts +1 -17
- package/dist/types-ts4.5/load-hold/UFOLoadHold.d.ts +1 -2
- package/package.json +3 -2
|
@@ -34,7 +34,7 @@ exports.addSpanToAll = addSpanToAll;
|
|
|
34
34
|
exports.extractModuleName = extractModuleName;
|
|
35
35
|
exports.getActiveInteraction = getActiveInteraction;
|
|
36
36
|
exports.getCurrentInteractionType = getCurrentInteractionType;
|
|
37
|
-
exports.
|
|
37
|
+
exports.interactionSpans = void 0;
|
|
38
38
|
exports.remove = remove;
|
|
39
39
|
exports.removeHoldByID = removeHoldByID;
|
|
40
40
|
exports.removeSegment = removeSegment;
|
|
@@ -43,85 +43,32 @@ exports.tryComplete = tryComplete;
|
|
|
43
43
|
exports.updatePageLoadInteractionName = updatePageLoadInteractionName;
|
|
44
44
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
45
45
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
46
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
47
46
|
var _uuid = require("uuid");
|
|
48
47
|
var _coinflip = _interopRequireDefault(require("../coinflip"));
|
|
49
48
|
var _config = require("../config");
|
|
49
|
+
var _createExperimentalInteractionMetricsPayload = require("../create-experimental-interaction-metrics-payload");
|
|
50
|
+
var _utils = require("../create-payload/common/utils");
|
|
50
51
|
var _experienceTraceIdContext = require("../experience-trace-id-context");
|
|
51
52
|
var _featureFlagsAccessed = require("../feature-flags-accessed");
|
|
52
53
|
var _interactionIdContext = require("../interaction-id-context");
|
|
53
54
|
var _vc = require("../vc");
|
|
54
|
-
var
|
|
55
|
-
var
|
|
55
|
+
var _common = require("./common");
|
|
56
|
+
var _constants = require("./common/constants");
|
|
56
57
|
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; }
|
|
57
58
|
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) { (0, _defineProperty2.default)(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; }
|
|
58
|
-
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; } } }; }
|
|
59
|
-
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; } }
|
|
60
|
-
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; }
|
|
61
59
|
var PreviousInteractionLog = {
|
|
62
60
|
name: undefined,
|
|
63
61
|
isAborted: undefined
|
|
64
62
|
};
|
|
65
|
-
var postInteractionLog = exports.postInteractionLog = new _postInteractionLog.default();
|
|
66
|
-
var interactionQueue = [];
|
|
67
|
-
var segmentCache = new Map();
|
|
68
|
-
var CLEANUP_TIMEOUT = 60 * 1000;
|
|
69
|
-
var CLEANUP_TIMEOUT_AFTER_APDEX = 15 * 1000;
|
|
70
|
-
var segmentObservers = [];
|
|
71
63
|
function getActiveInteraction() {
|
|
72
64
|
var interactionId = (0, _interactionIdContext.getInteractionId)();
|
|
73
65
|
if (!interactionId.current) {
|
|
74
66
|
return;
|
|
75
67
|
}
|
|
76
|
-
return _constants.
|
|
77
|
-
}
|
|
78
|
-
function isPerformanceTracingEnabled() {
|
|
79
|
-
var _getConfig;
|
|
80
|
-
return ((_getConfig = (0, _config.getConfig)()) === null || _getConfig === void 0 ? void 0 : _getConfig.enableAdditionalPerformanceMarks) || window.__REACT_UFO_ENABLE_PERF_TRACING || process.env.NODE_ENV !== 'production';
|
|
81
|
-
}
|
|
82
|
-
function labelStackToString(labelStack, name) {
|
|
83
|
-
var _stack$map;
|
|
84
|
-
var stack = (0, _toConsumableArray2.default)(labelStack !== null && labelStack !== void 0 ? labelStack : []);
|
|
85
|
-
if (name) {
|
|
86
|
-
stack.push({
|
|
87
|
-
name: name
|
|
88
|
-
});
|
|
89
|
-
}
|
|
90
|
-
return (_stack$map = stack.map(function (l) {
|
|
91
|
-
return l.name;
|
|
92
|
-
})) === null || _stack$map === void 0 ? void 0 : _stack$map.join('/');
|
|
93
|
-
}
|
|
94
|
-
function labelStackToIdString(labelStack) {
|
|
95
|
-
var _labelStack$map;
|
|
96
|
-
return labelStack === null || labelStack === void 0 || (_labelStack$map = labelStack.map(function (l) {
|
|
97
|
-
return 'segmentId' in l ? "".concat(l.name, ":").concat(l.segmentId) : "".concat(l.name);
|
|
98
|
-
})) === null || _labelStack$map === void 0 ? void 0 : _labelStack$map.join('/');
|
|
99
|
-
}
|
|
100
|
-
function addSegmentObserver(observer) {
|
|
101
|
-
segmentObservers.push(observer);
|
|
102
|
-
var _iterator = _createForOfIteratorHelper(segmentCache.values()),
|
|
103
|
-
_step;
|
|
104
|
-
try {
|
|
105
|
-
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
106
|
-
var segmentInfo = _step.value;
|
|
107
|
-
observer.onAdd(segmentInfo);
|
|
108
|
-
}
|
|
109
|
-
} catch (err) {
|
|
110
|
-
_iterator.e(err);
|
|
111
|
-
} finally {
|
|
112
|
-
_iterator.f();
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
function removeSegmentObserver(observer) {
|
|
116
|
-
var index = segmentObservers.findIndex(function (obs) {
|
|
117
|
-
return obs === observer;
|
|
118
|
-
});
|
|
119
|
-
if (index !== -1) {
|
|
120
|
-
segmentObservers.splice(index, 1);
|
|
121
|
-
}
|
|
68
|
+
return _constants.interactions.get(interactionId.current);
|
|
122
69
|
}
|
|
123
70
|
function remove(interactionId) {
|
|
124
|
-
_constants.
|
|
71
|
+
_constants.interactions.delete(interactionId);
|
|
125
72
|
}
|
|
126
73
|
function updatePageLoadInteractionName(ufoName) {
|
|
127
74
|
var routeName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ufoName;
|
|
@@ -133,7 +80,7 @@ function updatePageLoadInteractionName(ufoName) {
|
|
|
133
80
|
interaction.routeName = routeName;
|
|
134
81
|
}
|
|
135
82
|
function addMetadata(interactionId, data) {
|
|
136
|
-
var interaction = _constants.
|
|
83
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
137
84
|
if (interaction != null) {
|
|
138
85
|
Object.keys(data).forEach(function (key) {
|
|
139
86
|
interaction.metaData[key] = data[key];
|
|
@@ -141,7 +88,7 @@ function addMetadata(interactionId, data) {
|
|
|
141
88
|
}
|
|
142
89
|
}
|
|
143
90
|
function addCustomData(interactionId, labelStack, data) {
|
|
144
|
-
var interaction = _constants.
|
|
91
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
145
92
|
if (interaction != null) {
|
|
146
93
|
Object.keys(data).forEach(function (i) {
|
|
147
94
|
interaction.customData.push({
|
|
@@ -152,13 +99,13 @@ function addCustomData(interactionId, labelStack, data) {
|
|
|
152
99
|
}
|
|
153
100
|
}
|
|
154
101
|
function addCustomTiming(interactionId, labelStack, data) {
|
|
155
|
-
var interaction = _constants.
|
|
102
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
156
103
|
if (interaction != null) {
|
|
157
104
|
interaction.customTimings.push({
|
|
158
105
|
labelStack: labelStack,
|
|
159
106
|
data: data
|
|
160
107
|
});
|
|
161
|
-
if (isPerformanceTracingEnabled()) {
|
|
108
|
+
if ((0, _common.isPerformanceTracingEnabled)()) {
|
|
162
109
|
for (var _i = 0, _Object$entries = Object.entries(data); _i < _Object$entries.length; _i++) {
|
|
163
110
|
var _Object$entries$_i = (0, _slicedToArray2.default)(_Object$entries[_i], 2),
|
|
164
111
|
key = _Object$entries$_i[0],
|
|
@@ -167,7 +114,7 @@ function addCustomTiming(interactionId, labelStack, data) {
|
|
|
167
114
|
endTime = timingData.endTime;
|
|
168
115
|
try {
|
|
169
116
|
// for Firefox 102 and older
|
|
170
|
-
performance.measure("\uD83D\uDEF8 ".concat(labelStackToString(labelStack, key), " [custom_timing]"), {
|
|
117
|
+
performance.measure("\uD83D\uDEF8 ".concat((0, _common.labelStackToString)(labelStack, key), " [custom_timing]"), {
|
|
171
118
|
start: startTime,
|
|
172
119
|
end: endTime
|
|
173
120
|
});
|
|
@@ -180,7 +127,7 @@ function addCustomTiming(interactionId, labelStack, data) {
|
|
|
180
127
|
}
|
|
181
128
|
function addMark(interactionId, type, name, labelStack) {
|
|
182
129
|
var time = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : performance.now();
|
|
183
|
-
var interaction = _constants.
|
|
130
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
184
131
|
if (interaction != null) {
|
|
185
132
|
interaction.marks.push({
|
|
186
133
|
type: type,
|
|
@@ -189,15 +136,15 @@ function addMark(interactionId, type, name, labelStack) {
|
|
|
189
136
|
time: time
|
|
190
137
|
});
|
|
191
138
|
}
|
|
192
|
-
if (isPerformanceTracingEnabled()) {
|
|
193
|
-
performance.mark("\uD83D\uDEF8 ".concat(labelStackToString(labelStack, name), " [").concat(type, "]"), {
|
|
139
|
+
if ((0, _common.isPerformanceTracingEnabled)()) {
|
|
140
|
+
performance.mark("\uD83D\uDEF8 ".concat((0, _common.labelStackToString)(labelStack, name), " [").concat(type, "]"), {
|
|
194
141
|
startTime: time
|
|
195
142
|
});
|
|
196
143
|
}
|
|
197
144
|
}
|
|
198
145
|
function addMarkToAll(type, name, labelStack) {
|
|
199
146
|
var time = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : performance.now();
|
|
200
|
-
_constants.
|
|
147
|
+
_constants.interactions.forEach(function (interaction) {
|
|
201
148
|
interaction.marks.push({
|
|
202
149
|
type: type,
|
|
203
150
|
name: name,
|
|
@@ -205,8 +152,8 @@ function addMarkToAll(type, name, labelStack) {
|
|
|
205
152
|
time: time
|
|
206
153
|
});
|
|
207
154
|
});
|
|
208
|
-
if (isPerformanceTracingEnabled()) {
|
|
209
|
-
performance.mark("\uD83D\uDEF8 ".concat(labelStackToString(labelStack, name), " [").concat(type, "]"), {
|
|
155
|
+
if ((0, _common.isPerformanceTracingEnabled)()) {
|
|
156
|
+
performance.mark("\uD83D\uDEF8 ".concat((0, _common.labelStackToString)(labelStack, name), " [").concat(type, "]"), {
|
|
210
157
|
startTime: time
|
|
211
158
|
});
|
|
212
159
|
}
|
|
@@ -214,7 +161,7 @@ function addMarkToAll(type, name, labelStack) {
|
|
|
214
161
|
function addSpan(interactionId, type, name, labelStack, start) {
|
|
215
162
|
var end = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : performance.now();
|
|
216
163
|
var size = arguments.length > 6 ? arguments[6] : undefined;
|
|
217
|
-
var interaction = _constants.
|
|
164
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
218
165
|
if (interaction != null) {
|
|
219
166
|
interaction.spans.push({
|
|
220
167
|
type: type,
|
|
@@ -224,10 +171,10 @@ function addSpan(interactionId, type, name, labelStack, start) {
|
|
|
224
171
|
end: end,
|
|
225
172
|
size: size
|
|
226
173
|
});
|
|
227
|
-
if (isPerformanceTracingEnabled()) {
|
|
174
|
+
if ((0, _common.isPerformanceTracingEnabled)()) {
|
|
228
175
|
try {
|
|
229
176
|
// for Firefox 102 and older
|
|
230
|
-
performance.measure("\uD83D\uDEF8 ".concat(labelStackToString(labelStack, name), " [").concat(type, "]"), {
|
|
177
|
+
performance.measure("\uD83D\uDEF8 ".concat((0, _common.labelStackToString)(labelStack, name), " [").concat(type, "]"), {
|
|
231
178
|
start: start,
|
|
232
179
|
end: end
|
|
233
180
|
});
|
|
@@ -240,7 +187,7 @@ function addSpan(interactionId, type, name, labelStack, start) {
|
|
|
240
187
|
function addSpanToAll(type, name, labelStack, start) {
|
|
241
188
|
var end = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : performance.now();
|
|
242
189
|
var size = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;
|
|
243
|
-
_constants.
|
|
190
|
+
_constants.interactions.forEach(function (interaction) {
|
|
244
191
|
interaction.spans.push({
|
|
245
192
|
type: type,
|
|
246
193
|
name: name,
|
|
@@ -250,10 +197,10 @@ function addSpanToAll(type, name, labelStack, start) {
|
|
|
250
197
|
size: size
|
|
251
198
|
});
|
|
252
199
|
});
|
|
253
|
-
if (isPerformanceTracingEnabled()) {
|
|
200
|
+
if ((0, _common.isPerformanceTracingEnabled)()) {
|
|
254
201
|
try {
|
|
255
202
|
// for Firefox 102 and older
|
|
256
|
-
performance.measure("\uD83D\uDEF8 ".concat(labelStackToString(labelStack, name), " [").concat(type, "]"), {
|
|
203
|
+
performance.measure("\uD83D\uDEF8 ".concat((0, _common.labelStackToString)(labelStack, name), " [").concat(type, "]"), {
|
|
257
204
|
start: start,
|
|
258
205
|
end: end
|
|
259
206
|
});
|
|
@@ -268,7 +215,6 @@ function addPreload(moduleId, timestamp) {
|
|
|
268
215
|
function addLoad(identifier, start, end) {
|
|
269
216
|
addSpanToAll('bundle_load', identifier, null, start, end - start);
|
|
270
217
|
}
|
|
271
|
-
var moduleLoadingRequests = {};
|
|
272
218
|
function extractModuleName(input) {
|
|
273
219
|
var result = input !== null && input !== void 0 ? input : '';
|
|
274
220
|
result = result.replace(/^\.\/src\/packages\//, '');
|
|
@@ -276,37 +222,34 @@ function extractModuleName(input) {
|
|
|
276
222
|
result = result.replace(/(\/src)?\/(index|main)\.(tsx|ts|js|jsx)$/, '');
|
|
277
223
|
return result;
|
|
278
224
|
}
|
|
279
|
-
function
|
|
280
|
-
var
|
|
281
|
-
if (!((_window$__CRITERION__ = window.__CRITERION__) !== null && _window$__CRITERION__ !== void 0 && _window$__CRITERION__.addUFOHold)) {
|
|
282
|
-
return;
|
|
283
|
-
}
|
|
284
|
-
window.__CRITERION__.addUFOHold(id, labelStackToString(labelStack), name, startTime);
|
|
285
|
-
}
|
|
286
|
-
function removeHoldCriterion(id) {
|
|
287
|
-
var _window$__CRITERION__2;
|
|
288
|
-
if (!((_window$__CRITERION__2 = window.__CRITERION__) !== null && _window$__CRITERION__2 !== void 0 && _window$__CRITERION__2.removeUFOHold)) {
|
|
289
|
-
return;
|
|
290
|
-
}
|
|
291
|
-
window.__CRITERION__.removeUFOHold(id);
|
|
292
|
-
}
|
|
293
|
-
function addHold(interactionId, labelStack, name) {
|
|
294
|
-
var interaction = _constants.default.get(interactionId);
|
|
225
|
+
function addHold(interactionId, labelStack, name, experimental) {
|
|
226
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
295
227
|
var id = (0, _uuid.v4)();
|
|
296
228
|
if (interaction != null) {
|
|
297
|
-
var
|
|
298
|
-
|
|
229
|
+
var _getConfig;
|
|
230
|
+
var holdActive = {
|
|
299
231
|
labelStack: labelStack,
|
|
300
232
|
name: name,
|
|
301
|
-
start:
|
|
302
|
-
}
|
|
303
|
-
|
|
233
|
+
start: 0
|
|
234
|
+
};
|
|
235
|
+
var start = performance.now();
|
|
236
|
+
if ((_getConfig = (0, _config.getConfig)()) !== null && _getConfig !== void 0 && (_getConfig = _getConfig.experimentalInteractionMetrics) !== null && _getConfig !== void 0 && _getConfig.enabled && experimental) {
|
|
237
|
+
interaction.holdExpActive.set(id, _objectSpread(_objectSpread({}, holdActive), {}, {
|
|
238
|
+
start: start
|
|
239
|
+
}));
|
|
240
|
+
}
|
|
241
|
+
if (!experimental) {
|
|
242
|
+
interaction.holdActive.set(id, _objectSpread(_objectSpread({}, holdActive), {}, {
|
|
243
|
+
start: start
|
|
244
|
+
}));
|
|
245
|
+
}
|
|
246
|
+
(0, _common.addHoldCriterion)(id, labelStack, name, start);
|
|
304
247
|
return function () {
|
|
305
248
|
var end = performance.now();
|
|
306
|
-
if (isPerformanceTracingEnabled()) {
|
|
249
|
+
if ((0, _common.isPerformanceTracingEnabled)()) {
|
|
307
250
|
try {
|
|
308
251
|
// for Firefox 102 and older
|
|
309
|
-
performance.measure("\uD83D\uDEF8 ".concat(labelStackToString(labelStack, name), " [hold]"), {
|
|
252
|
+
performance.measure("\uD83D\uDEF8 ".concat((0, _common.labelStackToString)(labelStack, name), " [hold]"), {
|
|
310
253
|
start: start,
|
|
311
254
|
end: end
|
|
312
255
|
});
|
|
@@ -314,21 +257,30 @@ function addHold(interactionId, labelStack, name) {
|
|
|
314
257
|
// do nothing
|
|
315
258
|
}
|
|
316
259
|
}
|
|
317
|
-
removeHoldCriterion(id);
|
|
318
|
-
var currentInteraction = _constants.
|
|
260
|
+
(0, _common.removeHoldCriterion)(id);
|
|
261
|
+
var currentInteraction = _constants.interactions.get(interactionId);
|
|
319
262
|
var currentHold = interaction.holdActive.get(id);
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
263
|
+
var expHold = interaction.holdExpActive.get(id);
|
|
264
|
+
if (currentInteraction != null) {
|
|
265
|
+
if (currentHold != null) {
|
|
266
|
+
currentInteraction.holdInfo.push(_objectSpread(_objectSpread({}, currentHold), {}, {
|
|
267
|
+
end: end
|
|
268
|
+
}));
|
|
269
|
+
interaction.holdActive.delete(id);
|
|
270
|
+
}
|
|
271
|
+
if (expHold != null) {
|
|
272
|
+
currentInteraction.holdExpInfo.push(_objectSpread(_objectSpread({}, expHold), {}, {
|
|
273
|
+
end: end
|
|
274
|
+
}));
|
|
275
|
+
interaction.holdExpActive.delete(id);
|
|
276
|
+
}
|
|
325
277
|
}
|
|
326
278
|
};
|
|
327
279
|
}
|
|
328
280
|
return function () {};
|
|
329
281
|
}
|
|
330
282
|
function addHoldByID(interactionId, labelStack, name, id, ignoreOnSubmit) {
|
|
331
|
-
var interaction = _constants.
|
|
283
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
332
284
|
if (interaction != null) {
|
|
333
285
|
var start = performance.now();
|
|
334
286
|
interaction.holdActive.set(id, {
|
|
@@ -337,27 +289,27 @@ function addHoldByID(interactionId, labelStack, name, id, ignoreOnSubmit) {
|
|
|
337
289
|
start: start,
|
|
338
290
|
ignoreOnSubmit: ignoreOnSubmit
|
|
339
291
|
});
|
|
340
|
-
addHoldCriterion(id, labelStack, name, start);
|
|
292
|
+
(0, _common.addHoldCriterion)(id, labelStack, name, start);
|
|
341
293
|
}
|
|
342
294
|
return function () {};
|
|
343
295
|
}
|
|
344
296
|
function removeHoldByID(interactionId, id) {
|
|
345
|
-
var interaction = _constants.
|
|
297
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
346
298
|
if (interaction != null) {
|
|
347
299
|
var end = performance.now();
|
|
348
|
-
var currentInteraction = _constants.
|
|
300
|
+
var currentInteraction = _constants.interactions.get(interactionId);
|
|
349
301
|
var currentHold = interaction.holdActive.get(id);
|
|
350
302
|
if (currentInteraction != null && currentHold != null) {
|
|
351
303
|
currentInteraction.holdInfo.push(_objectSpread(_objectSpread({}, currentHold), {}, {
|
|
352
304
|
end: end
|
|
353
305
|
}));
|
|
354
306
|
interaction.holdActive.delete(id);
|
|
355
|
-
removeHoldCriterion(id);
|
|
307
|
+
(0, _common.removeHoldCriterion)(id);
|
|
356
308
|
}
|
|
357
309
|
}
|
|
358
310
|
}
|
|
359
311
|
function getCurrentInteractionType(interactionId) {
|
|
360
|
-
var interaction = _constants.
|
|
312
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
361
313
|
if (interaction) {
|
|
362
314
|
return interaction.type;
|
|
363
315
|
}
|
|
@@ -369,19 +321,19 @@ var ModuleLoadingProfiler = exports.ModuleLoadingProfiler = {
|
|
|
369
321
|
},
|
|
370
322
|
onLoadStart: function onLoadStart(info) {
|
|
371
323
|
var timeoutId = setTimeout(function () {
|
|
372
|
-
delete moduleLoadingRequests[info.identifier];
|
|
324
|
+
delete _constants.moduleLoadingRequests[info.identifier];
|
|
373
325
|
}, 30000);
|
|
374
326
|
var request = {
|
|
375
327
|
start: performance.now(),
|
|
376
328
|
timeoutId: timeoutId
|
|
377
329
|
};
|
|
378
|
-
moduleLoadingRequests[info.identifier] = request;
|
|
330
|
+
_constants.moduleLoadingRequests[info.identifier] = request;
|
|
379
331
|
},
|
|
380
332
|
onLoadComplete: function onLoadComplete(info) {
|
|
381
|
-
var request = moduleLoadingRequests[info.identifier];
|
|
333
|
+
var request = _constants.moduleLoadingRequests[info.identifier];
|
|
382
334
|
if (request) {
|
|
383
335
|
clearTimeout(request.timeoutId);
|
|
384
|
-
delete moduleLoadingRequests[info.identifier];
|
|
336
|
+
delete _constants.moduleLoadingRequests[info.identifier];
|
|
385
337
|
addLoad(extractModuleName(info.identifier), request.start, performance.now());
|
|
386
338
|
}
|
|
387
339
|
},
|
|
@@ -399,7 +351,7 @@ var ModuleLoadingProfiler = exports.ModuleLoadingProfiler = {
|
|
|
399
351
|
}
|
|
400
352
|
};
|
|
401
353
|
function addError(interactionId, name, labelStack, errorType, errorMessage, errorStack, forcedError) {
|
|
402
|
-
var interaction = _constants.
|
|
354
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
403
355
|
if (interaction != null) {
|
|
404
356
|
interaction.errors.push({
|
|
405
357
|
name: name,
|
|
@@ -412,7 +364,7 @@ function addError(interactionId, name, labelStack, errorType, errorMessage, erro
|
|
|
412
364
|
}
|
|
413
365
|
}
|
|
414
366
|
function addErrorToAll(name, labelStack, errorType, errorMessage, errorStack) {
|
|
415
|
-
_constants.
|
|
367
|
+
_constants.interactions.forEach(function (interaction) {
|
|
416
368
|
interaction.errors.push({
|
|
417
369
|
name: name,
|
|
418
370
|
labelStack: labelStack,
|
|
@@ -424,10 +376,10 @@ function addErrorToAll(name, labelStack, errorType, errorMessage, errorStack) {
|
|
|
424
376
|
}
|
|
425
377
|
var addProfilerTimings = exports.addProfilerTimings = function addProfilerTimings(interactionId, labelStack, type, actualDuration, baseDuration, startTime, commitTime) {
|
|
426
378
|
var _getConfig2;
|
|
427
|
-
if (isPerformanceTracingEnabled()) {
|
|
379
|
+
if ((0, _common.isPerformanceTracingEnabled)()) {
|
|
428
380
|
try {
|
|
429
381
|
// for Firefox 102 and older
|
|
430
|
-
performance.measure("\uD83D\uDEF8 ".concat(labelStackToString(labelStack), " [react-profiler] ").concat(type), {
|
|
382
|
+
performance.measure("\uD83D\uDEF8 ".concat((0, _common.labelStackToString)(labelStack), " [react-profiler] ").concat(type), {
|
|
431
383
|
start: startTime,
|
|
432
384
|
duration: actualDuration
|
|
433
385
|
});
|
|
@@ -435,7 +387,7 @@ var addProfilerTimings = exports.addProfilerTimings = function addProfilerTiming
|
|
|
435
387
|
// do nothing
|
|
436
388
|
}
|
|
437
389
|
}
|
|
438
|
-
var interaction = _constants.
|
|
390
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
439
391
|
if (interaction != null) {
|
|
440
392
|
interaction.reactProfilerTimings.push({
|
|
441
393
|
labelStack: labelStack,
|
|
@@ -446,25 +398,13 @@ var addProfilerTimings = exports.addProfilerTimings = function addProfilerTiming
|
|
|
446
398
|
commitTime: commitTime
|
|
447
399
|
});
|
|
448
400
|
} else if ((_getConfig2 = (0, _config.getConfig)()) !== null && _getConfig2 !== void 0 && (_getConfig2 = _getConfig2.postInteractionLog) !== null && _getConfig2 !== void 0 && _getConfig2.enabled) {
|
|
449
|
-
postInteractionLog.addProfilerTimings(labelStack, type, actualDuration, baseDuration, startTime, commitTime);
|
|
401
|
+
_utils.postInteractionLog.addProfilerTimings(labelStack, type, actualDuration, baseDuration, startTime, commitTime);
|
|
450
402
|
}
|
|
451
403
|
};
|
|
452
|
-
var
|
|
453
|
-
interactionQueue.push({
|
|
454
|
-
id: id,
|
|
455
|
-
data: data
|
|
456
|
-
});
|
|
457
|
-
};
|
|
458
|
-
var handleInteraction = pushToQueue;
|
|
459
|
-
function callCleanUpCallbacks(interaction) {
|
|
460
|
-
interaction.cleanupCallbacks.reverse().forEach(function (cleanUpCallback) {
|
|
461
|
-
cleanUpCallback();
|
|
462
|
-
});
|
|
463
|
-
}
|
|
404
|
+
var handleInteraction = _common.pushToQueue;
|
|
464
405
|
var finishInteraction = function finishInteraction(id, data) {
|
|
465
406
|
var _getConfig3;
|
|
466
407
|
var endTime = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : performance.now();
|
|
467
|
-
// eslint-disable-next-line no-param-reassign
|
|
468
408
|
data.end = endTime;
|
|
469
409
|
try {
|
|
470
410
|
// for Firefox 102 and older
|
|
@@ -476,58 +416,20 @@ var finishInteraction = function finishInteraction(id, data) {
|
|
|
476
416
|
// do nothing
|
|
477
417
|
}
|
|
478
418
|
if (data.featureFlags) {
|
|
479
|
-
// eslint-disable-next-line no-param-reassign
|
|
480
419
|
data.featureFlags.during = Object.fromEntries(_featureFlagsAccessed.currentFeatureFlagsAccessed);
|
|
481
420
|
}
|
|
482
421
|
(0, _experienceTraceIdContext.clearActiveTrace)();
|
|
483
|
-
callCleanUpCallbacks(data);
|
|
422
|
+
(0, _common.callCleanUpCallbacks)(data);
|
|
484
423
|
if ((_getConfig3 = (0, _config.getConfig)()) !== null && _getConfig3 !== void 0 && (_getConfig3 = _getConfig3.vc) !== null && _getConfig3 !== void 0 && _getConfig3.stopVCAtInteractionFinish) {
|
|
485
424
|
data.vc = (0, _vc.getVCObserver)().getVCRawData();
|
|
486
425
|
}
|
|
487
|
-
remove(id);
|
|
488
426
|
PreviousInteractionLog.name = data.ufoName || 'unknown';
|
|
489
427
|
PreviousInteractionLog.isAborted = data.abortReason != null;
|
|
490
428
|
if (data.ufoName) {
|
|
491
429
|
handleInteraction(id, data);
|
|
492
430
|
}
|
|
493
|
-
if (isPerformanceTracingEnabled()) {
|
|
494
|
-
|
|
495
|
-
data.reactProfilerTimings.forEach(function (profilerTiming) {
|
|
496
|
-
var labelStackId = labelStackToIdString(profilerTiming.labelStack);
|
|
497
|
-
if (labelStackId) {
|
|
498
|
-
var _profilerTimingMap$ge, _timing$start, _timing$end;
|
|
499
|
-
var timing = (_profilerTimingMap$ge = profilerTimingMap.get(labelStackId)) !== null && _profilerTimingMap$ge !== void 0 ? _profilerTimingMap$ge : {
|
|
500
|
-
labelStack: profilerTiming.labelStack
|
|
501
|
-
};
|
|
502
|
-
timing.start = profilerTiming.startTime < ((_timing$start = timing.start) !== null && _timing$start !== void 0 ? _timing$start : Number.MAX_SAFE_INTEGER) ? profilerTiming.startTime : timing.start;
|
|
503
|
-
timing.end = profilerTiming.commitTime > ((_timing$end = timing.end) !== null && _timing$end !== void 0 ? _timing$end : Number.MIN_SAFE_INTEGER) ? profilerTiming.commitTime : timing.end;
|
|
504
|
-
profilerTimingMap.set(labelStackId, timing);
|
|
505
|
-
}
|
|
506
|
-
});
|
|
507
|
-
try {
|
|
508
|
-
// for Firefox 102 and older
|
|
509
|
-
var _iterator2 = _createForOfIteratorHelper(profilerTimingMap.entries()),
|
|
510
|
-
_step2;
|
|
511
|
-
try {
|
|
512
|
-
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
513
|
-
var _step2$value = (0, _slicedToArray2.default)(_step2.value, 2),
|
|
514
|
-
_step2$value$ = _step2$value[1],
|
|
515
|
-
labelStack = _step2$value$.labelStack,
|
|
516
|
-
start = _step2$value$.start,
|
|
517
|
-
end = _step2$value$.end;
|
|
518
|
-
performance.measure("\uD83D\uDEF8 ".concat(labelStackToString(labelStack), " [segment_ttai]"), {
|
|
519
|
-
start: start,
|
|
520
|
-
end: end
|
|
521
|
-
});
|
|
522
|
-
}
|
|
523
|
-
} catch (err) {
|
|
524
|
-
_iterator2.e(err);
|
|
525
|
-
} finally {
|
|
526
|
-
_iterator2.f();
|
|
527
|
-
}
|
|
528
|
-
} catch (e) {
|
|
529
|
-
// do nothing
|
|
530
|
-
}
|
|
431
|
+
if ((0, _common.isPerformanceTracingEnabled)()) {
|
|
432
|
+
(0, _common.reactProfilerTimingMap)(data);
|
|
531
433
|
}
|
|
532
434
|
try {
|
|
533
435
|
// dispatch a global window event to notify the measure is completed
|
|
@@ -539,82 +441,113 @@ var finishInteraction = function finishInteraction(id, data) {
|
|
|
539
441
|
}
|
|
540
442
|
};
|
|
541
443
|
var sinkInteractionHandler = exports.sinkInteractionHandler = function sinkInteractionHandler(sinkFn) {
|
|
542
|
-
if (handleInteraction === pushToQueue) {
|
|
444
|
+
if (handleInteraction === _common.pushToQueue) {
|
|
543
445
|
handleInteraction = sinkFn;
|
|
544
|
-
interactionQueue.forEach(function (interaction) {
|
|
446
|
+
_constants.interactionQueue.forEach(function (interaction) {
|
|
545
447
|
sinkFn(interaction.id, interaction.data);
|
|
546
448
|
});
|
|
547
|
-
interactionQueue.length = 0;
|
|
449
|
+
_constants.interactionQueue.length = 0;
|
|
548
450
|
}
|
|
549
451
|
};
|
|
550
452
|
var sinkPostInteractionLogHandler = exports.sinkPostInteractionLogHandler = function sinkPostInteractionLogHandler(sinkFn) {
|
|
551
|
-
postInteractionLog.sinkHandler(sinkFn);
|
|
453
|
+
_utils.postInteractionLog.sinkHandler(sinkFn);
|
|
552
454
|
};
|
|
455
|
+
|
|
456
|
+
// a flag to prevent multiple submitting
|
|
457
|
+
var activeSubmitted = false;
|
|
553
458
|
function tryComplete(interactionId, endTime) {
|
|
554
|
-
var interaction = _constants.
|
|
459
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
555
460
|
if (interaction != null) {
|
|
556
|
-
var
|
|
557
|
-
|
|
461
|
+
var noMoreActiveHolds = interaction.holdActive.size === 0;
|
|
462
|
+
var noMoreExpHolds = interaction.holdExpActive.size === 0;
|
|
463
|
+
var postInteraction = function postInteraction() {
|
|
558
464
|
var _getConfig4;
|
|
559
|
-
finishInteraction(interactionId, interaction, endTime);
|
|
560
465
|
if ((_getConfig4 = (0, _config.getConfig)()) !== null && _getConfig4 !== void 0 && (_getConfig4 = _getConfig4.postInteractionLog) !== null && _getConfig4 !== void 0 && _getConfig4.enabled) {
|
|
561
|
-
|
|
466
|
+
var _getExperimentalVCMet;
|
|
467
|
+
var experimentalVC90 = (_getExperimentalVCMet = (0, _createExperimentalInteractionMetricsPayload.getExperimentalVCMetrics)(interaction)) === null || _getExperimentalVCMet === void 0 ? void 0 : _getExperimentalVCMet['metric:experimental:vc90'];
|
|
468
|
+
var experimentalTTAI = (0, _utils.getTTAI)(interaction);
|
|
469
|
+
_utils.postInteractionLog.onInteractionComplete(_objectSpread(_objectSpread({}, interaction), {}, {
|
|
470
|
+
experimentalTTAI: experimentalTTAI,
|
|
471
|
+
experimentalVC90: experimentalVC90
|
|
472
|
+
}));
|
|
473
|
+
}
|
|
474
|
+
remove(interactionId);
|
|
475
|
+
};
|
|
476
|
+
if (noMoreActiveHolds) {
|
|
477
|
+
if (!activeSubmitted) {
|
|
478
|
+
finishInteraction(interactionId, interaction, endTime);
|
|
479
|
+
activeSubmitted = true;
|
|
480
|
+
}
|
|
481
|
+
if (noMoreExpHolds) {
|
|
482
|
+
var _getConfig5;
|
|
483
|
+
if ((_getConfig5 = (0, _config.getConfig)()) !== null && _getConfig5 !== void 0 && (_getConfig5 = _getConfig5.experimentalInteractionMetrics) !== null && _getConfig5 !== void 0 && _getConfig5.enabled) {
|
|
484
|
+
(0, _createExperimentalInteractionMetricsPayload.onExperimentalInteractionComplete)(interactionId, interaction, endTime);
|
|
485
|
+
}
|
|
486
|
+
postInteraction();
|
|
562
487
|
}
|
|
563
488
|
}
|
|
564
489
|
}
|
|
565
490
|
}
|
|
566
|
-
function callCancelCallbacks(interaction) {
|
|
567
|
-
interaction.cancelCallbacks.reverse().forEach(function (cancelCallback) {
|
|
568
|
-
cancelCallback();
|
|
569
|
-
});
|
|
570
|
-
}
|
|
571
491
|
function abort(interactionId, abortReason) {
|
|
572
|
-
var interaction = _constants.
|
|
492
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
573
493
|
if (interaction != null) {
|
|
574
|
-
|
|
494
|
+
var _getConfig6;
|
|
495
|
+
(0, _common.callCancelCallbacks)(interaction);
|
|
575
496
|
interaction.abortReason = abortReason;
|
|
576
497
|
finishInteraction(interactionId, interaction);
|
|
498
|
+
if ((_getConfig6 = (0, _config.getConfig)()) !== null && _getConfig6 !== void 0 && (_getConfig6 = _getConfig6.experimentalInteractionMetrics) !== null && _getConfig6 !== void 0 && _getConfig6.enabled) {
|
|
499
|
+
(0, _createExperimentalInteractionMetricsPayload.onExperimentalInteractionComplete)(interactionId, interaction);
|
|
500
|
+
}
|
|
501
|
+
remove(interactionId);
|
|
577
502
|
}
|
|
578
503
|
}
|
|
579
504
|
function abortByNewInteraction(interactionId, interactionName) {
|
|
580
|
-
var interaction = _constants.
|
|
505
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
581
506
|
if (interaction != null) {
|
|
582
|
-
|
|
507
|
+
var _getConfig7;
|
|
508
|
+
(0, _common.callCancelCallbacks)(interaction);
|
|
583
509
|
interaction.abortReason = 'new_interaction';
|
|
584
510
|
interaction.abortedByInteractionName = interactionName;
|
|
585
511
|
finishInteraction(interactionId, interaction);
|
|
512
|
+
if ((_getConfig7 = (0, _config.getConfig)()) !== null && _getConfig7 !== void 0 && (_getConfig7 = _getConfig7.experimentalInteractionMetrics) !== null && _getConfig7 !== void 0 && _getConfig7.enabled) {
|
|
513
|
+
(0, _createExperimentalInteractionMetricsPayload.onExperimentalInteractionComplete)(interactionId, interaction);
|
|
514
|
+
}
|
|
515
|
+
remove(interactionId);
|
|
586
516
|
}
|
|
587
517
|
}
|
|
588
518
|
function abortAll(abortReason, abortedByInteractionName) {
|
|
589
|
-
_constants.
|
|
519
|
+
_constants.interactions.forEach(function (interaction, interactionId) {
|
|
520
|
+
var _getConfig8;
|
|
590
521
|
var noMoreHolds = interaction.holdActive.size === 0;
|
|
591
522
|
if (!noMoreHolds) {
|
|
592
|
-
callCancelCallbacks(interaction);
|
|
593
|
-
// eslint-disable-next-line no-param-reassign
|
|
523
|
+
(0, _common.callCancelCallbacks)(interaction);
|
|
594
524
|
interaction.abortReason = abortReason;
|
|
595
525
|
if (abortedByInteractionName != null) {
|
|
596
|
-
// eslint-disable-next-line no-param-reassign
|
|
597
526
|
interaction.abortedByInteractionName = abortedByInteractionName;
|
|
598
527
|
}
|
|
599
528
|
}
|
|
600
529
|
finishInteraction(interactionId, interaction);
|
|
530
|
+
if ((_getConfig8 = (0, _config.getConfig)()) !== null && _getConfig8 !== void 0 && (_getConfig8 = _getConfig8.experimentalInteractionMetrics) !== null && _getConfig8 !== void 0 && _getConfig8.enabled) {
|
|
531
|
+
(0, _createExperimentalInteractionMetricsPayload.onExperimentalInteractionComplete)(interactionId, interaction);
|
|
532
|
+
}
|
|
533
|
+
remove(interactionId);
|
|
601
534
|
});
|
|
602
535
|
}
|
|
603
536
|
function addOnCancelCallback(id, cancelCallback) {
|
|
604
|
-
var interaction = _constants.
|
|
537
|
+
var interaction = _constants.interactions.get(id);
|
|
605
538
|
interaction === null || interaction === void 0 || interaction.cancelCallbacks.push(cancelCallback);
|
|
606
539
|
}
|
|
607
540
|
function addNewInteraction(interactionId, ufoName, type, startTime, rate, labelStack, routeName) {
|
|
608
|
-
var
|
|
541
|
+
var _getConfig9;
|
|
609
542
|
var trace = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : null;
|
|
610
|
-
if ((
|
|
611
|
-
postInteractionLog.reset();
|
|
543
|
+
if ((_getConfig9 = (0, _config.getConfig)()) !== null && _getConfig9 !== void 0 && (_getConfig9 = _getConfig9.postInteractionLog) !== null && _getConfig9 !== void 0 && _getConfig9.enabled) {
|
|
544
|
+
_utils.postInteractionLog.reset();
|
|
612
545
|
}
|
|
613
546
|
var previousTime = startTime;
|
|
614
|
-
var timeoutTime = CLEANUP_TIMEOUT;
|
|
547
|
+
var timeoutTime = _constants.CLEANUP_TIMEOUT;
|
|
615
548
|
var timerID = setTimeout(function () {
|
|
616
549
|
abort(interactionId, 'timeout');
|
|
617
|
-
}, CLEANUP_TIMEOUT);
|
|
550
|
+
}, _constants.CLEANUP_TIMEOUT);
|
|
618
551
|
function changeTimeout(newTime) {
|
|
619
552
|
// we compare if the time left is lower than the new time to no
|
|
620
553
|
// extend the timeout beyond the initial waiting time
|
|
@@ -647,9 +580,11 @@ function addNewInteraction(interactionId, ufoName, type, startTime, rate, labelS
|
|
|
647
580
|
requestInfo: [],
|
|
648
581
|
reactProfilerTimings: [],
|
|
649
582
|
holdInfo: [],
|
|
583
|
+
holdExpInfo: [],
|
|
650
584
|
holdActive: new Map(),
|
|
585
|
+
holdExpActive: new Map(),
|
|
651
586
|
// measure when we execute this code
|
|
652
|
-
// from this we can measure the input delay -
|
|
587
|
+
// from this, we can measure the input delay -
|
|
653
588
|
// how long the browser took to hand execution back to JS)
|
|
654
589
|
measureStart: performance.now(),
|
|
655
590
|
rate: rate,
|
|
@@ -674,16 +609,16 @@ function addNewInteraction(interactionId, ufoName, type, startTime, rate, labelS
|
|
|
674
609
|
if (addFeatureFlagsToInteraction) {
|
|
675
610
|
_featureFlagsAccessed.currentFeatureFlagsAccessed.clear();
|
|
676
611
|
}
|
|
677
|
-
_constants.
|
|
612
|
+
_constants.interactions.set(interactionId, metrics);
|
|
678
613
|
var segmentObserver = {
|
|
679
614
|
onAdd: function onAdd(segment) {
|
|
680
615
|
metrics.knownSegments.push(segment);
|
|
681
616
|
},
|
|
682
617
|
onRemove: function onRemove() {}
|
|
683
618
|
};
|
|
684
|
-
addSegmentObserver(segmentObserver);
|
|
619
|
+
(0, _common.addSegmentObserver)(segmentObserver);
|
|
685
620
|
metrics.cleanupCallbacks.push(function () {
|
|
686
|
-
removeSegmentObserver(segmentObserver);
|
|
621
|
+
(0, _common.removeSegmentObserver)(segmentObserver);
|
|
687
622
|
});
|
|
688
623
|
metrics.cleanupCallbacks.push(function () {
|
|
689
624
|
clearTimeout(metrics.timerID);
|
|
@@ -696,9 +631,13 @@ function addNewInteraction(interactionId, ufoName, type, startTime, rate, labelS
|
|
|
696
631
|
(0, _vc.getVCObserver)().start({
|
|
697
632
|
startTime: startTime
|
|
698
633
|
});
|
|
699
|
-
postInteractionLog.startVCObserver({
|
|
634
|
+
_utils.postInteractionLog.startVCObserver({
|
|
635
|
+
startTime: startTime
|
|
636
|
+
});
|
|
637
|
+
_createExperimentalInteractionMetricsPayload.experimentalVC.start({
|
|
700
638
|
startTime: startTime
|
|
701
639
|
});
|
|
640
|
+
activeSubmitted = false;
|
|
702
641
|
}
|
|
703
642
|
}
|
|
704
643
|
function addBrowserMetricEvent(event) {
|
|
@@ -708,13 +647,13 @@ function addBrowserMetricEvent(event) {
|
|
|
708
647
|
interaction.legacyMetrics = interaction.legacyMetrics || [];
|
|
709
648
|
interaction.legacyMetrics.push(event);
|
|
710
649
|
if ((interaction.type === 'page_load' || interaction.type === 'transition') && ((_event$config = event.config) === null || _event$config === void 0 ? void 0 : _event$config.type) === 'PAGE_LOAD') {
|
|
711
|
-
interaction.changeTimeout(CLEANUP_TIMEOUT_AFTER_APDEX);
|
|
650
|
+
interaction.changeTimeout(_constants.CLEANUP_TIMEOUT_AFTER_APDEX);
|
|
712
651
|
removeHoldByID(interaction.id, interaction.ufoName);
|
|
713
652
|
}
|
|
714
653
|
}
|
|
715
654
|
}
|
|
716
655
|
function addApdexToAll(apdex) {
|
|
717
|
-
_constants.
|
|
656
|
+
_constants.interactions.forEach(function (interaction, key) {
|
|
718
657
|
interaction.apdex.push(apdex);
|
|
719
658
|
try {
|
|
720
659
|
var _apdex$startTime;
|
|
@@ -727,13 +666,13 @@ function addApdexToAll(apdex) {
|
|
|
727
666
|
// do nothing
|
|
728
667
|
}
|
|
729
668
|
if (interaction.type === 'page_load' || interaction.type === 'transition') {
|
|
730
|
-
interaction.changeTimeout(CLEANUP_TIMEOUT_AFTER_APDEX);
|
|
669
|
+
interaction.changeTimeout(_constants.CLEANUP_TIMEOUT_AFTER_APDEX);
|
|
731
670
|
removeHoldByID(key, interaction.ufoName);
|
|
732
671
|
}
|
|
733
672
|
});
|
|
734
673
|
}
|
|
735
674
|
function addApdex(interactionId, apdexInfo) {
|
|
736
|
-
var interaction = _constants.
|
|
675
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
737
676
|
if (interaction != null) {
|
|
738
677
|
interaction.apdex.push(apdexInfo);
|
|
739
678
|
try {
|
|
@@ -747,55 +686,44 @@ function addApdex(interactionId, apdexInfo) {
|
|
|
747
686
|
// do nothing
|
|
748
687
|
}
|
|
749
688
|
if (interaction.type === 'page_load' || interaction.type === 'transition') {
|
|
750
|
-
interaction.changeTimeout(CLEANUP_TIMEOUT_AFTER_APDEX);
|
|
689
|
+
interaction.changeTimeout(_constants.CLEANUP_TIMEOUT_AFTER_APDEX);
|
|
751
690
|
removeHoldByID(interactionId, interaction.ufoName);
|
|
752
691
|
}
|
|
753
692
|
}
|
|
754
693
|
}
|
|
755
694
|
function addRequestInfo(interactionId, labelStack, requestInfo) {
|
|
756
|
-
var interaction = _constants.
|
|
695
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
757
696
|
if (interaction != null) {
|
|
758
697
|
interaction.requestInfo.push(_objectSpread({
|
|
759
698
|
labelStack: labelStack
|
|
760
699
|
}, requestInfo));
|
|
761
700
|
}
|
|
762
701
|
}
|
|
763
|
-
function isSegmentLabel(obj) {
|
|
764
|
-
return obj && typeof obj.name === 'string' && typeof obj.segmentId === 'string';
|
|
765
|
-
}
|
|
766
|
-
function getSegmentCacheKey(labelStack) {
|
|
767
|
-
return labelStack.map(function (l) {
|
|
768
|
-
if (isSegmentLabel(l)) {
|
|
769
|
-
return "".concat(l.name, "_").concat(l.segmentId);
|
|
770
|
-
}
|
|
771
|
-
return l.name;
|
|
772
|
-
}).join('|');
|
|
773
|
-
}
|
|
774
702
|
function addSegment(labelStack) {
|
|
775
|
-
var key = getSegmentCacheKey(labelStack);
|
|
776
|
-
var existingSegment = segmentCache.get(key);
|
|
703
|
+
var key = (0, _common.getSegmentCacheKey)(labelStack);
|
|
704
|
+
var existingSegment = _constants.segmentCache.get(key);
|
|
777
705
|
if (!existingSegment) {
|
|
778
706
|
var segmentInfo = {
|
|
779
707
|
labelStack: labelStack
|
|
780
708
|
};
|
|
781
|
-
segmentCache.set(key, segmentInfo);
|
|
782
|
-
segmentObservers.forEach(function (observer) {
|
|
709
|
+
_constants.segmentCache.set(key, segmentInfo);
|
|
710
|
+
_constants.segmentObservers.forEach(function (observer) {
|
|
783
711
|
observer.onAdd(segmentInfo);
|
|
784
712
|
});
|
|
785
713
|
}
|
|
786
714
|
}
|
|
787
715
|
function removeSegment(labelStack) {
|
|
788
|
-
var key = getSegmentCacheKey(labelStack);
|
|
789
|
-
var segmentInfo = segmentCache.get(key);
|
|
716
|
+
var key = (0, _common.getSegmentCacheKey)(labelStack);
|
|
717
|
+
var segmentInfo = _constants.segmentCache.get(key);
|
|
790
718
|
if (segmentInfo) {
|
|
791
|
-
segmentCache.delete(JSON.stringify(labelStack));
|
|
792
|
-
segmentObservers.forEach(function (observer) {
|
|
719
|
+
_constants.segmentCache.delete(JSON.stringify(labelStack));
|
|
720
|
+
_constants.segmentObservers.forEach(function (observer) {
|
|
793
721
|
observer.onRemove(segmentInfo);
|
|
794
722
|
});
|
|
795
723
|
}
|
|
796
724
|
}
|
|
797
725
|
function addRedirect(interactionId, fromUfoName, nextUfoName, nextRouteName, time) {
|
|
798
|
-
var interaction = _constants.
|
|
726
|
+
var interaction = _constants.interactions.get(interactionId);
|
|
799
727
|
if (interaction != null) {
|
|
800
728
|
interaction.ufoName = nextUfoName;
|
|
801
729
|
interaction.routeName = nextRouteName;
|
|
@@ -803,7 +731,7 @@ function addRedirect(interactionId, fromUfoName, nextUfoName, nextRouteName, tim
|
|
|
803
731
|
fromInteractionName: fromUfoName,
|
|
804
732
|
time: time
|
|
805
733
|
});
|
|
806
|
-
if (isPerformanceTracingEnabled()) {
|
|
734
|
+
if ((0, _common.isPerformanceTracingEnabled)()) {
|
|
807
735
|
var prevRedirect = interaction.redirects.at(-2);
|
|
808
736
|
try {
|
|
809
737
|
var _prevRedirect$time;
|