Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit c8b518c

Browse files
committed
Support mixed state
1 parent d4d41eb commit c8b518c

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

index.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,11 @@ function shouldCommit(event: Event) {
184184
function updateChecked(selected: Element, details: Element) {
185185
for (const el of details.querySelectorAll('[role="menuitemradio"], [role="menuitemcheckbox"]')) {
186186
const input = el.querySelector('input[type="radio"], input[type="checkbox"]')
187-
el.setAttribute('aria-checked', (input instanceof HTMLInputElement ? input.checked : el === selected).toString())
187+
let checkState = el === selected
188+
if (input instanceof HTMLInputElement) {
189+
checkState = input.indeterminate ? 'mixed' : input.checked
190+
}
191+
el.setAttribute('aria-checked', checkState.toString())
188192
}
189193
}
190194

0 commit comments

Comments
 (0)