Socket
Socket
Sign inDemoInstall

@charlietango/use-focus-trap

Package Overview
Dependencies
Maintainers
2
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@charlietango/use-focus-trap - npm Package Compare versions

Comparing version 1.2.4 to 1.2.5

6

CHANGELOG.md

@@ -6,2 +6,8 @@ # Change Log

## [1.2.5](https://github.com/charlie-tango/hooks/compare/@charlietango/use-focus-trap@1.2.4...@charlietango/use-focus-trap@1.2.5) (2019-10-03)
### Bug Fixes
- **useFocusTrap:** fix typings ([bb02b29](https://github.com/charlie-tango/hooks/commit/bb02b29))
## [1.2.4](https://github.com/charlie-tango/hooks/compare/@charlietango/use-focus-trap@1.2.3...@charlietango/use-focus-trap@1.2.4) (2019-09-25)

@@ -8,0 +14,0 @@

1

lib/helpers/tabbable.d.ts

@@ -0,1 +1,2 @@

export declare function focusable(element: HTMLElement): boolean | "";
export default function findTabbableDescendants(element: HTMLElement): Array<HTMLElement>;

20

lib/useFocusTrap.cjs.js

@@ -38,4 +38,11 @@ 'use strict';

function focusable(element, isTabIndexNotNaN) {
function getElementTabIndex(element) {
var tabIndex = element.getAttribute('tabindex');
if (tabIndex === null) tabIndex = undefined;
return parseInt(tabIndex, 10);
}
function focusable(element) {
var nodeName = element.nodeName.toLowerCase();
var isTabIndexNotNaN = !isNaN(getElementTabIndex(element));
var res = // @ts-ignore

@@ -47,6 +54,5 @@ tabbableNode.test(nodeName) && !element.disabled || (element instanceof HTMLAnchorElement ? element.href || isTabIndexNotNaN : isTabIndexNotNaN);

function tabbable(element) {
var tabIndex = element.getAttribute('tabindex');
if (tabIndex === null) tabIndex = undefined;
var isTabIndexNaN = isNaN(parseInt(tabIndex));
return (isTabIndexNaN || parseInt(tabIndex, 10) >= 0) && focusable(element, !isTabIndexNaN);
var tabIndex = getElementTabIndex(element);
var isTabIndexNaN = isNaN(tabIndex);
return (isTabIndexNaN || tabIndex >= 0) && focusable(element);
}

@@ -161,2 +167,6 @@

if (!focusElement && focusable(node)) {
focusElement = node;
}
if (!focusElement) {

@@ -163,0 +173,0 @@ var tabbableChildren = findTabbableDescendants(node);

@@ -34,4 +34,11 @@ import { useRef, useCallback, useEffect } from 'react';

function focusable(element, isTabIndexNotNaN) {
function getElementTabIndex(element) {
var tabIndex = element.getAttribute('tabindex');
if (tabIndex === null) tabIndex = undefined;
return parseInt(tabIndex, 10);
}
function focusable(element) {
var nodeName = element.nodeName.toLowerCase();
var isTabIndexNotNaN = !isNaN(getElementTabIndex(element));
var res = // @ts-ignore

@@ -43,6 +50,5 @@ tabbableNode.test(nodeName) && !element.disabled || (element instanceof HTMLAnchorElement ? element.href || isTabIndexNotNaN : isTabIndexNotNaN);

function tabbable(element) {
var tabIndex = element.getAttribute('tabindex');
if (tabIndex === null) tabIndex = undefined;
var isTabIndexNaN = isNaN(parseInt(tabIndex));
return (isTabIndexNaN || parseInt(tabIndex, 10) >= 0) && focusable(element, !isTabIndexNaN);
var tabIndex = getElementTabIndex(element);
var isTabIndexNaN = isNaN(tabIndex);
return (isTabIndexNaN || tabIndex >= 0) && focusable(element);
}

@@ -157,2 +163,6 @@

if (!focusElement && focusable(node)) {
focusElement = node;
}
if (!focusElement) {

@@ -159,0 +169,0 @@ var tabbableChildren = findTabbableDescendants(node);

{
"name": "@charlietango/use-focus-trap",
"description": "Trap keyboard focus inside a DOM element, to prevent the user navigating outside a modal",
"version": "1.2.4",
"version": "1.2.5",
"private": false,

@@ -44,3 +44,3 @@ "sideEffects": false,

},
"gitHead": "9b7f95c6ca022db1b504add9de6174e92d7bc221"
"gitHead": "8629ccbb8557478722b24d3b4c4de2332199e150"
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc