From 7e825604ddf90c989537e07939a39dc249343897 Mon Sep 17 00:00:00 2001 From: Oliver Speir <115520730+OliverSpeir@users.noreply.github.com> Date: Thu, 11 Apr 2024 02:03:56 -0600 Subject: [PATCH] Update a11y-no-noninteractive-tabindex rule for dev tool bar (#10750) * fix: a11y-no-noninteractive-tabindex * add changeset --- .changeset/few-mails-kiss.md | 5 +++++ .../src/runtime/client/dev-toolbar/apps/audit/rules/a11y.ts | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 .changeset/few-mails-kiss.md diff --git a/.changeset/few-mails-kiss.md b/.changeset/few-mails-kiss.md new file mode 100644 index 0000000000..6bf4fed239 --- /dev/null +++ b/.changeset/few-mails-kiss.md @@ -0,0 +1,5 @@ +--- +"astro": patch +--- + +Fixes a false positive for "Invalid `tabindex` on non-interactive element" rule for roleless elements ( `div` and `span` ). diff --git a/packages/astro/src/runtime/client/dev-toolbar/apps/audit/rules/a11y.ts b/packages/astro/src/runtime/client/dev-toolbar/apps/audit/rules/a11y.ts index 27da9b011e..6d07f36e0a 100644 --- a/packages/astro/src/runtime/client/dev-toolbar/apps/audit/rules/a11y.ts +++ b/packages/astro/src/runtime/client/dev-toolbar/apps/audit/rules/a11y.ts @@ -513,7 +513,11 @@ export const a11y: AuditRuleWithSelector[] = [ if (!isInteractive(element)) return false; - if (!interactiveElements.includes(element.localName)) return true; + if ( + !interactiveElements.includes(element.localName) && + !roleless_elements.includes(element.localName) + ) + return true; }, }, {