rivertion 4.2.0
rivertion: ^4.2.0 copied to clipboard
A Flutter state management library that bridges the gap between traditional state holders and a modern, reactive consumption model.
4.2.0 #
- feat: added source extension for
TabController,ExpansibleControllerandFocusNode - feat: expose source extensions for
TextEditingValue,Object?,Iterable<T> - chore: improved performance for
reactive_formssources
4.1.1 #
- chore: added a more informative
toString()override forSourceNotifierandSourceControllerto aid in debugging. - chore: promoted
select,selectWith, andwhereto be extensions directly onSourceListenablefor a more consistent and discoverable API. Deprecated older, less direct extension methods onStateStreamable,StateNotifier, andValueListenable. - chore: in
reactive_formsextensions,selectwas renamed tosourceByto better reflect its purpose and align with the library's naming conventions.
4.1.0 #
Added
- Added
onErrorandonDonecallbacks toref.listenStreamandref.listenStreamManualfor more comprehensive stream handling.
4.0.0 #
BREAKING: This version introduces a major refactoring of the widget API to align more closely with Riverpod's patterns and improve usability.
SourceScopeis nowSourceRef: TheSourceScopeobject, previously passed toSourceBuilderand available inSourceState, has been replaced withSourceRef. This change makes the API more consistent with the broader ecosystem.- New Implemented
SourceListenableandSourceContainer: To use directlySourceControllerandSourceNotifieron source widgets - New
watchSourceMethod: Thescope.watch()method has been renamed toref.watchSource()to clarify that it is specifically for watching RivertionSourceobjects. - Riverpod Interoperability with
SourceWidgetRef: TheConsumerScopehas been replaced bySourceWidgetRef, an extension type that implements bothSourceRefand Riverpod'sWidgetRef. This allows for direct calls to bothref.watchSource()(for Rivertion sources) andref.watch()(for Riverpod providers) from the samerefobject. - API Cleanup: Renamed
scope.listentoref.listenSource,scope.listenManualtoref.listenSourceManual,scope.subscribetoref.listenStream, andscope.subscribeManualtoref.listenStreamManualfor consistency.
3.1.0 #
- Added ability to filter states emitted by source using
Source.wheremethod - Formatted code
- Fixed incorrect templates
3.0.0 #
BREAKING: Complete rewrite of the library.
- Introduced a new core concept:
Source, a unified reactive stream for state consumption. - Replaced previous state management approach with
SourceWidgetandSourceBuilderfor a consistent, Riverpod-inspired API.
Added
- From
ListenabletoSource: Convert anyListenable(e.g.,ValueNotifier,ChangeNotifier) into a reactiveSourceusing.sourceand.sourceBy()extensions. - Code Generation: Added a command-line tool to generate boilerplate for interoperability with popular packages.
- Bloc Support: Added generated code to convert
BlocandCubitinstances into aSourcefor consumption inSourceBuilder. - Riverpod Interop: Added generated
SourceConsumerWidgetto use Riverpod providers inside aSourceWidget. - Reactive Forms Interop: Added generated extensions to bind
Sources toreactive_formscontrols. - Standalone State: Included
SourceControllerfor simple, self-contained state management.