memorium/components/MovieCard.tsx

39 lines
948 B
TypeScript
Raw Normal View History

2023-07-30 23:55:51 +02:00
import { Card } from "@components/Card.tsx";
2023-08-01 17:50:00 +02:00
import { Movie } from "@lib/resource/movies.ts";
2023-08-08 21:50:23 +02:00
import { Series } from "@lib/resource/series.ts";
2023-08-08 21:55:10 +02:00
import { isLocalImage } from "@lib/string.ts";
2023-07-30 23:55:51 +02:00
export function MovieCard({ movie }: { movie: Movie }) {
const { meta: { image = "/placeholder.svg" } = {} } = movie;
2023-08-08 21:55:10 +02:00
const imageUrl = isLocalImage(image)
2023-07-30 23:55:51 +02:00
? `/api/images?image=${image}&width=200&height=200`
: image;
2023-08-08 21:55:10 +02:00
console.log({ imageUrl, image });
2023-07-30 23:55:51 +02:00
return (
<Card
title={movie.name}
image={imageUrl}
link={`/movies/${movie.id}`}
/>
);
}
2023-08-08 21:50:23 +02:00
export function SeriesCard({ series }: { series: Series }) {
const { meta: { image = "/placeholder.svg" } = {} } = series;
const imageUrl = image?.startsWith("Media/series/")
? `/api/images?image=${image}&width=200&height=200`
: image;
return (
<Card
title={series.name}
image={imageUrl}
link={`/series/${series.id}`}
/>
);
}