rename package folders

This commit is contained in:
Philipp Kühn
2020-03-30 10:42:59 +02:00
parent 18c5164af9
commit 14421a11fa
35 changed files with 2 additions and 2 deletions

View File

@@ -0,0 +1,31 @@
export default function magicMethods(clazz: any) {
const classHandler = Object.create(null)
classHandler.construct = (target: any, args: any) => {
const instance = new clazz(...args)
const instanceHandler = Object.create(null)
const get = Object.getOwnPropertyDescriptor(clazz.prototype, '__get')
if (get) {
instanceHandler.get = (target: any, name: any) => {
if (typeof name !== 'string') {
return
}
const exists = name in target || name.startsWith('_')
if (exists) {
return target[name]
} else {
return get.value.call(target, name)
}
}
}
instance.proxy = new Proxy(instance, instanceHandler)
return instance.proxy
}
return new Proxy(clazz, classHandler)
}