lighthouse 11.5.0 → 11.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/core/audits/layout-shifts.js +5 -2
  2. package/core/computed/metrics/cumulative-layout-shift.js +7 -1
  3. package/core/computed/trace-engine-result.d.ts +2 -16
  4. package/core/computed/trace-engine-result.js +12 -3
  5. package/core/gather/driver/wait-for-condition.js +15 -0
  6. package/core/gather/gatherers/root-causes.js +22 -9
  7. package/core/gather/gatherers/trace-elements.js +6 -2
  8. package/core/gather/gatherers/trace.js +2 -1
  9. package/core/gather/runner-helpers.js +4 -1
  10. package/core/lib/trace-engine.d.ts +10 -6
  11. package/core/lib/trace-engine.js +3 -4
  12. package/dist/report/bundle.esm.js +1 -1
  13. package/dist/report/flow.js +1 -1
  14. package/dist/report/standalone.js +1 -1
  15. package/package.json +8 -8
  16. package/report/renderer/report-utils.js +1 -1
  17. package/shared/localization/locales/ar-XB.json +45 -3
  18. package/shared/localization/locales/ar.json +45 -3
  19. package/shared/localization/locales/bg.json +45 -3
  20. package/shared/localization/locales/ca.json +45 -3
  21. package/shared/localization/locales/cs.json +45 -3
  22. package/shared/localization/locales/da.json +52 -10
  23. package/shared/localization/locales/de.json +45 -3
  24. package/shared/localization/locales/el.json +45 -3
  25. package/shared/localization/locales/en-GB.json +45 -3
  26. package/shared/localization/locales/en-US.json +1 -1
  27. package/shared/localization/locales/en-XA.json +45 -3
  28. package/shared/localization/locales/en-XL.json +1 -1
  29. package/shared/localization/locales/es-419.json +45 -3
  30. package/shared/localization/locales/es.json +45 -3
  31. package/shared/localization/locales/fi.json +45 -3
  32. package/shared/localization/locales/fil.json +45 -3
  33. package/shared/localization/locales/fr.json +48 -6
  34. package/shared/localization/locales/he.json +45 -3
  35. package/shared/localization/locales/hi.json +45 -3
  36. package/shared/localization/locales/hr.json +45 -3
  37. package/shared/localization/locales/hu.json +45 -3
  38. package/shared/localization/locales/id.json +45 -3
  39. package/shared/localization/locales/it.json +45 -3
  40. package/shared/localization/locales/ja.json +45 -3
  41. package/shared/localization/locales/ko.json +45 -3
  42. package/shared/localization/locales/lt.json +45 -3
  43. package/shared/localization/locales/lv.json +45 -3
  44. package/shared/localization/locales/nl.json +45 -3
  45. package/shared/localization/locales/no.json +45 -3
  46. package/shared/localization/locales/pl.json +45 -3
  47. package/shared/localization/locales/pt-PT.json +45 -3
  48. package/shared/localization/locales/pt.json +50 -8
  49. package/shared/localization/locales/ro.json +45 -3
  50. package/shared/localization/locales/ru.json +45 -3
  51. package/shared/localization/locales/sk.json +45 -3
  52. package/shared/localization/locales/sl.json +45 -3
  53. package/shared/localization/locales/sr-Latn.json +45 -3
  54. package/shared/localization/locales/sr.json +45 -3
  55. package/shared/localization/locales/sv.json +45 -3
  56. package/shared/localization/locales/ta.json +45 -3
  57. package/shared/localization/locales/te.json +45 -3
  58. package/shared/localization/locales/th.json +46 -4
  59. package/shared/localization/locales/tr.json +46 -4
  60. package/shared/localization/locales/uk.json +45 -3
  61. package/shared/localization/locales/vi.json +45 -3
  62. package/shared/localization/locales/zh-HK.json +45 -3
  63. package/shared/localization/locales/zh-TW.json +45 -3
  64. package/shared/localization/locales/zh.json +49 -7
  65. package/types/artifacts.d.ts +4 -3
  66. package/types/internal/rxjs.d.ts +4 -0
  67. package/types/trace-engine.d.ts +0 -1516
@@ -18,7 +18,7 @@
18
18
  "message": "`[aria-*]` 屬性與其角色相符"
19
19
  },
20
20
  "core/audits/accessibility/aria-allowed-role.js | description": {
21
- "message": "「ARIA `role`」可協助輔助技術瞭解網頁中每個元素的角色。如果「`role`」值有錯字、不是現有的「ARIA `role`」值,或是抽象角色,系統就不會將元素的目的傳達給輔助技術的使用者。[進一步瞭解 ARIA 角色](https://dequeuniversity.com/rules/axe/4.8/aria-allowed-roles)。"
21
+ "message": "「ARIA `role`」可協助輔助技術瞭解網頁中每個元素的角色。如果「`role`」值有錯字、不是現有的「ARIA `role`」值,或是抽象角色,系統就不會將元素的目的傳達給輔助技術的使用者。[進一步瞭解 ARIA 角色](https://dequeuniversity.com/rules/axe/4.8/aria-allowed-role)。"
22
22
  },
23
23
  "core/audits/accessibility/aria-allowed-role.js | failureTitle": {
24
24
  "message": "指派給 `role=\"\"` 的值不是有效的 ARIA 角色。"
@@ -605,6 +605,9 @@
605
605
  "core/audits/bf-cache.js | title": {
606
606
  "message": "網頁未有禁止還原向前/返回快取"
607
607
  },
608
+ "core/audits/bf-cache.js | warningHeadless": {
609
+ "message": "無法在舊版 Headless Chrome (`--chrome-flags=\"--headless=old\"`) 中測試向前/返回快取。如要查看審核結果,請使用新版 Headless Chrome (`--chrome-flags=\"--headless=new\"`) 或標準版 Chrome。"
610
+ },
608
611
  "core/audits/bootup-time.js | chromeExtensionsWarning": {
609
612
  "message": "Chrome 擴充程式會對此頁面的載入效能產生負面影響。建議透過無痕模式或使用未安裝擴充程式的 Chrome 設定檔來審核頁面。"
610
613
  },
@@ -1155,14 +1158,38 @@
1155
1158
  "message": "「最大內容繪製」元素"
1156
1159
  },
1157
1160
  "core/audits/layout-shift-elements.js | columnContribution": {
1158
- "message": "對 CLS 的影響"
1161
+ "message": "受版面配置轉移影響的元素數量"
1159
1162
  },
1160
1163
  "core/audits/layout-shift-elements.js | description": {
1161
- "message": "這些 DOM 元素在頁面造成最多累計版面配置轉移 (CLS)。[瞭解如何改善累計版面配置轉移 (CLS)](https://web.dev/articles/optimize-cls)"
1164
+ "message": "版面配置轉移對這些 DOM 元素造成的影響最大。由於[視窗化](https://web.dev/articles/cls#what_is_cls),部分版面配置轉移可能不會包含在 CLS 數據值中。[瞭解如何改善累計版面配置轉移 (CLS)](https://web.dev/articles/optimize-cls)"
1162
1165
  },
1163
1166
  "core/audits/layout-shift-elements.js | title": {
1164
1167
  "message": "避免大幅度的版面配置轉移"
1165
1168
  },
1169
+ "core/audits/layout-shifts.js | columnScore": {
1170
+ "message": "版面配置轉移分數"
1171
+ },
1172
+ "core/audits/layout-shifts.js | description": {
1173
+ "message": "這些是網頁上發現的最大版面配置轉移。每個表格項目都代表一個版面配置轉移,並會顯示轉移最多的元素。每個項目下方是導致版面配置轉移的潛在根本原因。由於[視窗化](https://web.dev/articles/cls#what_is_cls),部分版面配置轉移可能不會包含在 CLS 數據值中。[瞭解如何改善累計版面配置轉移 (CLS)](https://web.dev/articles/optimize-cls)"
1174
+ },
1175
+ "core/audits/layout-shifts.js | displayValueShiftsFound": {
1176
+ "message": "{shiftCount,plural, =1{找到 1 項版面配置轉移}other{找到 # 項版面配置轉移}}"
1177
+ },
1178
+ "core/audits/layout-shifts.js | rootCauseFontChanges": {
1179
+ "message": "已載入網頁字型"
1180
+ },
1181
+ "core/audits/layout-shifts.js | rootCauseInjectedIframe": {
1182
+ "message": "已插入 iframe"
1183
+ },
1184
+ "core/audits/layout-shifts.js | rootCauseRenderBlockingRequest": {
1185
+ "message": "延遲的網絡要求導致網頁版面配置變更"
1186
+ },
1187
+ "core/audits/layout-shifts.js | rootCauseUnsizedMedia": {
1188
+ "message": "媒體元素沒有明確尺寸"
1189
+ },
1190
+ "core/audits/layout-shifts.js | title": {
1191
+ "message": "避免大幅度的版面配置轉移"
1192
+ },
1166
1193
  "core/audits/lcp-lazy-loaded.js | description": {
1167
1194
  "message": "系統會在頁面生命週期的較後時段輸出延遲載入的毋需捲動的當眼位置圖片,這可能導致最大內容繪製發生延遲。[進一步瞭解最佳延遲載入](https://web.dev/articles/lcp-lazy-loading)。"
1168
1195
  },
@@ -1532,6 +1559,18 @@
1532
1559
  "core/audits/themed-omnibox.js | title": {
1533
1560
  "message": "設定網址列的主題顏色。"
1534
1561
  },
1562
+ "core/audits/third-party-cookies.js | description": {
1563
+ "message": "未來的 Chrome 版本將不再支援第三方 Cookie。[進一步瞭解 Chrome 如何逐步停止支援第三方 Cookie](https://developer.chrome.com/en/docs/privacy-sandbox/third-party-cookie-phase-out/)。"
1564
+ },
1565
+ "core/audits/third-party-cookies.js | displayValue": {
1566
+ "message": "{itemCount,plural, =1{找到 1 個 Cookie}other{找到 # 個 Cookie}}"
1567
+ },
1568
+ "core/audits/third-party-cookies.js | failureTitle": {
1569
+ "message": "使用第三方 Cookie"
1570
+ },
1571
+ "core/audits/third-party-cookies.js | title": {
1572
+ "message": "避免使用第三方 Cookie"
1573
+ },
1535
1574
  "core/audits/third-party-facades.js | categoryCustomerSuccess": {
1536
1575
  "message": "{productName} (客戶支援)"
1537
1576
  },
@@ -3359,6 +3398,9 @@
3359
3398
  "report/renderer/report-utils.js | passedAuditsGroupTitle": {
3360
3399
  "message": "已通過的審核"
3361
3400
  },
3401
+ "report/renderer/report-utils.js | pwaRemovalMessage": {
3402
+ "message": "除了[更新 Chrome 的安裝條件](https://developer.chrome.com/blog/update-install-criteria),Lighthouse 亦將在之後的版本淘汰 PWA 類別。如果之後要進行 PWA 測試,請參閱[新版 PWA 說明文件](https://developer.chrome.com/docs/devtools/progressive-web-apps/)。"
3403
+ },
3362
3404
  "report/renderer/report-utils.js | runtimeAnalysisWindow": {
3363
3405
  "message": "初始頁面載入"
3364
3406
  },
@@ -18,7 +18,7 @@
18
18
  "message": "`[aria-*]` 屬性與其角色相符"
19
19
  },
20
20
  "core/audits/accessibility/aria-allowed-role.js | description": {
21
- "message": "「ARIA `role`」可協助輔助技術瞭解網頁中每個元素的角色。如果「`role`」值有錯字、不是現有的「ARIA `role`」值,或者是抽象角色,系統就不會將元素的目的傳達給輔助技術的使用者。[進一步瞭解 ARIA 角色](https://dequeuniversity.com/rules/axe/4.8/aria-allowed-roles)。"
21
+ "message": "「ARIA `role`」可協助輔助技術瞭解網頁中每個元素的角色。如果「`role`」值有錯字、不是現有的「ARIA `role`」值,或者是抽象角色,系統就不會將元素的目的傳達給輔助技術的使用者。[進一步瞭解 ARIA 角色](https://dequeuniversity.com/rules/axe/4.8/aria-allowed-role)。"
22
22
  },
23
23
  "core/audits/accessibility/aria-allowed-role.js | failureTitle": {
24
24
  "message": "指派給 `role=\"\"` 的值不是有效的 ARIA 角色。"
@@ -605,6 +605,9 @@
605
605
  "core/audits/bf-cache.js | title": {
606
606
  "message": "網頁並未禁止還原往返快取"
607
607
  },
608
+ "core/audits/bf-cache.js | warningHeadless": {
609
+ "message": "無法在舊版無頭 Chrome (`--chrome-flags=\"--headless=old\"`) 中測試往返快取。如要查看稽核結果,請使用新的無頭 Chrome (`--chrome-flags=\"--headless=new\"`) 或標準 Chrome。"
610
+ },
608
611
  "core/audits/bootup-time.js | chromeExtensionsWarning": {
609
612
  "message": "Chrome 擴充功能對這個頁面的載入效能有負面影響。建議透過無痕模式或不含擴充功能的 Chrome 設定檔來稽核頁面。"
610
613
  },
@@ -1155,14 +1158,38 @@
1155
1158
  "message": "最大內容繪製元素"
1156
1159
  },
1157
1160
  "core/audits/layout-shift-elements.js | columnContribution": {
1158
- "message": "對 CLS 的影響"
1161
+ "message": "受版面配置位移影響的元素數量"
1159
1162
  },
1160
1163
  "core/audits/layout-shift-elements.js | description": {
1161
- "message": "這些 DOM 元素對於網頁的「累計版面配置位移」(CLS) 影響最大。[瞭解如何改善 CLS](https://web.dev/articles/optimize-cls)"
1164
+ "message": "版面配置位移對這些 DOM 元素造成的影響最大。由於[執行時間較短](https://web.dev/articles/cls#what_is_cls),部分版面配置位移可能不會包含在 CLS 指標值中。[瞭解如何改善 CLS](https://web.dev/articles/optimize-cls)"
1162
1165
  },
1163
1166
  "core/audits/layout-shift-elements.js | title": {
1164
1167
  "message": "避免大量版面配置轉移"
1165
1168
  },
1169
+ "core/audits/layout-shifts.js | columnScore": {
1170
+ "message": "版面配置位移分數"
1171
+ },
1172
+ "core/audits/layout-shifts.js | description": {
1173
+ "message": "這些是網頁上發現的最大版面配置位移。每個表格項目都代表一個版面配置位移,並會顯示位移最多的元素。每個項目下方是導致版面配置位移的可能根本原因。由於[執行時間較短](https://web.dev/articles/cls#what_is_cls),CLS 指標值可能不會包含所有的版面配置位移。[瞭解如何改善 CLS](https://web.dev/articles/optimize-cls)"
1174
+ },
1175
+ "core/audits/layout-shifts.js | displayValueShiftsFound": {
1176
+ "message": "{shiftCount,plural, =1{發現 1 個版面配置位移}other{發現 # 個版面配置位移}}"
1177
+ },
1178
+ "core/audits/layout-shifts.js | rootCauseFontChanges": {
1179
+ "message": "載入了網頁字型"
1180
+ },
1181
+ "core/audits/layout-shifts.js | rootCauseInjectedIframe": {
1182
+ "message": "插入了 iframe"
1183
+ },
1184
+ "core/audits/layout-shifts.js | rootCauseRenderBlockingRequest": {
1185
+ "message": "延遲的網路要求導致網頁版面配置變更"
1186
+ },
1187
+ "core/audits/layout-shifts.js | rootCauseUnsizedMedia": {
1188
+ "message": "媒體元素沒有明確尺寸"
1189
+ },
1190
+ "core/audits/layout-shifts.js | title": {
1191
+ "message": "避免大量版面配置轉移"
1192
+ },
1166
1193
  "core/audits/lcp-lazy-loaded.js | description": {
1167
1194
  "message": "不需捲動位置的圖片經過延遲載入後,會在頁面生命週期的較晚階段顯示,這可能會延遲最大內容繪製作業。[進一步瞭解如何讓延遲載入最佳化](https://web.dev/articles/lcp-lazy-loading)。"
1168
1195
  },
@@ -1532,6 +1559,18 @@
1532
1559
  "core/audits/themed-omnibox.js | title": {
1533
1560
  "message": "設定網址列的主題顏色。"
1534
1561
  },
1562
+ "core/audits/third-party-cookies.js | description": {
1563
+ "message": "未來的 Chrome 版本將不再支援第三方 Cookie。[進一步瞭解 Chrome 如何逐步停止支援第三方 Cookie](https://developer.chrome.com/en/docs/privacy-sandbox/third-party-cookie-phase-out/)。"
1564
+ },
1565
+ "core/audits/third-party-cookies.js | displayValue": {
1566
+ "message": "{itemCount,plural, =1{找到 1 個 Cookie}other{找到 # 個 Cookie}}"
1567
+ },
1568
+ "core/audits/third-party-cookies.js | failureTitle": {
1569
+ "message": "使用第三方 Cookie"
1570
+ },
1571
+ "core/audits/third-party-cookies.js | title": {
1572
+ "message": "避免使用第三方 Cookie"
1573
+ },
1535
1574
  "core/audits/third-party-facades.js | categoryCustomerSuccess": {
1536
1575
  "message": "{productName} (客戶成功案例)"
1537
1576
  },
@@ -3359,6 +3398,9 @@
3359
3398
  "report/renderer/report-utils.js | passedAuditsGroupTitle": {
3360
3399
  "message": "通過稽核項目"
3361
3400
  },
3401
+ "report/renderer/report-utils.js | pwaRemovalMessage": {
3402
+ "message": "除了[更新 Chrome 的安裝條件](https://developer.chrome.com/blog/update-install-criteria),Lighthouse 也將在之後的版本淘汰 PWA 類別。如果之後要進行 PWA 測試,請參閱[新版 PWA 說明文件](https://developer.chrome.com/docs/devtools/progressive-web-apps/)。"
3403
+ },
3362
3404
  "report/renderer/report-utils.js | runtimeAnalysisWindow": {
3363
3405
  "message": "初次載入網頁"
3364
3406
  },
@@ -18,7 +18,7 @@
18
18
  "message": "`[aria-*]` 属性与其角色匹配"
19
19
  },
20
20
  "core/audits/accessibility/aria-allowed-role.js | description": {
21
- "message": "ARIA `role` 让辅助技术能够了解网页上每个元素的角色。如果 `role` 值拼写有误、不是现有的 ARIA `role` 值或是抽象角色,系统便不会将相应元素的用途传达给使用辅助技术的用户。[详细了解 ARIA 角色](https://dequeuniversity.com/rules/axe/4.8/aria-allowed-roles)。"
21
+ "message": "ARIA `role` 让辅助技术能够了解网页上每个元素的角色。如果 `role` 值拼写有误、不是现有的 ARIA `role` 值或是抽象角色,系统便不会将相应元素的用途传达给使用辅助技术的用户。[详细了解 ARIA 角色](https://dequeuniversity.com/rules/axe/4.8/aria-allowed-role)。"
22
22
  },
23
23
  "core/audits/accessibility/aria-allowed-role.js | failureTitle": {
24
24
  "message": "向 `role=\"\"` 分配的值不是有效的 ARIA 角色。"
@@ -390,7 +390,7 @@
390
390
  "message": "文档有一个主要位置标记。"
391
391
  },
392
392
  "core/audits/accessibility/link-in-text-block.js | description": {
393
- "message": "对许多用户而言,对比度低的文本都是难以阅读或无法阅读的。清晰可辨的链接文本可改善弱视用户的体验。[了解如何让链接容易辨识](https://dequeuniversity.com/rules/axe/4.8/link-in-text-block)。"
393
+ "message": "对许多用户而言,对比度低的文本都是难以阅读或无法阅读的。清晰可辨的链接文本可改善低视力用户的体验。[了解如何让链接容易辨识](https://dequeuniversity.com/rules/axe/4.8/link-in-text-block)。"
394
394
  },
395
395
  "core/audits/accessibility/link-in-text-block.js | failureTitle": {
396
396
  "message": "必须依赖颜色才能辨识链接。"
@@ -435,7 +435,7 @@
435
435
  "message": "文档未使用 `<meta http-equiv=\"refresh\">`"
436
436
  },
437
437
  "core/audits/accessibility/meta-viewport.js | description": {
438
- "message": "对于必须依靠放大屏幕才能清晰看到网页内容的弱视用户而言,停用缩放功能会给他们带来问题。[详细了解视口元标记](https://dequeuniversity.com/rules/axe/4.8/meta-viewport)。"
438
+ "message": "对于必须依靠放大屏幕才能清晰看到网页内容的低视力用户而言,停用缩放功能会给他们带来问题。[详细了解视口元标记](https://dequeuniversity.com/rules/axe/4.8/meta-viewport)。"
439
439
  },
440
440
  "core/audits/accessibility/meta-viewport.js | failureTitle": {
441
441
  "message": "`<meta name=\"viewport\">` 元素中使用了 `[user-scalable=\"no\"]`,或者 `[maximum-scale]` 属性小于 5。"
@@ -605,6 +605,9 @@
605
605
  "core/audits/bf-cache.js | title": {
606
606
  "message": "网页并未阻止恢复往返缓存"
607
607
  },
608
+ "core/audits/bf-cache.js | warningHeadless": {
609
+ "message": "在旧版无头 Chrome (`--chrome-flags=\"--headless=old\"`) 中无法测试往返缓存。要查看审核结果,请使用新版无头 Chrome (`--chrome-flags=\"--headless=new\"`) 或标准 Chrome。"
610
+ },
608
611
  "core/audits/bootup-time.js | chromeExtensionsWarning": {
609
612
  "message": "Chrome 扩展程序对此网页的加载性能产生了负面影响。请尝试在无痕模式下或使用未安装这些扩展程序的 Chrome 个人资料审核此网页。"
610
613
  },
@@ -810,7 +813,7 @@
810
813
  "message": "正确地设定了字符集"
811
814
  },
812
815
  "core/audits/dobetterweb/doctype.js | description": {
813
- "message": "指定 DOCTYPE 会阻止浏览器切换到怪异模式。[详细了解 DOCTYPE 声明](https://developer.chrome.com/docs/lighthouse/best-practices/doctype/)。"
816
+ "message": "指定 DOCTYPE 可阻止浏览器切换到 Quirks 模式。[详细了解 DOCTYPE 声明](https://developer.chrome.com/docs/lighthouse/best-practices/doctype/)。"
814
817
  },
815
818
  "core/audits/dobetterweb/doctype.js | explanationBadDoctype": {
816
819
  "message": "DOCTYPE 名称必须为字符串 `html`"
@@ -831,7 +834,7 @@
831
834
  "message": "该文档包含会触发 `quirks-mode` 的 `doctype`"
832
835
  },
833
836
  "core/audits/dobetterweb/doctype.js | failureTitle": {
834
- "message": "页面缺少 HTML DOCTYPE,从而触发了怪异模式"
837
+ "message": "页面缺少 HTML DOCTYPE,从而触发了 Quirks 模式"
835
838
  },
836
839
  "core/audits/dobetterweb/doctype.js | title": {
837
840
  "message": "页面包含 HTML DOCTYPE"
@@ -1155,14 +1158,38 @@
1155
1158
  "message": "最大内容渲染时间元素"
1156
1159
  },
1157
1160
  "core/audits/layout-shift-elements.js | columnContribution": {
1158
- "message": "对 CLS 的影响程度"
1161
+ "message": "布局偏移的影响"
1159
1162
  },
1160
1163
  "core/audits/layout-shift-elements.js | description": {
1161
- "message": "这些 DOM 元素对该网页的 CLS 影响最大。[了解如何改善 CLS](https://web.dev/articles/optimize-cls)"
1164
+ "message": "这些 DOM 元素受布局偏移的影响最大。由于[窗口化](https://web.dev/articles/cls#what_is_cls)的原因,某些布局偏移可能未包含在 CLS 指标值中。[了解如何改善 CLS](https://web.dev/articles/optimize-cls)"
1162
1165
  },
1163
1166
  "core/audits/layout-shift-elements.js | title": {
1164
1167
  "message": "请避免出现大幅度的布局偏移"
1165
1168
  },
1169
+ "core/audits/layout-shifts.js | columnScore": {
1170
+ "message": "布局偏移分数"
1171
+ },
1172
+ "core/audits/layout-shifts.js | description": {
1173
+ "message": "这些是在网页上观察到的最大幅的布局偏移。表格中的每个项均表示一次布局偏移,并显示了发生最大幅偏移的元素。每个项的下方列出了哪些可能的根本原因导致了相应的布局偏移。由于[窗口化](https://web.dev/articles/cls#what_is_cls)的原因,所显示的某些布局偏移可能未包含在 CLS 指标值中。[了解如何改善 CLS](https://web.dev/articles/optimize-cls)"
1174
+ },
1175
+ "core/audits/layout-shifts.js | displayValueShiftsFound": {
1176
+ "message": "{shiftCount,plural, =1{发现了 1 次布局偏移}other{发现了 # 次布局偏移}}"
1177
+ },
1178
+ "core/audits/layout-shifts.js | rootCauseFontChanges": {
1179
+ "message": "加载了网络字体"
1180
+ },
1181
+ "core/audits/layout-shifts.js | rootCauseInjectedIframe": {
1182
+ "message": "注入的 iframe"
1183
+ },
1184
+ "core/audits/layout-shifts.js | rootCauseRenderBlockingRequest": {
1185
+ "message": "延迟的网络请求调整了页面布局"
1186
+ },
1187
+ "core/audits/layout-shifts.js | rootCauseUnsizedMedia": {
1188
+ "message": "媒体元素缺少明确的大小"
1189
+ },
1190
+ "core/audits/layout-shifts.js | title": {
1191
+ "message": "请避免出现大幅度的布局偏移"
1192
+ },
1166
1193
  "core/audits/lcp-lazy-loaded.js | description": {
1167
1194
  "message": "被延迟加载的首屏图片会在页面生命周期内的较晚时间渲染,这可能会致使系统延迟 Largest Contentful Paint。[详细了解最佳延迟加载](https://web.dev/articles/lcp-lazy-loading)。"
1168
1195
  },
@@ -1532,6 +1559,18 @@
1532
1559
  "core/audits/themed-omnibox.js | title": {
1533
1560
  "message": "为地址栏设置主题背景颜色。"
1534
1561
  },
1562
+ "core/audits/third-party-cookies.js | description": {
1563
+ "message": "在 Chrome 的某个未来版本中,对第三方 Cookie 的支持将被彻底取消。[详细了解逐步停用第三方 Cookie](https://developer.chrome.com/en/docs/privacy-sandbox/third-party-cookie-phase-out/)。"
1564
+ },
1565
+ "core/audits/third-party-cookies.js | displayValue": {
1566
+ "message": "{itemCount,plural, =1{找到 1 个 Cookie}other{找到 # 个 Cookie}}"
1567
+ },
1568
+ "core/audits/third-party-cookies.js | failureTitle": {
1569
+ "message": "使用第三方 Cookie"
1570
+ },
1571
+ "core/audits/third-party-cookies.js | title": {
1572
+ "message": "避免使用第三方 Cookie"
1573
+ },
1535
1574
  "core/audits/third-party-facades.js | categoryCustomerSuccess": {
1536
1575
  "message": "{productName}(客户成功案例)"
1537
1576
  },
@@ -3359,6 +3398,9 @@
3359
3398
  "report/renderer/report-utils.js | passedAuditsGroupTitle": {
3360
3399
  "message": "已通过的审核"
3361
3400
  },
3401
+ "report/renderer/report-utils.js | pwaRemovalMessage": {
3402
+ "message": "除了 [Chrome 更新后的可安装性标准](https://developer.chrome.com/blog/update-install-criteria)之外,Lighthouse 还将在未来的版本中弃用 PWA 类别。请参阅[更新后的 PWA 文档](https://developer.chrome.com/docs/devtools/progressive-web-apps/),了解今后的 PWA 测试。"
3403
+ },
3362
3404
  "report/renderer/report-utils.js | runtimeAnalysisWindow": {
3363
3405
  "message": "初始网页加载"
3364
3406
  },
@@ -5,6 +5,8 @@
5
5
  */
6
6
 
7
7
  import {Protocol as Crdp} from 'devtools-protocol/types/protocol.js';
8
+ import * as TraceEngine from '@paulirish/trace_engine';
9
+ import {LayoutShiftRootCausesData} from '@paulirish/trace_engine/models/trace/root-causes/LayoutShift.js';
8
10
 
9
11
  import {parseManifest} from '../core/lib/manifest-parser.js';
10
12
  import {Simulator} from '../core/lib/dependency-graph/simulator/simulator.js';
@@ -23,7 +25,6 @@ import LHResult from './lhr/lhr.js'
23
25
  import Protocol from './protocol.js';
24
26
  import Util from './utility-types.js';
25
27
  import Audit from './audit.js';
26
- import {TraceProcessor, LayoutShiftRootCauses} from './trace-engine.js';
27
28
 
28
29
  export type Artifacts = BaseArtifacts & GathererArtifacts;
29
30
 
@@ -569,10 +570,10 @@ declare module Artifacts {
569
570
  type?: string;
570
571
  }
571
572
 
572
- type TraceEngineResult = TraceProcessor['data'];
573
+ type TraceEngineResult = TraceEngine.Handlers.Types.TraceParseData;
573
574
 
574
575
  interface TraceEngineRootCauses {
575
- layoutShifts: Record<number, LayoutShiftRootCauses>;
576
+ layoutShifts: Record<number, LayoutShiftRootCausesData>;
576
577
  }
577
578
 
578
579
  interface ViewportDimensions {
@@ -17,6 +17,7 @@ declare module 'rxjs' {
17
17
  export const ignoreElements: any;
18
18
  export const map: any;
19
19
  export const mergeMap: any;
20
+ export const mergeScan: any;
20
21
  export const raceWith: any;
21
22
  export const retry: any;
22
23
  export const tap: any;
@@ -25,9 +26,12 @@ declare module 'rxjs' {
25
26
  export const delay: any;
26
27
  export const startWith: any;
27
28
  export const switchMap: any;
29
+ export const take: any;
28
30
  export const bufferCount: any;
29
31
  export const concatMap: any;
32
+ export const debounceTime: any;
30
33
  export const lastValueFrom: any;
31
34
  export const takeUntil: any;
35
+ export const delayWhen: any;
32
36
  }
33
37