= ({ layout = "default", ...movie }) => {
{isReleased ? : }
diff --git a/src/components/atoms/ReadMore/index.tsx b/src/components/atoms/ReadMore/index.tsx
index 574730e..5bb80c8 100644
--- a/src/components/atoms/ReadMore/index.tsx
+++ b/src/components/atoms/ReadMore/index.tsx
@@ -12,7 +12,7 @@ export const ReadMore: FC = ({ text }) => {
setIsOpen(!isOpen)}
>
{text}
diff --git a/src/components/molecules/MovieList/index.tsx b/src/components/molecules/MovieList/index.tsx
index 60f9cf5..022ba99 100644
--- a/src/components/molecules/MovieList/index.tsx
+++ b/src/components/molecules/MovieList/index.tsx
@@ -10,10 +10,10 @@ type Props = {
heading?: string;
overrideMovies?: Movie[];
- filterSeen?: boolean;
- filterFavorites?: boolean;
- filterUpcoming?: boolean;
- filterReleased?: boolean;
+ filterSeen?: 0 | 1;
+ filterFavorites?: 0 | 1;
+ filterUpcoming?: 0 | 1;
+ filterReleased?: 0 | 1;
fluid?: boolean;
showFilters?: boolean;
@@ -43,12 +43,23 @@ export const MovieList: FC = ({
const filteredMovies = movies.filter((movie) => {
let result = true;
- if (filterSeen) result = !!movie.seen;
- if (filterFavorites) result = result && !!movie.favorite;
- if (filterUpcoming)
- result = result && new Date(movie.release_date) > new Date();
- if (filterReleased)
- result = result && new Date(movie.release_date) < new Date();
+ const today = new Date();
+ if (filterSeen !== undefined) {
+ result = movie.seen === !!filterSeen;
+ }
+ if (filterFavorites !== undefined) {
+ result = result && movie.favorite === !!filterFavorites;
+ }
+ if (filterUpcoming !== undefined) {
+ const releaseDate = new Date(movie.release_date);
+ result =
+ result && filterUpcoming ? releaseDate > today : releaseDate < today;
+ }
+ if (filterReleased !== undefined) {
+ const releaseDate = new Date(movie.release_date);
+ result =
+ result && filterReleased ? releaseDate < today : releaseDate > today;
+ }
return result;
});
@@ -69,8 +80,8 @@ export const MovieList: FC = ({
return (
-
- {heading && (
+ {heading && (
+
{showFilters && (
= ({
)}
{heading}
- )}
-
+
+ )}
{filteredMovies.length === 0 && (
No movies found
)}
diff --git a/src/components/organisms/Navbar/components/Search/index.tsx b/src/components/organisms/Navbar/components/Search/index.tsx
index b66508c..6bc5fd2 100644
--- a/src/components/organisms/Navbar/components/Search/index.tsx
+++ b/src/components/organisms/Navbar/components/Search/index.tsx
@@ -41,14 +41,14 @@ export const Search = () => {
return (
<>
{isSearchOpen && (
-
+
{results && (
-
+
{total_results} movies found
)}
diff --git a/src/components/organisms/Navbar/index.tsx b/src/components/organisms/Navbar/index.tsx
index 0d6ef44..f1c6801 100644
--- a/src/components/organisms/Navbar/index.tsx
+++ b/src/components/organisms/Navbar/index.tsx
@@ -14,7 +14,7 @@ const links = [
export const Navbar = () => {
return (
-
+
@@ -42,7 +42,7 @@ export const Navbar = () => {