@atlaskit/react-ufo 3.4.14 → 3.5.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 +8 -0
- package/dist/cjs/additional-payload/utils/cache-hit-ratio/index.js +5 -4
- package/dist/cjs/additional-payload/utils/lighthouse-metrics/cls/index.js +3 -2
- package/dist/cjs/additional-payload/utils/lighthouse-metrics/index.js +6 -6
- package/dist/cjs/additional-payload/utils/lighthouse-metrics/tbt/index.js +3 -2
- package/dist/cjs/additional-payload/utils/lighthouse-metrics/utils/buffer/index.js +3 -0
- package/dist/cjs/additional-payload/utils/lighthouse-metrics/utils/observer/index.js +9 -7
- package/dist/cjs/assets/index.js +17 -14
- package/dist/cjs/assets/utils.js +9 -8
- package/dist/cjs/bundle-eval-timing/index.js +8 -8
- package/dist/cjs/coinflip/index.js +5 -3
- package/dist/cjs/common/constants.js +3 -2
- package/dist/cjs/common/react-ufo-payload-schema.js +5 -0
- package/dist/cjs/config/index.js +30 -42
- package/dist/cjs/create-experimental-interaction-metrics-payload/index.js +29 -39
- package/dist/cjs/create-payload/common/utils/index.js +16 -20
- package/dist/cjs/create-payload/index.js +150 -140
- package/dist/cjs/create-payload/utils/get-interaction-status.js +5 -3
- package/dist/cjs/create-payload/utils/get-page-visibility-up-to-ttai.js +5 -3
- package/dist/cjs/create-payload/utils/get-ssr-done-time-value.js +5 -3
- package/dist/cjs/create-payload/utils/get-vc-metrics.js +10 -8
- package/dist/cjs/create-post-interaction-log-payload/index.js +15 -13
- package/dist/cjs/custom-data/index.js +4 -3
- package/dist/cjs/custom-mark/index.js +4 -3
- package/dist/cjs/custom-spans/index.js +4 -3
- package/dist/cjs/custom-timings/index.js +6 -6
- package/dist/cjs/experience-trace-id-context/index.js +15 -14
- package/dist/cjs/experience-trace-id-context/utils/make-trace-http-request-headers/index.js +3 -2
- package/dist/cjs/feature-flags-accessed/common/utils/index.js +11 -10
- package/dist/cjs/feature-flags-accessed/index.js +3 -2
- package/dist/cjs/generate-id/index.js +5 -3
- package/dist/cjs/global-error-handler/index.js +14 -13
- package/dist/cjs/initial-page-load-extra-timing/index.js +6 -6
- package/dist/cjs/interaction-metrics/index.js +110 -145
- package/dist/cjs/interaction-metrics/post-interaction-log.js +10 -0
- package/dist/cjs/interaction-metrics-init/index.js +17 -10
- package/dist/cjs/interaction-metrics-init/schedule-idle-callback.js +8 -4
- package/dist/cjs/resource-timing/common/utils/config.js +10 -10
- package/dist/cjs/resource-timing/common/utils/resource-timing-buffer.js +13 -12
- package/dist/cjs/resource-timing/main.js +25 -19
- package/dist/cjs/resource-timing/utils.js +4 -3
- package/dist/cjs/round-number/index.js +3 -2
- package/dist/cjs/route-name/index.js +5 -3
- package/dist/cjs/segment/schedule-on-paint.js +6 -3
- package/dist/cjs/segment/segment.js +7 -3
- package/dist/cjs/self-measurements/index.js +261 -0
- package/dist/cjs/set-interaction-error/index.js +4 -3
- package/dist/cjs/short-id/index.js +5 -3
- package/dist/cjs/ssr/index.js +18 -21
- package/dist/cjs/trace-interaction/index.js +7 -5
- package/dist/cjs/trace-pageload/index.js +7 -6
- package/dist/cjs/trace-press/index.js +5 -3
- package/dist/cjs/trace-redirect/index.js +5 -3
- package/dist/cjs/trace-transition/index.js +6 -4
- package/dist/cjs/trace-transition/utils/generate-span-id/index.js +3 -2
- package/dist/cjs/trace-transition/utils/set-interaction-active-trace/index.js +3 -2
- package/dist/cjs/vc/index.js +17 -6
- package/dist/cjs/vc/vc-observer/attachAbortListeners.js +3 -2
- package/dist/cjs/vc/vc-observer/getVCRevisionsData.js +41 -22
- package/dist/cjs/vc/vc-observer/getViewport.js +6 -6
- package/dist/cjs/vc/vc-observer/heatmap/heatmap.js +28 -12
- package/dist/cjs/vc/vc-observer/index.js +172 -133
- package/dist/cjs/vc/vc-observer/media-wrapper/vc-utils.js +3 -2
- package/dist/cjs/vc/vc-observer/observers/editor-lnv/index.js +17 -0
- package/dist/cjs/vc/vc-observer/observers/index.js +82 -25
- package/dist/cjs/vc/vc-observer/observers/non-visual-styles/is-non-visual-style-mutation.js +5 -3
- package/dist/cjs/vc/vc-observer/observers/ssr-placeholders/index.js +16 -0
- package/dist/cjs/vc/vc-observer/revisions/fy25_01.js +2 -0
- package/dist/cjs/vc/vc-observer/revisions/fy25_02.js +2 -0
- package/dist/cjs/vc/vc-observer/revisions/revisions.js +3 -2
- package/dist/cjs/vc/vc-observer-new/entries-timeline/index.js +9 -0
- package/dist/cjs/vc/vc-observer-new/get-element-name.js +5 -3
- package/dist/cjs/vc/vc-observer-new/get-unique-element-name.js +13 -11
- package/dist/cjs/vc/vc-observer-new/index.js +9 -0
- package/dist/cjs/vc/vc-observer-new/metric-calculator/abstract-base-vc-calculator.js +2 -0
- package/dist/cjs/vc/vc-observer-new/metric-calculator/fy25_03/index.js +6 -1
- package/dist/cjs/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/canvas-pixel.js +20 -12
- package/dist/cjs/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/index.js +27 -26
- package/dist/cjs/vc/vc-observer-new/metric-calculator/percentile-calc/heatmap/heatmap.js +18 -6
- package/dist/cjs/vc/vc-observer-new/metric-calculator/percentile-calc/heatmap/index.js +27 -14
- package/dist/cjs/vc/vc-observer-new/metric-calculator/percentile-calc/index.js +10 -8
- package/dist/cjs/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/calc-union-area.js +50 -40
- package/dist/cjs/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/index.js +10 -8
- package/dist/cjs/vc/vc-observer-new/metric-calculator/utils/get-viewport-height.js +5 -3
- package/dist/cjs/vc/vc-observer-new/metric-calculator/utils/get-viewport-width.js +5 -3
- package/dist/cjs/vc/vc-observer-new/metric-calculator/utils/is-viewport-entry-data.js +5 -3
- package/dist/cjs/vc/vc-observer-new/metric-calculator/utils/task-yield.js +10 -8
- package/dist/cjs/vc/vc-observer-new/viewport-observer/index.js +15 -7
- package/dist/cjs/vc/vc-observer-new/viewport-observer/intersection-observer/index.js +15 -12
- package/dist/cjs/vc/vc-observer-new/viewport-observer/mutation-observer/index.js +16 -13
- package/dist/cjs/vc/vc-observer-new/viewport-observer/performance-observer/index.js +11 -9
- package/dist/cjs/vc/vc-observer-new/window-event-observer/index.js +7 -1
- package/dist/es2019/additional-payload/utils/cache-hit-ratio/index.js +6 -5
- package/dist/es2019/additional-payload/utils/lighthouse-metrics/cls/index.js +3 -2
- package/dist/es2019/additional-payload/utils/lighthouse-metrics/index.js +6 -5
- package/dist/es2019/additional-payload/utils/lighthouse-metrics/tbt/index.js +16 -13
- package/dist/es2019/additional-payload/utils/lighthouse-metrics/utils/buffer/index.js +3 -0
- package/dist/es2019/additional-payload/utils/lighthouse-metrics/utils/observer/index.js +9 -7
- package/dist/es2019/assets/index.js +19 -14
- package/dist/es2019/assets/utils.js +11 -9
- package/dist/es2019/bundle-eval-timing/index.js +7 -6
- package/dist/es2019/coinflip/index.js +5 -2
- package/dist/es2019/common/constants.js +3 -2
- package/dist/es2019/common/react-ufo-payload-schema.js +1 -0
- package/dist/es2019/config/index.js +29 -28
- package/dist/es2019/create-experimental-interaction-metrics-payload/index.js +18 -15
- package/dist/es2019/create-payload/common/utils/index.js +15 -14
- package/dist/es2019/create-payload/index.js +87 -71
- package/dist/es2019/create-payload/utils/get-interaction-status.js +5 -2
- package/dist/es2019/create-payload/utils/get-page-visibility-up-to-ttai.js +4 -2
- package/dist/es2019/create-payload/utils/get-ssr-done-time-value.js +4 -2
- package/dist/es2019/create-payload/utils/get-vc-metrics.js +4 -2
- package/dist/es2019/create-post-interaction-log-payload/index.js +14 -12
- package/dist/es2019/custom-data/index.js +3 -2
- package/dist/es2019/custom-mark/index.js +3 -2
- package/dist/es2019/custom-spans/index.js +3 -2
- package/dist/es2019/custom-timings/index.js +5 -4
- package/dist/es2019/experience-trace-id-context/index.js +16 -13
- package/dist/es2019/experience-trace-id-context/utils/make-trace-http-request-headers/index.js +6 -3
- package/dist/es2019/feature-flags-accessed/common/utils/index.js +14 -7
- package/dist/es2019/feature-flags-accessed/index.js +3 -2
- package/dist/es2019/generate-id/index.js +4 -2
- package/dist/es2019/global-error-handler/index.js +15 -12
- package/dist/es2019/initial-page-load-extra-timing/index.js +5 -4
- package/dist/es2019/interaction-metrics/index.js +109 -108
- package/dist/es2019/interaction-metrics/post-interaction-log.js +10 -0
- package/dist/es2019/interaction-metrics-init/index.js +17 -10
- package/dist/es2019/interaction-metrics-init/schedule-idle-callback.js +7 -3
- package/dist/es2019/resource-timing/common/utils/config.js +10 -7
- package/dist/es2019/resource-timing/common/utils/resource-timing-buffer.js +14 -11
- package/dist/es2019/resource-timing/main.js +31 -17
- package/dist/es2019/resource-timing/utils.js +3 -2
- package/dist/es2019/round-number/index.js +3 -2
- package/dist/es2019/route-name/index.js +4 -2
- package/dist/es2019/segment/schedule-on-paint.js +5 -2
- package/dist/es2019/segment/segment.js +7 -3
- package/dist/es2019/self-measurements/index.js +213 -0
- package/dist/es2019/set-interaction-error/index.js +3 -2
- package/dist/es2019/short-id/index.js +4 -2
- package/dist/es2019/ssr/index.js +21 -16
- package/dist/es2019/trace-interaction/index.js +6 -4
- package/dist/es2019/trace-pageload/index.js +6 -4
- package/dist/es2019/trace-press/index.js +4 -2
- package/dist/es2019/trace-redirect/index.js +4 -2
- package/dist/es2019/trace-transition/index.js +5 -3
- package/dist/es2019/trace-transition/utils/generate-span-id/index.js +4 -1
- package/dist/es2019/trace-transition/utils/set-interaction-active-trace/index.js +3 -2
- package/dist/es2019/vc/index.js +16 -4
- package/dist/es2019/vc/vc-observer/attachAbortListeners.js +3 -2
- package/dist/es2019/vc/vc-observer/getVCRevisionsData.js +41 -21
- package/dist/es2019/vc/vc-observer/getViewport.js +5 -4
- package/dist/es2019/vc/vc-observer/heatmap/heatmap.js +28 -10
- package/dist/es2019/vc/vc-observer/index.js +160 -116
- package/dist/es2019/vc/vc-observer/media-wrapper/vc-utils.js +3 -2
- package/dist/es2019/vc/vc-observer/observers/editor-lnv/index.js +17 -0
- package/dist/es2019/vc/vc-observer/observers/index.js +80 -25
- package/dist/es2019/vc/vc-observer/observers/non-visual-styles/is-non-visual-style-mutation.js +4 -2
- package/dist/es2019/vc/vc-observer/observers/ssr-placeholders/index.js +16 -0
- package/dist/es2019/vc/vc-observer/revisions/fy25_01.js +2 -0
- package/dist/es2019/vc/vc-observer/revisions/fy25_02.js +2 -0
- package/dist/es2019/vc/vc-observer/revisions/revisions.js +3 -2
- package/dist/es2019/vc/vc-observer-new/entries-timeline/index.js +9 -0
- package/dist/es2019/vc/vc-observer-new/get-element-name.js +4 -2
- package/dist/es2019/vc/vc-observer-new/get-unique-element-name.js +12 -10
- package/dist/es2019/vc/vc-observer-new/index.js +9 -0
- package/dist/es2019/vc/vc-observer-new/metric-calculator/abstract-base-vc-calculator.js +2 -0
- package/dist/es2019/vc/vc-observer-new/metric-calculator/fy25_03/index.js +3 -0
- package/dist/es2019/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/canvas-pixel.js +14 -4
- package/dist/es2019/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/index.js +6 -4
- package/dist/es2019/vc/vc-observer-new/metric-calculator/percentile-calc/heatmap/heatmap.js +18 -6
- package/dist/es2019/vc/vc-observer-new/metric-calculator/percentile-calc/heatmap/index.js +21 -8
- package/dist/es2019/vc/vc-observer-new/metric-calculator/percentile-calc/index.js +4 -2
- package/dist/es2019/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/calc-union-area.js +10 -8
- package/dist/es2019/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/index.js +4 -2
- package/dist/es2019/vc/vc-observer-new/metric-calculator/utils/get-viewport-height.js +4 -2
- package/dist/es2019/vc/vc-observer-new/metric-calculator/utils/get-viewport-width.js +4 -2
- package/dist/es2019/vc/vc-observer-new/metric-calculator/utils/is-viewport-entry-data.js +4 -2
- package/dist/es2019/vc/vc-observer-new/metric-calculator/utils/task-yield.js +5 -2
- package/dist/es2019/vc/vc-observer-new/viewport-observer/index.js +15 -7
- package/dist/es2019/vc/vc-observer-new/viewport-observer/intersection-observer/index.js +15 -12
- package/dist/es2019/vc/vc-observer-new/viewport-observer/mutation-observer/index.js +15 -13
- package/dist/es2019/vc/vc-observer-new/viewport-observer/performance-observer/index.js +11 -9
- package/dist/es2019/vc/vc-observer-new/window-event-observer/index.js +7 -1
- package/dist/esm/additional-payload/utils/cache-hit-ratio/index.js +5 -4
- package/dist/esm/additional-payload/utils/lighthouse-metrics/cls/index.js +3 -2
- package/dist/esm/additional-payload/utils/lighthouse-metrics/index.js +5 -4
- package/dist/esm/additional-payload/utils/lighthouse-metrics/tbt/index.js +3 -2
- package/dist/esm/additional-payload/utils/lighthouse-metrics/utils/buffer/index.js +3 -0
- package/dist/esm/additional-payload/utils/lighthouse-metrics/utils/observer/index.js +9 -7
- package/dist/esm/assets/index.js +17 -14
- package/dist/esm/assets/utils.js +10 -8
- package/dist/esm/bundle-eval-timing/index.js +7 -6
- package/dist/esm/coinflip/index.js +5 -2
- package/dist/esm/common/constants.js +3 -2
- package/dist/esm/common/react-ufo-payload-schema.js +1 -0
- package/dist/esm/config/index.js +29 -28
- package/dist/esm/create-experimental-interaction-metrics-payload/index.js +28 -35
- package/dist/esm/create-payload/common/utils/index.js +15 -14
- package/dist/esm/create-payload/index.js +149 -139
- package/dist/esm/create-payload/utils/get-interaction-status.js +5 -2
- package/dist/esm/create-payload/utils/get-page-visibility-up-to-ttai.js +4 -2
- package/dist/esm/create-payload/utils/get-ssr-done-time-value.js +4 -2
- package/dist/esm/create-payload/utils/get-vc-metrics.js +9 -7
- package/dist/esm/create-post-interaction-log-payload/index.js +14 -12
- package/dist/esm/custom-data/index.js +3 -2
- package/dist/esm/custom-mark/index.js +3 -2
- package/dist/esm/custom-spans/index.js +3 -2
- package/dist/esm/custom-timings/index.js +5 -4
- package/dist/esm/experience-trace-id-context/index.js +15 -14
- package/dist/esm/experience-trace-id-context/utils/make-trace-http-request-headers/index.js +3 -2
- package/dist/esm/feature-flags-accessed/common/utils/index.js +11 -10
- package/dist/esm/feature-flags-accessed/index.js +3 -2
- package/dist/esm/generate-id/index.js +4 -2
- package/dist/esm/global-error-handler/index.js +14 -13
- package/dist/esm/initial-page-load-extra-timing/index.js +5 -4
- package/dist/esm/interaction-metrics/index.js +109 -108
- package/dist/esm/interaction-metrics/post-interaction-log.js +10 -0
- package/dist/esm/interaction-metrics-init/index.js +17 -10
- package/dist/esm/interaction-metrics-init/schedule-idle-callback.js +7 -3
- package/dist/esm/resource-timing/common/utils/config.js +9 -8
- package/dist/esm/resource-timing/common/utils/resource-timing-buffer.js +13 -12
- package/dist/esm/resource-timing/main.js +25 -19
- package/dist/esm/resource-timing/utils.js +3 -2
- package/dist/esm/round-number/index.js +3 -2
- package/dist/esm/route-name/index.js +4 -2
- package/dist/esm/segment/schedule-on-paint.js +5 -2
- package/dist/esm/segment/segment.js +7 -3
- package/dist/esm/self-measurements/index.js +246 -0
- package/dist/esm/set-interaction-error/index.js +3 -2
- package/dist/esm/short-id/index.js +4 -2
- package/dist/esm/ssr/index.js +17 -16
- package/dist/esm/trace-interaction/index.js +6 -4
- package/dist/esm/trace-pageload/index.js +6 -4
- package/dist/esm/trace-press/index.js +4 -2
- package/dist/esm/trace-redirect/index.js +4 -2
- package/dist/esm/trace-transition/index.js +5 -3
- package/dist/esm/trace-transition/utils/generate-span-id/index.js +3 -2
- package/dist/esm/trace-transition/utils/set-interaction-active-trace/index.js +3 -2
- package/dist/esm/vc/index.js +16 -4
- package/dist/esm/vc/vc-observer/attachAbortListeners.js +3 -2
- package/dist/esm/vc/vc-observer/getVCRevisionsData.js +40 -21
- package/dist/esm/vc/vc-observer/getViewport.js +5 -4
- package/dist/esm/vc/vc-observer/heatmap/heatmap.js +28 -12
- package/dist/esm/vc/vc-observer/index.js +172 -133
- package/dist/esm/vc/vc-observer/media-wrapper/vc-utils.js +3 -2
- package/dist/esm/vc/vc-observer/observers/editor-lnv/index.js +17 -0
- package/dist/esm/vc/vc-observer/observers/index.js +82 -25
- package/dist/esm/vc/vc-observer/observers/non-visual-styles/is-non-visual-style-mutation.js +4 -2
- package/dist/esm/vc/vc-observer/observers/ssr-placeholders/index.js +16 -0
- package/dist/esm/vc/vc-observer/revisions/fy25_01.js +2 -0
- package/dist/esm/vc/vc-observer/revisions/fy25_02.js +2 -0
- package/dist/esm/vc/vc-observer/revisions/revisions.js +3 -2
- package/dist/esm/vc/vc-observer-new/entries-timeline/index.js +9 -0
- package/dist/esm/vc/vc-observer-new/get-element-name.js +4 -2
- package/dist/esm/vc/vc-observer-new/get-unique-element-name.js +12 -10
- package/dist/esm/vc/vc-observer-new/index.js +9 -0
- package/dist/esm/vc/vc-observer-new/metric-calculator/abstract-base-vc-calculator.js +2 -0
- package/dist/esm/vc/vc-observer-new/metric-calculator/fy25_03/index.js +6 -1
- package/dist/esm/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/canvas-pixel.js +19 -9
- package/dist/esm/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/index.js +26 -24
- package/dist/esm/vc/vc-observer-new/metric-calculator/percentile-calc/heatmap/heatmap.js +18 -6
- package/dist/esm/vc/vc-observer-new/metric-calculator/percentile-calc/heatmap/index.js +26 -13
- package/dist/esm/vc/vc-observer-new/metric-calculator/percentile-calc/index.js +9 -7
- package/dist/esm/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/calc-union-area.js +49 -39
- package/dist/esm/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/index.js +9 -7
- package/dist/esm/vc/vc-observer-new/metric-calculator/utils/get-viewport-height.js +4 -2
- package/dist/esm/vc/vc-observer-new/metric-calculator/utils/get-viewport-width.js +4 -2
- package/dist/esm/vc/vc-observer-new/metric-calculator/utils/is-viewport-entry-data.js +4 -2
- package/dist/esm/vc/vc-observer-new/metric-calculator/utils/task-yield.js +10 -7
- package/dist/esm/vc/vc-observer-new/viewport-observer/index.js +15 -7
- package/dist/esm/vc/vc-observer-new/viewport-observer/intersection-observer/index.js +15 -12
- package/dist/esm/vc/vc-observer-new/viewport-observer/mutation-observer/index.js +15 -12
- package/dist/esm/vc/vc-observer-new/viewport-observer/performance-observer/index.js +11 -7
- package/dist/esm/vc/vc-observer-new/window-event-observer/index.js +7 -1
- package/dist/types/additional-payload/utils/cache-hit-ratio/index.d.ts +1 -1
- package/dist/types/additional-payload/utils/lighthouse-metrics/index.d.ts +2 -2
- package/dist/types/assets/index.d.ts +3 -1
- package/dist/types/assets/utils.d.ts +1 -1
- package/dist/types/bundle-eval-timing/index.d.ts +2 -2
- package/dist/types/coinflip/index.d.ts +2 -1
- package/dist/types/common/index.d.ts +2 -1
- package/dist/types/common/react-ufo-payload-schema.d.ts +175 -0
- package/dist/types/common/vc/types.d.ts +20 -10
- package/dist/types/config/index.d.ts +14 -16
- package/dist/types/create-experimental-interaction-metrics-payload/index.d.ts +4 -3
- package/dist/types/create-payload/common/utils/index.d.ts +6 -7
- package/dist/types/create-payload/index.d.ts +1250 -1537
- package/dist/types/create-payload/utils/get-interaction-status.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-ssr-done-time-value.d.ts +2 -1
- package/dist/types/create-payload/utils/get-vc-metrics.d.ts +3 -2
- package/dist/types/create-post-interaction-log-payload/index.d.ts +3 -2
- package/dist/types/custom-data/index.d.ts +1 -1
- package/dist/types/custom-mark/index.d.ts +1 -1
- package/dist/types/custom-spans/index.d.ts +1 -1
- package/dist/types/custom-timings/index.d.ts +2 -2
- package/dist/types/generate-id/index.d.ts +2 -1
- package/dist/types/hidden-timing/index.d.ts +1 -1
- package/dist/types/initial-page-load-extra-timing/index.d.ts +2 -2
- package/dist/types/interaction-context/index.d.ts +3 -3
- package/dist/types/interaction-metrics/index.d.ts +42 -42
- package/dist/types/interaction-metrics/post-interaction-log.d.ts +1 -0
- package/dist/types/interaction-metrics-init/schedule-idle-callback.d.ts +2 -1
- package/dist/types/resource-timing/common/utils/config.d.ts +1 -1
- package/dist/types/resource-timing/utils.d.ts +1 -1
- package/dist/types/round-number/index.d.ts +1 -1
- package/dist/types/route-name/index.d.ts +4 -3
- package/dist/types/segment/schedule-on-paint.d.ts +2 -1
- package/dist/types/self-measurements/index.d.ts +57 -0
- package/dist/types/set-interaction-error/index.d.ts +1 -1
- package/dist/types/short-id/index.d.ts +2 -1
- package/dist/types/ssr/index.d.ts +5 -5
- package/dist/types/trace-interaction/index.d.ts +2 -1
- package/dist/types/trace-pageload/index.d.ts +3 -2
- package/dist/types/trace-press/index.d.ts +2 -1
- package/dist/types/trace-redirect/index.d.ts +2 -1
- package/dist/types/trace-transition/index.d.ts +2 -1
- package/dist/types/vc/index.d.ts +2 -2
- package/dist/types/vc/vc-observer/getVCRevisionsData.d.ts +7 -7
- package/dist/types/vc/vc-observer/getViewport.d.ts +2 -2
- package/dist/types/vc/vc-observer/heatmap/heatmap.d.ts +7 -4
- package/dist/types/vc/vc-observer/index.d.ts +4 -4
- package/dist/types/vc/vc-observer/observers/non-visual-styles/is-non-visual-style-mutation.d.ts +5 -4
- package/dist/types/vc/vc-observer/observers/types.d.ts +1 -1
- package/dist/types/vc/vc-observer-new/get-element-name.d.ts +2 -1
- package/dist/types/vc/vc-observer-new/get-unique-element-name.d.ts +2 -1
- package/dist/types/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/canvas-pixel.d.ts +2 -3
- package/dist/types/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/index.d.ts +3 -2
- package/dist/types/vc/vc-observer-new/metric-calculator/percentile-calc/heatmap/index.d.ts +3 -2
- package/dist/types/vc/vc-observer-new/metric-calculator/percentile-calc/index.d.ts +2 -1
- package/dist/types/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/calc-union-area.d.ts +2 -1
- package/dist/types/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/index.d.ts +3 -2
- package/dist/types/vc/vc-observer-new/metric-calculator/utils/get-viewport-height.d.ts +2 -1
- package/dist/types/vc/vc-observer-new/metric-calculator/utils/get-viewport-width.d.ts +2 -1
- package/dist/types/vc/vc-observer-new/metric-calculator/utils/is-viewport-entry-data.d.ts +2 -1
- package/dist/types/vc/vc-observer-new/metric-calculator/utils/task-yield.d.ts +2 -1
- package/dist/types/vc/vc-observer-new/viewport-observer/index.d.ts +1 -1
- package/dist/types/vc/vc-observer-new/viewport-observer/mutation-observer/index.d.ts +2 -1
- package/dist/types/vc/vc-observer-new/viewport-observer/performance-observer/index.d.ts +3 -3
- package/dist/types-ts4.5/additional-payload/utils/cache-hit-ratio/index.d.ts +1 -1
- package/dist/types-ts4.5/additional-payload/utils/lighthouse-metrics/index.d.ts +2 -2
- package/dist/types-ts4.5/assets/index.d.ts +3 -1
- package/dist/types-ts4.5/assets/utils.d.ts +1 -1
- package/dist/types-ts4.5/bundle-eval-timing/index.d.ts +2 -2
- package/dist/types-ts4.5/coinflip/index.d.ts +2 -1
- package/dist/types-ts4.5/common/index.d.ts +2 -1
- package/dist/types-ts4.5/common/react-ufo-payload-schema.d.ts +177 -0
- package/dist/types-ts4.5/common/vc/types.d.ts +20 -10
- package/dist/types-ts4.5/config/index.d.ts +14 -20
- package/dist/types-ts4.5/create-experimental-interaction-metrics-payload/index.d.ts +4 -3
- package/dist/types-ts4.5/create-payload/common/utils/index.d.ts +6 -7
- package/dist/types-ts4.5/create-payload/index.d.ts +1250 -1537
- package/dist/types-ts4.5/create-payload/utils/get-interaction-status.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-ssr-done-time-value.d.ts +2 -1
- package/dist/types-ts4.5/create-payload/utils/get-vc-metrics.d.ts +3 -2
- package/dist/types-ts4.5/create-post-interaction-log-payload/index.d.ts +3 -2
- package/dist/types-ts4.5/custom-data/index.d.ts +1 -1
- package/dist/types-ts4.5/custom-mark/index.d.ts +1 -1
- package/dist/types-ts4.5/custom-spans/index.d.ts +1 -1
- package/dist/types-ts4.5/custom-timings/index.d.ts +2 -2
- package/dist/types-ts4.5/generate-id/index.d.ts +2 -1
- package/dist/types-ts4.5/hidden-timing/index.d.ts +1 -1
- package/dist/types-ts4.5/initial-page-load-extra-timing/index.d.ts +2 -2
- package/dist/types-ts4.5/interaction-context/index.d.ts +3 -3
- package/dist/types-ts4.5/interaction-metrics/index.d.ts +42 -42
- package/dist/types-ts4.5/interaction-metrics/post-interaction-log.d.ts +1 -0
- package/dist/types-ts4.5/interaction-metrics-init/schedule-idle-callback.d.ts +2 -1
- package/dist/types-ts4.5/resource-timing/common/utils/config.d.ts +1 -1
- package/dist/types-ts4.5/resource-timing/utils.d.ts +1 -1
- package/dist/types-ts4.5/round-number/index.d.ts +1 -1
- package/dist/types-ts4.5/route-name/index.d.ts +4 -3
- package/dist/types-ts4.5/segment/schedule-on-paint.d.ts +2 -1
- package/dist/types-ts4.5/self-measurements/index.d.ts +57 -0
- package/dist/types-ts4.5/set-interaction-error/index.d.ts +1 -1
- package/dist/types-ts4.5/short-id/index.d.ts +2 -1
- package/dist/types-ts4.5/ssr/index.d.ts +5 -5
- package/dist/types-ts4.5/trace-interaction/index.d.ts +2 -1
- package/dist/types-ts4.5/trace-pageload/index.d.ts +3 -2
- package/dist/types-ts4.5/trace-press/index.d.ts +2 -1
- package/dist/types-ts4.5/trace-redirect/index.d.ts +2 -1
- package/dist/types-ts4.5/trace-transition/index.d.ts +2 -1
- package/dist/types-ts4.5/vc/index.d.ts +2 -2
- package/dist/types-ts4.5/vc/vc-observer/getVCRevisionsData.d.ts +7 -7
- package/dist/types-ts4.5/vc/vc-observer/getViewport.d.ts +2 -2
- package/dist/types-ts4.5/vc/vc-observer/heatmap/heatmap.d.ts +7 -4
- package/dist/types-ts4.5/vc/vc-observer/index.d.ts +4 -4
- package/dist/types-ts4.5/vc/vc-observer/observers/non-visual-styles/is-non-visual-style-mutation.d.ts +5 -4
- package/dist/types-ts4.5/vc/vc-observer/observers/types.d.ts +1 -1
- package/dist/types-ts4.5/vc/vc-observer-new/get-element-name.d.ts +2 -1
- package/dist/types-ts4.5/vc/vc-observer-new/get-unique-element-name.d.ts +2 -1
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/canvas-pixel.d.ts +2 -3
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/index.d.ts +3 -2
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/percentile-calc/heatmap/index.d.ts +3 -2
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/percentile-calc/index.d.ts +2 -1
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/calc-union-area.d.ts +2 -1
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/percentile-calc/rect-sweeping-line/index.d.ts +3 -2
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/utils/get-viewport-height.d.ts +2 -1
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/utils/get-viewport-width.d.ts +2 -1
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/utils/is-viewport-entry-data.d.ts +2 -1
- package/dist/types-ts4.5/vc/vc-observer-new/metric-calculator/utils/task-yield.d.ts +2 -1
- package/dist/types-ts4.5/vc/vc-observer-new/viewport-observer/index.d.ts +1 -1
- package/dist/types-ts4.5/vc/vc-observer-new/viewport-observer/mutation-observer/index.d.ts +2 -1
- package/dist/types-ts4.5/vc/vc-observer-new/viewport-observer/performance-observer/index.d.ts +3 -3
- package/package.json +10 -1
|
@@ -15,6 +15,7 @@ import { experimentalVC, getExperimentalVCMetrics, onExperimentalInteractionComp
|
|
|
15
15
|
import { clearActiveTrace } from '../experience-trace-id-context';
|
|
16
16
|
import { allFeatureFlagsAccessed, currentFeatureFlagsAccessed } from '../feature-flags-accessed';
|
|
17
17
|
import { getInteractionId } from '../interaction-id-context';
|
|
18
|
+
import { withProfiling } from '../self-measurements';
|
|
18
19
|
import { getVCObserver } from '../vc';
|
|
19
20
|
import { interactions } from './common/constants';
|
|
20
21
|
import PostInteractionLog from './post-interaction-log';
|
|
@@ -28,18 +29,18 @@ var segmentCache = new Map();
|
|
|
28
29
|
var CLEANUP_TIMEOUT = 60 * 1000;
|
|
29
30
|
var CLEANUP_TIMEOUT_AFTER_APDEX = 15 * 1000;
|
|
30
31
|
var segmentObservers = [];
|
|
31
|
-
export function getActiveInteraction() {
|
|
32
|
+
export var getActiveInteraction = withProfiling(function getActiveInteraction() {
|
|
32
33
|
var interactionId = getInteractionId();
|
|
33
34
|
if (!interactionId.current) {
|
|
34
35
|
return;
|
|
35
36
|
}
|
|
36
37
|
return interactions.get(interactionId.current);
|
|
37
|
-
}
|
|
38
|
-
function isPerformanceTracingEnabled() {
|
|
38
|
+
});
|
|
39
|
+
var isPerformanceTracingEnabled = withProfiling(function isPerformanceTracingEnabled() {
|
|
39
40
|
var _getConfig;
|
|
40
41
|
return ((_getConfig = getConfig()) === null || _getConfig === void 0 ? void 0 : _getConfig.enableAdditionalPerformanceMarks) || window.__REACT_UFO_ENABLE_PERF_TRACING || process.env.NODE_ENV !== 'production';
|
|
41
|
-
}
|
|
42
|
-
function labelStackToString(labelStack, name) {
|
|
42
|
+
});
|
|
43
|
+
var labelStackToString = withProfiling(function labelStackToString(labelStack, name) {
|
|
43
44
|
var _stack$map;
|
|
44
45
|
var stack = _toConsumableArray(labelStack !== null && labelStack !== void 0 ? labelStack : []);
|
|
45
46
|
if (name) {
|
|
@@ -50,14 +51,14 @@ function labelStackToString(labelStack, name) {
|
|
|
50
51
|
return (_stack$map = stack.map(function (l) {
|
|
51
52
|
return l.name;
|
|
52
53
|
})) === null || _stack$map === void 0 ? void 0 : _stack$map.join('/');
|
|
53
|
-
}
|
|
54
|
-
function labelStackToIdString(labelStack) {
|
|
54
|
+
});
|
|
55
|
+
var labelStackToIdString = withProfiling(function labelStackToIdString(labelStack) {
|
|
55
56
|
var _labelStack$map;
|
|
56
57
|
return labelStack === null || labelStack === void 0 || (_labelStack$map = labelStack.map(function (l) {
|
|
57
58
|
return 'segmentId' in l ? "".concat(l.name, ":").concat(l.segmentId) : "".concat(l.name);
|
|
58
59
|
})) === null || _labelStack$map === void 0 ? void 0 : _labelStack$map.join('/');
|
|
59
|
-
}
|
|
60
|
-
function addSegmentObserver(observer) {
|
|
60
|
+
});
|
|
61
|
+
var addSegmentObserver = withProfiling(function addSegmentObserver(observer) {
|
|
61
62
|
segmentObservers.push(observer);
|
|
62
63
|
var _iterator = _createForOfIteratorHelper(segmentCache.values()),
|
|
63
64
|
_step;
|
|
@@ -71,19 +72,19 @@ function addSegmentObserver(observer) {
|
|
|
71
72
|
} finally {
|
|
72
73
|
_iterator.f();
|
|
73
74
|
}
|
|
74
|
-
}
|
|
75
|
-
function removeSegmentObserver(observer) {
|
|
75
|
+
});
|
|
76
|
+
var removeSegmentObserver = withProfiling(function removeSegmentObserver(observer) {
|
|
76
77
|
var index = segmentObservers.findIndex(function (obs) {
|
|
77
78
|
return obs === observer;
|
|
78
79
|
});
|
|
79
80
|
if (index !== -1) {
|
|
80
81
|
segmentObservers.splice(index, 1);
|
|
81
82
|
}
|
|
82
|
-
}
|
|
83
|
-
export function remove(interactionId) {
|
|
83
|
+
});
|
|
84
|
+
export var remove = withProfiling(function remove(interactionId) {
|
|
84
85
|
interactions.delete(interactionId);
|
|
85
|
-
}
|
|
86
|
-
export function updatePageLoadInteractionName(ufoName) {
|
|
86
|
+
});
|
|
87
|
+
export var updatePageLoadInteractionName = withProfiling(function updatePageLoadInteractionName(ufoName) {
|
|
87
88
|
var routeName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ufoName;
|
|
88
89
|
var interaction = getActiveInteraction();
|
|
89
90
|
if (!interaction || interaction.type !== 'page_load' && interaction.type !== 'transition') {
|
|
@@ -91,16 +92,16 @@ export function updatePageLoadInteractionName(ufoName) {
|
|
|
91
92
|
}
|
|
92
93
|
interaction.ufoName = ufoName;
|
|
93
94
|
interaction.routeName = routeName;
|
|
94
|
-
}
|
|
95
|
-
export function addMetadata(interactionId, data) {
|
|
95
|
+
});
|
|
96
|
+
export var addMetadata = withProfiling(function addMetadata(interactionId, data) {
|
|
96
97
|
var interaction = interactions.get(interactionId);
|
|
97
98
|
if (interaction != null) {
|
|
98
99
|
Object.keys(data).forEach(function (key) {
|
|
99
100
|
interaction.metaData[key] = data[key];
|
|
100
101
|
});
|
|
101
102
|
}
|
|
102
|
-
}
|
|
103
|
-
export function addCustomData(interactionId, labelStack, data) {
|
|
103
|
+
});
|
|
104
|
+
export var addCustomData = withProfiling(function addCustomData(interactionId, labelStack, data) {
|
|
104
105
|
var interaction = interactions.get(interactionId);
|
|
105
106
|
if (interaction != null) {
|
|
106
107
|
Object.keys(data).forEach(function (i) {
|
|
@@ -110,8 +111,8 @@ export function addCustomData(interactionId, labelStack, data) {
|
|
|
110
111
|
});
|
|
111
112
|
});
|
|
112
113
|
}
|
|
113
|
-
}
|
|
114
|
-
export function addCustomTiming(interactionId, labelStack, data) {
|
|
114
|
+
});
|
|
115
|
+
export var addCustomTiming = withProfiling(function addCustomTiming(interactionId, labelStack, data) {
|
|
115
116
|
var interaction = interactions.get(interactionId);
|
|
116
117
|
if (interaction != null) {
|
|
117
118
|
interaction.customTimings.push({
|
|
@@ -137,8 +138,8 @@ export function addCustomTiming(interactionId, labelStack, data) {
|
|
|
137
138
|
}
|
|
138
139
|
}
|
|
139
140
|
}
|
|
140
|
-
}
|
|
141
|
-
export function addMark(interactionId, type, name, labelStack) {
|
|
141
|
+
});
|
|
142
|
+
export var addMark = withProfiling(function addMark(interactionId, type, name, labelStack) {
|
|
142
143
|
var time = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : performance.now();
|
|
143
144
|
var interaction = interactions.get(interactionId);
|
|
144
145
|
if (interaction != null) {
|
|
@@ -154,8 +155,8 @@ export function addMark(interactionId, type, name, labelStack) {
|
|
|
154
155
|
startTime: time
|
|
155
156
|
});
|
|
156
157
|
}
|
|
157
|
-
}
|
|
158
|
-
export function addMarkToAll(type, name, labelStack) {
|
|
158
|
+
});
|
|
159
|
+
export var addMarkToAll = withProfiling(function addMarkToAll(type, name, labelStack) {
|
|
159
160
|
var time = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : performance.now();
|
|
160
161
|
interactions.forEach(function (interaction) {
|
|
161
162
|
interaction.marks.push({
|
|
@@ -170,8 +171,8 @@ export function addMarkToAll(type, name, labelStack) {
|
|
|
170
171
|
startTime: time
|
|
171
172
|
});
|
|
172
173
|
}
|
|
173
|
-
}
|
|
174
|
-
export function addSpan(interactionId, type, name, labelStack, start) {
|
|
174
|
+
});
|
|
175
|
+
export var addSpan = withProfiling(function addSpan(interactionId, type, name, labelStack, start) {
|
|
175
176
|
var end = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : performance.now();
|
|
176
177
|
var size = arguments.length > 6 ? arguments[6] : undefined;
|
|
177
178
|
var interaction = interactions.get(interactionId);
|
|
@@ -196,8 +197,8 @@ export function addSpan(interactionId, type, name, labelStack, start) {
|
|
|
196
197
|
}
|
|
197
198
|
}
|
|
198
199
|
}
|
|
199
|
-
}
|
|
200
|
-
export function addSpanToAll(type, name, labelStack, start) {
|
|
200
|
+
});
|
|
201
|
+
export var addSpanToAll = withProfiling(function addSpanToAll(type, name, labelStack, start) {
|
|
201
202
|
var end = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : performance.now();
|
|
202
203
|
var size = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;
|
|
203
204
|
interactions.forEach(function (interaction) {
|
|
@@ -221,36 +222,36 @@ export function addSpanToAll(type, name, labelStack, start) {
|
|
|
221
222
|
// do nothing
|
|
222
223
|
}
|
|
223
224
|
}
|
|
224
|
-
}
|
|
225
|
-
export function addPreload(moduleId, timestamp) {
|
|
225
|
+
});
|
|
226
|
+
export var addPreload = withProfiling(function addPreload(moduleId, timestamp) {
|
|
226
227
|
addMarkToAll('bundle_preload', moduleId, null, timestamp);
|
|
227
|
-
}
|
|
228
|
-
export function addLoad(identifier, start, end) {
|
|
228
|
+
});
|
|
229
|
+
export var addLoad = withProfiling(function addLoad(identifier, start, end) {
|
|
229
230
|
addSpanToAll('bundle_load', identifier, null, start, end - start);
|
|
230
|
-
}
|
|
231
|
+
});
|
|
231
232
|
var moduleLoadingRequests = {};
|
|
232
|
-
export function extractModuleName(input) {
|
|
233
|
+
export var extractModuleName = withProfiling(function extractModuleName(input) {
|
|
233
234
|
var result = input !== null && input !== void 0 ? input : '';
|
|
234
235
|
result = result.replace(/^\.\/src\/packages\//, '');
|
|
235
236
|
result = result.replace(/^\.\/node_modules\//, '');
|
|
236
237
|
result = result.replace(/(\/src)?\/(index|main)\.(tsx|ts|js|jsx)$/, '');
|
|
237
238
|
return result;
|
|
238
|
-
}
|
|
239
|
-
function addHoldCriterion(id, labelStack, name, startTime) {
|
|
239
|
+
});
|
|
240
|
+
var addHoldCriterion = withProfiling(function addHoldCriterion(id, labelStack, name, startTime) {
|
|
240
241
|
var _window$__CRITERION__;
|
|
241
242
|
if (!((_window$__CRITERION__ = window.__CRITERION__) !== null && _window$__CRITERION__ !== void 0 && _window$__CRITERION__.addUFOHold)) {
|
|
242
243
|
return;
|
|
243
244
|
}
|
|
244
245
|
window.__CRITERION__.addUFOHold(id, labelStackToString(labelStack), name, startTime);
|
|
245
|
-
}
|
|
246
|
-
function removeHoldCriterion(id) {
|
|
246
|
+
});
|
|
247
|
+
var removeHoldCriterion = withProfiling(function removeHoldCriterion(id) {
|
|
247
248
|
var _window$__CRITERION__2;
|
|
248
249
|
if (!((_window$__CRITERION__2 = window.__CRITERION__) !== null && _window$__CRITERION__2 !== void 0 && _window$__CRITERION__2.removeUFOHold)) {
|
|
249
250
|
return;
|
|
250
251
|
}
|
|
251
252
|
window.__CRITERION__.removeUFOHold(id);
|
|
252
|
-
}
|
|
253
|
-
export function addHold(interactionId, labelStack, name, experimental) {
|
|
253
|
+
});
|
|
254
|
+
export var addHold = withProfiling(function addHold(interactionId, labelStack, name, experimental) {
|
|
254
255
|
var interaction = interactions.get(interactionId);
|
|
255
256
|
var id = createUUID();
|
|
256
257
|
if (interaction != null) {
|
|
@@ -306,8 +307,8 @@ export function addHold(interactionId, labelStack, name, experimental) {
|
|
|
306
307
|
};
|
|
307
308
|
}
|
|
308
309
|
return function () {};
|
|
309
|
-
}
|
|
310
|
-
export function addHoldByID(interactionId, labelStack, name, id, ignoreOnSubmit) {
|
|
310
|
+
});
|
|
311
|
+
export var addHoldByID = withProfiling(function addHoldByID(interactionId, labelStack, name, id, ignoreOnSubmit) {
|
|
311
312
|
var interaction = interactions.get(interactionId);
|
|
312
313
|
if (interaction != null) {
|
|
313
314
|
var start = performance.now();
|
|
@@ -320,8 +321,8 @@ export function addHoldByID(interactionId, labelStack, name, id, ignoreOnSubmit)
|
|
|
320
321
|
addHoldCriterion(id, labelStack, name, start);
|
|
321
322
|
}
|
|
322
323
|
return function () {};
|
|
323
|
-
}
|
|
324
|
-
export function removeHoldByID(interactionId, id) {
|
|
324
|
+
});
|
|
325
|
+
export var removeHoldByID = withProfiling(function removeHoldByID(interactionId, id) {
|
|
325
326
|
var interaction = interactions.get(interactionId);
|
|
326
327
|
if (interaction != null) {
|
|
327
328
|
var end = performance.now();
|
|
@@ -335,19 +336,19 @@ export function removeHoldByID(interactionId, id) {
|
|
|
335
336
|
removeHoldCriterion(id);
|
|
336
337
|
}
|
|
337
338
|
}
|
|
338
|
-
}
|
|
339
|
-
export function getCurrentInteractionType(interactionId) {
|
|
339
|
+
});
|
|
340
|
+
export var getCurrentInteractionType = withProfiling(function getCurrentInteractionType(interactionId) {
|
|
340
341
|
var interaction = interactions.get(interactionId);
|
|
341
342
|
if (interaction) {
|
|
342
343
|
return interaction.type;
|
|
343
344
|
}
|
|
344
345
|
return null;
|
|
345
|
-
}
|
|
346
|
+
});
|
|
346
347
|
export var ModuleLoadingProfiler = {
|
|
347
|
-
onPreload: function onPreload(moduleId, _priority) {
|
|
348
|
+
onPreload: withProfiling(function onPreload(moduleId, _priority) {
|
|
348
349
|
addPreload(extractModuleName(moduleId), performance.now());
|
|
349
|
-
},
|
|
350
|
-
onLoadStart: function onLoadStart(info) {
|
|
350
|
+
}),
|
|
351
|
+
onLoadStart: withProfiling(function onLoadStart(info) {
|
|
351
352
|
var timeoutId = setTimeout(function () {
|
|
352
353
|
delete moduleLoadingRequests[info.identifier];
|
|
353
354
|
}, 30000);
|
|
@@ -356,29 +357,29 @@ export var ModuleLoadingProfiler = {
|
|
|
356
357
|
timeoutId: timeoutId
|
|
357
358
|
};
|
|
358
359
|
moduleLoadingRequests[info.identifier] = request;
|
|
359
|
-
},
|
|
360
|
-
onLoadComplete: function onLoadComplete(info) {
|
|
360
|
+
}),
|
|
361
|
+
onLoadComplete: withProfiling(function onLoadComplete(info) {
|
|
361
362
|
var request = moduleLoadingRequests[info.identifier];
|
|
362
363
|
if (request) {
|
|
363
364
|
clearTimeout(request.timeoutId);
|
|
364
365
|
delete moduleLoadingRequests[info.identifier];
|
|
365
366
|
addLoad(extractModuleName(info.identifier), request.start, performance.now());
|
|
366
367
|
}
|
|
367
|
-
},
|
|
368
|
-
placeholderFallBackMounted: function placeholderFallBackMounted(id, moduleId) {
|
|
368
|
+
}),
|
|
369
|
+
placeholderFallBackMounted: withProfiling(function placeholderFallBackMounted(id, moduleId) {
|
|
369
370
|
var interactionId = getInteractionId();
|
|
370
371
|
var currentInteractionId = interactionId.current;
|
|
371
372
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
372
373
|
addHoldByID(currentInteractionId, [], moduleId, id);
|
|
373
|
-
},
|
|
374
|
-
placeholderFallBackUnmounted: function placeholderFallBackUnmounted(id) {
|
|
374
|
+
}),
|
|
375
|
+
placeholderFallBackUnmounted: withProfiling(function placeholderFallBackUnmounted(id) {
|
|
375
376
|
var interactionId = getInteractionId();
|
|
376
377
|
var currentInteractionId = interactionId.current;
|
|
377
378
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
378
379
|
removeHoldByID(currentInteractionId, id);
|
|
379
|
-
}
|
|
380
|
+
})
|
|
380
381
|
};
|
|
381
|
-
export function addError(interactionId, name, labelStack, errorType, errorMessage, errorStack, forcedError) {
|
|
382
|
+
export var addError = withProfiling(function addError(interactionId, name, labelStack, errorType, errorMessage, errorStack, forcedError) {
|
|
382
383
|
var interaction = interactions.get(interactionId);
|
|
383
384
|
if (interaction != null) {
|
|
384
385
|
interaction.errors.push({
|
|
@@ -390,8 +391,8 @@ export function addError(interactionId, name, labelStack, errorType, errorMessag
|
|
|
390
391
|
forcedError: forcedError
|
|
391
392
|
});
|
|
392
393
|
}
|
|
393
|
-
}
|
|
394
|
-
export function addErrorToAll(name, labelStack, errorType, errorMessage, errorStack) {
|
|
394
|
+
});
|
|
395
|
+
export var addErrorToAll = withProfiling(function addErrorToAll(name, labelStack, errorType, errorMessage, errorStack) {
|
|
395
396
|
interactions.forEach(function (interaction) {
|
|
396
397
|
interaction.errors.push({
|
|
397
398
|
name: name,
|
|
@@ -401,8 +402,8 @@ export function addErrorToAll(name, labelStack, errorType, errorMessage, errorSt
|
|
|
401
402
|
errorStack: errorStack
|
|
402
403
|
});
|
|
403
404
|
});
|
|
404
|
-
}
|
|
405
|
-
export var addProfilerTimings = function addProfilerTimings(interactionId, labelStack, type, actualDuration, baseDuration, startTime, commitTime) {
|
|
405
|
+
});
|
|
406
|
+
export var addProfilerTimings = withProfiling(function addProfilerTimings(interactionId, labelStack, type, actualDuration, baseDuration, startTime, commitTime) {
|
|
406
407
|
var _getConfig3;
|
|
407
408
|
if (isPerformanceTracingEnabled()) {
|
|
408
409
|
try {
|
|
@@ -428,20 +429,20 @@ export var addProfilerTimings = function addProfilerTimings(interactionId, label
|
|
|
428
429
|
} else if ((_getConfig3 = getConfig()) !== null && _getConfig3 !== void 0 && (_getConfig3 = _getConfig3.postInteractionLog) !== null && _getConfig3 !== void 0 && _getConfig3.enabled) {
|
|
429
430
|
postInteractionLog.addProfilerTimings(labelStack, type, actualDuration, baseDuration, startTime, commitTime);
|
|
430
431
|
}
|
|
431
|
-
};
|
|
432
|
-
var pushToQueue = function pushToQueue(id, data) {
|
|
432
|
+
});
|
|
433
|
+
var pushToQueue = withProfiling(function pushToQueue(id, data) {
|
|
433
434
|
interactionQueue.push({
|
|
434
435
|
id: id,
|
|
435
436
|
data: data
|
|
436
437
|
});
|
|
437
|
-
};
|
|
438
|
+
});
|
|
438
439
|
var handleInteraction = pushToQueue;
|
|
439
|
-
function callCleanUpCallbacks(interaction) {
|
|
440
|
+
var callCleanUpCallbacks = withProfiling(function callCleanUpCallbacks(interaction) {
|
|
440
441
|
interaction.cleanupCallbacks.reverse().forEach(function (cleanUpCallback) {
|
|
441
442
|
cleanUpCallback();
|
|
442
443
|
});
|
|
443
|
-
}
|
|
444
|
-
var finishInteraction = function finishInteraction(id, data) {
|
|
444
|
+
});
|
|
445
|
+
var finishInteraction = withProfiling(function finishInteraction(id, data) {
|
|
445
446
|
var _getConfig4, _getConfig5;
|
|
446
447
|
var endTime = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : performance.now();
|
|
447
448
|
data.end = endTime;
|
|
@@ -517,8 +518,8 @@ var finishInteraction = function finishInteraction(id, data) {
|
|
|
517
518
|
} catch (error) {
|
|
518
519
|
// do nothing
|
|
519
520
|
}
|
|
520
|
-
};
|
|
521
|
-
export var sinkInteractionHandler = function sinkInteractionHandler(sinkFn) {
|
|
521
|
+
});
|
|
522
|
+
export var sinkInteractionHandler = withProfiling(function sinkInteractionHandler(sinkFn) {
|
|
522
523
|
if (handleInteraction === pushToQueue) {
|
|
523
524
|
handleInteraction = sinkFn;
|
|
524
525
|
interactionQueue.forEach(function (interaction) {
|
|
@@ -526,14 +527,14 @@ export var sinkInteractionHandler = function sinkInteractionHandler(sinkFn) {
|
|
|
526
527
|
});
|
|
527
528
|
interactionQueue.length = 0;
|
|
528
529
|
}
|
|
529
|
-
};
|
|
530
|
-
export var sinkPostInteractionLogHandler = function sinkPostInteractionLogHandler(sinkFn) {
|
|
530
|
+
});
|
|
531
|
+
export var sinkPostInteractionLogHandler = withProfiling(function sinkPostInteractionLogHandler(sinkFn) {
|
|
531
532
|
postInteractionLog.sinkHandler(sinkFn);
|
|
532
|
-
};
|
|
533
|
+
});
|
|
533
534
|
|
|
534
535
|
// a flag to prevent multiple submitting
|
|
535
536
|
var activeSubmitted = false;
|
|
536
|
-
export function tryComplete(interactionId, endTime) {
|
|
537
|
+
export var tryComplete = withProfiling(function tryComplete(interactionId, endTime) {
|
|
537
538
|
var interaction = interactions.get(interactionId);
|
|
538
539
|
if (interaction != null) {
|
|
539
540
|
var noMoreActiveHolds = interaction.holdActive.size === 0;
|
|
@@ -611,13 +612,13 @@ export function tryComplete(interactionId, endTime) {
|
|
|
611
612
|
}
|
|
612
613
|
}
|
|
613
614
|
}
|
|
614
|
-
}
|
|
615
|
-
function callCancelCallbacks(interaction) {
|
|
615
|
+
});
|
|
616
|
+
var callCancelCallbacks = withProfiling(function callCancelCallbacks(interaction) {
|
|
616
617
|
interaction.cancelCallbacks.reverse().forEach(function (cancelCallback) {
|
|
617
618
|
cancelCallback();
|
|
618
619
|
});
|
|
619
|
-
}
|
|
620
|
-
export function abort(interactionId, abortReason) {
|
|
620
|
+
});
|
|
621
|
+
export var abort = withProfiling(function abort(interactionId, abortReason) {
|
|
621
622
|
var interaction = interactions.get(interactionId);
|
|
622
623
|
if (interaction != null) {
|
|
623
624
|
var _getConfig10;
|
|
@@ -629,8 +630,8 @@ export function abort(interactionId, abortReason) {
|
|
|
629
630
|
remove(interactionId);
|
|
630
631
|
}
|
|
631
632
|
}
|
|
632
|
-
}
|
|
633
|
-
export function abortByNewInteraction(interactionId, interactionName) {
|
|
633
|
+
});
|
|
634
|
+
export var abortByNewInteraction = withProfiling(function abortByNewInteraction(interactionId, interactionName) {
|
|
634
635
|
var interaction = interactions.get(interactionId);
|
|
635
636
|
if (interaction != null) {
|
|
636
637
|
var _getConfig11;
|
|
@@ -643,8 +644,8 @@ export function abortByNewInteraction(interactionId, interactionName) {
|
|
|
643
644
|
remove(interactionId);
|
|
644
645
|
}
|
|
645
646
|
}
|
|
646
|
-
}
|
|
647
|
-
export function abortAll(abortReason, abortedByInteractionName) {
|
|
647
|
+
});
|
|
648
|
+
export var abortAll = withProfiling(function abortAll(abortReason, abortedByInteractionName) {
|
|
648
649
|
interactions.forEach(function (interaction, interactionId) {
|
|
649
650
|
var _getConfig12;
|
|
650
651
|
var noMoreHolds = interaction.holdActive.size === 0;
|
|
@@ -661,12 +662,12 @@ export function abortAll(abortReason, abortedByInteractionName) {
|
|
|
661
662
|
remove(interactionId);
|
|
662
663
|
}
|
|
663
664
|
});
|
|
664
|
-
}
|
|
665
|
-
export function addOnCancelCallback(id, cancelCallback) {
|
|
665
|
+
});
|
|
666
|
+
export var addOnCancelCallback = withProfiling(function addOnCancelCallback(id, cancelCallback) {
|
|
666
667
|
var interaction = interactions.get(id);
|
|
667
668
|
interaction === null || interaction === void 0 || interaction.cancelCallbacks.push(cancelCallback);
|
|
668
|
-
}
|
|
669
|
-
export function addNewInteraction(interactionId, ufoName, type, startTime, rate, labelStack, routeName) {
|
|
669
|
+
});
|
|
670
|
+
export var addNewInteraction = withProfiling(function addNewInteraction(interactionId, ufoName, type, startTime, rate, labelStack, routeName) {
|
|
670
671
|
var _getConfig13;
|
|
671
672
|
var trace = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : null;
|
|
672
673
|
if ((_getConfig13 = getConfig()) !== null && _getConfig13 !== void 0 && (_getConfig13 = _getConfig13.postInteractionLog) !== null && _getConfig13 !== void 0 && _getConfig13.enabled) {
|
|
@@ -770,8 +771,8 @@ export function addNewInteraction(interactionId, ufoName, type, startTime, rate,
|
|
|
770
771
|
});
|
|
771
772
|
}
|
|
772
773
|
}
|
|
773
|
-
}
|
|
774
|
-
export function addBrowserMetricEvent(event) {
|
|
774
|
+
});
|
|
775
|
+
export var addBrowserMetricEvent = withProfiling(function addBrowserMetricEvent(event) {
|
|
775
776
|
var interaction = getActiveInteraction();
|
|
776
777
|
if (interaction) {
|
|
777
778
|
var _event$config;
|
|
@@ -782,8 +783,8 @@ export function addBrowserMetricEvent(event) {
|
|
|
782
783
|
removeHoldByID(interaction.id, interaction.ufoName);
|
|
783
784
|
}
|
|
784
785
|
}
|
|
785
|
-
}
|
|
786
|
-
export function addApdexToAll(apdex) {
|
|
786
|
+
});
|
|
787
|
+
export var addApdexToAll = withProfiling(function addApdexToAll(apdex) {
|
|
787
788
|
interactions.forEach(function (interaction, key) {
|
|
788
789
|
interaction.apdex.push(apdex);
|
|
789
790
|
try {
|
|
@@ -801,8 +802,8 @@ export function addApdexToAll(apdex) {
|
|
|
801
802
|
removeHoldByID(key, interaction.ufoName);
|
|
802
803
|
}
|
|
803
804
|
});
|
|
804
|
-
}
|
|
805
|
-
export function addApdex(interactionId, apdexInfo) {
|
|
805
|
+
});
|
|
806
|
+
export var addApdex = withProfiling(function addApdex(interactionId, apdexInfo) {
|
|
806
807
|
var interaction = interactions.get(interactionId);
|
|
807
808
|
if (interaction != null) {
|
|
808
809
|
interaction.apdex.push(apdexInfo);
|
|
@@ -821,27 +822,27 @@ export function addApdex(interactionId, apdexInfo) {
|
|
|
821
822
|
removeHoldByID(interactionId, interaction.ufoName);
|
|
822
823
|
}
|
|
823
824
|
}
|
|
824
|
-
}
|
|
825
|
-
export function addRequestInfo(interactionId, labelStack, requestInfo) {
|
|
825
|
+
});
|
|
826
|
+
export var addRequestInfo = withProfiling(function addRequestInfo(interactionId, labelStack, requestInfo) {
|
|
826
827
|
var interaction = interactions.get(interactionId);
|
|
827
828
|
if (interaction != null) {
|
|
828
829
|
interaction.requestInfo.push(_objectSpread({
|
|
829
830
|
labelStack: labelStack
|
|
830
831
|
}, requestInfo));
|
|
831
832
|
}
|
|
832
|
-
}
|
|
833
|
-
function isSegmentLabel(obj) {
|
|
833
|
+
});
|
|
834
|
+
var isSegmentLabel = withProfiling(function isSegmentLabel(obj) {
|
|
834
835
|
return obj && typeof obj.name === 'string' && typeof obj.segmentId === 'string';
|
|
835
|
-
}
|
|
836
|
-
function getSegmentCacheKey(labelStack) {
|
|
836
|
+
});
|
|
837
|
+
var getSegmentCacheKey = withProfiling(function getSegmentCacheKey(labelStack) {
|
|
837
838
|
return labelStack.map(function (l) {
|
|
838
839
|
if (isSegmentLabel(l)) {
|
|
839
840
|
return "".concat(l.name, "_").concat(l.segmentId);
|
|
840
841
|
}
|
|
841
842
|
return l.name;
|
|
842
843
|
}).join('|');
|
|
843
|
-
}
|
|
844
|
-
export function addSegment(labelStack) {
|
|
844
|
+
});
|
|
845
|
+
export var addSegment = withProfiling(function addSegment(labelStack) {
|
|
845
846
|
var key = getSegmentCacheKey(labelStack);
|
|
846
847
|
var existingSegment = segmentCache.get(key);
|
|
847
848
|
if (!existingSegment) {
|
|
@@ -853,8 +854,8 @@ export function addSegment(labelStack) {
|
|
|
853
854
|
observer.onAdd(segmentInfo);
|
|
854
855
|
});
|
|
855
856
|
}
|
|
856
|
-
}
|
|
857
|
-
export function removeSegment(labelStack) {
|
|
857
|
+
});
|
|
858
|
+
export var removeSegment = withProfiling(function removeSegment(labelStack) {
|
|
858
859
|
var key = getSegmentCacheKey(labelStack);
|
|
859
860
|
var segmentInfo = segmentCache.get(key);
|
|
860
861
|
if (segmentInfo) {
|
|
@@ -863,8 +864,8 @@ export function removeSegment(labelStack) {
|
|
|
863
864
|
observer.onRemove(segmentInfo);
|
|
864
865
|
});
|
|
865
866
|
}
|
|
866
|
-
}
|
|
867
|
-
export function addRedirect(interactionId, fromUfoName, nextUfoName, nextRouteName, time) {
|
|
867
|
+
});
|
|
868
|
+
export var addRedirect = withProfiling(function addRedirect(interactionId, fromUfoName, nextUfoName, nextRouteName, time) {
|
|
868
869
|
var interaction = interactions.get(interactionId);
|
|
869
870
|
if (interaction != null) {
|
|
870
871
|
interaction.ufoName = nextUfoName;
|
|
@@ -887,12 +888,12 @@ export function addRedirect(interactionId, fromUfoName, nextUfoName, nextRouteNa
|
|
|
887
888
|
}
|
|
888
889
|
}
|
|
889
890
|
}
|
|
890
|
-
}
|
|
891
|
+
});
|
|
891
892
|
export var interactionSpans = [];
|
|
892
893
|
var defaultLabelStack = [{
|
|
893
894
|
name: 'custom'
|
|
894
895
|
}];
|
|
895
|
-
export function addCustomSpans(name, start) {
|
|
896
|
+
export var addCustomSpans = withProfiling(function addCustomSpans(name, start) {
|
|
896
897
|
var end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : performance.now();
|
|
897
898
|
var size = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
|
|
898
899
|
var labelStack = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : defaultLabelStack;
|
|
@@ -905,4 +906,4 @@ export function addCustomSpans(name, start) {
|
|
|
905
906
|
size: size
|
|
906
907
|
};
|
|
907
908
|
interactionSpans.push(customSpan);
|
|
908
|
-
}
|
|
909
|
+
});
|
|
@@ -6,6 +6,7 @@ import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
|
6
6
|
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; }
|
|
7
7
|
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) { _defineProperty(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; }
|
|
8
8
|
import { getConfig } from '../config';
|
|
9
|
+
import { withProfiling } from '../self-measurements';
|
|
9
10
|
import { VCObserver } from '../vc/vc-observer';
|
|
10
11
|
var POST_INTERACTION_LOG_SEND_DEFAULT_TIMEOUT = 3000;
|
|
11
12
|
var PostInteractionLog = /*#__PURE__*/function () {
|
|
@@ -32,6 +33,15 @@ var PostInteractionLog = /*#__PURE__*/function () {
|
|
|
32
33
|
* Handler function to process / send the observation data
|
|
33
34
|
*/
|
|
34
35
|
_defineProperty(this, "sinkHandlerFn", function () {});
|
|
36
|
+
this.initializeVCObserver = withProfiling(this.initializeVCObserver.bind(this));
|
|
37
|
+
this.startVCObserver = withProfiling(this.startVCObserver.bind(this));
|
|
38
|
+
this.setVCObserverSSRConfig = withProfiling(this.setVCObserverSSRConfig.bind(this));
|
|
39
|
+
this.setLastInteractionFinishVCResult = withProfiling(this.setLastInteractionFinishVCResult.bind(this));
|
|
40
|
+
this.reset = withProfiling(this.reset.bind(this));
|
|
41
|
+
this.hasData = withProfiling(this.hasData.bind(this));
|
|
42
|
+
this.sendPostInteractionLog = withProfiling(this.sendPostInteractionLog.bind(this));
|
|
43
|
+
this.onInteractionComplete = withProfiling(this.onInteractionComplete.bind(this));
|
|
44
|
+
this.addProfilerTimings = withProfiling(this.addProfilerTimings.bind(this));
|
|
35
45
|
}
|
|
36
46
|
return _createClass(PostInteractionLog, [{
|
|
37
47
|
key: "initializeVCObserver",
|
|
@@ -5,12 +5,13 @@ import { setUFOConfig } from '../config';
|
|
|
5
5
|
import { experimentalVC, sinkExperimentalHandler } from '../create-experimental-interaction-metrics-payload';
|
|
6
6
|
import { setupHiddenTimingCapture } from '../hidden-timing';
|
|
7
7
|
import { postInteractionLog, sinkInteractionHandler, sinkPostInteractionLogHandler } from '../interaction-metrics';
|
|
8
|
+
import { withProfiling } from '../self-measurements';
|
|
8
9
|
import { getVCObserver } from '../vc';
|
|
9
10
|
import scheduleIdleCallback from './schedule-idle-callback';
|
|
10
11
|
var initialized = false;
|
|
11
|
-
function sinkInteraction(instance, payloadPackage) {
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
var sinkInteraction = withProfiling(function sinkInteraction(instance, payloadPackage) {
|
|
13
|
+
var sinkFn = withProfiling(function sinkFn(interactionId, interaction) {
|
|
14
|
+
var onIdle = withProfiling(function onIdle() {
|
|
14
15
|
payloadPackage.createPayloads(interactionId, interaction).then(function (payloads) {
|
|
15
16
|
// NOTE: This API is used by the UFO DevTool Chrome Extension and Criterion
|
|
16
17
|
var devToolObserver = globalThis.__ufo_devtool_onUfoPayload;
|
|
@@ -24,14 +25,17 @@ function sinkInteraction(instance, payloadPackage) {
|
|
|
24
25
|
throw error;
|
|
25
26
|
});
|
|
26
27
|
});
|
|
28
|
+
scheduleIdleCallback(onIdle);
|
|
27
29
|
});
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
sinkInteractionHandler(sinkFn);
|
|
31
|
+
});
|
|
32
|
+
var sinkExperimentalInteractionMetrics = withProfiling(function sinkExperimentalInteractionMetrics(instance, payloadPackage) {
|
|
33
|
+
var experimentalMetricsSinkFn = withProfiling(function experimentalMetricsSinkFn(interactionId, interaction) {
|
|
34
|
+
var experimentalMetricsOnIdle = withProfiling(function experimentalMetricsOnIdle() {
|
|
32
35
|
var payloadPromise = payloadPackage.createExperimentalMetricsPayload(interactionId, interaction);
|
|
33
36
|
payloadPromise.then(function (payload) {
|
|
34
37
|
if (payload) {
|
|
38
|
+
// eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
|
|
35
39
|
if (fg('enable_ufo_devtools_api_for_extra_events')) {
|
|
36
40
|
// NOTE: This API is used by the UFO DevTool Chrome Extension and Criterion
|
|
37
41
|
var devToolObserver = globalThis.__ufo_devtool_onUfoPayload;
|
|
@@ -43,14 +47,17 @@ function sinkExperimentalInteractionMetrics(instance, payloadPackage) {
|
|
|
43
47
|
}
|
|
44
48
|
});
|
|
45
49
|
});
|
|
50
|
+
scheduleIdleCallback(experimentalMetricsOnIdle);
|
|
46
51
|
});
|
|
47
|
-
|
|
52
|
+
sinkExperimentalHandler(experimentalMetricsSinkFn);
|
|
53
|
+
});
|
|
48
54
|
function sinkPostInteractionLog(instance, createPostInteractionLogPayload) {
|
|
49
55
|
sinkPostInteractionLogHandler(function (logOutput) {
|
|
50
56
|
scheduleIdleCallback(function () {
|
|
51
57
|
var payload = createPostInteractionLogPayload(logOutput);
|
|
52
58
|
if (payload) {
|
|
53
59
|
// NOTE: This API is used by the UFO DevTool Chrome Extension and also by Criterion
|
|
60
|
+
// eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
|
|
54
61
|
if (fg('enable_ufo_devtools_api_for_extra_events')) {
|
|
55
62
|
var devToolObserver = globalThis.__ufo_devtool_onUfoPayload;
|
|
56
63
|
if (typeof devToolObserver === 'function') {
|
|
@@ -62,7 +69,7 @@ function sinkPostInteractionLog(instance, createPostInteractionLogPayload) {
|
|
|
62
69
|
});
|
|
63
70
|
});
|
|
64
71
|
}
|
|
65
|
-
export var init = function init(analyticsWebClientAsync, config) {
|
|
72
|
+
export var init = withProfiling(function init(analyticsWebClientAsync, config) {
|
|
66
73
|
var _config$vc;
|
|
67
74
|
if (initialized) {
|
|
68
75
|
return;
|
|
@@ -120,4 +127,4 @@ export var init = function init(analyticsWebClientAsync, config) {
|
|
|
120
127
|
}
|
|
121
128
|
}
|
|
122
129
|
});
|
|
123
|
-
};
|
|
130
|
+
});
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import { unstable_IdlePriority as idlePriority, unstable_scheduleCallback as scheduleCallback } from 'scheduler';
|
|
2
2
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
import { withProfiling } from '../self-measurements';
|
|
4
|
+
var scheduleIdleCallback = withProfiling(function scheduleIdleCallback(work) {
|
|
5
|
+
if (typeof window !== 'undefined' && typeof window.requestIdleCallback === 'function' &&
|
|
6
|
+
// eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
|
|
7
|
+
fg('ufo_payload_use_idle_callback')) {
|
|
5
8
|
window.requestIdleCallback(work);
|
|
6
9
|
} else {
|
|
7
10
|
scheduleCallback(idlePriority, work);
|
|
8
11
|
}
|
|
9
|
-
}
|
|
12
|
+
});
|
|
13
|
+
export default scheduleIdleCallback;
|