0.2.0 Beta (2019-07-25)
This version introduces some fundamental changes to how NgRx Auto-Entity is initialized, additional
features and functionality, as well as some breaking changes to facade properties. Many of these changes
further reduce the already minimal boilerplate with Auto-Entity.
Documentation
Extensive documentation, examples and a proper quickstart guide have been added to our GitBook.
Platform Update
This release involves a major update to the minimum required Angular and NgRx versions. In order to leverage
updated functionality from both libraries, as well as begin phasing in improved use of TypeScript, both platforms have been updated to the 8.x versions. We apologize for any inconvenience this may cause, however we do believe the changes and future improvements allowed by making this change will be welcome.
- angular: The required version of @angular has been bumped up to 8.0
- ngrx: The required version of @ngrx has been bumped uop to 8.0
Features
- actions: Added multiple entity selection and deselection actions
- effects: Added new
ExtraEffectsclass containing selection and clearing related effects - operators: Added new operators to handle selection and clearing related actions
- reducer: Updated meta reducer to handle new multiple entity selection and deselection
- facade: Updated facade base class to include support for multiple entity selections
- module:
NgrxAutoEntityModulewill now automatically provideautoEntityMetaReducerinMETA_REDUCERS - module:
NgrxAutoEntityModulewill now automatically provideEntityEffectsandExtraEffects - module Must now call
.forRoot(()or.forFeature()as appropriate to import module - module: A new
.forRootNoEntityEffects()can be used instead of.forRoot()to disable auto-provisioning of entity effects (keeps extra effects) - module: A new
.forRootNoEffects()can be used instead of.forRoot()to disable auto-provisioning of all effects
Bug Fixes
- module: Implemented
.forRoot()and.forFeature()calls onNgrxAutoEntityModuleto fix broken support for lazy loaded modules - effects: Added missing effects for select/deselect actions to dispatch selected/deselected counterparts
- service: Updated
NgrxAutoEntityServiceto support aggregate Injector tree so that models/entity services in lazy loaded modules will be found by root entity service - util: Changed
interface ITModelType<TModel>to atype IModelType<TModel>to better conform to TypeScript best practices
Breaking Changes !!
- facade: Updated facade base class to include a $ postfix on all streaming properties
- module: Module must now be imported with
.forRoot()or.forFeature() - reducer: The module now leverages NgRx 8's META_REDUCERS token and manual inclusion of meta reducer by developer is no longer required. Remove autoEntityMetaReducer from your meta reducers!