aboutsummaryrefslogtreecommitdiff
path: root/src/view/books.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/view/books.ts')
-rw-r--r--src/view/books.ts29
1 files changed, 17 insertions, 12 deletions
diff --git a/src/view/books.ts b/src/view/books.ts
index 6ea0c12..4229774 100644
--- a/src/view/books.ts
+++ b/src/view/books.ts
@@ -42,20 +42,25 @@ interface BookDetailModalParams {
function bookDetailModal({ book, onClose }: BookDetailModalParams): Html {
return Modal.view({
- content: h('div',
+ header: h('div',
+ h('div', { className: 'g-BookDetail__Title' }, `${book.title}, ${book.date}`),
+ book.subtitle && h('div', { className: 'g-BookDetail__Subtitle' }, book.subtitle)
+ ),
+ body: h('div',
{ className: 'g-BookDetail' },
- h('div',
- h('div', { className: 'g-BookDetail__Title' }, `${book.title}, ${book.date}`),
- book.subtitle && h('div', { className: 'g-BookDetail__Subtitle' }, book.subtitle),
- book.authors.join(', '),
- h('div',
- { className: 'g-BookDetail__Genres' },
- book.genres.length > 1 ? 'Genres : ' : 'Genre : ',
- book.genres.join(', ')
- )
- ),
- h('img', { src: book.cover })
+ h('img', { src: book.cover }),
+ h('dl',
+ metadata('Auteur', book.authors),
+ metadata('Genre', book.genres)
+ )
),
onClose
})
}
+
+function metadata(term: string, descriptions: Array<string>): Html {
+ return h('div',
+ h('dt', term, descriptions.length > 1 && 's', ' :'),
+ h('dd', ' ', descriptions.join(', '))
+ )
+}