lighthouse 9.5.0-dev.20220712 → 9.5.0-dev.20220713
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/{esm-utils.mjs → esm-utils.js} +2 -2
- package/flow-report/tsconfig.json +1 -0
- package/lighthouse-cli/bin.js +5 -9
- package/lighthouse-cli/commands/list-audits.js +2 -2
- package/lighthouse-cli/commands/list-trace-categories.js +1 -2
- package/lighthouse-cli/run.js +2 -2
- package/lighthouse-cli/test/smokehouse/core-tests.js +3 -2
- package/lighthouse-cli/test/smokehouse/frontends/smokehouse-bin.js +4 -3
- package/lighthouse-cli/test/smokehouse/lighthouse-runners/bundle.js +8 -4
- package/lighthouse-cli/test/smokehouse/lighthouse-runners/cli.js +1 -1
- package/lighthouse-cli/test/smokehouse/lighthouse-runners/devtools.js +17 -68
- package/lighthouse-cli/test/smokehouse/smokehouse.js +10 -1
- package/lighthouse-core/audits/accessibility/accesskeys.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-allowed-attr.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-command-name.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-hidden-body.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-hidden-focus.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-input-field-name.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-meter-name.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-progressbar-name.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-required-attr.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-required-children.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-required-parent.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-roles.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-toggle-field-name.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-tooltip-name.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-treeitem-name.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-valid-attr-value.js +6 -5
- package/lighthouse-core/audits/accessibility/aria-valid-attr.js +6 -5
- package/lighthouse-core/audits/accessibility/axe-audit.js +6 -5
- package/lighthouse-core/audits/accessibility/button-name.js +6 -5
- package/lighthouse-core/audits/accessibility/bypass.js +6 -5
- package/lighthouse-core/audits/accessibility/color-contrast.js +6 -5
- package/lighthouse-core/audits/accessibility/definition-list.js +6 -5
- package/lighthouse-core/audits/accessibility/dlitem.js +6 -5
- package/lighthouse-core/audits/accessibility/document-title.js +6 -5
- package/lighthouse-core/audits/accessibility/duplicate-id-active.js +6 -5
- package/lighthouse-core/audits/accessibility/duplicate-id-aria.js +6 -5
- package/lighthouse-core/audits/accessibility/form-field-multiple-labels.js +6 -5
- package/lighthouse-core/audits/accessibility/frame-title.js +6 -5
- package/lighthouse-core/audits/accessibility/heading-order.js +6 -5
- package/lighthouse-core/audits/accessibility/html-has-lang.js +6 -5
- package/lighthouse-core/audits/accessibility/html-lang-valid.js +6 -5
- package/lighthouse-core/audits/accessibility/image-alt.js +6 -5
- package/lighthouse-core/audits/accessibility/input-image-alt.js +6 -5
- package/lighthouse-core/audits/accessibility/label.js +6 -5
- package/lighthouse-core/audits/accessibility/link-name.js +6 -5
- package/lighthouse-core/audits/accessibility/list.js +6 -5
- package/lighthouse-core/audits/accessibility/listitem.js +6 -5
- package/lighthouse-core/audits/accessibility/manual/custom-controls-labels.js +2 -2
- package/lighthouse-core/audits/accessibility/manual/custom-controls-roles.js +2 -2
- package/lighthouse-core/audits/accessibility/manual/focus-traps.js +2 -2
- package/lighthouse-core/audits/accessibility/manual/focusable-controls.js +2 -2
- package/lighthouse-core/audits/accessibility/manual/interactive-element-affordance.js +2 -2
- package/lighthouse-core/audits/accessibility/manual/logical-tab-order.js +2 -2
- package/lighthouse-core/audits/accessibility/manual/managed-focus.js +2 -2
- package/lighthouse-core/audits/accessibility/manual/offscreen-content-hidden.js +2 -2
- package/lighthouse-core/audits/accessibility/manual/use-landmarks.js +2 -2
- package/lighthouse-core/audits/accessibility/manual/visual-order-follows-dom.js +2 -2
- package/lighthouse-core/audits/accessibility/meta-refresh.js +6 -5
- package/lighthouse-core/audits/accessibility/meta-viewport.js +6 -5
- package/lighthouse-core/audits/accessibility/object-alt.js +6 -5
- package/lighthouse-core/audits/accessibility/tabindex.js +6 -5
- package/lighthouse-core/audits/accessibility/td-headers-attr.js +6 -5
- package/lighthouse-core/audits/accessibility/th-has-data-cells.js +6 -5
- package/lighthouse-core/audits/accessibility/valid-lang.js +6 -5
- package/lighthouse-core/audits/accessibility/video-caption.js +6 -5
- package/lighthouse-core/audits/apple-touch-icon.js +5 -5
- package/lighthouse-core/audits/audit.js +4 -4
- package/lighthouse-core/audits/autocomplete.js +6 -6
- package/lighthouse-core/audits/bootup-time.js +9 -9
- package/lighthouse-core/audits/byte-efficiency/byte-efficiency-audit.js +12 -12
- package/lighthouse-core/audits/byte-efficiency/duplicated-javascript.js +9 -8
- package/lighthouse-core/audits/byte-efficiency/efficient-animated-content.js +7 -7
- package/lighthouse-core/audits/byte-efficiency/legacy-javascript.js +18 -10
- package/lighthouse-core/audits/byte-efficiency/modern-image-formats.js +7 -7
- package/lighthouse-core/audits/byte-efficiency/offscreen-images.js +11 -11
- package/lighthouse-core/audits/byte-efficiency/render-blocking-resources.js +15 -15
- package/lighthouse-core/audits/byte-efficiency/total-byte-weight.js +7 -7
- package/lighthouse-core/audits/byte-efficiency/unminified-css.js +8 -8
- package/lighthouse-core/audits/byte-efficiency/unminified-javascript.js +8 -8
- package/lighthouse-core/audits/byte-efficiency/unused-css-rules.js +7 -7
- package/lighthouse-core/audits/byte-efficiency/unused-javascript.js +9 -9
- package/lighthouse-core/audits/byte-efficiency/uses-long-cache-ttl.js +10 -10
- package/lighthouse-core/audits/byte-efficiency/uses-optimized-images.js +7 -7
- package/lighthouse-core/audits/byte-efficiency/uses-responsive-images-snapshot.js +8 -8
- package/lighthouse-core/audits/byte-efficiency/uses-responsive-images.js +9 -10
- package/lighthouse-core/audits/byte-efficiency/uses-text-compression.js +7 -7
- package/lighthouse-core/audits/content-width.js +5 -5
- package/lighthouse-core/audits/critical-request-chains.js +6 -6
- package/lighthouse-core/audits/csp-xss.js +7 -10
- package/lighthouse-core/audits/deprecations.js +7 -6
- package/lighthouse-core/audits/diagnostics.js +6 -6
- package/lighthouse-core/audits/dobetterweb/charset.js +6 -9
- package/lighthouse-core/audits/dobetterweb/doctype.js +5 -5
- package/lighthouse-core/audits/dobetterweb/dom-size.js +5 -5
- package/lighthouse-core/audits/dobetterweb/geolocation-on-start.js +5 -5
- package/lighthouse-core/audits/dobetterweb/inspector-issues.js +6 -5
- package/lighthouse-core/audits/dobetterweb/js-libraries.js +5 -5
- package/lighthouse-core/audits/dobetterweb/no-document-write.js +5 -5
- package/lighthouse-core/audits/dobetterweb/no-vulnerable-libraries.js +12 -8
- package/lighthouse-core/audits/dobetterweb/notification-on-start.js +5 -5
- package/lighthouse-core/audits/dobetterweb/password-inputs-can-be-pasted-into.js +5 -5
- package/lighthouse-core/audits/dobetterweb/uses-http2.js +15 -14
- package/lighthouse-core/audits/dobetterweb/uses-passive-event-listeners.js +5 -5
- package/lighthouse-core/audits/errors-in-console.js +8 -7
- package/lighthouse-core/audits/final-screenshot.js +5 -5
- package/lighthouse-core/audits/font-display.js +8 -8
- package/lighthouse-core/audits/full-page-screenshot.js +2 -2
- package/lighthouse-core/audits/image-aspect-ratio.js +6 -6
- package/lighthouse-core/audits/image-size-responsive.js +6 -6
- package/lighthouse-core/audits/installable-manifest.js +6 -6
- package/lighthouse-core/audits/is-on-https.js +8 -8
- package/lighthouse-core/audits/largest-contentful-paint-element.js +5 -5
- package/lighthouse-core/audits/layout-shift-elements.js +5 -5
- package/lighthouse-core/audits/lcp-lazy-loaded.js +5 -5
- package/lighthouse-core/audits/long-tasks.js +10 -10
- package/lighthouse-core/audits/main-thread-tasks.js +3 -3
- package/lighthouse-core/audits/mainthread-work-breakdown.js +7 -7
- package/lighthouse-core/audits/manual/manual-audit.js +2 -2
- package/lighthouse-core/audits/manual/pwa-cross-browser.js +5 -5
- package/lighthouse-core/audits/manual/pwa-each-page-has-url.js +5 -5
- package/lighthouse-core/audits/manual/pwa-page-transitions.js +5 -5
- package/lighthouse-core/audits/maskable-icon.js +6 -6
- package/lighthouse-core/audits/metrics/cumulative-layout-shift.js +6 -6
- package/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js +6 -6
- package/lighthouse-core/audits/metrics/first-contentful-paint-3g.js +6 -4
- package/lighthouse-core/audits/metrics/first-contentful-paint.js +6 -6
- package/lighthouse-core/audits/metrics/first-meaningful-paint.js +6 -6
- package/lighthouse-core/audits/metrics/interactive.js +6 -6
- package/lighthouse-core/audits/metrics/largest-contentful-paint.js +6 -6
- package/lighthouse-core/audits/metrics/max-potential-fid.js +6 -6
- package/lighthouse-core/audits/metrics/speed-index.js +6 -6
- package/lighthouse-core/audits/metrics/total-blocking-time.js +6 -6
- package/lighthouse-core/audits/metrics.js +3 -3
- package/lighthouse-core/audits/multi-check-audit.js +2 -2
- package/lighthouse-core/audits/network-requests.js +5 -5
- package/lighthouse-core/audits/network-rtt.js +7 -7
- package/lighthouse-core/audits/network-server-latency.js +7 -7
- package/lighthouse-core/audits/no-unload-listeners.js +6 -6
- package/lighthouse-core/audits/non-composited-animations.js +6 -5
- package/lighthouse-core/audits/oopif-iframe-test-audit.js +1 -1
- package/lighthouse-core/audits/performance-budget.js +8 -8
- package/lighthouse-core/audits/predictive-perf.js +9 -10
- package/lighthouse-core/audits/preload-fonts.js +8 -7
- package/lighthouse-core/audits/preload-lcp-image.js +11 -11
- package/lighthouse-core/audits/redirects.js +11 -11
- package/lighthouse-core/audits/resource-summary.js +6 -6
- package/lighthouse-core/audits/screenshot-thumbnails.js +5 -5
- package/lighthouse-core/audits/script-elements-test-audit.js +1 -1
- package/lighthouse-core/audits/script-treemap-data.js +7 -6
- package/lighthouse-core/audits/seo/canonical.js +7 -7
- package/lighthouse-core/audits/seo/crawlable-anchors.js +5 -5
- package/lighthouse-core/audits/seo/font-size.js +8 -6
- package/lighthouse-core/audits/seo/hreflang.js +7 -6
- package/lighthouse-core/audits/seo/http-status-code.js +7 -6
- package/lighthouse-core/audits/seo/is-crawlable.js +11 -9
- package/lighthouse-core/audits/seo/link-text.js +7 -6
- package/lighthouse-core/audits/seo/manual/structured-data.js +5 -5
- package/lighthouse-core/audits/seo/meta-description.js +5 -5
- package/lighthouse-core/audits/seo/plugins.js +6 -6
- package/lighthouse-core/audits/seo/robots-txt.js +7 -6
- package/lighthouse-core/audits/seo/tap-targets.js +12 -9
- package/lighthouse-core/audits/server-response-time.js +6 -6
- package/lighthouse-core/audits/service-worker.js +6 -6
- package/lighthouse-core/audits/splash-screen.js +6 -6
- package/lighthouse-core/audits/themed-omnibox.js +7 -7
- package/lighthouse-core/audits/third-party-facades.js +14 -13
- package/lighthouse-core/audits/third-party-summary.js +9 -9
- package/lighthouse-core/audits/timing-budget.js +8 -8
- package/lighthouse-core/audits/unsized-images.js +6 -6
- package/lighthouse-core/audits/user-timings.js +6 -6
- package/lighthouse-core/audits/uses-rel-preconnect.js +15 -15
- package/lighthouse-core/audits/uses-rel-preload.js +13 -13
- package/lighthouse-core/audits/valid-source-maps.js +6 -6
- package/lighthouse-core/audits/viewport.js +6 -6
- package/lighthouse-core/audits/violation-audit.js +3 -3
- package/lighthouse-core/audits/work-during-interaction.js +15 -15
- package/lighthouse-core/computed/computed-artifact.js +3 -3
- package/lighthouse-core/computed/critical-request-chains.js +5 -5
- package/lighthouse-core/computed/image-records.js +3 -3
- package/lighthouse-core/computed/js-bundles.js +4 -4
- package/lighthouse-core/computed/load-simulator.js +8 -5
- package/lighthouse-core/computed/main-resource.js +4 -4
- package/lighthouse-core/computed/main-thread-tasks.js +4 -4
- package/lighthouse-core/computed/manifest-values.js +3 -3
- package/lighthouse-core/computed/metrics/cumulative-layout-shift.js +4 -4
- package/lighthouse-core/computed/metrics/first-contentful-paint-all-frames.js +3 -3
- package/lighthouse-core/computed/metrics/first-contentful-paint.js +4 -4
- package/lighthouse-core/computed/metrics/first-meaningful-paint.js +5 -5
- package/lighthouse-core/computed/metrics/interactive.js +8 -9
- package/lighthouse-core/computed/metrics/lantern-first-contentful-paint.js +7 -7
- package/lighthouse-core/computed/metrics/lantern-first-meaningful-paint.js +5 -5
- package/lighthouse-core/computed/metrics/lantern-interactive.js +7 -7
- package/lighthouse-core/computed/metrics/lantern-largest-contentful-paint.js +5 -5
- package/lighthouse-core/computed/metrics/lantern-max-potential-fid.js +6 -6
- package/lighthouse-core/computed/metrics/lantern-metric.js +10 -10
- package/lighthouse-core/computed/metrics/lantern-speed-index.js +8 -8
- package/lighthouse-core/computed/metrics/lantern-total-blocking-time.js +8 -8
- package/lighthouse-core/computed/metrics/largest-contentful-paint-all-frames.js +5 -4
- package/lighthouse-core/computed/metrics/largest-contentful-paint.js +6 -5
- package/lighthouse-core/computed/metrics/max-potential-fid.js +6 -6
- package/lighthouse-core/computed/metrics/metric.js +6 -6
- package/lighthouse-core/computed/metrics/navigation-metric.js +2 -2
- package/lighthouse-core/computed/metrics/responsiveness.js +3 -3
- package/lighthouse-core/computed/metrics/speed-index.js +5 -5
- package/lighthouse-core/computed/metrics/tbt-utils.js +1 -1
- package/lighthouse-core/computed/metrics/timing-summary.js +15 -15
- package/lighthouse-core/computed/metrics/total-blocking-time.js +7 -7
- package/lighthouse-core/computed/module-duplication.js +3 -3
- package/lighthouse-core/computed/network-analysis.js +4 -4
- package/lighthouse-core/computed/network-records.js +3 -3
- package/lighthouse-core/computed/page-dependency-graph.js +11 -11
- package/lighthouse-core/computed/processed-navigation.js +3 -3
- package/lighthouse-core/computed/processed-trace.js +3 -3
- package/lighthouse-core/computed/resource-summary.js +7 -7
- package/lighthouse-core/computed/screenshots.js +2 -2
- package/lighthouse-core/computed/speedline.js +5 -5
- package/lighthouse-core/computed/trace-of-tab.js +6 -5
- package/lighthouse-core/computed/unused-css.js +4 -4
- package/lighthouse-core/computed/unused-javascript-summary.js +2 -2
- package/lighthouse-core/computed/user-timings.js +3 -3
- package/lighthouse-core/computed/viewport-meta.js +3 -4
- package/lighthouse-core/config/budget.js +1 -1
- package/lighthouse-core/config/config-helpers.js +47 -19
- package/lighthouse-core/config/config-plugin.js +2 -2
- package/lighthouse-core/config/config.js +16 -14
- package/lighthouse-core/config/constants.js +1 -1
- package/lighthouse-core/config/default-config.js +11 -10
- package/lighthouse-core/config/desktop-config.js +2 -2
- package/lighthouse-core/config/experimental-config.js +1 -1
- package/lighthouse-core/config/full-config.js +1 -1
- package/lighthouse-core/config/lr-desktop-config.js +2 -2
- package/lighthouse-core/config/lr-mobile-config.js +1 -1
- package/lighthouse-core/config/metrics-to-audits.js +1 -1
- package/lighthouse-core/config/perf-config.js +1 -1
- package/lighthouse-core/fraggle-rock/api.js +8 -8
- package/lighthouse-core/fraggle-rock/config/config.js +27 -17
- package/lighthouse-core/fraggle-rock/config/default-config.js +5 -5
- package/lighthouse-core/fraggle-rock/config/filters.js +3 -4
- package/lighthouse-core/fraggle-rock/config/validation.js +4 -4
- package/lighthouse-core/fraggle-rock/gather/base-artifacts.js +6 -8
- package/lighthouse-core/fraggle-rock/gather/base-gatherer.js +2 -1
- package/lighthouse-core/fraggle-rock/gather/driver.js +5 -5
- package/lighthouse-core/fraggle-rock/gather/navigation-runner.js +23 -27
- package/lighthouse-core/fraggle-rock/gather/runner-helpers.js +3 -3
- package/lighthouse-core/fraggle-rock/gather/session.js +3 -3
- package/lighthouse-core/fraggle-rock/gather/snapshot-runner.js +7 -11
- package/lighthouse-core/fraggle-rock/gather/timespan-runner.js +8 -12
- package/lighthouse-core/fraggle-rock/user-flow.js +8 -8
- package/lighthouse-core/gather/connections/connection.js +4 -4
- package/lighthouse-core/gather/connections/cri.js +6 -6
- package/lighthouse-core/gather/connections/raw.js +2 -2
- package/lighthouse-core/gather/driver/dom.js +1 -1
- package/lighthouse-core/gather/driver/environment.js +6 -6
- package/lighthouse-core/gather/driver/execution-context.js +2 -2
- package/lighthouse-core/gather/driver/navigation.js +8 -8
- package/lighthouse-core/gather/driver/network-monitor.js +7 -6
- package/lighthouse-core/gather/driver/network.js +2 -2
- package/lighthouse-core/gather/driver/prepare.js +5 -5
- package/lighthouse-core/gather/driver/service-workers.js +1 -1
- package/lighthouse-core/gather/driver/storage.js +4 -4
- package/lighthouse-core/gather/driver/target-manager.js +9 -4
- package/lighthouse-core/gather/driver/wait-for-condition.js +6 -5
- package/lighthouse-core/gather/driver.js +11 -16
- package/lighthouse-core/gather/fetcher.js +1 -1
- package/lighthouse-core/gather/gather-runner.js +22 -22
- package/lighthouse-core/gather/gatherers/accessibility.js +6 -5
- package/lighthouse-core/gather/gatherers/anchor-elements.js +6 -5
- package/lighthouse-core/gather/gatherers/cache-contents.js +2 -2
- package/lighthouse-core/gather/gatherers/console-messages.js +2 -2
- package/lighthouse-core/gather/gatherers/css-usage.js +6 -5
- package/lighthouse-core/gather/gatherers/devtools-log-compat.js +4 -3
- package/lighthouse-core/gather/gatherers/devtools-log.js +3 -3
- package/lighthouse-core/gather/gatherers/dobetterweb/doctype.js +2 -2
- package/lighthouse-core/gather/gatherers/dobetterweb/domstats.js +3 -3
- package/lighthouse-core/gather/gatherers/dobetterweb/optimized-images.js +8 -8
- package/lighthouse-core/gather/gatherers/dobetterweb/password-inputs-with-prevented-paste.js +4 -3
- package/lighthouse-core/gather/gatherers/dobetterweb/response-compression.js +10 -10
- package/lighthouse-core/gather/gatherers/dobetterweb/tags-blocking-first-paint.js +4 -4
- package/lighthouse-core/gather/gatherers/full-page-screenshot.js +7 -6
- package/lighthouse-core/gather/gatherers/gatherer.js +1 -1
- package/lighthouse-core/gather/gatherers/global-listeners.js +2 -2
- package/lighthouse-core/gather/gatherers/iframe-elements.js +4 -3
- package/lighthouse-core/gather/gatherers/image-elements.js +5 -5
- package/lighthouse-core/gather/gatherers/inputs.js +5 -4
- package/lighthouse-core/gather/gatherers/inspector-issues.js +4 -4
- package/lighthouse-core/gather/gatherers/installability-errors.js +3 -3
- package/lighthouse-core/gather/gatherers/js-usage.js +2 -2
- package/lighthouse-core/gather/gatherers/link-elements.js +7 -7
- package/lighthouse-core/gather/gatherers/main-document-content.js +5 -5
- package/lighthouse-core/gather/gatherers/meta-elements.js +3 -3
- package/lighthouse-core/gather/gatherers/network-user-agent.js +3 -3
- package/lighthouse-core/gather/gatherers/script-elements.js +6 -6
- package/lighthouse-core/gather/gatherers/scripts.js +2 -2
- package/lighthouse-core/gather/gatherers/seo/embedded-content.js +4 -3
- package/lighthouse-core/gather/gatherers/seo/font-size.js +8 -5
- package/lighthouse-core/gather/gatherers/seo/robots-txt.js +2 -2
- package/lighthouse-core/gather/gatherers/seo/tap-targets.js +5 -4
- package/lighthouse-core/gather/gatherers/service-worker.js +3 -3
- package/lighthouse-core/gather/gatherers/source-maps.js +3 -3
- package/lighthouse-core/gather/gatherers/stacks.js +12 -4
- package/lighthouse-core/gather/gatherers/trace-compat.js +4 -3
- package/lighthouse-core/gather/gatherers/trace-elements.js +13 -12
- package/lighthouse-core/gather/gatherers/trace.js +4 -3
- package/lighthouse-core/gather/gatherers/viewport-dimensions.js +2 -2
- package/lighthouse-core/gather/gatherers/web-app-manifest.js +5 -5
- package/lighthouse-core/index.cjs +21 -0
- package/lighthouse-core/index.js +25 -23
- package/lighthouse-core/lib/arbitrary-equality-map.js +2 -2
- package/lighthouse-core/lib/asset-saver.js +15 -12
- package/lighthouse-core/lib/axe.js +9 -4
- package/lighthouse-core/lib/cdt/package.json +4 -0
- package/lighthouse-core/lib/csp-evaluator.js +11 -13
- package/lighthouse-core/lib/dependency-graph/base-node.js +2 -2
- package/lighthouse-core/lib/dependency-graph/cpu-node.js +2 -2
- package/lighthouse-core/lib/dependency-graph/network-node.js +3 -3
- package/lighthouse-core/lib/dependency-graph/simulator/connection-pool.js +4 -4
- package/lighthouse-core/lib/dependency-graph/simulator/dns-cache.js +1 -1
- package/lighthouse-core/lib/dependency-graph/simulator/network-analyzer.js +11 -10
- package/lighthouse-core/lib/dependency-graph/simulator/simulator-timing-map.js +5 -5
- package/lighthouse-core/lib/dependency-graph/simulator/simulator.js +12 -10
- package/lighthouse-core/lib/dependency-graph/simulator/tcp-connection.js +1 -1
- package/lighthouse-core/lib/emulation.js +2 -2
- package/lighthouse-core/lib/i18n/README.md +1 -1
- package/lighthouse-core/lib/i18n/i18n.js +13 -13
- package/lighthouse-core/lib/icons.js +2 -2
- package/lighthouse-core/lib/lantern-trace-saver.js +1 -1
- package/lighthouse-core/lib/lh-env.js +7 -5
- package/lighthouse-core/lib/lh-error.js +4 -4
- package/lighthouse-core/lib/lh-trace-processor.js +3 -3
- package/lighthouse-core/lib/manifest-parser.js +4 -4
- package/lighthouse-core/lib/median-run.js +1 -1
- package/lighthouse-core/lib/minification-estimator.js +1 -1
- package/lighthouse-core/lib/minify-devtoolslog.js +1 -1
- package/lighthouse-core/lib/minify-trace.js +3 -3
- package/lighthouse-core/lib/navigation-error.js +6 -6
- package/lighthouse-core/lib/network-recorder.js +4 -4
- package/lighthouse-core/lib/network-request.js +2 -3
- package/lighthouse-core/lib/page-functions.js +2 -1
- package/lighthouse-core/lib/proto-preprocessor.js +7 -6
- package/lighthouse-core/lib/rect-helpers.js +1 -1
- package/lighthouse-core/lib/script-helpers.js +4 -1
- package/lighthouse-core/lib/sentry.js +4 -4
- package/lighthouse-core/lib/stack-packs.js +4 -4
- package/lighthouse-core/lib/statistics.js +1 -1
- package/lighthouse-core/lib/tappable-rects.js +2 -2
- package/lighthouse-core/lib/third-party-web.js +2 -2
- package/lighthouse-core/lib/timing-trace-saver.js +1 -1
- package/lighthouse-core/lib/tracehouse/cpu-profile-model.js +8 -8
- package/lighthouse-core/lib/tracehouse/main-thread-tasks.js +2 -2
- package/lighthouse-core/lib/tracehouse/task-groups.js +1 -1
- package/lighthouse-core/lib/tracehouse/task-summary.js +2 -2
- package/lighthouse-core/lib/tracehouse/trace-processor.js +2 -3
- package/lighthouse-core/lib/traces/pwmetrics-events.js +4 -3
- package/lighthouse-core/lib/url-shim.js +6 -4
- package/lighthouse-core/package.json +4 -0
- package/lighthouse-core/runner.js +40 -34
- package/lighthouse-core/scoring.js +2 -2
- package/lighthouse-core/{util-commonjs.js → util.cjs} +0 -0
- package/package.json +4 -2
- package/report/test/generator/report-generator-test.js +4 -3
- package/report/test/renderer/report-renderer-axe-test.js +2 -2
- package/root.js +10 -2
- package/shared/package.json +4 -0
- package/shared/test/localization/format-test.js +23 -13
- package/shared/test/localization/swap-locale-test.js +1 -0
- package/third-party/axe/valid-langs.js +1 -1
- package/third-party/chromium-synchronization/inspector-issueAdded-types-test.js +3 -3
- package/third-party/chromium-synchronization/installability-errors-test.js +3 -3
- package/third-party/download-content-shell/download-content-shell.js +6 -5
- package/third-party/download-content-shell/utils.js +8 -8
- package/tsconfig.json +3 -1
- package/types/artifacts.d.ts +9 -11
- package/types/audit.d.ts +2 -2
- package/types/config.d.ts +1 -1
- package/types/cssstyle/index.d.ts +1 -1
- package/types/gatherer.d.ts +7 -7
- package/types/global-lh.d.ts +2 -2
- package/types/smokehouse.d.ts +2 -0
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import NavigationMetric from './navigation-metric.js';
|
|
10
10
|
|
|
11
11
|
class FirstContentfulPaintAllFrames extends NavigationMetric {
|
|
12
12
|
/**
|
|
@@ -31,7 +31,7 @@ class FirstContentfulPaintAllFrames extends NavigationMetric {
|
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
export default makeComputedArtifact(
|
|
35
35
|
FirstContentfulPaintAllFrames,
|
|
36
36
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
37
37
|
);
|
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import NavigationMetric from './navigation-metric.js';
|
|
10
|
+
import LanternFirstContentfulPaint from './lantern-first-contentful-paint.js';
|
|
11
11
|
|
|
12
12
|
class FirstContentfulPaint extends NavigationMetric {
|
|
13
13
|
/**
|
|
@@ -34,7 +34,7 @@ class FirstContentfulPaint extends NavigationMetric {
|
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
|
|
37
|
+
export default makeComputedArtifact(
|
|
38
38
|
FirstContentfulPaint,
|
|
39
39
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
40
40
|
);
|
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import NavigationMetric from './navigation-metric.js';
|
|
10
|
+
import {LighthouseError} from '../../lib/lh-error.js';
|
|
11
|
+
import LanternFirstMeaningfulPaint from './lantern-first-meaningful-paint.js';
|
|
12
12
|
|
|
13
13
|
class FirstMeaningfulPaint extends NavigationMetric {
|
|
14
14
|
/**
|
|
@@ -38,7 +38,7 @@ class FirstMeaningfulPaint extends NavigationMetric {
|
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
|
|
41
|
+
export default makeComputedArtifact(
|
|
42
42
|
FirstMeaningfulPaint,
|
|
43
43
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
44
44
|
);
|
|
@@ -5,13 +5,12 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const LighthouseError = require('../../lib/lh-error.js');
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import NavigationMetric from './navigation-metric.js';
|
|
10
|
+
import LanternInteractive from './lantern-interactive.js';
|
|
11
|
+
import {NetworkMonitor} from '../../gather/driver/network-monitor.js';
|
|
12
|
+
import {TraceProcessor} from '../../lib/tracehouse/trace-processor.js';
|
|
13
|
+
import {LighthouseError} from '../../lib/lh-error.js';
|
|
15
14
|
|
|
16
15
|
const REQUIRED_QUIET_WINDOW = 5000;
|
|
17
16
|
const ALLOWED_CONCURRENT_REQUESTS = 2;
|
|
@@ -161,7 +160,7 @@ class Interactive extends NavigationMetric {
|
|
|
161
160
|
throw new LighthouseError(LighthouseError.errors.NO_DCL);
|
|
162
161
|
}
|
|
163
162
|
|
|
164
|
-
const longTasks =
|
|
163
|
+
const longTasks = TraceProcessor.getMainThreadTopLevelEvents(processedTrace)
|
|
165
164
|
.filter(event => event.duration >= 50);
|
|
166
165
|
const quietPeriodInfo = Interactive.findOverlappingQuietPeriods(
|
|
167
166
|
longTasks,
|
|
@@ -181,7 +180,7 @@ class Interactive extends NavigationMetric {
|
|
|
181
180
|
}
|
|
182
181
|
}
|
|
183
182
|
|
|
184
|
-
|
|
183
|
+
export default makeComputedArtifact(
|
|
185
184
|
Interactive,
|
|
186
185
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
187
186
|
);
|
|
@@ -5,13 +5,13 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import LanternMetric from './lantern-metric.js';
|
|
10
|
+
import {BaseNode} from '../../lib/dependency-graph/base-node.js';
|
|
11
11
|
|
|
12
|
-
/** @typedef {
|
|
13
|
-
/** @typedef {import('../../lib/dependency-graph/cpu-node')} CPUNode */
|
|
14
|
-
/** @typedef {import('../../lib/dependency-graph/network-node')} NetworkNode */
|
|
12
|
+
/** @typedef {import('../../lib/dependency-graph/base-node.js').Node} Node */
|
|
13
|
+
/** @typedef {import('../../lib/dependency-graph/cpu-node').CPUNode} CPUNode */
|
|
14
|
+
/** @typedef {import('../../lib/dependency-graph/network-node').NetworkNode} NetworkNode */
|
|
15
15
|
|
|
16
16
|
class LanternFirstContentfulPaint extends LanternMetric {
|
|
17
17
|
/**
|
|
@@ -198,7 +198,7 @@ class LanternFirstContentfulPaint extends LanternMetric {
|
|
|
198
198
|
}
|
|
199
199
|
}
|
|
200
200
|
|
|
201
|
-
|
|
201
|
+
export default makeComputedArtifact(
|
|
202
202
|
LanternFirstContentfulPaint,
|
|
203
203
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
204
204
|
);
|
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import LanternMetric from './lantern-metric.js';
|
|
10
|
+
import {LighthouseError} from '../../lib/lh-error.js';
|
|
11
|
+
import LanternFirstContentfulPaint from './lantern-first-contentful-paint.js';
|
|
12
12
|
|
|
13
13
|
/** @typedef {import('../../lib/dependency-graph/base-node.js').Node} Node */
|
|
14
14
|
|
|
@@ -77,7 +77,7 @@ class LanternFirstMeaningfulPaint extends LanternMetric {
|
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
79
|
|
|
80
|
-
|
|
80
|
+
export default makeComputedArtifact(
|
|
81
81
|
LanternFirstMeaningfulPaint,
|
|
82
82
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
83
83
|
);
|
|
@@ -5,13 +5,13 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import LanternMetric from './lantern-metric.js';
|
|
10
|
+
import {BaseNode} from '../../lib/dependency-graph/base-node.js';
|
|
11
|
+
import {NetworkRequest} from '../../lib/network-request.js';
|
|
12
|
+
import LanternFirstMeaningfulPaint from './lantern-first-meaningful-paint.js';
|
|
13
13
|
|
|
14
|
-
/** @typedef {
|
|
14
|
+
/** @typedef {import('../../lib/dependency-graph/base-node.js').Node} Node */
|
|
15
15
|
|
|
16
16
|
// Any CPU task of 20 ms or more will end up being a critical long task on mobile
|
|
17
17
|
const CRITICAL_LONG_TASK_THRESHOLD = 20;
|
|
@@ -107,7 +107,7 @@ class LanternInteractive extends LanternMetric {
|
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
109
|
|
|
110
|
-
|
|
110
|
+
export default makeComputedArtifact(
|
|
111
111
|
LanternInteractive,
|
|
112
112
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
113
113
|
);
|
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import LanternMetric from './lantern-metric.js';
|
|
10
|
+
import {LighthouseError} from '../../lib/lh-error.js';
|
|
11
|
+
import LanternFirstContentfulPaint from './lantern-first-contentful-paint.js';
|
|
12
12
|
|
|
13
13
|
/** @typedef {import('../../lib/dependency-graph/base-node.js').Node} Node */
|
|
14
14
|
|
|
@@ -105,7 +105,7 @@ class LanternLargestContentfulPaint extends LanternMetric {
|
|
|
105
105
|
}
|
|
106
106
|
}
|
|
107
107
|
|
|
108
|
-
|
|
108
|
+
export default makeComputedArtifact(
|
|
109
109
|
LanternLargestContentfulPaint,
|
|
110
110
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
111
111
|
);
|
|
@@ -5,12 +5,12 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import LanternMetricArtifact from './lantern-metric.js';
|
|
10
|
+
import {BaseNode} from '../../lib/dependency-graph/base-node.js';
|
|
11
|
+
import LanternFirstContentfulPaint from './lantern-first-contentful-paint.js';
|
|
12
12
|
|
|
13
|
-
/** @typedef {
|
|
13
|
+
/** @typedef {import('../../lib/dependency-graph/base-node.js').Node} Node */
|
|
14
14
|
|
|
15
15
|
class LanternMaxPotentialFID extends LanternMetricArtifact {
|
|
16
16
|
/**
|
|
@@ -87,7 +87,7 @@ class LanternMaxPotentialFID extends LanternMetricArtifact {
|
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
89
|
|
|
90
|
-
|
|
90
|
+
export default makeComputedArtifact(
|
|
91
91
|
LanternMaxPotentialFID,
|
|
92
92
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
93
93
|
);
|
|
@@ -5,16 +5,16 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
import {BaseNode} from '../../lib/dependency-graph/base-node.js';
|
|
9
|
+
import {NetworkRequest} from '../../lib/network-request.js';
|
|
10
|
+
import ProcessedTrace from '../processed-trace.js';
|
|
11
|
+
import ProcessedNavigation from '../processed-navigation.js';
|
|
12
|
+
import PageDependencyGraph from '../page-dependency-graph.js';
|
|
13
|
+
import LoadSimulator from '../load-simulator.js';
|
|
14
14
|
|
|
15
|
-
/** @typedef {
|
|
16
|
-
/** @typedef {import('../../lib/dependency-graph/network-node')} NetworkNode */
|
|
17
|
-
/** @typedef {import('../../lib/dependency-graph/simulator/simulator')} Simulator */
|
|
15
|
+
/** @typedef {import('../../lib/dependency-graph/base-node.js').Node} Node */
|
|
16
|
+
/** @typedef {import('../../lib/dependency-graph/network-node').NetworkNode} NetworkNode */
|
|
17
|
+
/** @typedef {import('../../lib/dependency-graph/simulator/simulator').Simulator} Simulator */
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
20
|
* @typedef Extras
|
|
@@ -162,4 +162,4 @@ class LanternMetricArtifact {
|
|
|
162
162
|
}
|
|
163
163
|
}
|
|
164
164
|
|
|
165
|
-
|
|
165
|
+
export default LanternMetricArtifact;
|
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import LanternMetric from './lantern-metric.js';
|
|
10
|
+
import {BaseNode} from '../../lib/dependency-graph/base-node.js';
|
|
11
|
+
import Speedline from '../speedline.js';
|
|
12
|
+
import LanternFirstContentfulPaint from './lantern-first-contentful-paint.js';
|
|
13
|
+
import {throttling as defaultThrottling} from '../../config/constants.js';
|
|
14
14
|
|
|
15
|
-
/** @typedef {
|
|
15
|
+
/** @typedef {import('../../lib/dependency-graph/base-node.js').Node} Node */
|
|
16
16
|
|
|
17
17
|
class LanternSpeedIndex extends LanternMetric {
|
|
18
18
|
/**
|
|
@@ -144,7 +144,7 @@ class LanternSpeedIndex extends LanternMetric {
|
|
|
144
144
|
}
|
|
145
145
|
}
|
|
146
146
|
|
|
147
|
-
|
|
147
|
+
export default makeComputedArtifact(
|
|
148
148
|
LanternSpeedIndex,
|
|
149
149
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
150
150
|
);
|
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import LanternMetric from './lantern-metric.js';
|
|
10
|
+
import {BaseNode} from '../../lib/dependency-graph/base-node.js';
|
|
11
|
+
import LanternFirstContentfulPaint from './lantern-first-contentful-paint.js';
|
|
12
|
+
import LanternInteractive from './lantern-interactive.js';
|
|
13
|
+
import {BLOCKING_TIME_THRESHOLD, calculateSumOfBlockingTime} from './tbt-utils.js';
|
|
14
14
|
|
|
15
|
-
/** @typedef {
|
|
15
|
+
/** @typedef {import('../../lib/dependency-graph/base-node.js').Node} Node */
|
|
16
16
|
|
|
17
17
|
class LanternTotalBlockingTime extends LanternMetric {
|
|
18
18
|
/**
|
|
@@ -120,7 +120,7 @@ class LanternTotalBlockingTime extends LanternMetric {
|
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
122
|
|
|
123
|
-
|
|
123
|
+
export default makeComputedArtifact(
|
|
124
124
|
LanternTotalBlockingTime,
|
|
125
125
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
126
126
|
);
|
|
@@ -9,9 +9,10 @@
|
|
|
9
9
|
* @fileoverview Computed Largest Contentful Paint (LCP) for all frames.
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
13
|
+
|
|
14
|
+
import NavigationMetric from './navigation-metric.js';
|
|
15
|
+
import {LighthouseError} from '../../lib/lh-error.js';
|
|
15
16
|
|
|
16
17
|
class LargestContentfulPaintAllFrames extends NavigationMetric {
|
|
17
18
|
/**
|
|
@@ -39,7 +40,7 @@ class LargestContentfulPaintAllFrames extends NavigationMetric {
|
|
|
39
40
|
}
|
|
40
41
|
}
|
|
41
42
|
|
|
42
|
-
|
|
43
|
+
export default makeComputedArtifact(
|
|
43
44
|
LargestContentfulPaintAllFrames,
|
|
44
45
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
45
46
|
);
|
|
@@ -13,10 +13,11 @@
|
|
|
13
13
|
* @see https://web.dev/largest-contentful-paint
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
17
|
+
|
|
18
|
+
import NavigationMetric from './navigation-metric.js';
|
|
19
|
+
import {LighthouseError} from '../../lib/lh-error.js';
|
|
20
|
+
import LanternLargestContentfulPaint from './lantern-largest-contentful-paint.js';
|
|
20
21
|
|
|
21
22
|
class LargestContentfulPaint extends NavigationMetric {
|
|
22
23
|
/**
|
|
@@ -46,7 +47,7 @@ class LargestContentfulPaint extends NavigationMetric {
|
|
|
46
47
|
}
|
|
47
48
|
}
|
|
48
49
|
|
|
49
|
-
|
|
50
|
+
export default makeComputedArtifact(
|
|
50
51
|
LargestContentfulPaint,
|
|
51
52
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
52
53
|
);
|
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import NavigationMetric from './navigation-metric.js';
|
|
10
|
+
import LanternMaxPotentialFID from './lantern-max-potential-fid.js';
|
|
11
|
+
import {TraceProcessor} from '../../lib/tracehouse/trace-processor.js';
|
|
12
12
|
|
|
13
13
|
class MaxPotentialFID extends NavigationMetric {
|
|
14
14
|
/**
|
|
@@ -28,7 +28,7 @@ class MaxPotentialFID extends NavigationMetric {
|
|
|
28
28
|
static computeObservedMetric(data) {
|
|
29
29
|
const {firstContentfulPaint} = data.processedNavigation.timings;
|
|
30
30
|
|
|
31
|
-
const events =
|
|
31
|
+
const events = TraceProcessor.getMainThreadTopLevelEvents(
|
|
32
32
|
data.processedTrace,
|
|
33
33
|
firstContentfulPaint
|
|
34
34
|
).filter(evt => evt.duration >= 1);
|
|
@@ -39,7 +39,7 @@ class MaxPotentialFID extends NavigationMetric {
|
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
export default makeComputedArtifact(
|
|
43
43
|
MaxPotentialFID,
|
|
44
44
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
45
45
|
);
|
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
import {TraceProcessor} from '../../lib/tracehouse/trace-processor.js';
|
|
9
|
+
import ProcessedTrace from '../processed-trace.js';
|
|
10
|
+
import ProcessedNavigation from '../processed-navigation.js';
|
|
11
|
+
import NetworkRecords from '../network-records.js';
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* @fileOverview Encapsulates logic for choosing the correct metric computation method based on the
|
|
@@ -80,7 +80,7 @@ class Metric {
|
|
|
80
80
|
processedNavigation,
|
|
81
81
|
}, data);
|
|
82
82
|
|
|
83
|
-
|
|
83
|
+
TraceProcessor.assertHasToplevelEvents(augmentedData.processedTrace.mainThreadEvents);
|
|
84
84
|
|
|
85
85
|
switch (settings.throttlingMethod) {
|
|
86
86
|
case 'simulate':
|
|
@@ -98,4 +98,4 @@ class Metric {
|
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
100
|
|
|
101
|
-
|
|
101
|
+
export default Metric;
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
import Metric from './metric.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* @fileOverview Enforces that a metric can only be computed on navigations.
|
|
@@ -43,4 +43,4 @@ class NavigationMetric extends Metric {
|
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
-
|
|
46
|
+
export default NavigationMetric;
|
|
@@ -31,8 +31,8 @@
|
|
|
31
31
|
* @typedef {{name: 'FallbackTiming', duration: number}} FallbackTimingEvent
|
|
32
32
|
*/
|
|
33
33
|
|
|
34
|
-
|
|
35
|
-
|
|
34
|
+
import ProcessedTrace from '../processed-trace.js';
|
|
35
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
36
36
|
|
|
37
37
|
const KEYBOARD_EVENTS = new Set(['keydown', 'keypress', 'keyup']);
|
|
38
38
|
const CLICK_TAP_DRAG_EVENTS = new Set([
|
|
@@ -151,7 +151,7 @@ class Responsiveness {
|
|
|
151
151
|
}
|
|
152
152
|
}
|
|
153
153
|
|
|
154
|
-
|
|
154
|
+
export default makeComputedArtifact(Responsiveness, [
|
|
155
155
|
'trace',
|
|
156
156
|
'settings',
|
|
157
157
|
]);
|
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import NavigationMetric from './navigation-metric.js';
|
|
10
|
+
import LanternSpeedIndex from './lantern-speed-index.js';
|
|
11
|
+
import Speedline from '../speedline.js';
|
|
12
12
|
|
|
13
13
|
class SpeedIndex extends NavigationMetric {
|
|
14
14
|
/**
|
|
@@ -34,7 +34,7 @@ class SpeedIndex extends NavigationMetric {
|
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
|
|
37
|
+
export default makeComputedArtifact(
|
|
38
38
|
SpeedIndex,
|
|
39
39
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
40
40
|
);
|
|
@@ -5,20 +5,20 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
8
|
+
import ProcessedTrace from '../processed-trace.js';
|
|
9
|
+
import ProcessedNavigation from '../processed-navigation.js';
|
|
10
|
+
import Speedline from '../speedline.js';
|
|
11
|
+
import FirstContentfulPaint from './first-contentful-paint.js';
|
|
12
|
+
import FirstContentfulPaintAllFrames from './first-contentful-paint-all-frames.js';
|
|
13
|
+
import FirstMeaningfulPaint from './first-meaningful-paint.js';
|
|
14
|
+
import LargestContentfulPaint from './largest-contentful-paint.js';
|
|
15
|
+
import LargestContentfulPaintAllFrames from './largest-contentful-paint-all-frames.js';
|
|
16
|
+
import Interactive from './interactive.js';
|
|
17
|
+
import CumulativeLayoutShift from './cumulative-layout-shift.js';
|
|
18
|
+
import SpeedIndex from './speed-index.js';
|
|
19
|
+
import MaxPotentialFID from './max-potential-fid.js';
|
|
20
|
+
import TotalBlockingTime from './total-blocking-time.js';
|
|
21
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
22
22
|
|
|
23
23
|
class TimingSummary {
|
|
24
24
|
/**
|
|
@@ -151,7 +151,7 @@ class TimingSummary {
|
|
|
151
151
|
}
|
|
152
152
|
}
|
|
153
153
|
|
|
154
|
-
|
|
154
|
+
export default makeComputedArtifact(
|
|
155
155
|
TimingSummary,
|
|
156
156
|
['devtoolsLog', 'gatherContext', 'settings', 'trace', 'URL']
|
|
157
157
|
);
|
|
@@ -5,12 +5,12 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
import {makeComputedArtifact} from '../computed-artifact.js';
|
|
9
|
+
import ComputedMetric from './metric.js';
|
|
10
|
+
import {TraceProcessor} from '../../lib/tracehouse/trace-processor.js';
|
|
11
|
+
import LanternTotalBlockingTime from './lantern-total-blocking-time.js';
|
|
12
|
+
import TimetoInteractive from './interactive.js';
|
|
13
|
+
import {calculateSumOfBlockingTime} from './tbt-utils.js';
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* @fileoverview This audit determines Total Blocking Time.
|
|
@@ -68,7 +68,7 @@ class TotalBlockingTime extends ComputedMetric {
|
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
|
|
71
|
-
|
|
71
|
+
export default makeComputedArtifact(
|
|
72
72
|
TotalBlockingTime,
|
|
73
73
|
['devtoolsLog', 'gatherContext', 'settings', 'simulator', 'trace', 'URL']
|
|
74
74
|
);
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
*/
|
|
6
6
|
'use strict';
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
import {makeComputedArtifact} from './computed-artifact.js';
|
|
9
|
+
import JsBundles from './js-bundles.js';
|
|
10
10
|
|
|
11
11
|
const RELATIVE_SIZE_THRESHOLD = 0.1;
|
|
12
12
|
const ABSOLUTE_SIZE_THRESHOLD_BYTES = 1024 * 0.5;
|
|
@@ -134,4 +134,4 @@ class ModuleDuplication {
|
|
|
134
134
|
}
|
|
135
135
|
}
|
|
136
136
|
|
|
137
|
-
|
|
137
|
+
export default makeComputedArtifact(ModuleDuplication, ['Scripts', 'SourceMaps']);
|