1.0.2 • Published 6 years ago

@slikts/deepproxy v1.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
6 years ago

Deep Proxy

Travis Coveralls

A tiny library to recursively wrap an object and all its sub-objects with ES2015 Proxy.

Installation

npm install --save @slikts/deepproxy

Usage

import { deepProxy } from "@slikts/deepproxy"

const a = deepProxy({ b: { c: 1 } }, {
  get(target, key) {
    return target[key] ? target[key] : 123;
  }
});

a.b; // -> { c: 1 }
a.foo; // -> 123
a.b.c; // -> 1
a.b.foo; // -> 123

How it Works

The target object is wrapped with an additional Proxy that traps property access and also wraps any values of object type. The created proxies are memoized to avoid re-creating them for the same target and handler.

License

MIT

Author

slikts dabas@untu.ms

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago