useValidAriaRole
Summary
Section titled “Summary”- Rule available since: v1.4.0
- Diagnostic Category: lint/a11y/useValidAriaRole
- This rule is recommended, which means is enabled by default.
- This rule has an unsafe fix.
- The default severity of this rule is error.
- Sources:
- Same as jsx-a11y/aria-role
 
- Same as 
How to configure
Section titled “How to configure”{  "linter": {    "rules": {      "a11y": {        "useValidAriaRole": "error"      }    }  }}Description
Section titled “Description”Elements with ARIA roles must use a valid, non-abstract ARIA role.
Examples
Section titled “Examples”Invalid
Section titled “Invalid”<div role="datepicker"></div>code-block.jsx:1:1 lint/a11y/useValidAriaRole  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  ✖ Enforce that elements with ARIA roles must use a valid, non-abstract ARIA role.
  
  > 1 │ <div role=“datepicker”></div>
      │ ^^^^^^^^^^^^^^^^^^^^^^^
    2 │ 
  
  ℹ Check WAI-ARIA for valid roles or provide options accordingly.
  
  ℹ Unsafe fix: Remove the invalid role attribute.
     Check the list of all valid role attributes.
  
    1 │ <div·role=“datepicker”></div>
      │      -----------------       
<div role="range"></div>code-block.jsx:1:1 lint/a11y/useValidAriaRole  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  ✖ Enforce that elements with ARIA roles must use a valid, non-abstract ARIA role.
  
  > 1 │ <div role=“range”></div>
      │ ^^^^^^^^^^^^^^^^^^
    2 │ 
  
  ℹ Check WAI-ARIA for valid roles or provide options accordingly.
  
  ℹ Unsafe fix: Remove the invalid role attribute.
     Check the list of all valid role attributes.
  
    1 │ <div·role=“range”></div>
      │      ------------       
<div role=""></div>code-block.jsx:1:1 lint/a11y/useValidAriaRole  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  ✖ Enforce that elements with ARIA roles must use a valid, non-abstract ARIA role.
  
  > 1 │ <div role=""></div>
      │ ^^^^^^^^^^^^^
    2 │ 
  
  ℹ Check WAI-ARIA for valid roles or provide options accordingly.
  
  ℹ Unsafe fix: Remove the invalid role attribute.
     Check the list of all valid role attributes.
  
    1 │ <div·role=""></div>
      │      -------       
<Foo role="foo"></Foo>code-block.jsx:1:1 lint/a11y/useValidAriaRole  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  ✖ Enforce that elements with ARIA roles must use a valid, non-abstract ARIA role.
  
  > 1 │ <Foo role=“foo”></Foo>
      │ ^^^^^^^^^^^^^^^^
    2 │ 
  
  ℹ Check WAI-ARIA for valid roles or provide options accordingly.
  
  ℹ Unsafe fix: Remove the invalid role attribute.
     Check the list of all valid role attributes.
  
    1 │ <Foo·role=“foo”></Foo>
      │      ----------       
<>  <div role="button"></div>  <div role={role}></div>  <div></div></>Options
Section titled “Options”allowInvalidRoles
Section titled “allowInvalidRoles”It allows specifying a list of roles that might be invalid otherwise
{  "linter": {    "rules": {      "a11y": {        "useValidAriaRole": {          "options": {            "allowInvalidRoles": [              "datepicker"            ]          }        }      }    }  }}<div role="datepicker"></div>ignoreNonDom
Section titled “ignoreNonDom”Use this option to ignore non-DOM elements, such as components
{  "linter": {    "rules": {      "a11y": {        "useValidAriaRole": {          "options": {            "ignoreNonDom": true          }        }      }    }  }}<Datepicker role="foo"></Datepicker>Accessibility guidelines
Section titled “Accessibility guidelines”Resources
Section titled “Resources”Related links
Section titled “Related links”Copyright (c) 2023-present Biome Developers and Contributors.