stacked 3.4.0
stacked: ^3.4.0 copied to clipboard
The framework to build testable, scalable and maintainable flutter apps
3.3.0 - 2023-05-26 #
3.2.6 - 2023-05-16 #
3.2.3 - 2023-04-30 #
3.2.0 - 2023-03-15 #
3.1.1 #
- Added fix to extensible classes for ListenableServiceMixin
3.1.0+3 #
- Updates promotional banner
3.1.0+2 #
- Fixes old doc link
3.1.0+1 #
- Updates banner correctly
3.1.0 #
Features #
New CLI π₯ Check it out in the Docs
- Fixes the listenable and reactive service late initialisation error
- Deprecates
ReactiveServiceMixin - Deprecates
ViewModelBuilderWidgetin favour ofStackedView - Deprecates
HookViewModelWidgetin favour ofStackedHookView - Deprecates
fireOnModelReadyOncein favour offireOnViewModelReadyOnce - Deprecates
onModelReadyin favour ofonViewModelReady - Adds
listenersCounttoListenableServiceMixin - Updates ViewModels to use
viewModelinstead ofmodel - Makes setFormStatus as NOT required override
- Adds a better named
rebuildUifunction to replacenotifyListeners - Renames ViewModelBuilderWidget to StackedView
- Updates BuilderWidgetExampleView
3.0.1 #
- Add onDispose method to ViewModelBuilderWidget
3.0.0+1 #
- Replace the old
ReactiveValuesapproach withnotifyListeners()when using theReactiveServiceMixinin readme
3.0.0 #
- Passes generic argument to
DataStateHelper - Uses
FormStateHelperfor theFormViewModel - Adds
BusyAndErrorStateHelperto theBaseViewModel - Refactor
BaseViewModelby extracting the different functionalities to mixins. - Remove the inconsistency between the
BaseViewModelandFutureViewModel,StreamViewModelwhen setting the error, data values. - Now we have three mixins that can be mix with any viewmodel and they are:
FutureRunnerHelperthat hasrunBusyFutureandrunErrorFuturefunctions.MessageStateHelperthat adds message property to the viewmodel.DataStateHelperthat adds data property to the viewmodel.FormStateHelperthat gives the flexibility to mixin the form functionality with the any other view model.IndexTrackingStateHelperthat give the flexibility to mixin the index tracking in a bottom navigation bar any other view model.
2.3.15 #
- Rename
SelectorViewModelBuilderWidgetandSelectorViewModelWidgetsimilar toViewModelWidget
2.3.14 #
- Adds
SelectorViewModelBuilderandSelectorViewModelBuilderWidget
2.3.13 #
- Adds Message state functionality for view models
2.3.10 #
- Fixes issues on navigation
2.3.9 #
- Pump stacked_shared version
- Update example app
2.3.8 #
- Remove duplicate code and Clean up
2.3.7 #
2.3.6 #
- Reverts 2.3.4
2.3.5 #
- Use the stacked_shared package to expose the stacked_annotation
2.3.4 #
- Updates MultipleStreamViewModel to take generic type for key
2.3.3+1 #
- Updates Example's kotlin version to 1.4.10
- Updates Example's Android Embedding to Version 2
- Updates Example's CompileSdk to 31
2.3.3 #
- Returns a null value for catchError handler when using FutureViewModel
2.3.2 #
- Reverts 2.3.1
2.3.1 #
- Handles the futureToRun viewmodels with try/catch and not catchError function
2.3.0 #
New Feature: Adds per field validation #
-
A setValidationMessage will now be generated for each field for you to set and use similar to the global validation message that was used before
-
Breaking changes on
FormViewModelshowValidationβshowValidationMessage
2.2.8 #
- Adds
disableReleaseConsoleOutputto the logger annotation to disable console output in release mode
2.2.7+1 #
- Upgraded the dependency on
providerto 6.0.0
2.2.7 #
- Fixes non-reactive
ViewModelBuilderWidget
2.2.6 #
- Optimized skeleton loader to be dynamic
2.2.5 #
- Added IgnorePointer to Skeleton Loader Widget
2.2.4 #
- Added Skeleton Loader Widget to show a shimmer when data is loading
- Added skeletonData on viewmodels for busy data values
2.2.3 #
- Added ability to pass parameter to factories
Add service to
FactoryWithParaminStackedAppand annotate paramaters with@factoryParamwhich needed to be passed in the Factory constructor - Improved error setting base functionality
2.2.2 #
- Added view model argument to
ViewModelBuilderon methodonDisposecallback
2.2.1 #
- Replaced
dart:iowithuniversal_io
2.2.0 #
- Fixes nullable type generation issue on
@PathParamand@QueryParam
2.1.9 #
- Added ability to pass custom logger outputs to MultiLoggerOutput
2.1.8 #
- Fixes
ReactiveServiceMixinin Services to handleChangeNotifierupdates
2.1.7 #
- updates
get_itto the latest
2.1.6 #
Environmentsnow will be automatically registered which eliminates the need to callregisterEnvironmentmanually if generatedsetupLocatorwasn't used
2.1.5 #
- Added functionality to supply custom
locatorandsetupLocatornames.
2.1.4 #
- Removes forced nullable type
2.1.3 #
- Added
Environmenton Dependency Injection
2.1.2 #
- Added return type for
runBusyFutureandrunErrorFuture
2.1.1 #
- Exports Transition builders
2.1.0 #
- Adds annotations to allow the user to generate a logger for their app
2.0.4 #
- Updates the extended router functionality to use non null routes
2.0.3+1 #
- Exposed
buildAdaptivePageRoute,misTypedArgsRouteanddefaultUnknownRoutePagefunctions to outer world - Changed
OutlineButtontoOutlinedButton(removed deprecated code)
2.0.3 #
- Fixed where anyObjectsBusy was always true in MultipleFutureViewModel.
2.0.2 #
- Made ViewModel variable naming scheme consistent.
ViewModel viewModelis now preferred.
2.0.1 #
- Adds ReactiveValue and ReactiveList for reactive functionality
2.0.0 #
- Null safety migration complete and ready to be used!
2.0.0-nullsafety.3 #
- Fixes annotation to allow for date selection
2.0.0-nullsafety.2 #
- Adds back
resolveUsingfunction to the annotations
2.0.0-nullsafety.1 #
- Migrate to null-safety. We will remove null safety when we iron out all the issues
1.9.8 #
- Exposes
RouteGuardthrough stacked as well
1.9.7 #
- Adds
resolveUsingfunction that can be used for singleton type dependency registrations.
1.9.6 #
- Exports the
ExtendedNavigatorfor nested navigation - Update provider in stacked to 5.0.0
- Revert nonReactive update update for stacked
- Update get_it to 6.0.0
- Will revert fix for issue that came with disposing a nonReactive Viewmodel.
1.9.5 #
- Adds the asType property into the locator types
1.9.4 #
- Adds fix for issue #171
1.9.3 #
- Adds onDispose functionality
1.9.2 #
MAJOR UPDATE: FORMS!!! #
- Adds brand new form first party support and form generation functionality
1.9.1+2 #
- Fix null error from locator
1.9.1+1 #
- Adds export for
StackedLocator
1.9.1 #
- Adds
StackedLocatorto remove the apps dependency from GetIt. It's a thin wrapper around theGetItobject implementation
1.9.0 #
Big Update! This version of stacked aims to reduce the boiler plate required to setup a stacked application. We introduce the annotation that are used by the stacked_generator to generate the router and locator setup functionality.
1.7.7 #
1.7.6 #
- Adds
fireOnceproperties to theViewModelBuilderWidget
1.7.5 #
- Adds rethrow capability to the
FutureViewModel
1.7.4 #
- Makes index tracking viewmodel a reactive viewmodel so it can react to services
1.7.3+2 #
- REVERT: Use hascode for hasErrorForObject function instead of value directly
1.7.3+1 #
- Use hascode for hasErrorForObject function instead of value directly
1.7.3 #
- Removes old error handling code for specialty viewmodels
1.7.2 #
- Adds
RxSetto the reactive list of functionalities.
1.7.1+1 #
- Adds
initialiseSpecialViewModelsOnceto the readme.
1.7.1 #
- Adds
initialiseSpecialViewModelsOnceproperty to set initialise function call to only fire once.
1.7.0+1 #
- Adds more migration notes
1.7.0 [BREAKING CHANGES] #
Migrate from 1.6.1 -> 1.7 #
-
hasError(key) -> error(key) for multiple ViewModel
-
Adds
IndexTrackingViewModelfor help with BottomNavBar -
Adds better error handling for
BaseViewModel
1.6.1+1 #
- Adds
fireOnModelReadyOnceto readme
1.6.1 #
- Adds
fireOnModelReadyOnceto be used together withdisposeViewModelto ensure a viewmodel that's already been constructed doesn't call onModelReady every time it's shown on screen.
1.6.0+1 #
- Adds onCancel call for the MultiStreamViewModel
1.6.0 #
- Adds dispose protection when calling notifyListeners.
1.5.8 #
- Adds
anyObjectsBusytoFutureViewModelsto report if there are any futures's that are still running
1.5.7+1 #
- fixed busy state hash code problem
1.5.7 #
- Exposes notifyListeners to the service for rebuilding ViewModels that are listening
1.5.6+1 #
- added back busy to false state when busy future is complete without an error
1.5.6 #
- runBusyFuture now sets itself to not busy when exception is thrown
- runBusyFuture has parameter throwException which will rethrow the caught exception to the caller
1.5.5+1 #
- Reverted commit below
1.5.5 #
- Added fix to set busy back to false when the future throws an exception
1.5.4+1 #
- Added
MultipleStreamViewModelexample into the readme
1.5.4 #
- Made specialty viewmodels reactive as well so you can supply reactive services as an override
1.5.3 #
- Expose subscription for single stream viewmodel and getSubscriptionForKey for multiple stream viewmodel.
1.5.2 #
- Added
onDatafunction intoFutureViewModelthat can be overridden
1.5.1 #
- Ensure model is busy as soon as runFuture notifyListeners for the first time
1.5.0 #
- Adds functionality to support
RxList
1.4.3 #
- Added functionality to save the error thrown by the calling future
1.4.2 #
- Added
getParentViewModelfunctionality for accessing a provided ViewModel above in the widget tree
1.4.1+2 #
- Busy for Object bug fix in base viewmodel
1.4.1+1 #
- Change log styling updates
1.4.1 #
- Added the
constkeyword to the following widget constructors:ViewModelBuilder.nonReactive,ViewModelBuilder.reactive, andViewModelWidget
1.4.0+1 #
- [Breaking] Moved private files into src folder
1.4.0 #
- Breaking Moved private files into src folder
- Fix imports, import visibility and changed file names.
1.3.4 #
- Added DynamicDataSource funtionality to swap streams at runtime
1.3.3 #
- Removed the hooks dependency and moved code to stacked_hooks package
1.3.2 #
- Fixed StreamViewModel functionality
1.3.1 #
- Added the HookViewModelWidget to use the ViewModelWidget with flutter_hooks
1.3.0+3 #
- Pass type to the base models of ViewModel
1.3.0+2 #
- ReadMe updates
1.3.0+1 #
- onModelReady taken out of post frame callback
1.3.0 #
- Adds Mulitple streams ViewModel Builder
1.2.4 #
-
onModelReady updates
-
onModelReadyis not called every time the model is constructed -
onModelReadyis called after the current frame is rendered by usingpostFrameCallbackinternally.
1.2.3 #
- Added BuildContext to ViewModelBuilder for WidgetBuilder
1.2.2+1 #
- Updated ChangeLog order
1.2.2 #
- Moved stream subscription to after ViewModel construction
1.2.1+2 #
- Description Update 2
1.2.1+1 #
- Description Update
1.2.1 #
- Added ViewModelBuilderWidget
- The
ViewModelBuilderWidgetremoves boiler plate code for using aViewModelBuilderto provide the View->ViewModel rebuild functionality.
1.2.0 #
- Added FutureViewmodel
- The
FutureViewModelremoves boiler plate code for a ViewModel that depends on data returned from a Future.
1.1.0 #
- Added StreamViewModel
- The
StreamViewModelremoves boiler plate code for listening to a Stream and notifying listeners as the data comes in.
1.0.3+3 #
- Added isBusy to BaseViewModel
1.0.3+2 #
- Added Migration from provider_architecture to stacked
1.0.3+1 #
- Updated Readme
1.0.3 #
- Adds back setBusy call to BaseViewModel
1.0.2 #
- Reactive Viewmodel updates
- Instead of depending on the user to call set reactive services we require an override to provide a list of services
1.0.1 #
- Readme instruction updates
1.0.0 #
- First release of the architecture containing all the initial required parts to build a full application.