@atlaskit/react-ufo 3.12.5 → 3.13.1
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 +16 -0
- package/dist/cjs/config/index.js +15 -20
- package/dist/cjs/create-payload/utils/get-vc-metrics.js +5 -44
- package/dist/cjs/vc/index.js +49 -101
- package/dist/cjs/vc/vc-observer/getVCRevisionsData.js +13 -67
- package/dist/cjs/vc/vc-observer/index.js +31 -107
- package/dist/cjs/vc/vc-observer/observers/index.js +3 -2
- package/dist/cjs/vc/vc-observer/observers/ssr-placeholders/index.js +38 -12
- package/dist/cjs/vc/vc-observer/observers/ssr-placeholders/ssr-scripts/collectSSRPlaceholderDimensions.js +9 -0
- package/dist/es2019/config/index.js +18 -23
- package/dist/es2019/create-payload/utils/get-vc-metrics.js +12 -41
- package/dist/es2019/vc/index.js +44 -88
- package/dist/es2019/vc/vc-observer/getVCRevisionsData.js +15 -71
- package/dist/es2019/vc/vc-observer/index.js +11 -87
- package/dist/es2019/vc/vc-observer/observers/index.js +2 -1
- package/dist/es2019/vc/vc-observer/observers/ssr-placeholders/index.js +38 -13
- package/dist/es2019/vc/vc-observer/observers/ssr-placeholders/ssr-scripts/collectSSRPlaceholderDimensions.js +9 -1
- package/dist/esm/config/index.js +15 -20
- package/dist/esm/create-payload/utils/get-vc-metrics.js +6 -45
- package/dist/esm/vc/index.js +49 -101
- package/dist/esm/vc/vc-observer/getVCRevisionsData.js +13 -67
- package/dist/esm/vc/vc-observer/index.js +31 -107
- package/dist/esm/vc/vc-observer/observers/index.js +3 -2
- package/dist/esm/vc/vc-observer/observers/ssr-placeholders/index.js +38 -12
- package/dist/esm/vc/vc-observer/observers/ssr-placeholders/ssr-scripts/collectSSRPlaceholderDimensions.js +9 -0
- package/dist/types/common/vc/types.d.ts +0 -2
- package/dist/types/config/index.d.ts +1 -0
- package/dist/types/create-post-interaction-log-payload/index.d.ts +1 -1
- package/dist/types/vc/types.d.ts +1 -0
- package/dist/types/vc/vc-observer/getVCRevisionsData.d.ts +2 -17
- package/dist/types/vc/vc-observer/index.d.ts +0 -4
- package/dist/types/vc/vc-observer/observers/index.d.ts +3 -0
- package/dist/types/vc/vc-observer/observers/ssr-placeholders/index.d.ts +4 -1
- package/dist/types/vc/vc-observer/observers/ssr-placeholders/ssr-scripts/collectSSRPlaceholderDimensions.d.ts +1 -1
- package/dist/types-ts4.5/common/vc/types.d.ts +0 -2
- package/dist/types-ts4.5/config/index.d.ts +1 -0
- package/dist/types-ts4.5/create-post-interaction-log-payload/index.d.ts +1 -1
- package/dist/types-ts4.5/vc/types.d.ts +1 -0
- package/dist/types-ts4.5/vc/vc-observer/getVCRevisionsData.d.ts +2 -17
- package/dist/types-ts4.5/vc/vc-observer/index.d.ts +0 -4
- package/dist/types-ts4.5/vc/vc-observer/observers/index.d.ts +3 -0
- package/dist/types-ts4.5/vc/vc-observer/observers/ssr-placeholders/index.d.ts +4 -1
- package/dist/types-ts4.5/vc/vc-observer/observers/ssr-placeholders/ssr-scripts/collectSSRPlaceholderDimensions.d.ts +1 -1
- package/package.json +1 -4
- package/dist/cjs/vc/vc-observer/heatmap/heatmap.js +0 -281
- package/dist/cjs/vc/vc-observer/revisions/ViewportUpdateClassifier.js +0 -68
- package/dist/cjs/vc/vc-observer/revisions/fy25_01.js +0 -76
- package/dist/cjs/vc/vc-observer/revisions/fy25_02.js +0 -59
- package/dist/cjs/vc/vc-observer/revisions/revisions.js +0 -24
- package/dist/cjs/vc/vc-observer/revisions/types.js +0 -5
- package/dist/es2019/vc/vc-observer/heatmap/heatmap.js +0 -247
- package/dist/es2019/vc/vc-observer/revisions/ViewportUpdateClassifier.js +0 -48
- package/dist/es2019/vc/vc-observer/revisions/fy25_01.js +0 -55
- package/dist/es2019/vc/vc-observer/revisions/fy25_02.js +0 -35
- package/dist/es2019/vc/vc-observer/revisions/revisions.js +0 -18
- package/dist/es2019/vc/vc-observer/revisions/types.js +0 -1
- package/dist/esm/vc/vc-observer/heatmap/heatmap.js +0 -274
- package/dist/esm/vc/vc-observer/revisions/ViewportUpdateClassifier.js +0 -61
- package/dist/esm/vc/vc-observer/revisions/fy25_01.js +0 -69
- package/dist/esm/vc/vc-observer/revisions/fy25_02.js +0 -52
- package/dist/esm/vc/vc-observer/revisions/revisions.js +0 -18
- package/dist/esm/vc/vc-observer/revisions/types.js +0 -1
- package/dist/types/vc/vc-observer/heatmap/heatmap.d.ts +0 -79
- package/dist/types/vc/vc-observer/revisions/ViewportUpdateClassifier.d.ts +0 -31
- package/dist/types/vc/vc-observer/revisions/fy25_01.d.ts +0 -13
- package/dist/types/vc/vc-observer/revisions/fy25_02.d.ts +0 -16
- package/dist/types/vc/vc-observer/revisions/revisions.d.ts +0 -2
- package/dist/types/vc/vc-observer/revisions/types.d.ts +0 -28
- package/dist/types-ts4.5/vc/vc-observer/heatmap/heatmap.d.ts +0 -79
- package/dist/types-ts4.5/vc/vc-observer/revisions/ViewportUpdateClassifier.d.ts +0 -31
- package/dist/types-ts4.5/vc/vc-observer/revisions/fy25_01.d.ts +0 -13
- package/dist/types-ts4.5/vc/vc-observer/revisions/fy25_02.d.ts +0 -16
- package/dist/types-ts4.5/vc/vc-observer/revisions/revisions.d.ts +0 -2
- package/dist/types-ts4.5/vc/vc-observer/revisions/types.d.ts +0 -28
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# @atlaskit/ufo-interaction-ignore
|
|
2
2
|
|
|
3
|
+
## 3.13.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#156888](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/156888)
|
|
8
|
+
[`42a74b76ffd2b`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/42a74b76ffd2b) -
|
|
9
|
+
FG cleanup - platform_ufo_vc_enable_revisions_by_experience
|
|
10
|
+
|
|
11
|
+
## 3.13.0
|
|
12
|
+
|
|
13
|
+
### Minor Changes
|
|
14
|
+
|
|
15
|
+
- [#156673](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/156673)
|
|
16
|
+
[`27ecf5244d858`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/27ecf5244d858) -
|
|
17
|
+
Added API to account for page layout in VC calculation
|
|
18
|
+
|
|
3
19
|
## 3.12.5
|
|
4
20
|
|
|
5
21
|
### Patch Changes
|
package/dist/cjs/config/index.js
CHANGED
|
@@ -23,7 +23,6 @@ exports.setUFOConfig = setUFOConfig;
|
|
|
23
23
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
24
24
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
25
25
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
26
|
-
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
27
26
|
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; }
|
|
28
27
|
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; }
|
|
29
28
|
var config;
|
|
@@ -33,24 +32,20 @@ var DEFAULT_TTVC_REVISION = 'fy25.02';
|
|
|
33
32
|
// and they could delete empty members
|
|
34
33
|
|
|
35
34
|
function setUFOConfig(newConfig) {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
enabledVCRevisions
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
});
|
|
51
|
-
} else {
|
|
52
|
-
config = newConfig;
|
|
53
|
-
}
|
|
35
|
+
var _newConfig$vc;
|
|
36
|
+
// Handle edge cases with `enabledVCRevisions`
|
|
37
|
+
var _ref = (_newConfig$vc = newConfig === null || newConfig === void 0 ? void 0 : newConfig.vc) !== null && _newConfig$vc !== void 0 ? _newConfig$vc : {},
|
|
38
|
+
enabledVCRevisions = _ref.enabledVCRevisions;
|
|
39
|
+
if ((0, _typeof2.default)(enabledVCRevisions === null || enabledVCRevisions === void 0 ? void 0 : enabledVCRevisions.byExperience) === 'object') {
|
|
40
|
+
config = _objectSpread(_objectSpread({}, newConfig), {}, {
|
|
41
|
+
vc: _objectSpread(_objectSpread({}, newConfig.vc), {}, {
|
|
42
|
+
enabledVCRevisions: {
|
|
43
|
+
// enforce axiom about `enabledVCRevisions.all` config
|
|
44
|
+
all: Array.from(new Set([DEFAULT_TTVC_REVISION].concat((0, _toConsumableArray2.default)(enabledVCRevisions === null || enabledVCRevisions === void 0 ? void 0 : enabledVCRevisions.all), (0, _toConsumableArray2.default)(Object.values(enabledVCRevisions === null || enabledVCRevisions === void 0 ? void 0 : enabledVCRevisions.byExperience).flat())))),
|
|
45
|
+
byExperience: _objectSpread({}, enabledVCRevisions === null || enabledVCRevisions === void 0 ? void 0 : enabledVCRevisions.byExperience)
|
|
46
|
+
}
|
|
47
|
+
})
|
|
48
|
+
});
|
|
54
49
|
} else {
|
|
55
50
|
config = newConfig;
|
|
56
51
|
}
|
|
@@ -72,7 +67,7 @@ function getEnabledVCRevisions() {
|
|
|
72
67
|
var _config$vc2, _enabledVCRevisions$b;
|
|
73
68
|
var _ref2 = (_config$vc2 = config.vc) !== null && _config$vc2 !== void 0 ? _config$vc2 : {},
|
|
74
69
|
enabledVCRevisions = _ref2.enabledVCRevisions;
|
|
75
|
-
if (isValidConfigArray(enabledVCRevisions === null || enabledVCRevisions === void 0 || (_enabledVCRevisions$b = enabledVCRevisions.byExperience) === null || _enabledVCRevisions$b === void 0 ? void 0 : _enabledVCRevisions$b[experienceKey])
|
|
70
|
+
if (isValidConfigArray(enabledVCRevisions === null || enabledVCRevisions === void 0 || (_enabledVCRevisions$b = enabledVCRevisions.byExperience) === null || _enabledVCRevisions$b === void 0 ? void 0 : _enabledVCRevisions$b[experienceKey])) {
|
|
76
71
|
var _enabledVCRevisions$b2;
|
|
77
72
|
return (_enabledVCRevisions$b2 = enabledVCRevisions.byExperience) === null || _enabledVCRevisions$b2 === void 0 ? void 0 : _enabledVCRevisions$b2[experienceKey];
|
|
78
73
|
}
|
|
@@ -22,8 +22,8 @@ function getVCMetrics(_x) {
|
|
|
22
22
|
}
|
|
23
23
|
function _getVCMetrics() {
|
|
24
24
|
_getVCMetrics = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(interaction) {
|
|
25
|
-
var _config$vc, _config$vc$ssrWhiteli, _interaction$apdex, _config$experimentalI;
|
|
26
|
-
var config, interactionStatus, pageVisibilityUpToTTAI, shouldReportVCMetrics, isSSREnabled, ssr, tti, prefix, result,
|
|
25
|
+
var _config$vc, _config$vc$ssrWhiteli, _interaction$apdex, _config$experimentalI, _result$ufoVcRev;
|
|
26
|
+
var config, interactionStatus, pageVisibilityUpToTTAI, shouldReportVCMetrics, isSSREnabled, ssr, tti, prefix, result, mostRecentVCRevision, mostRecentVCRevisionPayload;
|
|
27
27
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
28
28
|
while (1) switch (_context.prev = _context.next) {
|
|
29
29
|
case 0:
|
|
@@ -74,60 +74,21 @@ function _getVCMetrics() {
|
|
|
74
74
|
(0, _vc.getVCObserver)().stop(interaction.ufoName);
|
|
75
75
|
}
|
|
76
76
|
_interactionMetrics.postInteractionLog.setLastInteractionFinishVCResult(result);
|
|
77
|
-
if (!(0, _platformFeatureFlags.fg)('platform_ufo_vc_enable_revisions_by_experience')) {
|
|
78
|
-
_context.next = 29;
|
|
79
|
-
break;
|
|
80
|
-
}
|
|
81
77
|
mostRecentVCRevision = (0, _config.getMostRecentVCRevision)(interaction.ufoName);
|
|
82
78
|
mostRecentVCRevisionPayload = result === null || result === void 0 || (_result$ufoVcRev = result['ufo:vc:rev']) === null || _result$ufoVcRev === void 0 ? void 0 : _result$ufoVcRev.find(function (_ref) {
|
|
83
79
|
var revision = _ref.revision;
|
|
84
80
|
return revision === mostRecentVCRevision;
|
|
85
81
|
});
|
|
86
82
|
if (!(!shouldReportVCMetrics || !(mostRecentVCRevisionPayload !== null && mostRecentVCRevisionPayload !== void 0 && mostRecentVCRevisionPayload.clean))) {
|
|
87
|
-
_context.next =
|
|
83
|
+
_context.next = 25;
|
|
88
84
|
break;
|
|
89
85
|
}
|
|
90
86
|
return _context.abrupt("return", result);
|
|
91
|
-
case
|
|
87
|
+
case 25:
|
|
92
88
|
return _context.abrupt("return", _objectSpread(_objectSpread({}, result), {}, {
|
|
93
89
|
'metric:vc90': mostRecentVCRevisionPayload['metric:vc90']
|
|
94
90
|
}));
|
|
95
|
-
case
|
|
96
|
-
if ((0, _config.isVCRevisionEnabled)('fy25.01')) {
|
|
97
|
-
_context.next = 36;
|
|
98
|
-
break;
|
|
99
|
-
}
|
|
100
|
-
ttvcV2Revision = result === null || result === void 0 || (_result$ufoVcRev2 = result['ufo:vc:rev']) === null || _result$ufoVcRev2 === void 0 ? void 0 : _result$ufoVcRev2.find(function (_ref2) {
|
|
101
|
-
var revision = _ref2.revision;
|
|
102
|
-
return revision === 'fy25.02';
|
|
103
|
-
});
|
|
104
|
-
if (ttvcV2Revision !== null && ttvcV2Revision !== void 0 && ttvcV2Revision.clean) {
|
|
105
|
-
_context.next = 33;
|
|
106
|
-
break;
|
|
107
|
-
}
|
|
108
|
-
return _context.abrupt("return", result);
|
|
109
|
-
case 33:
|
|
110
|
-
return _context.abrupt("return", _objectSpread(_objectSpread({}, result), {}, {
|
|
111
|
-
'metric:vc90': ttvcV2Revision['metric:vc90']
|
|
112
|
-
}));
|
|
113
|
-
case 36:
|
|
114
|
-
VC = result === null || result === void 0 ? void 0 : result['metrics:vc'];
|
|
115
|
-
if (!(!VC || !(result !== null && result !== void 0 && result["".concat(prefix, ":vc:clean")]))) {
|
|
116
|
-
_context.next = 39;
|
|
117
|
-
break;
|
|
118
|
-
}
|
|
119
|
-
return _context.abrupt("return", result);
|
|
120
|
-
case 39:
|
|
121
|
-
if (!(interactionStatus.originalInteractionStatus !== 'SUCCEEDED' || pageVisibilityUpToTTAI !== 'visible')) {
|
|
122
|
-
_context.next = 41;
|
|
123
|
-
break;
|
|
124
|
-
}
|
|
125
|
-
return _context.abrupt("return", result);
|
|
126
|
-
case 41:
|
|
127
|
-
return _context.abrupt("return", _objectSpread(_objectSpread({}, result), {}, {
|
|
128
|
-
'metric:vc90': VC['90']
|
|
129
|
-
}));
|
|
130
|
-
case 42:
|
|
91
|
+
case 26:
|
|
131
92
|
case "end":
|
|
132
93
|
return _context.stop();
|
|
133
94
|
}
|
package/dist/cjs/vc/index.js
CHANGED
|
@@ -13,7 +13,6 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
13
13
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
14
14
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
15
15
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
16
|
-
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
17
16
|
var _config = require("../config");
|
|
18
17
|
var _noOpVcObserver = require("./no-op-vc-observer");
|
|
19
18
|
var _vcObserver = require("./vc-observer");
|
|
@@ -26,22 +25,13 @@ var VCObserverWrapper = exports.VCObserverWrapper = /*#__PURE__*/function () {
|
|
|
26
25
|
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
27
26
|
(0, _classCallCheck2.default)(this, VCObserverWrapper);
|
|
28
27
|
this.newVCObserver = null;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
if ((0, _config.isVCRevisionEnabled)('fy25.01') || (0, _config.isVCRevisionEnabled)('fy25.02')) {
|
|
37
|
-
this.oldVCObserver = new _vcObserver.VCObserver(opts);
|
|
38
|
-
}
|
|
39
|
-
} else {
|
|
40
|
-
if ((0, _config.isVCRevisionEnabled)('fy25.03')) {
|
|
41
|
-
this.newVCObserver = new _vcObserverNew.default({
|
|
42
|
-
selectorConfig: opts.selectorConfig
|
|
43
|
-
});
|
|
44
|
-
}
|
|
28
|
+
this.oldVCObserver = null;
|
|
29
|
+
if ((0, _config.isVCRevisionEnabled)('fy25.03')) {
|
|
30
|
+
this.newVCObserver = new _vcObserverNew.default({
|
|
31
|
+
selectorConfig: opts.selectorConfig
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
if ((0, _config.isVCRevisionEnabled)('fy25.01') || (0, _config.isVCRevisionEnabled)('fy25.02')) {
|
|
45
35
|
this.oldVCObserver = new _vcObserver.VCObserver(opts);
|
|
46
36
|
}
|
|
47
37
|
}
|
|
@@ -50,25 +40,15 @@ var VCObserverWrapper = exports.VCObserverWrapper = /*#__PURE__*/function () {
|
|
|
50
40
|
value: function start(_ref) {
|
|
51
41
|
var startTime = _ref.startTime,
|
|
52
42
|
experienceKey = _ref.experienceKey;
|
|
53
|
-
if ((0,
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
(_this$oldVCObserver = this.oldVCObserver) === null || _this$oldVCObserver === void 0 || _this$oldVCObserver.start({
|
|
57
|
-
startTime: startTime
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
if ((0, _config.isVCRevisionEnabled)('fy25.03', experienceKey)) {
|
|
61
|
-
var _this$newVCObserver;
|
|
62
|
-
(_this$newVCObserver = this.newVCObserver) === null || _this$newVCObserver === void 0 || _this$newVCObserver.start({
|
|
63
|
-
startTime: startTime
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
} else {
|
|
67
|
-
var _this$oldVCObserver2, _this$newVCObserver2;
|
|
68
|
-
(_this$oldVCObserver2 = this.oldVCObserver) === null || _this$oldVCObserver2 === void 0 || _this$oldVCObserver2.start({
|
|
43
|
+
if ((0, _config.isVCRevisionEnabled)('fy25.01', experienceKey) || (0, _config.isVCRevisionEnabled)('fy25.02', experienceKey)) {
|
|
44
|
+
var _this$oldVCObserver;
|
|
45
|
+
(_this$oldVCObserver = this.oldVCObserver) === null || _this$oldVCObserver === void 0 || _this$oldVCObserver.start({
|
|
69
46
|
startTime: startTime
|
|
70
47
|
});
|
|
71
|
-
|
|
48
|
+
}
|
|
49
|
+
if ((0, _config.isVCRevisionEnabled)('fy25.03', experienceKey)) {
|
|
50
|
+
var _this$newVCObserver;
|
|
51
|
+
(_this$newVCObserver = this.newVCObserver) === null || _this$newVCObserver === void 0 || _this$newVCObserver.start({
|
|
72
52
|
startTime: startTime
|
|
73
53
|
});
|
|
74
54
|
}
|
|
@@ -76,104 +56,72 @@ var VCObserverWrapper = exports.VCObserverWrapper = /*#__PURE__*/function () {
|
|
|
76
56
|
}, {
|
|
77
57
|
key: "stop",
|
|
78
58
|
value: function stop(experienceKey) {
|
|
79
|
-
if ((0,
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
(_this$newVCObserver3 = this.newVCObserver) === null || _this$newVCObserver3 === void 0 || _this$newVCObserver3.stop();
|
|
87
|
-
}
|
|
88
|
-
} else {
|
|
89
|
-
var _this$oldVCObserver4, _this$newVCObserver4;
|
|
90
|
-
(_this$oldVCObserver4 = this.oldVCObserver) === null || _this$oldVCObserver4 === void 0 || _this$oldVCObserver4.stop();
|
|
91
|
-
(_this$newVCObserver4 = this.newVCObserver) === null || _this$newVCObserver4 === void 0 || _this$newVCObserver4.stop();
|
|
59
|
+
if ((0, _config.isVCRevisionEnabled)('fy25.01', experienceKey) || (0, _config.isVCRevisionEnabled)('fy25.02', experienceKey)) {
|
|
60
|
+
var _this$oldVCObserver2;
|
|
61
|
+
(_this$oldVCObserver2 = this.oldVCObserver) === null || _this$oldVCObserver2 === void 0 || _this$oldVCObserver2.stop();
|
|
62
|
+
}
|
|
63
|
+
if ((0, _config.isVCRevisionEnabled)('fy25.03', experienceKey)) {
|
|
64
|
+
var _this$newVCObserver2;
|
|
65
|
+
(_this$newVCObserver2 = this.newVCObserver) === null || _this$newVCObserver2 === void 0 || _this$newVCObserver2.stop();
|
|
92
66
|
}
|
|
93
67
|
}
|
|
94
68
|
}, {
|
|
95
69
|
key: "getVCRawData",
|
|
96
70
|
value: function getVCRawData() {
|
|
97
|
-
var _this$oldVCObserver$g, _this$
|
|
98
|
-
return (_this$oldVCObserver$g = (_this$
|
|
71
|
+
var _this$oldVCObserver$g, _this$oldVCObserver3;
|
|
72
|
+
return (_this$oldVCObserver$g = (_this$oldVCObserver3 = this.oldVCObserver) === null || _this$oldVCObserver3 === void 0 ? void 0 : _this$oldVCObserver3.getVCRawData()) !== null && _this$oldVCObserver$g !== void 0 ? _this$oldVCObserver$g : null;
|
|
99
73
|
}
|
|
100
74
|
}, {
|
|
101
75
|
key: "getVCResult",
|
|
102
76
|
value: function () {
|
|
103
77
|
var _getVCResult = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(param) {
|
|
104
|
-
var _this$
|
|
78
|
+
var _this$oldVCObserver4, _this$newVCObserver3, _ref2;
|
|
79
|
+
var experienceKey, v1v2Result, v3Result;
|
|
105
80
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
106
81
|
while (1) switch (_context.prev = _context.next) {
|
|
107
82
|
case 0:
|
|
108
|
-
if (!(0, _platformFeatureFlags.fg)('platform_ufo_vc_enable_revisions_by_experience')) {
|
|
109
|
-
_context.next = 23;
|
|
110
|
-
break;
|
|
111
|
-
}
|
|
112
83
|
experienceKey = param.experienceKey;
|
|
113
84
|
if (!((0, _config.isVCRevisionEnabled)('fy25.01', experienceKey) || (0, _config.isVCRevisionEnabled)('fy25.02', experienceKey))) {
|
|
114
|
-
_context.next =
|
|
85
|
+
_context.next = 7;
|
|
115
86
|
break;
|
|
116
87
|
}
|
|
117
|
-
_context.next =
|
|
118
|
-
return (_this$
|
|
119
|
-
case
|
|
88
|
+
_context.next = 4;
|
|
89
|
+
return (_this$oldVCObserver4 = this.oldVCObserver) === null || _this$oldVCObserver4 === void 0 ? void 0 : _this$oldVCObserver4.getVCResult(param);
|
|
90
|
+
case 4:
|
|
120
91
|
_context.t0 = _context.sent;
|
|
121
|
-
_context.next =
|
|
92
|
+
_context.next = 8;
|
|
122
93
|
break;
|
|
123
|
-
case
|
|
94
|
+
case 7:
|
|
124
95
|
_context.t0 = {};
|
|
125
|
-
case
|
|
96
|
+
case 8:
|
|
126
97
|
v1v2Result = _context.t0;
|
|
127
98
|
if (!(0, _config.isVCRevisionEnabled)('fy25.03', experienceKey)) {
|
|
128
|
-
_context.next =
|
|
99
|
+
_context.next = 15;
|
|
129
100
|
break;
|
|
130
101
|
}
|
|
131
|
-
_context.next =
|
|
132
|
-
return (_this$
|
|
102
|
+
_context.next = 12;
|
|
103
|
+
return (_this$newVCObserver3 = this.newVCObserver) === null || _this$newVCObserver3 === void 0 ? void 0 : _this$newVCObserver3.getVCResult({
|
|
133
104
|
start: param.start,
|
|
134
|
-
stop: param.stop
|
|
135
|
-
interactionId: param.interactionId
|
|
105
|
+
stop: param.stop
|
|
136
106
|
});
|
|
137
|
-
case
|
|
107
|
+
case 12:
|
|
138
108
|
_context.t1 = _context.sent;
|
|
139
|
-
_context.next =
|
|
109
|
+
_context.next = 16;
|
|
140
110
|
break;
|
|
141
|
-
case
|
|
111
|
+
case 15:
|
|
142
112
|
_context.t1 = [];
|
|
143
|
-
case
|
|
113
|
+
case 16:
|
|
144
114
|
v3Result = _context.t1;
|
|
145
115
|
if (v3Result) {
|
|
146
|
-
_context.next =
|
|
116
|
+
_context.next = 19;
|
|
147
117
|
break;
|
|
148
118
|
}
|
|
149
119
|
return _context.abrupt("return", v1v2Result !== null && v1v2Result !== void 0 ? v1v2Result : {});
|
|
150
|
-
case
|
|
120
|
+
case 19:
|
|
151
121
|
return _context.abrupt("return", _objectSpread(_objectSpread({}, v1v2Result), {}, {
|
|
152
122
|
'ufo:vc:rev': [].concat((0, _toConsumableArray2.default)((_ref2 = v1v2Result === null || v1v2Result === void 0 ? void 0 : v1v2Result['ufo:vc:rev']) !== null && _ref2 !== void 0 ? _ref2 : []), (0, _toConsumableArray2.default)(v3Result !== null && v3Result !== void 0 ? v3Result : []))
|
|
153
123
|
}));
|
|
154
|
-
case
|
|
155
|
-
_context.next = 25;
|
|
156
|
-
return (_this$oldVCObserver7 = this.oldVCObserver) === null || _this$oldVCObserver7 === void 0 ? void 0 : _this$oldVCObserver7.getVCResult(param);
|
|
157
|
-
case 25:
|
|
158
|
-
oldResult = _context.sent;
|
|
159
|
-
_context.next = 28;
|
|
160
|
-
return (_this$newVCObserver6 = this.newVCObserver) === null || _this$newVCObserver6 === void 0 ? void 0 : _this$newVCObserver6.getVCResult({
|
|
161
|
-
start: param.start,
|
|
162
|
-
stop: param.stop,
|
|
163
|
-
interactionId: param.interactionId
|
|
164
|
-
});
|
|
165
|
-
case 28:
|
|
166
|
-
newResult = _context.sent;
|
|
167
|
-
if (!(oldResult && !newResult)) {
|
|
168
|
-
_context.next = 31;
|
|
169
|
-
break;
|
|
170
|
-
}
|
|
171
|
-
return _context.abrupt("return", oldResult);
|
|
172
|
-
case 31:
|
|
173
|
-
return _context.abrupt("return", _objectSpread(_objectSpread({}, oldResult !== null && oldResult !== void 0 ? oldResult : {}), {}, {
|
|
174
|
-
'ufo:vc:rev': [].concat((0, _toConsumableArray2.default)((_ref3 = oldResult === null || oldResult === void 0 ? void 0 : oldResult['ufo:vc:rev']) !== null && _ref3 !== void 0 ? _ref3 : []), (0, _toConsumableArray2.default)(newResult !== null && newResult !== void 0 ? newResult : []))
|
|
175
|
-
}));
|
|
176
|
-
case 32:
|
|
124
|
+
case 20:
|
|
177
125
|
case "end":
|
|
178
126
|
return _context.stop();
|
|
179
127
|
}
|
|
@@ -187,20 +135,20 @@ var VCObserverWrapper = exports.VCObserverWrapper = /*#__PURE__*/function () {
|
|
|
187
135
|
}, {
|
|
188
136
|
key: "setSSRElement",
|
|
189
137
|
value: function setSSRElement(element) {
|
|
190
|
-
var _this$
|
|
191
|
-
(_this$
|
|
138
|
+
var _this$oldVCObserver5;
|
|
139
|
+
(_this$oldVCObserver5 = this.oldVCObserver) === null || _this$oldVCObserver5 === void 0 || _this$oldVCObserver5.setSSRElement(element);
|
|
192
140
|
}
|
|
193
141
|
}, {
|
|
194
142
|
key: "setReactRootRenderStart",
|
|
195
143
|
value: function setReactRootRenderStart(startTime) {
|
|
196
|
-
var _this$
|
|
197
|
-
(_this$
|
|
144
|
+
var _this$oldVCObserver6;
|
|
145
|
+
(_this$oldVCObserver6 = this.oldVCObserver) === null || _this$oldVCObserver6 === void 0 || _this$oldVCObserver6.setReactRootRenderStart(startTime || performance.now());
|
|
198
146
|
}
|
|
199
147
|
}, {
|
|
200
148
|
key: "setReactRootRenderStop",
|
|
201
149
|
value: function setReactRootRenderStop(stopTime) {
|
|
202
|
-
var _this$
|
|
203
|
-
(_this$
|
|
150
|
+
var _this$oldVCObserver7;
|
|
151
|
+
(_this$oldVCObserver7 = this.oldVCObserver) === null || _this$oldVCObserver7 === void 0 || _this$oldVCObserver7.setReactRootRenderStop(stopTime || performance.now());
|
|
204
152
|
}
|
|
205
153
|
}]);
|
|
206
154
|
}(); // Some products set this variable to indicate it is running in SSR
|
|
@@ -6,10 +6,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.getVCRevisionsData = getVCRevisionsData;
|
|
8
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
-
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
10
9
|
var _config = require("../../config");
|
|
11
10
|
var _hiddenTiming = require("../../hidden-timing");
|
|
12
|
-
var _revisions = require("./revisions/revisions");
|
|
13
11
|
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; } } }; }
|
|
14
12
|
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; } }
|
|
15
13
|
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; }
|
|
@@ -50,80 +48,28 @@ function getVCRevisionsData(_ref) {
|
|
|
50
48
|
interaction = _ref.interaction,
|
|
51
49
|
isVCClean = _ref.isVCClean,
|
|
52
50
|
isEventAborted = _ref.isEventAborted,
|
|
53
|
-
multiHeatmap = _ref.multiHeatmap,
|
|
54
|
-
ssr = _ref.ssr,
|
|
55
51
|
calculatedVC = _ref.calculatedVC,
|
|
56
52
|
calculatedVCNext = _ref.calculatedVCNext,
|
|
57
53
|
experienceKey = _ref.experienceKey;
|
|
58
|
-
var isTTVCv3Enabled = (0, _platformFeatureFlags.fg)('platform_ufo_vc_enable_revisions_by_experience') ? (0, _config.isVCRevisionEnabled)('fy25.03', experienceKey) : (0, _config.isVCRevisionEnabled)('fy25.03');
|
|
59
|
-
|
|
60
|
-
// As part of `platform_ufo_vc_enable_revisions_by_experience`, we are looking to turn off the `multiHeatmap` branch of code
|
|
61
|
-
// for calculating TTVC, and instead rely on existing values already available, e.g. `calculatedVC` and `calculatedVCNext`
|
|
62
|
-
if (!isTTVCv3Enabled && !(0, _platformFeatureFlags.fg)('platform_ufo_vc_enable_revisions_by_experience')) {
|
|
63
|
-
if (!multiHeatmap) {
|
|
64
|
-
return null;
|
|
65
|
-
}
|
|
66
|
-
return (0, _defineProperty2.default)({}, "".concat(fullPrefix, "vc:rev"), multiHeatmap === null || multiHeatmap === void 0 ? void 0 : multiHeatmap.getPayloadShapedData({
|
|
67
|
-
VCParts: VCParts.map(function (v) {
|
|
68
|
-
return parseInt(v);
|
|
69
|
-
}),
|
|
70
|
-
VCCalculationMethods: (0, _revisions.getRevisions)().map(function (_ref2) {
|
|
71
|
-
var classifier = _ref2.classifier;
|
|
72
|
-
return classifier.VCCalculationMethod;
|
|
73
|
-
}),
|
|
74
|
-
filterComponentsLog: (0, _revisions.getRevisions)().map(function (_ref3) {
|
|
75
|
-
var classifier = _ref3.classifier;
|
|
76
|
-
return classifier.filterComponentsLog;
|
|
77
|
-
}),
|
|
78
|
-
isEventAborted: isEventAborted,
|
|
79
|
-
interactionStart: interaction.start,
|
|
80
|
-
ttai: interaction.end,
|
|
81
|
-
ssr: ssr,
|
|
82
|
-
clean: isVCClean
|
|
83
|
-
}));
|
|
84
|
-
}
|
|
85
54
|
var pageVisibilityUpToTTAI = (0, _hiddenTiming.getPageVisibilityState)(interaction.start, interaction.end);
|
|
86
55
|
var isVisiblePageVisibleUpToTTAI = pageVisibilityUpToTTAI === 'visible';
|
|
87
56
|
var shouldHaveVCmetric = isVCClean && !isEventAborted && isVisiblePageVisibleUpToTTAI;
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
availableVCRevisionPayloads.push({
|
|
92
|
-
revision: 'fy25.01',
|
|
93
|
-
clean: isVCClean,
|
|
94
|
-
'metric:vc90': shouldHaveVCmetric ? calculatedVC.VC['90'] : null,
|
|
95
|
-
vcDetails: createVCDetails(calculatedVC, shouldHaveVCmetric)
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
if ((0, _config.isVCRevisionEnabled)('fy25.02', experienceKey)) {
|
|
99
|
-
availableVCRevisionPayloads.push({
|
|
100
|
-
revision: 'fy25.02',
|
|
101
|
-
clean: isVCClean,
|
|
102
|
-
'metric:vc90': shouldHaveVCmetric ? calculatedVCNext.VC['90'] : null,
|
|
103
|
-
vcDetails: createVCDetails(calculatedVCNext, shouldHaveVCmetric)
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
return (0, _defineProperty2.default)({}, "".concat(fullPrefix, "vc:rev"), availableVCRevisionPayloads);
|
|
107
|
-
} else {
|
|
108
|
-
// Create the V2 revision object which is always needed
|
|
109
|
-
var ttvcV2Revision = {
|
|
110
|
-
revision: 'fy25.02',
|
|
111
|
-
clean: isVCClean,
|
|
112
|
-
'metric:vc90': shouldHaveVCmetric ? calculatedVCNext.VC['90'] : null,
|
|
113
|
-
vcDetails: createVCDetails(calculatedVCNext, shouldHaveVCmetric)
|
|
114
|
-
};
|
|
115
|
-
var isTTVCv1Disabled = !(0, _config.isVCRevisionEnabled)('fy25.01');
|
|
116
|
-
if (isTTVCv1Disabled) {
|
|
117
|
-
return (0, _defineProperty2.default)({}, "".concat(fullPrefix, "vc:rev"), [ttvcV2Revision]);
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
// Only create ttvcV1Revision when we're actually going to use it
|
|
121
|
-
var ttvcV1Revision = {
|
|
57
|
+
var availableVCRevisionPayloads = [];
|
|
58
|
+
if ((0, _config.isVCRevisionEnabled)('fy25.01', experienceKey)) {
|
|
59
|
+
availableVCRevisionPayloads.push({
|
|
122
60
|
revision: 'fy25.01',
|
|
123
61
|
clean: isVCClean,
|
|
124
62
|
'metric:vc90': shouldHaveVCmetric ? calculatedVC.VC['90'] : null,
|
|
125
63
|
vcDetails: createVCDetails(calculatedVC, shouldHaveVCmetric)
|
|
126
|
-
};
|
|
127
|
-
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
if ((0, _config.isVCRevisionEnabled)('fy25.02', experienceKey)) {
|
|
67
|
+
availableVCRevisionPayloads.push({
|
|
68
|
+
revision: 'fy25.02',
|
|
69
|
+
clean: isVCClean,
|
|
70
|
+
'metric:vc90': shouldHaveVCmetric ? calculatedVCNext.VC['90'] : null,
|
|
71
|
+
vcDetails: createVCDetails(calculatedVCNext, shouldHaveVCmetric)
|
|
72
|
+
});
|
|
128
73
|
}
|
|
74
|
+
return (0, _defineProperty2.default)({}, "".concat(fullPrefix, "vc:rev"), availableVCRevisionPayloads);
|
|
129
75
|
}
|