export function isInputFocused(): boolean {
const el = document.activeElement as HTMLElement | null;
if (!el) return false;
const tag = el.tagName;
if (tag === 'INPUT' || tag === 'TEXTAREA' || el.isContentEditable) return true;
// Monaco's EditContext surface (Chromium) is a plain focusable
, not a textarea or
// contentEditable element, so the checks above miss it. Treat any focus inside the editor
// container as input focus, matching the textarea fallback other browsers already get.
return !!el.closest('.monaco-editor');
}
export function isPaletteOpen(): boolean {
return !!document.querySelector('[role="dialog"] [cmdk-root]');
}