chrome-devtools-frontend 1.0.1642899 → 1.0.1643855

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 (125) hide show
  1. package/eslint.config.mjs +3 -1
  2. package/extension-api/ExtensionAPI.d.ts +83 -12
  3. package/front_end/core/host/UserMetrics.ts +0 -1
  4. package/front_end/core/protocol_client/InspectorBackend.ts +4 -0
  5. package/front_end/core/root/ExperimentNames.ts +0 -1
  6. package/front_end/core/sdk/ConsoleModel.ts +4 -0
  7. package/front_end/core/sdk/NetworkRequest.ts +12 -0
  8. package/front_end/core/sdk/SourceMap.ts +15 -18
  9. package/front_end/entrypoints/greendev_floaty/FloatyEntrypoint.ts +0 -2
  10. package/front_end/entrypoints/greendev_floaty/greendev_floaty.ts +0 -2
  11. package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshot.ts +4 -5
  12. package/front_end/entrypoints/main/MainImpl.ts +0 -6
  13. package/front_end/generated/InspectorBackendCommands.ts +1 -1
  14. package/front_end/generated/protocol.ts +7 -0
  15. package/front_end/models/ai_assistance/AiAgent2.ts +24 -5
  16. package/front_end/models/ai_assistance/AiConversation.ts +15 -12
  17. package/front_end/models/ai_assistance/AiUtils.ts +71 -0
  18. package/front_end/models/ai_assistance/ChangeManager.ts +2 -5
  19. package/front_end/models/ai_assistance/{agents/ConversationSummaryAgent.ts → ConversationSummary.ts} +29 -66
  20. package/front_end/models/ai_assistance/ExtensionScope.ts +1 -4
  21. package/front_end/models/ai_assistance/{agents/PerformanceAnnotationsAgent.ts → PerformanceAnnotations.ts} +47 -89
  22. package/front_end/models/ai_assistance/agents/AccessibilityAgent.ts +47 -31
  23. package/front_end/models/ai_assistance/agents/AiAgent.ts +40 -12
  24. package/front_end/models/ai_assistance/agents/ContextSelectionAgent.snapshot.txt +11 -0
  25. package/front_end/models/ai_assistance/agents/ContextSelectionAgent.ts +58 -8
  26. package/front_end/models/ai_assistance/agents/ExecuteJavascript.ts +1 -92
  27. package/front_end/models/ai_assistance/agents/NetworkAgent.ts +25 -0
  28. package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +94 -79
  29. package/front_end/models/ai_assistance/agents/StorageAgent.ts +101 -39
  30. package/front_end/models/ai_assistance/agents/StylingAgent.snapshot.txt +1 -2
  31. package/front_end/models/ai_assistance/agents/StylingAgent.ts +27 -21
  32. package/front_end/models/ai_assistance/ai_assistance.ts +6 -4
  33. package/front_end/models/ai_assistance/skills/styling.md +12 -4
  34. package/front_end/models/ai_assistance/tools/ExecuteJavaScript.ts +134 -0
  35. package/front_end/models/ai_assistance/tools/GetStyles.ts +6 -2
  36. package/front_end/models/ai_assistance/tools/Tool.ts +16 -1
  37. package/front_end/models/ai_assistance/tools/ToolRegistry.ts +2 -0
  38. package/front_end/models/bindings/DebuggerWorkspaceBinding.ts +6 -9
  39. package/front_end/models/bindings/DefaultScriptMapping.ts +2 -1
  40. package/front_end/models/bindings/SymbolizedError.ts +45 -35
  41. package/front_end/models/extensions/ExtensionAPI.ts +138 -47
  42. package/front_end/models/har/Importer.ts +1 -0
  43. package/front_end/models/heap_snapshot/HeapSnapshotProxy.ts +5 -7
  44. package/front_end/models/source_map_scopes/FunctionCodeResolver.ts +12 -2
  45. package/front_end/models/stack_trace/DetailedErrorStackParser.ts +44 -51
  46. package/front_end/models/stack_trace/StackTrace.ts +7 -0
  47. package/front_end/models/stack_trace/StackTraceImpl.ts +13 -4
  48. package/front_end/models/stack_trace/StackTraceModel.ts +9 -8
  49. package/front_end/panels/accessibility/AccessibilitySidebarView.ts +2 -1
  50. package/front_end/panels/ai_assistance/AiAssistancePanel.ts +8 -8
  51. package/front_end/panels/ai_assistance/components/ChatMessage.ts +96 -4
  52. package/front_end/panels/ai_assistance/components/chatMessage.css +6 -0
  53. package/front_end/panels/application/ApplicationPanelSidebar.ts +39 -0
  54. package/front_end/panels/application/ApplicationPanelTreeElement.ts +39 -0
  55. package/front_end/panels/application/CookieItemsView.ts +2 -2
  56. package/front_end/panels/application/components/AdsView.ts +219 -0
  57. package/front_end/panels/application/components/adsView.css +54 -0
  58. package/front_end/panels/application/components/components.ts +2 -0
  59. package/front_end/panels/application/resourcesSidebar.css +11 -0
  60. package/front_end/panels/console/SymbolizedErrorWidget.ts +79 -25
  61. package/front_end/panels/network/NetworkLogView.ts +5 -1
  62. package/front_end/panels/settings/emulation/DevicesSettingsTab.ts +1 -0
  63. package/front_end/panels/sources/SourcesPanel.ts +2 -1
  64. package/front_end/panels/timeline/overlays/components/EntryLabelOverlay.ts +5 -4
  65. package/front_end/third_party/chromium/README.chromium +1 -1
  66. package/front_end/third_party/lighthouse/README.chromium +2 -2
  67. package/front_end/third_party/lighthouse/lighthouse-dt-bundle.js +1607 -5733
  68. package/front_end/third_party/lighthouse/locales/ar-XB.json +290 -65
  69. package/front_end/third_party/lighthouse/locales/ar.json +290 -65
  70. package/front_end/third_party/lighthouse/locales/bg.json +290 -65
  71. package/front_end/third_party/lighthouse/locales/ca.json +295 -70
  72. package/front_end/third_party/lighthouse/locales/cs.json +290 -65
  73. package/front_end/third_party/lighthouse/locales/da.json +294 -69
  74. package/front_end/third_party/lighthouse/locales/de.json +295 -70
  75. package/front_end/third_party/lighthouse/locales/el.json +290 -65
  76. package/front_end/third_party/lighthouse/locales/en-GB.json +290 -65
  77. package/front_end/third_party/lighthouse/locales/en-US.json +79 -67
  78. package/front_end/third_party/lighthouse/locales/en-XA.json +253 -64
  79. package/front_end/third_party/lighthouse/locales/en-XL.json +79 -67
  80. package/front_end/third_party/lighthouse/locales/es-419.json +290 -65
  81. package/front_end/third_party/lighthouse/locales/es.json +298 -73
  82. package/front_end/third_party/lighthouse/locales/fi.json +290 -65
  83. package/front_end/third_party/lighthouse/locales/fil.json +290 -65
  84. package/front_end/third_party/lighthouse/locales/fr.json +294 -69
  85. package/front_end/third_party/lighthouse/locales/he.json +293 -68
  86. package/front_end/third_party/lighthouse/locales/hi.json +291 -66
  87. package/front_end/third_party/lighthouse/locales/hr.json +290 -65
  88. package/front_end/third_party/lighthouse/locales/hu.json +290 -65
  89. package/front_end/third_party/lighthouse/locales/id.json +290 -65
  90. package/front_end/third_party/lighthouse/locales/it.json +294 -69
  91. package/front_end/third_party/lighthouse/locales/ja.json +290 -65
  92. package/front_end/third_party/lighthouse/locales/ko.json +290 -65
  93. package/front_end/third_party/lighthouse/locales/lt.json +290 -65
  94. package/front_end/third_party/lighthouse/locales/lv.json +290 -65
  95. package/front_end/third_party/lighthouse/locales/nl.json +290 -65
  96. package/front_end/third_party/lighthouse/locales/no.json +290 -65
  97. package/front_end/third_party/lighthouse/locales/pl.json +290 -65
  98. package/front_end/third_party/lighthouse/locales/pt-PT.json +291 -66
  99. package/front_end/third_party/lighthouse/locales/pt.json +290 -65
  100. package/front_end/third_party/lighthouse/locales/ro.json +290 -65
  101. package/front_end/third_party/lighthouse/locales/ru.json +301 -76
  102. package/front_end/third_party/lighthouse/locales/sk.json +291 -66
  103. package/front_end/third_party/lighthouse/locales/sl.json +290 -65
  104. package/front_end/third_party/lighthouse/locales/sr-Latn.json +290 -65
  105. package/front_end/third_party/lighthouse/locales/sr.json +290 -65
  106. package/front_end/third_party/lighthouse/locales/sv.json +297 -72
  107. package/front_end/third_party/lighthouse/locales/ta.json +291 -66
  108. package/front_end/third_party/lighthouse/locales/te.json +293 -68
  109. package/front_end/third_party/lighthouse/locales/th.json +291 -66
  110. package/front_end/third_party/lighthouse/locales/tr.json +290 -65
  111. package/front_end/third_party/lighthouse/locales/uk.json +290 -65
  112. package/front_end/third_party/lighthouse/locales/vi.json +291 -66
  113. package/front_end/third_party/lighthouse/locales/zh-HK.json +292 -67
  114. package/front_end/third_party/lighthouse/locales/zh-TW.json +291 -66
  115. package/front_end/third_party/lighthouse/locales/zh.json +291 -66
  116. package/front_end/third_party/lighthouse/report/bundle.d.ts +6 -6
  117. package/front_end/third_party/lighthouse/report/bundle.js +4 -7
  118. package/front_end/third_party/lighthouse/report-assets/report-generator.mjs +2 -2
  119. package/front_end/ui/legacy/StackedPane.ts +229 -0
  120. package/front_end/ui/legacy/ViewManager.ts +59 -169
  121. package/front_end/ui/legacy/Widget.ts +32 -8
  122. package/front_end/ui/legacy/legacy.ts +3 -1
  123. package/front_end/ui/visual_logging/KnownContextValues.ts +2 -0
  124. package/mcp/mcp.ts +1 -0
  125. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "core/audits/accessibility/accesskeys.js | description": {
3
- "message": "As chaves de acesso permitem que os utilizadores se concentrem rapidamente numa parte da página. Para uma navegação adequada, cada token de acesso tem de ser exclusiva. [Saiba mais acerca das chaves de acesso](https://dequeuniversity.com/rules/axe/4.11/accesskeys)."
3
+ "message": "As chaves de acesso permitem que os utilizadores se concentrem rapidamente numa parte da página. Para uma navegação adequada, cada token de acesso tem de ser exclusiva. [Saiba mais acerca das chaves de acesso](https://dequeuniversity.com/rules/axe/4.12/accesskeys)."
4
4
  },
5
5
  "core/audits/accessibility/accesskeys.js | failureTitle": {
6
6
  "message": "Os valores `[accesskey]` não são exclusivos"
@@ -9,7 +9,7 @@
9
9
  "message": "Os valores `[accesskey]` são exclusivos"
10
10
  },
11
11
  "core/audits/accessibility/aria-allowed-attr.js | description": {
12
- "message": "Cada ARIA `role` suporta um subconjunto específico de atributos `aria-*`. A não correspondência destes invalida os atributos `aria-*`. [Saiba como corresponder os atributos ARIA às respetivas funções](https://dequeuniversity.com/rules/axe/4.11/aria-allowed-attr)."
12
+ "message": "Cada ARIA `role` suporta um subconjunto específico de atributos `aria-*`. A não correspondência destes invalida os atributos `aria-*`. [Saiba como corresponder os atributos ARIA às respetivas funções](https://dequeuniversity.com/rules/axe/4.12/aria-allowed-attr)."
13
13
  },
14
14
  "core/audits/accessibility/aria-allowed-attr.js | failureTitle": {
15
15
  "message": "Os atributos `[aria-*]` não correspondem às respetivas funções"
@@ -18,7 +18,7 @@
18
18
  "message": "Os atributos `[aria-*]` correspondem às respetivas funções"
19
19
  },
20
20
  "core/audits/accessibility/aria-allowed-role.js | description": {
21
- "message": "Muitos elementos HTML só podem ser atribuídos a determinadas funções ARIA. A utilização de funções ARIA nas quais não são permitidos pode interferir com a acessibilidade da página Web. [Saiba mais sobre as funções ARIA](https://dequeuniversity.com/rules/axe/4.11/aria-allowed-role)."
21
+ "message": "Muitos elementos HTML só podem ser atribuídos a determinadas funções ARIA. A utilização de funções ARIA nas quais não são permitidos pode interferir com a acessibilidade da página Web. [Saiba mais sobre as funções ARIA](https://dequeuniversity.com/rules/axe/4.12/aria-allowed-role)."
22
22
  },
23
23
  "core/audits/accessibility/aria-allowed-role.js | failureTitle": {
24
24
  "message": "Usa funções ARIA em elementos incompatíveis"
@@ -27,7 +27,7 @@
27
27
  "message": "Usa funções ARIA apenas em elementos compatíveis"
28
28
  },
29
29
  "core/audits/accessibility/aria-command-name.js | description": {
30
- "message": "Quando um elemento não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba como tornar os elementos de comandos mais acessíveis](https://dequeuniversity.com/rules/axe/4.11/aria-command-name)."
30
+ "message": "Quando um elemento não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba como tornar os elementos de comandos mais acessíveis](https://dequeuniversity.com/rules/axe/4.12/aria-command-name)."
31
31
  },
32
32
  "core/audits/accessibility/aria-command-name.js | failureTitle": {
33
33
  "message": "Os elementos `button`, `link` e `menuitem` não têm nomes acessíveis"
@@ -36,7 +36,7 @@
36
36
  "message": "Os elementos `button`, `link` e `menuitem` têm nomes acessíveis"
37
37
  },
38
38
  "core/audits/accessibility/aria-conditional-attr.js | description": {
39
- "message": "Alguns atributos ARIA só são permitidos num elemento em determinadas condições. [Saiba mais acerca dos atributos ARIA condicionais](https://dequeuniversity.com/rules/axe/4.11/aria-conditional-attr)."
39
+ "message": "Alguns atributos ARIA só são permitidos num elemento em determinadas condições. [Saiba mais acerca dos atributos ARIA condicionais](https://dequeuniversity.com/rules/axe/4.12/aria-conditional-attr)."
40
40
  },
41
41
  "core/audits/accessibility/aria-conditional-attr.js | failureTitle": {
42
42
  "message": "Os atributos ARIA não são usados conforme especificado para a função do elemento"
@@ -45,7 +45,7 @@
45
45
  "message": "Os atributos ARIA são usados conforme especificado para a função do elemento"
46
46
  },
47
47
  "core/audits/accessibility/aria-deprecated-role.js | description": {
48
- "message": "As funções ARIA descontinuadas podem não ser processadas corretamente pela tecnologia de assistência. [Saiba mais acerca das funções ARIA descontinuadas](https://dequeuniversity.com/rules/axe/4.11/aria-deprecated-role)."
48
+ "message": "As funções ARIA descontinuadas podem não ser processadas corretamente pela tecnologia de assistência. [Saiba mais acerca das funções ARIA descontinuadas](https://dequeuniversity.com/rules/axe/4.12/aria-deprecated-role)."
49
49
  },
50
50
  "core/audits/accessibility/aria-deprecated-role.js | failureTitle": {
51
51
  "message": "Foram usadas funções ARIA descontinuadas"
@@ -54,7 +54,7 @@
54
54
  "message": "As funções ARIA descontinuadas não foram usadas"
55
55
  },
56
56
  "core/audits/accessibility/aria-dialog-name.js | description": {
57
- "message": "Os elementos da caixa de diálogo ARIA sem nomes acessíveis podem impedir os utilizadores de leitores de ecrã de perceberem a finalidade destes elementos. [Saiba como tornar os elementos da caixa de diálogo ARIA mais acessíveis](https://dequeuniversity.com/rules/axe/4.11/aria-dialog-name)."
57
+ "message": "Os elementos da caixa de diálogo ARIA sem nomes acessíveis podem impedir os utilizadores de leitores de ecrã de perceberem a finalidade destes elementos. [Saiba como tornar os elementos da caixa de diálogo ARIA mais acessíveis](https://dequeuniversity.com/rules/axe/4.12/aria-dialog-name)."
58
58
  },
59
59
  "core/audits/accessibility/aria-dialog-name.js | failureTitle": {
60
60
  "message": "Os elementos com `role=\"dialog\"` ou `role=\"alertdialog\"` não têm nomes acessíveis."
@@ -63,7 +63,7 @@
63
63
  "message": "Os elementos com `role=\"dialog\"` ou `role=\"alertdialog\"` têm nomes acessíveis."
64
64
  },
65
65
  "core/audits/accessibility/aria-hidden-body.js | description": {
66
- "message": "As tecnologias de assistência, que incluem os leitores de ecrã, funcionam de forma inconsistente quando `aria-hidden=\"true\"` está definido no `<body>` do documento. [Saiba como o `aria-hidden` afeta o corpo do documento](https://dequeuniversity.com/rules/axe/4.11/aria-hidden-body)."
66
+ "message": "As tecnologias de assistência, que incluem os leitores de ecrã, funcionam de forma inconsistente quando `aria-hidden=\"true\"` está definido no `<body>` do documento. [Saiba como o `aria-hidden` afeta o corpo do documento](https://dequeuniversity.com/rules/axe/4.12/aria-hidden-body)."
67
67
  },
68
68
  "core/audits/accessibility/aria-hidden-body.js | failureTitle": {
69
69
  "message": "`[aria-hidden=\"true\"]` está presente no `<body>` do documento"
@@ -72,7 +72,7 @@
72
72
  "message": "`[aria-hidden=\"true\"]` não está presente no `<body>` do documento"
73
73
  },
74
74
  "core/audits/accessibility/aria-hidden-focus.js | description": {
75
- "message": "Os descendentes focalizáveis de um elemento `[aria-hidden=\"true\"]` impedem que esses elementos interativos fiquem disponíveis para os utilizadores de tecnologias de assistência, como leitores de ecrã. [Saiba como o atributo `aria-hidden` afeta os elementos focalizáveis](https://dequeuniversity.com/rules/axe/4.11/aria-hidden-focus)."
75
+ "message": "Os descendentes focalizáveis de um elemento `[aria-hidden=\"true\"]` impedem que esses elementos interativos fiquem disponíveis para os utilizadores de tecnologias de assistência, como leitores de ecrã. [Saiba como o atributo `aria-hidden` afeta os elementos focalizáveis](https://dequeuniversity.com/rules/axe/4.12/aria-hidden-focus)."
76
76
  },
77
77
  "core/audits/accessibility/aria-hidden-focus.js | failureTitle": {
78
78
  "message": "Os elementos `[aria-hidden=\"true\"]` contêm descendentes focáveis"
@@ -81,7 +81,7 @@
81
81
  "message": "Os elementos `[aria-hidden=\"true\"]` não contêm descendentes focáveis"
82
82
  },
83
83
  "core/audits/accessibility/aria-input-field-name.js | description": {
84
- "message": "Quando um campo de entrada não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba mais acerca das etiquetas de campos de entrada](https://dequeuniversity.com/rules/axe/4.11/aria-input-field-name)."
84
+ "message": "Quando um campo de entrada não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba mais acerca das etiquetas de campos de entrada](https://dequeuniversity.com/rules/axe/4.12/aria-input-field-name)."
85
85
  },
86
86
  "core/audits/accessibility/aria-input-field-name.js | failureTitle": {
87
87
  "message": "Os campos de entrada ARIA não têm nomes acessíveis"
@@ -90,7 +90,7 @@
90
90
  "message": "Os campos de entrada ARIA têm nomes acessíveis"
91
91
  },
92
92
  "core/audits/accessibility/aria-meter-name.js | description": {
93
- "message": "Quando um elemento de contador não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba como atribuir um nome a elementos `meter`](https://dequeuniversity.com/rules/axe/4.11/aria-meter-name)."
93
+ "message": "Quando um elemento de contador não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba como atribuir um nome a elementos `meter`](https://dequeuniversity.com/rules/axe/4.12/aria-meter-name)."
94
94
  },
95
95
  "core/audits/accessibility/aria-meter-name.js | failureTitle": {
96
96
  "message": "Os elementos `meter` ARIA não têm nomes acessíveis"
@@ -99,7 +99,7 @@
99
99
  "message": "Os elementos `meter` ARIA têm nomes acessíveis"
100
100
  },
101
101
  "core/audits/accessibility/aria-progressbar-name.js | description": {
102
- "message": "Quando um elemento `progressbar` não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba como etiquetar elementos `progressbar`](https://dequeuniversity.com/rules/axe/4.11/aria-progressbar-name)."
102
+ "message": "Quando um elemento `progressbar` não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba como etiquetar elementos `progressbar`](https://dequeuniversity.com/rules/axe/4.12/aria-progressbar-name)."
103
103
  },
104
104
  "core/audits/accessibility/aria-progressbar-name.js | failureTitle": {
105
105
  "message": "Os elementos `progressbar` ARIA não têm nomes acessíveis"
@@ -108,7 +108,7 @@
108
108
  "message": "Os elementos `progressbar` ARIA têm nomes acessíveis"
109
109
  },
110
110
  "core/audits/accessibility/aria-prohibited-attr.js | description": {
111
- "message": "A utilização de atributos ARIA em funções onde são proibidos pode significar que informações importantes não são comunicadas aos utilizadores de tecnologias de assistência. [Saiba mais sobre as funções ARIA proibidas](https://dequeuniversity.com/rules/axe/4.11/aria-prohibited-attr)."
111
+ "message": "A utilização de atributos ARIA em funções onde são proibidos pode significar que informações importantes não são comunicadas aos utilizadores de tecnologias de assistência. [Saiba mais sobre as funções ARIA proibidas](https://dequeuniversity.com/rules/axe/4.12/aria-prohibited-attr)."
112
112
  },
113
113
  "core/audits/accessibility/aria-prohibited-attr.js | failureTitle": {
114
114
  "message": "Os elementos usam atributos ARIA proibidos"
@@ -117,7 +117,7 @@
117
117
  "message": "Os elementos usam apenas atributos ARIA permitidos"
118
118
  },
119
119
  "core/audits/accessibility/aria-required-attr.js | description": {
120
- "message": "Algumas funções ARIA têm atributos obrigatórios que descrevem o estado do elemento para os leitores de ecrã. [Saiba mais acerca das funções e dos atributos obrigatórios](https://dequeuniversity.com/rules/axe/4.11/aria-required-attr)."
120
+ "message": "Algumas funções ARIA têm atributos obrigatórios que descrevem o estado do elemento para os leitores de ecrã. [Saiba mais acerca das funções e dos atributos obrigatórios](https://dequeuniversity.com/rules/axe/4.12/aria-required-attr)."
121
121
  },
122
122
  "core/audits/accessibility/aria-required-attr.js | failureTitle": {
123
123
  "message": "Os `[role]`s não têm todos os atributos `[aria-*]` obrigatórios"
@@ -126,7 +126,7 @@
126
126
  "message": "Os `[role]`s têm todos os atributos `[aria-*]` obrigatórios"
127
127
  },
128
128
  "core/audits/accessibility/aria-required-children.js | description": {
129
- "message": "Algumas funções superiores ARIA têm de conter funções secundárias específicas para desempenhar as respetivas funções de acessibilidade previstas. [Saiba mais acerca das funções e dos elementos secundários obrigatórios](https://dequeuniversity.com/rules/axe/4.11/aria-required-children)."
129
+ "message": "Algumas funções superiores ARIA têm de conter funções secundárias específicas para desempenhar as respetivas funções de acessibilidade previstas. [Saiba mais acerca das funções e dos elementos secundários obrigatórios](https://dequeuniversity.com/rules/axe/4.12/aria-required-children)."
130
130
  },
131
131
  "core/audits/accessibility/aria-required-children.js | failureTitle": {
132
132
  "message": "Os elementos com um `[role]` ARIA que requerem que os elementos secundários contenham um `[role]` específico têm alguns ou todos esses elementos secundários requeridos em falta."
@@ -135,7 +135,7 @@
135
135
  "message": "Os elementos com um `[role]` ARIA que requerem que os elementos secundários contenham um `[role]` específico têm todos os elementos secundários requeridos."
136
136
  },
137
137
  "core/audits/accessibility/aria-required-parent.js | description": {
138
- "message": "Algumas funções secundárias ARIA têm de ser contidas por funções superiores específicas para desempenharem adequadamente as respetivas funções de acessibilidade previstas. [Saiba mais acerca das funções ARIA e do elemento superior necessário](https://dequeuniversity.com/rules/axe/4.11/aria-required-parent)."
138
+ "message": "Algumas funções secundárias ARIA têm de ser contidas por funções superiores específicas para desempenharem adequadamente as respetivas funções de acessibilidade previstas. [Saiba mais acerca das funções ARIA e do elemento superior necessário](https://dequeuniversity.com/rules/axe/4.12/aria-required-parent)."
139
139
  },
140
140
  "core/audits/accessibility/aria-required-parent.js | failureTitle": {
141
141
  "message": "Os `[role]`s não são contidos pelo respetivo elemento superior obrigatório"
@@ -144,7 +144,7 @@
144
144
  "message": "Os `[role]`s são contidos pelo respetivo elemento superior obrigatório"
145
145
  },
146
146
  "core/audits/accessibility/aria-roles.js | description": {
147
- "message": "As funções ARIA têm de possuir valores válidos para desempenhar as funções de acessibilidade previstas. [Saiba mais acerca das funções ARIA válidas](https://dequeuniversity.com/rules/axe/4.11/aria-roles)."
147
+ "message": "As funções ARIA têm de possuir valores válidos para desempenhar as funções de acessibilidade previstas. [Saiba mais acerca das funções ARIA válidas](https://dequeuniversity.com/rules/axe/4.12/aria-roles)."
148
148
  },
149
149
  "core/audits/accessibility/aria-roles.js | failureTitle": {
150
150
  "message": "Os valores `[role]` não são válidos"
@@ -153,7 +153,7 @@
153
153
  "message": "Os valores `[role]` são válidos"
154
154
  },
155
155
  "core/audits/accessibility/aria-text.js | description": {
156
- "message": "Adicionar `role=text` à volta de um nó de texto dividido por marcação permite que o VoiceOver o trate como uma expressão, mas os descendentes focalizáveis do elemento não são anunciados. [Saiba mais acerca do atributo `role=text`](https://dequeuniversity.com/rules/axe/4.11/aria-text)."
156
+ "message": "Adicionar `role=text` à volta de um nó de texto dividido por marcação permite que o VoiceOver o trate como uma expressão, mas os descendentes focalizáveis do elemento não são anunciados. [Saiba mais acerca do atributo `role=text`](https://dequeuniversity.com/rules/axe/4.12/aria-text)."
157
157
  },
158
158
  "core/audits/accessibility/aria-text.js | failureTitle": {
159
159
  "message": "Os elementos com o atributo `role=text` têm descendentes focalizáveis."
@@ -162,7 +162,7 @@
162
162
  "message": "Os elementos com o atributo `role=text` não têm descendentes focalizáveis."
163
163
  },
164
164
  "core/audits/accessibility/aria-toggle-field-name.js | description": {
165
- "message": "Quando um campo ativar/desativar não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba mais acerca dos campos ativar/desativar](https://dequeuniversity.com/rules/axe/4.11/aria-toggle-field-name)."
165
+ "message": "Quando um campo ativar/desativar não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba mais acerca dos campos ativar/desativar](https://dequeuniversity.com/rules/axe/4.12/aria-toggle-field-name)."
166
166
  },
167
167
  "core/audits/accessibility/aria-toggle-field-name.js | failureTitle": {
168
168
  "message": "Os campos ativar/desativar ARIA não têm nomes acessíveis"
@@ -171,7 +171,7 @@
171
171
  "message": "Os campos ativar/desativar ARIA têm nomes acessíveis"
172
172
  },
173
173
  "core/audits/accessibility/aria-tooltip-name.js | description": {
174
- "message": "Quando um elemento de sugestão não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba como atribuir um nome a elementos `tooltip`](https://dequeuniversity.com/rules/axe/4.11/aria-tooltip-name)."
174
+ "message": "Quando um elemento de sugestão não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba como atribuir um nome a elementos `tooltip`](https://dequeuniversity.com/rules/axe/4.12/aria-tooltip-name)."
175
175
  },
176
176
  "core/audits/accessibility/aria-tooltip-name.js | failureTitle": {
177
177
  "message": "Os elementos `tooltip` ARIA não têm nomes acessíveis"
@@ -180,7 +180,7 @@
180
180
  "message": "Os elementos `tooltip` ARIA têm nomes acessíveis"
181
181
  },
182
182
  "core/audits/accessibility/aria-treeitem-name.js | description": {
183
- "message": "Quando um elemento `treeitem` não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba mais acerca da etiquetagem de elementos `treeitem`](https://dequeuniversity.com/rules/axe/4.11/aria-treeitem-name)."
183
+ "message": "Quando um elemento `treeitem` não tem um nome acessível, os leitores de ecrã anunciam-no com um nome genérico, tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba mais acerca da etiquetagem de elementos `treeitem`](https://dequeuniversity.com/rules/axe/4.12/aria-treeitem-name)."
184
184
  },
185
185
  "core/audits/accessibility/aria-treeitem-name.js | failureTitle": {
186
186
  "message": "Os elementos `treeitem` ARIA não têm nomes acessíveis"
@@ -189,7 +189,7 @@
189
189
  "message": "Os elementos `treeitem` ARIA têm nomes acessíveis"
190
190
  },
191
191
  "core/audits/accessibility/aria-valid-attr-value.js | description": {
192
- "message": "As tecnologias de assistência, que incluem os leitores de ecrã, não conseguem interpretar atributos ARIA com valores inválidos. [Saiba mais acerca dos valores válidos para os atributos ARIA](https://dequeuniversity.com/rules/axe/4.11/aria-valid-attr-value)."
192
+ "message": "As tecnologias de assistência, que incluem os leitores de ecrã, não conseguem interpretar atributos ARIA com valores inválidos. [Saiba mais acerca dos valores válidos para os atributos ARIA](https://dequeuniversity.com/rules/axe/4.12/aria-valid-attr-value)."
193
193
  },
194
194
  "core/audits/accessibility/aria-valid-attr-value.js | failureTitle": {
195
195
  "message": "Os atributos `[aria-*]` não têm valores válidos"
@@ -198,7 +198,7 @@
198
198
  "message": "Os atributos `[aria-*]` têm valores válidos"
199
199
  },
200
200
  "core/audits/accessibility/aria-valid-attr.js | description": {
201
- "message": "As tecnologias de assistência, que incluem os leitores de ecrã, não conseguem interpretar atributos ARIA com nomes inválidos. [Saiba mais acerca dos atributos ARIA válidos](https://dequeuniversity.com/rules/axe/4.11/aria-valid-attr)."
201
+ "message": "As tecnologias de assistência, que incluem os leitores de ecrã, não conseguem interpretar atributos ARIA com nomes inválidos. [Saiba mais acerca dos atributos ARIA válidos](https://dequeuniversity.com/rules/axe/4.12/aria-valid-attr)."
202
202
  },
203
203
  "core/audits/accessibility/aria-valid-attr.js | failureTitle": {
204
204
  "message": "Os atributos `[aria-*]` não são válidos ou têm erros ortográficos"
@@ -206,11 +206,20 @@
206
206
  "core/audits/accessibility/aria-valid-attr.js | title": {
207
207
  "message": "Os atributos `[aria-*]` são válidos e não têm erros ortográficos"
208
208
  },
209
+ "core/audits/accessibility/autocomplete-valid.js | description": {
210
+ "message": "Os valores do atributo `autocomplete` têm de ser válidos e aplicados corretamente para que os leitores de ecrã funcionem corretamente. [Saiba mais sobre os valores autocomplete válidos](https://dequeuniversity.com/rules/axe/4.12/autocomplete-valid)."
211
+ },
212
+ "core/audits/accessibility/autocomplete-valid.js | failureTitle": {
213
+ "message": "Os atributos `autocomplete` não estão a ser usados corretamente"
214
+ },
215
+ "core/audits/accessibility/autocomplete-valid.js | title": {
216
+ "message": "Os atributos `autocomplete` estão a ser usados corretamente"
217
+ },
209
218
  "core/audits/accessibility/axe-audit.js | failingElementsHeader": {
210
219
  "message": "Elementos reprovados"
211
220
  },
212
221
  "core/audits/accessibility/button-name.js | description": {
213
- "message": "Quando um botão não tem um nome acessível, os leitores de ecrã anunciam-no como \"botão\", tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba como tornar os botões mais acessíveis](https://dequeuniversity.com/rules/axe/4.11/button-name)."
222
+ "message": "Quando um botão não tem um nome acessível, os leitores de ecrã anunciam-no como \"botão\", tornando-o inutilizável para os utilizadores que dependem de leitores de ecrã. [Saiba como tornar os botões mais acessíveis](https://dequeuniversity.com/rules/axe/4.12/button-name)."
214
223
  },
215
224
  "core/audits/accessibility/button-name.js | failureTitle": {
216
225
  "message": "Os botões não têm um nome acessível"
@@ -219,7 +228,7 @@
219
228
  "message": "Os botões têm um nome acessível"
220
229
  },
221
230
  "core/audits/accessibility/bypass.js | description": {
222
- "message": "Adicionar formas de ignorar conteúdo repetitivo permite que os utilizadores com teclado naveguem na página de forma mais eficiente. [Saiba mais acerca dos blocos para ignorar](https://dequeuniversity.com/rules/axe/4.11/bypass)."
231
+ "message": "Adicionar formas de ignorar conteúdo repetitivo permite que os utilizadores com teclado naveguem na página de forma mais eficiente. [Saiba mais acerca dos blocos para ignorar](https://dequeuniversity.com/rules/axe/4.12/bypass)."
223
232
  },
224
233
  "core/audits/accessibility/bypass.js | failureTitle": {
225
234
  "message": "A página não contém um título, um link para ignorar ou uma região de ponto de referência"
@@ -228,7 +237,7 @@
228
237
  "message": "A página contém um título, um link para ignorar ou uma região de ponto de referência"
229
238
  },
230
239
  "core/audits/accessibility/color-contrast.js | description": {
231
- "message": "O texto de baixo contraste é difícil ou impossível de ler para muitos utilizadores. [Saiba como criar um contraste de cor suficiente](https://dequeuniversity.com/rules/axe/4.11/color-contrast)."
240
+ "message": "O texto de baixo contraste é difícil ou impossível de ler para muitos utilizadores. [Saiba como criar um contraste de cor suficiente](https://dequeuniversity.com/rules/axe/4.12/color-contrast)."
232
241
  },
233
242
  "core/audits/accessibility/color-contrast.js | failureTitle": {
234
243
  "message": "As cores de primeiro e de segundo plano não têm uma relação de contraste suficiente"
@@ -237,7 +246,7 @@
237
246
  "message": "As cores de segundo plano e de primeiro plano têm uma relação de contraste suficiente"
238
247
  },
239
248
  "core/audits/accessibility/definition-list.js | description": {
240
- "message": "Quando as listas de definição não estão devidamente marcadas, os leitores de ecrã podem produzir um resultado confuso ou impreciso. [Saiba como estruturar corretamente listas de definições](https://dequeuniversity.com/rules/axe/4.11/definition-list)."
249
+ "message": "Quando as listas de definição não estão devidamente marcadas, os leitores de ecrã podem produzir um resultado confuso ou impreciso. [Saiba como estruturar corretamente listas de definições](https://dequeuniversity.com/rules/axe/4.12/definition-list)."
241
250
  },
242
251
  "core/audits/accessibility/definition-list.js | failureTitle": {
243
252
  "message": "Os `<dl>`s não contêm apenas grupos de `<dt>` e `<dd>` devidamente ordenados, nem elementos `<script>`, `<template>` ou `<div>`."
@@ -246,7 +255,7 @@
246
255
  "message": "Os `<dl>`s contêm apenas grupos de `<dt>` e `<dd>` devidamente ordenados e elementos `<script>`, `<template>` ou `<div>`."
247
256
  },
248
257
  "core/audits/accessibility/dlitem.js | description": {
249
- "message": "Os itens de lista de definição (`<dt>` e `<dd>`) têm de estar unidos num elemento `<dl>` superior de modo a garantir que os leitores de ecrã os possam anunciar adequadamente. [Saiba como estruturar corretamente listas de definições](https://dequeuniversity.com/rules/axe/4.11/dlitem)."
258
+ "message": "Os itens de lista de definição (`<dt>` e `<dd>`) têm de estar unidos num elemento `<dl>` superior de modo a garantir que os leitores de ecrã os possam anunciar adequadamente. [Saiba como estruturar corretamente listas de definições](https://dequeuniversity.com/rules/axe/4.12/dlitem)."
250
259
  },
251
260
  "core/audits/accessibility/dlitem.js | failureTitle": {
252
261
  "message": "Os itens de lista de definição não estão unidos em elementos `<dl>`"
@@ -255,7 +264,7 @@
255
264
  "message": "Os itens de lista de definição estão unidos em elementos `<dl>`"
256
265
  },
257
266
  "core/audits/accessibility/document-title.js | description": {
258
- "message": "O título proporciona aos utilizadores de leitores de ecrã uma vista geral da página, sendo que os utilizadores de motores de pesquisa dependem dele para determinar se uma página é relevante para a respetiva pesquisa. [Saiba mais acerca dos títulos de documentos](https://dequeuniversity.com/rules/axe/4.11/document-title)."
267
+ "message": "O título proporciona aos utilizadores de leitores de ecrã uma vista geral da página, sendo que os utilizadores de motores de pesquisa dependem dele para determinar se uma página é relevante para a respetiva pesquisa. [Saiba mais acerca dos títulos de documentos](https://dequeuniversity.com/rules/axe/4.12/document-title)."
259
268
  },
260
269
  "core/audits/accessibility/document-title.js | failureTitle": {
261
270
  "message": "O documento não tem um elemento `<title>`"
@@ -264,7 +273,7 @@
264
273
  "message": "O documento tem um elemento `<title>`"
265
274
  },
266
275
  "core/audits/accessibility/duplicate-id-aria.js | description": {
267
- "message": "O valor de um ID ARIA tem de ser exclusivo para evitar que outras instâncias sejam ignoradas pelas tecnologias de assistência. [Saiba como corrigir IDs ARIA duplicados](https://dequeuniversity.com/rules/axe/4.11/duplicate-id-aria)."
276
+ "message": "O valor de um ID ARIA tem de ser exclusivo para evitar que outras instâncias sejam ignoradas pelas tecnologias de assistência. [Saiba como corrigir IDs ARIA duplicados](https://dequeuniversity.com/rules/axe/4.12/duplicate-id-aria)."
268
277
  },
269
278
  "core/audits/accessibility/duplicate-id-aria.js | failureTitle": {
270
279
  "message": "Os ID ARIA não são exclusivos"
@@ -273,7 +282,7 @@
273
282
  "message": "Os IDs ARIA são exclusivos"
274
283
  },
275
284
  "core/audits/accessibility/empty-heading.js | description": {
276
- "message": "Um título sem conteúdo ou com texto inacessível impede os utilizadores de leitores de ecrã de acederem a informações sobre a estrutura da página. [Saiba mais acerca dos títulos](https://dequeuniversity.com/rules/axe/4.11/empty-heading)."
285
+ "message": "Um título sem conteúdo ou com texto inacessível impede os utilizadores de leitores de ecrã de acederem a informações sobre a estrutura da página. [Saiba mais acerca dos títulos](https://dequeuniversity.com/rules/axe/4.12/empty-heading)."
277
286
  },
278
287
  "core/audits/accessibility/empty-heading.js | failureTitle": {
279
288
  "message": "Os elementos do título não têm conteúdo."
@@ -282,7 +291,7 @@
282
291
  "message": "Todos os elementos de título têm conteúdo."
283
292
  },
284
293
  "core/audits/accessibility/form-field-multiple-labels.js | description": {
285
- "message": "Os campos de formulários com várias etiquetas podem ser anunciados de forma confusa por tecnologias de assistência, como leitores de ecrã que usam a primeira, a última ou todas as etiquetas. [Saiba como usar etiquetas de formulários](https://dequeuniversity.com/rules/axe/4.11/form-field-multiple-labels)."
294
+ "message": "Os campos de formulários com várias etiquetas podem ser anunciados de forma confusa por tecnologias de assistência, como leitores de ecrã que usam a primeira, a última ou todas as etiquetas. [Saiba como usar etiquetas de formulários](https://dequeuniversity.com/rules/axe/4.12/form-field-multiple-labels)."
286
295
  },
287
296
  "core/audits/accessibility/form-field-multiple-labels.js | failureTitle": {
288
297
  "message": "Os campos do formulário contêm várias etiquetas"
@@ -291,7 +300,7 @@
291
300
  "message": "Nenhum campo do formulário contém várias etiquetas"
292
301
  },
293
302
  "core/audits/accessibility/frame-title.js | description": {
294
- "message": "Os utilizadores com leitores de ecrã dependem dos títulos de frames para descrever o conteúdo dos frames. [Saiba mais acerca dos títulos de frames](https://dequeuniversity.com/rules/axe/4.11/frame-title)."
303
+ "message": "Os utilizadores com leitores de ecrã dependem dos títulos de frames para descrever o conteúdo dos frames. [Saiba mais acerca dos títulos de frames](https://dequeuniversity.com/rules/axe/4.12/frame-title)."
295
304
  },
296
305
  "core/audits/accessibility/frame-title.js | failureTitle": {
297
306
  "message": "Os elementos `<frame>` ou `<iframe>` não têm um título"
@@ -300,7 +309,7 @@
300
309
  "message": "Os elementos `<frame>` ou `<iframe>` têm um título"
301
310
  },
302
311
  "core/audits/accessibility/heading-order.js | description": {
303
- "message": "Os títulos devidamente ordenados que não ignoram níveis transmitem a estrutura semântica da página, facilitando a navegação e a compreensão ao usar tecnologias de assistência. [Saiba mais acerca da ordem dos títulos](https://dequeuniversity.com/rules/axe/4.11/heading-order)."
312
+ "message": "Os títulos devidamente ordenados que não ignoram níveis transmitem a estrutura semântica da página, facilitando a navegação e a compreensão ao usar tecnologias de assistência. [Saiba mais acerca da ordem dos títulos](https://dequeuniversity.com/rules/axe/4.12/heading-order)."
304
313
  },
305
314
  "core/audits/accessibility/heading-order.js | failureTitle": {
306
315
  "message": "Os elementos do título não se encontram numa ordem sequencialmente decrescente"
@@ -309,7 +318,7 @@
309
318
  "message": "Os elementos do título encontram-se numa ordem sequencialmente decrescente"
310
319
  },
311
320
  "core/audits/accessibility/html-has-lang.js | description": {
312
- "message": "Se uma página não especificar um atributo `lang`, um leitor de ecrã parte do princípio de que a página está no idioma predefinido que o utilizador escolheu quando configurou o leitor de ecrã. Se a página não estiver realmente no idioma predefinido, o leitor de ecrã pode não anunciar corretamente o texto da página. [Saiba mais acerca do atributo `lang`](https://dequeuniversity.com/rules/axe/4.11/html-has-lang)."
321
+ "message": "Se uma página não especificar um atributo `lang`, um leitor de ecrã parte do princípio de que a página está no idioma predefinido que o utilizador escolheu quando configurou o leitor de ecrã. Se a página não estiver realmente no idioma predefinido, o leitor de ecrã pode não anunciar corretamente o texto da página. [Saiba mais acerca do atributo `lang`](https://dequeuniversity.com/rules/axe/4.12/html-has-lang)."
313
322
  },
314
323
  "core/audits/accessibility/html-has-lang.js | failureTitle": {
315
324
  "message": "O elemento `<html>` não tem um atributo `[lang]`"
@@ -318,7 +327,7 @@
318
327
  "message": "O elemento `<html>` tem um atributo `[lang]`"
319
328
  },
320
329
  "core/audits/accessibility/html-lang-valid.js | description": {
321
- "message": "Especificar um [idioma BCP 47](https://www.w3.org/International/questions/qa-choosing-language-tags#question) válido ajuda os leitores de ecrã a anunciar texto adequadamente. [Saiba como usar o atributo `lang`](https://dequeuniversity.com/rules/axe/4.11/html-lang-valid)."
330
+ "message": "Especificar um [idioma BCP 47](https://www.w3.org/International/questions/qa-choosing-language-tags#question) válido ajuda os leitores de ecrã a anunciar texto adequadamente. [Saiba como usar o atributo `lang`](https://dequeuniversity.com/rules/axe/4.12/html-lang-valid)."
322
331
  },
323
332
  "core/audits/accessibility/html-lang-valid.js | failureTitle": {
324
333
  "message": "O elemento `<html>` tem um valor válido para o respetivo atributo `[lang]`."
@@ -327,7 +336,7 @@
327
336
  "message": "O elemento `<html>` tem um valor válido para o respetivo atributo `[lang]`"
328
337
  },
329
338
  "core/audits/accessibility/html-xml-lang-mismatch.js | description": {
330
- "message": "Se a página Web não especificar um idioma consistente, o leitor de ecrã pode não anunciar o texto da página corretamente. [Saiba mais acerca do atributo `lang`](https://dequeuniversity.com/rules/axe/4.11/html-xml-lang-mismatch)."
339
+ "message": "Se a página Web não especificar um idioma consistente, o leitor de ecrã pode não anunciar o texto da página corretamente. [Saiba mais acerca do atributo `lang`](https://dequeuniversity.com/rules/axe/4.12/html-xml-lang-mismatch)."
331
340
  },
332
341
  "core/audits/accessibility/html-xml-lang-mismatch.js | failureTitle": {
333
342
  "message": "O elemento `<html>` não tem um atributo `[xml:lang]` com o mesmo idioma base que o atributo `[lang]`."
@@ -336,7 +345,7 @@
336
345
  "message": "O elemento `<html>` tem um atributo `[xml:lang]` com o mesmo idioma base que o atributo `[lang]`."
337
346
  },
338
347
  "core/audits/accessibility/identical-links-same-purpose.js | description": {
339
- "message": "Os links com o mesmo destino devem ter a mesma descrição para ajudar os utilizadores a compreenderem o objetivo do link e decidirem se o devem seguir. [Saiba mais acerca dos links idênticos](https://dequeuniversity.com/rules/axe/4.11/identical-links-same-purpose)."
348
+ "message": "Os links com o mesmo destino devem ter a mesma descrição para ajudar os utilizadores a compreenderem o objetivo do link e decidirem se o devem seguir. [Saiba mais acerca dos links idênticos](https://dequeuniversity.com/rules/axe/4.12/identical-links-same-purpose)."
340
349
  },
341
350
  "core/audits/accessibility/identical-links-same-purpose.js | failureTitle": {
342
351
  "message": "Os links idênticos não têm a mesma finalidade."
@@ -345,7 +354,7 @@
345
354
  "message": "Os links idênticos têm a mesma finalidade."
346
355
  },
347
356
  "core/audits/accessibility/image-alt.js | description": {
348
- "message": "Os elementos informativos devem procurar incluir texto curto, descritivo e alternativo. Os elementos decorativos podem ser ignorados com um atributo alternativo vazio. [Saiba mais acerca do atributo `alt`](https://dequeuniversity.com/rules/axe/4.11/image-alt)."
357
+ "message": "Os elementos informativos devem procurar incluir texto curto, descritivo e alternativo. Os elementos decorativos podem ser ignorados com um atributo alternativo vazio. [Saiba mais acerca do atributo `alt`](https://dequeuniversity.com/rules/axe/4.12/image-alt)."
349
358
  },
350
359
  "core/audits/accessibility/image-alt.js | failureTitle": {
351
360
  "message": "Os elementos de imagem não têm atributos `[alt]`"
@@ -354,7 +363,7 @@
354
363
  "message": "Os elementos de imagem têm atributos `[alt]`"
355
364
  },
356
365
  "core/audits/accessibility/image-redundant-alt.js | description": {
357
- "message": "Os elementos informativos devem procurar incluir texto curto, descritivo e alternativo. O texto alternativo, que é exatamente igual ao texto adjacente ao link ou à imagem, é potencialmente confuso para os utilizadores de leitores de ecrã, uma vez que o texto é lido duas vezes. [Saiba mais acerca do atributo `alt`](https://dequeuniversity.com/rules/axe/4.11/image-redundant-alt)."
366
+ "message": "Os elementos informativos devem procurar incluir texto curto, descritivo e alternativo. O texto alternativo, que é exatamente igual ao texto adjacente ao link ou à imagem, é potencialmente confuso para os utilizadores de leitores de ecrã, uma vez que o texto é lido duas vezes. [Saiba mais acerca do atributo `alt`](https://dequeuniversity.com/rules/axe/4.12/image-redundant-alt)."
358
367
  },
359
368
  "core/audits/accessibility/image-redundant-alt.js | failureTitle": {
360
369
  "message": "Os elementos de imagem têm atributos `[alt]` que são texto redundante."
@@ -363,7 +372,7 @@
363
372
  "message": "Os elementos de imagem não têm atributos `[alt]` que são texto redundante."
364
373
  },
365
374
  "core/audits/accessibility/input-button-name.js | description": {
366
- "message": "Adicionar texto percetível e acessível aos botões de entrada pode ajudar os utilizadores de leitores de ecrã a compreender a finalidade do botão de entrada. [Saiba mais acerca dos botões de entrada](https://dequeuniversity.com/rules/axe/4.11/input-button-name)."
375
+ "message": "Adicionar texto percetível e acessível aos botões de entrada pode ajudar os utilizadores de leitores de ecrã a compreender a finalidade do botão de entrada. [Saiba mais acerca dos botões de entrada](https://dequeuniversity.com/rules/axe/4.12/input-button-name)."
367
376
  },
368
377
  "core/audits/accessibility/input-button-name.js | failureTitle": {
369
378
  "message": "Os botões de entrada não têm texto percetível."
@@ -372,7 +381,7 @@
372
381
  "message": "Os botões de entrada têm texto percetível."
373
382
  },
374
383
  "core/audits/accessibility/input-image-alt.js | description": {
375
- "message": "Quando uma imagem está a ser usada como um botão `<input>`, facultar texto alternativo pode ajudar os utilizadores de leitores de ecrã a compreender a finalidade do botão. [Saiba mais acerca do texto alternativo da imagem de entrada](https://dequeuniversity.com/rules/axe/4.11/input-image-alt)."
384
+ "message": "Quando uma imagem está a ser usada como um botão `<input>`, facultar texto alternativo pode ajudar os utilizadores de leitores de ecrã a compreender a finalidade do botão. [Saiba mais acerca do texto alternativo da imagem de entrada](https://dequeuniversity.com/rules/axe/4.12/input-image-alt)."
376
385
  },
377
386
  "core/audits/accessibility/input-image-alt.js | failureTitle": {
378
387
  "message": "Os elementos `<input type=\"image\">` não têm texto `[alt]`"
@@ -381,7 +390,7 @@
381
390
  "message": "Os elementos `<input type=\"image\">` têm texto `[alt]`"
382
391
  },
383
392
  "core/audits/accessibility/label-content-name-mismatch.js | description": {
384
- "message": "As etiquetas de texto visíveis que não correspondam ao nome acessível podem resultar numa experiência confusa para os utilizadores de leitores de ecrã. [Saiba mais sobre os nomes acessíveis](https://dequeuniversity.com/rules/axe/4.11/label-content-name-mismatch)."
393
+ "message": "As etiquetas de texto visíveis que não correspondam ao nome acessível podem resultar numa experiência confusa para os utilizadores de leitores de ecrã. [Saiba mais sobre os nomes acessíveis](https://dequeuniversity.com/rules/axe/4.12/label-content-name-mismatch)."
385
394
  },
386
395
  "core/audits/accessibility/label-content-name-mismatch.js | failureTitle": {
387
396
  "message": "Os elementos com etiquetas de texto visíveis não têm nomes acessíveis correspondentes."
@@ -390,7 +399,7 @@
390
399
  "message": "Os elementos com etiquetas de texto visíveis têm nomes acessíveis correspondentes."
391
400
  },
392
401
  "core/audits/accessibility/label.js | description": {
393
- "message": "As etiquetas garantem que os controlos de formulários são anunciados adequadamente pelas tecnologias de assistência, que incluem os leitores de ecrã. [Saiba mais acerca das etiquetas de elementos de formulários](https://dequeuniversity.com/rules/axe/4.11/label)."
402
+ "message": "As etiquetas garantem que os controlos de formulários são anunciados adequadamente pelas tecnologias de assistência, que incluem os leitores de ecrã. [Saiba mais acerca das etiquetas de elementos de formulários](https://dequeuniversity.com/rules/axe/4.12/label)."
394
403
  },
395
404
  "core/audits/accessibility/label.js | failureTitle": {
396
405
  "message": "Os elementos de formulário não têm etiquetas associadas"
@@ -399,7 +408,7 @@
399
408
  "message": "Os elementos de formulário têm etiquetas associadas"
400
409
  },
401
410
  "core/audits/accessibility/landmark-one-main.js | description": {
402
- "message": "Um ponto de referência principal ajuda os utilizadores de leitores de ecrã a navegar numa página Web. [Saiba mais sobre pontos de referência](https://dequeuniversity.com/rules/axe/4.11/landmark-one-main)."
411
+ "message": "Um ponto de referência principal ajuda os utilizadores de leitores de ecrã a navegar numa página Web. [Saiba mais sobre pontos de referência](https://dequeuniversity.com/rules/axe/4.12/landmark-one-main)."
403
412
  },
404
413
  "core/audits/accessibility/landmark-one-main.js | failureTitle": {
405
414
  "message": "O documento não tem um ponto de referência principal."
@@ -408,7 +417,7 @@
408
417
  "message": "O documento tem um ponto de referência principal."
409
418
  },
410
419
  "core/audits/accessibility/link-in-text-block.js | description": {
411
- "message": "O texto de baixo contraste é difícil ou impossível de ler para muitos utilizadores. O texto do link percetível melhora a experiência dos utilizadores com visão reduzida. [Saiba como tornar os links distinguíveis](https://dequeuniversity.com/rules/axe/4.11/link-in-text-block)."
420
+ "message": "O texto de baixo contraste é difícil ou impossível de ler para muitos utilizadores. O texto do link percetível melhora a experiência dos utilizadores com visão reduzida. [Saiba como tornar os links distinguíveis](https://dequeuniversity.com/rules/axe/4.12/link-in-text-block)."
412
421
  },
413
422
  "core/audits/accessibility/link-in-text-block.js | failureTitle": {
414
423
  "message": "Os links dependem da cor para serem distinguíveis."
@@ -417,7 +426,7 @@
417
426
  "message": "Os links são distinguíveis sem depender da cor."
418
427
  },
419
428
  "core/audits/accessibility/link-name.js | description": {
420
- "message": "O texto de link (e texto alternativo para imagens, quando usado como link) que seja percetível, exclusivo e focalizável melhora a experiência de navegação dos utilizadores de leitores de ecrã. [Saiba como tornar os links acessíveis](https://dequeuniversity.com/rules/axe/4.11/link-name)."
429
+ "message": "O texto de link (e texto alternativo para imagens, quando usado como link) que seja percetível, exclusivo e focalizável melhora a experiência de navegação dos utilizadores de leitores de ecrã. [Saiba como tornar os links acessíveis](https://dequeuniversity.com/rules/axe/4.12/link-name)."
421
430
  },
422
431
  "core/audits/accessibility/link-name.js | failureTitle": {
423
432
  "message": "Os links não têm um nome percetível"
@@ -426,7 +435,7 @@
426
435
  "message": "Os links têm um nome percetível"
427
436
  },
428
437
  "core/audits/accessibility/list.js | description": {
429
- "message": "Os leitores de ecrã têm uma forma específica de anunciar listas. Garantir uma estrutura de listas adequada é benéfico para o resultado do leitor de ecrã. [Saiba mais acerca da estrutura de listas adequada](https://dequeuniversity.com/rules/axe/4.11/list)."
438
+ "message": "Os leitores de ecrã têm uma forma específica de anunciar listas. Garantir uma estrutura de listas adequada é benéfico para o resultado do leitor de ecrã. [Saiba mais acerca da estrutura de listas adequada](https://dequeuniversity.com/rules/axe/4.12/list)."
430
439
  },
431
440
  "core/audits/accessibility/list.js | failureTitle": {
432
441
  "message": "As listas não contêm apenas elementos `<li>` e elementos de suporte de script (`<script>` e `<template>`)."
@@ -435,7 +444,7 @@
435
444
  "message": "As listas contêm apenas elementos `<li>` e elementos de suporte de script (`<script>` e `<template>`)."
436
445
  },
437
446
  "core/audits/accessibility/listitem.js | description": {
438
- "message": "Os leitores de ecrã necessitam que os itens de lista (`<li>`) sejam contidos num `<ul>`, `<ol>` ou `<menu>` superior para serem adequadamente anunciados. [Saiba mais acerca da estrutura de listas adequada](https://dequeuniversity.com/rules/axe/4.11/listitem)."
447
+ "message": "Os leitores de ecrã necessitam que os itens de lista (`<li>`) sejam contidos num `<ul>`, `<ol>` ou `<menu>` superior para serem adequadamente anunciados. [Saiba mais acerca da estrutura de listas adequada](https://dequeuniversity.com/rules/axe/4.12/listitem)."
439
448
  },
440
449
  "core/audits/accessibility/listitem.js | failureTitle": {
441
450
  "message": "Os itens de lista (`<li>`) não estão contidos nos elementos superiores `<ul>`, `<ol>` ou `<menu>`."
@@ -444,7 +453,7 @@
444
453
  "message": "Os itens de lista (`<li>`) estão contidos nos elementos superiores `<ul>`, `<ol>` ou `<menu>`"
445
454
  },
446
455
  "core/audits/accessibility/meta-refresh.js | description": {
447
- "message": "Os utilizadores não esperam que uma página se atualize automaticamente e, se tal acontecer, vai desviar o foco para a parte superior da página. Esta situação pode criar uma experiência frustrante ou confusa. [Saiba mais acerca da metatag de atualização](https://dequeuniversity.com/rules/axe/4.11/meta-refresh)."
456
+ "message": "Os utilizadores não esperam que uma página se atualize automaticamente e, se tal acontecer, vai desviar o foco para a parte superior da página. Esta situação pode criar uma experiência frustrante ou confusa. [Saiba mais acerca da metatag de atualização](https://dequeuniversity.com/rules/axe/4.12/meta-refresh)."
448
457
  },
449
458
  "core/audits/accessibility/meta-refresh.js | failureTitle": {
450
459
  "message": "O documento utiliza `<meta http-equiv=\"refresh\">`"
@@ -453,7 +462,7 @@
453
462
  "message": "O documento não utiliza `<meta http-equiv=\"refresh\">`"
454
463
  },
455
464
  "core/audits/accessibility/meta-viewport.js | description": {
456
- "message": "Desativar o zoom é problemático para os utilizadores com visão reduzida que dependem da ampliação do ecrã para ver adequadamente o conteúdo de uma página Web. [Saiba mais acerca da metatag de área visível](https://dequeuniversity.com/rules/axe/4.11/meta-viewport)."
465
+ "message": "Desativar o zoom é problemático para os utilizadores com visão reduzida que dependem da ampliação do ecrã para ver adequadamente o conteúdo de uma página Web. [Saiba mais acerca da metatag de área visível](https://dequeuniversity.com/rules/axe/4.12/meta-viewport)."
457
466
  },
458
467
  "core/audits/accessibility/meta-viewport.js | failureTitle": {
459
468
  "message": "O `[user-scalable=\"no\"]` é utilizado no elemento `<meta name=\"viewport\">` ou o atributo `[maximum-scale]` é inferior a 5."
@@ -462,7 +471,7 @@
462
471
  "message": "O `[user-scalable=\"no\"]` não é utilizado no elemento `<meta name=\"viewport\">` e o atributo `[maximum-scale]` não é inferior a 5."
463
472
  },
464
473
  "core/audits/accessibility/object-alt.js | description": {
465
- "message": "Os leitores de ecrã não conseguem traduzir conteúdo que não seja de texto. Adicionar texto alternativo a elementos `<object>` ajuda os leitores de ecrã a transmitir significado aos utilizadores. [Saiba mais acerca do texto alternativo para elementos `object`](https://dequeuniversity.com/rules/axe/4.11/object-alt)."
474
+ "message": "Os leitores de ecrã não conseguem traduzir conteúdo que não seja de texto. Adicionar texto alternativo a elementos `<object>` ajuda os leitores de ecrã a transmitir significado aos utilizadores. [Saiba mais acerca do texto alternativo para elementos `object`](https://dequeuniversity.com/rules/axe/4.12/object-alt)."
466
475
  },
467
476
  "core/audits/accessibility/object-alt.js | failureTitle": {
468
477
  "message": "Os elementos `<object>` não têm texto alternativo"
@@ -470,8 +479,17 @@
470
479
  "core/audits/accessibility/object-alt.js | title": {
471
480
  "message": "Os elementos `<object>` têm texto alternativo"
472
481
  },
482
+ "core/audits/accessibility/presentation-role-conflict.js | description": {
483
+ "message": "Existem determinados casos em que a função semântica de um elemento com `role=\"none\"` ou `role=\"presentation\"` não é resolvida como none ou presentation. Para garantir que o elemento permanece removido da árvore de acessibilidade, não deve adicionar atributos ARIA globais ao elemento nem o tornar focalizável. [Saiba mais sobre o conflito com a função presentation](https://dequeuniversity.com/rules/axe/4.12/presentation-role-conflict)."
484
+ },
485
+ "core/audits/accessibility/presentation-role-conflict.js | failureTitle": {
486
+ "message": "Os elementos com `role=\"none\"` ou `role=\"presentation\"` têm conflitos"
487
+ },
488
+ "core/audits/accessibility/presentation-role-conflict.js | title": {
489
+ "message": "Os elementos com `role=\"none\"` ou `role=\"presentation\"` não têm conflitos"
490
+ },
473
491
  "core/audits/accessibility/select-name.js | description": {
474
- "message": "Os elementos de formulário sem etiquetas eficazes podem criar experiências frustrantes para os utilizadores de leitores de ecrã. [Saiba mais acerca do elemento `select`](https://dequeuniversity.com/rules/axe/4.11/select-name)."
492
+ "message": "Os elementos de formulário sem etiquetas eficazes podem criar experiências frustrantes para os utilizadores de leitores de ecrã. [Saiba mais acerca do elemento `select`](https://dequeuniversity.com/rules/axe/4.12/select-name)."
475
493
  },
476
494
  "core/audits/accessibility/select-name.js | failureTitle": {
477
495
  "message": "Os elementos Select não têm elementos de etiqueta associados."
@@ -480,7 +498,7 @@
480
498
  "message": "Os elementos Select têm elementos de etiqueta associados."
481
499
  },
482
500
  "core/audits/accessibility/skip-link.js | description": {
483
- "message": "A inclusão de um link para ignorar pode ajudar os utilizadores a avançarem para o conteúdo principal para poupar tempo. [Saiba mais sobre os links para ignorar](https://dequeuniversity.com/rules/axe/4.11/skip-link)."
501
+ "message": "A inclusão de um link para ignorar pode ajudar os utilizadores a avançarem para o conteúdo principal para poupar tempo. [Saiba mais sobre os links para ignorar](https://dequeuniversity.com/rules/axe/4.12/skip-link)."
484
502
  },
485
503
  "core/audits/accessibility/skip-link.js | failureTitle": {
486
504
  "message": "Os links para ignorar não são focalizáveis."
@@ -488,8 +506,17 @@
488
506
  "core/audits/accessibility/skip-link.js | title": {
489
507
  "message": "Os links para ignorar são focalizáveis."
490
508
  },
509
+ "core/audits/accessibility/svg-img-alt.js | description": {
510
+ "message": "Garante que os elementos SVG com uma função `img`, `graphics-document` ou `graphics-symbol` têm uma alternativa de texto acessível. [Saiba mais sobre o texto alternativo SVG](https://dequeuniversity.com/rules/axe/4.12/svg-img-alt)."
511
+ },
512
+ "core/audits/accessibility/svg-img-alt.js | failureTitle": {
513
+ "message": "Os elementos SVG com uma função `img` não têm uma alternativa de texto acessível"
514
+ },
515
+ "core/audits/accessibility/svg-img-alt.js | title": {
516
+ "message": "Os elementos SVG com uma função `img` têm uma alternativa de texto acessível"
517
+ },
491
518
  "core/audits/accessibility/tabindex.js | description": {
492
- "message": "Um valor superior a 0 implica uma ordenação de navegação explícita. Embora seja tecnicamente válida, esta situação costuma criar experiências frustrantes para os utilizadores que dependem de tecnologias de assistência. [Saiba mais acerca do atributo `tabindex`](https://dequeuniversity.com/rules/axe/4.11/tabindex)."
519
+ "message": "Um valor superior a 0 implica uma ordenação de navegação explícita. Embora seja tecnicamente válida, esta situação costuma criar experiências frustrantes para os utilizadores que dependem de tecnologias de assistência. [Saiba mais acerca do atributo `tabindex`](https://dequeuniversity.com/rules/axe/4.12/tabindex)."
493
520
  },
494
521
  "core/audits/accessibility/tabindex.js | failureTitle": {
495
522
  "message": "Alguns elementos têm um valor `[tabindex]` superior a 0"
@@ -498,7 +525,7 @@
498
525
  "message": "Nenhum elemento tem um valor `[tabindex]` superior a 0"
499
526
  },
500
527
  "core/audits/accessibility/table-duplicate-name.js | description": {
501
- "message": "O atributo summary deve descrever a estrutura da tabela, enquanto `<caption>` deve ter o título no ecrã. A marcação precisa da tabela ajuda os utilizadores de leitores de ecrã. [Saiba mais sobre os elementos summary e caption](https://dequeuniversity.com/rules/axe/4.11/table-duplicate-name)."
528
+ "message": "O atributo summary deve descrever a estrutura da tabela, enquanto `<caption>` deve ter o título no ecrã. A marcação precisa da tabela ajuda os utilizadores de leitores de ecrã. [Saiba mais sobre os elementos summary e caption](https://dequeuniversity.com/rules/axe/4.12/table-duplicate-name)."
502
529
  },
503
530
  "core/audits/accessibility/table-duplicate-name.js | failureTitle": {
504
531
  "message": "As tabelas têm o mesmo conteúdo no atributo summary e no elemento `<caption>.`"
@@ -507,7 +534,7 @@
507
534
  "message": "As tabelas têm conteúdo diferente no atributo summary e no elemento `<caption>`."
508
535
  },
509
536
  "core/audits/accessibility/table-fake-caption.js | description": {
510
- "message": "Os leitores de ecrã têm funcionalidades para facilitar a navegação em tabelas. Garantir que as tabelas usam o elemento de legenda real em vez das células com o atributo `[colspan]` pode melhorar a experiência dos utilizadores de leitores de ecrã. [Saiba mais sobre as legendas](https://dequeuniversity.com/rules/axe/4.11/table-fake-caption)."
537
+ "message": "Os leitores de ecrã têm funcionalidades para facilitar a navegação em tabelas. Garantir que as tabelas usam o elemento de legenda real em vez das células com o atributo `[colspan]` pode melhorar a experiência dos utilizadores de leitores de ecrã. [Saiba mais sobre as legendas](https://dequeuniversity.com/rules/axe/4.12/table-fake-caption)."
511
538
  },
512
539
  "core/audits/accessibility/table-fake-caption.js | failureTitle": {
513
540
  "message": "As tabelas não usam `<caption>` em vez de células com o atributo `[colspan]` para indicar uma legenda."
@@ -516,7 +543,7 @@
516
543
  "message": "As tabelas usam `<caption>` em vez de células com o atributo `[colspan]` para indicar uma legenda."
517
544
  },
518
545
  "core/audits/accessibility/target-size.js | description": {
519
- "message": "As áreas de toque com tamanho e espaçamento suficientes ajudam os utilizadores que possam ter dificuldades em usar controlos pequenos a ativar os alvos. [Saiba mais acerca das áreas de toque](https://dequeuniversity.com/rules/axe/4.11/target-size)."
546
+ "message": "As áreas de toque com tamanho e espaçamento suficientes ajudam os utilizadores que possam ter dificuldades em usar controlos pequenos a ativar os alvos. [Saiba mais acerca das áreas de toque](https://dequeuniversity.com/rules/axe/4.12/target-size)."
520
547
  },
521
548
  "core/audits/accessibility/target-size.js | failureTitle": {
522
549
  "message": "As áreas de toque não têm tamanho nem espaçamento suficientes."
@@ -525,7 +552,7 @@
525
552
  "message": "As áreas de toque têm tamanho e espaçamento suficientes."
526
553
  },
527
554
  "core/audits/accessibility/td-has-header.js | description": {
528
- "message": "Os leitores de ecrã têm funcionalidades para facilitar a navegação em tabelas. Garantir que os elementos `<td>` numa tabela grande (3 ou mais células de largura e altura) têm um cabeçalho de tabela associado pode melhorar a experiência para os utilizadores de leitores de ecrã. [Saiba mais acerca dos cabeçalhos de tabelas](https://dequeuniversity.com/rules/axe/4.11/td-has-header)."
555
+ "message": "Os leitores de ecrã têm funcionalidades para facilitar a navegação em tabelas. Garantir que os elementos `<td>` numa tabela grande (3 ou mais células de largura e altura) têm um cabeçalho de tabela associado pode melhorar a experiência para os utilizadores de leitores de ecrã. [Saiba mais acerca dos cabeçalhos de tabelas](https://dequeuniversity.com/rules/axe/4.12/td-has-header)."
529
556
  },
530
557
  "core/audits/accessibility/td-has-header.js | failureTitle": {
531
558
  "message": "Os elementos `<td>` num `<table>` grande não têm cabeçalhos de tabela."
@@ -534,7 +561,7 @@
534
561
  "message": "Os elementos `<td>` num elemento `<table>` grande têm um ou mais cabeçalhos de tabelas."
535
562
  },
536
563
  "core/audits/accessibility/td-headers-attr.js | description": {
537
- "message": "Os leitores de ecrã têm funcionalidades para facilitar a navegação em tabelas. Garantir que as células `<td>` que usam o atributo `[headers]` apenas referenciam outras células na mesma tabela pode melhorar a experiência para os utilizadores de leitores de ecrã. [Saiba mais acerca do atributo `headers`](https://dequeuniversity.com/rules/axe/4.11/td-headers-attr)."
564
+ "message": "Os leitores de ecrã têm funcionalidades para facilitar a navegação em tabelas. Garantir que as células `<td>` que usam o atributo `[headers]` apenas referenciam outras células na mesma tabela pode melhorar a experiência para os utilizadores de leitores de ecrã. [Saiba mais acerca do atributo `headers`](https://dequeuniversity.com/rules/axe/4.12/td-headers-attr)."
538
565
  },
539
566
  "core/audits/accessibility/td-headers-attr.js | failureTitle": {
540
567
  "message": "As células num elemento `<table>` que utilizam o atributo `[headers]` referem-se a um elemento `id` que não se encontra dentro da mesma tabela."
@@ -543,7 +570,7 @@
543
570
  "message": "As células num elemento `<table>` que utilizam o atributo `[headers]` referem-se a células de tabela dentro da mesma tabela."
544
571
  },
545
572
  "core/audits/accessibility/th-has-data-cells.js | description": {
546
- "message": "Os leitores de ecrã têm funcionalidades para facilitar a navegação em tabelas. Garantir que os cabeçalhos de tabelas referenciam sempre algum conjunto de células pode melhorar a experiência dos utilizadores com leitores de ecrã. [Saiba mais acerca dos cabeçalhos de tabelas](https://dequeuniversity.com/rules/axe/4.11/th-has-data-cells)."
573
+ "message": "Os leitores de ecrã têm funcionalidades para facilitar a navegação em tabelas. Garantir que os cabeçalhos de tabelas referenciam sempre algum conjunto de células pode melhorar a experiência dos utilizadores com leitores de ecrã. [Saiba mais acerca dos cabeçalhos de tabelas](https://dequeuniversity.com/rules/axe/4.12/th-has-data-cells)."
547
574
  },
548
575
  "core/audits/accessibility/th-has-data-cells.js | failureTitle": {
549
576
  "message": "Os elementos `<th>` e os elementos com `[role=\"columnheader\"/\"rowheader\"]` não têm as células de dados que descrevem."
@@ -552,7 +579,7 @@
552
579
  "message": "Os elementos `<th>` e os elementos com `[role=\"columnheader\"/\"rowheader\"]` têm as células de dados que descrevem."
553
580
  },
554
581
  "core/audits/accessibility/valid-lang.js | description": {
555
- "message": "Especificar um [idioma BCP 47](https://www.w3.org/International/questions/qa-choosing-language-tags#question) válido para elementos ajuda a garantir que o texto é pronunciado corretamente por um leitor de ecrã. [Saiba como usar o atributo `lang`](https://dequeuniversity.com/rules/axe/4.11/valid-lang)."
582
+ "message": "Especificar um [idioma BCP 47](https://www.w3.org/International/questions/qa-choosing-language-tags#question) válido para elementos ajuda a garantir que o texto é pronunciado corretamente por um leitor de ecrã. [Saiba como usar o atributo `lang`](https://dequeuniversity.com/rules/axe/4.12/valid-lang)."
556
583
  },
557
584
  "core/audits/accessibility/valid-lang.js | failureTitle": {
558
585
  "message": "Os atributos `[lang]` não têm um valor válido"
@@ -561,7 +588,7 @@
561
588
  "message": "Os atributos `[lang]` têm um valor válido"
562
589
  },
563
590
  "core/audits/accessibility/video-caption.js | description": {
564
- "message": "Quando um vídeo oferece uma legenda, é mais fácil para os utilizadores surdos e com problemas de audição aceder às informações. [Saiba mais acerca das legendas de vídeos](https://dequeuniversity.com/rules/axe/4.11/video-caption)."
591
+ "message": "Quando um vídeo oferece uma legenda, é mais fácil para os utilizadores surdos e com problemas de audição aceder às informações. [Saiba mais acerca das legendas de vídeos](https://dequeuniversity.com/rules/axe/4.12/video-caption)."
565
592
  },
566
593
  "core/audits/accessibility/video-caption.js | failureTitle": {
567
594
  "message": "Os elementos `<video>` não contêm um elemento `<track>` com `[kind=\"captions\"]`"
@@ -569,6 +596,51 @@
569
596
  "core/audits/accessibility/video-caption.js | title": {
570
597
  "message": "Os elementos `<video>` contêm um elemento `<track>` com `[kind=\"captions\"]`"
571
598
  },
599
+ "core/audits/agentic/agent-accessibility-tree.js | columnElement": {
600
+ "message": "Elemento com falhas"
601
+ },
602
+ "core/audits/agentic/agent-accessibility-tree.js | columnRule": {
603
+ "message": "Regra com falhas"
604
+ },
605
+ "core/audits/agentic/agent-accessibility-tree.js | description": {
606
+ "message": "Uma [árvore de acessibilidade](http://goo.gle/lighthouse-agentic-a11y) bem formada ajuda os agentes de IA a navegar e a interagir com a página."
607
+ },
608
+ "core/audits/agentic/agent-accessibility-tree.js | displayValuePassed": {
609
+ "message": "Todas as auditorias foram aprovadas"
610
+ },
611
+ "core/audits/agentic/agent-accessibility-tree.js | failedSectionTitle": {
612
+ "message": "Auditorias falhadas"
613
+ },
614
+ "core/audits/agentic/agent-accessibility-tree.js | failureTitle": {
615
+ "message": "A árvore de acessibilidade não está bem formada"
616
+ },
617
+ "core/audits/agentic/agent-accessibility-tree.js | title": {
618
+ "message": "A árvore de acessibilidade está bem formada"
619
+ },
620
+ "core/audits/agentic/llms-txt.js | description": {
621
+ "message": "Se o ficheiro llms.txt não seguir as recomendações, os grandes modelos de linguagem podem não conseguir compreender como quer que o seu Website seja rastreado ou usado para treino. O ficheiro [llms.txt](https://llmstxt.org/) deve ser um ficheiro Markdown que contenha, pelo menos, um cabeçalho H1."
622
+ },
623
+ "core/audits/agentic/llms-txt.js | displayValueHttpBadCode": {
624
+ "message": "Falhou com o estado HTTP {statusCode}"
625
+ },
626
+ "core/audits/agentic/llms-txt.js | explanation": {
627
+ "message": "Falha ao obter o ficheiro llms.txt"
628
+ },
629
+ "core/audits/agentic/llms-txt.js | failureTitle": {
630
+ "message": "O ficheiro llms.txt não segue as recomendações"
631
+ },
632
+ "core/audits/agentic/llms-txt.js | missingH1": {
633
+ "message": "O ficheiro não tem um cabeçalho H1 obrigatório (por exemplo, \"# Título\")."
634
+ },
635
+ "core/audits/agentic/llms-txt.js | missingLinks": {
636
+ "message": "O ficheiro não parece conter links."
637
+ },
638
+ "core/audits/agentic/llms-txt.js | title": {
639
+ "message": "O ficheiro llms.txt segue as recomendações"
640
+ },
641
+ "core/audits/agentic/llms-txt.js | tooShort": {
642
+ "message": "O ficheiro é suspeitosamente curto."
643
+ },
572
644
  "core/audits/autocomplete.js | columnCurrent": {
573
645
  "message": "Valor atual"
574
646
  },
@@ -596,6 +668,18 @@
596
668
  "core/audits/autocomplete.js | warningOrder": {
597
669
  "message": "Reveja a ordem dos símbolos: \"{tokens}\" em {snippet}"
598
670
  },
671
+ "core/audits/baseline.js | columnFeature": {
672
+ "message": "Funcionalidades Web"
673
+ },
674
+ "core/audits/baseline.js | columnStatus": {
675
+ "message": "Estado do Baseline"
676
+ },
677
+ "core/audits/baseline.js | description": {
678
+ "message": "Lista as funcionalidades Web usadas na página e o respetivo estado do Baseline a partir de {date}. [Saiba mais sobre o Baseline](https://webstatus.dev/)."
679
+ },
680
+ "core/audits/baseline.js | title": {
681
+ "message": "Funcionalidades do Baseline"
682
+ },
599
683
  "core/audits/bf-cache.js | actionableFailureType": {
600
684
  "message": "Acionável"
601
685
  },
@@ -771,7 +855,7 @@
771
855
  "message": "A página possui o doctype HTML"
772
856
  },
773
857
  "core/audits/dobetterweb/geolocation-on-start.js | description": {
774
- "message": "Os utilizadores desconfiam ou ficam confusos perante os sites que pedem a sua localização sem contexto. Em vez disso, considere associar o pedido a uma ação do utilizador. [Saiba mais acerca da autorização de geolocalização](https://developer.chrome.com/docs/lighthouse/best-practices/geolocation-on-start/)."
858
+ "message": "Users are mistrustful of or confused by sites that request their location without context. Consider tying the request to a user action instead. [Learn more about the geolocation permission](https://developer.chrome.com/docs/lighthouse/best-practices/geolocation-on-start/). Also consider using the [`<geolocation>` element](https://developer.chrome.com/blog/geolocation-html-element)."
775
859
  },
776
860
  "core/audits/dobetterweb/geolocation-on-start.js | failureTitle": {
777
861
  "message": "Solicita a autorização de geolocalização no carregamento da página"
@@ -1262,6 +1346,93 @@
1262
1346
  "core/audits/valid-source-maps.js | title": {
1263
1347
  "message": "A página possui mapas de origem válidos"
1264
1348
  },
1349
+ "core/audits/webmcp-form-coverage.js | columnForm": {
1350
+ "message": "Formulário"
1351
+ },
1352
+ "core/audits/webmcp-form-coverage.js | description": {
1353
+ "message": "Considere adicionar anotações [WebMCP](http://goo.gle/webmcp-docs) aos formulários indicados abaixo. Isto ajuda os agentes de IA a identificar e interagir com estes formulários de forma mais fiável."
1354
+ },
1355
+ "core/audits/webmcp-form-coverage.js | displayValue": {
1356
+ "message": "{itemCount,plural, =1{1 formulário com anotações em falta}other{# formulários com anotações em falta}}"
1357
+ },
1358
+ "core/audits/webmcp-form-coverage.js | title": {
1359
+ "message": "Cobertura do formulário WebMCP"
1360
+ },
1361
+ "core/audits/webmcp-registered-tools.js | columnDeclarativeElement": {
1362
+ "message": "Elemento"
1363
+ },
1364
+ "core/audits/webmcp-registered-tools.js | columnDescription": {
1365
+ "message": "Descrição"
1366
+ },
1367
+ "core/audits/webmcp-registered-tools.js | columnImperativeLocation": {
1368
+ "message": "Localização da origem"
1369
+ },
1370
+ "core/audits/webmcp-registered-tools.js | columnInputSchema": {
1371
+ "message": "Esquema de entrada"
1372
+ },
1373
+ "core/audits/webmcp-registered-tools.js | columnTool": {
1374
+ "message": "Nome da ferramenta"
1375
+ },
1376
+ "core/audits/webmcp-registered-tools.js | description": {
1377
+ "message": "Lista as [ferramentas WebMCP](http://goo.gle/webmcp-docs) registadas no momento da análise."
1378
+ },
1379
+ "core/audits/webmcp-registered-tools.js | title": {
1380
+ "message": "Ferramentas WebMCP registadas"
1381
+ },
1382
+ "core/audits/webmcp-registered-tools.js | titleDeclarativeTools": {
1383
+ "message": "Ferramentas declarativas"
1384
+ },
1385
+ "core/audits/webmcp-registered-tools.js | titleImperativeTools": {
1386
+ "message": "Ferramentas imperativas"
1387
+ },
1388
+ "core/audits/webmcp-schema-validity.js | columnElement": {
1389
+ "message": "Elemento"
1390
+ },
1391
+ "core/audits/webmcp-schema-validity.js | columnIssue": {
1392
+ "message": "Problema"
1393
+ },
1394
+ "core/audits/webmcp-schema-validity.js | description": {
1395
+ "message": "São necessários [esquemas WebMCP](http://goo.gle/webmcp-docs) válidos para que os agentes de IA compreendam e interajam corretamente com as ferramentas. Corrija os erros ou os avisos comunicados pelo navegador."
1396
+ },
1397
+ "core/audits/webmcp-schema-validity.js | failureTitle": {
1398
+ "message": "Os esquemas WebMCP são inválidos"
1399
+ },
1400
+ "core/audits/webmcp-schema-validity.js | missingOptionalParamName": {
1401
+ "message": "Atributo `name` em falta para um campo opcional. Adicione-o para definir o nome do parâmetro."
1402
+ },
1403
+ "core/audits/webmcp-schema-validity.js | missingParamDescription": {
1404
+ "message": "Adicione uma descrição para tornar este formulário mais acessível para os agentes de IA."
1405
+ },
1406
+ "core/audits/webmcp-schema-validity.js | missingRequiredParamName": {
1407
+ "message": "Atributo `name` em falta para um campo obrigatório. Adicione-o para definir o nome do parâmetro."
1408
+ },
1409
+ "core/audits/webmcp-schema-validity.js | missingToolDescription": {
1410
+ "message": "O atributo `tooldescription` ao nível do formulário está em falta. Adicione-o para descrever a ferramenta para os agentes de IA."
1411
+ },
1412
+ "core/audits/webmcp-schema-validity.js | missingToolName": {
1413
+ "message": "O atributo `toolname` ao nível do formulário está em falta. Adicione-o para definir o nome da ferramenta."
1414
+ },
1415
+ "core/audits/webmcp-schema-validity.js | title": {
1416
+ "message": "Os esquemas WebMCP são válidos"
1417
+ },
1418
+ "core/config/agentic-browsing-config.js | agentAccessibilityGroupDescription": {
1419
+ "message": "Estas auditorias realçam as práticas recomendadas para melhorar a acessibilidade do Website para agentes de IA."
1420
+ },
1421
+ "core/config/agentic-browsing-config.js | agentAccessibilityGroupTitle": {
1422
+ "message": "Acessibilidade de agentes"
1423
+ },
1424
+ "core/config/agentic-browsing-config.js | agenticBrowsingCategoryDescription": {
1425
+ "message": "Estas verificações garantem [Websites de alta qualidade e navegáveis para agentes de IA](https://goo.gle/lighthouse-agentic-web) e validam a correção das integrações do WebMCP. Esta categoria ainda está em desenvolvimento e sujeita a alterações."
1426
+ },
1427
+ "core/config/agentic-browsing-config.js | agenticBrowsingCategoryTitle": {
1428
+ "message": "Navegação com agência"
1429
+ },
1430
+ "core/config/agentic-browsing-config.js | webmcpGroupDescription": {
1431
+ "message": "Auditorias que validam a integração do WebMCP."
1432
+ },
1433
+ "core/config/agentic-browsing-config.js | webmcpGroupTitle": {
1434
+ "message": "WebMCP"
1435
+ },
1265
1436
  "core/config/default-config.js | a11yAriaGroupDescription": {
1266
1437
  "message": "Estas são oportunidades para otimizar a utilização do ARIA na sua aplicação, que pode melhorar a experiência dos utilizadores de tecnologias de assistência, como os de leitores de ecrã."
1267
1438
  },
@@ -1319,6 +1490,18 @@
1319
1490
  "core/config/default-config.js | a11yTablesListsVideoGroupTitle": {
1320
1491
  "message": "Tabelas e listas"
1321
1492
  },
1493
+ "core/config/default-config.js | agentAccessibilityGroupDescription": {
1494
+ "message": "Estas auditorias realçam as práticas recomendadas para melhorar a acessibilidade do Website para agentes de IA."
1495
+ },
1496
+ "core/config/default-config.js | agentAccessibilityGroupTitle": {
1497
+ "message": "Acessibilidade de agentes"
1498
+ },
1499
+ "core/config/default-config.js | agenticBrowsingCategoryDescription": {
1500
+ "message": "Estas verificações garantem [Websites de alta qualidade e navegáveis para agentes de IA](https://goo.gle/lighthouse-agentic-web) e validam a correção das integrações do WebMCP. Esta categoria ainda está em desenvolvimento e sujeita a alterações."
1501
+ },
1502
+ "core/config/default-config.js | agenticBrowsingCategoryTitle": {
1503
+ "message": "Navegação com agência"
1504
+ },
1322
1505
  "core/config/default-config.js | bestPracticesBrowserCompatGroupTitle": {
1323
1506
  "message": "Compatibilidade de navegadores"
1324
1507
  },
@@ -1391,6 +1574,12 @@
1391
1574
  "core/config/default-config.js | seoMobileGroupTitle": {
1392
1575
  "message": "Compatível com dispositivos móveis"
1393
1576
  },
1577
+ "core/config/default-config.js | webmcpGroupDescription": {
1578
+ "message": "Auditorias que validam a integração do WebMCP."
1579
+ },
1580
+ "core/config/default-config.js | webmcpGroupTitle": {
1581
+ "message": "WebMCP"
1582
+ },
1394
1583
  "core/gather/driver/environment.js | warningSlowHostCpu": {
1395
1584
  "message": "O dispositivo testado parece ter uma CPU mais lenta do que o Lighthouse esperava. Isto pode prejudicar a sua pontuação de desempenho. Saiba como [calibrar um multiplicador de abrandamento da CPU adequado](https://github.com/GoogleChrome/lighthouse/blob/main/docs/throttling.md#cpu-throttling)."
1396
1585
  },
@@ -1871,6 +2060,12 @@
1871
2060
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | DataUrlInSvgUse": {
1872
2061
  "message": "Suporte de dados: os URLs em SVGUseElement foram descontinuados e vão ser removidos no futuro."
1873
2062
  },
2063
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | DocumentCreateEventKeyboardEvents": {
2064
+ "message": "document.createEvent('KeyboardEvents') foi descontinuado e vai ser removido. Em alternativa, use new KeyboardEvent()."
2065
+ },
2066
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | DocumentCreateEventTransitionEvent": {
2067
+ "message": "document.createEvent('TransitionEvent') foi descontinuado e vai ser removido. Em alternativa, use new TransitionEvent()."
2068
+ },
1874
2069
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | ExampleBrowserProcessDeprecation": {
1875
2070
  "message": "This is an example for showing the code required for a browser process reported deprecation."
1876
2071
  },
@@ -1982,6 +2177,9 @@
1982
2177
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PrefixedVideoSupportsFullscreen": {
1983
2178
  "message": "A função webkitSupportsFullscreen foi descontinuada. Em alternativa, use a função Document.fullscreenEnabled."
1984
2179
  },
2180
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PreventSvgFilterPaint": {
2181
+ "message": "Não é possível aplicar filtros SVG a iFrames de origem cruzada, iFrames restritos (por exemplo, em sandbox) ou plugins."
2182
+ },
1985
2183
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | RTCConstraintEnableDtlsSrtpFalse": {
1986
2184
  "message": "A restrição DtlsSrtpKeyAgreement foi removida. Especificou um valor false para esta restrição, que é interpretado como uma tentativa de usar o método SDES key negotiation removido. Esta funcionalidade foi removida. Em alternativa, use um serviço que suporte o atributo DTLS key negotiation."
1987
2185
  },
@@ -2090,6 +2288,30 @@
2090
2288
  "node_modules/@paulirish/trace_engine/models/trace/insights/Cache.js | title": {
2091
2289
  "message": "Use durações totais de cache eficientes"
2092
2290
  },
2291
+ "node_modules/@paulirish/trace_engine/models/trace/insights/CharacterSet.js | description": {
2292
+ "message": "É obrigatória uma declaração de codificação de carateres. Pode ser realizada com uma metatag charset nos primeiros 1024 bytes do HTML ou no cabeçalho da resposta HTTP de tipo de conteúdo. [Saiba mais acerca da declaração de codificação de carateres](https://developer.chrome.com/docs/insights/charset/)."
2293
+ },
2294
+ "node_modules/@paulirish/trace_engine/models/trace/insights/CharacterSet.js | failedHttpHeader": {
2295
+ "message": "Não declara o charset no cabeçalho HTTP"
2296
+ },
2297
+ "node_modules/@paulirish/trace_engine/models/trace/insights/CharacterSet.js | failedMetaCharsetLate": {
2298
+ "message": "Declara o charset com uma metatag após os primeiros 1024 bytes"
2299
+ },
2300
+ "node_modules/@paulirish/trace_engine/models/trace/insights/CharacterSet.js | failedMetaCharsetMissing": {
2301
+ "message": "Não declara o charset com uma metatag"
2302
+ },
2303
+ "node_modules/@paulirish/trace_engine/models/trace/insights/CharacterSet.js | failedMetaCharsetUnknown": {
2304
+ "message": "Não foi possível determinar a declaração do charset meta a partir do rastreio"
2305
+ },
2306
+ "node_modules/@paulirish/trace_engine/models/trace/insights/CharacterSet.js | passingHttpHeader": {
2307
+ "message": "Declara o charset no cabeçalho HTTP"
2308
+ },
2309
+ "node_modules/@paulirish/trace_engine/models/trace/insights/CharacterSet.js | passingMetaCharsetEarly": {
2310
+ "message": "Declara o charset com uma metatag nos primeiros 1024 bytes"
2311
+ },
2312
+ "node_modules/@paulirish/trace_engine/models/trace/insights/CharacterSet.js | title": {
2313
+ "message": "Declare uma codificação de carateres"
2314
+ },
2093
2315
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | description": {
2094
2316
  "message": "Um DOM grande pode aumentar a duração dos cálculos de estilo e dos ajustes de esquema, o que afeta a capacidade de resposta da página. Um DOM grande também aumenta a utilização de memória. [Saiba como evitar um tamanho excessivo do DOM](https://developer.chrome.com/docs/performance/insights/dom-size)."
2095
2317
  },
@@ -2297,8 +2519,11 @@
2297
2519
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | fetchPriorityShouldBeApplied": {
2298
2520
  "message": "Deve ser aplicado o valor fetchpriority=high"
2299
2521
  },
2522
+ "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | fetchPriorityShouldBeAppliedToImagePreload": {
2523
+ "message": "Deve ser aplicado o valor fetchpriority=high ao pedido de pré-carregamento da imagem"
2524
+ },
2300
2525
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | lazyLoadNotApplied": {
2301
- "message": "carregamento em diferido não aplicado"
2526
+ "message": "Os recursos de LCP não devem usar loading=lazy"
2302
2527
  },
2303
2528
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | lcpLoadDelay": {
2304
2529
  "message": "A imagem de LCP carregou {PH1} após o ponto de início mais antigo."
@@ -3204,7 +3429,7 @@
3204
3429
  "message": "Se estiver a utilizar o React Router, minimize a utilização do componente `<Redirect>` para as [navegações de encaminhamentos](https://reacttraining.com/react-router/web/api/Redirect)."
3205
3430
  },
3206
3431
  "node_modules/lighthouse-stack-packs/packs/react.js | server-response-time": {
3207
- "message": "Se estiver a renderizar componentes React do lado do servidor, considere utilizar `renderToPipeableStream()` ou `renderToStaticNodeStream()` para permitir que o cliente receba e hidrate várias partes da marcação em vez de todas em simultâneo. [Saiba mais](https://reactjs.org/docs/react-dom-server.html#renderToPipeableStream)."
3432
+ "message": "Se estiver a renderizar componentes React do lado do servidor, considere usar `renderToPipeableStream()` ou `renderToStaticNodeStream()` para permitir que o cliente receba e hidrate várias partes da marcação em vez de todas em simultâneo. [Saiba mais](https://reactjs.org/docs/react-dom-server.html#renderToPipeableStream)."
3208
3433
  },
3209
3434
  "node_modules/lighthouse-stack-packs/packs/react.js | unminified-css": {
3210
3435
  "message": "Se o sistema de compilação reduzir os ficheiros CSS automaticamente, assegure-se de que está a implementar a compilação de produção da aplicação. Pode verificar esta situação com a extensão React Developer Tools. [Saiba mais](https://reactjs.org/docs/optimizing-performance.html#use-the-production-build)."