diff --git a/app/client/src/pages/Editor/Explorer/Files/Submenu.tsx b/app/client/src/pages/Editor/Explorer/Files/Submenu.tsx index 65622f75cb..7f67b8ae82 100644 --- a/app/client/src/pages/Editor/Explorer/Files/Submenu.tsx +++ b/app/client/src/pages/Editor/Explorer/Files/Submenu.tsx @@ -61,6 +61,9 @@ export default function ExplorerSubMenu({ const [query, setQuery] = useState(""); const [show, setShow] = useState(openMenu); const fileOperations = useFilteredFileOperations(query); + const filteredFileOperations = fileOperations.filter( + (item: any) => item.kind !== SEARCH_ITEM_TYPES.sectionTitle, + ); const pageId = useSelector(getCurrentPageId); const dispatch = useDispatch(); const plugins = useSelector((state: AppState) => { @@ -85,34 +88,27 @@ export default function ExplorerSubMenu({ const handleUpKey = useCallback(() => { setActiveItemIdx((currentActiveIndex) => { - if (currentActiveIndex <= 0) return fileOperations.length - 1; - const offset = - fileOperations[currentActiveIndex - 1].kind === - SEARCH_ITEM_TYPES.sectionTitle - ? 2 - : 1; - return Math.max(currentActiveIndex - offset, 0); + if (currentActiveIndex <= 0) return filteredFileOperations.length - 1; + return Math.max(currentActiveIndex - 1, 0); }); - }, [fileOperations]); + }, [filteredFileOperations]); const handleDownKey = useCallback(() => { setActiveItemIdx((currentActiveIndex) => { - if (currentActiveIndex >= fileOperations.length - 1) return 0; - const offset = - fileOperations[currentActiveIndex + 1].kind === - SEARCH_ITEM_TYPES.sectionTitle - ? 2 - : 1; - return Math.min(currentActiveIndex + offset, fileOperations.length - 1); + if (currentActiveIndex >= filteredFileOperations.length - 1) return 0; + return Math.min( + currentActiveIndex + 1, + filteredFileOperations.length - 1, + ); }); - }, [fileOperations]); + }, [filteredFileOperations]); const onChange = useCallback((e) => { setQuery(e.target.value); }, []); const handleSelect = () => { - const item = fileOperations[activeItemIdx]; + const item = filteredFileOperations[activeItemIdx]; handleClick(item); }; @@ -164,41 +160,37 @@ export default function ExplorerSubMenu({ )}
- {fileOperations - .filter( - (item: any) => item.kind !== SEARCH_ITEM_TYPES.sectionTitle, - ) - .map((item: any, idx: number) => { - const icon = - item.icon || - (item.pluginId && ( - - {getPluginIcon(pluginGroups[item.pluginId])} - - )); - return ( -
handleClick(item)} - > - {icon && {icon}} - - {item.shortTitle || item.title} - -
- ); - })} + {filteredFileOperations.map((item: any, idx: number) => { + const icon = + item.icon || + (item.pluginId && ( + + {getPluginIcon(pluginGroups[item.pluginId])} + + )); + return ( +
handleClick(item)} + > + {icon && {icon}} + + {item.shortTitle || item.title} + +
+ ); + })}