chrome-devtools-frontend 1.0.1376716 → 1.0.1386602

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 (885) hide show
  1. package/.stylelintrc.json +2 -1
  2. package/config/gni/devtools_grd_files.gni +40 -11
  3. package/config/gni/devtools_image_files.gni +4 -0
  4. package/docs/README.md +4 -0
  5. package/docs/contributing/issues.md +13 -10
  6. package/docs/get_the_code.md +4 -1
  7. package/docs/policy/README.md +6 -0
  8. package/docs/policy/slow-close.md +52 -0
  9. package/docs/styleguide/ux/README.md +1 -0
  10. package/docs/styleguide/ux/numbers.md +106 -0
  11. package/front_end/Images/src/animation.svg +3 -0
  12. package/front_end/Images/src/brush-2.svg +3 -0
  13. package/front_end/Images/src/cookie_off.svg +3 -0
  14. package/front_end/Images/src/domain.svg +3 -0
  15. package/front_end/core/common/Color.ts +3 -3
  16. package/front_end/core/common/SettingRegistration.ts +8 -1
  17. package/front_end/core/host/AidaClient.ts +4 -3
  18. package/front_end/core/host/InspectorFrontendHost.ts +4 -0
  19. package/front_end/core/host/InspectorFrontendHostAPI.ts +0 -1
  20. package/front_end/core/host/UserMetrics.ts +0 -8
  21. package/front_end/core/i18n/ByteUtilities.test.ts +34 -0
  22. package/front_end/core/i18n/ByteUtilities.ts +65 -0
  23. package/front_end/core/i18n/NumberFormatter.ts +75 -0
  24. package/front_end/core/i18n/i18n.ts +4 -0
  25. package/front_end/core/i18n/locales/af.json +1031 -887
  26. package/front_end/core/i18n/locales/am.json +1036 -892
  27. package/front_end/core/i18n/locales/ar.json +1039 -895
  28. package/front_end/core/i18n/locales/as.json +1032 -888
  29. package/front_end/core/i18n/locales/az.json +1034 -890
  30. package/front_end/core/i18n/locales/be.json +1031 -887
  31. package/front_end/core/i18n/locales/bg.json +1031 -887
  32. package/front_end/core/i18n/locales/bn.json +1033 -889
  33. package/front_end/core/i18n/locales/bs.json +1036 -892
  34. package/front_end/core/i18n/locales/ca.json +1031 -887
  35. package/front_end/core/i18n/locales/cs.json +1030 -886
  36. package/front_end/core/i18n/locales/cy.json +1032 -888
  37. package/front_end/core/i18n/locales/da.json +1031 -887
  38. package/front_end/core/i18n/locales/de.json +1033 -889
  39. package/front_end/core/i18n/locales/el.json +1031 -887
  40. package/front_end/core/i18n/locales/en-GB.json +1033 -889
  41. package/front_end/core/i18n/locales/es-419.json +1029 -885
  42. package/front_end/core/i18n/locales/es.json +1032 -888
  43. package/front_end/core/i18n/locales/et.json +1033 -889
  44. package/front_end/core/i18n/locales/eu.json +1031 -887
  45. package/front_end/core/i18n/locales/fa.json +1035 -891
  46. package/front_end/core/i18n/locales/fi.json +1035 -891
  47. package/front_end/core/i18n/locales/fil.json +1034 -890
  48. package/front_end/core/i18n/locales/fr-CA.json +1031 -887
  49. package/front_end/core/i18n/locales/fr.json +1049 -905
  50. package/front_end/core/i18n/locales/gl.json +1032 -888
  51. package/front_end/core/i18n/locales/gu.json +1035 -891
  52. package/front_end/core/i18n/locales/he.json +1031 -887
  53. package/front_end/core/i18n/locales/hi.json +1034 -890
  54. package/front_end/core/i18n/locales/hr.json +1031 -887
  55. package/front_end/core/i18n/locales/hu.json +1033 -889
  56. package/front_end/core/i18n/locales/hy.json +1046 -902
  57. package/front_end/core/i18n/locales/id.json +1023 -879
  58. package/front_end/core/i18n/locales/is.json +1032 -888
  59. package/front_end/core/i18n/locales/it.json +1031 -887
  60. package/front_end/core/i18n/locales/ja.json +1042 -898
  61. package/front_end/core/i18n/locales/ka.json +1034 -890
  62. package/front_end/core/i18n/locales/kk.json +1035 -891
  63. package/front_end/core/i18n/locales/km.json +1035 -891
  64. package/front_end/core/i18n/locales/kn.json +1036 -892
  65. package/front_end/core/i18n/locales/ko.json +1031 -887
  66. package/front_end/core/i18n/locales/ky.json +1032 -888
  67. package/front_end/core/i18n/locales/lo.json +1030 -886
  68. package/front_end/core/i18n/locales/lt.json +1032 -888
  69. package/front_end/core/i18n/locales/lv.json +1032 -888
  70. package/front_end/core/i18n/locales/mk.json +1032 -888
  71. package/front_end/core/i18n/locales/ml.json +1033 -889
  72. package/front_end/core/i18n/locales/mn.json +1034 -890
  73. package/front_end/core/i18n/locales/mr.json +1035 -891
  74. package/front_end/core/i18n/locales/ms.json +1033 -889
  75. package/front_end/core/i18n/locales/my.json +1033 -889
  76. package/front_end/core/i18n/locales/ne.json +1036 -892
  77. package/front_end/core/i18n/locales/nl.json +1033 -889
  78. package/front_end/core/i18n/locales/no.json +1036 -892
  79. package/front_end/core/i18n/locales/or.json +1043 -899
  80. package/front_end/core/i18n/locales/pa.json +1030 -886
  81. package/front_end/core/i18n/locales/pl.json +1032 -888
  82. package/front_end/core/i18n/locales/pt-PT.json +1033 -889
  83. package/front_end/core/i18n/locales/pt.json +1033 -889
  84. package/front_end/core/i18n/locales/ro.json +1029 -885
  85. package/front_end/core/i18n/locales/ru.json +1026 -882
  86. package/front_end/core/i18n/locales/si.json +1031 -887
  87. package/front_end/core/i18n/locales/sk.json +1033 -889
  88. package/front_end/core/i18n/locales/sl.json +1031 -887
  89. package/front_end/core/i18n/locales/sq.json +1061 -917
  90. package/front_end/core/i18n/locales/sr-Latn.json +1033 -889
  91. package/front_end/core/i18n/locales/sr.json +1033 -889
  92. package/front_end/core/i18n/locales/sv.json +1031 -887
  93. package/front_end/core/i18n/locales/sw.json +1033 -889
  94. package/front_end/core/i18n/locales/ta.json +1058 -914
  95. package/front_end/core/i18n/locales/te.json +1037 -893
  96. package/front_end/core/i18n/locales/th.json +1032 -888
  97. package/front_end/core/i18n/locales/tr.json +1031 -887
  98. package/front_end/core/i18n/locales/uk.json +1030 -886
  99. package/front_end/core/i18n/locales/ur.json +1031 -887
  100. package/front_end/core/i18n/locales/uz.json +1023 -879
  101. package/front_end/core/i18n/locales/vi.json +1032 -888
  102. package/front_end/core/i18n/locales/zh-HK.json +1032 -888
  103. package/front_end/core/i18n/locales/zh-TW.json +1032 -888
  104. package/front_end/core/i18n/locales/zh.json +1033 -889
  105. package/front_end/core/i18n/locales/zu.json +1032 -888
  106. package/front_end/core/i18n/time-utilities.test.ts +20 -2
  107. package/front_end/core/i18n/time-utilities.ts +125 -86
  108. package/front_end/core/platform/NumberUtilities.test.ts +3 -26
  109. package/front_end/core/platform/NumberUtilities.ts +0 -20
  110. package/front_end/core/root/Runtime.ts +6 -4
  111. package/front_end/core/sdk/CPUThrottlingManager.ts +4 -0
  112. package/front_end/core/sdk/CSSContainerQuery.test.ts +10 -16
  113. package/front_end/core/sdk/CSSContainerQuery.ts +3 -15
  114. package/front_end/core/sdk/CSSMatchedStyles.test.ts +4 -0
  115. package/front_end/core/sdk/CSSMatchedStyles.ts +5 -5
  116. package/front_end/core/sdk/CSSModel.ts +18 -0
  117. package/front_end/core/sdk/CSSPropertyParser.test.ts +16 -1
  118. package/front_end/core/sdk/CSSPropertyParser.ts +2 -2
  119. package/front_end/core/sdk/NetworkManager.test.ts +50 -0
  120. package/front_end/core/sdk/NetworkManager.ts +6 -4
  121. package/front_end/core/sdk/SourceMap.test.ts +5 -5
  122. package/front_end/core/sdk/SourceMapScopeChainEntry.test.ts +7 -2
  123. package/front_end/core/sdk/SourceMapScopeChainEntry.ts +2 -2
  124. package/front_end/core/sdk/SourceMapScopes.test.ts +112 -45
  125. package/front_end/core/sdk/SourceMapScopes.ts +39 -14
  126. package/front_end/core/sdk/SourceMapScopesInfo.test.ts +51 -50
  127. package/front_end/core/sdk/SourceMapScopesInfo.ts +1 -1
  128. package/front_end/core/sdk/sdk-meta.ts +35 -0
  129. package/front_end/devtools_compatibility.js +0 -1
  130. package/front_end/entrypoints/devtools_app/devtools_app.ts +1 -0
  131. package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshot.ts +3 -3
  132. package/front_end/entrypoints/inspector_main/renderingOptions.css +1 -1
  133. package/front_end/entrypoints/main/ExecutionContextSelector.test.ts +13 -3
  134. package/front_end/entrypoints/main/ExecutionContextSelector.ts +23 -1
  135. package/front_end/entrypoints/main/MainImpl.ts +0 -5
  136. package/front_end/generated/ARIAProperties.js +4 -0
  137. package/front_end/generated/Deprecation.ts +0 -15
  138. package/front_end/generated/InspectorBackendCommands.js +9 -7
  139. package/front_end/generated/SupportedCSSProperties.js +14 -41
  140. package/front_end/generated/protocol-mapping.d.ts +15 -1
  141. package/front_end/generated/protocol-proxy-api.d.ts +14 -1
  142. package/front_end/generated/protocol.ts +27 -2
  143. package/front_end/models/bindings/IgnoreListManager.ts +25 -2
  144. package/front_end/models/crux-manager/CrUXManager.test.ts +25 -6
  145. package/front_end/models/crux-manager/CrUXManager.ts +23 -4
  146. package/front_end/models/extensions/ExtensionAPI.ts +9 -1
  147. package/front_end/models/extensions/ExtensionServer.test.ts +14 -0
  148. package/front_end/models/extensions/ExtensionServer.ts +28 -15
  149. package/front_end/models/heap_snapshot_model/HeapSnapshotModel.ts +2 -0
  150. package/front_end/models/issues_manager/CookieIssue.ts +79 -2
  151. package/front_end/models/issues_manager/IssuesManager.ts +1 -1
  152. package/front_end/models/issues_manager/descriptions/cookieExcludePortMismatch.md +8 -0
  153. package/front_end/models/issues_manager/descriptions/cookieExcludeSchemeMismatch.md +7 -0
  154. package/front_end/models/javascript_metadata/NativeFunctions.js +22 -25
  155. package/front_end/models/live-metrics/web-vitals-injected/{rollup.config.js → rollup.config.mjs} +1 -1
  156. package/front_end/models/persistence/EditFileSystemView.ts +20 -10
  157. package/front_end/models/persistence/WorkspaceSettingsTab.ts +50 -54
  158. package/front_end/models/persistence/editFileSystemView.css +38 -15
  159. package/front_end/models/persistence/workspaceSettingsTab.css +21 -87
  160. package/front_end/models/timeline_model/timeline_model.ts +0 -6
  161. package/front_end/models/trace/Processor.test.ts +18 -17
  162. package/front_end/models/trace/Processor.ts +10 -14
  163. package/front_end/models/trace/README.md +0 -1
  164. package/front_end/models/trace/extras/Metadata.test.ts +35 -2
  165. package/front_end/models/trace/extras/Metadata.ts +24 -5
  166. package/front_end/models/{timeline_model → trace/extras}/TimelineJSProfile.ts +19 -29
  167. package/front_end/models/{timeline_model/TimelineModelFilter.test.ts → trace/extras/TraceFilter.test.ts} +15 -17
  168. package/front_end/models/trace/extras/TraceFilter.ts +62 -0
  169. package/front_end/models/{timeline_model/TimelineProfileTree.test.ts → trace/extras/TraceTree.test.ts} +44 -43
  170. package/front_end/models/{timeline_model/TimelineProfileTree.ts → trace/extras/TraceTree.ts} +86 -70
  171. package/front_end/models/trace/extras/URLForEntry.ts +6 -5
  172. package/front_end/models/trace/extras/extras.ts +3 -0
  173. package/front_end/models/trace/handlers/AnimationHandler.ts +0 -8
  174. package/front_end/models/trace/handlers/ExtensionTraceDataHandler.ts +1 -11
  175. package/front_end/models/trace/handlers/FramesHandler.test.ts +1 -6
  176. package/front_end/models/trace/handlers/FramesHandler.ts +1 -14
  177. package/front_end/models/trace/handlers/GPUHandler.test.ts +0 -2
  178. package/front_end/models/trace/handlers/GPUHandler.ts +1 -25
  179. package/front_end/models/trace/handlers/ImagePaintingHandler.ts +15 -0
  180. package/front_end/models/trace/handlers/InitiatorsHandler.test.ts +0 -1
  181. package/front_end/models/trace/handlers/InitiatorsHandler.ts +0 -20
  182. package/front_end/models/trace/handlers/InvalidationsHandler.test.ts +0 -1
  183. package/front_end/models/trace/handlers/InvalidationsHandler.ts +0 -18
  184. package/front_end/models/trace/handlers/LargestImagePaintHandler.test.ts +2 -2
  185. package/front_end/models/trace/handlers/LargestImagePaintHandler.ts +63 -3
  186. package/front_end/models/trace/handlers/LargestTextPaintHandler.ts +3 -0
  187. package/front_end/models/trace/handlers/LayerTreeHandler.test.ts +0 -2
  188. package/front_end/models/trace/handlers/LayerTreeHandler.ts +1 -18
  189. package/front_end/models/trace/handlers/LayoutShiftsHandler.test.ts +0 -3
  190. package/front_end/models/trace/handlers/LayoutShiftsHandler.ts +1 -20
  191. package/front_end/models/trace/handlers/MemoryHandler.test.ts +0 -1
  192. package/front_end/models/trace/handlers/MemoryHandler.ts +3 -0
  193. package/front_end/models/trace/handlers/MetaHandler.test.ts +1 -32
  194. package/front_end/models/trace/handlers/MetaHandler.ts +2 -30
  195. package/front_end/models/trace/handlers/NetworkRequestsHandler.test.ts +0 -26
  196. package/front_end/models/trace/handlers/NetworkRequestsHandler.ts +4 -23
  197. package/front_end/models/trace/handlers/PageFramesHandler.ts +3 -0
  198. package/front_end/models/trace/handlers/RendererHandler.test.ts +0 -4
  199. package/front_end/models/trace/handlers/RendererHandler.ts +1 -24
  200. package/front_end/models/trace/handlers/SamplesHandler.test.ts +0 -5
  201. package/front_end/models/trace/handlers/SamplesHandler.ts +0 -26
  202. package/front_end/models/trace/handlers/ScreenshotsHandler.test.ts +0 -1
  203. package/front_end/models/trace/handlers/SelectorStatsHandler.ts +3 -0
  204. package/front_end/models/trace/handlers/ServerTimingsHandler.ts +1 -16
  205. package/front_end/models/trace/handlers/Threads.test.ts +1 -2
  206. package/front_end/models/trace/handlers/UserInteractionsHandler.test.ts +4 -27
  207. package/front_end/models/trace/handlers/UserInteractionsHandler.ts +16 -25
  208. package/front_end/models/trace/handlers/UserTimingsHandler.ts +0 -17
  209. package/front_end/models/trace/handlers/WorkersHandler.test.ts +0 -1
  210. package/front_end/models/trace/handlers/WorkersHandler.ts +0 -23
  211. package/front_end/models/trace/handlers/types.ts +1 -8
  212. package/front_end/models/trace/helpers/Timing.ts +8 -0
  213. package/front_end/models/trace/insights/{CumulativeLayoutShift.test.ts → CLSCulprits.test.ts} +21 -21
  214. package/front_end/models/trace/insights/{CumulativeLayoutShift.ts → CLSCulprits.ts} +32 -5
  215. package/front_end/models/trace/insights/Common.ts +5 -55
  216. package/front_end/models/trace/insights/DocumentLatency.test.ts +2 -2
  217. package/front_end/models/trace/insights/DocumentLatency.ts +39 -6
  218. package/front_end/models/trace/insights/FontDisplay.ts +31 -5
  219. package/front_end/models/trace/insights/ImageDelivery.test.ts +98 -0
  220. package/front_end/models/trace/insights/ImageDelivery.ts +183 -0
  221. package/front_end/models/trace/insights/InteractionToNextPaint.test.ts +1 -1
  222. package/front_end/models/trace/insights/InteractionToNextPaint.ts +32 -6
  223. package/front_end/models/trace/insights/LCPDiscovery.test.ts +58 -0
  224. package/front_end/models/trace/insights/LCPDiscovery.ts +122 -0
  225. package/front_end/models/trace/insights/{LargestContentfulPaint.test.ts → LCPPhases.test.ts} +6 -28
  226. package/front_end/models/trace/insights/{LargestContentfulPaint.ts → LCPPhases.ts} +59 -38
  227. package/front_end/models/trace/insights/{InsightRunners.ts → Models.ts} +5 -3
  228. package/front_end/models/trace/insights/RenderBlocking.test.ts +1 -1
  229. package/front_end/models/trace/insights/RenderBlocking.ts +41 -28
  230. package/front_end/models/trace/insights/SlowCSSSelector.ts +33 -5
  231. package/front_end/models/trace/insights/{ThirdPartyWeb.test.ts → ThirdParties.test.ts} +3 -3
  232. package/front_end/models/trace/insights/{ThirdPartyWeb.ts → ThirdParties.ts} +32 -5
  233. package/front_end/models/trace/insights/Viewport.test.ts +1 -1
  234. package/front_end/models/trace/insights/Viewport.ts +40 -9
  235. package/front_end/models/trace/insights/insights.ts +1 -1
  236. package/front_end/models/trace/insights/types.ts +22 -9
  237. package/front_end/models/trace/types/File.ts +7 -0
  238. package/front_end/models/trace/types/TraceEvents.ts +60 -24
  239. package/front_end/panels/animation/AnimationTimeline.ts +2 -4
  240. package/front_end/panels/application/ApplicationPanelSidebar.test.ts +0 -5
  241. package/front_end/panels/application/ApplicationPanelSidebar.ts +15 -21
  242. package/front_end/panels/application/IndexedDBViews.ts +4 -1
  243. package/front_end/panels/application/ServiceWorkerCacheViews.ts +4 -1
  244. package/front_end/panels/application/SharedStorageItemsView.test.ts +3 -3
  245. package/front_end/panels/application/SharedStorageItemsView.ts +5 -3
  246. package/front_end/panels/application/StorageView.test.ts +1 -1
  247. package/front_end/panels/application/StorageView.ts +3 -3
  248. package/front_end/panels/application/components/StorageMetadataView.ts +1 -2
  249. package/front_end/panels/application/resourcesSidebar.css +1 -1
  250. package/front_end/panels/browser_debugger/CategorizedBreakpointsSidebarPane.ts +1 -1
  251. package/front_end/panels/browser_debugger/DOMBreakpointsSidebarPane.ts +1 -1
  252. package/front_end/panels/browser_debugger/XHRBreakpointsSidebarPane.ts +35 -32
  253. package/front_end/panels/browser_debugger/categorizedBreakpointsSidebarPane.css +1 -1
  254. package/front_end/panels/browser_debugger/xhrBreakpointsSidebarPane.css +1 -1
  255. package/front_end/panels/console/ConsoleViewMessage.test.ts +25 -0
  256. package/front_end/panels/console/ConsoleViewMessage.ts +23 -0
  257. package/front_end/panels/coverage/CoverageListView.ts +1 -1
  258. package/front_end/panels/coverage/CoverageView.ts +3 -3
  259. package/front_end/panels/developer_resources/DeveloperResourcesListView.ts +1 -1
  260. package/front_end/panels/elements/ClassesPaneWidget.ts +1 -1
  261. package/front_end/panels/elements/ComputedStyleModel.ts +9 -2
  262. package/front_end/panels/elements/ComputedStyleWidget.test.ts +72 -0
  263. package/front_end/panels/elements/ComputedStyleWidget.ts +12 -0
  264. package/front_end/panels/elements/ElementStatePaneWidget.test.ts +85 -30
  265. package/front_end/panels/elements/ElementStatePaneWidget.ts +49 -26
  266. package/front_end/panels/elements/ElementsSidebarPane.ts +3 -3
  267. package/front_end/panels/elements/ElementsTreeElement.ts +25 -11
  268. package/front_end/panels/elements/LayersWidget.ts +1 -1
  269. package/front_end/panels/elements/MetricsSidebarPane.ts +12 -7
  270. package/front_end/panels/elements/PropertyMatchers.test.ts +7 -0
  271. package/front_end/panels/elements/PropertyMatchers.ts +6 -0
  272. package/front_end/panels/elements/StylePropertiesSection.ts +15 -6
  273. package/front_end/panels/elements/StylePropertyTreeElement.test.ts +3 -1
  274. package/front_end/panels/elements/StylePropertyTreeElement.ts +8 -3
  275. package/front_end/panels/elements/classesPaneWidget.css +1 -1
  276. package/front_end/panels/elements/stylePropertiesTreeOutline.css +2 -2
  277. package/front_end/panels/emulation/DeviceModeView.ts +1 -1
  278. package/front_end/panels/emulation/DeviceModeWrapper.ts +1 -1
  279. package/front_end/panels/emulation/InspectedPagePlaceholder.ts +1 -1
  280. package/front_end/panels/explain/components/ConsoleInsight.ts +8 -18
  281. package/front_end/panels/freestyler/AiAgent.test.ts +376 -50
  282. package/front_end/panels/freestyler/AiAgent.ts +251 -144
  283. package/front_end/panels/freestyler/AiHistoryStorage.test.ts +159 -0
  284. package/front_end/panels/freestyler/AiHistoryStorage.ts +73 -0
  285. package/front_end/panels/freestyler/DrJonesFileAgent.test.ts +113 -38
  286. package/front_end/panels/freestyler/DrJonesFileAgent.ts +56 -34
  287. package/front_end/panels/freestyler/DrJonesNetworkAgent.test.ts +29 -20
  288. package/front_end/panels/freestyler/DrJonesNetworkAgent.ts +39 -18
  289. package/front_end/panels/freestyler/DrJonesPerformanceAgent.test.ts +44 -42
  290. package/front_end/panels/freestyler/DrJonesPerformanceAgent.ts +51 -22
  291. package/front_end/panels/freestyler/FreestylerAgent.test.ts +210 -28
  292. package/front_end/panels/freestyler/FreestylerAgent.ts +65 -26
  293. package/front_end/panels/freestyler/FreestylerPanel.test.ts +610 -39
  294. package/front_end/panels/freestyler/FreestylerPanel.ts +414 -255
  295. package/front_end/panels/freestyler/components/FreestylerChatUi.test.ts +126 -34
  296. package/front_end/panels/freestyler/components/FreestylerChatUi.ts +431 -280
  297. package/front_end/panels/freestyler/components/UserActionRow.ts +157 -47
  298. package/front_end/panels/freestyler/components/freestylerChatUi.css +90 -35
  299. package/front_end/panels/freestyler/components/userActionRow.css +41 -67
  300. package/front_end/panels/freestyler/freestyler-meta.ts +3 -11
  301. package/front_end/panels/freestyler/freestyler.ts +1 -0
  302. package/front_end/panels/issues/IssueAggregator.test.ts +50 -0
  303. package/front_end/panels/issues/IssueAggregator.ts +10 -10
  304. package/front_end/panels/issues/components/HideIssuesMenu.ts +2 -11
  305. package/front_end/panels/issues/issuesTree.css +1 -1
  306. package/front_end/panels/layer_viewer/LayerDetailsView.ts +2 -3
  307. package/front_end/panels/layer_viewer/Layers3DView.ts +1 -1
  308. package/front_end/panels/layer_viewer/PaintProfilerView.ts +6 -6
  309. package/front_end/panels/layers/LayersPanel.ts +1 -1
  310. package/front_end/panels/lighthouse/LighthouseReportRenderer.ts +46 -0
  311. package/front_end/panels/lighthouse/lighthouseStartView.css +1 -1
  312. package/front_end/panels/media/TickingFlameChart.ts +1 -1
  313. package/front_end/panels/mobile_throttling/ThrottlingSettingsTab.ts +26 -17
  314. package/front_end/panels/mobile_throttling/throttlingSettingsTab.css +25 -19
  315. package/front_end/panels/network/BinaryResourceView.ts +6 -7
  316. package/front_end/panels/network/BlockedURLsPane.ts +1 -1
  317. package/front_end/panels/network/EventSourceMessagesView.ts +1 -1
  318. package/front_end/panels/network/NetworkDataGridNode.ts +4 -3
  319. package/front_end/panels/network/NetworkLogView.test.ts +1 -1
  320. package/front_end/panels/network/NetworkLogView.ts +7 -8
  321. package/front_end/panels/network/NetworkPanel.ts +40 -32
  322. package/front_end/panels/network/NetworkWaterfallColumn.ts +1 -1
  323. package/front_end/panels/network/RequestTimingView.test.ts +35 -1
  324. package/front_end/panels/network/RequestTimingView.ts +96 -0
  325. package/front_end/panels/network/ResourceWebSocketFrameView.ts +2 -2
  326. package/front_end/panels/network/networkTimingTable.css +2 -1
  327. package/front_end/panels/performance_monitor/PerformanceMonitor.ts +1 -1
  328. package/front_end/panels/profiler/HeapProfileView.ts +10 -10
  329. package/front_end/panels/profiler/HeapSnapshotView.ts +2 -2
  330. package/front_end/panels/profiler/HeapTimelineOverview.ts +13 -13
  331. package/front_end/panels/profiler/IsolateSelector.ts +4 -5
  332. package/front_end/panels/profiler/LiveHeapProfileView.ts +3 -1
  333. package/front_end/panels/profiler/ProfileFlameChartDataProvider.ts +4 -4
  334. package/front_end/panels/profiler/ProfileSidebarTreeElement.ts +7 -6
  335. package/front_end/panels/profiler/ProfileView.ts +3 -3
  336. package/front_end/panels/profiler/profileLauncherView.css +1 -1
  337. package/front_end/panels/profiler/profilesSidebarTree.css +1 -1
  338. package/front_end/panels/recorder/components/RecordingView.ts +2 -2
  339. package/front_end/panels/recorder/injected/{rollup.config.js → rollup.config.mjs} +1 -1
  340. package/front_end/panels/recorder/recorderController.css +1 -5
  341. package/front_end/panels/security/CookieControlsTreeElement.ts +18 -0
  342. package/front_end/panels/security/CookieControlsView.test.ts +29 -0
  343. package/front_end/panels/security/CookieControlsView.ts +265 -0
  344. package/front_end/panels/security/CookieReportTreeElement.ts +1 -9
  345. package/front_end/panels/security/CookieReportView.test.ts +157 -0
  346. package/front_end/panels/security/CookieReportView.ts +316 -0
  347. package/front_end/panels/security/SecurityPanel.ts +12 -4
  348. package/front_end/panels/security/SecurityPanelSidebar.ts +6 -1
  349. package/front_end/panels/security/cookieControlsView.css +101 -0
  350. package/front_end/panels/security/cookieReportView.css +69 -0
  351. package/front_end/panels/security/security.ts +4 -0
  352. package/front_end/panels/security/sidebar.css +2 -3
  353. package/front_end/panels/sensors/LocationsSettingsTab.ts +26 -11
  354. package/front_end/panels/sensors/locationsSettingsTab.css +18 -18
  355. package/front_end/panels/settings/AISettingsTab.ts +6 -15
  356. package/front_end/panels/settings/KeybindsSettingsTab.ts +4 -3
  357. package/front_end/panels/settings/SettingsScreen.ts +64 -55
  358. package/front_end/panels/settings/aiSettingsTab.css +3 -14
  359. package/front_end/panels/settings/components/SyncSection.ts +1 -2
  360. package/front_end/panels/settings/components/syncSection.css +0 -10
  361. package/front_end/panels/settings/frameworkIgnoreListSettingsTab.css +4 -2
  362. package/front_end/panels/settings/keybindsSettingsTab.css +12 -10
  363. package/front_end/panels/settings/settings-meta.ts +3 -1
  364. package/front_end/panels/settings/settingsScreen.css +37 -125
  365. package/front_end/panels/sources/CallStackSidebarPane.ts +2 -2
  366. package/front_end/panels/sources/DebuggerPlugin.ts +9 -4
  367. package/front_end/panels/sources/NavigatorView.ts +12 -13
  368. package/front_end/panels/sources/navigatorTree.css +1 -1
  369. package/front_end/panels/sources/sourcesPanel.css +2 -2
  370. package/front_end/panels/timeline/ActiveFilters.ts +3 -4
  371. package/front_end/panels/timeline/AnimationsTrackAppender.ts +2 -9
  372. package/front_end/panels/timeline/AppenderUtils.ts +1 -1
  373. package/front_end/panels/timeline/CompatibilityTracksAppender.ts +38 -41
  374. package/front_end/panels/timeline/CountersGraph.ts +2 -4
  375. package/front_end/panels/timeline/EventsTimelineTreeView.ts +7 -8
  376. package/front_end/panels/timeline/ExtensionTrackAppender.ts +4 -13
  377. package/front_end/panels/timeline/InteractionsTrackAppender.ts +3 -4
  378. package/front_end/panels/timeline/LayoutShiftsTrackAppender.ts +6 -12
  379. package/front_end/panels/timeline/README.md +2 -1
  380. package/front_end/panels/timeline/ServerTimingsTrackAppender.ts +1 -10
  381. package/front_end/panels/timeline/ThreadAppender.ts +9 -12
  382. package/front_end/panels/timeline/TimelineController.ts +14 -4
  383. package/front_end/panels/timeline/TimelineDetailsView.test.ts +3 -2
  384. package/front_end/panels/timeline/TimelineDetailsView.ts +18 -17
  385. package/front_end/panels/timeline/TimelineEventOverview.ts +3 -4
  386. package/front_end/panels/timeline/TimelineFilters.ts +3 -4
  387. package/front_end/panels/timeline/TimelineFlameChartDataProvider.test.ts +1 -1
  388. package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +58 -46
  389. package/front_end/panels/timeline/TimelineFlameChartNetworkDataProvider.ts +2 -3
  390. package/front_end/panels/timeline/TimelineFlameChartView.ts +54 -26
  391. package/front_end/panels/timeline/TimelineHistoryManager.test.ts +20 -15
  392. package/front_end/panels/timeline/TimelineHistoryManager.ts +46 -58
  393. package/front_end/panels/timeline/TimelineLayersView.ts +1 -1
  394. package/front_end/panels/timeline/TimelineLoader.test.ts +1 -2
  395. package/front_end/panels/timeline/TimelineLoader.ts +19 -4
  396. package/front_end/panels/timeline/TimelineMiniMap.ts +12 -2
  397. package/front_end/panels/timeline/TimelinePaintProfilerView.ts +1 -1
  398. package/front_end/panels/timeline/TimelinePanel.ts +161 -32
  399. package/front_end/panels/timeline/TimelineTreeView.test.ts +12 -13
  400. package/front_end/panels/timeline/TimelineTreeView.ts +98 -54
  401. package/front_end/panels/timeline/TimelineUIUtils.test.ts +2 -2
  402. package/front_end/panels/timeline/TimelineUIUtils.ts +56 -14
  403. package/front_end/panels/timeline/TimingsTrackAppender.ts +6 -13
  404. package/front_end/panels/timeline/components/FieldSettingsDialog.test.ts +1 -0
  405. package/front_end/panels/timeline/components/FieldSettingsDialog.ts +6 -1
  406. package/front_end/panels/timeline/components/LayoutShiftDetails.ts +6 -7
  407. package/front_end/panels/timeline/components/LiveMetricsView.test.ts +15 -3
  408. package/front_end/panels/timeline/components/LiveMetricsView.ts +27 -44
  409. package/front_end/panels/timeline/components/MetricCard.test.ts +1 -1
  410. package/front_end/panels/timeline/components/MetricCard.ts +46 -0
  411. package/front_end/panels/timeline/components/NetworkRequestDetails.ts +3 -4
  412. package/front_end/panels/timeline/components/Sidebar.ts +1 -4
  413. package/front_end/panels/timeline/components/SidebarAnnotationsTab.test.ts +1 -1
  414. package/front_end/panels/timeline/components/SidebarInsightsTab.ts +1 -1
  415. package/front_end/panels/timeline/components/SidebarSingleInsightSet.test.ts +23 -35
  416. package/front_end/panels/timeline/components/SidebarSingleInsightSet.ts +53 -41
  417. package/front_end/panels/timeline/components/TimelineSummary.test.ts +75 -0
  418. package/front_end/panels/timeline/components/TimelineSummary.ts +101 -0
  419. package/front_end/panels/timeline/components/Utils.test.ts +49 -0
  420. package/front_end/panels/timeline/components/Utils.ts +2 -2
  421. package/front_end/panels/timeline/components/components.ts +2 -0
  422. package/front_end/panels/timeline/components/insights/BaseInsightComponent.test.ts +84 -0
  423. package/front_end/panels/timeline/components/insights/BaseInsightComponent.ts +291 -0
  424. package/front_end/panels/timeline/components/insights/CLSCulprits.ts +24 -62
  425. package/front_end/panels/timeline/components/insights/DocumentLatency.ts +43 -72
  426. package/front_end/panels/timeline/components/insights/EventRef.ts +70 -2
  427. package/front_end/panels/timeline/components/insights/FontDisplay.ts +37 -61
  428. package/front_end/panels/timeline/components/insights/Helpers.ts +5 -212
  429. package/front_end/panels/timeline/components/insights/ImageDelivery.ts +142 -0
  430. package/front_end/panels/timeline/components/insights/InteractionToNextPaint.ts +34 -69
  431. package/front_end/panels/timeline/components/insights/LCPDiscovery.ts +52 -103
  432. package/front_end/panels/timeline/components/insights/LCPPhases.ts +31 -92
  433. package/front_end/panels/timeline/components/insights/RenderBlocking.ts +38 -64
  434. package/front_end/panels/timeline/components/insights/SidebarInsight.ts +3 -198
  435. package/front_end/panels/timeline/components/insights/SlowCSSSelector.ts +59 -95
  436. package/front_end/panels/timeline/components/insights/Table.ts +6 -3
  437. package/front_end/panels/timeline/components/insights/ThirdParties.ts +51 -78
  438. package/front_end/panels/timeline/components/insights/Viewport.ts +27 -49
  439. package/front_end/panels/timeline/components/insights/{sidebarInsight.css → baseInsightComponent.css} +9 -9
  440. package/front_end/panels/timeline/components/insights/insights.ts +4 -0
  441. package/front_end/panels/timeline/components/insights/types.ts +0 -7
  442. package/front_end/panels/timeline/components/liveMetricsView.css +10 -18
  443. package/front_end/panels/timeline/components/metricCard.css +11 -0
  444. package/front_end/panels/timeline/components/sidebarInsightsTab.css +1 -1
  445. package/front_end/panels/timeline/components/timelineSummary.css +67 -0
  446. package/front_end/panels/timeline/docs/flame_chart_migration.md +1 -1
  447. package/front_end/panels/timeline/fixtures/traces/README.md +4 -0
  448. package/front_end/panels/timeline/fixtures/traces/image-delivery.json.gz +0 -0
  449. package/front_end/panels/timeline/overlays/OverlaysImpl.test.ts +5 -5
  450. package/front_end/panels/timeline/overlays/OverlaysImpl.ts +35 -12
  451. package/front_end/panels/timeline/timeline-meta.ts +1 -1
  452. package/front_end/panels/timeline/timelineFlameChartView.css +1 -1
  453. package/front_end/panels/timeline/timelineFlamechartPopover.css +14 -4
  454. package/front_end/panels/timeline/timelineHistoryManager.css +7 -3
  455. package/front_end/panels/timeline/timelinePanel.css +0 -1
  456. package/front_end/panels/timeline/track_appenders/CompatibilityTracksAppender.test.ts +5 -5
  457. package/front_end/panels/timeline/track_appenders/ExtensionTrackAppender.test.ts +5 -6
  458. package/front_end/panels/timeline/track_appenders/LayoutShiftsTrackAppender.test.ts +11 -2
  459. package/front_end/panels/timeline/track_appenders/ServerTimingsTrackAppender.test.ts +0 -9
  460. package/front_end/panels/timeline/track_appenders/ThreadAppender.test.ts +37 -44
  461. package/front_end/panels/timeline/track_appenders/TimingsTrackAppender.test.ts +44 -30
  462. package/front_end/panels/timeline/utils/AICallTree.test.ts +105 -0
  463. package/front_end/panels/timeline/utils/AICallTree.ts +25 -24
  464. package/front_end/panels/timeline/utils/EntryName.ts +1 -2
  465. package/front_end/panels/timeline/utils/Helpers.ts +19 -0
  466. package/front_end/panels/timeline/utils/IgnoreList.test.ts +52 -0
  467. package/front_end/panels/timeline/utils/IgnoreList.ts +68 -7
  468. package/front_end/panels/timeline/utils/SourceMapsResolver.ts +2 -0
  469. package/front_end/panels/webauthn/webauthnPane.css +1 -1
  470. package/front_end/panels/whats_new/ReleaseNote.test.ts +90 -0
  471. package/front_end/panels/whats_new/ReleaseNoteText.ts +52 -0
  472. package/front_end/panels/whats_new/ReleaseNoteView.ts +157 -0
  473. package/front_end/panels/whats_new/WhatsNewImpl.ts +102 -0
  474. package/front_end/panels/whats_new/releaseNoteView.css +121 -0
  475. package/front_end/panels/whats_new/resources/WNDT.md +6 -0
  476. package/front_end/panels/whats_new/resources/whatsnew.avif +0 -0
  477. package/front_end/panels/whats_new/whats_new-meta.ts +142 -0
  478. package/front_end/panels/whats_new/whats_new.ts +13 -0
  479. package/front_end/services/puppeteer/PuppeteerConnection.ts +4 -3
  480. package/front_end/testing/EnvironmentHelpers.ts +6 -20
  481. package/front_end/testing/InsightHelpers.ts +4 -4
  482. package/front_end/testing/SourceMapEncoder.ts +27 -11
  483. package/front_end/testing/TraceHelpers.ts +3 -2
  484. package/front_end/testing/TraceLoader.ts +6 -2
  485. package/front_end/third_party/lighthouse/README.chromium +2 -2
  486. package/front_end/third_party/lighthouse/lighthouse-dt-bundle.js +1380 -1369
  487. package/front_end/third_party/lighthouse/locales/ar-XB.json +88 -85
  488. package/front_end/third_party/lighthouse/locales/ar.json +98 -95
  489. package/front_end/third_party/lighthouse/locales/bg.json +88 -85
  490. package/front_end/third_party/lighthouse/locales/ca.json +91 -88
  491. package/front_end/third_party/lighthouse/locales/cs.json +91 -88
  492. package/front_end/third_party/lighthouse/locales/da.json +94 -91
  493. package/front_end/third_party/lighthouse/locales/de.json +92 -89
  494. package/front_end/third_party/lighthouse/locales/el.json +92 -89
  495. package/front_end/third_party/lighthouse/locales/en-GB.json +89 -86
  496. package/front_end/third_party/lighthouse/locales/en-US.json +23 -20
  497. package/front_end/third_party/lighthouse/locales/en-XA.json +88 -85
  498. package/front_end/third_party/lighthouse/locales/en-XL.json +23 -20
  499. package/front_end/third_party/lighthouse/locales/es-419.json +92 -89
  500. package/front_end/third_party/lighthouse/locales/es.json +91 -88
  501. package/front_end/third_party/lighthouse/locales/fi.json +92 -89
  502. package/front_end/third_party/lighthouse/locales/fil.json +93 -90
  503. package/front_end/third_party/lighthouse/locales/fr.json +94 -91
  504. package/front_end/third_party/lighthouse/locales/he.json +97 -94
  505. package/front_end/third_party/lighthouse/locales/hi.json +92 -89
  506. package/front_end/third_party/lighthouse/locales/hr.json +90 -87
  507. package/front_end/third_party/lighthouse/locales/hu.json +90 -87
  508. package/front_end/third_party/lighthouse/locales/id.json +91 -88
  509. package/front_end/third_party/lighthouse/locales/it.json +90 -87
  510. package/front_end/third_party/lighthouse/locales/ja.json +90 -87
  511. package/front_end/third_party/lighthouse/locales/ko.json +90 -87
  512. package/front_end/third_party/lighthouse/locales/lt.json +90 -87
  513. package/front_end/third_party/lighthouse/locales/lv.json +91 -88
  514. package/front_end/third_party/lighthouse/locales/nl.json +90 -87
  515. package/front_end/third_party/lighthouse/locales/no.json +92 -89
  516. package/front_end/third_party/lighthouse/locales/pl.json +90 -87
  517. package/front_end/third_party/lighthouse/locales/pt-PT.json +111 -108
  518. package/front_end/third_party/lighthouse/locales/pt.json +97 -94
  519. package/front_end/third_party/lighthouse/locales/ro.json +94 -91
  520. package/front_end/third_party/lighthouse/locales/ru.json +93 -90
  521. package/front_end/third_party/lighthouse/locales/sk.json +93 -90
  522. package/front_end/third_party/lighthouse/locales/sl.json +91 -88
  523. package/front_end/third_party/lighthouse/locales/sr-Latn.json +91 -88
  524. package/front_end/third_party/lighthouse/locales/sr.json +91 -88
  525. package/front_end/third_party/lighthouse/locales/sv.json +92 -89
  526. package/front_end/third_party/lighthouse/locales/ta.json +101 -98
  527. package/front_end/third_party/lighthouse/locales/te.json +92 -89
  528. package/front_end/third_party/lighthouse/locales/th.json +95 -92
  529. package/front_end/third_party/lighthouse/locales/tr.json +91 -88
  530. package/front_end/third_party/lighthouse/locales/uk.json +93 -90
  531. package/front_end/third_party/lighthouse/locales/vi.json +95 -92
  532. package/front_end/third_party/lighthouse/locales/zh-HK.json +92 -89
  533. package/front_end/third_party/lighthouse/locales/zh-TW.json +98 -95
  534. package/front_end/third_party/lighthouse/locales/zh.json +96 -93
  535. package/front_end/third_party/puppeteer/README.chromium +2 -2
  536. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.d.ts +10 -3
  537. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.d.ts.map +1 -1
  538. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.js.map +1 -1
  539. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/ElementHandle.d.ts +14 -3
  540. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/ElementHandle.d.ts.map +1 -1
  541. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/ElementHandle.js +16 -2
  542. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/ElementHandle.js.map +1 -1
  543. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Frame.d.ts.map +1 -1
  544. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Frame.js +3 -1
  545. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Frame.js.map +1 -1
  546. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/HTTPRequest.d.ts +1 -0
  547. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/HTTPRequest.d.ts.map +1 -1
  548. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/HTTPRequest.js +1 -0
  549. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/HTTPRequest.js.map +1 -1
  550. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Input.d.ts +34 -5
  551. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Input.d.ts.map +1 -1
  552. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Input.js +51 -2
  553. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Input.js.map +1 -1
  554. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts +4 -0
  555. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts.map +1 -1
  556. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.js.map +1 -1
  557. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/ElementHandle.d.ts.map +1 -1
  558. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/ElementHandle.js +10 -8
  559. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/ElementHandle.js.map +1 -1
  560. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.d.ts.map +1 -1
  561. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.js +1 -1
  562. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.js.map +1 -1
  563. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.d.ts +14 -4
  564. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.d.ts.map +1 -1
  565. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.js +57 -23
  566. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.js.map +1 -1
  567. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts +1 -0
  568. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts.map +1 -1
  569. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js +3 -0
  570. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js.map +1 -1
  571. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.d.ts +3 -2
  572. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.d.ts.map +1 -1
  573. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.js +10 -4
  574. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.js.map +1 -1
  575. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserConnector.d.ts.map +1 -1
  576. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserConnector.js +2 -2
  577. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserConnector.js.map +1 -1
  578. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserContext.d.ts +2 -0
  579. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserContext.d.ts.map +1 -1
  580. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserContext.js +7 -0
  581. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserContext.js.map +1 -1
  582. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ElementHandle.d.ts +1 -1
  583. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ElementHandle.d.ts.map +1 -1
  584. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ElementHandle.js +13 -10
  585. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ElementHandle.js.map +1 -1
  586. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/HTTPRequest.d.ts +1 -0
  587. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/HTTPRequest.d.ts.map +1 -1
  588. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/HTTPRequest.js +3 -0
  589. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/HTTPRequest.js.map +1 -1
  590. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/HTTPResponse.d.ts +1 -2
  591. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/HTTPResponse.d.ts.map +1 -1
  592. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/HTTPResponse.js +4 -4
  593. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/HTTPResponse.js.map +1 -1
  594. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Input.d.ts +15 -4
  595. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Input.d.ts.map +1 -1
  596. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Input.js +55 -26
  597. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Input.js.map +1 -1
  598. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/NetworkManager.d.ts.map +1 -1
  599. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/NetworkManager.js +24 -12
  600. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/NetworkManager.js.map +1 -1
  601. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.d.ts +1 -0
  602. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.d.ts.map +1 -1
  603. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js +3 -0
  604. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js.map +1 -1
  605. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.d.ts +0 -8
  606. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.d.ts.map +1 -1
  607. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.js +2 -11
  608. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.js.map +1 -1
  609. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConnectOptions.d.ts +5 -0
  610. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConnectOptions.d.ts.map +1 -1
  611. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.d.ts +2 -1
  612. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.d.ts.map +1 -1
  613. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.js +5 -2
  614. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.js.map +1 -1
  615. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DownloadBehavior.d.ts +30 -0
  616. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DownloadBehavior.d.ts.map +1 -0
  617. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DownloadBehavior.js +8 -0
  618. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DownloadBehavior.js.map +1 -0
  619. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.d.ts +7 -0
  620. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.d.ts.map +1 -1
  621. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.js +9 -1
  622. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.js.map +1 -1
  623. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WaitTask.d.ts.map +1 -1
  624. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WaitTask.js +5 -3
  625. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WaitTask.js.map +1 -1
  626. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/common.d.ts +1 -0
  627. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/common.d.ts.map +1 -1
  628. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.d.ts +1 -1
  629. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.d.ts.map +1 -1
  630. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.js +0 -3
  631. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.js.map +1 -1
  632. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/injected.d.ts +1 -1
  633. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/injected.js +1 -1
  634. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.d.ts +1 -1
  635. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.js +1 -1
  636. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/injected.d.ts +1 -1
  637. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.d.ts.map +1 -1
  638. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.js +2 -2
  639. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.js.map +1 -1
  640. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.d.ts +3 -3
  641. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js +3 -3
  642. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/Mutex.d.ts +2 -2
  643. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/incremental-id-generator.d.ts +14 -0
  644. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/incremental-id-generator.d.ts.map +1 -0
  645. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/incremental-id-generator.js +18 -0
  646. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/incremental-id-generator.js.map +1 -0
  647. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.d.ts +100 -10
  648. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js +291 -143
  649. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts +10 -3
  650. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts.map +1 -1
  651. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.js.map +1 -1
  652. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/ElementHandle.d.ts +14 -3
  653. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/ElementHandle.d.ts.map +1 -1
  654. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/ElementHandle.js +16 -2
  655. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/ElementHandle.js.map +1 -1
  656. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Frame.d.ts.map +1 -1
  657. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Frame.js +3 -1
  658. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Frame.js.map +1 -1
  659. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/HTTPRequest.d.ts +1 -0
  660. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/HTTPRequest.d.ts.map +1 -1
  661. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/HTTPRequest.js +1 -0
  662. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/HTTPRequest.js.map +1 -1
  663. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.d.ts +34 -5
  664. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.d.ts.map +1 -1
  665. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.js +51 -2
  666. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.js.map +1 -1
  667. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts +4 -0
  668. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts.map +1 -1
  669. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.js.map +1 -1
  670. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/ElementHandle.d.ts.map +1 -1
  671. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/ElementHandle.js +10 -8
  672. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/ElementHandle.js.map +1 -1
  673. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.d.ts.map +1 -1
  674. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.js +1 -1
  675. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.js.map +1 -1
  676. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.d.ts +14 -4
  677. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.d.ts.map +1 -1
  678. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.js +57 -23
  679. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.js.map +1 -1
  680. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts +1 -0
  681. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts.map +1 -1
  682. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js +3 -0
  683. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js.map +1 -1
  684. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.d.ts +3 -2
  685. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.d.ts.map +1 -1
  686. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.js +10 -4
  687. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.js.map +1 -1
  688. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserConnector.d.ts.map +1 -1
  689. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserConnector.js +2 -2
  690. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserConnector.js.map +1 -1
  691. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserContext.d.ts +2 -0
  692. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserContext.d.ts.map +1 -1
  693. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserContext.js +7 -0
  694. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserContext.js.map +1 -1
  695. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ElementHandle.d.ts +1 -1
  696. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ElementHandle.d.ts.map +1 -1
  697. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ElementHandle.js +13 -10
  698. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ElementHandle.js.map +1 -1
  699. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/HTTPRequest.d.ts +1 -0
  700. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/HTTPRequest.d.ts.map +1 -1
  701. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/HTTPRequest.js +3 -0
  702. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/HTTPRequest.js.map +1 -1
  703. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/HTTPResponse.d.ts +1 -2
  704. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/HTTPResponse.d.ts.map +1 -1
  705. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/HTTPResponse.js +4 -4
  706. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/HTTPResponse.js.map +1 -1
  707. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Input.d.ts +15 -4
  708. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Input.d.ts.map +1 -1
  709. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Input.js +55 -26
  710. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Input.js.map +1 -1
  711. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/NetworkManager.d.ts.map +1 -1
  712. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/NetworkManager.js +24 -12
  713. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/NetworkManager.js.map +1 -1
  714. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.d.ts +1 -0
  715. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.d.ts.map +1 -1
  716. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js +3 -0
  717. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js.map +1 -1
  718. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.d.ts +0 -8
  719. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.d.ts.map +1 -1
  720. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.js +1 -9
  721. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.js.map +1 -1
  722. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConnectOptions.d.ts +5 -0
  723. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConnectOptions.d.ts.map +1 -1
  724. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.d.ts +2 -1
  725. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.d.ts.map +1 -1
  726. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.js +5 -2
  727. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.js.map +1 -1
  728. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DownloadBehavior.d.ts +30 -0
  729. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DownloadBehavior.d.ts.map +1 -0
  730. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DownloadBehavior.js +7 -0
  731. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DownloadBehavior.js.map +1 -0
  732. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.d.ts +7 -0
  733. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.d.ts.map +1 -1
  734. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.js +7 -0
  735. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.js.map +1 -1
  736. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WaitTask.d.ts.map +1 -1
  737. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WaitTask.js +5 -3
  738. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WaitTask.js.map +1 -1
  739. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/common.d.ts +1 -0
  740. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/common.d.ts.map +1 -1
  741. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.d.ts +1 -1
  742. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.d.ts.map +1 -1
  743. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.js +0 -3
  744. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.js.map +1 -1
  745. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/injected.d.ts +1 -1
  746. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/injected.js +1 -1
  747. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.d.ts +1 -1
  748. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.js +1 -1
  749. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.d.ts.map +1 -1
  750. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.js +2 -2
  751. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.js.map +1 -1
  752. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.d.ts +3 -3
  753. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js +3 -3
  754. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/incremental-id-generator.d.ts +14 -0
  755. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/incremental-id-generator.d.ts.map +1 -0
  756. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/incremental-id-generator.js +15 -0
  757. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/incremental-id-generator.js.map +1 -0
  758. package/front_end/third_party/puppeteer/package/lib/types.d.ts +100 -10
  759. package/front_end/third_party/puppeteer/package/package.json +5 -5
  760. package/front_end/third_party/puppeteer/package/src/api/Browser.ts +10 -3
  761. package/front_end/third_party/puppeteer/package/src/api/ElementHandle.ts +21 -3
  762. package/front_end/third_party/puppeteer/package/src/api/Frame.ts +3 -1
  763. package/front_end/third_party/puppeteer/package/src/api/HTTPRequest.ts +1 -0
  764. package/front_end/third_party/puppeteer/package/src/api/Input.ts +57 -8
  765. package/front_end/third_party/puppeteer/package/src/api/Page.ts +5 -0
  766. package/front_end/third_party/puppeteer/package/src/bidi/ElementHandle.ts +9 -7
  767. package/front_end/third_party/puppeteer/package/src/bidi/Frame.ts +1 -0
  768. package/front_end/third_party/puppeteer/package/src/bidi/Input.ts +72 -31
  769. package/front_end/third_party/puppeteer/package/src/bidi/Page.ts +4 -0
  770. package/front_end/third_party/puppeteer/package/src/cdp/Browser.ts +11 -3
  771. package/front_end/third_party/puppeteer/package/src/cdp/BrowserConnector.ts +2 -0
  772. package/front_end/third_party/puppeteer/package/src/cdp/BrowserContext.ts +11 -0
  773. package/front_end/third_party/puppeteer/package/src/cdp/ElementHandle.ts +14 -9
  774. package/front_end/third_party/puppeteer/package/src/cdp/HTTPRequest.ts +4 -0
  775. package/front_end/third_party/puppeteer/package/src/cdp/HTTPResponse.ts +3 -5
  776. package/front_end/third_party/puppeteer/package/src/cdp/Input.ts +71 -26
  777. package/front_end/third_party/puppeteer/package/src/cdp/NetworkManager.ts +34 -17
  778. package/front_end/third_party/puppeteer/package/src/cdp/Page.ts +4 -0
  779. package/front_end/third_party/puppeteer/package/src/common/CallbackRegistry.ts +1 -15
  780. package/front_end/third_party/puppeteer/package/src/common/ConnectOptions.ts +5 -0
  781. package/front_end/third_party/puppeteer/package/src/common/ConsoleMessage.ts +8 -1
  782. package/front_end/third_party/puppeteer/package/src/common/DownloadBehavior.ts +31 -0
  783. package/front_end/third_party/puppeteer/package/src/common/Errors.ts +7 -0
  784. package/front_end/third_party/puppeteer/package/src/common/WaitTask.ts +9 -9
  785. package/front_end/third_party/puppeteer/package/src/common/common.ts +1 -0
  786. package/front_end/third_party/puppeteer/package/src/environment.ts +1 -4
  787. package/front_end/third_party/puppeteer/package/src/generated/injected.ts +1 -1
  788. package/front_end/third_party/puppeteer/package/src/generated/version.ts +1 -1
  789. package/front_end/third_party/puppeteer/package/src/node/BrowserLauncher.ts +2 -0
  790. package/front_end/third_party/puppeteer/package/src/revisions.ts +3 -3
  791. package/front_end/third_party/puppeteer/package/src/util/incremental-id-generator.ts +20 -0
  792. package/front_end/third_party/puppeteer/puppeteer-tsconfig.json +2 -0
  793. package/front_end/ui/components/buttons/Button.test.ts +14 -0
  794. package/front_end/ui/components/buttons/Button.ts +27 -4
  795. package/front_end/ui/components/cards/card.css +7 -4
  796. package/front_end/ui/components/data_grid/DataGridControllerIntegrator.ts +4 -1
  797. package/front_end/ui/components/dialogs/ButtonDialog.test.ts +78 -0
  798. package/front_end/ui/components/dialogs/ButtonDialog.ts +131 -0
  799. package/front_end/ui/components/dialogs/Dialog.test.ts +43 -0
  800. package/front_end/ui/components/dialogs/Dialog.ts +63 -3
  801. package/front_end/ui/components/dialogs/ShortcutDialog.test.ts +15 -1
  802. package/front_end/ui/components/dialogs/ShortcutDialog.ts +33 -23
  803. package/front_end/ui/components/dialogs/buttonDialog.css +9 -0
  804. package/front_end/ui/components/dialogs/dialog.css +15 -4
  805. package/front_end/ui/components/dialogs/dialogs.ts +2 -0
  806. package/front_end/ui/components/dialogs/shortcutDialog.css +58 -38
  807. package/front_end/ui/components/docs/dialog/button_dialog.html +28 -0
  808. package/front_end/ui/components/docs/dialog/button_dialog.ts +29 -0
  809. package/front_end/ui/components/docs/freestyler/basic.ts +6 -8
  810. package/front_end/ui/components/docs/freestyler/empty_state.ts +6 -8
  811. package/front_end/ui/components/docs/performance_panel/basic.ts +1 -1
  812. package/front_end/ui/components/docs/performance_panel/timeline_history_manager.ts +6 -4
  813. package/front_end/ui/components/docs/performance_panel/track_example.html +1 -1
  814. package/front_end/ui/components/floating_button/FloatingButton.ts +3 -2
  815. package/front_end/ui/components/icon_button/fileSourceIcon.css +7 -3
  816. package/front_end/ui/components/issue_counter/IssueCounter.ts +15 -2
  817. package/front_end/ui/components/legacy_wrapper/LegacyWrapper.ts +1 -1
  818. package/front_end/ui/components/markdown_view/MarkdownView.test.ts +39 -17
  819. package/front_end/ui/components/markdown_view/MarkdownView.ts +92 -14
  820. package/front_end/ui/components/markdown_view/markdownView.css +15 -0
  821. package/front_end/ui/components/render_coordinator/RenderCoordinator.ts +24 -18
  822. package/front_end/ui/components/settings/SettingCheckbox.ts +3 -2
  823. package/front_end/ui/components/switch/SwitchImpl.ts +2 -2
  824. package/front_end/ui/legacy/ContextMenu.ts +2 -2
  825. package/front_end/ui/legacy/Infobar.ts +6 -0
  826. package/front_end/ui/legacy/InplaceEditor.ts +18 -14
  827. package/front_end/ui/legacy/InspectorView.ts +40 -0
  828. package/front_end/ui/legacy/ListWidget.ts +4 -2
  829. package/front_end/ui/legacy/TabbedPane.ts +0 -14
  830. package/front_end/ui/legacy/ThrottledWidget.ts +2 -2
  831. package/front_end/ui/legacy/Toolbar.ts +3 -3
  832. package/front_end/ui/legacy/UIUtils.ts +8 -13
  833. package/front_end/ui/legacy/Widget.ts +32 -0
  834. package/front_end/ui/legacy/components/cookie_table/CookiesTable.ts +7 -2
  835. package/front_end/ui/legacy/components/data_grid/DataGrid.test.ts +6 -9
  836. package/front_end/ui/legacy/components/data_grid/DataGrid.ts +43 -38
  837. package/front_end/ui/legacy/components/data_grid/ViewportDataGrid.ts +21 -12
  838. package/front_end/ui/legacy/components/inline_editor/LinkSwatch.test.ts +19 -0
  839. package/front_end/ui/legacy/components/inline_editor/LinkSwatch.ts +1 -1
  840. package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +1 -1
  841. package/front_end/ui/legacy/components/perf_ui/ChartViewport.ts +2 -2
  842. package/front_end/ui/legacy/components/perf_ui/FilmStripView.ts +1 -1
  843. package/front_end/ui/legacy/components/perf_ui/FlameChart.ts +37 -47
  844. package/front_end/ui/legacy/components/perf_ui/OverviewGrid.ts +129 -100
  845. package/front_end/ui/legacy/components/perf_ui/TimelineGrid.ts +4 -2
  846. package/front_end/ui/legacy/components/perf_ui/TimelineOverviewCalculator.test.ts +9 -4
  847. package/front_end/ui/legacy/components/perf_ui/TimelineOverviewCalculator.ts +23 -9
  848. package/front_end/ui/legacy/components/perf_ui/TimelineOverviewPane.ts +102 -43
  849. package/front_end/ui/legacy/components/perf_ui/flameChart.css +0 -2
  850. package/front_end/ui/legacy/components/perf_ui/perf_ui-meta.ts +4 -4
  851. package/front_end/ui/legacy/components/source_frame/BinaryResourceViewFactory.test.ts +49 -0
  852. package/front_end/ui/legacy/components/source_frame/BinaryResourceViewFactory.ts +23 -46
  853. package/front_end/ui/legacy/components/source_frame/ImageView.ts +1 -1
  854. package/front_end/ui/legacy/components/utils/ImagePreview.ts +1 -1
  855. package/front_end/ui/legacy/components/utils/jsUtils.css +8 -0
  856. package/front_end/ui/legacy/filter.css +1 -1
  857. package/front_end/ui/legacy/inspectorCommon.css +1 -1
  858. package/front_end/ui/legacy/listWidget.css +4 -1
  859. package/front_end/ui/legacy/reportView.css +1 -1
  860. package/front_end/ui/legacy/textPrompt.css +1 -1
  861. package/front_end/ui/legacy/toolbar.css +7 -11
  862. package/front_end/ui/legacy/treeoutline.css +3 -1
  863. package/front_end/ui/visual_logging/KnownContextValues.ts +186 -1
  864. package/front_end/ui/visual_logging/LoggingConfig.ts +6 -2
  865. package/front_end/ui/visual_logging/LoggingDriver.test.ts +27 -1
  866. package/front_end/ui/visual_logging/LoggingDriver.ts +7 -4
  867. package/package.json +8 -8
  868. package/scripts/build/ninja/bundle.gni +3 -3
  869. package/scripts/build/{rollup.config.js → rollup.config.mjs} +4 -4
  870. package/scripts/build/wasm-as.py +1 -1
  871. package/scripts/devtools_paths.py +8 -4
  872. package/scripts/eslint_rules/tests/check_test_definitions_test.js +8 -3
  873. package/scripts/freestyler/auto_freestyler.js +12 -4
  874. package/scripts/freestyler/to_tsv.mjs +40 -0
  875. package/scripts/tools/update_goldens.py +11 -13
  876. package/scripts/tools/update_goldens_v2.py +1 -1
  877. package/front_end/models/timeline_model/TimelineModelFilter.ts +0 -61
  878. package/front_end/panels/timeline/components/insights/SidebarInsight.test.ts +0 -72
  879. package/front_end/ui/components/docs/two_states_counter/basic.html +0 -27
  880. package/front_end/ui/components/docs/two_states_counter/basic.ts +0 -45
  881. package/front_end/ui/components/two_states_counter/TwoStatesCounter.test.ts +0 -73
  882. package/front_end/ui/components/two_states_counter/TwoStatesCounter.ts +0 -104
  883. package/front_end/ui/components/two_states_counter/twoStatesCounter.css +0 -37
  884. package/front_end/ui/components/two_states_counter/two_states_counter.ts +0 -9
  885. /package/front_end/Images/{rollup.config.js → rollup.config.mjs} +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "core/audits/accessibility/accesskeys.js | description": {
3
- "message": "Pääsyavaimien avulla käyttäjät voivat nopeasti kohdistaa tiettyyn sivun osaan. Jotta sivulla siirtyminen onnistuu, jokaisen pääsyavaimen on oltava yksilöllinen. [Lue lisää pääsyavaimista](https://dequeuniversity.com/rules/axe/4.9/accesskeys)."
3
+ "message": "Pääsyavaimien avulla käyttäjät voivat nopeasti kohdistaa tiettyyn sivun osaan. Jotta sivulla siirtyminen onnistuu, jokaisen pääsyavaimen on oltava yksilöllinen. [Lue lisää pääsyavaimista](https://dequeuniversity.com/rules/axe/4.10/accesskeys)."
4
4
  },
5
5
  "core/audits/accessibility/accesskeys.js | failureTitle": {
6
6
  "message": "`[accesskey]`-arvot eivät ole yksilöllisiä"
@@ -9,7 +9,7 @@
9
9
  "message": "`[accesskey]`-arvot ovat yksilöllisiä."
10
10
  },
11
11
  "core/audits/accessibility/aria-allowed-attr.js | description": {
12
- "message": "Jokainen ARIA-`role` tukee tiettyä `aria-*`-määritteiden osaa. Vastaavuusjärjestyksen sekoittaminen mitätöi `aria-*`-määritteet. [Lue lisää ARIA-määritteiden ja niiden roolien yhdistämisestä](https://dequeuniversity.com/rules/axe/4.9/aria-allowed-attr)."
12
+ "message": "Jokainen ARIA-`role` tukee tiettyä `aria-*`-määritteiden osaa. Vastaavuusjärjestyksen sekoittaminen mitätöi `aria-*`-määritteet. [Lue lisää ARIA-määritteiden ja niiden roolien yhdistämisestä](https://dequeuniversity.com/rules/axe/4.10/aria-allowed-attr)."
13
13
  },
14
14
  "core/audits/accessibility/aria-allowed-attr.js | failureTitle": {
15
15
  "message": "`[aria-*]`-määritteet eivät vastaa rooleja"
@@ -18,16 +18,16 @@
18
18
  "message": "`[aria-*]`-määritteet vastaavat roolejaan"
19
19
  },
20
20
  "core/audits/accessibility/aria-allowed-role.js | description": {
21
- "message": "Many HTML elements can only be assigned certain ARIA roles. Using ARIA roles where they are not allowed can interfere with the accessibility of the web page. [Learn more about ARIA roles](https://dequeuniversity.com/rules/axe/4.9/aria-allowed-role)."
21
+ "message": "Monille HTML-elementeille voidaan määrittää vain tiettyjä ARIA-rooleja. ARIA-roolien käyttäminen silloin, kun niitä ei sallita, voi häiritä verkkosivun saavutettavuutta. [Lue lisää ARIA-rooleista](https://dequeuniversity.com/rules/axe/4.10/aria-allowed-role)."
22
22
  },
23
23
  "core/audits/accessibility/aria-allowed-role.js | failureTitle": {
24
- "message": "Uses ARIA roles on incompatible elements"
24
+ "message": "Käyttää ARIA-rooleja yhteensopimattomissa elementeissä"
25
25
  },
26
26
  "core/audits/accessibility/aria-allowed-role.js | title": {
27
- "message": "Uses ARIA roles only on compatible elements"
27
+ "message": "Käyttää ARIA-rooleja vain yhteensopivissa elementeissä"
28
28
  },
29
29
  "core/audits/accessibility/aria-command-name.js | description": {
30
- "message": "Jos elementin nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Katso, miten voit helpottaa komentoelementtien käyttöä](https://dequeuniversity.com/rules/axe/4.9/aria-command-name)."
30
+ "message": "Jos elementin nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Katso, miten voit helpottaa komentoelementtien käyttöä](https://dequeuniversity.com/rules/axe/4.10/aria-command-name)."
31
31
  },
32
32
  "core/audits/accessibility/aria-command-name.js | failureTitle": {
33
33
  "message": "Elementeillä (`button`, `link` ja `menuitem`) ei ole esteettömiä nimiä"
@@ -36,7 +36,7 @@
36
36
  "message": "Elementeillä (`button`, `link` ja `menuitem`) on esteettömät nimet"
37
37
  },
38
38
  "core/audits/accessibility/aria-conditional-attr.js | description": {
39
- "message": "Jotkin ARIA-määritteet sallitaan elementissä vain tietyin ehdoin. [Lue lisää ehdollisista ARIA-määritteistä](https://dequeuniversity.com/rules/axe/4.9/aria-conditional-attr)."
39
+ "message": "Jotkin ARIA-määritteet sallitaan elementissä vain tietyin ehdoin. [Lue lisää ehdollisista ARIA-määritteistä](https://dequeuniversity.com/rules/axe/4.10/aria-conditional-attr)."
40
40
  },
41
41
  "core/audits/accessibility/aria-conditional-attr.js | failureTitle": {
42
42
  "message": "ARIA-määritteitä ei käytetä elementin roolin mukaisesti"
@@ -45,7 +45,7 @@
45
45
  "message": "ARIA-määritteitä käytetään elementin roolin mukaisesti"
46
46
  },
47
47
  "core/audits/accessibility/aria-deprecated-role.js | description": {
48
- "message": "Avustava teknologia ei välttämättä käsittele käytöstä poistettuja ARIA-rooleja oikein. [Lue lisää käytöstä poistetuista ARIA-rooleista](https://dequeuniversity.com/rules/axe/4.9/aria-deprecated-role)."
48
+ "message": "Avustava teknologia ei välttämättä käsittele käytöstä poistettuja ARIA-rooleja oikein. [Lue lisää käytöstä poistetuista ARIA-rooleista](https://dequeuniversity.com/rules/axe/4.10/aria-deprecated-role)."
49
49
  },
50
50
  "core/audits/accessibility/aria-deprecated-role.js | failureTitle": {
51
51
  "message": "Käytöstä poistettuja ARIA-rooleja on käytetty"
@@ -54,7 +54,7 @@
54
54
  "message": "Käytöstä poistettuja ARIA-rooleja ei käytetty"
55
55
  },
56
56
  "core/audits/accessibility/aria-dialog-name.js | description": {
57
- "message": "ARIA-valintaikkunaelementit, joissa ei ole saavutettavia nimiä, voivat estää näytönlukuohjelmien käyttäjiä havaitsemasta elementtien tarkoituksen. [Katso, miten voit helpottaa ARIA-valintaikkunan elementtien käyttöä](https://dequeuniversity.com/rules/axe/4.9/aria-dialog-name)."
57
+ "message": "ARIA-valintaikkunaelementit, joissa ei ole saavutettavia nimiä, voivat estää näytönlukuohjelmien käyttäjiä havaitsemasta elementtien tarkoituksen. [Katso, miten voit helpottaa ARIA-valintaikkunan elementtien käyttöä](https://dequeuniversity.com/rules/axe/4.10/aria-dialog-name)."
58
58
  },
59
59
  "core/audits/accessibility/aria-dialog-name.js | failureTitle": {
60
60
  "message": "Elementtien, joissa on `role=\"dialog\"` tai `role=\"alertdialog\"`, nimi ei ole saavutettava."
@@ -63,7 +63,7 @@
63
63
  "message": "Elementtien, joissa on `role=\"dialog\"` tai `role=\"alertdialog\"`, nimi on saavutettava."
64
64
  },
65
65
  "core/audits/accessibility/aria-hidden-body.js | description": {
66
- "message": "Näytönlukuohjelmat ja muut avustavat teknologiat toimivat arvaamattomasti, kun `aria-hidden=\"true\"` asetetaan dokumentin kohdassa `<body>`. [Katso, miten `aria-hidden` vaikuttaa dokumentin tekstiosaan](https://dequeuniversity.com/rules/axe/4.9/aria-hidden-body)."
66
+ "message": "Näytönlukuohjelmat ja muut avustavat teknologiat toimivat arvaamattomasti, kun `aria-hidden=\"true\"` asetetaan dokumentin kohdassa `<body>`. [Katso, miten `aria-hidden` vaikuttaa dokumentin tekstiosaan](https://dequeuniversity.com/rules/axe/4.10/aria-hidden-body)."
67
67
  },
68
68
  "core/audits/accessibility/aria-hidden-body.js | failureTitle": {
69
69
  "message": "`[aria-hidden=\"true\"]` on dokumentin kohdassa `<body>`"
@@ -72,7 +72,7 @@
72
72
  "message": "`[aria-hidden=\"true\"]` ei ole dokumentin kohdassa `<body>`"
73
73
  },
74
74
  "core/audits/accessibility/aria-hidden-focus.js | description": {
75
- "message": "Jos `[aria-hidden=\"true\"]`-elementillä on tarkennettavia alaosia, näytönlukuohjelmat ja muut avustavat teknologiat eivät löydä niitä. [Katso, miten `aria-hidden` vaikuttaa kohdistettaviin elementteihin](https://dequeuniversity.com/rules/axe/4.9/aria-hidden-focus)."
75
+ "message": "Jos `[aria-hidden=\"true\"]`-elementillä on tarkennettavia alaosia, näytönlukuohjelmat ja muut avustavat teknologiat eivät löydä niitä. [Katso, miten `aria-hidden` vaikuttaa kohdistettaviin elementteihin](https://dequeuniversity.com/rules/axe/4.10/aria-hidden-focus)."
76
76
  },
77
77
  "core/audits/accessibility/aria-hidden-focus.js | failureTitle": {
78
78
  "message": "`[aria-hidden=\"true\"]`-elementeissä on tarkennettavia alaosia"
@@ -81,7 +81,7 @@
81
81
  "message": "`[aria-hidden=\"true\"]`-elementeissä ei ole tarkennettavia alaosia"
82
82
  },
83
83
  "core/audits/accessibility/aria-input-field-name.js | description": {
84
- "message": "Jos syötekentän nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää syöttökenttien tunnisteista](https://dequeuniversity.com/rules/axe/4.9/aria-input-field-name)."
84
+ "message": "Jos syötekentän nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää syöttökenttien tunnisteista](https://dequeuniversity.com/rules/axe/4.10/aria-input-field-name)."
85
85
  },
86
86
  "core/audits/accessibility/aria-input-field-name.js | failureTitle": {
87
87
  "message": "ARIA-syötekenttien nimet eivät ole esteettömiä"
@@ -90,7 +90,7 @@
90
90
  "message": "ARIA-syötekenttien nimet ovat esteettömiä"
91
91
  },
92
92
  "core/audits/accessibility/aria-meter-name.js | description": {
93
- "message": "Jos elementin nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Katso, miten voit nimetä `meter`-elementtejä](https://dequeuniversity.com/rules/axe/4.9/aria-meter-name)."
93
+ "message": "Jos elementin nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Katso, miten voit nimetä `meter`-elementtejä](https://dequeuniversity.com/rules/axe/4.10/aria-meter-name)."
94
94
  },
95
95
  "core/audits/accessibility/aria-meter-name.js | failureTitle": {
96
96
  "message": "ARIA-elementeillä (`meter`) ei ole esteettömiä nimiä"
@@ -99,7 +99,7 @@
99
99
  "message": "ARIA-elementeillä (`meter`) on esteettömät nimet"
100
100
  },
101
101
  "core/audits/accessibility/aria-progressbar-name.js | description": {
102
- "message": "Jos elementin (`progressbar`) nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää `progressbar`-elementtien nimeämisestä](https://dequeuniversity.com/rules/axe/4.9/aria-progressbar-name)."
102
+ "message": "Jos elementin (`progressbar`) nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää `progressbar`-elementtien nimeämisestä](https://dequeuniversity.com/rules/axe/4.10/aria-progressbar-name)."
103
103
  },
104
104
  "core/audits/accessibility/aria-progressbar-name.js | failureTitle": {
105
105
  "message": "ARIA-elementeillä (`progressbar`) ei ole esteettömiä nimiä"
@@ -108,7 +108,7 @@
108
108
  "message": "ARIA-elementeillä (`progressbar`) on esteettömät nimet"
109
109
  },
110
110
  "core/audits/accessibility/aria-prohibited-attr.js | description": {
111
- "message": "ARIA-määritteiden käyttäminen rooleissa, joissa ne on kielletty, voi tarkoittaa, että tärkeitä tietoja ei anneta avustavien teknologioiden käyttäjille. [Lue lisää kielletyistä ARIA-rooleista](https://dequeuniversity.com/rules/axe/4.9/aria-prohibited-attr)."
111
+ "message": "ARIA-määritteiden käyttäminen rooleissa, joissa ne on kielletty, voi tarkoittaa, että tärkeitä tietoja ei anneta avustavien teknologioiden käyttäjille. [Lue lisää kielletyistä ARIA-rooleista](https://dequeuniversity.com/rules/axe/4.10/aria-prohibited-attr)."
112
112
  },
113
113
  "core/audits/accessibility/aria-prohibited-attr.js | failureTitle": {
114
114
  "message": "Elementeissä käytetään kiellettyjä ARIA-määritteitä"
@@ -117,7 +117,7 @@
117
117
  "message": "Elementit käyttävät vain sallittuja ARIA-määritteitä"
118
118
  },
119
119
  "core/audits/accessibility/aria-required-attr.js | description": {
120
- "message": "Joillakin ARIA-rooleilla on pakollisia määritteitä, jotka kuvaavat elementin tilaa näytönlukuohjelmille. [Lue lisää rooleista ja pakollisista määritteistä](https://dequeuniversity.com/rules/axe/4.9/aria-required-attr)."
120
+ "message": "Joillakin ARIA-rooleilla on pakollisia määritteitä, jotka kuvaavat elementin tilaa näytönlukuohjelmille. [Lue lisää rooleista ja pakollisista määritteistä](https://dequeuniversity.com/rules/axe/4.10/aria-required-attr)."
121
121
  },
122
122
  "core/audits/accessibility/aria-required-attr.js | failureTitle": {
123
123
  "message": "`[role]`-elementeissä ei ole kaikkia vaadittuja `[aria-*]`-määritteitä"
@@ -126,7 +126,7 @@
126
126
  "message": "`[role]`-elementeissä on kaikki vaaditut `[aria-*]`-määritteet"
127
127
  },
128
128
  "core/audits/accessibility/aria-required-children.js | description": {
129
- "message": "Voidakseen suorittaa esteettömyyteen liittyvät toiminnot joidenkin alatason ARIA-roolien on kuuluttava tiettyihin ylätason rooleihin. [Lue lisää rooleista ja pakollisista alatason elementeistä](https://dequeuniversity.com/rules/axe/4.9/aria-required-children)."
129
+ "message": "Voidakseen suorittaa esteettömyyteen liittyvät toiminnot joidenkin alatason ARIA-roolien on kuuluttava tiettyihin ylätason rooleihin. [Lue lisää rooleista ja pakollisista alatason elementeistä](https://dequeuniversity.com/rules/axe/4.10/aria-required-children)."
130
130
  },
131
131
  "core/audits/accessibility/aria-required-children.js | failureTitle": {
132
132
  "message": "ARIAn `[role]` sisältämät elementit edellyttävät alatasoilta tiettyä elementtiä (`[role]`), mutta se puuttuu osalta tai kaikilta alatasoilta."
@@ -135,7 +135,7 @@
135
135
  "message": "ARIAn `[role]` sisältämät elementit edellyttävät alatasoilta tiettyä elementtiä (`[role]`), joka on kaikilla alatasoilla."
136
136
  },
137
137
  "core/audits/accessibility/aria-required-parent.js | description": {
138
- "message": "Voidakseen suorittaa esteettömyyteen liittyvät toiminnot joidenkin alatason ARIA-roolien on kuuluttava tiettyihin ylätason rooleihin. [Lue lisää ARIA-rooleista ja pakollisesta ylätason elementistä](https://dequeuniversity.com/rules/axe/4.9/aria-required-parent)."
138
+ "message": "Voidakseen suorittaa esteettömyyteen liittyvät toiminnot joidenkin alatason ARIA-roolien on kuuluttava tiettyihin ylätason rooleihin. [Lue lisää ARIA-rooleista ja pakollisesta ylätason elementistä](https://dequeuniversity.com/rules/axe/4.10/aria-required-parent)."
139
139
  },
140
140
  "core/audits/accessibility/aria-required-parent.js | failureTitle": {
141
141
  "message": "`[role]`-elementit eivät sisälly niiden pakolliseen ylätason elementtiin"
@@ -144,7 +144,7 @@
144
144
  "message": "`[role]`-elementit sisältyvät niiden pakolliseen ylätason elementtiin"
145
145
  },
146
146
  "core/audits/accessibility/aria-roles.js | description": {
147
- "message": "Voidakseen suorittaa esteettömyyteen liittyvät toiminnot ARIA-rooleilla on oltava kelvolliset arvot. [Lue lisää kelvollisista ARIA-rooleista](https://dequeuniversity.com/rules/axe/4.9/aria-roles)."
147
+ "message": "Voidakseen suorittaa esteettömyyteen liittyvät toiminnot ARIA-rooleilla on oltava kelvolliset arvot. [Lue lisää kelvollisista ARIA-rooleista](https://dequeuniversity.com/rules/axe/4.10/aria-roles)."
148
148
  },
149
149
  "core/audits/accessibility/aria-roles.js | failureTitle": {
150
150
  "message": "`[role]`-arvot eivät ole kelvollisia"
@@ -153,7 +153,7 @@
153
153
  "message": "`[role]`-arvot ovat kelvollisia"
154
154
  },
155
155
  "core/audits/accessibility/aria-text.js | description": {
156
- "message": "Kun `role=text` lisätään merkinnöillä erotetun tekstinoodin ympärille, VoiceOver käsittelee sitä yhtenä ilmauksena, mutta elementin kohdistettavia alakohtia ei ilmoiteta. [Lue lisää `role=text`‐määritteestä](https://dequeuniversity.com/rules/axe/4.9/aria-text)."
156
+ "message": "Kun `role=text` lisätään merkinnöillä erotetun tekstinoodin ympärille, VoiceOver käsittelee sitä yhtenä ilmauksena, mutta elementin kohdistettavia alakohtia ei ilmoiteta. [Lue lisää `role=text`‐määritteestä](https://dequeuniversity.com/rules/axe/4.10/aria-text)."
157
157
  },
158
158
  "core/audits/accessibility/aria-text.js | failureTitle": {
159
159
  "message": "`role=text`-määritteen sisältävillä elementeillä on kohdistettavia alakohtia."
@@ -162,7 +162,7 @@
162
162
  "message": "`role=text`-määritteen sisältävillä elementeillä ei ole kohdistettavia alakohtia."
163
163
  },
164
164
  "core/audits/accessibility/aria-toggle-field-name.js | description": {
165
- "message": "Jos päälle/pois-kentän nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää päälle/pois-kentistä](https://dequeuniversity.com/rules/axe/4.9/aria-toggle-field-name)."
165
+ "message": "Jos päälle/pois-kentän nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää päälle/pois-kentistä](https://dequeuniversity.com/rules/axe/4.10/aria-toggle-field-name)."
166
166
  },
167
167
  "core/audits/accessibility/aria-toggle-field-name.js | failureTitle": {
168
168
  "message": "ARIAn päälle/pois-kenttien nimet eivät ole esteettömiä"
@@ -171,7 +171,7 @@
171
171
  "message": "ARIAn päälle/pois-kenttien nimet ovat esteettömiä"
172
172
  },
173
173
  "core/audits/accessibility/aria-tooltip-name.js | description": {
174
- "message": "Jos elementin vihjetekstin nimi ei ole saavutettava, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Katso, miten voit nimetä `tooltip`-elementtejä](https://dequeuniversity.com/rules/axe/4.9/aria-tooltip-name)."
174
+ "message": "Jos elementin vihjetekstin nimi ei ole saavutettava, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Katso, miten voit nimetä `tooltip`-elementtejä](https://dequeuniversity.com/rules/axe/4.10/aria-tooltip-name)."
175
175
  },
176
176
  "core/audits/accessibility/aria-tooltip-name.js | failureTitle": {
177
177
  "message": "ARIA-elementeillä (`tooltip`) ei ole esteettömiä nimiä"
@@ -180,7 +180,7 @@
180
180
  "message": "ARIA-elementeillä (`tooltip`) on esteettömät nimet"
181
181
  },
182
182
  "core/audits/accessibility/aria-treeitem-name.js | description": {
183
- "message": "Jos elementin (`treeitem`) nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää `treeitem`-elementtien merkitsemisestä](https://dequeuniversity.com/rules/axe/4.9/aria-treeitem-name)."
183
+ "message": "Jos elementin (`treeitem`) nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää `treeitem`-elementtien merkitsemisestä](https://dequeuniversity.com/rules/axe/4.10/aria-treeitem-name)."
184
184
  },
185
185
  "core/audits/accessibility/aria-treeitem-name.js | failureTitle": {
186
186
  "message": "ARIA-elementeillä (`treeitem`) ei ole esteettömiä nimiä"
@@ -189,7 +189,7 @@
189
189
  "message": "ARIA-elementeillä (`treeitem`) on esteettömät nimet"
190
190
  },
191
191
  "core/audits/accessibility/aria-valid-attr-value.js | description": {
192
- "message": "Avustustekniikat (kuten näytönlukuohjelmat) eivät voi tulkita ARIA-määritteitä, joissa on virheelliset arvot. [Lue lisää kelvollisista ARIA-määritteiden arvoista](https://dequeuniversity.com/rules/axe/4.9/aria-valid-attr-value)."
192
+ "message": "Avustustekniikat (kuten näytönlukuohjelmat) eivät voi tulkita ARIA-määritteitä, joissa on virheelliset arvot. [Lue lisää kelvollisista ARIA-määritteiden arvoista](https://dequeuniversity.com/rules/axe/4.10/aria-valid-attr-value)."
193
193
  },
194
194
  "core/audits/accessibility/aria-valid-attr-value.js | failureTitle": {
195
195
  "message": "`[aria-*]`-määritteiden arvot eivät ole kelvollisia"
@@ -198,7 +198,7 @@
198
198
  "message": "`[aria-*]`-määritteiden arvot ovat kelvollisia"
199
199
  },
200
200
  "core/audits/accessibility/aria-valid-attr.js | description": {
201
- "message": "Avustustekniikat (kuten näytönlukuohjelmat) eivät voi tulkita ARIA-määritteitä, joilla on virheelliset nimet. [Lue lisää kelvollisista ARIA-määritteistä](https://dequeuniversity.com/rules/axe/4.9/aria-valid-attr)."
201
+ "message": "Avustustekniikat (kuten näytönlukuohjelmat) eivät voi tulkita ARIA-määritteitä, joilla on virheelliset nimet. [Lue lisää kelvollisista ARIA-määritteistä](https://dequeuniversity.com/rules/axe/4.10/aria-valid-attr)."
202
202
  },
203
203
  "core/audits/accessibility/aria-valid-attr.js | failureTitle": {
204
204
  "message": "`[aria-*]`-määritteet eivät ole kelvollisia tai sisältävät kirjoitusvirheitä"
@@ -210,7 +210,7 @@
210
210
  "message": "Hylätyt elementit"
211
211
  },
212
212
  "core/audits/accessibility/button-name.js | description": {
213
- "message": "Kun painikkeen nimi ei ole esteetön, näytönlukuohjelmat ilmoittavat sen painikkeeksi, jolloin se on hyödytön näytönlukuohjelmia tarvitseville käyttäjille. [Katso, miten painikkeista voi tehdä saavutettavampia](https://dequeuniversity.com/rules/axe/4.9/button-name)."
213
+ "message": "Kun painikkeen nimi ei ole esteetön, näytönlukuohjelmat ilmoittavat sen painikkeeksi, jolloin se on hyödytön näytönlukuohjelmia tarvitseville käyttäjille. [Katso, miten painikkeista voi tehdä saavutettavampia](https://dequeuniversity.com/rules/axe/4.10/button-name)."
214
214
  },
215
215
  "core/audits/accessibility/button-name.js | failureTitle": {
216
216
  "message": "Painikkeiden nimet eivät ole esteettömiä"
@@ -219,7 +219,7 @@
219
219
  "message": "Painikkeiden nimet ovat esteettömiä"
220
220
  },
221
221
  "core/audits/accessibility/bypass.js | description": {
222
- "message": "Tapojen lisääminen toistuvan sisällön ohittamiseen auttaa näppäimistön käyttäjiä siirtymään sivulla tehokkaammin. [Lue lisää ohituksista](https://dequeuniversity.com/rules/axe/4.9/bypass)."
222
+ "message": "Tapojen lisääminen toistuvan sisällön ohittamiseen auttaa näppäimistön käyttäjiä siirtymään sivulla tehokkaammin. [Lue lisää ohituksista](https://dequeuniversity.com/rules/axe/4.10/bypass)."
223
223
  },
224
224
  "core/audits/accessibility/bypass.js | failureTitle": {
225
225
  "message": "Sivu ei sisällä otsikkoa, ohituslinkkiä tai maamerkin aluetta"
@@ -228,7 +228,7 @@
228
228
  "message": "Sivu sisältää otsikon, ohituslinkin tai maamerkin alueen"
229
229
  },
230
230
  "core/audits/accessibility/color-contrast.js | description": {
231
- "message": "Alhaisen kontrastin teksti on monelle vaikea tai mahdoton lukea. [Lue lisää riittävän värikontrastin lisäämisestä](https://dequeuniversity.com/rules/axe/4.9/color-contrast)."
231
+ "message": "Alhaisen kontrastin teksti on monelle vaikea tai mahdoton lukea. [Lue lisää riittävän värikontrastin lisäämisestä](https://dequeuniversity.com/rules/axe/4.10/color-contrast)."
232
232
  },
233
233
  "core/audits/accessibility/color-contrast.js | failureTitle": {
234
234
  "message": "Taustan ja etualan värien kontrastisuhde ei ole riittävä."
@@ -237,7 +237,7 @@
237
237
  "message": "Taustan ja etualan värien kontrastisuhde on riittävä"
238
238
  },
239
239
  "core/audits/accessibility/definition-list.js | description": {
240
- "message": "Kun määritelmäluetteloita ei ole merkitty kunnolla, näytönlukuohjelmien tuottama sisältö voi olla sekavaa tai epätarkkaa. [Katso, miten määritelmäluettelot jäsennetään oikein](https://dequeuniversity.com/rules/axe/4.9/definition-list)."
240
+ "message": "Kun määritelmäluetteloita ei ole merkitty kunnolla, näytönlukuohjelmien tuottama sisältö voi olla sekavaa tai epätarkkaa. [Katso, miten määritelmäluettelot jäsennetään oikein](https://dequeuniversity.com/rules/axe/4.10/definition-list)."
241
241
  },
242
242
  "core/audits/accessibility/definition-list.js | failureTitle": {
243
243
  "message": "`<dl>`-elementit eivät sisällä vain oikein järjestettyjä `<dt>`- ja `<dd>`-ryhmiä ja `<script>`-, `<template>`- tai `<div>`-elementtejä."
@@ -246,7 +246,7 @@
246
246
  "message": "`<dl>`-elementit sisältävät vain oikein järjestettyjä `<dt>`- ja `<dd>`-ryhmiä ja `<script>`-, `<template>` tai `<div>`-elementtejä"
247
247
  },
248
248
  "core/audits/accessibility/dlitem.js | description": {
249
- "message": "Määritelmien luettelokohdat (`<dt>` ja `<dd>`) on yhdistettävä ylätason `<dl>`-elementtiin, jotta näytönlukuohjelmat voivat varmasti lukea ne oikein. [Katso, miten määritelmäluettelot jäsennetään oikein](https://dequeuniversity.com/rules/axe/4.9/dlitem)."
249
+ "message": "Määritelmien luettelokohdat (`<dt>` ja `<dd>`) on yhdistettävä ylätason `<dl>`-elementtiin, jotta näytönlukuohjelmat voivat varmasti lukea ne oikein. [Katso, miten määritelmäluettelot jäsennetään oikein](https://dequeuniversity.com/rules/axe/4.10/dlitem)."
250
250
  },
251
251
  "core/audits/accessibility/dlitem.js | failureTitle": {
252
252
  "message": "Määritelmien luettelokohtia ei ole yhdistetty `<dl>`-elementeillä"
@@ -255,7 +255,7 @@
255
255
  "message": "Määritelmien luettelokohdat on yhdistetty `<dl>`-elementeillä"
256
256
  },
257
257
  "core/audits/accessibility/document-title.js | description": {
258
- "message": "Nimi antaa näytönlukuohjelmaa käyttäville yleiskuvan sivusta, ja hakukoneen käyttäjille nimi on tärkeä oleellisten sivujen löytämiseen hakutuloksista. [Lue lisää dokumenttien otsikoista](https://dequeuniversity.com/rules/axe/4.9/document-title)."
258
+ "message": "Nimi antaa näytönlukuohjelmaa käyttäville yleiskuvan sivusta, ja hakukoneen käyttäjille nimi on tärkeä oleellisten sivujen löytämiseen hakutuloksista. [Lue lisää dokumenttien otsikoista](https://dequeuniversity.com/rules/axe/4.10/document-title)."
259
259
  },
260
260
  "core/audits/accessibility/document-title.js | failureTitle": {
261
261
  "message": "Dokumentissa ei ole `<title>`-elementtiä"
@@ -264,7 +264,7 @@
264
264
  "message": "Dokumentissa on `<title>`-elementti"
265
265
  },
266
266
  "core/audits/accessibility/duplicate-id-aria.js | description": {
267
- "message": "ARIA-tunnisteen on oltava yksilöllinen, jotta avustavat teknologiat eivät jätä muita esiintymiä huomioimatta. [Katso, miten voit korjata päällekkäisiä ARIA-tunnuksia](https://dequeuniversity.com/rules/axe/4.9/duplicate-id-aria)."
267
+ "message": "ARIA-tunnisteen on oltava yksilöllinen, jotta avustavat teknologiat eivät jätä muita esiintymiä huomioimatta. [Katso, miten voit korjata päällekkäisiä ARIA-tunnuksia](https://dequeuniversity.com/rules/axe/4.10/duplicate-id-aria)."
268
268
  },
269
269
  "core/audits/accessibility/duplicate-id-aria.js | failureTitle": {
270
270
  "message": "ARIA-tunnisteet eivät ole yksilöllisiä"
@@ -273,7 +273,7 @@
273
273
  "message": "ARIA-tunnisteet ovat yksilöllisiä"
274
274
  },
275
275
  "core/audits/accessibility/empty-heading.js | description": {
276
- "message": "Jos otsikon tekstissä ei ole sisältöä tai teksti ei ole käytettävissä, näytönlukuohjelman käyttäjät eivät saa pääsyä tietoihin sivun rakenteessa. [Lue lisää otsikoista](https://dequeuniversity.com/rules/axe/4.9/empty-heading)."
276
+ "message": "Jos otsikon tekstissä ei ole sisältöä tai teksti ei ole käytettävissä, näytönlukuohjelman käyttäjät eivät saa pääsyä tietoihin sivun rakenteessa. [Lue lisää otsikoista](https://dequeuniversity.com/rules/axe/4.10/empty-heading)."
277
277
  },
278
278
  "core/audits/accessibility/empty-heading.js | failureTitle": {
279
279
  "message": "Otsikkoelementeissä ei ole sisältöä."
@@ -282,7 +282,7 @@
282
282
  "message": "Kaikissa otsikkoelementeissä on sisältöä."
283
283
  },
284
284
  "core/audits/accessibility/form-field-multiple-labels.js | description": {
285
- "message": "Jos lomakekentillä on useita tunnisteita, näytönlukuohjelmat ja muut avustavat teknologiat saattavat viitata niihin hämmentävästi käyttäen ensimmäistä, viimeistä tai jokaista tunnistetta. [Lue lisää lomaketunnisteiden käyttämisestä](https://dequeuniversity.com/rules/axe/4.9/form-field-multiple-labels)."
285
+ "message": "Jos lomakekentillä on useita tunnisteita, näytönlukuohjelmat ja muut avustavat teknologiat saattavat viitata niihin hämmentävästi käyttäen ensimmäistä, viimeistä tai jokaista tunnistetta. [Lue lisää lomaketunnisteiden käyttämisestä](https://dequeuniversity.com/rules/axe/4.10/form-field-multiple-labels)."
286
286
  },
287
287
  "core/audits/accessibility/form-field-multiple-labels.js | failureTitle": {
288
288
  "message": "Lomakekentillä on useita tunnisteita"
@@ -291,7 +291,7 @@
291
291
  "message": "Lomakekentillä ei ole useita tunnisteita"
292
292
  },
293
293
  "core/audits/accessibility/frame-title.js | description": {
294
- "message": "Näytönlukuohjelman käyttäjät saavat tietää kehysten sisällöt vain kehysten nimien avulla. [Lue lisää kehysten nimistä](https://dequeuniversity.com/rules/axe/4.9/frame-title)."
294
+ "message": "Näytönlukuohjelman käyttäjät saavat tietää kehysten sisällöt vain kehysten nimien avulla. [Lue lisää kehysten nimistä](https://dequeuniversity.com/rules/axe/4.10/frame-title)."
295
295
  },
296
296
  "core/audits/accessibility/frame-title.js | failureTitle": {
297
297
  "message": "`<frame>`- tai `<iframe>`-elementeillä ei ole nimeä"
@@ -300,7 +300,7 @@
300
300
  "message": "`<frame>`- tai `<iframe>`-elementeillä on nimi"
301
301
  },
302
302
  "core/audits/accessibility/heading-order.js | description": {
303
- "message": "Loogisesti järjestetyt ja kaikki tasot käsittävät otsikot kertovat sivun semanttisesta rakenteesta, jolloin sen selaaminen ja ymmärtäminen avustavilla teknologioilla on helpompaa. [Lue lisää otsikkojärjestyksestä](https://dequeuniversity.com/rules/axe/4.9/heading-order)."
303
+ "message": "Loogisesti järjestetyt ja kaikki tasot käsittävät otsikot kertovat sivun semanttisesta rakenteesta, jolloin sen selaaminen ja ymmärtäminen avustavilla teknologioilla on helpompaa. [Lue lisää otsikkojärjestyksestä](https://dequeuniversity.com/rules/axe/4.10/heading-order)."
304
304
  },
305
305
  "core/audits/accessibility/heading-order.js | failureTitle": {
306
306
  "message": "Otsikkoelementit eivät ole laskevassa järjestyksessä"
@@ -309,7 +309,7 @@
309
309
  "message": "Otsikkoelementit ovat laskevassa järjestyksessä"
310
310
  },
311
311
  "core/audits/accessibility/html-has-lang.js | description": {
312
- "message": "Jos sivulla ei ole `lang`-määritettä, näytönlukuohjelma arvioi kieleksi oletuskielen, jonka käyttäjä valitsi ottaessaan näytönlukuohjelman käyttöön. Jos oletuskieli ei ole käytössä sivulla, näytönlukuohjelma voi ilmoittaa sivun tekstin väärin. [Lue lisää `lang`‐määritteestä](https://dequeuniversity.com/rules/axe/4.9/html-has-lang)."
312
+ "message": "Jos sivulla ei ole `lang`-määritettä, näytönlukuohjelma arvioi kieleksi oletuskielen, jonka käyttäjä valitsi ottaessaan näytönlukuohjelman käyttöön. Jos oletuskieli ei ole käytössä sivulla, näytönlukuohjelma voi ilmoittaa sivun tekstin väärin. [Lue lisää `lang`‐määritteestä](https://dequeuniversity.com/rules/axe/4.10/html-has-lang)."
313
313
  },
314
314
  "core/audits/accessibility/html-has-lang.js | failureTitle": {
315
315
  "message": "`<html>`-elementissä ei ole `[lang]`-määritettä"
@@ -318,7 +318,7 @@
318
318
  "message": "`<html>`-elementissä on `[lang]`-määrite"
319
319
  },
320
320
  "core/audits/accessibility/html-lang-valid.js | description": {
321
- "message": "Kelvollisen [BCP 47 language](https://www.w3.org/International/questions/qa-choosing-language-tags#question) ‑määritteen ilmoittaminen elementeille auttaa näytönlukuohjelmaa kertomaan tekstin oikein. [Lue lisää `lang`‐määritteen käyttämisestä](https://dequeuniversity.com/rules/axe/4.9/html-lang-valid)."
321
+ "message": "Kelvollisen [BCP 47 language](https://www.w3.org/International/questions/qa-choosing-language-tags#question) ‑määritteen ilmoittaminen elementeille auttaa näytönlukuohjelmaa kertomaan tekstin oikein. [Lue lisää `lang`‐määritteen käyttämisestä](https://dequeuniversity.com/rules/axe/4.10/html-lang-valid)."
322
322
  },
323
323
  "core/audits/accessibility/html-lang-valid.js | failureTitle": {
324
324
  "message": "`<html>`-elementin `[lang]`-määritteen arvo ei ole kelvollinen"
@@ -327,7 +327,7 @@
327
327
  "message": "`<html>`-elementin `[lang]`-määritteen arvo on kelvollinen"
328
328
  },
329
329
  "core/audits/accessibility/html-xml-lang-mismatch.js | description": {
330
- "message": "Jos verkkosivun kieli ei ole johdonmukaista, näytönlukuohjelma saattaa ilmoittaa sivun tekstin väärin. [Lue lisää `lang`‐määritteestä](https://dequeuniversity.com/rules/axe/4.9/html-xml-lang-mismatch)."
330
+ "message": "Jos verkkosivun kieli ei ole johdonmukaista, näytönlukuohjelma saattaa ilmoittaa sivun tekstin väärin. [Lue lisää `lang`‐määritteestä](https://dequeuniversity.com/rules/axe/4.10/html-xml-lang-mismatch)."
331
331
  },
332
332
  "core/audits/accessibility/html-xml-lang-mismatch.js | failureTitle": {
333
333
  "message": "`<html>`-elementissä ei ole `[xml:lang]`-määritettä, jolla on sama peruskieli kuin `[lang]`-määritteellä."
@@ -336,7 +336,7 @@
336
336
  "message": "`<html>`-elementillä on `[xml:lang]`-määrite, jolla on sama peruskieli kuin `[lang]`-määritteellä."
337
337
  },
338
338
  "core/audits/accessibility/identical-links-same-purpose.js | description": {
339
- "message": "Samaan kohteeseen johtavilla linkeillä on oltava sama kuvaus, jotta käyttäjät ymmärtävät niiden tarkoituksen ja voivat päättää, haluavatko he seurata niitä. [Lue lisää identtisistä linkeistä](https://dequeuniversity.com/rules/axe/4.9/identical-links-same-purpose)."
339
+ "message": "Samaan kohteeseen johtavilla linkeillä on oltava sama kuvaus, jotta käyttäjät ymmärtävät niiden tarkoituksen ja voivat päättää, haluavatko he seurata niitä. [Lue lisää identtisistä linkeistä](https://dequeuniversity.com/rules/axe/4.10/identical-links-same-purpose)."
340
340
  },
341
341
  "core/audits/accessibility/identical-links-same-purpose.js | failureTitle": {
342
342
  "message": "Identtisillä linkeillä ei ole samaa tarkoitusta."
@@ -345,7 +345,7 @@
345
345
  "message": "Identtisillä linkeillä on sama tarkoitus."
346
346
  },
347
347
  "core/audits/accessibility/image-alt.js | description": {
348
- "message": "Informatiivisilla elementeillä pitäisi olla lyhyt ja kuvaileva vaihtoehtoinen teksti. Koristeelliset elementit voidaan ohittaa tyhjällä Alt-määritteellä. [Lue lisää `alt`‐määritteestä](https://dequeuniversity.com/rules/axe/4.9/image-alt)."
348
+ "message": "Informatiivisilla elementeillä pitäisi olla lyhyt ja kuvaileva vaihtoehtoinen teksti. Koristeelliset elementit voidaan ohittaa tyhjällä Alt-määritteellä. [Lue lisää `alt`‐määritteestä](https://dequeuniversity.com/rules/axe/4.10/image-alt)."
349
349
  },
350
350
  "core/audits/accessibility/image-alt.js | failureTitle": {
351
351
  "message": "Kuvaelementeillä ei ole `[alt]`-määritteitä"
@@ -354,7 +354,7 @@
354
354
  "message": "Kuvaelementeillä on `[alt]`-määritteet"
355
355
  },
356
356
  "core/audits/accessibility/image-redundant-alt.js | description": {
357
- "message": "Informatiivisilla elementeillä pitäisi olla lyhyt ja kuvaileva vaihtoehtoinen teksti. Vaihtoehtoinen teksti, joka on täsmälleen sama kuin linkin tai kuvan vieressä oleva teksti, voi olla hämmentävä näytönlukuohjelmien käyttäjille, koska teksti luetaan kahdesti. [Lue lisää `alt`‐määritteestä](https://dequeuniversity.com/rules/axe/4.9/image-redundant-alt)."
357
+ "message": "Informatiivisilla elementeillä pitäisi olla lyhyt ja kuvaileva vaihtoehtoinen teksti. Vaihtoehtoinen teksti, joka on täsmälleen sama kuin linkin tai kuvan vieressä oleva teksti, voi olla hämmentävä näytönlukuohjelmien käyttäjille, koska teksti luetaan kahdesti. [Lue lisää `alt`‐määritteestä](https://dequeuniversity.com/rules/axe/4.10/image-redundant-alt)."
358
358
  },
359
359
  "core/audits/accessibility/image-redundant-alt.js | failureTitle": {
360
360
  "message": "Kuvaelementeissä on `[alt]`-määritteitä, jotka ovat tarpeetonta tekstiä."
@@ -363,7 +363,7 @@
363
363
  "message": "Kuvaelementeissä ei ole `[alt]`-määritteitä, jotka ovat tarpeetonta tekstiä."
364
364
  },
365
365
  "core/audits/accessibility/input-button-name.js | description": {
366
- "message": "Erottuvan ja näkyvän tekstin lisääminen syöttöpainikkeisiin voi auttaa näytönlukuohjelman käyttäjiä ymmärtämään syöttöpainikkeen tarkoituksen. [Lue lisää syöttöpainikkeista](https://dequeuniversity.com/rules/axe/4.9/input-button-name)."
366
+ "message": "Erottuvan ja näkyvän tekstin lisääminen syöttöpainikkeisiin voi auttaa näytönlukuohjelman käyttäjiä ymmärtämään syöttöpainikkeen tarkoituksen. [Lue lisää syöttöpainikkeista](https://dequeuniversity.com/rules/axe/4.10/input-button-name)."
367
367
  },
368
368
  "core/audits/accessibility/input-button-name.js | failureTitle": {
369
369
  "message": "Syöttöpainikkeissa ei ole selkeää tekstiä."
@@ -372,7 +372,7 @@
372
372
  "message": "Syöttöpainikkeilla on erottuva teksti."
373
373
  },
374
374
  "core/audits/accessibility/input-image-alt.js | description": {
375
- "message": "Kun `<input>`-painikkeena käytetään kuvaa, vaihtoehtoisen tekstin lisääminen voi auttaa näytönlukuohjelman käyttäjiä ymmärtämään painikkeen tarkoituksen. [Lue lisää kuvan vaihtoehtoisesta tekstistä](https://dequeuniversity.com/rules/axe/4.9/input-image-alt)."
375
+ "message": "Kun `<input>`-painikkeena käytetään kuvaa, vaihtoehtoisen tekstin lisääminen voi auttaa näytönlukuohjelman käyttäjiä ymmärtämään painikkeen tarkoituksen. [Lue lisää kuvan vaihtoehtoisesta tekstistä](https://dequeuniversity.com/rules/axe/4.10/input-image-alt)."
376
376
  },
377
377
  "core/audits/accessibility/input-image-alt.js | failureTitle": {
378
378
  "message": "`<input type=\"image\">`-elementeissä ei ole `[alt]`-tekstiä"
@@ -381,7 +381,7 @@
381
381
  "message": "`<input type=\"image\">`-elementeissä on `[alt]`-teksti"
382
382
  },
383
383
  "core/audits/accessibility/label-content-name-mismatch.js | description": {
384
- "message": "Näkyvät tekstitunnisteet, jotka eivät vastaa saavutettavaa nimeä, voivat olla hämmentäviä näytönlukuohjelmien käyttäjille. [Lue lisää saavutettavista nimistä](https://dequeuniversity.com/rules/axe/4.9/label-content-name-mismatch)."
384
+ "message": "Näkyvät tekstitunnisteet, jotka eivät vastaa saavutettavaa nimeä, voivat olla hämmentäviä näytönlukuohjelmien käyttäjille. [Lue lisää saavutettavista nimistä](https://dequeuniversity.com/rules/axe/4.10/label-content-name-mismatch)."
385
385
  },
386
386
  "core/audits/accessibility/label-content-name-mismatch.js | failureTitle": {
387
387
  "message": "Näkyvää tekstiä sisältävien elementtien tunnisteilla ei ole vastaavia saavutettavia nimiä."
@@ -390,7 +390,7 @@
390
390
  "message": "Näkyvää tekstiä sisältävien elementtien tunnisteilla on vastaavia saavutettavia nimiä."
391
391
  },
392
392
  "core/audits/accessibility/label.js | description": {
393
- "message": "Tunnisteilla varmistetaan, että avustustekniikat (kuten näytönlukuohjelmat) ilmoittavat lomakkeiden ohjaimista oikein. [Lue lisää lomake-elementtien tunnisteista](https://dequeuniversity.com/rules/axe/4.9/label)."
393
+ "message": "Tunnisteilla varmistetaan, että avustustekniikat (kuten näytönlukuohjelmat) ilmoittavat lomakkeiden ohjaimista oikein. [Lue lisää lomake-elementtien tunnisteista](https://dequeuniversity.com/rules/axe/4.10/label)."
394
394
  },
395
395
  "core/audits/accessibility/label.js | failureTitle": {
396
396
  "message": "Lomakkeiden elementeillä ei ole niihin liittyviä tunnisteita"
@@ -399,7 +399,7 @@
399
399
  "message": "Lomake-elementeillä on niihin liittyvät tunnisteet"
400
400
  },
401
401
  "core/audits/accessibility/landmark-one-main.js | description": {
402
- "message": "Yksi ensisijainen merkki auttaa näytönlukuohjelman käyttäjiä siirtymään verkkosivulle. [Lue lisää merkeistä](https://dequeuniversity.com/rules/axe/4.9/landmark-one-main)."
402
+ "message": "Yksi ensisijainen merkki auttaa näytönlukuohjelman käyttäjiä siirtymään verkkosivulle. [Lue lisää merkeistä](https://dequeuniversity.com/rules/axe/4.10/landmark-one-main)."
403
403
  },
404
404
  "core/audits/accessibility/landmark-one-main.js | failureTitle": {
405
405
  "message": "Dokumentilla ei ole ensisijaista merkkiä."
@@ -408,7 +408,7 @@
408
408
  "message": "Dokumentilla on ensisijainen merkki."
409
409
  },
410
410
  "core/audits/accessibility/link-in-text-block.js | description": {
411
- "message": "Alhaisen kontrastin teksti on monelle vaikea tai mahdoton lukea. Erotettavissa oleva linkkiteksti parantaa heikkonäköisten käyttäjien käyttökokemusta. [Katso, miten voit tehdä linkeistä helposti erottuvia](https://dequeuniversity.com/rules/axe/4.9/link-in-text-block)."
411
+ "message": "Alhaisen kontrastin teksti on monelle vaikea tai mahdoton lukea. Erotettavissa oleva linkkiteksti parantaa heikkonäköisten käyttäjien käyttökokemusta. [Katso, miten voit tehdä linkeistä helposti erottuvia](https://dequeuniversity.com/rules/axe/4.10/link-in-text-block)."
412
412
  },
413
413
  "core/audits/accessibility/link-in-text-block.js | failureTitle": {
414
414
  "message": "Linkit erottuvat helposti vain, jos ne ovat värikkäitä."
@@ -417,7 +417,7 @@
417
417
  "message": "Linkit erottuvat helposti ilman värejä."
418
418
  },
419
419
  "core/audits/accessibility/link-name.js | description": {
420
- "message": "Linkkiteksti (ja vaihtoehtoinen teksti kuvia varten, kun niitä käytetään linkkeinä), joka on erottuva, yksilöllinen ja tarkennettavissa, parantaa näytönlukuohjelmaa käyttävien navigointikokemusta. [Katso, miten voit mahdollistaa linkkien käytön](https://dequeuniversity.com/rules/axe/4.9/link-name)."
420
+ "message": "Linkkiteksti (ja vaihtoehtoinen teksti kuvia varten, kun niitä käytetään linkkeinä), joka on erottuva, yksilöllinen ja tarkennettavissa, parantaa näytönlukuohjelmaa käyttävien navigointikokemusta. [Katso, miten voit mahdollistaa linkkien käytön](https://dequeuniversity.com/rules/axe/4.10/link-name)."
421
421
  },
422
422
  "core/audits/accessibility/link-name.js | failureTitle": {
423
423
  "message": "Linkkien nimet eivät ole helposti erottuvia"
@@ -426,7 +426,7 @@
426
426
  "message": "Linkkien nimet ovat helposti erottuvia"
427
427
  },
428
428
  "core/audits/accessibility/list.js | description": {
429
- "message": "Näytönlukuohjelmat ilmoittavat luettelot tietyillä tavoilla. Kelvollinen luettelorakenne tukee näytönlukuohjelman tuottamaa sisältöä. [Lue lisää oikeasta luettelorakenteesta](https://dequeuniversity.com/rules/axe/4.9/list)."
429
+ "message": "Näytönlukuohjelmat ilmoittavat luettelot tietyillä tavoilla. Kelvollinen luettelorakenne tukee näytönlukuohjelman tuottamaa sisältöä. [Lue lisää oikeasta luettelorakenteesta](https://dequeuniversity.com/rules/axe/4.10/list)."
430
430
  },
431
431
  "core/audits/accessibility/list.js | failureTitle": {
432
432
  "message": "Luettelot eivät sisällä ainoastaan `<li>`-elementtejä ja skriptiä tukevia elementtejä (`<script>` ja `<template>`)"
@@ -435,7 +435,7 @@
435
435
  "message": "Luettelot sisältävät ainoastaan `<li>`-elementtejä ja skriptiä tukevia elementtejä (`<script>` ja `<template>`)"
436
436
  },
437
437
  "core/audits/accessibility/listitem.js | description": {
438
- "message": "Näytönlukuohjelmat edellyttävät, että luettelokohdat (`<li>`) sisältyvät ylätason elementteihin `<ul>`, `<ol>` tai `<menu>`, jotta ne voidaan ilmoittaa oikein. [Lue lisää oikeasta luettelorakenteesta](https://dequeuniversity.com/rules/axe/4.9/listitem)."
438
+ "message": "Näytönlukuohjelmat edellyttävät, että luettelokohdat (`<li>`) sisältyvät ylätason elementteihin `<ul>`, `<ol>` tai `<menu>`, jotta ne voidaan ilmoittaa oikein. [Lue lisää oikeasta luettelorakenteesta](https://dequeuniversity.com/rules/axe/4.10/listitem)."
439
439
  },
440
440
  "core/audits/accessibility/listitem.js | failureTitle": {
441
441
  "message": "Luettelokohdat (`<li>`) eivät sisälly ylätason `<ul>`-, `<ol>`- tai `<menu>`-elementtiin."
@@ -444,7 +444,7 @@
444
444
  "message": "Luettelokohdat (`<li>`) sisältyvät ylätason `<ul>`-, `<ol>`- tai `<menu>`-elementtiin."
445
445
  },
446
446
  "core/audits/accessibility/meta-refresh.js | description": {
447
- "message": "Käyttäjät eivät odota sivun päivittyvän automaattisesti, ja päivittäminen siirtää kohdistuksen takaisin sivun yläreunaan. Tämä voi tehdä käytöstä turhauttavaa tai sekavaa. [Lue lisää refresh-metatagin käyttämisestä](https://dequeuniversity.com/rules/axe/4.9/meta-refresh)."
447
+ "message": "Käyttäjät eivät odota sivun päivittyvän automaattisesti, ja päivittäminen siirtää kohdistuksen takaisin sivun yläreunaan. Tämä voi tehdä käytöstä turhauttavaa tai sekavaa. [Lue lisää refresh-metatagin käyttämisestä](https://dequeuniversity.com/rules/axe/4.10/meta-refresh)."
448
448
  },
449
449
  "core/audits/accessibility/meta-refresh.js | failureTitle": {
450
450
  "message": "Dokumentissa on käytössä `<meta http-equiv=\"refresh\">`"
@@ -453,7 +453,7 @@
453
453
  "message": "Dokumentti ei käytä `<meta http-equiv=\"refresh\">`-tagia"
454
454
  },
455
455
  "core/audits/accessibility/meta-viewport.js | description": {
456
- "message": "Zoomauksen poistaminen käytöstä aiheuttaa ongelmia heikkonäköisille käyttäjille, jotka tarvitsevat näytön suurennusta nähdäkseen verkkosivun sisällön kunnolla. [Lue lisää viewport-metatagin käyttämisestä](https://dequeuniversity.com/rules/axe/4.9/meta-viewport)."
456
+ "message": "Zoomauksen poistaminen käytöstä aiheuttaa ongelmia heikkonäköisille käyttäjille, jotka tarvitsevat näytön suurennusta nähdäkseen verkkosivun sisällön kunnolla. [Lue lisää viewport-metatagin käyttämisestä](https://dequeuniversity.com/rules/axe/4.10/meta-viewport)."
457
457
  },
458
458
  "core/audits/accessibility/meta-viewport.js | failureTitle": {
459
459
  "message": "`[user-scalable=\"no\"]` on käytössä `<meta name=\"viewport\">`-elementissä tai `[maximum-scale]`-määrite on pienempi kuin 5"
@@ -462,7 +462,7 @@
462
462
  "message": "`[user-scalable=\"no\"]` ei ole käytössä `<meta name=\"viewport\">`-elementissä, ja `[maximum-scale]`-määrite on vähintään 5"
463
463
  },
464
464
  "core/audits/accessibility/object-alt.js | description": {
465
- "message": "Näytönlukuohjelmat eivät voi kääntää sisältöä, joka ei ole tekstiä. Vaihtoehtoisen tekstin lisääminen `<object>`-elementteihin auttaa näytönlukuohjelmia esittämään sisällön merkityksen käyttäjille. [Lue lisää `object`-elementin vaihtoehtoisesta tekstistä](https://dequeuniversity.com/rules/axe/4.9/object-alt)."
465
+ "message": "Näytönlukuohjelmat eivät voi kääntää sisältöä, joka ei ole tekstiä. Vaihtoehtoisen tekstin lisääminen `<object>`-elementteihin auttaa näytönlukuohjelmia esittämään sisällön merkityksen käyttäjille. [Lue lisää `object`-elementin vaihtoehtoisesta tekstistä](https://dequeuniversity.com/rules/axe/4.10/object-alt)."
466
466
  },
467
467
  "core/audits/accessibility/object-alt.js | failureTitle": {
468
468
  "message": "`<object>`-elementeissä ei ole vaihtoehtoista tekstiä."
@@ -471,7 +471,7 @@
471
471
  "message": "`<object>`-elementeissä on vaihtoehtoista tekstiä."
472
472
  },
473
473
  "core/audits/accessibility/select-name.js | description": {
474
- "message": "Jos lomake-elementeillä ei ole hyödyllisiä tunnisteita, käyttökokemus voi olla turhauttava näytönlukuohjelman käyttäjille. [Lue lisää `select`-elementistä](https://dequeuniversity.com/rules/axe/4.9/select-name)."
474
+ "message": "Jos lomake-elementeillä ei ole hyödyllisiä tunnisteita, käyttökokemus voi olla turhauttava näytönlukuohjelman käyttäjille. [Lue lisää `select`-elementistä](https://dequeuniversity.com/rules/axe/4.10/select-name)."
475
475
  },
476
476
  "core/audits/accessibility/select-name.js | failureTitle": {
477
477
  "message": "Tietyt elementit eivät sisällä tunniste-elementtejä."
@@ -480,7 +480,7 @@
480
480
  "message": "Tietyt elementit sisältävät tunniste-elementtejä."
481
481
  },
482
482
  "core/audits/accessibility/skip-link.js | description": {
483
- "message": "Ohituslinkin lisääminen voi auttaa käyttäjiä siirtymään pääsisältöön nopeammin. [Lue lisää ohituslinkeistä](https://dequeuniversity.com/rules/axe/4.9/skip-link)."
483
+ "message": "Ohituslinkin lisääminen voi auttaa käyttäjiä siirtymään pääsisältöön nopeammin. [Lue lisää ohituslinkeistä](https://dequeuniversity.com/rules/axe/4.10/skip-link)."
484
484
  },
485
485
  "core/audits/accessibility/skip-link.js | failureTitle": {
486
486
  "message": "Ohituslinkkejä ei voi kohdistaa."
@@ -489,7 +489,7 @@
489
489
  "message": "Ohitettavat linkit ovat kohdistettavissa."
490
490
  },
491
491
  "core/audits/accessibility/tabindex.js | description": {
492
- "message": "Navigointijärjestys on eksplisiittinen, jos arvo on suurempi kuin 0. Vaikka ratkaisu on teknisesti käypä, se tekee usein kokemuksesta turhauttavaa avustustekniikkaa tarvitseville käyttäjille. [Lue lisää `tabindex`‐määritteestä](https://dequeuniversity.com/rules/axe/4.9/tabindex)."
492
+ "message": "Navigointijärjestys on eksplisiittinen, jos arvo on suurempi kuin 0. Vaikka ratkaisu on teknisesti käypä, se tekee usein kokemuksesta turhauttavaa avustustekniikkaa tarvitseville käyttäjille. [Lue lisää `tabindex`‐määritteestä](https://dequeuniversity.com/rules/axe/4.10/tabindex)."
493
493
  },
494
494
  "core/audits/accessibility/tabindex.js | failureTitle": {
495
495
  "message": "Joidenkin elementtien `[tabindex]`-arvo on suurempi kuin 0"
@@ -498,7 +498,7 @@
498
498
  "message": "Yhdenkään elementin `[tabindex]`-arvo ei ole suurempi kuin 0"
499
499
  },
500
500
  "core/audits/accessibility/table-duplicate-name.js | description": {
501
- "message": "Yhteenvetomääritteen tulee kuvata taulukon rakennetta, kun taas `<caption>`-osiossa pitäisi olla näytöllä näkyvä otsikko. Tarkka taulukon merkintä auttaa näytönlukuohjelmien käyttäjiä. [Lue lisää yhteenvedosta ja kuvatekstistä](https://dequeuniversity.com/rules/axe/4.9/table-duplicate-name)."
501
+ "message": "Yhteenvetomääritteen tulee kuvata taulukon rakennetta, kun taas `<caption>`-osiossa pitäisi olla näytöllä näkyvä otsikko. Tarkka taulukon merkintä auttaa näytönlukuohjelmien käyttäjiä. [Lue lisää yhteenvedosta ja kuvatekstistä](https://dequeuniversity.com/rules/axe/4.10/table-duplicate-name)."
502
502
  },
503
503
  "core/audits/accessibility/table-duplicate-name.js | failureTitle": {
504
504
  "message": "Taulukoiden sisältö on sama yhteenvetomääritteessä ja täällä: `<caption>.`"
@@ -507,7 +507,7 @@
507
507
  "message": "Taulukoiden sisältö on eri yhteenvetomääritteessä ja täällä: `<caption>`"
508
508
  },
509
509
  "core/audits/accessibility/table-fake-caption.js | description": {
510
- "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelman käyttökokemusta varmistamalla, että taulukot käyttävät varsinaista tekstityselementtiä `[colspan]`-määritteen sisältävien solujen sijaan. [Katso lisätietoa tekstityksistä](https://dequeuniversity.com/rules/axe/4.9/table-fake-caption)."
510
+ "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelman käyttökokemusta varmistamalla, että taulukot käyttävät varsinaista tekstityselementtiä `[colspan]`-määritteen sisältävien solujen sijaan. [Katso lisätietoa tekstityksistä](https://dequeuniversity.com/rules/axe/4.10/table-fake-caption)."
511
511
  },
512
512
  "core/audits/accessibility/table-fake-caption.js | failureTitle": {
513
513
  "message": "Taulukoissa ei käytetä `<caption>`-määritettä sellaisten solujen sijaan, joissa on `[colspan]`-attribuutti tekstityksen merkkinä."
@@ -516,7 +516,7 @@
516
516
  "message": "Taulukoissa käytetään `<caption>`-määritettä sellaisten solujen sijaan, joissa on `[colspan]`-attribuutti tekstityksen merkkinä."
517
517
  },
518
518
  "core/audits/accessibility/target-size.js | description": {
519
- "message": "Kun kosketusalueilla on riittävän suuret välit ja koko, käyttäjien, joilla on vaikeuksia kohdistaa pieniin säätimiin, on helpompi aktivoida kohteita. [Lue lisää kosketusalueista](https://dequeuniversity.com/rules/axe/4.9/target-size)."
519
+ "message": "Kun kosketusalueilla on riittävän suuret välit ja koko, käyttäjien, joilla on vaikeuksia kohdistaa pieniin säätimiin, on helpompi aktivoida kohteita. [Lue lisää kosketusalueista](https://dequeuniversity.com/rules/axe/4.10/target-size)."
520
520
  },
521
521
  "core/audits/accessibility/target-size.js | failureTitle": {
522
522
  "message": "Kosketusalueiden koko tai välit eivät ole riittäviä."
@@ -525,7 +525,7 @@
525
525
  "message": "Kosketusalueiden koko ja välit ovat riittäviä."
526
526
  },
527
527
  "core/audits/accessibility/td-has-header.js | description": {
528
- "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelman käyttökokemusta varmistamalla, että suuren taulukon (vähintään kolme sarake- ja rivisolua) `<td>`-elementeillä on niihin liittyvä taulukon otsikko. [Lue lisää taulukoiden otsikoista](https://dequeuniversity.com/rules/axe/4.9/td-has-header)."
528
+ "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelman käyttökokemusta varmistamalla, että suuren taulukon (vähintään kolme sarake- ja rivisolua) `<td>`-elementeillä on niihin liittyvä taulukon otsikko. [Lue lisää taulukoiden otsikoista](https://dequeuniversity.com/rules/axe/4.10/td-has-header)."
529
529
  },
530
530
  "core/audits/accessibility/td-has-header.js | failureTitle": {
531
531
  "message": "Suuren `<table>`-elementin `<td>`-elementeillä ei ole otsikoita taulukoissa."
@@ -534,7 +534,7 @@
534
534
  "message": "Suuren `<table>`-elementin `<td>`-elementeillä on vähintään yksi otsikko taulukoissa."
535
535
  },
536
536
  "core/audits/accessibility/td-headers-attr.js | description": {
537
- "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelman käyttäjien kokemusta varmistamalla, että `[headers]`-määritettä käyttävät `<td>`-solut viittaavat vain toisiin soluihin samassa taulukossa. [Lue lisää `headers`‐määritteestä](https://dequeuniversity.com/rules/axe/4.9/td-headers-attr)."
537
+ "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelman käyttäjien kokemusta varmistamalla, että `[headers]`-määritettä käyttävät `<td>`-solut viittaavat vain toisiin soluihin samassa taulukossa. [Lue lisää `headers`‐määritteestä](https://dequeuniversity.com/rules/axe/4.10/td-headers-attr)."
538
538
  },
539
539
  "core/audits/accessibility/td-headers-attr.js | failureTitle": {
540
540
  "message": "`[headers]`-määritettä käyttävät `<table>`-elementin solut viittaavat elementtiin (`id`), joka ei ole samassa taulukossa."
@@ -543,7 +543,7 @@
543
543
  "message": "`[headers]`-määritettä käyttävät `<table>`-elementin solut viittaavat soluihin samassa taulukossa"
544
544
  },
545
545
  "core/audits/accessibility/th-has-data-cells.js | description": {
546
- "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelmaa käyttävien kokemusta varmistamalla, että taulukoiden otsikot viittaavat aina johonkin solujoukkoon. [Lue lisää taulukoiden otsikoista](https://dequeuniversity.com/rules/axe/4.9/th-has-data-cells)."
546
+ "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelmaa käyttävien kokemusta varmistamalla, että taulukoiden otsikot viittaavat aina johonkin solujoukkoon. [Lue lisää taulukoiden otsikoista](https://dequeuniversity.com/rules/axe/4.10/th-has-data-cells)."
547
547
  },
548
548
  "core/audits/accessibility/th-has-data-cells.js | failureTitle": {
549
549
  "message": "`<th>`-elementit ja elementit, joissa on `[role=\"columnheader\"/\"rowheader\"]`, eivät sisällä niissä kuvattuja datasoluja"
@@ -552,7 +552,7 @@
552
552
  "message": "`<th>`-elementit ja elementit, joissa on `[role=\"columnheader\"/\"rowheader\"]`, sisältävät niissä kuvatut datasolut"
553
553
  },
554
554
  "core/audits/accessibility/valid-lang.js | description": {
555
- "message": "Kelvollisen [BCP 47 language](https://www.w3.org/International/questions/qa-choosing-language-tags#question) ‑määritteen ilmoittaminen elementeille auttaa varmistamaan, että näytönlukuohjelma ääntää tekstin oikein. [Lue lisää `lang`‐määritteen käyttämisestä](https://dequeuniversity.com/rules/axe/4.9/valid-lang)."
555
+ "message": "Kelvollisen [BCP 47 language](https://www.w3.org/International/questions/qa-choosing-language-tags#question) ‑määritteen ilmoittaminen elementeille auttaa varmistamaan, että näytönlukuohjelma ääntää tekstin oikein. [Lue lisää `lang`‐määritteen käyttämisestä](https://dequeuniversity.com/rules/axe/4.10/valid-lang)."
556
556
  },
557
557
  "core/audits/accessibility/valid-lang.js | failureTitle": {
558
558
  "message": "`[lang]`-määritteiden arvot eivät ole kelvollisia"
@@ -561,7 +561,7 @@
561
561
  "message": "`[lang]`-määritteillä on kelvollinen arvo"
562
562
  },
563
563
  "core/audits/accessibility/video-caption.js | description": {
564
- "message": "Kun videossa on tekstitykset, kuurot ja heikkokuuloiset saavat videon tiedot paremmin. [Lue lisää videoiden tekstityksistä](https://dequeuniversity.com/rules/axe/4.9/video-caption)."
564
+ "message": "Kun videossa on tekstitykset, kuurot ja heikkokuuloiset saavat videon tiedot paremmin. [Lue lisää videoiden tekstityksistä](https://dequeuniversity.com/rules/axe/4.10/video-caption)."
565
565
  },
566
566
  "core/audits/accessibility/video-caption.js | failureTitle": {
567
567
  "message": "Elementit (`<video>`) eivät sisällä elementtiä (`<track>`), jossa on `[kind=\"captions\"]`"
@@ -1101,7 +1101,7 @@
1101
1101
  "message": "Sivun latautumisajan kuva ei latautunut laiskasti"
1102
1102
  },
1103
1103
  "core/audits/long-tasks.js | description": {
1104
- "message": "Näyttää pääsäikeen pitkäkestoisimmat tehtävät, mistä on apua syöttöviiveen pahimpien aiheuttajien tunnistamisessa. [Katso, miten voit välttää pitkät pääsäikeen tehtävät](https://web.dev/articles/long-tasks-devtools)."
1104
+ "message": "Näyttää pääsäikeen pitkäkestoisimmat tehtävät, mistä on apua syöttöviiveen pahimpien aiheuttajien tunnistamisessa. [Katso, miten voit välttää pitkät pääsäikeen tehtävät](https://web.dev/articles/optimize-long-tasks)."
1105
1105
  },
1106
1106
  "core/audits/long-tasks.js | displayValue": {
1107
1107
  "message": "{itemCount,plural, =1{# pitkäkestoinen tehtävä löydetty}other{# pitkäkestoista tehtävää löydetty}}"
@@ -1377,7 +1377,7 @@
1377
1377
  "message": "Palvelimen vasteaika alussa oli lyhyt"
1378
1378
  },
1379
1379
  "core/audits/third-party-cookies.js | description": {
1380
- "message": "Kolmannen osapuolen evästeiden tuki poistetaan Chromen tulevasta versiosta. [Lue lisää kolmannen osapuolen evästeiden käytöstä poistamisesta](https://developer.chrome.com/en/docs/privacy-sandbox/third-party-cookie-phase-out/)."
1380
+ "message": "Chromessa siirrytään uuteen käyttökokemukseen, jossa käyttäjät voivat valita selaamisen ilman kolmannen osapuolen evästeitä. [Lue lisää kolmannen osapuolen evästeistä](https://developers.google.com/privacy-sandbox/cookies)."
1381
1381
  },
1382
1382
  "core/audits/third-party-cookies.js | displayValue": {
1383
1383
  "message": "{itemCount,plural, =1{1 eväste löytyi}other{# evästettä löytyi}}"
@@ -1665,7 +1665,7 @@
1665
1665
  "message": "Selaimen välimuistin tyhjentäminen aikakatkaistiin. Tarkista sivu uudelleen ja ilmoita virheestä, jos ongelma jatkuu."
1666
1666
  },
1667
1667
  "core/gather/driver/storage.js | warningData": {
1668
- "message": "{locationCount,plural, =1{Tähän sijaintiin on voitu tallentaa dataa, joka vaikuttaa lataukseen: {locations}. Tarkista sivu incognito-ikkunassa, jotta voit estää kyseisten resurssien vaikutuksen tuloksiisi.}other{Näihin sijainteihin on voitu tallentaa dataa, joka vaikuttaa lataukseen: {locations}. Tarkista sivu incognito-ikkunassa, jotta voit estää kyseisten resurssien vaikutuksen tuloksiisi.}}"
1668
+ "message": "{locationCount,plural, =1{Tänne on voitu tallentaa dataa, joka vaikuttaa lataukseen: {locations}. Tarkista sivu incognito-ikkunassa, jotta voit estää resurssien vaikutuksen tuloksiisi.}other{Tänne on voitu tallentaa dataa, joka vaikuttaa lataukseen: {locations}. Tarkista sivu incognito-ikkunassa, jotta voit estää resurssien vaikutuksen tuloksiisi.}}"
1669
1669
  },
1670
1670
  "core/gather/driver/storage.js | warningOriginDataTimeout": {
1671
1671
  "message": "Alkuperädatan tyhjentäminen aikakatkaistiin. Tarkista sivu uudelleen ja ilmoita virheestä, jos ongelma jatkuu."
@@ -2616,7 +2616,7 @@
2616
2616
  "message": "Aikaväliraportti"
2617
2617
  },
2618
2618
  "flow-report/src/i18n/ui-strings.js | timespanReportCount": {
2619
- "message": "{numTimespan,plural, =1{{numTimespan} aikaväliraportti}other{{numTimespan} aikaväliraporttia}}"
2619
+ "message": "{numTimespan,plural, =1{{numTimespan} aikajanaraportti}other{{numTimespan} aikajanaraporttia}}"
2620
2620
  },
2621
2621
  "flow-report/src/i18n/ui-strings.js | title": {
2622
2622
  "message": "Lighthousen käyttökulkuraportti"
@@ -2658,49 +2658,55 @@
2658
2658
  "message": "Harkitse `BreakpointObserver` ‑avustajan käyttöä Component Dev Kitissä (CDK) kuvien raja-arvojen hallintaan. [Lue lisää](https://material.angular.io/cdk/layout/overview)."
2659
2659
  },
2660
2660
  "node_modules/lighthouse-stack-packs/packs/drupal.js | efficient-animated-content": {
2661
- "message": "GIF kannattaa ehkä ladata palveluun, jonka avulla se voidaan upottaa HTML5-videona."
2662
- },
2663
- "node_modules/lighthouse-stack-packs/packs/drupal.js | font-display": {
2664
- "message": "Valitse `@font-display`, kun määrität teemaasi yksilöityjä fontteja."
2661
+ "message": "`GIF` kannattaa ehkä ladata palveluun, jonka avulla se voidaan upottaa HTML5-videona."
2665
2662
  },
2666
2663
  "node_modules/lighthouse-stack-packs/packs/drupal.js | modern-image-formats": {
2667
2664
  "message": "Harkitse [WebP-kuvamuotojen määrittämistä Kuvan muuntaminen ‑tyylillä](https://www.drupal.org/docs/core-modules-and-themes/core-modules/image-module/working-with-images#styles) sivustollasi."
2668
2665
  },
2669
2666
  "node_modules/lighthouse-stack-packs/packs/drupal.js | offscreen-images": {
2670
- "message": "Asenna [Drupal-moduuli](https://www.drupal.org/project/project_module?f%5B0%5D=&f%5B1%5D=&f%5B2%5D=im_vid_3%3A67&f%5B3%5D=&f%5B4%5D=sm_field_project_type%3Afull&f%5B5%5D=&f%5B6%5D=&text=%22lazy+load%22&solrsort=iss_project_release_usage+desc&op=Search), joka voi ladata kuvia tarveohjatusti. Tällaiset moduulit voivat parantaa toimintaa lykkäämällä näytön ulkopuolella olevien kuvien lataamista."
2667
+ "message": "Harkitse laiskasti latautuvien kuvien määrittämistä `Drupal`issa. Kuvakentän muotoilutyökalut tukevat lataamisen eri muotoja (`lazy` tai `eager`)."
2668
+ },
2669
+ "node_modules/lighthouse-stack-packs/packs/drupal.js | prioritize-lcp-image": {
2670
+ "message": "Jos LCP-elementti on lisätty dynaamisesti sivulle, sinun pitää optimoida kuva LCP:n parantamiseksi. [Lue lisää](https://www.smashingmagazine.com/2023/08/methods-improving-drupal-largest-contentful-paint-core-web-vital/)."
2671
+ },
2672
+ "node_modules/lighthouse-stack-packs/packs/drupal.js | redirects": {
2673
+ "message": "Uudelleenohjaukset viivästyttävät sivun lataamista. Jos [Uudelleenohjaus](https://www.drupal.org/project/redirect)-moduuli on asennettu, tarkista, voiko tarpeettomia uudelleenohjauksia poistaa. [Lue lisää](https://developers.google.com/web/tools/lighthouse/audits/redirects)."
2671
2674
  },
2672
2675
  "node_modules/lighthouse-stack-packs/packs/drupal.js | render-blocking-resources": {
2673
- "message": "Sinun kannattaa ehkä käyttää moduulia, joka voi tuoda kriittistä CSS:ää tai JavaScriptiä sivun sisälle. Käytä myös lykkäämismääritettä ei-kriittiselle CSS:lle tai JavaScriptille."
2676
+ "message": "Sinun kannattaa ehkä käyttää [moduulia](https://www.drupal.org/project/critical_css), joka voi tuoda kriittistä CSS:ää tai JavaScriptiä sivun sisälle. Käytä myös lykkäämismääritettä ei-kriittiselle CSS:lle tai JavaScriptille."
2674
2677
  },
2675
2678
  "node_modules/lighthouse-stack-packs/packs/drupal.js | server-response-time": {
2676
- "message": "Teemat, moduulit ja palvelinasetukset vaikuttavat kaikki palvelimen vastausaikaan. Sinun kannattaa ehkä etsiä optimoidumpi teema, valita optimointimoduuli tai päivittää palvelimesi. Hosting-palvelimiesi olisi hyvä käyttää PHP-toimintokoodin ja muun sisällön tallentamista välimuistiin, mikä auttaa lyhentämään tietokantojen kyselyaikoja (esim. Redis tai Memcached). Lisäksi niiden tulee käyttää optimoitua sovelluslogiikkaa sivujen nopeampaan valmisteluun."
2679
+ "message": "Vähennä liikennettä käyttämällä yhtä tai useampaa `Drupal`-välimuistimoduulia, kuten `Internal Page Cache`, `Internal Dynamic Page Cache` ja `BigPipe`. Lisää CDN, niin voit parantaa vastausaikaa. Hostaavien palvelimiesi olisi hyvä käyttää PHP OPcachea. Harkitse muistin välimuistiin tallentamista (esim. Redis tai Memcached) tietokannan kyselyaikojen lyhentämiseksi. Voit lopuksi vähentää palvelimen vastausaikaa käyttämällä tehokkaita teemoja, moduuleja ja nopeampia palvelimia."
2677
2680
  },
2678
2681
  "node_modules/lighthouse-stack-packs/packs/drupal.js | total-byte-weight": {
2679
- "message": "Sinun kannattaa ehkä käyttää [Responsive Image Styles](https://www.drupal.org/docs/8/mobile-guide/responsive-images-in-drupal-8) (Responsiiviset kuvatyylit) ‑toimintoa sivullasi ladattavien kuvien pienentämiseen. Jos näytät sivulla useita kohteita Viewsin avulla, sinun kannattaa ehkä rajoittaa yhdellä sivulla näkyvien kohteiden määrää ottamalla sivunumerointi käyttöön."
2682
+ "message": "Sinun kannattaa ehkä käyttää [Responsive Image Styles](https://www.drupal.org/documentation/modules/responsive_image) (Responsiiviset kuvatyylit) ‑toimintoa sivullasi ladattavien kuvien pienentämiseen. Jos näytät sivulla useita kohteita `Views`in avulla, sinun kannattaa ehkä rajoittaa yhdellä sivulla näkyvien kohteiden määrää ottamalla sivunumerointi käyttöön."
2680
2683
  },
2681
2684
  "node_modules/lighthouse-stack-packs/packs/drupal.js | unminified-css": {
2682
- "message": "Varmista, että Aggregate CSS files (Kokoa CSS-tiedostot) ‑toiminto on otettu käyttöön kohdassa Administration > Configuration > Development (Järjestelmänvalvonta > Määritys > Kehitys). Varmista, että Drupal-sivuston käyttöjärjestelmä on vähintään Drupal 10.1, niin saat paremman elementtien koonnin tuen."
2685
+ "message": "Varmista, että Aggregate CSS files (Kokoa CSS-tiedostot) ‑toiminto on otettu käyttöön kohdassa Administration > Configuration > Development (Järjestelmänvalvonta > Määritys > Kehitys)."
2683
2686
  },
2684
2687
  "node_modules/lighthouse-stack-packs/packs/drupal.js | unminified-javascript": {
2685
- "message": "Varmista, että Aggregate JavaScript files (Kokoa JavaScript-tiedostot) ‑toiminto on otettu käyttöön kohdassa Administration > Configuration > Development (Järjestelmänvalvonta > Määritys > Kehitys). Varmista, että Drupal-sivuston käyttöjärjestelmä on vähintään Drupal 10.1, niin saat paremman elementtien koonnin tuen."
2688
+ "message": "Varmista, että Aggregate JavaScript files (Kokoa JavaScript-tiedostot) ‑toiminto on otettu käyttöön kohdassa Administration > Configuration > Development (Järjestelmänvalvonta > Määritys > Kehitys)."
2686
2689
  },
2687
2690
  "node_modules/lighthouse-stack-packs/packs/drupal.js | unused-css-rules": {
2688
- "message": "Sinun kannattaa ehkä poistaa käyttämättömät CSS-säännöt ja liittää relevanttiin sivuun tai sivun osaan vain tarvittavat Drupal-kirjastot. Saat lisätietoja [Drupal-dokumentaatiosta](https://www.drupal.org/docs/8/creating-custom-modules/adding-stylesheets-css-and-javascript-js-to-a-drupal-8-module#library). Voit etsiä tarpeetonta CSS:ää lisääviä liitettyjä kirjastoja tutkimalla [koodin testikattavuutta](https://developers.google.com/web/updates/2017/04/devtools-release-notes#coverage) Chromen DevToolsissa. Löydät syynä olevan teeman tai moduulin tarkistamalla tyyliarkin URL-osoitteen, kun CSS-koonti on poistettuna käytöstä Drupal-sivustollasi. Etsi teemoja ja moduuleja, joilla on monia tyyliarkkeja luettelossa ja paljon punaista koodin testikattavuudessa. Teeman tai moduulin pitäisi lisätä tyyliarkki jonoon vain, jos sitä todella käytetään sivulla."
2691
+ "message": "Sinun kannattaa ehkä poistaa käyttämättömät CSS-säännöt ja liittää relevanttiin sivuun tai sivun osaan vain tarvittavat `Drupal`-kirjastot. Lisätietoja on [`Drupal`-dokumentaatiossa](https://www.drupal.org/docs/develop/theming-drupal/adding-assets-css-js-to-a-drupal-theme-via-librariesyml#define). Voit etsiä tarpeetonta CSS:ää lisääviä liitettyjä kirjastoja tutkimalla [koodin testikattavuutta](https://developer.chrome.com/docs/devtools/coverage) Chromen DevToolsissa. Löydät syynä olevan teeman tai moduulin tarkistamalla tyyliarkin URL-osoitteen, kun CSS-koonti on poistettuna käytöstä `Drupal`-sivustollasi. Etsi teemoja ja moduuleja, joilla on monia tyyliarkkeja luettelossa ja paljon punaista koodin testikattavuudessa. Teeman tai moduulin pitäisi liittää tyyliarkkikirjasto vain, jos sitä todella käytetään sivulla."
2689
2692
  },
2690
2693
  "node_modules/lighthouse-stack-packs/packs/drupal.js | unused-javascript": {
2691
- "message": "Sinun kannattaa ehkä poistaa käyttämätön JavaScript-sisältö ja liittää relevanttiin sivuun tai sivun osaan vain tarvittavat Drupal-kirjastot. Saat lisätietoja [Drupal-dokumentaatiosta](https://www.drupal.org/docs/8/creating-custom-modules/adding-stylesheets-css-and-javascript-js-to-a-drupal-8-module#library). Voit etsiä tarpeetonta JavaScriptiä lisääviä liitettyjä kirjastoja tutkimalla [koodin testikattavuutta](https://developers.google.com/web/updates/2017/04/devtools-release-notes#coverage) Chromen DevToolsissa. Löydät syynä olevan teeman tai moduulin tarkistamalla skriptin URL-osoitteen, kun JavaScript-koonti on poistettuna käytöstä Drupal-sivustollasi. Etsi teemoja ja moduuleja, joilla on monia skriptejä luettelossa ja paljon punaista koodin testikattavuudessa. Teeman tai moduulin pitäisi lisätä skripti jonoon vain, jos sitä todella käytetään sivulla."
2694
+ "message": "Sinun kannattaa ehkä poistaa käyttämätön JavaScript-sisältö ja liittää relevanttiin sivuun tai sivun osaan vain tarvittavat `Drupal`-kirjastot. Saat lisätietoja [Drupal-dokumentaatiosta](https://www.drupal.org/docs/develop/theming-drupal/adding-assets-css-js-to-a-drupal-theme-via-librariesyml#define). Voit etsiä tarpeetonta JavaScriptiä lisääviä liitettyjä kirjastoja tutkimalla [koodin testikattavuutta](https://developer.chrome.com/docs/devtools/coverage) Chromen DevToolsissa. Löydät syynä olevan teeman tai moduulin tarkistamalla skriptin URL-osoitteen, kun JavaScript-koonti on poistettuna käytöstä `Drupal`-sivustollasi. Etsi teemoja ja moduuleja, joilla on monia skriptejä luettelossa ja paljon punaista koodin testikattavuudessa. Teeman tai moduulin pitäisi liittää skriptikirjasto vain, jos sitä oikeasti käytetään sivulla."
2692
2695
  },
2693
2696
  "node_modules/lighthouse-stack-packs/packs/drupal.js | uses-long-cache-ttl": {
2694
- "message": "Määritä Browser and proxy cache maximum age (Selaimen ja välityspalvelimen välitysmuistin enimmäisikä) ‑asetus kohdassa Administration > Configuration > Development (Järjestelmänvalvonta > Määritys > Kehitys). Lue lisää [Drupalin välimuistista ja toiminnan optimoinnista](https://www.drupal.org/docs/7/managing-site-performance-and-scalability/caching-to-improve-performance/caching-overview#s-drupal-performance-resources)."
2697
+ "message": "Määritä Browser and proxy cache maximum age (Selaimen ja välityspalvelimen välitysmuistin enimmäisikä) ‑asetus kohdassa Administration > Configuration > Development (Järjestelmänvalvonta > Määritys > Kehitys). Lue lisää [`Drupal`in välimuistista ja toiminnan optimoinnista](https://www.drupal.org/docs/8/api/cache-api/cache-api)."
2695
2698
  },
2696
2699
  "node_modules/lighthouse-stack-packs/packs/drupal.js | uses-optimized-images": {
2697
- "message": "Sinun kannattaa ehkä käyttää [moduulia](https://www.drupal.org/project/project_module?f%5B0%5D=&f%5B1%5D=&f%5B2%5D=im_vid_3%3A123&f%5B3%5D=&f%5B4%5D=sm_field_project_type%3Afull&f%5B5%5D=&f%5B6%5D=&text=optimize+images&solrsort=iss_project_release_usage+desc&op=Search), joka optimoi ja pienentää sivuston kautta ladattuja kuvia, mutta säilyttää niiden laadun. Varmista lisäksi, että käytät kaikkien sivustolla renderöitävien kuvien kanssa Drupalin natiivia [Responsive Image Styles](https://www.drupal.org/docs/8/mobile-guide/responsive-images-in-drupal-8) (Responsiiviset kuvatyylit) ‑toimintoa, joka on saatavilla Drupalin versiosta 8 alkaen."
2700
+ "message": "Sinun kannattaa ehkä käyttää [moduulia](https://www.drupal.org/project/project_module?f%5B0%5D=&f%5B1%5D=&f%5B2%5D=im_vid_3%3A123&f%5B3%5D=&f%5B4%5D=sm_field_project_type%3Afull&f%5B5%5D=&f%5B6%5D=&text=image&solrsort=iss_project_release_usage+desc&op=Search), joka optimoi ja pienentää sivuston kautta ladattuja kuvia, mutta säilyttää niiden laadun. Varmista lisäksi, että käytät kaikkien sivustolla renderöitävien kuvien kanssa `Drupal`in natiivia [Responsive Image Styles](https://www.drupal.org/documentation/modules/responsive_image) (Responsiiviset kuvatyylit) ‑toimintoa."
2698
2701
  },
2699
2702
  "node_modules/lighthouse-stack-packs/packs/drupal.js | uses-rel-preconnect": {
2700
- "message": "Voit lisätä preconnect- tai dns-prefetch-resurssivihjeitä asentamalla ja määrittämällä [moduulin](https://www.drupal.org/project/project_module?f%5B0%5D=&f%5B1%5D=&f%5B2%5D=&f%5B3%5D=&f%5B4%5D=sm_field_project_type%3Afull&f%5B5%5D=&f%5B6%5D=&text=dns-prefetch&solrsort=iss_project_release_usage+desc&op=Search), joka edesauttaa käyttäjäagentin resurssivihjeiden toimintaa."
2703
+ "message": "Voit lisätä `Preconnect`- tai `dns-prefetch`-resurssivihjeitä asentamalla ja määrittämällä [moduulin](https://www.drupal.org/project/project_module?f%5B0%5D=&f%5B1%5D=&f%5B2%5D=&f%5B3%5D=&f%5B4%5D=sm_field_project_type%3Afull&f%5B5%5D=&f%5B6%5D=&text=Preconnect&solrsort=score+desc&op=Search), joka edesauttaa käyttäjäagentin resurssivihjeiden toimintaa."
2701
2704
  },
2702
2705
  "node_modules/lighthouse-stack-packs/packs/drupal.js | uses-responsive-images": {
2703
- "message": "Varmista, että käytät Drupalin natiivia [Responsive Image Styles](https://www.drupal.org/docs/8/mobile-guide/responsive-images-in-drupal-8) (Responsiiviset kuvatyylit) ‑toimintoa, joka on saatavilla Drupalin versiosta 8 alkaen. Käytä Responsive Image Styles ‑toimintoa, kun renderöit kuvakenttiä hyödyntämällä katselutiloja, näkymiä tai WYSIWYG-muokkaustyökalulla ladattuja kuvia."
2706
+ "message": "Varmista, että käytät `Drupal`in natiivia [Responsive Image Styles](https://www.drupal.org/documentation/modules/responsive_image) (Responsiiviset kuvatyylit) ‑toimintoa. Käytä Responsive Image Styles ‑toimintoa, kun renderöit kuvakenttiä hyödyntämällä katselutiloja, näkymiä tai WYSIWYG-muokkaustyökalulla ladattuja kuvia."
2707
+ },
2708
+ "node_modules/lighthouse-stack-packs/packs/drupal.js | uses-text-compression": {
2709
+ "message": "Tekstipohjaiset resurssit on hyvä pakata ennen jakelua (gzip, deflate tai brotli), jotta ladattavien tavujen määrä voidaan minimoida. Voit käyttää CDN:ää, joka tukee tätä ominaisuutta, tai määrittää verkkopalvelimen suorittamaan tämän toiminnon. [Lue lisää](https://developers.google.com/web/tools/lighthouse/audits/text-compression)."
2704
2710
  },
2705
2711
  "node_modules/lighthouse-stack-packs/packs/ezoic.js | font-display": {
2706
2712
  "message": "Käytä [Ezoic Leapia](https://pubdash.ezoic.com/speed) ja ota `Optimize Fonts` käyttöön hyödyntääksesi `font-display` CSS ‑ominaisuutta automaattisesti, jotta voit varmistaa tekstin näkymisen käyttäjille verkkofonttien latautuessa."
@@ -2897,9 +2903,6 @@
2897
2903
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | render-blocking-resources": {
2898
2904
  "message": "Ota [`Remove render-blocking resources`](https://support.nitropack.io/hc/en-us/articles/13820893500049-How-to-Deal-with-Render-Blocking-Resources-in-NitroPack) käyttöön NitroPackissa ensimmäisen latautumisajan nopeuttamiseksi."
2899
2905
  },
2900
- "node_modules/lighthouse-stack-packs/packs/nitropack.js | server-response-time": {
2901
- "message": "Paranna palvelimen vastausaikaa ja optimoi suorituskyvyn vaikutelmaa aktivoimalla [`Instant Load`](https://support.nitropack.io/hc/en-us/articles/16547340617361)."
2902
- },
2903
2906
  "node_modules/lighthouse-stack-packs/packs/nitropack.js | unminified-css": {
2904
2907
  "message": "Ota [`Minify resources`](https://support.nitropack.io/hc/en-us/articles/360061059394-Minify-Resources) käyttöön välimuistin asetuksista pienentääksesi CSS:n ja HTML:n kokoa ja nopeuttaaksesi JavaScriptin tiedostojen ensimmäistä latautumisaikaa."
2905
2908
  },
@@ -3033,7 +3036,7 @@
3033
3036
  "message": "Monet WordPress-laajennukset voivat [tuoda tärkeää materiaalia sivun sisälle](https://wordpress.org/plugins/search/critical+css/) tai [lykätä vähemmän tärkeiden resurssien lataamista](https://wordpress.org/plugins/search/defer+css+javascript/). Huomaa, että näiden laajennusten tuomat optimoinnit voivat rikkoa teeman tai laajennusten toimintoja, joten sinun on todennäköisesti muutettava koodia."
3034
3037
  },
3035
3038
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | server-response-time": {
3036
- "message": "Teemat, laajennukset ja palvelinasetukset vaikuttavat kaikki palvelimen vastausaikaan. Sinun kannattaa ehkä etsiä optimoidumpi teema, valita optimointilaajennus tai päivittää palvelimesi."
3039
+ "message": "Valitse kevyt teema (mieluiten lohkoteema) ja ota käyttöön koko sivun välimuisti tai staattinen sivustoratkaisu. Poista tarpeettomat laajennukset käytöstä, jotta palvelimen kustannukset minimoituvat. Harkitse päivittämistä hallinnoituun tai omistettuun palveluun."
3037
3040
  },
3038
3041
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | total-byte-weight": {
3039
3042
  "message": "Sinun kannattaa ehkä näyttää postausluettelossa katkelmia (esim. more-tagin avulla), näyttää yhdellä sivulla vähemmän postauksia, jakaa pitkät postaukset usealle sivulle tai käyttää kommenttien lazy load ‑laajennusta."