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