Run prettier
CI Pipeline / test (20) (pull_request) Successful in 8m20s
CI Pipeline / test (18) (pull_request) Successful in 8m41s
CI Pipeline / e2e (chromium) (pull_request) Successful in 3m26s
CI Pipeline / e2e (firefox) (pull_request) Successful in 4m36s
CI Pipeline / e2e (webkit) (pull_request) Successful in 3m39s
CI Pipeline / performance (pull_request) Successful in 2m43s
CI Pipeline / visual-regression (pull_request) Successful in 6m5s
CI Pipeline / storybook (pull_request) Successful in 1m25s
CI Pipeline / lint (pull_request) Successful in 1m25s
CI Pipeline / build (pull_request) Successful in 1m48s

This commit is contained in:
adilallo
2025-09-30 17:49:01 -06:00
parent f48fdff716
commit 74b09eaf09
21 changed files with 67891 additions and 789 deletions
+2 -6
View File
@@ -3,11 +3,7 @@
"name": "maxNumericValue", "name": "maxNumericValue",
"expected": 5000, "expected": 5000,
"actual": 6316.213500000003, "actual": 6316.213500000003,
"values": [ "values": [6352.161499999999, 6316.213500000003, 6810.3611],
6352.161499999999,
6316.213500000003,
6810.3611
],
"operator": "<=", "operator": "<=",
"passed": false, "passed": false,
"auditId": "interactive", "auditId": "interactive",
@@ -16,4 +12,4 @@
"auditTitle": "Time to Interactive", "auditTitle": "Time to Interactive",
"auditDocumentationLink": "https://developer.chrome.com/docs/lighthouse/performance/interactive/" "auditDocumentationLink": "https://developer.chrome.com/docs/lighthouse/performance/interactive/"
} }
] ]
+74 -236
View File
@@ -447,9 +447,7 @@
"duration": 19.051999999999985 "duration": 19.051999999999985
} }
], ],
"sortedBy": [ "sortedBy": ["duration"]
"duration"
]
}, },
"guidanceLevel": 1 "guidanceLevel": 1
}, },
@@ -521,9 +519,7 @@
"summary": { "summary": {
"wastedMs": 662.6320000000031 "wastedMs": 662.6320000000031
}, },
"sortedBy": [ "sortedBy": ["total"]
"total"
]
}, },
"guidanceLevel": 1 "guidanceLevel": 1
}, },
@@ -546,9 +542,7 @@
"headings": [], "headings": [],
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"sortedBy": [ "sortedBy": ["wastedMs"]
"wastedMs"
]
}, },
"guidanceLevel": 3 "guidanceLevel": 3
}, },
@@ -1549,9 +1543,7 @@
"rtt": 0.07100000000000001 "rtt": 0.07100000000000001
} }
], ],
"sortedBy": [ "sortedBy": ["rtt"]
"rtt"
]
} }
}, },
"network-server-latency": { "network-server-latency": {
@@ -1584,9 +1576,7 @@
"serverResponseTime": 4.202 "serverResponseTime": 4.202
} }
], ],
"sortedBy": [ "sortedBy": ["serverResponseTime"]
"serverResponseTime"
]
} }
}, },
"main-thread-tasks": { "main-thread-tasks": {
@@ -2068,12 +2058,8 @@
"startTime": 7113.615999999998 "startTime": 7113.615999999998
} }
], ],
"sortedBy": [ "sortedBy": ["duration"],
"duration" "skipSumming": ["startTime"],
],
"skipSumming": [
"startTime"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"urls": [ "urls": [
@@ -2339,9 +2325,7 @@
"headings": [], "headings": [],
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"sortedBy": [ "sortedBy": ["wastedMs"],
"wastedMs"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"initiatorPath": [ "initiatorPath": [
@@ -2818,10 +2802,7 @@
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"impact": "minor", "impact": "minor",
"tags": [ "tags": ["cat.aria", "best-practice"]
"cat.aria",
"best-practice"
]
} }
} }
}, },
@@ -3039,13 +3020,7 @@
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"impact": "critical", "impact": "critical",
"tags": [ "tags": ["cat.aria", "wcag2a", "wcag131", "EN-301-549", "EN-9.1.3.1"]
"cat.aria",
"wcag2a",
"wcag131",
"EN-301-549",
"EN-9.1.3.1"
]
} }
} }
}, },
@@ -3788,11 +3763,7 @@
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"impact": "serious", "impact": "serious",
"tags": [ "tags": ["cat.sensory-and-visual-cues", "wcag22aa", "wcag258"]
"cat.sensory-and-visual-cues",
"wcag22aa",
"wcag258"
]
} }
} }
}, },
@@ -3982,9 +3953,7 @@
"totalBytes": 27874 "totalBytes": 27874
} }
], ],
"sortedBy": [ "sortedBy": ["totalBytes"]
"totalBytes"
]
}, },
"guidanceLevel": 1 "guidanceLevel": 1
}, },
@@ -4053,9 +4022,7 @@
], ],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 54599, "overallSavingsBytes": 54599,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4105,9 +4072,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4203,9 +4168,7 @@
], ],
"overallSavingsMs": 150, "overallSavingsMs": 150,
"overallSavingsBytes": 154604, "overallSavingsBytes": 154604,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4235,9 +4198,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4306,9 +4267,7 @@
], ],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 136225, "overallSavingsBytes": 136225,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4529,9 +4488,7 @@
], ],
"overallSavingsMs": 590, "overallSavingsMs": 590,
"overallSavingsBytes": 173474.94999999998, "overallSavingsBytes": 173474.94999999998,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4562,9 +4519,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4594,9 +4549,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4868,9 +4821,7 @@
], ],
"overallSavingsMs": 1340, "overallSavingsMs": 1340,
"overallSavingsBytes": 358343, "overallSavingsBytes": 358343,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4900,9 +4851,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4932,9 +4881,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -5089,9 +5036,7 @@
], ],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 8390, "overallSavingsBytes": 8390,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -5525,9 +5470,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["uses-long-cache-ttl"]
"uses-long-cache-ttl"
]
}, },
"cls-culprits-insight": { "cls-culprits-insight": {
"id": "cls-culprits-insight", "id": "cls-culprits-insight",
@@ -5736,9 +5679,7 @@
} }
}, },
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["dom-size"]
"dom-size"
]
}, },
"duplicated-javascript-insight": { "duplicated-javascript-insight": {
"id": "duplicated-javascript-insight", "id": "duplicated-javascript-insight",
@@ -5747,9 +5688,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 2, "guidanceLevel": 2,
"replacesAudits": [ "replacesAudits": ["duplicated-javascript"]
"duplicated-javascript"
]
}, },
"font-display-insight": { "font-display-insight": {
"id": "font-display-insight", "id": "font-display-insight",
@@ -5758,9 +5697,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["font-display"]
"font-display"
]
}, },
"forced-reflow-insight": { "forced-reflow-insight": {
"id": "forced-reflow-insight", "id": "forced-reflow-insight",
@@ -6000,9 +5937,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["work-during-interaction"]
"work-during-interaction"
]
}, },
"lcp-discovery-insight": { "lcp-discovery-insight": {
"id": "lcp-discovery-insight", "id": "lcp-discovery-insight",
@@ -6052,10 +5987,7 @@
] ]
}, },
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["prioritize-lcp-image", "lcp-lazy-loaded"]
"prioritize-lcp-image",
"lcp-lazy-loaded"
]
}, },
"lcp-phases-insight": { "lcp-phases-insight": {
"id": "lcp-phases-insight", "id": "lcp-phases-insight",
@@ -6125,9 +6057,7 @@
] ]
}, },
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["largest-contentful-paint-element"]
"largest-contentful-paint-element"
]
}, },
"legacy-javascript-insight": { "legacy-javascript-insight": {
"id": "legacy-javascript-insight", "id": "legacy-javascript-insight",
@@ -6287,9 +6217,7 @@
} }
}, },
"guidanceLevel": 1, "guidanceLevel": 1,
"replacesAudits": [ "replacesAudits": ["critical-request-chains"]
"critical-request-chains"
]
}, },
"render-blocking-insight": { "render-blocking-insight": {
"id": "render-blocking-insight", "id": "render-blocking-insight",
@@ -6298,9 +6226,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["render-blocking-resources"]
"render-blocking-resources"
]
}, },
"third-parties-insight": { "third-parties-insight": {
"id": "third-parties-insight", "id": "third-parties-insight",
@@ -6309,9 +6235,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["third-party-summary"]
"third-party-summary"
]
}, },
"viewport-insight": { "viewport-insight": {
"id": "viewport-insight", "id": "viewport-insight",
@@ -6353,15 +6277,11 @@
] ]
}, },
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["viewport"]
"viewport"
]
} }
}, },
"configSettings": { "configSettings": {
"output": [ "output": ["json"],
"json"
],
"maxWaitForFcp": 30000, "maxWaitForFcp": 30000,
"maxWaitForLoad": 45000, "maxWaitForLoad": 45000,
"pauseAfterFcpMs": 1000, "pauseAfterFcpMs": 1000,
@@ -6414,11 +6334,7 @@
"categories": { "categories": {
"performance": { "performance": {
"title": "Performance", "title": "Performance",
"supportedModes": [ "supportedModes": ["navigation", "timespan", "snapshot"],
"navigation",
"timespan",
"snapshot"
],
"auditRefs": [ "auditRefs": [
{ {
"id": "first-contentful-paint", "id": "first-contentful-paint",
@@ -6800,10 +6716,7 @@
"title": "Accessibility", "title": "Accessibility",
"description": "These checks highlight opportunities to [improve the accessibility of your web app](https://developer.chrome.com/docs/lighthouse/accessibility/). Automatic detection can only detect a subset of issues and does not guarantee the accessibility of your web app, so [manual testing](https://web.dev/articles/how-to-review) is also encouraged.", "description": "These checks highlight opportunities to [improve the accessibility of your web app](https://developer.chrome.com/docs/lighthouse/accessibility/). Automatic detection can only detect a subset of issues and does not guarantee the accessibility of your web app, so [manual testing](https://web.dev/articles/how-to-review) is also encouraged.",
"manualDescription": "These items address areas which an automated testing tool cannot cover. Learn more in our guide on [conducting an accessibility review](https://web.dev/articles/how-to-review).", "manualDescription": "These items address areas which an automated testing tool cannot cover. Learn more in our guide on [conducting an accessibility review](https://web.dev/articles/how-to-review).",
"supportedModes": [ "supportedModes": ["navigation", "snapshot"],
"navigation",
"snapshot"
],
"auditRefs": [ "auditRefs": [
{ {
"id": "accesskeys", "id": "accesskeys",
@@ -7166,11 +7079,7 @@
}, },
"best-practices": { "best-practices": {
"title": "Best Practices", "title": "Best Practices",
"supportedModes": [ "supportedModes": ["navigation", "timespan", "snapshot"],
"navigation",
"timespan",
"snapshot"
],
"auditRefs": [ "auditRefs": [
{ {
"id": "is-on-https", "id": "is-on-https",
@@ -7285,10 +7194,7 @@
"title": "SEO", "title": "SEO",
"description": "These checks ensure that your page is following basic search engine optimization advice. There are many additional factors Lighthouse does not score here that may affect your search ranking, including performance on [Core Web Vitals](https://web.dev/explore/vitals). [Learn more about Google Search Essentials](https://support.google.com/webmasters/answer/35769).", "description": "These checks ensure that your page is following basic search engine optimization advice. There are many additional factors Lighthouse does not score here that may affect your search ranking, including performance on [Core Web Vitals](https://web.dev/explore/vitals). [Learn more about Google Search Essentials](https://support.google.com/webmasters/answer/35769).",
"manualDescription": "Run these additional validators on your site to check additional SEO best practices.", "manualDescription": "Run these additional validators on your site to check additional SEO best practices.",
"supportedModes": [ "supportedModes": ["navigation", "snapshot"],
"navigation",
"snapshot"
],
"auditRefs": [ "auditRefs": [
{ {
"id": "is-crawlable", "id": "is-crawlable",
@@ -7425,9 +7331,7 @@
"entities": [ "entities": [
{ {
"name": "127.0.0.1", "name": "127.0.0.1",
"origins": [ "origins": ["http://127.0.0.1:3010"],
"http://127.0.0.1:3010"
],
"isFirstParty": true, "isFirstParty": true,
"isUnrecognized": true "isUnrecognized": true
} }
@@ -11243,24 +11147,16 @@
"warningHeader": "Warnings: " "warningHeader": "Warnings: "
}, },
"icuMessagePaths": { "icuMessagePaths": {
"core/audits/is-on-https.js | title": [ "core/audits/is-on-https.js | title": ["audits[is-on-https].title"],
"audits[is-on-https].title"
],
"core/audits/is-on-https.js | description": [ "core/audits/is-on-https.js | description": [
"audits[is-on-https].description" "audits[is-on-https].description"
], ],
"core/audits/redirects-http.js | title": [ "core/audits/redirects-http.js | title": ["audits[redirects-http].title"],
"audits[redirects-http].title"
],
"core/audits/redirects-http.js | description": [ "core/audits/redirects-http.js | description": [
"audits[redirects-http].description" "audits[redirects-http].description"
], ],
"core/audits/viewport.js | title": [ "core/audits/viewport.js | title": ["audits.viewport.title"],
"audits.viewport.title" "core/audits/viewport.js | description": ["audits.viewport.description"],
],
"core/audits/viewport.js | description": [
"audits.viewport.description"
],
"core/lib/i18n/i18n.js | firstContentfulPaintMetric": [ "core/lib/i18n/i18n.js | firstContentfulPaintMetric": [
"audits[first-contentful-paint].title" "audits[first-contentful-paint].title"
], ],
@@ -11317,9 +11213,7 @@
"core/audits/metrics/first-meaningful-paint.js | description": [ "core/audits/metrics/first-meaningful-paint.js | description": [
"audits[first-meaningful-paint].description" "audits[first-meaningful-paint].description"
], ],
"core/lib/i18n/i18n.js | speedIndexMetric": [ "core/lib/i18n/i18n.js | speedIndexMetric": ["audits[speed-index].title"],
"audits[speed-index].title"
],
"core/audits/metrics/speed-index.js | description": [ "core/audits/metrics/speed-index.js | description": [
"audits[speed-index].description" "audits[speed-index].description"
], ],
@@ -11417,15 +11311,11 @@
"audits[network-rtt].details.headings[1].label", "audits[network-rtt].details.headings[1].label",
"audits[network-server-latency].details.headings[1].label" "audits[network-server-latency].details.headings[1].label"
], ],
"core/lib/i18n/i18n.js | interactiveMetric": [ "core/lib/i18n/i18n.js | interactiveMetric": ["audits.interactive.title"],
"audits.interactive.title"
],
"core/audits/metrics/interactive.js | description": [ "core/audits/metrics/interactive.js | description": [
"audits.interactive.description" "audits.interactive.description"
], ],
"core/audits/user-timings.js | title": [ "core/audits/user-timings.js | title": ["audits[user-timings].title"],
"audits[user-timings].title"
],
"core/audits/user-timings.js | description": [ "core/audits/user-timings.js | description": [
"audits[user-timings].description" "audits[user-timings].description"
], ],
@@ -11435,9 +11325,7 @@
"core/audits/critical-request-chains.js | description": [ "core/audits/critical-request-chains.js | description": [
"audits[critical-request-chains].description" "audits[critical-request-chains].description"
], ],
"core/audits/redirects.js | title": [ "core/audits/redirects.js | title": ["audits.redirects.title"],
"audits.redirects.title"
],
"core/audits/redirects.js | description": [ "core/audits/redirects.js | description": [
"audits.redirects.description" "audits.redirects.description"
], ],
@@ -11453,9 +11341,7 @@
"core/audits/image-size-responsive.js | description": [ "core/audits/image-size-responsive.js | description": [
"audits[image-size-responsive].description" "audits[image-size-responsive].description"
], ],
"core/audits/deprecations.js | title": [ "core/audits/deprecations.js | title": ["audits.deprecations.title"],
"audits.deprecations.title"
],
"core/audits/deprecations.js | description": [ "core/audits/deprecations.js | description": [
"audits.deprecations.description" "audits.deprecations.description"
], ],
@@ -11474,9 +11360,7 @@
"core/audits/mainthread-work-breakdown.js | columnCategory": [ "core/audits/mainthread-work-breakdown.js | columnCategory": [
"audits[mainthread-work-breakdown].details.headings[0].label" "audits[mainthread-work-breakdown].details.headings[0].label"
], ],
"core/audits/bootup-time.js | title": [ "core/audits/bootup-time.js | title": ["audits[bootup-time].title"],
"audits[bootup-time].title"
],
"core/audits/bootup-time.js | description": [ "core/audits/bootup-time.js | description": [
"audits[bootup-time].description" "audits[bootup-time].description"
], ],
@@ -11495,15 +11379,11 @@
"core/audits/uses-rel-preconnect.js | description": [ "core/audits/uses-rel-preconnect.js | description": [
"audits[uses-rel-preconnect].description" "audits[uses-rel-preconnect].description"
], ],
"core/audits/font-display.js | title": [ "core/audits/font-display.js | title": ["audits[font-display].title"],
"audits[font-display].title"
],
"core/audits/font-display.js | description": [ "core/audits/font-display.js | description": [
"audits[font-display].description" "audits[font-display].description"
], ],
"core/audits/network-rtt.js | title": [ "core/audits/network-rtt.js | title": ["audits[network-rtt].title"],
"audits[network-rtt].title"
],
"core/audits/network-rtt.js | description": [ "core/audits/network-rtt.js | description": [
"audits[network-rtt].description" "audits[network-rtt].description"
], ],
@@ -11606,9 +11486,7 @@
"core/audits/lcp-lazy-loaded.js | description": [ "core/audits/lcp-lazy-loaded.js | description": [
"audits[lcp-lazy-loaded].description" "audits[lcp-lazy-loaded].description"
], ],
"core/audits/layout-shifts.js | title": [ "core/audits/layout-shifts.js | title": ["audits[layout-shifts].title"],
"audits[layout-shifts].title"
],
"core/audits/layout-shifts.js | description": [ "core/audits/layout-shifts.js | description": [
"audits[layout-shifts].description" "audits[layout-shifts].description"
], ],
@@ -11623,9 +11501,7 @@
"core/audits/layout-shifts.js | columnScore": [ "core/audits/layout-shifts.js | columnScore": [
"audits[layout-shifts].details.headings[1].label" "audits[layout-shifts].details.headings[1].label"
], ],
"core/audits/long-tasks.js | title": [ "core/audits/long-tasks.js | title": ["audits[long-tasks].title"],
"audits[long-tasks].title"
],
"core/audits/long-tasks.js | description": [ "core/audits/long-tasks.js | description": [
"audits[long-tasks].description" "audits[long-tasks].description"
], ],
@@ -11675,12 +11551,8 @@
"core/audits/prioritize-lcp-image.js | description": [ "core/audits/prioritize-lcp-image.js | description": [
"audits[prioritize-lcp-image].description" "audits[prioritize-lcp-image].description"
], ],
"core/audits/csp-xss.js | title": [ "core/audits/csp-xss.js | title": ["audits[csp-xss].title"],
"audits[csp-xss].title" "core/audits/csp-xss.js | description": ["audits[csp-xss].description"],
],
"core/audits/csp-xss.js | description": [
"audits[csp-xss].description"
],
"core/lib/i18n/i18n.js | columnDescription": [ "core/lib/i18n/i18n.js | columnDescription": [
"audits[csp-xss].details.headings[0].label", "audits[csp-xss].details.headings[0].label",
"audits[has-hsts].details.headings[0].label", "audits[has-hsts].details.headings[0].label",
@@ -11702,12 +11574,8 @@
"core/audits/csp-xss.js | noCsp": [ "core/audits/csp-xss.js | noCsp": [
"audits[csp-xss].details.items[0].description" "audits[csp-xss].details.items[0].description"
], ],
"core/audits/has-hsts.js | title": [ "core/audits/has-hsts.js | title": ["audits[has-hsts].title"],
"audits[has-hsts].title" "core/audits/has-hsts.js | description": ["audits[has-hsts].description"],
],
"core/audits/has-hsts.js | description": [
"audits[has-hsts].description"
],
"core/audits/has-hsts.js | columnDirective": [ "core/audits/has-hsts.js | columnDirective": [
"audits[has-hsts].details.headings[1].label" "audits[has-hsts].details.headings[1].label"
], ],
@@ -11895,9 +11763,7 @@
"core/audits/accessibility/button-name.js | description": [ "core/audits/accessibility/button-name.js | description": [
"audits[button-name].description" "audits[button-name].description"
], ],
"core/audits/accessibility/bypass.js | title": [ "core/audits/accessibility/bypass.js | title": ["audits.bypass.title"],
"audits.bypass.title"
],
"core/audits/accessibility/bypass.js | description": [ "core/audits/accessibility/bypass.js | description": [
"audits.bypass.description" "audits.bypass.description"
], ],
@@ -11913,9 +11779,7 @@
"core/audits/accessibility/definition-list.js | description": [ "core/audits/accessibility/definition-list.js | description": [
"audits[definition-list].description" "audits[definition-list].description"
], ],
"core/audits/accessibility/dlitem.js | title": [ "core/audits/accessibility/dlitem.js | title": ["audits.dlitem.title"],
"audits.dlitem.title"
],
"core/audits/accessibility/dlitem.js | description": [ "core/audits/accessibility/dlitem.js | description": [
"audits.dlitem.description" "audits.dlitem.description"
], ],
@@ -12009,9 +11873,7 @@
"core/audits/accessibility/label-content-name-mismatch.js | description": [ "core/audits/accessibility/label-content-name-mismatch.js | description": [
"audits[label-content-name-mismatch].description" "audits[label-content-name-mismatch].description"
], ],
"core/audits/accessibility/label.js | title": [ "core/audits/accessibility/label.js | title": ["audits.label.title"],
"audits.label.title"
],
"core/audits/accessibility/label.js | description": [ "core/audits/accessibility/label.js | description": [
"audits.label.description" "audits.label.description"
], ],
@@ -12033,9 +11895,7 @@
"core/audits/accessibility/link-in-text-block.js | description": [ "core/audits/accessibility/link-in-text-block.js | description": [
"audits[link-in-text-block].description" "audits[link-in-text-block].description"
], ],
"core/audits/accessibility/list.js | title": [ "core/audits/accessibility/list.js | title": ["audits.list.title"],
"audits.list.title"
],
"core/audits/accessibility/list.js | description": [ "core/audits/accessibility/list.js | description": [
"audits.list.description" "audits.list.description"
], ],
@@ -12300,21 +12160,15 @@
"core/audits/byte-efficiency/legacy-javascript.js | description": [ "core/audits/byte-efficiency/legacy-javascript.js | description": [
"audits[legacy-javascript].description" "audits[legacy-javascript].description"
], ],
"core/audits/dobetterweb/doctype.js | title": [ "core/audits/dobetterweb/doctype.js | title": ["audits.doctype.title"],
"audits.doctype.title"
],
"core/audits/dobetterweb/doctype.js | description": [ "core/audits/dobetterweb/doctype.js | description": [
"audits.doctype.description" "audits.doctype.description"
], ],
"core/audits/dobetterweb/charset.js | title": [ "core/audits/dobetterweb/charset.js | title": ["audits.charset.title"],
"audits.charset.title"
],
"core/audits/dobetterweb/charset.js | description": [ "core/audits/dobetterweb/charset.js | description": [
"audits.charset.description" "audits.charset.description"
], ],
"core/audits/dobetterweb/dom-size.js | title": [ "core/audits/dobetterweb/dom-size.js | title": ["audits[dom-size].title"],
"audits[dom-size].title"
],
"core/audits/dobetterweb/dom-size.js | description": [ "core/audits/dobetterweb/dom-size.js | description": [
"audits[dom-size].description" "audits[dom-size].description"
], ],
@@ -12401,9 +12255,7 @@
"core/audits/seo/http-status-code.js | description": [ "core/audits/seo/http-status-code.js | description": [
"audits[http-status-code].description" "audits[http-status-code].description"
], ],
"core/audits/seo/font-size.js | title": [ "core/audits/seo/font-size.js | title": ["audits[font-size].title"],
"audits[font-size].title"
],
"core/audits/seo/font-size.js | description": [ "core/audits/seo/font-size.js | description": [
"audits[font-size].description" "audits[font-size].description"
], ],
@@ -12430,9 +12282,7 @@
"core/audits/seo/font-size.js | legibleText": [ "core/audits/seo/font-size.js | legibleText": [
"audits[font-size].details.items[1].source.value" "audits[font-size].details.items[1].source.value"
], ],
"core/audits/seo/link-text.js | title": [ "core/audits/seo/link-text.js | title": ["audits[link-text].title"],
"audits[link-text].title"
],
"core/audits/seo/link-text.js | description": [ "core/audits/seo/link-text.js | description": [
"audits[link-text].description" "audits[link-text].description"
], ],
@@ -12442,27 +12292,19 @@
"core/audits/seo/crawlable-anchors.js | description": [ "core/audits/seo/crawlable-anchors.js | description": [
"audits[crawlable-anchors].description" "audits[crawlable-anchors].description"
], ],
"core/audits/seo/is-crawlable.js | title": [ "core/audits/seo/is-crawlable.js | title": ["audits[is-crawlable].title"],
"audits[is-crawlable].title"
],
"core/audits/seo/is-crawlable.js | description": [ "core/audits/seo/is-crawlable.js | description": [
"audits[is-crawlable].description" "audits[is-crawlable].description"
], ],
"core/audits/seo/robots-txt.js | title": [ "core/audits/seo/robots-txt.js | title": ["audits[robots-txt].title"],
"audits[robots-txt].title"
],
"core/audits/seo/robots-txt.js | description": [ "core/audits/seo/robots-txt.js | description": [
"audits[robots-txt].description" "audits[robots-txt].description"
], ],
"core/audits/seo/hreflang.js | title": [ "core/audits/seo/hreflang.js | title": ["audits.hreflang.title"],
"audits.hreflang.title"
],
"core/audits/seo/hreflang.js | description": [ "core/audits/seo/hreflang.js | description": [
"audits.hreflang.description" "audits.hreflang.description"
], ],
"core/audits/seo/canonical.js | title": [ "core/audits/seo/canonical.js | title": ["audits.canonical.title"],
"audits.canonical.title"
],
"core/audits/seo/canonical.js | description": [ "core/audits/seo/canonical.js | description": [
"audits.canonical.description" "audits.canonical.description"
], ],
@@ -12472,12 +12314,8 @@
"core/audits/seo/manual/structured-data.js | description": [ "core/audits/seo/manual/structured-data.js | description": [
"audits[structured-data].description" "audits[structured-data].description"
], ],
"core/audits/bf-cache.js | failureTitle": [ "core/audits/bf-cache.js | failureTitle": ["audits[bf-cache].title"],
"audits[bf-cache].title" "core/audits/bf-cache.js | description": ["audits[bf-cache].description"],
],
"core/audits/bf-cache.js | description": [
"audits[bf-cache].description"
],
"core/audits/bf-cache.js | displayValue": [ "core/audits/bf-cache.js | displayValue": [
{ {
"values": { "values": {
+74 -236
View File
@@ -451,9 +451,7 @@
"duration": 13.971999999999985 "duration": 13.971999999999985
} }
], ],
"sortedBy": [ "sortedBy": ["duration"]
"duration"
]
}, },
"guidanceLevel": 1 "guidanceLevel": 1
}, },
@@ -525,9 +523,7 @@
"summary": { "summary": {
"wastedMs": 687.340000000004 "wastedMs": 687.340000000004
}, },
"sortedBy": [ "sortedBy": ["total"]
"total"
]
}, },
"guidanceLevel": 1 "guidanceLevel": 1
}, },
@@ -550,9 +546,7 @@
"headings": [], "headings": [],
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"sortedBy": [ "sortedBy": ["wastedMs"]
"wastedMs"
]
}, },
"guidanceLevel": 3 "guidanceLevel": 3
}, },
@@ -1519,9 +1513,7 @@
"rtt": 0.074 "rtt": 0.074
} }
], ],
"sortedBy": [ "sortedBy": ["rtt"]
"rtt"
]
} }
}, },
"network-server-latency": { "network-server-latency": {
@@ -1554,9 +1546,7 @@
"serverResponseTime": 2.7350000000000003 "serverResponseTime": 2.7350000000000003
} }
], ],
"sortedBy": [ "sortedBy": ["serverResponseTime"]
"serverResponseTime"
]
} }
}, },
"main-thread-tasks": { "main-thread-tasks": {
@@ -2006,12 +1996,8 @@
"startTime": 7075.675000000002 "startTime": 7075.675000000002
} }
], ],
"sortedBy": [ "sortedBy": ["duration"],
"duration" "skipSumming": ["startTime"],
],
"skipSumming": [
"startTime"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"urls": [ "urls": [
@@ -2352,9 +2338,7 @@
"headings": [], "headings": [],
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"sortedBy": [ "sortedBy": ["wastedMs"],
"wastedMs"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"initiatorPath": [ "initiatorPath": [
@@ -2831,10 +2815,7 @@
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"impact": "minor", "impact": "minor",
"tags": [ "tags": ["cat.aria", "best-practice"]
"cat.aria",
"best-practice"
]
} }
} }
}, },
@@ -3052,13 +3033,7 @@
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"impact": "critical", "impact": "critical",
"tags": [ "tags": ["cat.aria", "wcag2a", "wcag131", "EN-301-549", "EN-9.1.3.1"]
"cat.aria",
"wcag2a",
"wcag131",
"EN-301-549",
"EN-9.1.3.1"
]
} }
} }
}, },
@@ -3801,11 +3776,7 @@
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"impact": "serious", "impact": "serious",
"tags": [ "tags": ["cat.sensory-and-visual-cues", "wcag22aa", "wcag258"]
"cat.sensory-and-visual-cues",
"wcag22aa",
"wcag258"
]
} }
} }
}, },
@@ -3995,9 +3966,7 @@
"totalBytes": 27874 "totalBytes": 27874
} }
], ],
"sortedBy": [ "sortedBy": ["totalBytes"]
"totalBytes"
]
}, },
"guidanceLevel": 1 "guidanceLevel": 1
}, },
@@ -4066,9 +4035,7 @@
], ],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 54599, "overallSavingsBytes": 54599,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4118,9 +4085,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4216,9 +4181,7 @@
], ],
"overallSavingsMs": 450, "overallSavingsMs": 450,
"overallSavingsBytes": 154604, "overallSavingsBytes": 154604,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4248,9 +4211,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4319,9 +4280,7 @@
], ],
"overallSavingsMs": 300, "overallSavingsMs": 300,
"overallSavingsBytes": 136130, "overallSavingsBytes": 136130,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4542,9 +4501,7 @@
], ],
"overallSavingsMs": 300, "overallSavingsMs": 300,
"overallSavingsBytes": 173474.94999999998, "overallSavingsBytes": 173474.94999999998,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4575,9 +4532,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4607,9 +4562,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4881,9 +4834,7 @@
], ],
"overallSavingsMs": 900, "overallSavingsMs": 900,
"overallSavingsBytes": 358343, "overallSavingsBytes": 358343,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4913,9 +4864,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4945,9 +4894,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -5102,9 +5049,7 @@
], ],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 8390, "overallSavingsBytes": 8390,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -5538,9 +5483,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["uses-long-cache-ttl"]
"uses-long-cache-ttl"
]
}, },
"cls-culprits-insight": { "cls-culprits-insight": {
"id": "cls-culprits-insight", "id": "cls-culprits-insight",
@@ -5697,9 +5640,7 @@
} }
}, },
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["dom-size"]
"dom-size"
]
}, },
"duplicated-javascript-insight": { "duplicated-javascript-insight": {
"id": "duplicated-javascript-insight", "id": "duplicated-javascript-insight",
@@ -5708,9 +5649,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 2, "guidanceLevel": 2,
"replacesAudits": [ "replacesAudits": ["duplicated-javascript"]
"duplicated-javascript"
]
}, },
"font-display-insight": { "font-display-insight": {
"id": "font-display-insight", "id": "font-display-insight",
@@ -5719,9 +5658,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["font-display"]
"font-display"
]
}, },
"forced-reflow-insight": { "forced-reflow-insight": {
"id": "forced-reflow-insight", "id": "forced-reflow-insight",
@@ -5961,9 +5898,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["work-during-interaction"]
"work-during-interaction"
]
}, },
"lcp-discovery-insight": { "lcp-discovery-insight": {
"id": "lcp-discovery-insight", "id": "lcp-discovery-insight",
@@ -6013,10 +5948,7 @@
] ]
}, },
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["prioritize-lcp-image", "lcp-lazy-loaded"]
"prioritize-lcp-image",
"lcp-lazy-loaded"
]
}, },
"lcp-phases-insight": { "lcp-phases-insight": {
"id": "lcp-phases-insight", "id": "lcp-phases-insight",
@@ -6086,9 +6018,7 @@
] ]
}, },
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["largest-contentful-paint-element"]
"largest-contentful-paint-element"
]
}, },
"legacy-javascript-insight": { "legacy-javascript-insight": {
"id": "legacy-javascript-insight", "id": "legacy-javascript-insight",
@@ -6131,9 +6061,7 @@
} }
}, },
"guidanceLevel": 1, "guidanceLevel": 1,
"replacesAudits": [ "replacesAudits": ["critical-request-chains"]
"critical-request-chains"
]
}, },
"render-blocking-insight": { "render-blocking-insight": {
"id": "render-blocking-insight", "id": "render-blocking-insight",
@@ -6142,9 +6070,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["render-blocking-resources"]
"render-blocking-resources"
]
}, },
"third-parties-insight": { "third-parties-insight": {
"id": "third-parties-insight", "id": "third-parties-insight",
@@ -6153,9 +6079,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["third-party-summary"]
"third-party-summary"
]
}, },
"viewport-insight": { "viewport-insight": {
"id": "viewport-insight", "id": "viewport-insight",
@@ -6197,15 +6121,11 @@
] ]
}, },
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["viewport"]
"viewport"
]
} }
}, },
"configSettings": { "configSettings": {
"output": [ "output": ["json"],
"json"
],
"maxWaitForFcp": 30000, "maxWaitForFcp": 30000,
"maxWaitForLoad": 45000, "maxWaitForLoad": 45000,
"pauseAfterFcpMs": 1000, "pauseAfterFcpMs": 1000,
@@ -6258,11 +6178,7 @@
"categories": { "categories": {
"performance": { "performance": {
"title": "Performance", "title": "Performance",
"supportedModes": [ "supportedModes": ["navigation", "timespan", "snapshot"],
"navigation",
"timespan",
"snapshot"
],
"auditRefs": [ "auditRefs": [
{ {
"id": "first-contentful-paint", "id": "first-contentful-paint",
@@ -6644,10 +6560,7 @@
"title": "Accessibility", "title": "Accessibility",
"description": "These checks highlight opportunities to [improve the accessibility of your web app](https://developer.chrome.com/docs/lighthouse/accessibility/). Automatic detection can only detect a subset of issues and does not guarantee the accessibility of your web app, so [manual testing](https://web.dev/articles/how-to-review) is also encouraged.", "description": "These checks highlight opportunities to [improve the accessibility of your web app](https://developer.chrome.com/docs/lighthouse/accessibility/). Automatic detection can only detect a subset of issues and does not guarantee the accessibility of your web app, so [manual testing](https://web.dev/articles/how-to-review) is also encouraged.",
"manualDescription": "These items address areas which an automated testing tool cannot cover. Learn more in our guide on [conducting an accessibility review](https://web.dev/articles/how-to-review).", "manualDescription": "These items address areas which an automated testing tool cannot cover. Learn more in our guide on [conducting an accessibility review](https://web.dev/articles/how-to-review).",
"supportedModes": [ "supportedModes": ["navigation", "snapshot"],
"navigation",
"snapshot"
],
"auditRefs": [ "auditRefs": [
{ {
"id": "accesskeys", "id": "accesskeys",
@@ -7010,11 +6923,7 @@
}, },
"best-practices": { "best-practices": {
"title": "Best Practices", "title": "Best Practices",
"supportedModes": [ "supportedModes": ["navigation", "timespan", "snapshot"],
"navigation",
"timespan",
"snapshot"
],
"auditRefs": [ "auditRefs": [
{ {
"id": "is-on-https", "id": "is-on-https",
@@ -7129,10 +7038,7 @@
"title": "SEO", "title": "SEO",
"description": "These checks ensure that your page is following basic search engine optimization advice. There are many additional factors Lighthouse does not score here that may affect your search ranking, including performance on [Core Web Vitals](https://web.dev/explore/vitals). [Learn more about Google Search Essentials](https://support.google.com/webmasters/answer/35769).", "description": "These checks ensure that your page is following basic search engine optimization advice. There are many additional factors Lighthouse does not score here that may affect your search ranking, including performance on [Core Web Vitals](https://web.dev/explore/vitals). [Learn more about Google Search Essentials](https://support.google.com/webmasters/answer/35769).",
"manualDescription": "Run these additional validators on your site to check additional SEO best practices.", "manualDescription": "Run these additional validators on your site to check additional SEO best practices.",
"supportedModes": [ "supportedModes": ["navigation", "snapshot"],
"navigation",
"snapshot"
],
"auditRefs": [ "auditRefs": [
{ {
"id": "is-crawlable", "id": "is-crawlable",
@@ -7269,9 +7175,7 @@
"entities": [ "entities": [
{ {
"name": "127.0.0.1", "name": "127.0.0.1",
"origins": [ "origins": ["http://127.0.0.1:3010"],
"http://127.0.0.1:3010"
],
"isFirstParty": true, "isFirstParty": true,
"isUnrecognized": true "isUnrecognized": true
} }
@@ -11069,24 +10973,16 @@
"warningHeader": "Warnings: " "warningHeader": "Warnings: "
}, },
"icuMessagePaths": { "icuMessagePaths": {
"core/audits/is-on-https.js | title": [ "core/audits/is-on-https.js | title": ["audits[is-on-https].title"],
"audits[is-on-https].title"
],
"core/audits/is-on-https.js | description": [ "core/audits/is-on-https.js | description": [
"audits[is-on-https].description" "audits[is-on-https].description"
], ],
"core/audits/redirects-http.js | title": [ "core/audits/redirects-http.js | title": ["audits[redirects-http].title"],
"audits[redirects-http].title"
],
"core/audits/redirects-http.js | description": [ "core/audits/redirects-http.js | description": [
"audits[redirects-http].description" "audits[redirects-http].description"
], ],
"core/audits/viewport.js | title": [ "core/audits/viewport.js | title": ["audits.viewport.title"],
"audits.viewport.title" "core/audits/viewport.js | description": ["audits.viewport.description"],
],
"core/audits/viewport.js | description": [
"audits.viewport.description"
],
"core/lib/i18n/i18n.js | firstContentfulPaintMetric": [ "core/lib/i18n/i18n.js | firstContentfulPaintMetric": [
"audits[first-contentful-paint].title" "audits[first-contentful-paint].title"
], ],
@@ -11143,9 +11039,7 @@
"core/audits/metrics/first-meaningful-paint.js | description": [ "core/audits/metrics/first-meaningful-paint.js | description": [
"audits[first-meaningful-paint].description" "audits[first-meaningful-paint].description"
], ],
"core/lib/i18n/i18n.js | speedIndexMetric": [ "core/lib/i18n/i18n.js | speedIndexMetric": ["audits[speed-index].title"],
"audits[speed-index].title"
],
"core/audits/metrics/speed-index.js | description": [ "core/audits/metrics/speed-index.js | description": [
"audits[speed-index].description" "audits[speed-index].description"
], ],
@@ -11242,15 +11136,11 @@
"audits[network-rtt].details.headings[1].label", "audits[network-rtt].details.headings[1].label",
"audits[network-server-latency].details.headings[1].label" "audits[network-server-latency].details.headings[1].label"
], ],
"core/lib/i18n/i18n.js | interactiveMetric": [ "core/lib/i18n/i18n.js | interactiveMetric": ["audits.interactive.title"],
"audits.interactive.title"
],
"core/audits/metrics/interactive.js | description": [ "core/audits/metrics/interactive.js | description": [
"audits.interactive.description" "audits.interactive.description"
], ],
"core/audits/user-timings.js | title": [ "core/audits/user-timings.js | title": ["audits[user-timings].title"],
"audits[user-timings].title"
],
"core/audits/user-timings.js | description": [ "core/audits/user-timings.js | description": [
"audits[user-timings].description" "audits[user-timings].description"
], ],
@@ -11260,9 +11150,7 @@
"core/audits/critical-request-chains.js | description": [ "core/audits/critical-request-chains.js | description": [
"audits[critical-request-chains].description" "audits[critical-request-chains].description"
], ],
"core/audits/redirects.js | title": [ "core/audits/redirects.js | title": ["audits.redirects.title"],
"audits.redirects.title"
],
"core/audits/redirects.js | description": [ "core/audits/redirects.js | description": [
"audits.redirects.description" "audits.redirects.description"
], ],
@@ -11278,9 +11166,7 @@
"core/audits/image-size-responsive.js | description": [ "core/audits/image-size-responsive.js | description": [
"audits[image-size-responsive].description" "audits[image-size-responsive].description"
], ],
"core/audits/deprecations.js | title": [ "core/audits/deprecations.js | title": ["audits.deprecations.title"],
"audits.deprecations.title"
],
"core/audits/deprecations.js | description": [ "core/audits/deprecations.js | description": [
"audits.deprecations.description" "audits.deprecations.description"
], ],
@@ -11299,9 +11185,7 @@
"core/audits/mainthread-work-breakdown.js | columnCategory": [ "core/audits/mainthread-work-breakdown.js | columnCategory": [
"audits[mainthread-work-breakdown].details.headings[0].label" "audits[mainthread-work-breakdown].details.headings[0].label"
], ],
"core/audits/bootup-time.js | title": [ "core/audits/bootup-time.js | title": ["audits[bootup-time].title"],
"audits[bootup-time].title"
],
"core/audits/bootup-time.js | description": [ "core/audits/bootup-time.js | description": [
"audits[bootup-time].description" "audits[bootup-time].description"
], ],
@@ -11320,15 +11204,11 @@
"core/audits/uses-rel-preconnect.js | description": [ "core/audits/uses-rel-preconnect.js | description": [
"audits[uses-rel-preconnect].description" "audits[uses-rel-preconnect].description"
], ],
"core/audits/font-display.js | title": [ "core/audits/font-display.js | title": ["audits[font-display].title"],
"audits[font-display].title"
],
"core/audits/font-display.js | description": [ "core/audits/font-display.js | description": [
"audits[font-display].description" "audits[font-display].description"
], ],
"core/audits/network-rtt.js | title": [ "core/audits/network-rtt.js | title": ["audits[network-rtt].title"],
"audits[network-rtt].title"
],
"core/audits/network-rtt.js | description": [ "core/audits/network-rtt.js | description": [
"audits[network-rtt].description" "audits[network-rtt].description"
], ],
@@ -11429,15 +11309,11 @@
"core/audits/lcp-lazy-loaded.js | description": [ "core/audits/lcp-lazy-loaded.js | description": [
"audits[lcp-lazy-loaded].description" "audits[lcp-lazy-loaded].description"
], ],
"core/audits/layout-shifts.js | title": [ "core/audits/layout-shifts.js | title": ["audits[layout-shifts].title"],
"audits[layout-shifts].title"
],
"core/audits/layout-shifts.js | description": [ "core/audits/layout-shifts.js | description": [
"audits[layout-shifts].description" "audits[layout-shifts].description"
], ],
"core/audits/long-tasks.js | title": [ "core/audits/long-tasks.js | title": ["audits[long-tasks].title"],
"audits[long-tasks].title"
],
"core/audits/long-tasks.js | description": [ "core/audits/long-tasks.js | description": [
"audits[long-tasks].description" "audits[long-tasks].description"
], ],
@@ -11514,12 +11390,8 @@
"core/audits/prioritize-lcp-image.js | description": [ "core/audits/prioritize-lcp-image.js | description": [
"audits[prioritize-lcp-image].description" "audits[prioritize-lcp-image].description"
], ],
"core/audits/csp-xss.js | title": [ "core/audits/csp-xss.js | title": ["audits[csp-xss].title"],
"audits[csp-xss].title" "core/audits/csp-xss.js | description": ["audits[csp-xss].description"],
],
"core/audits/csp-xss.js | description": [
"audits[csp-xss].description"
],
"core/lib/i18n/i18n.js | columnDescription": [ "core/lib/i18n/i18n.js | columnDescription": [
"audits[csp-xss].details.headings[0].label", "audits[csp-xss].details.headings[0].label",
"audits[has-hsts].details.headings[0].label", "audits[has-hsts].details.headings[0].label",
@@ -11541,12 +11413,8 @@
"core/audits/csp-xss.js | noCsp": [ "core/audits/csp-xss.js | noCsp": [
"audits[csp-xss].details.items[0].description" "audits[csp-xss].details.items[0].description"
], ],
"core/audits/has-hsts.js | title": [ "core/audits/has-hsts.js | title": ["audits[has-hsts].title"],
"audits[has-hsts].title" "core/audits/has-hsts.js | description": ["audits[has-hsts].description"],
],
"core/audits/has-hsts.js | description": [
"audits[has-hsts].description"
],
"core/audits/has-hsts.js | columnDirective": [ "core/audits/has-hsts.js | columnDirective": [
"audits[has-hsts].details.headings[1].label" "audits[has-hsts].details.headings[1].label"
], ],
@@ -11734,9 +11602,7 @@
"core/audits/accessibility/button-name.js | description": [ "core/audits/accessibility/button-name.js | description": [
"audits[button-name].description" "audits[button-name].description"
], ],
"core/audits/accessibility/bypass.js | title": [ "core/audits/accessibility/bypass.js | title": ["audits.bypass.title"],
"audits.bypass.title"
],
"core/audits/accessibility/bypass.js | description": [ "core/audits/accessibility/bypass.js | description": [
"audits.bypass.description" "audits.bypass.description"
], ],
@@ -11752,9 +11618,7 @@
"core/audits/accessibility/definition-list.js | description": [ "core/audits/accessibility/definition-list.js | description": [
"audits[definition-list].description" "audits[definition-list].description"
], ],
"core/audits/accessibility/dlitem.js | title": [ "core/audits/accessibility/dlitem.js | title": ["audits.dlitem.title"],
"audits.dlitem.title"
],
"core/audits/accessibility/dlitem.js | description": [ "core/audits/accessibility/dlitem.js | description": [
"audits.dlitem.description" "audits.dlitem.description"
], ],
@@ -11848,9 +11712,7 @@
"core/audits/accessibility/label-content-name-mismatch.js | description": [ "core/audits/accessibility/label-content-name-mismatch.js | description": [
"audits[label-content-name-mismatch].description" "audits[label-content-name-mismatch].description"
], ],
"core/audits/accessibility/label.js | title": [ "core/audits/accessibility/label.js | title": ["audits.label.title"],
"audits.label.title"
],
"core/audits/accessibility/label.js | description": [ "core/audits/accessibility/label.js | description": [
"audits.label.description" "audits.label.description"
], ],
@@ -11872,9 +11734,7 @@
"core/audits/accessibility/link-in-text-block.js | description": [ "core/audits/accessibility/link-in-text-block.js | description": [
"audits[link-in-text-block].description" "audits[link-in-text-block].description"
], ],
"core/audits/accessibility/list.js | title": [ "core/audits/accessibility/list.js | title": ["audits.list.title"],
"audits.list.title"
],
"core/audits/accessibility/list.js | description": [ "core/audits/accessibility/list.js | description": [
"audits.list.description" "audits.list.description"
], ],
@@ -12133,21 +11993,15 @@
"core/audits/byte-efficiency/legacy-javascript.js | description": [ "core/audits/byte-efficiency/legacy-javascript.js | description": [
"audits[legacy-javascript].description" "audits[legacy-javascript].description"
], ],
"core/audits/dobetterweb/doctype.js | title": [ "core/audits/dobetterweb/doctype.js | title": ["audits.doctype.title"],
"audits.doctype.title"
],
"core/audits/dobetterweb/doctype.js | description": [ "core/audits/dobetterweb/doctype.js | description": [
"audits.doctype.description" "audits.doctype.description"
], ],
"core/audits/dobetterweb/charset.js | title": [ "core/audits/dobetterweb/charset.js | title": ["audits.charset.title"],
"audits.charset.title"
],
"core/audits/dobetterweb/charset.js | description": [ "core/audits/dobetterweb/charset.js | description": [
"audits.charset.description" "audits.charset.description"
], ],
"core/audits/dobetterweb/dom-size.js | title": [ "core/audits/dobetterweb/dom-size.js | title": ["audits[dom-size].title"],
"audits[dom-size].title"
],
"core/audits/dobetterweb/dom-size.js | description": [ "core/audits/dobetterweb/dom-size.js | description": [
"audits[dom-size].description" "audits[dom-size].description"
], ],
@@ -12234,9 +12088,7 @@
"core/audits/seo/http-status-code.js | description": [ "core/audits/seo/http-status-code.js | description": [
"audits[http-status-code].description" "audits[http-status-code].description"
], ],
"core/audits/seo/font-size.js | title": [ "core/audits/seo/font-size.js | title": ["audits[font-size].title"],
"audits[font-size].title"
],
"core/audits/seo/font-size.js | description": [ "core/audits/seo/font-size.js | description": [
"audits[font-size].description" "audits[font-size].description"
], ],
@@ -12263,9 +12115,7 @@
"core/audits/seo/font-size.js | legibleText": [ "core/audits/seo/font-size.js | legibleText": [
"audits[font-size].details.items[1].source.value" "audits[font-size].details.items[1].source.value"
], ],
"core/audits/seo/link-text.js | title": [ "core/audits/seo/link-text.js | title": ["audits[link-text].title"],
"audits[link-text].title"
],
"core/audits/seo/link-text.js | description": [ "core/audits/seo/link-text.js | description": [
"audits[link-text].description" "audits[link-text].description"
], ],
@@ -12275,27 +12125,19 @@
"core/audits/seo/crawlable-anchors.js | description": [ "core/audits/seo/crawlable-anchors.js | description": [
"audits[crawlable-anchors].description" "audits[crawlable-anchors].description"
], ],
"core/audits/seo/is-crawlable.js | title": [ "core/audits/seo/is-crawlable.js | title": ["audits[is-crawlable].title"],
"audits[is-crawlable].title"
],
"core/audits/seo/is-crawlable.js | description": [ "core/audits/seo/is-crawlable.js | description": [
"audits[is-crawlable].description" "audits[is-crawlable].description"
], ],
"core/audits/seo/robots-txt.js | title": [ "core/audits/seo/robots-txt.js | title": ["audits[robots-txt].title"],
"audits[robots-txt].title"
],
"core/audits/seo/robots-txt.js | description": [ "core/audits/seo/robots-txt.js | description": [
"audits[robots-txt].description" "audits[robots-txt].description"
], ],
"core/audits/seo/hreflang.js | title": [ "core/audits/seo/hreflang.js | title": ["audits.hreflang.title"],
"audits.hreflang.title"
],
"core/audits/seo/hreflang.js | description": [ "core/audits/seo/hreflang.js | description": [
"audits.hreflang.description" "audits.hreflang.description"
], ],
"core/audits/seo/canonical.js | title": [ "core/audits/seo/canonical.js | title": ["audits.canonical.title"],
"audits.canonical.title"
],
"core/audits/seo/canonical.js | description": [ "core/audits/seo/canonical.js | description": [
"audits.canonical.description" "audits.canonical.description"
], ],
@@ -12305,12 +12147,8 @@
"core/audits/seo/manual/structured-data.js | description": [ "core/audits/seo/manual/structured-data.js | description": [
"audits[structured-data].description" "audits[structured-data].description"
], ],
"core/audits/bf-cache.js | failureTitle": [ "core/audits/bf-cache.js | failureTitle": ["audits[bf-cache].title"],
"audits[bf-cache].title" "core/audits/bf-cache.js | description": ["audits[bf-cache].description"],
],
"core/audits/bf-cache.js | description": [
"audits[bf-cache].description"
],
"core/audits/bf-cache.js | displayValue": [ "core/audits/bf-cache.js | displayValue": [
{ {
"values": { "values": {
+74 -236
View File
@@ -446,9 +446,7 @@
"duration": 15.039999999999992 "duration": 15.039999999999992
} }
], ],
"sortedBy": [ "sortedBy": ["duration"]
"duration"
]
}, },
"guidanceLevel": 1 "guidanceLevel": 1
}, },
@@ -520,9 +518,7 @@
"summary": { "summary": {
"wastedMs": 672.7240000000036 "wastedMs": 672.7240000000036
}, },
"sortedBy": [ "sortedBy": ["total"]
"total"
]
}, },
"guidanceLevel": 1 "guidanceLevel": 1
}, },
@@ -545,9 +541,7 @@
"headings": [], "headings": [],
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"sortedBy": [ "sortedBy": ["wastedMs"]
"wastedMs"
]
}, },
"guidanceLevel": 3 "guidanceLevel": 3
}, },
@@ -1514,9 +1508,7 @@
"rtt": 0.07100000000000001 "rtt": 0.07100000000000001
} }
], ],
"sortedBy": [ "sortedBy": ["rtt"]
"rtt"
]
} }
}, },
"network-server-latency": { "network-server-latency": {
@@ -1549,9 +1541,7 @@
"serverResponseTime": 2.771 "serverResponseTime": 2.771
} }
], ],
"sortedBy": [ "sortedBy": ["serverResponseTime"]
"serverResponseTime"
]
} }
}, },
"main-thread-tasks": { "main-thread-tasks": {
@@ -1997,12 +1987,8 @@
"startTime": 7976.855 "startTime": 7976.855
} }
], ],
"sortedBy": [ "sortedBy": ["duration"],
"duration" "skipSumming": ["startTime"],
],
"skipSumming": [
"startTime"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"urls": [ "urls": [
@@ -2343,9 +2329,7 @@
"headings": [], "headings": [],
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"sortedBy": [ "sortedBy": ["wastedMs"],
"wastedMs"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"initiatorPath": [ "initiatorPath": [
@@ -2822,10 +2806,7 @@
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"impact": "minor", "impact": "minor",
"tags": [ "tags": ["cat.aria", "best-practice"]
"cat.aria",
"best-practice"
]
} }
} }
}, },
@@ -3043,13 +3024,7 @@
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"impact": "critical", "impact": "critical",
"tags": [ "tags": ["cat.aria", "wcag2a", "wcag131", "EN-301-549", "EN-9.1.3.1"]
"cat.aria",
"wcag2a",
"wcag131",
"EN-301-549",
"EN-9.1.3.1"
]
} }
} }
}, },
@@ -3792,11 +3767,7 @@
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"impact": "serious", "impact": "serious",
"tags": [ "tags": ["cat.sensory-and-visual-cues", "wcag22aa", "wcag258"]
"cat.sensory-and-visual-cues",
"wcag22aa",
"wcag258"
]
} }
} }
}, },
@@ -3986,9 +3957,7 @@
"totalBytes": 27874 "totalBytes": 27874
} }
], ],
"sortedBy": [ "sortedBy": ["totalBytes"]
"totalBytes"
]
}, },
"guidanceLevel": 1 "guidanceLevel": 1
}, },
@@ -4057,9 +4026,7 @@
], ],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 54599, "overallSavingsBytes": 54599,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4109,9 +4076,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4207,9 +4172,7 @@
], ],
"overallSavingsMs": 450, "overallSavingsMs": 450,
"overallSavingsBytes": 154604, "overallSavingsBytes": 154604,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4239,9 +4202,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4310,9 +4271,7 @@
], ],
"overallSavingsMs": 300, "overallSavingsMs": 300,
"overallSavingsBytes": 136130, "overallSavingsBytes": 136130,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4533,9 +4492,7 @@
], ],
"overallSavingsMs": 300, "overallSavingsMs": 300,
"overallSavingsBytes": 173474.94999999998, "overallSavingsBytes": 173474.94999999998,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4566,9 +4523,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4598,9 +4553,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4872,9 +4825,7 @@
], ],
"overallSavingsMs": 760, "overallSavingsMs": 760,
"overallSavingsBytes": 358343, "overallSavingsBytes": 358343,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4904,9 +4855,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -4936,9 +4885,7 @@
"items": [], "items": [],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 0, "overallSavingsBytes": 0,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -5093,9 +5040,7 @@
], ],
"overallSavingsMs": 0, "overallSavingsMs": 0,
"overallSavingsBytes": 8390, "overallSavingsBytes": 8390,
"sortedBy": [ "sortedBy": ["wastedBytes"],
"wastedBytes"
],
"debugData": { "debugData": {
"type": "debugdata", "type": "debugdata",
"metricSavings": { "metricSavings": {
@@ -5529,9 +5474,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["uses-long-cache-ttl"]
"uses-long-cache-ttl"
]
}, },
"cls-culprits-insight": { "cls-culprits-insight": {
"id": "cls-culprits-insight", "id": "cls-culprits-insight",
@@ -5688,9 +5631,7 @@
} }
}, },
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["dom-size"]
"dom-size"
]
}, },
"duplicated-javascript-insight": { "duplicated-javascript-insight": {
"id": "duplicated-javascript-insight", "id": "duplicated-javascript-insight",
@@ -5699,9 +5640,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 2, "guidanceLevel": 2,
"replacesAudits": [ "replacesAudits": ["duplicated-javascript"]
"duplicated-javascript"
]
}, },
"font-display-insight": { "font-display-insight": {
"id": "font-display-insight", "id": "font-display-insight",
@@ -5710,9 +5649,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["font-display"]
"font-display"
]
}, },
"forced-reflow-insight": { "forced-reflow-insight": {
"id": "forced-reflow-insight", "id": "forced-reflow-insight",
@@ -5952,9 +5889,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["work-during-interaction"]
"work-during-interaction"
]
}, },
"lcp-discovery-insight": { "lcp-discovery-insight": {
"id": "lcp-discovery-insight", "id": "lcp-discovery-insight",
@@ -6004,10 +5939,7 @@
] ]
}, },
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["prioritize-lcp-image", "lcp-lazy-loaded"]
"prioritize-lcp-image",
"lcp-lazy-loaded"
]
}, },
"lcp-phases-insight": { "lcp-phases-insight": {
"id": "lcp-phases-insight", "id": "lcp-phases-insight",
@@ -6077,9 +6009,7 @@
] ]
}, },
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["largest-contentful-paint-element"]
"largest-contentful-paint-element"
]
}, },
"legacy-javascript-insight": { "legacy-javascript-insight": {
"id": "legacy-javascript-insight", "id": "legacy-javascript-insight",
@@ -6239,9 +6169,7 @@
} }
}, },
"guidanceLevel": 1, "guidanceLevel": 1,
"replacesAudits": [ "replacesAudits": ["critical-request-chains"]
"critical-request-chains"
]
}, },
"render-blocking-insight": { "render-blocking-insight": {
"id": "render-blocking-insight", "id": "render-blocking-insight",
@@ -6250,9 +6178,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["render-blocking-resources"]
"render-blocking-resources"
]
}, },
"third-parties-insight": { "third-parties-insight": {
"id": "third-parties-insight", "id": "third-parties-insight",
@@ -6261,9 +6187,7 @@
"score": null, "score": null,
"scoreDisplayMode": "notApplicable", "scoreDisplayMode": "notApplicable",
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["third-party-summary"]
"third-party-summary"
]
}, },
"viewport-insight": { "viewport-insight": {
"id": "viewport-insight", "id": "viewport-insight",
@@ -6305,15 +6229,11 @@
] ]
}, },
"guidanceLevel": 3, "guidanceLevel": 3,
"replacesAudits": [ "replacesAudits": ["viewport"]
"viewport"
]
} }
}, },
"configSettings": { "configSettings": {
"output": [ "output": ["json"],
"json"
],
"maxWaitForFcp": 30000, "maxWaitForFcp": 30000,
"maxWaitForLoad": 45000, "maxWaitForLoad": 45000,
"pauseAfterFcpMs": 1000, "pauseAfterFcpMs": 1000,
@@ -6366,11 +6286,7 @@
"categories": { "categories": {
"performance": { "performance": {
"title": "Performance", "title": "Performance",
"supportedModes": [ "supportedModes": ["navigation", "timespan", "snapshot"],
"navigation",
"timespan",
"snapshot"
],
"auditRefs": [ "auditRefs": [
{ {
"id": "first-contentful-paint", "id": "first-contentful-paint",
@@ -6752,10 +6668,7 @@
"title": "Accessibility", "title": "Accessibility",
"description": "These checks highlight opportunities to [improve the accessibility of your web app](https://developer.chrome.com/docs/lighthouse/accessibility/). Automatic detection can only detect a subset of issues and does not guarantee the accessibility of your web app, so [manual testing](https://web.dev/articles/how-to-review) is also encouraged.", "description": "These checks highlight opportunities to [improve the accessibility of your web app](https://developer.chrome.com/docs/lighthouse/accessibility/). Automatic detection can only detect a subset of issues and does not guarantee the accessibility of your web app, so [manual testing](https://web.dev/articles/how-to-review) is also encouraged.",
"manualDescription": "These items address areas which an automated testing tool cannot cover. Learn more in our guide on [conducting an accessibility review](https://web.dev/articles/how-to-review).", "manualDescription": "These items address areas which an automated testing tool cannot cover. Learn more in our guide on [conducting an accessibility review](https://web.dev/articles/how-to-review).",
"supportedModes": [ "supportedModes": ["navigation", "snapshot"],
"navigation",
"snapshot"
],
"auditRefs": [ "auditRefs": [
{ {
"id": "accesskeys", "id": "accesskeys",
@@ -7118,11 +7031,7 @@
}, },
"best-practices": { "best-practices": {
"title": "Best Practices", "title": "Best Practices",
"supportedModes": [ "supportedModes": ["navigation", "timespan", "snapshot"],
"navigation",
"timespan",
"snapshot"
],
"auditRefs": [ "auditRefs": [
{ {
"id": "is-on-https", "id": "is-on-https",
@@ -7237,10 +7146,7 @@
"title": "SEO", "title": "SEO",
"description": "These checks ensure that your page is following basic search engine optimization advice. There are many additional factors Lighthouse does not score here that may affect your search ranking, including performance on [Core Web Vitals](https://web.dev/explore/vitals). [Learn more about Google Search Essentials](https://support.google.com/webmasters/answer/35769).", "description": "These checks ensure that your page is following basic search engine optimization advice. There are many additional factors Lighthouse does not score here that may affect your search ranking, including performance on [Core Web Vitals](https://web.dev/explore/vitals). [Learn more about Google Search Essentials](https://support.google.com/webmasters/answer/35769).",
"manualDescription": "Run these additional validators on your site to check additional SEO best practices.", "manualDescription": "Run these additional validators on your site to check additional SEO best practices.",
"supportedModes": [ "supportedModes": ["navigation", "snapshot"],
"navigation",
"snapshot"
],
"auditRefs": [ "auditRefs": [
{ {
"id": "is-crawlable", "id": "is-crawlable",
@@ -7377,9 +7283,7 @@
"entities": [ "entities": [
{ {
"name": "127.0.0.1", "name": "127.0.0.1",
"origins": [ "origins": ["http://127.0.0.1:3010"],
"http://127.0.0.1:3010"
],
"isFirstParty": true, "isFirstParty": true,
"isUnrecognized": true "isUnrecognized": true
} }
@@ -11177,24 +11081,16 @@
"warningHeader": "Warnings: " "warningHeader": "Warnings: "
}, },
"icuMessagePaths": { "icuMessagePaths": {
"core/audits/is-on-https.js | title": [ "core/audits/is-on-https.js | title": ["audits[is-on-https].title"],
"audits[is-on-https].title"
],
"core/audits/is-on-https.js | description": [ "core/audits/is-on-https.js | description": [
"audits[is-on-https].description" "audits[is-on-https].description"
], ],
"core/audits/redirects-http.js | title": [ "core/audits/redirects-http.js | title": ["audits[redirects-http].title"],
"audits[redirects-http].title"
],
"core/audits/redirects-http.js | description": [ "core/audits/redirects-http.js | description": [
"audits[redirects-http].description" "audits[redirects-http].description"
], ],
"core/audits/viewport.js | title": [ "core/audits/viewport.js | title": ["audits.viewport.title"],
"audits.viewport.title" "core/audits/viewport.js | description": ["audits.viewport.description"],
],
"core/audits/viewport.js | description": [
"audits.viewport.description"
],
"core/lib/i18n/i18n.js | firstContentfulPaintMetric": [ "core/lib/i18n/i18n.js | firstContentfulPaintMetric": [
"audits[first-contentful-paint].title" "audits[first-contentful-paint].title"
], ],
@@ -11251,9 +11147,7 @@
"core/audits/metrics/first-meaningful-paint.js | description": [ "core/audits/metrics/first-meaningful-paint.js | description": [
"audits[first-meaningful-paint].description" "audits[first-meaningful-paint].description"
], ],
"core/lib/i18n/i18n.js | speedIndexMetric": [ "core/lib/i18n/i18n.js | speedIndexMetric": ["audits[speed-index].title"],
"audits[speed-index].title"
],
"core/audits/metrics/speed-index.js | description": [ "core/audits/metrics/speed-index.js | description": [
"audits[speed-index].description" "audits[speed-index].description"
], ],
@@ -11351,15 +11245,11 @@
"audits[network-rtt].details.headings[1].label", "audits[network-rtt].details.headings[1].label",
"audits[network-server-latency].details.headings[1].label" "audits[network-server-latency].details.headings[1].label"
], ],
"core/lib/i18n/i18n.js | interactiveMetric": [ "core/lib/i18n/i18n.js | interactiveMetric": ["audits.interactive.title"],
"audits.interactive.title"
],
"core/audits/metrics/interactive.js | description": [ "core/audits/metrics/interactive.js | description": [
"audits.interactive.description" "audits.interactive.description"
], ],
"core/audits/user-timings.js | title": [ "core/audits/user-timings.js | title": ["audits[user-timings].title"],
"audits[user-timings].title"
],
"core/audits/user-timings.js | description": [ "core/audits/user-timings.js | description": [
"audits[user-timings].description" "audits[user-timings].description"
], ],
@@ -11369,9 +11259,7 @@
"core/audits/critical-request-chains.js | description": [ "core/audits/critical-request-chains.js | description": [
"audits[critical-request-chains].description" "audits[critical-request-chains].description"
], ],
"core/audits/redirects.js | title": [ "core/audits/redirects.js | title": ["audits.redirects.title"],
"audits.redirects.title"
],
"core/audits/redirects.js | description": [ "core/audits/redirects.js | description": [
"audits.redirects.description" "audits.redirects.description"
], ],
@@ -11387,9 +11275,7 @@
"core/audits/image-size-responsive.js | description": [ "core/audits/image-size-responsive.js | description": [
"audits[image-size-responsive].description" "audits[image-size-responsive].description"
], ],
"core/audits/deprecations.js | title": [ "core/audits/deprecations.js | title": ["audits.deprecations.title"],
"audits.deprecations.title"
],
"core/audits/deprecations.js | description": [ "core/audits/deprecations.js | description": [
"audits.deprecations.description" "audits.deprecations.description"
], ],
@@ -11408,9 +11294,7 @@
"core/audits/mainthread-work-breakdown.js | columnCategory": [ "core/audits/mainthread-work-breakdown.js | columnCategory": [
"audits[mainthread-work-breakdown].details.headings[0].label" "audits[mainthread-work-breakdown].details.headings[0].label"
], ],
"core/audits/bootup-time.js | title": [ "core/audits/bootup-time.js | title": ["audits[bootup-time].title"],
"audits[bootup-time].title"
],
"core/audits/bootup-time.js | description": [ "core/audits/bootup-time.js | description": [
"audits[bootup-time].description" "audits[bootup-time].description"
], ],
@@ -11429,15 +11313,11 @@
"core/audits/uses-rel-preconnect.js | description": [ "core/audits/uses-rel-preconnect.js | description": [
"audits[uses-rel-preconnect].description" "audits[uses-rel-preconnect].description"
], ],
"core/audits/font-display.js | title": [ "core/audits/font-display.js | title": ["audits[font-display].title"],
"audits[font-display].title"
],
"core/audits/font-display.js | description": [ "core/audits/font-display.js | description": [
"audits[font-display].description" "audits[font-display].description"
], ],
"core/audits/network-rtt.js | title": [ "core/audits/network-rtt.js | title": ["audits[network-rtt].title"],
"audits[network-rtt].title"
],
"core/audits/network-rtt.js | description": [ "core/audits/network-rtt.js | description": [
"audits[network-rtt].description" "audits[network-rtt].description"
], ],
@@ -11538,15 +11418,11 @@
"core/audits/lcp-lazy-loaded.js | description": [ "core/audits/lcp-lazy-loaded.js | description": [
"audits[lcp-lazy-loaded].description" "audits[lcp-lazy-loaded].description"
], ],
"core/audits/layout-shifts.js | title": [ "core/audits/layout-shifts.js | title": ["audits[layout-shifts].title"],
"audits[layout-shifts].title"
],
"core/audits/layout-shifts.js | description": [ "core/audits/layout-shifts.js | description": [
"audits[layout-shifts].description" "audits[layout-shifts].description"
], ],
"core/audits/long-tasks.js | title": [ "core/audits/long-tasks.js | title": ["audits[long-tasks].title"],
"audits[long-tasks].title"
],
"core/audits/long-tasks.js | description": [ "core/audits/long-tasks.js | description": [
"audits[long-tasks].description" "audits[long-tasks].description"
], ],
@@ -11623,12 +11499,8 @@
"core/audits/prioritize-lcp-image.js | description": [ "core/audits/prioritize-lcp-image.js | description": [
"audits[prioritize-lcp-image].description" "audits[prioritize-lcp-image].description"
], ],
"core/audits/csp-xss.js | title": [ "core/audits/csp-xss.js | title": ["audits[csp-xss].title"],
"audits[csp-xss].title" "core/audits/csp-xss.js | description": ["audits[csp-xss].description"],
],
"core/audits/csp-xss.js | description": [
"audits[csp-xss].description"
],
"core/lib/i18n/i18n.js | columnDescription": [ "core/lib/i18n/i18n.js | columnDescription": [
"audits[csp-xss].details.headings[0].label", "audits[csp-xss].details.headings[0].label",
"audits[has-hsts].details.headings[0].label", "audits[has-hsts].details.headings[0].label",
@@ -11650,12 +11522,8 @@
"core/audits/csp-xss.js | noCsp": [ "core/audits/csp-xss.js | noCsp": [
"audits[csp-xss].details.items[0].description" "audits[csp-xss].details.items[0].description"
], ],
"core/audits/has-hsts.js | title": [ "core/audits/has-hsts.js | title": ["audits[has-hsts].title"],
"audits[has-hsts].title" "core/audits/has-hsts.js | description": ["audits[has-hsts].description"],
],
"core/audits/has-hsts.js | description": [
"audits[has-hsts].description"
],
"core/audits/has-hsts.js | columnDirective": [ "core/audits/has-hsts.js | columnDirective": [
"audits[has-hsts].details.headings[1].label" "audits[has-hsts].details.headings[1].label"
], ],
@@ -11843,9 +11711,7 @@
"core/audits/accessibility/button-name.js | description": [ "core/audits/accessibility/button-name.js | description": [
"audits[button-name].description" "audits[button-name].description"
], ],
"core/audits/accessibility/bypass.js | title": [ "core/audits/accessibility/bypass.js | title": ["audits.bypass.title"],
"audits.bypass.title"
],
"core/audits/accessibility/bypass.js | description": [ "core/audits/accessibility/bypass.js | description": [
"audits.bypass.description" "audits.bypass.description"
], ],
@@ -11861,9 +11727,7 @@
"core/audits/accessibility/definition-list.js | description": [ "core/audits/accessibility/definition-list.js | description": [
"audits[definition-list].description" "audits[definition-list].description"
], ],
"core/audits/accessibility/dlitem.js | title": [ "core/audits/accessibility/dlitem.js | title": ["audits.dlitem.title"],
"audits.dlitem.title"
],
"core/audits/accessibility/dlitem.js | description": [ "core/audits/accessibility/dlitem.js | description": [
"audits.dlitem.description" "audits.dlitem.description"
], ],
@@ -11957,9 +11821,7 @@
"core/audits/accessibility/label-content-name-mismatch.js | description": [ "core/audits/accessibility/label-content-name-mismatch.js | description": [
"audits[label-content-name-mismatch].description" "audits[label-content-name-mismatch].description"
], ],
"core/audits/accessibility/label.js | title": [ "core/audits/accessibility/label.js | title": ["audits.label.title"],
"audits.label.title"
],
"core/audits/accessibility/label.js | description": [ "core/audits/accessibility/label.js | description": [
"audits.label.description" "audits.label.description"
], ],
@@ -11981,9 +11843,7 @@
"core/audits/accessibility/link-in-text-block.js | description": [ "core/audits/accessibility/link-in-text-block.js | description": [
"audits[link-in-text-block].description" "audits[link-in-text-block].description"
], ],
"core/audits/accessibility/list.js | title": [ "core/audits/accessibility/list.js | title": ["audits.list.title"],
"audits.list.title"
],
"core/audits/accessibility/list.js | description": [ "core/audits/accessibility/list.js | description": [
"audits.list.description" "audits.list.description"
], ],
@@ -12248,21 +12108,15 @@
"core/audits/byte-efficiency/legacy-javascript.js | description": [ "core/audits/byte-efficiency/legacy-javascript.js | description": [
"audits[legacy-javascript].description" "audits[legacy-javascript].description"
], ],
"core/audits/dobetterweb/doctype.js | title": [ "core/audits/dobetterweb/doctype.js | title": ["audits.doctype.title"],
"audits.doctype.title"
],
"core/audits/dobetterweb/doctype.js | description": [ "core/audits/dobetterweb/doctype.js | description": [
"audits.doctype.description" "audits.doctype.description"
], ],
"core/audits/dobetterweb/charset.js | title": [ "core/audits/dobetterweb/charset.js | title": ["audits.charset.title"],
"audits.charset.title"
],
"core/audits/dobetterweb/charset.js | description": [ "core/audits/dobetterweb/charset.js | description": [
"audits.charset.description" "audits.charset.description"
], ],
"core/audits/dobetterweb/dom-size.js | title": [ "core/audits/dobetterweb/dom-size.js | title": ["audits[dom-size].title"],
"audits[dom-size].title"
],
"core/audits/dobetterweb/dom-size.js | description": [ "core/audits/dobetterweb/dom-size.js | description": [
"audits[dom-size].description" "audits[dom-size].description"
], ],
@@ -12349,9 +12203,7 @@
"core/audits/seo/http-status-code.js | description": [ "core/audits/seo/http-status-code.js | description": [
"audits[http-status-code].description" "audits[http-status-code].description"
], ],
"core/audits/seo/font-size.js | title": [ "core/audits/seo/font-size.js | title": ["audits[font-size].title"],
"audits[font-size].title"
],
"core/audits/seo/font-size.js | description": [ "core/audits/seo/font-size.js | description": [
"audits[font-size].description" "audits[font-size].description"
], ],
@@ -12378,9 +12230,7 @@
"core/audits/seo/font-size.js | legibleText": [ "core/audits/seo/font-size.js | legibleText": [
"audits[font-size].details.items[1].source.value" "audits[font-size].details.items[1].source.value"
], ],
"core/audits/seo/link-text.js | title": [ "core/audits/seo/link-text.js | title": ["audits[link-text].title"],
"audits[link-text].title"
],
"core/audits/seo/link-text.js | description": [ "core/audits/seo/link-text.js | description": [
"audits[link-text].description" "audits[link-text].description"
], ],
@@ -12390,27 +12240,19 @@
"core/audits/seo/crawlable-anchors.js | description": [ "core/audits/seo/crawlable-anchors.js | description": [
"audits[crawlable-anchors].description" "audits[crawlable-anchors].description"
], ],
"core/audits/seo/is-crawlable.js | title": [ "core/audits/seo/is-crawlable.js | title": ["audits[is-crawlable].title"],
"audits[is-crawlable].title"
],
"core/audits/seo/is-crawlable.js | description": [ "core/audits/seo/is-crawlable.js | description": [
"audits[is-crawlable].description" "audits[is-crawlable].description"
], ],
"core/audits/seo/robots-txt.js | title": [ "core/audits/seo/robots-txt.js | title": ["audits[robots-txt].title"],
"audits[robots-txt].title"
],
"core/audits/seo/robots-txt.js | description": [ "core/audits/seo/robots-txt.js | description": [
"audits[robots-txt].description" "audits[robots-txt].description"
], ],
"core/audits/seo/hreflang.js | title": [ "core/audits/seo/hreflang.js | title": ["audits.hreflang.title"],
"audits.hreflang.title"
],
"core/audits/seo/hreflang.js | description": [ "core/audits/seo/hreflang.js | description": [
"audits.hreflang.description" "audits.hreflang.description"
], ],
"core/audits/seo/canonical.js | title": [ "core/audits/seo/canonical.js | title": ["audits.canonical.title"],
"audits.canonical.title"
],
"core/audits/seo/canonical.js | description": [ "core/audits/seo/canonical.js | description": [
"audits.canonical.description" "audits.canonical.description"
], ],
@@ -12420,12 +12262,8 @@
"core/audits/seo/manual/structured-data.js | description": [ "core/audits/seo/manual/structured-data.js | description": [
"audits[structured-data].description" "audits[structured-data].description"
], ],
"core/audits/bf-cache.js | failureTitle": [ "core/audits/bf-cache.js | failureTitle": ["audits[bf-cache].title"],
"audits[bf-cache].title" "core/audits/bf-cache.js | description": ["audits[bf-cache].description"],
],
"core/audits/bf-cache.js | description": [
"audits[bf-cache].description"
],
"core/audits/bf-cache.js | displayValue": [ "core/audits/bf-cache.js | displayValue": [
{ {
"values": { "values": {
+1 -1
View File
@@ -1 +1 @@
64286 96184
+4 -4
View File
@@ -78,10 +78,10 @@ export default function HomeHeader() {
? size === "home" || size === "homeMd" ? size === "home" || size === "homeMd"
? "homeMd" ? "homeMd"
: size === "large" : size === "large"
? "large" ? "large"
: size === "homeXlarge" : size === "homeXlarge"
? "homeXlarge" ? "homeXlarge"
: "xsmallUseCases" : "xsmallUseCases"
: size : size
} }
variant={ variant={
+8 -5
View File
@@ -31,12 +31,15 @@
--color-*: initial; --color-*: initial;
/* Font families */ /* Font families */
--font-sans: var(--font-inter), ui-sans-serif, system-ui, -apple-system, --font-sans:
var(--font-inter), ui-sans-serif, system-ui, -apple-system, "Segoe UI",
Roboto, "Helvetica Neue", Arial, sans-serif;
--font-display:
var(--font-bricolage-grotesque), ui-sans-serif, system-ui, -apple-system,
"Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
--font-display: var(--font-bricolage-grotesque), ui-sans-serif, system-ui, --font-mono:
-apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; var(--font-space-grotesk), ui-monospace, SFMono-Regular, "SF Mono",
--font-mono: var(--font-space-grotesk), ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace;
"SF Mono", Consolas, "Liberation Mono", Menlo, monospace;
/* Dimension */ /* Dimension */
--spacing-scale-000: 0px; --spacing-scale-000: 0px;
-2
View File
@@ -88,13 +88,11 @@ The slug is different from the title - it's lowercase with hyphens instead of sp
Add custom thumbnail images to make your article stand out: Add custom thumbnail images to make your article stand out:
1. **Create your images**: 1. **Create your images**:
- Vertical: 260px × 390px - Vertical: 260px × 390px
- Horizontal: 320px × 225.5px (minimum width) - Horizontal: 320px × 225.5px (minimum width)
- Format: SVG preferred, PNG also works - Format: SVG preferred, PNG also works
2. **Save in public/content/blog/**: 2. **Save in public/content/blog/**:
- `your-article-slug-vertical.svg` - `your-article-slug-vertical.svg`
- `your-article-slug-horizontal.svg` - `your-article-slug-horizontal.svg`
- `your-article-slug-banner.svg` (optional, for md+ breakpoints) - `your-article-slug-banner.svg` (optional, for md+ breakpoints)
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -35,4 +35,4 @@
"seo": 1 "seo": 1
} }
} }
] ]
+4 -4
View File
@@ -118,12 +118,12 @@ export function validateBlogPost(frontmatter) {
if (config.type === "string" && typeof frontmatter[field] === "string") { if (config.type === "string" && typeof frontmatter[field] === "string") {
if (config.minLength && frontmatter[field].length < config.minLength) { if (config.minLength && frontmatter[field].length < config.minLength) {
errors.push( errors.push(
`Field ${field} must be at least ${config.minLength} characters` `Field ${field} must be at least ${config.minLength} characters`,
); );
} }
if (config.maxLength && frontmatter[field].length > config.maxLength) { if (config.maxLength && frontmatter[field].length > config.maxLength) {
errors.push( errors.push(
`Field ${field} must be no more than ${config.maxLength} characters` `Field ${field} must be no more than ${config.maxLength} characters`,
); );
} }
} }
@@ -142,12 +142,12 @@ export function validateBlogPost(frontmatter) {
} }
if (config.items.minLength && item.length < config.items.minLength) { if (config.items.minLength && item.length < config.items.minLength) {
errors.push( errors.push(
`Item ${i} in ${field} must be at least ${config.items.minLength} characters` `Item ${i} in ${field} must be at least ${config.items.minLength} characters`,
); );
} }
if (config.items.maxLength && item.length > config.items.maxLength) { if (config.items.maxLength && item.length > config.items.maxLength) {
errors.push( errors.push(
`Item ${i} in ${field} must be no more than ${config.items.maxLength} characters` `Item ${i} in ${field} must be no more than ${config.items.maxLength} characters`,
); );
} }
} }
+8 -6
View File
@@ -20,13 +20,13 @@ test.describe("Header responsive behavior", () => {
// All breakpoints should have navigation items // All breakpoints should have navigation items
await expect( await expect(
page.getByRole("menuitem", { name: /use cases/i }) page.getByRole("menuitem", { name: /use cases/i }),
).toBeVisible(); ).toBeVisible();
await expect( await expect(
page.getByRole("menuitem", { name: /learn/i }) page.getByRole("menuitem", { name: /learn/i }),
).toBeVisible(); ).toBeVisible();
await expect( await expect(
page.getByRole("menuitem", { name: /about/i }) page.getByRole("menuitem", { name: /about/i }),
).toBeVisible(); ).toBeVisible();
}); });
@@ -38,14 +38,14 @@ test.describe("Header responsive behavior", () => {
// All breakpoints should have login button // All breakpoints should have login button
await expect( await expect(
page.getByRole("menuitem", { name: /log in to your account/i }) page.getByRole("menuitem", { name: /log in to your account/i }),
).toBeVisible(); ).toBeVisible();
// All breakpoints should have create rule button // All breakpoints should have create rule button
await expect( await expect(
page.getByRole("button", { page.getByRole("button", {
name: /create a new rule with avatar decoration/i, name: /create a new rule with avatar decoration/i,
}) }),
).toBeVisible(); ).toBeVisible();
}); });
@@ -187,7 +187,9 @@ test.describe("Header responsive behavior", () => {
}); });
// Should not have active outline (may have default browser outline) // Should not have active outline (may have default browser outline)
expect(linkStyles.outline).toMatch(/^(none|0px|rgb\(0, 0, 0\) none 0px|rgb\(0, 0, 0\) 0px)$/); expect(linkStyles.outline).toMatch(
/^(none|0px|rgb\(0, 0, 0\) none 0px|rgb\(0, 0, 0\) 0px)$/,
);
}); });
}); });
}); });
+10 -10
View File
@@ -130,7 +130,7 @@ describe("BlogPostPage", () => {
expect(mainContainer).toHaveClass( expect(mainContainer).toHaveClass(
"min-h-screen", "min-h-screen",
"relative", "relative",
"overflow-hidden" "overflow-hidden",
); );
// Background color is applied via inline style from frontmatter hex // Background color is applied via inline style from frontmatter hex
expect(mainContainer).toHaveStyle({ backgroundColor: expect.any(String) }); expect(mainContainer).toHaveStyle({ backgroundColor: expect.any(String) });
@@ -145,7 +145,7 @@ describe("BlogPostPage", () => {
expect(screen.getByTestId("content-banner")).toBeInTheDocument(); expect(screen.getByTestId("content-banner")).toBeInTheDocument();
expect(screen.getByText("Test Article Title")).toBeInTheDocument(); expect(screen.getByText("Test Article Title")).toBeInTheDocument();
expect( expect(
screen.getByText("This is a test article description") screen.getByText("This is a test article description"),
).toBeInTheDocument(); ).toBeInTheDocument();
}); });
@@ -159,7 +159,7 @@ describe("BlogPostPage", () => {
expect(article).toBeInTheDocument(); expect(article).toBeInTheDocument();
expect(article).toHaveClass( expect(article).toHaveClass(
"p-[var(--spacing-scale-024)]", "p-[var(--spacing-scale-024)]",
"sm:py-[var(--spacing-scale-032)]" "sm:py-[var(--spacing-scale-032)]",
); );
// Check content is rendered // Check content is rendered
@@ -189,7 +189,7 @@ describe("BlogPostPage", () => {
expect(screen.getByTestId("ask-organizer")).toBeInTheDocument(); expect(screen.getByTestId("ask-organizer")).toBeInTheDocument();
expect(screen.getByText("Still have questions?")).toBeInTheDocument(); expect(screen.getByText("Still have questions?")).toBeInTheDocument();
expect( expect(
screen.getByText("Get answers from an experienced organizer") screen.getByText("Get answers from an experienced organizer"),
).toBeInTheDocument(); ).toBeInTheDocument();
expect(screen.getByText("Ask an organizer")).toBeInTheDocument(); expect(screen.getByText("Ask an organizer")).toBeInTheDocument();
}); });
@@ -221,7 +221,7 @@ describe("BlogPostPage", () => {
expect(contentDiv).toHaveClass("post-body"); expect(contentDiv).toHaveClass("post-body");
expect(contentDiv).toHaveClass("-mt-[var(--spacing-scale-048)]"); expect(contentDiv).toHaveClass("-mt-[var(--spacing-scale-048)]");
expect(contentDiv).toHaveClass( expect(contentDiv).toHaveClass(
"text-[var(--color-content-inverse-primary)]" "text-[var(--color-content-inverse-primary)]",
); );
expect(contentDiv).toHaveClass("text-[16px]"); expect(contentDiv).toHaveClass("text-[16px]");
expect(contentDiv).toHaveClass("leading-[24px]"); expect(contentDiv).toHaveClass("leading-[24px]");
@@ -268,7 +268,7 @@ describe("BlogPostPage", () => {
// Check for script elements using querySelector since RTL ignores them // Check for script elements using querySelector since RTL ignores them
const scripts = document.querySelectorAll( const scripts = document.querySelectorAll(
'script[type="application/ld+json"]' 'script[type="application/ld+json"]',
); );
expect(scripts).toHaveLength(2); expect(scripts).toHaveLength(2);
@@ -286,7 +286,7 @@ describe("BlogPostPage", () => {
// The component should throw an error when post is null // The component should throw an error when post is null
// This happens because notFound() is called // This happens because notFound() is called
await expect( await expect(
BlogPostPage({ params: { slug: "non-existent" } }) BlogPostPage({ params: { slug: "non-existent" } }),
).rejects.toThrow(); ).rejects.toThrow();
}); });
@@ -298,7 +298,7 @@ describe("BlogPostPage", () => {
// Current post should not appear in related articles // Current post should not appear in related articles
expect( expect(
screen.queryByTestId("related-test-article") screen.queryByTestId("related-test-article"),
).not.toBeInTheDocument(); ).not.toBeInTheDocument();
// Other related posts should appear // Other related posts should appear
@@ -323,7 +323,7 @@ describe("BlogPostPage", () => {
"top-1/4", "top-1/4",
"right-0", "right-0",
"pointer-events-none", "pointer-events-none",
"z-10" "z-10",
); );
// Second shape (left side) // Second shape (left side)
@@ -335,7 +335,7 @@ describe("BlogPostPage", () => {
"top-1/2", "top-1/2",
"left-0", "left-0",
"pointer-events-none", "pointer-events-none",
"z-10" "z-10",
); );
}); });
+19 -19
View File
@@ -45,7 +45,7 @@ describe("ContentBanner", () => {
// Check that the banner container exists - it's the first div with the specific classes // Check that the banner container exists - it's the first div with the specific classes
const banner = document.querySelector( const banner = document.querySelector(
"div[class*='pt-[var(--measures-spacing-016)]']" "div[class*='pt-[var(--measures-spacing-016)]']",
); );
expect(banner).toBeInTheDocument(); expect(banner).toBeInTheDocument();
expect(banner).toHaveClass( expect(banner).toHaveClass(
@@ -60,7 +60,7 @@ describe("ContentBanner", () => {
"xl:h-[504px]", "xl:h-[504px]",
"relative", "relative",
"w-full", "w-full",
"sm:overflow-hidden" "sm:overflow-hidden",
); );
}); });
@@ -69,7 +69,7 @@ describe("ContentBanner", () => {
// Check for background div with correct styling // Check for background div with correct styling
const backgroundDiv = document.querySelector( const backgroundDiv = document.querySelector(
"div[style*='background-image']" "div[style*='background-image']",
); );
expect(backgroundDiv).toBeInTheDocument(); expect(backgroundDiv).toBeInTheDocument();
expect(backgroundDiv).toHaveClass( expect(backgroundDiv).toHaveClass(
@@ -79,7 +79,7 @@ describe("ContentBanner", () => {
"h-full", "h-full",
"bg-cover", "bg-cover",
"bg-no-repeat", "bg-no-repeat",
"aspect-[320/225.5]" "aspect-[320/225.5]",
); );
}); });
@@ -88,7 +88,7 @@ describe("ContentBanner", () => {
// Check for the md+ background div with banner image // Check for the md+ background div with banner image
const mdBackgroundDiv = document.querySelector( const mdBackgroundDiv = document.querySelector(
"div[style*='test-article-banner.svg']" "div[style*='test-article-banner.svg']",
); );
expect(mdBackgroundDiv).toBeInTheDocument(); expect(mdBackgroundDiv).toBeInTheDocument();
expect(mdBackgroundDiv).toHaveClass("hidden", "md:block"); expect(mdBackgroundDiv).toHaveClass("hidden", "md:block");
@@ -104,7 +104,7 @@ describe("ContentBanner", () => {
render(<ContentBanner post={mockPost} />); render(<ContentBanner post={mockPost} />);
expect( expect(
screen.getByText("This is a test article description") screen.getByText("This is a test article description"),
).toBeInTheDocument(); ).toBeInTheDocument();
}); });
@@ -120,7 +120,7 @@ describe("ContentBanner", () => {
// Check the content container div // Check the content container div
const contentContainer = document.querySelector( const contentContainer = document.querySelector(
"div[class*='relative z-10']" "div[class*='relative z-10']",
); );
expect(contentContainer).toBeInTheDocument(); expect(contentContainer).toBeInTheDocument();
expect(contentContainer).toHaveClass( expect(contentContainer).toHaveClass(
@@ -128,7 +128,7 @@ describe("ContentBanner", () => {
"z-10", "z-10",
"h-full", "h-full",
"flex", "flex",
"flex-col" "flex-col",
); );
}); });
@@ -141,7 +141,7 @@ describe("ContentBanner", () => {
"font-medium", "font-medium",
"text-[18px]", "text-[18px]",
"leading-[120%]", "leading-[120%]",
"text-[var(--color-content-inverse-brand-royal)]" "text-[var(--color-content-inverse-brand-royal)]",
); );
const description = screen.getByText("This is a test article description"); const description = screen.getByText("This is a test article description");
@@ -150,7 +150,7 @@ describe("ContentBanner", () => {
"font-normal", "font-normal",
"text-[12px]", "text-[12px]",
"leading-[16px]", "leading-[16px]",
"text-[var(--color-content-inverse-brand-royal)]" "text-[var(--color-content-inverse-brand-royal)]",
); );
}); });
@@ -163,7 +163,7 @@ describe("ContentBanner", () => {
"font-normal", "font-normal",
"text-[10px]", "text-[10px]",
"leading-[14px]", "leading-[14px]",
"text-[var(--color-content-inverse-brand-royal)]" "text-[var(--color-content-inverse-brand-royal)]",
); );
const date = screen.getByText("April 2025"); const date = screen.getByText("April 2025");
@@ -172,7 +172,7 @@ describe("ContentBanner", () => {
"font-normal", "font-normal",
"text-[10px]", "text-[10px]",
"leading-[14px]", "leading-[14px]",
"text-[var(--color-content-inverse-brand-royal)]" "text-[var(--color-content-inverse-brand-royal)]",
); );
}); });
@@ -181,7 +181,7 @@ describe("ContentBanner", () => {
// Check the ContentContainer spacing // Check the ContentContainer spacing
const contentContainer = document.querySelector( const contentContainer = document.querySelector(
"div[class*='relative z-20']" "div[class*='relative z-20']",
); );
expect(contentContainer).toHaveClass("gap-[var(--measures-spacing-012)]"); expect(contentContainer).toHaveClass("gap-[var(--measures-spacing-012)]");
}); });
@@ -190,13 +190,13 @@ describe("ContentBanner", () => {
render(<ContentBanner post={mockPost} />); render(<ContentBanner post={mockPost} />);
const outerContainer = document.querySelector( const outerContainer = document.querySelector(
"div[class*='pt-[var(--measures-spacing-016)]']" "div[class*='pt-[var(--measures-spacing-016)]']",
); );
expect(outerContainer).toHaveClass( expect(outerContainer).toHaveClass(
"pt-[var(--measures-spacing-016)]", "pt-[var(--measures-spacing-016)]",
"md:pt-[var(--measures-spacing-008)]", "md:pt-[var(--measures-spacing-008)]",
"lg:pt-[50px]", "lg:pt-[50px]",
"xl:pt-[112px]" "xl:pt-[112px]",
); );
}); });
@@ -227,7 +227,7 @@ describe("ContentBanner", () => {
// Should use thumbnail.horizontal for md+ breakpoint // Should use thumbnail.horizontal for md+ breakpoint
const mdBackgroundDiv = document.querySelector( const mdBackgroundDiv = document.querySelector(
"div[style*='test-article-horizontal.svg'][class*='md:block']" "div[style*='test-article-horizontal.svg'][class*='md:block']",
); );
expect(mdBackgroundDiv).toBeInTheDocument(); expect(mdBackgroundDiv).toBeInTheDocument();
expect(mdBackgroundDiv).toHaveClass("hidden", "md:block"); expect(mdBackgroundDiv).toHaveClass("hidden", "md:block");
@@ -247,7 +247,7 @@ describe("ContentBanner", () => {
// Should use default banner for md+ breakpoint // Should use default banner for md+ breakpoint
const mdBackgroundDiv = document.querySelector( const mdBackgroundDiv = document.querySelector(
"div[style*='Content_Banner_2.svg']" "div[style*='Content_Banner_2.svg']",
); );
expect(mdBackgroundDiv).toBeInTheDocument(); expect(mdBackgroundDiv).toBeInTheDocument();
expect(mdBackgroundDiv).toHaveClass("hidden", "md:block"); expect(mdBackgroundDiv).toHaveClass("hidden", "md:block");
@@ -261,7 +261,7 @@ describe("ContentBanner", () => {
"sm:text-[24px]", "sm:text-[24px]",
"md:text-[32px]", "md:text-[32px]",
"lg:text-[44px]", "lg:text-[44px]",
"xl:text-[64px]" "xl:text-[64px]",
); );
const description = screen.getByText("This is a test article description"); const description = screen.getByText("This is a test article description");
@@ -269,7 +269,7 @@ describe("ContentBanner", () => {
"sm:text-[14px]", "sm:text-[14px]",
"md:text-[14px]", "md:text-[14px]",
"lg:text-[18px]", "lg:text-[18px]",
"xl:text-[24px]" "xl:text-[24px]",
); );
}); });
+6 -6
View File
@@ -53,7 +53,7 @@ describe("ContentThumbnailTemplate", () => {
expect(screen.getByText("Test Blog Post Title")).toBeInTheDocument(); expect(screen.getByText("Test Blog Post Title")).toBeInTheDocument();
expect( expect(
screen.getByText(/This is a test description/) screen.getByText(/This is a test description/),
).toBeInTheDocument(); ).toBeInTheDocument();
}); });
@@ -77,7 +77,7 @@ describe("ContentThumbnailTemplate", () => {
expect(thumbnailDiv).toHaveClass( expect(thumbnailDiv).toHaveClass(
"min-w-[320px]", "min-w-[320px]",
"max-w-[800px]", "max-w-[800px]",
"h-[225.5px]" "h-[225.5px]",
); );
}); });
@@ -86,7 +86,7 @@ describe("ContentThumbnailTemplate", () => {
expect(screen.getByText("Test Blog Post Title")).toBeInTheDocument(); expect(screen.getByText("Test Blog Post Title")).toBeInTheDocument();
expect( expect(
screen.getByText(/This is a test description/) screen.getByText(/This is a test description/),
).toBeInTheDocument(); ).toBeInTheDocument();
expect(screen.getByText("Test Author")).toBeInTheDocument(); expect(screen.getByText("Test Author")).toBeInTheDocument();
}); });
@@ -95,7 +95,7 @@ describe("ContentThumbnailTemplate", () => {
describe("Props and Customization", () => { describe("Props and Customization", () => {
it("should apply custom className", () => { it("should apply custom className", () => {
render( render(
<ContentThumbnailTemplate post={mockPost} className="custom-class" /> <ContentThumbnailTemplate post={mockPost} className="custom-class" />,
); );
const container = screen.getByRole("link"); const container = screen.getByRole("link");
@@ -144,7 +144,7 @@ describe("ContentThumbnailTemplate", () => {
// Check that the background image uses the article-specific thumbnail // Check that the background image uses the article-specific thumbnail
const backgroundImg = document.querySelector( const backgroundImg = document.querySelector(
"img[alt*='Background for']" "img[alt*='Background for']",
); );
expect(backgroundImg).toBeInTheDocument(); expect(backgroundImg).toBeInTheDocument();
expect(backgroundImg.src).toContain("test-post-vertical.svg"); expect(backgroundImg.src).toContain("test-post-vertical.svg");
@@ -155,7 +155,7 @@ describe("ContentThumbnailTemplate", () => {
// Check that the background image uses the article-specific horizontal thumbnail // Check that the background image uses the article-specific horizontal thumbnail
const backgroundImg = document.querySelector( const backgroundImg = document.querySelector(
"img[alt*='Background for']" "img[alt*='Background for']",
); );
expect(backgroundImg).toBeInTheDocument(); expect(backgroundImg).toBeInTheDocument();
expect(backgroundImg.src).toContain("test-post-horizontal.svg"); expect(backgroundImg.src).toContain("test-post-horizontal.svg");
+11 -11
View File
@@ -19,14 +19,14 @@ describe("Header", () => {
// Check main header structure - use container to scope the search // Check main header structure - use container to scope the search
const header = container.querySelector( const header = container.querySelector(
'[role="banner"][aria-label="Main navigation header"]' '[role="banner"][aria-label="Main navigation header"]',
); );
expect(header).toBeInTheDocument(); expect(header).toBeInTheDocument();
expect(header).toHaveAttribute("aria-label", "Main navigation header"); expect(header).toHaveAttribute("aria-label", "Main navigation header");
// Check navigation - use container to scope the search // Check navigation - use container to scope the search
const nav = container.querySelector( const nav = container.querySelector(
'[role="navigation"][aria-label="Main navigation"]' '[role="navigation"][aria-label="Main navigation"]',
); );
expect(nav).toBeInTheDocument(); expect(nav).toBeInTheDocument();
expect(nav).toHaveAttribute("aria-label", "Main navigation"); expect(nav).toHaveAttribute("aria-label", "Main navigation");
@@ -38,15 +38,15 @@ describe("Header", () => {
// Check all navigation items have proper aria-labels - use menuitem role since they're in a menubar // Check all navigation items have proper aria-labels - use menuitem role since they're in a menubar
expect( expect(
screen.getAllByRole("menuitem", { name: "Navigate to Use cases page" }) screen.getAllByRole("menuitem", { name: "Navigate to Use cases page" })
.length .length,
).toBeGreaterThan(0); ).toBeGreaterThan(0);
expect( expect(
screen.getAllByRole("menuitem", { name: "Navigate to Learn page" }) screen.getAllByRole("menuitem", { name: "Navigate to Learn page" })
.length .length,
).toBeGreaterThan(0); ).toBeGreaterThan(0);
expect( expect(
screen.getAllByRole("menuitem", { name: "Navigate to About page" }) screen.getAllByRole("menuitem", { name: "Navigate to About page" })
.length .length,
).toBeGreaterThan(0); ).toBeGreaterThan(0);
}); });
}); });
@@ -56,7 +56,7 @@ describe("Header", () => {
render(<Header />); render(<Header />);
const script = document.querySelector( const script = document.querySelector(
'script[type="application/ld+json"]' 'script[type="application/ld+json"]',
); );
expect(script).toBeInTheDocument(); expect(script).toBeInTheDocument();
@@ -293,7 +293,7 @@ describe("Header", () => {
(img) => (img) =>
img.alt === "Avatar 1" || img.alt === "Avatar 1" ||
img.alt === "Avatar 2" || img.alt === "Avatar 2" ||
img.alt === "Avatar 3" img.alt === "Avatar 3",
); );
expect(avatarImages.length).toBeGreaterThan(0); expect(avatarImages.length).toBeGreaterThan(0);
}); });
@@ -304,7 +304,7 @@ describe("Header", () => {
const { container } = render(<Header />); const { container } = render(<Header />);
const header = container.querySelector( const header = container.querySelector(
'[role="banner"][aria-label="Main navigation header"]' '[role="banner"][aria-label="Main navigation header"]',
); );
expect(header).toHaveClass("sticky", "top-0", "z-50"); expect(header).toHaveClass("sticky", "top-0", "z-50");
}); });
@@ -315,17 +315,17 @@ describe("Header", () => {
const { container } = render(<Header />); const { container } = render(<Header />);
const header = container.querySelector( const header = container.querySelector(
'[role="banner"][aria-label="Main navigation header"]' '[role="banner"][aria-label="Main navigation header"]',
); );
expect(header).toHaveClass("bg-[var(--color-surface-default-primary)]"); expect(header).toHaveClass("bg-[var(--color-surface-default-primary)]");
expect(header).toHaveClass("w-full"); expect(header).toHaveClass("w-full");
expect(header).toHaveClass("border-b"); expect(header).toHaveClass("border-b");
expect(header).toHaveClass( expect(header).toHaveClass(
"border-[var(--border-color-default-tertiary)]" "border-[var(--border-color-default-tertiary)]",
); );
const nav = container.querySelector( const nav = container.querySelector(
'[role="navigation"][aria-label="Main navigation"]' '[role="navigation"][aria-label="Main navigation"]',
); );
expect(nav).toHaveClass("flex"); expect(nav).toHaveClass("flex");
expect(nav).toHaveClass("items-center"); expect(nav).toHaveClass("items-center");