calico icon indicating copy to clipboard operation
calico copied to clipboard

Pure, reactive UI library for Scala.js

Results 53 calico issues
Sort by recently updated
recently updated
newest added

Closes https://github.com/armanbilge/calico/issues/207. This PR introduces `Mod[IO, Elem]` which reifies modifier, as well as a `.toMod` syntax. This would make it possible to write: ```scala def MyComponent(mod: Mod[IO, HtmlElement[IO]]) = div(...

Closes https://github.com/armanbilge/calico/issues/202. Now you can write `onFoo **> effect` to evaluate an effect every time an event is emitted. The syntax is inspired by Cats `*>` aka `productR` i.e. a...

Or event handlers more generally, when you are trying to do something simple. Also related to the Elm-style usecase, where you just want to send a message and never do...

UX

Well, for one, to help us write our own tests! 😬 Inspiration: https://github.com/raquo/scala-dom-testutils

enhancement

See also: - https://github.com/armanbilge/calico/issues/207 - https://github.com/armanbilge/calico/issues/205 Consider this Laminar-style example: ```scala def MyComponent(mods: Mod[HtmlElement]*) = div( cls := "decoration", mods ) ``` At the moment this wouldn't work great with...

enhancement
UX

The reasons I originally chose this design were: - anything can be a `Modifier` (such as a `String`, `HtmlElement[IO]`, or `Signal`) without requiring implicit conversions, that are discouraged in Scala...

question
UX

It would be nice to have a batteries included object to just import all members and givens to get started. It feels like a lot to import cats, cats effect,...

UX

another good idea from @kubukoz. Something like ```scala Stream[IO, List[(K, Resource[IO, HTMLElement])]] ```

UX

Really interesting ideas from @kubukoz: ```scala type ElemOfS[A] = A match { case fs2.Stream[_, a] => a } type ElemOfL[A] = A match { case List[a] => a } children[ElemOfL[ElemOfS[stream.type]]]

UX