Package

ltbs.uniform.common

web

Permalink

package web

Linear Supertypes
webcommon, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. web
  2. webcommon
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. sealed trait AskResult[+A, Html] extends AnyRef

    Permalink

    An abstracted result from asking the user for a value via a web interface.

    An abstracted result from asking the user for a value via a web interface. Each web interpreter will want to convert this into it's own representation

  2. type Breadcrumbs = List[List[String]]

    Permalink
    Definition Classes
    webcommon
  3. trait Codec[A] extends AnyRef

    Permalink
  4. trait CoproductFieldList[A, Html] extends AnyRef

    Permalink
  5. type DB = Map[List[String], String]

    Permalink
    Definition Classes
    webcommon
  6. trait FormField[A, Html] extends Codec[A]

    Permalink

    Defines both the rendering and the encoding for a given datatype

  7. trait FormFieldEncoding[A] extends AnyRef

    Permalink

    A codec for a datatype to make it usable as a form field inside a uniform web interpreter.

    A codec for a datatype to make it usable as a form field inside a uniform web interpreter. Technically this is a split epimorphism between Input => Either[ErrorTree,A] and A => Input.

  8. trait FormFieldPresentation[A, Html] extends AnyRef

    Permalink

    Controls the rendering of a field in a web form

  9. case class FormFieldStats(children: Int = 0, compoundChildren: Int = 0) extends Product with Serializable

    Permalink
  10. case class FutureAdapter[Html]() extends Product with Serializable

    Permalink
  11. trait GenericWebInterpreter[Html] extends AnyRef

    Permalink
  12. trait GenericWebTell[A, Html] extends AnyRef

    Permalink

    Represents rendering a type for a tell interaction used in a web interpreter

  13. trait InferFormFieldCoProduct[Html] extends AnyRef

    Permalink
  14. trait InferFormFieldProduct[Html] extends AnyRef

    Permalink
  15. trait InferListingPages[Html] extends AnyRef

    Permalink

    Produces pages for List[A] where a user can enter multiple items of a given datatype via a central page that enumerates the items already, allows them to add new items and edit or delete existing ones.

    Produces pages for List[A] where a user can enter multiple items of a given datatype via a central page that enumerates the items already, allows them to add new items and edit or delete existing ones.

    There are two ways you can produce a listing - the first works by infering the page for A automatically. To use this approach simply use an ask[List[A]] in your journey and it will pick up and use the add/edit part from inference, falling back to InferFormField if necessary.

    The second approach works by explicitly supplying a subjourney and interpreting this into a WebMonadConstructor, by using the listingPageWM method.

  16. trait InferTell[Html] extends AnyRef

    Permalink
  17. case class JourneyConfig(leapAhead: Boolean = true, askFirstListItem: Boolean = false) extends Product with Serializable

    Permalink

    leapAhead

    fast forward to the first empty question in a journey

    askFirstListItem

    when asking for list A with a minimum number of A required then go straight to add A subjourney rather than to the empty listing index page

  18. sealed trait ListAction extends AnyRef

    Permalink
  19. sealed trait ListActionGeneral extends ListAction

    Permalink
  20. sealed trait ListActionRow extends ListAction

    Permalink
  21. trait ListingTell[Html, A] extends AnyRef

    Permalink

    A representation of how to render a listing of a type of object

  22. case class ListingTellRow[A](value: A, editLink: String, deleteLink: String) extends Product with Serializable

    Permalink
  23. case class PageIn(targetId: List[String], breadcrumbs: web.Breadcrumbs, request: Option[Input], state: web.DB, pathPrefix: List[String], config: JourneyConfig) extends Product with Serializable

    Permalink
  24. final case class PageOut[A, Html](breadcrumbs: web.Breadcrumbs, db: web.DB, output: AskResult[A, Html], pathPrefix: List[String], config: JourneyConfig) extends Product with Serializable

    Permalink

    The combined output of web execution

  25. abstract class PostAndGetPage[A, Html] extends WebMonadConstructor[A, Html]

    Permalink
  26. trait ProductFieldList[A, Html] extends AnyRef

    Permalink
  27. implicit final class RichDateTime extends AnyVal

    Permalink
  28. implicit class RichList[A] extends AnyRef

    Permalink
  29. class SimplePostAndGetPage[A, Html] extends PostAndGetPage[A, Html]

    Permalink
  30. abstract class WebMonad[A, Html] extends AnyRef

    Permalink
  31. trait WebMonadConstructor[A, Html] extends AnyRef

    Permalink
  32. trait webcommon extends AnyRef

    Permalink

Value Members

  1. object AskResult

    Permalink
  2. object DB

    Permalink
    Definition Classes
    webcommon
  3. object ListAction

    Permalink

    The data type returned form the branching part of a listing page.

  4. object Pos

    Permalink
    Attributes
    protected
  5. object PostAndGetPage

    Permalink
  6. object WebMonad

    Permalink
  7. implicit def formToWebMonad[A, Html](implicit ff: FormField[A, Html]): WebMonadConstructor[A, Html]

    Permalink
    Definition Classes
    webcommon
  8. implicit val orderLocalDateTime: Order[LocalDateTime]

    Permalink
  9. def relativePath(from: List[String], to: List[String]): String

    Permalink

    Returns a relative path as used in a URI or *nix directory - with '..' used to denote navigating up one element in the tree.

    Returns a relative path as used in a URI or *nix directory - with '..' used to denote navigating up one element in the tree.

    scala> relativePath(List("1","2"),{1 to 5}.map{_.toString}.toList)
    res0: String = 3/4/5
    
    scala> relativePath(List("1","other","thing"),{1 to 5}.map{_.toString}.toList)
    res1: String = ../2/3/4/5
    Definition Classes
    webcommon
  10. final def removeCommon[B](x: List[B], y: List[B])(implicit arg0: Eq[B]): (List[B], List[B])

    Permalink

    Returns the lists given as arguments with any sequence common to the two removed from the start

    Returns the lists given as arguments with any sequence common to the two removed from the start

    scala> removeCommon({1 to 5}.toList, List(1,2))
    res0: (List[Int], List[Int]) = (List(3, 4, 5),List())
    Definition Classes
    webcommon
    Annotations
    @tailrec()

Inherited from webcommon

Inherited from AnyRef

Inherited from Any

Ungrouped