lighthouse 11.7.0-dev.20240415 → 11.7.0-dev.20240417

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 (109) hide show
  1. package/cli/bin.js +0 -7
  2. package/cli/cli-flags.d.ts +1 -5
  3. package/cli/cli-flags.js +1 -5
  4. package/cli/test/smokehouse/config/exclusions.js +2 -0
  5. package/cli/test/smokehouse/core-tests.js +2 -2
  6. package/core/audits/byte-efficiency/render-blocking-resources.js +3 -1
  7. package/core/audits/byte-efficiency/unminified-css.js +2 -2
  8. package/core/audits/byte-efficiency/unused-css-rules.js +3 -1
  9. package/core/audits/font-display.js +2 -2
  10. package/core/audits/resource-summary.d.ts +2 -0
  11. package/core/audits/resource-summary.js +5 -4
  12. package/core/audits/seo/link-text.js +12 -0
  13. package/core/computed/page-dependency-graph.js +1 -6
  14. package/core/computed/resource-summary.d.ts +10 -12
  15. package/core/computed/resource-summary.js +12 -19
  16. package/core/computed/unused-css.d.ts +3 -1
  17. package/core/computed/unused-css.js +6 -5
  18. package/core/config/config-helpers.js +0 -4
  19. package/core/config/constants.js +0 -1
  20. package/core/config/default-config.js +1 -14
  21. package/core/gather/driver/navigation.js +4 -1
  22. package/core/gather/driver/prepare.js +1 -1
  23. package/core/gather/driver/target-manager.js +3 -2
  24. package/core/gather/driver.d.ts +12 -0
  25. package/core/gather/driver.js +26 -0
  26. package/core/gather/gatherers/css-usage.d.ts +0 -21
  27. package/core/gather/gatherers/css-usage.js +9 -119
  28. package/core/gather/gatherers/stylesheets.d.ts +26 -0
  29. package/core/gather/gatherers/stylesheets.js +138 -0
  30. package/core/gather/navigation-runner.js +3 -1
  31. package/core/gather/session.js +2 -1
  32. package/core/lib/emulation.js +2 -2
  33. package/core/lib/i18n/i18n.d.ts +0 -1
  34. package/core/lib/i18n/i18n.js +0 -2
  35. package/core/lib/lh-error.d.ts +9 -0
  36. package/core/lib/lh-error.js +10 -0
  37. package/core/lib/navigation-error.js +3 -0
  38. package/core/runner.js +0 -1
  39. package/dist/report/bundle.esm.js +2 -19
  40. package/dist/report/flow.js +5 -22
  41. package/dist/report/standalone.js +3 -20
  42. package/package.json +3 -3
  43. package/readme.md +2 -2
  44. package/report/assets/styles.css +0 -17
  45. package/report/renderer/components.js +1 -1
  46. package/report/renderer/dom.d.ts +1 -1
  47. package/report/renderer/dom.js +1 -1
  48. package/report/renderer/performance-category-renderer.js +0 -21
  49. package/shared/localization/locales/ar-XB.json +61 -91
  50. package/shared/localization/locales/ar.json +61 -91
  51. package/shared/localization/locales/bg.json +61 -91
  52. package/shared/localization/locales/ca.json +61 -91
  53. package/shared/localization/locales/cs.json +61 -91
  54. package/shared/localization/locales/da.json +61 -91
  55. package/shared/localization/locales/de.json +61 -91
  56. package/shared/localization/locales/el.json +61 -91
  57. package/shared/localization/locales/en-GB.json +61 -91
  58. package/shared/localization/locales/en-US.json +3 -30
  59. package/shared/localization/locales/en-XA.json +61 -91
  60. package/shared/localization/locales/en-XL.json +3 -30
  61. package/shared/localization/locales/es-419.json +61 -91
  62. package/shared/localization/locales/es.json +61 -91
  63. package/shared/localization/locales/fi.json +61 -91
  64. package/shared/localization/locales/fil.json +60 -90
  65. package/shared/localization/locales/fr.json +61 -91
  66. package/shared/localization/locales/he.json +61 -91
  67. package/shared/localization/locales/hi.json +61 -91
  68. package/shared/localization/locales/hr.json +62 -92
  69. package/shared/localization/locales/hu.json +61 -91
  70. package/shared/localization/locales/id.json +61 -91
  71. package/shared/localization/locales/it.json +61 -91
  72. package/shared/localization/locales/ja.json +61 -91
  73. package/shared/localization/locales/ko.json +61 -91
  74. package/shared/localization/locales/lt.json +61 -91
  75. package/shared/localization/locales/lv.json +61 -91
  76. package/shared/localization/locales/nl.json +61 -91
  77. package/shared/localization/locales/no.json +61 -91
  78. package/shared/localization/locales/pl.json +60 -90
  79. package/shared/localization/locales/pt-PT.json +61 -91
  80. package/shared/localization/locales/pt.json +63 -93
  81. package/shared/localization/locales/ro.json +61 -91
  82. package/shared/localization/locales/ru.json +61 -91
  83. package/shared/localization/locales/sk.json +61 -91
  84. package/shared/localization/locales/sl.json +61 -91
  85. package/shared/localization/locales/sr-Latn.json +61 -91
  86. package/shared/localization/locales/sr.json +61 -91
  87. package/shared/localization/locales/sv.json +61 -91
  88. package/shared/localization/locales/ta.json +60 -90
  89. package/shared/localization/locales/te.json +61 -91
  90. package/shared/localization/locales/th.json +61 -91
  91. package/shared/localization/locales/tr.json +61 -91
  92. package/shared/localization/locales/uk.json +61 -91
  93. package/shared/localization/locales/vi.json +60 -90
  94. package/shared/localization/locales/zh-HK.json +61 -91
  95. package/shared/localization/locales/zh-TW.json +60 -90
  96. package/shared/localization/locales/zh.json +61 -91
  97. package/tsconfig.json +0 -1
  98. package/types/artifacts.d.ts +3 -1
  99. package/types/externs.d.ts +0 -2
  100. package/types/gatherer.d.ts +2 -0
  101. package/types/lh.d.ts +0 -2
  102. package/types/lhr/settings.d.ts +0 -4
  103. package/core/audits/performance-budget.d.ts +0 -39
  104. package/core/audits/performance-budget.js +0 -154
  105. package/core/audits/timing-budget.d.ts +0 -43
  106. package/core/audits/timing-budget.js +0 -175
  107. package/core/config/budget.d.ts +0 -74
  108. package/core/config/budget.js +0 -340
  109. package/types/lhr/budget.d.ts +0 -60
@@ -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.8/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.9/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.8/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.9/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,7 +18,7 @@
18
18
  "message": "`[aria-*]`-määritteet vastaavat roolejaan"
19
19
  },
20
20
  "core/audits/accessibility/aria-allowed-role.js | description": {
21
- "message": "ARIA-roolit (`role`) auttavat avustavia teknologioita tuntemaan jokaisen verkkosivun elementin roolin. Jos roolin (`role`) arvot on kirjoitettu väärin, ARIA-roolin (`role`) arvoja ei ole olemassa tai roolit ovat abstrakteja, elementin tarkoitusta ei kerrota avustavan teknologian käyttäjille. [Lue lisää ARIA-rooleista](https://dequeuniversity.com/rules/axe/4.8/aria-allowed-role)."
21
+ "message": "ARIA-roolit (`role`) auttavat avustavia teknologioita tuntemaan jokaisen verkkosivun elementin roolin. Jos roolin (`role`) arvot on kirjoitettu väärin, ARIA-roolin (`role`) arvoja ei ole olemassa tai roolit ovat abstrakteja, elementin tarkoitusta ei kerrota avustavan teknologian käyttäjille. [Lue lisää ARIA-rooleista](https://dequeuniversity.com/rules/axe/4.9/aria-allowed-role)."
22
22
  },
23
23
  "core/audits/accessibility/aria-allowed-role.js | failureTitle": {
24
24
  "message": "Elementille (`role=\"\"`) määritetyt arvot eivät ole kelvollisia ARIA-rooleja."
@@ -27,7 +27,7 @@
27
27
  "message": "Elementille (`role=\"\"`) määritetyt arvot ovat kelvollisia ARIA-rooleja."
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.8/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.9/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-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.8/aria-dialog-name)."
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.9/aria-dialog-name)."
40
40
  },
41
41
  "core/audits/accessibility/aria-dialog-name.js | failureTitle": {
42
42
  "message": "Elementtien, joissa on `role=\"dialog\"` tai `role=\"alertdialog\"`, nimi ei ole saavutettava."
@@ -45,7 +45,7 @@
45
45
  "message": "Elementtien, joissa on `role=\"dialog\"` tai `role=\"alertdialog\"`, nimi on saavutettava."
46
46
  },
47
47
  "core/audits/accessibility/aria-hidden-body.js | description": {
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.8/aria-hidden-body)."
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.9/aria-hidden-body)."
49
49
  },
50
50
  "core/audits/accessibility/aria-hidden-body.js | failureTitle": {
51
51
  "message": "`[aria-hidden=\"true\"]` on dokumentin kohdassa `<body>`"
@@ -54,7 +54,7 @@
54
54
  "message": "`[aria-hidden=\"true\"]` ei ole dokumentin kohdassa `<body>`"
55
55
  },
56
56
  "core/audits/accessibility/aria-hidden-focus.js | description": {
57
- "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.8/aria-hidden-focus)."
57
+ "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)."
58
58
  },
59
59
  "core/audits/accessibility/aria-hidden-focus.js | failureTitle": {
60
60
  "message": "`[aria-hidden=\"true\"]`-elementeissä on tarkennettavia alaosia"
@@ -63,7 +63,7 @@
63
63
  "message": "`[aria-hidden=\"true\"]`-elementeissä ei ole tarkennettavia alaosia"
64
64
  },
65
65
  "core/audits/accessibility/aria-input-field-name.js | description": {
66
- "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.8/aria-input-field-name)."
66
+ "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)."
67
67
  },
68
68
  "core/audits/accessibility/aria-input-field-name.js | failureTitle": {
69
69
  "message": "ARIA-syötekenttien nimet eivät ole esteettömiä"
@@ -72,7 +72,7 @@
72
72
  "message": "ARIA-syötekenttien nimet ovat esteettömiä"
73
73
  },
74
74
  "core/audits/accessibility/aria-meter-name.js | description": {
75
- "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.8/aria-meter-name)."
75
+ "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)."
76
76
  },
77
77
  "core/audits/accessibility/aria-meter-name.js | failureTitle": {
78
78
  "message": "ARIA-elementeillä (`meter`) ei ole esteettömiä nimiä"
@@ -81,7 +81,7 @@
81
81
  "message": "ARIA-elementeillä (`meter`) on esteettömät nimet"
82
82
  },
83
83
  "core/audits/accessibility/aria-progressbar-name.js | description": {
84
- "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.8/aria-progressbar-name)."
84
+ "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)."
85
85
  },
86
86
  "core/audits/accessibility/aria-progressbar-name.js | failureTitle": {
87
87
  "message": "ARIA-elementeillä (`progressbar`) ei ole esteettömiä nimiä"
@@ -90,7 +90,7 @@
90
90
  "message": "ARIA-elementeillä (`progressbar`) on esteettömät nimet"
91
91
  },
92
92
  "core/audits/accessibility/aria-required-attr.js | description": {
93
- "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.8/aria-required-attr)."
93
+ "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)."
94
94
  },
95
95
  "core/audits/accessibility/aria-required-attr.js | failureTitle": {
96
96
  "message": "`[role]`-elementeissä ei ole kaikkia vaadittuja `[aria-*]`-määritteitä"
@@ -99,7 +99,7 @@
99
99
  "message": "`[role]`-elementeissä on kaikki vaaditut `[aria-*]`-määritteet"
100
100
  },
101
101
  "core/audits/accessibility/aria-required-children.js | description": {
102
- "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.8/aria-required-children)."
102
+ "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)."
103
103
  },
104
104
  "core/audits/accessibility/aria-required-children.js | failureTitle": {
105
105
  "message": "ARIAn `[role]` sisältämät elementit edellyttävät alatasoilta tiettyä elementtiä (`[role]`), mutta se puuttuu osalta tai kaikilta alatasoilta."
@@ -108,7 +108,7 @@
108
108
  "message": "ARIAn `[role]` sisältämät elementit edellyttävät alatasoilta tiettyä elementtiä (`[role]`), joka on kaikilla alatasoilla."
109
109
  },
110
110
  "core/audits/accessibility/aria-required-parent.js | description": {
111
- "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.8/aria-required-parent)."
111
+ "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)."
112
112
  },
113
113
  "core/audits/accessibility/aria-required-parent.js | failureTitle": {
114
114
  "message": "`[role]`-elementit eivät sisälly niiden pakolliseen ylätason elementtiin"
@@ -117,7 +117,7 @@
117
117
  "message": "`[role]`-elementit sisältyvät niiden pakolliseen ylätason elementtiin"
118
118
  },
119
119
  "core/audits/accessibility/aria-roles.js | description": {
120
- "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.8/aria-roles)."
120
+ "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)."
121
121
  },
122
122
  "core/audits/accessibility/aria-roles.js | failureTitle": {
123
123
  "message": "`[role]`-arvot eivät ole kelvollisia"
@@ -126,7 +126,7 @@
126
126
  "message": "`[role]`-arvot ovat kelvollisia"
127
127
  },
128
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.8/aria-text)."
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.9/aria-text)."
130
130
  },
131
131
  "core/audits/accessibility/aria-text.js | failureTitle": {
132
132
  "message": "`role=text`-määritteen sisältävillä elementeillä on kohdistettavia alakohtia."
@@ -135,7 +135,7 @@
135
135
  "message": "`role=text`-määritteen sisältävillä elementeillä ei ole kohdistettavia alakohtia."
136
136
  },
137
137
  "core/audits/accessibility/aria-toggle-field-name.js | description": {
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.8/aria-toggle-field-name)."
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.9/aria-toggle-field-name)."
139
139
  },
140
140
  "core/audits/accessibility/aria-toggle-field-name.js | failureTitle": {
141
141
  "message": "ARIAn päälle/pois-kenttien nimet eivät ole esteettömiä"
@@ -144,7 +144,7 @@
144
144
  "message": "ARIAn päälle/pois-kenttien nimet ovat esteettömiä"
145
145
  },
146
146
  "core/audits/accessibility/aria-tooltip-name.js | description": {
147
- "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.8/aria-tooltip-name)."
147
+ "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)."
148
148
  },
149
149
  "core/audits/accessibility/aria-tooltip-name.js | failureTitle": {
150
150
  "message": "ARIA-elementeillä (`tooltip`) ei ole esteettömiä nimiä"
@@ -153,7 +153,7 @@
153
153
  "message": "ARIA-elementeillä (`tooltip`) on esteettömät nimet"
154
154
  },
155
155
  "core/audits/accessibility/aria-treeitem-name.js | description": {
156
- "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.8/aria-treeitem-name)."
156
+ "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)."
157
157
  },
158
158
  "core/audits/accessibility/aria-treeitem-name.js | failureTitle": {
159
159
  "message": "ARIA-elementeillä (`treeitem`) ei ole esteettömiä nimiä"
@@ -162,7 +162,7 @@
162
162
  "message": "ARIA-elementeillä (`treeitem`) on esteettömät nimet"
163
163
  },
164
164
  "core/audits/accessibility/aria-valid-attr-value.js | description": {
165
- "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.8/aria-valid-attr-value)."
165
+ "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)."
166
166
  },
167
167
  "core/audits/accessibility/aria-valid-attr-value.js | failureTitle": {
168
168
  "message": "`[aria-*]`-määritteiden arvot eivät ole kelvollisia"
@@ -171,7 +171,7 @@
171
171
  "message": "`[aria-*]`-määritteiden arvot ovat kelvollisia"
172
172
  },
173
173
  "core/audits/accessibility/aria-valid-attr.js | description": {
174
- "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.8/aria-valid-attr)."
174
+ "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)."
175
175
  },
176
176
  "core/audits/accessibility/aria-valid-attr.js | failureTitle": {
177
177
  "message": "`[aria-*]`-määritteet eivät ole kelvollisia tai sisältävät kirjoitusvirheitä"
@@ -183,7 +183,7 @@
183
183
  "message": "Hylätyt elementit"
184
184
  },
185
185
  "core/audits/accessibility/button-name.js | description": {
186
- "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.8/button-name)."
186
+ "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)."
187
187
  },
188
188
  "core/audits/accessibility/button-name.js | failureTitle": {
189
189
  "message": "Painikkeiden nimet eivät ole esteettömiä"
@@ -192,7 +192,7 @@
192
192
  "message": "Painikkeiden nimet ovat esteettömiä"
193
193
  },
194
194
  "core/audits/accessibility/bypass.js | description": {
195
- "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.8/bypass)."
195
+ "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)."
196
196
  },
197
197
  "core/audits/accessibility/bypass.js | failureTitle": {
198
198
  "message": "Sivu ei sisällä otsikkoa, ohituslinkkiä tai maamerkin aluetta"
@@ -201,7 +201,7 @@
201
201
  "message": "Sivu sisältää otsikon, ohituslinkin tai maamerkin alueen"
202
202
  },
203
203
  "core/audits/accessibility/color-contrast.js | description": {
204
- "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.8/color-contrast)."
204
+ "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)."
205
205
  },
206
206
  "core/audits/accessibility/color-contrast.js | failureTitle": {
207
207
  "message": "Taustan ja etualan värien kontrastisuhde ei ole riittävä."
@@ -210,7 +210,7 @@
210
210
  "message": "Taustan ja etualan värien kontrastisuhde on riittävä"
211
211
  },
212
212
  "core/audits/accessibility/definition-list.js | description": {
213
- "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.8/definition-list)."
213
+ "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)."
214
214
  },
215
215
  "core/audits/accessibility/definition-list.js | failureTitle": {
216
216
  "message": "`<dl>`-elementit eivät sisällä vain oikein järjestettyjä `<dt>`- ja `<dd>`-ryhmiä ja `<script>`-, `<template>`- tai `<div>`-elementtejä."
@@ -219,7 +219,7 @@
219
219
  "message": "`<dl>`-elementit sisältävät vain oikein järjestettyjä `<dt>`- ja `<dd>`-ryhmiä ja `<script>`-, `<template>` tai `<div>`-elementtejä"
220
220
  },
221
221
  "core/audits/accessibility/dlitem.js | description": {
222
- "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.8/dlitem)."
222
+ "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)."
223
223
  },
224
224
  "core/audits/accessibility/dlitem.js | failureTitle": {
225
225
  "message": "Määritelmien luettelokohtia ei ole yhdistetty `<dl>`-elementeillä"
@@ -228,7 +228,7 @@
228
228
  "message": "Määritelmien luettelokohdat on yhdistetty `<dl>`-elementeillä"
229
229
  },
230
230
  "core/audits/accessibility/document-title.js | description": {
231
- "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.8/document-title)."
231
+ "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)."
232
232
  },
233
233
  "core/audits/accessibility/document-title.js | failureTitle": {
234
234
  "message": "Dokumentissa ei ole `<title>`-elementtiä"
@@ -237,7 +237,7 @@
237
237
  "message": "Dokumentissa on `<title>`-elementti"
238
238
  },
239
239
  "core/audits/accessibility/duplicate-id-aria.js | description": {
240
- "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.8/duplicate-id-aria)."
240
+ "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)."
241
241
  },
242
242
  "core/audits/accessibility/duplicate-id-aria.js | failureTitle": {
243
243
  "message": "ARIA-tunnisteet eivät ole yksilöllisiä"
@@ -246,7 +246,7 @@
246
246
  "message": "ARIA-tunnisteet ovat yksilöllisiä"
247
247
  },
248
248
  "core/audits/accessibility/empty-heading.js | description": {
249
- "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.8/empty-heading)."
249
+ "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)."
250
250
  },
251
251
  "core/audits/accessibility/empty-heading.js | failureTitle": {
252
252
  "message": "Otsikkoelementeissä ei ole sisältöä."
@@ -255,7 +255,7 @@
255
255
  "message": "Kaikissa otsikkoelementeissä on sisältöä."
256
256
  },
257
257
  "core/audits/accessibility/form-field-multiple-labels.js | description": {
258
- "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.8/form-field-multiple-labels)."
258
+ "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)."
259
259
  },
260
260
  "core/audits/accessibility/form-field-multiple-labels.js | failureTitle": {
261
261
  "message": "Lomakekentillä on useita tunnisteita"
@@ -264,7 +264,7 @@
264
264
  "message": "Lomakekentillä ei ole useita tunnisteita"
265
265
  },
266
266
  "core/audits/accessibility/frame-title.js | description": {
267
- "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.8/frame-title)."
267
+ "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)."
268
268
  },
269
269
  "core/audits/accessibility/frame-title.js | failureTitle": {
270
270
  "message": "`<frame>`- tai `<iframe>`-elementeillä ei ole nimeä"
@@ -273,7 +273,7 @@
273
273
  "message": "`<frame>`- tai `<iframe>`-elementeillä on nimi"
274
274
  },
275
275
  "core/audits/accessibility/heading-order.js | description": {
276
- "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.8/heading-order)."
276
+ "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)."
277
277
  },
278
278
  "core/audits/accessibility/heading-order.js | failureTitle": {
279
279
  "message": "Otsikkoelementit eivät ole laskevassa järjestyksessä"
@@ -282,7 +282,7 @@
282
282
  "message": "Otsikkoelementit ovat laskevassa järjestyksessä"
283
283
  },
284
284
  "core/audits/accessibility/html-has-lang.js | description": {
285
- "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.8/html-has-lang)."
285
+ "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)."
286
286
  },
287
287
  "core/audits/accessibility/html-has-lang.js | failureTitle": {
288
288
  "message": "`<html>`-elementissä ei ole `[lang]`-määritettä"
@@ -291,7 +291,7 @@
291
291
  "message": "`<html>`-elementissä on `[lang]`-määrite"
292
292
  },
293
293
  "core/audits/accessibility/html-lang-valid.js | description": {
294
- "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.8/html-lang-valid)."
294
+ "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)."
295
295
  },
296
296
  "core/audits/accessibility/html-lang-valid.js | failureTitle": {
297
297
  "message": "`<html>`-elementin `[lang]`-määritteen arvo ei ole kelvollinen"
@@ -300,7 +300,7 @@
300
300
  "message": "`<html>`-elementin `[lang]`-määritteen arvo on kelvollinen"
301
301
  },
302
302
  "core/audits/accessibility/html-xml-lang-mismatch.js | description": {
303
- "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.8/html-xml-lang-mismatch)."
303
+ "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)."
304
304
  },
305
305
  "core/audits/accessibility/html-xml-lang-mismatch.js | failureTitle": {
306
306
  "message": "`<html>`-elementissä ei ole `[xml:lang]`-määritettä, jolla on sama peruskieli kuin `[lang]`-määritteellä."
@@ -309,7 +309,7 @@
309
309
  "message": "`<html>`-elementillä on `[xml:lang]`-määrite, jolla on sama peruskieli kuin `[lang]`-määritteellä."
310
310
  },
311
311
  "core/audits/accessibility/identical-links-same-purpose.js | description": {
312
- "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.8/identical-links-same-purpose)."
312
+ "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)."
313
313
  },
314
314
  "core/audits/accessibility/identical-links-same-purpose.js | failureTitle": {
315
315
  "message": "Identtisillä linkeillä ei ole samaa tarkoitusta."
@@ -318,7 +318,7 @@
318
318
  "message": "Identtisillä linkeillä on sama tarkoitus."
319
319
  },
320
320
  "core/audits/accessibility/image-alt.js | description": {
321
- "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.8/image-alt)."
321
+ "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)."
322
322
  },
323
323
  "core/audits/accessibility/image-alt.js | failureTitle": {
324
324
  "message": "Kuvaelementeillä ei ole `[alt]`-määritteitä"
@@ -327,7 +327,7 @@
327
327
  "message": "Kuvaelementeillä on `[alt]`-määritteet"
328
328
  },
329
329
  "core/audits/accessibility/image-redundant-alt.js | description": {
330
- "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.8/image-redundant-alt)."
330
+ "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)."
331
331
  },
332
332
  "core/audits/accessibility/image-redundant-alt.js | failureTitle": {
333
333
  "message": "Kuvaelementeissä on `[alt]`-määritteitä, jotka ovat tarpeetonta tekstiä."
@@ -336,7 +336,7 @@
336
336
  "message": "Kuvaelementeissä ei ole `[alt]`-määritteitä, jotka ovat tarpeetonta tekstiä."
337
337
  },
338
338
  "core/audits/accessibility/input-button-name.js | description": {
339
- "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.8/input-button-name)."
339
+ "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)."
340
340
  },
341
341
  "core/audits/accessibility/input-button-name.js | failureTitle": {
342
342
  "message": "Syöttöpainikkeissa ei ole selkeää tekstiä."
@@ -345,7 +345,7 @@
345
345
  "message": "Syöttöpainikkeilla on erottuva teksti."
346
346
  },
347
347
  "core/audits/accessibility/input-image-alt.js | description": {
348
- "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.8/input-image-alt)."
348
+ "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)."
349
349
  },
350
350
  "core/audits/accessibility/input-image-alt.js | failureTitle": {
351
351
  "message": "`<input type=\"image\">`-elementeissä ei ole `[alt]`-tekstiä"
@@ -354,7 +354,7 @@
354
354
  "message": "`<input type=\"image\">`-elementeissä on `[alt]`-teksti"
355
355
  },
356
356
  "core/audits/accessibility/label-content-name-mismatch.js | description": {
357
- "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.8/label-content-name-mismatch)."
357
+ "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)."
358
358
  },
359
359
  "core/audits/accessibility/label-content-name-mismatch.js | failureTitle": {
360
360
  "message": "Näkyvää tekstiä sisältävien elementtien tunnisteilla ei ole vastaavia saavutettavia nimiä."
@@ -363,7 +363,7 @@
363
363
  "message": "Näkyvää tekstiä sisältävien elementtien tunnisteilla on vastaavia saavutettavia nimiä."
364
364
  },
365
365
  "core/audits/accessibility/label.js | description": {
366
- "message": "Tunnisteilla varmistetaan, että avustustekniikat (kuten näytönlukuohjelmat) ilmoittavat lomakkeiden ohjaimista oikein. [Lue lisää lomake-elementtien tunnisteista](https://dequeuniversity.com/rules/axe/4.8/label)."
366
+ "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)."
367
367
  },
368
368
  "core/audits/accessibility/label.js | failureTitle": {
369
369
  "message": "Lomakkeiden elementeillä ei ole niihin liittyviä tunnisteita"
@@ -372,7 +372,7 @@
372
372
  "message": "Lomake-elementeillä on niihin liittyvät tunnisteet"
373
373
  },
374
374
  "core/audits/accessibility/landmark-one-main.js | description": {
375
- "message": "Yksi ensisijainen merkki auttaa näytönlukuohjelman käyttäjiä siirtymään verkkosivulle. [Lue lisää merkeistä](https://dequeuniversity.com/rules/axe/4.8/landmark-one-main)."
375
+ "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)."
376
376
  },
377
377
  "core/audits/accessibility/landmark-one-main.js | failureTitle": {
378
378
  "message": "Dokumentilla ei ole ensisijaista merkkiä."
@@ -381,7 +381,7 @@
381
381
  "message": "Dokumentilla on ensisijainen merkki."
382
382
  },
383
383
  "core/audits/accessibility/link-in-text-block.js | description": {
384
- "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.8/link-in-text-block)."
384
+ "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)."
385
385
  },
386
386
  "core/audits/accessibility/link-in-text-block.js | failureTitle": {
387
387
  "message": "Linkit erottuvat helposti vain, jos ne ovat värikkäitä."
@@ -390,7 +390,7 @@
390
390
  "message": "Linkit erottuvat helposti ilman värejä."
391
391
  },
392
392
  "core/audits/accessibility/link-name.js | description": {
393
- "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.8/link-name)."
393
+ "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)."
394
394
  },
395
395
  "core/audits/accessibility/link-name.js | failureTitle": {
396
396
  "message": "Linkkien nimet eivät ole helposti erottuvia"
@@ -399,7 +399,7 @@
399
399
  "message": "Linkkien nimet ovat helposti erottuvia"
400
400
  },
401
401
  "core/audits/accessibility/list.js | description": {
402
- "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.8/list)."
402
+ "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)."
403
403
  },
404
404
  "core/audits/accessibility/list.js | failureTitle": {
405
405
  "message": "Luettelot eivät sisällä ainoastaan `<li>`-elementtejä ja skriptiä tukevia elementtejä (`<script>` ja `<template>`)"
@@ -408,7 +408,7 @@
408
408
  "message": "Luettelot sisältävät ainoastaan `<li>`-elementtejä ja skriptiä tukevia elementtejä (`<script>` ja `<template>`)"
409
409
  },
410
410
  "core/audits/accessibility/listitem.js | description": {
411
- "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.8/listitem)."
411
+ "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)."
412
412
  },
413
413
  "core/audits/accessibility/listitem.js | failureTitle": {
414
414
  "message": "Luettelokohdat (`<li>`) eivät sisälly ylätason `<ul>`-, `<ol>`- tai `<menu>`-elementtiin."
@@ -417,7 +417,7 @@
417
417
  "message": "Luettelokohdat (`<li>`) sisältyvät ylätason `<ul>`-, `<ol>`- tai `<menu>`-elementtiin."
418
418
  },
419
419
  "core/audits/accessibility/meta-refresh.js | description": {
420
- "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.8/meta-refresh)."
420
+ "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)."
421
421
  },
422
422
  "core/audits/accessibility/meta-refresh.js | failureTitle": {
423
423
  "message": "Dokumentissa on käytössä `<meta http-equiv=\"refresh\">`"
@@ -426,7 +426,7 @@
426
426
  "message": "Dokumentti ei käytä `<meta http-equiv=\"refresh\">`-tagia"
427
427
  },
428
428
  "core/audits/accessibility/meta-viewport.js | description": {
429
- "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.8/meta-viewport)."
429
+ "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)."
430
430
  },
431
431
  "core/audits/accessibility/meta-viewport.js | failureTitle": {
432
432
  "message": "`[user-scalable=\"no\"]` on käytössä `<meta name=\"viewport\">`-elementissä tai `[maximum-scale]`-määrite on pienempi kuin 5"
@@ -435,7 +435,7 @@
435
435
  "message": "`[user-scalable=\"no\"]` ei ole käytössä `<meta name=\"viewport\">`-elementissä, ja `[maximum-scale]`-määrite on vähintään 5"
436
436
  },
437
437
  "core/audits/accessibility/object-alt.js | description": {
438
- "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.8/object-alt)."
438
+ "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)."
439
439
  },
440
440
  "core/audits/accessibility/object-alt.js | failureTitle": {
441
441
  "message": "`<object>`-elementeissä ei ole vaihtoehtoista tekstiä."
@@ -444,7 +444,7 @@
444
444
  "message": "`<object>`-elementeissä on vaihtoehtoista tekstiä."
445
445
  },
446
446
  "core/audits/accessibility/select-name.js | description": {
447
- "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.8/select-name)."
447
+ "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)."
448
448
  },
449
449
  "core/audits/accessibility/select-name.js | failureTitle": {
450
450
  "message": "Tietyt elementit eivät sisällä tunniste-elementtejä."
@@ -453,7 +453,7 @@
453
453
  "message": "Tietyt elementit sisältävät tunniste-elementtejä."
454
454
  },
455
455
  "core/audits/accessibility/skip-link.js | description": {
456
- "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.8/skip-link)."
456
+ "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)."
457
457
  },
458
458
  "core/audits/accessibility/skip-link.js | failureTitle": {
459
459
  "message": "Ohituslinkkejä ei voi kohdistaa."
@@ -462,7 +462,7 @@
462
462
  "message": "Ohitettavat linkit ovat kohdistettavissa."
463
463
  },
464
464
  "core/audits/accessibility/tabindex.js | description": {
465
- "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.8/tabindex)."
465
+ "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)."
466
466
  },
467
467
  "core/audits/accessibility/tabindex.js | failureTitle": {
468
468
  "message": "Joidenkin elementtien `[tabindex]`-arvo on suurempi kuin 0"
@@ -471,7 +471,7 @@
471
471
  "message": "Yhdenkään elementin `[tabindex]`-arvo ei ole suurempi kuin 0"
472
472
  },
473
473
  "core/audits/accessibility/table-duplicate-name.js | description": {
474
- "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.8/table-duplicate-name)."
474
+ "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)."
475
475
  },
476
476
  "core/audits/accessibility/table-duplicate-name.js | failureTitle": {
477
477
  "message": "Taulukoiden sisältö on sama yhteenvetomääritteessä ja täällä: `<caption>.`"
@@ -480,7 +480,7 @@
480
480
  "message": "Taulukoiden sisältö on eri yhteenvetomääritteessä ja täällä: `<caption>`"
481
481
  },
482
482
  "core/audits/accessibility/table-fake-caption.js | description": {
483
- "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.8/table-fake-caption)."
483
+ "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)."
484
484
  },
485
485
  "core/audits/accessibility/table-fake-caption.js | failureTitle": {
486
486
  "message": "Taulukoissa ei käytetä `<caption>`-määritettä sellaisten solujen sijaan, joissa on `[colspan]`-attribuutti tekstityksen merkkinä."
@@ -489,7 +489,7 @@
489
489
  "message": "Taulukoissa käytetään `<caption>`-määritettä sellaisten solujen sijaan, joissa on `[colspan]`-attribuutti tekstityksen merkkinä."
490
490
  },
491
491
  "core/audits/accessibility/target-size.js | description": {
492
- "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.8/target-size)."
492
+ "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)."
493
493
  },
494
494
  "core/audits/accessibility/target-size.js | failureTitle": {
495
495
  "message": "Kosketusalueiden koko tai välit eivät ole riittäviä."
@@ -498,7 +498,7 @@
498
498
  "message": "Kosketusalueiden koko ja välit ovat riittäviä."
499
499
  },
500
500
  "core/audits/accessibility/td-has-header.js | description": {
501
- "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.8/td-has-header)."
501
+ "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)."
502
502
  },
503
503
  "core/audits/accessibility/td-has-header.js | failureTitle": {
504
504
  "message": "Suuren `<table>`-elementin `<td>`-elementeillä ei ole otsikoita taulukoissa."
@@ -507,7 +507,7 @@
507
507
  "message": "Suuren `<table>`-elementin `<td>`-elementeillä on vähintään yksi otsikko taulukoissa."
508
508
  },
509
509
  "core/audits/accessibility/td-headers-attr.js | description": {
510
- "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.8/td-headers-attr)."
510
+ "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)."
511
511
  },
512
512
  "core/audits/accessibility/td-headers-attr.js | failureTitle": {
513
513
  "message": "`[headers]`-määritettä käyttävät `<table>`-elementin solut viittaavat elementtiin (`id`), joka ei ole samassa taulukossa."
@@ -516,7 +516,7 @@
516
516
  "message": "`[headers]`-määritettä käyttävät `<table>`-elementin solut viittaavat soluihin samassa taulukossa"
517
517
  },
518
518
  "core/audits/accessibility/th-has-data-cells.js | description": {
519
- "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.8/th-has-data-cells)."
519
+ "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)."
520
520
  },
521
521
  "core/audits/accessibility/th-has-data-cells.js | failureTitle": {
522
522
  "message": "`<th>`-elementit ja elementit, joissa on `[role=\"columnheader\"/\"rowheader\"]`, eivät sisällä niissä kuvattuja datasoluja"
@@ -525,7 +525,7 @@
525
525
  "message": "`<th>`-elementit ja elementit, joissa on `[role=\"columnheader\"/\"rowheader\"]`, sisältävät niissä kuvatut datasolut"
526
526
  },
527
527
  "core/audits/accessibility/valid-lang.js | description": {
528
- "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.8/valid-lang)."
528
+ "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)."
529
529
  },
530
530
  "core/audits/accessibility/valid-lang.js | failureTitle": {
531
531
  "message": "`[lang]`-määritteiden arvot eivät ole kelvollisia"
@@ -534,7 +534,7 @@
534
534
  "message": "`[lang]`-määritteillä on kelvollinen arvo"
535
535
  },
536
536
  "core/audits/accessibility/video-caption.js | description": {
537
- "message": "Kun videossa on tekstitykset, kuurot ja heikkokuuloiset saavat videon tiedot paremmin. [Lue lisää videoiden tekstityksistä](https://dequeuniversity.com/rules/axe/4.8/video-caption)."
537
+ "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)."
538
538
  },
539
539
  "core/audits/accessibility/video-caption.js | failureTitle": {
540
540
  "message": "Elementit (`<video>`) eivät sisällä elementtiä (`<track>`), jossa on `[kind=\"captions\"]`"
@@ -1160,15 +1160,6 @@
1160
1160
  "core/audits/non-composited-animations.js | unsupportedTimingParameters": {
1161
1161
  "message": "Tehosteessa on ei-tuettuja ajoitusparametreja"
1162
1162
  },
1163
- "core/audits/performance-budget.js | description": {
1164
- "message": "Pidä verkkopyyntöjen määrä ja koko tehokkuusbudjetissa määritettyjen tavoitteiden rajoissa. [Lue lisää tehokkuusbudjeteista](https://developers.google.com/web/tools/lighthouse/audits/budgets)."
1165
- },
1166
- "core/audits/performance-budget.js | requestCountOverBudget": {
1167
- "message": "{count,plural, =1{1 pyyntö}other{# pyyntöä}}"
1168
- },
1169
- "core/audits/performance-budget.js | title": {
1170
- "message": "Tehokkuusbudjetti"
1171
- },
1172
1163
  "core/audits/preload-fonts.js | description": {
1173
1164
  "message": "Esilataa `optional` fonttia ensikertalaisten kävijöiden saataville. [Lue lisää fonttien esilataamisesta](https://web.dev/articles/preload-optional-fonts)."
1174
1165
  },
@@ -1403,18 +1394,6 @@
1403
1394
  "core/audits/third-party-summary.js | title": {
1404
1395
  "message": "Minimoi kolmannen osapuolen käyttö"
1405
1396
  },
1406
- "core/audits/timing-budget.js | columnMeasurement": {
1407
- "message": "Arvo"
1408
- },
1409
- "core/audits/timing-budget.js | columnTimingMetric": {
1410
- "message": "Mittari"
1411
- },
1412
- "core/audits/timing-budget.js | description": {
1413
- "message": "Aseta aikabudjetti, niin voit seurata sivustosi nopeutta. Kun sivusto toimii oikein, sen latausaika on lyhyt ja se vastaa käyttäjän syötteisiin nopeasti. [Lue lisää tehokkuusbudjeteista](https://developers.google.com/web/tools/lighthouse/audits/budgets)."
1414
- },
1415
- "core/audits/timing-budget.js | title": {
1416
- "message": "Aikabudjetti"
1417
- },
1418
1397
  "core/audits/unsized-images.js | description": {
1419
1398
  "message": "Lisää kuvaelementeille kiinteä leveys ja pituus, jotta asettelu muuttuu vähemmän ja CLS paranee. [Katso, miten voit valita kuvan mitat](https://web.dev/articles/optimize-cls#images_without_dimensions)."
1420
1399
  },
@@ -1509,7 +1488,7 @@
1509
1488
  "message": "Esityksen viive"
1510
1489
  },
1511
1490
  "core/audits/work-during-interaction.js | processingDuration": {
1512
- "message": "Käsittelyaika"
1491
+ "message": "Käsittelyn kesto"
1513
1492
  },
1514
1493
  "core/audits/work-during-interaction.js | title": {
1515
1494
  "message": "Minimoi työn tärkeän interaktion aikana"
@@ -1586,12 +1565,6 @@
1586
1565
  "core/config/default-config.js | bestPracticesUXGroupTitle": {
1587
1566
  "message": "Käyttökokemus"
1588
1567
  },
1589
- "core/config/default-config.js | budgetsGroupDescription": {
1590
- "message": "Tehokkuusbudjetit määrittävät sivuston tehokkuuden standardit."
1591
- },
1592
- "core/config/default-config.js | budgetsGroupTitle": {
1593
- "message": "Budjetit"
1594
- },
1595
1568
  "core/config/default-config.js | diagnosticsGroupDescription": {
1596
1569
  "message": "Lisätietoja sovelluksen toiminnasta. Luvut eivät [suoraan vaikuta](https://developer.chrome.com/docs/lighthouse/performance/performance-scoring/) tehokkuusprosenttiin."
1597
1570
  },
@@ -2285,9 +2258,6 @@
2285
2258
  "core/lib/i18n/i18n.js | columnName": {
2286
2259
  "message": "Nimi"
2287
2260
  },
2288
- "core/lib/i18n/i18n.js | columnOverBudget": {
2289
- "message": "Ylittää budjetin"
2290
- },
2291
2261
  "core/lib/i18n/i18n.js | columnRequests": {
2292
2262
  "message": "Pyynnöt"
2293
2263
  },