- Coerce namespace and key to property paths
- Supports assignment to deeply nested keys
assign('some.key.value', 'meow')
// before
// { 'some.key.value': 'meow' }
// after
// { some: { key: { value: 'meow' } } }
- correct use of property paths
- add methods to reset namespace
- track updates by version
- add version method
Connect
tracks changes by version
- Add cursor method
let space = ns.create('space');
let child = space.cursor('child');
let grandchild = child.cursor('grandchild');
grandchild.assign('fruit', 'tomato');
grandchild.select()
// { fruit: 'tomato' }
space.select('child.grandchild.fruit')
// tomato