ui/packages/consul-ui/app/modifiers/fix-super-select-aria.mdx
Fixes multiple ARIA accessibility issues in SuperSelect (ember-power-select) components by correcting roles, attributes, and labels.
role="alert" to role="option" on select optionsaria-controls pointing to non-existent elementsaria-expanded to comboboxes and aria-label to listboxes<!-- Before -->
<div role="alert" aria-selected="true">Option 1</div>
<input role="combobox" aria-controls="missing-dropdown" />
<ul role="listbox"></ul>
<!-- After -->
<div role="option" aria-selected="true">Option 1</div>
<input role="combobox" aria-expanded="false" />
<ul role="listbox" aria-label="Available Options"></ul>
Apply to a parent element containing SuperSelect components:
<div {{fix-super-select-aria}}>
<PowerSelect
@options={{array "Option 1" "Option 2" "Option 3"}}
@selected={{this.selected}}
@onChange={{fn (mut this.selected)}}
as |option|
>
{{option}}
</PowerSelect>
</div>
Temporary workaround - remove when ember-power-select fixes these ARIA issues.