Add esc functionality

This commit is contained in:
Jenit Jain 2025-08-10 00:36:44 -07:00
parent 57443005cb
commit 4fb5dc4d07
1 changed files with 29 additions and 0 deletions

View File

@ -27,6 +27,35 @@ function App() {
const [isLoadingTransformedData, setIsLoadingTransformedData] = useState(false);
const [transformedDataError, setTransformedDataError] = useState(null);
// Close only the topmost open modal on Escape, preserving underlying modals
useEffect(() => {
const handleKeyDown = (e) => {
if (e.key === 'Escape') {
if (showDetailModal) {
setShowDetailModal(false);
return;
}
if (showWidgetsView) {
setShowWidgetsView(false);
return;
}
if (showTransformedDataModal) {
setShowTransformedDataModal(false);
return;
}
if (showResultsModal) {
setShowResultsModal(false);
return;
}
if (showAnalysisModal) {
setShowAnalysisModal(false);
}
}
};
window.addEventListener('keydown', handleKeyDown);
return () => window.removeEventListener('keydown', handleKeyDown);
}, [showDetailModal, showWidgetsView, showTransformedDataModal, showResultsModal, showAnalysisModal]);
useEffect(() => {
checkBackendStatus();
fetchCompanies();