- Added: The
<search>
element is now correctly handled. (#1759)
- Changed: Classes that do not implement the Singleton pattern now have
protected
constructor and can be extended. (#1735)
-
Added: Expose
allowedAttributes
on ARIA Element type. (#1721)This function takes into account "implicit ARIA semantics" and "ARIA role allowances" from ARIA in HTML. The logic is moved from rule R18 implementation.
-
Fixed:
<summary>
elements that are not summary for their parent details are now correctly treated asgeneric
role. (#1728) -
Fixed:
<details>
elements now correctly have an implicit role ofgroup
. (#1728) -
Fixed:
<summary>
elements that are summary for their parent details now correctly have their name computed from content. (#1728)
- Changed: Alfa packages are now (also) published on the npmjs registry. (
5b924adf304b6f809f4c8b9d5a2f4a8950d5b10b
)
- Changed: Dummy minor version to experiment with publish flow, use the previous or next minor version instead. (
2a62d8a43e294ee56c18315c8fad29fbdc18c0df
)
- Changed: Trying to fix a problem in generating provenance statements (#1674)
- Added: Trying to publish Alfa packages on the npm registry (#1673)
-
Fixed: The publish flow was updated to a new version. (
a2f19cf9a6c7c72b8bf085597e4f1a95ac3e4eb2
)Some 0.87.* versions were generating uninstallable package. This should be fixed now.
- Fixed: Fix usages of
__dirname
(#1644)
-
Breaking: TS resolution has been changed to
Node16
, target toes2022
. (#1636) -
Breaking: Alfa is now distributed as ESM rather than CJS modules; projects using it must be ESM or use dynamic
import()
. (#1636)⚠️ This is the last of a series of changes on the internal structure and build process of distributed packages that was started with v0.85.0.
-
Breaking: The .js files are now built in the
dist
folder rather than insrc
. (#1628)⚠️ This is the first of a series of changes on the internal structure and build process of distributed packages. It is probably better to not use this version and wait until more of these internal changes have been done to jump directly to the final result. We are internally releasing these changes for validation purpose only.This should not impact consumers, the
package.json
files should be set correctly to consume these files.
- Breaking: Node 18 is no longer supported. (#1618)
-
Added: Each package now contains its internal dependency graph in its
docs
directory. (#1610) -
Fixed: Accessible name computation has been optimized (#1611)
- Changed:
Node.toJSON
now serialises the corresponding DOM node as its path in the flat tree, not in the DOM tree. (#1607)
-
Changed: Role computation for
<li>
elements now looks for a parent<ul>
in the flat tree, not the DOM tree. (#1607)Browsers seem to behave differently on that case, but allowing slotted
<li>
makes sense, so taking this interpretation for now.
- Breaking:
Name.Source
andName.State
are now exported from the top-level of the package. (#1566)
-
Fixed: Alfa now correctly handle spaces in accessible names. (#1566)
<br>
elements add a space to the name.- Text nodes with leading or trailing spaces (including space only nodes) keep the space when concatenated.
- Names of descendants with an
aria-label
are spaced, following browsers' behavior. - Names of descendants displayed as
table-cell
are spaced, following browsers' behavior.
-
Fixed: The
<hgroup>
element now has an implicit role ofgroup
. (#1506)Following the re-introduction of
<hgroup>
, and subsequent changes to the HTML AAM.
-
Fixed: Name from content now correctly includes shadow DOM. (#1470)
When the accessible name is computed from the descendants, slots and descendants inside a shadow DOM are correctly taken into account. This mimic what browsers are doing, and what the accessible name conputation group seems to be moving toward.
- Removed: Many pieces of code are no longer exported. These were mostly internal exports that are no longer used in other files and should not impact intended usage of the packages. (#1437)