Packages

trait Access[F[_], S, M] extends BaseAccess[F, S, M] with EventAccess[F, S, M]

Provides access to make side effects

Linear Supertypes
EventAccess[F, S, M], BaseAccess[F, S, M], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Access
  2. EventAccess
  3. BaseAccess
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def downloadFileAsStream(handler: FileHandler[F]): F[LazyBytes[F]]

    Get selected file as a stream from input

    Get selected file as a stream from input

    Definition Classes
    BaseAccess
  2. abstract def downloadFiles(id: ElementId[F]): F[List[(FileHandler[F], Array[Byte])]]

    Download the selected file list from input appropriate to given element id.

    Download the selected file list from input appropriate to given element id. Use this method carefully because all files are saving to RAM.

    Definition Classes
    BaseAccess
  3. abstract def downloadFilesAsStream(id: ElementId[F]): F[List[(FileHandler[F], LazyBytes[F])]]

    Same as downloadFiles but for stream mode.

    Same as downloadFiles but for stream mode. The method is useful when user want to upload very large files list which is problematic to keep in memory (especially when count of users is more than one).

    Definition Classes
    BaseAccess
  4. abstract def downloadFormData(id: ElementId[F]): F[FormData]

    Downloads form from the client.

    Downloads form from the client. Useful when when you want to read big amount of fields. Do not use this method for downloading files, however it is possible.

    event(submit) { access =>
      access
        .downloadFormData(myForm)
        .flatMap { formData =>
          val picture = data.file("picture") // Array[Byte]
          val title = data.text("title") // String
          access.transition {
            // ... transtion
          }
        }
    }
    id

    form elementId

    Definition Classes
    BaseAccess
  5. abstract def evalJs(code: JsCode): F[String]

    Execute arbitrary JavaScript code on client and get stringified JSON back.

    Execute arbitrary JavaScript code on client and get stringified JSON back.

    for {
      _ <- access.evalJs("new Date().getTimezoneOffset()").map(offset => ...)
      _ <- access.evalJs(js"$myForm.submit()").map(offset => ...)
    } yield ()
    Definition Classes
    BaseAccess
  6. abstract def eventData: F[String]

    Gives json with string, number and boolean fields of object of the event happened in current render phase.

    Gives json with string, number and boolean fields of object of the event happened in current render phase. Note that is expensive operation which requires network round trip.

    Definition Classes
    EventAccess
  7. abstract def focus(id: ElementId[F]): F[Unit]

    Makes focus on the element

    Makes focus on the element

    Definition Classes
    BaseAccess
  8. abstract def listFiles(id: ElementId[F]): F[List[FileHandler[F]]]

    Get only file list for input

    Get only file list for input

    Definition Classes
    BaseAccess
  9. abstract def property(id: ElementId[F]): PropertyHandler[F]

    Extracts property of element from client-side DOM.

    Extracts property of element from client-side DOM.

    Definition Classes
    BaseAccess
    Example:
    1. event('click) { access =>
        for {
          request <- access.property(searchField).get('value)
          result  <- searchModel.search(request)
          _       <- access.transition {
            case state: State.Awesome =>
              state.copy(list = searchResult)
          }
        } yield ()
      }
    Since

    0.6.0

    See also

    Scope.elementId

  10. abstract def publish(message: M): F[Unit]

    Publish message to environment.

    Publish message to environment.

    Definition Classes
    BaseAccess
  11. abstract def registerCallback(name: String)(f: (String) ⇒ F[Unit]): F[Unit]

    Register callback that could be invoked from the client side.

    Register callback that could be invoked from the client side.

    // Scala
    access.registerCallback("myCallback") { myArg =>
      Future(println(myArg))
    }
    
    // JavaScript
    Korolev.invokeCallback('myCallback', 'myArgValue');
    Definition Classes
    BaseAccess
  12. abstract def resetForm(id: ElementId[F]): F[Unit]

    Purge inputs in given form.

    Purge inputs in given form.

    id

    form element id binding

    Definition Classes
    BaseAccess
  13. abstract def sessionId: F[Qsid]

    Gives current session id.

    Gives current session id.

    Definition Classes
    BaseAccess
  14. abstract def state: F[S]

    Gives current state.

    Gives current state.

    Definition Classes
    BaseAccess
  15. abstract def syncTransition(f: Transition[S]): F[Unit]

    Applies transition to current state and awaits render.

    Applies transition to current state and awaits render.

    Definition Classes
    BaseAccess
  16. abstract def transition(f: Transition[S]): F[Unit]

    Applies transition to current state.

    Applies transition to current state.

    Definition Classes
    BaseAccess

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def evalJs(code: String): F[String]
    Definition Classes
    BaseAccess
  9. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  13. final def maybeTransition(f: PartialFunction[S, S]): F[Unit]

    Applies transition to current state.

    Applies transition to current state.

    Definition Classes
    BaseAccess
  14. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. final def property(id: ElementId[F], propName: String): F[String]

    Shortcut for property(id).get(propName).

    Shortcut for property(id).get(propName).

    Definition Classes
    BaseAccess
    Since

    0.13.0

  18. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  19. def toString(): String
    Definition Classes
    AnyRef → Any
  20. final def valueOf(id: ElementId[F]): F[String]

    Shortcut for property(id).get('value).

    Shortcut for property(id).get('value).

    Definition Classes
    BaseAccess
    Since

    0.6.0

  21. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Deprecated Value Members

  1. final def property(id: ElementId[F], propName: Symbol): F[String]

    Shortcut for property(id).get(propName).

    Shortcut for property(id).get(propName).

    Definition Classes
    BaseAccess
    Annotations
    @deprecated
    Deprecated

    (Since version 0.13.0) Use "propertyName" instead of 'propertyName

    Since

    0.6.0

Inherited from EventAccess[F, S, M]

Inherited from BaseAccess[F, S, M]

Inherited from AnyRef

Inherited from Any

Ungrouped