diff --git a/src/renderer/features/search/components/go-to-commands.tsx b/src/renderer/features/search/components/go-to-commands.tsx index cc1f3c8d..42ffeebd 100644 --- a/src/renderer/features/search/components/go-to-commands.tsx +++ b/src/renderer/features/search/components/go-to-commands.tsx @@ -1,4 +1,4 @@ -import { useCallback } from 'react'; +import { useCallback, Dispatch } from 'react'; import { useNavigate } from 'react-router'; import { Command, CommandPalettePages } from '/@/renderer/features/search/components/command'; import { AppRoute } from '/@/renderer/router/routes'; @@ -6,25 +6,29 @@ import { AppRoute } from '/@/renderer/router/routes'; interface GoToCommandsProps { handleClose: () => void; setPages: (pages: CommandPalettePages[]) => void; + setQuery: Dispatch; } -export const GoToCommands = ({ setPages, handleClose }: GoToCommandsProps) => { +export const GoToCommands = ({ setQuery, setPages, handleClose }: GoToCommandsProps) => { const navigate = useNavigate(); const goTo = useCallback( (route: string) => { navigate(route); - setPages([CommandPalettePages.HOME]); handleClose(); + setPages([CommandPalettePages.HOME]); + setQuery(''); }, - [handleClose, navigate, setPages], + [handleClose, navigate, setPages, setQuery], ); return ( <> - goTo(AppRoute.HOME)}>Home - goTo(AppRoute.SEARCH)}>Search - goTo(AppRoute.SETTINGS)}>Settings + + goTo(AppRoute.HOME)}>Home + goTo(AppRoute.SEARCH)}>Search + goTo(AppRoute.SETTINGS)}>Settings + goTo(AppRoute.LIBRARY_ALBUMS)}>Albums goTo(AppRoute.LIBRARY_SONGS)}>Tracks diff --git a/src/renderer/features/search/components/home-commands.tsx b/src/renderer/features/search/components/home-commands.tsx index 66d771da..ef9a4053 100644 --- a/src/renderer/features/search/components/home-commands.tsx +++ b/src/renderer/features/search/components/home-commands.tsx @@ -37,8 +37,8 @@ export const HomeCommands = ({ const handleSearch = useCallback(() => { navigate(AppRoute.SEARCH); - setQuery(''); handleClose(); + setQuery(''); }, [handleClose, navigate, setQuery]); return ( @@ -48,6 +48,9 @@ export const HomeCommands = ({ setPages([...pages, CommandPalettePages.GO_TO])}> Go to page... + setPages([...pages, CommandPalettePages.MANAGE_SERVERS])}> + Server commands... + {query !== '' && ( void; + setPages: (pages: CommandPalettePages[]) => void; + setQuery: Dispatch; +} + +export const ServerCommands = ({ setQuery, setPages, handleClose }: ServerCommandsProps) => { + const serverList = useServerList(); + const navigate = useNavigate(); + const { setCurrentServer } = useAuthStoreActions(); + + const handleManageServersModal = useCallback(() => { + openModal({ + children: , + title: 'Manage Servers', + }); + handleClose(); + setQuery(''); + setPages([CommandPalettePages.HOME]); + }, [handleClose, setPages, setQuery]); + + const handleSelectServer = useCallback( + (server: ServerListItem) => { + navigate(AppRoute.HOME); + setCurrentServer(server); + handleClose(); + setQuery(''); + setPages([CommandPalettePages.HOME]); + }, + [handleClose, navigate, setCurrentServer, setPages, setQuery], + ); + + return ( + <> + + {Object.keys(serverList).map((key) => ( + handleSelectServer(serverList[key])} + >{`Switch to ${serverList[key].name}...`} + ))} + + + Manage servers... + + + + ); +};