asp library

Classes

Atom<T>
Extension to ValueNotifier by transparently applying functional reactive programming (TFRP).
AtomObserver
Tracker of all atom`s changes;
Reducer
The layer responsible for making business decisions to perform actions and modify Atoms;
RxBuilder
Listen for Atom changes present in the builder method.
builder: All Atom used in this function will be automatically signed and this function will be called every time the value of an Atom changes. filter: Filter reactions and prevent unwanted effects.
RxCallback
Used to assign effect functions that will react to the reactivity of the declared Atom, similar to the rxObserver function.
RxDisposer
Remove all listeners of rxObserver;
RxFuture<T>
The RxFuture is the reactive wrapper around a Future. You can use it to show the UI under various states of a Future, from pending to fulfilled or rejected.
RxList<T>
An RxList gives you a deeper level of observability on a list of values. It tracks when items are added, removed or modified and notifies the observers.
RxMap<K, V>
An RxMap gives you a deeper level of observability on a map of values. It tracks when keys are added, removed or modified and notifies the observers.
RxRoot
Responsible for propagating Atom values as a dependency of a child Widget.
RxRoot should be one of the first Widgets in the Flutter tree.
RxSet<T>
An RxSet gives you a deeper level of observability on a set of values. It tracks when values are added, removed or modified and notifies the observers.
RxStream<T>
The RxStream is the reactive wrapper around a StreamSubscription. You can use it to show the UI under various states of a Stream, from waiting to active, done or rejected.
RxValueListenable<T>
An interface for subclasses of Listenable that expose a value.
RxVoid
Void return
ValueListenable<T>
An interface for subclasses of Listenable that expose a value.

Enums

FutureStatus
RxFuture status values.
StreamStatus
RxStream status values.

Extensions

ContextSelectionExtension on BuildContext
Propagates the changes of the Atom placed in the body function in this widget.
To use this feature, you need to add RxRoot at the beginning of your application's Widget tree.
ListenableMergeExtension on Listenable
Merge Listenable objects.
RxFutureExtension on Future<T>
Convert a Future to RxFuture.
RxListExtension on List<T>
Convert a List to RxList.
RxMapExtension on Map<K, V>
Convert a Map to RxMap.
RxSetExtension on Set<T>
Convert a Set to RxSet.
RxStreamExtension on Stream<T>
Convert a Stream to RxStream.
ValueNotifierParse on ValueListenable<T>
Convert a ValueListenable to Atom.

Constants

rxVoid → const RxVoid
Void return

Functions

debounceTime<T>([Duration duration = const Duration(milliseconds: 500)]) PipeCallback<T>
Emits a notification from an Atom only after a specified period of time has passed without another source issuing.
distinct<T>() PipeCallback<T>
Skips data value if they are equal to the previous data value.
interval<T>([Duration duration = const Duration(milliseconds: 500)]) PipeCallback<T>
Emits a notification from an Atom after a given duration.
multiPipe<T>(List<PipeCallback<T>> pipes) PipeCallback<T>
Concat many pipes.
rxNext<T>(RxValueListenable<T> rx, {Duration timeLimit = const Duration(seconds: 10)}) Future<T>
Wait the next change of a Atom. The timeLimit is 10 seconds by default.
rxObserver<T>(T? body(), {bool filter()?, void effect(T? value)?}) RxDisposer
Listen for Atom changes present in the body.
body: All Atom used in this function will be automatically signed and this function will be called every time the value of an Atom changes. filter: Filter reactions and prevent unwanted effects.
effect: The body function generates a value that can be retrieved from the effect function.
throttleTime<T>([Duration duration = const Duration(milliseconds: 500)]) PipeCallback<T>
Emits a notification from an Atom, then ignores subsequent source values for duration milliseconds, then repeats this process.

Typedefs

PipeCallback<T> = void Function(T value, void emit(T value))
Used in Atom.pipe propetie