kvision / pl.treksoft.kvision.react / React

React

(js) class React<S> : Widget, ObservableState<S>

React component for KVision with support for state holder.

Parameters

S - state type

classes - a set of CSS class names

builder - a builder function for external react components with support for the state holder.

Constructors

(js)

<init>

React component for KVision with support for state holder.

React(state: S, classes: Set<String> = setOf(), builder: RBuilder.(getState: () -> S, changeState: ((S) -> S) -> Unit) -> Unit)

Properties

(js)

state

var state: S

Functions

(js)

afterDestroy

Method called after destroying Snabbdom vnode.

fun afterDestroy(): Unit
(js)

afterInsert

Method called after inserting Snabbdom vnode into the DOM.

fun afterInsert(node: VNode): Unit
(js)

getState

Get current state.

fun getState(): S
(js)

subscribe

Subscribe for the state change notifications.

fun subscribe(observer: (S) -> Unit): () -> Unit

Extension Properties

(js)

changeFlow

Extension property returning Flow for a change event.

val <T : Widget> T.changeFlow: Flow<T>
(js)

clickFlow

Extension property returning Flow for a click event.

val <T : Widget> T.clickFlow: Flow<T>
(js)

inputFlow

Extension property returning Flow for an input event.

val <T : Widget> T.inputFlow: Flow<T>
(js)

stateFlow

Extension property returning StateFlow for an ObservableState.

val <S> ObservableState<S>.stateFlow: StateFlow<S>

Extension Functions

(js)

addBsBgColor

fun Component.addBsBgColor(bsBgColor: BsBgColor): Unit
(js)

addBsBorder

fun Component.addBsBorder(vararg bsBorder: BsBorder): Unit
(js)

addBsClearfix

fun Component.addBsClearfix(): Unit
(js)

addBsColor

fun Component.addBsColor(bsColor: BsColor): Unit
(js)

addBsRounded

fun Component.addBsRounded(vararg bsRounded: BsRounded): Unit
(js)

bind

An extension function which binds the widget to the observable state.

fun <S, W : Widget> W.bind(observableState: ObservableState<S>, removeChildren: Boolean = true, factory: W.(S) -> Unit): W
(js)

contextMenu

DSL builder extension function.

fun Widget.contextMenu(fixedPosition: Boolean = false, classes: Set<String>? = null, className: String? = null, init: (ContextMenu.() -> Unit)? = null): ContextMenu
(js)

enableGestureDetector

Enable gesture detector for a given Widget.

fun Widget.enableGestureDetector(): Unit
(js)

eventFlow

Extension property returning Flow<Pair<Widget, Event>> for a given event

fun <T : Widget> T.eventFlow(event: String): Flow<Pair<T, Event>>
(js)

onClick

An extension function for defining on click event handlers.

fun <T : Widget> T.onClick(handler: T.(MouseEvent) -> Unit): Int
(js)

onEvent

An extension function for defining event handlers.

fun <T : Widget> T.onEvent(block: SnOn<T>.() -> Unit): Int
(js)

removeBsBgColor

fun Component.removeBsBgColor(bsBgColor: BsBgColor): Unit
(js)

removeBsBorder

fun Component.removeBsBorder(vararg bsBorder: BsBorder): Unit
(js)

removeBsClearfix

fun Component.removeBsClearfix(): Unit
(js)

removeBsColor

fun Component.removeBsColor(bsColor: BsColor): Unit
(js)

removeBsRounded

fun Component.removeBsRounded(vararg bsRounded: BsRounded): Unit
(js)

setContextMenu

Sets context menu for the current widget.

fun Widget.setContextMenu(contextMenu: ContextMenu): Widget
(js)

style

DSL builder extension function.

fun Widget.style(className: String? = null, init: (Style.() -> Unit)? = null): Style