surrogate
Version:
Object method hooks made easy
21 lines • 796 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.OptionsHandler = void 0;
const lib_1 = require("./lib");
class OptionsHandler {
constructor(combinedOptions = {}) {
this.combinedOptions = combinedOptions;
const options = this.mergeOptions(combinedOptions);
Object.entries(options).forEach(([key, value]) => {
Object.defineProperty(this, key, {
enumerable: true,
value,
});
});
}
mergeOptions({ handler = {}, global = {}, }) {
return Object.assign(Object.assign(Object.assign(Object.assign({}, lib_1.defaultMethodOptions), lib_1.defaultGlobalOptions), global), handler);
}
}
exports.OptionsHandler = OptionsHandler;
//# sourceMappingURL=index.js.map