(book: Book)
| 29 | } |
| 30 | |
| 31 | export function createBookMetadataFormValues(book: Book): BookMetadataFormValues { |
| 32 | return { |
| 33 | title: book.meta.title || "", |
| 34 | author: book.meta.author || "", |
| 35 | coverUrl: book.meta.coverUrl || "", |
| 36 | publisher: book.meta.publisher || "", |
| 37 | language: book.meta.language || "", |
| 38 | isbn: book.meta.isbn || "", |
| 39 | publishDate: book.meta.publishDate || "", |
| 40 | rating: normalizeRating(book.meta.rating) ?? null, |
| 41 | description: book.meta.description || "", |
| 42 | reviews: normalizeReviews(book.meta.reviews), |
| 43 | subjectsText: joinEditableList(book.meta.subjects), |
| 44 | tagsText: joinEditableList(book.tags), |
| 45 | groupId: book.groupId || "", |
| 46 | }; |
| 47 | } |
| 48 | |
| 49 | export function hasMissingBookMetadataAutoFillTargets(values: BookMetadataFormValues): boolean { |
| 50 | return ( |
no test coverage detected