lighthouse 10.4.0 → 11.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (288) hide show
  1. package/CONTRIBUTING.md +1 -1
  2. package/cli/cli-flags.d.ts +1 -6
  3. package/cli/cli-flags.js +0 -5
  4. package/cli/run.js +3 -10
  5. package/cli/sentry-prompt.js +4 -2
  6. package/cli/test/smokehouse/core-tests.js +0 -2
  7. package/cli/test/smokehouse/frontends/smokehouse-bin.js +24 -14
  8. package/cli/test/smokehouse/lighthouse-runners/bundle.d.ts +1 -2
  9. package/cli/test/smokehouse/lighthouse-runners/bundle.js +12 -21
  10. package/cli/test/smokehouse/lighthouse-runners/cli.d.ts +1 -3
  11. package/cli/test/smokehouse/lighthouse-runners/cli.js +3 -7
  12. package/cli/test/smokehouse/lighthouse-runners/devtools.d.ts +1 -5
  13. package/cli/test/smokehouse/lighthouse-runners/devtools.js +1 -12
  14. package/cli/test/smokehouse/readme.md +0 -2
  15. package/cli/test/smokehouse/report-assert.d.ts +1 -3
  16. package/cli/test/smokehouse/report-assert.js +2 -19
  17. package/cli/test/smokehouse/smokehouse.js +3 -32
  18. package/core/audits/accessibility/aria-allowed-role.d.ts +10 -0
  19. package/core/audits/accessibility/aria-allowed-role.js +46 -0
  20. package/core/audits/accessibility/image-redundant-alt.d.ts +10 -0
  21. package/core/audits/accessibility/image-redundant-alt.js +45 -0
  22. package/core/audits/accessibility/label-content-name-mismatch.d.ts +10 -0
  23. package/core/audits/accessibility/label-content-name-mismatch.js +44 -0
  24. package/core/audits/accessibility/skip-link.d.ts +10 -0
  25. package/core/audits/accessibility/skip-link.js +43 -0
  26. package/core/audits/accessibility/table-duplicate-name.d.ts +10 -0
  27. package/core/audits/accessibility/table-duplicate-name.js +44 -0
  28. package/core/audits/accessibility/target-size.js +1 -1
  29. package/core/audits/byte-efficiency/duplicated-javascript.js +2 -2
  30. package/core/audits/byte-efficiency/render-blocking-resources.js +1 -0
  31. package/core/audits/dobetterweb/uses-http2.d.ts +18 -1
  32. package/core/audits/dobetterweb/uses-http2.js +62 -16
  33. package/core/audits/installable-manifest.d.ts +1 -5
  34. package/core/audits/installable-manifest.js +2 -7
  35. package/core/audits/largest-contentful-paint-element.d.ts +0 -6
  36. package/core/audits/largest-contentful-paint-element.js +13 -15
  37. package/core/audits/metrics/{experimental-interaction-to-next-paint.d.ts → interaction-to-next-paint.d.ts} +3 -3
  38. package/core/audits/metrics/{experimental-interaction-to-next-paint.js → interaction-to-next-paint.js} +3 -3
  39. package/core/audits/uses-rel-preconnect.js +23 -8
  40. package/core/audits/work-during-interaction.js +2 -2
  41. package/core/computed/processed-navigation.d.ts +1 -1
  42. package/core/config/config-helpers.d.ts +3 -3
  43. package/core/config/config-helpers.js +5 -12
  44. package/core/config/config.js +1 -7
  45. package/core/config/constants.d.ts +0 -2
  46. package/core/config/constants.js +2 -18
  47. package/core/config/default-config.js +59 -53
  48. package/core/config/filters.js +1 -1
  49. package/core/config/validation.d.ts +7 -12
  50. package/core/config/validation.js +16 -26
  51. package/core/gather/base-artifacts.d.ts +4 -4
  52. package/core/gather/base-artifacts.js +2 -6
  53. package/core/gather/base-gatherer.d.ts +12 -37
  54. package/core/gather/base-gatherer.js +7 -54
  55. package/core/gather/driver/dom.d.ts +4 -4
  56. package/core/gather/driver/dom.js +2 -2
  57. package/core/gather/driver/environment.d.ts +4 -4
  58. package/core/gather/driver/environment.js +2 -2
  59. package/core/gather/driver/execution-context.d.ts +12 -3
  60. package/core/gather/driver/execution-context.js +34 -3
  61. package/core/gather/driver/navigation.d.ts +2 -2
  62. package/core/gather/driver/navigation.js +2 -5
  63. package/core/gather/driver/network-monitor.d.ts +7 -6
  64. package/core/gather/driver/network-monitor.js +4 -4
  65. package/core/gather/driver/network.d.ts +2 -2
  66. package/core/gather/driver/network.js +1 -1
  67. package/core/gather/driver/prepare.d.ts +10 -10
  68. package/core/gather/driver/prepare.js +10 -10
  69. package/core/gather/driver/service-workers.d.ts +4 -4
  70. package/core/gather/driver/service-workers.js +2 -2
  71. package/core/gather/driver/storage.d.ts +6 -6
  72. package/core/gather/driver/storage.js +3 -3
  73. package/core/gather/driver/target-manager.d.ts +6 -5
  74. package/core/gather/driver/target-manager.js +3 -3
  75. package/core/gather/driver/wait-for-condition.d.ts +14 -14
  76. package/core/gather/driver/wait-for-condition.js +8 -8
  77. package/core/gather/driver.d.ts +9 -6
  78. package/core/gather/driver.js +14 -4
  79. package/core/gather/fetcher.d.ts +3 -3
  80. package/core/gather/fetcher.js +1 -1
  81. package/core/gather/gatherers/accessibility.d.ts +4 -4
  82. package/core/gather/gatherers/accessibility.js +8 -3
  83. package/core/gather/gatherers/anchor-elements.d.ts +4 -4
  84. package/core/gather/gatherers/anchor-elements.js +4 -4
  85. package/core/gather/gatherers/bf-cache-failures.d.ts +8 -14
  86. package/core/gather/gatherers/bf-cache-failures.js +5 -14
  87. package/core/gather/gatherers/cache-contents.d.ts +4 -4
  88. package/core/gather/gatherers/cache-contents.js +3 -3
  89. package/core/gather/gatherers/console-messages.d.ts +6 -6
  90. package/core/gather/gatherers/console-messages.js +4 -4
  91. package/core/gather/gatherers/css-usage.d.ts +14 -14
  92. package/core/gather/gatherers/css-usage.js +9 -9
  93. package/core/gather/gatherers/devtools-log-compat.d.ts +5 -5
  94. package/core/gather/gatherers/devtools-log-compat.js +4 -4
  95. package/core/gather/gatherers/devtools-log.d.ts +6 -6
  96. package/core/gather/gatherers/devtools-log.js +4 -4
  97. package/core/gather/gatherers/dobetterweb/doctype.d.ts +4 -4
  98. package/core/gather/gatherers/dobetterweb/doctype.js +3 -3
  99. package/core/gather/gatherers/dobetterweb/domstats.d.ts +4 -4
  100. package/core/gather/gatherers/dobetterweb/domstats.js +3 -3
  101. package/core/gather/gatherers/dobetterweb/optimized-images.d.ts +10 -22
  102. package/core/gather/gatherers/dobetterweb/optimized-images.js +10 -27
  103. package/core/gather/gatherers/dobetterweb/response-compression.d.ts +6 -12
  104. package/core/gather/gatherers/dobetterweb/response-compression.js +14 -21
  105. package/core/gather/gatherers/dobetterweb/tags-blocking-first-paint.d.ts +8 -14
  106. package/core/gather/gatherers/dobetterweb/tags-blocking-first-paint.js +5 -14
  107. package/core/gather/gatherers/full-page-screenshot.d.ts +10 -10
  108. package/core/gather/gatherers/full-page-screenshot.js +7 -10
  109. package/core/gather/gatherers/global-listeners.d.ts +4 -4
  110. package/core/gather/gatherers/global-listeners.js +3 -3
  111. package/core/gather/gatherers/iframe-elements.d.ts +4 -4
  112. package/core/gather/gatherers/iframe-elements.js +3 -3
  113. package/core/gather/gatherers/image-elements.d.ts +10 -10
  114. package/core/gather/gatherers/image-elements.js +6 -6
  115. package/core/gather/gatherers/inputs.d.ts +4 -4
  116. package/core/gather/gatherers/inputs.js +3 -3
  117. package/core/gather/gatherers/inspector-issues.d.ts +8 -19
  118. package/core/gather/gatherers/inspector-issues.js +9 -26
  119. package/core/gather/gatherers/installability-errors.d.ts +6 -6
  120. package/core/gather/gatherers/installability-errors.js +4 -4
  121. package/core/gather/gatherers/js-usage.d.ts +6 -6
  122. package/core/gather/gatherers/js-usage.js +4 -4
  123. package/core/gather/gatherers/link-elements.d.ts +8 -20
  124. package/core/gather/gatherers/link-elements.js +7 -24
  125. package/core/gather/gatherers/main-document-content.d.ts +4 -16
  126. package/core/gather/gatherers/main-document-content.js +5 -23
  127. package/core/gather/gatherers/meta-elements.d.ts +4 -4
  128. package/core/gather/gatherers/meta-elements.js +3 -3
  129. package/core/gather/gatherers/network-user-agent.d.ts +5 -5
  130. package/core/gather/gatherers/network-user-agent.js +4 -4
  131. package/core/gather/gatherers/script-elements.d.ts +6 -11
  132. package/core/gather/gatherers/script-elements.js +4 -13
  133. package/core/gather/gatherers/scripts.d.ts +7 -6
  134. package/core/gather/gatherers/scripts.js +7 -9
  135. package/core/gather/gatherers/seo/embedded-content.d.ts +4 -4
  136. package/core/gather/gatherers/seo/embedded-content.js +3 -3
  137. package/core/gather/gatherers/seo/font-size.d.ts +6 -6
  138. package/core/gather/gatherers/seo/font-size.js +5 -5
  139. package/core/gather/gatherers/seo/robots-txt.d.ts +4 -4
  140. package/core/gather/gatherers/seo/robots-txt.js +3 -3
  141. package/core/gather/gatherers/seo/tap-targets.d.ts +8 -8
  142. package/core/gather/gatherers/seo/tap-targets.js +5 -5
  143. package/core/gather/gatherers/service-worker.d.ts +4 -10
  144. package/core/gather/gatherers/service-worker.js +3 -15
  145. package/core/gather/gatherers/source-maps.d.ts +11 -23
  146. package/core/gather/gatherers/source-maps.js +22 -53
  147. package/core/gather/gatherers/stacks.d.ts +7 -7
  148. package/core/gather/gatherers/stacks.js +6 -6
  149. package/core/gather/gatherers/trace-compat.d.ts +5 -5
  150. package/core/gather/gatherers/trace-compat.js +4 -4
  151. package/core/gather/gatherers/trace-elements.d.ts +13 -25
  152. package/core/gather/gatherers/trace-elements.js +19 -32
  153. package/core/gather/gatherers/trace.d.ts +8 -8
  154. package/core/gather/gatherers/trace.js +5 -5
  155. package/core/gather/gatherers/viewport-dimensions.d.ts +4 -4
  156. package/core/gather/gatherers/viewport-dimensions.js +3 -3
  157. package/core/gather/gatherers/web-app-manifest.d.ts +8 -8
  158. package/core/gather/gatherers/web-app-manifest.js +5 -5
  159. package/core/gather/navigation-runner.d.ts +9 -9
  160. package/core/gather/navigation-runner.js +14 -8
  161. package/core/gather/runner-helpers.d.ts +3 -3
  162. package/core/gather/runner-helpers.js +12 -4
  163. package/core/gather/session.d.ts +2 -2
  164. package/core/gather/session.js +1 -1
  165. package/core/gather/snapshot-runner.d.ts +2 -2
  166. package/core/gather/snapshot-runner.js +1 -1
  167. package/core/gather/timespan-runner.d.ts +2 -2
  168. package/core/gather/timespan-runner.js +1 -1
  169. package/core/index.cjs +0 -7
  170. package/core/index.d.ts +0 -15
  171. package/core/index.js +2 -40
  172. package/core/lib/asset-saver.js +14 -4
  173. package/core/lib/axe.js +1 -1
  174. package/core/lib/dependency-graph/simulator/network-analyzer.d.ts +28 -12
  175. package/core/lib/dependency-graph/simulator/network-analyzer.js +128 -100
  176. package/core/lib/emulation.d.ts +14 -14
  177. package/core/lib/emulation.js +7 -7
  178. package/core/lib/navigation-error.js +5 -0
  179. package/core/lib/network-recorder.d.ts +2 -1
  180. package/core/lib/network-recorder.js +1 -0
  181. package/core/lib/network-request.js +12 -3
  182. package/core/lib/page-functions.d.ts +10 -2
  183. package/core/lib/page-functions.js +85 -8
  184. package/core/lib/sentry.js +9 -2
  185. package/core/lib/stack-packs.js +4 -0
  186. package/core/runner.d.ts +8 -30
  187. package/core/runner.js +8 -39
  188. package/core/user-flow.d.ts +4 -4
  189. package/core/user-flow.js +2 -2
  190. package/dist/report/bundle.esm.js +2221 -5832
  191. package/dist/report/flow.js +2631 -235
  192. package/dist/report/standalone.js +2586 -234
  193. package/flow-report/src/i18n/i18n.d.ts +2 -2
  194. package/package.json +17 -24
  195. package/readme.md +3 -1
  196. package/report/assets/templates.html +3 -1
  197. package/report/renderer/category-renderer.d.ts +3 -2
  198. package/report/renderer/category-renderer.js +8 -4
  199. package/report/renderer/components.js +11 -5
  200. package/report/renderer/pwa-category-renderer.js +1 -1
  201. package/report/renderer/report-ui-features.js +9 -6
  202. package/report/renderer/report-utils.d.ts +1 -1
  203. package/report/renderer/report-utils.js +2 -2
  204. package/report/renderer/topbar-features.js +3 -0
  205. package/shared/localization/locales/ar-XB.json +185 -44
  206. package/shared/localization/locales/ar.json +185 -44
  207. package/shared/localization/locales/bg.json +185 -44
  208. package/shared/localization/locales/ca.json +190 -49
  209. package/shared/localization/locales/cs.json +185 -44
  210. package/shared/localization/locales/da.json +185 -44
  211. package/shared/localization/locales/de.json +185 -44
  212. package/shared/localization/locales/el.json +185 -44
  213. package/shared/localization/locales/en-GB.json +185 -44
  214. package/shared/localization/locales/en-US.json +99 -45
  215. package/shared/localization/locales/en-XA.json +185 -44
  216. package/shared/localization/locales/en-XL.json +99 -45
  217. package/shared/localization/locales/es-419.json +185 -44
  218. package/shared/localization/locales/es.json +185 -44
  219. package/shared/localization/locales/fi.json +185 -44
  220. package/shared/localization/locales/fil.json +185 -44
  221. package/shared/localization/locales/fr.json +185 -44
  222. package/shared/localization/locales/he.json +186 -45
  223. package/shared/localization/locales/hi.json +185 -44
  224. package/shared/localization/locales/hr.json +185 -44
  225. package/shared/localization/locales/hu.json +185 -44
  226. package/shared/localization/locales/id.json +185 -44
  227. package/shared/localization/locales/it.json +185 -44
  228. package/shared/localization/locales/ja.json +185 -44
  229. package/shared/localization/locales/ko.json +185 -44
  230. package/shared/localization/locales/lt.json +185 -44
  231. package/shared/localization/locales/lv.json +185 -44
  232. package/shared/localization/locales/nl.json +185 -44
  233. package/shared/localization/locales/no.json +185 -44
  234. package/shared/localization/locales/pl.json +185 -44
  235. package/shared/localization/locales/pt-PT.json +185 -44
  236. package/shared/localization/locales/pt.json +190 -49
  237. package/shared/localization/locales/ro.json +185 -44
  238. package/shared/localization/locales/ru.json +185 -44
  239. package/shared/localization/locales/sk.json +185 -44
  240. package/shared/localization/locales/sl.json +185 -44
  241. package/shared/localization/locales/sr-Latn.json +185 -44
  242. package/shared/localization/locales/sr.json +185 -44
  243. package/shared/localization/locales/sv.json +185 -44
  244. package/shared/localization/locales/ta.json +185 -44
  245. package/shared/localization/locales/te.json +185 -44
  246. package/shared/localization/locales/th.json +185 -44
  247. package/shared/localization/locales/tr.json +185 -44
  248. package/shared/localization/locales/uk.json +185 -44
  249. package/shared/localization/locales/vi.json +185 -44
  250. package/shared/localization/locales/zh-HK.json +185 -44
  251. package/shared/localization/locales/zh-TW.json +185 -44
  252. package/shared/localization/locales/zh.json +185 -44
  253. package/third-party/esbuild-plugins-polyfills/LICENSE +3 -0
  254. package/third-party/esbuild-plugins-polyfills/README.md +7 -0
  255. package/third-party/esbuild-plugins-polyfills/esbuild-polyfills.d.ts +9 -0
  256. package/third-party/esbuild-plugins-polyfills/esbuild-polyfills.js +129 -0
  257. package/tsconfig.json +2 -1
  258. package/types/artifacts.d.ts +16 -45
  259. package/types/config.d.ts +10 -52
  260. package/types/externs.d.ts +0 -2
  261. package/types/gatherer.d.ts +24 -47
  262. package/types/internal/rxjs.d.ts +26 -0
  263. package/types/internal/smokehouse.d.ts +1 -3
  264. package/types/lh.d.ts +0 -2
  265. package/types/lhr/settings.d.ts +1 -1
  266. package/core/audits/metrics/first-contentful-paint-3g.d.ts +0 -15
  267. package/core/audits/metrics/first-contentful-paint-3g.js +0 -69
  268. package/core/audits/resource-summary.d.ts +0 -16
  269. package/core/audits/resource-summary.js +0 -104
  270. package/core/audits/service-worker.d.ts +0 -46
  271. package/core/audits/service-worker.js +0 -182
  272. package/core/gather/gatherers/gatherer.d.ts +0 -46
  273. package/core/gather/gatherers/gatherer.js +0 -58
  274. package/core/legacy/config/config.d.ts +0 -107
  275. package/core/legacy/config/config.js +0 -566
  276. package/core/legacy/config/legacy-default-config.d.ts +0 -4
  277. package/core/legacy/config/legacy-default-config.js +0 -87
  278. package/core/legacy/gather/connections/connection.d.ts +0 -77
  279. package/core/legacy/gather/connections/connection.js +0 -196
  280. package/core/legacy/gather/connections/cri.d.ts +0 -27
  281. package/core/legacy/gather/connections/cri.js +0 -162
  282. package/core/legacy/gather/connections/raw.d.ts +0 -20
  283. package/core/legacy/gather/connections/raw.js +0 -57
  284. package/core/legacy/gather/driver.d.ts +0 -216
  285. package/core/legacy/gather/driver.js +0 -480
  286. package/core/legacy/gather/gather-runner.d.ts +0 -166
  287. package/core/legacy/gather/gather-runner.js +0 -590
  288. package/types/internal/lighthouse-logger.d.ts +0 -34
@@ -17,6 +17,15 @@
17
17
  "core/audits/accessibility/aria-allowed-attr.js | title": {
18
18
  "message": "`[aria-*]`-määritteet vastaavat roolejaan"
19
19
  },
20
+ "core/audits/accessibility/aria-allowed-role.js | description": {
21
+ "message": "ARIA `role`s enable assistive technologies to know the role of each element on the web page. If the `role` values are misspelled, not existing ARIA `role` values, or abstract roles, then the purpose of the element will not be communicated to users of assistive technologies. [Learn more about ARIA roles](https://dequeuniversity.com/rules/axe/4.7/aria-allowed-roles)."
22
+ },
23
+ "core/audits/accessibility/aria-allowed-role.js | failureTitle": {
24
+ "message": "Values assigned to `role=\"\"` are not valid ARIA roles."
25
+ },
26
+ "core/audits/accessibility/aria-allowed-role.js | title": {
27
+ "message": "Values assigned to `role=\"\"` are valid ARIA roles."
28
+ },
20
29
  "core/audits/accessibility/aria-command-name.js | description": {
21
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.7/aria-command-name)."
22
31
  },
@@ -26,6 +35,15 @@
26
35
  "core/audits/accessibility/aria-command-name.js | title": {
27
36
  "message": "Elementeillä (`button`, `link` ja `menuitem`) on esteettömät nimet"
28
37
  },
38
+ "core/audits/accessibility/aria-dialog-name.js | description": {
39
+ "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.7/aria-dialog-name)."
40
+ },
41
+ "core/audits/accessibility/aria-dialog-name.js | failureTitle": {
42
+ "message": "Elementtien, joissa on `role=\"dialog\"` tai `role=\"alertdialog\"`, nimi ei ole saavutettava."
43
+ },
44
+ "core/audits/accessibility/aria-dialog-name.js | title": {
45
+ "message": "Elementtien, joissa on `role=\"dialog\"` tai `role=\"alertdialog\"`, nimi on saavutettava."
46
+ },
29
47
  "core/audits/accessibility/aria-hidden-body.js | description": {
30
48
  "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.7/aria-hidden-body)."
31
49
  },
@@ -107,6 +125,15 @@
107
125
  "core/audits/accessibility/aria-roles.js | title": {
108
126
  "message": "`[role]`-arvot ovat kelvollisia"
109
127
  },
128
+ "core/audits/accessibility/aria-text.js | description": {
129
+ "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.7/aria-text)."
130
+ },
131
+ "core/audits/accessibility/aria-text.js | failureTitle": {
132
+ "message": "`role=text`-määritteen sisältävillä elementeillä on kohdistettavia alakohtia."
133
+ },
134
+ "core/audits/accessibility/aria-text.js | title": {
135
+ "message": "`role=text`-määritteen sisältävillä elementeillä ei ole kohdistettavia alakohtia."
136
+ },
110
137
  "core/audits/accessibility/aria-toggle-field-name.js | description": {
111
138
  "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.7/aria-toggle-field-name)."
112
139
  },
@@ -227,6 +254,15 @@
227
254
  "core/audits/accessibility/duplicate-id-aria.js | title": {
228
255
  "message": "ARIA-tunnisteet ovat yksilöllisiä"
229
256
  },
257
+ "core/audits/accessibility/empty-heading.js | description": {
258
+ "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.7/empty-heading)."
259
+ },
260
+ "core/audits/accessibility/empty-heading.js | failureTitle": {
261
+ "message": "Otsikkoelementeissä ei ole sisältöä."
262
+ },
263
+ "core/audits/accessibility/empty-heading.js | title": {
264
+ "message": "Kaikissa otsikkoelementeissä on sisältöä."
265
+ },
230
266
  "core/audits/accessibility/form-field-multiple-labels.js | description": {
231
267
  "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.7/form-field-multiple-labels)."
232
268
  },
@@ -281,6 +317,15 @@
281
317
  "core/audits/accessibility/html-xml-lang-mismatch.js | title": {
282
318
  "message": "`<html>`-elementillä on `[xml:lang]`-määrite, jolla on sama peruskieli kuin `[lang]`-määritteellä."
283
319
  },
320
+ "core/audits/accessibility/identical-links-same-purpose.js | description": {
321
+ "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.7/identical-links-same-purpose)."
322
+ },
323
+ "core/audits/accessibility/identical-links-same-purpose.js | failureTitle": {
324
+ "message": "Identtisillä linkeillä ei ole samaa tarkoitusta."
325
+ },
326
+ "core/audits/accessibility/identical-links-same-purpose.js | title": {
327
+ "message": "Identtisillä linkeillä on sama tarkoitus."
328
+ },
284
329
  "core/audits/accessibility/image-alt.js | description": {
285
330
  "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.7/image-alt)."
286
331
  },
@@ -290,6 +335,15 @@
290
335
  "core/audits/accessibility/image-alt.js | title": {
291
336
  "message": "Kuvaelementeillä on `[alt]`-määritteet"
292
337
  },
338
+ "core/audits/accessibility/image-redundant-alt.js | description": {
339
+ "message": "Informative elements should aim for short, descriptive alternative text. Alternative text that is exactly the same as the text adjacent to the link or image is potentially confusing for screen reader users, because the text will be read twice. [Learn more about the `alt` attribute](https://dequeuniversity.com/rules/axe/4.7/image-redundant-alt)."
340
+ },
341
+ "core/audits/accessibility/image-redundant-alt.js | failureTitle": {
342
+ "message": "Image elements have `[alt]` attributes that are redundant text."
343
+ },
344
+ "core/audits/accessibility/image-redundant-alt.js | title": {
345
+ "message": "Image elements do not have `[alt]` attributes that are redundant text."
346
+ },
293
347
  "core/audits/accessibility/input-button-name.js | description": {
294
348
  "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.7/input-button-name)."
295
349
  },
@@ -308,6 +362,15 @@
308
362
  "core/audits/accessibility/input-image-alt.js | title": {
309
363
  "message": "`<input type=\"image\">`-elementeissä on `[alt]`-teksti"
310
364
  },
365
+ "core/audits/accessibility/label-content-name-mismatch.js | description": {
366
+ "message": "Visible text labels that do not match the accessible name can result in a confusing experience for screen reader users. [Learn more about accessible names](https://dequeuniversity.com/rules/axe/4.7/label-content-name-mismatch)."
367
+ },
368
+ "core/audits/accessibility/label-content-name-mismatch.js | failureTitle": {
369
+ "message": "Elements with visible text labels do not have matching accessible names."
370
+ },
371
+ "core/audits/accessibility/label-content-name-mismatch.js | title": {
372
+ "message": "Elements with visible text labels have matching accessible names."
373
+ },
311
374
  "core/audits/accessibility/label.js | description": {
312
375
  "message": "Tunnisteilla varmistetaan, että avustustekniikat (kuten näytönlukuohjelmat) ilmoittavat lomakkeiden ohjaimista oikein. [Lue lisää lomake-elementtien tunnisteista](https://dequeuniversity.com/rules/axe/4.7/label)."
313
376
  },
@@ -317,6 +380,24 @@
317
380
  "core/audits/accessibility/label.js | title": {
318
381
  "message": "Lomake-elementeillä on niihin liittyvät tunnisteet"
319
382
  },
383
+ "core/audits/accessibility/landmark-one-main.js | description": {
384
+ "message": "Yksi ensisijainen merkki auttaa näytönlukuohjelman käyttäjiä siirtymään verkkosivulle. [Lue lisää merkeistä](https://dequeuniversity.com/rules/axe/4.7/landmark-one-main)."
385
+ },
386
+ "core/audits/accessibility/landmark-one-main.js | failureTitle": {
387
+ "message": "Dokumentilla ei ole ensisijaista merkkiä."
388
+ },
389
+ "core/audits/accessibility/landmark-one-main.js | title": {
390
+ "message": "Dokumentilla on ensisijainen merkki."
391
+ },
392
+ "core/audits/accessibility/link-in-text-block.js | description": {
393
+ "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.7/link-in-text-block)."
394
+ },
395
+ "core/audits/accessibility/link-in-text-block.js | failureTitle": {
396
+ "message": "Linkit erottuvat helposti vain, jos ne ovat värikkäitä."
397
+ },
398
+ "core/audits/accessibility/link-in-text-block.js | title": {
399
+ "message": "Linkit erottuvat helposti ilman värejä."
400
+ },
320
401
  "core/audits/accessibility/link-name.js | description": {
321
402
  "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.7/link-name)."
322
403
  },
@@ -371,6 +452,24 @@
371
452
  "core/audits/accessibility/object-alt.js | title": {
372
453
  "message": "`<object>`-elementeissä on vaihtoehtoista tekstiä."
373
454
  },
455
+ "core/audits/accessibility/select-name.js | description": {
456
+ "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.7/select-name)."
457
+ },
458
+ "core/audits/accessibility/select-name.js | failureTitle": {
459
+ "message": "Tietyt elementit eivät sisällä tunniste-elementtejä."
460
+ },
461
+ "core/audits/accessibility/select-name.js | title": {
462
+ "message": "Tietyt elementit sisältävät tunniste-elementtejä."
463
+ },
464
+ "core/audits/accessibility/skip-link.js | description": {
465
+ "message": "Including a skip link can help users skip to the main content to save time. [Learn more about skip links](https://dequeuniversity.com/rules/axe/4.7/skip-link)."
466
+ },
467
+ "core/audits/accessibility/skip-link.js | failureTitle": {
468
+ "message": "Skip links are not focusable."
469
+ },
470
+ "core/audits/accessibility/skip-link.js | title": {
471
+ "message": "Skip links are focusable."
472
+ },
374
473
  "core/audits/accessibility/tabindex.js | description": {
375
474
  "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.7/tabindex)."
376
475
  },
@@ -380,6 +479,15 @@
380
479
  "core/audits/accessibility/tabindex.js | title": {
381
480
  "message": "Yhdenkään elementin `[tabindex]`-arvo ei ole suurempi kuin 0"
382
481
  },
482
+ "core/audits/accessibility/table-duplicate-name.js | description": {
483
+ "message": "The summary attribute should describe the table structure, while `<caption>` should have the onscreen title. Accurate table mark-up helps users of screen readers. [Learn more about summary and caption](https://dequeuniversity.com/rules/axe/4.7/table-duplicate-name)."
484
+ },
485
+ "core/audits/accessibility/table-duplicate-name.js | failureTitle": {
486
+ "message": "Tables have the same content in the summary attribute and `<caption>.`"
487
+ },
488
+ "core/audits/accessibility/table-duplicate-name.js | title": {
489
+ "message": "Tables have different content in the summary attribute and `<caption>`."
490
+ },
383
491
  "core/audits/accessibility/table-fake-caption.js | description": {
384
492
  "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.7/table-fake-caption)."
385
493
  },
@@ -389,6 +497,15 @@
389
497
  "core/audits/accessibility/table-fake-caption.js | title": {
390
498
  "message": "Taulukoissa käytetään `<caption>`-määritettä sellaisten solujen sijaan, joissa on `[colspan]`-attribuutti tekstityksen merkkinä."
391
499
  },
500
+ "core/audits/accessibility/target-size.js | description": {
501
+ "message": "Touch targets with sufficient size and spacing help users who may have difficulty targeting small controls to activate the targets. [Learn more about touch targets](https://dequeuniversity.com/rules/axe/4.7/target-size)."
502
+ },
503
+ "core/audits/accessibility/target-size.js | failureTitle": {
504
+ "message": "Kosketusalueiden koko tai välit eivät ole riittäviä."
505
+ },
506
+ "core/audits/accessibility/target-size.js | title": {
507
+ "message": "Kosketusalueiden koko ja välit ovat riittäviä."
508
+ },
392
509
  "core/audits/accessibility/td-has-header.js | description": {
393
510
  "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.7/td-has-header)."
394
511
  },
@@ -938,9 +1055,6 @@
938
1055
  "core/audits/installable-manifest.js | no-manifest": {
939
1056
  "message": "Sivulta puuttuu manifestin <link>-URL"
940
1057
  },
941
- "core/audits/installable-manifest.js | no-matching-service-worker": {
942
- "message": "Vastaavaa service workeria ei havaittu. Sinun on ehkä päivitettävä sivu ja tarkistettava, kattaako nykyisen sivun service workerin laajuus manifestin ja aloitus-URL:in."
943
- },
944
1058
  "core/audits/installable-manifest.js | no-url-for-service-worker": {
945
1059
  "message": "Service workeria ei voitu tarkistaa, koska manifestistä puuttuu \"start_url\"-kenttä"
946
1060
  },
@@ -969,7 +1083,7 @@
969
1083
  "message": "prefer_related_applications on tuettu vain Chromen betaversioissa ja vakaissa versioissa Androidilla."
970
1084
  },
971
1085
  "core/audits/installable-manifest.js | protocol-timeout": {
972
- "message": "Lighthouse ei havainnut service workeria. Yritä uudelleen Chromen uudemmalla versiolla."
1086
+ "message": "Lighthouse could not determine if the page is installable. Please try with a newer version of Chrome."
973
1087
  },
974
1088
  "core/audits/installable-manifest.js | scheme-not-supported-for-webapk": {
975
1089
  "message": "Manifestin URL-kaava ({scheme}) ei ole Androidin tukema."
@@ -1112,15 +1226,15 @@
1112
1226
  "core/audits/metrics/cumulative-layout-shift.js | description": {
1113
1227
  "message": "Kumulatiivinen asettelumuutos mittaa näkymässä olevien elementtien liikettä. [Lue lisää Kumulatiivinen asettelumuutos ‐mittarista](https://web.dev/cls/)."
1114
1228
  },
1115
- "core/audits/metrics/experimental-interaction-to-next-paint.js | description": {
1116
- "message": "Interaktiosta seuraavaan renderöintiin ‐mittari mittaa sivun responsiivisuutta eli sitä, kuinka pian sivu vastaa näkyvästi käyttäjän palautteeseen. [Lue lisää Interaktiosta seuraavaan renderöintiin ‐mittarista](https://web.dev/inp/)."
1117
- },
1118
1229
  "core/audits/metrics/first-contentful-paint.js | description": {
1119
1230
  "message": "Ensimmäinen sisällön renderöinti kertoo, milloin ensimmäinen tekstikohde tai kuva renderöidään. [Lue lisää Ensimmäinen sisällön renderöinti ‐mittarista](https://developer.chrome.com/docs/lighthouse/performance/first-contentful-paint/)."
1120
1231
  },
1121
1232
  "core/audits/metrics/first-meaningful-paint.js | description": {
1122
1233
  "message": "Ensimmäinen merkityksellinen renderöinti kertoo, milloin sivun ensisijainen sisältö tulee näkyviin. [Lue lisää Ensimmäinen merkityksellinen renderöinti ‐mittarista](https://developer.chrome.com/docs/lighthouse/performance/first-meaningful-paint/)."
1123
1234
  },
1235
+ "core/audits/metrics/interaction-to-next-paint.js | description": {
1236
+ "message": "Interaktiosta seuraavaan renderöintiin ‐mittari mittaa sivun responsiivisuutta eli sitä, kuinka pian sivu vastaa näkyvästi käyttäjän palautteeseen. [Lue lisää Interaktiosta seuraavaan renderöintiin ‐mittarista](https://web.dev/inp/)."
1237
+ },
1124
1238
  "core/audits/metrics/interactive.js | description": {
1125
1239
  "message": "Interaktiivisuutta edeltävä aika tarkoittaa aikaa, joka sivulla kestää siihen, että se on täysin interaktiivinen. [Lue lisää Interaktiivisuutta edeltävä aika ‐mittarista](https://developer.chrome.com/docs/lighthouse/performance/interactive/)."
1126
1240
  },
@@ -1214,15 +1328,6 @@
1214
1328
  "core/audits/redirects.js | title": {
1215
1329
  "message": "Vältä useita uudelleenohjauksia"
1216
1330
  },
1217
- "core/audits/resource-summary.js | description": {
1218
- "message": "Jos haluat asettaa sivuresurssien määrälle ja koolle budjetin, lisää budget.json-tiedosto. [Lue lisää tehokkuusbudjeteista](https://web.dev/use-lighthouse-for-performance-budgets/)."
1219
- },
1220
- "core/audits/resource-summary.js | displayValue": {
1221
- "message": "{requestCount,plural, =1{1 pyyntö • {byteCount, number, bytes} KiB}other{# pyyntöä • {byteCount, number, bytes} KiB}}"
1222
- },
1223
- "core/audits/resource-summary.js | title": {
1224
- "message": "Pidä pyyntöjen määrät alhaisina ja siirtojen koot pieninä"
1225
- },
1226
1331
  "core/audits/seo/canonical.js | description": {
1227
1332
  "message": "Ensisijaiset linkit ehdottavat, mitä URL-osoitteita näyttää hakutuloksissa. [Lue lisää ensisijaisista linkeistä](https://developer.chrome.com/docs/lighthouse/seo/canonical/)."
1228
1333
  },
@@ -1412,27 +1517,6 @@
1412
1517
  "core/audits/server-response-time.js | title": {
1413
1518
  "message": "Palvelimen vasteaika alussa oli lyhyt"
1414
1519
  },
1415
- "core/audits/service-worker.js | description": {
1416
- "message": "Service worker ‑teknologia tuo sovelluksen käyttöön monia progressiivisen web-sovelluksen ominaisuuksia, kuten offline-käytön, aloitusnäytölle lisäämisen ja ilmoitukset. [Lue lisää Service Workereista](https://developer.chrome.com/docs/lighthouse/pwa/service-worker/)."
1417
- },
1418
- "core/audits/service-worker.js | explanationBadManifest": {
1419
- "message": "Service worker hallitsee sivua, mutta osoitetta (`start_url`) ei löytynyt, koska luetteloa ei voitu jäsentää kelvollisena JSONina."
1420
- },
1421
- "core/audits/service-worker.js | explanationBadStartUrl": {
1422
- "message": "Service worker hallitsee sivua, mutta `start_url` ({startUrl}) ei ole workerin toiminta-alueella ({scopeUrl})"
1423
- },
1424
- "core/audits/service-worker.js | explanationNoManifest": {
1425
- "message": "Service worker hallitsee sivua, mutta osoitetta (`start_url`) ei löytynyt, koska luetteloa ei noudettu."
1426
- },
1427
- "core/audits/service-worker.js | explanationOutOfScope": {
1428
- "message": "Lähteessä on ainakin yksi service worker, mutta sivu ({pageUrl}) ei kuulu sen toiminta-alueeseen."
1429
- },
1430
- "core/audits/service-worker.js | failureTitle": {
1431
- "message": "Ei rekisteröi service workeria, jonka hallinnassa sivu ja `start_url` ovat"
1432
- },
1433
- "core/audits/service-worker.js | title": {
1434
- "message": "Rekisteröi service workerin, jonka hallinnassa sivu ja `start_url` ovat"
1435
- },
1436
1520
  "core/audits/splash-screen.js | description": {
1437
1521
  "message": "Teeman sisältävä aloitussivu varmistaa laadukkaan kokemuksen, kun käyttäjä avaa sovelluksen aloitusnäytöltään. [Lue lisää aloitusnäytöistä](https://developer.chrome.com/docs/lighthouse/pwa/splash-screen/)."
1438
1522
  },
@@ -1623,7 +1707,7 @@
1623
1707
  "message": "Parhaat käytännöt"
1624
1708
  },
1625
1709
  "core/config/default-config.js | a11yCategoryDescription": {
1626
- "message": "Nämä tarkistukset tuovat esiin kohtia, joissa voit [parantaa verkkosovelluksesi esteettömyyttä](https://developer.chrome.com/docs/lighthouse/accessibility/). Vain pieni joukko esteettömyysongelmia voidaan havaita automaattisesti, joten myös manuaalista testaamista suositellaan."
1710
+ "message": "These checks highlight opportunities to [improve the accessibility of your web app](https://developer.chrome.com/docs/lighthouse/accessibility/). Automatic detection can only detect a subset of issues and does not guarantee the accessibility of your web app, so [manual testing](https://web.dev/how-to-review/) is also encouraged."
1627
1711
  },
1628
1712
  "core/config/default-config.js | a11yCategoryManualDescription": {
1629
1713
  "message": "Nämä kohteet koskevat alueita, joita automaattinen testaustyökalu ei voi testata. Lue lisää [saavutettavuustarkistuksen tekemisen](https://web.dev/how-to-review/) oppaastamme."
@@ -2769,7 +2853,7 @@
2769
2853
  "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."
2770
2854
  },
2771
2855
  "node_modules/lighthouse-stack-packs/packs/drupal.js | render-blocking-resources": {
2772
- "message": "Sinun kannattaa ehkä käyttää moduulia, joka voi tuoda kriittistä CSS:ää tai JavaScriptiä sivun sisälle tai mahdollisesti ladata sisältöä asynkronisesti JavaScriptin avulla (esim. [Advanced CSS/JS Aggregation](https://www.drupal.org/project/advagg) ‑moduuli). Huomaathan, että tämän moduulin suorittamat optimoinnit voivat rikkoa sivustosi, joten sinun on todennäköisesti muutettava koodia."
2856
+ "message": "Consider using a module to inline critical CSS and JavaScript, and use the defer attribute for non-critical CSS or JavaScript."
2773
2857
  },
2774
2858
  "node_modules/lighthouse-stack-packs/packs/drupal.js | server-response-time": {
2775
2859
  "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."
@@ -2778,10 +2862,10 @@
2778
2862
  "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."
2779
2863
  },
2780
2864
  "node_modules/lighthouse-stack-packs/packs/drupal.js | unminified-css": {
2781
- "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). Voit myös määrittää lisää koontiasetuksia käyttämällä [lisämoduuleja](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=css+aggregation&solrsort=iss_project_release_usage+desc&op=Search), mikä voi nopeuttaa sivustosi toimintaa ketjuttamalla, pienentämällä ja pakkaamalla CSS-tyylejä."
2865
+ "message": "Ensure you have enabled \"Aggregate CSS files\" in the \"Administration » Configuration » Development\" page. Ensure your Drupal site is running at least Drupal 10.1 for improved asset aggregation support."
2782
2866
  },
2783
2867
  "node_modules/lighthouse-stack-packs/packs/drupal.js | unminified-javascript": {
2784
- "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). Voit myös määrittää lisää koontiasetuksia käyttämällä [lisämoduuleja](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=javascript+aggregation&solrsort=iss_project_release_usage+desc&op=Search), mikä voi nopeuttaa sivustosi toimintaa ketjuttamalla, pienentämällä ja pakkaamalla JavaScript-sisältöä."
2868
+ "message": "Ensure you have enabled \"Aggregate JavaScript files\" in the \"Administration » Configuration » Development\" page. Ensure your Drupal site is running at least Drupal 10.1 for improved asset aggregation support."
2785
2869
  },
2786
2870
  "node_modules/lighthouse-stack-packs/packs/drupal.js | unused-css-rules": {
2787
2871
  "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."
@@ -2981,6 +3065,48 @@
2981
3065
  "node_modules/lighthouse-stack-packs/packs/next.js | uses-text-compression": {
2982
3066
  "message": "Salli pakkaus Next.js-palvelimellasi. [Lue lisää](https://nextjs.org/docs/api-reference/next.config.js/compression)."
2983
3067
  },
3068
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | dom-size": {
3069
+ "message": "Contact your account manager to enable [`HTML Lazy Load`](https://support.nitropack.io/hc/en-us/articles/17144942904337). Configuring it will prioritize and optimize your page rendering performance."
3070
+ },
3071
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | font-display": {
3072
+ "message": "Use the [`Override Font Rendering Behavior`](https://support.nitropack.io/hc/en-us/articles/16547358865041) option in NitroPack to set a desired value for the CSS font-display rule."
3073
+ },
3074
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | modern-image-formats": {
3075
+ "message": "Use [`Image Optimization`](https://support.nitropack.io/hc/en-us/articles/16547237162513) to automatically convert your images to WebP."
3076
+ },
3077
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | offscreen-images": {
3078
+ "message": "Defer offscreen images by enabling [`Automatic Image Lazy Loading`](https://support.nitropack.io/hc/en-us/articles/12457493524369-NitroPack-Lazy-Loading-Feature-for-Images)."
3079
+ },
3080
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | render-blocking-resources": {
3081
+ "message": "Enable [`Remove render-blocking resources`](https://support.nitropack.io/hc/en-us/articles/13820893500049-How-to-Deal-with-Render-Blocking-Resources-in-NitroPack) in NitroPack for faster initial load times."
3082
+ },
3083
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | server-response-time": {
3084
+ "message": "Improve server response time and optimize perceived performance by activating [`Instant Load`](https://support.nitropack.io/hc/en-us/articles/16547340617361)."
3085
+ },
3086
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | unminified-css": {
3087
+ "message": "Enable [`Minify resources`](https://support.nitropack.io/hc/en-us/articles/360061059394-Minify-Resources) in your Caching settings to reduce the size of your CSS, HTML, and JavaScript files for faster load times."
3088
+ },
3089
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | unminified-javascript": {
3090
+ "message": "Enable [`Minify resources`](https://support.nitropack.io/hc/en-us/articles/360061059394-Minify-Resources) in your Caching settings to reduce the size of your JS, HTML, and CSS files for faster load times."
3091
+ },
3092
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | unused-css-rules": {
3093
+ "message": "Enable [`Reduce Unused CSS`](https://support.nitropack.io/hc/en-us/articles/360020418457-Reduce-Unused-CSS) to remove CSS rules that are not applicable to this page."
3094
+ },
3095
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | unused-javascript": {
3096
+ "message": "Configure [`Delayed Scripts`](https://support.nitropack.io/hc/en-us/articles/1500002600942-Delayed-Scripts) in NitroPack to delay loading of scripts until they are needed."
3097
+ },
3098
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | uses-long-cache-ttl": {
3099
+ "message": "Go to the [`Improve Server Response Time`](https://support.nitropack.io/hc/en-us/articles/1500002321821-Improve-Server-Response-Time) feature in the `Caching` menu and adjust your page cache expiration time to improve loading times and user experience."
3100
+ },
3101
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | uses-optimized-images": {
3102
+ "message": "Automatically compress, optimize, and convert your images into WebP by enabling the [`Image Optimization`](https://support.nitropack.io/hc/en-us/articles/14177271695121-How-to-serve-images-in-next-gen-formats-using-NitroPack) setting."
3103
+ },
3104
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | uses-responsive-images": {
3105
+ "message": "Enable [`Adaptive Image Sizing`](https://support.nitropack.io/hc/en-us/articles/10123833029905-How-to-Enable-Adaptive-Image-Sizing-For-Your-Site) to preemptively optimize your images and make them match the dimensions of the containers they’re displayed in across all devices."
3106
+ },
3107
+ "node_modules/lighthouse-stack-packs/packs/nitropack.js | uses-text-compression": {
3108
+ "message": "Use [`Gzip compression`](https://support.nitropack.io/hc/en-us/articles/13229297479313-Enabling-GZIP-compression) in NitroPack to reduce the size of the files that are sent to the browser."
3109
+ },
2984
3110
  "node_modules/lighthouse-stack-packs/packs/nuxt.js | modern-image-formats": {
2985
3111
  "message": "Käytä `nuxt/image`-komponenttia ja määritä `format=\"webp\"`. [Lue lisää](https://image.nuxtjs.org/components/nuxt-img#format)."
2986
3112
  },
@@ -3062,6 +3188,21 @@
3062
3188
  "node_modules/lighthouse-stack-packs/packs/react.js | user-timings": {
3063
3189
  "message": "Käytä React DevTools Profileria, joka käyttää React-sovellusliittymää, komponenttien renderöinnin mittaamiseen. [Lue lisää.](https://reactjs.org/blog/2018/09/10/introducing-the-react-profiler.html)"
3064
3190
  },
3191
+ "node_modules/lighthouse-stack-packs/packs/wix.js | efficient-animated-content": {
3192
+ "message": "Sijoita videot tämän sisään: `VideoBoxes`. Muokkaa niitä `Video Masks` ‑sovelluksella tai lisää `Transparent Videos`. [Lue lisää](https://support.wix.com/en/article/wix-video-about-wix-video)."
3193
+ },
3194
+ "node_modules/lighthouse-stack-packs/packs/wix.js | modern-image-formats": {
3195
+ "message": "`Wix Media Manager` on hyödyllinen, kun lataat kuvia, sillä se syöttää ne automaattisesti WebP-muodossa. Etsi [lisää tapoja optimoida](https://support.wix.com/en/article/site-performance-optimizing-your-media) sivustosi media."
3196
+ },
3197
+ "node_modules/lighthouse-stack-packs/packs/wix.js | render-blocking-resources": {
3198
+ "message": "Kun [lisäät kolmannen osapuolen koodin](https://support.wix.com/en/article/site-performance-using-third-party-code-on-your-site) `Custom Code`-välilehdelle sivuston hallintapaneelissa, varmista, että se on lykätty tai ladattu koodinpätkän loppuun. Jos mahdollista, upota markkinointityökalut sivustollesi Wixin [integrointien](https://support.wix.com/en/article/about-marketing-integrations) avulla. "
3199
+ },
3200
+ "node_modules/lighthouse-stack-packs/packs/wix.js | server-response-time": {
3201
+ "message": "Wix käyttää CDN:iä ja välimuistiin tallentamista, jotta useimmat kävijät näkevät vastaukset mahdollisimman nopeasti. Harkitse [välimuistin käyttöönottoa manuaalisesti](https://support.wix.com/en/article/site-performance-caching-pages-to-optimize-loading-speed) sivustollasi, etenkin jos käytät tätä: `Velo`."
3202
+ },
3203
+ "node_modules/lighthouse-stack-packs/packs/wix.js | unused-javascript": {
3204
+ "message": "Tarkista kaikki kolmannen osapuolen koodit, jotka olet lisännyt `Custom Code`-välilehdelle sivuston hallintapaneelissa, ja säilytä vain palvelut, jotka ovat välttämättömiä sivuston kannalta. [Lue lisää](https://support.wix.com/en/article/site-performance-removing-unused-javascript)."
3205
+ },
3065
3206
  "node_modules/lighthouse-stack-packs/packs/wordpress.js | efficient-animated-content": {
3066
3207
  "message": "GIF kannattaa ehkä ladata palveluun, jonka avulla se voidaan upottaa HTML5-videona."
3067
3208
  },
@@ -3167,6 +3308,9 @@
3167
3308
  "report/renderer/report-utils.js | dropdownSaveJSON": {
3168
3309
  "message": "Tallenna JSON-tiedostona"
3169
3310
  },
3311
+ "report/renderer/report-utils.js | dropdownViewUnthrottledTrace": {
3312
+ "message": "View Unthrottled Trace"
3313
+ },
3170
3314
  "report/renderer/report-utils.js | dropdownViewer": {
3171
3315
  "message": "Avaa katseluohjelmassa"
3172
3316
  },
@@ -3287,9 +3431,6 @@
3287
3431
  "report/renderer/report-utils.js | varianceDisclaimer": {
3288
3432
  "message": "Arvot ovat arvioita ja voivat vaihdella. [Tehokkuusprosentti lasketaan](https://developer.chrome.com/docs/lighthouse/performance/performance-scoring/) suoraan näistä mittareista."
3289
3433
  },
3290
- "report/renderer/report-utils.js | viewOriginalTraceLabel": {
3291
- "message": "Näytä alkuperäinen jälki"
3292
- },
3293
3434
  "report/renderer/report-utils.js | viewTraceLabel": {
3294
3435
  "message": "Näytä jälki"
3295
3436
  },