Releases: eps1lon/dom-accessibility-api
v0.5.12
Patch Changes
- #800
de554b0Thanks @pablo-abc! - Remover circular dependency, which fixes warnings thrown in certain environments.
v0.5.11
v0.5.10
Patch Changes
-
#770
7066180Thanks @eps1lon! - Allow computing name for inaccessible elementsThis is mainly targetted at integration with
@testing-library/dom.
But it can also be used as a general performance boost when used in a JSDOM environment.
The rationale is that most elements are part of the a11y tree.
In those cases computing a11y tree exclusion is wasted.
Since it's expensive, we can disable it.
The recommendation is to only ignore a11y tree inclusion locally and specifically
enable it for the tests where you do know that a11y tree inclusion will play a role.
v0.5.9
v0.5.8
Patch Changes
-
#343
3d755c2Thanks @eps1lon! - AddisInaccessibleandisSubtreeInaccessible.isInaccessibleimplements https://www.w3.org/TR/wai-aria-1.2/#tree_exclusion.
isSubtreeInaccessiblecan be used to inject a memoized version of that function intoisInaccessible.
v0.5.7
v0.5.6
Patch Changes
-
#666
26ee73dThanks @eps1lon! - Consider<label />when computing the accessible name of<output />Given
<label for="outputid">Output Label</label> <output id="outputid"></output>
Previously the accessible name of the
<output />would ignore the<label />.
However, an<output />is labelable and therefore the accessible name is now computed using<label />elements if they exists.
In this example the accessible name is"Output Label".
v0.5.5
Patch Changes
-
#627
0485441Thanks @eps1lon! - Ensure certain babel helpers aren't requiredSource:
-const [item] = list; +const item = list[0];
Transpiled:
-var _trim$split = list.trim().split(" "), -_trim$split2 = _slicedToArray(_trim$split, 1), -item = _trim$split2[0] +var item = list[0];
-
#629
383bdb6Thanks @eps1lon! - Use label attribute for naming of<optgroup>elements.Given
<select> <optgroup label="foo"> <option value="1">bar</option> </optgroup> </select>
Previously the
<optgroup />would not have an accessible name.
Though 2D inaccname1.2 could be interpreted to use thelabelattribute:Otherwise, if the current node's native markup provides an attribute (e.g. title) or element (e.g. HTML label) that defines a text alternative, return that alternative [...]
This was confirmed in NVDA + FireFox.
v0.5.4
Patch Changes
-
3866289#442 Thanks @geoffrich! - Correctly determine accessible name when element contains a slot.Previously, computing the accessible name would only examine child nodes. However, content placed in a slot is is an assigned node, not a child node.
If you have a custom element
custom-buttonwith a slot:<button><slot></slot></button> <!-- accname of inner <button> is 'Custom name' (previously '') --> <custom-button>Custom name</custom-button>
If you have a custom element
custom-button-defaultwith default content in the slot:<button><slot>Default name</slot></button> <!-- accname of inner <button> is 'Custom name' (previously 'Default name') --> <custom-button-default>Custom name</custom-button-default> <!-- accname of inner <button> is 'Default name' (previously 'Default name') --> <custom-button-default></custom-button-default>
This is not currently defined in the accname spec but reflects current browser behavior.
0.5.3
Patch Changes
-
76e8f93#430 Thanks @ckundo! - Maintainimgrole forimgwith missingaltattribute.Previously
<img />would be treated the same as<img alt />.
<img />is now treated asrole="img"as specified.