@atlaskit/react-ufo 4.10.2 → 4.11.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.
Files changed (51) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/cjs/create-post-interaction-log-payload/index.js +12 -3
  3. package/dist/cjs/interaction-metrics/index.js +10 -4
  4. package/dist/cjs/interaction-metrics/post-interaction-log.js +13 -1
  5. package/dist/cjs/vc/vc-observer-new/metric-calculator/fy25_03/index.js +5 -0
  6. package/dist/cjs/vc/vc-observer-new/metric-calculator/vcnext/index.js +4 -1
  7. package/dist/cjs/vc/vc-observer-new/viewport-observer/index.js +26 -40
  8. package/dist/cjs/vc/vc-observer-new/viewport-observer/utils/is-element-visible.js +23 -0
  9. package/dist/cjs/vc/vc-observer-new/viewport-observer/utils/is-same-rect-dimensions.js +13 -0
  10. package/dist/cjs/vc/vc-observer-new/viewport-observer/utils/is-same-rect-size.js +13 -0
  11. package/dist/es2019/create-post-interaction-log-payload/index.js +9 -2
  12. package/dist/es2019/interaction-metrics/index.js +10 -4
  13. package/dist/es2019/interaction-metrics/post-interaction-log.js +11 -1
  14. package/dist/es2019/vc/vc-observer-new/metric-calculator/fy25_03/index.js +5 -0
  15. package/dist/es2019/vc/vc-observer-new/metric-calculator/vcnext/index.js +4 -1
  16. package/dist/es2019/vc/vc-observer-new/viewport-observer/index.js +25 -39
  17. package/dist/es2019/vc/vc-observer-new/viewport-observer/utils/is-element-visible.js +17 -0
  18. package/dist/es2019/vc/vc-observer-new/viewport-observer/utils/is-same-rect-dimensions.js +7 -0
  19. package/dist/es2019/vc/vc-observer-new/viewport-observer/utils/is-same-rect-size.js +7 -0
  20. package/dist/esm/create-post-interaction-log-payload/index.js +12 -3
  21. package/dist/esm/interaction-metrics/index.js +10 -4
  22. package/dist/esm/interaction-metrics/post-interaction-log.js +13 -1
  23. package/dist/esm/vc/vc-observer-new/metric-calculator/fy25_03/index.js +5 -0
  24. package/dist/esm/vc/vc-observer-new/metric-calculator/vcnext/index.js +4 -1
  25. package/dist/esm/vc/vc-observer-new/viewport-observer/index.js +25 -39
  26. package/dist/esm/vc/vc-observer-new/viewport-observer/utils/is-element-visible.js +17 -0
  27. package/dist/esm/vc/vc-observer-new/viewport-observer/utils/is-same-rect-dimensions.js +7 -0
  28. package/dist/esm/vc/vc-observer-new/viewport-observer/utils/is-same-rect-size.js +7 -0
  29. package/dist/types/common/common/types.d.ts +2 -0
  30. package/dist/types/common/react-ufo-payload-schema.d.ts +1 -0
  31. package/dist/types/create-interaction-extra-metrics-payload/index.d.ts +1 -0
  32. package/dist/types/create-payload/index.d.ts +384 -0
  33. package/dist/types/create-post-interaction-log-payload/index.d.ts +7 -1
  34. package/dist/types/interaction-metrics/index.d.ts +2 -2
  35. package/dist/types/interaction-metrics/post-interaction-log.d.ts +3 -1
  36. package/dist/types/vc/vc-observer-new/types.d.ts +1 -1
  37. package/dist/types/vc/vc-observer-new/viewport-observer/utils/is-element-visible.d.ts +1 -0
  38. package/dist/types/vc/vc-observer-new/viewport-observer/utils/is-same-rect-dimensions.d.ts +1 -0
  39. package/dist/types/vc/vc-observer-new/viewport-observer/utils/is-same-rect-size.d.ts +1 -0
  40. package/dist/types-ts4.5/common/common/types.d.ts +2 -0
  41. package/dist/types-ts4.5/common/react-ufo-payload-schema.d.ts +1 -0
  42. package/dist/types-ts4.5/create-interaction-extra-metrics-payload/index.d.ts +1 -0
  43. package/dist/types-ts4.5/create-payload/index.d.ts +384 -0
  44. package/dist/types-ts4.5/create-post-interaction-log-payload/index.d.ts +7 -1
  45. package/dist/types-ts4.5/interaction-metrics/index.d.ts +2 -2
  46. package/dist/types-ts4.5/interaction-metrics/post-interaction-log.d.ts +3 -1
  47. package/dist/types-ts4.5/vc/vc-observer-new/types.d.ts +1 -1
  48. package/dist/types-ts4.5/vc/vc-observer-new/viewport-observer/utils/is-element-visible.d.ts +1 -0
  49. package/dist/types-ts4.5/vc/vc-observer-new/viewport-observer/utils/is-same-rect-dimensions.d.ts +1 -0
  50. package/dist/types-ts4.5/vc/vc-observer-new/viewport-observer/utils/is-same-rect-size.d.ts +1 -0
  51. package/package.json +7 -1
@@ -1,6 +1,6 @@
1
1
  import { type PostInteractionLogOutput } from '../common';
2
2
  import type { LateMutation } from '../common/react-ufo-payload-schema';
3
- declare function createPostInteractionLogPayload({ lastInteractionFinish, reactProfilerTimings, lastInteractionFinishVCResult, postInteractionFinishVCResult, }: PostInteractionLogOutput): {
3
+ declare function createPostInteractionLogPayload({ lastInteractionFinish, reactProfilerTimings, lastInteractionFinishVCResult, postInteractionFinishVCResult, postInteractionHoldInfo }: PostInteractionLogOutput): {
4
4
  actionSubject: string;
5
5
  action: string;
6
6
  eventType: string;
@@ -18,6 +18,12 @@ declare function createPostInteractionLogPayload({ lastInteractionFinish, reactP
18
18
  'event:region': string;
19
19
  'experience:key': string;
20
20
  postInteractionLog: {
21
+ postInteractionHoldInfo?: {
22
+ labelStack: string;
23
+ name: string;
24
+ start: number;
25
+ ignoreOnSubmit?: boolean;
26
+ }[] | undefined;
21
27
  lastInteractionFinish: {
22
28
  ufoName: string;
23
29
  start: number;
@@ -35,8 +35,8 @@ export declare const ModuleLoadingProfiler: {
35
35
  placeholderFallBackMounted(id: string, moduleId: string): void;
36
36
  placeholderFallBackUnmounted(id: string): void;
37
37
  };
38
- export declare function addError(interactionId: string, name: string, labelStack: LabelStack | null, errorType: string, errorMessage: string, errorStack?: string, forcedError?: boolean, errorHash?: string): void;
39
- export declare function addErrorToAll(name: string, labelStack: LabelStack | null, errorType: string, errorMessage: string, errorStack?: string, errorHash?: string): void;
38
+ export declare function addError(interactionId: string, name: string, labelStack: LabelStack | null, errorType: string, errorMessage: string, errorStack?: string, forcedError?: boolean, errorHash?: string, errorStatusCode?: number): void;
39
+ export declare function addErrorToAll(name: string, labelStack: LabelStack | null, errorType: string, errorMessage: string, errorStack?: string, errorHash?: string, errorStatusCode?: number): void;
40
40
  export declare function addProfilerTimings(interactionId: string, labelStack: LabelStack, type: 'mount' | 'update' | 'nested-update', actualDuration: number, baseDuration: number, startTime: number, commitTime: number): void;
41
41
  export declare function sinkInteractionHandler(sinkFn: (id: string, data: InteractionMetrics) => void): void;
42
42
  export declare function sinkPostInteractionLogHandler(sinkFn: (output: PostInteractionLogOutput) => void | Promise<void>): void;
@@ -1,4 +1,4 @@
1
- import { type LastInteractionFinishInfo, type PostInteractionLogOutput, type ReactProfilerTiming } from '../common/common/types';
1
+ import { type HoldActive, type LastInteractionFinishInfo, type PostInteractionLogOutput, type ReactProfilerTiming } from '../common/common/types';
2
2
  import type { VCResult } from '../common/vc/types';
3
3
  import type { LabelStack } from '../interaction-context';
4
4
  import type { VCObserverInterface, VCObserverOptions } from '../vc/types';
@@ -15,6 +15,7 @@ export default class PostInteractionLog {
15
15
  * Store the scheduled sink timeout Id so that it can be cancelled when needed
16
16
  */
17
17
  sinkTimeoutId: number | null;
18
+ holdInfo: HoldActive[];
18
19
  /**
19
20
  * independent VC observer, that observes until `custom.post-interaction-logs` event is sent
20
21
  */
@@ -67,4 +68,5 @@ export default class PostInteractionLog {
67
68
  * This fn should be invoked when a React render happens after interaction has finished
68
69
  */
69
70
  addProfilerTimings(labelStack: LabelStack, type: 'mount' | 'update' | 'nested-update', actualDuration: number, baseDuration: number, startTime: number, commitTime: number): void;
71
+ addHoldInfo(labelStack: LabelStack, name: string, start: number): void;
70
72
  }
@@ -1,6 +1,6 @@
1
1
  import type { AbortReasonType, InteractionType } from '../../common/common/types';
2
2
  import type { ObservedWindowEvent } from './window-event-observer';
3
- export type VCObserverEntryType = 'mutation:child-element' | 'mutation:remount' | 'mutation:element' | 'mutation:element-replacement' | 'mutation:display-contents-children-element' | 'mutation:attribute:no-layout-shift' | 'mutation:attribute:non-visual-style' | 'mutation:attribute' | 'mutation:media' | 'mutation:rll-placeholder' | 'mutation:third-party-element' | 'mutation:ssr-placeholder' | 'layout-shift' | 'window:event' | 'ssr-hydration' | 'unknown';
3
+ export type VCObserverEntryType = 'mutation:child-element' | 'mutation:remount' | 'mutation:element' | 'mutation:element-replacement' | 'mutation:display-contents-children-element' | 'mutation:attribute:no-layout-shift' | 'mutation:attribute:non-visual-style' | 'mutation:attribute' | 'mutation:media' | 'mutation:rll-placeholder' | 'mutation:third-party-element' | 'mutation:ssr-placeholder' | 'layout-shift' | 'layout-shift:same-rect' | 'window:event' | 'ssr-hydration' | 'unknown';
4
4
  export type ViewportEntryData = {
5
5
  readonly type: VCObserverEntryType;
6
6
  readonly elementName: string;
@@ -0,0 +1 @@
1
+ export declare function isElementVisible(element: Element): boolean;
@@ -0,0 +1 @@
1
+ export declare function isSameRectDimensions(a: DOMRect | null | undefined, b: DOMRect | null | undefined): boolean;
@@ -0,0 +1 @@
1
+ export declare function isSameRectSize(a: DOMRect | null | undefined, b: DOMRect | null | undefined): boolean;
@@ -38,6 +38,7 @@ export interface InteractionError {
38
38
  errorStack?: string;
39
39
  forcedError?: boolean;
40
40
  errorHash?: string;
41
+ errorStatusCode?: number;
41
42
  }
42
43
  interface FlushInfo {
43
44
  label?: string;
@@ -223,5 +224,6 @@ export type PostInteractionLogOutput = {
223
224
  reactProfilerTimings?: ReactProfilerTiming[];
224
225
  postInteractionFinishVCResult?: VCResult;
225
226
  lastInteractionFinishVCResult?: VCResult;
227
+ postInteractionHoldInfo?: HoldActive[];
226
228
  };
227
229
  export {};
@@ -244,6 +244,7 @@ export type PostInteractionLogPayload = {
244
244
  vcClean: boolean;
245
245
  lateMutations: LateMutation[];
246
246
  reactProfilerTimings: ReactProfilerTiming[];
247
+ postInteractionHoldInfo?: HoldActive[];
247
248
  };
248
249
  };
249
250
  };
@@ -32,6 +32,7 @@ declare function createInteractionExtraLogPayload(interactionId: string, interac
32
32
  errorStack?: string;
33
33
  forcedError?: boolean;
34
34
  errorHash?: string;
35
+ errorStatusCode?: number;
35
36
  }[];
36
37
  holdActive: import("../common").HoldActive[];
37
38
  holdInfo: any[];