Skip to content

Releases: focus-trap/tabbable

v6.2.0

26 Jun 20:19
98ad98e
Compare
Choose a tag to compare

Minor Changes

  • 18a093f: Add new getTabIndex() API which enables Focus-trap to determine tab indexes in the same way as Tabbable when necessary (see focus-trap#974).

v6.1.2

03 May 23:00
6f546ec
Compare
Choose a tag to compare

Patch Changes

  • b39b217: Pin jsdom downstream dependency nwsapi to v2.2.2 while awaiting fix (#982)

v6.1.1

15 Feb 21:25
4dd3cbd
Compare
Choose a tag to compare

Patch Changes

  • 97373cc: Fix JSDom not supporting HTMLElement.inert and HTMLElement.contentEditable APIs, and not supporting CSS selector ':not([inert *])' resulting in no nodes found and "focus-trap must have at least one tabbable node..." error in focus-trap.

v6.1.0

15 Feb 17:30
c97663b
Compare
Choose a tag to compare

Minor Changes

Patch Changes

  • b8c7550: Fix a corner case where a node's root node can be itself, indicating detachment from the DOM, leading to a crash in isHidden() -> isNodeAttached() -> getRootNode() if not handled properly (focus-trap-react #905)

v6.0.1

28 Oct 14:35
1f416d5
Compare
Choose a tag to compare

Patch Changes

  • 0aab1e3: Fix crash with tabbable scoped table header elements (#832)

v6.0.0

17 Aug 20:49
452dc79
Compare
Choose a tag to compare

Major Changes

  • 5f40c8e: Revised and clarified official browser support (still as broad and deep as reasonably possible).
  • 5f40c8e: 🚨 Breaking: Dropped support of IE browsers, all versions.
    • IE11 was officially retired on June 15, 2022 (6 weeks ago). There are no longer any versions of IE that are still maintained or even supported by Microsoft.
  • a09ba0b: 🚨 Breaking: Default displayCheck 'full' option no longer treats detached nodes as visible. Use the new 'legacy-full' option to restore old (incorrect) behavior only if you must. Ideally, make sure tabbable only runs once all nodes of interest have been attached to the document.

v5.3.3

25 May 19:32
e4092a6
Compare
Choose a tag to compare

Patch Changes

  • 0210a1c: fix: align with browser behaviour when a web component has a negative tabindex

v5.3.2

06 May 18:55
ce3ab1a
Compare
Choose a tag to compare

Patch Changes

  • 320bfd1: Updated docs for displayCheck configuration.
  • aa2a699: Fixed an issue with displayCheck=full (default setting) determining all nodes were hidden when the container is not attached to the document. In this case, tabbable will revert to a displayCheck=none mode, which is the equivalent legacy behavior. Also updated the displayCheck option docs to add warnings about this corner case for the full and non-zero-area modes. non-zero-area behaves differently in the corner case. See the docs for more info.

v5.3.1

21 Apr 23:59
f18e6b4
Compare
Choose a tag to compare

Patch Changes

  • cf1da66: Add warnings and help in documentation about running tabbable under JSDom (e.g. with Jest). JSDom is not technically supported, and 5.3.0 introduced some changes that use DOM APIs that JSDom stubs out, which may cause some JSDom-based tests to fail. Also revamp the API docs a bit to make them clearer, and add missing getShadowRoot option to isTabbable() and isFocusable() (docs only; no code changes necessary).

v5.3.0

20 Apr 23:14
a6018d4
Compare
Choose a tag to compare

Minor Changes

  • 685a906: Adds new Shadow DOM support (must be explicitly enabled using the new getShadowRoot option).
    • When enabled, supports open shadows by default, and can support closed shadows if the option is a function that returns the shadow for a given node. See documentation for more information.
    • Includes all updates from 5.3.0-beta.0 and 5.3.0-beta.1 releases.

Patch Changes

  • b341412: Made "isDisabledFromFieldset" more readable and concise (even marginally faster).
  • 685a906: Fixed a bug in getTabIndex: the tab index of <audio>, <video> and <details> was left to the browser default if explicitly set to a value that couldn't be parsed as integer, leading to inconsistent behavior across browsers. Also slightly modified the function's logic to make it more efficient. Finally added tests to cover the fix.
  • dd6d0ec: Optimized and extended displayCheck: "full" option (now checks for any element having no display boxes) and added test for display: "contents" property (this bug was never reported). (#592)
  • 193fca2: Fixed bug in isDisabledFromFieldset. The function wasn't checking whether the disabled <fieldset> containing node is the top-most disabled <fieldset> (#596).