Changelog
5.1.3
Changelog
5.1.2
focusTrap
as output name.Changelog
5.1.1
Changelog
5.1.0
focusable()
for getting all focusable nodes.tabbable
has been fixed: Was Array<Element>
(an Element
is technically not focusable), is now Array<HTMLElement | SVGElement>
(which are both still/also Element
instances).position: fixed
) containers should now be consistently found in supported browsers.prepublishOnly
script with prepare
script. This has the added benefit of running automatically when installing the package from GitHub (as supported by NPM) where the published ./dist
directory is not automatically included.focusable()
type definition.#__PURE__
annotation has been added to allow dropping one of the top-level calls (if its result stays unused) and removed minification of the file referenced as package.json#module
to avoid dropping the comments (including existing #__PURE__
annotations).Changelog
5.0.0
<audio controls />
and <video controls />
elements without tabindex
attribute specified would be deemed NOT tabbable in Chrome, but would be in FireFox, because Chrome has tabIndex
(the DOM Element property) returning -1 (focusable, but not tabbable), while FireFox has tabIndex
returning 0 (focusable, and tabbable), yet both browsers include these elements in the regular tab order (as if tabIndex
was 0 for both browsers). Now these elements are considered tabbable in Chrome too!<summary>
element directly under a <details>
element as tabbable and focusable.isTabbableRadio()
internal function in order to better support nested radio buttons:
tabbable()
.tabbable
-> `import { tabbable } from 'tabbable';tabbable.isTabbable
-> `import { isTabbable } from 'tabbable';tabbable.isFocusable
-> `import { isFocusable } from 'tabbable';package.json
now states sideEffects: false
to mark this module as having no side effects as a result of merely importing it../dist/index.umd.*
.Changelog
4.0.0
Changelog
3.1.2
Changelog
3.1.1
Changelog
3.1.0
tabbable.isFocusable
and tabbable.isTabbable
functions.