lighthouse 9.6.7 → 10.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gitattributes +4 -1
- package/CONTRIBUTING.md +15 -15
- package/build-tracker.config.js +0 -1
- package/cli/bin.d.ts +5 -0
- package/cli/bin.js +140 -0
- package/cli/cli-flags.d.ts +258 -0
- package/cli/cli-flags.js +553 -0
- package/cli/commands/commands.d.ts +4 -0
- package/cli/commands/commands.js +9 -0
- package/cli/commands/list-audits.d.ts +2 -0
- package/cli/commands/list-audits.js +15 -0
- package/cli/commands/list-locales.d.ts +2 -0
- package/cli/commands/list-locales.js +15 -0
- package/cli/commands/list-trace-categories.d.ts +2 -0
- package/cli/commands/list-trace-categories.js +14 -0
- package/cli/index.d.ts +3 -0
- package/cli/index.js +10 -0
- package/cli/printer.d.ts +28 -0
- package/cli/printer.js +99 -0
- package/cli/run.d.ts +24 -0
- package/cli/run.js +284 -0
- package/cli/sentry-prompt.d.ts +5 -0
- package/cli/sentry-prompt.js +78 -0
- package/cli/test/smokehouse/__snapshots__/report-assert-test.js.snap +71 -0
- package/cli/test/smokehouse/config/exclusions.d.ts +12 -0
- package/cli/test/smokehouse/config/exclusions.js +36 -0
- package/cli/test/smokehouse/core-tests.d.ts +4 -0
- package/cli/test/smokehouse/core-tests.js +134 -0
- package/cli/test/smokehouse/frontends/back-compat-util.d.ts +16 -0
- package/cli/test/smokehouse/frontends/back-compat-util.js +41 -0
- package/cli/test/smokehouse/frontends/lib.d.ts +8 -0
- package/cli/test/smokehouse/frontends/lib.js +48 -0
- package/cli/test/smokehouse/frontends/node.d.ts +2 -0
- package/cli/test/smokehouse/frontends/node.js +12 -0
- package/cli/test/smokehouse/frontends/smokehouse-bin.d.ts +3 -0
- package/cli/test/smokehouse/frontends/smokehouse-bin.js +258 -0
- package/cli/test/smokehouse/lib/child-process-error.d.ts +21 -0
- package/cli/test/smokehouse/lib/child-process-error.js +25 -0
- package/cli/test/smokehouse/lib/concurrent-mapper.d.ts +78 -0
- package/cli/test/smokehouse/lib/concurrent-mapper.js +125 -0
- package/cli/test/smokehouse/lib/local-console.d.ts +33 -0
- package/cli/test/smokehouse/lib/local-console.js +50 -0
- package/cli/test/smokehouse/lighthouse-runners/bundle.d.ts +16 -0
- package/cli/test/smokehouse/lighthouse-runners/bundle.js +158 -0
- package/cli/test/smokehouse/lighthouse-runners/cli.d.ts +18 -0
- package/cli/test/smokehouse/lighthouse-runners/cli.js +134 -0
- package/cli/test/smokehouse/lighthouse-runners/devtools.d.ts +23 -0
- package/cli/test/smokehouse/lighthouse-runners/devtools.js +72 -0
- package/cli/test/smokehouse/readme.md +208 -0
- package/cli/test/smokehouse/report-assert-test.d.ts +2 -0
- package/cli/test/smokehouse/report-assert-test.js +298 -0
- package/cli/test/smokehouse/report-assert.d.ts +50 -0
- package/cli/test/smokehouse/report-assert.js +520 -0
- package/cli/test/smokehouse/smokehouse.d.ts +35 -0
- package/cli/test/smokehouse/smokehouse.js +336 -0
- package/cli/test/smokehouse/version-check-test.d.ts +2 -0
- package/cli/test/smokehouse/version-check-test.js +43 -0
- package/cli/test/smokehouse/version-check.d.ts +15 -0
- package/cli/test/smokehouse/version-check.js +48 -0
- package/commitlint.config.js +0 -1
- package/core/audits/accessibility/accesskeys.d.ts +10 -0
- package/core/audits/accessibility/accesskeys.js +44 -0
- package/core/audits/accessibility/aria-allowed-attr.d.ts +10 -0
- package/core/audits/accessibility/aria-allowed-attr.js +44 -0
- package/core/audits/accessibility/aria-command-name.d.ts +10 -0
- package/core/audits/accessibility/aria-command-name.js +42 -0
- package/core/audits/accessibility/aria-hidden-body.d.ts +10 -0
- package/core/audits/accessibility/aria-hidden-body.js +42 -0
- package/core/audits/accessibility/aria-hidden-focus.d.ts +10 -0
- package/core/audits/accessibility/aria-hidden-focus.js +42 -0
- package/core/audits/accessibility/aria-input-field-name.d.ts +10 -0
- package/core/audits/accessibility/aria-input-field-name.js +42 -0
- package/core/audits/accessibility/aria-meter-name.d.ts +10 -0
- package/core/audits/accessibility/aria-meter-name.js +42 -0
- package/core/audits/accessibility/aria-progressbar-name.d.ts +10 -0
- package/core/audits/accessibility/aria-progressbar-name.js +42 -0
- package/core/audits/accessibility/aria-required-attr.d.ts +10 -0
- package/core/audits/accessibility/aria-required-attr.js +43 -0
- package/core/audits/accessibility/aria-required-children.d.ts +10 -0
- package/core/audits/accessibility/aria-required-children.js +47 -0
- package/core/audits/accessibility/aria-required-parent.d.ts +10 -0
- package/core/audits/accessibility/aria-required-parent.js +45 -0
- package/core/audits/accessibility/aria-roles.d.ts +10 -0
- package/core/audits/accessibility/aria-roles.js +44 -0
- package/core/audits/accessibility/aria-toggle-field-name.d.ts +10 -0
- package/core/audits/accessibility/aria-toggle-field-name.js +42 -0
- package/core/audits/accessibility/aria-tooltip-name.d.ts +10 -0
- package/core/audits/accessibility/aria-tooltip-name.js +42 -0
- package/core/audits/accessibility/aria-treeitem-name.d.ts +10 -0
- package/core/audits/accessibility/aria-treeitem-name.js +42 -0
- package/core/audits/accessibility/aria-valid-attr-value.d.ts +10 -0
- package/core/audits/accessibility/aria-valid-attr-value.js +44 -0
- package/core/audits/accessibility/aria-valid-attr.d.ts +10 -0
- package/core/audits/accessibility/aria-valid-attr.js +44 -0
- package/core/audits/accessibility/axe-audit.d.ts +17 -0
- package/core/audits/accessibility/axe-audit.js +113 -0
- package/core/audits/accessibility/button-name.d.ts +10 -0
- package/core/audits/accessibility/button-name.js +44 -0
- package/core/audits/accessibility/bypass.d.ts +10 -0
- package/core/audits/accessibility/bypass.js +46 -0
- package/core/audits/accessibility/color-contrast.d.ts +10 -0
- package/core/audits/accessibility/color-contrast.js +45 -0
- package/core/audits/accessibility/definition-list.d.ts +10 -0
- package/core/audits/accessibility/definition-list.js +46 -0
- package/core/audits/accessibility/dlitem.d.ts +10 -0
- package/core/audits/accessibility/dlitem.js +44 -0
- package/core/audits/accessibility/document-title.d.ts +10 -0
- package/core/audits/accessibility/document-title.js +44 -0
- package/core/audits/accessibility/duplicate-id-active.d.ts +10 -0
- package/core/audits/accessibility/duplicate-id-active.js +42 -0
- package/core/audits/accessibility/duplicate-id-aria.d.ts +10 -0
- package/core/audits/accessibility/duplicate-id-aria.js +42 -0
- package/core/audits/accessibility/form-field-multiple-labels.d.ts +10 -0
- package/core/audits/accessibility/form-field-multiple-labels.js +43 -0
- package/core/audits/accessibility/frame-title.d.ts +10 -0
- package/core/audits/accessibility/frame-title.js +43 -0
- package/core/audits/accessibility/heading-order.d.ts +10 -0
- package/core/audits/accessibility/heading-order.js +42 -0
- package/core/audits/accessibility/html-has-lang.d.ts +10 -0
- package/core/audits/accessibility/html-has-lang.js +46 -0
- package/core/audits/accessibility/html-lang-valid.d.ts +10 -0
- package/core/audits/accessibility/html-lang-valid.js +45 -0
- package/core/audits/accessibility/image-alt.d.ts +10 -0
- package/core/audits/accessibility/image-alt.js +44 -0
- package/core/audits/accessibility/input-image-alt.d.ts +10 -0
- package/core/audits/accessibility/input-image-alt.js +44 -0
- package/core/audits/accessibility/label.d.ts +10 -0
- package/core/audits/accessibility/label.js +44 -0
- package/core/audits/accessibility/link-name.d.ts +10 -0
- package/core/audits/accessibility/link-name.js +45 -0
- package/core/audits/accessibility/list.d.ts +10 -0
- package/core/audits/accessibility/list.js +46 -0
- package/core/audits/accessibility/listitem.d.ts +10 -0
- package/core/audits/accessibility/listitem.js +45 -0
- package/core/audits/accessibility/manual/custom-controls-labels.d.ts +8 -0
- package/core/audits/accessibility/manual/custom-controls-labels.js +27 -0
- package/core/audits/accessibility/manual/custom-controls-roles.d.ts +8 -0
- package/core/audits/accessibility/manual/custom-controls-roles.js +27 -0
- package/core/audits/accessibility/manual/focus-traps.d.ts +8 -0
- package/core/audits/accessibility/manual/focus-traps.js +27 -0
- package/core/audits/accessibility/manual/focusable-controls.d.ts +8 -0
- package/core/audits/accessibility/manual/focusable-controls.js +27 -0
- package/core/audits/accessibility/manual/interactive-element-affordance.d.ts +8 -0
- package/core/audits/accessibility/manual/interactive-element-affordance.js +27 -0
- package/core/audits/accessibility/manual/logical-tab-order.d.ts +8 -0
- package/core/audits/accessibility/manual/logical-tab-order.js +27 -0
- package/core/audits/accessibility/manual/managed-focus.d.ts +8 -0
- package/core/audits/accessibility/manual/managed-focus.js +27 -0
- package/core/audits/accessibility/manual/offscreen-content-hidden.d.ts +9 -0
- package/core/audits/accessibility/manual/offscreen-content-hidden.js +28 -0
- package/core/audits/accessibility/manual/use-landmarks.d.ts +8 -0
- package/core/audits/accessibility/manual/use-landmarks.js +27 -0
- package/core/audits/accessibility/manual/visual-order-follows-dom.d.ts +8 -0
- package/core/audits/accessibility/manual/visual-order-follows-dom.js +27 -0
- package/core/audits/accessibility/meta-refresh.d.ts +10 -0
- package/core/audits/accessibility/meta-refresh.js +45 -0
- package/core/audits/accessibility/meta-viewport.d.ts +10 -0
- package/core/audits/accessibility/meta-viewport.js +46 -0
- package/core/audits/accessibility/object-alt.d.ts +10 -0
- package/core/audits/accessibility/object-alt.js +44 -0
- package/core/audits/accessibility/tabindex.d.ts +10 -0
- package/core/audits/accessibility/tabindex.js +44 -0
- package/core/audits/accessibility/td-headers-attr.d.ts +10 -0
- package/core/audits/accessibility/td-headers-attr.js +48 -0
- package/core/audits/accessibility/th-has-data-cells.d.ts +10 -0
- package/core/audits/accessibility/th-has-data-cells.js +48 -0
- package/core/audits/accessibility/valid-lang.d.ts +10 -0
- package/core/audits/accessibility/valid-lang.js +44 -0
- package/core/audits/accessibility/video-caption.d.ts +10 -0
- package/core/audits/accessibility/video-caption.js +46 -0
- package/core/audits/audit.d.ts +157 -0
- package/core/audits/audit.js +405 -0
- package/core/audits/autocomplete.d.ts +36 -0
- package/core/audits/autocomplete.js +290 -0
- package/core/audits/bf-cache.d.ts +21 -0
- package/core/audits/bf-cache.js +120 -0
- package/core/audits/bootup-time.d.ts +26 -0
- package/core/audits/bootup-time.js +151 -0
- package/core/audits/byte-efficiency/byte-efficiency-audit.d.ts +82 -0
- package/core/audits/byte-efficiency/byte-efficiency-audit.js +260 -0
- package/core/audits/byte-efficiency/duplicated-javascript.d.ts +52 -0
- package/core/audits/byte-efficiency/duplicated-javascript.js +247 -0
- package/core/audits/byte-efficiency/efficient-animated-content.d.ts +23 -0
- package/core/audits/byte-efficiency/efficient-animated-content.js +92 -0
- package/core/audits/byte-efficiency/legacy-javascript.d.ts +100 -0
- package/core/audits/byte-efficiency/legacy-javascript.js +479 -0
- package/core/audits/byte-efficiency/modern-image-formats.d.ts +38 -0
- package/core/audits/byte-efficiency/modern-image-formats.js +186 -0
- package/core/audits/byte-efficiency/offscreen-images.d.ts +75 -0
- package/core/audits/byte-efficiency/offscreen-images.js +253 -0
- package/{lighthouse-core → core}/audits/byte-efficiency/polyfill-graph-data.json +0 -0
- package/core/audits/byte-efficiency/render-blocking-resources.d.ts +55 -0
- package/core/audits/byte-efficiency/render-blocking-resources.js +307 -0
- package/core/audits/byte-efficiency/total-byte-weight.d.ts +21 -0
- package/core/audits/byte-efficiency/total-byte-weight.js +109 -0
- package/core/audits/byte-efficiency/unminified-css.d.ts +36 -0
- package/core/audits/byte-efficiency/unminified-css.js +114 -0
- package/core/audits/byte-efficiency/unminified-javascript.d.ts +37 -0
- package/core/audits/byte-efficiency/unminified-javascript.js +118 -0
- package/core/audits/byte-efficiency/unused-css-rules.d.ts +16 -0
- package/core/audits/byte-efficiency/unused-css-rules.js +69 -0
- package/core/audits/byte-efficiency/unused-javascript.d.ts +27 -0
- package/core/audits/byte-efficiency/unused-javascript.js +163 -0
- package/core/audits/byte-efficiency/uses-long-cache-ttl.d.ts +61 -0
- package/core/audits/byte-efficiency/uses-long-cache-ttl.js +297 -0
- package/core/audits/byte-efficiency/uses-optimized-images.d.ts +33 -0
- package/core/audits/byte-efficiency/uses-optimized-images.js +145 -0
- package/core/audits/byte-efficiency/uses-responsive-images-snapshot.d.ts +16 -0
- package/core/audits/byte-efficiency/uses-responsive-images-snapshot.js +100 -0
- package/core/audits/byte-efficiency/uses-responsive-images.d.ts +45 -0
- package/core/audits/byte-efficiency/uses-responsive-images.js +201 -0
- package/core/audits/byte-efficiency/uses-text-compression.d.ts +14 -0
- package/core/audits/byte-efficiency/uses-text-compression.js +100 -0
- package/core/audits/content-width.d.ts +17 -0
- package/core/audits/content-width.js +76 -0
- package/core/audits/critical-request-chains.d.ts +44 -0
- package/core/audits/critical-request-chains.js +218 -0
- package/core/audits/csp-xss.d.ts +51 -0
- package/core/audits/csp-xss.js +186 -0
- package/core/audits/deprecations.d.ts +19 -0
- package/core/audits/deprecations.js +114 -0
- package/core/audits/diagnostics.d.ts +11 -0
- package/core/audits/diagnostics.js +79 -0
- package/core/audits/dobetterweb/charset.d.ts +19 -0
- package/core/audits/dobetterweb/charset.js +93 -0
- package/core/audits/dobetterweb/doctype.d.ts +21 -0
- package/core/audits/dobetterweb/doctype.js +120 -0
- package/core/audits/dobetterweb/dom-size.d.ts +26 -0
- package/core/audits/dobetterweb/dom-size.js +134 -0
- package/core/audits/dobetterweb/geolocation-on-start.d.ts +16 -0
- package/core/audits/dobetterweb/geolocation-on-start.js +69 -0
- package/core/audits/dobetterweb/inspector-issues.d.ts +45 -0
- package/core/audits/dobetterweb/inspector-issues.js +191 -0
- package/core/audits/dobetterweb/js-libraries.d.ts +15 -0
- package/core/audits/dobetterweb/js-libraries.js +87 -0
- package/core/audits/dobetterweb/no-document-write.d.ts +16 -0
- package/core/audits/dobetterweb/no-document-write.js +84 -0
- package/core/audits/dobetterweb/notification-on-start.d.ts +16 -0
- package/core/audits/dobetterweb/notification-on-start.js +68 -0
- package/core/audits/dobetterweb/paste-preventing-inputs.d.ts +15 -0
- package/core/audits/dobetterweb/paste-preventing-inputs.js +67 -0
- package/core/audits/dobetterweb/uses-http2.d.ts +72 -0
- package/core/audits/dobetterweb/uses-http2.js +264 -0
- package/core/audits/dobetterweb/uses-passive-event-listeners.d.ts +16 -0
- package/core/audits/dobetterweb/uses-passive-event-listeners.js +67 -0
- package/core/audits/errors-in-console.d.ts +31 -0
- package/core/audits/errors-in-console.js +120 -0
- package/core/audits/final-screenshot.d.ts +11 -0
- package/core/audits/final-screenshot.js +58 -0
- package/core/audits/font-display.d.ts +32 -0
- package/core/audits/font-display.js +193 -0
- package/core/audits/image-aspect-ratio.d.ts +30 -0
- package/core/audits/image-aspect-ratio.js +122 -0
- package/core/audits/image-size-responsive.d.ts +28 -0
- package/core/audits/image-size-responsive.js +332 -0
- package/core/audits/installable-manifest.d.ts +118 -0
- package/core/audits/installable-manifest.js +265 -0
- package/core/audits/is-on-https.d.ts +23 -0
- package/core/audits/is-on-https.js +123 -0
- package/core/audits/largest-contentful-paint-element.d.ts +14 -0
- package/core/audits/largest-contentful-paint-element.js +69 -0
- package/core/audits/layout-shift-elements.d.ts +15 -0
- package/core/audits/layout-shift-elements.js +74 -0
- package/core/audits/lcp-lazy-loaded.d.ts +21 -0
- package/core/audits/lcp-lazy-loaded.js +84 -0
- package/core/audits/long-tasks.d.ts +16 -0
- package/core/audits/long-tasks.js +124 -0
- package/core/audits/main-thread-tasks.d.ts +11 -0
- package/core/audits/main-thread-tasks.js +58 -0
- package/core/audits/mainthread-work-breakdown.d.ts +28 -0
- package/core/audits/mainthread-work-breakdown.js +135 -0
- package/core/audits/manual/manual-audit.d.ts +13 -0
- package/core/audits/manual/manual-audit.js +36 -0
- package/core/audits/manual/pwa-cross-browser.d.ts +12 -0
- package/core/audits/manual/pwa-cross-browser.js +40 -0
- package/core/audits/manual/pwa-each-page-has-url.d.ts +12 -0
- package/core/audits/manual/pwa-each-page-has-url.js +38 -0
- package/core/audits/manual/pwa-page-transitions.d.ts +12 -0
- package/core/audits/manual/pwa-page-transitions.js +38 -0
- package/core/audits/maskable-icon.d.ts +25 -0
- package/core/audits/maskable-icon.js +70 -0
- package/core/audits/metrics/cumulative-layout-shift.d.ts +21 -0
- package/core/audits/metrics/cumulative-layout-shift.js +79 -0
- package/core/audits/metrics/experimental-interaction-to-next-paint.d.ts +21 -0
- package/core/audits/metrics/experimental-interaction-to-next-paint.js +88 -0
- package/core/audits/metrics/first-contentful-paint-3g.d.ts +15 -0
- package/core/audits/metrics/first-contentful-paint-3g.js +69 -0
- package/core/audits/metrics/first-contentful-paint.d.ts +25 -0
- package/core/audits/metrics/first-contentful-paint.js +85 -0
- package/core/audits/metrics/first-meaningful-paint.d.ts +28 -0
- package/core/audits/metrics/first-meaningful-paint.js +89 -0
- package/core/audits/metrics/interactive.d.ts +31 -0
- package/core/audits/metrics/interactive.js +93 -0
- package/core/audits/metrics/largest-contentful-paint.d.ts +25 -0
- package/core/audits/metrics/largest-contentful-paint.js +94 -0
- package/core/audits/metrics/max-potential-fid.d.ts +23 -0
- package/core/audits/metrics/max-potential-fid.js +77 -0
- package/core/audits/metrics/speed-index.d.ts +27 -0
- package/core/audits/metrics/speed-index.js +88 -0
- package/core/audits/metrics/total-blocking-time.d.ts +32 -0
- package/core/audits/metrics/total-blocking-time.js +118 -0
- package/core/audits/metrics.d.ts +11 -0
- package/core/audits/metrics.js +73 -0
- package/core/audits/multi-check-audit.d.ts +28 -0
- package/core/audits/multi-check-audit.js +82 -0
- package/core/audits/network-requests.d.ts +11 -0
- package/core/audits/network-requests.js +129 -0
- package/core/audits/network-rtt.d.ts +15 -0
- package/core/audits/network-rtt.js +89 -0
- package/core/audits/network-server-latency.d.ts +15 -0
- package/core/audits/network-server-latency.js +88 -0
- package/core/audits/no-unload-listeners.d.ts +16 -0
- package/core/audits/no-unload-listeners.js +86 -0
- package/core/audits/non-composited-animations.d.ts +21 -0
- package/core/audits/non-composited-animations.js +205 -0
- package/core/audits/oopif-iframe-test-audit.d.ts +14 -0
- package/core/audits/oopif-iframe-test-audit.js +29 -0
- package/core/audits/performance-budget.d.ts +39 -0
- package/core/audits/performance-budget.js +154 -0
- package/core/audits/predictive-perf.d.ts +11 -0
- package/core/audits/predictive-perf.js +100 -0
- package/core/audits/preload-fonts.d.ts +29 -0
- package/core/audits/preload-fonts.js +106 -0
- package/core/audits/prioritize-lcp-image.d.ts +76 -0
- package/core/audits/prioritize-lcp-image.js +290 -0
- package/core/audits/redirects.d.ts +33 -0
- package/core/audits/redirects.js +164 -0
- package/core/audits/resource-summary.d.ts +16 -0
- package/core/audits/resource-summary.js +104 -0
- package/core/audits/screenshot-thumbnails.d.ts +33 -0
- package/core/audits/screenshot-thumbnails.js +168 -0
- package/core/audits/script-elements-test-audit.d.ts +14 -0
- package/core/audits/script-elements-test-audit.js +29 -0
- package/core/audits/script-treemap-data.d.ts +42 -0
- package/core/audits/script-treemap-data.js +287 -0
- package/core/audits/seo/canonical.d.ts +51 -0
- package/core/audits/seo/canonical.js +217 -0
- package/core/audits/seo/crawlable-anchors.d.ts +16 -0
- package/core/audits/seo/crawlable-anchors.js +93 -0
- package/core/audits/seo/font-size.d.ts +24 -0
- package/core/audits/seo/font-size.js +344 -0
- package/core/audits/seo/hreflang.d.ts +28 -0
- package/core/audits/seo/hreflang.js +148 -0
- package/core/audits/seo/http-status-code.d.ts +16 -0
- package/core/audits/seo/http-status-code.js +68 -0
- package/core/audits/seo/is-crawlable.d.ts +38 -0
- package/core/audits/seo/is-crawlable.js +223 -0
- package/core/audits/seo/link-text.d.ts +16 -0
- package/core/audits/seo/link-text.js +160 -0
- package/core/audits/seo/manual/structured-data.d.ts +12 -0
- package/core/audits/seo/manual/structured-data.js +37 -0
- package/core/audits/seo/meta-description.d.ts +16 -0
- package/core/audits/seo/meta-description.js +66 -0
- package/core/audits/seo/plugins.d.ts +15 -0
- package/core/audits/seo/plugins.js +150 -0
- package/core/audits/seo/robots-txt.d.ts +18 -0
- package/core/audits/seo/robots-txt.js +255 -0
- package/core/audits/seo/tap-targets.d.ts +50 -0
- package/core/audits/seo/tap-targets.js +352 -0
- package/core/audits/server-response-time.d.ts +21 -0
- package/core/audits/server-response-time.js +90 -0
- package/core/audits/service-worker.d.ts +46 -0
- package/core/audits/service-worker.js +182 -0
- package/core/audits/splash-screen.d.ts +37 -0
- package/core/audits/splash-screen.js +98 -0
- package/core/audits/themed-omnibox.d.ts +42 -0
- package/core/audits/themed-omnibox.js +102 -0
- package/core/audits/third-party-facades.d.ts +42 -0
- package/core/audits/third-party-facades.js +224 -0
- package/core/audits/third-party-summary.d.ts +59 -0
- package/core/audits/third-party-summary.js +257 -0
- package/core/audits/timing-budget.d.ts +43 -0
- package/core/audits/timing-budget.js +174 -0
- package/core/audits/unsized-images.d.ts +39 -0
- package/core/audits/unsized-images.js +162 -0
- package/core/audits/user-timings.d.ts +43 -0
- package/core/audits/user-timings.js +118 -0
- package/core/audits/uses-rel-preconnect.d.ts +37 -0
- package/core/audits/uses-rel-preconnect.js +253 -0
- package/core/audits/uses-rel-preload.d.ts +61 -0
- package/core/audits/uses-rel-preload.js +269 -0
- package/core/audits/valid-source-maps.d.ts +29 -0
- package/core/audits/valid-source-maps.js +160 -0
- package/core/audits/viewport.d.ts +17 -0
- package/core/audits/viewport.js +64 -0
- package/core/audits/violation-audit.d.ts +14 -0
- package/core/audits/violation-audit.js +49 -0
- package/core/audits/work-during-interaction.d.ts +82 -0
- package/core/audits/work-during-interaction.js +279 -0
- package/core/computed/computed-artifact.d.ts +15 -0
- package/core/computed/computed-artifact.js +62 -0
- package/core/computed/critical-request-chains.d.ts +40 -0
- package/core/computed/critical-request-chains.js +143 -0
- package/core/computed/entity-classification.d.ts +29 -0
- package/core/computed/entity-classification.js +103 -0
- package/core/computed/image-records.d.ts +24 -0
- package/core/computed/image-records.js +64 -0
- package/core/computed/js-bundles.d.ts +13 -0
- package/core/computed/js-bundles.js +120 -0
- package/core/computed/load-simulator.d.ts +28 -0
- package/core/computed/load-simulator.js +92 -0
- package/core/computed/main-resource.d.ts +25 -0
- package/core/computed/main-resource.js +35 -0
- package/core/computed/main-thread-tasks.d.ts +15 -0
- package/core/computed/main-thread-tasks.js +25 -0
- package/core/computed/manifest-values.d.ts +24 -0
- package/core/computed/manifest-values.js +136 -0
- package/core/computed/metrics/cumulative-layout-shift.d.ts +53 -0
- package/core/computed/metrics/cumulative-layout-shift.js +125 -0
- package/core/computed/metrics/first-contentful-paint-all-frames.d.ts +19 -0
- package/core/computed/metrics/first-contentful-paint-all-frames.js +37 -0
- package/core/computed/metrics/first-contentful-paint.d.ts +15 -0
- package/core/computed/metrics/first-contentful-paint.js +40 -0
- package/core/computed/metrics/first-meaningful-paint.d.ts +15 -0
- package/core/computed/metrics/first-meaningful-paint.js +44 -0
- package/core/computed/metrics/interactive.d.ts +61 -0
- package/core/computed/metrics/interactive.js +192 -0
- package/core/computed/metrics/lantern-first-contentful-paint.d.ts +48 -0
- package/core/computed/metrics/lantern-first-contentful-paint.js +204 -0
- package/core/computed/metrics/lantern-first-meaningful-paint.d.ts +12 -0
- package/core/computed/metrics/lantern-first-meaningful-paint.js +83 -0
- package/core/computed/metrics/lantern-interactive.d.ts +31 -0
- package/core/computed/metrics/lantern-interactive.js +113 -0
- package/core/computed/metrics/lantern-largest-contentful-paint.d.ts +25 -0
- package/core/computed/metrics/lantern-largest-contentful-paint.js +111 -0
- package/core/computed/metrics/lantern-max-potential-fid.d.ts +30 -0
- package/core/computed/metrics/lantern-max-potential-fid.js +93 -0
- package/core/computed/metrics/lantern-metric.d.ts +78 -0
- package/core/computed/metrics/lantern-metric.js +162 -0
- package/core/computed/metrics/lantern-speed-index.d.ts +38 -0
- package/core/computed/metrics/lantern-speed-index.js +150 -0
- package/core/computed/metrics/lantern-total-blocking-time.d.ts +31 -0
- package/core/computed/metrics/lantern-total-blocking-time.js +126 -0
- package/core/computed/metrics/largest-contentful-paint-all-frames.d.ts +20 -0
- package/core/computed/metrics/largest-contentful-paint-all-frames.js +45 -0
- package/core/computed/metrics/largest-contentful-paint.d.ts +15 -0
- package/core/computed/metrics/largest-contentful-paint.js +52 -0
- package/core/computed/metrics/max-potential-fid.d.ts +15 -0
- package/core/computed/metrics/max-potential-fid.js +45 -0
- package/core/computed/metrics/metric.d.ts +38 -0
- package/core/computed/metrics/metric.js +100 -0
- package/core/computed/metrics/navigation-metric.d.ts +16 -0
- package/core/computed/metrics/navigation-metric.js +46 -0
- package/core/computed/metrics/responsiveness.d.ts +87 -0
- package/core/computed/metrics/responsiveness.js +160 -0
- package/core/computed/metrics/speed-index.d.ts +10 -0
- package/core/computed/metrics/speed-index.js +40 -0
- package/core/computed/metrics/tbt-utils.d.ts +18 -0
- package/core/computed/metrics/tbt-utils.js +56 -0
- package/core/computed/metrics/timing-summary.d.ts +46 -0
- package/core/computed/metrics/timing-summary.js +157 -0
- package/core/computed/metrics/total-blocking-time.d.ts +23 -0
- package/core/computed/metrics/total-blocking-time.js +74 -0
- package/core/computed/module-duplication.d.ts +37 -0
- package/core/computed/module-duplication.js +138 -0
- package/core/computed/network-analysis.d.ts +20 -0
- package/core/computed/network-analysis.js +64 -0
- package/core/computed/network-records.d.ts +15 -0
- package/core/computed/network-records.js +22 -0
- package/core/computed/page-dependency-graph.d.ts +88 -0
- package/core/computed/page-dependency-graph.js +516 -0
- package/core/computed/processed-navigation.d.ts +21 -0
- package/core/computed/processed-navigation.js +37 -0
- package/core/computed/processed-trace.d.ts +14 -0
- package/core/computed/processed-trace.js +21 -0
- package/core/computed/resource-summary.d.ts +46 -0
- package/core/computed/resource-summary.js +118 -0
- package/core/computed/screenshots.d.ts +20 -0
- package/core/computed/screenshots.js +29 -0
- package/core/computed/speedline.d.ts +15 -0
- package/core/computed/speedline.js +55 -0
- package/core/computed/unused-css.d.ts +62 -0
- package/core/computed/unused-css.js +153 -0
- package/core/computed/unused-javascript-summary.d.ts +71 -0
- package/core/computed/unused-javascript-summary.js +155 -0
- package/core/computed/user-timings.d.ts +31 -0
- package/core/computed/user-timings.js +83 -0
- package/core/computed/viewport-meta.d.ts +35 -0
- package/core/computed/viewport-meta.js +56 -0
- package/core/config/budget.d.ts +74 -0
- package/core/config/budget.js +340 -0
- package/core/config/config-helpers.d.ts +94 -0
- package/core/config/config-helpers.js +630 -0
- package/core/config/config-plugin.d.ts +46 -0
- package/core/config/config-plugin.js +250 -0
- package/core/config/config.d.ts +28 -0
- package/core/config/config.js +344 -0
- package/core/config/constants.d.ts +86 -0
- package/core/config/constants.js +175 -0
- package/core/config/default-config.d.ts +5 -0
- package/core/config/default-config.js +637 -0
- package/core/config/desktop-config.d.ts +5 -0
- package/core/config/desktop-config.js +21 -0
- package/core/config/experimental-config.d.ts +13 -0
- package/core/config/experimental-config.js +29 -0
- package/core/config/filters.d.ts +83 -0
- package/core/config/filters.js +344 -0
- package/core/config/full-config.d.ts +9 -0
- package/core/config/full-config.js +13 -0
- package/core/config/lr-desktop-config.d.ts +4 -0
- package/core/config/lr-desktop-config.js +28 -0
- package/core/config/lr-mobile-config.d.ts +9 -0
- package/core/config/lr-mobile-config.js +33 -0
- package/core/config/metrics-to-audits.d.ts +19 -0
- package/core/config/metrics-to-audits.js +61 -0
- package/core/config/perf-config.d.ts +9 -0
- package/core/config/perf-config.js +16 -0
- package/core/config/validation.d.ts +77 -0
- package/core/config/validation.js +312 -0
- package/core/gather/base-artifacts.d.ts +16 -0
- package/core/gather/base-artifacts.js +95 -0
- package/core/gather/base-gatherer.d.ts +72 -0
- package/core/gather/base-gatherer.js +108 -0
- package/core/gather/driver/dom.d.ts +20 -0
- package/core/gather/driver/dom.js +57 -0
- package/core/gather/driver/environment.d.ts +35 -0
- package/core/gather/driver/environment.js +105 -0
- package/core/gather/driver/execution-context.d.ts +101 -0
- package/core/gather/driver/execution-context.js +262 -0
- package/core/gather/driver/navigation.d.ts +33 -0
- package/core/gather/driver/navigation.js +182 -0
- package/core/gather/driver/network-monitor.d.ts +82 -0
- package/core/gather/driver/network-monitor.js +260 -0
- package/core/gather/driver/network.d.ts +10 -0
- package/core/gather/driver/network.js +27 -0
- package/core/gather/driver/prepare.d.ts +52 -0
- package/core/gather/driver/prepare.js +244 -0
- package/core/gather/driver/service-workers.d.ts +16 -0
- package/core/gather/driver/service-workers.js +52 -0
- package/core/gather/driver/storage.d.ts +24 -0
- package/core/gather/driver/storage.js +149 -0
- package/core/gather/driver/target-manager.d.ts +61 -0
- package/core/gather/driver/target-manager.js +209 -0
- package/core/gather/driver/wait-for-condition.d.ts +116 -0
- package/core/gather/driver/wait-for-condition.js +544 -0
- package/core/gather/driver.d.ts +30 -0
- package/core/gather/driver.js +92 -0
- package/core/gather/fetcher.d.ts +63 -0
- package/core/gather/fetcher.js +143 -0
- package/core/gather/gatherers/accessibility.d.ts +23 -0
- package/core/gather/gatherers/accessibility.js +199 -0
- package/core/gather/gatherers/anchor-elements.d.ts +10 -0
- package/core/gather/gatherers/anchor-elements.js +132 -0
- package/core/gather/gatherers/bf-cache-failures.d.ts +43 -0
- package/core/gather/gatherers/bf-cache-failures.js +179 -0
- package/core/gather/gatherers/cache-contents.d.ts +11 -0
- package/core/gather/gatherers/cache-contents.js +58 -0
- package/core/gather/gatherers/console-messages.d.ts +39 -0
- package/core/gather/gatherers/console-messages.js +174 -0
- package/core/gather/gatherers/css-usage.d.ts +39 -0
- package/core/gather/gatherers/css-usage.js +150 -0
- package/core/gather/gatherers/devtools-log-compat.d.ts +13 -0
- package/core/gather/gatherers/devtools-log-compat.js +35 -0
- package/core/gather/gatherers/devtools-log.d.ts +48 -0
- package/core/gather/gatherers/devtools-log.js +115 -0
- package/core/gather/gatherers/dobetterweb/doctype.d.ts +10 -0
- package/core/gather/gatherers/dobetterweb/doctype.js +47 -0
- package/core/gather/gatherers/dobetterweb/domstats.d.ts +10 -0
- package/core/gather/gatherers/dobetterweb/domstats.js +102 -0
- package/core/gather/gatherers/dobetterweb/optimized-images.d.ts +61 -0
- package/core/gather/gatherers/dobetterweb/optimized-images.js +193 -0
- package/core/gather/gatherers/dobetterweb/response-compression.d.ts +30 -0
- package/core/gather/gatherers/dobetterweb/response-compression.js +155 -0
- package/core/gather/gatherers/dobetterweb/tags-blocking-first-paint.d.ts +53 -0
- package/core/gather/gatherers/dobetterweb/tags-blocking-first-paint.js +237 -0
- package/core/gather/gatherers/full-page-screenshot.d.ts +35 -0
- package/core/gather/gatherers/full-page-screenshot.js +258 -0
- package/core/gather/gatherers/gatherer.d.ts +46 -0
- package/core/gather/gatherers/gatherer.js +58 -0
- package/core/gather/gatherers/global-listeners.d.ts +27 -0
- package/core/gather/gatherers/global-listeners.js +91 -0
- package/core/gather/gatherers/iframe-elements.d.ts +11 -0
- package/core/gather/gatherers/iframe-elements.js +67 -0
- package/core/gather/gatherers/image-elements.d.ts +35 -0
- package/core/gather/gatherers/image-elements.js +378 -0
- package/core/gather/gatherers/inputs.d.ts +10 -0
- package/core/gather/gatherers/inputs.js +118 -0
- package/core/gather/gatherers/inspector-issues.d.ts +38 -0
- package/core/gather/gatherers/inspector-issues.js +126 -0
- package/core/gather/gatherers/installability-errors.d.ts +17 -0
- package/core/gather/gatherers/installability-errors.js +56 -0
- package/core/gather/gatherers/js-usage.d.ts +22 -0
- package/core/gather/gatherers/js-usage.js +74 -0
- package/core/gather/gatherers/link-elements.d.ts +39 -0
- package/core/gather/gatherers/link-elements.js +181 -0
- package/core/gather/gatherers/main-document-content.d.ts +27 -0
- package/core/gather/gatherers/main-document-content.js +53 -0
- package/core/gather/gatherers/meta-elements.d.ts +10 -0
- package/core/gather/gatherers/meta-elements.js +67 -0
- package/core/gather/gatherers/network-user-agent.d.ts +18 -0
- package/core/gather/gatherers/network-user-agent.js +41 -0
- package/core/gather/gatherers/script-elements.d.ts +26 -0
- package/core/gather/gatherers/script-elements.js +110 -0
- package/core/gather/gatherers/scripts.d.ts +27 -0
- package/core/gather/gatherers/scripts.js +139 -0
- package/core/gather/gatherers/seo/embedded-content.d.ts +10 -0
- package/core/gather/gatherers/seo/embedded-content.js +63 -0
- package/core/gather/gatherers/seo/font-size.d.ts +131 -0
- package/core/gather/gatherers/seo/font-size.js +339 -0
- package/core/gather/gatherers/seo/robots-txt.d.ts +10 -0
- package/core/gather/gatherers/seo/robots-txt.js +27 -0
- package/core/gather/gatherers/seo/tap-targets.d.ts +21 -0
- package/core/gather/gatherers/seo/tap-targets.js +389 -0
- package/core/gather/gatherers/service-worker.d.ts +16 -0
- package/core/gather/gatherers/service-worker.js +44 -0
- package/core/gather/gatherers/source-maps.d.ts +50 -0
- package/core/gather/gatherers/source-maps.js +155 -0
- package/core/gather/gatherers/stacks.d.ts +38 -0
- package/core/gather/gatherers/stacks.js +137 -0
- package/core/gather/gatherers/trace-compat.d.ts +13 -0
- package/core/gather/gatherers/trace-compat.js +35 -0
- package/core/gather/gatherers/trace-elements.d.ts +83 -0
- package/core/gather/gatherers/trace-elements.js +349 -0
- package/core/gather/gatherers/trace.d.ts +23 -0
- package/core/gather/gatherers/trace.js +130 -0
- package/core/gather/gatherers/viewport-dimensions.d.ts +10 -0
- package/core/gather/gatherers/viewport-dimensions.js +57 -0
- package/core/gather/gatherers/web-app-manifest.d.ts +32 -0
- package/core/gather/gatherers/web-app-manifest.js +106 -0
- package/core/gather/navigation-runner.d.ts +94 -0
- package/core/gather/navigation-runner.js +386 -0
- package/core/gather/runner-helpers.d.ts +39 -0
- package/core/gather/runner-helpers.js +159 -0
- package/core/gather/session.d.ts +50 -0
- package/core/gather/session.js +114 -0
- package/core/gather/snapshot-runner.d.ts +10 -0
- package/core/gather/snapshot-runner.js +67 -0
- package/core/gather/timespan-runner.d.ts +12 -0
- package/core/gather/timespan-runner.js +85 -0
- package/core/index.cjs +21 -0
- package/core/index.d.cts +4 -0
- package/core/index.d.ts +88 -0
- package/core/index.js +172 -0
- package/core/legacy/config/config.d.ts +107 -0
- package/core/legacy/config/config.js +566 -0
- package/core/legacy/config/legacy-default-config.d.ts +4 -0
- package/core/legacy/config/legacy-default-config.js +87 -0
- package/core/legacy/gather/connections/connection.d.ts +75 -0
- package/core/legacy/gather/connections/connection.js +181 -0
- package/core/legacy/gather/connections/cri.d.ts +27 -0
- package/core/legacy/gather/connections/cri.js +162 -0
- package/core/legacy/gather/connections/raw.d.ts +20 -0
- package/core/legacy/gather/connections/raw.js +57 -0
- package/core/legacy/gather/driver.d.ts +215 -0
- package/core/legacy/gather/driver.js +469 -0
- package/core/legacy/gather/gather-runner.d.ts +166 -0
- package/core/legacy/gather/gather-runner.js +590 -0
- package/core/lib/arbitrary-equality-map.d.ts +47 -0
- package/core/lib/arbitrary-equality-map.js +80 -0
- package/core/lib/asset-saver.d.ts +101 -0
- package/core/lib/asset-saver.js +451 -0
- package/core/lib/axe.d.ts +2 -0
- package/core/lib/axe.js +17 -0
- package/core/lib/bf-cache-strings.d.ts +121 -0
- package/core/lib/bf-cache-strings.js +661 -0
- package/core/lib/cdt/Common.d.ts +3 -0
- package/core/lib/cdt/Common.js +12 -0
- package/core/lib/cdt/Platform.d.ts +26 -0
- package/core/lib/cdt/Platform.js +57 -0
- package/core/lib/cdt/SDK.d.ts +2 -0
- package/core/lib/cdt/SDK.js +28 -0
- package/core/lib/cdt/generated/ParsedURL.d.ts +28 -0
- package/core/lib/cdt/generated/ParsedURL.js +178 -0
- package/core/lib/cdt/generated/SourceMap.d.ts +100 -0
- package/core/lib/cdt/generated/SourceMap.js +527 -0
- package/core/lib/cdt/package.json +4 -0
- package/core/lib/csp-evaluator.d.ts +41 -0
- package/core/lib/csp-evaluator.js +170 -0
- package/core/lib/dependency-graph/base-node.d.ts +161 -0
- package/core/lib/dependency-graph/base-node.js +364 -0
- package/core/lib/dependency-graph/cpu-node.d.ts +34 -0
- package/core/lib/dependency-graph/cpu-node.js +86 -0
- package/core/lib/dependency-graph/network-node.d.ts +43 -0
- package/core/lib/dependency-graph/network-node.js +99 -0
- package/core/lib/dependency-graph/simulator/connection-pool.d.ts +58 -0
- package/core/lib/dependency-graph/simulator/connection-pool.js +171 -0
- package/core/lib/dependency-graph/simulator/dns-cache.d.ts +42 -0
- package/core/lib/dependency-graph/simulator/dns-cache.js +74 -0
- package/core/lib/dependency-graph/simulator/network-analyzer.d.ts +166 -0
- package/core/lib/dependency-graph/simulator/network-analyzer.js +479 -0
- package/core/lib/dependency-graph/simulator/simulator-timing-map.d.ts +153 -0
- package/core/lib/dependency-graph/simulator/simulator-timing-map.js +220 -0
- package/core/lib/dependency-graph/simulator/simulator.d.ts +154 -0
- package/core/lib/dependency-graph/simulator/simulator.js +540 -0
- package/core/lib/dependency-graph/simulator/tcp-connection.d.ts +89 -0
- package/core/lib/dependency-graph/simulator/tcp-connection.js +230 -0
- package/core/lib/deprecations-strings.d.ts +66 -0
- package/core/lib/deprecations-strings.js +654 -0
- package/core/lib/emulation.d.ts +43 -0
- package/core/lib/emulation.js +163 -0
- package/core/lib/i18n/README.md +290 -0
- package/core/lib/i18n/i18n.d.ts +81 -0
- package/core/lib/i18n/i18n.js +229 -0
- package/core/lib/icons.d.ts +22 -0
- package/core/lib/icons.js +82 -0
- package/core/lib/lantern-trace-saver.d.ts +20 -0
- package/core/lib/lantern-trace-saver.js +260 -0
- package/core/lib/lh-env.d.ts +2 -0
- package/core/lib/lh-env.js +15 -0
- package/core/lib/lh-error.d.ts +328 -0
- package/core/lib/lh-error.js +425 -0
- package/core/lib/lh-trace-processor.d.ts +5 -0
- package/core/lib/lh-trace-processor.js +45 -0
- package/core/lib/lighthouse-compatibility.d.ts +8 -0
- package/core/lib/lighthouse-compatibility.js +139 -0
- package/core/lib/manifest-parser.d.ts +186 -0
- package/core/lib/manifest-parser.js +495 -0
- package/core/lib/median-run.d.ts +17 -0
- package/core/lib/median-run.js +92 -0
- package/core/lib/minification-estimator.d.ts +9 -0
- package/core/lib/minification-estimator.js +192 -0
- package/core/lib/minify-devtoolslog.d.ts +6 -0
- package/core/lib/minify-devtoolslog.js +86 -0
- package/core/lib/navigation-error.d.ts +39 -0
- package/core/lib/navigation-error.js +175 -0
- package/core/lib/network-recorder.d.ts +115 -0
- package/core/lib/network-recorder.js +341 -0
- package/core/lib/network-request.d.ts +247 -0
- package/core/lib/network-request.js +590 -0
- package/core/lib/page-functions.d.ts +149 -0
- package/core/lib/page-functions.js +544 -0
- package/core/lib/proto-preprocessor.d.ts +13 -0
- package/core/lib/proto-preprocessor.js +133 -0
- package/core/lib/rect-helpers.d.ts +100 -0
- package/core/lib/rect-helpers.js +251 -0
- package/core/lib/script-helpers.d.ts +17 -0
- package/core/lib/script-helpers.js +31 -0
- package/core/lib/sentry.d.ts +32 -0
- package/core/lib/sentry.js +143 -0
- package/core/lib/stack-packs.d.ts +16 -0
- package/core/lib/stack-packs.js +126 -0
- package/core/lib/statistics.d.ts +28 -0
- package/core/lib/statistics.js +103 -0
- package/core/lib/tappable-rects.d.ts +8 -0
- package/core/lib/tappable-rects.js +98 -0
- package/core/lib/third-party-web.d.ts +32 -0
- package/core/lib/third-party-web.js +52 -0
- package/core/lib/timing-trace-saver.d.ts +21 -0
- package/core/lib/timing-trace-saver.js +96 -0
- package/core/lib/tracehouse/cpu-profile-model.d.ts +228 -0
- package/core/lib/tracehouse/cpu-profile-model.js +591 -0
- package/core/lib/tracehouse/main-thread-tasks.d.ts +162 -0
- package/core/lib/tracehouse/main-thread-tasks.js +688 -0
- package/core/lib/tracehouse/task-groups.d.ts +66 -0
- package/core/lib/tracehouse/task-groups.js +111 -0
- package/core/lib/tracehouse/task-summary.d.ts +18 -0
- package/core/lib/tracehouse/task-summary.js +86 -0
- package/core/lib/tracehouse/trace-processor.d.ts +284 -0
- package/core/lib/tracehouse/trace-processor.js +1016 -0
- package/core/lib/traces/metric-trace-events.d.ts +65 -0
- package/core/lib/traces/metric-trace-events.js +200 -0
- package/core/lib/url-utils.d.ts +100 -0
- package/core/lib/url-utils.js +266 -0
- package/core/runner.d.ts +114 -0
- package/core/runner.js +563 -0
- package/core/scoring.d.ts +26 -0
- package/core/scoring.js +91 -0
- package/core/scripts/download-chrome.sh +36 -0
- package/core/scripts/manual-chrome-launcher.js +50 -0
- package/core/user-flow.d.ts +106 -0
- package/core/user-flow.js +354 -0
- package/dist/report/bundle.esm.js +1485 -1281
- package/dist/report/flow.js +37 -25
- package/dist/report/standalone.js +35 -19
- package/eslint-local-rules.cjs +106 -0
- package/eslint-local-rules.d.cts +6 -0
- package/esm-utils.d.ts +14 -0
- package/esm-utils.js +38 -0
- package/flow-report/api.d.ts +7 -0
- package/flow-report/assets/standalone-flow-template.html +1 -1
- package/flow-report/clients/standalone.d.ts +7 -0
- package/flow-report/src/app.d.ts +11 -0
- package/flow-report/src/app.tsx +1 -1
- package/flow-report/src/common.d.ts +20 -0
- package/flow-report/src/common.tsx +3 -3
- package/flow-report/src/header.d.ts +10 -0
- package/flow-report/src/header.tsx +1 -1
- package/flow-report/src/help-dialog.d.ts +10 -0
- package/flow-report/src/i18n/i18n.d.ts +212 -0
- package/flow-report/src/i18n/i18n.tsx +24 -19
- package/flow-report/src/i18n/localized-strings.d.ts +9 -0
- package/flow-report/src/i18n/ui-strings.d.ts +48 -0
- package/flow-report/src/icons.d.ts +18 -0
- package/flow-report/src/sidebar/flow.d.ts +8 -0
- package/flow-report/src/sidebar/sidebar.d.ts +17 -0
- package/flow-report/src/sidebar/sidebar.tsx +7 -4
- package/flow-report/src/summary/category.d.ts +19 -0
- package/flow-report/src/summary/category.tsx +10 -10
- package/flow-report/src/summary/summary.d.ts +18 -0
- package/flow-report/src/summary/summary.tsx +4 -4
- package/flow-report/src/topbar.d.ts +15 -0
- package/flow-report/src/topbar.tsx +14 -30
- package/flow-report/src/util.d.ts +30 -0
- package/flow-report/src/util.ts +2 -13
- package/flow-report/src/wrappers/category-score.d.ts +12 -0
- package/flow-report/src/wrappers/markdown.d.ts +10 -0
- package/flow-report/src/wrappers/report.d.ts +10 -0
- package/flow-report/src/wrappers/report.tsx +1 -1
- package/flow-report/src/wrappers/styles.d.ts +8 -0
- package/flow-report/test/app-test.d.ts +7 -0
- package/flow-report/test/common-test.d.ts +7 -0
- package/flow-report/test/common-test.tsx +11 -12
- package/flow-report/test/flow-report-pptr-test.d.ts +7 -0
- package/flow-report/test/flow-report-pptr-test.ts +21 -8
- package/flow-report/test/header-test.d.ts +7 -0
- package/flow-report/test/run-flow-report-tests.sh +20 -0
- package/flow-report/test/sample-flow.d.ts +7 -0
- package/flow-report/test/sample-flow.ts +1 -1
- package/flow-report/test/setup/env-setup.d.ts +11 -0
- package/flow-report/test/setup/env-setup.ts +47 -24
- package/flow-report/test/sidebar/flow-test.d.ts +7 -0
- package/flow-report/test/sidebar/sidebar-test.d.ts +7 -0
- package/flow-report/test/sidebar/sidebar-test.tsx +30 -3
- package/flow-report/test/summary/category-test.d.ts +7 -0
- package/flow-report/test/summary/summary-test.d.ts +7 -0
- package/flow-report/test/summary/summary-test.tsx +1 -1
- package/flow-report/test/topbar-test.d.ts +7 -0
- package/flow-report/test/topbar-test.tsx +11 -12
- package/flow-report/test/util-test.d.ts +7 -0
- package/flow-report/test/util-test.tsx +3 -3
- package/flow-report/test/wrappers/category-score-test.d.ts +7 -0
- package/flow-report/test/wrappers/markdown-test.d.ts +7 -0
- package/flow-report/tsconfig.json +5 -3
- package/flow-report/types/flow-report.d.ts +8 -1
- package/package.json +86 -80
- package/readme.md +27 -40
- package/report/README.md +8 -9
- package/report/assets/standalone-template.html +1 -1
- package/report/assets/styles.css +35 -17
- package/report/assets/templates.html +14 -37
- package/report/clients/bundle.d.ts +6 -0
- package/report/clients/bundle.js +1 -2
- package/report/clients/standalone.d.ts +2 -0
- package/report/clients/standalone.js +0 -1
- package/report/generator/file-namer.d.ts +35 -0
- package/report/generator/file-namer.js +7 -3
- package/report/generator/flow-report-assets.d.ts +9 -0
- package/report/generator/flow-report-assets.js +10 -6
- package/report/generator/report-assets.d.ts +8 -0
- package/report/generator/report-assets.js +8 -5
- package/report/generator/report-generator.d.ts +59 -0
- package/report/generator/report-generator.js +76 -34
- package/report/generator/tsconfig.json +1 -2
- package/report/renderer/api.d.ts +31 -0
- package/report/renderer/api.js +0 -2
- package/report/renderer/category-renderer.d.ts +176 -0
- package/report/renderer/category-renderer.js +39 -41
- package/report/renderer/components.d.ts +10 -0
- package/report/renderer/components.js +364 -448
- package/report/renderer/crc-details-renderer.d.ts +73 -0
- package/report/renderer/crc-details-renderer.js +28 -30
- package/report/renderer/details-renderer.d.ts +141 -0
- package/report/renderer/details-renderer.js +44 -92
- package/report/renderer/dom.d.ts +125 -0
- package/report/renderer/dom.js +13 -10
- package/report/renderer/drop-down-menu.d.ts +70 -0
- package/report/renderer/drop-down-menu.js +0 -1
- package/report/renderer/element-screenshot-renderer.d.ts +79 -0
- package/report/renderer/element-screenshot-renderer.js +11 -12
- package/report/renderer/features-util.d.ts +13 -0
- package/report/renderer/features-util.js +0 -1
- package/report/renderer/i18n-formatter.d.ts +100 -0
- package/report/renderer/i18n-formatter.js +263 -0
- package/report/renderer/logger.d.ts +47 -0
- package/report/renderer/logger.js +0 -1
- package/report/renderer/open-tab.d.ts +19 -0
- package/report/renderer/open-tab.js +4 -4
- package/report/renderer/performance-category-renderer.d.ts +56 -0
- package/report/renderer/performance-category-renderer.js +29 -26
- package/report/renderer/pwa-category-renderer.d.ts +55 -0
- package/report/renderer/pwa-category-renderer.js +8 -8
- package/report/renderer/report-globals.d.ts +21 -0
- package/report/renderer/report-globals.js +49 -0
- package/report/renderer/report-renderer.d.ts +57 -0
- package/report/renderer/report-renderer.js +54 -52
- package/report/renderer/report-ui-features.d.ts +71 -0
- package/report/renderer/report-ui-features.js +44 -39
- package/report/renderer/report-utils.d.ts +129 -0
- package/report/renderer/report-utils.js +448 -0
- package/report/renderer/snippet-renderer.d.ts +85 -0
- package/report/renderer/snippet-renderer.js +5 -5
- package/report/renderer/swap-locale-feature.d.ts +31 -0
- package/report/renderer/swap-locale-feature.js +2 -3
- package/report/renderer/text-encoding.d.ts +26 -0
- package/report/renderer/text-encoding.js +0 -1
- package/report/renderer/topbar-features.d.ts +82 -0
- package/report/renderer/topbar-features.js +2 -2
- package/report/test/clients/bundle-test.js +5 -10
- package/report/test/generator/file-namer-test.js +3 -4
- package/report/test/generator/report-generator-test.js +49 -24
- package/report/test/renderer/category-renderer-test.js +19 -15
- package/report/test/renderer/components-test.js +36 -37
- package/report/test/renderer/crc-details-renderer-test.js +11 -10
- package/report/test/renderer/details-renderer-test.js +91 -41
- package/report/test/renderer/dom-test.js +38 -14
- package/report/test/renderer/element-screenshot-renderer-test.js +14 -12
- package/report/test/renderer/i18n-formatter-test.js +179 -0
- package/report/test/renderer/performance-category-renderer-test.js +43 -31
- package/report/test/renderer/pwa-category-renderer-test.js +17 -13
- package/report/test/renderer/report-renderer-axe-test.js +12 -15
- package/report/test/renderer/report-renderer-test.js +17 -15
- package/report/test/renderer/report-ui-features-test.js +304 -89
- package/report/test/renderer/report-utils-test.js +219 -0
- package/report/test/renderer/snippet-renderer-test.js +11 -10
- package/report/test/renderer/text-encoding-test.js +2 -5
- package/report/test-assets/faux-psi.d.ts +34 -0
- package/report/tsconfig.json +1 -2
- package/report/types/augment-dom.d.ts +1 -1
- package/root.d.ts +3 -0
- package/root.js +9 -19
- package/shared/localization/format.d.ts +106 -0
- package/shared/localization/format.js +27 -21
- package/shared/localization/i18n-module.d.ts +4 -0
- package/shared/localization/i18n-module.js +7 -3
- package/shared/localization/locales/ar-XB.json +1658 -1007
- package/shared/localization/locales/ar.json +1659 -1008
- package/shared/localization/locales/bg.json +1657 -1006
- package/shared/localization/locales/ca.json +1664 -1013
- package/shared/localization/locales/cs.json +1659 -1008
- package/shared/localization/locales/da.json +1658 -1007
- package/shared/localization/locales/de.json +1794 -1143
- package/shared/localization/locales/el.json +1657 -1006
- package/shared/localization/locales/en-GB.json +1658 -1007
- package/shared/localization/locales/en-US.json +1570 -1207
- package/shared/localization/locales/en-XA.json +1658 -1007
- package/shared/localization/locales/en-XL.json +1570 -1207
- package/shared/localization/locales/es-419.json +1660 -1009
- package/shared/localization/locales/es.json +1665 -1014
- package/shared/localization/locales/fi.json +1658 -1007
- package/shared/localization/locales/fil.json +1659 -1008
- package/shared/localization/locales/fr.json +1660 -1009
- package/shared/localization/locales/he.json +1678 -1027
- package/shared/localization/locales/hi.json +1661 -1010
- package/shared/localization/locales/hr.json +1658 -1007
- package/shared/localization/locales/hu.json +1657 -1006
- package/shared/localization/locales/id.json +1658 -1007
- package/shared/localization/locales/it.json +1678 -1027
- package/shared/localization/locales/ja.json +1657 -1006
- package/shared/localization/locales/ko.json +1658 -1007
- package/shared/localization/locales/lt.json +1658 -1007
- package/shared/localization/locales/lv.json +1658 -1007
- package/shared/localization/locales/nl.json +1659 -1008
- package/shared/localization/locales/no.json +1662 -1011
- package/shared/localization/locales/pl.json +1657 -1006
- package/shared/localization/locales/pt-PT.json +1678 -1027
- package/shared/localization/locales/pt.json +1659 -1008
- package/shared/localization/locales/ro.json +1657 -1006
- package/shared/localization/locales/ru.json +1657 -1006
- package/shared/localization/locales/sk.json +1657 -1006
- package/shared/localization/locales/sl.json +1657 -1006
- package/shared/localization/locales/sr-Latn.json +1658 -1007
- package/shared/localization/locales/sr.json +1658 -1007
- package/shared/localization/locales/sv.json +1664 -1013
- package/shared/localization/locales/ta.json +1658 -1007
- package/shared/localization/locales/te.json +1688 -1037
- package/shared/localization/locales/th.json +1666 -1015
- package/shared/localization/locales/tr.json +1658 -1007
- package/shared/localization/locales/uk.json +1657 -1006
- package/shared/localization/locales/vi.json +1659 -1008
- package/shared/localization/locales/zh-HK.json +1658 -1007
- package/shared/localization/locales/zh-TW.json +1661 -1010
- package/shared/localization/locales/zh.json +1658 -1007
- package/shared/localization/locales.d.ts +7 -0
- package/shared/localization/locales.js +54 -51
- package/shared/localization/swap-flow-locale.d.ts +6 -0
- package/shared/localization/swap-flow-locale.js +6 -3
- package/shared/localization/swap-locale.d.ts +39 -0
- package/shared/localization/swap-locale.js +7 -8
- package/shared/test/localization/format-test.js +73 -56
- package/shared/test/localization/locales-test.js +2 -4
- package/shared/test/localization/swap-locale-test.js +10 -11
- package/shared/test/util-test.js +214 -0
- package/shared/tsconfig.json +1 -2
- package/shared/type-verifiers.d.ts +23 -0
- package/shared/type-verifiers.js +1 -2
- package/shared/types/shared.d.ts +2 -2
- package/shared/util.d.ts +122 -0
- package/shared/util.js +332 -0
- package/third-party/axe/valid-langs.d.ts +9 -0
- package/third-party/axe/valid-langs.js +1 -1
- package/third-party/chromium-synchronization/inspector-issueAdded-types-test.js +5 -7
- package/third-party/chromium-synchronization/installability-errors-test.js +4 -8
- package/third-party/download-content-shell/README.md +1 -0
- package/third-party/download-content-shell/download-content-shell.js +12 -6
- package/third-party/download-content-shell/utils.js +8 -8
- package/tsconfig-base.json +6 -1
- package/tsconfig.json +84 -90
- package/types/artifacts.d.ts +135 -78
- package/types/audit.d.ts +9 -8
- package/types/config.d.ts +26 -38
- package/types/externs.d.ts +9 -101
- package/types/gatherer.d.ts +35 -27
- package/types/internal/cssstyle.d.ts +23 -0
- package/types/{enquirer.d.ts → internal/enquirer.d.ts} +0 -0
- package/types/{es-main.d.ts → internal/es-main.d.ts} +0 -0
- package/types/internal/global.d.ts +15 -0
- package/types/{http-link-header/index.d.ts → internal/http-link-header.d.ts} +0 -0
- package/types/{jsonlint-mod.d.ts → internal/jsonlint-mod.d.ts} +0 -0
- package/types/internal/lighthouse-logger.d.ts +34 -0
- package/types/internal/lookup-closest-locale.d.ts +13 -0
- package/types/{metaviewport-parser/index.d.ts → internal/metaviewport-parser.d.ts} +0 -0
- package/types/{node-fetch.d.ts → internal/node-fetch.d.ts} +0 -0
- package/types/internal/node.d.ts +44 -0
- package/types/{parse-cache-control/index.d.ts → internal/parse-cache-control.d.ts} +0 -0
- package/types/{pretty-json-stringify/index.d.ts → internal/pretty-json-stringify.d.ts} +0 -0
- package/types/internal/query-selector.d.ts +36 -0
- package/types/{rollup-plugin-postprocess.d.ts → internal/rollup-plugin-postprocess.d.ts} +0 -0
- package/types/internal/smokehouse.d.ts +83 -0
- package/types/internal/test.d.ts +53 -0
- package/types/lh.d.ts +81 -0
- package/types/lh.js +13 -0
- package/types/lhr/audit-details.d.ts +6 -53
- package/types/lhr/audit-result.d.ts +2 -2
- package/types/lhr/flow-result.d.ts +28 -0
- package/types/lhr/lhr.d.ts +53 -6
- package/types/lhr/settings.d.ts +18 -1
- package/types/lhr/treemap.d.ts +5 -4
- package/types/lhr/tsconfig.json +0 -2
- package/types/protocol.d.ts +32 -18
- package/types/puppeteer.d.ts +27 -0
- package/types/user-flow.d.ts +27 -6
- package/types/utility-types.d.ts +72 -0
- package/vercel.json +6 -0
- package/eslint-local-rules.js +0 -106
- package/flow-report/.eslintrc.cjs +0 -51
- package/flow-report/jest.config.js +0 -24
- package/flow-report/package.json +0 -4
- package/flow-report/test/setup/global-setup.ts +0 -11
- package/jest.config.js +0 -30
- package/lighthouse-cli/.eslintrc.cjs +0 -29
- package/lighthouse-cli/bin.js +0 -152
- package/lighthouse-cli/cli-flags.js +0 -530
- package/lighthouse-cli/commands/commands.js +0 -10
- package/lighthouse-cli/commands/list-audits.js +0 -16
- package/lighthouse-cli/commands/list-locales.js +0 -16
- package/lighthouse-cli/commands/list-trace-categories.js +0 -16
- package/lighthouse-cli/index.js +0 -14
- package/lighthouse-cli/package.json +0 -4
- package/lighthouse-cli/printer.js +0 -100
- package/lighthouse-cli/run.js +0 -286
- package/lighthouse-cli/sentry-prompt.js +0 -79
- package/lighthouse-cli/test/smokehouse/core-tests.js +0 -129
- package/lighthouse-cli/test/smokehouse/frontends/back-compat-util.js +0 -42
- package/lighthouse-cli/test/smokehouse/frontends/lib.js +0 -49
- package/lighthouse-cli/test/smokehouse/frontends/node.js +0 -13
- package/lighthouse-cli/test/smokehouse/frontends/smokehouse-bin.js +0 -262
- package/lighthouse-cli/test/smokehouse/lib/child-process-error.js +0 -26
- package/lighthouse-cli/test/smokehouse/lib/concurrent-mapper.js +0 -126
- package/lighthouse-cli/test/smokehouse/lib/local-console.js +0 -51
- package/lighthouse-cli/test/smokehouse/lighthouse-runners/bundle.js +0 -68
- package/lighthouse-cli/test/smokehouse/lighthouse-runners/cli.js +0 -151
- package/lighthouse-cli/test/smokehouse/lighthouse-runners/devtools.js +0 -106
- package/lighthouse-cli/test/smokehouse/readme.md +0 -204
- package/lighthouse-cli/test/smokehouse/report-assert.js +0 -493
- package/lighthouse-cli/test/smokehouse/smokehouse.js +0 -284
- package/lighthouse-cli/test/smokehouse/version-check-test.js +0 -46
- package/lighthouse-cli/test/smokehouse/version-check.js +0 -49
- package/lighthouse-core/audits/accessibility/accesskeys.js +0 -45
- package/lighthouse-core/audits/accessibility/aria-allowed-attr.js +0 -45
- package/lighthouse-core/audits/accessibility/aria-command-name.js +0 -43
- package/lighthouse-core/audits/accessibility/aria-hidden-body.js +0 -43
- package/lighthouse-core/audits/accessibility/aria-hidden-focus.js +0 -43
- package/lighthouse-core/audits/accessibility/aria-input-field-name.js +0 -43
- package/lighthouse-core/audits/accessibility/aria-meter-name.js +0 -43
- package/lighthouse-core/audits/accessibility/aria-progressbar-name.js +0 -43
- package/lighthouse-core/audits/accessibility/aria-required-attr.js +0 -44
- package/lighthouse-core/audits/accessibility/aria-required-children.js +0 -48
- package/lighthouse-core/audits/accessibility/aria-required-parent.js +0 -46
- package/lighthouse-core/audits/accessibility/aria-roles.js +0 -45
- package/lighthouse-core/audits/accessibility/aria-toggle-field-name.js +0 -43
- package/lighthouse-core/audits/accessibility/aria-tooltip-name.js +0 -43
- package/lighthouse-core/audits/accessibility/aria-treeitem-name.js +0 -43
- package/lighthouse-core/audits/accessibility/aria-valid-attr-value.js +0 -45
- package/lighthouse-core/audits/accessibility/aria-valid-attr.js +0 -45
- package/lighthouse-core/audits/accessibility/axe-audit.js +0 -114
- package/lighthouse-core/audits/accessibility/button-name.js +0 -45
- package/lighthouse-core/audits/accessibility/bypass.js +0 -46
- package/lighthouse-core/audits/accessibility/color-contrast.js +0 -46
- package/lighthouse-core/audits/accessibility/definition-list.js +0 -47
- package/lighthouse-core/audits/accessibility/dlitem.js +0 -45
- package/lighthouse-core/audits/accessibility/document-title.js +0 -45
- package/lighthouse-core/audits/accessibility/duplicate-id-active.js +0 -43
- package/lighthouse-core/audits/accessibility/duplicate-id-aria.js +0 -43
- package/lighthouse-core/audits/accessibility/form-field-multiple-labels.js +0 -44
- package/lighthouse-core/audits/accessibility/frame-title.js +0 -44
- package/lighthouse-core/audits/accessibility/heading-order.js +0 -43
- package/lighthouse-core/audits/accessibility/html-has-lang.js +0 -47
- package/lighthouse-core/audits/accessibility/html-lang-valid.js +0 -46
- package/lighthouse-core/audits/accessibility/image-alt.js +0 -45
- package/lighthouse-core/audits/accessibility/input-image-alt.js +0 -45
- package/lighthouse-core/audits/accessibility/label.js +0 -45
- package/lighthouse-core/audits/accessibility/link-name.js +0 -46
- package/lighthouse-core/audits/accessibility/list.js +0 -47
- package/lighthouse-core/audits/accessibility/listitem.js +0 -46
- package/lighthouse-core/audits/accessibility/manual/custom-controls-labels.js +0 -28
- package/lighthouse-core/audits/accessibility/manual/custom-controls-roles.js +0 -28
- package/lighthouse-core/audits/accessibility/manual/focus-traps.js +0 -28
- package/lighthouse-core/audits/accessibility/manual/focusable-controls.js +0 -28
- package/lighthouse-core/audits/accessibility/manual/interactive-element-affordance.js +0 -28
- package/lighthouse-core/audits/accessibility/manual/logical-tab-order.js +0 -28
- package/lighthouse-core/audits/accessibility/manual/managed-focus.js +0 -28
- package/lighthouse-core/audits/accessibility/manual/offscreen-content-hidden.js +0 -29
- package/lighthouse-core/audits/accessibility/manual/use-landmarks.js +0 -28
- package/lighthouse-core/audits/accessibility/manual/visual-order-follows-dom.js +0 -28
- package/lighthouse-core/audits/accessibility/meta-refresh.js +0 -46
- package/lighthouse-core/audits/accessibility/meta-viewport.js +0 -47
- package/lighthouse-core/audits/accessibility/object-alt.js +0 -45
- package/lighthouse-core/audits/accessibility/tabindex.js +0 -45
- package/lighthouse-core/audits/accessibility/td-headers-attr.js +0 -49
- package/lighthouse-core/audits/accessibility/th-has-data-cells.js +0 -48
- package/lighthouse-core/audits/accessibility/valid-lang.js +0 -45
- package/lighthouse-core/audits/accessibility/video-caption.js +0 -46
- package/lighthouse-core/audits/apple-touch-icon.js +0 -72
- package/lighthouse-core/audits/audit.js +0 -391
- package/lighthouse-core/audits/autocomplete.js +0 -290
- package/lighthouse-core/audits/bootup-time.js +0 -152
- package/lighthouse-core/audits/byte-efficiency/byte-efficiency-audit.js +0 -258
- package/lighthouse-core/audits/byte-efficiency/duplicated-javascript.js +0 -249
- package/lighthouse-core/audits/byte-efficiency/efficient-animated-content.js +0 -92
- package/lighthouse-core/audits/byte-efficiency/legacy-javascript.js +0 -472
- package/lighthouse-core/audits/byte-efficiency/modern-image-formats.js +0 -186
- package/lighthouse-core/audits/byte-efficiency/offscreen-images.js +0 -252
- package/lighthouse-core/audits/byte-efficiency/render-blocking-resources.js +0 -309
- package/lighthouse-core/audits/byte-efficiency/total-byte-weight.js +0 -111
- package/lighthouse-core/audits/byte-efficiency/unminified-css.js +0 -117
- package/lighthouse-core/audits/byte-efficiency/unminified-javascript.js +0 -120
- package/lighthouse-core/audits/byte-efficiency/unused-css-rules.js +0 -71
- package/lighthouse-core/audits/byte-efficiency/unused-javascript.js +0 -161
- package/lighthouse-core/audits/byte-efficiency/uses-long-cache-ttl.js +0 -298
- package/lighthouse-core/audits/byte-efficiency/uses-optimized-images.js +0 -145
- package/lighthouse-core/audits/byte-efficiency/uses-responsive-images-snapshot.js +0 -100
- package/lighthouse-core/audits/byte-efficiency/uses-responsive-images.js +0 -177
- package/lighthouse-core/audits/byte-efficiency/uses-text-compression.js +0 -100
- package/lighthouse-core/audits/content-width.js +0 -77
- package/lighthouse-core/audits/critical-request-chains.js +0 -220
- package/lighthouse-core/audits/csp-xss.js +0 -186
- package/lighthouse-core/audits/deprecations.js +0 -684
- package/lighthouse-core/audits/diagnostics.js +0 -79
- package/lighthouse-core/audits/dobetterweb/charset.js +0 -96
- package/lighthouse-core/audits/dobetterweb/doctype.js +0 -94
- package/lighthouse-core/audits/dobetterweb/dom-size.js +0 -123
- package/lighthouse-core/audits/dobetterweb/geolocation-on-start.js +0 -70
- package/lighthouse-core/audits/dobetterweb/inspector-issues.js +0 -192
- package/lighthouse-core/audits/dobetterweb/js-libraries.js +0 -88
- package/lighthouse-core/audits/dobetterweb/no-document-write.js +0 -85
- package/lighthouse-core/audits/dobetterweb/no-vulnerable-libraries.js +0 -225
- package/lighthouse-core/audits/dobetterweb/notification-on-start.js +0 -69
- package/lighthouse-core/audits/dobetterweb/password-inputs-can-be-pasted-into.js +0 -66
- package/lighthouse-core/audits/dobetterweb/uses-http2.js +0 -258
- package/lighthouse-core/audits/dobetterweb/uses-passive-event-listeners.js +0 -68
- package/lighthouse-core/audits/errors-in-console.js +0 -118
- package/lighthouse-core/audits/final-screenshot.js +0 -59
- package/lighthouse-core/audits/font-display.js +0 -193
- package/lighthouse-core/audits/full-page-screenshot.js +0 -43
- package/lighthouse-core/audits/image-aspect-ratio.js +0 -122
- package/lighthouse-core/audits/image-size-responsive.js +0 -331
- package/lighthouse-core/audits/installable-manifest.js +0 -266
- package/lighthouse-core/audits/is-on-https.js +0 -125
- package/lighthouse-core/audits/largest-contentful-paint-element.js +0 -70
- package/lighthouse-core/audits/layout-shift-elements.js +0 -75
- package/lighthouse-core/audits/lcp-lazy-loaded.js +0 -85
- package/lighthouse-core/audits/long-tasks.js +0 -124
- package/lighthouse-core/audits/main-thread-tasks.js +0 -59
- package/lighthouse-core/audits/mainthread-work-breakdown.js +0 -134
- package/lighthouse-core/audits/manual/manual-audit.js +0 -37
- package/lighthouse-core/audits/manual/pwa-cross-browser.js +0 -41
- package/lighthouse-core/audits/manual/pwa-each-page-has-url.js +0 -39
- package/lighthouse-core/audits/manual/pwa-page-transitions.js +0 -39
- package/lighthouse-core/audits/maskable-icon.js +0 -71
- package/lighthouse-core/audits/metrics/cumulative-layout-shift.js +0 -79
- package/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js +0 -88
- package/lighthouse-core/audits/metrics/first-contentful-paint-3g.js +0 -67
- package/lighthouse-core/audits/metrics/first-contentful-paint.js +0 -85
- package/lighthouse-core/audits/metrics/first-meaningful-paint.js +0 -89
- package/lighthouse-core/audits/metrics/interactive.js +0 -93
- package/lighthouse-core/audits/metrics/largest-contentful-paint.js +0 -114
- package/lighthouse-core/audits/metrics/max-potential-fid.js +0 -76
- package/lighthouse-core/audits/metrics/speed-index.js +0 -88
- package/lighthouse-core/audits/metrics/total-blocking-time.js +0 -117
- package/lighthouse-core/audits/metrics.js +0 -73
- package/lighthouse-core/audits/multi-check-audit.js +0 -83
- package/lighthouse-core/audits/network-requests.js +0 -129
- package/lighthouse-core/audits/network-rtt.js +0 -90
- package/lighthouse-core/audits/network-server-latency.js +0 -89
- package/lighthouse-core/audits/no-unload-listeners.js +0 -95
- package/lighthouse-core/audits/non-composited-animations.js +0 -206
- package/lighthouse-core/audits/oopif-iframe-test-audit.js +0 -30
- package/lighthouse-core/audits/performance-budget.js +0 -154
- package/lighthouse-core/audits/predictive-perf.js +0 -101
- package/lighthouse-core/audits/preload-fonts.js +0 -107
- package/lighthouse-core/audits/preload-lcp-image.js +0 -272
- package/lighthouse-core/audits/redirects.js +0 -163
- package/lighthouse-core/audits/resource-summary.js +0 -104
- package/lighthouse-core/audits/screenshot-thumbnails.js +0 -163
- package/lighthouse-core/audits/script-treemap-data.js +0 -288
- package/lighthouse-core/audits/seo/canonical.js +0 -218
- package/lighthouse-core/audits/seo/crawlable-anchors.js +0 -94
- package/lighthouse-core/audits/seo/font-size.js +0 -344
- package/lighthouse-core/audits/seo/hreflang.js +0 -149
- package/lighthouse-core/audits/seo/http-status-code.js +0 -70
- package/lighthouse-core/audits/seo/is-crawlable.js +0 -155
- package/lighthouse-core/audits/seo/link-text.js +0 -158
- package/lighthouse-core/audits/seo/manual/structured-data.js +0 -38
- package/lighthouse-core/audits/seo/meta-description.js +0 -67
- package/lighthouse-core/audits/seo/plugins.js +0 -152
- package/lighthouse-core/audits/seo/robots-txt.js +0 -256
- package/lighthouse-core/audits/seo/tap-targets.js +0 -352
- package/lighthouse-core/audits/server-response-time.js +0 -106
- package/lighthouse-core/audits/service-worker.js +0 -179
- package/lighthouse-core/audits/splash-screen.js +0 -99
- package/lighthouse-core/audits/themed-omnibox.js +0 -110
- package/lighthouse-core/audits/third-party-facades.js +0 -221
- package/lighthouse-core/audits/third-party-summary.js +0 -259
- package/lighthouse-core/audits/timing-budget.js +0 -174
- package/lighthouse-core/audits/unsized-images.js +0 -163
- package/lighthouse-core/audits/user-timings.js +0 -120
- package/lighthouse-core/audits/uses-rel-preconnect.js +0 -254
- package/lighthouse-core/audits/uses-rel-preload.js +0 -267
- package/lighthouse-core/audits/valid-source-maps.js +0 -157
- package/lighthouse-core/audits/viewport.js +0 -65
- package/lighthouse-core/audits/violation-audit.js +0 -50
- package/lighthouse-core/audits/work-during-interaction.js +0 -280
- package/lighthouse-core/computed/computed-artifact.js +0 -62
- package/lighthouse-core/computed/critical-request-chains.js +0 -146
- package/lighthouse-core/computed/image-records.js +0 -63
- package/lighthouse-core/computed/js-bundles.js +0 -119
- package/lighthouse-core/computed/load-simulator.js +0 -92
- package/lighthouse-core/computed/main-resource.js +0 -34
- package/lighthouse-core/computed/main-thread-tasks.js +0 -25
- package/lighthouse-core/computed/manifest-values.js +0 -135
- package/lighthouse-core/computed/metrics/cumulative-layout-shift.js +0 -129
- package/lighthouse-core/computed/metrics/first-contentful-paint-all-frames.js +0 -37
- package/lighthouse-core/computed/metrics/first-contentful-paint.js +0 -40
- package/lighthouse-core/computed/metrics/first-meaningful-paint.js +0 -44
- package/lighthouse-core/computed/metrics/interactive.js +0 -193
- package/lighthouse-core/computed/metrics/lantern-first-contentful-paint.js +0 -204
- package/lighthouse-core/computed/metrics/lantern-first-meaningful-paint.js +0 -83
- package/lighthouse-core/computed/metrics/lantern-interactive.js +0 -113
- package/lighthouse-core/computed/metrics/lantern-largest-contentful-paint.js +0 -111
- package/lighthouse-core/computed/metrics/lantern-max-potential-fid.js +0 -93
- package/lighthouse-core/computed/metrics/lantern-metric.js +0 -167
- package/lighthouse-core/computed/metrics/lantern-speed-index.js +0 -150
- package/lighthouse-core/computed/metrics/lantern-total-blocking-time.js +0 -126
- package/lighthouse-core/computed/metrics/largest-contentful-paint-all-frames.js +0 -45
- package/lighthouse-core/computed/metrics/largest-contentful-paint.js +0 -52
- package/lighthouse-core/computed/metrics/max-potential-fid.js +0 -45
- package/lighthouse-core/computed/metrics/metric.js +0 -100
- package/lighthouse-core/computed/metrics/navigation-metric.js +0 -46
- package/lighthouse-core/computed/metrics/responsiveness.js +0 -157
- package/lighthouse-core/computed/metrics/speed-index.js +0 -40
- package/lighthouse-core/computed/metrics/tbt-utils.js +0 -57
- package/lighthouse-core/computed/metrics/timing-summary.js +0 -150
- package/lighthouse-core/computed/metrics/total-blocking-time.js +0 -74
- package/lighthouse-core/computed/module-duplication.js +0 -136
- package/lighthouse-core/computed/network-analysis.js +0 -64
- package/lighthouse-core/computed/network-records.js +0 -21
- package/lighthouse-core/computed/page-dependency-graph.js +0 -488
- package/lighthouse-core/computed/processed-navigation.js +0 -21
- package/lighthouse-core/computed/processed-trace.js +0 -21
- package/lighthouse-core/computed/resource-summary.js +0 -114
- package/lighthouse-core/computed/screenshots.js +0 -29
- package/lighthouse-core/computed/speedline.js +0 -54
- package/lighthouse-core/computed/trace-of-tab.js +0 -30
- package/lighthouse-core/computed/unused-css.js +0 -154
- package/lighthouse-core/computed/unused-javascript-summary.js +0 -175
- package/lighthouse-core/computed/user-timings.js +0 -83
- package/lighthouse-core/computed/viewport-meta.js +0 -56
- package/lighthouse-core/config/budget.js +0 -341
- package/lighthouse-core/config/config-helpers.js +0 -590
- package/lighthouse-core/config/config-plugin.js +0 -225
- package/lighthouse-core/config/config.js +0 -544
- package/lighthouse-core/config/constants.js +0 -169
- package/lighthouse-core/config/default-config.js +0 -632
- package/lighthouse-core/config/desktop-config.js +0 -21
- package/lighthouse-core/config/experimental-config.js +0 -30
- package/lighthouse-core/config/full-config.js +0 -14
- package/lighthouse-core/config/lr-desktop-config.js +0 -25
- package/lighthouse-core/config/lr-mobile-config.js +0 -31
- package/lighthouse-core/config/metrics-to-audits.js +0 -61
- package/lighthouse-core/config/perf-config.js +0 -17
- package/lighthouse-core/fraggle-rock/api.js +0 -77
- package/lighthouse-core/fraggle-rock/config/config.js +0 -281
- package/lighthouse-core/fraggle-rock/config/default-config.js +0 -205
- package/lighthouse-core/fraggle-rock/config/filters.js +0 -335
- package/lighthouse-core/fraggle-rock/config/validation.js +0 -313
- package/lighthouse-core/fraggle-rock/gather/base-artifacts.js +0 -99
- package/lighthouse-core/fraggle-rock/gather/base-gatherer.js +0 -107
- package/lighthouse-core/fraggle-rock/gather/driver.js +0 -88
- package/lighthouse-core/fraggle-rock/gather/navigation-runner.js +0 -339
- package/lighthouse-core/fraggle-rock/gather/runner-helpers.js +0 -160
- package/lighthouse-core/fraggle-rock/gather/session.js +0 -182
- package/lighthouse-core/fraggle-rock/gather/snapshot-runner.js +0 -68
- package/lighthouse-core/fraggle-rock/gather/timespan-runner.js +0 -82
- package/lighthouse-core/fraggle-rock/user-flow.js +0 -229
- package/lighthouse-core/gather/connections/connection.js +0 -179
- package/lighthouse-core/gather/connections/cri.js +0 -171
- package/lighthouse-core/gather/connections/raw.js +0 -58
- package/lighthouse-core/gather/devtools-log.js +0 -61
- package/lighthouse-core/gather/driver/dom.js +0 -58
- package/lighthouse-core/gather/driver/environment.js +0 -105
- package/lighthouse-core/gather/driver/execution-context.js +0 -249
- package/lighthouse-core/gather/driver/navigation.js +0 -179
- package/lighthouse-core/gather/driver/network-monitor.js +0 -290
- package/lighthouse-core/gather/driver/network.js +0 -28
- package/lighthouse-core/gather/driver/prepare.js +0 -226
- package/lighthouse-core/gather/driver/service-workers.js +0 -53
- package/lighthouse-core/gather/driver/storage.js +0 -125
- package/lighthouse-core/gather/driver/target-manager.js +0 -125
- package/lighthouse-core/gather/driver/wait-for-condition.js +0 -535
- package/lighthouse-core/gather/driver.js +0 -482
- package/lighthouse-core/gather/fetcher.js +0 -318
- package/lighthouse-core/gather/gather-runner.js +0 -622
- package/lighthouse-core/gather/gatherers/accessibility.js +0 -172
- package/lighthouse-core/gather/gatherers/anchor-elements.js +0 -133
- package/lighthouse-core/gather/gatherers/cache-contents.js +0 -59
- package/lighthouse-core/gather/gatherers/console-messages.js +0 -173
- package/lighthouse-core/gather/gatherers/css-usage.js +0 -149
- package/lighthouse-core/gather/gatherers/devtools-log-compat.js +0 -36
- package/lighthouse-core/gather/gatherers/devtools-log.js +0 -66
- package/lighthouse-core/gather/gatherers/dobetterweb/doctype.js +0 -46
- package/lighthouse-core/gather/gatherers/dobetterweb/domstats.js +0 -103
- package/lighthouse-core/gather/gatherers/dobetterweb/optimized-images.js +0 -192
- package/lighthouse-core/gather/gatherers/dobetterweb/password-inputs-with-prevented-paste.js +0 -50
- package/lighthouse-core/gather/gatherers/dobetterweb/response-compression.js +0 -154
- package/lighthouse-core/gather/gatherers/dobetterweb/tags-blocking-first-paint.js +0 -238
- package/lighthouse-core/gather/gatherers/full-page-screenshot.js +0 -235
- package/lighthouse-core/gather/gatherers/gatherer.js +0 -59
- package/lighthouse-core/gather/gatherers/global-listeners.js +0 -92
- package/lighthouse-core/gather/gatherers/iframe-elements.js +0 -65
- package/lighthouse-core/gather/gatherers/image-elements.js +0 -375
- package/lighthouse-core/gather/gatherers/inputs.js +0 -113
- package/lighthouse-core/gather/gatherers/inspector-issues.js +0 -127
- package/lighthouse-core/gather/gatherers/installability-errors.js +0 -48
- package/lighthouse-core/gather/gatherers/js-usage.js +0 -145
- package/lighthouse-core/gather/gatherers/link-elements.js +0 -184
- package/lighthouse-core/gather/gatherers/main-document-content.js +0 -56
- package/lighthouse-core/gather/gatherers/meta-elements.js +0 -68
- package/lighthouse-core/gather/gatherers/network-user-agent.js +0 -42
- package/lighthouse-core/gather/gatherers/script-elements.js +0 -160
- package/lighthouse-core/gather/gatherers/seo/embedded-content.js +0 -64
- package/lighthouse-core/gather/gatherers/seo/font-size.js +0 -380
- package/lighthouse-core/gather/gatherers/seo/robots-txt.js +0 -56
- package/lighthouse-core/gather/gatherers/seo/tap-targets.js +0 -370
- package/lighthouse-core/gather/gatherers/service-worker.js +0 -45
- package/lighthouse-core/gather/gatherers/source-maps.js +0 -150
- package/lighthouse-core/gather/gatherers/stacks.js +0 -125
- package/lighthouse-core/gather/gatherers/trace-compat.js +0 -36
- package/lighthouse-core/gather/gatherers/trace-elements.js +0 -349
- package/lighthouse-core/gather/gatherers/trace.js +0 -131
- package/lighthouse-core/gather/gatherers/viewport-dimensions.js +0 -58
- package/lighthouse-core/gather/gatherers/web-app-manifest.js +0 -102
- package/lighthouse-core/index.js +0 -80
- package/lighthouse-core/lib/arbitrary-equality-map.js +0 -81
- package/lighthouse-core/lib/asset-saver.js +0 -341
- package/lighthouse-core/lib/axe.js +0 -13
- package/lighthouse-core/lib/cdt/Platform.js +0 -55
- package/lighthouse-core/lib/cdt/SDK.js +0 -28
- package/lighthouse-core/lib/cdt/generated/SourceMap.js +0 -346
- package/lighthouse-core/lib/csp-evaluator.js +0 -173
- package/lighthouse-core/lib/dependency-graph/base-node.js +0 -363
- package/lighthouse-core/lib/dependency-graph/cpu-node.js +0 -86
- package/lighthouse-core/lib/dependency-graph/network-node.js +0 -99
- package/lighthouse-core/lib/dependency-graph/simulator/connection-pool.js +0 -171
- package/lighthouse-core/lib/dependency-graph/simulator/dns-cache.js +0 -73
- package/lighthouse-core/lib/dependency-graph/simulator/network-analyzer.js +0 -498
- package/lighthouse-core/lib/dependency-graph/simulator/simulator-timing-map.js +0 -212
- package/lighthouse-core/lib/dependency-graph/simulator/simulator.js +0 -523
- package/lighthouse-core/lib/dependency-graph/simulator/tcp-connection.js +0 -206
- package/lighthouse-core/lib/emulation.js +0 -164
- package/lighthouse-core/lib/i18n/README.md +0 -273
- package/lighthouse-core/lib/i18n/i18n.js +0 -221
- package/lighthouse-core/lib/icons.js +0 -85
- package/lighthouse-core/lib/lantern-trace-saver.js +0 -198
- package/lighthouse-core/lib/lh-env.js +0 -14
- package/lighthouse-core/lib/lh-error.js +0 -421
- package/lighthouse-core/lib/lh-trace-processor.js +0 -46
- package/lighthouse-core/lib/manifest-parser.js +0 -513
- package/lighthouse-core/lib/median-run.js +0 -92
- package/lighthouse-core/lib/minification-estimator.js +0 -193
- package/lighthouse-core/lib/minify-devtoolslog.js +0 -87
- package/lighthouse-core/lib/minify-trace.js +0 -173
- package/lighthouse-core/lib/navigation-error.js +0 -145
- package/lighthouse-core/lib/network-recorder.js +0 -337
- package/lighthouse-core/lib/network-request.js +0 -540
- package/lighthouse-core/lib/page-functions.js +0 -559
- package/lighthouse-core/lib/proto-preprocessor.js +0 -133
- package/lighthouse-core/lib/rect-helpers.js +0 -252
- package/lighthouse-core/lib/script-helpers.js +0 -24
- package/lighthouse-core/lib/sentry.js +0 -144
- package/lighthouse-core/lib/stack-packs.js +0 -120
- package/lighthouse-core/lib/statistics.js +0 -104
- package/lighthouse-core/lib/tappable-rects.js +0 -99
- package/lighthouse-core/lib/third-party-web.js +0 -53
- package/lighthouse-core/lib/timing-trace-saver.js +0 -97
- package/lighthouse-core/lib/tracehouse/cpu-profile-model.js +0 -592
- package/lighthouse-core/lib/tracehouse/main-thread-tasks.js +0 -688
- package/lighthouse-core/lib/tracehouse/task-groups.js +0 -112
- package/lighthouse-core/lib/tracehouse/task-summary.js +0 -87
- package/lighthouse-core/lib/tracehouse/trace-processor.js +0 -962
- package/lighthouse-core/lib/traces/pwmetrics-events.js +0 -200
- package/lighthouse-core/lib/url-shim.js +0 -274
- package/lighthouse-core/runner.js +0 -518
- package/lighthouse-core/scoring.js +0 -93
- package/lighthouse-core/scripts/download-chrome.sh +0 -36
- package/lighthouse-core/scripts/manual-chrome-launcher.js +0 -51
- package/lighthouse-core/scripts/package.json +0 -4
- package/lighthouse-core/util-commonjs.js +0 -708
- package/now.json +0 -14
- package/report/.eslintrc.cjs +0 -35
- package/report/generator/package.json +0 -4
- package/report/package.json +0 -4
- package/report/renderer/i18n.js +0 -198
- package/report/renderer/util.js +0 -705
- package/report/test/generator/package.json +0 -4
- package/report/test/renderer/i18n-test.js +0 -140
- package/report/test/renderer/util-test.js +0 -479
- package/report/test-assets/faux-psi-template.html +0 -177
- package/report/test-assets/faux-psi.js +0 -153
- package/third-party/snyk/snapshot.json +0 -182
- package/types/cssstyle/index.d.ts +0 -23
- package/types/global-lh.d.ts +0 -81
- package/types/jest.d.ts +0 -25
- package/types/jsonld/index.d.ts +0 -19
- package/types/lhr/flow.d.ts +0 -32
- package/types/lighthouse-logger/index.d.ts +0 -33
- package/types/lookup-closest-locale/index.d.ts +0 -11
- package/types/node.d.ts +0 -12
- package/types/query-selector.d.ts +0 -36
- package/types/smokehouse.d.ts +0 -80
- package/types/structured-data.d.ts +0 -36
|
@@ -1,2071 +1,2620 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
"message": "
|
|
4
|
-
},
|
|
5
|
-
"flow-report/src/i18n/ui-strings.js | categories": {
|
|
6
|
-
"message": "Categories"
|
|
7
|
-
},
|
|
8
|
-
"flow-report/src/i18n/ui-strings.js | categoryAccessibility": {
|
|
9
|
-
"message": "Accessibility"
|
|
10
|
-
},
|
|
11
|
-
"flow-report/src/i18n/ui-strings.js | categoryBestPractices": {
|
|
12
|
-
"message": "Best Practices"
|
|
13
|
-
},
|
|
14
|
-
"flow-report/src/i18n/ui-strings.js | categoryPerformance": {
|
|
15
|
-
"message": "Performance"
|
|
16
|
-
},
|
|
17
|
-
"flow-report/src/i18n/ui-strings.js | categoryProgressiveWebApp": {
|
|
18
|
-
"message": "Progressive Web App"
|
|
19
|
-
},
|
|
20
|
-
"flow-report/src/i18n/ui-strings.js | categorySeo": {
|
|
21
|
-
"message": "SEO"
|
|
22
|
-
},
|
|
23
|
-
"flow-report/src/i18n/ui-strings.js | desktop": {
|
|
24
|
-
"message": "Desktop"
|
|
25
|
-
},
|
|
26
|
-
"flow-report/src/i18n/ui-strings.js | helpDialogTitle": {
|
|
27
|
-
"message": "Understanding the Lighthouse Flow Report"
|
|
28
|
-
},
|
|
29
|
-
"flow-report/src/i18n/ui-strings.js | helpLabel": {
|
|
30
|
-
"message": "Understanding Flows"
|
|
31
|
-
},
|
|
32
|
-
"flow-report/src/i18n/ui-strings.js | helpUseCaseInstructionNavigation": {
|
|
33
|
-
"message": "Use Navigation reports to..."
|
|
34
|
-
},
|
|
35
|
-
"flow-report/src/i18n/ui-strings.js | helpUseCaseInstructionSnapshot": {
|
|
36
|
-
"message": "Use Snapshot reports to..."
|
|
37
|
-
},
|
|
38
|
-
"flow-report/src/i18n/ui-strings.js | helpUseCaseInstructionTimespan": {
|
|
39
|
-
"message": "Use Timespan reports to..."
|
|
40
|
-
},
|
|
41
|
-
"flow-report/src/i18n/ui-strings.js | helpUseCaseNavigation1": {
|
|
42
|
-
"message": "Obtain a Lighthouse Performance score."
|
|
43
|
-
},
|
|
44
|
-
"flow-report/src/i18n/ui-strings.js | helpUseCaseNavigation2": {
|
|
45
|
-
"message": "Measure page load Performance metrics such as Largest Contentful Paint and Speed Index."
|
|
46
|
-
},
|
|
47
|
-
"flow-report/src/i18n/ui-strings.js | helpUseCaseNavigation3": {
|
|
48
|
-
"message": "Assess Progressive Web App capabilities."
|
|
49
|
-
},
|
|
50
|
-
"flow-report/src/i18n/ui-strings.js | helpUseCaseSnapshot1": {
|
|
51
|
-
"message": "Find accessibility issues in single page applications or complex forms."
|
|
52
|
-
},
|
|
53
|
-
"flow-report/src/i18n/ui-strings.js | helpUseCaseSnapshot2": {
|
|
54
|
-
"message": "Evaluate best practices of menus and UI elements hidden behind interaction."
|
|
55
|
-
},
|
|
56
|
-
"flow-report/src/i18n/ui-strings.js | helpUseCaseTimespan1": {
|
|
57
|
-
"message": "Measure layout shifts and JavaScript execution time on a series of interactions."
|
|
58
|
-
},
|
|
59
|
-
"flow-report/src/i18n/ui-strings.js | helpUseCaseTimespan2": {
|
|
60
|
-
"message": "Discover performance opportunities to improve the experience for long-lived pages and single-page applications."
|
|
61
|
-
},
|
|
62
|
-
"flow-report/src/i18n/ui-strings.js | highestImpact": {
|
|
63
|
-
"message": "Highest impact"
|
|
64
|
-
},
|
|
65
|
-
"flow-report/src/i18n/ui-strings.js | informativeAuditCount": {
|
|
66
|
-
"message": "{numInformative,plural, =1{{numInformative} informative audit}zero{{numInformative} informative audits}two{{numInformative} informative audits}few{{numInformative} informative audits}many{{numInformative} informative audits}other{{numInformative} informative audits}}"
|
|
67
|
-
},
|
|
68
|
-
"flow-report/src/i18n/ui-strings.js | mobile": {
|
|
69
|
-
"message": "Mobile"
|
|
70
|
-
},
|
|
71
|
-
"flow-report/src/i18n/ui-strings.js | navigationDescription": {
|
|
72
|
-
"message": "Page load"
|
|
73
|
-
},
|
|
74
|
-
"flow-report/src/i18n/ui-strings.js | navigationLongDescription": {
|
|
75
|
-
"message": "Navigation reports analyze a single page load, exactly like the original Lighthouse reports."
|
|
76
|
-
},
|
|
77
|
-
"flow-report/src/i18n/ui-strings.js | navigationReport": {
|
|
78
|
-
"message": "Navigation report"
|
|
79
|
-
},
|
|
80
|
-
"flow-report/src/i18n/ui-strings.js | navigationReportCount": {
|
|
81
|
-
"message": "{numNavigation,plural, =1{{numNavigation} navigation report}zero{{numNavigation} navigation reports}two{{numNavigation} navigation reports}few{{numNavigation} navigation reports}many{{numNavigation} navigation reports}other{{numNavigation} navigation reports}}"
|
|
82
|
-
},
|
|
83
|
-
"flow-report/src/i18n/ui-strings.js | passableAuditCount": {
|
|
84
|
-
"message": "{numPassableAudits,plural, =1{{numPassableAudits} passable audit}zero{{numPassableAudits} passable audits}two{{numPassableAudits} passable audits}few{{numPassableAudits} passable audits}many{{numPassableAudits} passable audits}other{{numPassableAudits} passable audits}}"
|
|
85
|
-
},
|
|
86
|
-
"flow-report/src/i18n/ui-strings.js | passedAuditCount": {
|
|
87
|
-
"message": "{numPassed,plural, =1{{numPassed} audit passed}zero{{numPassed} audits passed}two{{numPassed} audits passed}few{{numPassed} audits passed}many{{numPassed} audits passed}other{{numPassed} audits passed}}"
|
|
88
|
-
},
|
|
89
|
-
"flow-report/src/i18n/ui-strings.js | ratingAverage": {
|
|
90
|
-
"message": "Average"
|
|
91
|
-
},
|
|
92
|
-
"flow-report/src/i18n/ui-strings.js | ratingError": {
|
|
93
|
-
"message": "Error"
|
|
94
|
-
},
|
|
95
|
-
"flow-report/src/i18n/ui-strings.js | ratingFail": {
|
|
96
|
-
"message": "Poor"
|
|
97
|
-
},
|
|
98
|
-
"flow-report/src/i18n/ui-strings.js | ratingPass": {
|
|
99
|
-
"message": "Good"
|
|
100
|
-
},
|
|
101
|
-
"flow-report/src/i18n/ui-strings.js | save": {
|
|
102
|
-
"message": "Save"
|
|
103
|
-
},
|
|
104
|
-
"flow-report/src/i18n/ui-strings.js | snapshotDescription": {
|
|
105
|
-
"message": "Captured state of page"
|
|
106
|
-
},
|
|
107
|
-
"flow-report/src/i18n/ui-strings.js | snapshotLongDescription": {
|
|
108
|
-
"message": "Snapshot reports analyze the page in a particular state, typically after user interactions."
|
|
109
|
-
},
|
|
110
|
-
"flow-report/src/i18n/ui-strings.js | snapshotReport": {
|
|
111
|
-
"message": "Snapshot report"
|
|
112
|
-
},
|
|
113
|
-
"flow-report/src/i18n/ui-strings.js | snapshotReportCount": {
|
|
114
|
-
"message": "{numSnapshot,plural, =1{{numSnapshot} snapshot report}zero{{numSnapshot} snapshot reports}two{{numSnapshot} snapshot reports}few{{numSnapshot} snapshot reports}many{{numSnapshot} snapshot reports}other{{numSnapshot} snapshot reports}}"
|
|
115
|
-
},
|
|
116
|
-
"flow-report/src/i18n/ui-strings.js | summary": {
|
|
117
|
-
"message": "Summary"
|
|
118
|
-
},
|
|
119
|
-
"flow-report/src/i18n/ui-strings.js | timespanDescription": {
|
|
120
|
-
"message": "User interactions"
|
|
121
|
-
},
|
|
122
|
-
"flow-report/src/i18n/ui-strings.js | timespanLongDescription": {
|
|
123
|
-
"message": "Timespan reports analyze an arbitrary period of time, typically containing user interactions."
|
|
124
|
-
},
|
|
125
|
-
"flow-report/src/i18n/ui-strings.js | timespanReport": {
|
|
126
|
-
"message": "Timespan report"
|
|
127
|
-
},
|
|
128
|
-
"flow-report/src/i18n/ui-strings.js | timespanReportCount": {
|
|
129
|
-
"message": "{numTimespan,plural, =1{{numTimespan} timespan report}zero{{numTimespan} timespan reports}two{{numTimespan} timespan reports}few{{numTimespan} timespan reports}many{{numTimespan} timespan reports}other{{numTimespan} timespan reports}}"
|
|
130
|
-
},
|
|
131
|
-
"flow-report/src/i18n/ui-strings.js | title": {
|
|
132
|
-
"message": "Lighthouse User Flow Report"
|
|
133
|
-
},
|
|
134
|
-
"lighthouse-core/audits/accessibility/accesskeys.js | description": {
|
|
135
|
-
"message": "Access keys let users quickly focus a part of the page. For proper navigation, each access key must be unique. [Learn more](https://web.dev/accesskeys/)."
|
|
2
|
+
"core/audits/accessibility/accesskeys.js | description": {
|
|
3
|
+
"message": "Access keys let users quickly focus a part of the page. For proper navigation, each access key must be unique. [Learn more about access keys](https://dequeuniversity.com/rules/axe/4.6/accesskeys)."
|
|
136
4
|
},
|
|
137
|
-
"
|
|
5
|
+
"core/audits/accessibility/accesskeys.js | failureTitle": {
|
|
138
6
|
"message": "`[accesskey]` values are not unique"
|
|
139
7
|
},
|
|
140
|
-
"
|
|
8
|
+
"core/audits/accessibility/accesskeys.js | title": {
|
|
141
9
|
"message": "`[accesskey]` values are unique"
|
|
142
10
|
},
|
|
143
|
-
"
|
|
144
|
-
"message": "Each ARIA `role` supports a specific subset of `aria-*` attributes. Mismatching these invalidates the `aria-*` attributes. [Learn
|
|
11
|
+
"core/audits/accessibility/aria-allowed-attr.js | description": {
|
|
12
|
+
"message": "Each ARIA `role` supports a specific subset of `aria-*` attributes. Mismatching these invalidates the `aria-*` attributes. [Learn how to match ARIA attributes to their roles](https://dequeuniversity.com/rules/axe/4.6/aria-allowed-attr)."
|
|
145
13
|
},
|
|
146
|
-
"
|
|
14
|
+
"core/audits/accessibility/aria-allowed-attr.js | failureTitle": {
|
|
147
15
|
"message": "`[aria-*]` attributes do not match their roles"
|
|
148
16
|
},
|
|
149
|
-
"
|
|
17
|
+
"core/audits/accessibility/aria-allowed-attr.js | title": {
|
|
150
18
|
"message": "`[aria-*]` attributes match their roles"
|
|
151
19
|
},
|
|
152
|
-
"
|
|
153
|
-
"message": "When an element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more](https://
|
|
20
|
+
"core/audits/accessibility/aria-command-name.js | description": {
|
|
21
|
+
"message": "When an element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn how to make command elements more accessible](https://dequeuniversity.com/rules/axe/4.6/aria-command-name)."
|
|
154
22
|
},
|
|
155
|
-
"
|
|
23
|
+
"core/audits/accessibility/aria-command-name.js | failureTitle": {
|
|
156
24
|
"message": "`button`, `link`, and `menuitem` elements do not have accessible names."
|
|
157
25
|
},
|
|
158
|
-
"
|
|
26
|
+
"core/audits/accessibility/aria-command-name.js | title": {
|
|
159
27
|
"message": "`button`, `link`, and `menuitem` elements have accessible names"
|
|
160
28
|
},
|
|
161
|
-
"
|
|
162
|
-
"message": "Assistive technologies, like screen readers, work inconsistently when `aria-hidden=\"true\"` is set on the document `<body>`. [Learn
|
|
29
|
+
"core/audits/accessibility/aria-hidden-body.js | description": {
|
|
30
|
+
"message": "Assistive technologies, like screen readers, work inconsistently when `aria-hidden=\"true\"` is set on the document `<body>`. [Learn how `aria-hidden` affects the document body](https://dequeuniversity.com/rules/axe/4.6/aria-hidden-body)."
|
|
163
31
|
},
|
|
164
|
-
"
|
|
32
|
+
"core/audits/accessibility/aria-hidden-body.js | failureTitle": {
|
|
165
33
|
"message": "`[aria-hidden=\"true\"]` is present on the document `<body>`"
|
|
166
34
|
},
|
|
167
|
-
"
|
|
35
|
+
"core/audits/accessibility/aria-hidden-body.js | title": {
|
|
168
36
|
"message": "`[aria-hidden=\"true\"]` is not present on the document `<body>`"
|
|
169
37
|
},
|
|
170
|
-
"
|
|
171
|
-
"message": "Focusable descendents within an `[aria-hidden=\"true\"]` element prevent those interactive elements from being available to users of assistive technologies like screen readers. [Learn
|
|
38
|
+
"core/audits/accessibility/aria-hidden-focus.js | description": {
|
|
39
|
+
"message": "Focusable descendents within an `[aria-hidden=\"true\"]` element prevent those interactive elements from being available to users of assistive technologies like screen readers. [Learn how `aria-hidden` affects focusable elements](https://dequeuniversity.com/rules/axe/4.6/aria-hidden-focus)."
|
|
172
40
|
},
|
|
173
|
-
"
|
|
41
|
+
"core/audits/accessibility/aria-hidden-focus.js | failureTitle": {
|
|
174
42
|
"message": "`[aria-hidden=\"true\"]` elements contain focusable descendents"
|
|
175
43
|
},
|
|
176
|
-
"
|
|
44
|
+
"core/audits/accessibility/aria-hidden-focus.js | title": {
|
|
177
45
|
"message": "`[aria-hidden=\"true\"]` elements do not contain focusable descendents"
|
|
178
46
|
},
|
|
179
|
-
"
|
|
180
|
-
"message": "When an input field doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more](https://
|
|
47
|
+
"core/audits/accessibility/aria-input-field-name.js | description": {
|
|
48
|
+
"message": "When an input field doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more about input field labels](https://dequeuniversity.com/rules/axe/4.6/aria-input-field-name)."
|
|
181
49
|
},
|
|
182
|
-
"
|
|
50
|
+
"core/audits/accessibility/aria-input-field-name.js | failureTitle": {
|
|
183
51
|
"message": "ARIA input fields do not have accessible names"
|
|
184
52
|
},
|
|
185
|
-
"
|
|
53
|
+
"core/audits/accessibility/aria-input-field-name.js | title": {
|
|
186
54
|
"message": "ARIA input fields have accessible names"
|
|
187
55
|
},
|
|
188
|
-
"
|
|
189
|
-
"message": "When
|
|
56
|
+
"core/audits/accessibility/aria-meter-name.js | description": {
|
|
57
|
+
"message": "When a meter element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn how to name `meter` elements](https://dequeuniversity.com/rules/axe/4.6/aria-meter-name)."
|
|
190
58
|
},
|
|
191
|
-
"
|
|
59
|
+
"core/audits/accessibility/aria-meter-name.js | failureTitle": {
|
|
192
60
|
"message": "ARIA `meter` elements do not have accessible names."
|
|
193
61
|
},
|
|
194
|
-
"
|
|
62
|
+
"core/audits/accessibility/aria-meter-name.js | title": {
|
|
195
63
|
"message": "ARIA `meter` elements have accessible names"
|
|
196
64
|
},
|
|
197
|
-
"
|
|
198
|
-
"message": "When a `progressbar` element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn
|
|
65
|
+
"core/audits/accessibility/aria-progressbar-name.js | description": {
|
|
66
|
+
"message": "When a `progressbar` element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn how to label `progressbar` elements](https://dequeuniversity.com/rules/axe/4.6/aria-progressbar-name)."
|
|
199
67
|
},
|
|
200
|
-
"
|
|
68
|
+
"core/audits/accessibility/aria-progressbar-name.js | failureTitle": {
|
|
201
69
|
"message": "ARIA `progressbar` elements do not have accessible names."
|
|
202
70
|
},
|
|
203
|
-
"
|
|
71
|
+
"core/audits/accessibility/aria-progressbar-name.js | title": {
|
|
204
72
|
"message": "ARIA `progressbar` elements have accessible names"
|
|
205
73
|
},
|
|
206
|
-
"
|
|
207
|
-
"message": "Some ARIA roles have required attributes that describe the state of the element to screen readers. [Learn more](https://
|
|
74
|
+
"core/audits/accessibility/aria-required-attr.js | description": {
|
|
75
|
+
"message": "Some ARIA roles have required attributes that describe the state of the element to screen readers. [Learn more about roles and required attributes](https://dequeuniversity.com/rules/axe/4.6/aria-required-attr)."
|
|
208
76
|
},
|
|
209
|
-
"
|
|
77
|
+
"core/audits/accessibility/aria-required-attr.js | failureTitle": {
|
|
210
78
|
"message": "`[role]`s do not have all required `[aria-*]` attributes"
|
|
211
79
|
},
|
|
212
|
-
"
|
|
80
|
+
"core/audits/accessibility/aria-required-attr.js | title": {
|
|
213
81
|
"message": "`[role]`s have all required `[aria-*]` attributes"
|
|
214
82
|
},
|
|
215
|
-
"
|
|
216
|
-
"message": "Some ARIA parent roles must contain specific child roles to perform their intended accessibility functions. [Learn more](https://
|
|
83
|
+
"core/audits/accessibility/aria-required-children.js | description": {
|
|
84
|
+
"message": "Some ARIA parent roles must contain specific child roles to perform their intended accessibility functions. [Learn more about roles and required children elements](https://dequeuniversity.com/rules/axe/4.6/aria-required-children)."
|
|
217
85
|
},
|
|
218
|
-
"
|
|
86
|
+
"core/audits/accessibility/aria-required-children.js | failureTitle": {
|
|
219
87
|
"message": "Elements with an ARIA `[role]` that require children to contain a specific `[role]` are missing some or all of those required children."
|
|
220
88
|
},
|
|
221
|
-
"
|
|
89
|
+
"core/audits/accessibility/aria-required-children.js | title": {
|
|
222
90
|
"message": "Elements with an ARIA `[role]` that require children to contain a specific `[role]` have all required children."
|
|
223
91
|
},
|
|
224
|
-
"
|
|
225
|
-
"message": "Some ARIA child roles must be contained by specific parent roles to properly perform their intended accessibility functions. [Learn more](https://
|
|
92
|
+
"core/audits/accessibility/aria-required-parent.js | description": {
|
|
93
|
+
"message": "Some ARIA child roles must be contained by specific parent roles to properly perform their intended accessibility functions. [Learn more about ARIA roles and required parent element](https://dequeuniversity.com/rules/axe/4.6/aria-required-parent)."
|
|
226
94
|
},
|
|
227
|
-
"
|
|
95
|
+
"core/audits/accessibility/aria-required-parent.js | failureTitle": {
|
|
228
96
|
"message": "`[role]`s are not contained by their required parent element"
|
|
229
97
|
},
|
|
230
|
-
"
|
|
98
|
+
"core/audits/accessibility/aria-required-parent.js | title": {
|
|
231
99
|
"message": "`[role]`s are contained by their required parent element"
|
|
232
100
|
},
|
|
233
|
-
"
|
|
234
|
-
"message": "ARIA roles must have valid values in order to perform their intended accessibility functions. [Learn more](https://
|
|
101
|
+
"core/audits/accessibility/aria-roles.js | description": {
|
|
102
|
+
"message": "ARIA roles must have valid values in order to perform their intended accessibility functions. [Learn more about valid ARIA roles](https://dequeuniversity.com/rules/axe/4.6/aria-roles)."
|
|
235
103
|
},
|
|
236
|
-
"
|
|
104
|
+
"core/audits/accessibility/aria-roles.js | failureTitle": {
|
|
237
105
|
"message": "`[role]` values are not valid"
|
|
238
106
|
},
|
|
239
|
-
"
|
|
107
|
+
"core/audits/accessibility/aria-roles.js | title": {
|
|
240
108
|
"message": "`[role]` values are valid"
|
|
241
109
|
},
|
|
242
|
-
"
|
|
243
|
-
"message": "When a toggle field doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more](https://
|
|
110
|
+
"core/audits/accessibility/aria-toggle-field-name.js | description": {
|
|
111
|
+
"message": "When a toggle field doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more about toggle fields](https://dequeuniversity.com/rules/axe/4.6/aria-toggle-field-name)."
|
|
244
112
|
},
|
|
245
|
-
"
|
|
113
|
+
"core/audits/accessibility/aria-toggle-field-name.js | failureTitle": {
|
|
246
114
|
"message": "ARIA toggle fields do not have accessible names"
|
|
247
115
|
},
|
|
248
|
-
"
|
|
116
|
+
"core/audits/accessibility/aria-toggle-field-name.js | title": {
|
|
249
117
|
"message": "ARIA toggle fields have accessible names"
|
|
250
118
|
},
|
|
251
|
-
"
|
|
252
|
-
"message": "When
|
|
119
|
+
"core/audits/accessibility/aria-tooltip-name.js | description": {
|
|
120
|
+
"message": "When a tooltip element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn how to name `tooltip` elements](https://dequeuniversity.com/rules/axe/4.6/aria-tooltip-name)."
|
|
253
121
|
},
|
|
254
|
-
"
|
|
122
|
+
"core/audits/accessibility/aria-tooltip-name.js | failureTitle": {
|
|
255
123
|
"message": "ARIA `tooltip` elements do not have accessible names."
|
|
256
124
|
},
|
|
257
|
-
"
|
|
125
|
+
"core/audits/accessibility/aria-tooltip-name.js | title": {
|
|
258
126
|
"message": "ARIA `tooltip` elements have accessible names"
|
|
259
127
|
},
|
|
260
|
-
"
|
|
261
|
-
"message": "When
|
|
128
|
+
"core/audits/accessibility/aria-treeitem-name.js | description": {
|
|
129
|
+
"message": "When a `treeitem` element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more about labeling `treeitem` elements](https://dequeuniversity.com/rules/axe/4.6/aria-treeitem-name)."
|
|
262
130
|
},
|
|
263
|
-
"
|
|
131
|
+
"core/audits/accessibility/aria-treeitem-name.js | failureTitle": {
|
|
264
132
|
"message": "ARIA `treeitem` elements do not have accessible names."
|
|
265
133
|
},
|
|
266
|
-
"
|
|
134
|
+
"core/audits/accessibility/aria-treeitem-name.js | title": {
|
|
267
135
|
"message": "ARIA `treeitem` elements have accessible names"
|
|
268
136
|
},
|
|
269
|
-
"
|
|
270
|
-
"message": "Assistive technologies, like screen readers, can't interpret ARIA attributes with invalid values. [Learn more](https://
|
|
137
|
+
"core/audits/accessibility/aria-valid-attr-value.js | description": {
|
|
138
|
+
"message": "Assistive technologies, like screen readers, can't interpret ARIA attributes with invalid values. [Learn more about valid values for ARIA attributes](https://dequeuniversity.com/rules/axe/4.6/aria-valid-attr-value)."
|
|
271
139
|
},
|
|
272
|
-
"
|
|
140
|
+
"core/audits/accessibility/aria-valid-attr-value.js | failureTitle": {
|
|
273
141
|
"message": "`[aria-*]` attributes do not have valid values"
|
|
274
142
|
},
|
|
275
|
-
"
|
|
143
|
+
"core/audits/accessibility/aria-valid-attr-value.js | title": {
|
|
276
144
|
"message": "`[aria-*]` attributes have valid values"
|
|
277
145
|
},
|
|
278
|
-
"
|
|
279
|
-
"message": "Assistive technologies, like screen readers, can't interpret ARIA attributes with invalid names. [Learn more](https://
|
|
146
|
+
"core/audits/accessibility/aria-valid-attr.js | description": {
|
|
147
|
+
"message": "Assistive technologies, like screen readers, can't interpret ARIA attributes with invalid names. [Learn more about valid ARIA attributes](https://dequeuniversity.com/rules/axe/4.6/aria-valid-attr)."
|
|
280
148
|
},
|
|
281
|
-
"
|
|
149
|
+
"core/audits/accessibility/aria-valid-attr.js | failureTitle": {
|
|
282
150
|
"message": "`[aria-*]` attributes are not valid or misspelled"
|
|
283
151
|
},
|
|
284
|
-
"
|
|
152
|
+
"core/audits/accessibility/aria-valid-attr.js | title": {
|
|
285
153
|
"message": "`[aria-*]` attributes are valid and not misspelled"
|
|
286
154
|
},
|
|
287
|
-
"
|
|
155
|
+
"core/audits/accessibility/axe-audit.js | failingElementsHeader": {
|
|
288
156
|
"message": "Failing Elements"
|
|
289
157
|
},
|
|
290
|
-
"
|
|
291
|
-
"message": "When a button doesn't have an accessible name, screen readers announce it as \"button\", making it unusable for users who rely on screen readers. [Learn more](https://
|
|
158
|
+
"core/audits/accessibility/button-name.js | description": {
|
|
159
|
+
"message": "When a button doesn't have an accessible name, screen readers announce it as \"button\", making it unusable for users who rely on screen readers. [Learn how to make buttons more accessible](https://dequeuniversity.com/rules/axe/4.6/button-name)."
|
|
292
160
|
},
|
|
293
|
-
"
|
|
161
|
+
"core/audits/accessibility/button-name.js | failureTitle": {
|
|
294
162
|
"message": "Buttons do not have an accessible name"
|
|
295
163
|
},
|
|
296
|
-
"
|
|
164
|
+
"core/audits/accessibility/button-name.js | title": {
|
|
297
165
|
"message": "Buttons have an accessible name"
|
|
298
166
|
},
|
|
299
|
-
"
|
|
300
|
-
"message": "Adding ways to bypass repetitive content lets keyboard users navigate the page more efficiently. [Learn more](https://
|
|
167
|
+
"core/audits/accessibility/bypass.js | description": {
|
|
168
|
+
"message": "Adding ways to bypass repetitive content lets keyboard users navigate the page more efficiently. [Learn more about bypass blocks](https://dequeuniversity.com/rules/axe/4.6/bypass)."
|
|
301
169
|
},
|
|
302
|
-
"
|
|
170
|
+
"core/audits/accessibility/bypass.js | failureTitle": {
|
|
303
171
|
"message": "The page does not contain a heading, skip link, or landmark region"
|
|
304
172
|
},
|
|
305
|
-
"
|
|
173
|
+
"core/audits/accessibility/bypass.js | title": {
|
|
306
174
|
"message": "The page contains a heading, skip link, or landmark region"
|
|
307
175
|
},
|
|
308
|
-
"
|
|
309
|
-
"message": "Low-contrast text is difficult or impossible for many users to read. [Learn
|
|
176
|
+
"core/audits/accessibility/color-contrast.js | description": {
|
|
177
|
+
"message": "Low-contrast text is difficult or impossible for many users to read. [Learn how to provide sufficient color contrast](https://dequeuniversity.com/rules/axe/4.6/color-contrast)."
|
|
310
178
|
},
|
|
311
|
-
"
|
|
179
|
+
"core/audits/accessibility/color-contrast.js | failureTitle": {
|
|
312
180
|
"message": "Background and foreground colors do not have a sufficient contrast ratio."
|
|
313
181
|
},
|
|
314
|
-
"
|
|
182
|
+
"core/audits/accessibility/color-contrast.js | title": {
|
|
315
183
|
"message": "Background and foreground colors have a sufficient contrast ratio"
|
|
316
184
|
},
|
|
317
|
-
"
|
|
318
|
-
"message": "When definition lists are not properly marked up, screen readers may produce confusing or inaccurate output. [Learn
|
|
185
|
+
"core/audits/accessibility/definition-list.js | description": {
|
|
186
|
+
"message": "When definition lists are not properly marked up, screen readers may produce confusing or inaccurate output. [Learn how to structure definition lists correctly](https://dequeuniversity.com/rules/axe/4.6/definition-list)."
|
|
319
187
|
},
|
|
320
|
-
"
|
|
188
|
+
"core/audits/accessibility/definition-list.js | failureTitle": {
|
|
321
189
|
"message": "`<dl>`'s do not contain only properly-ordered `<dt>` and `<dd>` groups, `<script>`, `<template>` or `<div>` elements."
|
|
322
190
|
},
|
|
323
|
-
"
|
|
191
|
+
"core/audits/accessibility/definition-list.js | title": {
|
|
324
192
|
"message": "`<dl>`'s contain only properly-ordered `<dt>` and `<dd>` groups, `<script>`, `<template>` or `<div>` elements."
|
|
325
193
|
},
|
|
326
|
-
"
|
|
327
|
-
"message": "Definition list items (`<dt>` and `<dd>`) must be wrapped in a parent `<dl>` element to ensure that screen readers can properly announce them. [Learn
|
|
194
|
+
"core/audits/accessibility/dlitem.js | description": {
|
|
195
|
+
"message": "Definition list items (`<dt>` and `<dd>`) must be wrapped in a parent `<dl>` element to ensure that screen readers can properly announce them. [Learn how to structure definition lists correctly](https://dequeuniversity.com/rules/axe/4.6/dlitem)."
|
|
328
196
|
},
|
|
329
|
-
"
|
|
197
|
+
"core/audits/accessibility/dlitem.js | failureTitle": {
|
|
330
198
|
"message": "Definition list items are not wrapped in `<dl>` elements"
|
|
331
199
|
},
|
|
332
|
-
"
|
|
200
|
+
"core/audits/accessibility/dlitem.js | title": {
|
|
333
201
|
"message": "Definition list items are wrapped in `<dl>` elements"
|
|
334
202
|
},
|
|
335
|
-
"
|
|
336
|
-
"message": "The title gives screen reader users an overview of the page, and search engine users rely on it heavily to determine if a page is relevant to their search. [Learn more](https://
|
|
203
|
+
"core/audits/accessibility/document-title.js | description": {
|
|
204
|
+
"message": "The title gives screen reader users an overview of the page, and search engine users rely on it heavily to determine if a page is relevant to their search. [Learn more about document titles](https://dequeuniversity.com/rules/axe/4.6/document-title)."
|
|
337
205
|
},
|
|
338
|
-
"
|
|
206
|
+
"core/audits/accessibility/document-title.js | failureTitle": {
|
|
339
207
|
"message": "Document doesn't have a `<title>` element"
|
|
340
208
|
},
|
|
341
|
-
"
|
|
209
|
+
"core/audits/accessibility/document-title.js | title": {
|
|
342
210
|
"message": "Document has a `<title>` element"
|
|
343
211
|
},
|
|
344
|
-
"
|
|
345
|
-
"message": "All focusable elements must have a unique `id` to ensure that they're visible to assistive technologies. [Learn
|
|
212
|
+
"core/audits/accessibility/duplicate-id-active.js | description": {
|
|
213
|
+
"message": "All focusable elements must have a unique `id` to ensure that they're visible to assistive technologies. [Learn how to fix duplicate `id`s](https://dequeuniversity.com/rules/axe/4.6/duplicate-id-active)."
|
|
346
214
|
},
|
|
347
|
-
"
|
|
215
|
+
"core/audits/accessibility/duplicate-id-active.js | failureTitle": {
|
|
348
216
|
"message": "`[id]` attributes on active, focusable elements are not unique"
|
|
349
217
|
},
|
|
350
|
-
"
|
|
218
|
+
"core/audits/accessibility/duplicate-id-active.js | title": {
|
|
351
219
|
"message": "`[id]` attributes on active, focusable elements are unique"
|
|
352
220
|
},
|
|
353
|
-
"
|
|
354
|
-
"message": "The value of an ARIA ID must be unique to prevent other instances from being overlooked by assistive technologies. [Learn
|
|
221
|
+
"core/audits/accessibility/duplicate-id-aria.js | description": {
|
|
222
|
+
"message": "The value of an ARIA ID must be unique to prevent other instances from being overlooked by assistive technologies. [Learn how to fix duplicate ARIA IDs](https://dequeuniversity.com/rules/axe/4.6/duplicate-id-aria)."
|
|
355
223
|
},
|
|
356
|
-
"
|
|
224
|
+
"core/audits/accessibility/duplicate-id-aria.js | failureTitle": {
|
|
357
225
|
"message": "ARIA IDs are not unique"
|
|
358
226
|
},
|
|
359
|
-
"
|
|
227
|
+
"core/audits/accessibility/duplicate-id-aria.js | title": {
|
|
360
228
|
"message": "ARIA IDs are unique"
|
|
361
229
|
},
|
|
362
|
-
"
|
|
363
|
-
"message": "Form fields with multiple labels can be confusingly announced by assistive technologies like screen readers which use either the first, the last, or all of the labels. [Learn
|
|
230
|
+
"core/audits/accessibility/form-field-multiple-labels.js | description": {
|
|
231
|
+
"message": "Form fields with multiple labels can be confusingly announced by assistive technologies like screen readers which use either the first, the last, or all of the labels. [Learn how to use form labels](https://dequeuniversity.com/rules/axe/4.6/form-field-multiple-labels)."
|
|
364
232
|
},
|
|
365
|
-
"
|
|
233
|
+
"core/audits/accessibility/form-field-multiple-labels.js | failureTitle": {
|
|
366
234
|
"message": "Form fields have multiple labels"
|
|
367
235
|
},
|
|
368
|
-
"
|
|
236
|
+
"core/audits/accessibility/form-field-multiple-labels.js | title": {
|
|
369
237
|
"message": "No form fields have multiple labels"
|
|
370
238
|
},
|
|
371
|
-
"
|
|
372
|
-
"message": "Screen reader users rely on frame titles to describe the contents of frames. [Learn more](https://
|
|
239
|
+
"core/audits/accessibility/frame-title.js | description": {
|
|
240
|
+
"message": "Screen reader users rely on frame titles to describe the contents of frames. [Learn more about frame titles](https://dequeuniversity.com/rules/axe/4.6/frame-title)."
|
|
373
241
|
},
|
|
374
|
-
"
|
|
242
|
+
"core/audits/accessibility/frame-title.js | failureTitle": {
|
|
375
243
|
"message": "`<frame>` or `<iframe>` elements do not have a title"
|
|
376
244
|
},
|
|
377
|
-
"
|
|
245
|
+
"core/audits/accessibility/frame-title.js | title": {
|
|
378
246
|
"message": "`<frame>` or `<iframe>` elements have a title"
|
|
379
247
|
},
|
|
380
|
-
"
|
|
381
|
-
"message": "Properly ordered headings that do not skip levels convey the semantic structure of the page, making it easier to navigate and understand when using assistive technologies. [Learn more](https://
|
|
248
|
+
"core/audits/accessibility/heading-order.js | description": {
|
|
249
|
+
"message": "Properly ordered headings that do not skip levels convey the semantic structure of the page, making it easier to navigate and understand when using assistive technologies. [Learn more about heading order](https://dequeuniversity.com/rules/axe/4.6/heading-order)."
|
|
382
250
|
},
|
|
383
|
-
"
|
|
251
|
+
"core/audits/accessibility/heading-order.js | failureTitle": {
|
|
384
252
|
"message": "Heading elements are not in a sequentially-descending order"
|
|
385
253
|
},
|
|
386
|
-
"
|
|
254
|
+
"core/audits/accessibility/heading-order.js | title": {
|
|
387
255
|
"message": "Heading elements appear in a sequentially-descending order"
|
|
388
256
|
},
|
|
389
|
-
"
|
|
390
|
-
"message": "If a page doesn't specify a
|
|
257
|
+
"core/audits/accessibility/html-has-lang.js | description": {
|
|
258
|
+
"message": "If a page doesn't specify a `lang` attribute, a screen reader assumes that the page is in the default language that the user chose when setting up the screen reader. If the page isn't actually in the default language, then the screen reader might not announce the page's text correctly. [Learn more about the `lang` attribute](https://dequeuniversity.com/rules/axe/4.6/html-has-lang)."
|
|
391
259
|
},
|
|
392
|
-
"
|
|
260
|
+
"core/audits/accessibility/html-has-lang.js | failureTitle": {
|
|
393
261
|
"message": "`<html>` element does not have a `[lang]` attribute"
|
|
394
262
|
},
|
|
395
|
-
"
|
|
263
|
+
"core/audits/accessibility/html-has-lang.js | title": {
|
|
396
264
|
"message": "`<html>` element has a `[lang]` attribute"
|
|
397
265
|
},
|
|
398
|
-
"
|
|
399
|
-
"message": "Specifying a valid [BCP 47 language](https://www.w3.org/International/questions/qa-choosing-language-tags#question) helps screen readers announce text properly. [Learn
|
|
266
|
+
"core/audits/accessibility/html-lang-valid.js | description": {
|
|
267
|
+
"message": "Specifying a valid [BCP 47 language](https://www.w3.org/International/questions/qa-choosing-language-tags#question) helps screen readers announce text properly. [Learn how to use the `lang` attribute](https://dequeuniversity.com/rules/axe/4.6/html-lang-valid)."
|
|
400
268
|
},
|
|
401
|
-
"
|
|
269
|
+
"core/audits/accessibility/html-lang-valid.js | failureTitle": {
|
|
402
270
|
"message": "`<html>` element does not have a valid value for its `[lang]` attribute."
|
|
403
271
|
},
|
|
404
|
-
"
|
|
272
|
+
"core/audits/accessibility/html-lang-valid.js | title": {
|
|
405
273
|
"message": "`<html>` element has a valid value for its `[lang]` attribute"
|
|
406
274
|
},
|
|
407
|
-
"
|
|
408
|
-
"message": "Informative elements should aim for short, descriptive alternate text. Decorative elements can be ignored with an empty alt attribute. [Learn more](https://
|
|
275
|
+
"core/audits/accessibility/image-alt.js | description": {
|
|
276
|
+
"message": "Informative elements should aim for short, descriptive alternate text. Decorative elements can be ignored with an empty alt attribute. [Learn more about the `alt` attribute](https://dequeuniversity.com/rules/axe/4.6/image-alt)."
|
|
409
277
|
},
|
|
410
|
-
"
|
|
278
|
+
"core/audits/accessibility/image-alt.js | failureTitle": {
|
|
411
279
|
"message": "Image elements do not have `[alt]` attributes"
|
|
412
280
|
},
|
|
413
|
-
"
|
|
281
|
+
"core/audits/accessibility/image-alt.js | title": {
|
|
414
282
|
"message": "Image elements have `[alt]` attributes"
|
|
415
283
|
},
|
|
416
|
-
"
|
|
417
|
-
"message": "When an image is being used as an `<input>` button, providing alternative text can help screen reader users understand the purpose of the button. [Learn
|
|
284
|
+
"core/audits/accessibility/input-image-alt.js | description": {
|
|
285
|
+
"message": "When an image is being used as an `<input>` button, providing alternative text can help screen reader users understand the purpose of the button. [Learn about input image alt text](https://dequeuniversity.com/rules/axe/4.6/input-image-alt)."
|
|
418
286
|
},
|
|
419
|
-
"
|
|
287
|
+
"core/audits/accessibility/input-image-alt.js | failureTitle": {
|
|
420
288
|
"message": "`<input type=\"image\">` elements do not have `[alt]` text"
|
|
421
289
|
},
|
|
422
|
-
"
|
|
290
|
+
"core/audits/accessibility/input-image-alt.js | title": {
|
|
423
291
|
"message": "`<input type=\"image\">` elements have `[alt]` text"
|
|
424
292
|
},
|
|
425
|
-
"
|
|
426
|
-
"message": "Labels ensure that form controls are announced properly by assistive technologies, like screen readers. [Learn more](https://
|
|
293
|
+
"core/audits/accessibility/label.js | description": {
|
|
294
|
+
"message": "Labels ensure that form controls are announced properly by assistive technologies, like screen readers. [Learn more about form element labels](https://dequeuniversity.com/rules/axe/4.6/label)."
|
|
427
295
|
},
|
|
428
|
-
"
|
|
296
|
+
"core/audits/accessibility/label.js | failureTitle": {
|
|
429
297
|
"message": "Form elements do not have associated labels"
|
|
430
298
|
},
|
|
431
|
-
"
|
|
299
|
+
"core/audits/accessibility/label.js | title": {
|
|
432
300
|
"message": "Form elements have associated labels"
|
|
433
301
|
},
|
|
434
|
-
"
|
|
435
|
-
"message": "Link text (and alternate text for images, when used as links) that is discernible, unique, and focusable improves the navigation experience for screen reader users. [Learn
|
|
302
|
+
"core/audits/accessibility/link-name.js | description": {
|
|
303
|
+
"message": "Link text (and alternate text for images, when used as links) that is discernible, unique, and focusable improves the navigation experience for screen reader users. [Learn how to make links accessible](https://dequeuniversity.com/rules/axe/4.6/link-name)."
|
|
436
304
|
},
|
|
437
|
-
"
|
|
305
|
+
"core/audits/accessibility/link-name.js | failureTitle": {
|
|
438
306
|
"message": "Links do not have a discernible name"
|
|
439
307
|
},
|
|
440
|
-
"
|
|
308
|
+
"core/audits/accessibility/link-name.js | title": {
|
|
441
309
|
"message": "Links have a discernible name"
|
|
442
310
|
},
|
|
443
|
-
"
|
|
444
|
-
"message": "Screen readers have a specific way of announcing lists. Ensuring proper list structure aids screen reader output. [Learn more](https://
|
|
311
|
+
"core/audits/accessibility/list.js | description": {
|
|
312
|
+
"message": "Screen readers have a specific way of announcing lists. Ensuring proper list structure aids screen reader output. [Learn more about proper list structure](https://dequeuniversity.com/rules/axe/4.6/list)."
|
|
445
313
|
},
|
|
446
|
-
"
|
|
314
|
+
"core/audits/accessibility/list.js | failureTitle": {
|
|
447
315
|
"message": "Lists do not contain only `<li>` elements and script supporting elements (`<script>` and `<template>`)."
|
|
448
316
|
},
|
|
449
|
-
"
|
|
317
|
+
"core/audits/accessibility/list.js | title": {
|
|
450
318
|
"message": "Lists contain only `<li>` elements and script supporting elements (`<script>` and `<template>`)."
|
|
451
319
|
},
|
|
452
|
-
"
|
|
453
|
-
"message": "Screen readers require list items (`<li>`) to be contained within a parent `<ul>` or `<
|
|
320
|
+
"core/audits/accessibility/listitem.js | description": {
|
|
321
|
+
"message": "Screen readers require list items (`<li>`) to be contained within a parent `<ul>`, `<ol>` or `<menu>` to be announced properly. [Learn more about proper list structure](https://dequeuniversity.com/rules/axe/4.6/listitem)."
|
|
454
322
|
},
|
|
455
|
-
"
|
|
456
|
-
"message": "List items (`<li>`) are not contained within `<ul>` or `<
|
|
323
|
+
"core/audits/accessibility/listitem.js | failureTitle": {
|
|
324
|
+
"message": "List items (`<li>`) are not contained within `<ul>`, `<ol>` or `<menu>` parent elements."
|
|
457
325
|
},
|
|
458
|
-
"
|
|
459
|
-
"message": "List items (`<li>`) are contained within `<ul>` or `<
|
|
326
|
+
"core/audits/accessibility/listitem.js | title": {
|
|
327
|
+
"message": "List items (`<li>`) are contained within `<ul>`, `<ol>` or `<menu>` parent elements"
|
|
460
328
|
},
|
|
461
|
-
"
|
|
462
|
-
"message": "Users do not expect a page to refresh automatically, and doing so will move focus back to the top of the page. This may create a frustrating or confusing experience. [Learn more](https://
|
|
329
|
+
"core/audits/accessibility/meta-refresh.js | description": {
|
|
330
|
+
"message": "Users do not expect a page to refresh automatically, and doing so will move focus back to the top of the page. This may create a frustrating or confusing experience. [Learn more about the refresh meta tag](https://dequeuniversity.com/rules/axe/4.6/meta-refresh)."
|
|
463
331
|
},
|
|
464
|
-
"
|
|
332
|
+
"core/audits/accessibility/meta-refresh.js | failureTitle": {
|
|
465
333
|
"message": "The document uses `<meta http-equiv=\"refresh\">`"
|
|
466
334
|
},
|
|
467
|
-
"
|
|
335
|
+
"core/audits/accessibility/meta-refresh.js | title": {
|
|
468
336
|
"message": "The document does not use `<meta http-equiv=\"refresh\">`"
|
|
469
337
|
},
|
|
470
|
-
"
|
|
471
|
-
"message": "Disabling zooming is problematic for users with low vision who rely on screen magnification to properly see the contents of a web page. [Learn more](https://
|
|
338
|
+
"core/audits/accessibility/meta-viewport.js | description": {
|
|
339
|
+
"message": "Disabling zooming is problematic for users with low vision who rely on screen magnification to properly see the contents of a web page. [Learn more about the viewport meta tag](https://dequeuniversity.com/rules/axe/4.6/meta-viewport)."
|
|
472
340
|
},
|
|
473
|
-
"
|
|
341
|
+
"core/audits/accessibility/meta-viewport.js | failureTitle": {
|
|
474
342
|
"message": "`[user-scalable=\"no\"]` is used in the `<meta name=\"viewport\">` element or the `[maximum-scale]` attribute is less than 5."
|
|
475
343
|
},
|
|
476
|
-
"
|
|
344
|
+
"core/audits/accessibility/meta-viewport.js | title": {
|
|
477
345
|
"message": "`[user-scalable=\"no\"]` is not used in the `<meta name=\"viewport\">` element and the `[maximum-scale]` attribute is not less than 5."
|
|
478
346
|
},
|
|
479
|
-
"
|
|
480
|
-
"message": "Screen readers cannot translate non-text content. Adding alternate text to `<object>` elements helps screen readers convey meaning to users. [Learn more](https://
|
|
347
|
+
"core/audits/accessibility/object-alt.js | description": {
|
|
348
|
+
"message": "Screen readers cannot translate non-text content. Adding alternate text to `<object>` elements helps screen readers convey meaning to users. [Learn more about alt text for `object` elements](https://dequeuniversity.com/rules/axe/4.6/object-alt)."
|
|
481
349
|
},
|
|
482
|
-
"
|
|
350
|
+
"core/audits/accessibility/object-alt.js | failureTitle": {
|
|
483
351
|
"message": "`<object>` elements do not have alternate text"
|
|
484
352
|
},
|
|
485
|
-
"
|
|
353
|
+
"core/audits/accessibility/object-alt.js | title": {
|
|
486
354
|
"message": "`<object>` elements have alternate text"
|
|
487
355
|
},
|
|
488
|
-
"
|
|
489
|
-
"message": "A value greater than 0 implies an explicit navigation ordering. Although technically valid, this often creates frustrating experiences for users who rely on assistive technologies. [Learn more](https://
|
|
356
|
+
"core/audits/accessibility/tabindex.js | description": {
|
|
357
|
+
"message": "A value greater than 0 implies an explicit navigation ordering. Although technically valid, this often creates frustrating experiences for users who rely on assistive technologies. [Learn more about the `tabindex` attribute](https://dequeuniversity.com/rules/axe/4.6/tabindex)."
|
|
490
358
|
},
|
|
491
|
-
"
|
|
359
|
+
"core/audits/accessibility/tabindex.js | failureTitle": {
|
|
492
360
|
"message": "Some elements have a `[tabindex]` value greater than 0"
|
|
493
361
|
},
|
|
494
|
-
"
|
|
362
|
+
"core/audits/accessibility/tabindex.js | title": {
|
|
495
363
|
"message": "No element has a `[tabindex]` value greater than 0"
|
|
496
364
|
},
|
|
497
|
-
"
|
|
498
|
-
"message": "Screen readers have features to make navigating tables easier. Ensuring `<td>` cells using the `[headers]` attribute only refer to other cells in the same table may improve the experience for screen reader users. [Learn more](https://
|
|
365
|
+
"core/audits/accessibility/td-headers-attr.js | description": {
|
|
366
|
+
"message": "Screen readers have features to make navigating tables easier. Ensuring `<td>` cells using the `[headers]` attribute only refer to other cells in the same table may improve the experience for screen reader users. [Learn more about the `headers` attribute](https://dequeuniversity.com/rules/axe/4.6/td-headers-attr)."
|
|
499
367
|
},
|
|
500
|
-
"
|
|
368
|
+
"core/audits/accessibility/td-headers-attr.js | failureTitle": {
|
|
501
369
|
"message": "Cells in a `<table>` element that use the `[headers]` attribute refer to an element `id` not found within the same table."
|
|
502
370
|
},
|
|
503
|
-
"
|
|
371
|
+
"core/audits/accessibility/td-headers-attr.js | title": {
|
|
504
372
|
"message": "Cells in a `<table>` element that use the `[headers]` attribute refer to table cells within the same table."
|
|
505
373
|
},
|
|
506
|
-
"
|
|
507
|
-
"message": "Screen readers have features to make navigating tables easier. Ensuring table headers always refer to some set of cells may improve the experience for screen reader users. [Learn more](https://
|
|
374
|
+
"core/audits/accessibility/th-has-data-cells.js | description": {
|
|
375
|
+
"message": "Screen readers have features to make navigating tables easier. Ensuring table headers always refer to some set of cells may improve the experience for screen reader users. [Learn more about table headers](https://dequeuniversity.com/rules/axe/4.6/th-has-data-cells)."
|
|
508
376
|
},
|
|
509
|
-
"
|
|
377
|
+
"core/audits/accessibility/th-has-data-cells.js | failureTitle": {
|
|
510
378
|
"message": "`<th>` elements and elements with `[role=\"columnheader\"/\"rowheader\"]` do not have data cells they describe."
|
|
511
379
|
},
|
|
512
|
-
"
|
|
380
|
+
"core/audits/accessibility/th-has-data-cells.js | title": {
|
|
513
381
|
"message": "`<th>` elements and elements with `[role=\"columnheader\"/\"rowheader\"]` have data cells they describe."
|
|
514
382
|
},
|
|
515
|
-
"
|
|
516
|
-
"message": "Specifying a valid [BCP 47 language](https://www.w3.org/International/questions/qa-choosing-language-tags#question) on elements helps ensure that text is pronounced correctly by a screen reader. [Learn
|
|
383
|
+
"core/audits/accessibility/valid-lang.js | description": {
|
|
384
|
+
"message": "Specifying a valid [BCP 47 language](https://www.w3.org/International/questions/qa-choosing-language-tags#question) on elements helps ensure that text is pronounced correctly by a screen reader. [Learn how to use the `lang` attribute](https://dequeuniversity.com/rules/axe/4.6/valid-lang)."
|
|
517
385
|
},
|
|
518
|
-
"
|
|
386
|
+
"core/audits/accessibility/valid-lang.js | failureTitle": {
|
|
519
387
|
"message": "`[lang]` attributes do not have a valid value"
|
|
520
388
|
},
|
|
521
|
-
"
|
|
389
|
+
"core/audits/accessibility/valid-lang.js | title": {
|
|
522
390
|
"message": "`[lang]` attributes have a valid value"
|
|
523
391
|
},
|
|
524
|
-
"
|
|
525
|
-
"message": "When a video provides a caption it is easier for deaf and hearing impaired users to access its information. [Learn more](https://
|
|
392
|
+
"core/audits/accessibility/video-caption.js | description": {
|
|
393
|
+
"message": "When a video provides a caption it is easier for deaf and hearing impaired users to access its information. [Learn more about video captions](https://dequeuniversity.com/rules/axe/4.6/video-caption)."
|
|
526
394
|
},
|
|
527
|
-
"
|
|
395
|
+
"core/audits/accessibility/video-caption.js | failureTitle": {
|
|
528
396
|
"message": "`<video>` elements do not contain a `<track>` element with `[kind=\"captions\"]`."
|
|
529
397
|
},
|
|
530
|
-
"
|
|
398
|
+
"core/audits/accessibility/video-caption.js | title": {
|
|
531
399
|
"message": "`<video>` elements contain a `<track>` element with `[kind=\"captions\"]`"
|
|
532
400
|
},
|
|
533
|
-
"
|
|
534
|
-
"message": "For ideal appearance on iOS when users add a progressive web app to the home screen, define an `apple-touch-icon`. It must point to a non-transparent 192px (or 180px) square PNG. [Learn More](https://web.dev/apple-touch-icon/)."
|
|
535
|
-
},
|
|
536
|
-
"lighthouse-core/audits/apple-touch-icon.js | failureTitle": {
|
|
537
|
-
"message": "Does not provide a valid `apple-touch-icon`"
|
|
538
|
-
},
|
|
539
|
-
"lighthouse-core/audits/apple-touch-icon.js | precomposedWarning": {
|
|
540
|
-
"message": "`apple-touch-icon-precomposed` is out of date; `apple-touch-icon` is preferred."
|
|
541
|
-
},
|
|
542
|
-
"lighthouse-core/audits/apple-touch-icon.js | title": {
|
|
543
|
-
"message": "Provides a valid `apple-touch-icon`"
|
|
544
|
-
},
|
|
545
|
-
"lighthouse-core/audits/autocomplete.js | columnCurrent": {
|
|
401
|
+
"core/audits/autocomplete.js | columnCurrent": {
|
|
546
402
|
"message": "Current Value"
|
|
547
403
|
},
|
|
548
|
-
"
|
|
404
|
+
"core/audits/autocomplete.js | columnSuggestions": {
|
|
549
405
|
"message": "Suggested Token"
|
|
550
406
|
},
|
|
551
|
-
"
|
|
552
|
-
"message": "`autocomplete` helps users submit forms quicker. To reduce user effort, consider enabling by setting the `autocomplete` attribute to a valid value. [Learn more](https://developers.google.com/web/fundamentals/design-and-ux/input/forms#use_metadata_to_enable_auto-complete)"
|
|
407
|
+
"core/audits/autocomplete.js | description": {
|
|
408
|
+
"message": "`autocomplete` helps users submit forms quicker. To reduce user effort, consider enabling by setting the `autocomplete` attribute to a valid value. [Learn more about `autocomplete` in forms](https://developers.google.com/web/fundamentals/design-and-ux/input/forms#use_metadata_to_enable_auto-complete)"
|
|
553
409
|
},
|
|
554
|
-
"
|
|
410
|
+
"core/audits/autocomplete.js | failureTitle": {
|
|
555
411
|
"message": "`<input>` elements do not have correct `autocomplete` attributes"
|
|
556
412
|
},
|
|
557
|
-
"
|
|
413
|
+
"core/audits/autocomplete.js | manualReview": {
|
|
558
414
|
"message": "Requires manual review"
|
|
559
415
|
},
|
|
560
|
-
"
|
|
416
|
+
"core/audits/autocomplete.js | reviewOrder": {
|
|
561
417
|
"message": "Review order of tokens"
|
|
562
418
|
},
|
|
563
|
-
"
|
|
419
|
+
"core/audits/autocomplete.js | title": {
|
|
564
420
|
"message": "`<input>` elements correctly use `autocomplete`"
|
|
565
421
|
},
|
|
566
|
-
"
|
|
422
|
+
"core/audits/autocomplete.js | warningInvalid": {
|
|
567
423
|
"message": "`autocomplete` token(s): \"{token}\" is invalid in {snippet}"
|
|
568
424
|
},
|
|
569
|
-
"
|
|
425
|
+
"core/audits/autocomplete.js | warningOrder": {
|
|
570
426
|
"message": "Review order of tokens: \"{tokens}\" in {snippet}"
|
|
571
427
|
},
|
|
572
|
-
"
|
|
428
|
+
"core/audits/bf-cache.js | actionableFailureType": {
|
|
429
|
+
"message": "Actionable"
|
|
430
|
+
},
|
|
431
|
+
"core/audits/bf-cache.js | description": {
|
|
432
|
+
"message": "Many navigations are performed by going back to a previous page, or forwards again. The back/forward cache (bfcache) can speed up these return navigations. [Learn more about the bfcache](https://developer.chrome.com/docs/lighthouse/performance/bf-cache/)"
|
|
433
|
+
},
|
|
434
|
+
"core/audits/bf-cache.js | displayValue": {
|
|
435
|
+
"message": "{itemCount,plural, =1{1 failure reason}zero{# failure reasons}two{# failure reasons}few{# failure reasons}many{# failure reasons}other{# failure reasons}}"
|
|
436
|
+
},
|
|
437
|
+
"core/audits/bf-cache.js | failureReasonColumn": {
|
|
438
|
+
"message": "Failure reason"
|
|
439
|
+
},
|
|
440
|
+
"core/audits/bf-cache.js | failureTitle": {
|
|
441
|
+
"message": "Page prevented back/forward cache restoration"
|
|
442
|
+
},
|
|
443
|
+
"core/audits/bf-cache.js | failureTypeColumn": {
|
|
444
|
+
"message": "Failure type"
|
|
445
|
+
},
|
|
446
|
+
"core/audits/bf-cache.js | notActionableFailureType": {
|
|
447
|
+
"message": "Not actionable"
|
|
448
|
+
},
|
|
449
|
+
"core/audits/bf-cache.js | supportPendingFailureType": {
|
|
450
|
+
"message": "Pending browser support"
|
|
451
|
+
},
|
|
452
|
+
"core/audits/bf-cache.js | title": {
|
|
453
|
+
"message": "Page didn't prevent back/forward cache restoration"
|
|
454
|
+
},
|
|
455
|
+
"core/audits/bootup-time.js | chromeExtensionsWarning": {
|
|
573
456
|
"message": "Chrome extensions negatively affected this page's load performance. Try auditing the page in incognito mode or from a Chrome profile without extensions."
|
|
574
457
|
},
|
|
575
|
-
"
|
|
458
|
+
"core/audits/bootup-time.js | columnScriptEval": {
|
|
576
459
|
"message": "Script Evaluation"
|
|
577
460
|
},
|
|
578
|
-
"
|
|
461
|
+
"core/audits/bootup-time.js | columnScriptParse": {
|
|
579
462
|
"message": "Script Parse"
|
|
580
463
|
},
|
|
581
|
-
"
|
|
464
|
+
"core/audits/bootup-time.js | columnTotal": {
|
|
582
465
|
"message": "Total CPU Time"
|
|
583
466
|
},
|
|
584
|
-
"
|
|
585
|
-
"message": "Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. [Learn
|
|
467
|
+
"core/audits/bootup-time.js | description": {
|
|
468
|
+
"message": "Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. [Learn how to reduce Javascript execution time](https://developer.chrome.com/docs/lighthouse/performance/bootup-time/)."
|
|
586
469
|
},
|
|
587
|
-
"
|
|
470
|
+
"core/audits/bootup-time.js | failureTitle": {
|
|
588
471
|
"message": "Reduce JavaScript execution time"
|
|
589
472
|
},
|
|
590
|
-
"
|
|
473
|
+
"core/audits/bootup-time.js | title": {
|
|
591
474
|
"message": "JavaScript execution time"
|
|
592
475
|
},
|
|
593
|
-
"
|
|
476
|
+
"core/audits/byte-efficiency/duplicated-javascript.js | description": {
|
|
594
477
|
"message": "Remove large, duplicate JavaScript modules from bundles to reduce unnecessary bytes consumed by network activity. "
|
|
595
478
|
},
|
|
596
|
-
"
|
|
479
|
+
"core/audits/byte-efficiency/duplicated-javascript.js | title": {
|
|
597
480
|
"message": "Remove duplicate modules in JavaScript bundles"
|
|
598
481
|
},
|
|
599
|
-
"
|
|
600
|
-
"message": "Large GIFs are inefficient for delivering animated content. Consider using MPEG4/WebM videos for animations and PNG/WebP for static images instead of GIF to save network bytes. [Learn more](https://
|
|
482
|
+
"core/audits/byte-efficiency/efficient-animated-content.js | description": {
|
|
483
|
+
"message": "Large GIFs are inefficient for delivering animated content. Consider using MPEG4/WebM videos for animations and PNG/WebP for static images instead of GIF to save network bytes. [Learn more about efficient video formats](https://developer.chrome.com/docs/lighthouse/performance/efficient-animated-content/)"
|
|
601
484
|
},
|
|
602
|
-
"
|
|
485
|
+
"core/audits/byte-efficiency/efficient-animated-content.js | title": {
|
|
603
486
|
"message": "Use video formats for animated content"
|
|
604
487
|
},
|
|
605
|
-
"
|
|
606
|
-
"message": "Polyfills and transforms enable legacy browsers to use new JavaScript features. However, many aren't necessary for modern browsers. For your bundled JavaScript, adopt a modern script deployment strategy using module/nomodule feature detection to reduce the amount of code shipped to modern browsers, while retaining support for legacy browsers. [Learn
|
|
488
|
+
"core/audits/byte-efficiency/legacy-javascript.js | description": {
|
|
489
|
+
"message": "Polyfills and transforms enable legacy browsers to use new JavaScript features. However, many aren't necessary for modern browsers. For your bundled JavaScript, adopt a modern script deployment strategy using module/nomodule feature detection to reduce the amount of code shipped to modern browsers, while retaining support for legacy browsers. [Learn how to use modern JavaScript](https://web.dev/publish-modern-javascript/)"
|
|
607
490
|
},
|
|
608
|
-
"
|
|
491
|
+
"core/audits/byte-efficiency/legacy-javascript.js | title": {
|
|
609
492
|
"message": "Avoid serving legacy JavaScript to modern browsers"
|
|
610
493
|
},
|
|
611
|
-
"
|
|
612
|
-
"message": "Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more](https://
|
|
494
|
+
"core/audits/byte-efficiency/modern-image-formats.js | description": {
|
|
495
|
+
"message": "Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/)."
|
|
613
496
|
},
|
|
614
|
-
"
|
|
497
|
+
"core/audits/byte-efficiency/modern-image-formats.js | title": {
|
|
615
498
|
"message": "Serve images in next-gen formats"
|
|
616
499
|
},
|
|
617
|
-
"
|
|
618
|
-
"message": "Consider lazy-loading offscreen and hidden images after all critical resources have finished loading to lower time to interactive. [Learn
|
|
500
|
+
"core/audits/byte-efficiency/offscreen-images.js | description": {
|
|
501
|
+
"message": "Consider lazy-loading offscreen and hidden images after all critical resources have finished loading to lower time to interactive. [Learn how to defer offscreen images](https://developer.chrome.com/docs/lighthouse/performance/offscreen-images/)."
|
|
619
502
|
},
|
|
620
|
-
"
|
|
503
|
+
"core/audits/byte-efficiency/offscreen-images.js | title": {
|
|
621
504
|
"message": "Defer offscreen images"
|
|
622
505
|
},
|
|
623
|
-
"
|
|
624
|
-
"message": "Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn
|
|
506
|
+
"core/audits/byte-efficiency/render-blocking-resources.js | description": {
|
|
507
|
+
"message": "Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/)."
|
|
625
508
|
},
|
|
626
|
-
"
|
|
509
|
+
"core/audits/byte-efficiency/render-blocking-resources.js | title": {
|
|
627
510
|
"message": "Eliminate render-blocking resources"
|
|
628
511
|
},
|
|
629
|
-
"
|
|
630
|
-
"message": "Large network payloads cost users real money and are highly correlated with long load times. [Learn
|
|
512
|
+
"core/audits/byte-efficiency/total-byte-weight.js | description": {
|
|
513
|
+
"message": "Large network payloads cost users real money and are highly correlated with long load times. [Learn how to reduce payload sizes](https://developer.chrome.com/docs/lighthouse/performance/total-byte-weight/)."
|
|
631
514
|
},
|
|
632
|
-
"
|
|
515
|
+
"core/audits/byte-efficiency/total-byte-weight.js | displayValue": {
|
|
633
516
|
"message": "Total size was {totalBytes, number, bytes} KiB"
|
|
634
517
|
},
|
|
635
|
-
"
|
|
518
|
+
"core/audits/byte-efficiency/total-byte-weight.js | failureTitle": {
|
|
636
519
|
"message": "Avoid enormous network payloads"
|
|
637
520
|
},
|
|
638
|
-
"
|
|
521
|
+
"core/audits/byte-efficiency/total-byte-weight.js | title": {
|
|
639
522
|
"message": "Avoids enormous network payloads"
|
|
640
523
|
},
|
|
641
|
-
"
|
|
642
|
-
"message": "Minifying CSS files can reduce network payload sizes. [Learn
|
|
524
|
+
"core/audits/byte-efficiency/unminified-css.js | description": {
|
|
525
|
+
"message": "Minifying CSS files can reduce network payload sizes. [Learn how to minify CSS](https://developer.chrome.com/docs/lighthouse/performance/unminified-css/)."
|
|
643
526
|
},
|
|
644
|
-
"
|
|
527
|
+
"core/audits/byte-efficiency/unminified-css.js | title": {
|
|
645
528
|
"message": "Minify CSS"
|
|
646
529
|
},
|
|
647
|
-
"
|
|
648
|
-
"message": "Minifying JavaScript files can reduce payload sizes and script parse time. [Learn
|
|
530
|
+
"core/audits/byte-efficiency/unminified-javascript.js | description": {
|
|
531
|
+
"message": "Minifying JavaScript files can reduce payload sizes and script parse time. [Learn how to minify JavaScript](https://developer.chrome.com/docs/lighthouse/performance/unminified-javascript/)."
|
|
649
532
|
},
|
|
650
|
-
"
|
|
533
|
+
"core/audits/byte-efficiency/unminified-javascript.js | title": {
|
|
651
534
|
"message": "Minify JavaScript"
|
|
652
535
|
},
|
|
653
|
-
"
|
|
654
|
-
"message": "Reduce unused rules from stylesheets and defer CSS not used for above-the-fold content to decrease bytes consumed by network activity. [Learn
|
|
536
|
+
"core/audits/byte-efficiency/unused-css-rules.js | description": {
|
|
537
|
+
"message": "Reduce unused rules from stylesheets and defer CSS not used for above-the-fold content to decrease bytes consumed by network activity. [Learn how to reduce unused CSS](https://developer.chrome.com/docs/lighthouse/performance/unused-css-rules/)."
|
|
655
538
|
},
|
|
656
|
-
"
|
|
539
|
+
"core/audits/byte-efficiency/unused-css-rules.js | title": {
|
|
657
540
|
"message": "Reduce unused CSS"
|
|
658
541
|
},
|
|
659
|
-
"
|
|
660
|
-
"message": "Reduce unused JavaScript and defer loading scripts until they are required to decrease bytes consumed by network activity. [Learn
|
|
542
|
+
"core/audits/byte-efficiency/unused-javascript.js | description": {
|
|
543
|
+
"message": "Reduce unused JavaScript and defer loading scripts until they are required to decrease bytes consumed by network activity. [Learn how to reduce unused JavaScript](https://developer.chrome.com/docs/lighthouse/performance/unused-javascript/)."
|
|
661
544
|
},
|
|
662
|
-
"
|
|
545
|
+
"core/audits/byte-efficiency/unused-javascript.js | title": {
|
|
663
546
|
"message": "Reduce unused JavaScript"
|
|
664
547
|
},
|
|
665
|
-
"
|
|
666
|
-
"message": "A long cache lifetime can speed up repeat visits to your page. [Learn more](https://
|
|
548
|
+
"core/audits/byte-efficiency/uses-long-cache-ttl.js | description": {
|
|
549
|
+
"message": "A long cache lifetime can speed up repeat visits to your page. [Learn more about efficient cache policies](https://developer.chrome.com/docs/lighthouse/performance/uses-long-cache-ttl/)."
|
|
667
550
|
},
|
|
668
|
-
"
|
|
551
|
+
"core/audits/byte-efficiency/uses-long-cache-ttl.js | displayValue": {
|
|
669
552
|
"message": "{itemCount,plural, =1{1 resource found}zero{# resources found}two{# resources found}few{# resources found}many{# resources found}other{# resources found}}"
|
|
670
553
|
},
|
|
671
|
-
"
|
|
554
|
+
"core/audits/byte-efficiency/uses-long-cache-ttl.js | failureTitle": {
|
|
672
555
|
"message": "Serve static assets with an efficient cache policy"
|
|
673
556
|
},
|
|
674
|
-
"
|
|
557
|
+
"core/audits/byte-efficiency/uses-long-cache-ttl.js | title": {
|
|
675
558
|
"message": "Uses efficient cache policy on static assets"
|
|
676
559
|
},
|
|
677
|
-
"
|
|
678
|
-
"message": "Optimized images load faster and consume less cellular data. [Learn
|
|
560
|
+
"core/audits/byte-efficiency/uses-optimized-images.js | description": {
|
|
561
|
+
"message": "Optimized images load faster and consume less cellular data. [Learn how to efficiently encode images](https://developer.chrome.com/docs/lighthouse/performance/uses-optimized-images/)."
|
|
679
562
|
},
|
|
680
|
-
"
|
|
563
|
+
"core/audits/byte-efficiency/uses-optimized-images.js | title": {
|
|
681
564
|
"message": "Efficiently encode images"
|
|
682
565
|
},
|
|
683
|
-
"
|
|
566
|
+
"core/audits/byte-efficiency/uses-responsive-images-snapshot.js | columnActualDimensions": {
|
|
684
567
|
"message": "Actual dimensions"
|
|
685
568
|
},
|
|
686
|
-
"
|
|
569
|
+
"core/audits/byte-efficiency/uses-responsive-images-snapshot.js | columnDisplayedDimensions": {
|
|
687
570
|
"message": "Displayed dimensions"
|
|
688
571
|
},
|
|
689
|
-
"
|
|
572
|
+
"core/audits/byte-efficiency/uses-responsive-images-snapshot.js | failureTitle": {
|
|
690
573
|
"message": "Images were larger than their displayed size"
|
|
691
574
|
},
|
|
692
|
-
"
|
|
575
|
+
"core/audits/byte-efficiency/uses-responsive-images-snapshot.js | title": {
|
|
693
576
|
"message": "Images were appropriate for their displayed size"
|
|
694
577
|
},
|
|
695
|
-
"
|
|
696
|
-
"message": "Serve images that are appropriately-sized to save cellular data and improve load time. [Learn
|
|
578
|
+
"core/audits/byte-efficiency/uses-responsive-images.js | description": {
|
|
579
|
+
"message": "Serve images that are appropriately-sized to save cellular data and improve load time. [Learn how to size images](https://developer.chrome.com/docs/lighthouse/performance/uses-responsive-images/)."
|
|
697
580
|
},
|
|
698
|
-
"
|
|
581
|
+
"core/audits/byte-efficiency/uses-responsive-images.js | title": {
|
|
699
582
|
"message": "Properly size images"
|
|
700
583
|
},
|
|
701
|
-
"
|
|
702
|
-
"message": "Text-based resources should be served with compression (gzip, deflate or brotli) to minimize total network bytes. [Learn more](https://
|
|
584
|
+
"core/audits/byte-efficiency/uses-text-compression.js | description": {
|
|
585
|
+
"message": "Text-based resources should be served with compression (gzip, deflate or brotli) to minimize total network bytes. [Learn more about text compression](https://developer.chrome.com/docs/lighthouse/performance/uses-text-compression/)."
|
|
703
586
|
},
|
|
704
|
-
"
|
|
587
|
+
"core/audits/byte-efficiency/uses-text-compression.js | title": {
|
|
705
588
|
"message": "Enable text compression"
|
|
706
589
|
},
|
|
707
|
-
"
|
|
708
|
-
"message": "If the width of your app's content doesn't match the width of the viewport, your app might not be optimized for mobile screens. [Learn
|
|
590
|
+
"core/audits/content-width.js | description": {
|
|
591
|
+
"message": "If the width of your app's content doesn't match the width of the viewport, your app might not be optimized for mobile screens. [Learn how to size content for the viewport](https://developer.chrome.com/docs/lighthouse/pwa/content-width/)."
|
|
709
592
|
},
|
|
710
|
-
"
|
|
593
|
+
"core/audits/content-width.js | explanation": {
|
|
711
594
|
"message": "The viewport size of {innerWidth}px does not match the window size of {outerWidth}px."
|
|
712
595
|
},
|
|
713
|
-
"
|
|
596
|
+
"core/audits/content-width.js | failureTitle": {
|
|
714
597
|
"message": "Content is not sized correctly for the viewport"
|
|
715
598
|
},
|
|
716
|
-
"
|
|
599
|
+
"core/audits/content-width.js | title": {
|
|
717
600
|
"message": "Content is sized correctly for the viewport"
|
|
718
601
|
},
|
|
719
|
-
"
|
|
720
|
-
"message": "The Critical Request Chains below show you what resources are loaded with a high priority. Consider reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load. [Learn
|
|
602
|
+
"core/audits/critical-request-chains.js | description": {
|
|
603
|
+
"message": "The Critical Request Chains below show you what resources are loaded with a high priority. Consider reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load. [Learn how to avoid chaining critical requests](https://developer.chrome.com/docs/lighthouse/performance/critical-request-chains/)."
|
|
721
604
|
},
|
|
722
|
-
"
|
|
605
|
+
"core/audits/critical-request-chains.js | displayValue": {
|
|
723
606
|
"message": "{itemCount,plural, =1{1 chain found}zero{# chains found}two{# chains found}few{# chains found}many{# chains found}other{# chains found}}"
|
|
724
607
|
},
|
|
725
|
-
"
|
|
608
|
+
"core/audits/critical-request-chains.js | title": {
|
|
726
609
|
"message": "Avoid chaining critical requests"
|
|
727
610
|
},
|
|
728
|
-
"
|
|
611
|
+
"core/audits/csp-xss.js | columnDirective": {
|
|
729
612
|
"message": "Directive"
|
|
730
613
|
},
|
|
731
|
-
"
|
|
614
|
+
"core/audits/csp-xss.js | columnSeverity": {
|
|
732
615
|
"message": "Severity"
|
|
733
616
|
},
|
|
734
|
-
"
|
|
735
|
-
"message": "A strong Content Security Policy (CSP) significantly reduces the risk of cross-site scripting (XSS) attacks. [Learn
|
|
617
|
+
"core/audits/csp-xss.js | description": {
|
|
618
|
+
"message": "A strong Content Security Policy (CSP) significantly reduces the risk of cross-site scripting (XSS) attacks. [Learn how to use a CSP to prevent XSS](https://developer.chrome.com/docs/lighthouse/best-practices/csp-xss/)"
|
|
736
619
|
},
|
|
737
|
-
"
|
|
620
|
+
"core/audits/csp-xss.js | itemSeveritySyntax": {
|
|
738
621
|
"message": "Syntax"
|
|
739
622
|
},
|
|
740
|
-
"
|
|
741
|
-
"message": "The page contains a CSP defined in a <meta> tag. Consider
|
|
623
|
+
"core/audits/csp-xss.js | metaTagMessage": {
|
|
624
|
+
"message": "The page contains a CSP defined in a <meta> tag. Consider moving the CSP to an HTTP header or defining another strict CSP in an HTTP header."
|
|
742
625
|
},
|
|
743
|
-
"
|
|
626
|
+
"core/audits/csp-xss.js | noCsp": {
|
|
744
627
|
"message": "No CSP found in enforcement mode"
|
|
745
628
|
},
|
|
746
|
-
"
|
|
629
|
+
"core/audits/csp-xss.js | title": {
|
|
747
630
|
"message": "Ensure CSP is effective against XSS attacks"
|
|
748
631
|
},
|
|
749
|
-
"
|
|
632
|
+
"core/audits/deprecations.js | columnDeprecate": {
|
|
750
633
|
"message": "Deprecation / Warning"
|
|
751
634
|
},
|
|
752
|
-
"
|
|
635
|
+
"core/audits/deprecations.js | columnLine": {
|
|
753
636
|
"message": "Line"
|
|
754
637
|
},
|
|
755
|
-
"
|
|
756
|
-
"message": "Deprecated APIs will eventually be removed from the browser. [Learn more](https://
|
|
638
|
+
"core/audits/deprecations.js | description": {
|
|
639
|
+
"message": "Deprecated APIs will eventually be removed from the browser. [Learn more about deprecated APIs](https://developer.chrome.com/docs/lighthouse/best-practices/deprecations/)."
|
|
757
640
|
},
|
|
758
|
-
"
|
|
641
|
+
"core/audits/deprecations.js | displayValue": {
|
|
759
642
|
"message": "{itemCount,plural, =1{1 warning found}zero{# warnings found}two{# warnings found}few{# warnings found}many{# warnings found}other{# warnings found}}"
|
|
760
643
|
},
|
|
761
|
-
"
|
|
644
|
+
"core/audits/deprecations.js | failureTitle": {
|
|
762
645
|
"message": "Uses deprecated APIs"
|
|
763
646
|
},
|
|
764
|
-
"
|
|
647
|
+
"core/audits/deprecations.js | title": {
|
|
765
648
|
"message": "Avoids deprecated APIs"
|
|
766
649
|
},
|
|
767
|
-
"
|
|
768
|
-
"message": "A character encoding declaration is required. It can be done with a `<meta>` tag in the first 1024 bytes of the HTML or in the Content-Type HTTP response header. [Learn more](https://
|
|
650
|
+
"core/audits/dobetterweb/charset.js | description": {
|
|
651
|
+
"message": "A character encoding declaration is required. It can be done with a `<meta>` tag in the first 1024 bytes of the HTML or in the Content-Type HTTP response header. [Learn more about declaring the character encoding](https://developer.chrome.com/docs/lighthouse/best-practices/charset/)."
|
|
769
652
|
},
|
|
770
|
-
"
|
|
653
|
+
"core/audits/dobetterweb/charset.js | failureTitle": {
|
|
771
654
|
"message": "Charset declaration is missing or occurs too late in the HTML"
|
|
772
655
|
},
|
|
773
|
-
"
|
|
656
|
+
"core/audits/dobetterweb/charset.js | title": {
|
|
774
657
|
"message": "Properly defines charset"
|
|
775
658
|
},
|
|
776
|
-
"
|
|
777
|
-
"message": "Specifying a doctype prevents the browser from switching to quirks-mode. [Learn more](https://
|
|
659
|
+
"core/audits/dobetterweb/doctype.js | description": {
|
|
660
|
+
"message": "Specifying a doctype prevents the browser from switching to quirks-mode. [Learn more about the doctype declaration](https://developer.chrome.com/docs/lighthouse/best-practices/doctype/)."
|
|
778
661
|
},
|
|
779
|
-
"
|
|
780
|
-
"message": "Doctype name must be the
|
|
662
|
+
"core/audits/dobetterweb/doctype.js | explanationBadDoctype": {
|
|
663
|
+
"message": "Doctype name must be the string `html`"
|
|
781
664
|
},
|
|
782
|
-
"
|
|
665
|
+
"core/audits/dobetterweb/doctype.js | explanationLimitedQuirks": {
|
|
666
|
+
"message": "Document contains a `doctype` that triggers `limited-quirks-mode`"
|
|
667
|
+
},
|
|
668
|
+
"core/audits/dobetterweb/doctype.js | explanationNoDoctype": {
|
|
783
669
|
"message": "Document must contain a doctype"
|
|
784
670
|
},
|
|
785
|
-
"
|
|
671
|
+
"core/audits/dobetterweb/doctype.js | explanationPublicId": {
|
|
786
672
|
"message": "Expected publicId to be an empty string"
|
|
787
673
|
},
|
|
788
|
-
"
|
|
674
|
+
"core/audits/dobetterweb/doctype.js | explanationSystemId": {
|
|
789
675
|
"message": "Expected systemId to be an empty string"
|
|
790
676
|
},
|
|
791
|
-
"
|
|
677
|
+
"core/audits/dobetterweb/doctype.js | explanationWrongDoctype": {
|
|
678
|
+
"message": "Document contains a `doctype` that triggers `quirks-mode`"
|
|
679
|
+
},
|
|
680
|
+
"core/audits/dobetterweb/doctype.js | failureTitle": {
|
|
792
681
|
"message": "Page lacks the HTML doctype, thus triggering quirks-mode"
|
|
793
682
|
},
|
|
794
|
-
"
|
|
683
|
+
"core/audits/dobetterweb/doctype.js | title": {
|
|
795
684
|
"message": "Page has the HTML doctype"
|
|
796
685
|
},
|
|
797
|
-
"
|
|
686
|
+
"core/audits/dobetterweb/dom-size.js | columnStatistic": {
|
|
798
687
|
"message": "Statistic"
|
|
799
688
|
},
|
|
800
|
-
"
|
|
689
|
+
"core/audits/dobetterweb/dom-size.js | columnValue": {
|
|
801
690
|
"message": "Value"
|
|
802
691
|
},
|
|
803
|
-
"
|
|
804
|
-
"message": "A large DOM will increase memory usage, cause longer [style calculations](https://developers.google.com/web/fundamentals/performance/rendering/reduce-the-scope-and-complexity-of-style-calculations), and produce costly [layout reflows](https://developers.google.com/speed/articles/reflow). [Learn
|
|
692
|
+
"core/audits/dobetterweb/dom-size.js | description": {
|
|
693
|
+
"message": "A large DOM will increase memory usage, cause longer [style calculations](https://developers.google.com/web/fundamentals/performance/rendering/reduce-the-scope-and-complexity-of-style-calculations), and produce costly [layout reflows](https://developers.google.com/speed/articles/reflow). [Learn how to avoid an excessive DOM size](https://developer.chrome.com/docs/lighthouse/performance/dom-size/)."
|
|
805
694
|
},
|
|
806
|
-
"
|
|
695
|
+
"core/audits/dobetterweb/dom-size.js | displayValue": {
|
|
807
696
|
"message": "{itemCount,plural, =1{1 element}zero{# elements}two{# elements}few{# elements}many{# elements}other{# elements}}"
|
|
808
697
|
},
|
|
809
|
-
"
|
|
698
|
+
"core/audits/dobetterweb/dom-size.js | failureTitle": {
|
|
810
699
|
"message": "Avoid an excessive DOM size"
|
|
811
700
|
},
|
|
812
|
-
"
|
|
701
|
+
"core/audits/dobetterweb/dom-size.js | statisticDOMDepth": {
|
|
813
702
|
"message": "Maximum DOM Depth"
|
|
814
703
|
},
|
|
815
|
-
"
|
|
704
|
+
"core/audits/dobetterweb/dom-size.js | statisticDOMElements": {
|
|
816
705
|
"message": "Total DOM Elements"
|
|
817
706
|
},
|
|
818
|
-
"
|
|
707
|
+
"core/audits/dobetterweb/dom-size.js | statisticDOMWidth": {
|
|
819
708
|
"message": "Maximum Child Elements"
|
|
820
709
|
},
|
|
821
|
-
"
|
|
710
|
+
"core/audits/dobetterweb/dom-size.js | title": {
|
|
822
711
|
"message": "Avoids an excessive DOM size"
|
|
823
712
|
},
|
|
824
|
-
"
|
|
825
|
-
"message": "Users are mistrustful of or confused by sites that request their location without context. Consider tying the request to a user action instead. [Learn more](https://
|
|
713
|
+
"core/audits/dobetterweb/geolocation-on-start.js | description": {
|
|
714
|
+
"message": "Users are mistrustful of or confused by sites that request their location without context. Consider tying the request to a user action instead. [Learn more about the geolocation permission](https://developer.chrome.com/docs/lighthouse/best-practices/geolocation-on-start/)."
|
|
826
715
|
},
|
|
827
|
-
"
|
|
716
|
+
"core/audits/dobetterweb/geolocation-on-start.js | failureTitle": {
|
|
828
717
|
"message": "Requests the geolocation permission on page load"
|
|
829
718
|
},
|
|
830
|
-
"
|
|
719
|
+
"core/audits/dobetterweb/geolocation-on-start.js | title": {
|
|
831
720
|
"message": "Avoids requesting the geolocation permission on page load"
|
|
832
721
|
},
|
|
833
|
-
"
|
|
722
|
+
"core/audits/dobetterweb/inspector-issues.js | columnIssueType": {
|
|
834
723
|
"message": "Issue type"
|
|
835
724
|
},
|
|
836
|
-
"
|
|
725
|
+
"core/audits/dobetterweb/inspector-issues.js | description": {
|
|
837
726
|
"message": "Issues logged to the `Issues` panel in Chrome Devtools indicate unresolved problems. They can come from network request failures, insufficient security controls, and other browser concerns. Open up the Issues panel in Chrome DevTools for more details on each issue."
|
|
838
727
|
},
|
|
839
|
-
"
|
|
728
|
+
"core/audits/dobetterweb/inspector-issues.js | failureTitle": {
|
|
840
729
|
"message": "Issues were logged in the `Issues` panel in Chrome Devtools"
|
|
841
730
|
},
|
|
842
|
-
"
|
|
731
|
+
"core/audits/dobetterweb/inspector-issues.js | issueTypeBlockedByResponse": {
|
|
843
732
|
"message": "Blocked by cross-origin policy"
|
|
844
733
|
},
|
|
845
|
-
"
|
|
734
|
+
"core/audits/dobetterweb/inspector-issues.js | issueTypeHeavyAds": {
|
|
846
735
|
"message": "Heavy resource usage by ads"
|
|
847
736
|
},
|
|
848
|
-
"
|
|
737
|
+
"core/audits/dobetterweb/inspector-issues.js | title": {
|
|
849
738
|
"message": "No issues in the `Issues` panel in Chrome Devtools"
|
|
850
739
|
},
|
|
851
|
-
"
|
|
740
|
+
"core/audits/dobetterweb/js-libraries.js | columnVersion": {
|
|
852
741
|
"message": "Version"
|
|
853
742
|
},
|
|
854
|
-
"
|
|
855
|
-
"message": "All front-end JavaScript libraries detected on the page. [Learn more](https://
|
|
743
|
+
"core/audits/dobetterweb/js-libraries.js | description": {
|
|
744
|
+
"message": "All front-end JavaScript libraries detected on the page. [Learn more about this JavaScript library detection diagnostic audit](https://developer.chrome.com/docs/lighthouse/best-practices/js-libraries/)."
|
|
856
745
|
},
|
|
857
|
-
"
|
|
746
|
+
"core/audits/dobetterweb/js-libraries.js | title": {
|
|
858
747
|
"message": "Detected JavaScript libraries"
|
|
859
748
|
},
|
|
860
|
-
"
|
|
861
|
-
"message": "For users on slow connections, external scripts dynamically injected via `document.write()` can delay page load by tens of seconds. [Learn
|
|
749
|
+
"core/audits/dobetterweb/no-document-write.js | description": {
|
|
750
|
+
"message": "For users on slow connections, external scripts dynamically injected via `document.write()` can delay page load by tens of seconds. [Learn how to avoid document.write()](https://developer.chrome.com/docs/lighthouse/best-practices/no-document-write/)."
|
|
862
751
|
},
|
|
863
|
-
"
|
|
752
|
+
"core/audits/dobetterweb/no-document-write.js | failureTitle": {
|
|
864
753
|
"message": "Avoid `document.write()`"
|
|
865
754
|
},
|
|
866
|
-
"
|
|
755
|
+
"core/audits/dobetterweb/no-document-write.js | title": {
|
|
867
756
|
"message": "Avoids `document.write()`"
|
|
868
757
|
},
|
|
869
|
-
"
|
|
870
|
-
"message": "
|
|
871
|
-
},
|
|
872
|
-
"lighthouse-core/audits/dobetterweb/no-vulnerable-libraries.js | columnVersion": {
|
|
873
|
-
"message": "Library Version"
|
|
874
|
-
},
|
|
875
|
-
"lighthouse-core/audits/dobetterweb/no-vulnerable-libraries.js | columnVuln": {
|
|
876
|
-
"message": "Vulnerability Count"
|
|
758
|
+
"core/audits/dobetterweb/notification-on-start.js | description": {
|
|
759
|
+
"message": "Users are mistrustful of or confused by sites that request to send notifications without context. Consider tying the request to user gestures instead. [Learn more about responsibly getting permission for notifications](https://developer.chrome.com/docs/lighthouse/best-practices/notification-on-start/)."
|
|
877
760
|
},
|
|
878
|
-
"
|
|
879
|
-
"message": "Some third-party scripts may contain known security vulnerabilities that are easily identified and exploited by attackers. [Learn more](https://web.dev/no-vulnerable-libraries/)."
|
|
880
|
-
},
|
|
881
|
-
"lighthouse-core/audits/dobetterweb/no-vulnerable-libraries.js | displayValue": {
|
|
882
|
-
"message": "{itemCount,plural, =1{1 vulnerability detected}zero{# vulnerabilities detected}two{# vulnerabilities detected}few{# vulnerabilities detected}many{# vulnerabilities detected}other{# vulnerabilities detected}}"
|
|
883
|
-
},
|
|
884
|
-
"lighthouse-core/audits/dobetterweb/no-vulnerable-libraries.js | failureTitle": {
|
|
885
|
-
"message": "Includes front-end JavaScript libraries with known security vulnerabilities"
|
|
886
|
-
},
|
|
887
|
-
"lighthouse-core/audits/dobetterweb/no-vulnerable-libraries.js | title": {
|
|
888
|
-
"message": "Avoids front-end JavaScript libraries with known security vulnerabilities"
|
|
889
|
-
},
|
|
890
|
-
"lighthouse-core/audits/dobetterweb/notification-on-start.js | description": {
|
|
891
|
-
"message": "Users are mistrustful of or confused by sites that request to send notifications without context. Consider tying the request to user gestures instead. [Learn more](https://web.dev/notification-on-start/)."
|
|
892
|
-
},
|
|
893
|
-
"lighthouse-core/audits/dobetterweb/notification-on-start.js | failureTitle": {
|
|
761
|
+
"core/audits/dobetterweb/notification-on-start.js | failureTitle": {
|
|
894
762
|
"message": "Requests the notification permission on page load"
|
|
895
763
|
},
|
|
896
|
-
"
|
|
764
|
+
"core/audits/dobetterweb/notification-on-start.js | title": {
|
|
897
765
|
"message": "Avoids requesting the notification permission on page load"
|
|
898
766
|
},
|
|
899
|
-
"
|
|
900
|
-
"message": "
|
|
767
|
+
"core/audits/dobetterweb/paste-preventing-inputs.js | description": {
|
|
768
|
+
"message": "Preventing input pasting is a UX anti-pattern, and undermines good security policy. [Learn more about user-friendly input fields](https://developer.chrome.com/docs/lighthouse/best-practices/paste-preventing-inputs/)."
|
|
901
769
|
},
|
|
902
|
-
"
|
|
903
|
-
"message": "
|
|
770
|
+
"core/audits/dobetterweb/paste-preventing-inputs.js | failureTitle": {
|
|
771
|
+
"message": "Prevents users from pasting into input fields"
|
|
904
772
|
},
|
|
905
|
-
"
|
|
906
|
-
"message": "
|
|
773
|
+
"core/audits/dobetterweb/paste-preventing-inputs.js | title": {
|
|
774
|
+
"message": "Allows users to paste into input fields"
|
|
907
775
|
},
|
|
908
|
-
"
|
|
776
|
+
"core/audits/dobetterweb/uses-http2.js | columnProtocol": {
|
|
909
777
|
"message": "Protocol"
|
|
910
778
|
},
|
|
911
|
-
"
|
|
912
|
-
"message": "HTTP/2 offers many benefits over HTTP/1.1, including binary headers and multiplexing. [Learn more](https://
|
|
779
|
+
"core/audits/dobetterweb/uses-http2.js | description": {
|
|
780
|
+
"message": "HTTP/2 offers many benefits over HTTP/1.1, including binary headers and multiplexing. [Learn more about HTTP/2](https://developer.chrome.com/docs/lighthouse/best-practices/uses-http2/)."
|
|
913
781
|
},
|
|
914
|
-
"
|
|
782
|
+
"core/audits/dobetterweb/uses-http2.js | displayValue": {
|
|
915
783
|
"message": "{itemCount,plural, =1{1 request not served via HTTP/2}zero{# requests not served via HTTP/2}two{# requests not served via HTTP/2}few{# requests not served via HTTP/2}many{# requests not served via HTTP/2}other{# requests not served via HTTP/2}}"
|
|
916
784
|
},
|
|
917
|
-
"
|
|
785
|
+
"core/audits/dobetterweb/uses-http2.js | title": {
|
|
918
786
|
"message": "Use HTTP/2"
|
|
919
787
|
},
|
|
920
|
-
"
|
|
921
|
-
"message": "Consider marking your touch and wheel event listeners as `passive` to improve your page's scroll performance. [Learn more](https://
|
|
788
|
+
"core/audits/dobetterweb/uses-passive-event-listeners.js | description": {
|
|
789
|
+
"message": "Consider marking your touch and wheel event listeners as `passive` to improve your page's scroll performance. [Learn more about adopting passive event listeners](https://developer.chrome.com/docs/lighthouse/best-practices/uses-passive-event-listeners/)."
|
|
922
790
|
},
|
|
923
|
-
"
|
|
791
|
+
"core/audits/dobetterweb/uses-passive-event-listeners.js | failureTitle": {
|
|
924
792
|
"message": "Does not use passive listeners to improve scrolling performance"
|
|
925
793
|
},
|
|
926
|
-
"
|
|
794
|
+
"core/audits/dobetterweb/uses-passive-event-listeners.js | title": {
|
|
927
795
|
"message": "Uses passive listeners to improve scrolling performance"
|
|
928
796
|
},
|
|
929
|
-
"
|
|
930
|
-
"message": "Errors logged to the console indicate unresolved problems. They can come from network request failures and other browser concerns. [Learn more](https://
|
|
797
|
+
"core/audits/errors-in-console.js | description": {
|
|
798
|
+
"message": "Errors logged to the console indicate unresolved problems. They can come from network request failures and other browser concerns. [Learn more about this errors in console diagnostic audit](https://developer.chrome.com/docs/lighthouse/best-practices/errors-in-console/)"
|
|
931
799
|
},
|
|
932
|
-
"
|
|
800
|
+
"core/audits/errors-in-console.js | failureTitle": {
|
|
933
801
|
"message": "Browser errors were logged to the console"
|
|
934
802
|
},
|
|
935
|
-
"
|
|
803
|
+
"core/audits/errors-in-console.js | title": {
|
|
936
804
|
"message": "No browser errors logged to the console"
|
|
937
805
|
},
|
|
938
|
-
"
|
|
939
|
-
"message": "Leverage the
|
|
806
|
+
"core/audits/font-display.js | description": {
|
|
807
|
+
"message": "Leverage the `font-display` CSS feature to ensure text is user-visible while webfonts are loading. [Learn more about `font-display`](https://developer.chrome.com/docs/lighthouse/performance/font-display/)."
|
|
940
808
|
},
|
|
941
|
-
"
|
|
809
|
+
"core/audits/font-display.js | failureTitle": {
|
|
942
810
|
"message": "Ensure text remains visible during webfont load"
|
|
943
811
|
},
|
|
944
|
-
"
|
|
812
|
+
"core/audits/font-display.js | title": {
|
|
945
813
|
"message": "All text remains visible during webfont loads"
|
|
946
814
|
},
|
|
947
|
-
"
|
|
815
|
+
"core/audits/font-display.js | undeclaredFontOriginWarning": {
|
|
948
816
|
"message": "{fontCountForOrigin,plural, =1{Lighthouse was unable to automatically check the `font-display` value for the origin {fontOrigin}.}zero{Lighthouse was unable to automatically check the `font-display` values for the origin {fontOrigin}.}two{Lighthouse was unable to automatically check the `font-display` values for the origin {fontOrigin}.}few{Lighthouse was unable to automatically check the `font-display` values for the origin {fontOrigin}.}many{Lighthouse was unable to automatically check the `font-display` values for the origin {fontOrigin}.}other{Lighthouse was unable to automatically check the `font-display` values for the origin {fontOrigin}.}}"
|
|
949
817
|
},
|
|
950
|
-
"
|
|
818
|
+
"core/audits/image-aspect-ratio.js | columnActual": {
|
|
951
819
|
"message": "Aspect Ratio (Actual)"
|
|
952
820
|
},
|
|
953
|
-
"
|
|
821
|
+
"core/audits/image-aspect-ratio.js | columnDisplayed": {
|
|
954
822
|
"message": "Aspect Ratio (Displayed)"
|
|
955
823
|
},
|
|
956
|
-
"
|
|
957
|
-
"message": "Image display dimensions should match natural aspect ratio. [Learn more](https://
|
|
824
|
+
"core/audits/image-aspect-ratio.js | description": {
|
|
825
|
+
"message": "Image display dimensions should match natural aspect ratio. [Learn more about image aspect ratio](https://developer.chrome.com/docs/lighthouse/best-practices/image-aspect-ratio/)."
|
|
958
826
|
},
|
|
959
|
-
"
|
|
827
|
+
"core/audits/image-aspect-ratio.js | failureTitle": {
|
|
960
828
|
"message": "Displays images with incorrect aspect ratio"
|
|
961
829
|
},
|
|
962
|
-
"
|
|
830
|
+
"core/audits/image-aspect-ratio.js | title": {
|
|
963
831
|
"message": "Displays images with correct aspect ratio"
|
|
964
832
|
},
|
|
965
|
-
"
|
|
833
|
+
"core/audits/image-size-responsive.js | columnActual": {
|
|
966
834
|
"message": "Actual size"
|
|
967
835
|
},
|
|
968
|
-
"
|
|
836
|
+
"core/audits/image-size-responsive.js | columnDisplayed": {
|
|
969
837
|
"message": "Displayed size"
|
|
970
838
|
},
|
|
971
|
-
"
|
|
839
|
+
"core/audits/image-size-responsive.js | columnExpected": {
|
|
972
840
|
"message": "Expected size"
|
|
973
841
|
},
|
|
974
|
-
"
|
|
975
|
-
"message": "Image natural dimensions should be proportional to the display size and the pixel ratio to maximize image clarity. [Learn
|
|
842
|
+
"core/audits/image-size-responsive.js | description": {
|
|
843
|
+
"message": "Image natural dimensions should be proportional to the display size and the pixel ratio to maximize image clarity. [Learn how to provide responsive images](https://web.dev/serve-responsive-images/)."
|
|
976
844
|
},
|
|
977
|
-
"
|
|
845
|
+
"core/audits/image-size-responsive.js | failureTitle": {
|
|
978
846
|
"message": "Serves images with low resolution"
|
|
979
847
|
},
|
|
980
|
-
"
|
|
848
|
+
"core/audits/image-size-responsive.js | title": {
|
|
981
849
|
"message": "Serves images with appropriate resolution"
|
|
982
850
|
},
|
|
983
|
-
"
|
|
851
|
+
"core/audits/installable-manifest.js | already-installed": {
|
|
984
852
|
"message": "The app is already installed"
|
|
985
853
|
},
|
|
986
|
-
"
|
|
854
|
+
"core/audits/installable-manifest.js | cannot-download-icon": {
|
|
987
855
|
"message": "Could not download a required icon from the manifest"
|
|
988
856
|
},
|
|
989
|
-
"
|
|
857
|
+
"core/audits/installable-manifest.js | columnValue": {
|
|
990
858
|
"message": "Failure reason"
|
|
991
859
|
},
|
|
992
|
-
"
|
|
993
|
-
"message": "Service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. With proper service worker and manifest implementations, browsers can proactively prompt users to add your app to their homescreen, which can lead to higher engagement. [Learn more](https://
|
|
860
|
+
"core/audits/installable-manifest.js | description": {
|
|
861
|
+
"message": "Service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. With proper service worker and manifest implementations, browsers can proactively prompt users to add your app to their homescreen, which can lead to higher engagement. [Learn more about manifest installability requirements](https://developer.chrome.com/docs/lighthouse/pwa/installable-manifest/)."
|
|
994
862
|
},
|
|
995
|
-
"
|
|
863
|
+
"core/audits/installable-manifest.js | displayValue": {
|
|
996
864
|
"message": "{itemCount,plural, =1{1 reason}zero{# reasons}two{# reasons}few{# reasons}many{# reasons}other{# reasons}}"
|
|
997
865
|
},
|
|
998
|
-
"
|
|
866
|
+
"core/audits/installable-manifest.js | failureTitle": {
|
|
999
867
|
"message": "Web app manifest or service worker do not meet the installability requirements"
|
|
1000
868
|
},
|
|
1001
|
-
"
|
|
869
|
+
"core/audits/installable-manifest.js | ids-do-not-match": {
|
|
1002
870
|
"message": "The Play Store app URL and Play Store ID do not match"
|
|
1003
871
|
},
|
|
1004
|
-
"
|
|
872
|
+
"core/audits/installable-manifest.js | in-incognito": {
|
|
1005
873
|
"message": "Page is loaded in an incognito window"
|
|
1006
874
|
},
|
|
1007
|
-
"
|
|
875
|
+
"core/audits/installable-manifest.js | manifest-display-not-supported": {
|
|
1008
876
|
"message": "Manifest 'display' property must be one of 'standalone', 'fullscreen', or 'minimal-ui'"
|
|
1009
877
|
},
|
|
1010
|
-
"
|
|
878
|
+
"core/audits/installable-manifest.js | manifest-display-override-not-supported": {
|
|
1011
879
|
"message": "Manifest contains 'display_override' field, and the first supported display mode must be one of 'standalone', 'fullscreen', or 'minimal-ui'"
|
|
1012
880
|
},
|
|
1013
|
-
"
|
|
881
|
+
"core/audits/installable-manifest.js | manifest-empty": {
|
|
1014
882
|
"message": "Manifest could not be fetched, is empty, or could not be parsed"
|
|
1015
883
|
},
|
|
1016
|
-
"
|
|
884
|
+
"core/audits/installable-manifest.js | manifest-location-changed": {
|
|
1017
885
|
"message": "Manifest URL changed while the manifest was being fetched."
|
|
1018
886
|
},
|
|
1019
|
-
"
|
|
887
|
+
"core/audits/installable-manifest.js | manifest-missing-name-or-short-name": {
|
|
1020
888
|
"message": "Manifest does not contain a 'name' or 'short_name' field"
|
|
1021
889
|
},
|
|
1022
|
-
"
|
|
890
|
+
"core/audits/installable-manifest.js | manifest-missing-suitable-icon": {
|
|
1023
891
|
"message": "Manifest does not contain a suitable icon - PNG, SVG or WebP format of at least {value0} px is required, the sizes attribute must be set, and the purpose attribute, if set, must include \"any\"."
|
|
1024
892
|
},
|
|
1025
|
-
"
|
|
893
|
+
"core/audits/installable-manifest.js | no-acceptable-icon": {
|
|
1026
894
|
"message": "No supplied icon is at least {value0} px square in PNG, SVG or WebP format, with the purpose attribute unset or set to \"any\""
|
|
1027
895
|
},
|
|
1028
|
-
"
|
|
896
|
+
"core/audits/installable-manifest.js | no-icon-available": {
|
|
1029
897
|
"message": "Downloaded icon was empty or corrupted"
|
|
1030
898
|
},
|
|
1031
|
-
"
|
|
899
|
+
"core/audits/installable-manifest.js | no-id-specified": {
|
|
1032
900
|
"message": "No Play store ID provided"
|
|
1033
901
|
},
|
|
1034
|
-
"
|
|
902
|
+
"core/audits/installable-manifest.js | no-manifest": {
|
|
1035
903
|
"message": "Page has no manifest <link> URL"
|
|
1036
904
|
},
|
|
1037
|
-
"
|
|
905
|
+
"core/audits/installable-manifest.js | no-matching-service-worker": {
|
|
1038
906
|
"message": "No matching service worker detected. You may need to reload the page, or check that the scope of the service worker for the current page encloses the scope and start URL from the manifest."
|
|
1039
907
|
},
|
|
1040
|
-
"
|
|
908
|
+
"core/audits/installable-manifest.js | no-url-for-service-worker": {
|
|
1041
909
|
"message": "Could not check service worker without a 'start_url' field in the manifest"
|
|
1042
910
|
},
|
|
1043
|
-
"
|
|
911
|
+
"core/audits/installable-manifest.js | noErrorId": {
|
|
1044
912
|
"message": "Installability error id '{errorId}' is not recognized"
|
|
1045
913
|
},
|
|
1046
|
-
"
|
|
914
|
+
"core/audits/installable-manifest.js | not-from-secure-origin": {
|
|
1047
915
|
"message": "Page is not served from a secure origin"
|
|
1048
916
|
},
|
|
1049
|
-
"
|
|
917
|
+
"core/audits/installable-manifest.js | not-in-main-frame": {
|
|
1050
918
|
"message": "Page is not loaded in the main frame"
|
|
1051
919
|
},
|
|
1052
|
-
"
|
|
920
|
+
"core/audits/installable-manifest.js | not-offline-capable": {
|
|
1053
921
|
"message": "Page does not work offline"
|
|
1054
922
|
},
|
|
1055
|
-
"
|
|
923
|
+
"core/audits/installable-manifest.js | pipeline-restarted": {
|
|
1056
924
|
"message": "PWA has been uninstalled and installability checks resetting."
|
|
1057
925
|
},
|
|
1058
|
-
"
|
|
926
|
+
"core/audits/installable-manifest.js | platform-not-supported-on-android": {
|
|
1059
927
|
"message": "The specified application platform is not supported on Android"
|
|
1060
928
|
},
|
|
1061
|
-
"
|
|
929
|
+
"core/audits/installable-manifest.js | prefer-related-applications": {
|
|
1062
930
|
"message": "Manifest specifies prefer_related_applications: true"
|
|
1063
931
|
},
|
|
1064
|
-
"
|
|
932
|
+
"core/audits/installable-manifest.js | prefer-related-applications-only-beta-stable": {
|
|
1065
933
|
"message": "prefer_related_applications is only supported on Chrome Beta and Stable channels on Android."
|
|
1066
934
|
},
|
|
1067
|
-
"
|
|
935
|
+
"core/audits/installable-manifest.js | protocol-timeout": {
|
|
1068
936
|
"message": "Lighthouse could not determine if there was a service worker. Please try with a newer version of Chrome."
|
|
1069
937
|
},
|
|
1070
|
-
"
|
|
938
|
+
"core/audits/installable-manifest.js | scheme-not-supported-for-webapk": {
|
|
939
|
+
"message": "The manifest URL scheme ({scheme}) is not supported on Android."
|
|
940
|
+
},
|
|
941
|
+
"core/audits/installable-manifest.js | start-url-not-valid": {
|
|
1071
942
|
"message": "Manifest start URL is not valid"
|
|
1072
943
|
},
|
|
1073
|
-
"
|
|
944
|
+
"core/audits/installable-manifest.js | title": {
|
|
1074
945
|
"message": "Web app manifest and service worker meet the installability requirements"
|
|
1075
946
|
},
|
|
1076
|
-
"
|
|
947
|
+
"core/audits/installable-manifest.js | url-not-supported-for-webapk": {
|
|
1077
948
|
"message": "A URL in the manifest contains a username, password, or port"
|
|
1078
949
|
},
|
|
1079
|
-
"
|
|
950
|
+
"core/audits/installable-manifest.js | warn-not-offline-capable": {
|
|
1080
951
|
"message": "Page does not work offline. The page will not be regarded as installable after Chrome 93, stable release August 2021."
|
|
1081
952
|
},
|
|
1082
|
-
"
|
|
953
|
+
"core/audits/is-on-https.js | allowed": {
|
|
1083
954
|
"message": "Allowed"
|
|
1084
955
|
},
|
|
1085
|
-
"
|
|
956
|
+
"core/audits/is-on-https.js | blocked": {
|
|
1086
957
|
"message": "Blocked"
|
|
1087
958
|
},
|
|
1088
|
-
"
|
|
959
|
+
"core/audits/is-on-https.js | columnInsecureURL": {
|
|
1089
960
|
"message": "Insecure URL"
|
|
1090
961
|
},
|
|
1091
|
-
"
|
|
962
|
+
"core/audits/is-on-https.js | columnResolution": {
|
|
1092
963
|
"message": "Request Resolution"
|
|
1093
964
|
},
|
|
1094
|
-
"
|
|
1095
|
-
"message": "All sites should be protected with HTTPS, even ones that don't handle sensitive data. This includes avoiding [mixed content](https://developers.google.com/web/fundamentals/security/prevent-mixed-content/what-is-mixed-content), where some resources are loaded over HTTP despite the initial request being served over HTTPS. HTTPS prevents intruders from tampering with or passively listening in on the communications between your app and your users, and is a prerequisite for HTTP/2 and many new web platform APIs. [Learn more](https://
|
|
965
|
+
"core/audits/is-on-https.js | description": {
|
|
966
|
+
"message": "All sites should be protected with HTTPS, even ones that don't handle sensitive data. This includes avoiding [mixed content](https://developers.google.com/web/fundamentals/security/prevent-mixed-content/what-is-mixed-content), where some resources are loaded over HTTP despite the initial request being served over HTTPS. HTTPS prevents intruders from tampering with or passively listening in on the communications between your app and your users, and is a prerequisite for HTTP/2 and many new web platform APIs. [Learn more about HTTPS](https://developer.chrome.com/docs/lighthouse/pwa/is-on-https/)."
|
|
1096
967
|
},
|
|
1097
|
-
"
|
|
968
|
+
"core/audits/is-on-https.js | displayValue": {
|
|
1098
969
|
"message": "{itemCount,plural, =1{1 insecure request found}zero{# insecure requests found}two{# insecure requests found}few{# insecure requests found}many{# insecure requests found}other{# insecure requests found}}"
|
|
1099
970
|
},
|
|
1100
|
-
"
|
|
971
|
+
"core/audits/is-on-https.js | failureTitle": {
|
|
1101
972
|
"message": "Does not use HTTPS"
|
|
1102
973
|
},
|
|
1103
|
-
"
|
|
974
|
+
"core/audits/is-on-https.js | title": {
|
|
1104
975
|
"message": "Uses HTTPS"
|
|
1105
976
|
},
|
|
1106
|
-
"
|
|
977
|
+
"core/audits/is-on-https.js | upgraded": {
|
|
1107
978
|
"message": "Automatically upgraded to HTTPS"
|
|
1108
979
|
},
|
|
1109
|
-
"
|
|
980
|
+
"core/audits/is-on-https.js | warning": {
|
|
1110
981
|
"message": "Allowed with warning"
|
|
1111
982
|
},
|
|
1112
|
-
"
|
|
1113
|
-
"message": "This is the largest contentful element painted within the viewport. [Learn
|
|
983
|
+
"core/audits/largest-contentful-paint-element.js | description": {
|
|
984
|
+
"message": "This is the largest contentful element painted within the viewport. [Learn more about the Largest Contentful Paint element](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)"
|
|
1114
985
|
},
|
|
1115
|
-
"
|
|
986
|
+
"core/audits/largest-contentful-paint-element.js | title": {
|
|
1116
987
|
"message": "Largest Contentful Paint element"
|
|
1117
988
|
},
|
|
1118
|
-
"
|
|
989
|
+
"core/audits/layout-shift-elements.js | columnContribution": {
|
|
1119
990
|
"message": "CLS Contribution"
|
|
1120
991
|
},
|
|
1121
|
-
"
|
|
1122
|
-
"message": "These DOM elements contribute most to the CLS of the page."
|
|
992
|
+
"core/audits/layout-shift-elements.js | description": {
|
|
993
|
+
"message": "These DOM elements contribute most to the CLS of the page. [Learn how to improve CLS](https://web.dev/optimize-cls/)"
|
|
1123
994
|
},
|
|
1124
|
-
"
|
|
995
|
+
"core/audits/layout-shift-elements.js | title": {
|
|
1125
996
|
"message": "Avoid large layout shifts"
|
|
1126
997
|
},
|
|
1127
|
-
"
|
|
1128
|
-
"message": "Above-the-fold images that are lazily loaded render later in the page lifecycle, which can delay the largest contentful paint. [Learn more](https://web.dev/lcp-lazy-loading/)."
|
|
998
|
+
"core/audits/lcp-lazy-loaded.js | description": {
|
|
999
|
+
"message": "Above-the-fold images that are lazily loaded render later in the page lifecycle, which can delay the largest contentful paint. [Learn more about optimal lazy loading](https://web.dev/lcp-lazy-loading/)."
|
|
1129
1000
|
},
|
|
1130
|
-
"
|
|
1001
|
+
"core/audits/lcp-lazy-loaded.js | failureTitle": {
|
|
1131
1002
|
"message": "Largest Contentful Paint image was lazily loaded"
|
|
1132
1003
|
},
|
|
1133
|
-
"
|
|
1004
|
+
"core/audits/lcp-lazy-loaded.js | title": {
|
|
1134
1005
|
"message": "Largest Contentful Paint image was not lazily loaded"
|
|
1135
1006
|
},
|
|
1136
|
-
"
|
|
1137
|
-
"message": "Lists the longest tasks on the main thread, useful for identifying worst contributors to input delay. [Learn
|
|
1007
|
+
"core/audits/long-tasks.js | description": {
|
|
1008
|
+
"message": "Lists the longest tasks on the main thread, useful for identifying worst contributors to input delay. [Learn how to avoid long main-thread tasks](https://web.dev/long-tasks-devtools/)"
|
|
1138
1009
|
},
|
|
1139
|
-
"
|
|
1010
|
+
"core/audits/long-tasks.js | displayValue": {
|
|
1140
1011
|
"message": "{itemCount,plural, =1{# long task found}zero{# long tasks found}two{# long tasks found}few{# long tasks found}many{# long tasks found}other{# long tasks found}}"
|
|
1141
1012
|
},
|
|
1142
|
-
"
|
|
1013
|
+
"core/audits/long-tasks.js | title": {
|
|
1143
1014
|
"message": "Avoid long main-thread tasks"
|
|
1144
1015
|
},
|
|
1145
|
-
"
|
|
1016
|
+
"core/audits/mainthread-work-breakdown.js | columnCategory": {
|
|
1146
1017
|
"message": "Category"
|
|
1147
1018
|
},
|
|
1148
|
-
"
|
|
1149
|
-
"message": "Consider reducing the time spent parsing, compiling and executing JS. You may find delivering smaller JS payloads helps with this. [Learn
|
|
1019
|
+
"core/audits/mainthread-work-breakdown.js | description": {
|
|
1020
|
+
"message": "Consider reducing the time spent parsing, compiling and executing JS. You may find delivering smaller JS payloads helps with this. [Learn how to minimize main-thread work](https://developer.chrome.com/docs/lighthouse/performance/mainthread-work-breakdown/)"
|
|
1150
1021
|
},
|
|
1151
|
-
"
|
|
1022
|
+
"core/audits/mainthread-work-breakdown.js | failureTitle": {
|
|
1152
1023
|
"message": "Minimize main-thread work"
|
|
1153
1024
|
},
|
|
1154
|
-
"
|
|
1025
|
+
"core/audits/mainthread-work-breakdown.js | title": {
|
|
1155
1026
|
"message": "Minimizes main-thread work"
|
|
1156
1027
|
},
|
|
1157
|
-
"
|
|
1158
|
-
"message": "To reach the most number of users, sites should work across every major browser. [Learn
|
|
1028
|
+
"core/audits/manual/pwa-cross-browser.js | description": {
|
|
1029
|
+
"message": "To reach the most number of users, sites should work across every major browser. [Learn about cross-browser compatibility](https://developer.chrome.com/docs/lighthouse/pwa/pwa-cross-browser/)."
|
|
1159
1030
|
},
|
|
1160
|
-
"
|
|
1031
|
+
"core/audits/manual/pwa-cross-browser.js | title": {
|
|
1161
1032
|
"message": "Site works cross-browser"
|
|
1162
1033
|
},
|
|
1163
|
-
"
|
|
1164
|
-
"message": "Ensure individual pages are deep linkable via URL and that URLs are unique for the purpose of shareability on social media. [Learn more](https://
|
|
1034
|
+
"core/audits/manual/pwa-each-page-has-url.js | description": {
|
|
1035
|
+
"message": "Ensure individual pages are deep linkable via URL and that URLs are unique for the purpose of shareability on social media. [Learn more about providing deep links](https://developer.chrome.com/docs/lighthouse/pwa/pwa-each-page-has-url/)."
|
|
1165
1036
|
},
|
|
1166
|
-
"
|
|
1037
|
+
"core/audits/manual/pwa-each-page-has-url.js | title": {
|
|
1167
1038
|
"message": "Each page has a URL"
|
|
1168
1039
|
},
|
|
1169
|
-
"
|
|
1170
|
-
"message": "Transitions should feel snappy as you tap around, even on a slow network. This experience is key to a user's perception of performance. [Learn more](https://
|
|
1040
|
+
"core/audits/manual/pwa-page-transitions.js | description": {
|
|
1041
|
+
"message": "Transitions should feel snappy as you tap around, even on a slow network. This experience is key to a user's perception of performance. [Learn more about page transitions](https://developer.chrome.com/docs/lighthouse/pwa/pwa-page-transitions/)."
|
|
1171
1042
|
},
|
|
1172
|
-
"
|
|
1043
|
+
"core/audits/manual/pwa-page-transitions.js | title": {
|
|
1173
1044
|
"message": "Page transitions don't feel like they block on the network"
|
|
1174
1045
|
},
|
|
1175
|
-
"
|
|
1176
|
-
"message": "A maskable icon ensures that the image fills the entire shape without being letterboxed when installing the app on a device. [Learn
|
|
1046
|
+
"core/audits/maskable-icon.js | description": {
|
|
1047
|
+
"message": "A maskable icon ensures that the image fills the entire shape without being letterboxed when installing the app on a device. [Learn about maskable manifest icons](https://developer.chrome.com/docs/lighthouse/pwa/maskable-icon-audit/)."
|
|
1177
1048
|
},
|
|
1178
|
-
"
|
|
1049
|
+
"core/audits/maskable-icon.js | failureTitle": {
|
|
1179
1050
|
"message": "Manifest doesn't have a maskable icon"
|
|
1180
1051
|
},
|
|
1181
|
-
"
|
|
1052
|
+
"core/audits/maskable-icon.js | title": {
|
|
1182
1053
|
"message": "Manifest has a maskable icon"
|
|
1183
1054
|
},
|
|
1184
|
-
"
|
|
1185
|
-
"message": "Cumulative Layout Shift measures the movement of visible elements within the viewport. [Learn more](https://web.dev/cls/)."
|
|
1055
|
+
"core/audits/metrics/cumulative-layout-shift.js | description": {
|
|
1056
|
+
"message": "Cumulative Layout Shift measures the movement of visible elements within the viewport. [Learn more about the Cumulative Layout Shift metric](https://web.dev/cls/)."
|
|
1186
1057
|
},
|
|
1187
|
-
"
|
|
1188
|
-
"message": "
|
|
1058
|
+
"core/audits/metrics/experimental-interaction-to-next-paint.js | description": {
|
|
1059
|
+
"message": "Interaction to Next Paint measures page responsiveness, how long it takes the page to visibly respond to user input. [Learn more about the Interaction to Next Paint metric](https://web.dev/inp/)."
|
|
1189
1060
|
},
|
|
1190
|
-
"
|
|
1191
|
-
"message": "First
|
|
1061
|
+
"core/audits/metrics/first-contentful-paint.js | description": {
|
|
1062
|
+
"message": "First Contentful Paint marks the time at which the first text or image is painted. [Learn more about the First Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/first-contentful-paint/)."
|
|
1192
1063
|
},
|
|
1193
|
-
"
|
|
1194
|
-
"message": "
|
|
1064
|
+
"core/audits/metrics/first-meaningful-paint.js | description": {
|
|
1065
|
+
"message": "First Meaningful Paint measures when the primary content of a page is visible. [Learn more about the First Meaningful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/first-meaningful-paint/)."
|
|
1195
1066
|
},
|
|
1196
|
-
"
|
|
1197
|
-
"message": "
|
|
1067
|
+
"core/audits/metrics/interactive.js | description": {
|
|
1068
|
+
"message": "Time to Interactive is the amount of time it takes for the page to become fully interactive. [Learn more about the Time to Interactive metric](https://developer.chrome.com/docs/lighthouse/performance/interactive/)."
|
|
1198
1069
|
},
|
|
1199
|
-
"
|
|
1200
|
-
"message": "
|
|
1070
|
+
"core/audits/metrics/largest-contentful-paint.js | description": {
|
|
1071
|
+
"message": "Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)"
|
|
1201
1072
|
},
|
|
1202
|
-
"
|
|
1203
|
-
"message": "
|
|
1073
|
+
"core/audits/metrics/max-potential-fid.js | description": {
|
|
1074
|
+
"message": "The maximum potential First Input Delay that your users could experience is the duration of the longest task. [Learn more about the Maximum Potential First Input Delay metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-max-potential-fid/)."
|
|
1204
1075
|
},
|
|
1205
|
-
"
|
|
1206
|
-
"message": "
|
|
1076
|
+
"core/audits/metrics/speed-index.js | description": {
|
|
1077
|
+
"message": "Speed Index shows how quickly the contents of a page are visibly populated. [Learn more about the Speed Index metric](https://developer.chrome.com/docs/lighthouse/performance/speed-index/)."
|
|
1207
1078
|
},
|
|
1208
|
-
"
|
|
1209
|
-
"message": "
|
|
1079
|
+
"core/audits/metrics/total-blocking-time.js | description": {
|
|
1080
|
+
"message": "Sum of all time periods between FCP and Time to Interactive, when task length exceeded 50ms, expressed in milliseconds. [Learn more about the Total Blocking Time metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-total-blocking-time/)."
|
|
1210
1081
|
},
|
|
1211
|
-
"
|
|
1082
|
+
"core/audits/network-rtt.js | description": {
|
|
1083
|
+
"message": "Network round trip times (RTT) have a large impact on performance. If the RTT to an origin is high, it's an indication that servers closer to the user could improve performance. [Learn more about the Round Trip Time](https://hpbn.co/primer-on-latency-and-bandwidth/)."
|
|
1084
|
+
},
|
|
1085
|
+
"core/audits/network-rtt.js | title": {
|
|
1212
1086
|
"message": "Network Round Trip Times"
|
|
1213
1087
|
},
|
|
1214
|
-
"
|
|
1215
|
-
"message": "Server latencies can impact web performance. If the server latency of an origin is high, it's an indication the server is overloaded or has poor backend performance. [Learn more](https://hpbn.co/primer-on-web-performance/#analyzing-the-resource-waterfall)."
|
|
1088
|
+
"core/audits/network-server-latency.js | description": {
|
|
1089
|
+
"message": "Server latencies can impact web performance. If the server latency of an origin is high, it's an indication the server is overloaded or has poor backend performance. [Learn more about server response time](https://hpbn.co/primer-on-web-performance/#analyzing-the-resource-waterfall)."
|
|
1216
1090
|
},
|
|
1217
|
-
"
|
|
1091
|
+
"core/audits/network-server-latency.js | title": {
|
|
1218
1092
|
"message": "Server Backend Latencies"
|
|
1219
1093
|
},
|
|
1220
|
-
"
|
|
1221
|
-
"message": "The `unload` event does not fire reliably and listening for it can prevent browser optimizations like the Back-Forward Cache. Use `pagehide` or `visibilitychange` events instead. [Learn more](https://web.dev/bfcache/#never-use-the-unload-event)"
|
|
1094
|
+
"core/audits/no-unload-listeners.js | description": {
|
|
1095
|
+
"message": "The `unload` event does not fire reliably and listening for it can prevent browser optimizations like the Back-Forward Cache. Use `pagehide` or `visibilitychange` events instead. [Learn more about unload event listeners](https://web.dev/bfcache/#never-use-the-unload-event)"
|
|
1222
1096
|
},
|
|
1223
|
-
"
|
|
1097
|
+
"core/audits/no-unload-listeners.js | failureTitle": {
|
|
1224
1098
|
"message": "Registers an `unload` listener"
|
|
1225
1099
|
},
|
|
1226
|
-
"
|
|
1100
|
+
"core/audits/no-unload-listeners.js | title": {
|
|
1227
1101
|
"message": "Avoids `unload` event listeners"
|
|
1228
1102
|
},
|
|
1229
|
-
"
|
|
1230
|
-
"message": "Animations which are not composited can be janky and increase CLS. [Learn
|
|
1103
|
+
"core/audits/non-composited-animations.js | description": {
|
|
1104
|
+
"message": "Animations which are not composited can be janky and increase CLS. [Learn how to avoid non-composited animations](https://developer.chrome.com/docs/lighthouse/performance/non-composited-animations/)"
|
|
1231
1105
|
},
|
|
1232
|
-
"
|
|
1106
|
+
"core/audits/non-composited-animations.js | displayValue": {
|
|
1233
1107
|
"message": "{itemCount,plural, =1{# animated element found}zero{# animated elements found}two{# animated elements found}few{# animated elements found}many{# animated elements found}other{# animated elements found}}"
|
|
1234
1108
|
},
|
|
1235
|
-
"
|
|
1109
|
+
"core/audits/non-composited-animations.js | filterMayMovePixels": {
|
|
1236
1110
|
"message": "Filter-related property may move pixels"
|
|
1237
1111
|
},
|
|
1238
|
-
"
|
|
1112
|
+
"core/audits/non-composited-animations.js | incompatibleAnimations": {
|
|
1239
1113
|
"message": "Target has another animation which is incompatible"
|
|
1240
1114
|
},
|
|
1241
|
-
"
|
|
1115
|
+
"core/audits/non-composited-animations.js | nonReplaceCompositeMode": {
|
|
1242
1116
|
"message": "Effect has composite mode other than \"replace\""
|
|
1243
1117
|
},
|
|
1244
|
-
"
|
|
1118
|
+
"core/audits/non-composited-animations.js | title": {
|
|
1245
1119
|
"message": "Avoid non-composited animations"
|
|
1246
1120
|
},
|
|
1247
|
-
"
|
|
1121
|
+
"core/audits/non-composited-animations.js | transformDependsBoxSize": {
|
|
1248
1122
|
"message": "Transform-related property depends on box size"
|
|
1249
1123
|
},
|
|
1250
|
-
"
|
|
1124
|
+
"core/audits/non-composited-animations.js | unsupportedCSSProperty": {
|
|
1251
1125
|
"message": "{propertyCount,plural, =1{Unsupported CSS Property: {properties}}zero{Unsupported CSS Properties: {properties}}two{Unsupported CSS Properties: {properties}}few{Unsupported CSS Properties: {properties}}many{Unsupported CSS Properties: {properties}}other{Unsupported CSS Properties: {properties}}}"
|
|
1252
1126
|
},
|
|
1253
|
-
"
|
|
1127
|
+
"core/audits/non-composited-animations.js | unsupportedTimingParameters": {
|
|
1254
1128
|
"message": "Effect has unsupported timing parameters"
|
|
1255
1129
|
},
|
|
1256
|
-
"
|
|
1257
|
-
"message": "Keep the quantity and size of network requests under the targets set by the provided performance budget. [Learn more](https://developers.google.com/web/tools/lighthouse/audits/budgets)."
|
|
1130
|
+
"core/audits/performance-budget.js | description": {
|
|
1131
|
+
"message": "Keep the quantity and size of network requests under the targets set by the provided performance budget. [Learn more about performance budgets](https://developers.google.com/web/tools/lighthouse/audits/budgets)."
|
|
1258
1132
|
},
|
|
1259
|
-
"
|
|
1133
|
+
"core/audits/performance-budget.js | requestCountOverBudget": {
|
|
1260
1134
|
"message": "{count,plural, =1{1 request}zero{# requests}two{# requests}few{# requests}many{# requests}other{# requests}}"
|
|
1261
1135
|
},
|
|
1262
|
-
"
|
|
1136
|
+
"core/audits/performance-budget.js | title": {
|
|
1263
1137
|
"message": "Performance budget"
|
|
1264
1138
|
},
|
|
1265
|
-
"
|
|
1266
|
-
"message": "Preload `optional` fonts so first-time visitors may use them. [Learn more](https://web.dev/preload-optional-fonts/)"
|
|
1139
|
+
"core/audits/preload-fonts.js | description": {
|
|
1140
|
+
"message": "Preload `optional` fonts so first-time visitors may use them. [Learn more about preloading fonts](https://web.dev/preload-optional-fonts/)"
|
|
1267
1141
|
},
|
|
1268
|
-
"
|
|
1142
|
+
"core/audits/preload-fonts.js | failureTitle": {
|
|
1269
1143
|
"message": "Fonts with `font-display: optional` are not preloaded"
|
|
1270
1144
|
},
|
|
1271
|
-
"
|
|
1145
|
+
"core/audits/preload-fonts.js | title": {
|
|
1272
1146
|
"message": "Fonts with `font-display: optional` are preloaded"
|
|
1273
1147
|
},
|
|
1274
|
-
"
|
|
1275
|
-
"message": "
|
|
1148
|
+
"core/audits/prioritize-lcp-image.js | description": {
|
|
1149
|
+
"message": "If the LCP element is dynamically added to the page, you should preload the image in order to improve LCP. [Learn more about preloading LCP elements](https://web.dev/optimize-lcp/#optimize-when-the-resource-is-discovered)."
|
|
1276
1150
|
},
|
|
1277
|
-
"
|
|
1151
|
+
"core/audits/prioritize-lcp-image.js | title": {
|
|
1278
1152
|
"message": "Preload Largest Contentful Paint image"
|
|
1279
1153
|
},
|
|
1280
|
-
"
|
|
1281
|
-
"message": "Redirects introduce additional delays before the page can be loaded. [Learn
|
|
1154
|
+
"core/audits/redirects.js | description": {
|
|
1155
|
+
"message": "Redirects introduce additional delays before the page can be loaded. [Learn how to avoid page redirects](https://developer.chrome.com/docs/lighthouse/performance/redirects/)."
|
|
1282
1156
|
},
|
|
1283
|
-
"
|
|
1157
|
+
"core/audits/redirects.js | title": {
|
|
1284
1158
|
"message": "Avoid multiple page redirects"
|
|
1285
1159
|
},
|
|
1286
|
-
"
|
|
1287
|
-
"message": "To set budgets for the quantity and size of page resources, add a budget.json file. [Learn more](https://web.dev/use-lighthouse-for-performance-budgets/)."
|
|
1160
|
+
"core/audits/resource-summary.js | description": {
|
|
1161
|
+
"message": "To set budgets for the quantity and size of page resources, add a budget.json file. [Learn more about performance budgets](https://web.dev/use-lighthouse-for-performance-budgets/)."
|
|
1288
1162
|
},
|
|
1289
|
-
"
|
|
1163
|
+
"core/audits/resource-summary.js | displayValue": {
|
|
1290
1164
|
"message": "{requestCount,plural, =1{1 request • {byteCount, number, bytes} KiB}zero{# requests • {byteCount, number, bytes} KiB}two{# requests • {byteCount, number, bytes} KiB}few{# requests • {byteCount, number, bytes} KiB}many{# requests • {byteCount, number, bytes} KiB}other{# requests • {byteCount, number, bytes} KiB}}"
|
|
1291
1165
|
},
|
|
1292
|
-
"
|
|
1166
|
+
"core/audits/resource-summary.js | title": {
|
|
1293
1167
|
"message": "Keep request counts low and transfer sizes small"
|
|
1294
1168
|
},
|
|
1295
|
-
"
|
|
1296
|
-
"message": "Canonical links suggest which URL to show in search results. [Learn more](https://
|
|
1169
|
+
"core/audits/seo/canonical.js | description": {
|
|
1170
|
+
"message": "Canonical links suggest which URL to show in search results. [Learn more about canonical links](https://developer.chrome.com/docs/lighthouse/seo/canonical/)."
|
|
1297
1171
|
},
|
|
1298
|
-
"
|
|
1172
|
+
"core/audits/seo/canonical.js | explanationConflict": {
|
|
1299
1173
|
"message": "Multiple conflicting URLs ({urlList})"
|
|
1300
1174
|
},
|
|
1301
|
-
"
|
|
1175
|
+
"core/audits/seo/canonical.js | explanationInvalid": {
|
|
1302
1176
|
"message": "Invalid URL ({url})"
|
|
1303
1177
|
},
|
|
1304
|
-
"
|
|
1178
|
+
"core/audits/seo/canonical.js | explanationPointsElsewhere": {
|
|
1305
1179
|
"message": "Points to another `hreflang` location ({url})"
|
|
1306
1180
|
},
|
|
1307
|
-
"
|
|
1181
|
+
"core/audits/seo/canonical.js | explanationRelative": {
|
|
1308
1182
|
"message": "Is not an absolute URL ({url})"
|
|
1309
1183
|
},
|
|
1310
|
-
"
|
|
1184
|
+
"core/audits/seo/canonical.js | explanationRoot": {
|
|
1311
1185
|
"message": "Points to the domain's root URL (the homepage), instead of an equivalent page of content"
|
|
1312
1186
|
},
|
|
1313
|
-
"
|
|
1187
|
+
"core/audits/seo/canonical.js | failureTitle": {
|
|
1314
1188
|
"message": "Document does not have a valid `rel=canonical`"
|
|
1315
1189
|
},
|
|
1316
|
-
"
|
|
1190
|
+
"core/audits/seo/canonical.js | title": {
|
|
1317
1191
|
"message": "Document has a valid `rel=canonical`"
|
|
1318
1192
|
},
|
|
1319
|
-
"
|
|
1193
|
+
"core/audits/seo/crawlable-anchors.js | columnFailingLink": {
|
|
1320
1194
|
"message": "Uncrawlable Link"
|
|
1321
1195
|
},
|
|
1322
|
-
"
|
|
1323
|
-
"message": "Search engines may use `href` attributes on links to crawl websites. Ensure that the `href` attribute of anchor elements links to an appropriate destination, so more pages of the site can be discovered. [Learn
|
|
1196
|
+
"core/audits/seo/crawlable-anchors.js | description": {
|
|
1197
|
+
"message": "Search engines may use `href` attributes on links to crawl websites. Ensure that the `href` attribute of anchor elements links to an appropriate destination, so more pages of the site can be discovered. [Learn how to make links crawlable](https://support.google.com/webmasters/answer/9112205)"
|
|
1324
1198
|
},
|
|
1325
|
-
"
|
|
1199
|
+
"core/audits/seo/crawlable-anchors.js | failureTitle": {
|
|
1326
1200
|
"message": "Links are not crawlable"
|
|
1327
1201
|
},
|
|
1328
|
-
"
|
|
1202
|
+
"core/audits/seo/crawlable-anchors.js | title": {
|
|
1329
1203
|
"message": "Links are crawlable"
|
|
1330
1204
|
},
|
|
1331
|
-
"
|
|
1205
|
+
"core/audits/seo/font-size.js | additionalIllegibleText": {
|
|
1332
1206
|
"message": "Add'l illegible text"
|
|
1333
1207
|
},
|
|
1334
|
-
"
|
|
1208
|
+
"core/audits/seo/font-size.js | columnFontSize": {
|
|
1335
1209
|
"message": "Font Size"
|
|
1336
1210
|
},
|
|
1337
|
-
"
|
|
1211
|
+
"core/audits/seo/font-size.js | columnPercentPageText": {
|
|
1338
1212
|
"message": "% of Page Text"
|
|
1339
1213
|
},
|
|
1340
|
-
"
|
|
1214
|
+
"core/audits/seo/font-size.js | columnSelector": {
|
|
1341
1215
|
"message": "Selector"
|
|
1342
1216
|
},
|
|
1343
|
-
"
|
|
1344
|
-
"message": "Font sizes less than 12px are too small to be legible and require mobile visitors to “pinch to zoom” in order to read. Strive to have >60% of page text ≥12px. [Learn more](https://
|
|
1217
|
+
"core/audits/seo/font-size.js | description": {
|
|
1218
|
+
"message": "Font sizes less than 12px are too small to be legible and require mobile visitors to “pinch to zoom” in order to read. Strive to have >60% of page text ≥12px. [Learn more about legible font sizes](https://developer.chrome.com/docs/lighthouse/seo/font-size/)."
|
|
1345
1219
|
},
|
|
1346
|
-
"
|
|
1220
|
+
"core/audits/seo/font-size.js | displayValue": {
|
|
1347
1221
|
"message": "{decimalProportion, number, extendedPercent} legible text"
|
|
1348
1222
|
},
|
|
1349
|
-
"
|
|
1223
|
+
"core/audits/seo/font-size.js | explanationViewport": {
|
|
1350
1224
|
"message": "Text is illegible because there's no viewport meta tag optimized for mobile screens."
|
|
1351
1225
|
},
|
|
1352
|
-
"
|
|
1226
|
+
"core/audits/seo/font-size.js | failureTitle": {
|
|
1353
1227
|
"message": "Document doesn't use legible font sizes"
|
|
1354
1228
|
},
|
|
1355
|
-
"
|
|
1229
|
+
"core/audits/seo/font-size.js | legibleText": {
|
|
1356
1230
|
"message": "Legible text"
|
|
1357
1231
|
},
|
|
1358
|
-
"
|
|
1232
|
+
"core/audits/seo/font-size.js | title": {
|
|
1359
1233
|
"message": "Document uses legible font sizes"
|
|
1360
1234
|
},
|
|
1361
|
-
"
|
|
1362
|
-
"message": "hreflang links tell search engines what version of a page they should list in search results for a given language or region. [Learn more](https://
|
|
1235
|
+
"core/audits/seo/hreflang.js | description": {
|
|
1236
|
+
"message": "hreflang links tell search engines what version of a page they should list in search results for a given language or region. [Learn more about `hreflang`](https://developer.chrome.com/docs/lighthouse/seo/hreflang/)."
|
|
1363
1237
|
},
|
|
1364
|
-
"
|
|
1238
|
+
"core/audits/seo/hreflang.js | failureTitle": {
|
|
1365
1239
|
"message": "Document doesn't have a valid `hreflang`"
|
|
1366
1240
|
},
|
|
1367
|
-
"
|
|
1241
|
+
"core/audits/seo/hreflang.js | notFullyQualified": {
|
|
1368
1242
|
"message": "Relative href value"
|
|
1369
1243
|
},
|
|
1370
|
-
"
|
|
1244
|
+
"core/audits/seo/hreflang.js | title": {
|
|
1371
1245
|
"message": "Document has a valid `hreflang`"
|
|
1372
1246
|
},
|
|
1373
|
-
"
|
|
1247
|
+
"core/audits/seo/hreflang.js | unexpectedLanguage": {
|
|
1374
1248
|
"message": "Unexpected language code"
|
|
1375
1249
|
},
|
|
1376
|
-
"
|
|
1377
|
-
"message": "Pages with unsuccessful HTTP status codes may not be indexed properly. [Learn more](https://
|
|
1250
|
+
"core/audits/seo/http-status-code.js | description": {
|
|
1251
|
+
"message": "Pages with unsuccessful HTTP status codes may not be indexed properly. [Learn more about HTTP status codes](https://developer.chrome.com/docs/lighthouse/seo/http-status-code/)."
|
|
1378
1252
|
},
|
|
1379
|
-
"
|
|
1253
|
+
"core/audits/seo/http-status-code.js | failureTitle": {
|
|
1380
1254
|
"message": "Page has unsuccessful HTTP status code"
|
|
1381
1255
|
},
|
|
1382
|
-
"
|
|
1256
|
+
"core/audits/seo/http-status-code.js | title": {
|
|
1383
1257
|
"message": "Page has successful HTTP status code"
|
|
1384
1258
|
},
|
|
1385
|
-
"
|
|
1386
|
-
"message": "Search engines are unable to include your pages in search results if they don't have permission to crawl them. [Learn more](https://
|
|
1259
|
+
"core/audits/seo/is-crawlable.js | description": {
|
|
1260
|
+
"message": "Search engines are unable to include your pages in search results if they don't have permission to crawl them. [Learn more about crawler directives](https://developer.chrome.com/docs/lighthouse/seo/is-crawlable/)."
|
|
1387
1261
|
},
|
|
1388
|
-
"
|
|
1262
|
+
"core/audits/seo/is-crawlable.js | failureTitle": {
|
|
1389
1263
|
"message": "Page is blocked from indexing"
|
|
1390
1264
|
},
|
|
1391
|
-
"
|
|
1265
|
+
"core/audits/seo/is-crawlable.js | title": {
|
|
1392
1266
|
"message": "Page isn’t blocked from indexing"
|
|
1393
1267
|
},
|
|
1394
|
-
"
|
|
1395
|
-
"message": "Descriptive link text helps search engines understand your content. [Learn more](https://
|
|
1268
|
+
"core/audits/seo/link-text.js | description": {
|
|
1269
|
+
"message": "Descriptive link text helps search engines understand your content. [Learn how to make links more accessible](https://developer.chrome.com/docs/lighthouse/seo/link-text/)."
|
|
1396
1270
|
},
|
|
1397
|
-
"
|
|
1271
|
+
"core/audits/seo/link-text.js | displayValue": {
|
|
1398
1272
|
"message": "{itemCount,plural, =1{1 link found}zero{# links found}two{# links found}few{# links found}many{# links found}other{# links found}}"
|
|
1399
1273
|
},
|
|
1400
|
-
"
|
|
1274
|
+
"core/audits/seo/link-text.js | failureTitle": {
|
|
1401
1275
|
"message": "Links do not have descriptive text"
|
|
1402
1276
|
},
|
|
1403
|
-
"
|
|
1277
|
+
"core/audits/seo/link-text.js | title": {
|
|
1404
1278
|
"message": "Links have descriptive text"
|
|
1405
1279
|
},
|
|
1406
|
-
"
|
|
1407
|
-
"message": "Run the [Structured Data Testing Tool](https://search.google.com/structured-data/testing-tool/) and the [Structured Data Linter](http://linter.structured-data.org/) to validate structured data. [Learn more](https://
|
|
1280
|
+
"core/audits/seo/manual/structured-data.js | description": {
|
|
1281
|
+
"message": "Run the [Structured Data Testing Tool](https://search.google.com/structured-data/testing-tool/) and the [Structured Data Linter](http://linter.structured-data.org/) to validate structured data. [Learn more about Structured Data](https://developer.chrome.com/docs/lighthouse/seo/structured-data/)."
|
|
1408
1282
|
},
|
|
1409
|
-
"
|
|
1283
|
+
"core/audits/seo/manual/structured-data.js | title": {
|
|
1410
1284
|
"message": "Structured data is valid"
|
|
1411
1285
|
},
|
|
1412
|
-
"
|
|
1413
|
-
"message": "Meta descriptions may be included in search results to concisely summarize page content. [Learn more](https://
|
|
1286
|
+
"core/audits/seo/meta-description.js | description": {
|
|
1287
|
+
"message": "Meta descriptions may be included in search results to concisely summarize page content. [Learn more about the meta description](https://developer.chrome.com/docs/lighthouse/seo/meta-description/)."
|
|
1414
1288
|
},
|
|
1415
|
-
"
|
|
1289
|
+
"core/audits/seo/meta-description.js | explanation": {
|
|
1416
1290
|
"message": "Description text is empty."
|
|
1417
1291
|
},
|
|
1418
|
-
"
|
|
1292
|
+
"core/audits/seo/meta-description.js | failureTitle": {
|
|
1419
1293
|
"message": "Document does not have a meta description"
|
|
1420
1294
|
},
|
|
1421
|
-
"
|
|
1295
|
+
"core/audits/seo/meta-description.js | title": {
|
|
1422
1296
|
"message": "Document has a meta description"
|
|
1423
1297
|
},
|
|
1424
|
-
"
|
|
1425
|
-
"message": "Search engines can't index plugin content, and many devices restrict plugins or don't support them. [Learn more](https://
|
|
1298
|
+
"core/audits/seo/plugins.js | description": {
|
|
1299
|
+
"message": "Search engines can't index plugin content, and many devices restrict plugins or don't support them. [Learn more about avoiding plugins](https://developer.chrome.com/docs/lighthouse/seo/plugins/)."
|
|
1426
1300
|
},
|
|
1427
|
-
"
|
|
1301
|
+
"core/audits/seo/plugins.js | failureTitle": {
|
|
1428
1302
|
"message": "Document uses plugins"
|
|
1429
1303
|
},
|
|
1430
|
-
"
|
|
1304
|
+
"core/audits/seo/plugins.js | title": {
|
|
1431
1305
|
"message": "Document avoids plugins"
|
|
1432
1306
|
},
|
|
1433
|
-
"
|
|
1434
|
-
"message": "If your robots.txt file is malformed, crawlers may not be able to understand how you want your website to be crawled or indexed. [Learn more](https://
|
|
1307
|
+
"core/audits/seo/robots-txt.js | description": {
|
|
1308
|
+
"message": "If your robots.txt file is malformed, crawlers may not be able to understand how you want your website to be crawled or indexed. [Learn more about robots.txt](https://developer.chrome.com/docs/lighthouse/seo/invalid-robots-txt/)."
|
|
1435
1309
|
},
|
|
1436
|
-
"
|
|
1310
|
+
"core/audits/seo/robots-txt.js | displayValueHttpBadCode": {
|
|
1437
1311
|
"message": "Request for robots.txt returned HTTP status: {statusCode}"
|
|
1438
1312
|
},
|
|
1439
|
-
"
|
|
1313
|
+
"core/audits/seo/robots-txt.js | displayValueValidationError": {
|
|
1440
1314
|
"message": "{itemCount,plural, =1{1 error found}zero{# errors found}two{# errors found}few{# errors found}many{# errors found}other{# errors found}}"
|
|
1441
1315
|
},
|
|
1442
|
-
"
|
|
1316
|
+
"core/audits/seo/robots-txt.js | explanation": {
|
|
1443
1317
|
"message": "Lighthouse was unable to download a robots.txt file"
|
|
1444
1318
|
},
|
|
1445
|
-
"
|
|
1319
|
+
"core/audits/seo/robots-txt.js | failureTitle": {
|
|
1446
1320
|
"message": "robots.txt is not valid"
|
|
1447
1321
|
},
|
|
1448
|
-
"
|
|
1322
|
+
"core/audits/seo/robots-txt.js | title": {
|
|
1449
1323
|
"message": "robots.txt is valid"
|
|
1450
1324
|
},
|
|
1451
|
-
"
|
|
1452
|
-
"message": "Interactive elements like buttons and links should be large enough (48x48px), and have enough space around them, to be easy enough to tap without overlapping onto other elements. [Learn more](https://
|
|
1325
|
+
"core/audits/seo/tap-targets.js | description": {
|
|
1326
|
+
"message": "Interactive elements like buttons and links should be large enough (48x48px), and have enough space around them, to be easy enough to tap without overlapping onto other elements. [Learn more about tap targets](https://developer.chrome.com/docs/lighthouse/seo/tap-targets/)."
|
|
1453
1327
|
},
|
|
1454
|
-
"
|
|
1328
|
+
"core/audits/seo/tap-targets.js | displayValue": {
|
|
1455
1329
|
"message": "{decimalProportion, number, percent} appropriately sized tap targets"
|
|
1456
1330
|
},
|
|
1457
|
-
"
|
|
1331
|
+
"core/audits/seo/tap-targets.js | explanationViewportMetaNotOptimized": {
|
|
1458
1332
|
"message": "Tap targets are too small because there's no viewport meta tag optimized for mobile screens"
|
|
1459
1333
|
},
|
|
1460
|
-
"
|
|
1334
|
+
"core/audits/seo/tap-targets.js | failureTitle": {
|
|
1461
1335
|
"message": "Tap targets are not sized appropriately"
|
|
1462
1336
|
},
|
|
1463
|
-
"
|
|
1337
|
+
"core/audits/seo/tap-targets.js | overlappingTargetHeader": {
|
|
1464
1338
|
"message": "Overlapping Target"
|
|
1465
1339
|
},
|
|
1466
|
-
"
|
|
1340
|
+
"core/audits/seo/tap-targets.js | tapTargetHeader": {
|
|
1467
1341
|
"message": "Tap Target"
|
|
1468
1342
|
},
|
|
1469
|
-
"
|
|
1343
|
+
"core/audits/seo/tap-targets.js | title": {
|
|
1470
1344
|
"message": "Tap targets are sized appropriately"
|
|
1471
1345
|
},
|
|
1472
|
-
"
|
|
1473
|
-
"message": "Keep the server response time for the main document short because all other requests depend on it. [Learn more](https://
|
|
1346
|
+
"core/audits/server-response-time.js | description": {
|
|
1347
|
+
"message": "Keep the server response time for the main document short because all other requests depend on it. [Learn more about the Time to First Byte metric](https://developer.chrome.com/docs/lighthouse/performance/time-to-first-byte/)."
|
|
1474
1348
|
},
|
|
1475
|
-
"
|
|
1349
|
+
"core/audits/server-response-time.js | displayValue": {
|
|
1476
1350
|
"message": "Root document took {timeInMs, number, milliseconds} ms"
|
|
1477
1351
|
},
|
|
1478
|
-
"
|
|
1352
|
+
"core/audits/server-response-time.js | failureTitle": {
|
|
1479
1353
|
"message": "Reduce initial server response time"
|
|
1480
1354
|
},
|
|
1481
|
-
"
|
|
1355
|
+
"core/audits/server-response-time.js | title": {
|
|
1482
1356
|
"message": "Initial server response time was short"
|
|
1483
1357
|
},
|
|
1484
|
-
"
|
|
1485
|
-
"message": "The service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. [Learn more](https://
|
|
1358
|
+
"core/audits/service-worker.js | description": {
|
|
1359
|
+
"message": "The service worker is the technology that enables your app to use many Progressive Web App features, such as offline, add to homescreen, and push notifications. [Learn more about Service Workers](https://developer.chrome.com/docs/lighthouse/pwa/service-worker/)."
|
|
1486
1360
|
},
|
|
1487
|
-
"
|
|
1361
|
+
"core/audits/service-worker.js | explanationBadManifest": {
|
|
1488
1362
|
"message": "This page is controlled by a service worker, however no `start_url` was found because manifest failed to parse as valid JSON"
|
|
1489
1363
|
},
|
|
1490
|
-
"
|
|
1364
|
+
"core/audits/service-worker.js | explanationBadStartUrl": {
|
|
1491
1365
|
"message": "This page is controlled by a service worker, however the `start_url` ({startUrl}) is not in the service worker's scope ({scopeUrl})"
|
|
1492
1366
|
},
|
|
1493
|
-
"
|
|
1367
|
+
"core/audits/service-worker.js | explanationNoManifest": {
|
|
1494
1368
|
"message": "This page is controlled by a service worker, however no `start_url` was found because no manifest was fetched."
|
|
1495
1369
|
},
|
|
1496
|
-
"
|
|
1370
|
+
"core/audits/service-worker.js | explanationOutOfScope": {
|
|
1497
1371
|
"message": "This origin has one or more service workers, however the page ({pageUrl}) is not in scope."
|
|
1498
1372
|
},
|
|
1499
|
-
"
|
|
1373
|
+
"core/audits/service-worker.js | failureTitle": {
|
|
1500
1374
|
"message": "Does not register a service worker that controls page and `start_url`"
|
|
1501
1375
|
},
|
|
1502
|
-
"
|
|
1376
|
+
"core/audits/service-worker.js | title": {
|
|
1503
1377
|
"message": "Registers a service worker that controls page and `start_url`"
|
|
1504
1378
|
},
|
|
1505
|
-
"
|
|
1506
|
-
"message": "A themed splash screen ensures a high-quality experience when users launch your app from their homescreens. [Learn more](https://
|
|
1379
|
+
"core/audits/splash-screen.js | description": {
|
|
1380
|
+
"message": "A themed splash screen ensures a high-quality experience when users launch your app from their homescreens. [Learn more about splash screens](https://developer.chrome.com/docs/lighthouse/pwa/splash-screen/)."
|
|
1507
1381
|
},
|
|
1508
|
-
"
|
|
1382
|
+
"core/audits/splash-screen.js | failureTitle": {
|
|
1509
1383
|
"message": "Is not configured for a custom splash screen"
|
|
1510
1384
|
},
|
|
1511
|
-
"
|
|
1385
|
+
"core/audits/splash-screen.js | title": {
|
|
1512
1386
|
"message": "Configured for a custom splash screen"
|
|
1513
1387
|
},
|
|
1514
|
-
"
|
|
1515
|
-
"message": "The browser address bar can be themed to match your site. [Learn more](https://
|
|
1388
|
+
"core/audits/themed-omnibox.js | description": {
|
|
1389
|
+
"message": "The browser address bar can be themed to match your site. [Learn more about theming the address bar](https://developer.chrome.com/docs/lighthouse/pwa/themed-omnibox/)."
|
|
1516
1390
|
},
|
|
1517
|
-
"
|
|
1391
|
+
"core/audits/themed-omnibox.js | failureTitle": {
|
|
1518
1392
|
"message": "Does not set a theme color for the address bar."
|
|
1519
1393
|
},
|
|
1520
|
-
"
|
|
1394
|
+
"core/audits/themed-omnibox.js | title": {
|
|
1521
1395
|
"message": "Sets a theme color for the address bar."
|
|
1522
1396
|
},
|
|
1523
|
-
"
|
|
1397
|
+
"core/audits/third-party-facades.js | categoryCustomerSuccess": {
|
|
1524
1398
|
"message": "{productName} (Customer Success)"
|
|
1525
1399
|
},
|
|
1526
|
-
"
|
|
1400
|
+
"core/audits/third-party-facades.js | categoryMarketing": {
|
|
1527
1401
|
"message": "{productName} (Marketing)"
|
|
1528
1402
|
},
|
|
1529
|
-
"
|
|
1403
|
+
"core/audits/third-party-facades.js | categorySocial": {
|
|
1530
1404
|
"message": "{productName} (Social)"
|
|
1531
1405
|
},
|
|
1532
|
-
"
|
|
1406
|
+
"core/audits/third-party-facades.js | categoryVideo": {
|
|
1533
1407
|
"message": "{productName} (Video)"
|
|
1534
1408
|
},
|
|
1535
|
-
"
|
|
1409
|
+
"core/audits/third-party-facades.js | columnProduct": {
|
|
1536
1410
|
"message": "Product"
|
|
1537
1411
|
},
|
|
1538
|
-
"
|
|
1539
|
-
"message": "Some third-party embeds can be lazy loaded. Consider replacing them with a facade until they are required. [Learn
|
|
1412
|
+
"core/audits/third-party-facades.js | description": {
|
|
1413
|
+
"message": "Some third-party embeds can be lazy loaded. Consider replacing them with a facade until they are required. [Learn how to defer third-parties with a facade](https://developer.chrome.com/docs/lighthouse/performance/third-party-facades/)."
|
|
1540
1414
|
},
|
|
1541
|
-
"
|
|
1415
|
+
"core/audits/third-party-facades.js | displayValue": {
|
|
1542
1416
|
"message": "{itemCount,plural, =1{# facade alternative available}zero{# facade alternatives available}two{# facade alternatives available}few{# facade alternatives available}many{# facade alternatives available}other{# facade alternatives available}}"
|
|
1543
1417
|
},
|
|
1544
|
-
"
|
|
1418
|
+
"core/audits/third-party-facades.js | failureTitle": {
|
|
1545
1419
|
"message": "Some third-party resources can be lazy loaded with a facade"
|
|
1546
1420
|
},
|
|
1547
|
-
"
|
|
1421
|
+
"core/audits/third-party-facades.js | title": {
|
|
1548
1422
|
"message": "Lazy load third-party resources with facades"
|
|
1549
1423
|
},
|
|
1550
|
-
"
|
|
1424
|
+
"core/audits/third-party-summary.js | columnThirdParty": {
|
|
1551
1425
|
"message": "Third-Party"
|
|
1552
1426
|
},
|
|
1553
|
-
"
|
|
1554
|
-
"message": "Third-party code can significantly impact load performance. Limit the number of redundant third-party providers and try to load third-party code after your page has primarily finished loading. [Learn
|
|
1427
|
+
"core/audits/third-party-summary.js | description": {
|
|
1428
|
+
"message": "Third-party code can significantly impact load performance. Limit the number of redundant third-party providers and try to load third-party code after your page has primarily finished loading. [Learn how to minimize third-party impact](https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/loading-third-party-javascript/)."
|
|
1555
1429
|
},
|
|
1556
|
-
"
|
|
1430
|
+
"core/audits/third-party-summary.js | displayValue": {
|
|
1557
1431
|
"message": "Third-party code blocked the main thread for {timeInMs, number, milliseconds} ms"
|
|
1558
1432
|
},
|
|
1559
|
-
"
|
|
1433
|
+
"core/audits/third-party-summary.js | failureTitle": {
|
|
1560
1434
|
"message": "Reduce the impact of third-party code"
|
|
1561
1435
|
},
|
|
1562
|
-
"
|
|
1436
|
+
"core/audits/third-party-summary.js | title": {
|
|
1563
1437
|
"message": "Minimize third-party usage"
|
|
1564
1438
|
},
|
|
1565
|
-
"
|
|
1439
|
+
"core/audits/timing-budget.js | columnMeasurement": {
|
|
1566
1440
|
"message": "Measurement"
|
|
1567
1441
|
},
|
|
1568
|
-
"
|
|
1442
|
+
"core/audits/timing-budget.js | columnTimingMetric": {
|
|
1569
1443
|
"message": "Metric"
|
|
1570
1444
|
},
|
|
1571
|
-
"
|
|
1572
|
-
"message": "Set a timing budget to help you keep an eye on the performance of your site. Performant sites load fast and respond to user input events quickly. [Learn more](https://developers.google.com/web/tools/lighthouse/audits/budgets)."
|
|
1445
|
+
"core/audits/timing-budget.js | description": {
|
|
1446
|
+
"message": "Set a timing budget to help you keep an eye on the performance of your site. Performant sites load fast and respond to user input events quickly. [Learn more about performance budgets](https://developers.google.com/web/tools/lighthouse/audits/budgets)."
|
|
1573
1447
|
},
|
|
1574
|
-
"
|
|
1448
|
+
"core/audits/timing-budget.js | title": {
|
|
1575
1449
|
"message": "Timing budget"
|
|
1576
1450
|
},
|
|
1577
|
-
"
|
|
1578
|
-
"message": "Set an explicit width and height on image elements to reduce layout shifts and improve CLS. [Learn
|
|
1451
|
+
"core/audits/unsized-images.js | description": {
|
|
1452
|
+
"message": "Set an explicit width and height on image elements to reduce layout shifts and improve CLS. [Learn how to set image dimensions](https://web.dev/optimize-cls/#images-without-dimensions)"
|
|
1579
1453
|
},
|
|
1580
|
-
"
|
|
1454
|
+
"core/audits/unsized-images.js | failureTitle": {
|
|
1581
1455
|
"message": "Image elements do not have explicit `width` and `height`"
|
|
1582
1456
|
},
|
|
1583
|
-
"
|
|
1457
|
+
"core/audits/unsized-images.js | title": {
|
|
1584
1458
|
"message": "Image elements have explicit `width` and `height`"
|
|
1585
1459
|
},
|
|
1586
|
-
"
|
|
1460
|
+
"core/audits/user-timings.js | columnType": {
|
|
1587
1461
|
"message": "Type"
|
|
1588
1462
|
},
|
|
1589
|
-
"
|
|
1590
|
-
"message": "Consider instrumenting your app with the User Timing API to measure your app's real-world performance during key user experiences. [Learn more](https://
|
|
1463
|
+
"core/audits/user-timings.js | description": {
|
|
1464
|
+
"message": "Consider instrumenting your app with the User Timing API to measure your app's real-world performance during key user experiences. [Learn more about User Timing marks](https://developer.chrome.com/docs/lighthouse/performance/user-timings/)."
|
|
1591
1465
|
},
|
|
1592
|
-
"
|
|
1466
|
+
"core/audits/user-timings.js | displayValue": {
|
|
1593
1467
|
"message": "{itemCount,plural, =1{1 user timing}zero{# user timings}two{# user timings}few{# user timings}many{# user timings}other{# user timings}}"
|
|
1594
1468
|
},
|
|
1595
|
-
"
|
|
1469
|
+
"core/audits/user-timings.js | title": {
|
|
1596
1470
|
"message": "User Timing marks and measures"
|
|
1597
1471
|
},
|
|
1598
|
-
"
|
|
1472
|
+
"core/audits/uses-rel-preconnect.js | crossoriginWarning": {
|
|
1599
1473
|
"message": "A `<link rel=preconnect>` was found for \"{securityOrigin}\" but was not used by the browser. Check that you are using the `crossorigin` attribute properly."
|
|
1600
1474
|
},
|
|
1601
|
-
"
|
|
1602
|
-
"message": "Consider adding `preconnect` or `dns-prefetch` resource hints to establish early connections to important third-party origins. [Learn
|
|
1475
|
+
"core/audits/uses-rel-preconnect.js | description": {
|
|
1476
|
+
"message": "Consider adding `preconnect` or `dns-prefetch` resource hints to establish early connections to important third-party origins. [Learn how to preconnect to required origins](https://developer.chrome.com/docs/lighthouse/performance/uses-rel-preconnect/)."
|
|
1603
1477
|
},
|
|
1604
|
-
"
|
|
1478
|
+
"core/audits/uses-rel-preconnect.js | title": {
|
|
1605
1479
|
"message": "Preconnect to required origins"
|
|
1606
1480
|
},
|
|
1607
|
-
"
|
|
1481
|
+
"core/audits/uses-rel-preconnect.js | tooManyPreconnectLinksWarning": {
|
|
1608
1482
|
"message": "More than 2 `<link rel=preconnect>` connections were found. These should be used sparingly and only to the most important origins."
|
|
1609
1483
|
},
|
|
1610
|
-
"
|
|
1484
|
+
"core/audits/uses-rel-preconnect.js | unusedWarning": {
|
|
1611
1485
|
"message": "A `<link rel=preconnect>` was found for \"{securityOrigin}\" but was not used by the browser. Only use `preconnect` for important origins that the page will certainly request."
|
|
1612
1486
|
},
|
|
1613
|
-
"
|
|
1487
|
+
"core/audits/uses-rel-preload.js | crossoriginWarning": {
|
|
1614
1488
|
"message": "A preload `<link>` was found for \"{preloadURL}\" but was not used by the browser. Check that you are using the `crossorigin` attribute properly."
|
|
1615
1489
|
},
|
|
1616
|
-
"
|
|
1617
|
-
"message": "Consider using `<link rel=preload>` to prioritize fetching resources that are currently requested later in page load. [Learn
|
|
1490
|
+
"core/audits/uses-rel-preload.js | description": {
|
|
1491
|
+
"message": "Consider using `<link rel=preload>` to prioritize fetching resources that are currently requested later in page load. [Learn how to preload key requests](https://developer.chrome.com/docs/lighthouse/performance/uses-rel-preload/)."
|
|
1618
1492
|
},
|
|
1619
|
-
"
|
|
1493
|
+
"core/audits/uses-rel-preload.js | title": {
|
|
1620
1494
|
"message": "Preload key requests"
|
|
1621
1495
|
},
|
|
1622
|
-
"
|
|
1496
|
+
"core/audits/valid-source-maps.js | columnMapURL": {
|
|
1623
1497
|
"message": "Map URL"
|
|
1624
1498
|
},
|
|
1625
|
-
"
|
|
1626
|
-
"message": "Source maps translate minified code to the original source code. This helps developers debug in production. In addition, Lighthouse is able to provide further insights. Consider deploying source maps to take advantage of these benefits. [Learn more](https://developers.google.com/web/tools/chrome-devtools/javascript/source-maps)."
|
|
1499
|
+
"core/audits/valid-source-maps.js | description": {
|
|
1500
|
+
"message": "Source maps translate minified code to the original source code. This helps developers debug in production. In addition, Lighthouse is able to provide further insights. Consider deploying source maps to take advantage of these benefits. [Learn more about source maps](https://developers.google.com/web/tools/chrome-devtools/javascript/source-maps)."
|
|
1627
1501
|
},
|
|
1628
|
-
"
|
|
1502
|
+
"core/audits/valid-source-maps.js | failureTitle": {
|
|
1629
1503
|
"message": "Missing source maps for large first-party JavaScript"
|
|
1630
1504
|
},
|
|
1631
|
-
"
|
|
1505
|
+
"core/audits/valid-source-maps.js | missingSourceMapErrorMessage": {
|
|
1632
1506
|
"message": "Large JavaScript file is missing a source map"
|
|
1633
1507
|
},
|
|
1634
|
-
"
|
|
1508
|
+
"core/audits/valid-source-maps.js | missingSourceMapItemsWarningMesssage": {
|
|
1635
1509
|
"message": "{missingItems,plural, =1{Warning: missing 1 item in `.sourcesContent`}zero{Warning: missing # items in `.sourcesContent`}two{Warning: missing # items in `.sourcesContent`}few{Warning: missing # items in `.sourcesContent`}many{Warning: missing # items in `.sourcesContent`}other{Warning: missing # items in `.sourcesContent`}}"
|
|
1636
1510
|
},
|
|
1637
|
-
"
|
|
1511
|
+
"core/audits/valid-source-maps.js | title": {
|
|
1638
1512
|
"message": "Page has valid source maps"
|
|
1639
1513
|
},
|
|
1640
|
-
"
|
|
1641
|
-
"message": "A `<meta name=\"viewport\">` not only optimizes your app for mobile screen sizes, but also prevents [a 300 millisecond delay to user input](https://
|
|
1514
|
+
"core/audits/viewport.js | description": {
|
|
1515
|
+
"message": "A `<meta name=\"viewport\">` not only optimizes your app for mobile screen sizes, but also prevents [a 300 millisecond delay to user input](https://developer.chrome.com/blog/300ms-tap-delay-gone-away/). [Learn more about using the viewport meta tag](https://developer.chrome.com/docs/lighthouse/pwa/viewport/)."
|
|
1642
1516
|
},
|
|
1643
|
-
"
|
|
1517
|
+
"core/audits/viewport.js | explanationNoTag": {
|
|
1644
1518
|
"message": "No `<meta name=\"viewport\">` tag found"
|
|
1645
1519
|
},
|
|
1646
|
-
"
|
|
1520
|
+
"core/audits/viewport.js | failureTitle": {
|
|
1647
1521
|
"message": "Does not have a `<meta name=\"viewport\">` tag with `width` or `initial-scale`"
|
|
1648
1522
|
},
|
|
1649
|
-
"
|
|
1523
|
+
"core/audits/viewport.js | title": {
|
|
1650
1524
|
"message": "Has a `<meta name=\"viewport\">` tag with `width` or `initial-scale`"
|
|
1651
1525
|
},
|
|
1652
|
-
"
|
|
1526
|
+
"core/audits/work-during-interaction.js | description": {
|
|
1527
|
+
"message": "This is the thread-blocking work occurring during the Interaction to Next Paint measurement. [Learn more about the Interaction to Next Paint metric](https://web.dev/inp/)."
|
|
1528
|
+
},
|
|
1529
|
+
"core/audits/work-during-interaction.js | displayValue": {
|
|
1530
|
+
"message": "{timeInMs, number, milliseconds} ms spent on event '{interactionType}'"
|
|
1531
|
+
},
|
|
1532
|
+
"core/audits/work-during-interaction.js | eventTarget": {
|
|
1533
|
+
"message": "Event target"
|
|
1534
|
+
},
|
|
1535
|
+
"core/audits/work-during-interaction.js | failureTitle": {
|
|
1536
|
+
"message": "Minimize work during key interaction"
|
|
1537
|
+
},
|
|
1538
|
+
"core/audits/work-during-interaction.js | inputDelay": {
|
|
1539
|
+
"message": "Input delay"
|
|
1540
|
+
},
|
|
1541
|
+
"core/audits/work-during-interaction.js | presentationDelay": {
|
|
1542
|
+
"message": "Presentation delay"
|
|
1543
|
+
},
|
|
1544
|
+
"core/audits/work-during-interaction.js | processingTime": {
|
|
1545
|
+
"message": "Processing time"
|
|
1546
|
+
},
|
|
1547
|
+
"core/audits/work-during-interaction.js | title": {
|
|
1548
|
+
"message": "Minimizes work during key interaction"
|
|
1549
|
+
},
|
|
1550
|
+
"core/config/default-config.js | a11yAriaGroupDescription": {
|
|
1653
1551
|
"message": "These are opportunities to improve the usage of ARIA in your application which may enhance the experience for users of assistive technology, like a screen reader."
|
|
1654
1552
|
},
|
|
1655
|
-
"
|
|
1553
|
+
"core/config/default-config.js | a11yAriaGroupTitle": {
|
|
1656
1554
|
"message": "ARIA"
|
|
1657
1555
|
},
|
|
1658
|
-
"
|
|
1556
|
+
"core/config/default-config.js | a11yAudioVideoGroupDescription": {
|
|
1659
1557
|
"message": "These are opportunities to provide alternative content for audio and video. This may improve the experience for users with hearing or vision impairments."
|
|
1660
1558
|
},
|
|
1661
|
-
"
|
|
1559
|
+
"core/config/default-config.js | a11yAudioVideoGroupTitle": {
|
|
1662
1560
|
"message": "Audio and video"
|
|
1663
1561
|
},
|
|
1664
|
-
"
|
|
1562
|
+
"core/config/default-config.js | a11yBestPracticesGroupDescription": {
|
|
1665
1563
|
"message": "These items highlight common accessibility best practices."
|
|
1666
1564
|
},
|
|
1667
|
-
"
|
|
1565
|
+
"core/config/default-config.js | a11yBestPracticesGroupTitle": {
|
|
1668
1566
|
"message": "Best practices"
|
|
1669
1567
|
},
|
|
1670
|
-
"
|
|
1671
|
-
"message": "These checks highlight opportunities to [improve the accessibility of your web app](https://
|
|
1568
|
+
"core/config/default-config.js | a11yCategoryDescription": {
|
|
1569
|
+
"message": "These checks highlight opportunities to [improve the accessibility of your web app](https://developer.chrome.com/docs/lighthouse/accessibility/). Only a subset of accessibility issues can be automatically detected so manual testing is also encouraged."
|
|
1672
1570
|
},
|
|
1673
|
-
"
|
|
1674
|
-
"message": "These items address areas which an automated testing tool cannot cover. Learn more in our guide on [conducting an accessibility review](https://
|
|
1571
|
+
"core/config/default-config.js | a11yCategoryManualDescription": {
|
|
1572
|
+
"message": "These items address areas which an automated testing tool cannot cover. Learn more in our guide on [conducting an accessibility review](https://web.dev/how-to-review/)."
|
|
1675
1573
|
},
|
|
1676
|
-
"
|
|
1574
|
+
"core/config/default-config.js | a11yCategoryTitle": {
|
|
1677
1575
|
"message": "Accessibility"
|
|
1678
1576
|
},
|
|
1679
|
-
"
|
|
1577
|
+
"core/config/default-config.js | a11yColorContrastGroupDescription": {
|
|
1680
1578
|
"message": "These are opportunities to improve the legibility of your content."
|
|
1681
1579
|
},
|
|
1682
|
-
"
|
|
1580
|
+
"core/config/default-config.js | a11yColorContrastGroupTitle": {
|
|
1683
1581
|
"message": "Contrast"
|
|
1684
1582
|
},
|
|
1685
|
-
"
|
|
1583
|
+
"core/config/default-config.js | a11yLanguageGroupDescription": {
|
|
1686
1584
|
"message": "These are opportunities to improve the interpretation of your content by users in different locales."
|
|
1687
1585
|
},
|
|
1688
|
-
"
|
|
1586
|
+
"core/config/default-config.js | a11yLanguageGroupTitle": {
|
|
1689
1587
|
"message": "Internationalization and localization"
|
|
1690
1588
|
},
|
|
1691
|
-
"
|
|
1589
|
+
"core/config/default-config.js | a11yNamesLabelsGroupDescription": {
|
|
1692
1590
|
"message": "These are opportunities to improve the semantics of the controls in your application. This may enhance the experience for users of assistive technology, like a screen reader."
|
|
1693
1591
|
},
|
|
1694
|
-
"
|
|
1592
|
+
"core/config/default-config.js | a11yNamesLabelsGroupTitle": {
|
|
1695
1593
|
"message": "Names and labels"
|
|
1696
1594
|
},
|
|
1697
|
-
"
|
|
1595
|
+
"core/config/default-config.js | a11yNavigationGroupDescription": {
|
|
1698
1596
|
"message": "These are opportunities to improve keyboard navigation in your application."
|
|
1699
1597
|
},
|
|
1700
|
-
"
|
|
1598
|
+
"core/config/default-config.js | a11yNavigationGroupTitle": {
|
|
1701
1599
|
"message": "Navigation"
|
|
1702
1600
|
},
|
|
1703
|
-
"
|
|
1601
|
+
"core/config/default-config.js | a11yTablesListsVideoGroupDescription": {
|
|
1704
1602
|
"message": "These are opportunities to improve the experience of reading tabular or list data using assistive technology, like a screen reader."
|
|
1705
1603
|
},
|
|
1706
|
-
"
|
|
1604
|
+
"core/config/default-config.js | a11yTablesListsVideoGroupTitle": {
|
|
1707
1605
|
"message": "Tables and lists"
|
|
1708
1606
|
},
|
|
1709
|
-
"
|
|
1607
|
+
"core/config/default-config.js | bestPracticesBrowserCompatGroupTitle": {
|
|
1710
1608
|
"message": "Browser Compatibility"
|
|
1711
1609
|
},
|
|
1712
|
-
"
|
|
1610
|
+
"core/config/default-config.js | bestPracticesCategoryTitle": {
|
|
1713
1611
|
"message": "Best Practices"
|
|
1714
1612
|
},
|
|
1715
|
-
"
|
|
1613
|
+
"core/config/default-config.js | bestPracticesGeneralGroupTitle": {
|
|
1716
1614
|
"message": "General"
|
|
1717
1615
|
},
|
|
1718
|
-
"
|
|
1616
|
+
"core/config/default-config.js | bestPracticesTrustSafetyGroupTitle": {
|
|
1719
1617
|
"message": "Trust and Safety"
|
|
1720
1618
|
},
|
|
1721
|
-
"
|
|
1619
|
+
"core/config/default-config.js | bestPracticesUXGroupTitle": {
|
|
1722
1620
|
"message": "User Experience"
|
|
1723
1621
|
},
|
|
1724
|
-
"
|
|
1622
|
+
"core/config/default-config.js | budgetsGroupDescription": {
|
|
1725
1623
|
"message": "Performance budgets set standards for the performance of your site."
|
|
1726
1624
|
},
|
|
1727
|
-
"
|
|
1625
|
+
"core/config/default-config.js | budgetsGroupTitle": {
|
|
1728
1626
|
"message": "Budgets"
|
|
1729
1627
|
},
|
|
1730
|
-
"
|
|
1731
|
-
"message": "More information about the performance of your application. These numbers don't [directly affect](https://
|
|
1628
|
+
"core/config/default-config.js | diagnosticsGroupDescription": {
|
|
1629
|
+
"message": "More information about the performance of your application. These numbers don't [directly affect](https://developer.chrome.com/docs/lighthouse/performance/performance-scoring/) the Performance score."
|
|
1732
1630
|
},
|
|
1733
|
-
"
|
|
1631
|
+
"core/config/default-config.js | diagnosticsGroupTitle": {
|
|
1734
1632
|
"message": "Diagnostics"
|
|
1735
1633
|
},
|
|
1736
|
-
"
|
|
1634
|
+
"core/config/default-config.js | firstPaintImprovementsGroupDescription": {
|
|
1737
1635
|
"message": "The most critical aspect of performance is how quickly pixels are rendered onscreen. Key metrics: First Contentful Paint, First Meaningful Paint"
|
|
1738
1636
|
},
|
|
1739
|
-
"
|
|
1637
|
+
"core/config/default-config.js | firstPaintImprovementsGroupTitle": {
|
|
1740
1638
|
"message": "First Paint Improvements"
|
|
1741
1639
|
},
|
|
1742
|
-
"
|
|
1743
|
-
"message": "These suggestions can help your page load faster. They don't [directly affect](https://
|
|
1640
|
+
"core/config/default-config.js | loadOpportunitiesGroupDescription": {
|
|
1641
|
+
"message": "These suggestions can help your page load faster. They don't [directly affect](https://developer.chrome.com/docs/lighthouse/performance/performance-scoring/) the Performance score."
|
|
1744
1642
|
},
|
|
1745
|
-
"
|
|
1643
|
+
"core/config/default-config.js | loadOpportunitiesGroupTitle": {
|
|
1746
1644
|
"message": "Opportunities"
|
|
1747
1645
|
},
|
|
1748
|
-
"
|
|
1646
|
+
"core/config/default-config.js | metricGroupTitle": {
|
|
1749
1647
|
"message": "Metrics"
|
|
1750
1648
|
},
|
|
1751
|
-
"
|
|
1649
|
+
"core/config/default-config.js | overallImprovementsGroupDescription": {
|
|
1752
1650
|
"message": "Enhance the overall loading experience, so the page is responsive and ready to use as soon as possible. Key metrics: Time to Interactive, Speed Index"
|
|
1753
1651
|
},
|
|
1754
|
-
"
|
|
1652
|
+
"core/config/default-config.js | overallImprovementsGroupTitle": {
|
|
1755
1653
|
"message": "Overall Improvements"
|
|
1756
1654
|
},
|
|
1757
|
-
"
|
|
1655
|
+
"core/config/default-config.js | performanceCategoryTitle": {
|
|
1758
1656
|
"message": "Performance"
|
|
1759
1657
|
},
|
|
1760
|
-
"
|
|
1761
|
-
"message": "These checks validate the aspects of a Progressive Web App. [Learn
|
|
1658
|
+
"core/config/default-config.js | pwaCategoryDescription": {
|
|
1659
|
+
"message": "These checks validate the aspects of a Progressive Web App. [Learn what makes a good Progressive Web App](https://web.dev/pwa-checklist/)."
|
|
1762
1660
|
},
|
|
1763
|
-
"
|
|
1764
|
-
"message": "These checks are required by the baseline [PWA Checklist](https://
|
|
1661
|
+
"core/config/default-config.js | pwaCategoryManualDescription": {
|
|
1662
|
+
"message": "These checks are required by the baseline [PWA Checklist](https://web.dev/pwa-checklist/) but are not automatically checked by Lighthouse. They do not affect your score but it's important that you verify them manually."
|
|
1765
1663
|
},
|
|
1766
|
-
"
|
|
1664
|
+
"core/config/default-config.js | pwaCategoryTitle": {
|
|
1767
1665
|
"message": "PWA"
|
|
1768
1666
|
},
|
|
1769
|
-
"
|
|
1667
|
+
"core/config/default-config.js | pwaInstallableGroupTitle": {
|
|
1770
1668
|
"message": "Installable"
|
|
1771
1669
|
},
|
|
1772
|
-
"
|
|
1670
|
+
"core/config/default-config.js | pwaOptimizedGroupTitle": {
|
|
1773
1671
|
"message": "PWA Optimized"
|
|
1774
1672
|
},
|
|
1775
|
-
"
|
|
1776
|
-
"message": "These checks ensure that your page is following basic search engine optimization advice. There are many additional factors Lighthouse does not score here that may affect your search ranking, including performance on [Core Web Vitals](https://web.dev/learn-web-vitals/). [Learn more](https://support.google.com/webmasters/answer/35769)."
|
|
1673
|
+
"core/config/default-config.js | seoCategoryDescription": {
|
|
1674
|
+
"message": "These checks ensure that your page is following basic search engine optimization advice. There are many additional factors Lighthouse does not score here that may affect your search ranking, including performance on [Core Web Vitals](https://web.dev/learn-core-web-vitals/). [Learn more about Google Search Essentials](https://support.google.com/webmasters/answer/35769)."
|
|
1777
1675
|
},
|
|
1778
|
-
"
|
|
1676
|
+
"core/config/default-config.js | seoCategoryManualDescription": {
|
|
1779
1677
|
"message": "Run these additional validators on your site to check additional SEO best practices."
|
|
1780
1678
|
},
|
|
1781
|
-
"
|
|
1679
|
+
"core/config/default-config.js | seoCategoryTitle": {
|
|
1782
1680
|
"message": "SEO"
|
|
1783
1681
|
},
|
|
1784
|
-
"
|
|
1682
|
+
"core/config/default-config.js | seoContentGroupDescription": {
|
|
1785
1683
|
"message": "Format your HTML in a way that enables crawlers to better understand your app’s content."
|
|
1786
1684
|
},
|
|
1787
|
-
"
|
|
1685
|
+
"core/config/default-config.js | seoContentGroupTitle": {
|
|
1788
1686
|
"message": "Content Best Practices"
|
|
1789
1687
|
},
|
|
1790
|
-
"
|
|
1688
|
+
"core/config/default-config.js | seoCrawlingGroupDescription": {
|
|
1791
1689
|
"message": "To appear in search results, crawlers need access to your app."
|
|
1792
1690
|
},
|
|
1793
|
-
"
|
|
1691
|
+
"core/config/default-config.js | seoCrawlingGroupTitle": {
|
|
1794
1692
|
"message": "Crawling and Indexing"
|
|
1795
1693
|
},
|
|
1796
|
-
"
|
|
1797
|
-
"message": "Make sure your pages are mobile friendly so users don’t have to pinch or zoom in order to read the content pages. [Learn
|
|
1694
|
+
"core/config/default-config.js | seoMobileGroupDescription": {
|
|
1695
|
+
"message": "Make sure your pages are mobile friendly so users don’t have to pinch or zoom in order to read the content pages. [Learn how to make pages mobile-friendly](https://developers.google.com/search/mobile-sites/)."
|
|
1798
1696
|
},
|
|
1799
|
-
"
|
|
1697
|
+
"core/config/default-config.js | seoMobileGroupTitle": {
|
|
1800
1698
|
"message": "Mobile Friendly"
|
|
1801
1699
|
},
|
|
1802
|
-
"
|
|
1803
|
-
"message": "The tested device appears to have a slower CPU than Lighthouse expects. This can negatively affect your performance score. Learn more about [calibrating an appropriate CPU slowdown multiplier](https://github.com/GoogleChrome/lighthouse/blob/
|
|
1700
|
+
"core/gather/driver/environment.js | warningSlowHostCpu": {
|
|
1701
|
+
"message": "The tested device appears to have a slower CPU than Lighthouse expects. This can negatively affect your performance score. Learn more about [calibrating an appropriate CPU slowdown multiplier](https://github.com/GoogleChrome/lighthouse/blob/main/docs/throttling.md#cpu-throttling)."
|
|
1804
1702
|
},
|
|
1805
|
-
"
|
|
1703
|
+
"core/gather/driver/navigation.js | warningRedirected": {
|
|
1806
1704
|
"message": "The page may not be loading as expected because your test URL ({requested}) was redirected to {final}. Try testing the second URL directly."
|
|
1807
1705
|
},
|
|
1808
|
-
"
|
|
1706
|
+
"core/gather/driver/navigation.js | warningTimeout": {
|
|
1809
1707
|
"message": "The page loaded too slowly to finish within the time limit. Results may be incomplete."
|
|
1810
1708
|
},
|
|
1811
|
-
"
|
|
1709
|
+
"core/gather/driver/storage.js | warningCacheTimeout": {
|
|
1710
|
+
"message": "Clearing the browser cache timed out. Try auditing this page again and file a bug if the issue persists."
|
|
1711
|
+
},
|
|
1712
|
+
"core/gather/driver/storage.js | warningData": {
|
|
1812
1713
|
"message": "{locationCount,plural, =1{There may be stored data affecting loading performance in this location: {locations}. Audit this page in an incognito window to prevent those resources from affecting your scores.}zero{There may be stored data affecting loading performance in these locations: {locations}. Audit this page in an incognito window to prevent those resources from affecting your scores.}two{There may be stored data affecting loading performance in these locations: {locations}. Audit this page in an incognito window to prevent those resources from affecting your scores.}few{There may be stored data affecting loading performance in these locations: {locations}. Audit this page in an incognito window to prevent those resources from affecting your scores.}many{There may be stored data affecting loading performance in these locations: {locations}. Audit this page in an incognito window to prevent those resources from affecting your scores.}other{There may be stored data affecting loading performance in these locations: {locations}. Audit this page in an incognito window to prevent those resources from affecting your scores.}}"
|
|
1813
1714
|
},
|
|
1814
|
-
"
|
|
1715
|
+
"core/gather/driver/storage.js | warningOriginDataTimeout": {
|
|
1716
|
+
"message": "Clearing the origin data timed out. Try auditing this page again and file a bug if the issue persists."
|
|
1717
|
+
},
|
|
1718
|
+
"core/lib/bf-cache-strings.js | HTTPMethodNotGET": {
|
|
1719
|
+
"message": "Only pages loaded via a GET request are eligible for back/forward cache."
|
|
1720
|
+
},
|
|
1721
|
+
"core/lib/bf-cache-strings.js | HTTPStatusNotOK": {
|
|
1722
|
+
"message": "Only pages with a status code of 2XX can be cached."
|
|
1723
|
+
},
|
|
1724
|
+
"core/lib/bf-cache-strings.js | JavaScriptExecution": {
|
|
1725
|
+
"message": "Chrome detected an attempt to execute JavaScript while in the cache."
|
|
1726
|
+
},
|
|
1727
|
+
"core/lib/bf-cache-strings.js | appBanner": {
|
|
1728
|
+
"message": "Pages that requested an AppBanner are not currently eligible for back/forward cache."
|
|
1729
|
+
},
|
|
1730
|
+
"core/lib/bf-cache-strings.js | backForwardCacheDisabled": {
|
|
1731
|
+
"message": "Back/forward cache is disabled by flags. Visit chrome://flags/#back-forward-cache to enable it locally on this device."
|
|
1732
|
+
},
|
|
1733
|
+
"core/lib/bf-cache-strings.js | backForwardCacheDisabledByCommandLine": {
|
|
1734
|
+
"message": "Back/forward cache is disabled by the command line."
|
|
1735
|
+
},
|
|
1736
|
+
"core/lib/bf-cache-strings.js | backForwardCacheDisabledByLowMemory": {
|
|
1737
|
+
"message": "Back/forward cache is disabled due to insufficient memory."
|
|
1738
|
+
},
|
|
1739
|
+
"core/lib/bf-cache-strings.js | backForwardCacheDisabledForDelegate": {
|
|
1740
|
+
"message": "Back/forward cache is not supported by delegate."
|
|
1741
|
+
},
|
|
1742
|
+
"core/lib/bf-cache-strings.js | backForwardCacheDisabledForPrerender": {
|
|
1743
|
+
"message": "Back/forward cache is disabled for prerenderer."
|
|
1744
|
+
},
|
|
1745
|
+
"core/lib/bf-cache-strings.js | broadcastChannel": {
|
|
1746
|
+
"message": "The page cannot be cached because it has a BroadcastChannel instance with registered listeners."
|
|
1747
|
+
},
|
|
1748
|
+
"core/lib/bf-cache-strings.js | cacheControlNoStore": {
|
|
1749
|
+
"message": "Pages with cache-control:no-store header cannot enter back/forward cache."
|
|
1750
|
+
},
|
|
1751
|
+
"core/lib/bf-cache-strings.js | cacheFlushed": {
|
|
1752
|
+
"message": "The cache was intentionally cleared."
|
|
1753
|
+
},
|
|
1754
|
+
"core/lib/bf-cache-strings.js | cacheLimit": {
|
|
1755
|
+
"message": "The page was evicted from the cache to allow another page to be cached."
|
|
1756
|
+
},
|
|
1757
|
+
"core/lib/bf-cache-strings.js | containsPlugins": {
|
|
1758
|
+
"message": "Pages containing plugins are not currently eligible for back/forward cache."
|
|
1759
|
+
},
|
|
1760
|
+
"core/lib/bf-cache-strings.js | contentFileChooser": {
|
|
1761
|
+
"message": "Pages that use FileChooser API are not eligible for back/forward cache."
|
|
1762
|
+
},
|
|
1763
|
+
"core/lib/bf-cache-strings.js | contentFileSystemAccess": {
|
|
1764
|
+
"message": "Pages that use File System Access API are not eligible for back/forward cache."
|
|
1765
|
+
},
|
|
1766
|
+
"core/lib/bf-cache-strings.js | contentMediaDevicesDispatcherHost": {
|
|
1767
|
+
"message": "Pages that use Media Device Dispatcher are not eligible for back/forward cache."
|
|
1768
|
+
},
|
|
1769
|
+
"core/lib/bf-cache-strings.js | contentMediaPlay": {
|
|
1770
|
+
"message": "A media player was playing upon navigating away."
|
|
1771
|
+
},
|
|
1772
|
+
"core/lib/bf-cache-strings.js | contentMediaSession": {
|
|
1773
|
+
"message": "Pages that use MediaSession API and set a playback state are not eligible for back/forward cache."
|
|
1774
|
+
},
|
|
1775
|
+
"core/lib/bf-cache-strings.js | contentMediaSessionService": {
|
|
1776
|
+
"message": "Pages that use MediaSession API and set action handlers are not eligible for back/forward cache."
|
|
1777
|
+
},
|
|
1778
|
+
"core/lib/bf-cache-strings.js | contentScreenReader": {
|
|
1779
|
+
"message": "Back/forward cache is disabled due to screen reader."
|
|
1780
|
+
},
|
|
1781
|
+
"core/lib/bf-cache-strings.js | contentSecurityHandler": {
|
|
1782
|
+
"message": "Pages that use SecurityHandler are not eligible for back/forward cache."
|
|
1783
|
+
},
|
|
1784
|
+
"core/lib/bf-cache-strings.js | contentSerial": {
|
|
1785
|
+
"message": "Pages that use Serial API are not eligible for back/forward cache."
|
|
1786
|
+
},
|
|
1787
|
+
"core/lib/bf-cache-strings.js | contentWebAuthenticationAPI": {
|
|
1788
|
+
"message": "Pages that use WebAuthetication API are not eligible for back/forward cache."
|
|
1789
|
+
},
|
|
1790
|
+
"core/lib/bf-cache-strings.js | contentWebBluetooth": {
|
|
1791
|
+
"message": "Pages that use WebBluetooth API are not eligible for back/forward cache."
|
|
1792
|
+
},
|
|
1793
|
+
"core/lib/bf-cache-strings.js | contentWebUSB": {
|
|
1794
|
+
"message": "Pages that use WebUSB API are not eligible for back/forward cache."
|
|
1795
|
+
},
|
|
1796
|
+
"core/lib/bf-cache-strings.js | dedicatedWorkerOrWorklet": {
|
|
1797
|
+
"message": "Pages that use a dedicated worker or worklet are not currently eligible for back/forward cache."
|
|
1798
|
+
},
|
|
1799
|
+
"core/lib/bf-cache-strings.js | documentLoaded": {
|
|
1800
|
+
"message": "The document did not finish loading before navigating away."
|
|
1801
|
+
},
|
|
1802
|
+
"core/lib/bf-cache-strings.js | embedderAppBannerManager": {
|
|
1803
|
+
"message": "App Banner was present upon navigating away."
|
|
1804
|
+
},
|
|
1805
|
+
"core/lib/bf-cache-strings.js | embedderChromePasswordManagerClientBindCredentialManager": {
|
|
1806
|
+
"message": "Chrome Password Manager was present upon navigating away."
|
|
1807
|
+
},
|
|
1808
|
+
"core/lib/bf-cache-strings.js | embedderDomDistillerSelfDeletingRequestDelegate": {
|
|
1809
|
+
"message": "DOM distillation was in progress upon navigating away."
|
|
1810
|
+
},
|
|
1811
|
+
"core/lib/bf-cache-strings.js | embedderDomDistillerViewerSource": {
|
|
1812
|
+
"message": "DOM Distiller Viewer was present upon navigating away."
|
|
1813
|
+
},
|
|
1814
|
+
"core/lib/bf-cache-strings.js | embedderExtensionMessaging": {
|
|
1815
|
+
"message": "Back/forward cache is disabled due to extensions using messaging API."
|
|
1816
|
+
},
|
|
1817
|
+
"core/lib/bf-cache-strings.js | embedderExtensionMessagingForOpenPort": {
|
|
1818
|
+
"message": "Extensions with long-lived connection should close the connection before entering back/forward cache."
|
|
1819
|
+
},
|
|
1820
|
+
"core/lib/bf-cache-strings.js | embedderExtensionSentMessageToCachedFrame": {
|
|
1821
|
+
"message": "Extensions with long-lived connection attempted to send messages to frames in back/forward cache."
|
|
1822
|
+
},
|
|
1823
|
+
"core/lib/bf-cache-strings.js | embedderExtensions": {
|
|
1824
|
+
"message": "Back/forward cache is disabled due to extensions."
|
|
1825
|
+
},
|
|
1826
|
+
"core/lib/bf-cache-strings.js | embedderModalDialog": {
|
|
1827
|
+
"message": "Modal dialog such as form resubmission or http password dialog was shown for the page upon navigating away."
|
|
1828
|
+
},
|
|
1829
|
+
"core/lib/bf-cache-strings.js | embedderOfflinePage": {
|
|
1830
|
+
"message": "The offline page was shown upon navigating away."
|
|
1831
|
+
},
|
|
1832
|
+
"core/lib/bf-cache-strings.js | embedderOomInterventionTabHelper": {
|
|
1833
|
+
"message": "Out-Of-Memory Intervention bar was present upon navigating away."
|
|
1834
|
+
},
|
|
1835
|
+
"core/lib/bf-cache-strings.js | embedderPermissionRequestManager": {
|
|
1836
|
+
"message": "There were permission requests upon navigating away."
|
|
1837
|
+
},
|
|
1838
|
+
"core/lib/bf-cache-strings.js | embedderPopupBlockerTabHelper": {
|
|
1839
|
+
"message": "Popup blocker was present upon navigating away."
|
|
1840
|
+
},
|
|
1841
|
+
"core/lib/bf-cache-strings.js | embedderSafeBrowsingThreatDetails": {
|
|
1842
|
+
"message": "Safe Browsing details were shown upon navigating away."
|
|
1843
|
+
},
|
|
1844
|
+
"core/lib/bf-cache-strings.js | embedderSafeBrowsingTriggeredPopupBlocker": {
|
|
1845
|
+
"message": "Safe Browsing considered this page to be abusive and blocked popup."
|
|
1846
|
+
},
|
|
1847
|
+
"core/lib/bf-cache-strings.js | enteredBackForwardCacheBeforeServiceWorkerHostAdded": {
|
|
1848
|
+
"message": "A service worker was activated while the page was in back/forward cache."
|
|
1849
|
+
},
|
|
1850
|
+
"core/lib/bf-cache-strings.js | errorDocument": {
|
|
1851
|
+
"message": "Back/forward cache is disabled due to a document error."
|
|
1852
|
+
},
|
|
1853
|
+
"core/lib/bf-cache-strings.js | fencedFramesEmbedder": {
|
|
1854
|
+
"message": "Pages using FencedFrames cannot be stored in bfcache."
|
|
1855
|
+
},
|
|
1856
|
+
"core/lib/bf-cache-strings.js | foregroundCacheLimit": {
|
|
1857
|
+
"message": "The page was evicted from the cache to allow another page to be cached."
|
|
1858
|
+
},
|
|
1859
|
+
"core/lib/bf-cache-strings.js | grantedMediaStreamAccess": {
|
|
1860
|
+
"message": "Pages that have granted media stream access are not currently eligible for back/forward cache."
|
|
1861
|
+
},
|
|
1862
|
+
"core/lib/bf-cache-strings.js | haveInnerContents": {
|
|
1863
|
+
"message": "Pages that use portals are not currently eligible for back/forward cache."
|
|
1864
|
+
},
|
|
1865
|
+
"core/lib/bf-cache-strings.js | idleManager": {
|
|
1866
|
+
"message": "Pages that use IdleManager are not currently eligible for back/forward cache."
|
|
1867
|
+
},
|
|
1868
|
+
"core/lib/bf-cache-strings.js | indexedDBConnection": {
|
|
1869
|
+
"message": "Pages that have an open IndexedDB connection are not currently eligible for back/forward cache."
|
|
1870
|
+
},
|
|
1871
|
+
"core/lib/bf-cache-strings.js | ineligibleAPI": {
|
|
1872
|
+
"message": "Ineligible APIs were used."
|
|
1873
|
+
},
|
|
1874
|
+
"core/lib/bf-cache-strings.js | injectedJavascript": {
|
|
1875
|
+
"message": "Pages that JavaScript is injected into by extensions are not currently eligible for back/forward cache."
|
|
1876
|
+
},
|
|
1877
|
+
"core/lib/bf-cache-strings.js | injectedStyleSheet": {
|
|
1878
|
+
"message": "Pages that StyleSheet is injected into by extensions are not currently eligible for back/forward cache."
|
|
1879
|
+
},
|
|
1880
|
+
"core/lib/bf-cache-strings.js | internalError": {
|
|
1881
|
+
"message": "Internal error."
|
|
1882
|
+
},
|
|
1883
|
+
"core/lib/bf-cache-strings.js | keepaliveRequest": {
|
|
1884
|
+
"message": "Back/forward cache is disabled due to a keepalive request."
|
|
1885
|
+
},
|
|
1886
|
+
"core/lib/bf-cache-strings.js | keyboardLock": {
|
|
1887
|
+
"message": "Pages that use Keyboard lock are not currently eligible for back/forward cache."
|
|
1888
|
+
},
|
|
1889
|
+
"core/lib/bf-cache-strings.js | loading": {
|
|
1890
|
+
"message": "The page did not finish loading before navigating away."
|
|
1891
|
+
},
|
|
1892
|
+
"core/lib/bf-cache-strings.js | mainResourceHasCacheControlNoCache": {
|
|
1893
|
+
"message": "Pages whose main resource has cache-control:no-cache cannot enter back/forward cache."
|
|
1894
|
+
},
|
|
1895
|
+
"core/lib/bf-cache-strings.js | mainResourceHasCacheControlNoStore": {
|
|
1896
|
+
"message": "Pages whose main resource has cache-control:no-store cannot enter back/forward cache."
|
|
1897
|
+
},
|
|
1898
|
+
"core/lib/bf-cache-strings.js | navigationCancelledWhileRestoring": {
|
|
1899
|
+
"message": "Navigation was cancelled before the page could be restored from back/forward cache."
|
|
1900
|
+
},
|
|
1901
|
+
"core/lib/bf-cache-strings.js | networkExceedsBufferLimit": {
|
|
1902
|
+
"message": "The page was evicted from the cache because an active network connection received too much data. Chrome limits the amount of data that a page may receive while cached."
|
|
1903
|
+
},
|
|
1904
|
+
"core/lib/bf-cache-strings.js | networkRequestDatapipeDrainedAsBytesConsumer": {
|
|
1905
|
+
"message": "Pages that have inflight fetch() or XHR are not currently eligible for back/forward cache."
|
|
1906
|
+
},
|
|
1907
|
+
"core/lib/bf-cache-strings.js | networkRequestRedirected": {
|
|
1908
|
+
"message": "The page was evicted from back/forward cache because an active network request involved a redirect."
|
|
1909
|
+
},
|
|
1910
|
+
"core/lib/bf-cache-strings.js | networkRequestTimeout": {
|
|
1911
|
+
"message": "The page was evicted from the cache because a network connection was open too long. Chrome limits the amount of time that a page may receive data while cached."
|
|
1912
|
+
},
|
|
1913
|
+
"core/lib/bf-cache-strings.js | noResponseHead": {
|
|
1914
|
+
"message": "Pages that do not have a valid response head cannot enter back/forward cache."
|
|
1915
|
+
},
|
|
1916
|
+
"core/lib/bf-cache-strings.js | notMainFrame": {
|
|
1917
|
+
"message": "Navigation happened in a frame other than the main frame."
|
|
1918
|
+
},
|
|
1919
|
+
"core/lib/bf-cache-strings.js | outstandingIndexedDBTransaction": {
|
|
1920
|
+
"message": "Page with ongoing indexed DB transactions are not currently eligible for back/forward cache."
|
|
1921
|
+
},
|
|
1922
|
+
"core/lib/bf-cache-strings.js | outstandingNetworkRequestDirectSocket": {
|
|
1923
|
+
"message": "Pages with an in-flight network request are not currently eligible for back/forward cache."
|
|
1924
|
+
},
|
|
1925
|
+
"core/lib/bf-cache-strings.js | outstandingNetworkRequestFetch": {
|
|
1926
|
+
"message": "Pages with an in-flight fetch network request are not currently eligible for back/forward cache."
|
|
1927
|
+
},
|
|
1928
|
+
"core/lib/bf-cache-strings.js | outstandingNetworkRequestOthers": {
|
|
1929
|
+
"message": "Pages with an in-flight network request are not currently eligible for back/forward cache."
|
|
1930
|
+
},
|
|
1931
|
+
"core/lib/bf-cache-strings.js | outstandingNetworkRequestXHR": {
|
|
1932
|
+
"message": "Pages with an in-flight XHR network request are not currently eligible for back/forward cache."
|
|
1933
|
+
},
|
|
1934
|
+
"core/lib/bf-cache-strings.js | paymentManager": {
|
|
1935
|
+
"message": "Pages that use PaymentManager are not currently eligible for back/forward cache."
|
|
1936
|
+
},
|
|
1937
|
+
"core/lib/bf-cache-strings.js | pictureInPicture": {
|
|
1938
|
+
"message": "Pages that use Picture-in-Picture are not currently eligible for back/forward cache."
|
|
1939
|
+
},
|
|
1940
|
+
"core/lib/bf-cache-strings.js | portal": {
|
|
1941
|
+
"message": "Pages that use portals are not currently eligible for back/forward cache."
|
|
1942
|
+
},
|
|
1943
|
+
"core/lib/bf-cache-strings.js | printing": {
|
|
1944
|
+
"message": "Pages that show Printing UI are not currently eligible for back/forward cache."
|
|
1945
|
+
},
|
|
1946
|
+
"core/lib/bf-cache-strings.js | relatedActiveContentsExist": {
|
|
1947
|
+
"message": "The page was opened using '`window.open()`' and another tab has a reference to it, or the page opened a window."
|
|
1948
|
+
},
|
|
1949
|
+
"core/lib/bf-cache-strings.js | rendererProcessCrashed": {
|
|
1950
|
+
"message": "The renderer process for the page in back/forward cache crashed."
|
|
1951
|
+
},
|
|
1952
|
+
"core/lib/bf-cache-strings.js | rendererProcessKilled": {
|
|
1953
|
+
"message": "The renderer process for the page in back/forward cache was killed."
|
|
1954
|
+
},
|
|
1955
|
+
"core/lib/bf-cache-strings.js | requestedAudioCapturePermission": {
|
|
1956
|
+
"message": "Pages that have requested audio capture permissions are not currently eligible for back/forward cache."
|
|
1957
|
+
},
|
|
1958
|
+
"core/lib/bf-cache-strings.js | requestedBackForwardCacheBlockedSensors": {
|
|
1959
|
+
"message": "Pages that have requested sensor permissions are not currently eligible for back/forward cache."
|
|
1960
|
+
},
|
|
1961
|
+
"core/lib/bf-cache-strings.js | requestedBackgroundWorkPermission": {
|
|
1962
|
+
"message": "Pages that have requested background sync or fetch permissions are not currently eligible for back/forward cache."
|
|
1963
|
+
},
|
|
1964
|
+
"core/lib/bf-cache-strings.js | requestedMIDIPermission": {
|
|
1965
|
+
"message": "Pages that have requested MIDI permissions are not currently eligible for back/forward cache."
|
|
1966
|
+
},
|
|
1967
|
+
"core/lib/bf-cache-strings.js | requestedNotificationsPermission": {
|
|
1968
|
+
"message": "Pages that have requested notifications permissions are not currently eligible for back/forward cache."
|
|
1969
|
+
},
|
|
1970
|
+
"core/lib/bf-cache-strings.js | requestedStorageAccessGrant": {
|
|
1971
|
+
"message": "Pages that have requested storage access are not currently eligible for back/forward cache."
|
|
1972
|
+
},
|
|
1973
|
+
"core/lib/bf-cache-strings.js | requestedVideoCapturePermission": {
|
|
1974
|
+
"message": "Pages that have requested video capture permissions are not currently eligible for back/forward cache."
|
|
1975
|
+
},
|
|
1976
|
+
"core/lib/bf-cache-strings.js | schemeNotHTTPOrHTTPS": {
|
|
1977
|
+
"message": "Only pages whose URL scheme is HTTP / HTTPS can be cached."
|
|
1978
|
+
},
|
|
1979
|
+
"core/lib/bf-cache-strings.js | serviceWorkerClaim": {
|
|
1980
|
+
"message": "The page was claimed by a service worker while it is in back/forward cache."
|
|
1981
|
+
},
|
|
1982
|
+
"core/lib/bf-cache-strings.js | serviceWorkerPostMessage": {
|
|
1983
|
+
"message": "A service worker attempted to send the page in back/forward cache a `MessageEvent`."
|
|
1984
|
+
},
|
|
1985
|
+
"core/lib/bf-cache-strings.js | serviceWorkerUnregistration": {
|
|
1986
|
+
"message": "ServiceWorker was unregistered while a page was in back/forward cache."
|
|
1987
|
+
},
|
|
1988
|
+
"core/lib/bf-cache-strings.js | serviceWorkerVersionActivation": {
|
|
1989
|
+
"message": "The page was evicted from back/forward cache due to a service worker activation."
|
|
1990
|
+
},
|
|
1991
|
+
"core/lib/bf-cache-strings.js | sessionRestored": {
|
|
1992
|
+
"message": "Chrome restarted and cleared the back/forward cache entries."
|
|
1993
|
+
},
|
|
1994
|
+
"core/lib/bf-cache-strings.js | sharedWorker": {
|
|
1995
|
+
"message": "Pages that use SharedWorker are not currently eligible for back/forward cache."
|
|
1996
|
+
},
|
|
1997
|
+
"core/lib/bf-cache-strings.js | speechRecognizer": {
|
|
1998
|
+
"message": "Pages that use SpeechRecognizer are not currently eligible for back/forward cache."
|
|
1999
|
+
},
|
|
2000
|
+
"core/lib/bf-cache-strings.js | speechSynthesis": {
|
|
2001
|
+
"message": "Pages that use SpeechSynthesis are not currently eligible for back/forward cache."
|
|
2002
|
+
},
|
|
2003
|
+
"core/lib/bf-cache-strings.js | subframeIsNavigating": {
|
|
2004
|
+
"message": "An iframe on the page started a navigation that did not complete."
|
|
2005
|
+
},
|
|
2006
|
+
"core/lib/bf-cache-strings.js | subresourceHasCacheControlNoCache": {
|
|
2007
|
+
"message": "Pages whose subresource has cache-control:no-cache cannot enter back/forward cache."
|
|
2008
|
+
},
|
|
2009
|
+
"core/lib/bf-cache-strings.js | subresourceHasCacheControlNoStore": {
|
|
2010
|
+
"message": "Pages whose subresource has cache-control:no-store cannot enter back/forward cache."
|
|
2011
|
+
},
|
|
2012
|
+
"core/lib/bf-cache-strings.js | timeout": {
|
|
2013
|
+
"message": "The page exceeded the maximum time in back/forward cache and was expired."
|
|
2014
|
+
},
|
|
2015
|
+
"core/lib/bf-cache-strings.js | timeoutPuttingInCache": {
|
|
2016
|
+
"message": "The page timed out entering back/forward cache (likely due to long-running pagehide handlers)."
|
|
2017
|
+
},
|
|
2018
|
+
"core/lib/bf-cache-strings.js | unloadHandlerExistsInMainFrame": {
|
|
2019
|
+
"message": "The page has an unload handler in the main frame."
|
|
2020
|
+
},
|
|
2021
|
+
"core/lib/bf-cache-strings.js | unloadHandlerExistsInSubFrame": {
|
|
2022
|
+
"message": "The page has an unload handler in a sub frame."
|
|
2023
|
+
},
|
|
2024
|
+
"core/lib/bf-cache-strings.js | userAgentOverrideDiffers": {
|
|
2025
|
+
"message": "Browser has changed the user agent override header."
|
|
2026
|
+
},
|
|
2027
|
+
"core/lib/bf-cache-strings.js | wasGrantedMediaAccess": {
|
|
2028
|
+
"message": "Pages that have granted access to record video or audio are not currently eligible for back/forward cache."
|
|
2029
|
+
},
|
|
2030
|
+
"core/lib/bf-cache-strings.js | webDatabase": {
|
|
2031
|
+
"message": "Pages that use WebDatabase are not currently eligible for back/forward cache."
|
|
2032
|
+
},
|
|
2033
|
+
"core/lib/bf-cache-strings.js | webHID": {
|
|
2034
|
+
"message": "Pages that use WebHID are not currently eligible for back/forward cache."
|
|
2035
|
+
},
|
|
2036
|
+
"core/lib/bf-cache-strings.js | webLocks": {
|
|
2037
|
+
"message": "Pages that use WebLocks are not currently eligible for back/forward cache."
|
|
2038
|
+
},
|
|
2039
|
+
"core/lib/bf-cache-strings.js | webNfc": {
|
|
2040
|
+
"message": "Pages that use WebNfc are not currently eligible for back/forwad cache."
|
|
2041
|
+
},
|
|
2042
|
+
"core/lib/bf-cache-strings.js | webOTPService": {
|
|
2043
|
+
"message": "Pages that use WebOTPService are not currently eligible for bfcache."
|
|
2044
|
+
},
|
|
2045
|
+
"core/lib/bf-cache-strings.js | webRTC": {
|
|
2046
|
+
"message": "Pages with WebRTC cannot enter back/forward cache."
|
|
2047
|
+
},
|
|
2048
|
+
"core/lib/bf-cache-strings.js | webShare": {
|
|
2049
|
+
"message": "Pages that use WebShare are not currently eligible for back/forwad cache."
|
|
2050
|
+
},
|
|
2051
|
+
"core/lib/bf-cache-strings.js | webSocket": {
|
|
2052
|
+
"message": "Pages with WebSocket cannot enter back/forward cache."
|
|
2053
|
+
},
|
|
2054
|
+
"core/lib/bf-cache-strings.js | webTransport": {
|
|
2055
|
+
"message": "Pages with WebTransport cannot enter back/forward cache."
|
|
2056
|
+
},
|
|
2057
|
+
"core/lib/bf-cache-strings.js | webXR": {
|
|
2058
|
+
"message": "Pages that use WebXR are not currently eligible for back/forward cache."
|
|
2059
|
+
},
|
|
2060
|
+
"core/lib/csp-evaluator.js | allowlistFallback": {
|
|
1815
2061
|
"message": "Consider adding https: and http: URL schemes (ignored by browsers supporting 'strict-dynamic') to be backward compatible with older browsers."
|
|
1816
2062
|
},
|
|
1817
|
-
"
|
|
2063
|
+
"core/lib/csp-evaluator.js | deprecatedDisownOpener": {
|
|
1818
2064
|
"message": "disown-opener is deprecated since CSP3. Please, use the Cross-Origin-Opener-Policy header instead."
|
|
1819
2065
|
},
|
|
1820
|
-
"
|
|
2066
|
+
"core/lib/csp-evaluator.js | deprecatedReferrer": {
|
|
1821
2067
|
"message": "referrer is deprecated since CSP2. Please, use the Referrer-Policy header instead."
|
|
1822
2068
|
},
|
|
1823
|
-
"
|
|
2069
|
+
"core/lib/csp-evaluator.js | deprecatedReflectedXSS": {
|
|
1824
2070
|
"message": "reflected-xss is deprecated since CSP2. Please, use the X-XSS-Protection header instead."
|
|
1825
2071
|
},
|
|
1826
|
-
"
|
|
2072
|
+
"core/lib/csp-evaluator.js | missingBaseUri": {
|
|
1827
2073
|
"message": "Missing base-uri allows injected <base> tags to set the base URL for all relative URLs (e.g. scripts) to an attacker controlled domain. Consider setting base-uri to 'none' or 'self'."
|
|
1828
2074
|
},
|
|
1829
|
-
"
|
|
2075
|
+
"core/lib/csp-evaluator.js | missingObjectSrc": {
|
|
1830
2076
|
"message": "Missing object-src allows the injection of plugins that execute unsafe scripts. Consider setting object-src to 'none' if you can."
|
|
1831
2077
|
},
|
|
1832
|
-
"
|
|
2078
|
+
"core/lib/csp-evaluator.js | missingScriptSrc": {
|
|
1833
2079
|
"message": "script-src directive is missing. This can allow the execution of unsafe scripts."
|
|
1834
2080
|
},
|
|
1835
|
-
"
|
|
2081
|
+
"core/lib/csp-evaluator.js | missingSemicolon": {
|
|
1836
2082
|
"message": "Did you forget the semicolon? {keyword} seems to be a directive, not a keyword."
|
|
1837
2083
|
},
|
|
1838
|
-
"
|
|
2084
|
+
"core/lib/csp-evaluator.js | nonceCharset": {
|
|
1839
2085
|
"message": "Nonces should use the base64 charset."
|
|
1840
2086
|
},
|
|
1841
|
-
"
|
|
2087
|
+
"core/lib/csp-evaluator.js | nonceLength": {
|
|
1842
2088
|
"message": "Nonces should be at least 8 characters long."
|
|
1843
2089
|
},
|
|
1844
|
-
"
|
|
2090
|
+
"core/lib/csp-evaluator.js | plainUrlScheme": {
|
|
1845
2091
|
"message": "Avoid using plain URL schemes ({keyword}) in this directive. Plain URL schemes allow scripts to be sourced from an unsafe domain."
|
|
1846
2092
|
},
|
|
1847
|
-
"
|
|
2093
|
+
"core/lib/csp-evaluator.js | plainWildcards": {
|
|
1848
2094
|
"message": "Avoid using plain wildcards ({keyword}) in this directive. Plain wildcards allow scripts to be sourced from an unsafe domain."
|
|
1849
2095
|
},
|
|
1850
|
-
"
|
|
2096
|
+
"core/lib/csp-evaluator.js | reportToOnly": {
|
|
1851
2097
|
"message": "The reporting destination is only configured via the report-to directive. This directive is only supported in Chromium-based browsers so it is recommended to also use a report-uri directive."
|
|
1852
2098
|
},
|
|
1853
|
-
"
|
|
2099
|
+
"core/lib/csp-evaluator.js | reportingDestinationMissing": {
|
|
1854
2100
|
"message": "No CSP configures a reporting destination. This makes it difficult to maintain the CSP over time and monitor for any breakages."
|
|
1855
2101
|
},
|
|
1856
|
-
"
|
|
2102
|
+
"core/lib/csp-evaluator.js | strictDynamic": {
|
|
1857
2103
|
"message": "Host allowlists can frequently be bypassed. Consider using CSP nonces or hashes instead, along with 'strict-dynamic' if necessary."
|
|
1858
2104
|
},
|
|
1859
|
-
"
|
|
2105
|
+
"core/lib/csp-evaluator.js | unknownDirective": {
|
|
1860
2106
|
"message": "Unknown CSP directive."
|
|
1861
2107
|
},
|
|
1862
|
-
"
|
|
2108
|
+
"core/lib/csp-evaluator.js | unknownKeyword": {
|
|
1863
2109
|
"message": "{keyword} seems to be an invalid keyword."
|
|
1864
2110
|
},
|
|
1865
|
-
"
|
|
2111
|
+
"core/lib/csp-evaluator.js | unsafeInline": {
|
|
1866
2112
|
"message": "'unsafe-inline' allows the execution of unsafe in-page scripts and event handlers. Consider using CSP nonces or hashes to allow scripts individually."
|
|
1867
2113
|
},
|
|
1868
|
-
"
|
|
2114
|
+
"core/lib/csp-evaluator.js | unsafeInlineFallback": {
|
|
1869
2115
|
"message": "Consider adding 'unsafe-inline' (ignored by browsers supporting nonces/hashes) to be backward compatible with older browsers."
|
|
1870
2116
|
},
|
|
1871
|
-
"
|
|
2117
|
+
"core/lib/deprecations-strings.js | authorizationCoveredByWildcard": {
|
|
2118
|
+
"message": "Authorization will not be covered by the wildcard symbol (*) in CORS `Access-Control-Allow-Headers` handling."
|
|
2119
|
+
},
|
|
2120
|
+
"core/lib/deprecations-strings.js | canRequestURLHTTPContainingNewline": {
|
|
2121
|
+
"message": "Resource requests whose URLs contained both removed whitespace `(n|r|t)` characters and less-than characters (`<`) are blocked. Please remove newlines and encode less-than characters from places like element attribute values in order to load these resources."
|
|
2122
|
+
},
|
|
2123
|
+
"core/lib/deprecations-strings.js | chromeLoadTimesConnectionInfo": {
|
|
2124
|
+
"message": "`chrome.loadTimes()` is deprecated, instead use standardized API: Navigation Timing 2."
|
|
2125
|
+
},
|
|
2126
|
+
"core/lib/deprecations-strings.js | chromeLoadTimesFirstPaintAfterLoadTime": {
|
|
2127
|
+
"message": "`chrome.loadTimes()` is deprecated, instead use standardized API: Paint Timing."
|
|
2128
|
+
},
|
|
2129
|
+
"core/lib/deprecations-strings.js | chromeLoadTimesWasAlternateProtocolAvailable": {
|
|
2130
|
+
"message": "`chrome.loadTimes()` is deprecated, instead use standardized API: `nextHopProtocol` in Navigation Timing 2."
|
|
2131
|
+
},
|
|
2132
|
+
"core/lib/deprecations-strings.js | cookieWithTruncatingChar": {
|
|
2133
|
+
"message": "Cookies containing a `(0|r|n)` character will be rejected instead of truncated."
|
|
2134
|
+
},
|
|
2135
|
+
"core/lib/deprecations-strings.js | crossOriginAccessBasedOnDocumentDomain": {
|
|
2136
|
+
"message": "Relaxing the same-origin policy by setting `document.domain` is deprecated, and will be disabled by default. This deprecation warning is for a cross-origin access that was enabled by setting `document.domain`."
|
|
2137
|
+
},
|
|
2138
|
+
"core/lib/deprecations-strings.js | crossOriginWindowApi": {
|
|
2139
|
+
"message": "Triggering {PH1} from cross origin iframes has been deprecated and will be removed in the future."
|
|
2140
|
+
},
|
|
2141
|
+
"core/lib/deprecations-strings.js | cssSelectorInternalMediaControlsOverlayCastButton": {
|
|
2142
|
+
"message": "The `disableRemotePlayback` attribute should be used in order to disable the default Cast integration instead of using `-internal-media-controls-overlay-cast-button` selector."
|
|
2143
|
+
},
|
|
2144
|
+
"core/lib/deprecations-strings.js | deprecatedWithReplacement": {
|
|
2145
|
+
"message": "{PH1} is deprecated. Please use {PH2} instead."
|
|
2146
|
+
},
|
|
2147
|
+
"core/lib/deprecations-strings.js | deprecationExample": {
|
|
2148
|
+
"message": "This is an example of a translated deprecation issue message."
|
|
2149
|
+
},
|
|
2150
|
+
"core/lib/deprecations-strings.js | documentDomainSettingWithoutOriginAgentClusterHeader": {
|
|
2151
|
+
"message": "Relaxing the same-origin policy by setting `document.domain` is deprecated, and will be disabled by default. To continue using this feature, please opt-out of origin-keyed agent clusters by sending an `Origin-Agent-Cluster: ?0` header along with the HTTP response for the document and frames. See https://developer.chrome.com/blog/immutable-document-domain/ for more details."
|
|
2152
|
+
},
|
|
2153
|
+
"core/lib/deprecations-strings.js | eventPath": {
|
|
2154
|
+
"message": "`Event.path` is deprecated and will be removed. Please use `Event.composedPath()` instead."
|
|
2155
|
+
},
|
|
2156
|
+
"core/lib/deprecations-strings.js | expectCTHeader": {
|
|
2157
|
+
"message": "The `Expect-CT` header is deprecated and will be removed. Chrome requires Certificate Transparency for all publicly trusted certificates issued after April 30, 2018."
|
|
2158
|
+
},
|
|
2159
|
+
"core/lib/deprecations-strings.js | feature": {
|
|
2160
|
+
"message": "Check the feature status page for more details."
|
|
2161
|
+
},
|
|
2162
|
+
"core/lib/deprecations-strings.js | geolocationInsecureOrigin": {
|
|
2163
|
+
"message": "`getCurrentPosition()` and `watchPosition()` no longer work on insecure origins. To use this feature, you should consider switching your application to a secure origin, such as HTTPS. See https://goo.gle/chrome-insecure-origins for more details."
|
|
2164
|
+
},
|
|
2165
|
+
"core/lib/deprecations-strings.js | geolocationInsecureOriginDeprecatedNotRemoved": {
|
|
2166
|
+
"message": "`getCurrentPosition()` and `watchPosition()` are deprecated on insecure origins. To use this feature, you should consider switching your application to a secure origin, such as HTTPS. See https://goo.gle/chrome-insecure-origins for more details."
|
|
2167
|
+
},
|
|
2168
|
+
"core/lib/deprecations-strings.js | getUserMediaInsecureOrigin": {
|
|
2169
|
+
"message": "`getUserMedia()` no longer works on insecure origins. To use this feature, you should consider switching your application to a secure origin, such as HTTPS. See https://goo.gle/chrome-insecure-origins for more details."
|
|
2170
|
+
},
|
|
2171
|
+
"core/lib/deprecations-strings.js | hostCandidateAttributeGetter": {
|
|
2172
|
+
"message": "`RTCPeerConnectionIceErrorEvent.hostCandidate` is deprecated. Please use `RTCPeerConnectionIceErrorEvent.address` or `RTCPeerConnectionIceErrorEvent.port` instead."
|
|
2173
|
+
},
|
|
2174
|
+
"core/lib/deprecations-strings.js | identityInCanMakePaymentEvent": {
|
|
2175
|
+
"message": "The merchant origin and arbitrary data from the `canmakepayment` service worker event are deprecated and will be removed: `topOrigin`, `paymentRequestOrigin`, `methodData`, `modifiers`."
|
|
2176
|
+
},
|
|
2177
|
+
"core/lib/deprecations-strings.js | insecurePrivateNetworkSubresourceRequest": {
|
|
2178
|
+
"message": "The website requested a subresource from a network that it could only access because of its users' privileged network position. These requests expose non-public devices and servers to the internet, increasing the risk of a cross-site request forgery (CSRF) attack, and/or information leakage. To mitigate these risks, Chrome deprecates requests to non-public subresources when initiated from non-secure contexts, and will start blocking them."
|
|
2179
|
+
},
|
|
2180
|
+
"core/lib/deprecations-strings.js | localCSSFileExtensionRejected": {
|
|
2181
|
+
"message": "CSS cannot be loaded from `file:` URLs unless they end in a `.css` file extension."
|
|
2182
|
+
},
|
|
2183
|
+
"core/lib/deprecations-strings.js | mediaSourceAbortRemove": {
|
|
2184
|
+
"message": "Using `SourceBuffer.abort()` to abort `remove()`'s asynchronous range removal is deprecated due to specification change. Support will be removed in the future. You should listen to the `updateend` event instead. `abort()` is intended to only abort an asynchronous media append or reset parser state."
|
|
2185
|
+
},
|
|
2186
|
+
"core/lib/deprecations-strings.js | mediaSourceDurationTruncatingBuffered": {
|
|
2187
|
+
"message": "Setting `MediaSource.duration` below the highest presentation timestamp of any buffered coded frames is deprecated due to specification change. Support for implicit removal of truncated buffered media will be removed in the future. You should instead perform explicit `remove(newDuration, oldDuration)` on all `sourceBuffers`, where `newDuration < oldDuration`."
|
|
2188
|
+
},
|
|
2189
|
+
"core/lib/deprecations-strings.js | milestone": {
|
|
2190
|
+
"message": "This change will go into effect with milestone {milestone}."
|
|
2191
|
+
},
|
|
2192
|
+
"core/lib/deprecations-strings.js | noSysexWebMIDIWithoutPermission": {
|
|
2193
|
+
"message": "Web MIDI will ask a permission to use even if the sysex is not specified in the `MIDIOptions`."
|
|
2194
|
+
},
|
|
2195
|
+
"core/lib/deprecations-strings.js | notificationInsecureOrigin": {
|
|
2196
|
+
"message": "The Notification API may no longer be used from insecure origins. You should consider switching your application to a secure origin, such as HTTPS. See https://goo.gle/chrome-insecure-origins for more details."
|
|
2197
|
+
},
|
|
2198
|
+
"core/lib/deprecations-strings.js | notificationPermissionRequestedIframe": {
|
|
2199
|
+
"message": "Permission for the Notification API may no longer be requested from a cross-origin iframe. You should consider requesting permission from a top-level frame or opening a new window instead."
|
|
2200
|
+
},
|
|
2201
|
+
"core/lib/deprecations-strings.js | obsoleteWebRtcCipherSuite": {
|
|
2202
|
+
"message": "Your partner is negotiating an obsolete (D)TLS version. Please check with your partner to have this fixed."
|
|
2203
|
+
},
|
|
2204
|
+
"core/lib/deprecations-strings.js | openWebDatabaseInsecureContext": {
|
|
2205
|
+
"message": "WebSQL in non-secure contexts is deprecated and will be removed soon. Please use Web Storage or Indexed Database."
|
|
2206
|
+
},
|
|
2207
|
+
"core/lib/deprecations-strings.js | overflowVisibleOnReplacedElement": {
|
|
2208
|
+
"message": "Specifying `overflow: visible` on img, video and canvas tags may cause them to produce visual content outside of the element bounds. See https://github.com/WICG/shared-element-transitions/blob/main/debugging_overflow_on_images.md."
|
|
2209
|
+
},
|
|
2210
|
+
"core/lib/deprecations-strings.js | paymentInstruments": {
|
|
2211
|
+
"message": "`paymentManager.instruments` is deprecated. Please use just-in-time install for payment handlers instead."
|
|
2212
|
+
},
|
|
2213
|
+
"core/lib/deprecations-strings.js | paymentRequestCSPViolation": {
|
|
2214
|
+
"message": "Your `PaymentRequest` call bypassed Content-Security-Policy (CSP) `connect-src` directive. This bypass is deprecated. Please add the payment method identifier from the `PaymentRequest` API (in `supportedMethods` field) to your CSP `connect-src` directive."
|
|
2215
|
+
},
|
|
2216
|
+
"core/lib/deprecations-strings.js | persistentQuotaType": {
|
|
2217
|
+
"message": "`StorageType.persistent` is deprecated. Please use standardized `navigator.storage` instead."
|
|
2218
|
+
},
|
|
2219
|
+
"core/lib/deprecations-strings.js | pictureSourceSrc": {
|
|
2220
|
+
"message": "`<source src>` with a `<picture>` parent is invalid and therefore ignored. Please use `<source srcset>` instead."
|
|
2221
|
+
},
|
|
2222
|
+
"core/lib/deprecations-strings.js | prefixedStorageInfo": {
|
|
2223
|
+
"message": "`window.webkitStorageInfo` is deprecated. Please use standardized `navigator.storage` instead."
|
|
2224
|
+
},
|
|
2225
|
+
"core/lib/deprecations-strings.js | requestedSubresourceWithEmbeddedCredentials": {
|
|
2226
|
+
"message": "Subresource requests whose URLs contain embedded credentials (e.g. `https://user:pass@host/`) are blocked."
|
|
2227
|
+
},
|
|
2228
|
+
"core/lib/deprecations-strings.js | rtcConstraintEnableDtlsSrtpFalse": {
|
|
2229
|
+
"message": "The constraint `DtlsSrtpKeyAgreement` is removed. You have specified a `false` value for this constraint, which is interpreted as an attempt to use the removed `SDES key negotiation` method. This functionality is removed; use a service that supports `DTLS key negotiation` instead."
|
|
2230
|
+
},
|
|
2231
|
+
"core/lib/deprecations-strings.js | rtcConstraintEnableDtlsSrtpTrue": {
|
|
2232
|
+
"message": "The constraint `DtlsSrtpKeyAgreement` is removed. You have specified a `true` value for this constraint, which had no effect, but you can remove this constraint for tidiness."
|
|
2233
|
+
},
|
|
2234
|
+
"core/lib/deprecations-strings.js | rtcPeerConnectionComplexPlanBSdpUsingDefaultSdpSemantics": {
|
|
2235
|
+
"message": "`Complex Plan B SDP` detected. This dialect of the `Session Description Protocol` is no longer supported. Please use `Unified Plan SDP` instead."
|
|
2236
|
+
},
|
|
2237
|
+
"core/lib/deprecations-strings.js | rtcPeerConnectionSdpSemanticsPlanB": {
|
|
2238
|
+
"message": "`Plan B SDP semantics`, which is used when constructing an `RTCPeerConnection` with `{sdpSemantics:plan-b}`, is a legacy non-standard version of the `Session Description Protocol` that has been permanently deleted from the Web Platform. It is still available when building with `IS_FUCHSIA`, but we intend to delete it as soon as possible. Stop depending on it. See https://crbug.com/1302249 for status."
|
|
2239
|
+
},
|
|
2240
|
+
"core/lib/deprecations-strings.js | rtcpMuxPolicyNegotiate": {
|
|
2241
|
+
"message": "The `rtcpMuxPolicy` option is deprecated and will be removed."
|
|
2242
|
+
},
|
|
2243
|
+
"core/lib/deprecations-strings.js | sharedArrayBufferConstructedWithoutIsolation": {
|
|
2244
|
+
"message": "`SharedArrayBuffer` will require cross-origin isolation. See https://developer.chrome.com/blog/enabling-shared-array-buffer/ for more details."
|
|
2245
|
+
},
|
|
2246
|
+
"core/lib/deprecations-strings.js | textToSpeech_DisallowedByAutoplay": {
|
|
2247
|
+
"message": "`speechSynthesis.speak()` without user activation is deprecated and will be removed."
|
|
2248
|
+
},
|
|
2249
|
+
"core/lib/deprecations-strings.js | title": {
|
|
2250
|
+
"message": "Deprecated Feature Used"
|
|
2251
|
+
},
|
|
2252
|
+
"core/lib/deprecations-strings.js | v8SharedArrayBufferConstructedInExtensionWithoutIsolation": {
|
|
2253
|
+
"message": "Extensions should opt into cross-origin isolation to continue using `SharedArrayBuffer`. See https://developer.chrome.com/docs/extensions/mv3/cross-origin-isolation/."
|
|
2254
|
+
},
|
|
2255
|
+
"core/lib/deprecations-strings.js | vendorSpecificApi": {
|
|
2256
|
+
"message": "{PH1} is vendor-specific. Please use the standard {PH2} instead."
|
|
2257
|
+
},
|
|
2258
|
+
"core/lib/deprecations-strings.js | xhrJSONEncodingDetection": {
|
|
2259
|
+
"message": "UTF-16 is not supported by response json in `XMLHttpRequest`"
|
|
2260
|
+
},
|
|
2261
|
+
"core/lib/deprecations-strings.js | xmlHttpRequestSynchronousInNonWorkerOutsideBeforeUnload": {
|
|
2262
|
+
"message": "Synchronous `XMLHttpRequest` on the main thread is deprecated because of its detrimental effects to the end user’s experience. For more help, check https://xhr.spec.whatwg.org/."
|
|
2263
|
+
},
|
|
2264
|
+
"core/lib/deprecations-strings.js | xrSupportsSession": {
|
|
2265
|
+
"message": "`supportsSession()` is deprecated. Please use `isSessionSupported()` and check the resolved boolean value instead."
|
|
2266
|
+
},
|
|
2267
|
+
"core/lib/i18n/i18n.js | columnBlockingTime": {
|
|
1872
2268
|
"message": "Main-Thread Blocking Time"
|
|
1873
2269
|
},
|
|
1874
|
-
"
|
|
2270
|
+
"core/lib/i18n/i18n.js | columnCacheTTL": {
|
|
1875
2271
|
"message": "Cache TTL"
|
|
1876
2272
|
},
|
|
1877
|
-
"
|
|
2273
|
+
"core/lib/i18n/i18n.js | columnDescription": {
|
|
1878
2274
|
"message": "Description"
|
|
1879
2275
|
},
|
|
1880
|
-
"
|
|
2276
|
+
"core/lib/i18n/i18n.js | columnDuration": {
|
|
1881
2277
|
"message": "Duration"
|
|
1882
2278
|
},
|
|
1883
|
-
"
|
|
2279
|
+
"core/lib/i18n/i18n.js | columnElement": {
|
|
1884
2280
|
"message": "Element"
|
|
1885
2281
|
},
|
|
1886
|
-
"
|
|
2282
|
+
"core/lib/i18n/i18n.js | columnFailingElem": {
|
|
1887
2283
|
"message": "Failing Elements"
|
|
1888
2284
|
},
|
|
1889
|
-
"
|
|
2285
|
+
"core/lib/i18n/i18n.js | columnLocation": {
|
|
1890
2286
|
"message": "Location"
|
|
1891
2287
|
},
|
|
1892
|
-
"
|
|
2288
|
+
"core/lib/i18n/i18n.js | columnName": {
|
|
1893
2289
|
"message": "Name"
|
|
1894
2290
|
},
|
|
1895
|
-
"
|
|
2291
|
+
"core/lib/i18n/i18n.js | columnOverBudget": {
|
|
1896
2292
|
"message": "Over Budget"
|
|
1897
2293
|
},
|
|
1898
|
-
"
|
|
2294
|
+
"core/lib/i18n/i18n.js | columnRequests": {
|
|
1899
2295
|
"message": "Requests"
|
|
1900
2296
|
},
|
|
1901
|
-
"
|
|
2297
|
+
"core/lib/i18n/i18n.js | columnResourceSize": {
|
|
1902
2298
|
"message": "Resource Size"
|
|
1903
2299
|
},
|
|
1904
|
-
"
|
|
2300
|
+
"core/lib/i18n/i18n.js | columnResourceType": {
|
|
1905
2301
|
"message": "Resource Type"
|
|
1906
2302
|
},
|
|
1907
|
-
"
|
|
2303
|
+
"core/lib/i18n/i18n.js | columnSize": {
|
|
1908
2304
|
"message": "Size"
|
|
1909
2305
|
},
|
|
1910
|
-
"
|
|
2306
|
+
"core/lib/i18n/i18n.js | columnSource": {
|
|
1911
2307
|
"message": "Source"
|
|
1912
2308
|
},
|
|
1913
|
-
"
|
|
2309
|
+
"core/lib/i18n/i18n.js | columnStartTime": {
|
|
1914
2310
|
"message": "Start Time"
|
|
1915
2311
|
},
|
|
1916
|
-
"
|
|
2312
|
+
"core/lib/i18n/i18n.js | columnTimeSpent": {
|
|
1917
2313
|
"message": "Time Spent"
|
|
1918
2314
|
},
|
|
1919
|
-
"
|
|
2315
|
+
"core/lib/i18n/i18n.js | columnTransferSize": {
|
|
1920
2316
|
"message": "Transfer Size"
|
|
1921
2317
|
},
|
|
1922
|
-
"
|
|
2318
|
+
"core/lib/i18n/i18n.js | columnURL": {
|
|
1923
2319
|
"message": "URL"
|
|
1924
2320
|
},
|
|
1925
|
-
"
|
|
2321
|
+
"core/lib/i18n/i18n.js | columnWastedBytes": {
|
|
1926
2322
|
"message": "Potential Savings"
|
|
1927
2323
|
},
|
|
1928
|
-
"
|
|
2324
|
+
"core/lib/i18n/i18n.js | columnWastedMs": {
|
|
1929
2325
|
"message": "Potential Savings"
|
|
1930
2326
|
},
|
|
1931
|
-
"
|
|
2327
|
+
"core/lib/i18n/i18n.js | cumulativeLayoutShiftMetric": {
|
|
1932
2328
|
"message": "Cumulative Layout Shift"
|
|
1933
2329
|
},
|
|
1934
|
-
"
|
|
2330
|
+
"core/lib/i18n/i18n.js | displayValueByteSavings": {
|
|
1935
2331
|
"message": "Potential savings of {wastedBytes, number, bytes} KiB"
|
|
1936
2332
|
},
|
|
1937
|
-
"
|
|
2333
|
+
"core/lib/i18n/i18n.js | displayValueElementsFound": {
|
|
1938
2334
|
"message": "{nodeCount,plural, =1{1 element found}zero{# elements found}two{# elements found}few{# elements found}many{# elements found}other{# elements found}}"
|
|
1939
2335
|
},
|
|
1940
|
-
"
|
|
2336
|
+
"core/lib/i18n/i18n.js | displayValueMsSavings": {
|
|
1941
2337
|
"message": "Potential savings of {wastedMs, number, milliseconds} ms"
|
|
1942
2338
|
},
|
|
1943
|
-
"
|
|
2339
|
+
"core/lib/i18n/i18n.js | documentResourceType": {
|
|
1944
2340
|
"message": "Document"
|
|
1945
2341
|
},
|
|
1946
|
-
"
|
|
2342
|
+
"core/lib/i18n/i18n.js | firstContentfulPaintMetric": {
|
|
1947
2343
|
"message": "First Contentful Paint"
|
|
1948
2344
|
},
|
|
1949
|
-
"
|
|
2345
|
+
"core/lib/i18n/i18n.js | firstMeaningfulPaintMetric": {
|
|
1950
2346
|
"message": "First Meaningful Paint"
|
|
1951
2347
|
},
|
|
1952
|
-
"
|
|
2348
|
+
"core/lib/i18n/i18n.js | fontResourceType": {
|
|
1953
2349
|
"message": "Font"
|
|
1954
2350
|
},
|
|
1955
|
-
"
|
|
2351
|
+
"core/lib/i18n/i18n.js | imageResourceType": {
|
|
1956
2352
|
"message": "Image"
|
|
1957
2353
|
},
|
|
1958
|
-
"
|
|
2354
|
+
"core/lib/i18n/i18n.js | interactionToNextPaint": {
|
|
2355
|
+
"message": "Interaction to Next Paint"
|
|
2356
|
+
},
|
|
2357
|
+
"core/lib/i18n/i18n.js | interactiveMetric": {
|
|
1959
2358
|
"message": "Time to Interactive"
|
|
1960
2359
|
},
|
|
1961
|
-
"
|
|
2360
|
+
"core/lib/i18n/i18n.js | itemSeverityHigh": {
|
|
1962
2361
|
"message": "High"
|
|
1963
2362
|
},
|
|
1964
|
-
"
|
|
2363
|
+
"core/lib/i18n/i18n.js | itemSeverityLow": {
|
|
1965
2364
|
"message": "Low"
|
|
1966
2365
|
},
|
|
1967
|
-
"
|
|
2366
|
+
"core/lib/i18n/i18n.js | itemSeverityMedium": {
|
|
1968
2367
|
"message": "Medium"
|
|
1969
2368
|
},
|
|
1970
|
-
"
|
|
2369
|
+
"core/lib/i18n/i18n.js | largestContentfulPaintMetric": {
|
|
1971
2370
|
"message": "Largest Contentful Paint"
|
|
1972
2371
|
},
|
|
1973
|
-
"
|
|
2372
|
+
"core/lib/i18n/i18n.js | maxPotentialFIDMetric": {
|
|
1974
2373
|
"message": "Max Potential First Input Delay"
|
|
1975
2374
|
},
|
|
1976
|
-
"
|
|
2375
|
+
"core/lib/i18n/i18n.js | mediaResourceType": {
|
|
1977
2376
|
"message": "Media"
|
|
1978
2377
|
},
|
|
1979
|
-
"
|
|
2378
|
+
"core/lib/i18n/i18n.js | ms": {
|
|
1980
2379
|
"message": "{timeInMs, number, milliseconds} ms"
|
|
1981
2380
|
},
|
|
1982
|
-
"
|
|
2381
|
+
"core/lib/i18n/i18n.js | otherResourceType": {
|
|
1983
2382
|
"message": "Other"
|
|
1984
2383
|
},
|
|
1985
|
-
"
|
|
2384
|
+
"core/lib/i18n/i18n.js | otherResourcesLabel": {
|
|
1986
2385
|
"message": "Other resources"
|
|
1987
2386
|
},
|
|
1988
|
-
"
|
|
2387
|
+
"core/lib/i18n/i18n.js | scriptResourceType": {
|
|
1989
2388
|
"message": "Script"
|
|
1990
2389
|
},
|
|
1991
|
-
"
|
|
2390
|
+
"core/lib/i18n/i18n.js | seconds": {
|
|
1992
2391
|
"message": "{timeInMs, number, seconds} s"
|
|
1993
2392
|
},
|
|
1994
|
-
"
|
|
2393
|
+
"core/lib/i18n/i18n.js | speedIndexMetric": {
|
|
1995
2394
|
"message": "Speed Index"
|
|
1996
2395
|
},
|
|
1997
|
-
"
|
|
2396
|
+
"core/lib/i18n/i18n.js | stylesheetResourceType": {
|
|
1998
2397
|
"message": "Stylesheet"
|
|
1999
2398
|
},
|
|
2000
|
-
"
|
|
2399
|
+
"core/lib/i18n/i18n.js | thirdPartyResourceType": {
|
|
2001
2400
|
"message": "Third-party"
|
|
2002
2401
|
},
|
|
2003
|
-
"
|
|
2402
|
+
"core/lib/i18n/i18n.js | totalBlockingTimeMetric": {
|
|
2004
2403
|
"message": "Total Blocking Time"
|
|
2005
2404
|
},
|
|
2006
|
-
"
|
|
2405
|
+
"core/lib/i18n/i18n.js | totalResourceType": {
|
|
2007
2406
|
"message": "Total"
|
|
2008
2407
|
},
|
|
2009
|
-
"
|
|
2408
|
+
"core/lib/lh-error.js | badTraceRecording": {
|
|
2010
2409
|
"message": "Something went wrong with recording the trace over your page load. Please run Lighthouse again. ({errorCode})"
|
|
2011
2410
|
},
|
|
2012
|
-
"
|
|
2411
|
+
"core/lib/lh-error.js | criTimeout": {
|
|
2013
2412
|
"message": "Timeout waiting for initial Debugger Protocol connection."
|
|
2014
2413
|
},
|
|
2015
|
-
"
|
|
2414
|
+
"core/lib/lh-error.js | didntCollectScreenshots": {
|
|
2016
2415
|
"message": "Chrome didn't collect any screenshots during the page load. Please make sure there is content visible on the page, and then try re-running Lighthouse. ({errorCode})"
|
|
2017
2416
|
},
|
|
2018
|
-
"
|
|
2417
|
+
"core/lib/lh-error.js | dnsFailure": {
|
|
2019
2418
|
"message": "DNS servers could not resolve the provided domain."
|
|
2020
2419
|
},
|
|
2021
|
-
"
|
|
2420
|
+
"core/lib/lh-error.js | erroredRequiredArtifact": {
|
|
2022
2421
|
"message": "Required {artifactName} gatherer encountered an error: {errorMessage}"
|
|
2023
2422
|
},
|
|
2024
|
-
"
|
|
2423
|
+
"core/lib/lh-error.js | internalChromeError": {
|
|
2025
2424
|
"message": "An internal Chrome error occurred. Please restart Chrome and try re-running Lighthouse."
|
|
2026
2425
|
},
|
|
2027
|
-
"
|
|
2426
|
+
"core/lib/lh-error.js | missingRequiredArtifact": {
|
|
2028
2427
|
"message": "Required {artifactName} gatherer did not run."
|
|
2029
2428
|
},
|
|
2030
|
-
"
|
|
2429
|
+
"core/lib/lh-error.js | noFcp": {
|
|
2031
2430
|
"message": "The page did not paint any content. Please ensure you keep the browser window in the foreground during the load and try again. ({errorCode})"
|
|
2032
2431
|
},
|
|
2033
|
-
"
|
|
2432
|
+
"core/lib/lh-error.js | noLcp": {
|
|
2433
|
+
"message": "The page did not display content that qualifies as a Largest Contentful Paint (LCP). Ensure the page has a valid LCP element and then try again. ({errorCode})"
|
|
2434
|
+
},
|
|
2435
|
+
"core/lib/lh-error.js | notHtml": {
|
|
2034
2436
|
"message": "The page provided is not HTML (served as MIME type {mimeType})."
|
|
2035
2437
|
},
|
|
2036
|
-
"
|
|
2438
|
+
"core/lib/lh-error.js | oldChromeDoesNotSupportFeature": {
|
|
2037
2439
|
"message": "This version of Chrome is too old to support '{featureName}'. Use a newer version to see full results."
|
|
2038
2440
|
},
|
|
2039
|
-
"
|
|
2441
|
+
"core/lib/lh-error.js | pageLoadFailed": {
|
|
2040
2442
|
"message": "Lighthouse was unable to reliably load the page you requested. Make sure you are testing the correct URL and that the server is properly responding to all requests."
|
|
2041
2443
|
},
|
|
2042
|
-
"
|
|
2444
|
+
"core/lib/lh-error.js | pageLoadFailedHung": {
|
|
2043
2445
|
"message": "Lighthouse was unable to reliably load the URL you requested because the page stopped responding."
|
|
2044
2446
|
},
|
|
2045
|
-
"
|
|
2447
|
+
"core/lib/lh-error.js | pageLoadFailedInsecure": {
|
|
2046
2448
|
"message": "The URL you have provided does not have a valid security certificate. {securityMessages}"
|
|
2047
2449
|
},
|
|
2048
|
-
"
|
|
2450
|
+
"core/lib/lh-error.js | pageLoadFailedInterstitial": {
|
|
2049
2451
|
"message": "Chrome prevented page load with an interstitial. Make sure you are testing the correct URL and that the server is properly responding to all requests."
|
|
2050
2452
|
},
|
|
2051
|
-
"
|
|
2453
|
+
"core/lib/lh-error.js | pageLoadFailedWithDetails": {
|
|
2052
2454
|
"message": "Lighthouse was unable to reliably load the page you requested. Make sure you are testing the correct URL and that the server is properly responding to all requests. (Details: {errorDetails})"
|
|
2053
2455
|
},
|
|
2054
|
-
"
|
|
2456
|
+
"core/lib/lh-error.js | pageLoadFailedWithStatusCode": {
|
|
2055
2457
|
"message": "Lighthouse was unable to reliably load the page you requested. Make sure you are testing the correct URL and that the server is properly responding to all requests. (Status code: {statusCode})"
|
|
2056
2458
|
},
|
|
2057
|
-
"
|
|
2459
|
+
"core/lib/lh-error.js | pageLoadTookTooLong": {
|
|
2058
2460
|
"message": "Your page took too long to load. Please follow the opportunities in the report to reduce your page load time, and then try re-running Lighthouse. ({errorCode})"
|
|
2059
2461
|
},
|
|
2060
|
-
"
|
|
2462
|
+
"core/lib/lh-error.js | protocolTimeout": {
|
|
2061
2463
|
"message": "Waiting for DevTools protocol response has exceeded the allotted time. (Method: {protocolMethod})"
|
|
2062
2464
|
},
|
|
2063
|
-
"
|
|
2465
|
+
"core/lib/lh-error.js | requestContentTimeout": {
|
|
2064
2466
|
"message": "Fetching resource content has exceeded the allotted time"
|
|
2065
2467
|
},
|
|
2066
|
-
"
|
|
2468
|
+
"core/lib/lh-error.js | urlInvalid": {
|
|
2067
2469
|
"message": "The URL you have provided appears to be invalid."
|
|
2068
2470
|
},
|
|
2471
|
+
"core/lib/navigation-error.js | warningXhtml": {
|
|
2472
|
+
"message": "The page MIME type is XHTML: Lighthouse does not explicitly support this document type"
|
|
2473
|
+
},
|
|
2474
|
+
"core/user-flow.js | defaultFlowName": {
|
|
2475
|
+
"message": "User flow ({url})"
|
|
2476
|
+
},
|
|
2477
|
+
"core/user-flow.js | defaultNavigationName": {
|
|
2478
|
+
"message": "Navigation report ({url})"
|
|
2479
|
+
},
|
|
2480
|
+
"core/user-flow.js | defaultSnapshotName": {
|
|
2481
|
+
"message": "Snapshot report ({url})"
|
|
2482
|
+
},
|
|
2483
|
+
"core/user-flow.js | defaultTimespanName": {
|
|
2484
|
+
"message": "Timespan report ({url})"
|
|
2485
|
+
},
|
|
2486
|
+
"flow-report/src/i18n/ui-strings.js | allReports": {
|
|
2487
|
+
"message": "All Reports"
|
|
2488
|
+
},
|
|
2489
|
+
"flow-report/src/i18n/ui-strings.js | categories": {
|
|
2490
|
+
"message": "Categories"
|
|
2491
|
+
},
|
|
2492
|
+
"flow-report/src/i18n/ui-strings.js | categoryAccessibility": {
|
|
2493
|
+
"message": "Accessibility"
|
|
2494
|
+
},
|
|
2495
|
+
"flow-report/src/i18n/ui-strings.js | categoryBestPractices": {
|
|
2496
|
+
"message": "Best Practices"
|
|
2497
|
+
},
|
|
2498
|
+
"flow-report/src/i18n/ui-strings.js | categoryPerformance": {
|
|
2499
|
+
"message": "Performance"
|
|
2500
|
+
},
|
|
2501
|
+
"flow-report/src/i18n/ui-strings.js | categoryProgressiveWebApp": {
|
|
2502
|
+
"message": "Progressive Web App"
|
|
2503
|
+
},
|
|
2504
|
+
"flow-report/src/i18n/ui-strings.js | categorySeo": {
|
|
2505
|
+
"message": "SEO"
|
|
2506
|
+
},
|
|
2507
|
+
"flow-report/src/i18n/ui-strings.js | desktop": {
|
|
2508
|
+
"message": "Desktop"
|
|
2509
|
+
},
|
|
2510
|
+
"flow-report/src/i18n/ui-strings.js | helpDialogTitle": {
|
|
2511
|
+
"message": "Understanding the Lighthouse Flow Report"
|
|
2512
|
+
},
|
|
2513
|
+
"flow-report/src/i18n/ui-strings.js | helpLabel": {
|
|
2514
|
+
"message": "Understanding Flows"
|
|
2515
|
+
},
|
|
2516
|
+
"flow-report/src/i18n/ui-strings.js | helpUseCaseInstructionNavigation": {
|
|
2517
|
+
"message": "Use Navigation reports to..."
|
|
2518
|
+
},
|
|
2519
|
+
"flow-report/src/i18n/ui-strings.js | helpUseCaseInstructionSnapshot": {
|
|
2520
|
+
"message": "Use Snapshot reports to..."
|
|
2521
|
+
},
|
|
2522
|
+
"flow-report/src/i18n/ui-strings.js | helpUseCaseInstructionTimespan": {
|
|
2523
|
+
"message": "Use Timespan reports to..."
|
|
2524
|
+
},
|
|
2525
|
+
"flow-report/src/i18n/ui-strings.js | helpUseCaseNavigation1": {
|
|
2526
|
+
"message": "Obtain a Lighthouse Performance score."
|
|
2527
|
+
},
|
|
2528
|
+
"flow-report/src/i18n/ui-strings.js | helpUseCaseNavigation2": {
|
|
2529
|
+
"message": "Measure page load Performance metrics such as Largest Contentful Paint and Speed Index."
|
|
2530
|
+
},
|
|
2531
|
+
"flow-report/src/i18n/ui-strings.js | helpUseCaseNavigation3": {
|
|
2532
|
+
"message": "Assess Progressive Web App capabilities."
|
|
2533
|
+
},
|
|
2534
|
+
"flow-report/src/i18n/ui-strings.js | helpUseCaseSnapshot1": {
|
|
2535
|
+
"message": "Find accessibility issues in single page applications or complex forms."
|
|
2536
|
+
},
|
|
2537
|
+
"flow-report/src/i18n/ui-strings.js | helpUseCaseSnapshot2": {
|
|
2538
|
+
"message": "Evaluate best practices of menus and UI elements hidden behind interaction."
|
|
2539
|
+
},
|
|
2540
|
+
"flow-report/src/i18n/ui-strings.js | helpUseCaseTimespan1": {
|
|
2541
|
+
"message": "Measure layout shifts and JavaScript execution time on a series of interactions."
|
|
2542
|
+
},
|
|
2543
|
+
"flow-report/src/i18n/ui-strings.js | helpUseCaseTimespan2": {
|
|
2544
|
+
"message": "Discover performance opportunities to improve the experience for long-lived pages and single-page applications."
|
|
2545
|
+
},
|
|
2546
|
+
"flow-report/src/i18n/ui-strings.js | highestImpact": {
|
|
2547
|
+
"message": "Highest impact"
|
|
2548
|
+
},
|
|
2549
|
+
"flow-report/src/i18n/ui-strings.js | informativeAuditCount": {
|
|
2550
|
+
"message": "{numInformative,plural, =1{{numInformative} informative audit}zero{{numInformative} informative audits}two{{numInformative} informative audits}few{{numInformative} informative audits}many{{numInformative} informative audits}other{{numInformative} informative audits}}"
|
|
2551
|
+
},
|
|
2552
|
+
"flow-report/src/i18n/ui-strings.js | mobile": {
|
|
2553
|
+
"message": "Mobile"
|
|
2554
|
+
},
|
|
2555
|
+
"flow-report/src/i18n/ui-strings.js | navigationDescription": {
|
|
2556
|
+
"message": "Page load"
|
|
2557
|
+
},
|
|
2558
|
+
"flow-report/src/i18n/ui-strings.js | navigationLongDescription": {
|
|
2559
|
+
"message": "Navigation reports analyze a single page load, exactly like the original Lighthouse reports."
|
|
2560
|
+
},
|
|
2561
|
+
"flow-report/src/i18n/ui-strings.js | navigationReport": {
|
|
2562
|
+
"message": "Navigation report"
|
|
2563
|
+
},
|
|
2564
|
+
"flow-report/src/i18n/ui-strings.js | navigationReportCount": {
|
|
2565
|
+
"message": "{numNavigation,plural, =1{{numNavigation} navigation report}zero{{numNavigation} navigation reports}two{{numNavigation} navigation reports}few{{numNavigation} navigation reports}many{{numNavigation} navigation reports}other{{numNavigation} navigation reports}}"
|
|
2566
|
+
},
|
|
2567
|
+
"flow-report/src/i18n/ui-strings.js | passableAuditCount": {
|
|
2568
|
+
"message": "{numPassableAudits,plural, =1{{numPassableAudits} passable audit}zero{{numPassableAudits} passable audits}two{{numPassableAudits} passable audits}few{{numPassableAudits} passable audits}many{{numPassableAudits} passable audits}other{{numPassableAudits} passable audits}}"
|
|
2569
|
+
},
|
|
2570
|
+
"flow-report/src/i18n/ui-strings.js | passedAuditCount": {
|
|
2571
|
+
"message": "{numPassed,plural, =1{{numPassed} audit passed}zero{{numPassed} audits passed}two{{numPassed} audits passed}few{{numPassed} audits passed}many{{numPassed} audits passed}other{{numPassed} audits passed}}"
|
|
2572
|
+
},
|
|
2573
|
+
"flow-report/src/i18n/ui-strings.js | ratingAverage": {
|
|
2574
|
+
"message": "Average"
|
|
2575
|
+
},
|
|
2576
|
+
"flow-report/src/i18n/ui-strings.js | ratingError": {
|
|
2577
|
+
"message": "Error"
|
|
2578
|
+
},
|
|
2579
|
+
"flow-report/src/i18n/ui-strings.js | ratingFail": {
|
|
2580
|
+
"message": "Poor"
|
|
2581
|
+
},
|
|
2582
|
+
"flow-report/src/i18n/ui-strings.js | ratingPass": {
|
|
2583
|
+
"message": "Good"
|
|
2584
|
+
},
|
|
2585
|
+
"flow-report/src/i18n/ui-strings.js | save": {
|
|
2586
|
+
"message": "Save"
|
|
2587
|
+
},
|
|
2588
|
+
"flow-report/src/i18n/ui-strings.js | snapshotDescription": {
|
|
2589
|
+
"message": "Captured state of page"
|
|
2590
|
+
},
|
|
2591
|
+
"flow-report/src/i18n/ui-strings.js | snapshotLongDescription": {
|
|
2592
|
+
"message": "Snapshot reports analyze the page in a particular state, typically after user interactions."
|
|
2593
|
+
},
|
|
2594
|
+
"flow-report/src/i18n/ui-strings.js | snapshotReport": {
|
|
2595
|
+
"message": "Snapshot report"
|
|
2596
|
+
},
|
|
2597
|
+
"flow-report/src/i18n/ui-strings.js | snapshotReportCount": {
|
|
2598
|
+
"message": "{numSnapshot,plural, =1{{numSnapshot} snapshot report}zero{{numSnapshot} snapshot reports}two{{numSnapshot} snapshot reports}few{{numSnapshot} snapshot reports}many{{numSnapshot} snapshot reports}other{{numSnapshot} snapshot reports}}"
|
|
2599
|
+
},
|
|
2600
|
+
"flow-report/src/i18n/ui-strings.js | summary": {
|
|
2601
|
+
"message": "Summary"
|
|
2602
|
+
},
|
|
2603
|
+
"flow-report/src/i18n/ui-strings.js | timespanDescription": {
|
|
2604
|
+
"message": "User interactions"
|
|
2605
|
+
},
|
|
2606
|
+
"flow-report/src/i18n/ui-strings.js | timespanLongDescription": {
|
|
2607
|
+
"message": "Timespan reports analyze an arbitrary period of time, typically containing user interactions."
|
|
2608
|
+
},
|
|
2609
|
+
"flow-report/src/i18n/ui-strings.js | timespanReport": {
|
|
2610
|
+
"message": "Timespan report"
|
|
2611
|
+
},
|
|
2612
|
+
"flow-report/src/i18n/ui-strings.js | timespanReportCount": {
|
|
2613
|
+
"message": "{numTimespan,plural, =1{{numTimespan} timespan report}zero{{numTimespan} timespan reports}two{{numTimespan} timespan reports}few{{numTimespan} timespan reports}many{{numTimespan} timespan reports}other{{numTimespan} timespan reports}}"
|
|
2614
|
+
},
|
|
2615
|
+
"flow-report/src/i18n/ui-strings.js | title": {
|
|
2616
|
+
"message": "Lighthouse User Flow Report"
|
|
2617
|
+
},
|
|
2069
2618
|
"node_modules/lighthouse-stack-packs/packs/amp.js | efficient-animated-content": {
|
|
2070
2619
|
"message": "For animated content, use [`amp-anim`](https://amp.dev/documentation/components/amp-anim/) to minimize CPU usage when the content is offscreen."
|
|
2071
2620
|
},
|
|
@@ -2109,7 +2658,7 @@
|
|
|
2109
2658
|
"message": "Specify `@font-display` when defining custom fonts in your theme."
|
|
2110
2659
|
},
|
|
2111
2660
|
"node_modules/lighthouse-stack-packs/packs/drupal.js | modern-image-formats": {
|
|
2112
|
-
"message": "Consider
|
|
2661
|
+
"message": "Consider configuring [WebP image formats with a Convert image style](https://www.drupal.org/docs/core-modules-and-themes/core-modules/image-module/working-with-images#styles) on your site."
|
|
2113
2662
|
},
|
|
2114
2663
|
"node_modules/lighthouse-stack-packs/packs/drupal.js | offscreen-images": {
|
|
2115
2664
|
"message": "Install [a Drupal module](https://www.drupal.org/project/project_module?f%5B0%5D=&f%5B1%5D=&f%5B2%5D=im_vid_3%3A67&f%5B3%5D=&f%5B4%5D=sm_field_project_type%3Afull&f%5B5%5D=&f%5B6%5D=&text=%22lazy+load%22&solrsort=iss_project_release_usage+desc&op=Search) that can lazy load images. Such modules provide the ability to defer any offscreen images to improve performance."
|
|
@@ -2147,6 +2696,45 @@
|
|
|
2147
2696
|
"node_modules/lighthouse-stack-packs/packs/drupal.js | uses-responsive-images": {
|
|
2148
2697
|
"message": "Ensure that you are using the native [Responsive Image Styles](https://www.drupal.org/docs/8/mobile-guide/responsive-images-in-drupal-8) provided from Drupal (available in Drupal 8 and above). Use the Responsive Image Styles when rendering image fields through view modes, views, or images uploaded through the WYSIWYG editor."
|
|
2149
2698
|
},
|
|
2699
|
+
"node_modules/lighthouse-stack-packs/packs/ezoic.js | font-display": {
|
|
2700
|
+
"message": "Use [Ezoic Leap](https://pubdash.ezoic.com/speed) and enable `Optimize Fonts` to automatically leverage the `font-display` CSS feature to ensure text is user-visible while webfonts are loading."
|
|
2701
|
+
},
|
|
2702
|
+
"node_modules/lighthouse-stack-packs/packs/ezoic.js | modern-image-formats": {
|
|
2703
|
+
"message": "Use [Ezoic Leap](https://pubdash.ezoic.com/speed) and enable `Next-Gen Formats` to convert images to WebP."
|
|
2704
|
+
},
|
|
2705
|
+
"node_modules/lighthouse-stack-packs/packs/ezoic.js | offscreen-images": {
|
|
2706
|
+
"message": "Use [Ezoic Leap](https://pubdash.ezoic.com/speed) and enable `Lazy Load Images` to defer loading off-screen images until they are needed."
|
|
2707
|
+
},
|
|
2708
|
+
"node_modules/lighthouse-stack-packs/packs/ezoic.js | render-blocking-resources": {
|
|
2709
|
+
"message": "Use [Ezoic Leap](https://pubdash.ezoic.com/speed) and enable `Critical CSS` and `Script Delay` to defer non-critical JS/CSS."
|
|
2710
|
+
},
|
|
2711
|
+
"node_modules/lighthouse-stack-packs/packs/ezoic.js | server-response-time": {
|
|
2712
|
+
"message": "Use [Ezoic Cloud Caching](https://pubdash.ezoic.com/speed/caching) to cache your content across our world wide network, improving time to first byte."
|
|
2713
|
+
},
|
|
2714
|
+
"node_modules/lighthouse-stack-packs/packs/ezoic.js | unminified-css": {
|
|
2715
|
+
"message": "Use [Ezoic Leap](https://pubdash.ezoic.com/speed) and enable `Minify CSS` to automatically minify your CSS to reduce network payload sizes."
|
|
2716
|
+
},
|
|
2717
|
+
"node_modules/lighthouse-stack-packs/packs/ezoic.js | unminified-javascript": {
|
|
2718
|
+
"message": "Use [Ezoic Leap](https://pubdash.ezoic.com/speed) and enable `Minify Javascript` to automatically minify your JS to reduce network payload sizes."
|
|
2719
|
+
},
|
|
2720
|
+
"node_modules/lighthouse-stack-packs/packs/ezoic.js | unused-css-rules": {
|
|
2721
|
+
"message": "Use [Ezoic Leap](https://pubdash.ezoic.com/speed) and enable `Remove Unused CSS` to help with this issue. It will identify the CSS classes that are actually used on each page of your site, and remove any others to keep the file size small."
|
|
2722
|
+
},
|
|
2723
|
+
"node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-long-cache-ttl": {
|
|
2724
|
+
"message": "Use [Ezoic Leap](https://pubdash.ezoic.com/speed) and enable `Efficient Static Cache Policy` to set recommended values in the caching header for static assests."
|
|
2725
|
+
},
|
|
2726
|
+
"node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-optimized-images": {
|
|
2727
|
+
"message": "Use [Ezoic Leap](https://pubdash.ezoic.com/speed) and enable `Next-Gen Formats` to convert images to WebP."
|
|
2728
|
+
},
|
|
2729
|
+
"node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-rel-preconnect": {
|
|
2730
|
+
"message": "Use [Ezoic Leap](https://pubdash.ezoic.com/speed) and enable `Pre-Connect Origins` to automatically add `preconnect` resource hints to establish early connections to important third-party origins."
|
|
2731
|
+
},
|
|
2732
|
+
"node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-rel-preload": {
|
|
2733
|
+
"message": "Use [Ezoic Leap](https://pubdash.ezoic.com/speed) and enable `Preload Fonts` and `Preload Background Images` to add `preload` links to prioritize fetching resources that are currently requested later in page load."
|
|
2734
|
+
},
|
|
2735
|
+
"node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-responsive-images": {
|
|
2736
|
+
"message": "Use [Ezoic Leap](https://pubdash.ezoic.com/speed) and enable `Resize Images` to resize images to a device appropriate size, reducing network payload sizes."
|
|
2737
|
+
},
|
|
2150
2738
|
"node_modules/lighthouse-stack-packs/packs/joomla.js | efficient-animated-content": {
|
|
2151
2739
|
"message": "Consider uploading your GIF to a service which will make it available to embed as an HTML5 video."
|
|
2152
2740
|
},
|
|
@@ -2226,19 +2814,25 @@
|
|
|
2226
2814
|
"message": "`<link rel=preload>` tags can be added by [modifying a themes's layout](https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/layouts/xml-manage.html)."
|
|
2227
2815
|
},
|
|
2228
2816
|
"node_modules/lighthouse-stack-packs/packs/next.js | modern-image-formats": {
|
|
2229
|
-
"message": "Use the `
|
|
2817
|
+
"message": "Use the `next/image` component instead of `<img>` to automatically optimize image format. [Learn more](https://nextjs.org/docs/basic-features/image-optimization)."
|
|
2230
2818
|
},
|
|
2231
2819
|
"node_modules/lighthouse-stack-packs/packs/next.js | offscreen-images": {
|
|
2232
|
-
"message": "Use the `next/image` component
|
|
2820
|
+
"message": "Use the `next/image` component instead of `<img>` to automatically lazy-load images. [Learn more](https://nextjs.org/docs/basic-features/image-optimization)."
|
|
2821
|
+
},
|
|
2822
|
+
"node_modules/lighthouse-stack-packs/packs/next.js | prioritize-lcp-image": {
|
|
2823
|
+
"message": "Use the `next/image` component and set \"priority\" to true to preload LCP image. [Learn more](https://nextjs.org/docs/api-reference/next/image#priority)."
|
|
2233
2824
|
},
|
|
2234
2825
|
"node_modules/lighthouse-stack-packs/packs/next.js | render-blocking-resources": {
|
|
2235
2826
|
"message": "Use the `next/script` component to defer loading of non-critical third-party scripts. [Learn more](https://nextjs.org/docs/basic-features/script)."
|
|
2236
2827
|
},
|
|
2828
|
+
"node_modules/lighthouse-stack-packs/packs/next.js | unsized-images": {
|
|
2829
|
+
"message": "Use the `next/image` component to make sure images are always sized appropriately. [Learn more](https://nextjs.org/docs/api-reference/next/image#width)."
|
|
2830
|
+
},
|
|
2237
2831
|
"node_modules/lighthouse-stack-packs/packs/next.js | unused-css-rules": {
|
|
2238
2832
|
"message": "Consider setting up `PurgeCSS` in `Next.js` configuration to remove unused rules from stylesheets. [Learn more](https://purgecss.com/guides/next.html)."
|
|
2239
2833
|
},
|
|
2240
2834
|
"node_modules/lighthouse-stack-packs/packs/next.js | unused-javascript": {
|
|
2241
|
-
"message": "Use `Webpack Bundle Analyzer` to detect unused JavaScript code. [Learn
|
|
2835
|
+
"message": "Use `Webpack Bundle Analyzer` to detect unused JavaScript code. [Learn more](https://github.com/vercel/next.js/tree/canary/packages/next-bundle-analyzer)"
|
|
2242
2836
|
},
|
|
2243
2837
|
"node_modules/lighthouse-stack-packs/packs/next.js | user-timings": {
|
|
2244
2838
|
"message": "Consider using `Next.js Analytics` to measure your app's real-world performance. [Learn more](https://nextjs.org/docs/advanced-features/measuring-performance)."
|
|
@@ -2247,7 +2841,7 @@
|
|
|
2247
2841
|
"message": "Configure caching for immutable assets and `Server-side Rendered` (SSR) pages. [Learn more](https://nextjs.org/docs/going-to-production#caching)."
|
|
2248
2842
|
},
|
|
2249
2843
|
"node_modules/lighthouse-stack-packs/packs/next.js | uses-optimized-images": {
|
|
2250
|
-
"message": "Use the `next/image` component instead of `<img>` to
|
|
2844
|
+
"message": "Use the `next/image` component instead of `<img>` to adjust image quality. [Learn more](https://nextjs.org/docs/basic-features/image-optimization)."
|
|
2251
2845
|
},
|
|
2252
2846
|
"node_modules/lighthouse-stack-packs/packs/next.js | uses-responsive-images": {
|
|
2253
2847
|
"message": "Use the `next/image` component to set the appropriate `sizes`. [Learn more](https://nextjs.org/docs/api-reference/next/image#sizes)."
|
|
@@ -2255,6 +2849,24 @@
|
|
|
2255
2849
|
"node_modules/lighthouse-stack-packs/packs/next.js | uses-text-compression": {
|
|
2256
2850
|
"message": "Enable compression on your Next.js server. [Learn more](https://nextjs.org/docs/api-reference/next.config.js/compression)."
|
|
2257
2851
|
},
|
|
2852
|
+
"node_modules/lighthouse-stack-packs/packs/nuxt.js | modern-image-formats": {
|
|
2853
|
+
"message": "Use the `nuxt/image` component and set `format=\"webp\"`. [Learn more](https://image.nuxtjs.org/components/nuxt-img#format)."
|
|
2854
|
+
},
|
|
2855
|
+
"node_modules/lighthouse-stack-packs/packs/nuxt.js | offscreen-images": {
|
|
2856
|
+
"message": "Use the `nuxt/image` component and set `loading=\"lazy\"` for offscreen images. [Learn more](https://image.nuxtjs.org/components/nuxt-img#loading)."
|
|
2857
|
+
},
|
|
2858
|
+
"node_modules/lighthouse-stack-packs/packs/nuxt.js | prioritize-lcp-image": {
|
|
2859
|
+
"message": "Use the `nuxt/image` component and specify `preload` for LCP image. [Learn more](https://image.nuxtjs.org/components/nuxt-img#preload)."
|
|
2860
|
+
},
|
|
2861
|
+
"node_modules/lighthouse-stack-packs/packs/nuxt.js | unsized-images": {
|
|
2862
|
+
"message": "Use the `nuxt/image` component and specify explicit `width` and `height`. [Learn more](https://image.nuxtjs.org/components/nuxt-img#width--height)."
|
|
2863
|
+
},
|
|
2864
|
+
"node_modules/lighthouse-stack-packs/packs/nuxt.js | uses-optimized-images": {
|
|
2865
|
+
"message": "Use the `nuxt/image` component and set the appropriate `quality`. [Learn more](https://image.nuxtjs.org/components/nuxt-img#quality)."
|
|
2866
|
+
},
|
|
2867
|
+
"node_modules/lighthouse-stack-packs/packs/nuxt.js | uses-responsive-images": {
|
|
2868
|
+
"message": "Use the `nuxt/image` component and set the appropriate `sizes`. [Learn more](https://image.nuxtjs.org/components/nuxt-img#sizes)."
|
|
2869
|
+
},
|
|
2258
2870
|
"node_modules/lighthouse-stack-packs/packs/octobercms.js | efficient-animated-content": {
|
|
2259
2871
|
"message": "[Replace animated GIFs with video](https://web.dev/replace-gifs-with-videos/) for faster web page loads and consider using modern file formats such as [WebM](https://web.dev/replace-gifs-with-videos/#create-webm-videos) or [AV1](https://developers.google.com/web/updates/2018/09/chrome-70-media-updates#av1-decoder) to improve compression efficiency by greater than 30% over the current state-of-the-art video codec, VP9."
|
|
2260
2872
|
},
|
|
@@ -2304,7 +2916,7 @@
|
|
|
2304
2916
|
"message": "If you are using React Router, minimize usage of the `<Redirect>` component for [route navigations](https://reacttraining.com/react-router/web/api/Redirect)."
|
|
2305
2917
|
},
|
|
2306
2918
|
"node_modules/lighthouse-stack-packs/packs/react.js | server-response-time": {
|
|
2307
|
-
"message": "If you are server-side rendering any React components, consider using `
|
|
2919
|
+
"message": "If you are server-side rendering any React components, consider using `renderToPipeableStream()` or `renderToStaticNodeStream()` to allow the client to receive and hydrate different parts of the markup instead of all at once. [Learn more](https://reactjs.org/docs/react-dom-server.html#renderToPipeableStream)."
|
|
2308
2920
|
},
|
|
2309
2921
|
"node_modules/lighthouse-stack-packs/packs/react.js | unminified-css": {
|
|
2310
2922
|
"message": "If your build system minifies CSS files automatically, ensure that you are deploying the production build of your application. You can check this with the React Developer Tools extension. [Learn more](https://reactjs.org/docs/optimizing-performance.html#use-the-production-build)."
|
|
@@ -2322,7 +2934,7 @@
|
|
|
2322
2934
|
"message": "Consider uploading your GIF to a service which will make it available to embed as an HTML5 video."
|
|
2323
2935
|
},
|
|
2324
2936
|
"node_modules/lighthouse-stack-packs/packs/wordpress.js | modern-image-formats": {
|
|
2325
|
-
"message": "Consider using
|
|
2937
|
+
"message": "Consider using the [Performance Lab](https://wordpress.org/plugins/performance-lab/) plugin to automatically convert your uploaded JPEG images into WebP, wherever supported."
|
|
2326
2938
|
},
|
|
2327
2939
|
"node_modules/lighthouse-stack-packs/packs/wordpress.js | offscreen-images": {
|
|
2328
2940
|
"message": "Install a [lazy-load WordPress plugin](https://wordpress.org/plugins/search/lazy+load/) that provides the ability to defer any offscreen images, or switch to a theme that provides that functionality. Also consider using [the AMP plugin](https://wordpress.org/plugins/amp/)."
|
|
@@ -2343,10 +2955,10 @@
|
|
|
2343
2955
|
"message": "A number of [WordPress plugins](https://wordpress.org/plugins/search/minify+javascript/) can speed up your site by concatenating, minifying, and compressing your scripts. You may also want to use a build process to do this minification up front if possible."
|
|
2344
2956
|
},
|
|
2345
2957
|
"node_modules/lighthouse-stack-packs/packs/wordpress.js | unused-css-rules": {
|
|
2346
|
-
"message": "Consider reducing, or switching, the number of [WordPress plugins](https://wordpress.org/plugins/) loading unused CSS in your page. To identify plugins that are adding extraneous CSS, try running [code coverage](https://
|
|
2958
|
+
"message": "Consider reducing, or switching, the number of [WordPress plugins](https://wordpress.org/plugins/) loading unused CSS in your page. To identify plugins that are adding extraneous CSS, try running [code coverage](https://developer.chrome.com/docs/devtools/coverage/) in Chrome DevTools. You can identify the theme/plugin responsible from the URL of the stylesheet. Look out for plugins that have many stylesheets in the list which have a lot of red in code coverage. A plugin should only enqueue a stylesheet if it is actually used on the page."
|
|
2347
2959
|
},
|
|
2348
2960
|
"node_modules/lighthouse-stack-packs/packs/wordpress.js | unused-javascript": {
|
|
2349
|
-
"message": "Consider reducing, or switching, the number of [WordPress plugins](https://wordpress.org/plugins/) loading unused JavaScript in your page. To identify plugins that are adding extraneous JS, try running [code coverage](https://
|
|
2961
|
+
"message": "Consider reducing, or switching, the number of [WordPress plugins](https://wordpress.org/plugins/) loading unused JavaScript in your page. To identify plugins that are adding extraneous JS, try running [code coverage](https://developer.chrome.com/docs/devtools/coverage/) in Chrome DevTools. You can identify the theme/plugin responsible from the URL of the script. Look out for plugins that have many scripts in the list which have a lot of red in code coverage. A plugin should only enqueue a script if it is actually used on the page."
|
|
2350
2962
|
},
|
|
2351
2963
|
"node_modules/lighthouse-stack-packs/packs/wordpress.js | uses-long-cache-ttl": {
|
|
2352
2964
|
"message": "Read about [Browser Caching in WordPress](https://wordpress.org/support/article/optimization/#browser-caching)."
|
|
@@ -2360,154 +2972,193 @@
|
|
|
2360
2972
|
"node_modules/lighthouse-stack-packs/packs/wordpress.js | uses-text-compression": {
|
|
2361
2973
|
"message": "You can enable text compression in your web server configuration."
|
|
2362
2974
|
},
|
|
2363
|
-
"
|
|
2975
|
+
"node_modules/lighthouse-stack-packs/packs/wp-rocket.js | modern-image-formats": {
|
|
2976
|
+
"message": "Enable 'Imagify' from the Image Optimization tab in 'WP Rocket' to convert your images to WebP."
|
|
2977
|
+
},
|
|
2978
|
+
"node_modules/lighthouse-stack-packs/packs/wp-rocket.js | offscreen-images": {
|
|
2979
|
+
"message": "Enable [LazyLoad](https://docs.wp-rocket.me/article/1141-lazyload-for-images) in WP Rocket to fix this recommendation. This feature delays the loading of the images until the visitor scrolls down the page and actually needs to see them."
|
|
2980
|
+
},
|
|
2981
|
+
"node_modules/lighthouse-stack-packs/packs/wp-rocket.js | render-blocking-resources": {
|
|
2982
|
+
"message": "Enable [Remove Unused CSS](https://docs.wp-rocket.me/article/1529-remove-unused-css) and [Load JavaScript deferred](https://docs.wp-rocket.me/article/1265-load-javascript-deferred) in 'WP Rocket' to address this recommendation. These features will respectively optimize the CSS and JavaScript files so that they don't block the rendering of your page."
|
|
2983
|
+
},
|
|
2984
|
+
"node_modules/lighthouse-stack-packs/packs/wp-rocket.js | unminified-css": {
|
|
2985
|
+
"message": "Enable [Minify CSS files](https://docs.wp-rocket.me/article/1350-css-minify-combine) in 'WP Rocket' to fix this issue. Any spaces and comments in your site's CSS files will be removed to make the file size smaller and faster to download."
|
|
2986
|
+
},
|
|
2987
|
+
"node_modules/lighthouse-stack-packs/packs/wp-rocket.js | unminified-javascript": {
|
|
2988
|
+
"message": "Enable [Minify JavaScript files](https://docs.wp-rocket.me/article/1351-javascript-minify-combine) in 'WP Rocket' to fix this issue. Empty spaces and comments will be removed from JavaScript files to make their size smaller and faster to download."
|
|
2989
|
+
},
|
|
2990
|
+
"node_modules/lighthouse-stack-packs/packs/wp-rocket.js | unused-css-rules": {
|
|
2991
|
+
"message": "Enable [Remove Unused CSS](https://docs.wp-rocket.me/article/1529-remove-unused-css) in 'WP Rocket' to fix this issue. It reduces page size by removing all CSS and stylesheets that are not used while keeping only the used CSS for each page."
|
|
2992
|
+
},
|
|
2993
|
+
"node_modules/lighthouse-stack-packs/packs/wp-rocket.js | unused-javascript": {
|
|
2994
|
+
"message": "Enable [Delay JavaScript execution](https://docs.wp-rocket.me/article/1349-delay-javascript-execution) in 'WP Rocket' to fix this problem. It will improve the loading of your page by delaying the execution of scripts until user interaction. If your site has iframes, you can use WP Rocket's [LazyLoad for iframes and videos](https://docs.wp-rocket.me/article/1674-lazyload-for-iframes-and-videos) and [Replace YouTube iframe with preview image](https://docs.wp-rocket.me/article/1488-replace-youtube-iframe-with-preview-image) as well."
|
|
2995
|
+
},
|
|
2996
|
+
"node_modules/lighthouse-stack-packs/packs/wp-rocket.js | uses-optimized-images": {
|
|
2997
|
+
"message": "Enable 'Imagify' from the Image Optimization tab in 'WP Rocket' and run Bulk Optimization to compress your images."
|
|
2998
|
+
},
|
|
2999
|
+
"node_modules/lighthouse-stack-packs/packs/wp-rocket.js | uses-rel-preconnect": {
|
|
3000
|
+
"message": "Use [Prefetch DNS Requests](https://docs.wp-rocket.me/article/1302-prefetch-dns-requests) in 'WP Rocket' to add \"dns-prefetch\" and speed up the connection with external domains. Also, 'WP Rocket' automatically adds \"preconnect\" to [Google Fonts domain](https://docs.wp-rocket.me/article/1312-optimize-google-fonts) and any CNAME(S) added via the [Enable CDN](https://docs.wp-rocket.me/article/42-using-wp-rocket-with-a-cdn) feature."
|
|
3001
|
+
},
|
|
3002
|
+
"node_modules/lighthouse-stack-packs/packs/wp-rocket.js | uses-rel-preload": {
|
|
3003
|
+
"message": "To fix this issue for fonts, enable [Remove Unused CSS](https://docs.wp-rocket.me/article/1529-remove-unused-css) in 'WP Rocket'. Your site's critical fonts will be preloaded with priority."
|
|
3004
|
+
},
|
|
3005
|
+
"report/renderer/report-utils.js | calculatorLink": {
|
|
2364
3006
|
"message": "See calculator."
|
|
2365
3007
|
},
|
|
2366
|
-
"report/renderer/
|
|
3008
|
+
"report/renderer/report-utils.js | collapseView": {
|
|
2367
3009
|
"message": "Collapse view"
|
|
2368
3010
|
},
|
|
2369
|
-
"report/renderer/
|
|
3011
|
+
"report/renderer/report-utils.js | crcInitialNavigation": {
|
|
2370
3012
|
"message": "Initial Navigation"
|
|
2371
3013
|
},
|
|
2372
|
-
"report/renderer/
|
|
3014
|
+
"report/renderer/report-utils.js | crcLongestDurationLabel": {
|
|
2373
3015
|
"message": "Maximum critical path latency:"
|
|
2374
3016
|
},
|
|
2375
|
-
"report/renderer/
|
|
3017
|
+
"report/renderer/report-utils.js | dropdownCopyJSON": {
|
|
2376
3018
|
"message": "Copy JSON"
|
|
2377
3019
|
},
|
|
2378
|
-
"report/renderer/
|
|
3020
|
+
"report/renderer/report-utils.js | dropdownDarkTheme": {
|
|
2379
3021
|
"message": "Toggle Dark Theme"
|
|
2380
3022
|
},
|
|
2381
|
-
"report/renderer/
|
|
3023
|
+
"report/renderer/report-utils.js | dropdownPrintExpanded": {
|
|
2382
3024
|
"message": "Print Expanded"
|
|
2383
3025
|
},
|
|
2384
|
-
"report/renderer/
|
|
3026
|
+
"report/renderer/report-utils.js | dropdownPrintSummary": {
|
|
2385
3027
|
"message": "Print Summary"
|
|
2386
3028
|
},
|
|
2387
|
-
"report/renderer/
|
|
3029
|
+
"report/renderer/report-utils.js | dropdownSaveGist": {
|
|
2388
3030
|
"message": "Save as Gist"
|
|
2389
3031
|
},
|
|
2390
|
-
"report/renderer/
|
|
3032
|
+
"report/renderer/report-utils.js | dropdownSaveHTML": {
|
|
2391
3033
|
"message": "Save as HTML"
|
|
2392
3034
|
},
|
|
2393
|
-
"report/renderer/
|
|
3035
|
+
"report/renderer/report-utils.js | dropdownSaveJSON": {
|
|
2394
3036
|
"message": "Save as JSON"
|
|
2395
3037
|
},
|
|
2396
|
-
"report/renderer/
|
|
3038
|
+
"report/renderer/report-utils.js | dropdownViewer": {
|
|
2397
3039
|
"message": "Open in Viewer"
|
|
2398
3040
|
},
|
|
2399
|
-
"report/renderer/
|
|
3041
|
+
"report/renderer/report-utils.js | errorLabel": {
|
|
2400
3042
|
"message": "Error!"
|
|
2401
3043
|
},
|
|
2402
|
-
"report/renderer/
|
|
3044
|
+
"report/renderer/report-utils.js | errorMissingAuditInfo": {
|
|
2403
3045
|
"message": "Report error: no audit information"
|
|
2404
3046
|
},
|
|
2405
|
-
"report/renderer/
|
|
3047
|
+
"report/renderer/report-utils.js | expandView": {
|
|
2406
3048
|
"message": "Expand view"
|
|
2407
3049
|
},
|
|
2408
|
-
"report/renderer/
|
|
3050
|
+
"report/renderer/report-utils.js | footerIssue": {
|
|
2409
3051
|
"message": "File an issue"
|
|
2410
3052
|
},
|
|
2411
|
-
"report/renderer/
|
|
3053
|
+
"report/renderer/report-utils.js | hide": {
|
|
2412
3054
|
"message": "Hide"
|
|
2413
3055
|
},
|
|
2414
|
-
"report/renderer/
|
|
3056
|
+
"report/renderer/report-utils.js | labDataTitle": {
|
|
2415
3057
|
"message": "Lab Data"
|
|
2416
3058
|
},
|
|
2417
|
-
"report/renderer/
|
|
3059
|
+
"report/renderer/report-utils.js | lsPerformanceCategoryDescription": {
|
|
2418
3060
|
"message": "[Lighthouse](https://developers.google.com/web/tools/lighthouse/) analysis of the current page on an emulated mobile network. Values are estimated and may vary."
|
|
2419
3061
|
},
|
|
2420
|
-
"report/renderer/
|
|
3062
|
+
"report/renderer/report-utils.js | manualAuditsGroupTitle": {
|
|
2421
3063
|
"message": "Additional items to manually check"
|
|
2422
3064
|
},
|
|
2423
|
-
"report/renderer/
|
|
3065
|
+
"report/renderer/report-utils.js | notApplicableAuditsGroupTitle": {
|
|
2424
3066
|
"message": "Not applicable"
|
|
2425
3067
|
},
|
|
2426
|
-
"report/renderer/
|
|
3068
|
+
"report/renderer/report-utils.js | opportunityResourceColumnLabel": {
|
|
2427
3069
|
"message": "Opportunity"
|
|
2428
3070
|
},
|
|
2429
|
-
"report/renderer/
|
|
3071
|
+
"report/renderer/report-utils.js | opportunitySavingsColumnLabel": {
|
|
2430
3072
|
"message": "Estimated Savings"
|
|
2431
3073
|
},
|
|
2432
|
-
"report/renderer/
|
|
3074
|
+
"report/renderer/report-utils.js | passedAuditsGroupTitle": {
|
|
2433
3075
|
"message": "Passed audits"
|
|
2434
3076
|
},
|
|
2435
|
-
"report/renderer/
|
|
3077
|
+
"report/renderer/report-utils.js | runtimeAnalysisWindow": {
|
|
2436
3078
|
"message": "Initial page load"
|
|
2437
3079
|
},
|
|
2438
|
-
"report/renderer/
|
|
3080
|
+
"report/renderer/report-utils.js | runtimeCustom": {
|
|
2439
3081
|
"message": "Custom throttling"
|
|
2440
3082
|
},
|
|
2441
|
-
"report/renderer/
|
|
3083
|
+
"report/renderer/report-utils.js | runtimeDesktopEmulation": {
|
|
2442
3084
|
"message": "Emulated Desktop"
|
|
2443
3085
|
},
|
|
2444
|
-
"report/renderer/
|
|
2445
|
-
"message": "
|
|
3086
|
+
"report/renderer/report-utils.js | runtimeMobileEmulation": {
|
|
3087
|
+
"message": "Emulated Moto G Power"
|
|
2446
3088
|
},
|
|
2447
|
-
"report/renderer/
|
|
3089
|
+
"report/renderer/report-utils.js | runtimeNoEmulation": {
|
|
2448
3090
|
"message": "No emulation"
|
|
2449
3091
|
},
|
|
2450
|
-
"report/renderer/
|
|
3092
|
+
"report/renderer/report-utils.js | runtimeSettingsAxeVersion": {
|
|
2451
3093
|
"message": "Axe version"
|
|
2452
3094
|
},
|
|
2453
|
-
"report/renderer/
|
|
2454
|
-
"message": "CPU/Memory Power"
|
|
3095
|
+
"report/renderer/report-utils.js | runtimeSettingsBenchmark": {
|
|
3096
|
+
"message": "Unthrottled CPU/Memory Power"
|
|
2455
3097
|
},
|
|
2456
|
-
"report/renderer/
|
|
3098
|
+
"report/renderer/report-utils.js | runtimeSettingsCPUThrottling": {
|
|
2457
3099
|
"message": "CPU throttling"
|
|
2458
3100
|
},
|
|
2459
|
-
"report/renderer/
|
|
3101
|
+
"report/renderer/report-utils.js | runtimeSettingsDevice": {
|
|
2460
3102
|
"message": "Device"
|
|
2461
3103
|
},
|
|
2462
|
-
"report/renderer/
|
|
3104
|
+
"report/renderer/report-utils.js | runtimeSettingsNetworkThrottling": {
|
|
2463
3105
|
"message": "Network throttling"
|
|
2464
3106
|
},
|
|
2465
|
-
"report/renderer/
|
|
3107
|
+
"report/renderer/report-utils.js | runtimeSettingsScreenEmulation": {
|
|
3108
|
+
"message": "Screen emulation"
|
|
3109
|
+
},
|
|
3110
|
+
"report/renderer/report-utils.js | runtimeSettingsUANetwork": {
|
|
2466
3111
|
"message": "User agent (network)"
|
|
2467
3112
|
},
|
|
2468
|
-
"report/renderer/
|
|
3113
|
+
"report/renderer/report-utils.js | runtimeSingleLoad": {
|
|
2469
3114
|
"message": "Single page load"
|
|
2470
3115
|
},
|
|
2471
|
-
"report/renderer/
|
|
3116
|
+
"report/renderer/report-utils.js | runtimeSingleLoadTooltip": {
|
|
2472
3117
|
"message": "This data is taken from a single page load, as opposed to field data summarizing many sessions."
|
|
2473
3118
|
},
|
|
2474
|
-
"report/renderer/
|
|
3119
|
+
"report/renderer/report-utils.js | runtimeSlow4g": {
|
|
2475
3120
|
"message": "Slow 4G throttling"
|
|
2476
3121
|
},
|
|
2477
|
-
"report/renderer/
|
|
3122
|
+
"report/renderer/report-utils.js | runtimeUnknown": {
|
|
2478
3123
|
"message": "Unknown"
|
|
2479
3124
|
},
|
|
2480
|
-
"report/renderer/
|
|
3125
|
+
"report/renderer/report-utils.js | show": {
|
|
2481
3126
|
"message": "Show"
|
|
2482
3127
|
},
|
|
2483
|
-
"report/renderer/
|
|
3128
|
+
"report/renderer/report-utils.js | showRelevantAudits": {
|
|
2484
3129
|
"message": "Show audits relevant to:"
|
|
2485
3130
|
},
|
|
2486
|
-
"report/renderer/
|
|
3131
|
+
"report/renderer/report-utils.js | snippetCollapseButtonLabel": {
|
|
2487
3132
|
"message": "Collapse snippet"
|
|
2488
3133
|
},
|
|
2489
|
-
"report/renderer/
|
|
3134
|
+
"report/renderer/report-utils.js | snippetExpandButtonLabel": {
|
|
2490
3135
|
"message": "Expand snippet"
|
|
2491
3136
|
},
|
|
2492
|
-
"report/renderer/
|
|
3137
|
+
"report/renderer/report-utils.js | thirdPartyResourcesLabel": {
|
|
2493
3138
|
"message": "Show 3rd-party resources"
|
|
2494
3139
|
},
|
|
2495
|
-
"report/renderer/
|
|
3140
|
+
"report/renderer/report-utils.js | throttlingProvided": {
|
|
2496
3141
|
"message": "Provided by environment"
|
|
2497
3142
|
},
|
|
2498
|
-
"report/renderer/
|
|
3143
|
+
"report/renderer/report-utils.js | toplevelWarningsMessage": {
|
|
2499
3144
|
"message": "There were issues affecting this run of Lighthouse:"
|
|
2500
3145
|
},
|
|
2501
|
-
"report/renderer/
|
|
2502
|
-
"message": "Values are estimated and may vary. The [performance score is calculated](https://
|
|
3146
|
+
"report/renderer/report-utils.js | varianceDisclaimer": {
|
|
3147
|
+
"message": "Values are estimated and may vary. The [performance score is calculated](https://developer.chrome.com/docs/lighthouse/performance/performance-scoring/) directly from these metrics."
|
|
3148
|
+
},
|
|
3149
|
+
"report/renderer/report-utils.js | viewOriginalTraceLabel": {
|
|
3150
|
+
"message": "View Original Trace"
|
|
3151
|
+
},
|
|
3152
|
+
"report/renderer/report-utils.js | viewTraceLabel": {
|
|
3153
|
+
"message": "View Trace"
|
|
2503
3154
|
},
|
|
2504
|
-
"report/renderer/
|
|
3155
|
+
"report/renderer/report-utils.js | viewTreemapLabel": {
|
|
2505
3156
|
"message": "View Treemap"
|
|
2506
3157
|
},
|
|
2507
|
-
"report/renderer/
|
|
3158
|
+
"report/renderer/report-utils.js | warningAuditsGroupTitle": {
|
|
2508
3159
|
"message": "Passed audits but with warnings"
|
|
2509
3160
|
},
|
|
2510
|
-
"report/renderer/
|
|
3161
|
+
"report/renderer/report-utils.js | warningHeader": {
|
|
2511
3162
|
"message": "Warnings: "
|
|
2512
3163
|
},
|
|
2513
3164
|
"treemap/app/src/util.js | allLabel": {
|