Provides an ormojo backend that creates materialized views of another data store.
A View
is an ormojo.Backend
specialized to keep a collection of ormojo.BoundInstance
s matching an associated ormojo.Query
.
View
s areObservable
-- clients may observe theView
to update UI, for instance.
A Source
is an abstract endpoint from which data flows. The local cache backing a materialized view would be a Source
, as would the remote database the View
is ultimately pulling from.
A Stream
is an asynchronous flow of content from a Source
to a View
, or another Source
. Streams
are also Observable
s.
A Store
is a simple key-value store used as a cache by the View
. Generally this will be an in-memory cache, though it doesn't need to be.
Your runtime or transpiler toolchain will need to support the following JavaScript features in order to build and run this library:
Object.defineProperty
Object.assign
Map
Observable
. We use any-observable to select an appropriate observable library; you may register your preferred library in advance if you want a particular implementation.
All of these polyfills are available in core-js