lighthouse 10.1.1-dev.20230503 → 10.2.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 (50) hide show
  1. package/core/gather/driver/wait-for-condition.js +12 -0
  2. package/core/index.cjs +28 -0
  3. package/dist/report/flow.js +1 -1
  4. package/package.json +2 -2
  5. package/shared/localization/locales/ar-XB.json +113 -53
  6. package/shared/localization/locales/ar.json +113 -53
  7. package/shared/localization/locales/bg.json +113 -53
  8. package/shared/localization/locales/ca.json +115 -55
  9. package/shared/localization/locales/cs.json +113 -53
  10. package/shared/localization/locales/da.json +114 -54
  11. package/shared/localization/locales/de.json +113 -53
  12. package/shared/localization/locales/el.json +113 -53
  13. package/shared/localization/locales/en-GB.json +107 -47
  14. package/shared/localization/locales/en-XA.json +113 -53
  15. package/shared/localization/locales/es-419.json +113 -53
  16. package/shared/localization/locales/es.json +114 -54
  17. package/shared/localization/locales/fi.json +113 -53
  18. package/shared/localization/locales/fil.json +113 -53
  19. package/shared/localization/locales/fr.json +113 -53
  20. package/shared/localization/locales/he.json +114 -54
  21. package/shared/localization/locales/hi.json +116 -56
  22. package/shared/localization/locales/hr.json +113 -53
  23. package/shared/localization/locales/hu.json +113 -53
  24. package/shared/localization/locales/id.json +113 -53
  25. package/shared/localization/locales/it.json +114 -54
  26. package/shared/localization/locales/ja.json +116 -56
  27. package/shared/localization/locales/ko.json +113 -53
  28. package/shared/localization/locales/lt.json +113 -53
  29. package/shared/localization/locales/lv.json +113 -53
  30. package/shared/localization/locales/nl.json +117 -57
  31. package/shared/localization/locales/no.json +114 -54
  32. package/shared/localization/locales/pl.json +125 -65
  33. package/shared/localization/locales/pt-PT.json +117 -57
  34. package/shared/localization/locales/pt.json +113 -53
  35. package/shared/localization/locales/ro.json +113 -53
  36. package/shared/localization/locales/ru.json +113 -53
  37. package/shared/localization/locales/sk.json +112 -52
  38. package/shared/localization/locales/sl.json +113 -53
  39. package/shared/localization/locales/sr-Latn.json +113 -53
  40. package/shared/localization/locales/sr.json +113 -53
  41. package/shared/localization/locales/sv.json +113 -53
  42. package/shared/localization/locales/ta.json +113 -53
  43. package/shared/localization/locales/te.json +113 -53
  44. package/shared/localization/locales/th.json +113 -53
  45. package/shared/localization/locales/tr.json +113 -53
  46. package/shared/localization/locales/uk.json +115 -55
  47. package/shared/localization/locales/vi.json +113 -53
  48. package/shared/localization/locales/zh-HK.json +113 -53
  49. package/shared/localization/locales/zh-TW.json +113 -53
  50. package/shared/localization/locales/zh.json +113 -53
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "core/audits/accessibility/accesskeys.js | description": {
3
- "message": "快捷键可让用户快速转到页面的某个部分。为确保正确进行导航,每个快捷键都必须是独一无二的。[详细了解快捷键](https://dequeuniversity.com/rules/axe/4.6/accesskeys)。"
3
+ "message": "快捷键可让用户快速转到页面的某个部分。为确保正确进行导航,每个快捷键都必须是独一无二的。[详细了解快捷键](https://dequeuniversity.com/rules/axe/4.7/accesskeys)。"
4
4
  },
5
5
  "core/audits/accessibility/accesskeys.js | failureTitle": {
6
6
  "message": "`[accesskey]` 的值重复"
@@ -9,7 +9,7 @@
9
9
  "message": "“`[accesskey]`”值是独一无二的"
10
10
  },
11
11
  "core/audits/accessibility/aria-allowed-attr.js | description": {
12
- "message": "每个 ARIA“`role`”都支持一部分特定的“`aria-*`”属性。如果这些项不匹配,会导致“`aria-*`”属性无效。[了解如何将 ARIA 属性与其角色进行匹配](https://dequeuniversity.com/rules/axe/4.6/aria-allowed-attr)。"
12
+ "message": "每个 ARIA“`role`”都支持一部分特定的“`aria-*`”属性。如果这些项不匹配,会导致“`aria-*`”属性无效。[了解如何将 ARIA 属性与其角色进行匹配](https://dequeuniversity.com/rules/axe/4.7/aria-allowed-attr)。"
13
13
  },
14
14
  "core/audits/accessibility/aria-allowed-attr.js | failureTitle": {
15
15
  "message": "`[aria-*]` 属性与其角色不匹配"
@@ -18,7 +18,7 @@
18
18
  "message": "`[aria-*]` 属性与其角色匹配"
19
19
  },
20
20
  "core/audits/accessibility/aria-command-name.js | description": {
21
- "message": "如果某个元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何让命令元素更便于使用](https://dequeuniversity.com/rules/axe/4.6/aria-command-name)。"
21
+ "message": "如果某个元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何让命令元素更便于使用](https://dequeuniversity.com/rules/axe/4.7/aria-command-name)。"
22
22
  },
23
23
  "core/audits/accessibility/aria-command-name.js | failureTitle": {
24
24
  "message": "`button`、`link` 和 `menuitem` 元素缺少可供访问的名称。"
@@ -27,7 +27,7 @@
27
27
  "message": "`button`、`link` 和 `menuitem` 元素都有可供访问的名称"
28
28
  },
29
29
  "core/audits/accessibility/aria-hidden-body.js | description": {
30
- "message": "在文档 `<body>` 上设置 `aria-hidden=\"true\"` 后,辅助技术(如屏幕阅读器)的工作方式不一致。[了解 `aria-hidden` 对文档正文的影响](https://dequeuniversity.com/rules/axe/4.6/aria-hidden-body)。"
30
+ "message": "在文档 `<body>` 上设置 `aria-hidden=\"true\"` 后,辅助技术(如屏幕阅读器)的工作方式不一致。[了解 `aria-hidden` 对文档正文的影响](https://dequeuniversity.com/rules/axe/4.7/aria-hidden-body)。"
31
31
  },
32
32
  "core/audits/accessibility/aria-hidden-body.js | failureTitle": {
33
33
  "message": "文档 `<body>` 中有 `[aria-hidden=\"true\"]`"
@@ -36,7 +36,7 @@
36
36
  "message": "文档 `<body>` 中没有 `[aria-hidden=\"true\"]`"
37
37
  },
38
38
  "core/audits/accessibility/aria-hidden-focus.js | description": {
39
- "message": "有一个 `[aria-hidden=\"true\"]` 元素包含可聚焦的下级元素,导致这些交互式元素都无法被辅助技术(如屏幕阅读器)用户使用。[了解 `aria-hidden` 如何影响可聚焦的元素](https://dequeuniversity.com/rules/axe/4.6/aria-hidden-focus)。"
39
+ "message": "有一个 `[aria-hidden=\"true\"]` 元素包含可聚焦的下级元素,导致这些交互式元素都无法被辅助技术(如屏幕阅读器)用户使用。[了解 `aria-hidden` 如何影响可聚焦的元素](https://dequeuniversity.com/rules/axe/4.7/aria-hidden-focus)。"
40
40
  },
41
41
  "core/audits/accessibility/aria-hidden-focus.js | failureTitle": {
42
42
  "message": "`[aria-hidden=\"true\"]` 元素包含可聚焦的下级元素"
@@ -45,7 +45,7 @@
45
45
  "message": "`[aria-hidden=\"true\"]` 元素都不含可聚焦的下级元素"
46
46
  },
47
47
  "core/audits/accessibility/aria-input-field-name.js | description": {
48
- "message": "如果某个输入字段没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[详细了解输入字段标签](https://dequeuniversity.com/rules/axe/4.6/aria-input-field-name)。"
48
+ "message": "如果某个输入字段没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[详细了解输入字段标签](https://dequeuniversity.com/rules/axe/4.7/aria-input-field-name)。"
49
49
  },
50
50
  "core/audits/accessibility/aria-input-field-name.js | failureTitle": {
51
51
  "message": "ARIA 输入字段缺少可供访问的名称"
@@ -54,7 +54,7 @@
54
54
  "message": "ARIA 输入字段都有可供访问的名称"
55
55
  },
56
56
  "core/audits/accessibility/aria-meter-name.js | description": {
57
- "message": "如果某个 meter 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何为 `meter` 元素命名](https://dequeuniversity.com/rules/axe/4.6/aria-meter-name)。"
57
+ "message": "如果某个 meter 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何为 `meter` 元素命名](https://dequeuniversity.com/rules/axe/4.7/aria-meter-name)。"
58
58
  },
59
59
  "core/audits/accessibility/aria-meter-name.js | failureTitle": {
60
60
  "message": "ARIA `meter` 元素缺少可供访问的名称。"
@@ -63,7 +63,7 @@
63
63
  "message": "ARIA `meter` 元素都有可供访问的名称"
64
64
  },
65
65
  "core/audits/accessibility/aria-progressbar-name.js | description": {
66
- "message": "如果某个 `progressbar` 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何为 `progressbar` 元素添加标签](https://dequeuniversity.com/rules/axe/4.6/aria-progressbar-name)。"
66
+ "message": "如果某个 `progressbar` 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何为 `progressbar` 元素添加标签](https://dequeuniversity.com/rules/axe/4.7/aria-progressbar-name)。"
67
67
  },
68
68
  "core/audits/accessibility/aria-progressbar-name.js | failureTitle": {
69
69
  "message": "ARIA `progressbar` 元素缺少可供访问的名称。"
@@ -72,7 +72,7 @@
72
72
  "message": "ARIA `progressbar` 元素都有可供访问的名称"
73
73
  },
74
74
  "core/audits/accessibility/aria-required-attr.js | description": {
75
- "message": "一些 ARIA 角色有必需属性,这些属性向屏幕阅读器描述了相应元素的状态。[详细了解角色和必需属性](https://dequeuniversity.com/rules/axe/4.6/aria-required-attr)。"
75
+ "message": "一些 ARIA 角色有必需属性,这些属性向屏幕阅读器描述了相应元素的状态。[详细了解角色和必需属性](https://dequeuniversity.com/rules/axe/4.7/aria-required-attr)。"
76
76
  },
77
77
  "core/audits/accessibility/aria-required-attr.js | failureTitle": {
78
78
  "message": "`[role]` 缺少部分必需的 `[aria-*]` 属性"
@@ -81,7 +81,7 @@
81
81
  "message": "`[role]` 具备所有必需的 `[aria-*]` 属性"
82
82
  },
83
83
  "core/audits/accessibility/aria-required-children.js | description": {
84
- "message": "一些 ARIA 父角色必须包含特定子角色,才能执行它们的预期无障碍功能。[详细了解角色和必需的子元素](https://dequeuniversity.com/rules/axe/4.6/aria-required-children)。"
84
+ "message": "一些 ARIA 父角色必须包含特定子角色,才能执行它们的预期无障碍功能。[详细了解角色和必需的子元素](https://dequeuniversity.com/rules/axe/4.7/aria-required-children)。"
85
85
  },
86
86
  "core/audits/accessibility/aria-required-children.js | failureTitle": {
87
87
  "message": "具有 ARIA `[role]`且要求子元素必须包含特定`[role]`的元素缺少部分或全部必需子元素。"
@@ -90,7 +90,7 @@
90
90
  "message": "具有 ARIA `[role]`且要求子元素必须包含特定`[role]`的元素包含全部必需子元素。"
91
91
  },
92
92
  "core/audits/accessibility/aria-required-parent.js | description": {
93
- "message": "一些 ARIA 子角色必须包含在特定的父角色中,才能正确执行它们的预期无障碍功能。[详细了解 ARIA 角色和必需的父元素](https://dequeuniversity.com/rules/axe/4.6/aria-required-parent)。"
93
+ "message": "一些 ARIA 子角色必须包含在特定的父角色中,才能正确执行它们的预期无障碍功能。[详细了解 ARIA 角色和必需的父元素](https://dequeuniversity.com/rules/axe/4.7/aria-required-parent)。"
94
94
  },
95
95
  "core/audits/accessibility/aria-required-parent.js | failureTitle": {
96
96
  "message": "`[role]` 未包含在其必需的父元素中"
@@ -99,7 +99,7 @@
99
99
  "message": "`[role]` 包含在其必需的父元素中"
100
100
  },
101
101
  "core/audits/accessibility/aria-roles.js | description": {
102
- "message": "ARIA 角色必须具备有效值,才能执行它们的预期无障碍功能。[详细了解有效的 ARIA 角色](https://dequeuniversity.com/rules/axe/4.6/aria-roles)。"
102
+ "message": "ARIA 角色必须具备有效值,才能执行它们的预期无障碍功能。[详细了解有效的 ARIA 角色](https://dequeuniversity.com/rules/axe/4.7/aria-roles)。"
103
103
  },
104
104
  "core/audits/accessibility/aria-roles.js | failureTitle": {
105
105
  "message": "`[role]` 值无效"
@@ -108,7 +108,7 @@
108
108
  "message": "`[role]` 值有效"
109
109
  },
110
110
  "core/audits/accessibility/aria-toggle-field-name.js | description": {
111
- "message": "如果某个切换字段没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[详细了解切换字段](https://dequeuniversity.com/rules/axe/4.6/aria-toggle-field-name)。"
111
+ "message": "如果某个切换字段没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[详细了解切换字段](https://dequeuniversity.com/rules/axe/4.7/aria-toggle-field-name)。"
112
112
  },
113
113
  "core/audits/accessibility/aria-toggle-field-name.js | failureTitle": {
114
114
  "message": "ARIA 切换字段缺少可供访问的名称"
@@ -117,7 +117,7 @@
117
117
  "message": "ARIA 切换字段都有可供访问的名称"
118
118
  },
119
119
  "core/audits/accessibility/aria-tooltip-name.js | description": {
120
- "message": "如果某个 tooltip 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何为 `tooltip` 元素命名](https://dequeuniversity.com/rules/axe/4.6/aria-tooltip-name)。"
120
+ "message": "如果某个 tooltip 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何为 `tooltip` 元素命名](https://dequeuniversity.com/rules/axe/4.7/aria-tooltip-name)。"
121
121
  },
122
122
  "core/audits/accessibility/aria-tooltip-name.js | failureTitle": {
123
123
  "message": "ARIA `tooltip` 元素缺少可供访问的名称。"
@@ -126,7 +126,7 @@
126
126
  "message": "ARIA `tooltip` 元素都有可供访问的名称"
127
127
  },
128
128
  "core/audits/accessibility/aria-treeitem-name.js | description": {
129
- "message": "如果某个 `treeitem` 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[详细了解如何为 `treeitem` 元素添加标签](https://dequeuniversity.com/rules/axe/4.6/aria-treeitem-name)。"
129
+ "message": "如果某个 `treeitem` 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[详细了解如何为 `treeitem` 元素添加标签](https://dequeuniversity.com/rules/axe/4.7/aria-treeitem-name)。"
130
130
  },
131
131
  "core/audits/accessibility/aria-treeitem-name.js | failureTitle": {
132
132
  "message": "ARIA `treeitem` 元素缺少可供访问的名称。"
@@ -135,7 +135,7 @@
135
135
  "message": "ARIA `treeitem` 元素都有可供访问的名称"
136
136
  },
137
137
  "core/audits/accessibility/aria-valid-attr-value.js | description": {
138
- "message": "辅助技术(如屏幕阅读器)无法解读值无效的 ARIA 属性。[详细了解 ARIA 属性的有效值](https://dequeuniversity.com/rules/axe/4.6/aria-valid-attr-value)。"
138
+ "message": "辅助技术(如屏幕阅读器)无法解读值无效的 ARIA 属性。[详细了解 ARIA 属性的有效值](https://dequeuniversity.com/rules/axe/4.7/aria-valid-attr-value)。"
139
139
  },
140
140
  "core/audits/accessibility/aria-valid-attr-value.js | failureTitle": {
141
141
  "message": "`[aria-*]` 属性缺少有效值"
@@ -144,7 +144,7 @@
144
144
  "message": "`[aria-*]` 属性具备有效值"
145
145
  },
146
146
  "core/audits/accessibility/aria-valid-attr.js | description": {
147
- "message": "辅助技术(如屏幕阅读器)无法解读名称无效的 ARIA 属性。[详细了解有效的 ARIA 属性](https://dequeuniversity.com/rules/axe/4.6/aria-valid-attr)。"
147
+ "message": "辅助技术(如屏幕阅读器)无法解读名称无效的 ARIA 属性。[详细了解有效的 ARIA 属性](https://dequeuniversity.com/rules/axe/4.7/aria-valid-attr)。"
148
148
  },
149
149
  "core/audits/accessibility/aria-valid-attr.js | failureTitle": {
150
150
  "message": "`[aria-*]` 属性无效或拼写有误"
@@ -156,7 +156,7 @@
156
156
  "message": "未通过审核的元素"
157
157
  },
158
158
  "core/audits/accessibility/button-name.js | description": {
159
- "message": "当某个按钮没有无障碍名称时,屏幕阅读器会将它读为“按钮”,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何让按钮更便于使用](https://dequeuniversity.com/rules/axe/4.6/button-name)。"
159
+ "message": "当某个按钮没有无障碍名称时,屏幕阅读器会将它读为“按钮”,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何让按钮更便于使用](https://dequeuniversity.com/rules/axe/4.7/button-name)。"
160
160
  },
161
161
  "core/audits/accessibility/button-name.js | failureTitle": {
162
162
  "message": "按钮缺少可供访问的名称"
@@ -165,7 +165,7 @@
165
165
  "message": "按钮有可供访问的名称"
166
166
  },
167
167
  "core/audits/accessibility/bypass.js | description": {
168
- "message": "添加用于绕过重复内容的方式有助于键盘用户更高效地浏览页面。[详细了解如何绕过内容块](https://dequeuniversity.com/rules/axe/4.6/bypass)。"
168
+ "message": "添加用于绕过重复内容的方式有助于键盘用户更高效地浏览页面。[详细了解如何绕过内容块](https://dequeuniversity.com/rules/axe/4.7/bypass)。"
169
169
  },
170
170
  "core/audits/accessibility/bypass.js | failureTitle": {
171
171
  "message": "该页面不含任何标题、跳过链接或地标区域"
@@ -174,7 +174,7 @@
174
174
  "message": "该页面包含一个标题、跳过链接或地标区域"
175
175
  },
176
176
  "core/audits/accessibility/color-contrast.js | description": {
177
- "message": "对于许多用户而言,对比度低的文字都是难以阅读或无法阅读的。[了解如何提供足够高的色彩对比度](https://dequeuniversity.com/rules/axe/4.6/color-contrast)。"
177
+ "message": "对于许多用户而言,对比度低的文字都是难以阅读或无法阅读的。[了解如何提供足够高的色彩对比度](https://dequeuniversity.com/rules/axe/4.7/color-contrast)。"
178
178
  },
179
179
  "core/audits/accessibility/color-contrast.js | failureTitle": {
180
180
  "message": "背景色和前景色没有足够高的对比度。"
@@ -183,7 +183,7 @@
183
183
  "message": "背景色和前景色具有足够高的对比度"
184
184
  },
185
185
  "core/audits/accessibility/definition-list.js | description": {
186
- "message": "如果未正确标记定义列表,屏幕阅读器读出的内容可能会令人困惑或不准确。[了解如何正确构建定义列表](https://dequeuniversity.com/rules/axe/4.6/definition-list)。"
186
+ "message": "如果未正确标记定义列表,屏幕阅读器读出的内容可能会令人困惑或不准确。[了解如何正确构建定义列表](https://dequeuniversity.com/rules/axe/4.7/definition-list)。"
187
187
  },
188
188
  "core/audits/accessibility/definition-list.js | failureTitle": {
189
189
  "message": "`<dl>` 并非只包含经过适当排序的 `<dt>` 和 `<dd>` 组及 `<script>`、`<template>` 或 `<div>` 元素。"
@@ -192,7 +192,7 @@
192
192
  "message": "`<dl>` 只包含经过适当排序的 `<dt>` 和 `<dd>` 组及 `<script>`、`<template>` 或 `<div>` 元素。"
193
193
  },
194
194
  "core/audits/accessibility/dlitem.js | description": {
195
- "message": "定义列表项(`<dt>` 和 `<dd>`)必须封装在父 `<dl>` 元素中,以确保屏幕阅读器可以正确地读出它们。[了解如何正确构建定义列表](https://dequeuniversity.com/rules/axe/4.6/dlitem)。"
195
+ "message": "定义列表项(`<dt>` 和 `<dd>`)必须封装在父 `<dl>` 元素中,以确保屏幕阅读器可以正确地读出它们。[了解如何正确构建定义列表](https://dequeuniversity.com/rules/axe/4.7/dlitem)。"
196
196
  },
197
197
  "core/audits/accessibility/dlitem.js | failureTitle": {
198
198
  "message": "定义列表项已封装在 `<dl>` 元素中"
@@ -201,7 +201,7 @@
201
201
  "message": "定义列表项已封装在 `<dl>` 元素中"
202
202
  },
203
203
  "core/audits/accessibility/document-title.js | description": {
204
- "message": "屏幕阅读器用户可借助标题来大致了解某个页面的内容,搜索引擎用户则非常依赖标题来确定某个页面是否与其搜索相关。[详细了解文档标题](https://dequeuniversity.com/rules/axe/4.6/document-title)。"
204
+ "message": "屏幕阅读器用户可借助标题来大致了解某个页面的内容,搜索引擎用户则非常依赖标题来确定某个页面是否与其搜索相关。[详细了解文档标题](https://dequeuniversity.com/rules/axe/4.7/document-title)。"
205
205
  },
206
206
  "core/audits/accessibility/document-title.js | failureTitle": {
207
207
  "message": "文档不含 `<title>` 元素"
@@ -210,7 +210,7 @@
210
210
  "message": "文档包含 `<title>` 元素"
211
211
  },
212
212
  "core/audits/accessibility/duplicate-id-active.js | description": {
213
- "message": "所有可聚焦的元素都必须具有独一无二的 `id`,以确保能被辅助技术识别。[了解如何修正重复的 `id`](https://dequeuniversity.com/rules/axe/4.6/duplicate-id-active)。"
213
+ "message": "所有可聚焦的元素都必须具有独一无二的 `id`,以确保能被辅助技术识别。[了解如何修正重复的 `id`](https://dequeuniversity.com/rules/axe/4.7/duplicate-id-active)。"
214
214
  },
215
215
  "core/audits/accessibility/duplicate-id-active.js | failureTitle": {
216
216
  "message": "处于活动状态的可聚焦元素的 `[id]` 属性不是独一无二的"
@@ -219,7 +219,7 @@
219
219
  "message": "处于活动状态的可聚焦元素的 `[id]` 属性都是独一无二的"
220
220
  },
221
221
  "core/audits/accessibility/duplicate-id-aria.js | description": {
222
- "message": "ARIA ID 的值必须独一无二,才能防止其他实例被辅助技术忽略。[了解如何修正重复的 ARIA ID](https://dequeuniversity.com/rules/axe/4.6/duplicate-id-aria)。"
222
+ "message": "ARIA ID 的值必须独一无二,才能防止其他实例被辅助技术忽略。[了解如何修正重复的 ARIA ID](https://dequeuniversity.com/rules/axe/4.7/duplicate-id-aria)。"
223
223
  },
224
224
  "core/audits/accessibility/duplicate-id-aria.js | failureTitle": {
225
225
  "message": "ARIA ID 不是独一无二的"
@@ -228,7 +228,7 @@
228
228
  "message": "ARIA ID 都是独一无二的"
229
229
  },
230
230
  "core/audits/accessibility/form-field-multiple-labels.js | description": {
231
- "message": "有多个标签的表单字段可能会被辅助技术(如屏幕阅读器)以令人困惑的方式播报出来,因为这些辅助技术可能会使用第一个标签或最后一个标签,也可能会使用所有标签。[了解如何使用表单标签](https://dequeuniversity.com/rules/axe/4.6/form-field-multiple-labels)。"
231
+ "message": "有多个标签的表单字段可能会被辅助技术(如屏幕阅读器)以令人困惑的方式播报出来,因为这些辅助技术可能会使用第一个标签或最后一个标签,也可能会使用所有标签。[了解如何使用表单标签](https://dequeuniversity.com/rules/axe/4.7/form-field-multiple-labels)。"
232
232
  },
233
233
  "core/audits/accessibility/form-field-multiple-labels.js | failureTitle": {
234
234
  "message": "表单字段有多个标签"
@@ -237,7 +237,7 @@
237
237
  "message": "表单字段都没有多个标签"
238
238
  },
239
239
  "core/audits/accessibility/frame-title.js | description": {
240
- "message": "屏幕阅读器用户依靠框架标题来描述框架的内容。[详细了解框架标题](https://dequeuniversity.com/rules/axe/4.6/frame-title)。"
240
+ "message": "屏幕阅读器用户依靠框架标题来描述框架的内容。[详细了解框架标题](https://dequeuniversity.com/rules/axe/4.7/frame-title)。"
241
241
  },
242
242
  "core/audits/accessibility/frame-title.js | failureTitle": {
243
243
  "message": "`<frame>` 或 `<iframe>` 元素缺少标题"
@@ -246,7 +246,7 @@
246
246
  "message": "`<frame>` 或 `<iframe>` 元素有标题"
247
247
  },
248
248
  "core/audits/accessibility/heading-order.js | description": {
249
- "message": "未跳过任何等级且排序正确的标题会准确传达页面的语义结构,从而使得相应页面在使用辅助技术时更易于浏览和理解。[详细了解标题顺序](https://dequeuniversity.com/rules/axe/4.6/heading-order)。"
249
+ "message": "未跳过任何等级且排序正确的标题会准确传达页面的语义结构,从而使得相应页面在使用辅助技术时更易于浏览和理解。[详细了解标题顺序](https://dequeuniversity.com/rules/axe/4.7/heading-order)。"
250
250
  },
251
251
  "core/audits/accessibility/heading-order.js | failureTitle": {
252
252
  "message": "标题元素未按降序显示"
@@ -255,7 +255,7 @@
255
255
  "message": "标题元素按降序显示"
256
256
  },
257
257
  "core/audits/accessibility/html-has-lang.js | description": {
258
- "message": "如果页面未指定 `lang` 属性,屏幕阅读器便会假定该页面采用的是用户在设置屏幕阅读器时选择的默认语言。如果该页面实际上并未采用默认语言,屏幕阅读器可能无法正确读出该页面中的文字。[详细了解 `lang` 属性](https://dequeuniversity.com/rules/axe/4.6/html-has-lang)。"
258
+ "message": "如果页面未指定 `lang` 属性,屏幕阅读器便会假定该页面采用的是用户在设置屏幕阅读器时选择的默认语言。如果该页面实际上并未采用默认语言,屏幕阅读器可能无法正确读出该页面中的文字。[详细了解 `lang` 属性](https://dequeuniversity.com/rules/axe/4.7/html-has-lang)。"
259
259
  },
260
260
  "core/audits/accessibility/html-has-lang.js | failureTitle": {
261
261
  "message": "`<html>` 元素缺少 `[lang]` 属性"
@@ -264,7 +264,7 @@
264
264
  "message": "`<html>` 元素包含 `[lang]` 属性"
265
265
  },
266
266
  "core/audits/accessibility/html-lang-valid.js | description": {
267
- "message": "指定有效的 [BCP 47 语言](https://www.w3.org/International/questions/qa-choosing-language-tags#question)有助于屏幕阅读器正确读出文字。[了解如何使用 `lang` 属性](https://dequeuniversity.com/rules/axe/4.6/html-lang-valid)。"
267
+ "message": "指定有效的 [BCP 47 语言](https://www.w3.org/International/questions/qa-choosing-language-tags#question)有助于屏幕阅读器正确读出文字。[了解如何使用 `lang` 属性](https://dequeuniversity.com/rules/axe/4.7/html-lang-valid)。"
268
268
  },
269
269
  "core/audits/accessibility/html-lang-valid.js | failureTitle": {
270
270
  "message": "`<html>` 元素的 `[lang]` 属性缺少有效值。"
@@ -273,7 +273,7 @@
273
273
  "message": "`<html>` 元素的 `[lang]` 属性具备有效值"
274
274
  },
275
275
  "core/audits/accessibility/image-alt.js | description": {
276
- "message": "说明性元素应力求使用简短的描述性替代文字。未指定 alt 属性的装饰性元素可被忽略。[详细了解 `alt` 属性](https://dequeuniversity.com/rules/axe/4.6/image-alt)。"
276
+ "message": "说明性元素应力求使用简短的描述性替代文字。未指定 alt 属性的装饰性元素可被忽略。[详细了解 `alt` 属性](https://dequeuniversity.com/rules/axe/4.7/image-alt)。"
277
277
  },
278
278
  "core/audits/accessibility/image-alt.js | failureTitle": {
279
279
  "message": "图片元素缺少 `[alt]` 属性"
@@ -282,7 +282,7 @@
282
282
  "message": "图片元素具备 `[alt]` 属性"
283
283
  },
284
284
  "core/audits/accessibility/input-image-alt.js | description": {
285
- "message": "将图片用作 `<input>` 按钮时,提供替代文字有助于屏幕阅读器用户了解该按钮的用途。[了解输入图片替代文字](https://dequeuniversity.com/rules/axe/4.6/input-image-alt)。"
285
+ "message": "将图片用作 `<input>` 按钮时,提供替代文字有助于屏幕阅读器用户了解该按钮的用途。[了解输入图片替代文字](https://dequeuniversity.com/rules/axe/4.7/input-image-alt)。"
286
286
  },
287
287
  "core/audits/accessibility/input-image-alt.js | failureTitle": {
288
288
  "message": "`<input type=\"image\">` 元素无对应的 `[alt]` 文字"
@@ -291,7 +291,7 @@
291
291
  "message": "`<input type=\"image\">` 元素有对应的 `[alt]` 文字"
292
292
  },
293
293
  "core/audits/accessibility/label.js | description": {
294
- "message": "标签可确保辅助技术(如屏幕阅读器)正确读出表单控件。[详细了解表单元素标签](https://dequeuniversity.com/rules/axe/4.6/label)。"
294
+ "message": "标签可确保辅助技术(如屏幕阅读器)正确读出表单控件。[详细了解表单元素标签](https://dequeuniversity.com/rules/axe/4.7/label)。"
295
295
  },
296
296
  "core/audits/accessibility/label.js | failureTitle": {
297
297
  "message": "表单元素不具备关联的标签"
@@ -300,7 +300,7 @@
300
300
  "message": "表单元素具有关联的标签"
301
301
  },
302
302
  "core/audits/accessibility/link-name.js | description": {
303
- "message": "请确保链接文字(以及用作链接的图片替代文字)可识别、独一无二且可聚焦,这样做会提升屏幕阅读器用户的导航体验。[了解如何使链接可供访问](https://dequeuniversity.com/rules/axe/4.6/link-name)。"
303
+ "message": "请确保链接文字(以及用作链接的图片替代文字)可识别、独一无二且可聚焦,这样做会提升屏幕阅读器用户的导航体验。[了解如何使链接可供访问](https://dequeuniversity.com/rules/axe/4.7/link-name)。"
304
304
  },
305
305
  "core/audits/accessibility/link-name.js | failureTitle": {
306
306
  "message": "链接缺少可识别的名称"
@@ -309,7 +309,7 @@
309
309
  "message": "链接具备可识别的名称"
310
310
  },
311
311
  "core/audits/accessibility/list.js | description": {
312
- "message": "屏幕阅读器会采用特定的方法来读出列表内容。确保列表结构正确有助于屏幕阅读器顺利读出相应内容。[详细了解适当的列表结构](https://dequeuniversity.com/rules/axe/4.6/list)。"
312
+ "message": "屏幕阅读器会采用特定的方法来读出列表内容。确保列表结构正确有助于屏幕阅读器顺利读出相应内容。[详细了解适当的列表结构](https://dequeuniversity.com/rules/axe/4.7/list)。"
313
313
  },
314
314
  "core/audits/accessibility/list.js | failureTitle": {
315
315
  "message": "列表并非只包含 `<li>` 元素和脚本支持元素(`<script>` 和 `<template>`)。"
@@ -318,7 +318,7 @@
318
318
  "message": "列表只包含 `<li>` 元素和脚本支持元素(`<script>` 和 `<template>`)。"
319
319
  },
320
320
  "core/audits/accessibility/listitem.js | description": {
321
- "message": "屏幕阅读器要求列表项 (`<li>`) 必须包含在父 `<ul>`、`<ol>` 或 `<menu>` 中,这样才能正确读出它们。[详细了解适当的列表结构](https://dequeuniversity.com/rules/axe/4.6/listitem)。"
321
+ "message": "屏幕阅读器要求列表项 (`<li>`) 必须包含在父 `<ul>`、`<ol>` 或 `<menu>` 中,这样才能正确读出它们。[详细了解适当的列表结构](https://dequeuniversity.com/rules/axe/4.7/listitem)。"
322
322
  },
323
323
  "core/audits/accessibility/listitem.js | failureTitle": {
324
324
  "message": "列表项 (`<li>`) 未包含在 `<ul>`、`<ol>` 或 `<menu>` 父元素中。"
@@ -327,7 +327,7 @@
327
327
  "message": "列表项 (`<li>`) 包含在 `<ul>`、`<ol>` 或 `<menu>` 父元素中"
328
328
  },
329
329
  "core/audits/accessibility/meta-refresh.js | description": {
330
- "message": "用户并不希望网页自动刷新,因为自动刷新会不断地将焦点移回到页面顶部。这可能会让用户感到沮丧或困惑。[详细了解刷新元标记](https://dequeuniversity.com/rules/axe/4.6/meta-refresh)。"
330
+ "message": "用户并不希望网页自动刷新,因为自动刷新会不断地将焦点移回到页面顶部。这可能会让用户感到沮丧或困惑。[详细了解刷新元标记](https://dequeuniversity.com/rules/axe/4.7/meta-refresh)。"
331
331
  },
332
332
  "core/audits/accessibility/meta-refresh.js | failureTitle": {
333
333
  "message": "文档使用了 `<meta http-equiv=\"refresh\">`"
@@ -336,7 +336,7 @@
336
336
  "message": "文档未使用 `<meta http-equiv=\"refresh\">`"
337
337
  },
338
338
  "core/audits/accessibility/meta-viewport.js | description": {
339
- "message": "对于必须依靠放大屏幕才能清晰看到网页内容的弱视用户而言,停用缩放功能会给他们带来问题。[详细了解视口元标记](https://dequeuniversity.com/rules/axe/4.6/meta-viewport)。"
339
+ "message": "对于必须依靠放大屏幕才能清晰看到网页内容的弱视用户而言,停用缩放功能会给他们带来问题。[详细了解视口元标记](https://dequeuniversity.com/rules/axe/4.7/meta-viewport)。"
340
340
  },
341
341
  "core/audits/accessibility/meta-viewport.js | failureTitle": {
342
342
  "message": "`<meta name=\"viewport\">` 元素中使用了 `[user-scalable=\"no\"]`,或者 `[maximum-scale]` 属性小于 5。"
@@ -345,7 +345,7 @@
345
345
  "message": "`[user-scalable=\"no\"]` 未用在 `<meta name=\"viewport\">` 元素中,并且 `[maximum-scale]` 属性不小于 5。"
346
346
  },
347
347
  "core/audits/accessibility/object-alt.js | description": {
348
- "message": "屏幕阅读器无法转换非文字内容。通过向 `<object>` 元素添加替代文字,可帮助屏幕阅读器将含义传达给用户。[详细了解 `object` 元素的替代文字](https://dequeuniversity.com/rules/axe/4.6/object-alt)。"
348
+ "message": "屏幕阅读器无法转换非文字内容。通过向 `<object>` 元素添加替代文字,可帮助屏幕阅读器将含义传达给用户。[详细了解 `object` 元素的替代文字](https://dequeuniversity.com/rules/axe/4.7/object-alt)。"
349
349
  },
350
350
  "core/audits/accessibility/object-alt.js | failureTitle": {
351
351
  "message": "`<object>` 元素无对应的替代文字"
@@ -354,7 +354,7 @@
354
354
  "message": "`<object>` 元素有对应的替代文字"
355
355
  },
356
356
  "core/audits/accessibility/tabindex.js | description": {
357
- "message": "值大于 0 意味着明确的导航顺序。尽管这在技术上可行,但往往会让依赖辅助技术的用户感到沮丧。[详细了解 `tabindex` 属性](https://dequeuniversity.com/rules/axe/4.6/tabindex)。"
357
+ "message": "值大于 0 意味着明确的导航顺序。尽管这在技术上可行,但往往会让依赖辅助技术的用户感到沮丧。[详细了解 `tabindex` 属性](https://dequeuniversity.com/rules/axe/4.7/tabindex)。"
358
358
  },
359
359
  "core/audits/accessibility/tabindex.js | failureTitle": {
360
360
  "message": "一些元素的 `[tabindex]` 值大于 0"
@@ -363,7 +363,7 @@
363
363
  "message": "所有元素的 `[tabindex]` 值都不大于 0"
364
364
  },
365
365
  "core/audits/accessibility/td-headers-attr.js | description": {
366
- "message": "屏幕阅读器提供了更便于用户浏览表格内容的功能。请确保那些使用 `[headers]` 属性的 `<td>` 单元格仅引用同一个表格中的其他单元格,这样做可提升屏幕阅读器用户的体验。[详细了解 `headers` 属性](https://dequeuniversity.com/rules/axe/4.6/td-headers-attr)。"
366
+ "message": "屏幕阅读器提供了更便于用户浏览表格内容的功能。请确保那些使用 `[headers]` 属性的 `<td>` 单元格仅引用同一个表格中的其他单元格,这样做可提升屏幕阅读器用户的体验。[详细了解 `headers` 属性](https://dequeuniversity.com/rules/axe/4.7/td-headers-attr)。"
367
367
  },
368
368
  "core/audits/accessibility/td-headers-attr.js | failureTitle": {
369
369
  "message": "`<table>` 元素中使用 `[headers]` 属性的单元格引用了在同一表格中找不到的元素 `id`。"
@@ -372,7 +372,7 @@
372
372
  "message": "`<table>` 元素中使用 `[headers]` 属性的单元格引用的是同一表格中的单元格。"
373
373
  },
374
374
  "core/audits/accessibility/th-has-data-cells.js | description": {
375
- "message": "屏幕阅读器提供了更便于用户浏览表格内容的功能。确保表格标头始终引用特定一组单元格可以提升屏幕阅读器用户的体验。[详细了解表格标头](https://dequeuniversity.com/rules/axe/4.6/th-has-data-cells)。"
375
+ "message": "屏幕阅读器提供了更便于用户浏览表格内容的功能。确保表格标头始终引用特定一组单元格可以提升屏幕阅读器用户的体验。[详细了解表格标头](https://dequeuniversity.com/rules/axe/4.7/th-has-data-cells)。"
376
376
  },
377
377
  "core/audits/accessibility/th-has-data-cells.js | failureTitle": {
378
378
  "message": "`<th>` 元素和 `[role=\"columnheader\"/\"rowheader\"]` 的元素缺少它们所描述的数据单元格。"
@@ -381,7 +381,7 @@
381
381
  "message": "`<th>` 元素和 `[role=\"columnheader\"/\"rowheader\"]` 的元素具备它们所描述的数据单元格。"
382
382
  },
383
383
  "core/audits/accessibility/valid-lang.js | description": {
384
- "message": "为元素指定有效的 [BCP 47 语言](https://www.w3.org/International/questions/qa-choosing-language-tags#question)有助于确保屏幕阅读器正确读出文字。[了解如何使用 `lang` 属性](https://dequeuniversity.com/rules/axe/4.6/valid-lang)。"
384
+ "message": "为元素指定有效的 [BCP 47 语言](https://www.w3.org/International/questions/qa-choosing-language-tags#question)有助于确保屏幕阅读器正确读出文字。[了解如何使用 `lang` 属性](https://dequeuniversity.com/rules/axe/4.7/valid-lang)。"
385
385
  },
386
386
  "core/audits/accessibility/valid-lang.js | failureTitle": {
387
387
  "message": "`[lang]` 属性缺少有效值"
@@ -390,7 +390,7 @@
390
390
  "message": "`[lang]` 属性的值有效"
391
391
  },
392
392
  "core/audits/accessibility/video-caption.js | description": {
393
- "message": "如果视频提供了字幕,失聪用户和听障用户便能更轻松地获取此视频中的信息。[详细了解视频字幕](https://dequeuniversity.com/rules/axe/4.6/video-caption)。"
393
+ "message": "如果视频提供了字幕,失聪用户和听障用户便能更轻松地获取此视频中的信息。[详细了解视频字幕](https://dequeuniversity.com/rules/axe/4.7/video-caption)。"
394
394
  },
395
395
  "core/audits/accessibility/video-caption.js | failureTitle": {
396
396
  "message": "`<video>` 元素缺少带 `[kind=\"captions\"]` 的 `<track>` 元素。"
@@ -765,13 +765,13 @@
765
765
  "message": "避免在网页加载时请求通知权限"
766
766
  },
767
767
  "core/audits/dobetterweb/paste-preventing-inputs.js | description": {
768
- "message": "Preventing input pasting is a UX anti-pattern, and undermines good security policy. [Learn more about user-friendly input fields](https://developer.chrome.com/docs/lighthouse/best-practices/paste-preventing-inputs/)."
768
+ "message": "禁用粘贴式输入功能会对用户体验产生不良影响,停用密码管理工具则会降低安全性。[详细了解方便用户使用的输入字段](https://developer.chrome.com/docs/lighthouse/best-practices/paste-preventing-inputs/)"
769
769
  },
770
770
  "core/audits/dobetterweb/paste-preventing-inputs.js | failureTitle": {
771
- "message": "Prevents users from pasting into input fields"
771
+ "message": "阻止用户将内容粘贴到输入字段中"
772
772
  },
773
773
  "core/audits/dobetterweb/paste-preventing-inputs.js | title": {
774
- "message": "Allows users to paste into input fields"
774
+ "message": "允许用户将内容粘贴到输入字段中"
775
775
  },
776
776
  "core/audits/dobetterweb/uses-http2.js | columnProtocol": {
777
777
  "message": "协议"
@@ -980,9 +980,30 @@
980
980
  "core/audits/is-on-https.js | warning": {
981
981
  "message": "允许(附带警告)"
982
982
  },
983
+ "core/audits/largest-contentful-paint-element.js | columnPercentOfLCP": {
984
+ "message": "% of LCP"
985
+ },
986
+ "core/audits/largest-contentful-paint-element.js | columnPhase": {
987
+ "message": "Phase"
988
+ },
989
+ "core/audits/largest-contentful-paint-element.js | columnTiming": {
990
+ "message": "Timing"
991
+ },
983
992
  "core/audits/largest-contentful-paint-element.js | description": {
984
993
  "message": "这是此视口内绘制的最大内容元素。[详细了解 Largest Contentful Paint 元素](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)"
985
994
  },
995
+ "core/audits/largest-contentful-paint-element.js | itemLoadDelay": {
996
+ "message": "Load Delay"
997
+ },
998
+ "core/audits/largest-contentful-paint-element.js | itemLoadTime": {
999
+ "message": "Load Time"
1000
+ },
1001
+ "core/audits/largest-contentful-paint-element.js | itemRenderDelay": {
1002
+ "message": "Render Delay"
1003
+ },
1004
+ "core/audits/largest-contentful-paint-element.js | itemTTFB": {
1005
+ "message": "TTFB"
1006
+ },
986
1007
  "core/audits/largest-contentful-paint-element.js | title": {
987
1008
  "message": "最大内容渲染时间元素"
988
1009
  },
@@ -1323,7 +1344,7 @@
1323
1344
  "message": "robots.txt 有效"
1324
1345
  },
1325
1346
  "core/audits/seo/tap-targets.js | description": {
1326
- "message": "交互式元素(例如按钮和链接)应足够大 (48x48px),周围有足够的空间以便用户轻松点按,且不遮挡其他元素。[详细了解点按目标](https://developer.chrome.com/docs/lighthouse/seo/tap-targets/)。"
1347
+ "message": "交互式元素(例如按钮和链接)应足够大 (48x48px),或者周围有足够的空间以便用户轻松点按,且不遮挡其他元素。[详细了解点按目标](https://developer.chrome.com/docs/lighthouse/seo/tap-targets/)。"
1327
1348
  },
1328
1349
  "core/audits/seo/tap-targets.js | displayValue": {
1329
1350
  "message": "{decimalProportion, number, percent} 的点按目标大小合适"
@@ -1715,6 +1736,9 @@
1715
1736
  "core/gather/driver/storage.js | warningOriginDataTimeout": {
1716
1737
  "message": "原始数据清除操作超时。请尝试再次审核此网页。如果问题仍然存在,请报告错误。"
1717
1738
  },
1739
+ "core/gather/gatherers/link-elements.js | headerParseWarning": {
1740
+ "message": "解析 `link` 标头 ({error}) 时出错:`{header}`"
1741
+ },
1718
1742
  "core/lib/bf-cache-strings.js | HTTPMethodNotGET": {
1719
1743
  "message": "只有通过 GET 请求进行加载的网页才能储存至往返缓存。"
1720
1744
  },
@@ -2735,6 +2759,33 @@
2735
2759
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-responsive-images": {
2736
2760
  "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/speed) 并启用“`Resize Images`”设置,即可调整图片大小以适合设备的大小,从而减少网络载荷量。"
2737
2761
  },
2762
+ "node_modules/lighthouse-stack-packs/packs/gatsby.js | modern-image-formats": {
2763
+ "message": "Use the `gatsby-plugin-image` component instead of `<img>` to automatically optimize image format. [Learn more](https://www.gatsbyjs.com/docs/how-to/images-and-media/using-gatsby-plugin-image)."
2764
+ },
2765
+ "node_modules/lighthouse-stack-packs/packs/gatsby.js | offscreen-images": {
2766
+ "message": "Use the `gatsby-plugin-image` component instead of `<img>` to automatically lazy-load images. [Learn more](https://www.gatsbyjs.com/docs/how-to/images-and-media/using-gatsby-plugin-image)."
2767
+ },
2768
+ "node_modules/lighthouse-stack-packs/packs/gatsby.js | prioritize-lcp-image": {
2769
+ "message": "Use the `gatsby-plugin-image` component and set the `loading` prop to `eager`. [Learn more](https://www.gatsbyjs.com/docs/reference/built-in-components/gatsby-plugin-image#shared-props)."
2770
+ },
2771
+ "node_modules/lighthouse-stack-packs/packs/gatsby.js | render-blocking-resources": {
2772
+ "message": "Use the `Gatsby Script API` to defer loading of non-critical third-party scripts. [Learn more](https://www.gatsbyjs.com/docs/reference/built-in-components/gatsby-script/)."
2773
+ },
2774
+ "node_modules/lighthouse-stack-packs/packs/gatsby.js | unused-css-rules": {
2775
+ "message": "Use the `PurgeCSS` `Gatsby` plugin to remove unused rules from stylesheets. [Learn more](https://purgecss.com/plugins/gatsby.html)."
2776
+ },
2777
+ "node_modules/lighthouse-stack-packs/packs/gatsby.js | unused-javascript": {
2778
+ "message": "Use `Webpack Bundle Analyzer` to detect unused JavaScript code. [Learn more](https://www.gatsbyjs.com/plugins/gatsby-plugin-webpack-bundle-analyser-v2/)"
2779
+ },
2780
+ "node_modules/lighthouse-stack-packs/packs/gatsby.js | uses-long-cache-ttl": {
2781
+ "message": "Configure caching for immutable assets. [Learn more](https://www.gatsbyjs.com/docs/how-to/previews-deploys-hosting/caching/)."
2782
+ },
2783
+ "node_modules/lighthouse-stack-packs/packs/gatsby.js | uses-optimized-images": {
2784
+ "message": "Use the `gatsby-plugin-image` component instead of `<img>` to adjust image quality. [Learn more](https://www.gatsbyjs.com/docs/how-to/images-and-media/using-gatsby-plugin-image)."
2785
+ },
2786
+ "node_modules/lighthouse-stack-packs/packs/gatsby.js | uses-responsive-images": {
2787
+ "message": "Use the `gatsby-plugin-image` component to set appropriate `sizes`. [Learn more](https://www.gatsbyjs.com/docs/how-to/images-and-media/using-gatsby-plugin-image)."
2788
+ },
2738
2789
  "node_modules/lighthouse-stack-packs/packs/joomla.js | efficient-animated-content": {
2739
2790
  "message": "建议您将 GIF 上传到可让其作为 HTML5 视频嵌入的服务。"
2740
2791
  },
@@ -2814,10 +2865,10 @@
2814
2865
  "message": "您可以通过[修改主题背景的布局](https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/layouts/xml-manage.html)来添加 `<link rel=preload>` 标记。"
2815
2866
  },
2816
2867
  "node_modules/lighthouse-stack-packs/packs/next.js | modern-image-formats": {
2817
- "message": "请使用 `next/image` 组件(而非 `<img>`)来自动优化图片格式。[了解详情](https://nextjs.org/docs/basic-features/image-optimization)"
2868
+ "message": "Use the `next/image` component instead of `<img>` to automatically optimize image format. [Learn more](https://nextjs.org/docs/basic-features/image-optimization)."
2818
2869
  },
2819
2870
  "node_modules/lighthouse-stack-packs/packs/next.js | offscreen-images": {
2820
- "message": "请使用 `next/image` 组件(而非 `<img>`)来自动延迟加载图片。[了解详情](https://nextjs.org/docs/basic-features/image-optimization)"
2871
+ "message": "Use the `next/image` component instead of `<img>` to automatically lazy-load images. [Learn more](https://nextjs.org/docs/basic-features/image-optimization)."
2821
2872
  },
2822
2873
  "node_modules/lighthouse-stack-packs/packs/next.js | prioritize-lcp-image": {
2823
2874
  "message": "您只需使用 `next/image` 组件并将“priority”设为 true,即可预加载 LCP 图片。[了解详情](https://nextjs.org/docs/api-reference/next/image#priority)。"
@@ -2832,7 +2883,7 @@
2832
2883
  "message": "建议您在 `Next.js` 配置中设置 `PurgeCSS` 以从样式表中移除未使用的规则。[了解详情](https://purgecss.com/guides/next.html)。"
2833
2884
  },
2834
2885
  "node_modules/lighthouse-stack-packs/packs/next.js | unused-javascript": {
2835
- "message": "您只需使用 `Webpack Bundle Analyzer`,即可检测未用到的 JavaScript 代码。[了解详情](https://github.com/vercel/next.js/tree/canary/packages/next-bundle-analyzer)"
2886
+ "message": "Use `Webpack Bundle Analyzer` to detect unused JavaScript code. [Learn more](https://github.com/vercel/next.js/tree/canary/packages/next-bundle-analyzer)"
2836
2887
  },
2837
2888
  "node_modules/lighthouse-stack-packs/packs/next.js | user-timings": {
2838
2889
  "message": "建议您使用 `Next.js Analytics` 衡量应用的实际性能。[了解详情](https://nextjs.org/docs/advanced-features/measuring-performance)。"
@@ -2841,7 +2892,7 @@
2841
2892
  "message": "请为不可变资源和`Server-side Rendered` (SSR) 网页配置缓存。[了解详情](https://nextjs.org/docs/going-to-production#caching)。"
2842
2893
  },
2843
2894
  "node_modules/lighthouse-stack-packs/packs/next.js | uses-optimized-images": {
2844
- "message": "请使用 `next/image` 组件(而非 `<img>`)来调整图片质量。[了解详情](https://nextjs.org/docs/basic-features/image-optimization)"
2895
+ "message": "Use the `next/image` component instead of `<img>` to adjust image quality. [Learn more](https://nextjs.org/docs/basic-features/image-optimization)."
2845
2896
  },
2846
2897
  "node_modules/lighthouse-stack-packs/packs/next.js | uses-responsive-images": {
2847
2898
  "message": "请使用 `next/image` 组件设置适当的 `sizes`。[了解详情](https://nextjs.org/docs/api-reference/next/image#sizes)。"
@@ -3047,6 +3098,9 @@
3047
3098
  "report/renderer/report-utils.js | expandView": {
3048
3099
  "message": "展开视图"
3049
3100
  },
3101
+ "report/renderer/report-utils.js | firstPartyChipLabel": {
3102
+ "message": "第一方"
3103
+ },
3050
3104
  "report/renderer/report-utils.js | footerIssue": {
3051
3105
  "message": "提交问题"
3052
3106
  },
@@ -3065,6 +3119,9 @@
3065
3119
  "report/renderer/report-utils.js | notApplicableAuditsGroupTitle": {
3066
3120
  "message": "不适用"
3067
3121
  },
3122
+ "report/renderer/report-utils.js | openInANewTabTooltip": {
3123
+ "message": "在新标签页中打开"
3124
+ },
3068
3125
  "report/renderer/report-utils.js | opportunityResourceColumnLabel": {
3069
3126
  "message": "优化建议"
3070
3127
  },
@@ -3084,7 +3141,7 @@
3084
3141
  "message": "模拟桌面设备"
3085
3142
  },
3086
3143
  "report/renderer/report-utils.js | runtimeMobileEmulation": {
3087
- "message": "Emulated Moto G Power"
3144
+ "message": "模拟了 Moto G 电源"
3088
3145
  },
3089
3146
  "report/renderer/report-utils.js | runtimeNoEmulation": {
3090
3147
  "message": "无模拟"
@@ -3143,6 +3200,9 @@
3143
3200
  "report/renderer/report-utils.js | toplevelWarningsMessage": {
3144
3201
  "message": "此次 Lighthouse 运行并不顺利,原因如下:"
3145
3202
  },
3203
+ "report/renderer/report-utils.js | unattributable": {
3204
+ "message": "无法归因"
3205
+ },
3146
3206
  "report/renderer/report-utils.js | varianceDisclaimer": {
3147
3207
  "message": "这些都是估算值,且可能会因时而异。系统会直接基于这些指标来[计算性能得分](https://developer.chrome.com/docs/lighthouse/performance/performance-scoring/)。"
3148
3208
  },