Rename rule S6854 to S1090 (#3894)
This commit is contained in:
parent
b759f8b026
commit
210c908a01
25
rules/S1090/javascript/metadata.json
Normal file
25
rules/S1090/javascript/metadata.json
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{
|
||||||
|
"title": "iFrames must have a title",
|
||||||
|
"type": "CODE_SMELL",
|
||||||
|
"status": "ready",
|
||||||
|
"remediation": {
|
||||||
|
"func": "Constant\/Issue",
|
||||||
|
"constantCost": "5min"
|
||||||
|
},
|
||||||
|
"tags": [
|
||||||
|
"accessibility",
|
||||||
|
"react"
|
||||||
|
],
|
||||||
|
"defaultSeverity": "Minor",
|
||||||
|
"ruleSpecification": "RSPEC-1090",
|
||||||
|
"sqKey": "S1090",
|
||||||
|
"scope": "All",
|
||||||
|
"defaultQualityProfiles": ["Sonar way"],
|
||||||
|
"quickfix": "infeasible",
|
||||||
|
"code": {
|
||||||
|
"impacts": {
|
||||||
|
"RELIABILITY": "LOW"
|
||||||
|
},
|
||||||
|
"attribute": "CONVENTIONAL"
|
||||||
|
}
|
||||||
|
}
|
42
rules/S1090/javascript/rule.adoc
Normal file
42
rules/S1090/javascript/rule.adoc
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
== Why is this an issue?
|
||||||
|
|
||||||
|
An iframe, or inline frame, is an HTML document embedded inside another HTML document on a website. The iframe HTML element is often used to insert content from another source, such as an advertisement, into a web page.
|
||||||
|
|
||||||
|
In the context of web accessibility, ``++<iframe>++``'s should have a ``++title++`` attribute. This is because screen readers for the visually impaired use this title to help users understand the content of the iframe.
|
||||||
|
|
||||||
|
Without a title, it can be difficult for these users to understand the context or purpose of the iframe's content.
|
||||||
|
|
||||||
|
== How to fix it
|
||||||
|
|
||||||
|
To fix missing iframe titles, you simply need to add a ``++title++`` attribute to your ``++<iframe>++`` element. The value of this attribute should be a brief description of the iframe's content.
|
||||||
|
|
||||||
|
=== Code examples
|
||||||
|
|
||||||
|
==== Noncompliant code example
|
||||||
|
|
||||||
|
[source,javascript,diff-id=1,diff-type=noncompliant]
|
||||||
|
----
|
||||||
|
function iframe() {
|
||||||
|
return (
|
||||||
|
<iframe src="https://openweathermap.org"></iframe> // Noncompliant
|
||||||
|
);
|
||||||
|
}
|
||||||
|
----
|
||||||
|
|
||||||
|
==== Compliant solution
|
||||||
|
|
||||||
|
[source,javascript,diff-id=1,diff-type=compliant]
|
||||||
|
----
|
||||||
|
function iframe() {
|
||||||
|
return (
|
||||||
|
<iframe src="https://openweathermap.org" title="Weather forecasts, nowcasts and history"></iframe>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
----
|
||||||
|
|
||||||
|
== Resources
|
||||||
|
=== Documentation
|
||||||
|
|
||||||
|
* MDN web docs - https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe[iframe element]
|
||||||
|
* WCAG - https://www.w3.org/WAI/WCAG21/Understanding/bypass-blocks[Bypass Blocks]
|
||||||
|
* WCAG - https://www.w3.org/WAI/WCAG21/Understanding/name-role-value[Name, Role, Value]
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"title": "iFrames must have a title",
|
"title": "iFrames must have a title",
|
||||||
"type": "CODE_SMELL",
|
"type": "CODE_SMELL",
|
||||||
"status": "ready",
|
"status": "deprecated",
|
||||||
"remediation": {
|
"remediation": {
|
||||||
"func": "Constant\/Issue",
|
"func": "Constant\/Issue",
|
||||||
"constantCost": "5min"
|
"constantCost": "5min"
|
||||||
@ -10,11 +10,19 @@
|
|||||||
"accessibility",
|
"accessibility",
|
||||||
"react"
|
"react"
|
||||||
],
|
],
|
||||||
|
"extra": {
|
||||||
|
"replacementRules": [
|
||||||
|
"RSPEC-1090"
|
||||||
|
],
|
||||||
|
"legacyKeys": [
|
||||||
|
|
||||||
|
]
|
||||||
|
},
|
||||||
"defaultSeverity": "Minor",
|
"defaultSeverity": "Minor",
|
||||||
"ruleSpecification": "RSPEC-6854",
|
"ruleSpecification": "RSPEC-6854",
|
||||||
"sqKey": "S6854",
|
"sqKey": "S6854",
|
||||||
"scope": "All",
|
"scope": "All",
|
||||||
"defaultQualityProfiles": ["Sonar way"],
|
"defaultQualityProfiles": [],
|
||||||
"quickfix": "infeasible",
|
"quickfix": "infeasible",
|
||||||
"code": {
|
"code": {
|
||||||
"impacts": {
|
"impacts": {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user