package waypoint
This is the public API. Import com.raquo.waypoint or com.raquo.waypoint._
- Alphabetic
- By Inheritance
- waypoint
- Waypoint
- FragmentImpl
- QueryParametersImpl
- PathSegmentImpl
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
- sealed class CollectPageRenderer[Page, +View] extends Renderer[Page, View]
-
sealed
class
CollectPageSignalRenderer[InPage, OutPage, +View] extends Renderer[InPage, View]
The job of this renderer is to provide Signal[OutPage] => View instead of the more obvious but less efficient Signal[OutPage] => Signal[View]
The job of this renderer is to provide Signal[OutPage] => View instead of the more obvious but less efficient Signal[OutPage] => Signal[View]
It is sort of like a specialized version of Airstream .split
-
class
ContextRouteBuilder[Bundle, Page, Ctx, CtxArgs] extends AnyRef
A builder for routes with context.
A builder for routes with context.
Context, in this context (heheh), is a type that encodes a set of query params that is shared between the routes created by this builder.
For example, your Laminar web app might have a big documentation section with many routes, but where every route is expected to have a "lang" query param to indicate the selected language and a "version" param to indicate the product version (unrealistic doc standards, I know).
So, you could add these two params to every page type that needs them and to every route for those page types, but that could be annoying. So instead, you could create a ContextRouteBuilder which will let you specify the necessary types / conversions / patterns only once.
See ContextRouteBuilderSpec for a concrete example.
- Bundle
- The type of pages (including the context part) handled by the routes produced by this builder. A bundle consists of a route-specific Page, and a Context shared by all routes by this builder. In the simplest case, imagine
case class Bundle(p: Page, ctx: Context)
- Page
- The base type for the route-specific parts of the Bundle
- Ctx
- The part of the Bundle shared by all routes made by this builder, In the simplest case, imagine
case class SharedParams(lang: Option[String], version: Option[String])
-
type
FragmentPatternArgs[PathArgs, QueryArgs, FragmentArgs] = PathQueryFragmentMatching[PathArgs, QueryArgs, FragmentArgs]
A bundle of path args, query param args, and fragment args
-
type
PatternArgs[PathArgs, QueryArgs] = UrlMatching[PathArgs, QueryArgs]
A bundle of path args and query param args
- trait Renderer[-Page, +View] extends AnyRef
-
class
Route[Page, Args] extends AnyRef
Encoding and decoding are partial functions.
Encoding and decoding are partial functions. Their partial-ness should be symmetrical, otherwise you'll end up with a route that can parse a URL into a Page but can't encode the page into the same URL (or vice versa)
- Page
- Types of pages that this Route is capable of matching. Note: the Route might match only a subset of pages of this type.
- Args
- Type of data saved in the URL for pages matched by this route Note: the Route might match only a subset of args of this type.
-
class
RouteEvent[BasePage] extends AnyRef
This private event is fired when a route is changed.
-
class
Router[BasePage] extends AnyRef
- Exceptions thrown
Exception
- when initialUrl is not absolute or does not match origin
- case class SplitRender[Page, View](pageSignal: Signal[Page], renderers: List[Renderer[Page, View]] = Nil) extends Product with Serializable
- class Waypoint[PathErr, QueryErr, FragErr] extends PathSegmentImpl[PathErr] with QueryParametersImpl[QueryErr] with FragmentImpl[FragErr]
Abstract Value Members
-
implicit abstract
val
fragmentError: FragmentMatchingError[DummyError]
- Attributes
- protected
- Definition Classes
- FragmentImpl
-
implicit abstract
val
pathError: PathMatchingError[DummyError]
- Attributes
- protected
- Definition Classes
- PathSegmentImpl
-
implicit abstract
val
queryError: ParamMatchingError[DummyError]
- Attributes
- protected
- Definition Classes
- QueryParametersImpl
Concrete Value Members
-
def
FragmentPatternArgs: PathQueryFragmentMatching.type
- Annotations
- @inline()
-
def
PatternArgs: UrlMatching.type
- Annotations
- @inline()
-
implicit final
def
asFragment[T](t: T)(implicit fromString: FromString[T, DummyError], printer: Printer[T], classTag: ClassTag[T]): Fragment[Unit, DummyError]
- Definition Classes
- FragmentImpl
-
final
def
emptyFragment: Fragment[Unit, DummyError]
- Definition Classes
- FragmentImpl
-
lazy val
endOfSegments: PathSegment[Unit, DummyError]
- Definition Classes
- PathSegmentImpl
-
final
def
fragment[T](implicit fromString: FromString[T, DummyError], printer: Printer[T]): Fragment[T, DummyError]
- Definition Classes
- FragmentImpl
-
val
ignore: QueryParameters[Unit, DummyError]
- Definition Classes
- QueryParametersImpl
-
def
listParam[Q](paramName: String)(implicit fromString: FromString[Q, DummyError], printer: Printer[Q]): QueryParameters[List[Q], DummyError]
- Definition Classes
- QueryParametersImpl
-
final
def
maybeFragment[T](implicit fromString: FromString[T, DummyError], printer: Printer[T]): Fragment[Option[T], DummyError]
- Definition Classes
- FragmentImpl
-
lazy val
noMatch: PathSegment[Unit, DummyError]
- Definition Classes
- PathSegmentImpl
-
def
oneOf[T](t: T, ts: T*)(implicit fromString: FromString[T, DummyError], printer: Printer[T]): PathSegment[Unit, DummyError]
- Definition Classes
- PathSegmentImpl
-
def
param[Q](paramName: String)(implicit fromString: FromString[Q, DummyError], printer: Printer[Q]): QueryParameters[Q, DummyError]
- Definition Classes
- QueryParametersImpl
-
val
remainingSegments: PathSegment[List[String], DummyError]
- Definition Classes
- PathSegmentImpl
-
val
root: PathSegment[Unit, DummyError]
- Definition Classes
- PathSegmentImpl
-
def
segment[T](implicit fromString: FromString[T, DummyError], printer: Printer[T]): PathSegment[T, DummyError]
- Definition Classes
- PathSegmentImpl
-
implicit
def
unaryPathSegment[T](t: T)(implicit fromString: FromString[T, DummyError], printer: Printer[T]): PathSegment[Unit, DummyError]
- Definition Classes
- PathSegmentImpl
- object Route
- object Router
- object Utils
Deprecated Value Members
-
val
empty: QueryParameters[Unit, DummyError]
- Definition Classes
- QueryParametersImpl
- Annotations
- @deprecated
- Deprecated
(Since version 0.3.0) empty was poorly named, and is replaced by
ignore
. The semantic for empty might change in the future!