lighthouse 12.3.0 → 12.4.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 +4 -0
- package/core/audits/audit.d.ts +5 -0
- package/core/audits/audit.js +12 -0
- package/core/audits/bootup-time.js +0 -2
- package/core/audits/byte-efficiency/duplicated-javascript.d.ts +4 -5
- package/core/audits/byte-efficiency/duplicated-javascript.js +9 -5
- package/core/audits/byte-efficiency/legacy-javascript.d.ts +2 -2
- package/core/audits/byte-efficiency/legacy-javascript.js +17 -5
- package/core/audits/byte-efficiency/polyfill-graph-data.json +48 -49
- package/core/audits/byte-efficiency/total-byte-weight.js +0 -2
- package/core/audits/clickjacking-mitigation.d.ts +42 -0
- package/core/audits/clickjacking-mitigation.js +139 -0
- package/core/audits/dobetterweb/dom-size.js +0 -2
- package/core/audits/insights/README.md +3 -0
- package/core/audits/insights/cls-culprits-insight.d.ts +25 -0
- package/core/audits/insights/cls-culprits-insight.js +137 -0
- package/core/audits/insights/document-latency-insight.d.ts +11 -0
- package/core/audits/insights/document-latency-insight.js +48 -0
- package/core/audits/insights/dom-size-insight.d.ts +11 -0
- package/core/audits/insights/dom-size-insight.js +85 -0
- package/core/audits/insights/font-display-insight.d.ts +11 -0
- package/core/audits/insights/font-display-insight.js +53 -0
- package/core/audits/insights/forced-reflow-insight.d.ts +11 -0
- package/core/audits/insights/forced-reflow-insight.js +52 -0
- package/core/audits/insights/image-delivery-insight.d.ts +11 -0
- package/core/audits/insights/image-delivery-insight.js +83 -0
- package/core/audits/insights/insight-audit.d.ts +23 -0
- package/core/audits/insights/insight-audit.js +133 -0
- package/core/audits/insights/interaction-to-next-paint-insight.d.ts +11 -0
- package/core/audits/insights/interaction-to-next-paint-insight.js +71 -0
- package/core/audits/insights/lcp-discovery-insight.d.ts +11 -0
- package/core/audits/insights/lcp-discovery-insight.js +48 -0
- package/core/audits/insights/lcp-phases-insight.d.ts +16 -0
- package/core/audits/insights/lcp-phases-insight.js +87 -0
- package/core/audits/insights/long-critical-network-tree-insight.d.ts +11 -0
- package/core/audits/insights/long-critical-network-tree-insight.js +53 -0
- package/core/audits/insights/render-blocking-insight.d.ts +11 -0
- package/core/audits/insights/render-blocking-insight.js +57 -0
- package/core/audits/insights/slow-css-selector-insight.d.ts +11 -0
- package/core/audits/insights/slow-css-selector-insight.js +52 -0
- package/core/audits/insights/third-parties-insight.d.ts +28 -0
- package/core/audits/insights/third-parties-insight.js +90 -0
- package/core/audits/insights/viewport-insight.d.ts +11 -0
- package/core/audits/insights/viewport-insight.js +54 -0
- package/core/audits/layout-shifts.d.ts +0 -1
- package/core/audits/layout-shifts.js +18 -21
- package/core/audits/mainthread-work-breakdown.js +0 -2
- package/core/audits/seo/is-crawlable.d.ts +1 -0
- package/core/audits/server-response-time.js +0 -1
- package/core/computed/metrics/lantern-metric.js +5 -1
- package/core/computed/trace-engine-result.js +71 -17
- package/core/config/default-config.js +37 -1
- package/core/gather/gatherers/inspector-issues.js +3 -0
- package/core/gather/gatherers/trace-elements.d.ts +10 -2
- package/core/gather/gatherers/trace-elements.js +89 -12
- package/core/lib/bf-cache-strings.d.ts +7 -4
- package/core/lib/bf-cache-strings.js +174 -140
- package/core/lib/cdt/generated/ParsedURL.d.ts +1 -0
- package/core/lib/cdt/generated/ParsedURL.js +16 -4
- package/core/lib/cdt/generated/SourceMap.d.ts +32 -5
- package/core/lib/cdt/generated/SourceMap.js +192 -100
- package/core/lib/deprecations-strings.d.ts +78 -98
- package/core/lib/deprecations-strings.js +23 -41
- package/core/lib/i18n/i18n.d.ts +1 -0
- package/core/lib/i18n/i18n.js +2 -0
- package/core/lib/trace-engine.d.ts +1 -0
- package/core/lib/trace-engine.js +2 -0
- package/core/runner.js +2 -0
- package/dist/report/bundle.esm.js +196 -9
- package/dist/report/flow.js +197 -10
- package/dist/report/standalone.js +197 -10
- package/flow-report/src/i18n/i18n.d.ts +2 -0
- package/package.json +15 -13
- package/readme.md +3 -0
- package/report/assets/styles.css +179 -5
- package/report/assets/templates.html +14 -0
- package/report/renderer/components.js +9 -3
- package/report/renderer/details-renderer.d.ts +5 -0
- package/report/renderer/details-renderer.js +24 -0
- package/report/renderer/dom.d.ts +12 -1
- package/report/renderer/dom.js +26 -1
- package/report/renderer/i18n-formatter.d.ts +1 -1
- package/report/renderer/performance-category-renderer.d.ts +10 -0
- package/report/renderer/performance-category-renderer.js +81 -20
- package/report/renderer/report-utils.d.ts +1 -0
- package/report/renderer/report-utils.js +2 -0
- package/report/renderer/topbar-features.js +7 -0
- package/shared/localization/locales/ar-XB.json +74 -26
- package/shared/localization/locales/ar.json +76 -28
- package/shared/localization/locales/bg.json +74 -26
- package/shared/localization/locales/ca.json +74 -26
- package/shared/localization/locales/cs.json +74 -26
- package/shared/localization/locales/da.json +74 -26
- package/shared/localization/locales/de.json +75 -27
- package/shared/localization/locales/el.json +74 -26
- package/shared/localization/locales/en-GB.json +74 -26
- package/shared/localization/locales/en-US.json +288 -30
- package/shared/localization/locales/en-XA.json +48 -24
- package/shared/localization/locales/en-XL.json +288 -30
- package/shared/localization/locales/es-419.json +74 -26
- package/shared/localization/locales/es.json +74 -26
- package/shared/localization/locales/fi.json +74 -26
- package/shared/localization/locales/fil.json +75 -27
- package/shared/localization/locales/fr.json +74 -26
- package/shared/localization/locales/he.json +82 -34
- package/shared/localization/locales/hi.json +74 -26
- package/shared/localization/locales/hr.json +75 -27
- package/shared/localization/locales/hu.json +74 -26
- package/shared/localization/locales/id.json +74 -26
- package/shared/localization/locales/it.json +85 -37
- package/shared/localization/locales/ja.json +75 -27
- package/shared/localization/locales/ko.json +75 -27
- package/shared/localization/locales/lt.json +75 -27
- package/shared/localization/locales/lv.json +74 -26
- package/shared/localization/locales/nl.json +74 -26
- package/shared/localization/locales/no.json +75 -27
- package/shared/localization/locales/pl.json +74 -26
- package/shared/localization/locales/pt-PT.json +74 -26
- package/shared/localization/locales/pt.json +74 -26
- package/shared/localization/locales/ro.json +74 -26
- package/shared/localization/locales/ru.json +74 -26
- package/shared/localization/locales/sk.json +74 -26
- package/shared/localization/locales/sl.json +74 -26
- package/shared/localization/locales/sr-Latn.json +74 -26
- package/shared/localization/locales/sr.json +74 -26
- package/shared/localization/locales/sv.json +74 -26
- package/shared/localization/locales/ta.json +74 -26
- package/shared/localization/locales/te.json +74 -26
- package/shared/localization/locales/th.json +76 -28
- package/shared/localization/locales/tr.json +74 -26
- package/shared/localization/locales/uk.json +74 -26
- package/shared/localization/locales/vi.json +74 -26
- package/shared/localization/locales/zh-HK.json +75 -27
- package/shared/localization/locales/zh-TW.json +74 -26
- package/shared/localization/locales/zh.json +74 -26
- package/third-party/chromium-synchronization/inspector-issueAdded-types-test.js +3 -0
- package/types/artifacts.d.ts +5 -3
- package/types/audit.d.ts +2 -0
- package/types/lhr/audit-details.d.ts +13 -1
- package/types/lhr/audit-result.d.ts +2 -0
- package/core/gather/gatherers/root-causes.d.ts +0 -19
- package/core/gather/gatherers/root-causes.js +0 -144
|
@@ -81,6 +81,7 @@ declare function useI18n(): {
|
|
|
81
81
|
dropdownViewer: string;
|
|
82
82
|
dropdownSaveGist: string;
|
|
83
83
|
dropdownDarkTheme: string;
|
|
84
|
+
dropdownInsightsToggle: string;
|
|
84
85
|
dropdownViewUnthrottledTrace: string;
|
|
85
86
|
runtimeSettingsDevice: string;
|
|
86
87
|
runtimeSettingsNetworkThrottling: string;
|
|
@@ -185,6 +186,7 @@ declare function useLocalizedStrings(): {
|
|
|
185
186
|
dropdownViewer: string;
|
|
186
187
|
dropdownSaveGist: string;
|
|
187
188
|
dropdownDarkTheme: string;
|
|
189
|
+
dropdownInsightsToggle: string;
|
|
188
190
|
dropdownViewUnthrottledTrace: string;
|
|
189
191
|
runtimeSettingsDevice: string;
|
|
190
192
|
runtimeSettingsNetworkThrottling: string;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lighthouse",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "12.
|
|
4
|
+
"version": "12.4.0",
|
|
5
5
|
"description": "Automated auditing, performance metrics, and best practices for the web.",
|
|
6
6
|
"main": "./core/index.js",
|
|
7
7
|
"bin": {
|
|
@@ -16,9 +16,10 @@
|
|
|
16
16
|
"prepack": "yarn build-report --standalone --flow --esm && yarn build-types",
|
|
17
17
|
"postpack": "yarn clean-types",
|
|
18
18
|
"build-all": "npm-run-posix-or-windows build-all:task",
|
|
19
|
-
"build-all:task": "yarn build-report && yarn build-cdt-
|
|
20
|
-
"build-all:task:windows": "yarn build-report && yarn build-cdt-
|
|
19
|
+
"build-all:task": "yarn build-report && yarn build-cdt-strings && yarn build-devtools && concurrently 'yarn build-extension' 'yarn build-lr' 'yarn build-viewer' 'yarn build-treemap' 'yarn build-smokehouse-bundle' && yarn build-pack",
|
|
20
|
+
"build-all:task:windows": "yarn build-report && yarn build-cdt-strings && yarn build-extension && yarn build-devtools && yarn build-lr && yarn build-viewer && yarn build-treemap && yarn build-smokehouse-bundle",
|
|
21
21
|
"build-cdt-lib": "node ./build/build-cdt-lib.js",
|
|
22
|
+
"build-cdt-strings": "node ./build/build-cdt-strings.js",
|
|
22
23
|
"build-extension": "yarn build-extension-chrome && yarn build-extension-firefox",
|
|
23
24
|
"build-extension-chrome": "node ./build/build-extension.js chrome",
|
|
24
25
|
"build-extension-firefox": "node ./build/build-extension.js firefox",
|
|
@@ -96,7 +97,8 @@
|
|
|
96
97
|
"serve-gh-pages": "cd dist/gh-pages && python3 -m http.server 7333",
|
|
97
98
|
"serve-treemap": "yarn serve-gh-pages",
|
|
98
99
|
"serve-viewer": "yarn serve-gh-pages",
|
|
99
|
-
"flow-report": "yarn build-report --flow && node ./core/scripts/build-test-flow-report.js"
|
|
100
|
+
"flow-report": "yarn build-report --flow && node ./core/scripts/build-test-flow-report.js",
|
|
101
|
+
"generate-insight-audits": "node core/scripts/generate-insight-audits.js"
|
|
100
102
|
},
|
|
101
103
|
"devDependencies": {
|
|
102
104
|
"@build-tracker/cli": "^1.0.0-beta.15",
|
|
@@ -136,7 +138,7 @@
|
|
|
136
138
|
"builtin-modules": "^3.3.0",
|
|
137
139
|
"c8": "^7.11.3",
|
|
138
140
|
"chalk": "^2.4.1",
|
|
139
|
-
"chrome-devtools-frontend": "1.0.
|
|
141
|
+
"chrome-devtools-frontend": "1.0.1418433",
|
|
140
142
|
"concurrently": "^6.4.0",
|
|
141
143
|
"conventional-changelog-cli": "^2.1.1",
|
|
142
144
|
"cpy": "^8.1.2",
|
|
@@ -167,7 +169,7 @@
|
|
|
167
169
|
"pako": "^2.0.3",
|
|
168
170
|
"preact": "^10.7.2",
|
|
169
171
|
"pretty-json-stringify": "^0.0.2",
|
|
170
|
-
"puppeteer": "^
|
|
172
|
+
"puppeteer": "^24.3.0",
|
|
171
173
|
"resolve": "^1.22.1",
|
|
172
174
|
"rollup": "^2.52.7",
|
|
173
175
|
"rollup-plugin-polyfill-node": "^0.12.0",
|
|
@@ -181,13 +183,13 @@
|
|
|
181
183
|
"webtreemap-cdt": "^3.2.1"
|
|
182
184
|
},
|
|
183
185
|
"dependencies": {
|
|
184
|
-
"@paulirish/trace_engine": "0.0.
|
|
186
|
+
"@paulirish/trace_engine": "0.0.44",
|
|
185
187
|
"@sentry/node": "^7.0.0",
|
|
186
188
|
"axe-core": "^4.10.2",
|
|
187
189
|
"chrome-launcher": "^1.1.2",
|
|
188
190
|
"configstore": "^5.0.1",
|
|
189
|
-
"csp_evaluator": "1.1.
|
|
190
|
-
"devtools-protocol": "0.0.
|
|
191
|
+
"csp_evaluator": "1.1.5",
|
|
192
|
+
"devtools-protocol": "0.0.1423531",
|
|
191
193
|
"enquirer": "^2.3.6",
|
|
192
194
|
"http-link-header": "^1.1.1",
|
|
193
195
|
"intl-messageformat": "^10.5.3",
|
|
@@ -200,19 +202,19 @@
|
|
|
200
202
|
"metaviewport-parser": "0.3.0",
|
|
201
203
|
"open": "^8.4.0",
|
|
202
204
|
"parse-cache-control": "1.0.1",
|
|
203
|
-
"puppeteer-core": "^
|
|
205
|
+
"puppeteer-core": "^24.3.0",
|
|
204
206
|
"robots-parser": "^3.0.1",
|
|
205
207
|
"semver": "^5.3.0",
|
|
206
208
|
"speedline-core": "^1.4.3",
|
|
207
|
-
"third-party-web": "^0.26.
|
|
209
|
+
"third-party-web": "^0.26.5",
|
|
208
210
|
"tldts-icann": "^6.1.16",
|
|
209
211
|
"ws": "^7.0.0",
|
|
210
212
|
"yargs": "^17.3.1",
|
|
211
213
|
"yargs-parser": "^21.0.0"
|
|
212
214
|
},
|
|
213
215
|
"resolutions": {
|
|
214
|
-
"puppeteer/**/devtools-protocol": "0.0.
|
|
215
|
-
"puppeteer-core/**/devtools-protocol": "0.0.
|
|
216
|
+
"puppeteer/**/devtools-protocol": "0.0.1423531",
|
|
217
|
+
"puppeteer-core/**/devtools-protocol": "0.0.1423531"
|
|
216
218
|
},
|
|
217
219
|
"repository": "GoogleChrome/lighthouse",
|
|
218
220
|
"keywords": [
|
package/readme.md
CHANGED
|
@@ -364,6 +364,8 @@ This section details services that have integrated Lighthouse data. If you're wo
|
|
|
364
364
|
|
|
365
365
|
* **[Guardius](https://guardius.io)** - Guardius is a DevOps and DevSecOps SaaS platform that integrates Lighthouse to deliver automated web performance analysis. It not only provides metrics evaluation and automatic scanning but also enables performance comparisons across different periods and ongoing observation over time. Additionally, Guardius offers predefined and customized alerts tailored to your specific requirements. A free version of Guardius is available for users to explore its features.
|
|
366
366
|
|
|
367
|
+
* **[Sonā](https://getsona.io)** - Powered by Lighthouse amongst others, Sonā delivers in-depth insights into your website’s health. Track changes over time, share reports, and receive actionable recommendations to improve performance, accessibility, SEO, best practices, and security. Sonā is free during its beta period.
|
|
368
|
+
|
|
367
369
|
## Lighthouse Integrations in non-Web Perf services
|
|
368
370
|
|
|
369
371
|
* **[PageWatch](https://pagewatch.dev/)** — PageWatch is a tool to find problem pages on your website. It provides insights into spelling errors, layout issues, slow pages (powered by Lighthouse) and more. PageWatch is offered via free and paid plans.
|
|
@@ -412,6 +414,7 @@ Other awesome open source projects that use Lighthouse.
|
|
|
412
414
|
* **[webpack-lighthouse-plugin](https://github.com/addyosmani/webpack-lighthouse-plugin)** - Run Lighthouse from a Webpack build.
|
|
413
415
|
* **[cypress-audit](https://github.com/mfrachet/cypress-audit)** - Run Lighthouse and Pa11y audits directly in your E2E test suites.
|
|
414
416
|
* **[laravel-lighthouse](https://github.com/adityadees/laravel-lighthouse)** - Google Lighthouse wrapper for laravel framework to run Google Lighthouse CLI with custom option and can automatically save result in your server directory.
|
|
417
|
+
* **[Neodymium](https://github.com/Xceptance/neodymium/wiki/Accessibility)** - The Neodymium test automation framework integrates Lighthouse for accessibility and Web Vitals verification, allowing programmatic validation and assertion of all audit values.
|
|
415
418
|
|
|
416
419
|
## FAQ
|
|
417
420
|
|
package/report/assets/styles.css
CHANGED
|
@@ -199,6 +199,11 @@
|
|
|
199
199
|
}
|
|
200
200
|
}
|
|
201
201
|
|
|
202
|
+
/**
|
|
203
|
+
* This media query is a temporary fallback for browsers that do not support `@container query`.
|
|
204
|
+
* TODO: remove this media query when `@container query` is fully supported by browsers
|
|
205
|
+
* See https://github.com/GoogleChrome/lighthouse/pull/16332
|
|
206
|
+
*/
|
|
202
207
|
@media only screen and (max-width: 480px) {
|
|
203
208
|
.lh-vars {
|
|
204
209
|
--audit-group-margin-bottom: 20px;
|
|
@@ -225,6 +230,32 @@
|
|
|
225
230
|
}
|
|
226
231
|
}
|
|
227
232
|
|
|
233
|
+
@container lh-container (max-width: 480px) {
|
|
234
|
+
.lh-vars {
|
|
235
|
+
--audit-group-margin-bottom: 20px;
|
|
236
|
+
--edge-gap-padding: var(--default-padding);
|
|
237
|
+
--env-name-min-width: 120px;
|
|
238
|
+
--gauge-circle-size-big: 96px;
|
|
239
|
+
--gauge-circle-size: 72px;
|
|
240
|
+
--gauge-label-font-size-big: 22px;
|
|
241
|
+
--gauge-label-font-size: 14px;
|
|
242
|
+
--gauge-label-line-height-big: 26px;
|
|
243
|
+
--gauge-label-line-height: 20px;
|
|
244
|
+
--gauge-percentage-font-size-big: 34px;
|
|
245
|
+
--gauge-percentage-font-size: 26px;
|
|
246
|
+
--gauge-wrapper-width: 112px;
|
|
247
|
+
--header-padding: 16px 0 16px 0;
|
|
248
|
+
--image-preview-size: 24px;
|
|
249
|
+
--plugin-icon-size: 75%;
|
|
250
|
+
--report-font-size: 14px;
|
|
251
|
+
--report-line-height: 20px;
|
|
252
|
+
--score-icon-margin-left: 2px;
|
|
253
|
+
--score-icon-size: 10px;
|
|
254
|
+
--topbar-height: 28px;
|
|
255
|
+
--topbar-logo-size: 20px;
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
|
|
228
259
|
.lh-vars.lh-devtools {
|
|
229
260
|
--audit-explanation-line-height: 14px;
|
|
230
261
|
--audit-group-margin-bottom: 20px;
|
|
@@ -369,6 +400,9 @@
|
|
|
369
400
|
but they do not get any overflow:ellipsis treatment.
|
|
370
401
|
*/
|
|
371
402
|
word-break: break-word;
|
|
403
|
+
|
|
404
|
+
container-name: lh-container;
|
|
405
|
+
container-type: inline-size;
|
|
372
406
|
}
|
|
373
407
|
|
|
374
408
|
.lh-audit-group a,
|
|
@@ -480,6 +514,35 @@
|
|
|
480
514
|
.lh-report-icon--external::before {
|
|
481
515
|
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg"><path d="M3.15 11.9a1.01 1.01 0 0 1-.743-.307 1.01 1.01 0 0 1-.306-.743v-7.7c0-.292.102-.54.306-.744a1.01 1.01 0 0 1 .744-.306H7v1.05H3.15v7.7h7.7V7h1.05v3.85c0 .291-.103.54-.307.743a1.01 1.01 0 0 1-.743.307h-7.7Zm2.494-2.8-.743-.744 5.206-5.206H8.401V2.1h3.5v3.5h-1.05V3.893L5.644 9.1Z"/></svg>');
|
|
482
516
|
}
|
|
517
|
+
.lh-report-icon--experiment::before {
|
|
518
|
+
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="none"><path d="M4.50002 17C3.86136 17 3.40302 16.7187 3.12502 16.156C2.84702 15.5933 2.90936 15.069 3.31202 14.583L7.50002 9.5V4.5H6.75002C6.54202 4.5 6.36502 4.427 6.21902 4.281C6.07302 4.135 6.00002 3.958 6.00002 3.75C6.00002 3.542 6.07302 3.365 6.21902 3.219C6.36502 3.073 6.54202 3 6.75002 3H13.25C13.458 3 13.635 3.073 13.781 3.219C13.927 3.365 14 3.542 14 3.75C14 3.958 13.927 4.135 13.781 4.281C13.635 4.427 13.458 4.5 13.25 4.5H12.5V9.5L16.688 14.583C17.0767 15.069 17.132 15.5933 16.854 16.156C16.5767 16.7187 16.1254 17 15.5 17H4.50002ZM4.50002 15.5H15.5L11 10V4.5H9.00002V10L4.50002 15.5Z" fill="black"/></svg>');
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
/** These are still icons, but w/o the auto-color invert / opacity / etc. that come with .lh-report-icon */
|
|
522
|
+
|
|
523
|
+
.lh-report-plain-icon {
|
|
524
|
+
display: flex;
|
|
525
|
+
align-items: center;
|
|
526
|
+
}
|
|
527
|
+
.lh-report-plain-icon::before {
|
|
528
|
+
content: "";
|
|
529
|
+
background-repeat: no-repeat;
|
|
530
|
+
width: var(--report-icon-size);
|
|
531
|
+
height: var(--report-icon-size);
|
|
532
|
+
display: inline-block;
|
|
533
|
+
margin-right: 5px;
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
.lh-report-plain-icon--checklist-pass::before {
|
|
537
|
+
--icon-url: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M8.938 13L13.896 8.062L12.833 7L8.938 10.875L7.167 9.125L6.104 10.188L8.938 13ZM10 18C8.90267 18 7.868 17.7917 6.896 17.375C5.924 16.9583 5.07333 16.3853 4.344 15.656C3.61467 14.9267 3.04167 14.076 2.625 13.104C2.20833 12.132 2 11.0973 2 10C2 8.88867 2.20833 7.85033 2.625 6.885C3.04167 5.92033 3.61467 5.07333 4.344 4.344C5.07333 3.61467 5.924 3.04167 6.896 2.625C7.868 2.20833 8.90267 2 10 2C11.1113 2 12.1497 2.20833 13.115 2.625C14.0797 3.04167 14.9267 3.61467 15.656 4.344C16.3853 5.07333 16.9583 5.92033 17.375 6.885C17.7917 7.85033 18 8.88867 18 10C18 11.0973 17.7917 12.132 17.375 13.104C16.9583 14.076 16.3853 14.9267 15.656 15.656C14.9267 16.3853 14.0797 16.9583 13.115 17.375C12.1497 17.7917 11.1113 18 10 18ZM10 16.5C11.8053 16.5 13.34 15.868 14.604 14.604C15.868 13.34 16.5 11.8053 16.5 10C16.5 8.19467 15.868 6.66 14.604 5.396C13.34 4.132 11.8053 3.5 10 3.5C8.19467 3.5 6.66 4.132 5.396 5.396C4.132 6.66 3.5 8.19467 3.5 10C3.5 11.8053 4.132 13.34 5.396 14.604C6.66 15.868 8.19467 16.5 10 16.5Z" fill="black"/></svg>');
|
|
538
|
+
background-color: var(--color-pass);
|
|
539
|
+
mask: var(--icon-url) center / contain no-repeat;
|
|
540
|
+
}
|
|
541
|
+
.lh-report-plain-icon--checklist-fail::before {
|
|
542
|
+
--icon-url: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill-rule="evenodd" clip-rule="evenodd" d="M17.5 10C17.5 14.1421 14.1421 17.5 10 17.5C5.85786 17.5 2.5 14.1421 2.5 10C2.5 5.85786 5.85786 2.5 10 2.5C14.1421 2.5 17.5 5.85786 17.5 10ZM16 10C16 13.3137 13.3137 16 10 16C8.6135 16 7.33683 15.5297 6.32083 14.7399L14.7399 6.32083C15.5297 7.33683 16 8.6135 16 10ZM5.26016 13.6793L13.6793 5.26016C12.6633 4.47033 11.3866 4 10 4C6.68629 4 4 6.68629 4 10C4 11.3866 4.47033 12.6633 5.26016 13.6793Z" fill="black"/></svg>');
|
|
543
|
+
background-color: var(--color-fail);
|
|
544
|
+
mask: var(--icon-url) center / contain no-repeat;
|
|
545
|
+
}
|
|
483
546
|
|
|
484
547
|
.lh-buttons {
|
|
485
548
|
display: flex;
|
|
@@ -507,6 +570,15 @@
|
|
|
507
570
|
line-height: 20px;
|
|
508
571
|
}
|
|
509
572
|
|
|
573
|
+
.lh-checklist {
|
|
574
|
+
list-style: none;
|
|
575
|
+
padding: 0;
|
|
576
|
+
}
|
|
577
|
+
|
|
578
|
+
.lh-checklist-item {
|
|
579
|
+
margin: 10px 0 10px 0;
|
|
580
|
+
}
|
|
581
|
+
|
|
510
582
|
/* Score */
|
|
511
583
|
|
|
512
584
|
.lh-audit__score-icon {
|
|
@@ -757,7 +829,11 @@
|
|
|
757
829
|
grid-column-start: 2;
|
|
758
830
|
}
|
|
759
831
|
|
|
760
|
-
|
|
832
|
+
/**
|
|
833
|
+
* This media query is a temporary fallback for browsers that do not support `@container query`.
|
|
834
|
+
* TODO: remove this media query when `@container query` is fully supported by browsers
|
|
835
|
+
* See https://github.com/GoogleChrome/lighthouse/pull/16332
|
|
836
|
+
*/
|
|
761
837
|
@media screen and (max-width: 535px) {
|
|
762
838
|
.lh-metrics-container {
|
|
763
839
|
display: block;
|
|
@@ -783,6 +859,31 @@
|
|
|
783
859
|
}
|
|
784
860
|
}
|
|
785
861
|
|
|
862
|
+
@container lh-container (max-width: 535px) {
|
|
863
|
+
.lh-metrics-container {
|
|
864
|
+
display: block;
|
|
865
|
+
}
|
|
866
|
+
|
|
867
|
+
.lh-metric {
|
|
868
|
+
border-bottom: none !important;
|
|
869
|
+
}
|
|
870
|
+
.lh-category:not(.lh--hoisted-meta) .lh-metric:nth-last-child(1) {
|
|
871
|
+
border-bottom: 1px solid var(--report-border-color-secondary) !important;
|
|
872
|
+
}
|
|
873
|
+
|
|
874
|
+
/* Change the grid to 3 columns for narrow viewport. */
|
|
875
|
+
.lh-metric__innerwrap {
|
|
876
|
+
/**
|
|
877
|
+
* Icon -- Metric Name -- Metric Value
|
|
878
|
+
*/
|
|
879
|
+
grid-template-columns: calc(var(--score-icon-size) + var(--score-icon-margin-left) + var(--score-icon-margin-right)) 2fr 1fr;
|
|
880
|
+
}
|
|
881
|
+
.lh-metric__value {
|
|
882
|
+
justify-self: end;
|
|
883
|
+
grid-column-start: unset;
|
|
884
|
+
}
|
|
885
|
+
}
|
|
886
|
+
|
|
786
887
|
/* No-JS toggle switch */
|
|
787
888
|
/* Keep this selector sync'd w/ `magicSelector` in report-ui-features-test.js */
|
|
788
889
|
.lh-metrics-toggle__input:checked ~ .lh-metrics-container .lh-metric__description {
|
|
@@ -1364,6 +1465,11 @@
|
|
|
1364
1465
|
height: var(--gauge-circle-size-big);
|
|
1365
1466
|
}
|
|
1366
1467
|
|
|
1468
|
+
/**
|
|
1469
|
+
* This media query is a temporary fallback for browsers that do not support `@container query`.
|
|
1470
|
+
* TODO: remove this media query when `@container query` is fully supported by browsers
|
|
1471
|
+
* See https://github.com/GoogleChrome/lighthouse/pull/16332
|
|
1472
|
+
*/
|
|
1367
1473
|
@media screen and (max-width: 780px) {
|
|
1368
1474
|
.lh-category-header__finalscreenshot {
|
|
1369
1475
|
grid-template: 1fr 1fr / none
|
|
@@ -1373,8 +1479,20 @@
|
|
|
1373
1479
|
}
|
|
1374
1480
|
}
|
|
1375
1481
|
|
|
1482
|
+
@container lh-container (max-width: 780px) {
|
|
1483
|
+
.lh-category-header__finalscreenshot {
|
|
1484
|
+
grid-template: 1fr 1fr / none
|
|
1485
|
+
}
|
|
1486
|
+
.lh-category-headercol--separator {
|
|
1487
|
+
display: none;
|
|
1488
|
+
}
|
|
1489
|
+
}
|
|
1376
1490
|
|
|
1377
|
-
|
|
1491
|
+
/**
|
|
1492
|
+
* This media query is a temporary fallback for browsers that do not support `@container query`.
|
|
1493
|
+
* TODO: remove this media query when `@container query` is fully supported by browsers
|
|
1494
|
+
* See https://github.com/GoogleChrome/lighthouse/pull/16332
|
|
1495
|
+
*/
|
|
1378
1496
|
@media screen and (max-width: 964px) {
|
|
1379
1497
|
.lh-report {
|
|
1380
1498
|
margin-left: 0;
|
|
@@ -1382,6 +1500,14 @@
|
|
|
1382
1500
|
}
|
|
1383
1501
|
}
|
|
1384
1502
|
|
|
1503
|
+
/* 964 fits the min-width of the filmstrip */
|
|
1504
|
+
@container lh-container (max-width: 964px) {
|
|
1505
|
+
.lh-report {
|
|
1506
|
+
margin-left: 0;
|
|
1507
|
+
width: 100%;
|
|
1508
|
+
}
|
|
1509
|
+
}
|
|
1510
|
+
|
|
1385
1511
|
@media print {
|
|
1386
1512
|
body {
|
|
1387
1513
|
-webkit-print-color-adjust: exact; /* print background colors */
|
|
@@ -1656,6 +1782,11 @@
|
|
|
1656
1782
|
}
|
|
1657
1783
|
}
|
|
1658
1784
|
|
|
1785
|
+
/**
|
|
1786
|
+
* This media query is a temporary fallback for browsers that do not support `@container query`.
|
|
1787
|
+
* TODO: remove this media query when `@container query` is fully supported by browsers
|
|
1788
|
+
* See https://github.com/GoogleChrome/lighthouse/pull/16332
|
|
1789
|
+
*/
|
|
1659
1790
|
@media screen and (max-width: 780px) {
|
|
1660
1791
|
/* no black outline if we're not confident the entire table can be displayed within bounds */
|
|
1661
1792
|
.lh-expandable-details[open] {
|
|
@@ -1663,6 +1794,13 @@
|
|
|
1663
1794
|
}
|
|
1664
1795
|
}
|
|
1665
1796
|
|
|
1797
|
+
@container lh-container (max-width: 780px) {
|
|
1798
|
+
/* no black outline if we're not confident the entire table can be displayed within bounds */
|
|
1799
|
+
.lh-expandable-details[open] {
|
|
1800
|
+
animation: none;
|
|
1801
|
+
}
|
|
1802
|
+
}
|
|
1803
|
+
|
|
1666
1804
|
.lh-expandable-details[open] summary, details.lh-clump > summary {
|
|
1667
1805
|
border-bottom: 1px solid var(--report-border-color-secondary);
|
|
1668
1806
|
}
|
|
@@ -1695,8 +1833,11 @@ details[open] .lh-clump-toggletext--hide { display: block;}
|
|
|
1695
1833
|
text-align: initial;
|
|
1696
1834
|
line-height: 1.4;
|
|
1697
1835
|
}
|
|
1698
|
-
|
|
1699
|
-
|
|
1836
|
+
|
|
1837
|
+
/**
|
|
1838
|
+
* This media query is a temporary fallback for browsers that do not support `@container query`.
|
|
1839
|
+
* TODO: remove this media query when `@container query` is fully supported by browsers
|
|
1840
|
+
* See https://github.com/GoogleChrome/lighthouse/pull/16332
|
|
1700
1841
|
*/
|
|
1701
1842
|
@media screen and (max-width: 535px) {
|
|
1702
1843
|
.lh-tooltip {
|
|
@@ -1705,6 +1846,16 @@ details[open] .lh-clump-toggletext--hide { display: block;}
|
|
|
1705
1846
|
}
|
|
1706
1847
|
}
|
|
1707
1848
|
|
|
1849
|
+
/* shrink tooltips to not be cutoff on left edge of narrow container
|
|
1850
|
+
45vw is chosen to be ~= width of the left column of metrics
|
|
1851
|
+
*/
|
|
1852
|
+
@container lh-container (max-width: 535px) {
|
|
1853
|
+
.lh-tooltip {
|
|
1854
|
+
min-width: 45vw;
|
|
1855
|
+
padding: 3vw;
|
|
1856
|
+
}
|
|
1857
|
+
}
|
|
1858
|
+
|
|
1708
1859
|
.lh-tooltip-boundary:hover .lh-tooltip {
|
|
1709
1860
|
display: block;
|
|
1710
1861
|
animation: fadeInTooltip 250ms;
|
|
@@ -1837,18 +1988,41 @@ details[open] .lh-clump-toggletext--hide { display: block;}
|
|
|
1837
1988
|
left: 6px;
|
|
1838
1989
|
}
|
|
1839
1990
|
|
|
1840
|
-
|
|
1991
|
+
/**
|
|
1992
|
+
* This media query is a temporary fallback for browsers that do not support `@container query`.
|
|
1993
|
+
* TODO: remove this media query when `@container query` is fully supported by browsers
|
|
1994
|
+
* See https://github.com/GoogleChrome/lighthouse/pull/16332
|
|
1995
|
+
*/
|
|
1841
1996
|
@media screen and (max-width: 640px) {
|
|
1842
1997
|
.lh-meta__items {
|
|
1843
1998
|
grid-template-columns: 1fr 1fr;
|
|
1844
1999
|
}
|
|
1845
2000
|
}
|
|
2001
|
+
|
|
2002
|
+
/* Change the grid for narrow container */
|
|
2003
|
+
@container lh-container (max-width: 640px) {
|
|
2004
|
+
.lh-meta__items {
|
|
2005
|
+
grid-template-columns: 1fr 1fr;
|
|
2006
|
+
}
|
|
2007
|
+
}
|
|
2008
|
+
|
|
2009
|
+
/**
|
|
2010
|
+
* This media query is a temporary fallback for browsers that do not support `@container query`.
|
|
2011
|
+
* TODO: remove this media query when `@container query` is fully supported by browsers
|
|
2012
|
+
* See https://github.com/GoogleChrome/lighthouse/pull/16332
|
|
2013
|
+
*/
|
|
1846
2014
|
@media screen and (max-width: 535px) {
|
|
1847
2015
|
.lh-meta__items {
|
|
1848
2016
|
display: block;
|
|
1849
2017
|
}
|
|
1850
2018
|
}
|
|
1851
2019
|
|
|
2020
|
+
@container lh-container (max-width: 535px) {
|
|
2021
|
+
.lh-meta__items {
|
|
2022
|
+
display: block;
|
|
2023
|
+
}
|
|
2024
|
+
}
|
|
2025
|
+
|
|
1852
2026
|
/* Explodey gauge */
|
|
1853
2027
|
|
|
1854
2028
|
.lh-exp-gauge-component {
|
|
@@ -298,12 +298,25 @@ SPDX-License-Identifier: Apache-2.0
|
|
|
298
298
|
margin: 0 4px;
|
|
299
299
|
}
|
|
300
300
|
|
|
301
|
+
/**
|
|
302
|
+
* This media query is a temporary fallback for browsers that do not support `@container query`.
|
|
303
|
+
* TODO: remove this media query when `@container query` is fully supported by browsers
|
|
304
|
+
* See https://github.com/GoogleChrome/lighthouse/pull/16332
|
|
305
|
+
*/
|
|
301
306
|
@media screen and (max-width: 964px) {
|
|
302
307
|
.lh-tools__dropdown {
|
|
303
308
|
right: 0;
|
|
304
309
|
left: initial;
|
|
305
310
|
}
|
|
306
311
|
}
|
|
312
|
+
|
|
313
|
+
@container lh-container (max-width: 964px) {
|
|
314
|
+
.lh-tools__dropdown {
|
|
315
|
+
right: 0;
|
|
316
|
+
left: initial;
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
|
|
307
320
|
@media print {
|
|
308
321
|
.lh-topbar {
|
|
309
322
|
position: static;
|
|
@@ -354,6 +367,7 @@ SPDX-License-Identifier: Apache-2.0
|
|
|
354
367
|
<!-- Only enabled if Options.onViewTrace is set and we are on simulated throttling. -->
|
|
355
368
|
<a role="menuitem" tabindex="-1" href="#" class="lh-report-icon lh-report-icon--open lh-hidden" data-i18n="dropdownViewUnthrottledTrace" data-action="view-unthrottled-trace"></a>
|
|
356
369
|
<a role="menuitem" tabindex="-1" href="#" class="lh-report-icon lh-report-icon--dark" data-i18n="dropdownDarkTheme" data-action="toggle-dark"></a>
|
|
370
|
+
<a role="menuitem" tabindex="-1" href="#" class="lh-report-icon lh-report-icon--experiment" data-i18n="dropdownInsightsToggle" data-action="toggle-insights"></a>
|
|
357
371
|
</div>
|
|
358
372
|
</div>
|
|
359
373
|
</div>
|