From 09151a99e9decfbe91f94e727da626de14cf92a9 Mon Sep 17 00:00:00 2001 From: Rishi Ghan Date: Thu, 4 Jan 2024 09:24:56 -0500 Subject: [PATCH] =?UTF-8?q?=F0=9F=8F=97=EF=B8=8F=20Refactored=20the=20sear?= =?UTF-8?q?ch=20form?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/ComicDetail/ComicDetail.tsx | 67 +++++++++---------- .../ComicDetail/ComicVineMatchPanel.tsx | 2 +- 2 files changed, 31 insertions(+), 38 deletions(-) diff --git a/src/client/components/ComicDetail/ComicDetail.tsx b/src/client/components/ComicDetail/ComicDetail.tsx index 765d805..1f063c9 100644 --- a/src/client/components/ComicDetail/ComicDetail.tsx +++ b/src/client/components/ComicDetail/ComicDetail.tsx @@ -148,44 +148,37 @@ export const ComicDetail = (data: ComicDetailProps): ReactElement => { seriesSearchQuery, ) => { try { - await axios - .request({ - url: `${COMICVINE_SERVICE_URI}/volumeBasedSearch`, - method: "POST", - data: { - format: "json", - // hack - query: issueSearchQuery.inferredIssueDetails.name - .replace(/[^a-zA-Z0-9 ]/g, "") - .trim(), - limit: "100", - page: 1, - resources: "volume", - scorerConfiguration: { - searchParams: issueSearchQuery.inferredIssueDetails, - }, - rawFileDetails: searchPayload, + const response = await axios({ + url: `${COMICVINE_SERVICE_URI}/volumeBasedSearch`, + method: "POST", + data: { + format: "json", + // hack + query: issueSearchQuery.inferredIssueDetails.name + .replace(/[^a-zA-Z0-9 ]/g, "") + .trim(), + limit: "100", + page: 1, + resources: "volume", + scorerConfiguration: { + searchParams: issueSearchQuery.inferredIssueDetails, }, - transformResponse: (r) => { - const matches = JSON.parse(r); - return matches; - // return sortBy(matches, (match) => -match.score); - }, - }) - .then((response) => { - console.log(response); - let matches: any = []; - if ( - !isNil(response.data.results) && - response.data.results.length === 1 - ) { - matches = response.data.results; - } else { - matches = response.data.map((match) => match); - } - const scoredMatches = matches.sort((a, b) => b.score - a.score); - setComicVineMatches(scoredMatches); - }); + rawFileDetails: searchPayload, + }, + transformResponse: (r) => { + const matches = JSON.parse(r); + return matches; + // return sortBy(matches, (match) => -match.score); + }, + }); + let matches: any = []; + if (!isNil(response.data.results) && response.data.results.length === 1) { + matches = response.data.results; + } else { + matches = response.data.map((match) => match); + } + const scoredMatches = matches.sort((a, b) => b.score - a.score); + setComicVineMatches(scoredMatches); } catch (err) { console.log(err); } diff --git a/src/client/components/ComicDetail/ComicVineMatchPanel.tsx b/src/client/components/ComicDetail/ComicVineMatchPanel.tsx index 750b5e9..9c858bf 100644 --- a/src/client/components/ComicDetail/ComicVineMatchPanel.tsx +++ b/src/client/components/ComicDetail/ComicVineMatchPanel.tsx @@ -24,7 +24,7 @@ export const ComicVineMatchPanel = (comicVineData): ReactElement => { <>

ComicVine match results are an approximation.