Releases: briebug/ngrx-auto-entity
0.3.1 Beta (2020-01-07)
Bug fix release! We apologize for any inconvenience the v0.3.0 release may have caused. We introduced
a correlation Id into our actions, and relied on uuidv4
to handle their generation. Turned out, uuidv4
just recently went through a breaking change, and the default import was removed. This caused problems,
dependent upon which version of uuidv4 was used by the application using ngrx-ae.
We have replaced uuidv4 with internal code. Fast, small uuid function acquired from the following gist:
https://gist.github.com/LeverOne/1308368
Bug Fix
- uuidv4: Removed in favor of small, fast built in function
0.3.0 Beta (2020-01-07)
This release adds the correlationId
property (defaulting to uuid()
) to EntityAction
which should help in tracking correlated actions.
Correlated actions are usually sets of request/success/failure actions, such as Create
, CreateSuccess
, and CreateFailure
.
Features
- correlated actions: Add
correlationId
property toEntityAction
for tracking correlated actions.
Package
- dependencies: Add peer dependency on uuidv4
Breaking Changes !!
- uuidv4 will need to be added to your
package.json
as a dependency
Security Updates
- handlebars bumped to 4.5.3
0.2.8 Beta (2019-11-19)
This release restores a missing action to the library public interface index.
Bug Fixes
- actions: Add clear action to exported actions of public interface
0.2.7 Beta (2019-10-13)
This release restores a missing selector and adds a new factory function for use with
custom effects creation.
Features
- actions: Add fromEntityTypes factory function for multi-entity multi-action effects filtering
Bug Fixes
- selectors: Add createdAt facade getter and corresponding selectors
0.2.6 Beta (2019-09-05)
This release resolves two issues with multiple-entity deselections due to bugs in the
reduction of deselectMany and deselectAll.
Features
0.2.5 Beta (2019-08-12)
This release add new actions (and related effects, reducers, selectors & facade features) for
edit and change tracking as well as adding more entities to the current set selection.
Features
- edit: Add new
Edit
,Change
,EndEdit
actions and related functionality - selection: Added new
selectMore
andselectMoreByKeys
actions and related functionality
0.2.2 Beta (2019-08-07)
This release focuses on reducing the intrinsic package size and total package+dependency size of
the library. Total library size is now ~10k or so smaller than before. Third party dependency on
changeCase, which included a lot of casing functionality this library did not directly require, has
been removed in favor of integrated case conversion code. Further size optimizations may be made
possible in the future with some additional internal restructuring.
For the most compatibility with future internal (but otherwise non-breaking) changes, make sure
you are importing from @briebug/ngrx-auto-entity and not from child paths within the library!
Package
- dependencies: Remove direct dependency on changeCase, integrate functionality
Features
- utils: Added a new
buildSelectorMap
utility function - utils: Added a new
buildFacade
utility function
Cleanup
- operators: Reduce duplication of code by pulling out error handling to function
- utils: Reduce duplication of code by pulling out selector map creation to function
- actions: Reduce duplication of code by moving common lines to EntityAction base type
- actions: Reduce duplication of code by moving entity action type checking into function
0.2.1 Beta (2019-07-28)
Bug Fixes
- service: Remove legacy reference to Ramda
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
ExtraEffects
class 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:
NgrxAutoEntityModule
will now automatically provideautoEntityMetaReducer
inMETA_REDUCERS
- module:
NgrxAutoEntityModule
will now automatically provideEntityEffects
andExtraEffects
- 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 onNgrxAutoEntityModule
to fix broken support for lazy loaded modules - effects: Added missing effects for select/deselect actions to dispatch selected/deselected counterparts
- service: Updated
NgrxAutoEntityService
to 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!
0.1.1 Beta (2019-06-20)
Bug Fixes
- operators: Restore missing operators for
many
alts of: Load, Create, Replace, Delete - effects: Restore missing effects for
many
alts of: Load, Create, Replace, Delete - service: Restore missing service methods for
many
alts of: Load, Create, Replace, Delete - api: Move AOT-compatible export bundle into
index.ts
, re-export index frompublic_api.ts
, to improve auto-import functionality in IDEs
Testing
- reducer: Add additional test cases for
many
alts
Broken Features !!
- features: Feature state via
buildFeatureState
will not function at runtime due to issues locating lazy moduleInjector
instances