arrowtab
Version:
Use arrow keys to "tab" between focusable elements
26 lines • 863 B
JavaScript
export const hasDisabledKeys = ({ event, activeElement, }) => {
const checkElement = (element) => {
const data = element.getAttribute('data-arrowtab');
if (data) {
const keywords = data.split(' ');
if (keywords.includes('disable')) {
return true;
}
const direction = event.key.toLowerCase().replace('arrow', '');
console.log({ direction, keywords });
if (keywords.includes(`disable-${direction}`)) {
return true;
}
}
return false;
};
let currentElement = activeElement;
while (currentElement) {
if (checkElement(currentElement)) {
return true;
}
currentElement = currentElement.parentElement;
}
return false;
};
//# sourceMappingURL=hasDisabledKeys.js.map