@atlaskit/react-ufo 2.14.3 → 2.15.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/dist/cjs/create-payload/index.js +10 -0
- package/dist/cjs/experience-trace-id-context/index.js +5 -1
- package/dist/cjs/segment/segment.js +7 -1
- package/dist/cjs/vc/vc-observer/heatmap/heatmap.js +275 -0
- package/dist/cjs/vc/vc-observer/index.js +115 -26
- package/dist/cjs/vc/vc-observer/revisions/ViewportUpdateClassifier.js +52 -0
- package/dist/cjs/vc/vc-observer/revisions/fy24_01.js +39 -0
- package/dist/cjs/vc/vc-observer/revisions/fy25_01.js +39 -0
- package/dist/cjs/vc/vc-observer/revisions/revisions.js +23 -0
- package/dist/cjs/vc/vc-observer/revisions/types.js +5 -0
- package/dist/es2019/create-payload/index.js +10 -0
- package/dist/es2019/experience-trace-id-context/index.js +4 -0
- package/dist/es2019/segment/segment.js +11 -3
- package/dist/es2019/vc/vc-observer/heatmap/heatmap.js +238 -0
- package/dist/es2019/vc/vc-observer/index.js +94 -3
- package/dist/es2019/vc/vc-observer/revisions/ViewportUpdateClassifier.js +35 -0
- package/dist/es2019/vc/vc-observer/revisions/fy24_01.js +21 -0
- package/dist/es2019/vc/vc-observer/revisions/fy25_01.js +21 -0
- package/dist/es2019/vc/vc-observer/revisions/revisions.js +19 -0
- package/dist/es2019/vc/vc-observer/revisions/types.js +1 -0
- package/dist/esm/create-payload/index.js +10 -0
- package/dist/esm/experience-trace-id-context/index.js +4 -0
- package/dist/esm/segment/segment.js +7 -1
- package/dist/esm/vc/vc-observer/heatmap/heatmap.js +268 -0
- package/dist/esm/vc/vc-observer/index.js +115 -26
- package/dist/esm/vc/vc-observer/revisions/ViewportUpdateClassifier.js +45 -0
- package/dist/esm/vc/vc-observer/revisions/fy24_01.js +32 -0
- package/dist/esm/vc/vc-observer/revisions/fy25_01.js +32 -0
- package/dist/esm/vc/vc-observer/revisions/revisions.js +17 -0
- package/dist/esm/vc/vc-observer/revisions/types.js +1 -0
- package/dist/types/common/vc/types.d.ts +27 -8
- package/dist/types/experience-trace-id-context/index.d.ts +1 -0
- package/dist/types/vc/vc-observer/heatmap/heatmap.d.ts +75 -0
- package/dist/types/vc/vc-observer/index.d.ts +5 -1
- package/dist/types/vc/vc-observer/revisions/ViewportUpdateClassifier.d.ts +25 -0
- package/dist/types/vc/vc-observer/revisions/fy24_01.d.ts +11 -0
- package/dist/types/vc/vc-observer/revisions/fy25_01.d.ts +13 -0
- package/dist/types/vc/vc-observer/revisions/revisions.d.ts +2 -0
- package/dist/types/vc/vc-observer/revisions/types.d.ts +5 -0
- package/dist/types-ts4.5/common/vc/types.d.ts +27 -8
- package/dist/types-ts4.5/experience-trace-id-context/index.d.ts +1 -0
- package/dist/types-ts4.5/vc/vc-observer/heatmap/heatmap.d.ts +75 -0
- package/dist/types-ts4.5/vc/vc-observer/index.d.ts +15 -1
- package/dist/types-ts4.5/vc/vc-observer/revisions/ViewportUpdateClassifier.d.ts +25 -0
- package/dist/types-ts4.5/vc/vc-observer/revisions/fy24_01.d.ts +11 -0
- package/dist/types-ts4.5/vc/vc-observer/revisions/fy25_01.d.ts +13 -0
- package/dist/types-ts4.5/vc/vc-observer/revisions/revisions.d.ts +2 -0
- package/dist/types-ts4.5/vc/vc-observer/revisions/types.d.ts +5 -0
- package/package.json +8 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @atlaskit/ufo-interaction-ignore
|
|
2
2
|
|
|
3
|
+
## 2.15.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#115462](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/115462)
|
|
8
|
+
[`17a3ace9d5f67`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/17a3ace9d5f67) -
|
|
9
|
+
Moved addSegment to useEffect to prevent it added multiple times when running on concurrent mode
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- Updated dependencies
|
|
14
|
+
|
|
3
15
|
## 2.14.3
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
|
@@ -222,6 +222,16 @@ var getVCMetrics = function getVCMetrics(interaction) {
|
|
|
222
222
|
if (interactionStatus.originalInteractionStatus !== 'SUCCEEDED' || pageVisibilityUpToTTAI !== 'visible') {
|
|
223
223
|
return result;
|
|
224
224
|
}
|
|
225
|
+
if ((0, _platformFeatureFlags.fg)('ufo_vc_multiheatmap')) {
|
|
226
|
+
var _result;
|
|
227
|
+
(_result = result["".concat(prefix, ":vc:rev")]) === null || _result === void 0 || _result.forEach(function (element) {
|
|
228
|
+
var _element$vcDetails;
|
|
229
|
+
if ((_element$vcDetails = element.vcDetails) !== null && _element$vcDetails !== void 0 && (_element$vcDetails = _element$vcDetails['90']) !== null && _element$vcDetails !== void 0 && _element$vcDetails.t) {
|
|
230
|
+
var _element$vcDetails$;
|
|
231
|
+
element['metric:vc90'] = (_element$vcDetails$ = element.vcDetails['90']) === null || _element$vcDetails$ === void 0 ? void 0 : _element$vcDetails$.t;
|
|
232
|
+
}
|
|
233
|
+
});
|
|
234
|
+
}
|
|
225
235
|
return _objectSpread(_objectSpread({}, result), {}, {
|
|
226
236
|
'metric:vc90': VC['90']
|
|
227
237
|
});
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.setInteractionActiveTrace = exports.setActiveTrace = exports.getActiveTraceHttpRequestHeaders = exports.getActiveTrace = exports.generateSpanId = exports.clearActiveTrace = void 0;
|
|
6
|
+
exports.setInteractionActiveTrace = exports.setActiveTrace = exports.getActiveTraceHttpRequestHeaders = exports.getActiveTraceAsQueryParams = exports.getActiveTrace = exports.generateSpanId = exports.clearActiveTrace = void 0;
|
|
7
7
|
var _makeTraceHttpRequestHeaders = require("./utils/make-trace-http-request-headers");
|
|
8
8
|
var state = {
|
|
9
9
|
context: null
|
|
@@ -37,4 +37,8 @@ var getActiveTraceHttpRequestHeaders = exports.getActiveTraceHttpRequestHeaders
|
|
|
37
37
|
traceId = _state$context.traceId,
|
|
38
38
|
spanId = _state$context.spanId;
|
|
39
39
|
return (0, _makeTraceHttpRequestHeaders.makeTraceHttpRequestHeaders)(traceId, spanId);
|
|
40
|
+
};
|
|
41
|
+
var getActiveTraceAsQueryParams = exports.getActiveTraceAsQueryParams = function getActiveTraceAsQueryParams(_url) {
|
|
42
|
+
var traceHeaders = getActiveTraceHttpRequestHeaders(_url);
|
|
43
|
+
return traceHeaders ? new URLSearchParams(traceHeaders).toString().toLowerCase() : null;
|
|
40
44
|
};
|
|
@@ -11,6 +11,7 @@ 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");
|
|
14
15
|
var _coinflip = _interopRequireDefault(require("../coinflip"));
|
|
15
16
|
var _config = require("../config");
|
|
16
17
|
var _experienceTraceIdContext = require("../experience-trace-id-context");
|
|
@@ -54,7 +55,9 @@ function UFOSegment(_ref) {
|
|
|
54
55
|
}, [parentContext, segmentName, segmentId]);
|
|
55
56
|
var interactionId = (0, _react.useContext)(_interactionIdContext.default);
|
|
56
57
|
var interactionContext = (0, _react.useMemo)(function () {
|
|
57
|
-
(0,
|
|
58
|
+
if (!(0, _platformFeatureFlags.fg)('platform-ufo-add-segment-use-effect')) {
|
|
59
|
+
(0, _interactionMetrics.addSegment)(labelStack);
|
|
60
|
+
}
|
|
58
61
|
var lastCompleteEndTime = 0;
|
|
59
62
|
function complete() {
|
|
60
63
|
var endTime = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : performance.now();
|
|
@@ -233,6 +236,9 @@ function UFOSegment(_ref) {
|
|
|
233
236
|
}
|
|
234
237
|
}, [interactionContext]);
|
|
235
238
|
(0, _react.useEffect)(function () {
|
|
239
|
+
if ((0, _platformFeatureFlags.fg)('platform-ufo-add-segment-use-effect')) {
|
|
240
|
+
(0, _interactionMetrics.addSegment)(labelStack);
|
|
241
|
+
}
|
|
236
242
|
return function () {
|
|
237
243
|
(0, _interactionMetrics.removeSegment)(labelStack);
|
|
238
244
|
};
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.MultiRevisionHeatmap = void 0;
|
|
8
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
9
|
+
var _objectDestructuringEmpty2 = _interopRequireDefault(require("@babel/runtime/helpers/objectDestructuringEmpty"));
|
|
10
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
+
var UNUSED_SECTOR = 0;
|
|
14
|
+
var MultiRevisionHeatmap = exports.MultiRevisionHeatmap = /*#__PURE__*/function () {
|
|
15
|
+
function MultiRevisionHeatmap(_ref) {
|
|
16
|
+
var _this = this;
|
|
17
|
+
var viewport = _ref.viewport,
|
|
18
|
+
revisions = _ref.revisions,
|
|
19
|
+
arraySize = _ref.arraySize,
|
|
20
|
+
devToolsEnabled = _ref.devToolsEnabled;
|
|
21
|
+
(0, _classCallCheck2.default)(this, MultiRevisionHeatmap);
|
|
22
|
+
(0, _defineProperty2.default)(this, "arraySize", {
|
|
23
|
+
w: 200,
|
|
24
|
+
h: 200
|
|
25
|
+
});
|
|
26
|
+
(0, _defineProperty2.default)(this, "mapPixelsToHeatmap", function (left, top, width, height) {
|
|
27
|
+
var _this$viewport = _this.viewport,
|
|
28
|
+
w = _this$viewport.w,
|
|
29
|
+
h = _this$viewport.h;
|
|
30
|
+
var l = Math.floor(left / w * _this.arraySize.w);
|
|
31
|
+
var t = Math.floor(top / h * _this.arraySize.h);
|
|
32
|
+
var r = Math.ceil((left + width) / w * _this.arraySize.w);
|
|
33
|
+
var b = Math.ceil((top + height) / h * _this.arraySize.h);
|
|
34
|
+
|
|
35
|
+
// correct values to min - 0, max - arraySize
|
|
36
|
+
var result = {
|
|
37
|
+
l: Math.max(0, l),
|
|
38
|
+
t: Math.max(0, t),
|
|
39
|
+
r: Math.min(_this.arraySize.w, r),
|
|
40
|
+
b: Math.min(_this.arraySize.h, b)
|
|
41
|
+
};
|
|
42
|
+
return result;
|
|
43
|
+
});
|
|
44
|
+
(0, _defineProperty2.default)(this, "getElementRatio", function (mappedValues) {
|
|
45
|
+
var r = mappedValues.r,
|
|
46
|
+
l = mappedValues.l,
|
|
47
|
+
b = mappedValues.b,
|
|
48
|
+
t = mappedValues.t;
|
|
49
|
+
return (r - l) * (b - t) / (_this.arraySize.w * _this.arraySize.h);
|
|
50
|
+
});
|
|
51
|
+
this.viewport = viewport;
|
|
52
|
+
this.revisions = revisions;
|
|
53
|
+
if (arraySize) {
|
|
54
|
+
this.arraySize = arraySize;
|
|
55
|
+
}
|
|
56
|
+
this.heatmaps = new Array(revisions.length);
|
|
57
|
+
this.componentsLogs = new Array(revisions.length);
|
|
58
|
+
this.vcRatios = new Array(revisions.length);
|
|
59
|
+
this.devToolsEnabled = devToolsEnabled || false;
|
|
60
|
+
revisions.forEach(function (_ref2, i) {
|
|
61
|
+
(0, _objectDestructuringEmpty2.default)(_ref2);
|
|
62
|
+
_this.heatmaps[i] = _this.getCleanHeatmap();
|
|
63
|
+
_this.componentsLogs[i] = {};
|
|
64
|
+
_this.vcRatios[i] = {};
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
return (0, _createClass2.default)(MultiRevisionHeatmap, [{
|
|
68
|
+
key: "handleUpdate",
|
|
69
|
+
value: function handleUpdate(_ref3) {
|
|
70
|
+
var _this2 = this;
|
|
71
|
+
var time = _ref3.time,
|
|
72
|
+
type = _ref3.type,
|
|
73
|
+
classification = _ref3.classification,
|
|
74
|
+
intersectionRect = _ref3.intersectionRect,
|
|
75
|
+
element = _ref3.element,
|
|
76
|
+
targetName = _ref3.targetName,
|
|
77
|
+
ignoreReason = _ref3.ignoreReason,
|
|
78
|
+
onError = _ref3.onError;
|
|
79
|
+
var mappedValues = this.mapPixelsToHeatmap(intersectionRect.left, intersectionRect.top, intersectionRect.width, intersectionRect.height);
|
|
80
|
+
var result = this.applyChangesToHeatMap(mappedValues, time, classification);
|
|
81
|
+
if (result !== true) {
|
|
82
|
+
onError(result);
|
|
83
|
+
}
|
|
84
|
+
var componentRatio = this.getElementRatio(mappedValues);
|
|
85
|
+
this.revisions.forEach(function (_, i) {
|
|
86
|
+
if (classification[i]) {
|
|
87
|
+
_this2.vcRatios[i][targetName] = componentRatio;
|
|
88
|
+
}
|
|
89
|
+
if (!_this2.componentsLogs[i][time]) {
|
|
90
|
+
_this2.componentsLogs[i][time] = [];
|
|
91
|
+
}
|
|
92
|
+
_this2.componentsLogs[i][time].push({
|
|
93
|
+
__debug__element: _this2.devToolsEnabled ? new WeakRef(element) : null,
|
|
94
|
+
intersectionRect: intersectionRect,
|
|
95
|
+
targetName: targetName,
|
|
96
|
+
ignoreReason: ignoreReason
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
}, {
|
|
101
|
+
key: "getData",
|
|
102
|
+
value: function getData() {
|
|
103
|
+
return {
|
|
104
|
+
heatmaps: this.heatmaps
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
}, {
|
|
108
|
+
key: "getPayloadShapedData",
|
|
109
|
+
value: function getPayloadShapedData(args) {
|
|
110
|
+
var result = this.processData(args);
|
|
111
|
+
var payload = this.revisions.map(function (rev, i) {
|
|
112
|
+
var vcDetails = {};
|
|
113
|
+
args.VCParts.forEach(function (VCPart) {
|
|
114
|
+
vcDetails[VCPart] = {
|
|
115
|
+
t: result[i].VC[VCPart] || 0,
|
|
116
|
+
e: Array.from(result[i].VCBox[VCPart] || [])
|
|
117
|
+
};
|
|
118
|
+
});
|
|
119
|
+
return {
|
|
120
|
+
revision: rev.name,
|
|
121
|
+
vcDetails: vcDetails,
|
|
122
|
+
clean: args.clean,
|
|
123
|
+
'metric:vc90': null // will be set or not in the payload generator
|
|
124
|
+
};
|
|
125
|
+
});
|
|
126
|
+
return payload;
|
|
127
|
+
}
|
|
128
|
+
}, {
|
|
129
|
+
key: "processData",
|
|
130
|
+
value: function processData(_ref4) {
|
|
131
|
+
var _this3 = this;
|
|
132
|
+
var VCParts = _ref4.VCParts,
|
|
133
|
+
_ref4$ssr = _ref4.ssr,
|
|
134
|
+
ssr = _ref4$ssr === void 0 ? UNUSED_SECTOR : _ref4$ssr;
|
|
135
|
+
return this.heatmaps.map(function (heatmap, i) {
|
|
136
|
+
var lastUpdate = {};
|
|
137
|
+
var totalPainted = 0;
|
|
138
|
+
var componentsLog = _this3.componentsLogs[i];
|
|
139
|
+
if (ssr !== UNUSED_SECTOR) {
|
|
140
|
+
var _window$document;
|
|
141
|
+
var element = {
|
|
142
|
+
__debug__element: new WeakRef((_window$document = window.document) === null || _window$document === void 0 ? void 0 : _window$document.body),
|
|
143
|
+
intersectionRect: {
|
|
144
|
+
top: 0,
|
|
145
|
+
left: 0,
|
|
146
|
+
right: 0,
|
|
147
|
+
bottom: 0,
|
|
148
|
+
x: 0,
|
|
149
|
+
y: 0,
|
|
150
|
+
width: _this3.viewport.w,
|
|
151
|
+
height: _this3.viewport.h,
|
|
152
|
+
toJSON: function toJSON() {
|
|
153
|
+
return {};
|
|
154
|
+
}
|
|
155
|
+
},
|
|
156
|
+
targetName: 'SSR'
|
|
157
|
+
};
|
|
158
|
+
if (!componentsLog[ssr]) {
|
|
159
|
+
componentsLog[ssr] = [];
|
|
160
|
+
}
|
|
161
|
+
componentsLog[ssr].push(element);
|
|
162
|
+
}
|
|
163
|
+
for (var _i = 0; _i < heatmap.length; _i++) {
|
|
164
|
+
var rounded = Math.floor(heatmap[_i] === UNUSED_SECTOR && ssr !== UNUSED_SECTOR ? ssr : heatmap[_i]);
|
|
165
|
+
totalPainted += rounded !== UNUSED_SECTOR ? 1 : 0;
|
|
166
|
+
if (rounded !== UNUSED_SECTOR) {
|
|
167
|
+
lastUpdate[rounded] = lastUpdate[rounded] ? lastUpdate[rounded] + 1 : 1;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
var entries = Object.entries(lastUpdate).map(function (a) {
|
|
171
|
+
return [parseInt(a[0], 10), a[1]];
|
|
172
|
+
}).sort(function (a, b) {
|
|
173
|
+
return a[0] > b[0] ? 1 : -1;
|
|
174
|
+
});
|
|
175
|
+
var VC = MultiRevisionHeatmap.makeVCReturnObj(VCParts);
|
|
176
|
+
var VCBox = MultiRevisionHeatmap.makeVCReturnObj(VCParts);
|
|
177
|
+
entries.reduce(function () {
|
|
178
|
+
var acc = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
|
|
179
|
+
var v = arguments.length > 1 ? arguments[1] : undefined;
|
|
180
|
+
var VCRatio = v[1] / totalPainted + acc;
|
|
181
|
+
var time = v[0];
|
|
182
|
+
VCParts.forEach(function (value) {
|
|
183
|
+
if ((VC[value] === null || VC[value] === undefined) && VCRatio >= value / 100) {
|
|
184
|
+
var _componentsLog$time;
|
|
185
|
+
VC[value] = time;
|
|
186
|
+
VCBox[value] = new Set();
|
|
187
|
+
(_componentsLog$time = componentsLog[time]) === null || _componentsLog$time === void 0 || _componentsLog$time.forEach(function (v) {
|
|
188
|
+
var _VCBox$value;
|
|
189
|
+
return (_VCBox$value = VCBox[value]) === null || _VCBox$value === void 0 ? void 0 : _VCBox$value.add(v.targetName);
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
});
|
|
193
|
+
return VCRatio;
|
|
194
|
+
}, 0);
|
|
195
|
+
var VCEntries = entries.reduce(function (acc, _ref5, i) {
|
|
196
|
+
var _acc$abs, _componentsLog$timest;
|
|
197
|
+
var _ref6 = (0, _slicedToArray2.default)(_ref5, 2),
|
|
198
|
+
timestamp = _ref6[0],
|
|
199
|
+
entryPainted = _ref6[1];
|
|
200
|
+
var currentlyPainted = entryPainted + (((_acc$abs = acc.abs[i - 1]) === null || _acc$abs === void 0 ? void 0 : _acc$abs[1]) || 0);
|
|
201
|
+
var currentlyPaintedRatio = Math.round(currentlyPainted / totalPainted * 1000) / 10;
|
|
202
|
+
var logEntry = (_componentsLog$timest = componentsLog[timestamp]) === null || _componentsLog$timest === void 0 ? void 0 : _componentsLog$timest.map(function (v) {
|
|
203
|
+
return v.targetName;
|
|
204
|
+
});
|
|
205
|
+
acc.abs.push([timestamp, currentlyPainted]);
|
|
206
|
+
acc.rel.push({
|
|
207
|
+
time: timestamp,
|
|
208
|
+
vc: currentlyPaintedRatio,
|
|
209
|
+
elements: logEntry
|
|
210
|
+
});
|
|
211
|
+
return acc;
|
|
212
|
+
}, {
|
|
213
|
+
abs: [],
|
|
214
|
+
rel: []
|
|
215
|
+
});
|
|
216
|
+
return {
|
|
217
|
+
VC: VC,
|
|
218
|
+
VCBox: VCBox,
|
|
219
|
+
VCEntries: VCEntries,
|
|
220
|
+
totalPainted: totalPainted
|
|
221
|
+
};
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
}, {
|
|
225
|
+
key: "applyChangesToHeatMap",
|
|
226
|
+
value: function applyChangesToHeatMap(a, time, classification) {
|
|
227
|
+
var l = a.l,
|
|
228
|
+
t = a.t,
|
|
229
|
+
r = a.r,
|
|
230
|
+
b = a.b;
|
|
231
|
+
var size = classification.length;
|
|
232
|
+
for (var row = t; row < b; row++) {
|
|
233
|
+
if (this.heatmaps[0][row] === undefined) {
|
|
234
|
+
try {
|
|
235
|
+
return {
|
|
236
|
+
error: "index - ".concat(row),
|
|
237
|
+
time: time
|
|
238
|
+
};
|
|
239
|
+
} catch (e) {
|
|
240
|
+
return {
|
|
241
|
+
error: 'row error',
|
|
242
|
+
time: time
|
|
243
|
+
};
|
|
244
|
+
}
|
|
245
|
+
} else {
|
|
246
|
+
for (var heatmapIndex = 0; heatmapIndex < size; heatmapIndex++) {
|
|
247
|
+
if (classification[heatmapIndex]) {
|
|
248
|
+
this.heatmaps[heatmapIndex].fill(time, this.getIndex(l, row), this.getIndex(r, row));
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
return true;
|
|
254
|
+
}
|
|
255
|
+
}, {
|
|
256
|
+
key: "getIndex",
|
|
257
|
+
value: function getIndex(x, y) {
|
|
258
|
+
return x + this.arraySize.w * y;
|
|
259
|
+
}
|
|
260
|
+
}, {
|
|
261
|
+
key: "getCleanHeatmap",
|
|
262
|
+
value: function getCleanHeatmap() {
|
|
263
|
+
return new Uint32Array(this.arraySize.w * this.arraySize.h);
|
|
264
|
+
}
|
|
265
|
+
}], [{
|
|
266
|
+
key: "makeVCReturnObj",
|
|
267
|
+
value: function makeVCReturnObj(VCParts) {
|
|
268
|
+
var vc = {};
|
|
269
|
+
VCParts.forEach(function (v) {
|
|
270
|
+
vc[v] = null;
|
|
271
|
+
});
|
|
272
|
+
return vc;
|
|
273
|
+
}
|
|
274
|
+
}]);
|
|
275
|
+
}();
|
|
@@ -13,7 +13,9 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
|
13
13
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
14
14
|
var _attachAbortListeners = require("./attachAbortListeners");
|
|
15
15
|
var _getViewport = require("./getViewport");
|
|
16
|
+
var _heatmap = require("./heatmap/heatmap");
|
|
16
17
|
var _observers = require("./observers");
|
|
18
|
+
var _revisions = require("./revisions/revisions");
|
|
17
19
|
var _excluded = ["__debug__element"];
|
|
18
20
|
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; }
|
|
19
21
|
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; }
|
|
@@ -54,6 +56,7 @@ var VCObserver = exports.VCObserver = /*#__PURE__*/function () {
|
|
|
54
56
|
});
|
|
55
57
|
/* heatmap */
|
|
56
58
|
(0, _defineProperty2.default)(this, "arraySize", 0);
|
|
59
|
+
(0, _defineProperty2.default)(this, "multiHeatmap", null);
|
|
57
60
|
(0, _defineProperty2.default)(this, "componentsLog", {});
|
|
58
61
|
(0, _defineProperty2.default)(this, "vcRatios", {});
|
|
59
62
|
(0, _defineProperty2.default)(this, "active", false);
|
|
@@ -85,6 +88,7 @@ var VCObserver = exports.VCObserver = /*#__PURE__*/function () {
|
|
|
85
88
|
abortReason: _objectSpread({}, _this.abortReason),
|
|
86
89
|
heatmap: _this.heatmap,
|
|
87
90
|
heatmapNext: _this.heatmapNext,
|
|
91
|
+
multiHeatmap: _this.multiHeatmap,
|
|
88
92
|
outOfBoundaryInfo: _this.outOfBoundaryInfo,
|
|
89
93
|
totalTime: Math.round(_this.totalTime + _this.observers.getTotalTime()),
|
|
90
94
|
componentsLog: _objectSpread({}, _this.componentsLog),
|
|
@@ -117,7 +121,8 @@ var VCObserver = exports.VCObserver = /*#__PURE__*/function () {
|
|
|
117
121
|
componentsLog = rawData.componentsLog,
|
|
118
122
|
viewport = rawData.viewport,
|
|
119
123
|
devToolsEnabled = rawData.devToolsEnabled,
|
|
120
|
-
ratios = rawData.ratios
|
|
124
|
+
ratios = rawData.ratios,
|
|
125
|
+
multiHeatmap = rawData.multiHeatmap;
|
|
121
126
|
if (abortReasonInfo !== null && abortReason.blocking) {
|
|
122
127
|
// exposing data to devtools
|
|
123
128
|
try {
|
|
@@ -153,6 +158,7 @@ var VCObserver = exports.VCObserver = /*#__PURE__*/function () {
|
|
|
153
158
|
/* empty */
|
|
154
159
|
}
|
|
155
160
|
var _componentsLog = {};
|
|
161
|
+
// eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
|
|
156
162
|
if ((0, _platformFeatureFlags.fg)('ufo-remove-vc-component-observations-after-ttai')) {
|
|
157
163
|
Object.entries(_this.componentsLog).forEach(function (_ref5) {
|
|
158
164
|
var _ref6 = (0, _slicedToArray2.default)(_ref5, 2),
|
|
@@ -209,9 +215,30 @@ var VCObserver = exports.VCObserver = /*#__PURE__*/function () {
|
|
|
209
215
|
tti: tti,
|
|
210
216
|
ttai: stop - start
|
|
211
217
|
},
|
|
218
|
+
start: start,
|
|
219
|
+
stop: stop,
|
|
212
220
|
heatmap: heatmap,
|
|
213
221
|
ratios: ratios
|
|
214
222
|
};
|
|
223
|
+
window.__vcNext = {
|
|
224
|
+
entries: vcNext.VCEntries.rel,
|
|
225
|
+
log: componentsLog,
|
|
226
|
+
metrics: {
|
|
227
|
+
'75': vcNext.VC['75'],
|
|
228
|
+
'80': vcNext.VC['80'],
|
|
229
|
+
'85': vcNext.VC['85'],
|
|
230
|
+
'90': vcNext.VC['90'],
|
|
231
|
+
'95': vcNext.VC['95'],
|
|
232
|
+
'98': vcNext.VC['98'],
|
|
233
|
+
'99': vcNext.VC['99'],
|
|
234
|
+
tti: tti,
|
|
235
|
+
ttai: stop - start
|
|
236
|
+
},
|
|
237
|
+
start: start,
|
|
238
|
+
stop: stop,
|
|
239
|
+
heatmap: heatmapNext,
|
|
240
|
+
ratios: ratios
|
|
241
|
+
};
|
|
215
242
|
|
|
216
243
|
// Emitting a custom event to make it available in the Chrome extension
|
|
217
244
|
window.dispatchEvent(new CustomEvent('vcReady', {
|
|
@@ -224,13 +251,36 @@ var VCObserver = exports.VCObserver = /*#__PURE__*/function () {
|
|
|
224
251
|
} catch (e) {
|
|
225
252
|
/* do nothing */
|
|
226
253
|
}
|
|
254
|
+
var isMultiHeatmapEnabled = (0, _platformFeatureFlags.fg)('ufo_vc_multiheatmap');
|
|
255
|
+
var revisionsData = isMultiHeatmapEnabled && multiHeatmap !== null ? (0, _defineProperty2.default)({}, "".concat(fullPrefix, "vc:rev"), multiHeatmap.getPayloadShapedData({
|
|
256
|
+
VCParts: VCObserver.VCParts.map(function (v) {
|
|
257
|
+
return parseInt(v);
|
|
258
|
+
}),
|
|
259
|
+
ssr: ssr,
|
|
260
|
+
clean: !abortReasonInfo
|
|
261
|
+
})) : null;
|
|
262
|
+
// eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
|
|
227
263
|
var isCalcSpeedIndexEnabled = (0, _platformFeatureFlags.fg)('ufo-calc-speed-index');
|
|
228
|
-
return _objectSpread(_objectSpread((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({
|
|
264
|
+
return _objectSpread(_objectSpread(_objectSpread((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({
|
|
229
265
|
'metrics:vc': VC
|
|
230
|
-
}, "".concat(fullPrefix, "vc:state"), true), "".concat(fullPrefix, "vc:clean"), !abortReasonInfo), "".concat(fullPrefix, "vc:dom"), VCBox), "".concat(fullPrefix, "vc:updates"), VCEntries.rel.slice(0, 50)), "".concat(fullPrefix, "vc:size"), viewport), "".concat(fullPrefix, "vc:time"), Math.round(totalTime + (stopTime - startTime))), "".concat(fullPrefix, "vc:total"), totalPainted), "".concat(fullPrefix, "vc:ratios"), ratios), outOfBoundary), {}, (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)(
|
|
266
|
+
}, "".concat(fullPrefix, "vc:state"), true), "".concat(fullPrefix, "vc:clean"), !abortReasonInfo), "".concat(fullPrefix, "vc:dom"), VCBox), "".concat(fullPrefix, "vc:updates"), VCEntries.rel.slice(0, 50)), "".concat(fullPrefix, "vc:size"), viewport), "".concat(fullPrefix, "vc:time"), Math.round(totalTime + (stopTime - startTime))), "".concat(fullPrefix, "vc:total"), totalPainted), "".concat(fullPrefix, "vc:ratios"), ratios), outOfBoundary), {}, (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, "".concat(fullPrefix, "vc:next"), vcNext.VC), "".concat(fullPrefix, "vc:next:updates"), vcNext.VCEntries.rel.slice(0, 50)), "".concat(fullPrefix, "vc:next:dom"), vcNext.VCBox), "".concat(fullPrefix, "vc:ignored"), _this.getIgnoredElements(componentsLog)), revisionsData), {}, (0, _defineProperty2.default)((0, _defineProperty2.default)({}, "ufo:speedIndex", isCalcSpeedIndexEnabled ? VCEntries.speedIndex : undefined), "ufo:next:speedIndex", isCalcSpeedIndexEnabled ? vcNext.VCEntries.speedIndex : undefined));
|
|
231
267
|
});
|
|
232
268
|
(0, _defineProperty2.default)(this, "handleUpdate", function (rawTime, intersectionRect, targetName, element, type, ignoreReason) {
|
|
233
269
|
_this.measureStart();
|
|
270
|
+
_this.legacyHandleUpdate(rawTime, intersectionRect, targetName, element, type, ignoreReason);
|
|
271
|
+
if ((0, _platformFeatureFlags.fg)('ufo_vc_multiheatmap')) {
|
|
272
|
+
_this.onViewportChangeDetected({
|
|
273
|
+
timestamp: rawTime,
|
|
274
|
+
intersectionRect: intersectionRect,
|
|
275
|
+
targetName: targetName,
|
|
276
|
+
element: element,
|
|
277
|
+
type: type,
|
|
278
|
+
ignoreReason: ignoreReason
|
|
279
|
+
});
|
|
280
|
+
}
|
|
281
|
+
_this.measureStop();
|
|
282
|
+
});
|
|
283
|
+
(0, _defineProperty2.default)(this, "legacyHandleUpdate", function (rawTime, intersectionRect, targetName, element, type, ignoreReason) {
|
|
234
284
|
if (_this.abortReason.reason === null || _this.abortReason.blocking === false) {
|
|
235
285
|
var time = Math.round(rawTime - _this.startTime);
|
|
236
286
|
var mappedValues = _this.mapPixelsToHeatmap(intersectionRect.left, intersectionRect.top, intersectionRect.width, intersectionRect.height);
|
|
@@ -251,8 +301,38 @@ var VCObserver = exports.VCObserver = /*#__PURE__*/function () {
|
|
|
251
301
|
ignoreReason: ignoreReason
|
|
252
302
|
});
|
|
253
303
|
}
|
|
254
|
-
|
|
255
|
-
|
|
304
|
+
});
|
|
305
|
+
(0, _defineProperty2.default)(this, "onViewportChangeDetected", function (_ref9) {
|
|
306
|
+
var element = _ref9.element,
|
|
307
|
+
type = _ref9.type,
|
|
308
|
+
ignoreReason = _ref9.ignoreReason,
|
|
309
|
+
timestamp = _ref9.timestamp,
|
|
310
|
+
targetName = _ref9.targetName,
|
|
311
|
+
intersectionRect = _ref9.intersectionRect;
|
|
312
|
+
if (_this.multiHeatmap === null) {
|
|
313
|
+
return;
|
|
314
|
+
}
|
|
315
|
+
// @todo add abort reason handling
|
|
316
|
+
var time = Math.round(timestamp - _this.startTime);
|
|
317
|
+
var revisions = (0, _revisions.getRevisions)();
|
|
318
|
+
var revisionsClassification = revisions.map(function (revision) {
|
|
319
|
+
return revision.classifier.classifyUpdate({
|
|
320
|
+
element: element,
|
|
321
|
+
type: type,
|
|
322
|
+
ignoreReason: ignoreReason
|
|
323
|
+
});
|
|
324
|
+
}, []);
|
|
325
|
+
_this.multiHeatmap.handleUpdate({
|
|
326
|
+
time: time,
|
|
327
|
+
targetName: targetName,
|
|
328
|
+
intersectionRect: intersectionRect,
|
|
329
|
+
type: type,
|
|
330
|
+
element: element,
|
|
331
|
+
classification: revisionsClassification,
|
|
332
|
+
onError: function onError(error) {
|
|
333
|
+
_this.setAbortReason(abortReason.error, error.time, error.error);
|
|
334
|
+
}
|
|
335
|
+
});
|
|
256
336
|
});
|
|
257
337
|
(0, _defineProperty2.default)(this, "mapPixelsToHeatmap", function (left, top, width, height) {
|
|
258
338
|
var _this$viewport = _this.viewport,
|
|
@@ -310,10 +390,10 @@ var VCObserver = exports.VCObserver = /*#__PURE__*/function () {
|
|
|
310
390
|
var unbinds = (0, _attachAbortListeners.attachAbortListeners)(window, _this.viewport, _this.abortReasonCallback);
|
|
311
391
|
if ((_window = window) !== null && _window !== void 0 && _window.__SSR_ABORT_LISTENERS__) {
|
|
312
392
|
var _window2;
|
|
313
|
-
Object.entries(window.__SSR_ABORT_LISTENERS__.aborts).forEach(function (
|
|
314
|
-
var
|
|
315
|
-
key =
|
|
316
|
-
time =
|
|
393
|
+
Object.entries(window.__SSR_ABORT_LISTENERS__.aborts).forEach(function (_ref10) {
|
|
394
|
+
var _ref11 = (0, _slicedToArray2.default)(_ref10, 2),
|
|
395
|
+
key = _ref11[0],
|
|
396
|
+
time = _ref11[1];
|
|
317
397
|
if (time) {
|
|
318
398
|
_this.abortReasonCallback(key, time);
|
|
319
399
|
}
|
|
@@ -337,12 +417,19 @@ var VCObserver = exports.VCObserver = /*#__PURE__*/function () {
|
|
|
337
417
|
});
|
|
338
418
|
this.heatmap = this.getCleanHeatmap();
|
|
339
419
|
this.heatmapNext = this.getCleanHeatmap();
|
|
420
|
+
if ((0, _platformFeatureFlags.fg)('ufo_vc_multiheatmap')) {
|
|
421
|
+
this.multiHeatmap = new _heatmap.MultiRevisionHeatmap({
|
|
422
|
+
viewport: this.viewport,
|
|
423
|
+
revisions: (0, _revisions.getRevisions)(),
|
|
424
|
+
devToolsEnabled: this.devToolsEnabled
|
|
425
|
+
});
|
|
426
|
+
}
|
|
340
427
|
this.isPostInteraction = options.isPostInteraction || false;
|
|
341
428
|
}
|
|
342
429
|
return (0, _createClass2.default)(VCObserver, [{
|
|
343
430
|
key: "start",
|
|
344
|
-
value: function start(
|
|
345
|
-
var startTime =
|
|
431
|
+
value: function start(_ref12) {
|
|
432
|
+
var startTime = _ref12.startTime;
|
|
346
433
|
this.active = true;
|
|
347
434
|
if (this.observers.isBrowserSupported()) {
|
|
348
435
|
this.setViewportSize();
|
|
@@ -364,12 +451,12 @@ var VCObserver = exports.VCObserver = /*#__PURE__*/function () {
|
|
|
364
451
|
}, {
|
|
365
452
|
key: "getIgnoredElements",
|
|
366
453
|
value: function getIgnoredElements(componentsLog) {
|
|
367
|
-
return Object.values(componentsLog).flat().filter(function (
|
|
368
|
-
var ignoreReason =
|
|
454
|
+
return Object.values(componentsLog).flat().filter(function (_ref13) {
|
|
455
|
+
var ignoreReason = _ref13.ignoreReason;
|
|
369
456
|
return Boolean(ignoreReason);
|
|
370
|
-
}).map(function (
|
|
371
|
-
var targetName =
|
|
372
|
-
ignoreReason =
|
|
457
|
+
}).map(function (_ref14) {
|
|
458
|
+
var targetName = _ref14.targetName,
|
|
459
|
+
ignoreReason = _ref14.ignoreReason;
|
|
373
460
|
return {
|
|
374
461
|
targetName: targetName,
|
|
375
462
|
ignoreReason: ignoreReason
|
|
@@ -490,12 +577,12 @@ var VCObserver = exports.VCObserver = /*#__PURE__*/function () {
|
|
|
490
577
|
}
|
|
491
578
|
}], [{
|
|
492
579
|
key: "calculateVC",
|
|
493
|
-
value: function calculateVC(
|
|
494
|
-
var heatmap =
|
|
495
|
-
|
|
496
|
-
ssr =
|
|
497
|
-
componentsLog =
|
|
498
|
-
viewport =
|
|
580
|
+
value: function calculateVC(_ref15) {
|
|
581
|
+
var heatmap = _ref15.heatmap,
|
|
582
|
+
_ref15$ssr = _ref15.ssr,
|
|
583
|
+
ssr = _ref15$ssr === void 0 ? UNUSED_SECTOR : _ref15$ssr,
|
|
584
|
+
componentsLog = _ref15.componentsLog,
|
|
585
|
+
viewport = _ref15.viewport;
|
|
499
586
|
var lastUpdate = {};
|
|
500
587
|
var totalPainted = 0;
|
|
501
588
|
if (ssr !== UNUSED_SECTOR) {
|
|
@@ -538,6 +625,8 @@ var VCObserver = exports.VCObserver = /*#__PURE__*/function () {
|
|
|
538
625
|
});
|
|
539
626
|
var VC = VCObserver.makeVCReturnObj();
|
|
540
627
|
var VCBox = VCObserver.makeVCReturnObj();
|
|
628
|
+
|
|
629
|
+
// eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
|
|
541
630
|
var isCalcSpeedIndexEnabled = (0, _platformFeatureFlags.fg)('ufo-calc-speed-index');
|
|
542
631
|
entries.reduce(function () {
|
|
543
632
|
var acc = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
|
|
@@ -562,11 +651,11 @@ var VCObserver = exports.VCObserver = /*#__PURE__*/function () {
|
|
|
562
651
|
});
|
|
563
652
|
return VCRatio;
|
|
564
653
|
}, 0);
|
|
565
|
-
var VCEntries = entries.reduce(function (acc,
|
|
654
|
+
var VCEntries = entries.reduce(function (acc, _ref16, i) {
|
|
566
655
|
var _acc$abs, _componentsLog$timest, _acc$rel$vc, _acc$rel;
|
|
567
|
-
var
|
|
568
|
-
timestamp =
|
|
569
|
-
entryPainted =
|
|
656
|
+
var _ref17 = (0, _slicedToArray2.default)(_ref16, 2),
|
|
657
|
+
timestamp = _ref17[0],
|
|
658
|
+
entryPainted = _ref17[1];
|
|
570
659
|
var currentlyPainted = entryPainted + (((_acc$abs = acc.abs[i - 1]) === null || _acc$abs === void 0 ? void 0 : _acc$abs[1]) || 0);
|
|
571
660
|
var currentlyPaintedRatio = Math.round(currentlyPainted / totalPainted * 1000) / 10;
|
|
572
661
|
var logEntry = (_componentsLog$timest = componentsLog[timestamp]) === null || _componentsLog$timest === void 0 ? void 0 : _componentsLog$timest.map(function (v) {
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.ViewportUpdateClassifier = void 0;
|
|
8
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
11
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
12
|
+
var ViewportUpdateClassifier = exports.ViewportUpdateClassifier = /*#__PURE__*/function () {
|
|
13
|
+
function ViewportUpdateClassifier() {
|
|
14
|
+
(0, _classCallCheck2.default)(this, ViewportUpdateClassifier);
|
|
15
|
+
(0, _defineProperty2.default)(this, "types", []);
|
|
16
|
+
(0, _defineProperty2.default)(this, "filters", []);
|
|
17
|
+
(0, _defineProperty2.default)(this, "removedFilters", []);
|
|
18
|
+
(0, _defineProperty2.default)(this, "__combinedTypes", []);
|
|
19
|
+
(0, _defineProperty2.default)(this, "__combinedFilters", []);
|
|
20
|
+
}
|
|
21
|
+
return (0, _createClass2.default)(ViewportUpdateClassifier, [{
|
|
22
|
+
key: "mergeConfig",
|
|
23
|
+
value: function mergeConfig() {
|
|
24
|
+
var _this = this;
|
|
25
|
+
this.__combinedTypes = [].concat((0, _toConsumableArray2.default)(this.types), (0, _toConsumableArray2.default)((this === null || this === void 0 ? void 0 : this.__combinedTypes) || []));
|
|
26
|
+
var previousFilters = this.removedFilters.length === 0 ? this.__combinedFilters : this.__combinedFilters.filter(function (filter) {
|
|
27
|
+
return !_this.removedFilters.includes(filter.name);
|
|
28
|
+
});
|
|
29
|
+
this.__combinedFilters = [].concat((0, _toConsumableArray2.default)(this.filters), (0, _toConsumableArray2.default)(previousFilters));
|
|
30
|
+
}
|
|
31
|
+
}, {
|
|
32
|
+
key: "classifyUpdate",
|
|
33
|
+
value: function classifyUpdate(_ref) {
|
|
34
|
+
var element = _ref.element,
|
|
35
|
+
type = _ref.type,
|
|
36
|
+
tags = _ref.tags,
|
|
37
|
+
ignoreReason = _ref.ignoreReason;
|
|
38
|
+
if (!this.__combinedTypes.includes(type)) {
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
return this.__combinedFilters.every(function (_ref2) {
|
|
42
|
+
var filter = _ref2.filter,
|
|
43
|
+
name = _ref2.name;
|
|
44
|
+
return filter({
|
|
45
|
+
type: type,
|
|
46
|
+
tags: tags,
|
|
47
|
+
ignoreReason: ignoreReason
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
}]);
|
|
52
|
+
}();
|