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 }, wanted, }) => { const isComicBookMetadataAvailable = !isUndefined(comicvine); const consolidatedComicMetadata = { rawFileDetails, comicvine, comicInfo, locg, }; const { issueName, url, publisher = null, } = determineCoverFile(consolidatedComicMetadata); const titleElement = ( {ellipsize(issueName, 20)}

{publisher}

); return ( No Name} cardState="wanted" >
{/* Issue type */} {isComicBookMetadataAvailable && !isNil(detectIssueTypes(comicvine.description)) ? (
{ detectIssueTypes(comicvine.description) .displayName }
) : null} {/* issues marked as wanted, part of this volume */} {wanted?.markEntireVolumeWanted ? (
sagla volume pahije
) : (
{wanted.issues.length}
)}
{/* comicVine metadata presence */} {isComicBookMetadataAvailable && ( {"ComicVine )} {!isEmpty(locg) && ( )}
); }, )}
); };