jam-cloud/web/app/assets/javascripts/jamClientProxy.js

28 lines
765 B
JavaScript
Raw Permalink Normal View History

(function (context, $) {
"use strict";
context.JK = context.JK || {};
context.JK.jamClientProxy = function (obj) {
const logger = context.JK.logger;
//logger.info("*** JamClient Proxy instance initialized. ***");
return new Proxy(obj, {
get(target, prop) {
if (typeof target[prop] === 'function') {
return new Proxy(target[prop], {
apply: (target, thisArg, argumentsList) => {
logger.info('*** calling JK.jamClient.', prop, argumentsList);
return Reflect.apply(target, thisArg, argumentsList);
}
});
} else {
return Reflect.get(target, prop);
}
}
});
}
})(window, jQuery);