Skip to content

Commit

Permalink
fix: prevent a11y_label_has_associated_control false positive for c…
Browse files Browse the repository at this point in the history
…omponent in `<label>` (sveltejs#12119)

* fix: prevent `a11y_label_has_associated_control` false positive for component in `<label>`

* fix render tags as well

* Update .changeset/swift-rats-sing.md

---------

Co-authored-by: Rich Harris <[email protected]>
Co-authored-by: Rich Harris <[email protected]>
  • Loading branch information
3 people authored Jun 21, 2024
1 parent 965c12f commit 5b60a0e
Show file tree
Hide file tree
Showing 5 changed files with 23 additions and 0 deletions.
5 changes: 5 additions & 0 deletions .changeset/swift-rats-sing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"svelte": patch
---

fix: prevent `a11y_label_has_associated_control` false positive for component or render tag in `<label>`
2 changes: 2 additions & 0 deletions packages/svelte/src/compiler/phases/2-analyze/a11y.js
Original file line number Diff line number Diff line change
Expand Up @@ -1086,6 +1086,8 @@ function check_element(node, state) {
if (
node.type === 'SvelteElement' ||
node.type === 'SlotElement' ||
node.type === 'Component' ||
node.type === 'RenderTag' ||
(node.type === 'RegularElement' &&
(a11y_labelable.includes(node.name) || node.name === 'slot'))
) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
<script>
import Component from './component.svelte'
</script>

<label>
<slot />
</label>

<label>
<Component />
</label>
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<script>
import Component from './component.svelte'
</script>

<label>
{@render x()}
</label>
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
[]

0 comments on commit 5b60a0e

Please sign in to comment.