arch/base/base library

Classes

BaseInstancePart<Input, T extends MvvmInstance>
Base class for parts Parts are smallest mvvm instances They do not have state or dependencies But they can receive events and contain other parts inside Part also contain reference to parent instance and root parent instance of parts tree You can specify input type for part Parts must be annotated with instancePart annotation You also can execute requests and cancel them automatically when part will be disposed with ApiCaller.executeAndCancelOnDispose method
BaseInteractor<State, Input>
Main class to extend to create interactor
BaseWrapper<Input>
Base class that wraps logic for working with third party dependency
EventBus
Basic Event bus implementation
EventBusReceiver
Base class that subscribe to event bus events
MvvmInstance<T>
Base class for mvvm instance
MvvmInstanceConfiguration
Model class describing configuration for basic mvvm instance
Observable<T>
Base class for observable object
ObservableChange<T>
Simple model class describing object change - next and previous values
RestrictedInstancePart<Input, T extends MvvmInstance>
BaseInstancePart that applies to given MvvmInstance subtype
StateFulInstanceSettings
Settings for stateful instance. Contain state restore flags and state id
StateStream<T>
Wrapper class for state updates for StateFulInstanceSettings
Store<State>
Store is providing access to State for current containing class and EventBus
StoreChange<Value>
Class to hold store change
SyncFuture
Helper class to call any Future with addition of timeout handling
UMvvmApp<NavigationInteractorType extends BaseNavigationInteractor<dynamic, dynamic, dynamic, RoutesBase, RoutesBase, RoutesBase, dynamic, dynamic, dynamic, BaseDeepLinksInteractor>>
Main class for UMvvm application
UniversalInstancePart<Input>
BaseInstancePart that applies to every MvvmInstance subtype

Mixins

ApiCaller<Input>
Mixin containing logic to collect requests in collection and cancel them in a batch when MvvmInstance.dispose called
StatefulMvvmInstance<State, Input>
Base class for storing data
SynchronizedMvvmInstance<Input>
Base class for executing operations in queue, enabling to sync operations if needed

Typedefs

EventBusSubscriber<T> = void Function(T event)
LocaleCacheGetDelegate = String? Function(String name)
LocaleCachePutDelegate = Future<bool> Function(String name, String data)
StateUpdater<State> = void Function(State state)
StoreMapper<Value, State> = Value Function(State state)