import React, { ReactElement } from "react"; import Card from "../shared/Carda"; import { Link, useNavigate } from "react-router-dom"; import ellipsize from "ellipsize"; import { isEmpty, isNil, isUndefined, map } from "lodash"; import { detectIssueTypes } from "../../shared/utils/tradepaperback.utils"; import { determineCoverFile } from "../../shared/utils/metadata.utils"; import Header from "../shared/Header"; type WantedComicsListProps = { comics: any; }; export const WantedComicsList = ({ comics, }: WantedComicsListProps): ReactElement => { const navigate = useNavigate(); return ( <>
{map( comics, ({ _id, rawFileDetails, sourcedMetadata: { comicvine, comicInfo, locg }, }) => { const isComicBookMetadataAvailable = !isUndefined(comicvine) && !isUndefined(comicvine.volumeInformation); const consolidatedComicMetadata = { rawFileDetails, comicvine, comicInfo, locg, }; const { issueName, url } = determineCoverFile( consolidatedComicMetadata, ); const titleElement = ( {ellipsize(issueName, 20)} ); return ( No Name} >
{/* Issue type */} {isComicBookMetadataAvailable && !isNil( detectIssueTypes(comicvine.volumeInformation.description), ) ? (
{ detectIssueTypes( comicvine.volumeInformation.description, ).displayName }
) : null} {/* comicVine metadata presence */} {isComicBookMetadataAvailable && ( {"ComicVine )} {!isEmpty(locg) && ( )}
); }, )}
); };