UNPKG

@openhps/core

Version:

Open Hybrid Positioning System - Core component

26 lines 662 B
import { Service } from '../Service'; export class ServiceProxy extends Service { get(target, p) { if (p === 'target') { return target; } else if (p === 'constructor') { return target.constructor; } else if (typeof target[p] === 'function') { return this.createHandler(target, p); } return target[p]; } set(target, p, value) { target[p] = value; return true; } createHandler(target, p) { const key = p; return (...args) => { if (key !== 'emit' && key !== 'emitAsync' && key !== 'on' && key !== 'once') { target.emit(key, ...args); } return target[p](...args); }; } }