UNPKG

@allgemein/eventbus

Version:
37 lines 1.56 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.subscribe = subscribe; exports.unsubscribe = unsubscribe; const EventBusMeta_1 = require("../bus/EventBusMeta"); const lodash_1 = require("lodash"); function subscribe(eventClass, configuration = 'default', configurationOptions = null) { return function (object, methodName, value) { // can be used as annotation or directly for a special object const target = value && object.constructor ? object.constructor : object; if ((0, lodash_1.isFunction)(eventClass)) { EventBusMeta_1.default.$().register({ type: 'subscribe', target: target, methodName: methodName, eventClass: eventClass, configuration: configuration, configurationOptions: configurationOptions }); } else { const options = eventClass; EventBusMeta_1.default.$().register({ type: 'subscribe', target: target, methodName: methodName, eventClass: options.eventClass, configuration: options.configuration ? options.configuration : 'default', configurationOptions: options.configurationOptions ? options.configurationOptions : null }); } }; } function unsubscribe(target, eventClass, method) { EventBusMeta_1.default.$().unregister(target, eventClass, method); } //# sourceMappingURL=subscribe.js.map