diff options
Diffstat (limited to 'src/main/scala/reading/component/index/Books.scala')
-rw-r--r-- | src/main/scala/reading/component/index/Books.scala | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/main/scala/reading/component/index/Books.scala b/src/main/scala/reading/component/index/Books.scala index 20b308d..c22639f 100644 --- a/src/main/scala/reading/component/index/Books.scala +++ b/src/main/scala/reading/component/index/Books.scala @@ -1,7 +1,6 @@ package reading.component.index import rx._ -import Ctx.Owner.Unsafe._ import scalatags.JsDom.all._ import scalacss.Defaults._ @@ -10,16 +9,16 @@ import scalacss.ScalatagsCss._ import reading.component.index.style.{ Books => BooksStyle } import reading.component.widget.Modal import reading.models.{ Book } -import reading.utils.{ RxTag, RxAttr } +import reading.utils.RxUtils._ object Books { - def apply(books: Rx[Seq[Book]]): Frag = { + def apply(books: Rx[Seq[Book]])(implicit ctx: Ctx.Owner): Frag = { val focus: Var[Option[Book]] = Var(None) div( BooksStyle.render, - RxTag { implicit context => + Rx { div( div( BooksStyle.books, @@ -31,13 +30,13 @@ object Books { BooksStyle.cover, src := s"cover/${book.title}.jpg", alt := s"${book.title}, ${book.author}", - RxAttr(onclick, Rx(() => focus() = Some(book))) + onclick := (() => focus() = Some(book)) ) ) } ), - RxTag { implicit context => + Rx { focus() match { case Some(book) => Modal(onClose = focus() = None)(BookDetail(book)) case None => span("") |