lighthouse 12.8.2-dev.20251004 → 12.8.2-dev.20251006
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/config/exclusions.js +0 -2
- package/core/audits/audit.js +0 -1
- package/core/audits/insights/cls-culprits-insight.js +1 -1
- package/core/audits/insights/dom-size-insight.js +6 -6
- package/core/audits/redirects.js +1 -0
- package/core/audits/server-response-time.d.ts +0 -5
- package/core/audits/server-response-time.js +12 -26
- package/core/computed/metrics/lcp-breakdown.js +1 -0
- package/core/config/default-config.js +20 -63
- package/core/config/experimental-config.js +1 -26
- package/core/config/filters.js +6 -9
- package/core/config/lr-desktop-config.js +0 -1
- package/core/config/lr-mobile-config.js +0 -1
- package/core/gather/gatherers/trace-elements.js +1 -0
- package/core/lib/proto-preprocessor.js +5 -22
- package/dist/report/bundle.esm.js +10 -49
- package/dist/report/flow.js +12 -51
- package/dist/report/standalone.js +11 -50
- package/flow-report/src/i18n/i18n.d.ts +4 -6
- package/package.json +3 -3
- package/report/assets/styles.css +0 -39
- package/report/renderer/api.js +0 -1
- package/report/renderer/category-renderer.js +6 -0
- package/report/renderer/components.js +1 -1
- package/report/renderer/dom.d.ts +0 -13
- package/report/renderer/dom.js +0 -38
- package/report/renderer/performance-category-renderer.d.ts +0 -26
- package/report/renderer/performance-category-renderer.js +10 -142
- package/report/renderer/report-ui-features.d.ts +0 -1
- package/report/renderer/report-ui-features.js +3 -13
- package/report/renderer/report-utils.d.ts +2 -3
- package/report/renderer/report-utils.js +4 -6
- package/report/types/report-renderer.d.ts +0 -6
- package/shared/localization/locales/ar-XB.json +0 -330
- package/shared/localization/locales/ar.json +0 -330
- package/shared/localization/locales/bg.json +0 -330
- package/shared/localization/locales/ca.json +0 -330
- package/shared/localization/locales/cs.json +0 -330
- package/shared/localization/locales/da.json +0 -330
- package/shared/localization/locales/de.json +0 -330
- package/shared/localization/locales/el.json +0 -330
- package/shared/localization/locales/en-GB.json +0 -330
- package/shared/localization/locales/en-US.json +26 -275
- package/shared/localization/locales/en-XA.json +0 -330
- package/shared/localization/locales/en-XL.json +26 -275
- package/shared/localization/locales/es-419.json +0 -330
- package/shared/localization/locales/es.json +0 -330
- package/shared/localization/locales/fi.json +0 -330
- package/shared/localization/locales/fil.json +0 -330
- package/shared/localization/locales/fr.json +0 -330
- package/shared/localization/locales/he.json +0 -330
- package/shared/localization/locales/hi.json +0 -330
- package/shared/localization/locales/hr.json +0 -330
- package/shared/localization/locales/hu.json +0 -330
- package/shared/localization/locales/id.json +0 -330
- package/shared/localization/locales/it.json +0 -330
- package/shared/localization/locales/ja.json +0 -330
- package/shared/localization/locales/ko.json +0 -330
- package/shared/localization/locales/lt.json +0 -330
- package/shared/localization/locales/lv.json +0 -330
- package/shared/localization/locales/nl.json +0 -330
- package/shared/localization/locales/no.json +0 -330
- package/shared/localization/locales/pl.json +0 -330
- package/shared/localization/locales/pt-PT.json +0 -330
- package/shared/localization/locales/pt.json +0 -330
- package/shared/localization/locales/ro.json +0 -330
- package/shared/localization/locales/ru.json +0 -330
- package/shared/localization/locales/sk.json +0 -330
- package/shared/localization/locales/sl.json +0 -330
- package/shared/localization/locales/sr-Latn.json +0 -330
- package/shared/localization/locales/sr.json +0 -330
- package/shared/localization/locales/sv.json +0 -330
- package/shared/localization/locales/ta.json +0 -330
- package/shared/localization/locales/te.json +0 -330
- package/shared/localization/locales/th.json +0 -330
- package/shared/localization/locales/tr.json +0 -330
- package/shared/localization/locales/uk.json +0 -330
- package/shared/localization/locales/vi.json +0 -330
- package/shared/localization/locales/zh-HK.json +0 -330
- package/shared/localization/locales/zh-TW.json +0 -330
- package/shared/localization/locales/zh.json +0 -330
- package/types/artifacts.d.ts +1 -0
- package/types/audit.d.ts +1 -1
- package/types/lhr/settings.d.ts +1 -1
- package/core/audits/byte-efficiency/duplicated-javascript.d.ts +0 -45
- package/core/audits/byte-efficiency/duplicated-javascript.js +0 -223
- package/core/audits/byte-efficiency/efficient-animated-content.d.ts +0 -22
- package/core/audits/byte-efficiency/efficient-animated-content.js +0 -93
- package/core/audits/byte-efficiency/legacy-javascript.d.ts +0 -28
- package/core/audits/byte-efficiency/legacy-javascript.js +0 -144
- package/core/audits/byte-efficiency/modern-image-formats.d.ts +0 -38
- package/core/audits/byte-efficiency/modern-image-formats.js +0 -187
- package/core/audits/byte-efficiency/render-blocking-resources.d.ts +0 -53
- package/core/audits/byte-efficiency/render-blocking-resources.js +0 -312
- package/core/audits/byte-efficiency/uses-long-cache-ttl.d.ts +0 -59
- package/core/audits/byte-efficiency/uses-long-cache-ttl.js +0 -293
- package/core/audits/byte-efficiency/uses-optimized-images.d.ts +0 -33
- package/core/audits/byte-efficiency/uses-optimized-images.js +0 -146
- package/core/audits/byte-efficiency/uses-responsive-images-snapshot.d.ts +0 -16
- package/core/audits/byte-efficiency/uses-responsive-images-snapshot.js +0 -106
- package/core/audits/byte-efficiency/uses-responsive-images.d.ts +0 -44
- package/core/audits/byte-efficiency/uses-responsive-images.js +0 -202
- package/core/audits/byte-efficiency/uses-text-compression.d.ts +0 -14
- package/core/audits/byte-efficiency/uses-text-compression.js +0 -108
- package/core/audits/critical-request-chains.d.ts +0 -44
- package/core/audits/critical-request-chains.js +0 -221
- package/core/audits/dobetterweb/dom-size.d.ts +0 -32
- package/core/audits/dobetterweb/dom-size.js +0 -182
- package/core/audits/dobetterweb/uses-http2.d.ts +0 -72
- package/core/audits/dobetterweb/uses-http2.js +0 -276
- package/core/audits/font-display.d.ts +0 -32
- package/core/audits/font-display.js +0 -195
- package/core/audits/largest-contentful-paint-element.d.ts +0 -34
- package/core/audits/largest-contentful-paint-element.js +0 -181
- package/core/audits/lcp-lazy-loaded.d.ts +0 -22
- package/core/audits/lcp-lazy-loaded.js +0 -115
- package/core/audits/prioritize-lcp-image.d.ts +0 -74
- package/core/audits/prioritize-lcp-image.js +0 -297
- package/core/audits/third-party-summary.d.ts +0 -78
- package/core/audits/third-party-summary.js +0 -236
- package/core/audits/uses-rel-preconnect.d.ts +0 -37
- package/core/audits/uses-rel-preconnect.js +0 -286
- package/core/audits/viewport.d.ts +0 -17
- package/core/audits/viewport.js +0 -87
- package/core/audits/work-during-interaction.d.ts +0 -81
- package/core/audits/work-during-interaction.js +0 -287
|
@@ -647,45 +647,12 @@
|
|
|
647
647
|
"core/audits/bootup-time.js | title": {
|
|
648
648
|
"message": "JavaScript execution time"
|
|
649
649
|
},
|
|
650
|
-
"core/audits/byte-efficiency/duplicated-javascript.js | description": {
|
|
651
|
-
"message": "Remove large, duplicate JavaScript modules from bundles to reduce unnecessary bytes consumed by network activity. "
|
|
652
|
-
},
|
|
653
|
-
"core/audits/byte-efficiency/duplicated-javascript.js | title": {
|
|
654
|
-
"message": "Remove duplicate modules in JavaScript bundles"
|
|
655
|
-
},
|
|
656
|
-
"core/audits/byte-efficiency/efficient-animated-content.js | description": {
|
|
657
|
-
"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/)"
|
|
658
|
-
},
|
|
659
|
-
"core/audits/byte-efficiency/efficient-animated-content.js | title": {
|
|
660
|
-
"message": "Use video formats for animated content"
|
|
661
|
-
},
|
|
662
|
-
"core/audits/byte-efficiency/legacy-javascript.js | description": {
|
|
663
|
-
"message": "Polyfills and transforms enable legacy browsers to use new JavaScript features. However, many aren't necessary for modern browsers. Consider modifying your JavaScript build process to not transpile [Baseline](https://web.dev/baseline) features, unless you know that you must support legacy browsers. [Learn why most sites can deploy ES6+ code without transpiling](https://philipwalton.com/articles/the-state-of-es5-on-the-web/)"
|
|
664
|
-
},
|
|
665
|
-
"core/audits/byte-efficiency/legacy-javascript.js | detectedCoreJs2Warning": {
|
|
666
|
-
"message": "Version 2 of core-js was detected on the page. You should upgrade to version 3 for many performance improvements."
|
|
667
|
-
},
|
|
668
|
-
"core/audits/byte-efficiency/legacy-javascript.js | title": {
|
|
669
|
-
"message": "Avoid serving legacy JavaScript to modern browsers"
|
|
670
|
-
},
|
|
671
|
-
"core/audits/byte-efficiency/modern-image-formats.js | description": {
|
|
672
|
-
"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/)."
|
|
673
|
-
},
|
|
674
|
-
"core/audits/byte-efficiency/modern-image-formats.js | title": {
|
|
675
|
-
"message": "Serve images in next-gen formats"
|
|
676
|
-
},
|
|
677
650
|
"core/audits/byte-efficiency/offscreen-images.js | description": {
|
|
678
651
|
"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/)."
|
|
679
652
|
},
|
|
680
653
|
"core/audits/byte-efficiency/offscreen-images.js | title": {
|
|
681
654
|
"message": "Defer off-screen images"
|
|
682
655
|
},
|
|
683
|
-
"core/audits/byte-efficiency/render-blocking-resources.js | description": {
|
|
684
|
-
"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/)."
|
|
685
|
-
},
|
|
686
|
-
"core/audits/byte-efficiency/render-blocking-resources.js | title": {
|
|
687
|
-
"message": "Eliminate render-blocking resources"
|
|
688
|
-
},
|
|
689
656
|
"core/audits/byte-efficiency/total-byte-weight.js | description": {
|
|
690
657
|
"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/)."
|
|
691
658
|
},
|
|
@@ -722,48 +689,6 @@
|
|
|
722
689
|
"core/audits/byte-efficiency/unused-javascript.js | title": {
|
|
723
690
|
"message": "Reduce unused JavaScript"
|
|
724
691
|
},
|
|
725
|
-
"core/audits/byte-efficiency/uses-long-cache-ttl.js | description": {
|
|
726
|
-
"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/)."
|
|
727
|
-
},
|
|
728
|
-
"core/audits/byte-efficiency/uses-long-cache-ttl.js | displayValue": {
|
|
729
|
-
"message": "{itemCount,plural, =1{1 resource found}other{# resources found}}"
|
|
730
|
-
},
|
|
731
|
-
"core/audits/byte-efficiency/uses-long-cache-ttl.js | failureTitle": {
|
|
732
|
-
"message": "Serve static assets with an efficient cache policy"
|
|
733
|
-
},
|
|
734
|
-
"core/audits/byte-efficiency/uses-long-cache-ttl.js | title": {
|
|
735
|
-
"message": "Uses efficient cache policy on static assets"
|
|
736
|
-
},
|
|
737
|
-
"core/audits/byte-efficiency/uses-optimized-images.js | description": {
|
|
738
|
-
"message": "Optimised images load faster and consume less mobile data. [Learn how to efficiently encode images](https://developer.chrome.com/docs/lighthouse/performance/uses-optimized-images/)."
|
|
739
|
-
},
|
|
740
|
-
"core/audits/byte-efficiency/uses-optimized-images.js | title": {
|
|
741
|
-
"message": "Efficiently encode images"
|
|
742
|
-
},
|
|
743
|
-
"core/audits/byte-efficiency/uses-responsive-images-snapshot.js | columnActualDimensions": {
|
|
744
|
-
"message": "Actual dimensions"
|
|
745
|
-
},
|
|
746
|
-
"core/audits/byte-efficiency/uses-responsive-images-snapshot.js | columnDisplayedDimensions": {
|
|
747
|
-
"message": "Displayed dimensions"
|
|
748
|
-
},
|
|
749
|
-
"core/audits/byte-efficiency/uses-responsive-images-snapshot.js | failureTitle": {
|
|
750
|
-
"message": "Images were larger than their displayed size"
|
|
751
|
-
},
|
|
752
|
-
"core/audits/byte-efficiency/uses-responsive-images-snapshot.js | title": {
|
|
753
|
-
"message": "Images were appropriate for their displayed size"
|
|
754
|
-
},
|
|
755
|
-
"core/audits/byte-efficiency/uses-responsive-images.js | description": {
|
|
756
|
-
"message": "Serve images that are appropriately-sized to save mobile data and improve load time. [Learn how to size images](https://developer.chrome.com/docs/lighthouse/performance/uses-responsive-images/)."
|
|
757
|
-
},
|
|
758
|
-
"core/audits/byte-efficiency/uses-responsive-images.js | title": {
|
|
759
|
-
"message": "Properly size images"
|
|
760
|
-
},
|
|
761
|
-
"core/audits/byte-efficiency/uses-text-compression.js | description": {
|
|
762
|
-
"message": "Text-based resources should be served with compression (gzip, deflate or brotli) to minimise total network bytes. [Learn more about text compression](https://developer.chrome.com/docs/lighthouse/performance/uses-text-compression/)."
|
|
763
|
-
},
|
|
764
|
-
"core/audits/byte-efficiency/uses-text-compression.js | title": {
|
|
765
|
-
"message": "Enable text compression"
|
|
766
|
-
},
|
|
767
692
|
"core/audits/clickjacking-mitigation.js | columnSeverity": {
|
|
768
693
|
"message": "Severity"
|
|
769
694
|
},
|
|
@@ -776,15 +701,6 @@
|
|
|
776
701
|
"core/audits/clickjacking-mitigation.js | title": {
|
|
777
702
|
"message": "Mitigate clickjacking with XFO or CSP"
|
|
778
703
|
},
|
|
779
|
-
"core/audits/critical-request-chains.js | description": {
|
|
780
|
-
"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/)."
|
|
781
|
-
},
|
|
782
|
-
"core/audits/critical-request-chains.js | displayValue": {
|
|
783
|
-
"message": "{itemCount,plural, =1{1 chain found}other{# chains found}}"
|
|
784
|
-
},
|
|
785
|
-
"core/audits/critical-request-chains.js | title": {
|
|
786
|
-
"message": "Avoid chaining critical requests"
|
|
787
|
-
},
|
|
788
704
|
"core/audits/csp-xss.js | columnDirective": {
|
|
789
705
|
"message": "Directive"
|
|
790
706
|
},
|
|
@@ -860,33 +776,6 @@
|
|
|
860
776
|
"core/audits/dobetterweb/doctype.js | title": {
|
|
861
777
|
"message": "Page has the HTML doctype"
|
|
862
778
|
},
|
|
863
|
-
"core/audits/dobetterweb/dom-size.js | columnStatistic": {
|
|
864
|
-
"message": "Statistic"
|
|
865
|
-
},
|
|
866
|
-
"core/audits/dobetterweb/dom-size.js | columnValue": {
|
|
867
|
-
"message": "Value"
|
|
868
|
-
},
|
|
869
|
-
"core/audits/dobetterweb/dom-size.js | description": {
|
|
870
|
-
"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/)."
|
|
871
|
-
},
|
|
872
|
-
"core/audits/dobetterweb/dom-size.js | displayValue": {
|
|
873
|
-
"message": "{itemCount,plural, =1{1 element}other{# elements}}"
|
|
874
|
-
},
|
|
875
|
-
"core/audits/dobetterweb/dom-size.js | failureTitle": {
|
|
876
|
-
"message": "Avoid an excessive DOM size"
|
|
877
|
-
},
|
|
878
|
-
"core/audits/dobetterweb/dom-size.js | statisticDOMDepth": {
|
|
879
|
-
"message": "Maximum DOM Depth"
|
|
880
|
-
},
|
|
881
|
-
"core/audits/dobetterweb/dom-size.js | statisticDOMElements": {
|
|
882
|
-
"message": "Total DOM Elements"
|
|
883
|
-
},
|
|
884
|
-
"core/audits/dobetterweb/dom-size.js | statisticDOMWidth": {
|
|
885
|
-
"message": "Maximum Child Elements"
|
|
886
|
-
},
|
|
887
|
-
"core/audits/dobetterweb/dom-size.js | title": {
|
|
888
|
-
"message": "Avoids an excessive DOM size"
|
|
889
|
-
},
|
|
890
779
|
"core/audits/dobetterweb/geolocation-on-start.js | description": {
|
|
891
780
|
"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/)."
|
|
892
781
|
},
|
|
@@ -950,18 +839,6 @@
|
|
|
950
839
|
"core/audits/dobetterweb/paste-preventing-inputs.js | title": {
|
|
951
840
|
"message": "Allows users to paste into input fields"
|
|
952
841
|
},
|
|
953
|
-
"core/audits/dobetterweb/uses-http2.js | columnProtocol": {
|
|
954
|
-
"message": "Protocol"
|
|
955
|
-
},
|
|
956
|
-
"core/audits/dobetterweb/uses-http2.js | description": {
|
|
957
|
-
"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/)."
|
|
958
|
-
},
|
|
959
|
-
"core/audits/dobetterweb/uses-http2.js | displayValue": {
|
|
960
|
-
"message": "{itemCount,plural, =1{1 request not served via HTTP/2}other{# requests not served via HTTP/2}}"
|
|
961
|
-
},
|
|
962
|
-
"core/audits/dobetterweb/uses-http2.js | title": {
|
|
963
|
-
"message": "Use HTTP/2"
|
|
964
|
-
},
|
|
965
842
|
"core/audits/dobetterweb/uses-passive-event-listeners.js | description": {
|
|
966
843
|
"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/)."
|
|
967
844
|
},
|
|
@@ -980,18 +857,6 @@
|
|
|
980
857
|
"core/audits/errors-in-console.js | title": {
|
|
981
858
|
"message": "No browser errors logged to the console"
|
|
982
859
|
},
|
|
983
|
-
"core/audits/font-display.js | description": {
|
|
984
|
-
"message": "Leverage the `font-display` CSS feature to ensure that text is user-visible while webfonts are loading. [Learn more about `font-display`](https://developer.chrome.com/docs/lighthouse/performance/font-display/)."
|
|
985
|
-
},
|
|
986
|
-
"core/audits/font-display.js | failureTitle": {
|
|
987
|
-
"message": "Ensure text remains visible during webfont load"
|
|
988
|
-
},
|
|
989
|
-
"core/audits/font-display.js | title": {
|
|
990
|
-
"message": "All text remains visible during webfont loads"
|
|
991
|
-
},
|
|
992
|
-
"core/audits/font-display.js | undeclaredFontOriginWarning": {
|
|
993
|
-
"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}.}}"
|
|
994
|
-
},
|
|
995
860
|
"core/audits/has-hsts.js | columnDirective": {
|
|
996
861
|
"message": "Directive"
|
|
997
862
|
},
|
|
@@ -1088,63 +953,6 @@
|
|
|
1088
953
|
"core/audits/is-on-https.js | warning": {
|
|
1089
954
|
"message": "Allowed with warning"
|
|
1090
955
|
},
|
|
1091
|
-
"core/audits/largest-contentful-paint-element.js | columnPercentOfLCP": {
|
|
1092
|
-
"message": "% of LCP"
|
|
1093
|
-
},
|
|
1094
|
-
"core/audits/largest-contentful-paint-element.js | columnPhase": {
|
|
1095
|
-
"message": "Phase"
|
|
1096
|
-
},
|
|
1097
|
-
"core/audits/largest-contentful-paint-element.js | columnTiming": {
|
|
1098
|
-
"message": "Timing"
|
|
1099
|
-
},
|
|
1100
|
-
"core/audits/largest-contentful-paint-element.js | description": {
|
|
1101
|
-
"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/)"
|
|
1102
|
-
},
|
|
1103
|
-
"core/audits/largest-contentful-paint-element.js | itemLoadDelay": {
|
|
1104
|
-
"message": "Load delay"
|
|
1105
|
-
},
|
|
1106
|
-
"core/audits/largest-contentful-paint-element.js | itemLoadTime": {
|
|
1107
|
-
"message": "Load time"
|
|
1108
|
-
},
|
|
1109
|
-
"core/audits/largest-contentful-paint-element.js | itemRenderDelay": {
|
|
1110
|
-
"message": "Render delay"
|
|
1111
|
-
},
|
|
1112
|
-
"core/audits/largest-contentful-paint-element.js | itemTTFB": {
|
|
1113
|
-
"message": "TTFB"
|
|
1114
|
-
},
|
|
1115
|
-
"core/audits/largest-contentful-paint-element.js | title": {
|
|
1116
|
-
"message": "Largest contentful paint element"
|
|
1117
|
-
},
|
|
1118
|
-
"core/audits/layout-shifts.js | columnScore": {
|
|
1119
|
-
"message": "Layout shift score"
|
|
1120
|
-
},
|
|
1121
|
-
"core/audits/layout-shifts.js | description": {
|
|
1122
|
-
"message": "These are the largest layout shifts observed on the page. Each table item represents a single layout shift, and shows the element that shifted the most. Below each item are possible root causes that led to the layout shift. Some of these layout shifts may not be included in the CLS metric value due to [windowing](https://web.dev/articles/cls#what_is_cls). [Learn how to improve CLS](https://web.dev/articles/optimize-cls)"
|
|
1123
|
-
},
|
|
1124
|
-
"core/audits/layout-shifts.js | displayValueShiftsFound": {
|
|
1125
|
-
"message": "{shiftCount,plural, =1{One layout shift found}other{# layout shifts found}}"
|
|
1126
|
-
},
|
|
1127
|
-
"core/audits/layout-shifts.js | rootCauseFontChanges": {
|
|
1128
|
-
"message": "Web font loaded"
|
|
1129
|
-
},
|
|
1130
|
-
"core/audits/layout-shifts.js | rootCauseInjectedIframe": {
|
|
1131
|
-
"message": "Injected iframe"
|
|
1132
|
-
},
|
|
1133
|
-
"core/audits/layout-shifts.js | rootCauseUnsizedMedia": {
|
|
1134
|
-
"message": "Media element lacking an explicit size"
|
|
1135
|
-
},
|
|
1136
|
-
"core/audits/layout-shifts.js | title": {
|
|
1137
|
-
"message": "Avoid large layout shifts"
|
|
1138
|
-
},
|
|
1139
|
-
"core/audits/lcp-lazy-loaded.js | description": {
|
|
1140
|
-
"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/articles/lcp-lazy-loading)."
|
|
1141
|
-
},
|
|
1142
|
-
"core/audits/lcp-lazy-loaded.js | failureTitle": {
|
|
1143
|
-
"message": "Largest contentful paint image was lazily loaded"
|
|
1144
|
-
},
|
|
1145
|
-
"core/audits/lcp-lazy-loaded.js | title": {
|
|
1146
|
-
"message": "Largest contentful paint image was not lazily loaded"
|
|
1147
|
-
},
|
|
1148
956
|
"core/audits/long-tasks.js | description": {
|
|
1149
957
|
"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/articles/optimize-long-tasks)"
|
|
1150
958
|
},
|
|
@@ -1205,33 +1013,6 @@
|
|
|
1205
1013
|
"core/audits/network-server-latency.js | title": {
|
|
1206
1014
|
"message": "Server Back-end Latencies"
|
|
1207
1015
|
},
|
|
1208
|
-
"core/audits/non-composited-animations.js | description": {
|
|
1209
|
-
"message": "Animations that are not composited can be poor, slow and increase CLS. [Learn how to avoid non-composited animations](https://developer.chrome.com/docs/lighthouse/performance/non-composited-animations/)"
|
|
1210
|
-
},
|
|
1211
|
-
"core/audits/non-composited-animations.js | displayValue": {
|
|
1212
|
-
"message": "{itemCount,plural, =1{# animated element found}other{# animated elements found}}"
|
|
1213
|
-
},
|
|
1214
|
-
"core/audits/non-composited-animations.js | filterMayMovePixels": {
|
|
1215
|
-
"message": "Filter-related property may move pixels"
|
|
1216
|
-
},
|
|
1217
|
-
"core/audits/non-composited-animations.js | incompatibleAnimations": {
|
|
1218
|
-
"message": "Target has another animation which is incompatible"
|
|
1219
|
-
},
|
|
1220
|
-
"core/audits/non-composited-animations.js | nonReplaceCompositeMode": {
|
|
1221
|
-
"message": "Effect has composite mode other than 'replace'"
|
|
1222
|
-
},
|
|
1223
|
-
"core/audits/non-composited-animations.js | title": {
|
|
1224
|
-
"message": "Avoid non-composited animations"
|
|
1225
|
-
},
|
|
1226
|
-
"core/audits/non-composited-animations.js | transformDependsBoxSize": {
|
|
1227
|
-
"message": "Transform-related property depends on box size"
|
|
1228
|
-
},
|
|
1229
|
-
"core/audits/non-composited-animations.js | unsupportedCSSProperty": {
|
|
1230
|
-
"message": "{propertyCount,plural, =1{Unsupported CSS property: {properties}}other{Unsupported CSS properties: {properties}}}"
|
|
1231
|
-
},
|
|
1232
|
-
"core/audits/non-composited-animations.js | unsupportedTimingParameters": {
|
|
1233
|
-
"message": "Effect has unsupported timing parameters"
|
|
1234
|
-
},
|
|
1235
1016
|
"core/audits/origin-isolation.js | columnDirective": {
|
|
1236
1017
|
"message": "Directive"
|
|
1237
1018
|
},
|
|
@@ -1250,12 +1031,6 @@
|
|
|
1250
1031
|
"core/audits/origin-isolation.js | title": {
|
|
1251
1032
|
"message": "Ensure proper origin isolation with COOP"
|
|
1252
1033
|
},
|
|
1253
|
-
"core/audits/prioritize-lcp-image.js | description": {
|
|
1254
|
-
"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/articles/optimize-lcp#optimize_when_the_resource_is_discovered)."
|
|
1255
|
-
},
|
|
1256
|
-
"core/audits/prioritize-lcp-image.js | title": {
|
|
1257
|
-
"message": "Preload largest contentful paint image"
|
|
1258
|
-
},
|
|
1259
1034
|
"core/audits/redirects-http.js | description": {
|
|
1260
1035
|
"message": "Make sure that you redirect all HTTP traffic to HTTPS in order to enable secure web features for all your users. [Learn more](https://developer.chrome.com/docs/lighthouse/pwa/redirects-http/)."
|
|
1261
1036
|
},
|
|
@@ -1265,12 +1040,6 @@
|
|
|
1265
1040
|
"core/audits/redirects-http.js | title": {
|
|
1266
1041
|
"message": "Redirects HTTP traffic to HTTPS"
|
|
1267
1042
|
},
|
|
1268
|
-
"core/audits/redirects.js | description": {
|
|
1269
|
-
"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/)."
|
|
1270
|
-
},
|
|
1271
|
-
"core/audits/redirects.js | title": {
|
|
1272
|
-
"message": "Avoid multiple page redirects"
|
|
1273
|
-
},
|
|
1274
1043
|
"core/audits/seo/canonical.js | description": {
|
|
1275
1044
|
"message": "Canonical links suggest which URL to show in search results. [Learn more about canonical links](https://developer.chrome.com/docs/lighthouse/seo/canonical/)."
|
|
1276
1045
|
},
|
|
@@ -1388,18 +1157,6 @@
|
|
|
1388
1157
|
"core/audits/seo/robots-txt.js | title": {
|
|
1389
1158
|
"message": "robots.txt is valid"
|
|
1390
1159
|
},
|
|
1391
|
-
"core/audits/server-response-time.js | description": {
|
|
1392
|
-
"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/)."
|
|
1393
|
-
},
|
|
1394
|
-
"core/audits/server-response-time.js | displayValue": {
|
|
1395
|
-
"message": "Root document took {timeInMs, number, milliseconds} ms"
|
|
1396
|
-
},
|
|
1397
|
-
"core/audits/server-response-time.js | failureTitle": {
|
|
1398
|
-
"message": "Reduce initial server response time"
|
|
1399
|
-
},
|
|
1400
|
-
"core/audits/server-response-time.js | title": {
|
|
1401
|
-
"message": "Initial server response time was short"
|
|
1402
|
-
},
|
|
1403
1160
|
"core/audits/third-party-cookies.js | description": {
|
|
1404
1161
|
"message": "Third-party cookies may be blocked in some contexts. [Learn more about preparing for third-party cookie restrictions](https://privacysandbox.google.com/cookies/prepare/overview)."
|
|
1405
1162
|
},
|
|
@@ -1412,21 +1169,6 @@
|
|
|
1412
1169
|
"core/audits/third-party-cookies.js | title": {
|
|
1413
1170
|
"message": "Avoids third-party cookies"
|
|
1414
1171
|
},
|
|
1415
|
-
"core/audits/third-party-summary.js | columnThirdParty": {
|
|
1416
|
-
"message": "Third-party"
|
|
1417
|
-
},
|
|
1418
|
-
"core/audits/third-party-summary.js | description": {
|
|
1419
|
-
"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 minimise third-party impact](https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/loading-third-party-javascript/)."
|
|
1420
|
-
},
|
|
1421
|
-
"core/audits/third-party-summary.js | displayValue": {
|
|
1422
|
-
"message": "Third-party code blocked the main thread for {timeInMs, number, milliseconds} ms"
|
|
1423
|
-
},
|
|
1424
|
-
"core/audits/third-party-summary.js | failureTitle": {
|
|
1425
|
-
"message": "Reduce the impact of third-party code"
|
|
1426
|
-
},
|
|
1427
|
-
"core/audits/third-party-summary.js | title": {
|
|
1428
|
-
"message": "Minimise third-party usage"
|
|
1429
|
-
},
|
|
1430
1172
|
"core/audits/trusted-types-xss.js | columnSeverity": {
|
|
1431
1173
|
"message": "Severity"
|
|
1432
1174
|
},
|
|
@@ -1439,15 +1181,6 @@
|
|
|
1439
1181
|
"core/audits/trusted-types-xss.js | title": {
|
|
1440
1182
|
"message": "Mitigate DOM-based XSS with trusted types"
|
|
1441
1183
|
},
|
|
1442
|
-
"core/audits/unsized-images.js | description": {
|
|
1443
|
-
"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/articles/optimize-cls#images_without_dimensions)"
|
|
1444
|
-
},
|
|
1445
|
-
"core/audits/unsized-images.js | failureTitle": {
|
|
1446
|
-
"message": "Image elements do not have explicit `width` and `height`"
|
|
1447
|
-
},
|
|
1448
|
-
"core/audits/unsized-images.js | title": {
|
|
1449
|
-
"message": "Image elements have explicit `width` and `height`"
|
|
1450
|
-
},
|
|
1451
1184
|
"core/audits/user-timings.js | columnType": {
|
|
1452
1185
|
"message": "Type"
|
|
1453
1186
|
},
|
|
@@ -1460,21 +1193,6 @@
|
|
|
1460
1193
|
"core/audits/user-timings.js | title": {
|
|
1461
1194
|
"message": "User Timing marks and measures"
|
|
1462
1195
|
},
|
|
1463
|
-
"core/audits/uses-rel-preconnect.js | crossoriginWarning": {
|
|
1464
|
-
"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."
|
|
1465
|
-
},
|
|
1466
|
-
"core/audits/uses-rel-preconnect.js | description": {
|
|
1467
|
-
"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/)."
|
|
1468
|
-
},
|
|
1469
|
-
"core/audits/uses-rel-preconnect.js | title": {
|
|
1470
|
-
"message": "Pre-connect to required origins"
|
|
1471
|
-
},
|
|
1472
|
-
"core/audits/uses-rel-preconnect.js | tooManyPreconnectLinksWarning": {
|
|
1473
|
-
"message": "More than two `<link rel=preconnect>` connections were found. These should be used sparingly and only to the most important origins."
|
|
1474
|
-
},
|
|
1475
|
-
"core/audits/uses-rel-preconnect.js | unusedWarning": {
|
|
1476
|
-
"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."
|
|
1477
|
-
},
|
|
1478
1196
|
"core/audits/valid-source-maps.js | columnMapURL": {
|
|
1479
1197
|
"message": "Map URL"
|
|
1480
1198
|
},
|
|
@@ -1493,42 +1211,6 @@
|
|
|
1493
1211
|
"core/audits/valid-source-maps.js | title": {
|
|
1494
1212
|
"message": "Page has valid source maps"
|
|
1495
1213
|
},
|
|
1496
|
-
"core/audits/viewport.js | description": {
|
|
1497
|
-
"message": "A `<meta name=\"viewport\">` not only optimises 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/)."
|
|
1498
|
-
},
|
|
1499
|
-
"core/audits/viewport.js | explanationNoTag": {
|
|
1500
|
-
"message": "No `<meta name=\"viewport\">` tag found"
|
|
1501
|
-
},
|
|
1502
|
-
"core/audits/viewport.js | failureTitle": {
|
|
1503
|
-
"message": "Does not have a `<meta name=\"viewport\">` tag with `width` or `initial-scale`"
|
|
1504
|
-
},
|
|
1505
|
-
"core/audits/viewport.js | title": {
|
|
1506
|
-
"message": "Has a `<meta name=\"viewport\">` tag with `width` or `initial-scale`"
|
|
1507
|
-
},
|
|
1508
|
-
"core/audits/work-during-interaction.js | description": {
|
|
1509
|
-
"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/articles/inp)."
|
|
1510
|
-
},
|
|
1511
|
-
"core/audits/work-during-interaction.js | displayValue": {
|
|
1512
|
-
"message": "{timeInMs, number, milliseconds} ms spent on event ‘{interactionType}’"
|
|
1513
|
-
},
|
|
1514
|
-
"core/audits/work-during-interaction.js | eventTarget": {
|
|
1515
|
-
"message": "Event target"
|
|
1516
|
-
},
|
|
1517
|
-
"core/audits/work-during-interaction.js | failureTitle": {
|
|
1518
|
-
"message": "Minimise work during key interaction"
|
|
1519
|
-
},
|
|
1520
|
-
"core/audits/work-during-interaction.js | inputDelay": {
|
|
1521
|
-
"message": "Input delay"
|
|
1522
|
-
},
|
|
1523
|
-
"core/audits/work-during-interaction.js | presentationDelay": {
|
|
1524
|
-
"message": "Presentation delay"
|
|
1525
|
-
},
|
|
1526
|
-
"core/audits/work-during-interaction.js | processingDuration": {
|
|
1527
|
-
"message": "Processing duration"
|
|
1528
|
-
},
|
|
1529
|
-
"core/audits/work-during-interaction.js | title": {
|
|
1530
|
-
"message": "Minimises work during key interaction"
|
|
1531
|
-
},
|
|
1532
1214
|
"core/config/default-config.js | a11yAriaGroupDescription": {
|
|
1533
1215
|
"message": "These are opportunities to improve the usage of ARIA in your application which may enhance the experience for users of assistive technology, such as a screen reader."
|
|
1534
1216
|
},
|
|
@@ -3359,9 +3041,6 @@
|
|
|
3359
3041
|
"node_modules/lighthouse-stack-packs/packs/nitropack.js | uses-responsive-images": {
|
|
3360
3042
|
"message": "Enable [`Adaptive Image Sizing`](https://support.nitropack.io/hc/en-us/articles/10123833029905-How-to-Enable-Adaptive-Image-Sizing-For-Your-Site) to preemptively optimise your images and make them match the dimensions of the containers they’re displayed in across all devices."
|
|
3361
3043
|
},
|
|
3362
|
-
"node_modules/lighthouse-stack-packs/packs/nitropack.js | uses-text-compression": {
|
|
3363
|
-
"message": "Use [`Gzip compression`](https://support.nitropack.io/hc/en-us/articles/13229297479313-Enabling-GZIP-compression) in NitroPack to reduce the size of the files that are sent to the browser."
|
|
3364
|
-
},
|
|
3365
3044
|
"node_modules/lighthouse-stack-packs/packs/nuxt.js | modern-image-formats": {
|
|
3366
3045
|
"message": "Use the `nuxt/image` component and set `format=\"webp\"`. [Learn more](https://image.nuxt.com/usage/nuxt-img#format)."
|
|
3367
3046
|
},
|
|
@@ -3584,15 +3263,9 @@
|
|
|
3584
3263
|
"report/renderer/report-utils.js | footerIssue": {
|
|
3585
3264
|
"message": "File an issue"
|
|
3586
3265
|
},
|
|
3587
|
-
"report/renderer/report-utils.js | goBackToAudits": {
|
|
3588
|
-
"message": "Go back to audits"
|
|
3589
|
-
},
|
|
3590
3266
|
"report/renderer/report-utils.js | hide": {
|
|
3591
3267
|
"message": "Hide"
|
|
3592
3268
|
},
|
|
3593
|
-
"report/renderer/report-utils.js | insightsNotice": {
|
|
3594
|
-
"message": "Later this year, insights will replace performance audits. [Learn more and provide feedback here](https://github.com/GoogleChrome/lighthouse/discussions/16462)."
|
|
3595
|
-
},
|
|
3596
3269
|
"report/renderer/report-utils.js | labDataTitle": {
|
|
3597
3270
|
"message": "Lab Data"
|
|
3598
3271
|
},
|
|
@@ -3692,9 +3365,6 @@
|
|
|
3692
3365
|
"report/renderer/report-utils.js | toplevelWarningsMessage": {
|
|
3693
3366
|
"message": "There were issues affecting this run of Lighthouse:"
|
|
3694
3367
|
},
|
|
3695
|
-
"report/renderer/report-utils.js | tryInsights": {
|
|
3696
|
-
"message": "Try insights"
|
|
3697
|
-
},
|
|
3698
3368
|
"report/renderer/report-utils.js | unattributable": {
|
|
3699
3369
|
"message": "Unattributable"
|
|
3700
3370
|
},
|