lighthouse 12.2.3 → 12.3.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/cli/test/smokehouse/core-tests.js +8 -0
- package/core/audits/byte-efficiency/render-blocking-resources.js +1 -1
- package/core/audits/has-hsts.d.ts +44 -0
- package/core/audits/has-hsts.js +208 -0
- package/core/audits/origin-isolation.d.ts +40 -0
- package/core/audits/origin-isolation.js +155 -0
- package/core/computed/metrics/cumulative-layout-shift.js +4 -4
- package/core/computed/metrics/lantern-metric.js +4 -2
- package/core/computed/navigation-insights.d.ts +1 -1
- package/core/computed/network-analysis.js +13 -1
- package/core/computed/trace-engine-result.d.ts +4 -0
- package/core/computed/trace-engine-result.js +30 -4
- package/core/config/default-config.js +4 -0
- package/core/gather/gatherers/seo/font-size.d.ts +1 -0
- package/core/gather/gatherers/seo/font-size.js +20 -11
- package/core/lib/trace-engine.d.ts +1 -1
- package/core/lib/trace-engine.js +1 -1
- package/package.json +4 -4
- package/shared/localization/locales/ar-XB.json +60 -0
- package/shared/localization/locales/ar.json +60 -0
- package/shared/localization/locales/bg.json +77 -17
- package/shared/localization/locales/ca.json +77 -17
- package/shared/localization/locales/cs.json +77 -17
- package/shared/localization/locales/da.json +77 -17
- package/shared/localization/locales/de.json +77 -17
- package/shared/localization/locales/el.json +77 -17
- package/shared/localization/locales/en-GB.json +70 -10
- package/shared/localization/locales/en-US.json +154 -40
- package/shared/localization/locales/en-XL.json +154 -40
- package/shared/localization/locales/es-419.json +77 -17
- package/shared/localization/locales/es.json +60 -0
- package/shared/localization/locales/fi.json +60 -0
- package/shared/localization/locales/fil.json +60 -0
- package/shared/localization/locales/fr.json +77 -17
- package/shared/localization/locales/he.json +77 -17
- package/shared/localization/locales/hi.json +77 -17
- package/shared/localization/locales/hr.json +60 -0
- package/shared/localization/locales/hu.json +77 -17
- package/shared/localization/locales/id.json +77 -17
- package/shared/localization/locales/it.json +77 -17
- package/shared/localization/locales/ja.json +60 -0
- package/shared/localization/locales/ko.json +60 -0
- package/shared/localization/locales/lt.json +77 -17
- package/shared/localization/locales/lv.json +77 -17
- package/shared/localization/locales/nl.json +60 -0
- package/shared/localization/locales/no.json +77 -17
- package/shared/localization/locales/pl.json +60 -0
- package/shared/localization/locales/pt-PT.json +60 -0
- package/shared/localization/locales/pt.json +77 -17
- package/shared/localization/locales/ro.json +77 -17
- package/shared/localization/locales/ru.json +60 -0
- package/shared/localization/locales/sk.json +60 -0
- package/shared/localization/locales/sl.json +77 -17
- package/shared/localization/locales/sr-Latn.json +60 -0
- package/shared/localization/locales/sr.json +60 -0
- package/shared/localization/locales/sv.json +77 -17
- package/shared/localization/locales/ta.json +77 -17
- package/shared/localization/locales/te.json +72 -12
- package/shared/localization/locales/th.json +60 -0
- package/shared/localization/locales/tr.json +77 -17
- package/shared/localization/locales/uk.json +78 -18
- package/shared/localization/locales/vi.json +60 -0
- package/shared/localization/locales/zh-HK.json +77 -17
- package/shared/localization/locales/zh-TW.json +77 -17
- package/shared/localization/locales/zh.json +77 -17
- package/types/artifacts.d.ts +2 -2
|
@@ -977,6 +977,36 @@
|
|
|
977
977
|
"core/audits/font-display.js | undeclaredFontOriginWarning": {
|
|
978
978
|
"message": "{fontCountForOrigin, plural, =1 {Lighthouse was unable to automatically check the `font-display` value for the origin {fontOrigin}.} other {Lighthouse was unable to automatically check the `font-display` values for the origin {fontOrigin}.}}"
|
|
979
979
|
},
|
|
980
|
+
"core/audits/has-hsts.js | columnDirective": {
|
|
981
|
+
"message": "Directive"
|
|
982
|
+
},
|
|
983
|
+
"core/audits/has-hsts.js | columnSeverity": {
|
|
984
|
+
"message": "Severity"
|
|
985
|
+
},
|
|
986
|
+
"core/audits/has-hsts.js | description": {
|
|
987
|
+
"message": "Deployment of the HSTS header significantly reduces the risk of downgrading HTTP connections and eavesdropping attacks. A rollout in stages, starting with a low max-age is recommended. [Learn more about using a strong HSTS policy.](https://developer.chrome.com/docs/lighthouse/best-practices/has-hsts)"
|
|
988
|
+
},
|
|
989
|
+
"core/audits/has-hsts.js | invalidSyntax": {
|
|
990
|
+
"message": "Invalid syntax"
|
|
991
|
+
},
|
|
992
|
+
"core/audits/has-hsts.js | lowMaxAge": {
|
|
993
|
+
"message": "`max-age` is too low"
|
|
994
|
+
},
|
|
995
|
+
"core/audits/has-hsts.js | noHsts": {
|
|
996
|
+
"message": "No HSTS header found"
|
|
997
|
+
},
|
|
998
|
+
"core/audits/has-hsts.js | noMaxAge": {
|
|
999
|
+
"message": "No `max-age` directive"
|
|
1000
|
+
},
|
|
1001
|
+
"core/audits/has-hsts.js | noPreload": {
|
|
1002
|
+
"message": "No `preload` directive found"
|
|
1003
|
+
},
|
|
1004
|
+
"core/audits/has-hsts.js | noSubdomain": {
|
|
1005
|
+
"message": "No `includeSubDomains` directive found"
|
|
1006
|
+
},
|
|
1007
|
+
"core/audits/has-hsts.js | title": {
|
|
1008
|
+
"message": "Use a strong HSTS policy"
|
|
1009
|
+
},
|
|
980
1010
|
"core/audits/image-aspect-ratio.js | columnActual": {
|
|
981
1011
|
"message": "Aspect Ratio (Actual)"
|
|
982
1012
|
},
|
|
@@ -1187,6 +1217,24 @@
|
|
|
1187
1217
|
"core/audits/non-composited-animations.js | unsupportedTimingParameters": {
|
|
1188
1218
|
"message": "Effect has unsupported timing parameters"
|
|
1189
1219
|
},
|
|
1220
|
+
"core/audits/origin-isolation.js | columnDirective": {
|
|
1221
|
+
"message": "Directive"
|
|
1222
|
+
},
|
|
1223
|
+
"core/audits/origin-isolation.js | columnSeverity": {
|
|
1224
|
+
"message": "Severity"
|
|
1225
|
+
},
|
|
1226
|
+
"core/audits/origin-isolation.js | description": {
|
|
1227
|
+
"message": "The Cross-Origin-Opener-Policy (COOP) can be used to isolate the top-level window from other documents such as pop-ups. [Learn more about deploying the COOP header.](https://web.dev/articles/why-coop-coep#coop)"
|
|
1228
|
+
},
|
|
1229
|
+
"core/audits/origin-isolation.js | invalidSyntax": {
|
|
1230
|
+
"message": "Invalid syntax"
|
|
1231
|
+
},
|
|
1232
|
+
"core/audits/origin-isolation.js | noCoop": {
|
|
1233
|
+
"message": "No COOP header found"
|
|
1234
|
+
},
|
|
1235
|
+
"core/audits/origin-isolation.js | title": {
|
|
1236
|
+
"message": "Ensure proper origin isolation with COOP"
|
|
1237
|
+
},
|
|
1190
1238
|
"core/audits/preload-fonts.js | description": {
|
|
1191
1239
|
"message": "Preload `optional` fonts so first-time visitors may use them. [Learn more about preloading fonts](https://web.dev/articles/preload-optional-fonts)"
|
|
1192
1240
|
},
|
|
@@ -1676,6 +1724,15 @@
|
|
|
1676
1724
|
"core/gather/timespan-runner.js | warningNavigationDetected": {
|
|
1677
1725
|
"message": "A page navigation was detected during the run. Using timespan mode to audit page navigations is not recommended. Use navigation mode to audit page navigations for better third-party attribution and main thread detection."
|
|
1678
1726
|
},
|
|
1727
|
+
"core/lib/bf-cache-strings.js | HTTPMethodNotGET": {
|
|
1728
|
+
"message": "Only pages loaded via a GET request are eligible for back/forward cache."
|
|
1729
|
+
},
|
|
1730
|
+
"core/lib/bf-cache-strings.js | HTTPStatusNotOK": {
|
|
1731
|
+
"message": "Only pages with a status code of 2XX can be cached."
|
|
1732
|
+
},
|
|
1733
|
+
"core/lib/bf-cache-strings.js | JavaScriptExecution": {
|
|
1734
|
+
"message": "Chrome detected an attempt to execute JavaScript while in the cache."
|
|
1735
|
+
},
|
|
1679
1736
|
"core/lib/bf-cache-strings.js | appBanner": {
|
|
1680
1737
|
"message": "Pages that requested an AppBanner are not currently eligible for back/forward cache."
|
|
1681
1738
|
},
|
|
@@ -1775,12 +1832,12 @@
|
|
|
1775
1832
|
"core/lib/bf-cache-strings.js | embedderExtensionMessagingForOpenPort": {
|
|
1776
1833
|
"message": "Extensions with long-lived connection should close the connection before entering back/forward cache."
|
|
1777
1834
|
},
|
|
1778
|
-
"core/lib/bf-cache-strings.js | embedderExtensions": {
|
|
1779
|
-
"message": "Back/forward cache is disabled due to extensions."
|
|
1780
|
-
},
|
|
1781
1835
|
"core/lib/bf-cache-strings.js | embedderExtensionSentMessageToCachedFrame": {
|
|
1782
1836
|
"message": "Extensions with long-lived connection attempted to send messages to frames in back/forward cache."
|
|
1783
1837
|
},
|
|
1838
|
+
"core/lib/bf-cache-strings.js | embedderExtensions": {
|
|
1839
|
+
"message": "Back/forward cache is disabled due to extensions."
|
|
1840
|
+
},
|
|
1784
1841
|
"core/lib/bf-cache-strings.js | embedderModalDialog": {
|
|
1785
1842
|
"message": "Modal dialog such as form resubmission or http password dialog was shown for the page upon navigating away."
|
|
1786
1843
|
},
|
|
@@ -1820,12 +1877,6 @@
|
|
|
1820
1877
|
"core/lib/bf-cache-strings.js | haveInnerContents": {
|
|
1821
1878
|
"message": "Pages that use portals are not currently eligible for back/forward cache."
|
|
1822
1879
|
},
|
|
1823
|
-
"core/lib/bf-cache-strings.js | HTTPMethodNotGET": {
|
|
1824
|
-
"message": "Only pages loaded via a GET request are eligible for back/forward cache."
|
|
1825
|
-
},
|
|
1826
|
-
"core/lib/bf-cache-strings.js | HTTPStatusNotOK": {
|
|
1827
|
-
"message": "Only pages with a status code of 2XX can be cached."
|
|
1828
|
-
},
|
|
1829
1880
|
"core/lib/bf-cache-strings.js | idleManager": {
|
|
1830
1881
|
"message": "Pages that use IdleManager are not currently eligible for back/forward cache."
|
|
1831
1882
|
},
|
|
@@ -1847,9 +1898,6 @@
|
|
|
1847
1898
|
"core/lib/bf-cache-strings.js | internalError": {
|
|
1848
1899
|
"message": "Internal error."
|
|
1849
1900
|
},
|
|
1850
|
-
"core/lib/bf-cache-strings.js | JavaScriptExecution": {
|
|
1851
|
-
"message": "Chrome detected an attempt to execute JavaScript while in the cache."
|
|
1852
|
-
},
|
|
1853
1901
|
"core/lib/bf-cache-strings.js | keepaliveRequest": {
|
|
1854
1902
|
"message": "Back/forward cache is disabled due to a keepalive request."
|
|
1855
1903
|
},
|
|
@@ -2063,12 +2111,12 @@
|
|
|
2063
2111
|
"core/lib/csp-evaluator.js | plainWildcards": {
|
|
2064
2112
|
"message": "Avoid using plain wildcards ({keyword}) in this directive. Plain wildcards allow scripts to be sourced from an unsafe domain."
|
|
2065
2113
|
},
|
|
2066
|
-
"core/lib/csp-evaluator.js | reportingDestinationMissing": {
|
|
2067
|
-
"message": "No CSP configures a reporting destination. This makes it difficult to maintain the CSP over time and monitor for any breakages."
|
|
2068
|
-
},
|
|
2069
2114
|
"core/lib/csp-evaluator.js | reportToOnly": {
|
|
2070
2115
|
"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."
|
|
2071
2116
|
},
|
|
2117
|
+
"core/lib/csp-evaluator.js | reportingDestinationMissing": {
|
|
2118
|
+
"message": "No CSP configures a reporting destination. This makes it difficult to maintain the CSP over time and monitor for any breakages."
|
|
2119
|
+
},
|
|
2072
2120
|
"core/lib/csp-evaluator.js | strictDynamic": {
|
|
2073
2121
|
"message": "Host allowlists can frequently be bypassed. Consider using CSP nonces or hashes instead, along with `'strict-dynamic'` if necessary."
|
|
2074
2122
|
},
|
|
@@ -2096,6 +2144,9 @@
|
|
|
2096
2144
|
"core/lib/deprecations-strings.js | AuthorizationCoveredByWildcard": {
|
|
2097
2145
|
"message": "Authorization will not be covered by the wildcard symbol (*) in CORS `Access-Control-Allow-Headers` handling."
|
|
2098
2146
|
},
|
|
2147
|
+
"core/lib/deprecations-strings.js | CSSSelectorInternalMediaControlsOverlayCastButton": {
|
|
2148
|
+
"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."
|
|
2149
|
+
},
|
|
2099
2150
|
"core/lib/deprecations-strings.js | CanRequestURLHTTPContainingNewline": {
|
|
2100
2151
|
"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."
|
|
2101
2152
|
},
|
|
@@ -2120,8 +2171,8 @@
|
|
|
2120
2171
|
"core/lib/deprecations-strings.js | CrossOriginWindowConfirm": {
|
|
2121
2172
|
"message": "Triggering window.confirm from cross origin iframes has been deprecated and will be removed in the future."
|
|
2122
2173
|
},
|
|
2123
|
-
"core/lib/deprecations-strings.js |
|
|
2124
|
-
"message": "
|
|
2174
|
+
"core/lib/deprecations-strings.js | DOMMutationEvents": {
|
|
2175
|
+
"message": "DOM Mutation Events, including `DOMSubtreeModified`, `DOMNodeInserted`, `DOMNodeRemoved`, `DOMNodeRemovedFromDocument`, `DOMNodeInsertedIntoDocument`, and `DOMCharacterDataModified` are deprecated (https://w3c.github.io/uievents/#legacy-event-types) and will be removed. Please use `MutationObserver` instead."
|
|
2125
2176
|
},
|
|
2126
2177
|
"core/lib/deprecations-strings.js | DataUrlInSvgUse": {
|
|
2127
2178
|
"message": "Support for data: URLs in SVG <use> element is deprecated and it will be removed in the future."
|
|
@@ -2129,9 +2180,6 @@
|
|
|
2129
2180
|
"core/lib/deprecations-strings.js | DocumentDomainSettingWithoutOriginAgentClusterHeader": {
|
|
2130
2181
|
"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."
|
|
2131
2182
|
},
|
|
2132
|
-
"core/lib/deprecations-strings.js | DOMMutationEvents": {
|
|
2133
|
-
"message": "DOM Mutation Events, including `DOMSubtreeModified`, `DOMNodeInserted`, `DOMNodeRemoved`, `DOMNodeRemovedFromDocument`, `DOMNodeInsertedIntoDocument`, and `DOMCharacterDataModified` are deprecated (https://w3c.github.io/uievents/#legacy-event-types) and will be removed. Please use `MutationObserver` instead."
|
|
2134
|
-
},
|
|
2135
2183
|
"core/lib/deprecations-strings.js | ExpectCTHeader": {
|
|
2136
2184
|
"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."
|
|
2137
2185
|
},
|
|
@@ -2165,12 +2213,12 @@
|
|
|
2165
2213
|
"core/lib/deprecations-strings.js | MediaSourceDurationTruncatingBuffered": {
|
|
2166
2214
|
"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`."
|
|
2167
2215
|
},
|
|
2168
|
-
"core/lib/deprecations-strings.js | NonStandardDeclarativeShadowDOM": {
|
|
2169
|
-
"message": "The older, non-standardized `shadowroot` attribute is deprecated, and will *no longer function* in M119. Please use the new, standardized `shadowrootmode` attribute instead."
|
|
2170
|
-
},
|
|
2171
2216
|
"core/lib/deprecations-strings.js | NoSysexWebMIDIWithoutPermission": {
|
|
2172
2217
|
"message": "Web MIDI will ask a permission to use even if the sysex is not specified in the `MIDIOptions`."
|
|
2173
2218
|
},
|
|
2219
|
+
"core/lib/deprecations-strings.js | NonStandardDeclarativeShadowDOM": {
|
|
2220
|
+
"message": "The older, non-standardized `shadowroot` attribute is deprecated, and will *no longer function* in M119. Please use the new, standardized `shadowrootmode` attribute instead."
|
|
2221
|
+
},
|
|
2174
2222
|
"core/lib/deprecations-strings.js | NotificationInsecureOrigin": {
|
|
2175
2223
|
"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."
|
|
2176
2224
|
},
|
|
@@ -2207,30 +2255,24 @@
|
|
|
2207
2255
|
"core/lib/deprecations-strings.js | PrefixedVideoDisplayingFullscreen": {
|
|
2208
2256
|
"message": "HTMLVideoElement.webkitDisplayingFullscreen is deprecated. Please use Document.fullscreenElement instead."
|
|
2209
2257
|
},
|
|
2210
|
-
"core/lib/deprecations-strings.js | PrefixedVideoEnterFullscreen": {
|
|
2211
|
-
"message": "HTMLVideoElement.webkitEnterFullscreen() is deprecated. Please use Element.requestFullscreen() instead."
|
|
2212
|
-
},
|
|
2213
2258
|
"core/lib/deprecations-strings.js | PrefixedVideoEnterFullScreen": {
|
|
2214
2259
|
"message": "HTMLVideoElement.webkitEnterFullScreen() is deprecated. Please use Element.requestFullscreen() instead."
|
|
2215
2260
|
},
|
|
2216
|
-
"core/lib/deprecations-strings.js |
|
|
2217
|
-
"message": "HTMLVideoElement.
|
|
2261
|
+
"core/lib/deprecations-strings.js | PrefixedVideoEnterFullscreen": {
|
|
2262
|
+
"message": "HTMLVideoElement.webkitEnterFullscreen() is deprecated. Please use Element.requestFullscreen() instead."
|
|
2218
2263
|
},
|
|
2219
2264
|
"core/lib/deprecations-strings.js | PrefixedVideoExitFullScreen": {
|
|
2220
2265
|
"message": "HTMLVideoElement.webkitExitFullScreen() is deprecated. Please use Document.exitFullscreen() instead."
|
|
2221
2266
|
},
|
|
2267
|
+
"core/lib/deprecations-strings.js | PrefixedVideoExitFullscreen": {
|
|
2268
|
+
"message": "HTMLVideoElement.webkitExitFullscreen() is deprecated. Please use Document.exitFullscreen() instead."
|
|
2269
|
+
},
|
|
2222
2270
|
"core/lib/deprecations-strings.js | PrefixedVideoSupportsFullscreen": {
|
|
2223
2271
|
"message": "HTMLVideoElement.webkitSupportsFullscreen is deprecated. Please use Document.fullscreenEnabled instead."
|
|
2224
2272
|
},
|
|
2225
2273
|
"core/lib/deprecations-strings.js | PrivacySandboxExtensionsAPI": {
|
|
2226
2274
|
"message": "We're deprecating the API `chrome.privacy.websites.privacySandboxEnabled`, though it will remain active for backward compatibility until release M113. Instead, please use `chrome.privacy.websites.topicsEnabled`, `chrome.privacy.websites.fledgeEnabled` and `chrome.privacy.websites.adMeasurementEnabled`. See https://developer.chrome.com/docs/extensions/reference/privacy/#property-websites-privacySandboxEnabled."
|
|
2227
2275
|
},
|
|
2228
|
-
"core/lib/deprecations-strings.js | RangeExpand": {
|
|
2229
|
-
"message": "Range.expand() is deprecated. Please use Selection.modify() instead."
|
|
2230
|
-
},
|
|
2231
|
-
"core/lib/deprecations-strings.js | RequestedSubresourceWithEmbeddedCredentials": {
|
|
2232
|
-
"message": "Subresource requests whose URLs contain embedded credentials (e.g. `https://user:pass@host/`) are blocked."
|
|
2233
|
-
},
|
|
2234
2276
|
"core/lib/deprecations-strings.js | RTCConstraintEnableDtlsSrtpFalse": {
|
|
2235
2277
|
"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."
|
|
2236
2278
|
},
|
|
@@ -2240,6 +2282,12 @@
|
|
|
2240
2282
|
"core/lib/deprecations-strings.js | RTCPeerConnectionGetStatsLegacyNonCompliant": {
|
|
2241
2283
|
"message": "The callback-based getStats() is deprecated and will be removed. Use the spec-compliant getStats() instead."
|
|
2242
2284
|
},
|
|
2285
|
+
"core/lib/deprecations-strings.js | RangeExpand": {
|
|
2286
|
+
"message": "Range.expand() is deprecated. Please use Selection.modify() instead."
|
|
2287
|
+
},
|
|
2288
|
+
"core/lib/deprecations-strings.js | RequestedSubresourceWithEmbeddedCredentials": {
|
|
2289
|
+
"message": "Subresource requests whose URLs contain embedded credentials (e.g. `https://user:pass@host/`) are blocked."
|
|
2290
|
+
},
|
|
2243
2291
|
"core/lib/deprecations-strings.js | RtcpMuxPolicyNegotiate": {
|
|
2244
2292
|
"message": "The `rtcpMuxPolicy` option is deprecated and will be removed."
|
|
2245
2293
|
},
|
|
@@ -2381,12 +2429,12 @@
|
|
|
2381
2429
|
"core/lib/i18n/i18n.js | ms": {
|
|
2382
2430
|
"message": "{timeInMs, number, milliseconds} ms"
|
|
2383
2431
|
},
|
|
2384
|
-
"core/lib/i18n/i18n.js | otherResourcesLabel": {
|
|
2385
|
-
"message": "Other resources"
|
|
2386
|
-
},
|
|
2387
2432
|
"core/lib/i18n/i18n.js | otherResourceType": {
|
|
2388
2433
|
"message": "Other"
|
|
2389
2434
|
},
|
|
2435
|
+
"core/lib/i18n/i18n.js | otherResourcesLabel": {
|
|
2436
|
+
"message": "Other resources"
|
|
2437
|
+
},
|
|
2390
2438
|
"core/lib/i18n/i18n.js | scriptResourceType": {
|
|
2391
2439
|
"message": "Script"
|
|
2392
2440
|
},
|
|
@@ -2621,6 +2669,72 @@
|
|
|
2621
2669
|
"flow-report/src/i18n/ui-strings.js | title": {
|
|
2622
2670
|
"message": "Lighthouse User Flow Report"
|
|
2623
2671
|
},
|
|
2672
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | description": {
|
|
2673
|
+
"message": "Layout shifts occur when elements move absent any user interaction. [Investigate the causes of layout shifts](https://web.dev/articles/optimize-cls), such as elements being added, removed, or their fonts changing as the page loads."
|
|
2674
|
+
},
|
|
2675
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | title": {
|
|
2676
|
+
"message": "Layout shift culprits"
|
|
2677
|
+
},
|
|
2678
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | description": {
|
|
2679
|
+
"message": "Your first network request is the most important. Reduce its latency by avoiding redirects, ensuring a fast server response, and enabling text compression."
|
|
2680
|
+
},
|
|
2681
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | title": {
|
|
2682
|
+
"message": "Document request latency"
|
|
2683
|
+
},
|
|
2684
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/FontDisplay.js | description": {
|
|
2685
|
+
"message": "Consider setting [font-display](https://developer.chrome.com/blog/font-display) to swap or optional to ensure text is consistently visible. swap can be further optimized to mitigate layout shifts with [font metric overrides](https://developer.chrome.com/blog/font-fallbacks)."
|
|
2686
|
+
},
|
|
2687
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/FontDisplay.js | title": {
|
|
2688
|
+
"message": "Font display"
|
|
2689
|
+
},
|
|
2690
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | description": {
|
|
2691
|
+
"message": "Reducing the download time of images can improve the perceived load time of the page and LCP. [Learn more about optimizing image size](https://developer.chrome.com/docs/lighthouse/performance/uses-optimized-images/)"
|
|
2692
|
+
},
|
|
2693
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | title": {
|
|
2694
|
+
"message": "Improve image delivery"
|
|
2695
|
+
},
|
|
2696
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/InteractionToNextPaint.js | description": {
|
|
2697
|
+
"message": "Start investigating with the longest phase. [Delays can be minimized](https://web.dev/articles/optimize-inp#optimize_interactions). To reduce processing duration, [optimize the main-thread costs](https://web.dev/articles/optimize-long-tasks), often JS."
|
|
2698
|
+
},
|
|
2699
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/InteractionToNextPaint.js | title": {
|
|
2700
|
+
"message": "INP by phase"
|
|
2701
|
+
},
|
|
2702
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | description": {
|
|
2703
|
+
"message": "Optimize LCP by making the LCP image [discoverable](https://web.dev/articles/optimize-lcp#1_eliminate_resource_load_delay) from the HTML immediately, and [avoiding lazy-loading](https://web.dev/articles/lcp-lazy-loading)"
|
|
2704
|
+
},
|
|
2705
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | title": {
|
|
2706
|
+
"message": "LCP request discovery"
|
|
2707
|
+
},
|
|
2708
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/LCPPhases.js | description": {
|
|
2709
|
+
"message": "Each [phase has specific improvement strategies](https://web.dev/articles/optimize-lcp#lcp-breakdown). Ideally, most of the LCP time should be spent on loading the resources, not within delays."
|
|
2710
|
+
},
|
|
2711
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/LCPPhases.js | title": {
|
|
2712
|
+
"message": "LCP by phase"
|
|
2713
|
+
},
|
|
2714
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/RenderBlocking.js | description": {
|
|
2715
|
+
"message": "Requests are blocking the page's initial render, which may delay LCP. [Deferring or inlining](https://web.dev/learn/performance/understanding-the-critical-path#render-blocking_resources/) can move these network requests out of the critical path."
|
|
2716
|
+
},
|
|
2717
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/RenderBlocking.js | title": {
|
|
2718
|
+
"message": "Render blocking requests"
|
|
2719
|
+
},
|
|
2720
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | description": {
|
|
2721
|
+
"message": "If Recalculate Style costs remain high, selector optimization can reduce them. [Optimize the selectors](https://developer.chrome.com/docs/devtools/performance/selector-stats) with both high elapsed time and high slow-path %. Simpler selectors, fewer selectors, a smaller DOM, and a shallower DOM will all reduce matching costs."
|
|
2722
|
+
},
|
|
2723
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | title": {
|
|
2724
|
+
"message": "CSS Selector costs"
|
|
2725
|
+
},
|
|
2726
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/ThirdParties.js | description": {
|
|
2727
|
+
"message": "Third party code can significantly impact load performance. [Reduce and defer loading of third party code](https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/loading-third-party-javascript/) to prioritize your page's content."
|
|
2728
|
+
},
|
|
2729
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/ThirdParties.js | title": {
|
|
2730
|
+
"message": "Third parties"
|
|
2731
|
+
},
|
|
2732
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/Viewport.js | description": {
|
|
2733
|
+
"message": "The page's viewport is not mobile-optimized, so tap interactions may be [delayed by up to 300 ms](https://developer.chrome.com/blog/300ms-tap-delay-gone-away/)."
|
|
2734
|
+
},
|
|
2735
|
+
"node_modules/@paulirish/trace_engine/models/trace/insights/Viewport.js | title": {
|
|
2736
|
+
"message": "Viewport not optimized for mobile"
|
|
2737
|
+
},
|
|
2624
2738
|
"node_modules/lighthouse-stack-packs/packs/amp.js | efficient-animated-content": {
|
|
2625
2739
|
"message": "For animated content, use [`amp-anim`](https://amp.dev/documentation/components/amp-anim/) to minimize CPU usage when the content is offscreen."
|
|
2626
2740
|
},
|
|
@@ -3128,12 +3242,12 @@
|
|
|
3128
3242
|
"report/renderer/report-utils.js | dropdownSaveJSON": {
|
|
3129
3243
|
"message": "Save as JSON"
|
|
3130
3244
|
},
|
|
3131
|
-
"report/renderer/report-utils.js | dropdownViewer": {
|
|
3132
|
-
"message": "Open in Viewer"
|
|
3133
|
-
},
|
|
3134
3245
|
"report/renderer/report-utils.js | dropdownViewUnthrottledTrace": {
|
|
3135
3246
|
"message": "View Unthrottled Trace"
|
|
3136
3247
|
},
|
|
3248
|
+
"report/renderer/report-utils.js | dropdownViewer": {
|
|
3249
|
+
"message": "Open in Viewer"
|
|
3250
|
+
},
|
|
3137
3251
|
"report/renderer/report-utils.js | errorLabel": {
|
|
3138
3252
|
"message": "Error!"
|
|
3139
3253
|
},
|