flock library

Classes

CacheItem
ListTail<T>
Projectable
Store.project interface
Publishable
Store.publish interface
Store
An Store records all events happened in app and acts as the single source of truth.
StoreBuilder<P>
StoreForEnhancer
Store interface for store enhancers.
StoreProxyBase
UseCaseCreated
UseCaseEnded
UseCaseEvent
UseCaseEventID
UseCaseID
UseCaseMap
UseCaseUpdated

Constants

chars → const String
"abcdefghijklmnopqrstuvwxyz0123456789"

Properties

toAllUseCaseEvents Projector<QueueList<UseCaseEvent>>
read / write
toUseCaseMap Projector<UseCaseMap>
read / write

Functions

batchSubscribe([CallSubscribers scheduleSubscribers ]) StoreEnhancer
combineStoreEnhancers(List<StoreEnhancer> enhancers) StoreEnhancer
combine multiple store enhancers into one enhancer
createStore({List prepublish: const [], List<StoreEnhancer> enhancers: const [] }) StoreForEnhancer
Create a Flock Store.
emptySideEffect(Stream<Object> events, Store store) → Stream<Object>
printEventOnPublish([String tag = '' ]) StoreEnhancer
projectToStream<P>(Projector<P> projector) → Stream<P> Function(Store)
publishFilter(PublishFilterCreator filter) StoreEnhancer
withSideEffect(SideEffect sideEffect) StoreEnhancer
withUseCaseEffects(UseCaseEffectCreator createUseCaseEffect) StoreEnhancer

Typedefs

CallSubscribers(dynamic ()) → dynamic
Projector<P extends Object>(P prev, List event, Projectable projectable) → P
A Projector calculates view derived from events. prev is nullable Hint: an object with a call() method will also work.
PublishFilter(Object) → bool
PublishFilterCreator(Projectable) PublishFilter
SideEffect(Stream<Object> events, Store store) → Stream<Object>
StoreCreator(Iterable<Object> prepublish) StoreForEnhancer
Store creator for middleware.
StoreEnhancer(StoreCreator inner) StoreCreator
StoreEnhancer are called "store enhancer" in Redux. They wrap store and enable features like time travel.
Subscriber() → void
Callback when Store is updated.
Unsubscribe() → void
Stop receiving events
UseCaseEffect(Stream<Object> events, Store store) → Stream<Object>
UseCaseEffectCreator(UseCaseCreated spec) UseCaseEffect
flock 0.7.0