Packages

package router

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. router
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. final case class AbsUrl(value: String) extends PathLike[AbsUrl] with Product with Serializable

    An absolute URL.

  2. type Action[Page, -Props] = ActionF[Sync, Page, Props]
  3. sealed trait ActionF[+F[_], Page, -Props] extends Product with Serializable
  4. final case class BaseUrl(value: String) extends PathLike[BaseUrl] with Product with Serializable

    The prefix of all routes on a page.

    The prefix of all routes on a page.

    The router expects this to be a full URL. Examples: BaseUrl("http://www.blah.com/hello"), BaseUrl.fromWindowOrigin / "hello".

  5. final case class Path(value: String) extends PathLike[Path] with Product with Serializable

    The portion of the URL after the BaseUrl.

  6. abstract class PathLike[Self <: PathLike[Self]] extends AnyRef
  7. sealed trait Redirect[Page] extends ActionF[Nothing, Page, Any]
  8. final case class RedirectToPage[Page](page: Page, via: SetRouteVia) extends Redirect[Page] with Product with Serializable
  9. final case class RedirectToPath[Page](path: Path, via: SetRouteVia) extends Redirect[Page] with Product with Serializable
  10. type Renderer[Page, -Props] = RendererF[Sync, Page, Props]
  11. final case class RendererF[F[_], Page, -Props](render: (RouterCtlF[F, Page]) => (Props) => VdomElement)(implicit sync: Sync[F]) extends ActionF[F, Page, Props] with Product with Serializable
  12. type Resolution[P] = ResolutionWithProps[P, Unit]
  13. final case class ResolutionWithProps[P, Props](page: P, renderP: (Props) => VdomElement) extends Product with Serializable

    Result of the router resolving a URL and reaching a conclusion about what to render.

    Result of the router resolving a URL and reaching a conclusion about what to render.

    page

    Data representation (or command) of what will be drawn.

  14. sealed abstract class RouteCmd[A] extends AnyRef
  15. type Router[P] = component.Js.ComponentWithRoot[Unit, Nullary, Unmounted[Unit, Resolution[P], OnUnmountF[Sync]], Box[Unit], Nullary, JsUnmounted[Unit, Resolution[P], OnUnmountF[Sync]]]
  16. type RouterConfig[P] = RouterWithPropsConfigF[Sync, P, Unit]
  17. final class RouterConfigDsl[Page, Props] extends AnyRef

    DSL for creating RouterConfig.

    DSL for creating RouterConfig.

    Instead creating an instance of this yourself, use RouterConfigDsl.apply.

  18. type RouterCtl[A] = RouterCtlF[Sync, A]
  19. abstract class RouterCtlF[F[_], Route] extends AnyRef

    Router controller.

    Router controller. A client API to the router.

    Route

    A data type that indicates a route that can be navigated to.

  20. type RouterF[F[_], P] = component.Js.ComponentWithRoot[Unit, Nullary, Unmounted[Unit, Resolution[P], OnUnmountF[F]], Box[Unit], Nullary, JsUnmounted[Unit, Resolution[P], OnUnmountF[F]]]
  21. type RouterFM[F[_], P] = MountedWithRoot[Id, util.DefaultEffects.Async, Unit, Resolution[P], OnUnmountF[F], Unit, Resolution[P]]
  22. type RouterFU[F[_], P] = UnmountedWithRoot[Unit, MountedImpure[Unit, Resolution[P], OnUnmountF[F]], Box[Unit], JsMounted[Unit, Resolution[P], OnUnmountF[F]]]
  23. type RouterLogic[Page, Props] = RouterLogicF[Sync, Page, Props]
  24. final class RouterLogicF[F[_], Page, Props] extends BroadcasterF[F, Unit]

    Performs all routing logic.

    Performs all routing logic.

    Page

    Routing rules context. Prevents different routing rule sets being mixed up.

  25. type RouterM[P] = MountedWithRoot[Id, util.DefaultEffects.Async, Unit, Resolution[P], OnUnmountF[Sync], Unit, Resolution[P]]
  26. type RouterU[P] = UnmountedWithRoot[Unit, MountedImpure[Unit, Resolution[P], OnUnmountF[Sync]], Box[Unit], JsMounted[Unit, Resolution[P], OnUnmountF[Sync]]]
  27. type RouterWithProps[P, Props] = component.Js.ComponentWithRoot[Props, Props, Unmounted[Props, ResolutionWithProps[P, Props], OnUnmountF[Sync]], Box[Props], Props, JsUnmounted[Props, ResolutionWithProps[P, Props], OnUnmountF[Sync]]]
  28. type RouterWithPropsConfig[Page, Props] = RouterWithPropsConfigF[Sync, Page, Props]
  29. case class RouterWithPropsConfigF[F[_], Page, Props](rules: RoutingRulesF[F, Page, Props], renderFn: (RouterCtlF[F, Page], ResolutionWithProps[Page, Props]) => (Props) => VdomElement, postRenderFn: (Option[Page], Page, Props) => F[Unit], logger: Logger)(implicit effect: Sync[F]) extends Product with Serializable
  30. type RouterWithPropsF[F[_], P, Props] = component.Js.ComponentWithRoot[Props, Props, Unmounted[Props, ResolutionWithProps[P, Props], OnUnmountF[F]], Box[Props], Props, JsUnmounted[Props, ResolutionWithProps[P, Props], OnUnmountF[F]]]
  31. type RouterWithPropsFM[F[_], P, Props] = MountedWithRoot[Id, util.DefaultEffects.Async, Props, ResolutionWithProps[P, Props], OnUnmountF[F], Props, ResolutionWithProps[P, Props]]
  32. type RouterWithPropsFU[F[_], P, Props] = UnmountedWithRoot[Props, MountedImpure[Props, ResolutionWithProps[P, Props], OnUnmountF[F]], Box[Props], JsMounted[Props, ResolutionWithProps[P, Props], OnUnmountF[F]]]
  33. type RouterWithPropsM[P, Props] = MountedWithRoot[Id, util.DefaultEffects.Async, Props, ResolutionWithProps[P, Props], OnUnmountF[Sync], Props, ResolutionWithProps[P, Props]]
  34. type RouterWithPropsU[P, Props] = UnmountedWithRoot[Props, MountedImpure[Props, ResolutionWithProps[P, Props], OnUnmountF[Sync]], Box[Props], JsMounted[Props, ResolutionWithProps[P, Props], OnUnmountF[Sync]]]
  35. sealed trait RoutingRule[Page, Props] extends AnyRef

    A single routing rule.

    A single routing rule. Intended to be composed with other RoutingRules. When all rules are composed, this is turned into a RoutingRule.WithFallback instance.

    Page

    The type of legal pages. Most commonly, a sealed trait that you've created, where all subclasses represent a page in your SPA.

  36. type RoutingRules[Page, Props] = RoutingRulesF[Sync, Page, Props]

    A complete set of routing rules that allow the router to handle every all routes without further input.

  37. final case class RoutingRulesF[F[_], Page, Props](parseMulti: (Path) => List[StaticOrDynamic[Option[Parsed[Page]]]], path: (Page) => Path, actionMulti: (Path, Page) => List[StaticOrDynamic[Option[ActionF[F, Page, Props]]]], fallbackAction: (Path, Page) => ActionF[F, Page, Props], whenNotFound: (Path) => F[Parsed[Page]])(implicit F: Sync[F]) extends Product with Serializable

    A complete set of routing rules that allow the router to handle every all routes without further input.

    A complete set of routing rules that allow the router to handle every all routes without further input.

    Page

    The type of legal pages. Most commonly, a sealed trait that you've created, where all subclasses represent a page in your SPA.

  38. sealed trait SetRouteVia extends AnyRef

    The means by which the location should be set to a given URL.

Value Members

  1. def RouterWithPropsConfig[Page, Props](rules: RoutingRules[Page, Props], renderFn: (RouterCtl[Page], ResolutionWithProps[Page, Props]) => (Props) => VdomElement, postRenderFn: (Option[Page], Page, Props) => Sync[Unit], logger: Logger): RouterWithPropsConfig[Page, Props]
    Annotations
    @inline()
  2. object AbsUrl extends Serializable
  3. object BaseUrl extends Serializable
  4. object Path extends Serializable
  5. object RouteCmd
  6. object Router
  7. object RouterConfig
  8. object RouterConfigDsl
  9. object RouterCtlF
  10. object RouterWithProps
  11. object RouterWithPropsConfigDsl
  12. object RoutingRule
  13. object RoutingRules
  14. object RoutingRulesF extends Serializable
  15. object SetRouteVia
  16. object StaticDsl

    This is not meant to be imported by library-users; RouterConfigDsl is the entire library-user-facing facade & DSL.

Inherited from AnyRef

Inherited from Any

Ungrouped