Compare commits

..

2 Commits

6 changed files with 71 additions and 2106 deletions

2158
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -4,6 +4,7 @@ import { convert } from "html-to-text";
import ellipsize from "ellipsize"; import ellipsize from "ellipsize";
import { LIBRARY_SERVICE_BASE_URI } from "../../constants/endpoints"; import { LIBRARY_SERVICE_BASE_URI } from "../../constants/endpoints";
import axios from "axios"; import axios from "axios";
import { useGetComicByIdQuery } from "../../graphql/generated";
interface MatchResultProps { interface MatchResultProps {
matchData: any; matchData: any;
@@ -31,7 +32,7 @@ export const MatchResult = (props: MatchResultProps) => {
// Invalidate and refetch the comic book metadata // Invalidate and refetch the comic book metadata
if (props.queryClient) { if (props.queryClient) {
await props.queryClient.invalidateQueries({ await props.queryClient.invalidateQueries({
queryKey: ["comicBookMetadata", comicObjectId], queryKey: useGetComicByIdQuery.getKey({ id: comicObjectId }),
}); });
} }

View File

@@ -19,7 +19,7 @@ interface LibraryStatisticsProps {
* Returns `null` when `stats` is absent or the statistics array is empty. * Returns `null` when `stats` is absent or the statistics array is empty.
*/ */
export const LibraryStatistics = ({ stats }: LibraryStatisticsProps): ReactElement | null => { export const LibraryStatistics = ({ stats }: LibraryStatisticsProps): ReactElement | null => {
if (!stats) return null; if (!stats || !stats.totalDocuments) return null;
const facet = stats.statistics?.[0]; const facet = stats.statistics?.[0];
if (!facet) return null; if (!facet) return null;

View File

@@ -11,9 +11,11 @@ type VolumeGroupsProps = {
volumeGroups?: GetVolumeGroupsQuery['getComicBookGroups']; volumeGroups?: GetVolumeGroupsQuery['getComicBookGroups'];
}; };
export const VolumeGroups = (props: VolumeGroupsProps): ReactElement => { export const VolumeGroups = (props: VolumeGroupsProps): ReactElement | null => {
// Till mongo gives us back the deduplicated results with the ObjectId // Till mongo gives us back the deduplicated results with the ObjectId
const deduplicatedGroups = unionBy(props.volumeGroups, "volumes.id"); const deduplicatedGroups = unionBy(props.volumeGroups, "volumes.id");
if (!deduplicatedGroups || deduplicatedGroups.length === 0) return null;
const navigate = useNavigate(); const navigate = useNavigate();
const navigateToVolumes = (row: any) => { const navigateToVolumes = (row: any) => {
navigate(`/volumes/all`); navigate(`/volumes/all`);

View File

@@ -15,7 +15,9 @@ type WantedComicsListProps = {
export const WantedComicsList = ({ export const WantedComicsList = ({
comics, comics,
}: WantedComicsListProps): ReactElement => { }: WantedComicsListProps): ReactElement | null => {
if (!comics || comics.length === 0) return null;
const navigate = useNavigate(); const navigate = useNavigate();
// embla carousel // embla carousel

View File

@@ -6065,9 +6065,9 @@ flat-cache@^4.0.0:
keyv "^4.5.4" keyv "^4.5.4"
flatted@^3.2.9: flatted@^3.2.9:
version "3.4.2" version "3.3.3"
resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.4.2.tgz#f5c23c107f0f37de8dbdf24f13722b3b98d52726" resolved "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz"
integrity sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA== integrity sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==
focus-trap-react@^12.0.0: focus-trap-react@^12.0.0:
version "12.0.0" version "12.0.0"