{"version":3,"sources":["../src/hooks/useA11yKeyboardShortcut.ts"],"sourcesContent":["import { useEffect } from 'react';\nimport { useAccessibilityStore } from '../store/accessibilityStore';\n\n/**\n * Registra o atalho `Alt+A` para abrir/fechar o painel de\n * acessibilidade. Não interfere quando o foco está em campo de\n * texto/edição para evitar conflitos com o usuário digitando.\n *\n * Habilitar/desabilitar é controlado pela preferência\n * `keyboardShortcut` do store.\n */\nexport const useA11yKeyboardShortcut = () => {\n  const enabled = useAccessibilityStore((s) => s.keyboardShortcut);\n  const togglePanel = useAccessibilityStore((s) => s.togglePanel);\n\n  useEffect(() => {\n    if (!enabled) return;\n\n    const handler = (event: KeyboardEvent) => {\n      if (!event.altKey || event.key.toLowerCase() !== 'a') return;\n      // Ignora auto-repeat: segurar Alt+A não deve oscilar o painel\n      if (event.repeat) return;\n\n      // Não ativa se o usuário estiver digitando em algum campo\n      const target = event.target as HTMLElement | null;\n      if (target) {\n        const tag = target.tagName;\n        if (\n          tag === 'INPUT' ||\n          tag === 'TEXTAREA' ||\n          tag === 'SELECT' ||\n          target.isContentEditable\n        ) {\n          return;\n        }\n      }\n\n      event.preventDefault();\n      togglePanel();\n    };\n\n    globalThis.addEventListener('keydown', handler);\n    return () => globalThis.removeEventListener('keydown', handler);\n  }, [enabled, togglePanel]);\n};\n"],"mappings":";;;;;AAAA,SAAS,iBAAiB;AAWnB,IAAM,0BAA0B,MAAM;AAC3C,QAAM,UAAU,sBAAsB,CAAC,MAAM,EAAE,gBAAgB;AAC/D,QAAM,cAAc,sBAAsB,CAAC,MAAM,EAAE,WAAW;AAE9D,YAAU,MAAM;AACd,QAAI,CAAC,QAAS;AAEd,UAAM,UAAU,CAAC,UAAyB;AACxC,UAAI,CAAC,MAAM,UAAU,MAAM,IAAI,YAAY,MAAM,IAAK;AAEtD,UAAI,MAAM,OAAQ;AAGlB,YAAM,SAAS,MAAM;AACrB,UAAI,QAAQ;AACV,cAAM,MAAM,OAAO;AACnB,YACE,QAAQ,WACR,QAAQ,cACR,QAAQ,YACR,OAAO,mBACP;AACA;AAAA,QACF;AAAA,MACF;AAEA,YAAM,eAAe;AACrB,kBAAY;AAAA,IACd;AAEA,eAAW,iBAAiB,WAAW,OAAO;AAC9C,WAAO,MAAM,WAAW,oBAAoB,WAAW,OAAO;AAAA,EAChE,GAAG,CAAC,SAAS,WAAW,CAAC;AAC3B;","names":[]}