potok.v2.core
Stream & Events based state management toolkit for ClojureScript.
data-event
(data-event t)
(data-event t d)
Creates an event instance that only contains data.
emit!
(emit! store event)
(emit! store event & more)
Emits an event or a collection of them into the default store.
If you have instanciated your own store, this function provides 2-arity that allows specify a user defined store.
input-stream
(input-stream store)
Returns the internal input stream of the store. Should be used by third party integration that want use store as event bus not only with defined events.
store
(store)
(store {:keys [on-error on-event state validate-fn], :or {on-error handle-error, validate-fn map?}, :as params})
Start a new store.
This function initializes a new event processing stream loop and returns a bi-directional rx stream that should be used to push new events and subscribe to state changes.
UpdateEvent
protocol
members
update
(update event state)
Apply a transformation to the state.