chrome-devtools-frontend 1.0.1526630 → 1.0.1529186

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 (339) hide show
  1. package/docs/ui_engineering.md +159 -0
  2. package/eslint.config.mjs +6 -1
  3. package/front_end/core/host/UserMetrics.ts +2 -1
  4. package/front_end/core/i18n/i18nImpl.ts +6 -1
  5. package/front_end/core/protocol_client/protocol_client.ts +1 -1
  6. package/front_end/core/root/Runtime.ts +38 -4
  7. package/front_end/core/sdk/CSSMatchedStyles.ts +50 -7
  8. package/front_end/core/sdk/CSSRule.ts +35 -6
  9. package/front_end/core/sdk/Connections.ts +2 -1
  10. package/front_end/core/sdk/DOMModel.ts +4 -0
  11. package/front_end/core/sdk/DebuggerModel.ts +5 -1
  12. package/front_end/core/sdk/NetworkManager.ts +267 -34
  13. package/front_end/core/sdk/PreloadingModel.ts +82 -17
  14. package/front_end/core/sdk/RehydratingConnection.snapshot.txt +1 -1
  15. package/front_end/core/sdk/RehydratingConnection.ts +29 -4
  16. package/front_end/core/sdk/ScopeTreeCache.ts +8 -3
  17. package/front_end/core/sdk/SourceMap.ts +41 -11
  18. package/front_end/core/sdk/SourceMapManager.ts +13 -2
  19. package/front_end/core/sdk/SourceMapScopesInfo.ts +49 -2
  20. package/front_end/core/sdk/TargetManager.ts +0 -22
  21. package/front_end/core/sdk/TraceObject.ts +8 -7
  22. package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshot.ts +81 -0
  23. package/front_end/entrypoints/inspector_main/InspectorMain.ts +3 -1
  24. package/front_end/entrypoints/main/GlobalAiButton.ts +1 -0
  25. package/front_end/entrypoints/main/MainImpl.ts +42 -28
  26. package/front_end/generated/InspectorBackendCommands.js +3 -2
  27. package/front_end/generated/SupportedCSSProperties.js +2 -0
  28. package/front_end/generated/protocol.ts +17 -3
  29. package/front_end/models/ai_assistance/BuiltInAi.ts +111 -0
  30. package/front_end/models/ai_assistance/ConversationHandler.ts +15 -14
  31. package/front_end/models/ai_assistance/ai_assistance.ts +53 -24
  32. package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.snapshot.txt +105 -0
  33. package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.ts +6 -1
  34. package/front_end/models/extensions/ExtensionView.ts +3 -0
  35. package/front_end/models/javascript_metadata/NativeFunctions.js +31 -27
  36. package/front_end/models/live-metrics/web-vitals-injected/web-vitals-injected.ts +31 -29
  37. package/front_end/models/persistence/NetworkPersistenceManager.ts +3 -5
  38. package/front_end/models/persistence/PersistenceImpl.ts +0 -5
  39. package/front_end/models/persistence/persistence-meta.ts +0 -31
  40. package/front_end/models/persistence/persistence.ts +0 -6
  41. package/front_end/models/source_map_scopes/NamesResolver.ts +5 -11
  42. package/front_end/models/stack_trace/Trie.ts +9 -0
  43. package/front_end/models/trace/lantern/types/Lantern.ts +1 -1
  44. package/front_end/panels/accessibility/AXBreadcrumbsPane.ts +1 -0
  45. package/front_end/panels/accessibility/AccessibilitySidebarView.ts +1 -0
  46. package/front_end/panels/ai_assistance/AiAssistancePanel.ts +120 -113
  47. package/front_end/panels/ai_assistance/PatchWidget.ts +9 -8
  48. package/front_end/panels/ai_assistance/SelectWorkspaceDialog.ts +2 -0
  49. package/front_end/panels/ai_assistance/components/ChatView.ts +29 -29
  50. package/front_end/panels/ai_assistance/components/UserActionRow.ts +1 -0
  51. package/front_end/panels/animation/AnimationTimeline.ts +1 -0
  52. package/front_end/panels/application/CookieItemsView.ts +1 -0
  53. package/front_end/panels/application/KeyValueStorageItemsView.ts +1 -0
  54. package/front_end/panels/application/ServiceWorkerCacheViews.ts +2 -0
  55. package/front_end/panels/application/preloading/components/PreloadingDetailsReportView.ts +11 -5
  56. package/front_end/panels/application/preloading/components/PreloadingMismatchedHeadersGrid.ts +2 -2
  57. package/front_end/panels/application/preloading/components/PreloadingString.ts +7 -5
  58. package/front_end/panels/application/preloading/components/UsedPreloadingView.ts +22 -10
  59. package/front_end/panels/changes/CombinedDiffView.ts +1 -0
  60. package/front_end/{models/persistence → panels/common}/PersistenceUtils.ts +15 -17
  61. package/front_end/panels/common/common.ts +1 -0
  62. package/front_end/panels/console/ConsoleInsightTeaser.ts +369 -0
  63. package/front_end/panels/console/ConsolePanel.ts +2 -0
  64. package/front_end/panels/console/ConsolePrompt.ts +12 -2
  65. package/front_end/panels/console/ConsoleSidebar.ts +1 -1
  66. package/front_end/panels/console/ConsoleView.ts +12 -0
  67. package/front_end/panels/console/ConsoleViewMessage.ts +44 -0
  68. package/front_end/panels/{explain → console}/PromptBuilder.ts +12 -7
  69. package/front_end/panels/console/console-meta.ts +14 -0
  70. package/front_end/panels/console/console.ts +6 -0
  71. package/front_end/panels/console/consoleInsightTeaser.css +83 -0
  72. package/front_end/panels/coverage/CoverageListView.ts +29 -11
  73. package/front_end/panels/coverage/CoverageView.ts +292 -284
  74. package/front_end/panels/coverage/coverageView.css +17 -0
  75. package/front_end/panels/elements/ComputedStyleWidget.ts +1 -0
  76. package/front_end/panels/elements/LayoutPane.ts +1 -0
  77. package/front_end/panels/elements/NodeStackTraceWidget.ts +1 -0
  78. package/front_end/panels/elements/StylePropertyTreeElement.ts +5 -1
  79. package/front_end/panels/elements/stylePropertiesTreeOutline.css +17 -0
  80. package/front_end/panels/emulation/DeviceModeView.ts +2 -0
  81. package/front_end/panels/explain/ActionDelegate.ts +4 -2
  82. package/front_end/panels/explain/components/ConsoleInsight.ts +14 -12
  83. package/front_end/panels/explain/explain-meta.ts +7 -0
  84. package/front_end/panels/explain/explain.ts +0 -1
  85. package/front_end/panels/js_timeline/js_timeline-meta.ts +1 -1
  86. package/front_end/panels/layer_viewer/Layers3DView.ts +2 -0
  87. package/front_end/panels/lighthouse/LighthouseReportSelector.ts +1 -0
  88. package/front_end/panels/linear_memory_inspector/LinearMemoryInspectorPane.ts +1 -0
  89. package/front_end/panels/media/MainView.ts +1 -0
  90. package/front_end/panels/media/TickingFlameChart.ts +2 -0
  91. package/front_end/panels/network/BlockedURLsPane.ts +237 -108
  92. package/front_end/panels/network/EventSourceMessagesView.ts +1 -0
  93. package/front_end/panels/network/NetworkItemView.ts +1 -0
  94. package/front_end/panels/network/NetworkLogView.ts +9 -7
  95. package/front_end/panels/network/NetworkOverview.ts +1 -0
  96. package/front_end/panels/network/RequestCookiesView.ts +1 -0
  97. package/front_end/panels/network/RequestHTMLView.ts +1 -0
  98. package/front_end/panels/network/RequestInitiatorView.ts +1 -0
  99. package/front_end/panels/network/RequestPayloadView.ts +1 -0
  100. package/front_end/panels/network/RequestPreviewView.ts +1 -0
  101. package/front_end/panels/network/RequestResponseView.ts +1 -0
  102. package/front_end/panels/network/RequestTimingView.ts +2 -0
  103. package/front_end/panels/network/ResourceDirectSocketChunkView.ts +1 -0
  104. package/front_end/panels/network/ResourceWebSocketFrameView.ts +1 -0
  105. package/front_end/panels/network/components/RequestHeadersView.ts +2 -0
  106. package/front_end/panels/network/components/RequestTrustTokensView.ts +2 -0
  107. package/front_end/panels/performance_monitor/PerformanceMonitor.ts +2 -0
  108. package/front_end/panels/profiler/HeapSnapshotDataGrids.ts +2 -0
  109. package/front_end/panels/profiler/HeapSnapshotView.ts +7 -0
  110. package/front_end/panels/profiler/IsolateSelector.ts +1 -0
  111. package/front_end/panels/profiler/LiveHeapProfileView.ts +1 -0
  112. package/front_end/panels/profiler/ProfileView.ts +1 -0
  113. package/front_end/panels/protocol_monitor/ProtocolMonitor.ts +1 -0
  114. package/front_end/panels/recorder/RecorderPanel.ts +2 -0
  115. package/front_end/panels/screencast/ScreencastView.ts +1 -0
  116. package/front_end/panels/search/SearchView.ts +1 -0
  117. package/front_end/panels/settings/AISettingsTab.ts +3 -3
  118. package/front_end/{models/persistence → panels/settings}/EditFileSystemView.ts +3 -6
  119. package/front_end/panels/settings/WorkspaceSettingsTab.ts +4 -1
  120. package/front_end/panels/settings/emulation/components/UserAgentClientHintsForm.ts +2 -2
  121. package/front_end/panels/settings/settings.ts +2 -0
  122. package/front_end/panels/sources/AiCodeCompletionPlugin.ts +12 -0
  123. package/front_end/panels/sources/BreakpointsView.ts +1 -0
  124. package/front_end/panels/sources/DebuggerPlugin.ts +1 -0
  125. package/front_end/{models/persistence → panels/sources}/PersistenceActions.ts +8 -12
  126. package/front_end/panels/sources/TabbedEditorContainer.ts +2 -1
  127. package/front_end/panels/sources/UISourceCodeFrame.ts +17 -2
  128. package/front_end/panels/sources/sources-meta.ts +15 -0
  129. package/front_end/panels/sources/sources.ts +2 -0
  130. package/front_end/panels/timeline/README.md +2 -2
  131. package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +1 -1
  132. package/front_end/panels/timeline/TimelineFlameChartView.ts +4 -3
  133. package/front_end/panels/timeline/TimelineLayersView.ts +1 -0
  134. package/front_end/panels/timeline/TimelinePaintProfilerView.ts +114 -37
  135. package/front_end/panels/timeline/TimelinePanel.ts +43 -62
  136. package/front_end/panels/timeline/TimelineTreeView.ts +1 -0
  137. package/front_end/panels/timeline/components/LiveMetricsView.ts +4 -8
  138. package/front_end/panels/timeline/components/Sidebar.ts +2 -0
  139. package/front_end/panels/timeline/components/SidebarSingleInsightSet.ts +1 -1
  140. package/front_end/panels/timeline/components/insights/BaseInsightComponent.ts +7 -7
  141. package/front_end/panels/timeline/overlays/OverlaysImpl.ts +1 -1
  142. package/front_end/panels/timeline/overlays/components/EntryLabelOverlay.ts +4 -4
  143. package/front_end/panels/utils/utils.ts +2 -1
  144. package/front_end/panels/web_audio/WebAudioView.ts +1 -0
  145. package/front_end/third_party/chromium/README.chromium +1 -1
  146. package/front_end/third_party/diff/diff_match_patch.js +1 -1
  147. package/front_end/third_party/lighthouse/README.chromium +2 -2
  148. package/front_end/third_party/lighthouse/lighthouse-dt-bundle.js +1530 -2426
  149. package/front_end/third_party/lighthouse/locales/ar-XB.json +107 -455
  150. package/front_end/third_party/lighthouse/locales/ar.json +107 -455
  151. package/front_end/third_party/lighthouse/locales/bg.json +96 -444
  152. package/front_end/third_party/lighthouse/locales/ca.json +96 -444
  153. package/front_end/third_party/lighthouse/locales/cs.json +96 -444
  154. package/front_end/third_party/lighthouse/locales/da.json +96 -444
  155. package/front_end/third_party/lighthouse/locales/de.json +96 -444
  156. package/front_end/third_party/lighthouse/locales/el.json +96 -444
  157. package/front_end/third_party/lighthouse/locales/en-GB.json +96 -444
  158. package/front_end/third_party/lighthouse/locales/en-US.json +116 -467
  159. package/front_end/third_party/lighthouse/locales/en-XA.json +93 -441
  160. package/front_end/third_party/lighthouse/locales/en-XL.json +116 -467
  161. package/front_end/third_party/lighthouse/locales/es-419.json +96 -444
  162. package/front_end/third_party/lighthouse/locales/es.json +96 -444
  163. package/front_end/third_party/lighthouse/locales/fi.json +96 -444
  164. package/front_end/third_party/lighthouse/locales/fil.json +96 -444
  165. package/front_end/third_party/lighthouse/locales/fr.json +96 -444
  166. package/front_end/third_party/lighthouse/locales/he.json +118 -466
  167. package/front_end/third_party/lighthouse/locales/hi.json +96 -444
  168. package/front_end/third_party/lighthouse/locales/hr.json +100 -448
  169. package/front_end/third_party/lighthouse/locales/hu.json +96 -444
  170. package/front_end/third_party/lighthouse/locales/id.json +96 -444
  171. package/front_end/third_party/lighthouse/locales/it.json +96 -444
  172. package/front_end/third_party/lighthouse/locales/ja.json +96 -444
  173. package/front_end/third_party/lighthouse/locales/ko.json +97 -445
  174. package/front_end/third_party/lighthouse/locales/lt.json +96 -444
  175. package/front_end/third_party/lighthouse/locales/lv.json +97 -445
  176. package/front_end/third_party/lighthouse/locales/nl.json +96 -444
  177. package/front_end/third_party/lighthouse/locales/no.json +96 -444
  178. package/front_end/third_party/lighthouse/locales/pl.json +96 -444
  179. package/front_end/third_party/lighthouse/locales/pt-PT.json +96 -444
  180. package/front_end/third_party/lighthouse/locales/pt.json +97 -445
  181. package/front_end/third_party/lighthouse/locales/ro.json +97 -445
  182. package/front_end/third_party/lighthouse/locales/ru.json +96 -444
  183. package/front_end/third_party/lighthouse/locales/sk.json +96 -444
  184. package/front_end/third_party/lighthouse/locales/sl.json +96 -444
  185. package/front_end/third_party/lighthouse/locales/sr-Latn.json +96 -444
  186. package/front_end/third_party/lighthouse/locales/sr.json +96 -444
  187. package/front_end/third_party/lighthouse/locales/sv.json +96 -444
  188. package/front_end/third_party/lighthouse/locales/ta.json +96 -444
  189. package/front_end/third_party/lighthouse/locales/te.json +97 -445
  190. package/front_end/third_party/lighthouse/locales/th.json +96 -444
  191. package/front_end/third_party/lighthouse/locales/tr.json +96 -444
  192. package/front_end/third_party/lighthouse/locales/uk.json +96 -444
  193. package/front_end/third_party/lighthouse/locales/vi.json +96 -444
  194. package/front_end/third_party/lighthouse/locales/zh-HK.json +96 -444
  195. package/front_end/third_party/lighthouse/locales/zh-TW.json +97 -445
  196. package/front_end/third_party/lighthouse/locales/zh.json +96 -444
  197. package/front_end/third_party/lighthouse/report/bundle.d.ts +8 -14
  198. package/front_end/third_party/lighthouse/report/bundle.js +10 -49
  199. package/front_end/third_party/lighthouse/report-assets/report-generator.mjs +1 -1
  200. package/front_end/third_party/web-vitals/README.chromium +5 -8
  201. package/front_end/third_party/web-vitals/package/README.md +191 -152
  202. package/front_end/third_party/web-vitals/package/dist/modules/attribution/index.d.ts +0 -1
  203. package/front_end/third_party/web-vitals/package/dist/modules/attribution/index.js +0 -1
  204. package/front_end/third_party/web-vitals/package/dist/modules/attribution/onCLS.d.ts +2 -2
  205. package/front_end/third_party/web-vitals/package/dist/modules/attribution/onCLS.js +45 -26
  206. package/front_end/third_party/web-vitals/package/dist/modules/attribution/onFCP.d.ts +2 -2
  207. package/front_end/third_party/web-vitals/package/dist/modules/attribution/onFCP.js +3 -3
  208. package/front_end/third_party/web-vitals/package/dist/modules/attribution/onINP.d.ts +10 -10
  209. package/front_end/third_party/web-vitals/package/dist/modules/attribution/onINP.js +307 -206
  210. package/front_end/third_party/web-vitals/package/dist/modules/attribution/onLCP.d.ts +2 -2
  211. package/front_end/third_party/web-vitals/package/dist/modules/attribution/onLCP.js +69 -49
  212. package/front_end/third_party/web-vitals/package/dist/modules/attribution/onTTFB.d.ts +2 -2
  213. package/front_end/third_party/web-vitals/package/dist/modules/attribution/onTTFB.js +2 -2
  214. package/front_end/third_party/web-vitals/package/dist/modules/index.d.ts +0 -1
  215. package/front_end/third_party/web-vitals/package/dist/modules/index.js +0 -1
  216. package/front_end/third_party/web-vitals/package/dist/modules/lib/InteractionManager.d.ts +33 -0
  217. package/front_end/third_party/web-vitals/package/dist/modules/lib/InteractionManager.js +111 -0
  218. package/front_end/third_party/web-vitals/package/dist/modules/lib/LCPEntryManager.d.ts +4 -0
  219. package/front_end/third_party/web-vitals/package/dist/modules/{attribution/deprecated.js → lib/LCPEntryManager.js} +6 -7
  220. package/front_end/third_party/web-vitals/package/dist/modules/lib/LayoutShiftManager.d.ts +6 -0
  221. package/front_end/third_party/web-vitals/package/dist/modules/lib/LayoutShiftManager.js +44 -0
  222. package/front_end/third_party/web-vitals/package/dist/modules/lib/bindReporter.js +1 -1
  223. package/front_end/third_party/web-vitals/package/dist/modules/lib/generateUniqueID.js +1 -1
  224. package/front_end/third_party/web-vitals/package/dist/modules/lib/getActivationStart.js +1 -1
  225. package/front_end/third_party/web-vitals/package/dist/modules/lib/getNavigationEntry.js +5 -7
  226. package/front_end/third_party/web-vitals/package/dist/modules/lib/getSelector.d.ts +1 -1
  227. package/front_end/third_party/web-vitals/package/dist/modules/lib/getSelector.js +9 -12
  228. package/front_end/third_party/web-vitals/package/dist/modules/lib/getVisibilityWatcher.d.ts +1 -0
  229. package/front_end/third_party/web-vitals/package/dist/modules/lib/getVisibilityWatcher.js +52 -33
  230. package/front_end/third_party/web-vitals/package/dist/modules/lib/initMetric.d.ts +0 -2
  231. package/front_end/third_party/web-vitals/package/dist/modules/lib/initMetric.js +2 -2
  232. package/front_end/third_party/web-vitals/package/dist/modules/lib/initUnique.d.ts +6 -0
  233. package/front_end/third_party/web-vitals/package/dist/modules/{deprecated.js → lib/initUnique.js} +11 -4
  234. package/front_end/third_party/web-vitals/package/dist/modules/lib/observe.js +3 -6
  235. package/front_end/third_party/web-vitals/package/dist/modules/lib/polyfills/interactionCountPolyfill.js +6 -6
  236. package/front_end/third_party/web-vitals/package/dist/modules/lib/{whenIdle.d.ts → whenIdleOrHidden.d.ts} +1 -1
  237. package/front_end/third_party/web-vitals/package/dist/modules/lib/{whenIdle.js → whenIdleOrHidden.js} +10 -8
  238. package/front_end/third_party/web-vitals/package/dist/modules/onCLS.js +17 -35
  239. package/front_end/third_party/web-vitals/package/dist/modules/onFCP.js +3 -5
  240. package/front_end/third_party/web-vitals/package/dist/modules/onINP.d.ts +9 -7
  241. package/front_end/third_party/web-vitals/package/dist/modules/onINP.js +27 -19
  242. package/front_end/third_party/web-vitals/package/dist/modules/onLCP.js +33 -26
  243. package/front_end/third_party/web-vitals/package/dist/modules/onTTFB.js +2 -4
  244. package/front_end/third_party/web-vitals/package/dist/modules/types/base.d.ts +6 -5
  245. package/front_end/third_party/web-vitals/package/dist/modules/types/cls.d.ts +5 -3
  246. package/front_end/third_party/web-vitals/package/dist/modules/types/inp.d.ts +80 -33
  247. package/front_end/third_party/web-vitals/package/dist/modules/types/lcp.d.ts +6 -2
  248. package/front_end/third_party/web-vitals/package/dist/modules/types.d.ts +28 -4
  249. package/front_end/third_party/web-vitals/package/dist/modules/types.js +0 -1
  250. package/front_end/third_party/web-vitals/package/package.json +4 -10
  251. package/front_end/third_party/web-vitals/package/src/attribution/index.ts +0 -1
  252. package/front_end/third_party/web-vitals/package/src/attribution/onCLS.ts +58 -33
  253. package/front_end/third_party/web-vitals/package/src/attribution/onFCP.ts +4 -4
  254. package/front_end/third_party/web-vitals/package/src/attribution/onINP.ts +382 -258
  255. package/front_end/third_party/web-vitals/package/src/attribution/onLCP.ts +96 -69
  256. package/front_end/third_party/web-vitals/package/src/attribution/onTTFB.ts +3 -3
  257. package/front_end/third_party/web-vitals/package/src/index.ts +0 -1
  258. package/front_end/third_party/web-vitals/package/src/lib/InteractionManager.ts +146 -0
  259. package/front_end/third_party/web-vitals/package/src/{attribution/deprecated.ts → lib/LCPEntryManager.ts} +6 -9
  260. package/front_end/third_party/web-vitals/package/src/lib/LayoutShiftManager.ts +50 -0
  261. package/front_end/third_party/web-vitals/package/src/lib/bindReporter.ts +1 -1
  262. package/front_end/third_party/web-vitals/package/src/lib/generateUniqueID.ts +1 -1
  263. package/front_end/third_party/web-vitals/package/src/lib/getActivationStart.ts +1 -1
  264. package/front_end/third_party/web-vitals/package/src/lib/getNavigationEntry.ts +5 -8
  265. package/front_end/third_party/web-vitals/package/src/lib/getSelector.ts +12 -12
  266. package/front_end/third_party/web-vitals/package/src/lib/getVisibilityWatcher.ts +57 -35
  267. package/front_end/third_party/web-vitals/package/src/lib/initMetric.ts +2 -2
  268. package/front_end/third_party/web-vitals/package/src/{deprecated.ts → lib/initUnique.ts} +14 -8
  269. package/front_end/third_party/web-vitals/package/src/lib/observe.ts +3 -11
  270. package/front_end/third_party/web-vitals/package/src/lib/polyfills/interactionCountPolyfill.ts +12 -6
  271. package/front_end/third_party/web-vitals/package/src/lib/{whenIdle.ts → whenIdleOrHidden.ts} +10 -8
  272. package/front_end/third_party/web-vitals/package/src/onCLS.ts +17 -38
  273. package/front_end/third_party/web-vitals/package/src/onFCP.ts +3 -6
  274. package/front_end/third_party/web-vitals/package/src/onINP.ts +33 -28
  275. package/front_end/third_party/web-vitals/package/src/onLCP.ts +36 -29
  276. package/front_end/third_party/web-vitals/package/src/onTTFB.ts +2 -5
  277. package/front_end/third_party/web-vitals/package/src/types/base.ts +5 -5
  278. package/front_end/third_party/web-vitals/package/src/types/cls.ts +5 -3
  279. package/front_end/third_party/web-vitals/package/src/types/inp.ts +88 -33
  280. package/front_end/third_party/web-vitals/package/src/types/lcp.ts +6 -2
  281. package/front_end/third_party/web-vitals/package/src/types.ts +47 -4
  282. package/front_end/third_party/web-vitals/patches/0001-Add-onEachInteraction-to-onINP-options.patch +75 -0
  283. package/front_end/third_party/web-vitals/rebuild.sh +32 -18
  284. package/front_end/third_party/web-vitals/web-vitals-tsconfig.json +5 -10
  285. package/front_end/third_party/web-vitals/web-vitals.ts +0 -2
  286. package/front_end/ui/components/docs/console_insight/basic.ts +3 -2
  287. package/front_end/ui/components/legacy_wrapper/LegacyWrapper.ts +2 -0
  288. package/front_end/ui/components/text_editor/TextEditor.ts +0 -2
  289. package/front_end/ui/legacy/InspectorView.ts +2 -0
  290. package/front_end/ui/legacy/ListWidget.ts +2 -2
  291. package/front_end/ui/legacy/SplitWidget.ts +2 -0
  292. package/front_end/ui/legacy/TabbedPane.ts +1 -0
  293. package/front_end/ui/legacy/TargetCrashedScreen.ts +1 -0
  294. package/front_end/ui/legacy/UIUtils.ts +8 -19
  295. package/front_end/ui/legacy/ViewManager.ts +1 -0
  296. package/front_end/ui/legacy/components/color_picker/FormatPickerContextMenu.ts +7 -20
  297. package/front_end/ui/legacy/components/color_picker/Spectrum.ts +2 -0
  298. package/front_end/ui/legacy/components/cookie_table/CookiesTable.ts +1 -0
  299. package/front_end/ui/legacy/components/inline_editor/BezierEditor.ts +1 -0
  300. package/front_end/ui/legacy/components/perf_ui/ChartViewport.ts +1 -0
  301. package/front_end/ui/legacy/components/quick_open/FilteredListWidget.ts +1 -0
  302. package/front_end/ui/legacy/components/source_frame/FontView.ts +1 -0
  303. package/front_end/ui/legacy/components/source_frame/ImageView.ts +1 -0
  304. package/front_end/ui/legacy/components/source_frame/JSONView.ts +1 -0
  305. package/front_end/ui/legacy/components/source_frame/SourceFrame.ts +1 -0
  306. package/front_end/ui/legacy/components/source_frame/StreamingContentHexView.ts +2 -0
  307. package/front_end/ui/visual_logging/KnownContextValues.ts +25 -0
  308. package/mcp/README.md +7 -0
  309. package/mcp/mcp.ts +8 -0
  310. package/package.json +1 -1
  311. package/front_end/models/live-metrics/web-vitals-injected/OnEachInteraction.ts +0 -34
  312. package/front_end/third_party/web-vitals/package/attribution.d.ts +0 -16
  313. package/front_end/third_party/web-vitals/package/attribution.js +0 -18
  314. package/front_end/third_party/web-vitals/package/dist/modules/attribution/deprecated.d.ts +0 -7
  315. package/front_end/third_party/web-vitals/package/dist/modules/attribution/onFID.d.ts +0 -11
  316. package/front_end/third_party/web-vitals/package/dist/modules/attribution/onFID.js +0 -46
  317. package/front_end/third_party/web-vitals/package/dist/modules/deprecated.d.ts +0 -5
  318. package/front_end/third_party/web-vitals/package/dist/modules/lib/interactions.d.ts +0 -31
  319. package/front_end/third_party/web-vitals/package/dist/modules/lib/interactions.js +0 -107
  320. package/front_end/third_party/web-vitals/package/dist/modules/lib/onHidden.d.ts +0 -1
  321. package/front_end/third_party/web-vitals/package/dist/modules/lib/onHidden.js +0 -22
  322. package/front_end/third_party/web-vitals/package/dist/modules/lib/polyfills/firstInputPolyfill.d.ts +0 -7
  323. package/front_end/third_party/web-vitals/package/dist/modules/lib/polyfills/firstInputPolyfill.js +0 -147
  324. package/front_end/third_party/web-vitals/package/dist/modules/lib/polyfills/getFirstHiddenTimePolyfill.d.ts +0 -1
  325. package/front_end/third_party/web-vitals/package/dist/modules/lib/polyfills/getFirstHiddenTimePolyfill.js +0 -25
  326. package/front_end/third_party/web-vitals/package/dist/modules/onFID.d.ts +0 -13
  327. package/front_end/third_party/web-vitals/package/dist/modules/onFID.js +0 -70
  328. package/front_end/third_party/web-vitals/package/dist/modules/types/fid.d.ts +0 -46
  329. package/front_end/third_party/web-vitals/package/dist/modules/types/fid.js +0 -16
  330. package/front_end/third_party/web-vitals/package/src/attribution/onFID.ts +0 -62
  331. package/front_end/third_party/web-vitals/package/src/lib/interactions.ts +0 -139
  332. package/front_end/third_party/web-vitals/package/src/lib/onHidden.ts +0 -23
  333. package/front_end/third_party/web-vitals/package/src/lib/polyfills/firstInputPolyfill.ts +0 -174
  334. package/front_end/third_party/web-vitals/package/src/onFID.ts +0 -105
  335. package/front_end/third_party/web-vitals/package/src/types/fid.ts +0 -65
  336. package/front_end/ui/components/text_editor/textEditor.css +0 -18
  337. package/front_end/ui/legacy/inlineButton.css +0 -22
  338. /package/front_end/entrypoints/{rehydrated_devtools_app/rehydrated_devtools_app.ts → trace_app/trace_app.ts} +0 -0
  339. /package/front_end/{models/persistence → panels/settings}/editFileSystemView.css +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "core/audits/accessibility/accesskeys.js | description": {
3
- "message": "快捷键可让用户快速转到页面的某个部分。为确保正确进行导航,每个快捷键都必须是独一无二的。[详细了解快捷键](https://dequeuniversity.com/rules/axe/4.10/accesskeys)。"
3
+ "message": "快捷键可让用户快速转到页面的某个部分。为确保正确进行导航,每个快捷键都必须是独一无二的。[详细了解快捷键](https://dequeuniversity.com/rules/axe/4.11/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.10/aria-allowed-attr)。"
12
+ "message": "每个 ARIA“`role`”都支持一部分特定的“`aria-*`”属性。如果这些项不匹配,会导致“`aria-*`”属性无效。[了解如何将 ARIA 属性与其角色进行匹配](https://dequeuniversity.com/rules/axe/4.11/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-allowed-role.js | description": {
21
- "message": "许多 HTML 元素只能设置特定的 ARIA 角色。在禁止使用 ARIA 角色的位置使用 ARIA 角色可能会干扰网页的无障碍功能。[详细了解 ARIA 角色](https://dequeuniversity.com/rules/axe/4.10/aria-allowed-role)。"
21
+ "message": "许多 HTML 元素只能设置特定的 ARIA 角色。在禁止使用 ARIA 角色的位置使用 ARIA 角色可能会干扰网页的无障碍功能。[详细了解 ARIA 角色](https://dequeuniversity.com/rules/axe/4.11/aria-allowed-role)。"
22
22
  },
23
23
  "core/audits/accessibility/aria-allowed-role.js | failureTitle": {
24
24
  "message": "有不兼容的元素使用了 ARIA 角色"
@@ -27,7 +27,7 @@
27
27
  "message": "使用 ARIA 角色的元素均为兼容元素"
28
28
  },
29
29
  "core/audits/accessibility/aria-command-name.js | description": {
30
- "message": "如果某个元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何让命令元素更便于使用](https://dequeuniversity.com/rules/axe/4.10/aria-command-name)。"
30
+ "message": "如果某个元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何让命令元素更便于使用](https://dequeuniversity.com/rules/axe/4.11/aria-command-name)。"
31
31
  },
32
32
  "core/audits/accessibility/aria-command-name.js | failureTitle": {
33
33
  "message": "`button`、`link` 和 `menuitem` 元素缺少可供访问的名称。"
@@ -36,7 +36,7 @@
36
36
  "message": "`button`、`link` 和 `menuitem` 元素都有可供访问的名称"
37
37
  },
38
38
  "core/audits/accessibility/aria-conditional-attr.js | description": {
39
- "message": "只能在特定条件下使用元素的某些 ARIA 属性。[详细了解条件性 ARIA 属性](https://dequeuniversity.com/rules/axe/4.10/aria-conditional-attr)。"
39
+ "message": "只能在特定条件下使用元素的某些 ARIA 属性。[详细了解条件性 ARIA 属性](https://dequeuniversity.com/rules/axe/4.11/aria-conditional-attr)。"
40
40
  },
41
41
  "core/audits/accessibility/aria-conditional-attr.js | failureTitle": {
42
42
  "message": "未按照指定方式在元素角色中使用 ARIA 属性"
@@ -45,7 +45,7 @@
45
45
  "message": "按照指定方式在元素角色中使用了 ARIA 属性"
46
46
  },
47
47
  "core/audits/accessibility/aria-deprecated-role.js | description": {
48
- "message": "辅助技术可能无法正确处理已弃用的 ARIA 角色。[详细了解已弃用的 ARIA 角色](https://dequeuniversity.com/rules/axe/4.10/aria-deprecated-role)。"
48
+ "message": "辅助技术可能无法正确处理已弃用的 ARIA 角色。[详细了解已弃用的 ARIA 角色](https://dequeuniversity.com/rules/axe/4.11/aria-deprecated-role)。"
49
49
  },
50
50
  "core/audits/accessibility/aria-deprecated-role.js | failureTitle": {
51
51
  "message": "使用了已弃用的 ARIA 角色"
@@ -54,7 +54,7 @@
54
54
  "message": "未使用已弃用的 ARIA 角色"
55
55
  },
56
56
  "core/audits/accessibility/aria-dialog-name.js | description": {
57
- "message": "如果 ARIA 对话框元素缺少无障碍名称,可能会妨碍屏幕阅读器用户理解这些元素的用途。[了解如何让 ARIA 对话框元素更符合无障碍需求](https://dequeuniversity.com/rules/axe/4.10/aria-dialog-name)。"
57
+ "message": "如果 ARIA 对话框元素缺少无障碍名称,可能会妨碍屏幕阅读器用户理解这些元素的用途。[了解如何让 ARIA 对话框元素更符合无障碍需求](https://dequeuniversity.com/rules/axe/4.11/aria-dialog-name)。"
58
58
  },
59
59
  "core/audits/accessibility/aria-dialog-name.js | failureTitle": {
60
60
  "message": "具有 `role=\"dialog\"` 或 `role=\"alertdialog\"` 的元素缺少无障碍名称。"
@@ -63,7 +63,7 @@
63
63
  "message": "具有 `role=\"dialog\"` 或 `role=\"alertdialog\"` 的元素均有无障碍名称。"
64
64
  },
65
65
  "core/audits/accessibility/aria-hidden-body.js | description": {
66
- "message": "在文档 `<body>` 上设置 `aria-hidden=\"true\"` 后,辅助技术(如屏幕阅读器)的工作方式不一致。[了解 `aria-hidden` 对文档正文的影响](https://dequeuniversity.com/rules/axe/4.10/aria-hidden-body)。"
66
+ "message": "在文档 `<body>` 上设置 `aria-hidden=\"true\"` 后,辅助技术(如屏幕阅读器)的工作方式不一致。[了解 `aria-hidden` 对文档正文的影响](https://dequeuniversity.com/rules/axe/4.11/aria-hidden-body)。"
67
67
  },
68
68
  "core/audits/accessibility/aria-hidden-body.js | failureTitle": {
69
69
  "message": "文档 `<body>` 中有 `[aria-hidden=\"true\"]`"
@@ -72,7 +72,7 @@
72
72
  "message": "文档 `<body>` 中没有 `[aria-hidden=\"true\"]`"
73
73
  },
74
74
  "core/audits/accessibility/aria-hidden-focus.js | description": {
75
- "message": "有一个 `[aria-hidden=\"true\"]` 元素包含可聚焦的下级元素,导致这些交互式元素都无法被辅助技术(如屏幕阅读器)用户使用。[了解 `aria-hidden` 如何影响可聚焦的元素](https://dequeuniversity.com/rules/axe/4.10/aria-hidden-focus)。"
75
+ "message": "有一个 `[aria-hidden=\"true\"]` 元素包含可聚焦的下级元素,导致这些交互式元素都无法被辅助技术(如屏幕阅读器)用户使用。[了解 `aria-hidden` 如何影响可聚焦的元素](https://dequeuniversity.com/rules/axe/4.11/aria-hidden-focus)。"
76
76
  },
77
77
  "core/audits/accessibility/aria-hidden-focus.js | failureTitle": {
78
78
  "message": "`[aria-hidden=\"true\"]` 元素包含可聚焦的下级元素"
@@ -81,7 +81,7 @@
81
81
  "message": "`[aria-hidden=\"true\"]` 元素都不含可聚焦的下级元素"
82
82
  },
83
83
  "core/audits/accessibility/aria-input-field-name.js | description": {
84
- "message": "如果某个输入字段没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[详细了解输入字段标签](https://dequeuniversity.com/rules/axe/4.10/aria-input-field-name)。"
84
+ "message": "如果某个输入字段没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[详细了解输入字段标签](https://dequeuniversity.com/rules/axe/4.11/aria-input-field-name)。"
85
85
  },
86
86
  "core/audits/accessibility/aria-input-field-name.js | failureTitle": {
87
87
  "message": "ARIA 输入字段缺少可供访问的名称"
@@ -90,7 +90,7 @@
90
90
  "message": "ARIA 输入字段都有可供访问的名称"
91
91
  },
92
92
  "core/audits/accessibility/aria-meter-name.js | description": {
93
- "message": "如果某个 meter 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何为 `meter` 元素命名](https://dequeuniversity.com/rules/axe/4.10/aria-meter-name)。"
93
+ "message": "如果某个 meter 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何为 `meter` 元素命名](https://dequeuniversity.com/rules/axe/4.11/aria-meter-name)。"
94
94
  },
95
95
  "core/audits/accessibility/aria-meter-name.js | failureTitle": {
96
96
  "message": "ARIA `meter` 元素缺少可供访问的名称。"
@@ -99,7 +99,7 @@
99
99
  "message": "ARIA `meter` 元素都有可供访问的名称"
100
100
  },
101
101
  "core/audits/accessibility/aria-progressbar-name.js | description": {
102
- "message": "如果某个 `progressbar` 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何为 `progressbar` 元素添加标签](https://dequeuniversity.com/rules/axe/4.10/aria-progressbar-name)。"
102
+ "message": "如果某个 `progressbar` 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何为 `progressbar` 元素添加标签](https://dequeuniversity.com/rules/axe/4.11/aria-progressbar-name)。"
103
103
  },
104
104
  "core/audits/accessibility/aria-progressbar-name.js | failureTitle": {
105
105
  "message": "ARIA `progressbar` 元素缺少可供访问的名称。"
@@ -108,7 +108,7 @@
108
108
  "message": "ARIA `progressbar` 元素都有可供访问的名称"
109
109
  },
110
110
  "core/audits/accessibility/aria-prohibited-attr.js | description": {
111
- "message": "在禁止使用 ARIA 属性的角色中使用 ARIA 属性可能会导致重要信息无法传达给使用辅助技术的用户。[详细了解被禁止的 ARIA 角色](https://dequeuniversity.com/rules/axe/4.10/aria-prohibited-attr)。"
111
+ "message": "在禁止使用 ARIA 属性的角色中使用 ARIA 属性可能会导致重要信息无法传达给使用辅助技术的用户。[详细了解被禁止的 ARIA 角色](https://dequeuniversity.com/rules/axe/4.11/aria-prohibited-attr)。"
112
112
  },
113
113
  "core/audits/accessibility/aria-prohibited-attr.js | failureTitle": {
114
114
  "message": "元素使用了禁止使用的 ARIA 属性"
@@ -117,7 +117,7 @@
117
117
  "message": "元素仅使用允许的 ARIA 属性"
118
118
  },
119
119
  "core/audits/accessibility/aria-required-attr.js | description": {
120
- "message": "一些 ARIA 角色有必需属性,这些属性向屏幕阅读器描述了相应元素的状态。[详细了解角色和必需属性](https://dequeuniversity.com/rules/axe/4.10/aria-required-attr)。"
120
+ "message": "一些 ARIA 角色有必需属性,这些属性向屏幕阅读器描述了相应元素的状态。[详细了解角色和必需属性](https://dequeuniversity.com/rules/axe/4.11/aria-required-attr)。"
121
121
  },
122
122
  "core/audits/accessibility/aria-required-attr.js | failureTitle": {
123
123
  "message": "`[role]` 缺少部分必需的 `[aria-*]` 属性"
@@ -126,7 +126,7 @@
126
126
  "message": "`[role]` 具备所有必需的 `[aria-*]` 属性"
127
127
  },
128
128
  "core/audits/accessibility/aria-required-children.js | description": {
129
- "message": "一些 ARIA 父角色必须包含特定子角色,才能执行它们的预期无障碍功能。[详细了解角色和必需的子元素](https://dequeuniversity.com/rules/axe/4.10/aria-required-children)。"
129
+ "message": "一些 ARIA 父角色必须包含特定子角色,才能执行它们的预期无障碍功能。[详细了解角色和必需的子元素](https://dequeuniversity.com/rules/axe/4.11/aria-required-children)。"
130
130
  },
131
131
  "core/audits/accessibility/aria-required-children.js | failureTitle": {
132
132
  "message": "具有 ARIA `[role]`且要求子元素必须包含特定`[role]`的元素缺少部分或全部必需子元素。"
@@ -135,7 +135,7 @@
135
135
  "message": "具有 ARIA `[role]`且要求子元素必须包含特定`[role]`的元素包含全部必需子元素。"
136
136
  },
137
137
  "core/audits/accessibility/aria-required-parent.js | description": {
138
- "message": "一些 ARIA 子角色必须包含在特定的父角色中,才能正确执行它们的预期无障碍功能。[详细了解 ARIA 角色和必需的父元素](https://dequeuniversity.com/rules/axe/4.10/aria-required-parent)。"
138
+ "message": "一些 ARIA 子角色必须包含在特定的父角色中,才能正确执行它们的预期无障碍功能。[详细了解 ARIA 角色和必需的父元素](https://dequeuniversity.com/rules/axe/4.11/aria-required-parent)。"
139
139
  },
140
140
  "core/audits/accessibility/aria-required-parent.js | failureTitle": {
141
141
  "message": "`[role]` 未包含在其必需的父元素中"
@@ -144,7 +144,7 @@
144
144
  "message": "`[role]` 包含在其必需的父元素中"
145
145
  },
146
146
  "core/audits/accessibility/aria-roles.js | description": {
147
- "message": "ARIA 角色必须具备有效值,才能执行它们的预期无障碍功能。[详细了解有效的 ARIA 角色](https://dequeuniversity.com/rules/axe/4.10/aria-roles)。"
147
+ "message": "ARIA 角色必须具备有效值,才能执行它们的预期无障碍功能。[详细了解有效的 ARIA 角色](https://dequeuniversity.com/rules/axe/4.11/aria-roles)。"
148
148
  },
149
149
  "core/audits/accessibility/aria-roles.js | failureTitle": {
150
150
  "message": "`[role]` 值无效"
@@ -153,7 +153,7 @@
153
153
  "message": "`[role]` 值有效"
154
154
  },
155
155
  "core/audits/accessibility/aria-text.js | description": {
156
- "message": "在一个被标记分隔的文本节点周围添加 `role=text` 后,VoiceOver 会将该文本元素视为一个短语,但不会读出它的可聚焦后代元素。[详细了解 `role=text` 属性](https://dequeuniversity.com/rules/axe/4.10/aria-text)。"
156
+ "message": "在一个被标记分隔的文本节点周围添加 `role=text` 后,VoiceOver 会将该文本元素视为一个短语,但不会读出它的可聚焦后代元素。[详细了解 `role=text` 属性](https://dequeuniversity.com/rules/axe/4.11/aria-text)。"
157
157
  },
158
158
  "core/audits/accessibility/aria-text.js | failureTitle": {
159
159
  "message": "具有 `role=text` 属性的元素包含可聚焦后代元素。"
@@ -162,7 +162,7 @@
162
162
  "message": "具有 `role=text` 属性的元素缺少可聚焦后代元素。"
163
163
  },
164
164
  "core/audits/accessibility/aria-toggle-field-name.js | description": {
165
- "message": "如果某个切换字段没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[详细了解切换字段](https://dequeuniversity.com/rules/axe/4.10/aria-toggle-field-name)。"
165
+ "message": "如果某个切换字段没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[详细了解切换字段](https://dequeuniversity.com/rules/axe/4.11/aria-toggle-field-name)。"
166
166
  },
167
167
  "core/audits/accessibility/aria-toggle-field-name.js | failureTitle": {
168
168
  "message": "ARIA 切换字段缺少可供访问的名称"
@@ -171,7 +171,7 @@
171
171
  "message": "ARIA 切换字段都有可供访问的名称"
172
172
  },
173
173
  "core/audits/accessibility/aria-tooltip-name.js | description": {
174
- "message": "如果某个 tooltip 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何为 `tooltip` 元素命名](https://dequeuniversity.com/rules/axe/4.10/aria-tooltip-name)。"
174
+ "message": "如果某个 tooltip 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何为 `tooltip` 元素命名](https://dequeuniversity.com/rules/axe/4.11/aria-tooltip-name)。"
175
175
  },
176
176
  "core/audits/accessibility/aria-tooltip-name.js | failureTitle": {
177
177
  "message": "ARIA `tooltip` 元素缺少可供访问的名称。"
@@ -180,7 +180,7 @@
180
180
  "message": "ARIA `tooltip` 元素都有可供访问的名称"
181
181
  },
182
182
  "core/audits/accessibility/aria-treeitem-name.js | description": {
183
- "message": "如果某个 `treeitem` 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[详细了解如何为 `treeitem` 元素添加标签](https://dequeuniversity.com/rules/axe/4.10/aria-treeitem-name)。"
183
+ "message": "如果某个 `treeitem` 元素没有无障碍名称,屏幕阅读器会将它读为通用名称,这会导致依赖屏幕阅读器的用户无法使用它。[详细了解如何为 `treeitem` 元素添加标签](https://dequeuniversity.com/rules/axe/4.11/aria-treeitem-name)。"
184
184
  },
185
185
  "core/audits/accessibility/aria-treeitem-name.js | failureTitle": {
186
186
  "message": "ARIA `treeitem` 元素缺少可供访问的名称。"
@@ -189,7 +189,7 @@
189
189
  "message": "ARIA `treeitem` 元素都有可供访问的名称"
190
190
  },
191
191
  "core/audits/accessibility/aria-valid-attr-value.js | description": {
192
- "message": "辅助技术(如屏幕阅读器)无法解读值无效的 ARIA 属性。[详细了解 ARIA 属性的有效值](https://dequeuniversity.com/rules/axe/4.10/aria-valid-attr-value)。"
192
+ "message": "辅助技术(如屏幕阅读器)无法解读值无效的 ARIA 属性。[详细了解 ARIA 属性的有效值](https://dequeuniversity.com/rules/axe/4.11/aria-valid-attr-value)。"
193
193
  },
194
194
  "core/audits/accessibility/aria-valid-attr-value.js | failureTitle": {
195
195
  "message": "`[aria-*]` 属性缺少有效值"
@@ -198,7 +198,7 @@
198
198
  "message": "`[aria-*]` 属性具备有效值"
199
199
  },
200
200
  "core/audits/accessibility/aria-valid-attr.js | description": {
201
- "message": "辅助技术(如屏幕阅读器)无法解读名称无效的 ARIA 属性。[详细了解有效的 ARIA 属性](https://dequeuniversity.com/rules/axe/4.10/aria-valid-attr)。"
201
+ "message": "辅助技术(如屏幕阅读器)无法解读名称无效的 ARIA 属性。[详细了解有效的 ARIA 属性](https://dequeuniversity.com/rules/axe/4.11/aria-valid-attr)。"
202
202
  },
203
203
  "core/audits/accessibility/aria-valid-attr.js | failureTitle": {
204
204
  "message": "`[aria-*]` 属性无效或拼写有误"
@@ -210,7 +210,7 @@
210
210
  "message": "未通过审核的元素"
211
211
  },
212
212
  "core/audits/accessibility/button-name.js | description": {
213
- "message": "当某个按钮没有无障碍名称时,屏幕阅读器会将它读为“按钮”,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何让按钮更便于使用](https://dequeuniversity.com/rules/axe/4.10/button-name)。"
213
+ "message": "当某个按钮没有无障碍名称时,屏幕阅读器会将它读为“按钮”,这会导致依赖屏幕阅读器的用户无法使用它。[了解如何让按钮更便于使用](https://dequeuniversity.com/rules/axe/4.11/button-name)。"
214
214
  },
215
215
  "core/audits/accessibility/button-name.js | failureTitle": {
216
216
  "message": "按钮缺少可供访问的名称"
@@ -219,7 +219,7 @@
219
219
  "message": "按钮有可供访问的名称"
220
220
  },
221
221
  "core/audits/accessibility/bypass.js | description": {
222
- "message": "添加用于绕过重复内容的方式有助于键盘用户更高效地浏览页面。[详细了解如何绕过内容块](https://dequeuniversity.com/rules/axe/4.10/bypass)。"
222
+ "message": "添加用于绕过重复内容的方式有助于键盘用户更高效地浏览页面。[详细了解如何绕过内容块](https://dequeuniversity.com/rules/axe/4.11/bypass)。"
223
223
  },
224
224
  "core/audits/accessibility/bypass.js | failureTitle": {
225
225
  "message": "该页面不含任何标题、跳过链接或地标区域"
@@ -228,7 +228,7 @@
228
228
  "message": "该页面包含一个标题、跳过链接或地标区域"
229
229
  },
230
230
  "core/audits/accessibility/color-contrast.js | description": {
231
- "message": "对于许多用户而言,对比度低的文字都是难以阅读或无法阅读的。[了解如何提供足够高的颜色对比度](https://dequeuniversity.com/rules/axe/4.10/color-contrast)。"
231
+ "message": "对于许多用户而言,对比度低的文字都是难以阅读或无法阅读的。[了解如何提供足够高的颜色对比度](https://dequeuniversity.com/rules/axe/4.11/color-contrast)。"
232
232
  },
233
233
  "core/audits/accessibility/color-contrast.js | failureTitle": {
234
234
  "message": "背景色和前景色没有足够高的对比度。"
@@ -237,7 +237,7 @@
237
237
  "message": "背景色和前景色具有足够高的对比度"
238
238
  },
239
239
  "core/audits/accessibility/definition-list.js | description": {
240
- "message": "如果未正确标记定义列表,屏幕阅读器读出的内容可能会令人困惑或不准确。[了解如何正确构建定义列表](https://dequeuniversity.com/rules/axe/4.10/definition-list)。"
240
+ "message": "如果未正确标记定义列表,屏幕阅读器读出的内容可能会令人困惑或不准确。[了解如何正确构建定义列表](https://dequeuniversity.com/rules/axe/4.11/definition-list)。"
241
241
  },
242
242
  "core/audits/accessibility/definition-list.js | failureTitle": {
243
243
  "message": "`<dl>` 并非只包含经过适当排序的 `<dt>` 和 `<dd>` 组及 `<script>`、`<template>` 或 `<div>` 元素。"
@@ -246,7 +246,7 @@
246
246
  "message": "`<dl>` 只包含经过适当排序的 `<dt>` 和 `<dd>` 组及 `<script>`、`<template>` 或 `<div>` 元素。"
247
247
  },
248
248
  "core/audits/accessibility/dlitem.js | description": {
249
- "message": "定义列表项(`<dt>` 和 `<dd>`)必须封装在父 `<dl>` 元素中,以确保屏幕阅读器可以正确地读出它们。[了解如何正确构建定义列表](https://dequeuniversity.com/rules/axe/4.10/dlitem)。"
249
+ "message": "定义列表项(`<dt>` 和 `<dd>`)必须封装在父 `<dl>` 元素中,以确保屏幕阅读器可以正确地读出它们。[了解如何正确构建定义列表](https://dequeuniversity.com/rules/axe/4.11/dlitem)。"
250
250
  },
251
251
  "core/audits/accessibility/dlitem.js | failureTitle": {
252
252
  "message": "定义列表项已封装在 `<dl>` 元素中"
@@ -255,7 +255,7 @@
255
255
  "message": "定义列表项已封装在 `<dl>` 元素中"
256
256
  },
257
257
  "core/audits/accessibility/document-title.js | description": {
258
- "message": "屏幕阅读器用户可借助标题来大致了解某个页面的内容,搜索引擎用户则非常依赖标题来确定某个页面是否与其搜索相关。[详细了解文档标题](https://dequeuniversity.com/rules/axe/4.10/document-title)。"
258
+ "message": "屏幕阅读器用户可借助标题来大致了解某个页面的内容,搜索引擎用户则非常依赖标题来确定某个页面是否与其搜索相关。[详细了解文档标题](https://dequeuniversity.com/rules/axe/4.11/document-title)。"
259
259
  },
260
260
  "core/audits/accessibility/document-title.js | failureTitle": {
261
261
  "message": "文档不含 `<title>` 元素"
@@ -264,7 +264,7 @@
264
264
  "message": "文档包含 `<title>` 元素"
265
265
  },
266
266
  "core/audits/accessibility/duplicate-id-aria.js | description": {
267
- "message": "ARIA ID 的值必须独一无二,才能防止其他实例被辅助技术忽略。[了解如何修正重复的 ARIA ID](https://dequeuniversity.com/rules/axe/4.10/duplicate-id-aria)。"
267
+ "message": "ARIA ID 的值必须独一无二,才能防止其他实例被辅助技术忽略。[了解如何修正重复的 ARIA ID](https://dequeuniversity.com/rules/axe/4.11/duplicate-id-aria)。"
268
268
  },
269
269
  "core/audits/accessibility/duplicate-id-aria.js | failureTitle": {
270
270
  "message": "ARIA ID 不是独一无二的"
@@ -273,7 +273,7 @@
273
273
  "message": "ARIA ID 都是独一无二的"
274
274
  },
275
275
  "core/audits/accessibility/empty-heading.js | description": {
276
- "message": "如果标题元素未包含任何内容或包含无法读取的文本,屏幕阅读器用户将难以获取网页的结构信息。[详细了解标题](https://dequeuniversity.com/rules/axe/4.10/empty-heading)。"
276
+ "message": "如果标题元素未包含任何内容或包含无法读取的文本,屏幕阅读器用户将难以获取网页的结构信息。[详细了解标题](https://dequeuniversity.com/rules/axe/4.11/empty-heading)。"
277
277
  },
278
278
  "core/audits/accessibility/empty-heading.js | failureTitle": {
279
279
  "message": "标题元素未包含任何内容。"
@@ -282,7 +282,7 @@
282
282
  "message": "所有标题元素均包含内容。"
283
283
  },
284
284
  "core/audits/accessibility/form-field-multiple-labels.js | description": {
285
- "message": "有多个标签的表单字段可能会被辅助技术(如屏幕阅读器)以令人困惑的方式播报出来,因为这些辅助技术可能会使用第一个标签或最后一个标签,也可能会使用所有标签。[了解如何使用表单标签](https://dequeuniversity.com/rules/axe/4.10/form-field-multiple-labels)。"
285
+ "message": "有多个标签的表单字段可能会被辅助技术(如屏幕阅读器)以令人困惑的方式播报出来,因为这些辅助技术可能会使用第一个标签或最后一个标签,也可能会使用所有标签。[了解如何使用表单标签](https://dequeuniversity.com/rules/axe/4.11/form-field-multiple-labels)。"
286
286
  },
287
287
  "core/audits/accessibility/form-field-multiple-labels.js | failureTitle": {
288
288
  "message": "表单字段有多个标签"
@@ -291,7 +291,7 @@
291
291
  "message": "表单字段都没有多个标签"
292
292
  },
293
293
  "core/audits/accessibility/frame-title.js | description": {
294
- "message": "屏幕阅读器用户依靠框架标题来描述框架的内容。[详细了解框架标题](https://dequeuniversity.com/rules/axe/4.10/frame-title)。"
294
+ "message": "屏幕阅读器用户依靠框架标题来描述框架的内容。[详细了解框架标题](https://dequeuniversity.com/rules/axe/4.11/frame-title)。"
295
295
  },
296
296
  "core/audits/accessibility/frame-title.js | failureTitle": {
297
297
  "message": "`<frame>` 或 `<iframe>` 元素缺少标题"
@@ -300,7 +300,7 @@
300
300
  "message": "`<frame>` 或 `<iframe>` 元素有标题"
301
301
  },
302
302
  "core/audits/accessibility/heading-order.js | description": {
303
- "message": "未跳过任何等级且排序正确的标题会准确传达页面的语义结构,从而使得相应页面在使用辅助技术时更易于浏览和理解。[详细了解标题顺序](https://dequeuniversity.com/rules/axe/4.10/heading-order)。"
303
+ "message": "未跳过任何等级且排序正确的标题会准确传达页面的语义结构,从而使得相应页面在使用辅助技术时更易于浏览和理解。[详细了解标题顺序](https://dequeuniversity.com/rules/axe/4.11/heading-order)。"
304
304
  },
305
305
  "core/audits/accessibility/heading-order.js | failureTitle": {
306
306
  "message": "标题元素未按降序显示"
@@ -309,7 +309,7 @@
309
309
  "message": "标题元素按降序显示"
310
310
  },
311
311
  "core/audits/accessibility/html-has-lang.js | description": {
312
- "message": "如果页面未指定 `lang` 属性,屏幕阅读器便会假定该页面采用的是用户在设置屏幕阅读器时选择的默认语言。如果该页面实际上并未采用默认语言,屏幕阅读器可能无法正确读出该页面中的文字。[详细了解 `lang` 属性](https://dequeuniversity.com/rules/axe/4.10/html-has-lang)。"
312
+ "message": "如果页面未指定 `lang` 属性,屏幕阅读器便会假定该页面采用的是用户在设置屏幕阅读器时选择的默认语言。如果该页面实际上并未采用默认语言,屏幕阅读器可能无法正确读出该页面中的文字。[详细了解 `lang` 属性](https://dequeuniversity.com/rules/axe/4.11/html-has-lang)。"
313
313
  },
314
314
  "core/audits/accessibility/html-has-lang.js | failureTitle": {
315
315
  "message": "`<html>` 元素缺少 `[lang]` 属性"
@@ -318,7 +318,7 @@
318
318
  "message": "`<html>` 元素包含 `[lang]` 属性"
319
319
  },
320
320
  "core/audits/accessibility/html-lang-valid.js | description": {
321
- "message": "指定有效的 [BCP 47 语言](https://www.w3.org/International/questions/qa-choosing-language-tags#question)有助于屏幕阅读器正确读出文字。[了解如何使用 `lang` 属性](https://dequeuniversity.com/rules/axe/4.10/html-lang-valid)。"
321
+ "message": "指定有效的 [BCP 47 语言](https://www.w3.org/International/questions/qa-choosing-language-tags#question)有助于屏幕阅读器正确读出文字。[了解如何使用 `lang` 属性](https://dequeuniversity.com/rules/axe/4.11/html-lang-valid)。"
322
322
  },
323
323
  "core/audits/accessibility/html-lang-valid.js | failureTitle": {
324
324
  "message": "`<html>` 元素的 `[lang]` 属性缺少有效值。"
@@ -327,7 +327,7 @@
327
327
  "message": "`<html>` 元素的 `[lang]` 属性具备有效值"
328
328
  },
329
329
  "core/audits/accessibility/html-xml-lang-mismatch.js | description": {
330
- "message": "如果网页未指定一致的语言,屏幕阅读器可能无法正确读出相应网页上的文本。[详细了解 `lang` 属性](https://dequeuniversity.com/rules/axe/4.10/html-xml-lang-mismatch)。"
330
+ "message": "如果网页未指定一致的语言,屏幕阅读器可能无法正确读出相应网页上的文本。[详细了解 `lang` 属性](https://dequeuniversity.com/rules/axe/4.11/html-xml-lang-mismatch)。"
331
331
  },
332
332
  "core/audits/accessibility/html-xml-lang-mismatch.js | failureTitle": {
333
333
  "message": "`<html>` 元素的 `[xml:lang]` 属性与 `[lang]` 属性使用了不同的基本语言。"
@@ -336,7 +336,7 @@
336
336
  "message": "`<html>` 元素的 `[xml:lang]` 属性与 `[lang]` 属性使用了相同的基本语言。"
337
337
  },
338
338
  "core/audits/accessibility/identical-links-same-purpose.js | description": {
339
- "message": "指向相同目标位置的链接应具有相同的说明,这有助于用户了解链接的用途并决定是否要访问它。[详细了解相同链接](https://dequeuniversity.com/rules/axe/4.10/identical-links-same-purpose)。"
339
+ "message": "指向相同目标位置的链接应具有相同的说明,这有助于用户了解链接的用途并决定是否要访问它。[详细了解相同链接](https://dequeuniversity.com/rules/axe/4.11/identical-links-same-purpose)。"
340
340
  },
341
341
  "core/audits/accessibility/identical-links-same-purpose.js | failureTitle": {
342
342
  "message": "相同链接的用途不一致。"
@@ -345,7 +345,7 @@
345
345
  "message": "相同链接的用途一致。"
346
346
  },
347
347
  "core/audits/accessibility/image-alt.js | description": {
348
- "message": "说明性元素应力求使用简短的描述性替代文字。未指定 alt 属性的装饰性元素可被忽略。[详细了解 `alt` 属性](https://dequeuniversity.com/rules/axe/4.10/image-alt)。"
348
+ "message": "说明性元素应力求使用简短的描述性替代文字。未指定 alt 属性的装饰性元素可被忽略。[详细了解 `alt` 属性](https://dequeuniversity.com/rules/axe/4.11/image-alt)。"
349
349
  },
350
350
  "core/audits/accessibility/image-alt.js | failureTitle": {
351
351
  "message": "图片元素缺少 `[alt]` 属性"
@@ -354,7 +354,7 @@
354
354
  "message": "图片元素具备 `[alt]` 属性"
355
355
  },
356
356
  "core/audits/accessibility/image-redundant-alt.js | description": {
357
- "message": "说明性元素应力求使用简短的描述性替代文本。如果替代文本与链接或图片旁边的文本完全相同,可能会让屏幕阅读器用户感到困惑,因为他们会听到两次同样的内容。[详细了解 `alt` 属性](https://dequeuniversity.com/rules/axe/4.10/image-redundant-alt)。"
357
+ "message": "说明性元素应力求使用简短的描述性替代文本。如果替代文本与链接或图片旁边的文本完全相同,可能会让屏幕阅读器用户感到困惑,因为他们会听到两次同样的内容。[详细了解 `alt` 属性](https://dequeuniversity.com/rules/axe/4.11/image-redundant-alt)。"
358
358
  },
359
359
  "core/audits/accessibility/image-redundant-alt.js | failureTitle": {
360
360
  "message": "图片元素具有属于多余文本的 `[alt]` 属性。"
@@ -363,7 +363,7 @@
363
363
  "message": "图片元素没有属于多余文本的 `[alt]` 属性。"
364
364
  },
365
365
  "core/audits/accessibility/input-button-name.js | description": {
366
- "message": "向输入按钮添加可识别的无障碍文本可帮助屏幕阅读器用户了解输入按钮的用途。[详细了解输入按钮](https://dequeuniversity.com/rules/axe/4.10/input-button-name)。"
366
+ "message": "向输入按钮添加可识别的无障碍文本可帮助屏幕阅读器用户了解输入按钮的用途。[详细了解输入按钮](https://dequeuniversity.com/rules/axe/4.11/input-button-name)。"
367
367
  },
368
368
  "core/audits/accessibility/input-button-name.js | failureTitle": {
369
369
  "message": "输入按钮没有可识别的文本。"
@@ -372,7 +372,7 @@
372
372
  "message": "输入按钮具有可识别的文本。"
373
373
  },
374
374
  "core/audits/accessibility/input-image-alt.js | description": {
375
- "message": "将图片用作 `<input>` 按钮时,提供替代文字有助于屏幕阅读器用户了解该按钮的用途。[了解输入图片替代文字](https://dequeuniversity.com/rules/axe/4.10/input-image-alt)。"
375
+ "message": "将图片用作 `<input>` 按钮时,提供替代文字有助于屏幕阅读器用户了解该按钮的用途。[了解输入图片替代文字](https://dequeuniversity.com/rules/axe/4.11/input-image-alt)。"
376
376
  },
377
377
  "core/audits/accessibility/input-image-alt.js | failureTitle": {
378
378
  "message": "`<input type=\"image\">` 元素无对应的 `[alt]` 文字"
@@ -381,7 +381,7 @@
381
381
  "message": "`<input type=\"image\">` 元素有对应的 `[alt]` 文字"
382
382
  },
383
383
  "core/audits/accessibility/label-content-name-mismatch.js | description": {
384
- "message": "如果可见文本标签与无障碍名称不匹配,可能会让屏幕阅读器用户感到困惑。[详细了解无障碍名称](https://dequeuniversity.com/rules/axe/4.10/label-content-name-mismatch)。"
384
+ "message": "如果可见文本标签与无障碍名称不匹配,可能会让屏幕阅读器用户感到困惑。[详细了解无障碍名称](https://dequeuniversity.com/rules/axe/4.11/label-content-name-mismatch)。"
385
385
  },
386
386
  "core/audits/accessibility/label-content-name-mismatch.js | failureTitle": {
387
387
  "message": "带有可见文本标签的元素没有匹配的无障碍名称。"
@@ -390,7 +390,7 @@
390
390
  "message": "带有可见文本标签的元素具有匹配的无障碍名称。"
391
391
  },
392
392
  "core/audits/accessibility/label.js | description": {
393
- "message": "标签可确保辅助技术(如屏幕阅读器)正确读出表单控件。[详细了解表单元素标签](https://dequeuniversity.com/rules/axe/4.10/label)。"
393
+ "message": "标签可确保辅助技术(如屏幕阅读器)正确读出表单控件。[详细了解表单元素标签](https://dequeuniversity.com/rules/axe/4.11/label)。"
394
394
  },
395
395
  "core/audits/accessibility/label.js | failureTitle": {
396
396
  "message": "表单元素不具备关联的标签"
@@ -399,7 +399,7 @@
399
399
  "message": "表单元素具有关联的标签"
400
400
  },
401
401
  "core/audits/accessibility/landmark-one-main.js | description": {
402
- "message": "主要位置标记有助于屏幕阅读器用户浏览网页。[详细了解位置标记](https://dequeuniversity.com/rules/axe/4.10/landmark-one-main)。"
402
+ "message": "主要位置标记有助于屏幕阅读器用户浏览网页。[详细了解位置标记](https://dequeuniversity.com/rules/axe/4.11/landmark-one-main)。"
403
403
  },
404
404
  "core/audits/accessibility/landmark-one-main.js | failureTitle": {
405
405
  "message": "文档缺少主要位置标记。"
@@ -408,7 +408,7 @@
408
408
  "message": "文档有一个主要位置标记。"
409
409
  },
410
410
  "core/audits/accessibility/link-in-text-block.js | description": {
411
- "message": "对许多用户而言,对比度低的文本都是难以阅读或无法阅读的。清晰可辨的链接文本可改善低视力用户的体验。[了解如何让链接容易辨识](https://dequeuniversity.com/rules/axe/4.10/link-in-text-block)。"
411
+ "message": "对许多用户而言,对比度低的文本都是难以阅读或无法阅读的。清晰可辨的链接文本可改善低视力用户的体验。[了解如何让链接容易辨识](https://dequeuniversity.com/rules/axe/4.11/link-in-text-block)。"
412
412
  },
413
413
  "core/audits/accessibility/link-in-text-block.js | failureTitle": {
414
414
  "message": "必须依赖颜色才能辨识链接。"
@@ -417,7 +417,7 @@
417
417
  "message": "无需依赖颜色即可辨识链接。"
418
418
  },
419
419
  "core/audits/accessibility/link-name.js | description": {
420
- "message": "请确保链接文字(以及用作链接的图片替代文字)可识别、独一无二且可聚焦,这样做会提升屏幕阅读器用户的导航体验。[了解如何使链接可供访问](https://dequeuniversity.com/rules/axe/4.10/link-name)。"
420
+ "message": "请确保链接文字(以及用作链接的图片替代文字)可识别、独一无二且可聚焦,这样做会提升屏幕阅读器用户的导航体验。[了解如何使链接可供访问](https://dequeuniversity.com/rules/axe/4.11/link-name)。"
421
421
  },
422
422
  "core/audits/accessibility/link-name.js | failureTitle": {
423
423
  "message": "链接缺少可识别的名称"
@@ -426,7 +426,7 @@
426
426
  "message": "链接具备可识别的名称"
427
427
  },
428
428
  "core/audits/accessibility/list.js | description": {
429
- "message": "屏幕阅读器会采用特定的方法来读出列表内容。确保列表结构正确有助于屏幕阅读器顺利读出相应内容。[详细了解适当的列表结构](https://dequeuniversity.com/rules/axe/4.10/list)。"
429
+ "message": "屏幕阅读器会采用特定的方法来读出列表内容。确保列表结构正确有助于屏幕阅读器顺利读出相应内容。[详细了解适当的列表结构](https://dequeuniversity.com/rules/axe/4.11/list)。"
430
430
  },
431
431
  "core/audits/accessibility/list.js | failureTitle": {
432
432
  "message": "列表并非只包含 `<li>` 元素和脚本支持元素(`<script>` 和 `<template>`)。"
@@ -435,7 +435,7 @@
435
435
  "message": "列表只包含 `<li>` 元素和脚本支持元素(`<script>` 和 `<template>`)。"
436
436
  },
437
437
  "core/audits/accessibility/listitem.js | description": {
438
- "message": "屏幕阅读器要求列表项 (`<li>`) 必须包含在父 `<ul>`、`<ol>` 或 `<menu>` 中,这样才能正确读出它们。[详细了解适当的列表结构](https://dequeuniversity.com/rules/axe/4.10/listitem)。"
438
+ "message": "屏幕阅读器要求列表项 (`<li>`) 必须包含在父 `<ul>`、`<ol>` 或 `<menu>` 中,这样才能正确读出它们。[详细了解适当的列表结构](https://dequeuniversity.com/rules/axe/4.11/listitem)。"
439
439
  },
440
440
  "core/audits/accessibility/listitem.js | failureTitle": {
441
441
  "message": "列表项 (`<li>`) 未包含在 `<ul>`、`<ol>` 或 `<menu>` 父元素中。"
@@ -444,7 +444,7 @@
444
444
  "message": "列表项 (`<li>`) 包含在 `<ul>`、`<ol>` 或 `<menu>` 父元素中"
445
445
  },
446
446
  "core/audits/accessibility/meta-refresh.js | description": {
447
- "message": "用户并不希望网页自动刷新,因为自动刷新会不断地将焦点移回到页面顶部。这可能会让用户感到沮丧或困惑。[详细了解刷新元标记](https://dequeuniversity.com/rules/axe/4.10/meta-refresh)。"
447
+ "message": "用户并不希望网页自动刷新,因为自动刷新会不断地将焦点移回到页面顶部。这可能会让用户感到沮丧或困惑。[详细了解刷新元标记](https://dequeuniversity.com/rules/axe/4.11/meta-refresh)。"
448
448
  },
449
449
  "core/audits/accessibility/meta-refresh.js | failureTitle": {
450
450
  "message": "文档使用了 `<meta http-equiv=\"refresh\">`"
@@ -453,7 +453,7 @@
453
453
  "message": "文档未使用 `<meta http-equiv=\"refresh\">`"
454
454
  },
455
455
  "core/audits/accessibility/meta-viewport.js | description": {
456
- "message": "对于必须依靠放大屏幕才能清晰看到网页内容的低视力用户而言,停用缩放功能会给他们带来问题。[详细了解视口元标记](https://dequeuniversity.com/rules/axe/4.10/meta-viewport)。"
456
+ "message": "对于必须依靠放大屏幕才能清晰看到网页内容的低视力用户而言,停用缩放功能会给他们带来问题。[详细了解视口元标记](https://dequeuniversity.com/rules/axe/4.11/meta-viewport)。"
457
457
  },
458
458
  "core/audits/accessibility/meta-viewport.js | failureTitle": {
459
459
  "message": "`<meta name=\"viewport\">` 元素中使用了 `[user-scalable=\"no\"]`,或者 `[maximum-scale]` 属性小于 5。"
@@ -462,7 +462,7 @@
462
462
  "message": "`[user-scalable=\"no\"]` 未用在 `<meta name=\"viewport\">` 元素中,并且 `[maximum-scale]` 属性不小于 5。"
463
463
  },
464
464
  "core/audits/accessibility/object-alt.js | description": {
465
- "message": "屏幕阅读器无法转换非文字内容。通过向 `<object>` 元素添加替代文字,可帮助屏幕阅读器将含义传达给用户。[详细了解 `object` 元素的替代文字](https://dequeuniversity.com/rules/axe/4.10/object-alt)。"
465
+ "message": "屏幕阅读器无法转换非文字内容。通过向 `<object>` 元素添加替代文字,可帮助屏幕阅读器将含义传达给用户。[详细了解 `object` 元素的替代文字](https://dequeuniversity.com/rules/axe/4.11/object-alt)。"
466
466
  },
467
467
  "core/audits/accessibility/object-alt.js | failureTitle": {
468
468
  "message": "`<object>` 元素无对应的替代文字"
@@ -471,7 +471,7 @@
471
471
  "message": "`<object>` 元素有对应的替代文字"
472
472
  },
473
473
  "core/audits/accessibility/select-name.js | description": {
474
- "message": "如果表单元素缺少有效标签,可能会给屏幕阅读器用户带来糟糕的体验。[详细了解 `select` 元素](https://dequeuniversity.com/rules/axe/4.10/select-name)。"
474
+ "message": "如果表单元素缺少有效标签,可能会给屏幕阅读器用户带来糟糕的体验。[详细了解 `select` 元素](https://dequeuniversity.com/rules/axe/4.11/select-name)。"
475
475
  },
476
476
  "core/audits/accessibility/select-name.js | failureTitle": {
477
477
  "message": "select 元素缺少关联的标签元素。"
@@ -480,7 +480,7 @@
480
480
  "message": "select 元素具有关联的标签元素。"
481
481
  },
482
482
  "core/audits/accessibility/skip-link.js | description": {
483
- "message": "添加跳转链接可帮助用户跳至主要内容以节省时间。[详细了解跳转链接](https://dequeuniversity.com/rules/axe/4.10/skip-link)。"
483
+ "message": "添加跳转链接可帮助用户跳至主要内容以节省时间。[详细了解跳转链接](https://dequeuniversity.com/rules/axe/4.11/skip-link)。"
484
484
  },
485
485
  "core/audits/accessibility/skip-link.js | failureTitle": {
486
486
  "message": "跳转链接无法聚焦。"
@@ -489,7 +489,7 @@
489
489
  "message": "跳转链接可聚焦。"
490
490
  },
491
491
  "core/audits/accessibility/tabindex.js | description": {
492
- "message": "值大于 0 意味着明确的导航顺序。尽管这在技术上可行,但往往会让依赖辅助技术的用户感到沮丧。[详细了解 `tabindex` 属性](https://dequeuniversity.com/rules/axe/4.10/tabindex)。"
492
+ "message": "值大于 0 意味着明确的导航顺序。尽管这在技术上可行,但往往会让依赖辅助技术的用户感到沮丧。[详细了解 `tabindex` 属性](https://dequeuniversity.com/rules/axe/4.11/tabindex)。"
493
493
  },
494
494
  "core/audits/accessibility/tabindex.js | failureTitle": {
495
495
  "message": "一些元素的 `[tabindex]` 值大于 0"
@@ -498,7 +498,7 @@
498
498
  "message": "所有元素的 `[tabindex]` 值都不大于 0"
499
499
  },
500
500
  "core/audits/accessibility/table-duplicate-name.js | description": {
501
- "message": "summary 属性应描述表格结构,而 `<caption>` 应含有屏幕上显示的标题。准确的表格标记对屏幕阅读器用户有帮助。[详细了解 summary 和 caption](https://dequeuniversity.com/rules/axe/4.10/table-duplicate-name)。"
501
+ "message": "summary 属性应描述表格结构,而 `<caption>` 应含有屏幕上显示的标题。准确的表格标记对屏幕阅读器用户有帮助。[详细了解 summary 和 caption](https://dequeuniversity.com/rules/axe/4.11/table-duplicate-name)。"
502
502
  },
503
503
  "core/audits/accessibility/table-duplicate-name.js | failureTitle": {
504
504
  "message": "表格的 summary 属性和 `<caption>.` 具有相同的内容"
@@ -507,7 +507,7 @@
507
507
  "message": "相关表格的 summary 属性和 `<caption>` 具有不同的内容。"
508
508
  },
509
509
  "core/audits/accessibility/table-fake-caption.js | description": {
510
- "message": "屏幕阅读器提供了更便于用户浏览表格内容的功能。请务必确保表格实际使用了 <caption> 元素(而非带有 `[colspan]` 属性的单元格),这可以提升屏幕阅读器用户的体验。[详细了解表格标题](https://dequeuniversity.com/rules/axe/4.10/table-fake-caption)。"
510
+ "message": "屏幕阅读器提供了更便于用户浏览表格内容的功能。请务必确保表格实际使用了 <caption> 元素(而非带有 `[colspan]` 属性的单元格),这可以提升屏幕阅读器用户的体验。[详细了解表格标题](https://dequeuniversity.com/rules/axe/4.11/table-fake-caption)。"
511
511
  },
512
512
  "core/audits/accessibility/table-fake-caption.js | failureTitle": {
513
513
  "message": "表格未使用 `<caption>`(而是使用了带有 `[colspan]` 属性的单元格)来表示表格标题。"
@@ -516,7 +516,7 @@
516
516
  "message": "表格使用了 `<caption>`(而非带有 `[colspan]` 属性的单元格)来表示表格标题。"
517
517
  },
518
518
  "core/audits/accessibility/target-size.js | description": {
519
- "message": "如果触摸目标的尺寸和间距足够大,就能帮助难以精准触按小控件的用户激活相应目标。[详细了解触摸目标](https://dequeuniversity.com/rules/axe/4.10/target-size)。"
519
+ "message": "如果触摸目标的尺寸和间距足够大,就能帮助难以精准触按小控件的用户激活相应目标。[详细了解触摸目标](https://dequeuniversity.com/rules/axe/4.11/target-size)。"
520
520
  },
521
521
  "core/audits/accessibility/target-size.js | failureTitle": {
522
522
  "message": "触摸目标的尺寸或间距不足。"
@@ -525,7 +525,7 @@
525
525
  "message": "触摸目标的尺寸和间距足够大。"
526
526
  },
527
527
  "core/audits/accessibility/td-has-header.js | description": {
528
- "message": "屏幕阅读器提供了更便于用户浏览表格内容的功能。请务必确保大型表格(宽度和高度至少为 3 个单元格)中的 `<td>` 元素具有关联的表格标头,这可以提升屏幕阅读器用户的体验。[详细了解表格标头](https://dequeuniversity.com/rules/axe/4.10/td-has-header)。"
528
+ "message": "屏幕阅读器提供了更便于用户浏览表格内容的功能。请务必确保大型表格(宽度和高度至少为 3 个单元格)中的 `<td>` 元素具有关联的表格标头,这可以提升屏幕阅读器用户的体验。[详细了解表格标头](https://dequeuniversity.com/rules/axe/4.11/td-has-header)。"
529
529
  },
530
530
  "core/audits/accessibility/td-has-header.js | failureTitle": {
531
531
  "message": "大型 `<table>` 中的 `<td>` 元素没有表格标头。"
@@ -534,7 +534,7 @@
534
534
  "message": "大型 `<table>` 中的 `<td>` 元素具有一个或多个表格标头。"
535
535
  },
536
536
  "core/audits/accessibility/td-headers-attr.js | description": {
537
- "message": "屏幕阅读器提供了更便于用户浏览表格内容的功能。请确保那些使用 `[headers]` 属性的 `<td>` 单元格仅引用同一个表格中的其他单元格,这样做可提升屏幕阅读器用户的体验。[详细了解 `headers` 属性](https://dequeuniversity.com/rules/axe/4.10/td-headers-attr)。"
537
+ "message": "屏幕阅读器提供了更便于用户浏览表格内容的功能。请确保那些使用 `[headers]` 属性的 `<td>` 单元格仅引用同一个表格中的其他单元格,这样做可提升屏幕阅读器用户的体验。[详细了解 `headers` 属性](https://dequeuniversity.com/rules/axe/4.11/td-headers-attr)。"
538
538
  },
539
539
  "core/audits/accessibility/td-headers-attr.js | failureTitle": {
540
540
  "message": "`<table>` 元素中使用 `[headers]` 属性的单元格引用了在同一表格中找不到的元素 `id`。"
@@ -543,7 +543,7 @@
543
543
  "message": "`<table>` 元素中使用 `[headers]` 属性的单元格引用的是同一表格中的单元格。"
544
544
  },
545
545
  "core/audits/accessibility/th-has-data-cells.js | description": {
546
- "message": "屏幕阅读器提供了更便于用户浏览表格内容的功能。确保表格标头始终引用特定一组单元格可以提升屏幕阅读器用户的体验。[详细了解表格标头](https://dequeuniversity.com/rules/axe/4.10/th-has-data-cells)。"
546
+ "message": "屏幕阅读器提供了更便于用户浏览表格内容的功能。确保表格标头始终引用特定一组单元格可以提升屏幕阅读器用户的体验。[详细了解表格标头](https://dequeuniversity.com/rules/axe/4.11/th-has-data-cells)。"
547
547
  },
548
548
  "core/audits/accessibility/th-has-data-cells.js | failureTitle": {
549
549
  "message": "`<th>` 元素和 `[role=\"columnheader\"/\"rowheader\"]` 的元素缺少它们所描述的数据单元格。"
@@ -552,7 +552,7 @@
552
552
  "message": "`<th>` 元素和 `[role=\"columnheader\"/\"rowheader\"]` 的元素具备它们所描述的数据单元格。"
553
553
  },
554
554
  "core/audits/accessibility/valid-lang.js | description": {
555
- "message": "为元素指定有效的 [BCP 47 语言](https://www.w3.org/International/questions/qa-choosing-language-tags#question)有助于确保屏幕阅读器正确读出文字。[了解如何使用 `lang` 属性](https://dequeuniversity.com/rules/axe/4.10/valid-lang)。"
555
+ "message": "为元素指定有效的 [BCP 47 语言](https://www.w3.org/International/questions/qa-choosing-language-tags#question)有助于确保屏幕阅读器正确读出文字。[了解如何使用 `lang` 属性](https://dequeuniversity.com/rules/axe/4.11/valid-lang)。"
556
556
  },
557
557
  "core/audits/accessibility/valid-lang.js | failureTitle": {
558
558
  "message": "`[lang]` 属性缺少有效值"
@@ -561,7 +561,7 @@
561
561
  "message": "`[lang]` 属性的值有效"
562
562
  },
563
563
  "core/audits/accessibility/video-caption.js | description": {
564
- "message": "如果视频提供了字幕,失聪用户和听障用户便能更轻松地获取此视频中的信息。[详细了解视频字幕](https://dequeuniversity.com/rules/axe/4.10/video-caption)。"
564
+ "message": "如果视频提供了字幕,失聪用户和听障用户便能更轻松地获取此视频中的信息。[详细了解视频字幕](https://dequeuniversity.com/rules/axe/4.11/video-caption)。"
565
565
  },
566
566
  "core/audits/accessibility/video-caption.js | failureTitle": {
567
567
  "message": "`<video>` 元素缺少带 `[kind=\"captions\"]` 的 `<track>` 元素。"
@@ -647,45 +647,6 @@
647
647
  "core/audits/bootup-time.js | title": {
648
648
  "message": "JavaScript 执行用时"
649
649
  },
650
- "core/audits/byte-efficiency/duplicated-javascript.js | description": {
651
- "message": "从软件包中移除重复的大型 JavaScript 模块可减少网络传输时不必要的流量消耗。 "
652
- },
653
- "core/audits/byte-efficiency/duplicated-javascript.js | title": {
654
- "message": "请移除 JavaScript 软件包中的重复模块"
655
- },
656
- "core/audits/byte-efficiency/efficient-animated-content.js | description": {
657
- "message": "使用大型 GIF 提供动画内容会导致效率低下。建议您改用 MPEG4/WebM 视频(来提供动画)和 PNG/WebP(来提供静态图片)以减少网络活动消耗的字节数。[详细了解高效视频格式](https://developer.chrome.com/docs/lighthouse/performance/efficient-animated-content/)"
658
- },
659
- "core/audits/byte-efficiency/efficient-animated-content.js | title": {
660
- "message": "使用视频格式提供动画内容"
661
- },
662
- "core/audits/byte-efficiency/legacy-javascript.js | description": {
663
- "message": "Polyfill 和 transform 让旧版浏览器能够使用新的 JavaScript 功能。不过,很多功能对现代浏览器而言并不是必需的。请考虑修改 JavaScript 构建流程,以便不转译 [Baseline](https://web.dev/baseline) 功能,除非您知道必须支持旧版浏览器。[了解为什么大多数网站可以部署 ES6+ 代码而无需转译](https://philipwalton.com/articles/the-state-of-es5-on-the-web/)"
664
- },
665
- "core/audits/byte-efficiency/legacy-javascript.js | detectedCoreJs2Warning": {
666
- "message": "在网页上检测到 core-js 的版本 2。您应该升级到版本 3,以获取诸多性能改进。"
667
- },
668
- "core/audits/byte-efficiency/legacy-javascript.js | title": {
669
- "message": "应避免向新型浏览器提供旧版 JavaScript"
670
- },
671
- "core/audits/byte-efficiency/modern-image-formats.js | description": {
672
- "message": "WebP 和 AVIF 等图片格式的压缩效果通常优于 PNG 或 JPEG,因而下载速度更快,消耗的数据流量更少。[详细了解现代图片格式](https://developer.chrome.com/docs/lighthouse/performance/uses-webp-images/)。"
673
- },
674
- "core/audits/byte-efficiency/modern-image-formats.js | title": {
675
- "message": "采用新一代格式提供图片"
676
- },
677
- "core/audits/byte-efficiency/offscreen-images.js | description": {
678
- "message": "建议您在所有关键资源加载完毕后再加载屏幕外图片和处于隐藏状态的图片,从而缩短 Time to Interactive。[了解如何推迟加载屏幕外图片](https://developer.chrome.com/docs/lighthouse/performance/offscreen-images/)。"
679
- },
680
- "core/audits/byte-efficiency/offscreen-images.js | title": {
681
- "message": "推迟加载屏幕外图片"
682
- },
683
- "core/audits/byte-efficiency/render-blocking-resources.js | description": {
684
- "message": "资源阻止了系统对您网页的首次绘制。建议以内嵌方式提供关键的 JS/CSS,并推迟提供所有非关键的 JS/样式。[了解如何移除阻塞渲染的资源](https://developer.chrome.com/docs/lighthouse/performance/render-blocking-resources/)。"
685
- },
686
- "core/audits/byte-efficiency/render-blocking-resources.js | title": {
687
- "message": "移除阻塞渲染的资源"
688
- },
689
650
  "core/audits/byte-efficiency/total-byte-weight.js | description": {
690
651
  "message": "网络载荷过大不仅会让用户付出真金白银,还极有可能会延长加载用时。[了解如何缩减载荷大小](https://developer.chrome.com/docs/lighthouse/performance/total-byte-weight/)。"
691
652
  },
@@ -722,48 +683,6 @@
722
683
  "core/audits/byte-efficiency/unused-javascript.js | title": {
723
684
  "message": "减少未使用的 JavaScript"
724
685
  },
725
- "core/audits/byte-efficiency/uses-long-cache-ttl.js | description": {
726
- "message": "延长缓存期限可加快重访您网页的速度。[详细了解高效缓存政策](https://developer.chrome.com/docs/lighthouse/performance/uses-long-cache-ttl/)。"
727
- },
728
- "core/audits/byte-efficiency/uses-long-cache-ttl.js | displayValue": {
729
- "message": "{itemCount,plural, =1{找到了 1 项资源}other{找到了 # 项资源}}"
730
- },
731
- "core/audits/byte-efficiency/uses-long-cache-ttl.js | failureTitle": {
732
- "message": "采用高效的缓存策略提供静态资源"
733
- },
734
- "core/audits/byte-efficiency/uses-long-cache-ttl.js | title": {
735
- "message": "针对静态资源使用高效的缓存策略"
736
- },
737
- "core/audits/byte-efficiency/uses-optimized-images.js | description": {
738
- "message": "经过优化的图片有助于提升加载速度,并减少消耗的移动数据网络流量。[了解如何高效地对图片进行编码](https://developer.chrome.com/docs/lighthouse/performance/uses-optimized-images/)。"
739
- },
740
- "core/audits/byte-efficiency/uses-optimized-images.js | title": {
741
- "message": "对图片进行高效编码"
742
- },
743
- "core/audits/byte-efficiency/uses-responsive-images-snapshot.js | columnActualDimensions": {
744
- "message": "实际尺寸"
745
- },
746
- "core/audits/byte-efficiency/uses-responsive-images-snapshot.js | columnDisplayedDimensions": {
747
- "message": "显示时的尺寸"
748
- },
749
- "core/audits/byte-efficiency/uses-responsive-images-snapshot.js | failureTitle": {
750
- "message": "图片大于其显示时的尺寸"
751
- },
752
- "core/audits/byte-efficiency/uses-responsive-images-snapshot.js | title": {
753
- "message": "图片适合其显示时的尺寸"
754
- },
755
- "core/audits/byte-efficiency/uses-responsive-images.js | description": {
756
- "message": "提供大小合适的图片可节省移动数据网络流量并缩短加载用时。[了解如何调整图片大小](https://developer.chrome.com/docs/lighthouse/performance/uses-responsive-images/)。"
757
- },
758
- "core/audits/byte-efficiency/uses-responsive-images.js | title": {
759
- "message": "适当调整图片大小"
760
- },
761
- "core/audits/byte-efficiency/uses-text-compression.js | description": {
762
- "message": "对于文本资源,应先压缩(gzip、deflate 或 brotli),然后再提供,以最大限度地减少网络活动消耗的字节总数。[详细了解文本压缩](https://developer.chrome.com/docs/lighthouse/performance/uses-text-compression/)。"
763
- },
764
- "core/audits/byte-efficiency/uses-text-compression.js | title": {
765
- "message": "启用文本压缩"
766
- },
767
686
  "core/audits/clickjacking-mitigation.js | columnSeverity": {
768
687
  "message": "严重程度"
769
688
  },
@@ -776,15 +695,6 @@
776
695
  "core/audits/clickjacking-mitigation.js | title": {
777
696
  "message": "使用 XFO 或 CSP 缓解点击劫持问题"
778
697
  },
779
- "core/audits/critical-request-chains.js | description": {
780
- "message": "下面的关键请求链显示了以高优先级加载的资源。建议缩短链长、缩减资源的下载文件大小,或者推迟下载不必要的资源,从而提高网页加载速度。[了解如何避免链接关键请求](https://developer.chrome.com/docs/lighthouse/performance/critical-request-chains/)。"
781
- },
782
- "core/audits/critical-request-chains.js | displayValue": {
783
- "message": "{itemCount,plural, =1{找到了 1 条请求链}other{找到了 # 条请求链}}"
784
- },
785
- "core/audits/critical-request-chains.js | title": {
786
- "message": "避免链接关键请求"
787
- },
788
698
  "core/audits/csp-xss.js | columnDirective": {
789
699
  "message": "指令"
790
700
  },
@@ -860,33 +770,6 @@
860
770
  "core/audits/dobetterweb/doctype.js | title": {
861
771
  "message": "页面包含 HTML DOCTYPE"
862
772
  },
863
- "core/audits/dobetterweb/dom-size.js | columnStatistic": {
864
- "message": "统计信息"
865
- },
866
- "core/audits/dobetterweb/dom-size.js | columnValue": {
867
- "message": "值"
868
- },
869
- "core/audits/dobetterweb/dom-size.js | description": {
870
- "message": "大型 DOM 会增加内存用量、导致[样式计算](https://developers.google.com/web/fundamentals/performance/rendering/reduce-the-scope-and-complexity-of-style-calculations)用时延长,并产生高昂的[布局自动重排](https://developers.google.com/speed/articles/reflow)成本。[了解如何避免 DOM 规模过大](https://developer.chrome.com/docs/lighthouse/performance/dom-size/)。"
871
- },
872
- "core/audits/dobetterweb/dom-size.js | displayValue": {
873
- "message": "{itemCount,plural, =1{1 个元素}other{# 个元素}}"
874
- },
875
- "core/audits/dobetterweb/dom-size.js | failureTitle": {
876
- "message": "避免 DOM 规模过大"
877
- },
878
- "core/audits/dobetterweb/dom-size.js | statisticDOMDepth": {
879
- "message": "最大 DOM 深度"
880
- },
881
- "core/audits/dobetterweb/dom-size.js | statisticDOMElements": {
882
- "message": "DOM 元素总数"
883
- },
884
- "core/audits/dobetterweb/dom-size.js | statisticDOMWidth": {
885
- "message": "子元素数量最大值"
886
- },
887
- "core/audits/dobetterweb/dom-size.js | title": {
888
- "message": "避免 DOM 规模过大"
889
- },
890
773
  "core/audits/dobetterweb/geolocation-on-start.js | description": {
891
774
  "message": "如果网站在缺少上下文的情况下请求位置信息,会导致用户不信任网站或感到困惑。建议将请求与用户操作进行绑定。[详细了解地理定位权限](https://developer.chrome.com/docs/lighthouse/best-practices/geolocation-on-start/)。"
892
775
  },
@@ -923,15 +806,6 @@
923
806
  "core/audits/dobetterweb/js-libraries.js | title": {
924
807
  "message": "已检测到的 JavaScript 库"
925
808
  },
926
- "core/audits/dobetterweb/no-document-write.js | description": {
927
- "message": "对于连接速度较慢的用户,通过 `document.write()` 动态注入的外部脚本可将网页加载延迟数十秒。[了解如何避免使用 document.write()](https://developer.chrome.com/docs/lighthouse/best-practices/no-document-write/)。"
928
- },
929
- "core/audits/dobetterweb/no-document-write.js | failureTitle": {
930
- "message": "避免使用 `document.write()`"
931
- },
932
- "core/audits/dobetterweb/no-document-write.js | title": {
933
- "message": "请勿使用 `document.write()`"
934
- },
935
809
  "core/audits/dobetterweb/notification-on-start.js | description": {
936
810
  "message": "如果网站在缺少上下文的情况下请求发送通知,会导致用户不信任网站或感到困惑。建议将请求与用户手势进行绑定。[详细了解如何以负责任的方式获取通知权限](https://developer.chrome.com/docs/lighthouse/best-practices/notification-on-start/)。"
937
811
  },
@@ -950,27 +824,6 @@
950
824
  "core/audits/dobetterweb/paste-preventing-inputs.js | title": {
951
825
  "message": "允许用户将内容粘贴到输入字段中"
952
826
  },
953
- "core/audits/dobetterweb/uses-http2.js | columnProtocol": {
954
- "message": "协议"
955
- },
956
- "core/audits/dobetterweb/uses-http2.js | description": {
957
- "message": "HTTP/2 提供了许多优于 HTTP/1.1 的益处,包括二进制标头和多路复用。[详细了解 HTTP/2](https://developer.chrome.com/docs/lighthouse/best-practices/uses-http2/)。"
958
- },
959
- "core/audits/dobetterweb/uses-http2.js | displayValue": {
960
- "message": "{itemCount,plural, =1{1 条请求未通过 HTTP/2 传送}other{# 条请求未通过 HTTP/2 传送}}"
961
- },
962
- "core/audits/dobetterweb/uses-http2.js | title": {
963
- "message": "使用 HTTP/2"
964
- },
965
- "core/audits/dobetterweb/uses-passive-event-listeners.js | description": {
966
- "message": "建议您将轻触和滚轮事件监听器标记为 `passive`,以提高页面的滚动性能。[详细了解如何采用被动事件监听器](https://developer.chrome.com/docs/lighthouse/best-practices/uses-passive-event-listeners/)。"
967
- },
968
- "core/audits/dobetterweb/uses-passive-event-listeners.js | failureTitle": {
969
- "message": "未使用被动式监听器来提高滚动性能"
970
- },
971
- "core/audits/dobetterweb/uses-passive-event-listeners.js | title": {
972
- "message": "使用被动式监听器来提高滚动性能"
973
- },
974
827
  "core/audits/errors-in-console.js | description": {
975
828
  "message": "控制台中记录的错误表明有未解决的问题。这些问题的起因可能是网络请求失败和其他浏览器问题。[在控制台诊断审核中详细了解此错误](https://developer.chrome.com/docs/lighthouse/best-practices/errors-in-console/)"
976
829
  },
@@ -980,18 +833,6 @@
980
833
  "core/audits/errors-in-console.js | title": {
981
834
  "message": "控制台日志中未记录浏览器错误"
982
835
  },
983
- "core/audits/font-display.js | description": {
984
- "message": "利用 `font-display` CSS 功能来确保用户在网页字体加载期间能看到文字。[详细了解 `font-display`](https://developer.chrome.com/docs/lighthouse/performance/font-display/)。"
985
- },
986
- "core/audits/font-display.js | failureTitle": {
987
- "message": "确保文本在网页字体加载期间保持可见状态"
988
- },
989
- "core/audits/font-display.js | title": {
990
- "message": "在网页字体加载期间,所有文本都保持可见状态"
991
- },
992
- "core/audits/font-display.js | undeclaredFontOriginWarning": {
993
- "message": "{fontCountForOrigin,plural, =1{Lighthouse 无法自动检查源 {fontOrigin} 的 `font-display` 值。}other{Lighthouse 无法自动检查源 {fontOrigin} 的 `font-display` 值。}}"
994
- },
995
836
  "core/audits/has-hsts.js | columnDirective": {
996
837
  "message": "指令"
997
838
  },
@@ -1088,33 +929,6 @@
1088
929
  "core/audits/is-on-https.js | warning": {
1089
930
  "message": "允许(附带警告)"
1090
931
  },
1091
- "core/audits/largest-contentful-paint-element.js | columnPercentOfLCP": {
1092
- "message": "LCP 占比 (%)"
1093
- },
1094
- "core/audits/largest-contentful-paint-element.js | columnPhase": {
1095
- "message": "阶段"
1096
- },
1097
- "core/audits/largest-contentful-paint-element.js | columnTiming": {
1098
- "message": "用时"
1099
- },
1100
- "core/audits/largest-contentful-paint-element.js | description": {
1101
- "message": "这是此视口内绘制的最大内容元素。[详细了解 Largest Contentful Paint 元素](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)"
1102
- },
1103
- "core/audits/largest-contentful-paint-element.js | itemLoadDelay": {
1104
- "message": "加载延迟"
1105
- },
1106
- "core/audits/largest-contentful-paint-element.js | itemLoadTime": {
1107
- "message": "加载时间"
1108
- },
1109
- "core/audits/largest-contentful-paint-element.js | itemRenderDelay": {
1110
- "message": "渲染延迟"
1111
- },
1112
- "core/audits/largest-contentful-paint-element.js | itemTTFB": {
1113
- "message": "TTFB"
1114
- },
1115
- "core/audits/largest-contentful-paint-element.js | title": {
1116
- "message": "最大内容渲染时间元素"
1117
- },
1118
932
  "core/audits/layout-shifts.js | columnScore": {
1119
933
  "message": "布局偏移分数"
1120
934
  },
@@ -1136,15 +950,6 @@
1136
950
  "core/audits/layout-shifts.js | title": {
1137
951
  "message": "请避免出现大幅度的布局偏移"
1138
952
  },
1139
- "core/audits/lcp-lazy-loaded.js | description": {
1140
- "message": "被延迟加载的首屏图片会在页面生命周期内的较晚时间渲染,这可能会致使系统延迟 Largest Contentful Paint。[详细了解最佳延迟加载](https://web.dev/articles/lcp-lazy-loading)。"
1141
- },
1142
- "core/audits/lcp-lazy-loaded.js | failureTitle": {
1143
- "message": "Largest Contentful Paint 所对应的图片被延迟加载了"
1144
- },
1145
- "core/audits/lcp-lazy-loaded.js | title": {
1146
- "message": "Largest Contentful Paint 所对应的图片未被延迟加载"
1147
- },
1148
953
  "core/audits/long-tasks.js | description": {
1149
954
  "message": "列出了主线程中运行时间最长的任务,有助于识别出导致输入延迟的最主要原因。[了解如何避免出现长时间运行的主线程任务](https://web.dev/articles/optimize-long-tasks)"
1150
955
  },
@@ -1172,9 +977,6 @@
1172
977
  "core/audits/metrics/first-contentful-paint.js | description": {
1173
978
  "message": "First Contentful Paint 标记了绘制出首个文本或首张图片的时间。[详细了解 First Contentful Paint 指标](https://developer.chrome.com/docs/lighthouse/performance/first-contentful-paint/)。"
1174
979
  },
1175
- "core/audits/metrics/first-meaningful-paint.js | description": {
1176
- "message": "“首次有效绘制时间”测量的是网页主要内容开始对用户显示的时间。[详细了解“首次有效绘制时间”指标](https://developer.chrome.com/docs/lighthouse/performance/first-meaningful-paint/)。"
1177
- },
1178
980
  "core/audits/metrics/interaction-to-next-paint.js | description": {
1179
981
  "message": "Interaction to Next Paint 用于衡量网页响应速度,即网页需要多久才会明显响应用户输入。[详细了解 Interaction to Next Paint 指标](https://web.dev/articles/inp)。"
1180
982
  },
@@ -1229,6 +1031,9 @@
1229
1031
  "core/audits/non-composited-animations.js | unsupportedCSSProperty": {
1230
1032
  "message": "{propertyCount,plural, =1{不受支持的 CSS 属性:{properties}}other{不受支持的 CSS 属性:{properties}}}"
1231
1033
  },
1034
+ "core/audits/non-composited-animations.js | unsupportedCustomCSSProperty": {
1035
+ "message": "{propertyCount,plural, =1{无法在合成器上为自定义 CSS 属性添加动画效果:{properties}}other{无法在合成器上为自定义 CSS 属性添加动画效果:{properties}}}"
1036
+ },
1232
1037
  "core/audits/non-composited-animations.js | unsupportedTimingParameters": {
1233
1038
  "message": "效果含有不受支持的时间参数"
1234
1039
  },
@@ -1250,21 +1055,6 @@
1250
1055
  "core/audits/origin-isolation.js | title": {
1251
1056
  "message": "确保通过 COOP 实现适当的源隔离"
1252
1057
  },
1253
- "core/audits/preload-fonts.js | description": {
1254
- "message": "请预加载 `optional` 字体以方便初访者使用。[详细了解如何预加载字体](https://web.dev/articles/preload-optional-fonts)"
1255
- },
1256
- "core/audits/preload-fonts.js | failureTitle": {
1257
- "message": "未预加载使用 `font-display: optional` 的字体"
1258
- },
1259
- "core/audits/preload-fonts.js | title": {
1260
- "message": "已预加载使用 `font-display: optional` 的字体"
1261
- },
1262
- "core/audits/prioritize-lcp-image.js | description": {
1263
- "message": "如果向网页中动态添加 LCP 元素,您应预加载图片以缩短 LCP 用时。[详细了解如何预加载 LCP 元素](https://web.dev/articles/optimize-lcp#optimize_when_the_resource_is_discovered)。"
1264
- },
1265
- "core/audits/prioritize-lcp-image.js | title": {
1266
- "message": "预加载 LCP 元素所用图片"
1267
- },
1268
1058
  "core/audits/redirects-http.js | description": {
1269
1059
  "message": "请务必将所有 HTTP 流量都重定向到 HTTPS,以便为所有用户启用安全的网络功能。[了解详情](https://developer.chrome.com/docs/lighthouse/pwa/redirects-http/)。"
1270
1060
  },
@@ -1316,36 +1106,6 @@
1316
1106
  "core/audits/seo/crawlable-anchors.js | title": {
1317
1107
  "message": "链接都是可抓取的"
1318
1108
  },
1319
- "core/audits/seo/font-size.js | additionalIllegibleText": {
1320
- "message": "其他无法辨认的文字"
1321
- },
1322
- "core/audits/seo/font-size.js | columnFontSize": {
1323
- "message": "字号"
1324
- },
1325
- "core/audits/seo/font-size.js | columnPercentPageText": {
1326
- "message": "网页文本百分比"
1327
- },
1328
- "core/audits/seo/font-size.js | columnSelector": {
1329
- "message": "选择器"
1330
- },
1331
- "core/audits/seo/font-size.js | description": {
1332
- "message": "12px 以下的字体过小,会导致用户无法辨认;此外,这样的字体需要移动设备访问者“张合双指进行缩放”才能阅读。请尽量让 60% 以上的页面文字不小于 12px。[详细了解清晰可辨的字体大小](https://developer.chrome.com/docs/lighthouse/seo/font-size/)。"
1333
- },
1334
- "core/audits/seo/font-size.js | displayValue": {
1335
- "message": "{decimalProportion, number, extendedPercent} 清晰可辨的文字"
1336
- },
1337
- "core/audits/seo/font-size.js | explanationViewport": {
1338
- "message": "无法辨认文字,因为缺少已针对移动设备屏幕进行优化的 viewport meta 标记。"
1339
- },
1340
- "core/audits/seo/font-size.js | failureTitle": {
1341
- "message": "文档未使用清晰可辨的字体大小"
1342
- },
1343
- "core/audits/seo/font-size.js | legibleText": {
1344
- "message": "清晰可辨的文字"
1345
- },
1346
- "core/audits/seo/font-size.js | title": {
1347
- "message": "文档所用的字体大小清晰可辨"
1348
- },
1349
1109
  "core/audits/seo/hreflang.js | description": {
1350
1110
  "message": "hreflang 链接用于告知搜索引擎应在特定语言或地区的搜索结果中显示哪种版本的网页。[详细了解 `hreflang`](https://developer.chrome.com/docs/lighthouse/seo/hreflang/)。"
1351
1111
  },
@@ -1392,7 +1152,7 @@
1392
1152
  "message": "链接有描述性文字"
1393
1153
  },
1394
1154
  "core/audits/seo/manual/structured-data.js | description": {
1395
- "message": "运行[结构化数据测试工具](https://search.google.com/structured-data/testing-tool/)和 [Structured Data Linter](http://linter.structured-data.org/) 可验证结构化数据。[详细了解结构化数据](https://developer.chrome.com/docs/lighthouse/seo/structured-data/)。"
1155
+ "message": "运行[结构化数据测试工具](https://developers.google.com/search/docs/appearance/structured-data/)可验证结构化数据。[详细了解结构化数据](https://developer.chrome.com/docs/lighthouse/seo/structured-data/)。"
1396
1156
  },
1397
1157
  "core/audits/seo/manual/structured-data.js | title": {
1398
1158
  "message": "结构化数据有效"
@@ -1451,48 +1211,6 @@
1451
1211
  "core/audits/third-party-cookies.js | title": {
1452
1212
  "message": "避免使用第三方 Cookie"
1453
1213
  },
1454
- "core/audits/third-party-facades.js | categoryCustomerSuccess": {
1455
- "message": "{productName}(客户成功案例)"
1456
- },
1457
- "core/audits/third-party-facades.js | categoryMarketing": {
1458
- "message": "{productName}(营销)"
1459
- },
1460
- "core/audits/third-party-facades.js | categorySocial": {
1461
- "message": "{productName}(社交)"
1462
- },
1463
- "core/audits/third-party-facades.js | categoryVideo": {
1464
- "message": "{productName}(视频)"
1465
- },
1466
- "core/audits/third-party-facades.js | columnProduct": {
1467
- "message": "产品"
1468
- },
1469
- "core/audits/third-party-facades.js | description": {
1470
- "message": "您可以延迟加载某些第三方嵌入代码。建议使用 Facade 替换这些代码,直到您需要使用它们为止。[了解如何使用 Facade 推迟加载第三方代码](https://developer.chrome.com/docs/lighthouse/performance/third-party-facades/)。"
1471
- },
1472
- "core/audits/third-party-facades.js | displayValue": {
1473
- "message": "{itemCount,plural, =1{有 # 个备用 Facade}other{有 # 个备用 Facade}}"
1474
- },
1475
- "core/audits/third-party-facades.js | failureTitle": {
1476
- "message": "可以使用 Facade 延迟加载某些第三方资源"
1477
- },
1478
- "core/audits/third-party-facades.js | title": {
1479
- "message": "使用 Facade 延迟加载第三方资源"
1480
- },
1481
- "core/audits/third-party-summary.js | columnThirdParty": {
1482
- "message": "第三方"
1483
- },
1484
- "core/audits/third-party-summary.js | description": {
1485
- "message": "第三方代码可能会显著影响加载性能。请限制冗余第三方提供商的数量,并尝试在页面完成主要加载后再加载第三方代码。[了解如何将第三方的影响降至最低](https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/loading-third-party-javascript/)。"
1486
- },
1487
- "core/audits/third-party-summary.js | displayValue": {
1488
- "message": "第三方代码将主线程阻止了 {timeInMs, number, milliseconds} 毫秒"
1489
- },
1490
- "core/audits/third-party-summary.js | failureTitle": {
1491
- "message": "降低第三方代码的影响"
1492
- },
1493
- "core/audits/third-party-summary.js | title": {
1494
- "message": "尽量减少第三方使用"
1495
- },
1496
1214
  "core/audits/trusted-types-xss.js | columnSeverity": {
1497
1215
  "message": "严重程度"
1498
1216
  },
@@ -1526,30 +1244,6 @@
1526
1244
  "core/audits/user-timings.js | title": {
1527
1245
  "message": "User Timing 标记和测量结果"
1528
1246
  },
1529
- "core/audits/uses-rel-preconnect.js | crossoriginWarning": {
1530
- "message": "“{securityOrigin}”已有 `<link rel=preconnect>`,但浏览器未使用该链接。请检查并确保您正确地使用了 `crossorigin` 属性。"
1531
- },
1532
- "core/audits/uses-rel-preconnect.js | description": {
1533
- "message": "建议添加 `preconnect` 或 `dns-prefetch` 资源提示,以尽早连接到重要的第三方源。[了解如何预先连接到必需的源](https://developer.chrome.com/docs/lighthouse/performance/uses-rel-preconnect/)。"
1534
- },
1535
- "core/audits/uses-rel-preconnect.js | title": {
1536
- "message": "预先连接到必要的来源"
1537
- },
1538
- "core/audits/uses-rel-preconnect.js | tooManyPreconnectLinksWarning": {
1539
- "message": "发现了不止 2 个 `<link rel=preconnect>` 连接。此类连接应尽量少用,且应仅用于指向最重要的来源。"
1540
- },
1541
- "core/audits/uses-rel-preconnect.js | unusedWarning": {
1542
- "message": "“{securityOrigin}”已有 `<link rel=preconnect>`,但浏览器未使用该链接。请仅针对网页肯定会请求的重要来源使用 `preconnect`。"
1543
- },
1544
- "core/audits/uses-rel-preload.js | crossoriginWarning": {
1545
- "message": "“{preloadURL}”已有 preload `<link>`,但浏览器未使用该链接。请检查并确保您正确地使用了 `crossorigin` 属性。"
1546
- },
1547
- "core/audits/uses-rel-preload.js | description": {
1548
- "message": "建议使用 `<link rel=preload>` 来优先提取目前在网页加载过程中较晚请求加载的资源。[了解如何预加载关键请求](https://developer.chrome.com/docs/lighthouse/performance/uses-rel-preload/)。"
1549
- },
1550
- "core/audits/uses-rel-preload.js | title": {
1551
- "message": "预加载关键请求"
1552
- },
1553
1247
  "core/audits/valid-source-maps.js | columnMapURL": {
1554
1248
  "message": "映射网址"
1555
1249
  },
@@ -1568,42 +1262,6 @@
1568
1262
  "core/audits/valid-source-maps.js | title": {
1569
1263
  "message": "页面包含有效的源代码映射"
1570
1264
  },
1571
- "core/audits/viewport.js | description": {
1572
- "message": "`<meta name=\"viewport\">` 不仅会针对移动设备屏幕尺寸优化您的应用,还会阻止[系统在响应用户输入前出现 300 毫秒的延迟](https://developer.chrome.com/blog/300ms-tap-delay-gone-away/)。[详细了解如何使用视口元标记](https://developer.chrome.com/docs/lighthouse/pwa/viewport/)。"
1573
- },
1574
- "core/audits/viewport.js | explanationNoTag": {
1575
- "message": "未找到任何 `<meta name=\"viewport\">` 标记"
1576
- },
1577
- "core/audits/viewport.js | failureTitle": {
1578
- "message": "没有包含 `width` 或 `initial-scale` 的 `<meta name=\"viewport\">` 标记"
1579
- },
1580
- "core/audits/viewport.js | title": {
1581
- "message": "具有包含 `width` 或 `initial-scale` 的 `<meta name=\"viewport\">` 标记"
1582
- },
1583
- "core/audits/work-during-interaction.js | description": {
1584
- "message": "这是在 Interaction to Next Paint 测量期间发生的线程阻塞工作。[详细了解 Interaction to Next Paint 指标](https://web.dev/articles/inp)。"
1585
- },
1586
- "core/audits/work-during-interaction.js | displayValue": {
1587
- "message": "事件“{interactionType}”花费了 {timeInMs, number, milliseconds} 毫秒"
1588
- },
1589
- "core/audits/work-during-interaction.js | eventTarget": {
1590
- "message": "事件目标"
1591
- },
1592
- "core/audits/work-during-interaction.js | failureTitle": {
1593
- "message": "尽量减少关键互动期间的工作量"
1594
- },
1595
- "core/audits/work-during-interaction.js | inputDelay": {
1596
- "message": "输入延迟"
1597
- },
1598
- "core/audits/work-during-interaction.js | presentationDelay": {
1599
- "message": "展示延迟时间"
1600
- },
1601
- "core/audits/work-during-interaction.js | processingDuration": {
1602
- "message": "处理用时"
1603
- },
1604
- "core/audits/work-during-interaction.js | title": {
1605
- "message": "尽量减少关键互动期间的工作量"
1606
- },
1607
1265
  "core/config/default-config.js | a11yAriaGroupDescription": {
1608
1266
  "message": "这些提示旨在帮助改进 ARIA 在您的应用内的使用情况,从而改善辅助技术(例如屏幕阅读器)用户的体验。"
1609
1267
  },
@@ -3119,7 +2777,7 @@
3119
2777
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webRTC": {
3120
2778
  "message": "使用 WebRTC 的网页无法储存至往返缓存。"
3121
2779
  },
3122
- "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webRTCSticky": {
2780
+ "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webRTCUsedWithCCNS": {
3123
2781
  "message": "往返缓存已被停用,因为使用了 WebRTC。"
3124
2782
  },
3125
2783
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webShare": {
@@ -3128,13 +2786,13 @@
3128
2786
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webSocket": {
3129
2787
  "message": "使用 WebSocket 的网页无法储存至往返缓存。"
3130
2788
  },
3131
- "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webSocketSticky": {
2789
+ "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webSocketUsedWithCCNS": {
3132
2790
  "message": "往返缓存已被停用,因为使用了 WebSocket。"
3133
2791
  },
3134
2792
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webTransport": {
3135
2793
  "message": "使用 WebTransport 的网页无法储存至往返缓存。"
3136
2794
  },
3137
- "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webTransportSticky": {
2795
+ "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webTransportUsedWithCCNS": {
3138
2796
  "message": "往返缓存已被停用,因为使用了 WebTransport。"
3139
2797
  },
3140
2798
  "node_modules/@paulirish/trace_engine/panels/application/components/BackForwardCacheStrings.js | webXR": {
@@ -3228,43 +2886,43 @@
3228
2886
  "message": "文本资源应以压缩形式(gzip、deflate 或 brotli)提供,以最大限度地减少网络活动消耗的字节总数。建议使用原生支持此功能的 CDN,或配置网络服务器来执行此操作。[了解详情](https://developers.google.com/web/tools/lighthouse/audits/text-compression)。"
3229
2887
  },
3230
2888
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | font-display": {
3231
- "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/speed) 并启用“`Optimize Fonts`”设置,即可自动利用 `font-display` CSS 功能来确保用户在网页字体加载期间能看到文字。"
2889
+ "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/leap) 并启用“`Optimize Fonts`”设置,即可自动利用 `font-display` CSS 功能来确保用户在网页字体加载期间能看到文字。"
3232
2890
  },
3233
2891
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | modern-image-formats": {
3234
- "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/speed) 并启用“`Next-Gen Formats`”设置,即可将图片转换成 WebP 格式。"
2892
+ "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/leap) 并启用“`Next-Gen Formats`”设置,即可将图片转换成 WebP 格式。"
3235
2893
  },
3236
2894
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | offscreen-images": {
3237
- "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/speed) 并启用“`Lazy Load Images`”设置,即可将屏幕外图片的加载时间延迟到需要它们时。"
2895
+ "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/leap) 并启用“`Lazy Load Images`”设置,即可将屏幕外图片的加载时间延迟到需要它们时。"
3238
2896
  },
3239
2897
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | render-blocking-resources": {
3240
- "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/speed) 并启用“`Critical CSS`”和“`Script Delay`”设置,即可延迟加载非关键 JS/CSS。"
2898
+ "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/leap) 并启用“`Script Delay`”设置,即可延迟加载非关键 JS。"
3241
2899
  },
3242
2900
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | server-response-time": {
3243
- "message": "您只需使用 [Ezoic Cloud Caching](https://pubdash.ezoic.com/speed/caching),即可将内容缓存到我们的全球网络,从而缩短第一个字节呈现前的加载用时。"
2901
+ "message": "您只需使用 [Ezoic Cloud Caching](https://pubdash.ezoic.com/leap/caching),即可将内容缓存到我们的全球网络,从而缩短第一个字节呈现前的加载用时。"
3244
2902
  },
3245
2903
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | unminified-css": {
3246
- "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/speed) 并启用“`Minify CSS`”设置,即可自动压缩 CSS 以减少网络载荷量。"
2904
+ "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/leap) 并启用“`Minify CSS`”设置,即可自动压缩 CSS 以减少网络载荷量。"
3247
2905
  },
3248
2906
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | unminified-javascript": {
3249
- "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/speed) 并启用“`Minify Javascript`”设置,即可自动压缩 JS 以减少网络载荷量。"
2907
+ "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/leap) 并启用“`Minify Javascript`”设置,即可自动压缩 JS 以减少网络载荷量。"
3250
2908
  },
3251
2909
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | unused-css-rules": {
3252
- "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/speed) 并启用“`Remove Unused CSS`”设置,即可助力解决此问题。此设置会识别您网站的每个网页上实际使用的 CSS 类并移除其他所有类,以确保文件始终不大。"
2910
+ "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/leap) 并启用“`Remove Unused CSS`”设置,即可助力解决此问题。此设置会识别您网站的每个网页上实际使用的 CSS 类并移除其他所有类,以确保文件始终不大。"
3253
2911
  },
3254
2912
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-long-cache-ttl": {
3255
- "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/speed) 并启用“`Efficient Static Cache Policy`”设置,即可在缓存标头中为静态资源设定建议值。"
2913
+ "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/leap) 并启用“`Efficient Static Cache Policy`”设置,即可在缓存标头中为静态资源设定建议值。"
3256
2914
  },
3257
2915
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-optimized-images": {
3258
- "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/speed) 并启用“`Next-Gen Formats`”设置,即可将图片转换成 WebP 格式。"
2916
+ "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/leap) 并启用“`Next-Gen Formats`”设置,即可将图片转换成 WebP 格式。"
3259
2917
  },
3260
2918
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-rel-preconnect": {
3261
- "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/speed) 并启用“`Pre-Connect Origins`”设置,即可自动添加 `preconnect` 资源提示以尽早连接到重要的第三方源。"
2919
+ "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/leap) 并启用“`Pre-Connect Origins`”设置,即可自动添加 `preconnect` 资源提示以尽早连接到重要的第三方源。"
3262
2920
  },
3263
2921
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-rel-preload": {
3264
- "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/speed) 并启用“`Preload Fonts`”和“`Preload Background Images`”设置,即可添加 `preload` 链接来优先提取目前在网页加载过程中较晚请求加载的资源。"
2922
+ "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/leap) 并启用“`Preload Fonts`”和“`Preload Background Images`”设置,即可添加 `preload` 链接来优先提取目前在网页加载过程中较晚请求加载的资源。"
3265
2923
  },
3266
2924
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | uses-responsive-images": {
3267
- "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/speed) 并启用“`Resize Images`”设置,即可调整图片大小以适合设备的大小,从而减少网络载荷量。"
2925
+ "message": "您只需使用 [Ezoic Leap](https://pubdash.ezoic.com/leap) 并启用“`Resize Images`”设置,即可调整图片大小以适合设备的大小,从而减少网络载荷量。"
3268
2926
  },
3269
2927
  "node_modules/lighthouse-stack-packs/packs/gatsby.js | modern-image-formats": {
3270
2928
  "message": "请使用 `gatsby-plugin-image` 组件(而非 `<img>`)自动优化图片格式。[了解详情](https://www.gatsbyjs.com/docs/how-to/images-and-media/using-gatsby-plugin-image)。"
@@ -3372,16 +3030,16 @@
3372
3030
  "message": "您可以通过[修改主题背景的布局](https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/layouts/xml-manage.html)来添加 `<link rel=preload>` 标记。"
3373
3031
  },
3374
3032
  "node_modules/lighthouse-stack-packs/packs/next.js | modern-image-formats": {
3375
- "message": "请使用 `next/image` 组件(而非 `<img>`)自动优化图片格式。[了解详情](https://nextjs.org/docs/basic-features/image-optimization)。"
3033
+ "message": "请使用 `next/image` 组件(而非 `<img>`)自动优化图片格式。[了解详情](https://nextjs.org/docs/app/getting-started/images)。"
3376
3034
  },
3377
3035
  "node_modules/lighthouse-stack-packs/packs/next.js | offscreen-images": {
3378
- "message": "请使用 `next/image` 组件(而非 `<img>`)自动延迟加载图片。[了解详情](https://nextjs.org/docs/basic-features/image-optimization)。"
3036
+ "message": "请使用 `next/image` 组件(而非 `<img>`)自动延迟加载图片。[了解详情](https://nextjs.org/docs/app/getting-started/images)。"
3379
3037
  },
3380
3038
  "node_modules/lighthouse-stack-packs/packs/next.js | prioritize-lcp-image": {
3381
3039
  "message": "您只需使用 `next/image` 组件并将“priority”设为 true,即可预加载 LCP 图片。[了解详情](https://nextjs.org/docs/api-reference/next/image#priority)。"
3382
3040
  },
3383
3041
  "node_modules/lighthouse-stack-packs/packs/next.js | render-blocking-resources": {
3384
- "message": "请使用 `next/script` 组件推迟加载非关键第三方脚本。[了解详情](https://nextjs.org/docs/basic-features/script)。"
3042
+ "message": "请使用 `next/script` 组件推迟加载非关键第三方脚本。[了解详情](https://nextjs.org/docs/app/guides/scripts)。"
3385
3043
  },
3386
3044
  "node_modules/lighthouse-stack-packs/packs/next.js | unsized-images": {
3387
3045
  "message": "请使用 `next/image` 组件,以确保始终指定恰当的图片尺寸。[了解详情](https://nextjs.org/docs/api-reference/next/image#width)。"
@@ -3393,13 +3051,13 @@
3393
3051
  "message": "请使用 `Webpack Bundle Analyzer` 检测未使用的 JavaScript 代码。[了解详情](https://github.com/vercel/next.js/tree/canary/packages/next-bundle-analyzer)"
3394
3052
  },
3395
3053
  "node_modules/lighthouse-stack-packs/packs/next.js | user-timings": {
3396
- "message": "建议您使用 `Next.js Analytics` 衡量应用的实际性能。[了解详情](https://nextjs.org/docs/advanced-features/measuring-performance)。"
3054
+ "message": "建议您使用 `Next.js Analytics` 衡量应用的实际性能。[了解详情](https://nextjs.org/docs/pages/guides/analytics)。"
3397
3055
  },
3398
3056
  "node_modules/lighthouse-stack-packs/packs/next.js | uses-long-cache-ttl": {
3399
- "message": "请为不可变资源和`Server-side Rendered` (SSR) 网页配置缓存。[了解详情](https://nextjs.org/docs/going-to-production#caching)。"
3057
+ "message": "请为不可变资源和`Server-side Rendered` (SSR) 网页配置缓存。[了解详情](https://nextjs.org/docs/13/pages/building-your-application/deploying/production-checklist#caching)。"
3400
3058
  },
3401
3059
  "node_modules/lighthouse-stack-packs/packs/next.js | uses-optimized-images": {
3402
- "message": "请使用 `next/image` 组件(而非 `<img>`)调整图片质量。[了解详情](https://nextjs.org/docs/basic-features/image-optimization)。"
3060
+ "message": "请使用 `next/image` 组件(而非 `<img>`)调整图片质量。[了解详情](https://nextjs.org/docs/app/getting-started/images)。"
3403
3061
  },
3404
3062
  "node_modules/lighthouse-stack-packs/packs/next.js | uses-responsive-images": {
3405
3063
  "message": "请使用 `next/image` 组件设置适当的 `sizes`。[了解详情](https://nextjs.org/docs/api-reference/next/image#sizes)。"
@@ -3443,9 +3101,6 @@
3443
3101
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | uses-responsive-images": {
3444
3102
  "message": "启用 [`Adaptive Image Sizing`](https://support.nitropack.io/hc/en-us/articles/10123833029905-How-to-Enable-Adaptive-Image-Sizing-For-Your-Site) 可提前优化图片,使其与在所有设备上显示时所用容器的尺寸相匹配。"
3445
3103
  },
3446
- "node_modules/lighthouse-stack-packs/packs/nitropack.js | uses-text-compression": {
3447
- "message": "在 NitroPack 中使用 [`Gzip compression`](https://support.nitropack.io/hc/en-us/articles/13229297479313-Enabling-GZIP-compression) 可缩减向浏览器发送的文件的大小。"
3448
- },
3449
3104
  "node_modules/lighthouse-stack-packs/packs/nuxt.js | modern-image-formats": {
3450
3105
  "message": "请使用 `nuxt/image` 组件并采用如下设置:`format=\"webp\"`。[了解详情](https://image.nuxt.com/usage/nuxt-img#format)。"
3451
3106
  },
@@ -3522,7 +3177,7 @@
3522
3177
  "message": "如果您的构建系统可自动压缩 JS 文件大小,请确保您部署的是正式版应用。您可以通过 React Developer Tools 扩展程序执行此项检查。[了解详情](https://reactjs.org/docs/optimizing-performance.html#use-the-production-build)。"
3523
3178
  },
3524
3179
  "node_modules/lighthouse-stack-packs/packs/react.js | unused-javascript": {
3525
- "message": "如果您不使用服务器端呈现,请使用 `React.lazy()` [拆分 JavaScript 软件包](https://web.dev/code-splitting-suspense/)。否则,请使用第三方库(如 [loadable-components](https://www.smooth-code.com/open-source/loadable-components/docs/getting-started/))拆分代码。"
3180
+ "message": "如果您不使用服务器端呈现,请使用 `React.lazy()` [拆分 JavaScript 软件包](https://web.dev/code-splitting-suspense/)。否则,请使用第三方库(如 [loadable-components](https://loadable-components.com/))拆分代码。"
3526
3181
  },
3527
3182
  "node_modules/lighthouse-stack-packs/packs/react.js | user-timings": {
3528
3183
  "message": "使用 React DevTools Profiler,从而利用 Profiler API 来衡量组件的呈现性能。[了解详情](https://reactjs.org/blog/2018/09/10/introducing-the-react-profiler.html)。"
@@ -3668,15 +3323,9 @@
3668
3323
  "report/renderer/report-utils.js | footerIssue": {
3669
3324
  "message": "提交问题"
3670
3325
  },
3671
- "report/renderer/report-utils.js | goBackToAudits": {
3672
- "message": "返回审核部分"
3673
- },
3674
3326
  "report/renderer/report-utils.js | hide": {
3675
3327
  "message": "隐藏"
3676
3328
  },
3677
- "report/renderer/report-utils.js | insightsNotice": {
3678
- "message": "今年晚些时候,数据分析将取代效果审核。[点击此处了解详情并提供反馈](https://github.com/GoogleChrome/lighthouse/discussions/16462)。"
3679
- },
3680
3329
  "report/renderer/report-utils.js | labDataTitle": {
3681
3330
  "message": "实验室数据"
3682
3331
  },
@@ -3776,12 +3425,15 @@
3776
3425
  "report/renderer/report-utils.js | toplevelWarningsMessage": {
3777
3426
  "message": "此次 Lighthouse 运行并不顺利,原因如下:"
3778
3427
  },
3779
- "report/renderer/report-utils.js | tryInsights": {
3780
- "message": "试用数据分析功能"
3781
- },
3782
3428
  "report/renderer/report-utils.js | unattributable": {
3783
3429
  "message": "无法归因"
3784
3430
  },
3431
+ "report/renderer/report-utils.js | unscoredLabel": {
3432
+ "message": "不计分"
3433
+ },
3434
+ "report/renderer/report-utils.js | unscoredTitle": {
3435
+ "message": "此审核不会影响总体类别得分。"
3436
+ },
3785
3437
  "report/renderer/report-utils.js | varianceDisclaimer": {
3786
3438
  "message": "这些都是估算值,且可能会因时而异。系统会直接基于这些指标来[计算性能得分](https://developer.chrome.com/docs/lighthouse/performance/performance-scoring/)。"
3787
3439
  },