@atlaskit/react-ufo 3.3.2 → 3.4.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 +16 -0
- package/dist/cjs/assets/index.js +26 -16
- package/dist/cjs/assets/utils.js +47 -4
- package/dist/cjs/create-payload/index.js +58 -27
- package/dist/cjs/interaction-metrics-init/index.js +11 -9
- package/dist/cjs/vc/index.js +6 -2
- package/dist/cjs/vc/vc-observer-new/get-element-name.js +19 -6
- package/dist/cjs/vc/vc-observer-new/index.js +6 -3
- package/dist/cjs/vc/vc-observer-new/metric-calculator/abstract-base-vc-calculator.js +4 -2
- package/dist/cjs/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/canvas-pixel.js +10 -11
- package/dist/cjs/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/index.js +23 -30
- package/dist/cjs/vc/vc-observer-new/metric-calculator/percentile-calc/heatmap/index.js +7 -7
- package/dist/cjs/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/index.js +3 -3
- package/dist/cjs/vc/vc-observer-new/window-event-observer/index.js +5 -1
- package/dist/es2019/assets/index.js +27 -13
- package/dist/es2019/assets/utils.js +47 -3
- package/dist/es2019/create-payload/index.js +14 -9
- package/dist/es2019/interaction-metrics-init/index.js +11 -9
- package/dist/es2019/vc/index.js +6 -2
- package/dist/es2019/vc/vc-observer-new/get-element-name.js +19 -6
- package/dist/es2019/vc/vc-observer-new/index.js +7 -3
- package/dist/es2019/vc/vc-observer-new/metric-calculator/abstract-base-vc-calculator.js +4 -0
- package/dist/es2019/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/canvas-pixel.js +1 -2
- package/dist/es2019/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/index.js +15 -12
- package/dist/es2019/vc/vc-observer-new/metric-calculator/percentile-calc/heatmap/index.js +5 -4
- package/dist/es2019/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/index.js +3 -2
- package/dist/es2019/vc/vc-observer-new/window-event-observer/index.js +5 -1
- package/dist/esm/assets/index.js +27 -17
- package/dist/esm/assets/utils.js +46 -3
- package/dist/esm/create-payload/index.js +58 -27
- package/dist/esm/interaction-metrics-init/index.js +11 -9
- package/dist/esm/vc/index.js +6 -2
- package/dist/esm/vc/vc-observer-new/get-element-name.js +19 -6
- package/dist/esm/vc/vc-observer-new/index.js +6 -3
- package/dist/esm/vc/vc-observer-new/metric-calculator/abstract-base-vc-calculator.js +4 -2
- package/dist/esm/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/canvas-pixel.js +10 -11
- package/dist/esm/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/index.js +23 -30
- package/dist/esm/vc/vc-observer-new/metric-calculator/percentile-calc/heatmap/index.js +7 -7
- package/dist/esm/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/index.js +3 -3
- package/dist/esm/vc/vc-observer-new/window-event-observer/index.js +5 -1
- package/dist/types/assets/index.d.ts +5 -5
- package/dist/types/assets/utils.d.ts +4 -1
- package/dist/types/common/assets/types.d.ts +14 -8
- package/dist/types/common/index.d.ts +11 -1
- package/dist/types/config/index.d.ts +6 -0
- package/dist/types/create-payload/index.d.ts +769 -1
- package/dist/types/resource-timing/common/types.d.ts +1 -1
- package/dist/types/vc/vc-observer-new/index.d.ts +3 -2
- package/dist/types/vc/vc-observer-new/metric-calculator/abstract-base-vc-calculator.d.ts +1 -1
- package/dist/types/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/index.d.ts +2 -2
- package/dist/types/vc/vc-observer-new/metric-calculator/percentile-calc/heatmap/index.d.ts +2 -1
- package/dist/types/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/index.d.ts +2 -1
- package/dist/types/vc/vc-observer-new/metric-calculator/percentile-calc/types.d.ts +2 -0
- package/dist/types/vc/vc-observer-new/metric-calculator/types.d.ts +2 -0
- package/dist/types-ts4.5/assets/index.d.ts +5 -5
- package/dist/types-ts4.5/assets/utils.d.ts +4 -1
- package/dist/types-ts4.5/common/assets/types.d.ts +14 -8
- package/dist/types-ts4.5/common/index.d.ts +11 -1
- package/dist/types-ts4.5/config/index.d.ts +6 -0
- package/dist/types-ts4.5/create-payload/index.d.ts +769 -1
- package/dist/types-ts4.5/resource-timing/common/types.d.ts +1 -1
- package/dist/types-ts4.5/vc/vc-observer-new/index.d.ts +3 -2
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/abstract-base-vc-calculator.d.ts +1 -1
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/index.d.ts +2 -2
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/percentile-calc/heatmap/index.d.ts +2 -1
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/index.d.ts +2 -1
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/percentile-calc/types.d.ts +2 -0
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/types.d.ts +2 -0
- package/package.json +2 -2
|
@@ -5,13 +5,14 @@ export type VCObserverNewConfig = {
|
|
|
5
5
|
selectorConfig?: SelectorConfig;
|
|
6
6
|
};
|
|
7
7
|
export default class VCObserverNew {
|
|
8
|
-
startTime: number;
|
|
9
8
|
private selectorConfig;
|
|
10
9
|
private viewportObserver;
|
|
11
10
|
private windowEventObserver;
|
|
12
11
|
private entriesTimeline;
|
|
13
12
|
constructor(config: VCObserverNewConfig);
|
|
14
|
-
start(
|
|
13
|
+
start({ startTime }: {
|
|
14
|
+
startTime: DOMHighResTimeStamp;
|
|
15
|
+
}): void;
|
|
15
16
|
stop(): void;
|
|
16
17
|
getVCResult(param: VCObserverGetVCResultParam): Promise<RevisionPayloadEntry[]>;
|
|
17
18
|
private getElementName;
|
|
@@ -5,5 +5,5 @@ export default abstract class AbstractVCCalculatorBase implements VCCalculator {
|
|
|
5
5
|
constructor(revisionNo: string);
|
|
6
6
|
protected abstract isEntryIncluded(entry: VCObserverEntry): boolean;
|
|
7
7
|
protected abstract isVCClean(filteredEntries: ReadonlyArray<VCObserverEntry>): boolean;
|
|
8
|
-
calculate({ orderedEntries, }: VCCalculatorParam): Promise<RevisionPayloadEntry | undefined>;
|
|
8
|
+
calculate({ startTime, stopTime, orderedEntries, }: VCCalculatorParam): Promise<RevisionPayloadEntry | undefined>;
|
|
9
9
|
}
|
package/dist/types/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { RevisionPayloadVCDetails } from '../../types';
|
|
2
2
|
import type { CalcTTVCPercentilesArg } from '../types';
|
|
3
|
-
export default function calculateTTVCPercentiles({ viewport, orderedEntries, percentiles, }: CalcTTVCPercentilesArg): Promise<RevisionPayloadVCDetails>;
|
|
4
|
-
export declare function calculatePercentiles(timePixelCounts: Map<DOMHighResTimeStamp, number>, elementMap: ReadonlyMap<DOMHighResTimeStamp, Set<string>>, unorderedPercentiles: number[], totalPixels: number): RevisionPayloadVCDetails;
|
|
3
|
+
export default function calculateTTVCPercentiles({ viewport, orderedEntries, percentiles, startTime, }: CalcTTVCPercentilesArg): Promise<RevisionPayloadVCDetails>;
|
|
4
|
+
export declare function calculatePercentiles(timePixelCounts: Map<DOMHighResTimeStamp, number>, elementMap: ReadonlyMap<DOMHighResTimeStamp, Set<string>>, unorderedPercentiles: number[], totalPixels: number, startTime: DOMHighResTimeStamp): RevisionPayloadVCDetails;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { VCObserverEntry } from '../../../types';
|
|
2
2
|
import type { RevisionPayloadVCDetails } from '../../types';
|
|
3
3
|
import type { Viewport } from './types';
|
|
4
|
-
export default function calculateTTVCPercentiles({ orderedEntries, viewport, percentiles, }: {
|
|
4
|
+
export default function calculateTTVCPercentiles({ orderedEntries, viewport, percentiles, startTime, }: {
|
|
5
5
|
orderedEntries: ReadonlyArray<VCObserverEntry>;
|
|
6
6
|
viewport: Viewport;
|
|
7
7
|
percentiles: number[];
|
|
8
|
+
startTime: DOMHighResTimeStamp;
|
|
8
9
|
}): Promise<RevisionPayloadVCDetails>;
|
|
@@ -16,8 +16,9 @@ export type CheckpointMetrics = {
|
|
|
16
16
|
e: DOMSelector[];
|
|
17
17
|
};
|
|
18
18
|
};
|
|
19
|
-
export default function calculateTTVCPercentiles({ orderedEntries, viewport, percentiles, }: {
|
|
19
|
+
export default function calculateTTVCPercentiles({ orderedEntries, viewport, percentiles, startTime, }: {
|
|
20
20
|
orderedEntries: ReadonlyArray<VCObserverEntry>;
|
|
21
21
|
viewport: Viewport;
|
|
22
22
|
percentiles: number[];
|
|
23
|
+
startTime: DOMHighResTimeStamp;
|
|
23
24
|
}): Promise<CheckpointMetrics>;
|
|
@@ -13,6 +13,8 @@ export type RevisionPayloadEntry = {
|
|
|
13
13
|
};
|
|
14
14
|
export type RevisionPayload = RevisionPayloadEntry[];
|
|
15
15
|
export type VCCalculatorParam = {
|
|
16
|
+
startTime: DOMHighResTimeStamp;
|
|
17
|
+
stopTime: DOMHighResTimeStamp;
|
|
16
18
|
orderedEntries: ReadonlyArray<VCObserverEntry>;
|
|
17
19
|
};
|
|
18
20
|
export interface VCCalculator {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
1
|
+
import type { AssetsConfig, AssetsData, AssetsReporter } from '../common';
|
|
2
|
+
import type { ResourceEntry } from '../resource-timing/common/types';
|
|
3
3
|
export declare class CHRSummary {
|
|
4
4
|
bundles: {
|
|
5
5
|
mem: number;
|
|
@@ -13,13 +13,13 @@ export declare class CHRSummary {
|
|
|
13
13
|
net: number;
|
|
14
14
|
};
|
|
15
15
|
sizeTotal: number;
|
|
16
|
-
add(asset:
|
|
16
|
+
add(asset: ResourceEntry): void;
|
|
17
17
|
static makePayload(summary: CHRSummary): AssetsReporter;
|
|
18
18
|
}
|
|
19
19
|
export declare class CHRReporter {
|
|
20
20
|
all: CHRSummary;
|
|
21
21
|
allAtlassian: CHRSummary;
|
|
22
22
|
preloaded: CHRSummary;
|
|
23
|
-
|
|
24
|
-
get(resourceTimings:
|
|
23
|
+
defaultAllowedTypes: string[];
|
|
24
|
+
get(resourceTimings: ResourceEntry[] | null, assetsConfig: AssetsConfig, SSRDoneTime: number | undefined): AssetsData | null;
|
|
25
25
|
}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
import type { ResourceEntry } from "../resource-timing/common/types";
|
|
1
2
|
export declare const cacheableTypes: string[];
|
|
2
3
|
export declare const MEMORY_KEY = "mem";
|
|
3
4
|
export declare const DISK_KEY = "disk";
|
|
4
5
|
export declare const NETWORK_KEY = "net";
|
|
5
|
-
export declare const calculateTransferType: (type: string, duration: number, size: number | undefined) => "disk" | "mem" | "net" | null;
|
|
6
|
+
export declare const calculateTransferType: (name: string, type: string, duration: number, size: number | undefined) => "disk" | "mem" | "net" | null;
|
|
7
|
+
export declare const getTypeOfRequest: ({ name, initiatorType: type }: ResourceEntry) => string;
|
|
8
|
+
export declare const checkIfTimingsAvailable: (entry: ResourceEntry) => boolean;
|
|
6
9
|
export declare const round: (n: number) => number;
|
|
@@ -1,12 +1,18 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export type
|
|
3
|
-
|
|
4
|
-
entry: ResourceTiming;
|
|
1
|
+
import type { ResourceEntry } from '../../resource-timing/common/types';
|
|
2
|
+
export type AssetsConfigAllAtlassianArgs = {
|
|
3
|
+
entry: ResourceEntry;
|
|
5
4
|
};
|
|
6
|
-
export type
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
export type AssetsConfigPreloadedArgs = {
|
|
6
|
+
entry: ResourceEntry;
|
|
7
|
+
SSRDoneTime?: number;
|
|
8
|
+
};
|
|
9
|
+
export type AssetsConfig = {
|
|
10
|
+
allowedTypes: string[];
|
|
11
|
+
classification: {
|
|
12
|
+
all: boolean;
|
|
13
|
+
allAtlassian: (args: AssetsConfigAllAtlassianArgs) => boolean;
|
|
14
|
+
preloaded: (args: AssetsConfigPreloadedArgs) => boolean;
|
|
15
|
+
};
|
|
10
16
|
};
|
|
11
17
|
export type AssetsReporter = {
|
|
12
18
|
size: number | null;
|
|
@@ -1,4 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @private
|
|
3
|
+
* @deprecated API - clean up with next reactUFO major version
|
|
4
|
+
*/
|
|
5
|
+
export type AssetResourceEntry = any;
|
|
6
|
+
/**
|
|
7
|
+
* @private
|
|
8
|
+
* @deprecated API - clean up with next reactUFO major version
|
|
9
|
+
*/
|
|
10
|
+
export type AssetsClassification = any;
|
|
11
|
+
export type { AssetsConfig, AssetsData, AssetsReporter, AssetsConfigAllAtlassianArgs, AssetsConfigPreloadedArgs, } from './assets/types';
|
|
2
12
|
export type { LifecycleMarkType, MarkType, SpanType, InteractionType, AbortReasonType, CustomTiming, HoldInfo, LoadProfilerEventInfo, ReactProfilerTiming, Span, Mark, InteractionError, RequestInfo, ApdexType, SegmentInfo, CustomData, HoldActive, Redirect, InteractionMetrics, EnhancedUFOInteractionContextType, BM3Event, PostInteractionLogOutput, LastInteractionFinishInfo, } from './common/types';
|
|
3
13
|
export type { MultiHeatmapPayload } from './vc/types';
|
|
4
14
|
/**
|
|
@@ -57,7 +57,12 @@ export type Config = {
|
|
|
57
57
|
readonly getSSRTimings?: () => SSRTiming[];
|
|
58
58
|
readonly getSSRDoneTime?: () => number | undefined;
|
|
59
59
|
};
|
|
60
|
+
/**
|
|
61
|
+
* @private
|
|
62
|
+
* @deprecated remove me with next major release
|
|
63
|
+
*/
|
|
60
64
|
readonly assetsClassification?: AssetsClassification;
|
|
65
|
+
readonly assetsConfig?: AssetsClassification;
|
|
61
66
|
readonly enableBetterPageVisibilityApi?: boolean;
|
|
62
67
|
readonly vc?: {
|
|
63
68
|
readonly enabled?: boolean;
|
|
@@ -68,6 +73,7 @@ export type Config = {
|
|
|
68
73
|
readonly ssr?: boolean;
|
|
69
74
|
readonly ssrWhitelist?: string[];
|
|
70
75
|
readonly stopVCAtInteractionFinish?: boolean;
|
|
76
|
+
readonly enableVCObserverNew?: boolean;
|
|
71
77
|
};
|
|
72
78
|
readonly postInteractionLog?: {
|
|
73
79
|
readonly enabled?: boolean;
|