1.0.2 • Published 2 years ago

@udia/deep-proxy v1.0.2

Weekly downloads
-
License
AGPL-3.0
Repository
github
Last release
2 years ago

@udia/deep-proxy

udia-deep-proxy-npmjs-badge udia-deep-proxy-build-test-badge

Function for creating deep object proxy.

See also JavaScript Proxy object

Example

npm i @udia/deep-proxy
# or
yarn add @udia/deep-proxy
import deepProxy from '@udia/deep-proxy'

const stub = { attr: { foo: 'bar' } }

const stubProxy = deepProxy(stub, {
  set(root, target, path, value, receiver) {
    setStub(root, target, path, value, receiver)
    console.log('==== property set called!')
    return true
  },
  deleteProperty(root, target, path) {
    delPropStub(root, target, path)
    return true
  },
})

stubProxy.attr.foo = 'barrio'
// ==== property set called!

License

AGPL-3.0

Copyright (C) 2021-2022 Alexander Wong <alex@udia.ca>

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.
1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago