rewrite without persistence
remove deprecated files
summary and examples
initialization examples
reorder examples
additional comments and removed unnecessary vars
merge data into an instance with the same options as initialization
Modinha.prototype.initialize and .merge turned out to be identical functions. Replaced initialize with merge.
added merge example
updated main in package; added "first" option to Modinha.initialize
Static serialize and deserialize methods stringify and parse JSON. These can be overridden on specific models. For example, we might want to use compression or a different format like CSV.
serialization/deserialization and model augmentation examples
Modinha.define optionally takes a "collection" argument
example of collection argument in Modinha.define
override default uniqueId property name in schema
Modinha.project(source,target,projection) provides the reverse of mapping
Renamed Modinha.maps and map option to mappings and mapping, respectively. This is to avoid conflation with [].map().
Post-extend hook enables mixins to mutate the model after extension. This is useful for generating methods based on the schema, etc.
instance method for projection
optionally skip default values