chrome-devtools-frontend
Version:
Chrome DevTools UI
818 lines • 182 kB
JSON
{
"flow-report/src/i18n/ui-strings.js | allReports": {
"message": "All Reports"
},
"flow-report/src/i18n/ui-strings.js | categories": {
"message": "Categories"
},
"flow-report/src/i18n/ui-strings.js | categoryAccessibility": {
"message": "Accessibility"
},
"flow-report/src/i18n/ui-strings.js | categoryBestPractices": {
"message": "Best Practices"
},
"flow-report/src/i18n/ui-strings.js | categoryPerformance": {
"message": "Performance"
},
"flow-report/src/i18n/ui-strings.js | categoryProgressiveWebApp": {
"message": "Progressive Web App"
},
"flow-report/src/i18n/ui-strings.js | categorySeo": {
"message": "SEO"
},
"flow-report/src/i18n/ui-strings.js | desktop": {
"message": "Desktop"
},
"flow-report/src/i18n/ui-strings.js | helpDialogTitle": {
"message": "Understanding the Lighthouse Flow Report"
},
"flow-report/src/i18n/ui-strings.js | helpLabel": {
"message": "Understanding Flows"
},
"flow-report/src/i18n/ui-strings.js | helpUseCaseInstructionNavigation": {
"message": "Use Navigation reports to..."
},
"flow-report/src/i18n/ui-strings.js | helpUseCaseInstructionSnapshot": {
"message": "Use Snapshot reports to..."
},
"flow-report/src/i18n/ui-strings.js | helpUseCaseInstructionTimespan": {
"message": "Use Timespan reports to..."
},
"flow-report/src/i18n/ui-strings.js | helpUseCaseNavigation1": {
"message": "Obtain a Lighthouse Performance score."
},
"flow-report/src/i18n/ui-strings.js | helpUseCaseNavigation2": {
"message": "Measure page load Performance metrics such as Largest Contentful Paint and Speed Index."
},
"flow-report/src/i18n/ui-strings.js | helpUseCaseNavigation3": {
"message": "Assess Progressive Web App capabilities."
},
"flow-report/src/i18n/ui-strings.js | helpUseCaseSnapshot1": {
"message": "Find accessibility issues in single page applications or complex forms."
},
"flow-report/src/i18n/ui-strings.js | helpUseCaseSnapshot2": {
"message": "Evaluate best practices of menus and UI elements hidden behind interaction."
},
"flow-report/src/i18n/ui-strings.js | helpUseCaseTimespan1": {
"message": "Measure layout shifts and JavaScript execution time on a series of interactions."
},
"flow-report/src/i18n/ui-strings.js | helpUseCaseTimespan2": {
"message": "Discover performance opportunities to improve the experience for long-lived pages and single-page applications."
},
"flow-report/src/i18n/ui-strings.js | highestImpact": {
"message": "Highest impact"
},
"flow-report/src/i18n/ui-strings.js | informativeAuditCount": {
"message": "{numInformative, plural,\n =1 {{numInformative} informative audit}\n other {{numInformative} informative audits}\n }"
},
"flow-report/src/i18n/ui-strings.js | mobile": {
"message": "Mobile"
},
"flow-report/src/i18n/ui-strings.js | navigationDescription": {
"message": "Page load"
},
"flow-report/src/i18n/ui-strings.js | navigationLongDescription": {
"message": "Navigation reports analyze a single page load, exactly like the original Lighthouse reports."
},
"flow-report/src/i18n/ui-strings.js | navigationReport": {
"message": "Navigation report"
},
"flow-report/src/i18n/ui-strings.js | navigationReportCount": {
"message": "{numNavigation, plural,\n =1 {{numNavigation} navigation report}\n other {{numNavigation} navigation reports}\n }"
},
"flow-report/src/i18n/ui-strings.js | passableAuditCount": {
"message": "{numPassableAudits, plural,\n =1 {{numPassableAudits} passable audit}\n other {{numPassableAudits} passable audits}\n }"
},
"flow-report/src/i18n/ui-strings.js | passedAuditCount": {
"message": "{numPassed, plural,\n =1 {{numPassed} audit passed}\n other {{numPassed} audits passed}\n }"
},
"flow-report/src/i18n/ui-strings.js | ratingAverage": {
"message": "Average"
},
"flow-report/src/i18n/ui-strings.js | ratingError": {
"message": "Error"
},
"flow-report/src/i18n/ui-strings.js | ratingFail": {
"message": "Poor"
},
"flow-report/src/i18n/ui-strings.js | ratingPass": {
"message": "Good"
},
"flow-report/src/i18n/ui-strings.js | save": {
"message": "Save"
},
"flow-report/src/i18n/ui-strings.js | snapshotDescription": {
"message": "Captured state of page"
},
"flow-report/src/i18n/ui-strings.js | snapshotLongDescription": {
"message": "Snapshot reports analyze the page in a particular state, typically after user interactions."
},
"flow-report/src/i18n/ui-strings.js | snapshotReport": {
"message": "Snapshot report"
},
"flow-report/src/i18n/ui-strings.js | snapshotReportCount": {
"message": "{numSnapshot, plural,\n =1 {{numSnapshot} snapshot report}\n other {{numSnapshot} snapshot reports}\n }"
},
"flow-report/src/i18n/ui-strings.js | summary": {
"message": "Summary"
},
"flow-report/src/i18n/ui-strings.js | timespanDescription": {
"message": "User interactions"
},
"flow-report/src/i18n/ui-strings.js | timespanLongDescription": {
"message": "Timespan reports analyze an arbitrary period of time, typically containing user interactions."
},
"flow-report/src/i18n/ui-strings.js | timespanReport": {
"message": "Timespan report"
},
"flow-report/src/i18n/ui-strings.js | timespanReportCount": {
"message": "{numTimespan, plural,\n =1 {{numTimespan} timespan report}\n other {{numTimespan} timespan reports}\n }"
},
"flow-report/src/i18n/ui-strings.js | title": {
"message": "Lighthouse User Flow Report"
},
"lighthouse-core/audits/accessibility/accesskeys.js | description": {
"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/)."
},
"lighthouse-core/audits/accessibility/accesskeys.js | failureTitle": {
"message": "`[accesskey]` values are not unique"
},
"lighthouse-core/audits/accessibility/accesskeys.js | title": {
"message": "`[accesskey]` values are unique"
},
"lighthouse-core/audits/accessibility/aria-allowed-attr.js | description": {
"message": "Each ARIA `role` supports a specific subset of `aria-*` attributes. Mismatching these invalidates the `aria-*` attributes. [Learn more](https://web.dev/aria-allowed-attr/)."
},
"lighthouse-core/audits/accessibility/aria-allowed-attr.js | failureTitle": {
"message": "`[aria-*]` attributes do not match their roles"
},
"lighthouse-core/audits/accessibility/aria-allowed-attr.js | title": {
"message": "`[aria-*]` attributes match their roles"
},
"lighthouse-core/audits/accessibility/aria-command-name.js | description": {
"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://web.dev/aria-name/)."
},
"lighthouse-core/audits/accessibility/aria-command-name.js | failureTitle": {
"message": "`button`, `link`, and `menuitem` elements do not have accessible names."
},
"lighthouse-core/audits/accessibility/aria-command-name.js | title": {
"message": "`button`, `link`, and `menuitem` elements have accessible names"
},
"lighthouse-core/audits/accessibility/aria-hidden-body.js | description": {
"message": "Assistive technologies, like screen readers, work inconsistently when `aria-hidden=\"true\"` is set on the document `<body>`. [Learn more](https://web.dev/aria-hidden-body/)."
},
"lighthouse-core/audits/accessibility/aria-hidden-body.js | failureTitle": {
"message": "`[aria-hidden=\"true\"]` is present on the document `<body>`"
},
"lighthouse-core/audits/accessibility/aria-hidden-body.js | title": {
"message": "`[aria-hidden=\"true\"]` is not present on the document `<body>`"
},
"lighthouse-core/audits/accessibility/aria-hidden-focus.js | description": {
"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 more](https://web.dev/aria-hidden-focus/)."
},
"lighthouse-core/audits/accessibility/aria-hidden-focus.js | failureTitle": {
"message": "`[aria-hidden=\"true\"]` elements contain focusable descendents"
},
"lighthouse-core/audits/accessibility/aria-hidden-focus.js | title": {
"message": "`[aria-hidden=\"true\"]` elements do not contain focusable descendents"
},
"lighthouse-core/audits/accessibility/aria-input-field-name.js | description": {
"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://web.dev/aria-name/)."
},
"lighthouse-core/audits/accessibility/aria-input-field-name.js | failureTitle": {
"message": "ARIA input fields do not have accessible names"
},
"lighthouse-core/audits/accessibility/aria-input-field-name.js | title": {
"message": "ARIA input fields have accessible names"
},
"lighthouse-core/audits/accessibility/aria-meter-name.js | description": {
"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://web.dev/aria-name/)."
},
"lighthouse-core/audits/accessibility/aria-meter-name.js | failureTitle": {
"message": "ARIA `meter` elements do not have accessible names."
},
"lighthouse-core/audits/accessibility/aria-meter-name.js | title": {
"message": "ARIA `meter` elements have accessible names"
},
"lighthouse-core/audits/accessibility/aria-progressbar-name.js | description": {
"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 more](https://web.dev/aria-name/)."
},
"lighthouse-core/audits/accessibility/aria-progressbar-name.js | failureTitle": {
"message": "ARIA `progressbar` elements do not have accessible names."
},
"lighthouse-core/audits/accessibility/aria-progressbar-name.js | title": {
"message": "ARIA `progressbar` elements have accessible names"
},
"lighthouse-core/audits/accessibility/aria-required-attr.js | description": {
"message": "Some ARIA roles have required attributes that describe the state of the element to screen readers. [Learn more](https://web.dev/aria-required-attr/)."
},
"lighthouse-core/audits/accessibility/aria-required-attr.js | failureTitle": {
"message": "`[role]`s do not have all required `[aria-*]` attributes"
},
"lighthouse-core/audits/accessibility/aria-required-attr.js | title": {
"message": "`[role]`s have all required `[aria-*]` attributes"
},
"lighthouse-core/audits/accessibility/aria-required-children.js | description": {
"message": "Some ARIA parent roles must contain specific child roles to perform their intended accessibility functions. [Learn more](https://web.dev/aria-required-children/)."
},
"lighthouse-core/audits/accessibility/aria-required-children.js | failureTitle": {
"message": "Elements with an ARIA `[role]` that require children to contain a specific `[role]` are missing some or all of those required children."
},
"lighthouse-core/audits/accessibility/aria-required-children.js | title": {
"message": "Elements with an ARIA `[role]` that require children to contain a specific `[role]` have all required children."
},
"lighthouse-core/audits/accessibility/aria-required-parent.js | description": {
"message": "Some ARIA child roles must be contained by specific parent roles to properly perform their intended accessibility functions. [Learn more](https://web.dev/aria-required-parent/)."
},
"lighthouse-core/audits/accessibility/aria-required-parent.js | failureTitle": {
"message": "`[role]`s are not contained by their required parent element"
},
"lighthouse-core/audits/accessibility/aria-required-parent.js | title": {
"message": "`[role]`s are contained by their required parent element"
},
"lighthouse-core/audits/accessibility/aria-roles.js | description": {
"message": "ARIA roles must have valid values in order to perform their intended accessibility functions. [Learn more](https://web.dev/aria-roles/)."
},
"lighthouse-core/audits/accessibility/aria-roles.js | failureTitle": {
"message": "`[role]` values are not valid"
},
"lighthouse-core/audits/accessibility/aria-roles.js | title": {
"message": "`[role]` values are valid"
},
"lighthouse-core/audits/accessibility/aria-toggle-field-name.js | description": {
"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://web.dev/aria-name/)."
},
"lighthouse-core/audits/accessibility/aria-toggle-field-name.js | failureTitle": {
"message": "ARIA toggle fields do not have accessible names"
},
"lighthouse-core/audits/accessibility/aria-toggle-field-name.js | title": {
"message": "ARIA toggle fields have accessible names"
},
"lighthouse-core/audits/accessibility/aria-tooltip-name.js | description": {
"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://web.dev/aria-name/)."
},
"lighthouse-core/audits/accessibility/aria-tooltip-name.js | failureTitle": {
"message": "ARIA `tooltip` elements do not have accessible names."
},
"lighthouse-core/audits/accessibility/aria-tooltip-name.js | title": {
"message": "ARIA `tooltip` elements have accessible names"
},
"lighthouse-core/audits/accessibility/aria-treeitem-name.js | description": {
"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://web.dev/aria-name/)."
},
"lighthouse-core/audits/accessibility/aria-treeitem-name.js | failureTitle": {
"message": "ARIA `treeitem` elements do not have accessible names."
},
"lighthouse-core/audits/accessibility/aria-treeitem-name.js | title": {
"message": "ARIA `treeitem` elements have accessible names"
},
"lighthouse-core/audits/accessibility/aria-valid-attr-value.js | description": {
"message": "Assistive technologies, like screen readers, can't interpret ARIA attributes with invalid values. [Learn more](https://web.dev/aria-valid-attr-value/)."
},
"lighthouse-core/audits/accessibility/aria-valid-attr-value.js | failureTitle": {
"message": "`[aria-*]` attributes do not have valid values"
},
"lighthouse-core/audits/accessibility/aria-valid-attr-value.js | title": {
"message": "`[aria-*]` attributes have valid values"
},
"lighthouse-core/audits/accessibility/aria-valid-attr.js | description": {
"message": "Assistive technologies, like screen readers, can't interpret ARIA attributes with invalid names. [Learn more](https://web.dev/aria-valid-attr/)."
},
"lighthouse-core/audits/accessibility/aria-valid-attr.js | failureTitle": {
"message": "`[aria-*]` attributes are not valid or misspelled"
},
"lighthouse-core/audits/accessibility/aria-valid-attr.js | title": {
"message": "`[aria-*]` attributes are valid and not misspelled"
},
"lighthouse-core/audits/accessibility/axe-audit.js | failingElementsHeader": {
"message": "Failing Elements"
},
"lighthouse-core/audits/accessibility/button-name.js | description": {
"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://web.dev/button-name/)."
},
"lighthouse-core/audits/accessibility/button-name.js | failureTitle": {
"message": "Buttons do not have an accessible name"
},
"lighthouse-core/audits/accessibility/button-name.js | title": {
"message": "Buttons have an accessible name"
},
"lighthouse-core/audits/accessibility/bypass.js | description": {
"message": "Adding ways to bypass repetitive content lets keyboard users navigate the page more efficiently. [Learn more](https://web.dev/bypass/)."
},
"lighthouse-core/audits/accessibility/bypass.js | failureTitle": {
"message": "The page does not contain a heading, skip link, or landmark region"
},
"lighthouse-core/audits/accessibility/bypass.js | title": {
"message": "The page contains a heading, skip link, or landmark region"
},
"lighthouse-core/audits/accessibility/color-contrast.js | description": {
"message": "Low-contrast text is difficult or impossible for many users to read. [Learn more](https://web.dev/color-contrast/)."
},
"lighthouse-core/audits/accessibility/color-contrast.js | failureTitle": {
"message": "Background and foreground colors do not have a sufficient contrast ratio."
},
"lighthouse-core/audits/accessibility/color-contrast.js | title": {
"message": "Background and foreground colors have a sufficient contrast ratio"
},
"lighthouse-core/audits/accessibility/definition-list.js | description": {
"message": "When definition lists are not properly marked up, screen readers may produce confusing or inaccurate output. [Learn more](https://web.dev/definition-list/)."
},
"lighthouse-core/audits/accessibility/definition-list.js | failureTitle": {
"message": "`<dl>`'s do not contain only properly-ordered `<dt>` and `<dd>` groups, `<script>`, `<template>` or `<div>` elements."
},
"lighthouse-core/audits/accessibility/definition-list.js | title": {
"message": "`<dl>`'s contain only properly-ordered `<dt>` and `<dd>` groups, `<script>`, `<template>` or `<div>` elements."
},
"lighthouse-core/audits/accessibility/dlitem.js | description": {
"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 more](https://web.dev/dlitem/)."
},
"lighthouse-core/audits/accessibility/dlitem.js | failureTitle": {
"message": "Definition list items are not wrapped in `<dl>` elements"
},
"lighthouse-core/audits/accessibility/dlitem.js | title": {
"message": "Definition list items are wrapped in `<dl>` elements"
},
"lighthouse-core/audits/accessibility/document-title.js | description": {
"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://web.dev/document-title/)."
},
"lighthouse-core/audits/accessibility/document-title.js | failureTitle": {
"message": "Document doesn't have a `<title>` element"
},
"lighthouse-core/audits/accessibility/document-title.js | title": {
"message": "Document has a `<title>` element"
},
"lighthouse-core/audits/accessibility/duplicate-id-active.js | description": {
"message": "All focusable elements must have a unique `id` to ensure that they're visible to assistive technologies. [Learn more](https://web.dev/duplicate-id-active/)."
},
"lighthouse-core/audits/accessibility/duplicate-id-active.js | failureTitle": {
"message": "`[id]` attributes on active, focusable elements are not unique"
},
"lighthouse-core/audits/accessibility/duplicate-id-active.js | title": {
"message": "`[id]` attributes on active, focusable elements are unique"
},
"lighthouse-core/audits/accessibility/duplicate-id-aria.js | description": {
"message": "The value of an ARIA ID must be unique to prevent other instances from being overlooked by assistive technologies. [Learn more](https://web.dev/duplicate-id-aria/)."
},
"lighthouse-core/audits/accessibility/duplicate-id-aria.js | failureTitle": {
"message": "ARIA IDs are not unique"
},
"lighthouse-core/audits/accessibility/duplicate-id-aria.js | title": {
"message": "ARIA IDs are unique"
},
"lighthouse-core/audits/accessibility/form-field-multiple-labels.js | description": {
"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 more](https://web.dev/form-field-multiple-labels/)."
},
"lighthouse-core/audits/accessibility/form-field-multiple-labels.js | failureTitle": {
"message": "Form fields have multiple labels"
},
"lighthouse-core/audits/accessibility/form-field-multiple-labels.js | title": {
"message": "No form fields have multiple labels"
},
"lighthouse-core/audits/accessibility/frame-title.js | description": {
"message": "Screen reader users rely on frame titles to describe the contents of frames. [Learn more](https://web.dev/frame-title/)."
},
"lighthouse-core/audits/accessibility/frame-title.js | failureTitle": {
"message": "`<frame>` or `<iframe>` elements do not have a title"
},
"lighthouse-core/audits/accessibility/frame-title.js | title": {
"message": "`<frame>` or `<iframe>` elements have a title"
},
"lighthouse-core/audits/accessibility/heading-order.js | description": {
"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://web.dev/heading-order/)."
},
"lighthouse-core/audits/accessibility/heading-order.js | failureTitle": {
"message": "Heading elements are not in a sequentially-descending order"
},
"lighthouse-core/audits/accessibility/heading-order.js | title": {
"message": "Heading elements appear in a sequentially-descending order"
},
"lighthouse-core/audits/accessibility/html-has-lang.js | description": {
"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](https://web.dev/html-has-lang/)."
},
"lighthouse-core/audits/accessibility/html-has-lang.js | failureTitle": {
"message": "`<html>` element does not have a `[lang]` attribute"
},
"lighthouse-core/audits/accessibility/html-has-lang.js | title": {
"message": "`<html>` element has a `[lang]` attribute"
},
"lighthouse-core/audits/accessibility/html-lang-valid.js | description": {
"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 more](https://web.dev/html-lang-valid/)."
},
"lighthouse-core/audits/accessibility/html-lang-valid.js | failureTitle": {
"message": "`<html>` element does not have a valid value for its `[lang]` attribute."
},
"lighthouse-core/audits/accessibility/html-lang-valid.js | title": {
"message": "`<html>` element has a valid value for its `[lang]` attribute"
},
"lighthouse-core/audits/accessibility/image-alt.js | description": {
"message": "Informative elements should aim for short, descriptive alternate text. Decorative elements can be ignored with an empty alt attribute. [Learn more](https://web.dev/image-alt/)."
},
"lighthouse-core/audits/accessibility/image-alt.js | failureTitle": {
"message": "Image elements do not have `[alt]` attributes"
},
"lighthouse-core/audits/accessibility/image-alt.js | title": {
"message": "Image elements have `[alt]` attributes"
},
"lighthouse-core/audits/accessibility/input-image-alt.js | description": {
"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 more](https://web.dev/input-image-alt/)."
},
"lighthouse-core/audits/accessibility/input-image-alt.js | failureTitle": {
"message": "`<input type=\"image\">` elements do not have `[alt]` text"
},
"lighthouse-core/audits/accessibility/input-image-alt.js | title": {
"message": "`<input type=\"image\">` elements have `[alt]` text"
},
"lighthouse-core/audits/accessibility/label.js | description": {
"message": "Labels ensure that form controls are announced properly by assistive technologies, like screen readers. [Learn more](https://web.dev/label/)."
},
"lighthouse-core/audits/accessibility/label.js | failureTitle": {
"message": "Form elements do not have associated labels"
},
"lighthouse-core/audits/accessibility/label.js | title": {
"message": "Form elements have associated labels"
},
"lighthouse-core/audits/accessibility/link-name.js | description": {
"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 more](https://web.dev/link-name/)."
},
"lighthouse-core/audits/accessibility/link-name.js | failureTitle": {
"message": "Links do not have a discernible name"
},
"lighthouse-core/audits/accessibility/link-name.js | title": {
"message": "Links have a discernible name"
},
"lighthouse-core/audits/accessibility/list.js | description": {
"message": "Screen readers have a specific way of announcing lists. Ensuring proper list structure aids screen reader output. [Learn more](https://web.dev/list/)."
},
"lighthouse-core/audits/accessibility/list.js | failureTitle": {
"message": "Lists do not contain only `<li>` elements and script supporting elements (`<script>` and `<template>`)."
},
"lighthouse-core/audits/accessibility/list.js | title": {
"message": "Lists contain only `<li>` elements and script supporting elements (`<script>` and `<template>`)."
},
"lighthouse-core/audits/accessibility/listitem.js | description": {
"message": "Screen readers require list items (`<li>`) to be contained within a parent `<ul>` or `<ol>` to be announced properly. [Learn more](https://web.dev/listitem/)."
},
"lighthouse-core/audits/accessibility/listitem.js | failureTitle": {
"message": "List items (`<li>`) are not contained within `<ul>` or `<ol>` parent elements."
},
"lighthouse-core/audits/accessibility/listitem.js | title": {
"message": "List items (`<li>`) are contained within `<ul>` or `<ol>` parent elements"
},
"lighthouse-core/audits/accessibility/meta-refresh.js | description": {
"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://web.dev/meta-refresh/)."
},
"lighthouse-core/audits/accessibility/meta-refresh.js | failureTitle": {
"message": "The document uses `<meta http-equiv=\"refresh\">`"
},
"lighthouse-core/audits/accessibility/meta-refresh.js | title": {
"message": "The document does not use `<meta http-equiv=\"refresh\">`"
},
"lighthouse-core/audits/accessibility/meta-viewport.js | description": {
"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://web.dev/meta-viewport/)."
},
"lighthouse-core/audits/accessibility/meta-viewport.js | failureTitle": {
"message": "`[user-scalable=\"no\"]` is used in the `<meta name=\"viewport\">` element or the `[maximum-scale]` attribute is less than 5."
},
"lighthouse-core/audits/accessibility/meta-viewport.js | title": {
"message": "`[user-scalable=\"no\"]` is not used in the `<meta name=\"viewport\">` element and the `[maximum-scale]` attribute is not less than 5."
},
"lighthouse-core/audits/accessibility/object-alt.js | description": {
"message": "Screen readers cannot translate non-text content. Adding alternate text to `<object>` elements helps screen readers convey meaning to users. [Learn more](https://web.dev/object-alt/)."
},
"lighthouse-core/audits/accessibility/object-alt.js | failureTitle": {
"message": "`<object>` elements do not have alternate text"
},
"lighthouse-core/audits/accessibility/object-alt.js | title": {
"message": "`<object>` elements have alternate text"
},
"lighthouse-core/audits/accessibility/tabindex.js | description": {
"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://web.dev/tabindex/)."
},
"lighthouse-core/audits/accessibility/tabindex.js | failureTitle": {
"message": "Some elements have a `[tabindex]` value greater than 0"
},
"lighthouse-core/audits/accessibility/tabindex.js | title": {
"message": "No element has a `[tabindex]` value greater than 0"
},
"lighthouse-core/audits/accessibility/td-headers-attr.js | description": {
"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://web.dev/td-headers-attr/)."
},
"lighthouse-core/audits/accessibility/td-headers-attr.js | failureTitle": {
"message": "Cells in a `<table>` element that use the `[headers]` attribute refer to an element `id` not found within the same table."
},
"lighthouse-core/audits/accessibility/td-headers-attr.js | title": {
"message": "Cells in a `<table>` element that use the `[headers]` attribute refer to table cells within the same table."
},
"lighthouse-core/audits/accessibility/th-has-data-cells.js | description": {
"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://web.dev/th-has-data-cells/)."
},
"lighthouse-core/audits/accessibility/th-has-data-cells.js | failureTitle": {
"message": "`<th>` elements and elements with `[role=\"columnheader\"/\"rowheader\"]` do not have data cells they describe."
},
"lighthouse-core/audits/accessibility/th-has-data-cells.js | title": {
"message": "`<th>` elements and elements with `[role=\"columnheader\"/\"rowheader\"]` have data cells they describe."
},
"lighthouse-core/audits/accessibility/valid-lang.js | description": {
"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 more](https://web.dev/valid-lang/)."
},
"lighthouse-core/audits/accessibility/valid-lang.js | failureTitle": {
"message": "`[lang]` attributes do not have a valid value"
},
"lighthouse-core/audits/accessibility/valid-lang.js | title": {
"message": "`[lang]` attributes have a valid value"
},
"lighthouse-core/audits/accessibility/video-caption.js | description": {
"message": "When a video provides a caption it is easier for deaf and hearing impaired users to access its information. [Learn more](https://web.dev/video-caption/)."
},
"lighthouse-core/audits/accessibility/video-caption.js | failureTitle": {
"message": "`<video>` elements do not contain a `<track>` element with `[kind=\"captions\"]`."
},
"lighthouse-core/audits/accessibility/video-caption.js | title": {
"message": "`<video>` elements contain a `<track>` element with `[kind=\"captions\"]`"
},
"lighthouse-core/audits/apple-touch-icon.js | description": {
"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/)."
},
"lighthouse-core/audits/apple-touch-icon.js | failureTitle": {
"message": "Does not provide a valid `apple-touch-icon`"
},
"lighthouse-core/audits/apple-touch-icon.js | precomposedWarning": {
"message": "`apple-touch-icon-precomposed` is out of date; `apple-touch-icon` is preferred."
},
"lighthouse-core/audits/apple-touch-icon.js | title": {
"message": "Provides a valid `apple-touch-icon`"
},
"lighthouse-core/audits/autocomplete.js | columnCurrent": {
"message": "Current Value"
},
"lighthouse-core/audits/autocomplete.js | columnSuggestions": {
"message": "Suggested Token"
},
"lighthouse-core/audits/autocomplete.js | description": {
"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)"
},
"lighthouse-core/audits/autocomplete.js | failureTitle": {
"message": "`<input>` elements do not have correct `autocomplete` attributes"
},
"lighthouse-core/audits/autocomplete.js | manualReview": {
"message": "Requires manual review"
},
"lighthouse-core/audits/autocomplete.js | reviewOrder": {
"message": "Review order of tokens"
},
"lighthouse-core/audits/autocomplete.js | title": {
"message": "`<input>` elements correctly use `autocomplete`"
},
"lighthouse-core/audits/autocomplete.js | warningInvalid": {
"message": "`autocomplete` token(s): \"{token}\" is invalid in {snippet}"
},
"lighthouse-core/audits/autocomplete.js | warningOrder": {
"message": "Review order of tokens: \"{tokens}\" in {snippet}"
},
"lighthouse-core/audits/bootup-time.js | chromeExtensionsWarning": {
"message": "Chrome extensions negatively affected this page's load performance. Try auditing the page in incognito mode or from a Chrome profile without extensions."
},
"lighthouse-core/audits/bootup-time.js | columnScriptEval": {
"message": "Script Evaluation"
},
"lighthouse-core/audits/bootup-time.js | columnScriptParse": {
"message": "Script Parse"
},
"lighthouse-core/audits/bootup-time.js | columnTotal": {
"message": "Total CPU Time"
},
"lighthouse-core/audits/bootup-time.js | description": {
"message": "Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. [Learn more](https://web.dev/bootup-time/)."
},
"lighthouse-core/audits/bootup-time.js | failureTitle": {
"message": "Reduce JavaScript execution time"
},
"lighthouse-core/audits/bootup-time.js | title": {
"message": "JavaScript execution time"
},
"lighthouse-core/audits/byte-efficiency/duplicated-javascript.js | description": {
"message": "Remove large, duplicate JavaScript modules from bundles to reduce unnecessary bytes consumed by network activity. "
},
"lighthouse-core/audits/byte-efficiency/duplicated-javascript.js | title": {
"message": "Remove duplicate modules in JavaScript bundles"
},
"lighthouse-core/audits/byte-efficiency/efficient-animated-content.js | description": {
"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://web.dev/efficient-animated-content/)"
},
"lighthouse-core/audits/byte-efficiency/efficient-animated-content.js | title": {
"message": "Use video formats for animated content"
},
"lighthouse-core/audits/byte-efficiency/legacy-javascript.js | description": {
"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 More](https://philipwalton.com/articles/deploying-es2015-code-in-production-today/)"
},
"lighthouse-core/audits/byte-efficiency/legacy-javascript.js | title": {
"message": "Avoid serving legacy JavaScript to modern browsers"
},
"lighthouse-core/audits/byte-efficiency/modern-image-formats.js | description": {
"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://web.dev/uses-webp-images/)."
},
"lighthouse-core/audits/byte-efficiency/modern-image-formats.js | title": {
"message": "Serve images in next-gen formats"
},
"lighthouse-core/audits/byte-efficiency/offscreen-images.js | description": {
"message": "Consider lazy-loading offscreen and hidden images after all critical resources have finished loading to lower time to interactive. [Learn more](https://web.dev/offscreen-images/)."
},
"lighthouse-core/audits/byte-efficiency/offscreen-images.js | title": {
"message": "Defer offscreen images"
},
"lighthouse-core/audits/byte-efficiency/render-blocking-resources.js | description": {
"message": "Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn more](https://web.dev/render-blocking-resources/)."
},
"lighthouse-core/audits/byte-efficiency/render-blocking-resources.js | title": {
"message": "Eliminate render-blocking resources"
},
"lighthouse-core/audits/byte-efficiency/total-byte-weight.js | description": {
"message": "Large network payloads cost users real money and are highly correlated with long load times. [Learn more](https://web.dev/total-byte-weight/)."
},
"lighthouse-core/audits/byte-efficiency/total-byte-weight.js | displayValue": {
"message": "Total size was {totalBytes, number, bytes} KiB"
},
"lighthouse-core/audits/byte-efficiency/total-byte-weight.js | failureTitle": {
"message": "Avoid enormous network payloads"
},
"lighthouse-core/audits/byte-efficiency/total-byte-weight.js | title": {
"message": "Avoids enormous network payloads"
},
"lighthouse-core/audits/byte-efficiency/unminified-css.js | description": {
"message": "Minifying CSS files can reduce network payload sizes. [Learn more](https://web.dev/unminified-css/)."
},
"lighthouse-core/audits/byte-efficiency/unminified-css.js | title": {
"message": "Minify CSS"
},
"lighthouse-core/audits/byte-efficiency/unminified-javascript.js | description": {
"message": "Minifying JavaScript files can reduce payload sizes and script parse time. [Learn more](https://web.dev/unminified-javascript/)."
},
"lighthouse-core/audits/byte-efficiency/unminified-javascript.js | title": {
"message": "Minify JavaScript"
},
"lighthouse-core/audits/byte-efficiency/unused-css-rules.js | description": {
"message": "Reduce unused rules from stylesheets and defer CSS not used for above-the-fold content to decrease bytes consumed by network activity. [Learn more](https://web.dev/unused-css-rules/)."
},
"lighthouse-core/audits/byte-efficiency/unused-css-rules.js | title": {
"message": "Reduce unused CSS"
},
"lighthouse-core/audits/byte-efficiency/unused-javascript.js | description": {
"message": "Reduce unused JavaScript and defer loading scripts until they are required to decrease bytes consumed by network activity. [Learn more](https://web.dev/unused-javascript/)."
},
"lighthouse-core/audits/byte-efficiency/unused-javascript.js | title": {
"message": "Reduce unused JavaScript"
},
"lighthouse-core/audits/byte-efficiency/uses-long-cache-ttl.js | description": {
"message": "A long cache lifetime can speed up repeat visits to your page. [Learn more](https://web.dev/uses-long-cache-ttl/)."
},
"lighthouse-core/audits/byte-efficiency/uses-long-cache-ttl.js | displayValue": {
"message": "{itemCount, plural,\n =1 {1 resource found}\n other {# resources found}\n }"
},
"lighthouse-core/audits/byte-efficiency/uses-long-cache-ttl.js | failureTitle": {
"message": "Serve static assets with an efficient cache policy"
},
"lighthouse-core/audits/byte-efficiency/uses-long-cache-ttl.js | title": {
"message": "Uses efficient cache policy on static assets"
},
"lighthouse-core/audits/byte-efficiency/uses-optimized-images.js | description": {
"message": "Optimized images load faster and consume less cellular data. [Learn more](https://web.dev/uses-optimized-images/)."
},
"lighthouse-core/audits/byte-efficiency/uses-optimized-images.js | title": {
"message": "Efficiently encode images"
},
"lighthouse-core/audits/byte-efficiency/uses-responsive-images-snapshot.js | columnActualDimensions": {
"message": "Actual dimensions"
},
"lighthouse-core/audits/byte-efficiency/uses-responsive-images-snapshot.js | columnDisplayedDimensions": {
"message": "Displayed dimensions"
},
"lighthouse-core/audits/byte-efficiency/uses-responsive-images-snapshot.js | failureTitle": {
"message": "Images were larger than their displayed size"
},
"lighthouse-core/audits/byte-efficiency/uses-responsive-images-snapshot.js | title": {
"message": "Images were appropriate for their displayed size"
},
"lighthouse-core/audits/byte-efficiency/uses-responsive-images.js | description": {
"message": "Serve images that are appropriately-sized to save cellular data and improve load time. [Learn more](https://web.dev/uses-responsive-images/)."
},
"lighthouse-core/audits/byte-efficiency/uses-responsive-images.js | title": {
"message": "Properly size images"
},
"lighthouse-core/audits/byte-efficiency/uses-text-compression.js | description": {
"message": "Text-based resources should be served with compression (gzip, deflate or brotli) to minimize total network bytes. [Learn more](https://web.dev/uses-text-compression/)."
},
"lighthouse-core/audits/byte-efficiency/uses-text-compression.js | title": {
"message": "Enable text compression"
},
"lighthouse-core/audits/content-width.js | description": {
"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 more](https://web.dev/content-width/)."
},
"lighthouse-core/audits/content-width.js | explanation": {
"message": "The viewport size of {innerWidth}px does not match the window size of {outerWidth}px."
},
"lighthouse-core/audits/content-width.js | failureTitle": {
"message": "Content is not sized correctly for the viewport"
},
"lighthouse-core/audits/content-width.js | title": {
"message": "Content is sized correctly for the viewport"
},
"lighthouse-core/audits/critical-request-chains.js | description": {
"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 more](https://web.dev/critical-request-chains/)."
},
"lighthouse-core/audits/critical-request-chains.js | displayValue": {
"message": "{itemCount, plural,\n =1 {1 chain found}\n other {# chains found}\n }"
},
"lighthouse-core/audits/critical-request-chains.js | title": {
"message": "Avoid chaining critical requests"
},
"lighthouse-core/audits/csp-xss.js | columnDirective": {
"message": "Directive"
},
"lighthouse-core/audits/csp-xss.js | columnSeverity": {
"message": "Severity"
},
"lighthouse-core/audits/csp-xss.js | description": {
"message": "A strong Content Security Policy (CSP) significantly reduces the risk of cross-site scripting (XSS) attacks. [Learn more](https://web.dev/csp-xss/)"
},
"lighthouse-core/audits/csp-xss.js | itemSeveritySyntax": {
"message": "Syntax"
},
"lighthouse-core/audits/csp-xss.js | metaTagMessage": {
"message": "The page contains a CSP defined in a <meta> tag. Consider defining the CSP in an HTTP header if you can."
},
"lighthouse-core/audits/csp-xss.js | noCsp": {
"message": "No CSP found in enforcement mode"
},
"lighthouse-core/audits/csp-xss.js | title": {
"message": "Ensure CSP is effective against XSS attacks"
},
"lighthouse-core/audits/deprecations.js | authorizationCoveredByWildcard": {
"message": "Authorization will not be covered by the wildcard symbol (*) in CORS `Access-Control-Allow-Headers` handling."
},
"lighthouse-core/audits/deprecations.js | canRequestURLHTTPContainingNewline": {
"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."
},
"lighthouse-core/audits/deprecations.js | chromeLoadTimesConnectionInfo": {
"message": "`chrome.loadTimes()` is deprecated, instead use standardized API: Navigation Timing 2."
},
"lighthouse-core/audits/deprecations.js | chromeLoadTimesFirstPaintAfterLoadTime": {
"message": "`chrome.loadTimes()` is deprecated, instead use standardized API: Paint Timing."
},
"lighthouse-core/audits/deprecations.js | chromeLoadTimesWasAlternateProtocolAvailable": {
"message": "`chrome.loadTimes()` is deprecated, instead use standardized API: `nextHopProtocol` in Navigation Timing 2."
},
"lighthouse-core/audits/deprecations.js | columnDeprecate": {
"message": "Deprecation / Warning"
},
"lighthouse-core/audits/deprecations.js | columnLine": {
"message": "Line"
},
"lighthouse-core/audits/deprecations.js | cookieWithTruncatingChar": {
"message": "Cookies containing a `(0|r|n)` character will be rejected instead of truncated."
},
"lighthouse-core/audits/deprecations.js | crossOriginAccessBasedOnDocumentDomain": {
"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`."
},
"lighthouse-core/audits/deprecations.js | crossOriginWindowAlert": {
"message": "Triggering `window.alert` from cross origin iframes has been deprecated and will be removed in the future."
},
"lighthouse-core/audits/deprecations.js | crossOriginWindowConfirm": {
"message": "Triggering `window.confirm` from cross origin iframes has been deprecated and will be removed in the future."
},
"lighthouse-core/audits/deprecations.js | cssSelectorInternalMediaControlsOverlayCastButton": {
"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."
},
"lighthouse-core/audits/deprecations.js | customCursorIntersectsViewport": {
"message": "Custom cursors with size greater than 32x32 DIP intersecting native UI is deprecated and will be removed."
},
"lighthouse-core/audits/deprecations.js | description": {
"message": "Deprecated APIs will eventually be removed from the browser. [Learn more](https://web.dev/deprecations/)."
},
"lighthouse-core/audits/deprecations.js | displayValue": {
"message": "{itemCount, plural,\n =1 {1 warning found}\n other {# warnings found}\n }"
},
"lighthouse-core/audits/deprecations.js | documentDomainSettingWithoutOriginAgentClusterHeader": {
"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."
},
"lighthouse-core/audits/deprecations.js | eventPath": {
"message": "`Event.path` is deprecated and will be removed. Please use `Event.composedPath()` instead."
},
"lighthouse-core/audits/deprecations.js | failureTitle": {
"message": "Uses deprecated APIs"
},
"lighthouse-core/audits/deprecations.js | feature": {
"message": "Check the feature status page for more details."
},
"lighthouse-core/audits/deprecations.js | geolocationInsecureOrigin": {
"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."
},
"lighthouse-core/audits/deprecations.js | geolocationInsecureOriginDeprecatedNotRemoved": {
"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."
},
"lighthouse-core/audits/deprecations.js | getUserMediaInsecureOrigin": {
"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."
},
"lighthouse-core/audits/deprecations.js | hostCandidateAttributeGetter": {
"message": "`RTCPeerConnectionIceErrorEvent.hostCandidate` is deprecated. Please use `RTCPeerConnectionIceErrorEvent.address` or `RTCPeerConnectionIceErrorEvent.port` instead."
},
"lighthouse-core/audits/deprecations.js | insecurePrivateNetworkSubresourceRequest