From b380508bd466794cec09caf3c41c82824daea168 Mon Sep 17 00:00:00 2001 From: Nikita Gazarov Date: Wed, 28 Feb 2024 01:16:54 -0700 Subject: [PATCH] Naming: ChildrenSeq -> laminar.Seq Hard to find a good name for this. It is an internal Laminar type, so I hope that it is not a big deal that it uses the same name as a Scala collection type. Internally, I always refer to it as `laminar.Seq` instead of just `Seq` to disambiguate it from the Scala collection type. --- src/main/scala/com/raquo/laminar/DomApi.scala | 3 +- .../ChildrenSeq.scala => Seq.scala} | 42 +++++++++---------- .../com/raquo/laminar/api/Implicits.scala | 6 +-- .../laminar/inserters/ChildrenInserter.scala | 9 ++-- .../laminar/inserters/InsertContext.scala | 4 +- .../inserters/StaticChildrenInserter.scala | 6 +-- .../laminar/modifiers/RenderableNode.scala | 10 ++--- .../laminar/modifiers/RenderableSeq.scala | 36 ++++++++-------- .../laminar/receivers/ChildrenReceiver.scala | 7 ++-- .../receivers/LockedChildrenReceiver.scala | 13 +++--- .../{ => tests}/ChildReceiverSpec.scala | 2 +- .../{ => tests}/ChildTextReceiverSpec.scala | 2 +- .../ChildrenCommandReceiverSpec.scala | 6 ++- .../{ => tests}/ChildrenReceiverSpec.scala | 10 ++--- .../{ => tests}/CompositeKeySpec.scala | 2 +- .../{ => tests}/DetachedRootSpec.scala | 2 +- .../laminar/{ => tests}/DomApiSpec.scala | 3 +- .../raquo/laminar/{ => tests}/EnvSpec.scala | 2 +- .../{ => tests}/EventProcessorSpec.scala | 2 +- .../{ => tests}/HtmlAttrReceiverSpec.scala | 2 +- .../laminar/{ => tests}/InsertHookSpec.scala | 2 +- .../{ => tests}/LifecycleEventSpec.scala | 2 +- .../laminar/{ => tests}/MountHooksSpec.scala | 2 +- .../laminar/{ => tests}/RenderableSpec.scala | 2 +- .../laminar/{ => tests}/ShadowDomSpec.scala | 3 +- .../{ => tests}/SignalChangesPullSpec.scala | 2 +- .../{ => tests}/StyleReceiverSpec.scala | 2 +- .../SubscriptionLifecycleSpec.scala | 2 +- .../raquo/laminar/{ => tests}/SvgSpec.scala | 2 +- .../laminar/{ => tests}/SyntaxSpec.scala | 10 ++--- .../laminar/{ => tests}/WeirdCasesSpec.scala | 2 +- .../{ => tests}/basic/ElementSpec.scala | 2 +- .../laminar/{ => tests}/basic/EnvSpec.scala | 2 +- .../laminar/{ => tests}/basic/EventSpec.scala | 2 +- .../{ => tests}/basic/HtmlAttrSpec.scala | 2 +- .../{ => tests}/basic/HtmlPropSpec.scala | 2 +- .../laminar/{ => tests}/basic/ModSpec.scala | 2 +- .../raquo/laminar/{ => tests}/basic/README.md | 0 .../laminar/{ => tests}/basic/RefSpec.scala | 2 +- .../{ => tests}/basic/ReflectedAttrSpec.scala | 2 +- .../laminar/{ => tests}/basic/StyleSpec.scala | 2 +- .../laminar/{ => tests}/basic/TreeSpec.scala | 2 +- .../example/ToggleComponentSpec.scala | 2 +- 43 files changed, 114 insertions(+), 108 deletions(-) rename src/main/scala/com/raquo/laminar/{inserters/ChildrenSeq.scala => Seq.scala} (67%) rename src/test/scala/com/raquo/laminar/{ => tests}/ChildReceiverSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/ChildTextReceiverSpec.scala (98%) rename src/test/scala/com/raquo/laminar/{ => tests}/ChildrenCommandReceiverSpec.scala (93%) rename src/test/scala/com/raquo/laminar/{ => tests}/ChildrenReceiverSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/CompositeKeySpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/DetachedRootSpec.scala (97%) rename src/test/scala/com/raquo/laminar/{ => tests}/DomApiSpec.scala (97%) rename src/test/scala/com/raquo/laminar/{ => tests}/EnvSpec.scala (80%) rename src/test/scala/com/raquo/laminar/{ => tests}/EventProcessorSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/HtmlAttrReceiverSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/InsertHookSpec.scala (97%) rename src/test/scala/com/raquo/laminar/{ => tests}/LifecycleEventSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/MountHooksSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/RenderableSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/ShadowDomSpec.scala (97%) rename src/test/scala/com/raquo/laminar/{ => tests}/SignalChangesPullSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/StyleReceiverSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/SubscriptionLifecycleSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/SvgSpec.scala (98%) rename src/test/scala/com/raquo/laminar/{ => tests}/SyntaxSpec.scala (98%) rename src/test/scala/com/raquo/laminar/{ => tests}/WeirdCasesSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/basic/ElementSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/basic/EnvSpec.scala (78%) rename src/test/scala/com/raquo/laminar/{ => tests}/basic/EventSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/basic/HtmlAttrSpec.scala (97%) rename src/test/scala/com/raquo/laminar/{ => tests}/basic/HtmlPropSpec.scala (95%) rename src/test/scala/com/raquo/laminar/{ => tests}/basic/ModSpec.scala (97%) rename src/test/scala/com/raquo/laminar/{ => tests}/basic/README.md (100%) rename src/test/scala/com/raquo/laminar/{ => tests}/basic/RefSpec.scala (91%) rename src/test/scala/com/raquo/laminar/{ => tests}/basic/ReflectedAttrSpec.scala (98%) rename src/test/scala/com/raquo/laminar/{ => tests}/basic/StyleSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/basic/TreeSpec.scala (99%) rename src/test/scala/com/raquo/laminar/{ => tests}/example/ToggleComponentSpec.scala (97%) diff --git a/src/main/scala/com/raquo/laminar/DomApi.scala b/src/main/scala/com/raquo/laminar/DomApi.scala index 97f7d901..d5de9229 100644 --- a/src/main/scala/com/raquo/laminar/DomApi.scala +++ b/src/main/scala/com/raquo/laminar/DomApi.scala @@ -9,6 +9,7 @@ import com.raquo.laminar.tags.{HtmlTag, SvgTag, Tag} import org.scalajs.dom import scala.annotation.tailrec +import scala.collection.immutable import scala.scalajs.js import scala.scalajs.js.{JavaScriptException, |} @@ -301,7 +302,7 @@ object DomApi { @inline private[laminar] def setRefStyle( ref: dom.html.Element, styleCssName: String, - prefixes: Seq[String], + prefixes: immutable.Seq[String], styleValue: String ): Unit = { // #Note: we use setProperty / removeProperty instead of mutating ref.style directly to support custom CSS props / variables diff --git a/src/main/scala/com/raquo/laminar/inserters/ChildrenSeq.scala b/src/main/scala/com/raquo/laminar/Seq.scala similarity index 67% rename from src/main/scala/com/raquo/laminar/inserters/ChildrenSeq.scala rename to src/main/scala/com/raquo/laminar/Seq.scala index c6aaaa8f..b0c8ad44 100644 --- a/src/main/scala/com/raquo/laminar/inserters/ChildrenSeq.scala +++ b/src/main/scala/com/raquo/laminar/Seq.scala @@ -1,11 +1,11 @@ -package com.raquo.laminar.inserters +package com.raquo.laminar import com.raquo.ew.{JsArray, JsVector, ewArray} import scala.scalajs.js /** - * `ChildrenSeq[A]` is what Laminar needs to render sequences of things. + * `laminar.Seq[A]` is what Laminar needs to render sequences of things. * It is less powerful than real collection types, and that lets us * abstract away their differences, such as the lack of Scala semantics * in JsVector, or the need for ClassTag when mapping a scala.Array. @@ -13,7 +13,7 @@ import scala.scalajs.js * The purpose of this class is to allow users to provide arbitrary * collection types to Laminar methods like `children <--`, including * types that have better performance than native Scala collections, - * such as JsVector, or even a mutable JsArray. + * such as JsVector, or even a mutable js.Array. * * As a Laminar user, you shouldn't need to instantiate this class * yourself, Laminar takes care of that behind the scenes. @@ -27,13 +27,13 @@ import scala.scalajs.js * Note: Mapping over ChildrenSeq may internally translate the source * collection to another collection type (see comments below). */ -class ChildrenSeq[+A] private ( +class Seq[+A] private ( seq: collection.Seq[A], // nullable scalaArray: scala.Array[A], // nullable jsArray: JsArray[A] // nullable ) { - def map[B](project: A => B): ChildrenSeq[B] = { + def map[B](project: A => B): Seq[B] = { // #TODO[Performance] May want to check this, if we don't get rid of this `map` method first. // I'm pretty sure that native JS arrays are faster, // so we convert to JsArray instead of creating a new @@ -43,13 +43,13 @@ class ChildrenSeq[+A] private ( if (seq ne null) { val jsArr = JsArray[B]() seq.foreach(v => jsArr.push(project(v))) - ChildrenSeq.from(jsArr) + Seq.from(jsArr) } else if (jsArray ne null) { - ChildrenSeq.from(jsArray.map(project)) + Seq.from(jsArray.map(project)) } else { val jsArr = JsArray[B]() scalaArray.foreach(v => jsArr.push(project(v))) - ChildrenSeq.from(jsArr) + Seq.from(jsArr) } } @@ -64,29 +64,29 @@ class ChildrenSeq[+A] private ( } } -object ChildrenSeq { +object Seq { - private val _empty: ChildrenSeq[Nothing] = from(Nil) + private val _empty: Seq[Nothing] = from(Nil) - @inline def empty[A]: ChildrenSeq[A] = _empty + @inline def empty[A]: Seq[A] = _empty - def from[A](seq: collection.Seq[A]): ChildrenSeq[A] = { - new ChildrenSeq(seq, null, null) + def from[A](seq: collection.Seq[A]): Seq[A] = { + new Seq(seq, null, null) } - def from[A](array: scala.Array[A]): ChildrenSeq[A] = { - new ChildrenSeq(null, array, null) + def from[A](array: scala.Array[A]): Seq[A] = { + new Seq(null, array, null) } - def from[A](jsArray: JsArray[A]): ChildrenSeq[A] = { - new ChildrenSeq(null, null, jsArray) + def from[A](jsArray: JsArray[A]): Seq[A] = { + new Seq(null, null, jsArray) } - def from[A](sjsArray: js.Array[A]): ChildrenSeq[A] = { - new ChildrenSeq(null, null, sjsArray.ew) + def from[A](sjsArray: js.Array[A]): Seq[A] = { + new Seq(null, null, sjsArray.ew) } - def from[A](jsVector: JsVector[A]): ChildrenSeq[A] = { - new ChildrenSeq(null, null, jsVector.unsafeAsScalaJs.ew) + def from[A](jsVector: JsVector[A]): Seq[A] = { + new Seq(null, null, jsVector.unsafeAsScalaJs.ew) } } diff --git a/src/main/scala/com/raquo/laminar/api/Implicits.scala b/src/main/scala/com/raquo/laminar/api/Implicits.scala index a211c33f..b6675877 100644 --- a/src/main/scala/com/raquo/laminar/api/Implicits.scala +++ b/src/main/scala/com/raquo/laminar/api/Implicits.scala @@ -65,7 +65,7 @@ trait Implicits extends Implicits.LowPriorityImplicits with CompositeValueMapper implicit renderableSeq: RenderableSeq[Collection] ): Setter[El] = { Setter { element => - val settersSeq = renderableSeq.toChildrenSeq(setters) + val settersSeq = renderableSeq.toSeq(setters) settersSeq.foreach(_.apply(element)) } } @@ -95,7 +95,7 @@ trait Implicits extends Implicits.LowPriorityImplicits with CompositeValueMapper implicit asModifier: A => Modifier[El], renderableSeq: RenderableSeq[Collection] ): Modifier[El] = { - Modifier(element => renderableSeq.toChildrenSeq(modifiers).foreach(asModifier(_).apply(element))) + Modifier(element => renderableSeq.toSeq(modifiers).foreach(asModifier(_).apply(element))) } // The various collection-to-modifier conversions below are cheaper and better equivalents of @@ -115,7 +115,7 @@ trait Implicits extends Implicits.LowPriorityImplicits with CompositeValueMapper implicit renderableSeq: RenderableSeq[Collection] ): Modifier.Base = { Modifier { element => - val nodesSeq = renderableSeq.toChildrenSeq(nodes) + val nodesSeq = renderableSeq.toSeq(nodes) nodesSeq.foreach(_.apply(element)) } } diff --git a/src/main/scala/com/raquo/laminar/inserters/ChildrenInserter.scala b/src/main/scala/com/raquo/laminar/inserters/ChildrenInserter.scala index fdb01654..ee8d42ef 100644 --- a/src/main/scala/com/raquo/laminar/inserters/ChildrenInserter.scala +++ b/src/main/scala/com/raquo/laminar/inserters/ChildrenInserter.scala @@ -2,6 +2,7 @@ package com.raquo.laminar.inserters import com.raquo.airstream.core.Observable import com.raquo.ew.JsMap +import com.raquo.laminar import com.raquo.laminar.modifiers.{RenderableNode, RenderableSeq} import com.raquo.laminar.nodes.{ChildNode, ParentNode, ReactiveElement} import org.scalajs.dom @@ -35,8 +36,8 @@ object ChildrenInserter { // #TODO[Performance] This is not ideal – for CUSTOM renderable components asNodeSeq // will need to map over the seq, creating a new seq of child nodes. // Unfortunately, avoiding this is quite complicated. - val newChildren = renderableNode.asNodeChildrenSeq( - renderableSeq.toChildrenSeq(components) + val newChildren = renderableNode.asNodeSeq( + renderableSeq.toSeq(components) ) // #TODO[Performance] Consider bringing back this eq check. Benchmark performance cost. @@ -59,7 +60,7 @@ object ChildrenInserter { } def switchToChildren( - newChildren: ChildrenSeq[ChildNode.Base], + newChildren: laminar.Seq[ChildNode.Base], ctx: InsertContext, hooks: js.UndefOr[InserterHooks] ): Unit = { @@ -86,7 +87,7 @@ object ChildrenInserter { /** @return New child node count */ private def updateChildren( prevChildren: JsMap[dom.Node, ChildNode.Base], - nextChildren: ChildrenSeq[ChildNode.Base], + nextChildren: laminar.Seq[ChildNode.Base], nextChildrenMap: JsMap[dom.Node, ChildNode.Base], parentNode: ReactiveElement.Base, sentinelNode: ChildNode.Base, diff --git a/src/main/scala/com/raquo/laminar/inserters/InsertContext.scala b/src/main/scala/com/raquo/laminar/inserters/InsertContext.scala index 9ebcacb8..e2a3b3ee 100644 --- a/src/main/scala/com/raquo/laminar/inserters/InsertContext.scala +++ b/src/main/scala/com/raquo/laminar/inserters/InsertContext.scala @@ -1,11 +1,11 @@ package com.raquo.laminar.inserters import com.raquo.ew.JsMap +import com.raquo.laminar import com.raquo.laminar.DomApi import com.raquo.laminar.nodes.{ChildNode, CommentNode, ParentNode, ReactiveElement} import org.scalajs.dom -import scala.collection.immutable import scala.scalajs.js // #TODO[Naming] This feels more like InserterState? @@ -186,7 +186,7 @@ object InsertContext { ) } - private[laminar] def nodesToMap(nodes: ChildrenSeq[ChildNode.Base]): JsMap[dom.Node, ChildNode.Base] = { + private[laminar] def nodesToMap(nodes: laminar.Seq[ChildNode.Base]): JsMap[dom.Node, ChildNode.Base] = { val acc = new JsMap[dom.Node, ChildNode.Base]() nodes.foreach { node => acc.set(node.ref, node) diff --git a/src/main/scala/com/raquo/laminar/inserters/StaticChildrenInserter.scala b/src/main/scala/com/raquo/laminar/inserters/StaticChildrenInserter.scala index d1c1bcec..6b7a11f8 100644 --- a/src/main/scala/com/raquo/laminar/inserters/StaticChildrenInserter.scala +++ b/src/main/scala/com/raquo/laminar/inserters/StaticChildrenInserter.scala @@ -1,10 +1,10 @@ package com.raquo.laminar.inserters import com.raquo.airstream.core.Transaction +import com.raquo.laminar import com.raquo.laminar.modifiers.{RenderableNode, RenderableSeq} import com.raquo.laminar.nodes.{ChildNode, ReactiveElement} -import scala.collection.immutable import scala.scalajs.js /** @@ -13,7 +13,7 @@ import scala.scalajs.js * than SingleStaticInserter. */ class StaticChildrenInserter( - nodes: ChildrenSeq[ChildNode.Base], + nodes: laminar.Seq[ChildNode.Base], hooks: js.UndefOr[InserterHooks] ) extends StaticInserter with Hookable[StaticChildrenInserter] { @@ -43,7 +43,7 @@ object StaticChildrenInserter { renderableSeq: RenderableSeq[Collection], renderableNode: RenderableNode[Component] ): StaticChildrenInserter = { - val children = renderableNode.asNodeChildrenSeq(renderableSeq.toChildrenSeq(components)) + val children = renderableNode.asNodeSeq(renderableSeq.toSeq(components)) new StaticChildrenInserter(children, hooks = js.undefined) } diff --git a/src/main/scala/com/raquo/laminar/modifiers/RenderableNode.scala b/src/main/scala/com/raquo/laminar/modifiers/RenderableNode.scala index 2849d918..d4e9b714 100644 --- a/src/main/scala/com/raquo/laminar/modifiers/RenderableNode.scala +++ b/src/main/scala/com/raquo/laminar/modifiers/RenderableNode.scala @@ -1,11 +1,9 @@ package com.raquo.laminar.modifiers -import com.raquo.ew.JsVector -import com.raquo.laminar.inserters.ChildrenSeq +import com.raquo.laminar import com.raquo.laminar.nodes.ChildNode import scala.annotation.implicitNotFound -import scala.collection.immutable /** `RenderableNode[Component]` is evidence that you can convert a Component to * a Laminar ChildNode. @@ -32,7 +30,7 @@ trait RenderableNode[-Component] { } /** For every component, this MUST ALWAYS return the exact same node reference. */ - def asNodeChildrenSeq(values: ChildrenSeq[Component]): ChildrenSeq[ChildNode.Base] + def asNodeSeq(values: laminar.Seq[Component]): laminar.Seq[ChildNode.Base] /** For every component, this MUST ALWAYS return the exact same node reference. */ def asNodeOption(value: Option[Component]): Option[ChildNode.Base] @@ -56,7 +54,7 @@ object RenderableNode { override def asNode(value: Component): ChildNode.Base = renderNode(value) - override def asNodeChildrenSeq(values: ChildrenSeq[Component]): ChildrenSeq[ChildNode.Base] = values.map(renderNode) + override def asNodeSeq(values: laminar.Seq[Component]): laminar.Seq[ChildNode.Base] = values.map(renderNode) override def asNodeOption(value: Option[Component]): Option[ChildNode.Base] = value.map(renderNode) } @@ -66,7 +64,7 @@ object RenderableNode { override def asNode(value: ChildNode.Base): ChildNode.Base = value - override def asNodeChildrenSeq(values: ChildrenSeq[ChildNode.Base]): ChildrenSeq[ChildNode.Base] = values + override def asNodeSeq(values: laminar.Seq[ChildNode.Base]): laminar.Seq[ChildNode.Base] = values override def asNodeOption(value: Option[ChildNode.Base]): Option[ChildNode.Base] = value } diff --git a/src/main/scala/com/raquo/laminar/modifiers/RenderableSeq.scala b/src/main/scala/com/raquo/laminar/modifiers/RenderableSeq.scala index e9ea96ef..94981541 100644 --- a/src/main/scala/com/raquo/laminar/modifiers/RenderableSeq.scala +++ b/src/main/scala/com/raquo/laminar/modifiers/RenderableSeq.scala @@ -1,63 +1,63 @@ package com.raquo.laminar.modifiers import com.raquo.ew.{JsArray, JsVector} -import com.raquo.laminar.inserters.ChildrenSeq +import com.raquo.laminar import scala.scalajs.js // #TODO[Naming] - LSeq + RenderableSeq? RenderableSeq + IsRenderableSeq? // #nc trait RenderableSeq[-Collection[_]] { - def toChildrenSeq[A](values: Collection[A]): ChildrenSeq[A] + def toSeq[A](values: Collection[A]): laminar.Seq[A] } object RenderableSeq { implicit object collectionSeqRenderable extends RenderableSeq[collection.Seq] { - override def toChildrenSeq[A](values: collection.Seq[A]): ChildrenSeq[A] = { - ChildrenSeq.from(values) + override def toSeq[A](values: collection.Seq[A]): laminar.Seq[A] = { + laminar.Seq.from(values) } } implicit object scalaArrayRenderable extends RenderableSeq[scala.Array] { - override def toChildrenSeq[A](values: scala.Array[A]): ChildrenSeq[A] = { - ChildrenSeq.from(values) + override def toSeq[A](values: scala.Array[A]): laminar.Seq[A] = { + laminar.Seq.from(values) } } implicit object jsArrayRenderable extends RenderableSeq[JsArray] { - override def toChildrenSeq[A](values: JsArray[A]): ChildrenSeq[A] = { - ChildrenSeq.from(values) + override def toSeq[A](values: JsArray[A]): laminar.Seq[A] = { + laminar.Seq.from(values) } } implicit object sjsArrayRenderable extends RenderableSeq[js.Array] { - override def toChildrenSeq[A](values: js.Array[A]): ChildrenSeq[A] = { - ChildrenSeq.from(values) + override def toSeq[A](values: js.Array[A]): laminar.Seq[A] = { + laminar.Seq.from(values) } } implicit object jsVectorRenderable extends RenderableSeq[JsVector] { - override def toChildrenSeq[A](values: JsVector[A]): ChildrenSeq[A] = { - ChildrenSeq.from(values) + override def toSeq[A](values: JsVector[A]): laminar.Seq[A] = { + laminar.Seq.from(values) } } - implicit object childrenSeqRenderable extends RenderableSeq[ChildrenSeq] { - override def toChildrenSeq[A](values: ChildrenSeq[A]): ChildrenSeq[A] = { + implicit object laminarSeqRenderable extends RenderableSeq[laminar.Seq] { + override def toSeq[A](values: laminar.Seq[A]): laminar.Seq[A] = { values } } // object optionRenderable extends RenderableSeq[Option] { - // override def toChildrenSeq[A](maybeValue: Option[A]): ChildrenSeq[A] = { - // ChildrenSeq.from(maybeValue.toList) + // override def toSeq[A](maybeValue: Option[A]): laminar.Seq[A] = { + // laminar.Seq.from(maybeValue.toList) // } // } // // object jsUndefOrRenderable extends RenderableSeq[js.UndefOr] { - // override def toChildrenSeq[A](maybeValue: js.UndefOr[A]): ChildrenSeq[A] = { - // ChildrenSeq.from(JsArray.from(maybeValue)) + // override def toSeq[A](maybeValue: js.UndefOr[A]): laminar.Seq[A] = { + // laminar.Seq.from(JsArray.from(maybeValue)) // } // } diff --git a/src/main/scala/com/raquo/laminar/receivers/ChildrenReceiver.scala b/src/main/scala/com/raquo/laminar/receivers/ChildrenReceiver.scala index 04422cc9..cc1595fa 100644 --- a/src/main/scala/com/raquo/laminar/receivers/ChildrenReceiver.scala +++ b/src/main/scala/com/raquo/laminar/receivers/ChildrenReceiver.scala @@ -1,7 +1,8 @@ package com.raquo.laminar.receivers import com.raquo.airstream.core.Source -import com.raquo.laminar.inserters.{ChildrenInserter, ChildrenSeq, DynamicInserter} +import com.raquo.laminar +import com.raquo.laminar.inserters.{ChildrenInserter, DynamicInserter} import com.raquo.laminar.modifiers.{RenderableNode, RenderableSeq} import com.raquo.laminar.nodes.ChildNode @@ -16,7 +17,7 @@ object ChildrenReceiver { * children(component1, component2) <-- signalOfBoolean */ def apply(nodes: ChildNode.Base*): LockedChildrenReceiver = { - new LockedChildrenReceiver(ChildrenSeq.from(nodes)) + new LockedChildrenReceiver(laminar.Seq.from(nodes)) } implicit class RichChildrenReceiver(val self: ChildrenReceiver.type) extends AnyVal { @@ -31,7 +32,7 @@ object ChildrenReceiver { implicit renderableNode: RenderableNode[Component], renderableSeq: RenderableSeq[Collection] ): LockedChildrenReceiver = { - val nodes = renderableNode.asNodeChildrenSeq(renderableSeq.toChildrenSeq(components)) + val nodes = renderableNode.asNodeSeq(renderableSeq.toSeq(components)) new LockedChildrenReceiver(nodes) } diff --git a/src/main/scala/com/raquo/laminar/receivers/LockedChildrenReceiver.scala b/src/main/scala/com/raquo/laminar/receivers/LockedChildrenReceiver.scala index 385a0eb5..a44ed97f 100644 --- a/src/main/scala/com/raquo/laminar/receivers/LockedChildrenReceiver.scala +++ b/src/main/scala/com/raquo/laminar/receivers/LockedChildrenReceiver.scala @@ -1,27 +1,28 @@ package com.raquo.laminar.receivers import com.raquo.airstream.core.Source +import com.raquo.laminar import com.raquo.laminar.api.L.children -import com.raquo.laminar.inserters.{ChildrenSeq, DynamicInserter} +import com.raquo.laminar.inserters.DynamicInserter import com.raquo.laminar.nodes.ChildNode class LockedChildrenReceiver( - val nodes: ChildrenSeq[ChildNode.Base] + val nodes: laminar.Seq[ChildNode.Base] ) { /** If `include` is true, the nodes will be added. */ - @inline def apply(include: Boolean): ChildrenSeq[ChildNode.Base] = { + @inline def apply(include: Boolean): laminar.Seq[ChildNode.Base] = { this := include } /** If `include` is true, the nodes will be added. */ - def :=(include: Boolean): ChildrenSeq[ChildNode.Base] = { - if (include) nodes else ChildrenSeq.empty + def :=(include: Boolean): laminar.Seq[ChildNode.Base] = { + if (include) nodes else laminar.Seq.empty } /** If `includeSource` emits true, node will be added. Otherwise, it will be removed. */ def <--(includeSource: Source[Boolean]): DynamicInserter = { - children <-- includeSource.toObservable.map(if (_) nodes else ChildrenSeq.empty) + children <-- includeSource.toObservable.map(if (_) nodes else laminar.Seq.empty) } } diff --git a/src/test/scala/com/raquo/laminar/ChildReceiverSpec.scala b/src/test/scala/com/raquo/laminar/tests/ChildReceiverSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/ChildReceiverSpec.scala rename to src/test/scala/com/raquo/laminar/tests/ChildReceiverSpec.scala index 15915004..27e350c3 100644 --- a/src/test/scala/com/raquo/laminar/ChildReceiverSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/ChildReceiverSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.domtestutils.matching.ExpectedNode import com.raquo.laminar.api.L diff --git a/src/test/scala/com/raquo/laminar/ChildTextReceiverSpec.scala b/src/test/scala/com/raquo/laminar/tests/ChildTextReceiverSpec.scala similarity index 98% rename from src/test/scala/com/raquo/laminar/ChildTextReceiverSpec.scala rename to src/test/scala/com/raquo/laminar/tests/ChildTextReceiverSpec.scala index 95ca0de1..620be256 100644 --- a/src/test/scala/com/raquo/laminar/ChildTextReceiverSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/ChildTextReceiverSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.laminar.api.L._ import com.raquo.laminar.modifiers.RenderableText diff --git a/src/test/scala/com/raquo/laminar/ChildrenCommandReceiverSpec.scala b/src/test/scala/com/raquo/laminar/tests/ChildrenCommandReceiverSpec.scala similarity index 93% rename from src/test/scala/com/raquo/laminar/ChildrenCommandReceiverSpec.scala rename to src/test/scala/com/raquo/laminar/tests/ChildrenCommandReceiverSpec.scala index ffacef00..d21e5080 100644 --- a/src/test/scala/com/raquo/laminar/ChildrenCommandReceiverSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/ChildrenCommandReceiverSpec.scala @@ -1,10 +1,12 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.domtestutils.matching.Rule import com.raquo.laminar.inserters.CollectionCommand.{Append, Insert, Prepend, Remove, Replace} import com.raquo.laminar.api.L._ import com.raquo.laminar.utils.UnitSpec +import scala.collection.immutable + class ChildrenCommandReceiverSpec extends UnitSpec { private val text0 = randomString("text0_") @@ -61,7 +63,7 @@ class ChildrenCommandReceiverSpec extends UnitSpec { withClue(clue) { val first: Rule = "Hello" val last: Rule = div of "World" - val rules: Seq[Rule] = first +: (sentinel: Rule) +: childRules :+ last + val rules: immutable.Seq[Rule] = first +: (sentinel: Rule) +: childRules :+ last expectNode(div.of(rules: _*)) } diff --git a/src/test/scala/com/raquo/laminar/ChildrenReceiverSpec.scala b/src/test/scala/com/raquo/laminar/tests/ChildrenReceiverSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/ChildrenReceiverSpec.scala rename to src/test/scala/com/raquo/laminar/tests/ChildrenReceiverSpec.scala index 4aaec037..320d8cff 100644 --- a/src/test/scala/com/raquo/laminar/ChildrenReceiverSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/ChildrenReceiverSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.domtestutils.matching.Rule import com.raquo.ew.JsVector @@ -9,7 +9,7 @@ import com.raquo.laminar.nodes.ChildNode import com.raquo.laminar.utils.UnitSpec import org.scalatest.BeforeAndAfter -import scala.collection.mutable +import scala.collection.{immutable, mutable} import scala.scalajs.js class ChildrenReceiverSpec extends UnitSpec with BeforeAndAfter { @@ -103,7 +103,7 @@ class ChildrenReceiverSpec extends UnitSpec with BeforeAndAfter { def expectChildren(clue: String, childRules: Rule*): Unit = { withClue(clue) { - val rules: Seq[Rule] = (sentinel: Rule) +: childRules + val rules: immutable.Seq[Rule] = (sentinel: Rule) +: childRules expectNode(mainTag.of(rules: _*)) } @@ -177,7 +177,7 @@ class ChildrenReceiverSpec extends UnitSpec with BeforeAndAfter { def expectChildren(clue: String, childRules: Rule*): Unit = { withClue(clue) { - val rules: Seq[Rule] = (sentinel: Rule) +: childRules + val rules: immutable.Seq[Rule] = (sentinel: Rule) +: childRules expectNode(mainTag.of(rules: _*)) } @@ -284,7 +284,7 @@ class ChildrenReceiverSpec extends UnitSpec with BeforeAndAfter { def expectChildren(clue: String, childRules: Rule*): Unit = { withClue(clue) { - val rules: Seq[Rule] = (sentinel: Rule) +: childRules + val rules: immutable.Seq[Rule] = (sentinel: Rule) +: childRules expectNode(mainTag.of(rules: _*)) } diff --git a/src/test/scala/com/raquo/laminar/CompositeKeySpec.scala b/src/test/scala/com/raquo/laminar/tests/CompositeKeySpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/CompositeKeySpec.scala rename to src/test/scala/com/raquo/laminar/tests/CompositeKeySpec.scala index 43240638..50c05b6c 100644 --- a/src/test/scala/com/raquo/laminar/CompositeKeySpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/CompositeKeySpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.laminar.api.L._ import com.raquo.laminar.utils.UnitSpec diff --git a/src/test/scala/com/raquo/laminar/DetachedRootSpec.scala b/src/test/scala/com/raquo/laminar/tests/DetachedRootSpec.scala similarity index 97% rename from src/test/scala/com/raquo/laminar/DetachedRootSpec.scala rename to src/test/scala/com/raquo/laminar/tests/DetachedRootSpec.scala index f092a708..590558e2 100644 --- a/src/test/scala/com/raquo/laminar/DetachedRootSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/DetachedRootSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.laminar.api.L._ import com.raquo.laminar.utils.UnitSpec diff --git a/src/test/scala/com/raquo/laminar/DomApiSpec.scala b/src/test/scala/com/raquo/laminar/tests/DomApiSpec.scala similarity index 97% rename from src/test/scala/com/raquo/laminar/DomApiSpec.scala rename to src/test/scala/com/raquo/laminar/tests/DomApiSpec.scala index 067688ec..73efb340 100644 --- a/src/test/scala/com/raquo/laminar/DomApiSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/DomApiSpec.scala @@ -1,5 +1,6 @@ -package com.raquo.laminar +package com.raquo.laminar.tests +import com.raquo.laminar.DomApi import com.raquo.laminar.api.L.{svg => s} import com.raquo.laminar.api.L._ import com.raquo.laminar.utils.UnitSpec diff --git a/src/test/scala/com/raquo/laminar/EnvSpec.scala b/src/test/scala/com/raquo/laminar/tests/EnvSpec.scala similarity index 80% rename from src/test/scala/com/raquo/laminar/EnvSpec.scala rename to src/test/scala/com/raquo/laminar/tests/EnvSpec.scala index 0af00234..5b7a4637 100644 --- a/src/test/scala/com/raquo/laminar/EnvSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/EnvSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.domtestutils.scalatest.DomEnvSpec diff --git a/src/test/scala/com/raquo/laminar/EventProcessorSpec.scala b/src/test/scala/com/raquo/laminar/tests/EventProcessorSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/EventProcessorSpec.scala rename to src/test/scala/com/raquo/laminar/tests/EventProcessorSpec.scala index 410b9868..d6dbf147 100644 --- a/src/test/scala/com/raquo/laminar/EventProcessorSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/EventProcessorSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.laminar.api.L._ import com.raquo.laminar.utils.UnitSpec diff --git a/src/test/scala/com/raquo/laminar/HtmlAttrReceiverSpec.scala b/src/test/scala/com/raquo/laminar/tests/HtmlAttrReceiverSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/HtmlAttrReceiverSpec.scala rename to src/test/scala/com/raquo/laminar/tests/HtmlAttrReceiverSpec.scala index 31e3170b..096394ea 100644 --- a/src/test/scala/com/raquo/laminar/HtmlAttrReceiverSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/HtmlAttrReceiverSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.laminar.api.L._ import com.raquo.laminar.utils.UnitSpec diff --git a/src/test/scala/com/raquo/laminar/InsertHookSpec.scala b/src/test/scala/com/raquo/laminar/tests/InsertHookSpec.scala similarity index 97% rename from src/test/scala/com/raquo/laminar/InsertHookSpec.scala rename to src/test/scala/com/raquo/laminar/tests/InsertHookSpec.scala index 7971b387..cf8287e1 100644 --- a/src/test/scala/com/raquo/laminar/InsertHookSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/InsertHookSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.laminar.api.L._ import com.raquo.laminar.fixtures.ButtonElement diff --git a/src/test/scala/com/raquo/laminar/LifecycleEventSpec.scala b/src/test/scala/com/raquo/laminar/tests/LifecycleEventSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/LifecycleEventSpec.scala rename to src/test/scala/com/raquo/laminar/tests/LifecycleEventSpec.scala index eb5a969b..5f4cb69f 100644 --- a/src/test/scala/com/raquo/laminar/LifecycleEventSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/LifecycleEventSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.laminar.api.L._ import com.raquo.laminar.inserters.InserterHooks diff --git a/src/test/scala/com/raquo/laminar/MountHooksSpec.scala b/src/test/scala/com/raquo/laminar/tests/MountHooksSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/MountHooksSpec.scala rename to src/test/scala/com/raquo/laminar/tests/MountHooksSpec.scala index 44d07818..24a33b4c 100644 --- a/src/test/scala/com/raquo/laminar/MountHooksSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/MountHooksSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.laminar.api.L._ import com.raquo.laminar.fixtures.TestableOwner diff --git a/src/test/scala/com/raquo/laminar/RenderableSpec.scala b/src/test/scala/com/raquo/laminar/tests/RenderableSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/RenderableSpec.scala rename to src/test/scala/com/raquo/laminar/tests/RenderableSpec.scala index 1e274c4b..13c94296 100644 --- a/src/test/scala/com/raquo/laminar/RenderableSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/RenderableSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.ew import com.raquo.laminar.api.L._ diff --git a/src/test/scala/com/raquo/laminar/ShadowDomSpec.scala b/src/test/scala/com/raquo/laminar/tests/ShadowDomSpec.scala similarity index 97% rename from src/test/scala/com/raquo/laminar/ShadowDomSpec.scala rename to src/test/scala/com/raquo/laminar/tests/ShadowDomSpec.scala index 601b316d..1ec67d3f 100644 --- a/src/test/scala/com/raquo/laminar/ShadowDomSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/ShadowDomSpec.scala @@ -1,6 +1,7 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.domtestutils.matching.ExpectedNode +import com.raquo.laminar.DomApi import com.raquo.laminar.api.L._ import com.raquo.laminar.nodes.ChildNode import com.raquo.laminar.utils.UnitSpec diff --git a/src/test/scala/com/raquo/laminar/SignalChangesPullSpec.scala b/src/test/scala/com/raquo/laminar/tests/SignalChangesPullSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/SignalChangesPullSpec.scala rename to src/test/scala/com/raquo/laminar/tests/SignalChangesPullSpec.scala index 18b37c5e..f0b217b5 100644 --- a/src/test/scala/com/raquo/laminar/SignalChangesPullSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/SignalChangesPullSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.laminar.api.L._ import com.raquo.laminar.nodes.{ChildNode, ReactiveElement} diff --git a/src/test/scala/com/raquo/laminar/StyleReceiverSpec.scala b/src/test/scala/com/raquo/laminar/tests/StyleReceiverSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/StyleReceiverSpec.scala rename to src/test/scala/com/raquo/laminar/tests/StyleReceiverSpec.scala index ba2eb417..4c663436 100644 --- a/src/test/scala/com/raquo/laminar/StyleReceiverSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/StyleReceiverSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.laminar.api.L._ import com.raquo.laminar.utils.UnitSpec diff --git a/src/test/scala/com/raquo/laminar/SubscriptionLifecycleSpec.scala b/src/test/scala/com/raquo/laminar/tests/SubscriptionLifecycleSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/SubscriptionLifecycleSpec.scala rename to src/test/scala/com/raquo/laminar/tests/SubscriptionLifecycleSpec.scala index fe8448b8..8a415fda 100644 --- a/src/test/scala/com/raquo/laminar/SubscriptionLifecycleSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/SubscriptionLifecycleSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.domtestutils.matching.ExpectedNode import com.raquo.laminar.api.L diff --git a/src/test/scala/com/raquo/laminar/SvgSpec.scala b/src/test/scala/com/raquo/laminar/tests/SvgSpec.scala similarity index 98% rename from src/test/scala/com/raquo/laminar/SvgSpec.scala rename to src/test/scala/com/raquo/laminar/tests/SvgSpec.scala index 8d9d32dc..73bab729 100644 --- a/src/test/scala/com/raquo/laminar/SvgSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/SvgSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.laminar.api.A._ import com.raquo.laminar.api.L.svg._ diff --git a/src/test/scala/com/raquo/laminar/SyntaxSpec.scala b/src/test/scala/com/raquo/laminar/tests/SyntaxSpec.scala similarity index 98% rename from src/test/scala/com/raquo/laminar/SyntaxSpec.scala rename to src/test/scala/com/raquo/laminar/tests/SyntaxSpec.scala index 7bab5d92..b1ddea4c 100644 --- a/src/test/scala/com/raquo/laminar/SyntaxSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/SyntaxSpec.scala @@ -1,9 +1,9 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.airstream.custom.{CustomSource, CustomStreamSource} +import com.raquo.laminar import com.raquo.laminar.api.L._ import com.raquo.laminar.fixtures.TestableOwner -import com.raquo.laminar.inserters.ChildrenSeq import com.raquo.laminar.keys.DerivedStyleProp import com.raquo.laminar.modifiers.KeySetter.StyleSetter import com.raquo.laminar.nodes.ReactiveElement @@ -131,7 +131,7 @@ class SyntaxSpec extends UnitSpec { val nodesBuffer = mutable.Buffer(span("boo")) // mutable.Buffer[Span] is covariant as collection.Seq val nodesArray = Array(span("foo"), span("bar")) // Scala Arrays are not Seq-s. They are used in Scala 3 enums. val nodesJsArray = js.Array(span("js")) // JS arrays are invariant - val mixed: Seq[Mod[HtmlElement]] = Vector("c", input()) + val mixed: immutable.Seq[Mod[HtmlElement]] = Vector("c", input()) // @Note we make sure that none of the above go through expensive `nodesSeqToInserter` by never mounting the actualNode element // - inserters require mounting to be processed. @@ -139,7 +139,7 @@ class SyntaxSpec extends UnitSpec { val actualNode = div( strings, stringsBuffer, - stringsArray, + stringsArray, // #TODO[IDE] IntelliJ 2023.3.4 highlights this as error stringsJsArray, nodes, nodesBuffer, @@ -423,7 +423,7 @@ class SyntaxSpec extends UnitSpec { children <-- childrenStream.map(c => c), children <-- childrenSignal, children <-- childrenSignal.map(c => c), - children <-- childrenSignal.map(ChildrenSeq.from(_)), + children <-- childrenSignal.map(laminar.Seq.from(_)), idAttr <-- textObservable, idAttr <-- textObservable.map(t => t), idAttr <-- textStream, diff --git a/src/test/scala/com/raquo/laminar/WeirdCasesSpec.scala b/src/test/scala/com/raquo/laminar/tests/WeirdCasesSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/WeirdCasesSpec.scala rename to src/test/scala/com/raquo/laminar/tests/WeirdCasesSpec.scala index 9e3b8fc5..76572269 100644 --- a/src/test/scala/com/raquo/laminar/WeirdCasesSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/WeirdCasesSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar +package com.raquo.laminar.tests import com.raquo.domtestutils.matching.ExpectedNode import com.raquo.laminar.api.L._ diff --git a/src/test/scala/com/raquo/laminar/basic/ElementSpec.scala b/src/test/scala/com/raquo/laminar/tests/basic/ElementSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/basic/ElementSpec.scala rename to src/test/scala/com/raquo/laminar/tests/basic/ElementSpec.scala index f1ae9a0a..356256fc 100644 --- a/src/test/scala/com/raquo/laminar/basic/ElementSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/basic/ElementSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar.basic +package com.raquo.laminar.tests.basic import com.raquo.domtestutils.matching.ExpectedNode import com.raquo.laminar.DomApi diff --git a/src/test/scala/com/raquo/laminar/basic/EnvSpec.scala b/src/test/scala/com/raquo/laminar/tests/basic/EnvSpec.scala similarity index 78% rename from src/test/scala/com/raquo/laminar/basic/EnvSpec.scala rename to src/test/scala/com/raquo/laminar/tests/basic/EnvSpec.scala index e00b72c2..56cbba5b 100644 --- a/src/test/scala/com/raquo/laminar/basic/EnvSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/basic/EnvSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar.basic +package com.raquo.laminar.tests.basic import com.raquo.domtestutils.scalatest.DomEnvSpec diff --git a/src/test/scala/com/raquo/laminar/basic/EventSpec.scala b/src/test/scala/com/raquo/laminar/tests/basic/EventSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/basic/EventSpec.scala rename to src/test/scala/com/raquo/laminar/tests/basic/EventSpec.scala index b013c887..f4858a7d 100644 --- a/src/test/scala/com/raquo/laminar/basic/EventSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/basic/EventSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar.basic +package com.raquo.laminar.tests.basic import com.raquo.laminar.api.L import com.raquo.laminar.api.L._ diff --git a/src/test/scala/com/raquo/laminar/basic/HtmlAttrSpec.scala b/src/test/scala/com/raquo/laminar/tests/basic/HtmlAttrSpec.scala similarity index 97% rename from src/test/scala/com/raquo/laminar/basic/HtmlAttrSpec.scala rename to src/test/scala/com/raquo/laminar/tests/basic/HtmlAttrSpec.scala index 7949ac49..785deb65 100644 --- a/src/test/scala/com/raquo/laminar/basic/HtmlAttrSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/basic/HtmlAttrSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar.basic +package com.raquo.laminar.tests.basic import com.raquo.laminar.api.L._ import com.raquo.laminar.utils.UnitSpec diff --git a/src/test/scala/com/raquo/laminar/basic/HtmlPropSpec.scala b/src/test/scala/com/raquo/laminar/tests/basic/HtmlPropSpec.scala similarity index 95% rename from src/test/scala/com/raquo/laminar/basic/HtmlPropSpec.scala rename to src/test/scala/com/raquo/laminar/tests/basic/HtmlPropSpec.scala index 3de94f2c..f6fae3d7 100644 --- a/src/test/scala/com/raquo/laminar/basic/HtmlPropSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/basic/HtmlPropSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar.basic +package com.raquo.laminar.tests.basic import com.raquo.laminar.api.L import com.raquo.laminar.api.L._ diff --git a/src/test/scala/com/raquo/laminar/basic/ModSpec.scala b/src/test/scala/com/raquo/laminar/tests/basic/ModSpec.scala similarity index 97% rename from src/test/scala/com/raquo/laminar/basic/ModSpec.scala rename to src/test/scala/com/raquo/laminar/tests/basic/ModSpec.scala index a412374f..d070ce0d 100644 --- a/src/test/scala/com/raquo/laminar/basic/ModSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/basic/ModSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar.basic +package com.raquo.laminar.tests.basic import com.raquo.laminar.api.L._ import com.raquo.laminar.utils.UnitSpec diff --git a/src/test/scala/com/raquo/laminar/basic/README.md b/src/test/scala/com/raquo/laminar/tests/basic/README.md similarity index 100% rename from src/test/scala/com/raquo/laminar/basic/README.md rename to src/test/scala/com/raquo/laminar/tests/basic/README.md diff --git a/src/test/scala/com/raquo/laminar/basic/RefSpec.scala b/src/test/scala/com/raquo/laminar/tests/basic/RefSpec.scala similarity index 91% rename from src/test/scala/com/raquo/laminar/basic/RefSpec.scala rename to src/test/scala/com/raquo/laminar/tests/basic/RefSpec.scala index 2db56ce1..42df5ff9 100644 --- a/src/test/scala/com/raquo/laminar/basic/RefSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/basic/RefSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar.basic +package com.raquo.laminar.tests.basic import com.raquo.laminar.api.L._ import com.raquo.laminar.utils.UnitSpec diff --git a/src/test/scala/com/raquo/laminar/basic/ReflectedAttrSpec.scala b/src/test/scala/com/raquo/laminar/tests/basic/ReflectedAttrSpec.scala similarity index 98% rename from src/test/scala/com/raquo/laminar/basic/ReflectedAttrSpec.scala rename to src/test/scala/com/raquo/laminar/tests/basic/ReflectedAttrSpec.scala index 5bad95fd..060db025 100644 --- a/src/test/scala/com/raquo/laminar/basic/ReflectedAttrSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/basic/ReflectedAttrSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar.basic +package com.raquo.laminar.tests.basic import com.raquo.laminar.api.L._ import com.raquo.laminar.utils.UnitSpec diff --git a/src/test/scala/com/raquo/laminar/basic/StyleSpec.scala b/src/test/scala/com/raquo/laminar/tests/basic/StyleSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/basic/StyleSpec.scala rename to src/test/scala/com/raquo/laminar/tests/basic/StyleSpec.scala index d178df94..538a4c68 100644 --- a/src/test/scala/com/raquo/laminar/basic/StyleSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/basic/StyleSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar.basic +package com.raquo.laminar.tests.basic import com.raquo.laminar.api.L._ import com.raquo.laminar.api.StyleUnitsApi.StyleEncoder diff --git a/src/test/scala/com/raquo/laminar/basic/TreeSpec.scala b/src/test/scala/com/raquo/laminar/tests/basic/TreeSpec.scala similarity index 99% rename from src/test/scala/com/raquo/laminar/basic/TreeSpec.scala rename to src/test/scala/com/raquo/laminar/tests/basic/TreeSpec.scala index cc7066f0..e574f12d 100644 --- a/src/test/scala/com/raquo/laminar/basic/TreeSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/basic/TreeSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar.basic +package com.raquo.laminar.tests.basic import com.raquo.laminar.DomApi import com.raquo.laminar.api.L diff --git a/src/test/scala/com/raquo/laminar/example/ToggleComponentSpec.scala b/src/test/scala/com/raquo/laminar/tests/example/ToggleComponentSpec.scala similarity index 97% rename from src/test/scala/com/raquo/laminar/example/ToggleComponentSpec.scala rename to src/test/scala/com/raquo/laminar/tests/example/ToggleComponentSpec.scala index 91e4a71f..8b65aacf 100644 --- a/src/test/scala/com/raquo/laminar/example/ToggleComponentSpec.scala +++ b/src/test/scala/com/raquo/laminar/tests/example/ToggleComponentSpec.scala @@ -1,4 +1,4 @@ -package com.raquo.laminar.example +package com.raquo.laminar.tests.example import com.raquo.laminar.api.L._ import com.raquo.laminar.utils.UnitSpec