Skip to content

Commit 54e359c

Browse files
Merge pull request #142 from prithvi2k2/main
Fixed #138 + Minor update to ReadMe
2 parents bf45529 + 0ba4703 commit 54e359c

File tree

3 files changed

+18
-5
lines changed

3 files changed

+18
-5
lines changed

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# Hacktoberfest Projects 🎉
22

3-
A Web app that lets you find eligible repositories for Hacktoberfest 2022!
3+
4+
A Web app that lets you find eligible repositories for Hacktoberfest!
45

56
Use it here - https://finder.usmans.me
67

components/Hero.tsx

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { FormEventHandler } from 'react';
1+
import { FormEventHandler, useState } from 'react';
22
import Link from 'next/link';
33

44
import languages from 'assets/languages.json';
@@ -10,11 +10,19 @@ import Button from './Button';
1010
const { main: mainLanguages, others: otherLanguages } = languages;
1111

1212
function Hero() {
13+
const [errorMessage, setErrorMessage] = useState<string | null>(null);
1314
const router = useRouter();
1415
const handleSubmit: FormEventHandler = e => {
1516
e.preventDefault();
1617
const formData = new FormData(e.target as HTMLFormElement);
17-
const search = formData.get('search');
18+
const search = (formData.get('search') as string).trim();
19+
// Check if the input is empty or contains only spaces
20+
if (search === '') {
21+
setErrorMessage('Empty search terms invalid!');
22+
return;
23+
}
24+
// Clear any previous error message & proceed to search
25+
setErrorMessage(null);
1826
router.push(`/repos/${search}`);
1927
};
2028
return (

components/Search.tsx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,11 @@ export default function Search({ searchBarWrapperStyles }: SearchProps) {
1919
});
2020

2121
const onSubmit: SubmitHandler<FormValues> = ({ searchQuery }) => {
22-
router.push({ query: { ...router.query, q: searchQuery } });
22+
let trimmedQuery = searchQuery.trim();
23+
//Performs search only with non-empty strings
24+
if (trimmedQuery !== '') {
25+
router.push({ query: { ...router.query, q: trimmedQuery } });
26+
}
2327
};
2428

2529
return (
@@ -40,7 +44,7 @@ export default function Search({ searchBarWrapperStyles }: SearchProps) {
4044
type="button"
4145
onClick={() => reset()}
4246
>
43-
<GoX color="lightgrey" />
47+
<GoX color="white" />
4448
</button>
4549
</div>
4650
</form>

0 commit comments

Comments
 (0)