accessor-log-proxy
v1.1.0
Published
Access Proxy for an Object.
Downloads
87
Readme
accessor-log-proxy
Access Proxy for an Object.
Feature
- Logging access for object property
Install
Install with npm:
npm install accessor-log-proxy
Usage
import { createProxy } from "accessor-log-proxy";
const object = {
a: {
b: {
c: 123
}
}
};
const { accessSet, proxyObject } = createProxy(object);
// Accecs
proxyObject.a.b.c
// Log
console.log(accessSet); // => Set{ "a", "a.b", "a.b.c" }
Browser
const { createProxy } = await import("https://cdn.skypack.dev/accessor-log-proxy");
const object = {
a: {
b: {
c: 123
}
}
};
const { accessSet, proxyObject } = createProxy(object);
// Accecs
console.log(proxyObject.a.b.c);
// Log
console.log(accessSet); // => Set{ "a", "a.b", "a.b.c" }
Options
export type createProxyOptions = {
log?: (keyStack: string[], value?: any) => void;
// include prototype property like "hasOwnProperty"
// default: true
includePrototypeProperties?: boolean;
};
Changelog
See Releases page.
Running tests
Install devDependencies and Run npm test
:
npm test
Contributing
Pull requests and stars are always welcome.
For bugs and feature requests, please create an issue.
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request :D
Author
License
MIT © azu