From 0cbfb4ca65e0a1200730018c4971db149ace07ea Mon Sep 17 00:00:00 2001 From: Bogdan Date: Sun, 18 Jun 2023 14:15:07 +0300 Subject: [PATCH] New: (UI) Search library by imdbId and tmdbId --- .../Page/Header/MovieSearchInputConnector.js | 4 ++++ .../Page/Header/MovieSearchResult.js | 20 +++++++++++++++++++ .../src/Components/Page/Header/fuse.worker.js | 2 ++ 3 files changed, 26 insertions(+) diff --git a/frontend/src/Components/Page/Header/MovieSearchInputConnector.js b/frontend/src/Components/Page/Header/MovieSearchInputConnector.js index f470394c4..84390140e 100644 --- a/frontend/src/Components/Page/Header/MovieSearchInputConnector.js +++ b/frontend/src/Components/Page/Header/MovieSearchInputConnector.js @@ -19,6 +19,8 @@ function createCleanMovieSelector() { year, images, alternateTitles = [], + tmdbId, + imdbId, tags = [] } = movie; @@ -29,6 +31,8 @@ function createCleanMovieSelector() { year, images, alternateTitles, + tmdbId, + imdbId, firstCharacter: title.charAt(0).toLowerCase(), tags: tags.reduce((acc, id) => { const matchingTag = allTags.find((tag) => tag.id === id); diff --git a/frontend/src/Components/Page/Header/MovieSearchResult.js b/frontend/src/Components/Page/Header/MovieSearchResult.js index 099a0a69e..ab15130d0 100644 --- a/frontend/src/Components/Page/Header/MovieSearchResult.js +++ b/frontend/src/Components/Page/Header/MovieSearchResult.js @@ -12,6 +12,8 @@ function MovieSearchResult(props) { year, images, alternateTitles, + tmdbId, + imdbId, tags } = props; @@ -47,6 +49,22 @@ function MovieSearchResult(props) { null } + { + match.key === 'tmdbId' && tmdbId ? +
+ TmdbId: {tmdbId} +
: + null + } + + { + match.key === 'imdbId' && imdbId ? +
+ ImdbId: {imdbId} +
: + null + } + { tag ?
@@ -69,6 +87,8 @@ MovieSearchResult.propTypes = { year: PropTypes.number.isRequired, images: PropTypes.arrayOf(PropTypes.object).isRequired, alternateTitles: PropTypes.arrayOf(PropTypes.object).isRequired, + tmdbId: PropTypes.number, + imdbId: PropTypes.string, tags: PropTypes.arrayOf(PropTypes.object).isRequired, match: PropTypes.object.isRequired }; diff --git a/frontend/src/Components/Page/Header/fuse.worker.js b/frontend/src/Components/Page/Header/fuse.worker.js index 59d5e6ede..ba592e7b6 100644 --- a/frontend/src/Components/Page/Header/fuse.worker.js +++ b/frontend/src/Components/Page/Header/fuse.worker.js @@ -9,6 +9,8 @@ const fuseOptions = { keys: [ 'title', 'alternateTitles.title', + 'tmdbId', + 'imdbId', 'tags.label' ] };