@atlaskit/react-ufo 3.4.14 → 3.5.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.
- package/CHANGELOG.md +22 -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 +27 -20
- 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 +8 -5
- package/dist/cjs/segment/segment.js +9 -5
- 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 -26
- 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 +170 -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 -8
- package/dist/cjs/vc/vc-observer/observers/ssr-placeholders/index.js +17 -2
- package/dist/cjs/vc/vc-observer/revisions/fy25_01.js +7 -7
- 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 +33 -18
- 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 +7 -4
- package/dist/es2019/segment/segment.js +9 -5
- 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 -25
- 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 +158 -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 -7
- package/dist/es2019/vc/vc-observer/observers/ssr-placeholders/index.js +17 -2
- package/dist/es2019/vc/vc-observer/revisions/fy25_01.js +7 -7
- 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 +27 -20
- 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 +7 -4
- package/dist/esm/segment/segment.js +9 -5
- 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 -25
- 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 +170 -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 -7
- package/dist/esm/vc/vc-observer/observers/ssr-placeholders/index.js +17 -2
- package/dist/esm/vc/vc-observer/revisions/fy25_01.js +7 -7
- 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 +12 -12
|
@@ -8,6 +8,7 @@ exports.EditorLnvHandler = void 0;
|
|
|
8
8
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
9
9
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
var _selfMeasurements = require("../../../../self-measurements");
|
|
11
12
|
var placeholderDataKey = 'editorLnvPlaceholder'; // data-editor-lnv-placeholder
|
|
12
13
|
var replaceDataKey = 'editorLnvPlaceholderReplace'; // data-editor-lnv-placeholder-replace
|
|
13
14
|
var EditorLnvHandler = exports.EditorLnvHandler = /*#__PURE__*/function () {
|
|
@@ -72,11 +73,27 @@ var EditorLnvHandler = exports.EditorLnvHandler = /*#__PURE__*/function () {
|
|
|
72
73
|
return;
|
|
73
74
|
}
|
|
74
75
|
});
|
|
76
|
+
var operationTimer = (0, _selfMeasurements.markProfilingStart)('EditorLnvHandler constructor');
|
|
75
77
|
this.intersectionObserver = new IntersectionObserver(function (entries) {
|
|
76
78
|
return entries.filter(function (entry) {
|
|
77
79
|
return entry.intersectionRatio > 0;
|
|
78
80
|
}).forEach(_this.intersectionObserverCallback);
|
|
79
81
|
});
|
|
82
|
+
this.shouldHandleAddedNode = (0, _selfMeasurements.withProfiling)(this.shouldHandleAddedNode.bind(this), ['vc']);
|
|
83
|
+
this.handleAddedNode = (0, _selfMeasurements.withProfiling)(this.handleAddedNode.bind(this), ['vc']);
|
|
84
|
+
this.clear = (0, _selfMeasurements.withProfiling)(this.clear.bind(this), ['vc']);
|
|
85
|
+
this.handleAddedPlaceholderNode = (0, _selfMeasurements.withProfiling)(this.handleAddedPlaceholderNode.bind(this), ['vc']);
|
|
86
|
+
this.handleAddedReplaceNode = (0, _selfMeasurements.withProfiling)(this.handleAddedReplaceNode.bind(this), ['vc']);
|
|
87
|
+
this.isExistingPlaceholder = (0, _selfMeasurements.withProfiling)(this.isExistingPlaceholder.bind(this), ['vc']);
|
|
88
|
+
this.registerPlaceholder = (0, _selfMeasurements.withProfiling)(this.registerPlaceholder.bind(this), ['vc']);
|
|
89
|
+
this.getSize = (0, _selfMeasurements.withProfiling)(this.getSize.bind(this), ['vc']);
|
|
90
|
+
this.isAddedPlaceholderMatchingSize = (0, _selfMeasurements.withProfiling)(this.isAddedPlaceholderMatchingSize.bind(this), ['vc']);
|
|
91
|
+
this.isAddedReplaceMatchingSize = (0, _selfMeasurements.withProfiling)(this.isAddedReplaceMatchingSize.bind(this), ['vc']);
|
|
92
|
+
this.areRectsSameSize = (0, _selfMeasurements.withProfiling)(this.areRectsSameSize.bind(this), ['vc']);
|
|
93
|
+
this.intersectionObserverCallback = (0, _selfMeasurements.withProfiling)(this.intersectionObserverCallback.bind(this), ['vc']);
|
|
94
|
+
(0, _selfMeasurements.markProfilingEnd)(operationTimer, {
|
|
95
|
+
tags: ['vc']
|
|
96
|
+
});
|
|
80
97
|
}
|
|
81
98
|
return (0, _createClass2.default)(EditorLnvHandler, [{
|
|
82
99
|
key: "shouldHandleAddedNode",
|
|
@@ -10,6 +10,7 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
|
|
|
10
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
11
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
12
12
|
var _config = require("../../../config");
|
|
13
|
+
var _selfMeasurements = require("../../../self-measurements");
|
|
13
14
|
var _vcUtils = require("../media-wrapper/vc-utils");
|
|
14
15
|
var _editorLnv = require("./editor-lnv");
|
|
15
16
|
var _isNonVisualStyleMutation = _interopRequireDefault(require("./non-visual-styles/is-non-visual-style-mutation"));
|
|
@@ -21,7 +22,7 @@ var state = {
|
|
|
21
22
|
waitingForFirstRender: 2,
|
|
22
23
|
ignoring: 3
|
|
23
24
|
};
|
|
24
|
-
function isElementVisible(target) {
|
|
25
|
+
var isElementVisible = (0, _selfMeasurements.withProfiling)(function isElementVisible(target) {
|
|
25
26
|
if (!target || typeof target.checkVisibility !== 'function') {
|
|
26
27
|
return true;
|
|
27
28
|
}
|
|
@@ -31,13 +32,13 @@ function isElementVisible(target) {
|
|
|
31
32
|
visibilityProperty: true
|
|
32
33
|
});
|
|
33
34
|
return isVisible;
|
|
34
|
-
}
|
|
35
|
-
function isInsideEditorContainer(target) {
|
|
35
|
+
}, ['vc']);
|
|
36
|
+
var isInsideEditorContainer = (0, _selfMeasurements.withProfiling)(function isInsideEditorContainer(target) {
|
|
36
37
|
if (!target || typeof target.closest !== 'function') {
|
|
37
38
|
return false;
|
|
38
39
|
}
|
|
39
40
|
return Boolean(target.closest('.ProseMirror'));
|
|
40
|
-
}
|
|
41
|
+
}, ['vc']);
|
|
41
42
|
var Observers = exports.Observers = /*#__PURE__*/function () {
|
|
42
43
|
function Observers(opts) {
|
|
43
44
|
var _this = this;
|
|
@@ -63,20 +64,51 @@ var Observers = exports.Observers = /*#__PURE__*/function () {
|
|
|
63
64
|
(0, _defineProperty2.default)(this, "subscribeResults", function (cb) {
|
|
64
65
|
_this.callbacks.add(cb);
|
|
65
66
|
});
|
|
66
|
-
(0, _defineProperty2.default)(this, "observeElement", function (node, mutation, type, ignoreReason) {
|
|
67
|
+
(0, _defineProperty2.default)(this, "observeElement", function (node, mutation, type, ignoreReason, attributeName) {
|
|
67
68
|
var _this$intersectionObs;
|
|
69
|
+
var oldValue = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
|
|
70
|
+
var newValue = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
|
|
68
71
|
(_this$intersectionObs = _this.intersectionObserver) === null || _this$intersectionObs === void 0 || _this$intersectionObs.observe(node);
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
72
|
+
if ((0, _platformFeatureFlags.fg)('platform_ufo_log_attr_mutation_values')) {
|
|
73
|
+
_this.observedMutations.set(node, {
|
|
74
|
+
mutation: mutation,
|
|
75
|
+
ignoreReason: ignoreReason,
|
|
76
|
+
type: type,
|
|
77
|
+
attributeName: attributeName,
|
|
78
|
+
oldValue: oldValue,
|
|
79
|
+
newValue: newValue
|
|
80
|
+
});
|
|
81
|
+
} else {
|
|
82
|
+
_this.observedMutations.set(node, {
|
|
83
|
+
mutation: mutation,
|
|
84
|
+
ignoreReason: ignoreReason,
|
|
85
|
+
type: type
|
|
86
|
+
});
|
|
87
|
+
}
|
|
74
88
|
});
|
|
89
|
+
var operationTimer = (0, _selfMeasurements.markProfilingStart)('Observers constructor');
|
|
75
90
|
this.selectorConfig = _objectSpread(_objectSpread({}, this.selectorConfig), opts.selectorConfig);
|
|
76
91
|
this.intersectionObserver = this.getIntersectionObserver();
|
|
77
92
|
this.mutationObserver = this.getMutationObserver();
|
|
78
93
|
this.ssrPlaceholderHandler = new _ssrPlaceholders.SSRPlaceholderHandlers();
|
|
79
94
|
this.editorLnvHandler = new _editorLnv.EditorLnvHandler();
|
|
95
|
+
this.isBrowserSupported = (0, _selfMeasurements.withProfiling)(this.isBrowserSupported.bind(this), ['vc']);
|
|
96
|
+
this.observe = (0, _selfMeasurements.withProfiling)(this.observe.bind(this), ['vc']);
|
|
97
|
+
this.disconnect = (0, _selfMeasurements.withProfiling)(this.disconnect.bind(this), ['vc']);
|
|
98
|
+
this.subscribeResults = (0, _selfMeasurements.withProfiling)(this.subscribeResults.bind(this), ['vc']);
|
|
99
|
+
this.getTotalTime = (0, _selfMeasurements.withProfiling)(this.getTotalTime.bind(this), ['vc']);
|
|
100
|
+
this.setReactRootElement = (0, _selfMeasurements.withProfiling)(this.setReactRootElement.bind(this), ['vc']);
|
|
101
|
+
this.setReactRootRenderStart = (0, _selfMeasurements.withProfiling)(this.setReactRootRenderStart.bind(this), ['vc']);
|
|
102
|
+
this.setReactRootRenderStop = (0, _selfMeasurements.withProfiling)(this.setReactRootRenderStop.bind(this), ['vc']);
|
|
103
|
+
this.observeElement = (0, _selfMeasurements.withProfiling)(this.observeElement.bind(this), ['vc']);
|
|
104
|
+
this.getMutationObserver = (0, _selfMeasurements.withProfiling)(this.getMutationObserver.bind(this), ['vc']);
|
|
105
|
+
this.getElementName = (0, _selfMeasurements.withProfiling)(this.getElementName.bind(this), ['vc']);
|
|
106
|
+
this.getIntersectionObserver = (0, _selfMeasurements.withProfiling)(this.getIntersectionObserver.bind(this), ['vc']);
|
|
107
|
+
this.measureStart = (0, _selfMeasurements.withProfiling)(this.measureStart.bind(this), ['vc']);
|
|
108
|
+
this.measureStop = (0, _selfMeasurements.withProfiling)(this.measureStop.bind(this), ['vc']);
|
|
109
|
+
(0, _selfMeasurements.markProfilingEnd)(operationTimer, {
|
|
110
|
+
tags: ['vc']
|
|
111
|
+
});
|
|
80
112
|
}
|
|
81
113
|
return (0, _createClass2.default)(Observers, [{
|
|
82
114
|
key: "isBrowserSupported",
|
|
@@ -142,8 +174,12 @@ var Observers = exports.Observers = /*#__PURE__*/function () {
|
|
|
142
174
|
key: "getMutationObserver",
|
|
143
175
|
value: function getMutationObserver() {
|
|
144
176
|
var _this2 = this;
|
|
177
|
+
if (!this.isBrowserSupported()) {
|
|
178
|
+
return null;
|
|
179
|
+
}
|
|
145
180
|
var shouldHandleEditorLnvLocal = (0, _config.shouldHandleEditorLnv)();
|
|
146
|
-
return
|
|
181
|
+
return new MutationObserver(function (mutations) {
|
|
182
|
+
var operationTimer = (0, _selfMeasurements.markProfilingStart)('mutationObserverCallback');
|
|
147
183
|
_this2.measureStart();
|
|
148
184
|
mutations.forEach(function (mutation) {
|
|
149
185
|
// patching element if timestamp not automatically added
|
|
@@ -212,34 +248,48 @@ var Observers = exports.Observers = /*#__PURE__*/function () {
|
|
|
212
248
|
});
|
|
213
249
|
} else if (mutation.type === 'attributes') {
|
|
214
250
|
if (mutation.target instanceof HTMLElement) {
|
|
251
|
+
var attributeName = mutation.attributeName;
|
|
215
252
|
if ((0, _platformFeatureFlags.fg)('platform_ufo_vc_ignore_same_value_mutation')) {
|
|
216
253
|
var _mutation$oldValue;
|
|
217
254
|
/*
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
255
|
+
"MutationObserver was explicitly designed to work that way, but I can't now recall the reasoning.
|
|
256
|
+
I think it might have been something along the lines that for consistency every setAttribute call should create a record.
|
|
257
|
+
Conceptually there is after all a mutation: there is an old value replaced with a new one,
|
|
258
|
+
and whether or not they are the same doesn't really matter.
|
|
259
|
+
And Custom elements should work the same way as MutationObserver."
|
|
260
|
+
https://github.com/whatwg/dom/issues/520#issuecomment-336574796
|
|
261
|
+
*/
|
|
225
262
|
var oldValue = (_mutation$oldValue = mutation.oldValue) !== null && _mutation$oldValue !== void 0 ? _mutation$oldValue : undefined;
|
|
226
|
-
var newValue =
|
|
263
|
+
var newValue = attributeName ? mutation.target.getAttribute(attributeName) : undefined;
|
|
227
264
|
if (oldValue !== newValue) {
|
|
228
265
|
if ((0, _isNonVisualStyleMutation.default)(mutation)) {
|
|
229
266
|
ignoreReason = 'non-visual-style';
|
|
230
267
|
}
|
|
231
|
-
|
|
268
|
+
if ((0, _platformFeatureFlags.fg)('platform_ufo_vc_fix_ignore_image_mutation')) {
|
|
269
|
+
if ((0, _vcUtils.isContainedWithinMediaWrapper)(mutation.target)) {
|
|
270
|
+
ignoreReason = 'image';
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
_this2.observeElement(mutation.target, mutation, 'attr', ignoreReason, attributeName, oldValue, newValue);
|
|
232
274
|
}
|
|
233
275
|
} else {
|
|
234
276
|
if ((0, _isNonVisualStyleMutation.default)(mutation)) {
|
|
235
277
|
ignoreReason = 'non-visual-style';
|
|
236
278
|
}
|
|
237
|
-
|
|
279
|
+
if ((0, _platformFeatureFlags.fg)('platform_ufo_vc_fix_ignore_image_mutation')) {
|
|
280
|
+
if ((0, _vcUtils.isContainedWithinMediaWrapper)(mutation.target)) {
|
|
281
|
+
ignoreReason = 'image';
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
_this2.observeElement(mutation.target, mutation, 'attr', ignoreReason, attributeName);
|
|
238
285
|
}
|
|
239
286
|
}
|
|
240
287
|
}
|
|
241
288
|
});
|
|
242
|
-
|
|
289
|
+
(0, _selfMeasurements.markProfilingEnd)(operationTimer, {
|
|
290
|
+
tags: ['vc']
|
|
291
|
+
});
|
|
292
|
+
});
|
|
243
293
|
}
|
|
244
294
|
}, {
|
|
245
295
|
key: "getElementName",
|
|
@@ -272,7 +322,11 @@ var Observers = exports.Observers = /*#__PURE__*/function () {
|
|
|
272
322
|
key: "getIntersectionObserver",
|
|
273
323
|
value: function getIntersectionObserver() {
|
|
274
324
|
var _this3 = this;
|
|
275
|
-
|
|
325
|
+
if (!this.isBrowserSupported()) {
|
|
326
|
+
return null;
|
|
327
|
+
}
|
|
328
|
+
return new IntersectionObserver(function (entries) {
|
|
329
|
+
var operationTimer = (0, _selfMeasurements.markProfilingStart)('intersectionObserverCallback');
|
|
276
330
|
_this3.measureStart();
|
|
277
331
|
entries.forEach(function (_ref2) {
|
|
278
332
|
var isIntersecting = _ref2.isIntersecting,
|
|
@@ -303,7 +357,7 @@ var Observers = exports.Observers = /*#__PURE__*/function () {
|
|
|
303
357
|
} catch (e) {
|
|
304
358
|
elementName = 'error';
|
|
305
359
|
}
|
|
306
|
-
callback(data.mutation.timestamp || performance.now(), ir, elementName, target, data.type, data.ignoreReason);
|
|
360
|
+
callback(data.mutation.timestamp || performance.now(), ir, elementName, target, data.type, data.ignoreReason, data.attributeName, data.oldValue, data.newValue);
|
|
307
361
|
});
|
|
308
362
|
_this3.elementsInView.add(target);
|
|
309
363
|
} else {
|
|
@@ -311,7 +365,10 @@ var Observers = exports.Observers = /*#__PURE__*/function () {
|
|
|
311
365
|
}
|
|
312
366
|
});
|
|
313
367
|
_this3.measureStop();
|
|
314
|
-
|
|
368
|
+
(0, _selfMeasurements.markProfilingEnd)(operationTimer, {
|
|
369
|
+
tags: ['vc']
|
|
370
|
+
});
|
|
371
|
+
});
|
|
315
372
|
}
|
|
316
373
|
}, {
|
|
317
374
|
key: "measureStart",
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default =
|
|
7
|
-
var
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _selfMeasurements = require("../../../../self-measurements");
|
|
8
8
|
/**
|
|
9
9
|
* Checks if a mutation record represents a non-visual style change
|
|
10
10
|
* @param mutation - The mutation record to check
|
|
@@ -15,13 +15,9 @@ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
|
15
15
|
* - The changed attribute is either 'class' or 'style'
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
|
-
function isNonVisualStyleMutation(_ref) {
|
|
18
|
+
var isNonVisualStyleMutation = (0, _selfMeasurements.withProfiling)(function isNonVisualStyleMutation(_ref) {
|
|
19
19
|
var target = _ref.target,
|
|
20
20
|
attributeName = _ref.attributeName;
|
|
21
|
-
var isNonVisualStyleMutationEnabled = (0, _platformFeatureFlags.fg)('platform_ufo_non_visual_style_mutation');
|
|
22
|
-
if (!isNonVisualStyleMutationEnabled) {
|
|
23
|
-
return false;
|
|
24
|
-
}
|
|
25
21
|
if (!(target instanceof Element)) {
|
|
26
22
|
return false;
|
|
27
23
|
}
|
|
@@ -32,4 +28,5 @@ function isNonVisualStyleMutation(_ref) {
|
|
|
32
28
|
return false;
|
|
33
29
|
}
|
|
34
30
|
return true;
|
|
35
|
-
}
|
|
31
|
+
}, ['vc']);
|
|
32
|
+
var _default = exports.default = isNonVisualStyleMutation;
|
|
@@ -8,7 +8,7 @@ exports.SSRPlaceholderHandlers = void 0;
|
|
|
8
8
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
9
9
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
-
var
|
|
11
|
+
var _selfMeasurements = require("../../../../self-measurements");
|
|
12
12
|
var ANCESTOR_LOOKUP_LIMIT = 10;
|
|
13
13
|
var SSRPlaceholderHandlers = exports.SSRPlaceholderHandlers = /*#__PURE__*/function () {
|
|
14
14
|
function SSRPlaceholderHandlers() {
|
|
@@ -18,7 +18,7 @@ var SSRPlaceholderHandlers = exports.SSRPlaceholderHandlers = /*#__PURE__*/funct
|
|
|
18
18
|
(0, _defineProperty2.default)(this, "callbacks", new Map());
|
|
19
19
|
(0, _defineProperty2.default)(this, "getSizeCallbacks", new Map());
|
|
20
20
|
(0, _defineProperty2.default)(this, "reactValidateCallbacks", new Map());
|
|
21
|
-
(0, _defineProperty2.default)(this, "EQUALITY_THRESHOLD",
|
|
21
|
+
(0, _defineProperty2.default)(this, "EQUALITY_THRESHOLD", 1);
|
|
22
22
|
(0, _defineProperty2.default)(this, "intersectionObserverCallback", function (_ref) {
|
|
23
23
|
var _this$intersectionObs;
|
|
24
24
|
var target = _ref.target,
|
|
@@ -70,6 +70,7 @@ var SSRPlaceholderHandlers = exports.SSRPlaceholderHandlers = /*#__PURE__*/funct
|
|
|
70
70
|
_this.reactValidateCallbacks.delete(staticKey);
|
|
71
71
|
}
|
|
72
72
|
});
|
|
73
|
+
var operationTimer = (0, _selfMeasurements.markProfilingStart)('SSRPlaceholderHandlers constructor');
|
|
73
74
|
if (typeof IntersectionObserver === 'function') {
|
|
74
75
|
// Only instantiate the IntersectionObserver if it's supported
|
|
75
76
|
this.intersectionObserver = new IntersectionObserver(function (entries) {
|
|
@@ -109,6 +110,20 @@ var SSRPlaceholderHandlers = exports.SSRPlaceholderHandlers = /*#__PURE__*/funct
|
|
|
109
110
|
delete window.__SSR_PLACEHOLDERS_DIMENSIONS__;
|
|
110
111
|
}
|
|
111
112
|
}
|
|
113
|
+
this.clear = (0, _selfMeasurements.withProfiling)(this.clear.bind(this), ['vc']);
|
|
114
|
+
this.isPlaceholder = (0, _selfMeasurements.withProfiling)(this.isPlaceholder.bind(this), ['vc']);
|
|
115
|
+
this.isPlaceholderReplacement = (0, _selfMeasurements.withProfiling)(this.isPlaceholderReplacement.bind(this), ['vc']);
|
|
116
|
+
this.isPlaceholderIgnored = (0, _selfMeasurements.withProfiling)(this.isPlaceholderIgnored.bind(this), ['vc']);
|
|
117
|
+
this.findNearestPlaceholderContainerIfIgnored = (0, _selfMeasurements.withProfiling)(this.findNearestPlaceholderContainerIfIgnored.bind(this), ['vc']);
|
|
118
|
+
this.checkIfExistedAndSizeMatching = (0, _selfMeasurements.withProfiling)(this.checkIfExistedAndSizeMatching.bind(this), ['vc']);
|
|
119
|
+
this.getSize = (0, _selfMeasurements.withProfiling)(this.getSize.bind(this), ['vc']);
|
|
120
|
+
this.validateReactComponentMatchToPlaceholder = (0, _selfMeasurements.withProfiling)(this.validateReactComponentMatchToPlaceholder.bind(this), ['vc']);
|
|
121
|
+
this.hasSameSizePosition = (0, _selfMeasurements.withProfiling)(this.hasSameSizePosition.bind(this), ['vc']);
|
|
122
|
+
this.isDummyRect = (0, _selfMeasurements.withProfiling)(this.isDummyRect.bind(this), ['vc']);
|
|
123
|
+
this.intersectionObserverCallback = (0, _selfMeasurements.withProfiling)(this.intersectionObserverCallback.bind(this), ['vc']);
|
|
124
|
+
(0, _selfMeasurements.markProfilingEnd)(operationTimer, {
|
|
125
|
+
tags: ['vc']
|
|
126
|
+
});
|
|
112
127
|
}
|
|
113
128
|
return (0, _createClass2.default)(SSRPlaceholderHandlers, [{
|
|
114
129
|
key: "clear",
|
|
@@ -11,7 +11,7 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
|
|
|
11
11
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
12
12
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
13
13
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
14
|
-
var
|
|
14
|
+
var _selfMeasurements = require("../../../self-measurements");
|
|
15
15
|
var _ViewportUpdateClassifier = require("./ViewportUpdateClassifier");
|
|
16
16
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
|
|
17
17
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
@@ -32,6 +32,7 @@ var FY25_01Classifier = exports.FY25_01Classifier = /*#__PURE__*/function (_View
|
|
|
32
32
|
}
|
|
33
33
|
}]);
|
|
34
34
|
_this.mergeConfig();
|
|
35
|
+
_this.VCCalculationMethod = (0, _selfMeasurements.withProfiling)(_this.VCCalculationMethod.bind(_this), ['vc']);
|
|
35
36
|
return _this;
|
|
36
37
|
}
|
|
37
38
|
(0, _inherits2.default)(FY25_01Classifier, _ViewportUpdateClassi);
|
|
@@ -49,12 +50,11 @@ var FY25_01Classifier = exports.FY25_01Classifier = /*#__PURE__*/function (_View
|
|
|
49
50
|
var v = arguments.length > 1 ? arguments[1] : undefined;
|
|
50
51
|
var VCRatio = v[1] / totalPainted + acc;
|
|
51
52
|
var time = v[0];
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
}
|
|
53
|
+
|
|
54
|
+
// @todo apply fix to include small changes into accumulator
|
|
55
|
+
var preciseCurrRatio = Math.round(100 * (v[1] / totalPainted));
|
|
56
|
+
var preciseAccRatio = Math.round(acc * 100);
|
|
57
|
+
VCRatio = (preciseCurrRatio + preciseAccRatio) / 100;
|
|
58
58
|
VCParts.forEach(function (value) {
|
|
59
59
|
if ((VC[value] === null || VC[value] === undefined) && VCRatio >= value / 100) {
|
|
60
60
|
var _componentsLog$time;
|
|
@@ -12,6 +12,7 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
|
|
|
12
12
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
13
13
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
14
14
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
15
|
+
var _selfMeasurements = require("../../../self-measurements");
|
|
15
16
|
var _fy25_ = require("./fy25_01");
|
|
16
17
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
|
|
17
18
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
@@ -32,6 +33,7 @@ var FY25_02Classifier = exports.FY25_02Classifier = /*#__PURE__*/function (_FY25
|
|
|
32
33
|
}]);
|
|
33
34
|
(0, _defineProperty2.default)(_this, "removedFilters", []);
|
|
34
35
|
_this.mergeConfig();
|
|
36
|
+
_this.filterComponentsLog = (0, _selfMeasurements.withProfiling)(_this.filterComponentsLog.bind(_this), ['vc']);
|
|
35
37
|
return _this;
|
|
36
38
|
}
|
|
37
39
|
(0, _inherits2.default)(FY25_02Classifier, _FY25_01Classifier);
|
|
@@ -5,9 +5,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.getRevisions = void 0;
|
|
7
7
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
8
|
+
var _selfMeasurements = require("../../../self-measurements");
|
|
8
9
|
var _fy25_ = require("./fy25_01");
|
|
9
10
|
var _fy25_2 = require("./fy25_02");
|
|
10
|
-
var getRevisions = exports.getRevisions = function getRevisions() {
|
|
11
|
+
var getRevisions = exports.getRevisions = (0, _selfMeasurements.withProfiling)(function getRevisions() {
|
|
11
12
|
if ((0, _platformFeatureFlags.fg)('platform_ufo_disable_ttvc_v1')) {
|
|
12
13
|
return [{
|
|
13
14
|
name: 'fy25.02',
|
|
@@ -21,4 +22,4 @@ var getRevisions = exports.getRevisions = function getRevisions() {
|
|
|
21
22
|
name: 'fy25.02',
|
|
22
23
|
classifier: _fy25_2.revFY25_02Classifier
|
|
23
24
|
}];
|
|
24
|
-
};
|
|
25
|
+
}, ['vc']);
|
|
@@ -8,12 +8,21 @@ exports.default = void 0;
|
|
|
8
8
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
9
9
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
var _selfMeasurements = require("../../../self-measurements");
|
|
11
12
|
var EntriesTimeline = exports.default = /*#__PURE__*/function () {
|
|
12
13
|
function EntriesTimeline() {
|
|
13
14
|
(0, _classCallCheck2.default)(this, EntriesTimeline);
|
|
14
15
|
(0, _defineProperty2.default)(this, "unorderedEntries", []);
|
|
15
16
|
(0, _defineProperty2.default)(this, "sortedEntriesCache", new Map());
|
|
17
|
+
var operationTimer = (0, _selfMeasurements.markProfilingStart)('EntriesTimeline constructor');
|
|
16
18
|
this.unorderedEntries = [];
|
|
19
|
+
this.push = (0, _selfMeasurements.withProfiling)(this.push.bind(this), ['vc']);
|
|
20
|
+
this.getCacheKey = (0, _selfMeasurements.withProfiling)(this.getCacheKey.bind(this), ['vc']);
|
|
21
|
+
this.getOrderedEntries = (0, _selfMeasurements.withProfiling)(this.getOrderedEntries.bind(this), ['vc']);
|
|
22
|
+
this.clear = (0, _selfMeasurements.withProfiling)(this.clear.bind(this), ['vc']);
|
|
23
|
+
(0, _selfMeasurements.markProfilingEnd)(operationTimer, {
|
|
24
|
+
tags: ['vc']
|
|
25
|
+
});
|
|
17
26
|
}
|
|
18
27
|
return (0, _createClass2.default)(EntriesTimeline, [{
|
|
19
28
|
key: "push",
|
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default =
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _selfMeasurements = require("../../self-measurements");
|
|
7
8
|
var nameCache = new WeakMap();
|
|
8
|
-
function getElementName(selectorConfig, element) {
|
|
9
|
+
var getElementName = (0, _selfMeasurements.withProfiling)(function getElementName(selectorConfig, element) {
|
|
9
10
|
if (!(element instanceof HTMLElement)) {
|
|
10
11
|
return 'error';
|
|
11
12
|
}
|
|
@@ -71,4 +72,5 @@ function getElementName(selectorConfig, element) {
|
|
|
71
72
|
var name = "".concat(tagName).concat(attributes || classList);
|
|
72
73
|
nameCache.set(element, name);
|
|
73
74
|
return name;
|
|
74
|
-
}
|
|
75
|
+
}, ['vc']);
|
|
76
|
+
var _default = exports.default = getElementName;
|
|
@@ -3,27 +3,28 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default =
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _selfMeasurements = require("../../self-measurements");
|
|
7
8
|
var nameCache = new WeakMap();
|
|
8
|
-
function getAttributeSelector(element, attributeName) {
|
|
9
|
+
var getAttributeSelector = (0, _selfMeasurements.withProfiling)(function getAttributeSelector(element, attributeName) {
|
|
9
10
|
var attrValue = element.getAttribute(attributeName);
|
|
10
11
|
if (!attrValue) {
|
|
11
12
|
return '';
|
|
12
13
|
}
|
|
13
14
|
return "[".concat(attributeName, "=\"").concat(attrValue, "\"]");
|
|
14
|
-
}
|
|
15
|
-
function isValidSelector(selector) {
|
|
15
|
+
}, ['vc']);
|
|
16
|
+
var isValidSelector = (0, _selfMeasurements.withProfiling)(function isValidSelector(selector) {
|
|
16
17
|
try {
|
|
17
18
|
document.querySelector(selector);
|
|
18
19
|
return true;
|
|
19
20
|
} catch (err) {
|
|
20
21
|
return false;
|
|
21
22
|
}
|
|
22
|
-
}
|
|
23
|
-
function isSelectorUnique(selector) {
|
|
23
|
+
}, ['vc']);
|
|
24
|
+
var isSelectorUnique = (0, _selfMeasurements.withProfiling)(function isSelectorUnique(selector) {
|
|
24
25
|
return document.querySelectorAll(selector).length === 1;
|
|
25
|
-
}
|
|
26
|
-
function getUniqueSelector(selectorConfig, element) {
|
|
26
|
+
}, ['vc']);
|
|
27
|
+
var getUniqueSelector = (0, _selfMeasurements.withProfiling)(function getUniqueSelector(selectorConfig, element) {
|
|
27
28
|
var currentElement = element;
|
|
28
29
|
var parts = [];
|
|
29
30
|
var MAX_DEPTH = 3;
|
|
@@ -65,8 +66,8 @@ function getUniqueSelector(selectorConfig, element) {
|
|
|
65
66
|
}
|
|
66
67
|
}
|
|
67
68
|
return potentialSelector;
|
|
68
|
-
}
|
|
69
|
-
function getElementName(selectorConfig, element) {
|
|
69
|
+
}, ['vc']);
|
|
70
|
+
var getElementName = (0, _selfMeasurements.withProfiling)(function getElementName(selectorConfig, element) {
|
|
70
71
|
if (!(element instanceof HTMLElement)) {
|
|
71
72
|
return 'error';
|
|
72
73
|
}
|
|
@@ -77,4 +78,5 @@ function getElementName(selectorConfig, element) {
|
|
|
77
78
|
var uniqueSelector = getUniqueSelector(selectorConfig, element);
|
|
78
79
|
nameCache.set(element, uniqueSelector);
|
|
79
80
|
return uniqueSelector;
|
|
80
|
-
}
|
|
81
|
+
}, ['vc']);
|
|
82
|
+
var _default = exports.default = getElementName;
|
|
@@ -10,6 +10,7 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/
|
|
|
10
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
11
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
12
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
+
var _selfMeasurements = require("../../self-measurements");
|
|
13
14
|
var _entriesTimeline = _interopRequireDefault(require("./entries-timeline"));
|
|
14
15
|
var _getElementName2 = _interopRequireDefault(require("./get-element-name"));
|
|
15
16
|
var _fy25_ = _interopRequireDefault(require("./metric-calculator/fy25_03"));
|
|
@@ -29,6 +30,7 @@ var VCObserverNew = exports.default = /*#__PURE__*/function () {
|
|
|
29
30
|
(0, _classCallCheck2.default)(this, VCObserverNew);
|
|
30
31
|
(0, _defineProperty2.default)(this, "viewportObserver", null);
|
|
31
32
|
(0, _defineProperty2.default)(this, "windowEventObserver", null);
|
|
33
|
+
var operationTimer = (0, _selfMeasurements.markProfilingStart)('VCObserverNew constructor');
|
|
32
34
|
this.entriesTimeline = new _entriesTimeline.default();
|
|
33
35
|
this.selectorConfig = (_config$selectorConfi = config.selectorConfig) !== null && _config$selectorConfi !== void 0 ? _config$selectorConfi : DEFAULT_SELECTOR_CONFIG;
|
|
34
36
|
this.viewportObserver = new _viewportObserver.default({
|
|
@@ -71,6 +73,13 @@ var VCObserverNew = exports.default = /*#__PURE__*/function () {
|
|
|
71
73
|
});
|
|
72
74
|
}
|
|
73
75
|
});
|
|
76
|
+
this.start = (0, _selfMeasurements.withProfiling)(this.start.bind(this), ['vc']);
|
|
77
|
+
this.stop = (0, _selfMeasurements.withProfiling)(this.stop.bind(this), ['vc']);
|
|
78
|
+
this.getVCResult = (0, _selfMeasurements.withProfiling)(this.getVCResult.bind(this), ['vc']);
|
|
79
|
+
this.getElementName = (0, _selfMeasurements.withProfiling)(this.getElementName.bind(this), ['vc']);
|
|
80
|
+
(0, _selfMeasurements.markProfilingEnd)(operationTimer, {
|
|
81
|
+
tags: ['vc']
|
|
82
|
+
});
|
|
74
83
|
}
|
|
75
84
|
return (0, _createClass2.default)(VCObserverNew, [{
|
|
76
85
|
key: "start",
|
|
@@ -9,6 +9,7 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
|
|
|
9
9
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
11
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
+
var _selfMeasurements = require("../../../self-measurements");
|
|
12
13
|
var _percentileCalc = _interopRequireDefault(require("./percentile-calc"));
|
|
13
14
|
var _getViewportHeight = _interopRequireDefault(require("./utils/get-viewport-height"));
|
|
14
15
|
var _getViewportWidth = _interopRequireDefault(require("./utils/get-viewport-width"));
|
|
@@ -16,6 +17,7 @@ var AbstractVCCalculatorBase = exports.default = /*#__PURE__*/function () {
|
|
|
16
17
|
function AbstractVCCalculatorBase(revisionNo) {
|
|
17
18
|
(0, _classCallCheck2.default)(this, AbstractVCCalculatorBase);
|
|
18
19
|
this.revisionNo = revisionNo;
|
|
20
|
+
this.calculate = (0, _selfMeasurements.withProfiling)(this.calculate.bind(this), ['vc']);
|
|
19
21
|
}
|
|
20
22
|
return (0, _createClass2.default)(AbstractVCCalculatorBase, [{
|
|
21
23
|
key: "calculate",
|
|
@@ -10,6 +10,7 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
|
|
|
10
10
|
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
11
11
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
12
12
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
13
|
+
var _selfMeasurements = require("../../../../self-measurements");
|
|
13
14
|
var _abstractBaseVcCalculator = _interopRequireDefault(require("../abstract-base-vc-calculator"));
|
|
14
15
|
var _isViewportEntryData = _interopRequireDefault(require("../utils/is-viewport-entry-data"));
|
|
15
16
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
|
|
@@ -24,8 +25,12 @@ var CONSIDERED_ENTRY_TYPE = ['mutation:child-element', 'mutation:element', 'muta
|
|
|
24
25
|
var KNOWN_ATTRIBUTES_THAT_DOES_NOT_CAUSE_LAYOUT_SHIFTS = exports.KNOWN_ATTRIBUTES_THAT_DOES_NOT_CAUSE_LAYOUT_SHIFTS = ['data-drop-target-for-element', 'draggable'];
|
|
25
26
|
var VCCalculator_FY25_03 = exports.default = /*#__PURE__*/function (_AbstractVCCalculator) {
|
|
26
27
|
function VCCalculator_FY25_03() {
|
|
28
|
+
var _this;
|
|
27
29
|
(0, _classCallCheck2.default)(this, VCCalculator_FY25_03);
|
|
28
|
-
|
|
30
|
+
_this = _callSuper(this, VCCalculator_FY25_03, [REVISION_NO]);
|
|
31
|
+
_this.isEntryIncluded = (0, _selfMeasurements.withProfiling)(_this.isEntryIncluded.bind(_this), ['vc']);
|
|
32
|
+
_this.isVCClean = (0, _selfMeasurements.withProfiling)(_this.isVCClean.bind(_this), ['vc']);
|
|
33
|
+
return _this;
|
|
29
34
|
}
|
|
30
35
|
(0, _inherits2.default)(VCCalculator_FY25_03, _AbstractVCCalculator);
|
|
31
36
|
return (0, _createClass2.default)(VCCalculator_FY25_03, [{
|
package/dist/cjs/vc/vc-observer-new/metric-calculator/percentile-calc/canvas-heatmap/canvas-pixel.js
CHANGED
|
@@ -4,13 +4,12 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.ViewportCanvas = void 0;
|
|
8
|
-
exports.calculateDrawnPixelsRaw = calculateDrawnPixelsRaw;
|
|
9
|
-
exports.getRGBComponents = getRGBComponents;
|
|
7
|
+
exports.getRGBComponents = exports.calculateDrawnPixelsRaw = exports.ViewportCanvas = void 0;
|
|
10
8
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
9
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
12
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
11
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
+
var _selfMeasurements = require("../../../../../self-measurements");
|
|
14
13
|
var _taskYield = _interopRequireDefault(require("../../utils/task-yield"));
|
|
15
14
|
// 24-bit color value
|
|
16
15
|
/**
|
|
@@ -38,6 +37,7 @@ var ViewportCanvas = exports.ViewportCanvas = /*#__PURE__*/function () {
|
|
|
38
37
|
function ViewportCanvas(viewport) {
|
|
39
38
|
var scaleFactor = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
|
40
39
|
(0, _classCallCheck2.default)(this, ViewportCanvas);
|
|
40
|
+
var operationTimer = (0, _selfMeasurements.markProfilingStart)('ViewportCanvas constructor');
|
|
41
41
|
this.scaleFactor = scaleFactor;
|
|
42
42
|
this.colorCounter = 1;
|
|
43
43
|
this.colorTimeMap = new Map();
|
|
@@ -67,6 +67,14 @@ var ViewportCanvas = exports.ViewportCanvas = /*#__PURE__*/function () {
|
|
|
67
67
|
this.ctx = ctx;
|
|
68
68
|
this.ctx.globalCompositeOperation = 'source-over';
|
|
69
69
|
this.clear();
|
|
70
|
+
this.getScaledDimensions = (0, _selfMeasurements.withProfiling)(this.getScaledDimensions.bind(this), ['vc']);
|
|
71
|
+
this.clear = (0, _selfMeasurements.withProfiling)(this.clear.bind(this), ['vc']);
|
|
72
|
+
this.generateColor = (0, _selfMeasurements.withProfiling)(this.generateColor.bind(this), ['vc']);
|
|
73
|
+
this.drawRect = (0, _selfMeasurements.withProfiling)(this.drawRect.bind(this), ['vc']);
|
|
74
|
+
this.getPixelCounts = (0, _selfMeasurements.withProfiling)(this.getPixelCounts.bind(this), ['vc']);
|
|
75
|
+
(0, _selfMeasurements.markProfilingEnd)(operationTimer, {
|
|
76
|
+
tags: ['vc']
|
|
77
|
+
});
|
|
70
78
|
}
|
|
71
79
|
return (0, _createClass2.default)(ViewportCanvas, [{
|
|
72
80
|
key: "getScaledDimensions",
|
|
@@ -201,7 +209,7 @@ var ViewportCanvas = exports.ViewportCanvas = /*#__PURE__*/function () {
|
|
|
201
209
|
* @param number - The input number to be split into RGB components.
|
|
202
210
|
* @returns The RGB color string in the format "rgb(r, g, b)".
|
|
203
211
|
*/
|
|
204
|
-
function getRGBComponents(n) {
|
|
212
|
+
var getRGBComponents = exports.getRGBComponents = (0, _selfMeasurements.withProfiling)(function getRGBComponents(n) {
|
|
205
213
|
// Ensure the input is within the valid range for a 24-bit color
|
|
206
214
|
if (n < 0 || n > 0xffffff) {
|
|
207
215
|
throw new Error('Input number must be between 0 and 16777215 (inclusive).');
|
|
@@ -216,7 +224,7 @@ function getRGBComponents(n) {
|
|
|
216
224
|
// Extract red component (bits 16-23)
|
|
217
225
|
var red = n >> 16 & 0xff;
|
|
218
226
|
return "rgb(".concat(red, ", ").concat(green, ", ").concat(blue, ")");
|
|
219
|
-
}
|
|
227
|
+
}, ['vc']);
|
|
220
228
|
|
|
221
229
|
/**
|
|
222
230
|
* Calculates the number of pixels drawn for each color in the image data.
|
|
@@ -225,11 +233,8 @@ function getRGBComponents(n) {
|
|
|
225
233
|
* @param arraySize - The amount of timestamps that were drawn in the viewport
|
|
226
234
|
* @returns A Map containing color to pixel count mappings.
|
|
227
235
|
*/
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
}
|
|
231
|
-
function _calculateDrawnPixelsRaw() {
|
|
232
|
-
_calculateDrawnPixelsRaw = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(imageData, scaleFactor, arraySize) {
|
|
236
|
+
var calculateDrawnPixelsRaw = exports.calculateDrawnPixelsRaw = (0, _selfMeasurements.withProfiling)( /*#__PURE__*/function () {
|
|
237
|
+
var _calculateDrawnPixelsRaw = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(imageData, scaleFactor, arraySize) {
|
|
233
238
|
var data, arr, i, color, colorIndex;
|
|
234
239
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
235
240
|
while (1) switch (_context2.prev = _context2.next) {
|
|
@@ -271,5 +276,8 @@ function _calculateDrawnPixelsRaw() {
|
|
|
271
276
|
}
|
|
272
277
|
}, _callee2);
|
|
273
278
|
}));
|
|
274
|
-
|
|
275
|
-
|
|
279
|
+
function calculateDrawnPixelsRaw(_x, _x2, _x3) {
|
|
280
|
+
return _calculateDrawnPixelsRaw.apply(this, arguments);
|
|
281
|
+
}
|
|
282
|
+
return calculateDrawnPixelsRaw;
|
|
283
|
+
}(), ['vc']);
|