- separated View and ViewBuilder classes to separate view's building and reading process
- add .updateAllViews method to denormalizer
- fix view callback binding
- separate view .load and .build functions (load use only snapshots, build use events increment as well)
- new version of setup methods for both repository and storage
- fixed global variable bug in views parallel processing
- fix view purging and storing order so only new snapshot is kept in database (previous one is purged)
- fix view saving
- fix view deleting
- create storage in view on runtime, to fix prematurely created singleton instance
- fetch views by changed string keys
- refactoring internals of couchdb utility
- refactoring couch repository and couch storage to reuse new internal implementation of couchdb utility
- dropped couchRepository.getInstance and couchStorage.getInstance
- introduced .createRepository and createStorage methods, which are the ones exported by according modules to better ensure only one instance is created.
- first piece of code migrated to nano
- view purge previous snapshot while new is taken, so it optimize database usage
- fix the view store trigger conditions, disable view store if snapshots = false properly
- fix the error response while view was loaded from the storage
- export denormalizer
- view .load() function take reload parameter, allowing to choose if snapshots should be used or the view should be fully reconstructed from event store
- view take snapshots by default
- added first draft of denormalizer component. Its responsibility would be to manage view updates, so its step to ofload view building to separate concept from view read model
- chouch repository trigger callback on storeEvent() call
- event directly applied to aggregate when emited, so current in memory instance is updated
- repository.on() now can be used to register handlers for events, which get triggered each time speicic event occurs