import Image from "next/image";
import Link from "next/link";
import { BookDto } from "../../lib/api";
interface BookCardProps {
book: BookDto;
getBookCoverUrl: (bookId: string) => string;
}
export function BookCard({ book, getBookCoverUrl }: BookCardProps) {
return (
{book.title}
{book.author && (
{book.author}
)}
{book.series && (
{book.series}
{book.volume && ` #${book.volume}`}
)}
{book.kind.toUpperCase()}
{book.language && {book.language.toUpperCase()}}
);
}
interface BooksGridProps {
books: BookDto[];
getBookCoverUrl: (bookId: string) => string;
}
export function BooksGrid({ books, getBookCoverUrl }: BooksGridProps) {
return (
{books.map((book) => (
))}
);
}
interface EmptyStateProps {
message: string;
}
export function EmptyState({ message }: EmptyStateProps) {
return (
);
}