Skip to content

Releases: tulz-app/laminext

0.14.0

10 Jan 15:35
Compare
Choose a tag to compare

Update to Laminar v0.14.0 and scala-js-dom v2.0.0

  • input element ops – files returns a Signal[FileList] instead of Signal[Seq[File]] (use .toSeq to get a Seq)
  • API new: task queue

0.13.10

27 Jul 08:01
Compare
Choose a tag to compare
  • API: new: input/textArea .changes/.value/.checked/.files now have additional overloaded versions
    that accept a changeStreamTransform: EventStream[Event] => EventStream[Event] parameter (can be used, for example, to
    debounce the "changed" events)
  • API: new: input/textArea .validated/.validatedCheckBox/.validatedFile/.validatedFiles now accept a second
    (optional) parameter – changeStreamTransform: EventStream[Event] => EventStream[Event] – which is passed to the
    .value/.checked/.files
  • API: additional validation builders accepting a functions like check: A => Option[Err] that can construct error messages
    using the value that is being validated

0.13.9

27 Jul 08:01
Compare
Choose a tag to compare
  • update to Laminar v0.13.1
  • API: new: ValidatedElement now exposes the .resetError observer

0.13.8

08 Jul 00:52
Compare
Choose a tag to compare
  • API: new: mutationObserver
  • Fix: stored vars now check if local storage is accessible
  • API: observable extension methods are now source extension methods
  • API: now accepting source and sink where observable and observer where expected before

v0.13.7

05 Jul 13:10
Compare
Choose a tag to compare
  • API: new: .addSwitchingObserver and .addOptionalSwitchingObserver

0.13.6

15 Jun 11:30
Compare
Choose a tag to compare
  • Bugfix: websocket client was failing to connect when no sub-protocol was specified (defaulting to "", which
    was incorrect)
  • Minor changes to improve error handling in the fetch module
    • ResponseDecodeFailed is gone, ResponseError is used instead

0.13.5

15 Jun 11:28
Compare
Choose a tag to compare
fetch module: RequestUrl
  • hostname renamed into host to reflect that it can contain the port
  • path renamed into segments to better reflect what it is
  • uri function renamed to url
  • RequestUrl now makes sure to not contain empty segments (thus it is no longer possible,
    accidentally or otherwise, to have a double / in the request URL)
  • new RequestUrl.fromLocation(location: dom.raw.Location) builder
  • Breaking: addPath(path: String*) renamed to addSegments(path: String*)
  • New: withParams(params: Map[String, Seq[String]])
  • New: withSegments(segments: String*)

*path methods will split the argument by / into a Seq[String], ensuring there are
no empty segments.

url, RequestUrl.apply and RequestUrl.fromLocation ensure there are no empty segments as well.

util module: new utilities in the
  • UrlString object
    • parse – parse a string into a dom.raw.Location
    val myUrl = "https://laminext.dev/path?param=1"
    val location: dom.raw.Location = UrlString.parse(myUrl) 
    console.print(location.origin)
  • UrlUtils object
    • encodeSearchParams(params: Map[String, Seq[String]]): String – encode the given parameters into a URL search string (?param=1&...)
    • decodeSearchParams(search: String): Map[String, Seq[String]] – decode a URL search string into a map of parameters

0.13.4

15 Jun 11:28
Compare
Choose a tag to compare

Sourcemaps are now pointing to GitHub.

0.13.3 – circe 0.14.1

26 May 23:13
Compare
Choose a tag to compare

Updating circe to v0.14.1

0.13.2

23 May 04:41
Compare
Choose a tag to compare
  • new: protocol parameter for WebSocket