|
@@ -6,6 +6,7 @@ import Downshift from 'downshift';
|
|
|
import { useRouter } from 'next/router';
|
|
import { useRouter } from 'next/router';
|
|
|
import { Modal, ModalBody } from 'reactstrap';
|
|
import { Modal, ModalBody } from 'reactstrap';
|
|
|
|
|
|
|
|
|
|
+import type { DownshiftItem } from '../interfaces/downshift';
|
|
|
import { useSearchModal } from '../stores/search';
|
|
import { useSearchModal } from '../stores/search';
|
|
|
|
|
|
|
|
import { SearchForm } from './SearchForm';
|
|
import { SearchForm } from './SearchForm';
|
|
@@ -13,7 +14,6 @@ import { SearchHelp } from './SearchHelp';
|
|
|
import { SearchMethodMenuItem } from './SearchMethodMenuItem';
|
|
import { SearchMethodMenuItem } from './SearchMethodMenuItem';
|
|
|
import { SearchResultMenuItem } from './SearchResultMenuItem';
|
|
import { SearchResultMenuItem } from './SearchResultMenuItem';
|
|
|
|
|
|
|
|
-
|
|
|
|
|
const SearchModal = (): JSX.Element => {
|
|
const SearchModal = (): JSX.Element => {
|
|
|
const [searchKeyword, setSearchKeyword] = useState('');
|
|
const [searchKeyword, setSearchKeyword] = useState('');
|
|
|
|
|
|
|
@@ -30,8 +30,8 @@ const SearchModal = (): JSX.Element => {
|
|
|
}, []);
|
|
}, []);
|
|
|
|
|
|
|
|
const selectSearchMenuItemHandler = useCallback((url: string) => {
|
|
const selectSearchMenuItemHandler = useCallback((url: string) => {
|
|
|
- router.push(url);
|
|
|
|
|
closeSearchModal();
|
|
closeSearchModal();
|
|
|
|
|
+ router.push(url);
|
|
|
}, [closeSearchModal, router]);
|
|
}, [closeSearchModal, router]);
|
|
|
|
|
|
|
|
useEffect(() => {
|
|
useEffect(() => {
|
|
@@ -40,11 +40,10 @@ const SearchModal = (): JSX.Element => {
|
|
|
}
|
|
}
|
|
|
}, [searchModalData?.isOpened]);
|
|
}, [searchModalData?.isOpened]);
|
|
|
|
|
|
|
|
-
|
|
|
|
|
return (
|
|
return (
|
|
|
<Modal size="lg" isOpen={searchModalData?.isOpened ?? false} toggle={closeSearchModal}>
|
|
<Modal size="lg" isOpen={searchModalData?.isOpened ?? false} toggle={closeSearchModal}>
|
|
|
<ModalBody>
|
|
<ModalBody>
|
|
|
- <Downshift itemToString={undefined} onChange={(selectedItem: { url: string }) => { selectSearchMenuItemHandler(selectedItem.url) }}>
|
|
|
|
|
|
|
+ <Downshift onChange={(selectedItem: DownshiftItem) => { selectSearchMenuItemHandler(selectedItem.url) }}>
|
|
|
{({
|
|
{({
|
|
|
getInputProps,
|
|
getInputProps,
|
|
|
getItemProps,
|
|
getItemProps,
|