@atlaskit/react-ufo 4.15.0 → 4.15.2
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 +14 -0
- package/dist/cjs/create-payload/index.js +18 -791
- package/dist/cjs/create-payload/utils/get-visibility-state-from-performance.js +1 -0
- package/dist/cjs/interaction-id-context/index.js +2 -1
- package/dist/cjs/vc/vc-observer/observers/ssr-placeholders/index.js +4 -0
- package/dist/cjs/vc/vc-observer-new/metric-calculator/fy25_03/index.js +1 -1
- package/dist/cjs/vc/vc-observer-new/viewport-observer/utils/get-mutated-elements.js +7 -0
- package/dist/es2019/create-payload/index.js +20 -712
- package/dist/es2019/create-payload/utils/get-visibility-state-from-performance.js +1 -0
- package/dist/es2019/interaction-id-context/index.js +2 -1
- package/dist/es2019/vc/vc-observer/observers/ssr-placeholders/index.js +4 -0
- package/dist/es2019/vc/vc-observer-new/metric-calculator/fy25_03/index.js +1 -1
- package/dist/es2019/vc/vc-observer-new/viewport-observer/utils/get-mutated-elements.js +7 -0
- package/dist/esm/create-payload/index.js +18 -783
- package/dist/esm/create-payload/utils/get-visibility-state-from-performance.js +1 -0
- package/dist/esm/interaction-id-context/index.js +2 -1
- package/dist/esm/vc/vc-observer/observers/ssr-placeholders/index.js +4 -0
- package/dist/esm/vc/vc-observer-new/metric-calculator/fy25_03/index.js +1 -1
- package/dist/esm/vc/vc-observer-new/viewport-observer/utils/get-mutated-elements.js +7 -0
- package/dist/types/assets/utils.d.ts +1 -1
- package/dist/types/create-experimental-interaction-metrics-payload/index.d.ts +2 -1
- package/dist/types/create-interaction-extra-metrics-payload/index.d.ts +17 -14
- package/dist/types/create-payload/index.d.ts +8598 -8594
- package/dist/types/create-payload/utils/get-more-accurate-page-visibility-up-to-ttai.d.ts +2 -1
- package/dist/types/create-payload/utils/get-page-visibility-up-to-ttai.d.ts +2 -1
- package/dist/types/create-payload/utils/get-react-ufo-payload-version.d.ts +1 -1
- package/dist/types/create-payload/utils/optimize-apdex.d.ts +2 -1
- package/dist/types/create-payload/utils/optimize-marks.d.ts +4 -3
- package/dist/types/create-post-interaction-log-payload/index.d.ts +5 -4
- package/dist/types/experience-trace-id-context/index.d.ts +2 -1
- package/dist/types/ignore-holds/index.d.ts +1 -1
- package/dist/types/interaction-id-context/index.d.ts +3 -2
- package/dist/types/label/UFOLabel.d.ts +1 -1
- package/dist/types/load-hold/UFOLoadHold.d.ts +1 -1
- package/dist/types/placeholder/loosely-lazy/wait-context.d.ts +2 -1
- package/dist/types/report-error/index.d.ts +1 -1
- package/dist/types/trace-interaction/internal/map-to-interaction-type.d.ts +1 -1
- package/dist/types/typing-performance-tracing/index.d.ts +2 -1
- package/dist/types/vc/vc-observer/media-wrapper/MediaWrapper.d.ts +1 -1
- package/dist/types/vc/vc-observer/observers/ssr-placeholders/index.d.ts +3 -3
- package/dist/types/vc/vc-observer-new/viewport-observer/performance-observer/index.d.ts +1 -1
- package/dist/types-ts4.5/assets/utils.d.ts +1 -1
- package/dist/types-ts4.5/create-experimental-interaction-metrics-payload/index.d.ts +2 -1
- package/dist/types-ts4.5/create-interaction-extra-metrics-payload/index.d.ts +17 -14
- package/dist/types-ts4.5/create-payload/index.d.ts +8598 -8594
- package/dist/types-ts4.5/create-payload/utils/get-more-accurate-page-visibility-up-to-ttai.d.ts +2 -1
- package/dist/types-ts4.5/create-payload/utils/get-page-visibility-up-to-ttai.d.ts +2 -1
- package/dist/types-ts4.5/create-payload/utils/get-react-ufo-payload-version.d.ts +1 -1
- package/dist/types-ts4.5/create-payload/utils/optimize-apdex.d.ts +2 -1
- package/dist/types-ts4.5/create-payload/utils/optimize-marks.d.ts +4 -3
- package/dist/types-ts4.5/create-post-interaction-log-payload/index.d.ts +5 -4
- package/dist/types-ts4.5/experience-trace-id-context/index.d.ts +2 -1
- package/dist/types-ts4.5/ignore-holds/index.d.ts +1 -1
- package/dist/types-ts4.5/interaction-id-context/index.d.ts +3 -2
- package/dist/types-ts4.5/label/UFOLabel.d.ts +1 -1
- package/dist/types-ts4.5/load-hold/UFOLoadHold.d.ts +1 -1
- package/dist/types-ts4.5/placeholder/loosely-lazy/wait-context.d.ts +2 -1
- package/dist/types-ts4.5/report-error/index.d.ts +1 -1
- package/dist/types-ts4.5/trace-interaction/internal/map-to-interaction-type.d.ts +1 -1
- package/dist/types-ts4.5/typing-performance-tracing/index.d.ts +2 -1
- package/dist/types-ts4.5/vc/vc-observer/media-wrapper/MediaWrapper.d.ts +1 -1
- package/dist/types-ts4.5/vc/vc-observer/observers/ssr-placeholders/index.d.ts +3 -3
- package/dist/types-ts4.5/vc/vc-observer-new/viewport-observer/performance-observer/index.d.ts +1 -1
- package/package.json +4 -1
|
@@ -4,6 +4,7 @@ export function getVisibilityStateFromPerformance(stop) {
|
|
|
4
4
|
if (!results || results.length === 0) {
|
|
5
5
|
return null;
|
|
6
6
|
}
|
|
7
|
+
// @ts-ignore
|
|
7
8
|
return results.reduce(function () {
|
|
8
9
|
var acc = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
|
|
9
10
|
var _ref = arguments.length > 1 ? arguments[1] : undefined,
|
|
@@ -63,7 +63,8 @@ export var subscribeToInteractionIdChanges = function subscribeToInteractionIdCh
|
|
|
63
63
|
};
|
|
64
64
|
|
|
65
65
|
// We use a context to allow modals to have their own lifecycle
|
|
66
|
-
|
|
66
|
+
var _default_1 = /*#__PURE__*/createContext(DefaultInteractionID);
|
|
67
|
+
export default _default_1;
|
|
67
68
|
export var getInteractionId = function getInteractionId() {
|
|
68
69
|
return DefaultInteractionID;
|
|
69
70
|
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
2
2
|
import _createClass from "@babel/runtime/helpers/createClass";
|
|
3
3
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
4
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
4
5
|
var ANCESTOR_LOOKUP_LIMIT = 10;
|
|
5
6
|
var PAGE_LAYOUT_ID = 'page-layout.root';
|
|
6
7
|
export var SSRPlaceholderHandlers = /*#__PURE__*/function () {
|
|
@@ -283,6 +284,9 @@ export var SSRPlaceholderHandlers = /*#__PURE__*/function () {
|
|
|
283
284
|
}, {
|
|
284
285
|
key: "getEffectiveBoundingRect",
|
|
285
286
|
value: function getEffectiveBoundingRect(el) {
|
|
287
|
+
if (fg('platform_ufo_disable_vcnext_observations')) {
|
|
288
|
+
return el.getBoundingClientRect();
|
|
289
|
+
}
|
|
286
290
|
var computedStyle = window.getComputedStyle(el);
|
|
287
291
|
|
|
288
292
|
// If element has display: contents, collect bounding rect from children
|
|
@@ -58,7 +58,7 @@ var VCCalculator_FY25_03 = /*#__PURE__*/function (_AbstractVCCalculator) {
|
|
|
58
58
|
if (entry.data.type === 'mutation:media' && fg('media-perf-uplift-mutation-fix')) {
|
|
59
59
|
var entryData = entry.data;
|
|
60
60
|
var attributeName = entryData.attributeName;
|
|
61
|
-
if (attributeName && (/data-(test|file|context
|
|
61
|
+
if (attributeName && (/data-(test|file|context)-\S+/g.test(attributeName) || attributeName === 'data-cursor' || attributeName === 'alt' || (attributeName === 'localid' || attributeName === 'contenteditable' || attributeName === 'anchor-name') && expVal('platform_editor_media_vc_fixes', 'isEnabled', false))) {
|
|
62
62
|
return false;
|
|
63
63
|
}
|
|
64
64
|
|
|
@@ -2,10 +2,17 @@ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
|
2
2
|
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; } } }; }
|
|
3
3
|
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; } }
|
|
4
4
|
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; }
|
|
5
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
5
6
|
var MAX_NESTED_LEVELS_OF_DISPLAY_CONTENT_ELEMENTS_HANDLED = 3;
|
|
6
7
|
export function getMutatedElements(element) {
|
|
7
8
|
var _window;
|
|
8
9
|
var depthLevel = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
10
|
+
if (fg('platform_ufo_disable_vcnext_observations')) {
|
|
11
|
+
return [{
|
|
12
|
+
element: element,
|
|
13
|
+
isDisplayContentsElementChildren: false
|
|
14
|
+
}];
|
|
15
|
+
}
|
|
9
16
|
if (((_window = window) === null || _window === void 0 || (_window = _window.getComputedStyle(element)) === null || _window === void 0 ? void 0 : _window.display) === 'contents') {
|
|
10
17
|
var mutatedElements = [];
|
|
11
18
|
var nestedDisplayContentsElementChildren = [];
|
|
@@ -3,7 +3,7 @@ export declare const cacheableTypes: string[];
|
|
|
3
3
|
export declare const MEMORY_KEY = "mem";
|
|
4
4
|
export declare const DISK_KEY = "disk";
|
|
5
5
|
export declare const NETWORK_KEY = "net";
|
|
6
|
-
export declare function calculateTransferType(name: string, type: string, duration: number, size: number | undefined):
|
|
6
|
+
export declare function calculateTransferType(name: string, type: string, duration: number, size: number | undefined): 'mem' | 'disk' | 'net' | null;
|
|
7
7
|
export declare function getTypeOfRequest({ name, initiatorType: type }: ResourceEntry): string;
|
|
8
8
|
export declare function checkIfTimingsAvailable(entry: ResourceEntry): boolean;
|
|
9
9
|
export declare function round(n: number): number;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { InteractionMetrics } from '../common';
|
|
2
|
+
import type { VCResult } from '../common/vc/types';
|
|
2
3
|
import type { VCObserverOptions } from '../vc/types';
|
|
3
4
|
import { VCObserver } from '../vc/vc-observer';
|
|
4
5
|
type InteractionMetricsHandler = (interactionId: string, interaction: InteractionMetrics) => void | Promise<void>;
|
|
@@ -13,5 +14,5 @@ export declare class ExperimentalVCMetrics {
|
|
|
13
14
|
}): void;
|
|
14
15
|
}
|
|
15
16
|
export declare const experimentalVC: ExperimentalVCMetrics;
|
|
16
|
-
export declare function getExperimentalVCMetrics(interaction: InteractionMetrics): Promise<
|
|
17
|
+
export declare function getExperimentalVCMetrics(interaction: InteractionMetrics): Promise<VCResult | null>;
|
|
17
18
|
export {};
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
import type { InteractionMetrics } from '../common';
|
|
1
|
+
import type { AbortReasonType, CustomData, HoldActive, InteractionMetrics, MarkType } from '../common';
|
|
2
|
+
import type { PageVisibility } from '../common/react-ufo-payload-schema';
|
|
2
3
|
import type { VCResult } from '../common/vc/types';
|
|
4
|
+
import type { OptimizedLabelStack } from '../create-payload/common/types';
|
|
3
5
|
import type { LabelStack } from '../interaction-context';
|
|
6
|
+
import type { UFOSegmentType } from '../segment/segment';
|
|
4
7
|
declare function createInteractionExtraLogPayload(interactionId: string, interaction: InteractionMetrics, lastInteractionFinish: InteractionMetrics | null, lastInteractionFinishVCResult?: VCResult): Promise<{
|
|
5
8
|
actionSubject: string;
|
|
6
9
|
action: string;
|
|
@@ -23,7 +26,7 @@ declare function createInteractionExtraLogPayload(interactionId: string, interac
|
|
|
23
26
|
interactionMetrics: {
|
|
24
27
|
errors: {
|
|
25
28
|
labelStack: string | {
|
|
26
|
-
t?:
|
|
29
|
+
t?: UFOSegmentType | undefined;
|
|
27
30
|
s?: string | undefined;
|
|
28
31
|
n: string;
|
|
29
32
|
}[] | null;
|
|
@@ -35,38 +38,38 @@ declare function createInteractionExtraLogPayload(interactionId: string, interac
|
|
|
35
38
|
errorHash?: string;
|
|
36
39
|
errorStatusCode?: number;
|
|
37
40
|
}[];
|
|
38
|
-
holdActive:
|
|
41
|
+
holdActive: HoldActive[];
|
|
39
42
|
holdInfo: any[];
|
|
40
43
|
spans: {
|
|
41
|
-
labelStack:
|
|
44
|
+
labelStack: OptimizedLabelStack;
|
|
42
45
|
startTime: number;
|
|
43
46
|
endTime: number;
|
|
44
47
|
type: string;
|
|
45
48
|
}[];
|
|
46
49
|
requestInfo: {
|
|
47
|
-
labelStack:
|
|
50
|
+
labelStack: OptimizedLabelStack;
|
|
48
51
|
startTime: number;
|
|
49
52
|
endTime: number;
|
|
50
53
|
}[];
|
|
51
54
|
customTimings: {
|
|
52
|
-
labelStack:
|
|
55
|
+
labelStack: OptimizedLabelStack;
|
|
53
56
|
startTime: number;
|
|
54
57
|
endTime: number;
|
|
55
58
|
}[];
|
|
56
59
|
segments: {};
|
|
57
60
|
marks: {
|
|
58
61
|
labelStack: string | {
|
|
59
|
-
t?:
|
|
62
|
+
t?: UFOSegmentType | undefined;
|
|
60
63
|
s?: string | undefined;
|
|
61
64
|
n: string;
|
|
62
65
|
}[] | null;
|
|
63
66
|
time: number;
|
|
64
|
-
type:
|
|
67
|
+
type: MarkType;
|
|
65
68
|
name: string;
|
|
66
69
|
}[];
|
|
67
70
|
apdex: {
|
|
68
71
|
labelStack?: string | {
|
|
69
|
-
t?:
|
|
72
|
+
t?: UFOSegmentType | undefined;
|
|
70
73
|
s?: string | undefined;
|
|
71
74
|
n: string;
|
|
72
75
|
}[] | undefined;
|
|
@@ -77,18 +80,18 @@ declare function createInteractionExtraLogPayload(interactionId: string, interac
|
|
|
77
80
|
reactProfilerTimings: any[];
|
|
78
81
|
customData: {
|
|
79
82
|
labelStack: LabelStack;
|
|
80
|
-
data:
|
|
83
|
+
data: CustomData;
|
|
81
84
|
}[];
|
|
82
85
|
'metric:vc90'?: number | null;
|
|
83
86
|
namePrefix: string;
|
|
84
87
|
segmentPrefix: string;
|
|
85
88
|
interactionId: string;
|
|
86
|
-
pageVisibilityAtTTAI:
|
|
87
|
-
experimental__pageVisibilityAtTTAI:
|
|
89
|
+
pageVisibilityAtTTAI: PageVisibility;
|
|
90
|
+
experimental__pageVisibilityAtTTAI: PageVisibility | null;
|
|
88
91
|
rate: number;
|
|
89
92
|
routeName: string | null;
|
|
90
|
-
type:
|
|
91
|
-
abortReason:
|
|
93
|
+
type: 'page_load' | 'transition';
|
|
94
|
+
abortReason: AbortReasonType | undefined;
|
|
92
95
|
previousInteractionName: string | undefined;
|
|
93
96
|
isPreviousInteractionAborted: boolean;
|
|
94
97
|
abortedByInteractionName: string | undefined;
|