1
0
Fork 0
mirror of https://github.com/cheeaun/phanpy.git synced 2025-03-20 21:08:52 +01:00
phanpy/src/utils/focus-deck.js
Lim Chee Aun 80d4a45a65 s/jsx/js extension
Somehow vscode refactor "Move to a new file" preserves the jsx extension
2024-09-23 12:43:55 +08:00

33 lines
1 KiB
JavaScript

const focusDeck = () => {
let timer = setTimeout(() => {
const columns = document.getElementById('columns');
if (columns) {
// Focus first column
// columns.querySelector('.deck-container')?.focus?.();
} else {
const modals = document.querySelectorAll('#modal-container > *');
if (modals?.length) {
// Focus last modal
const modal = modals[modals.length - 1]; // last one
const modalFocusElement =
modal.querySelector('[tabindex="-1"]') || modal;
if (modalFocusElement) {
modalFocusElement.focus();
return;
}
}
const backDrop = document.querySelector('.deck-backdrop');
if (backDrop) return;
// Focus last deck
const pages = document.querySelectorAll('.deck-container');
const page = pages[pages.length - 1]; // last one
if (page && page.tabIndex === -1) {
console.log('FOCUS', page);
page.focus();
}
}
}, 100);
return () => clearTimeout(timer);
};
export default focusDeck;