@schoolbelle/common
Version:
Demo library to showcase Angular packaging format
103 lines (95 loc) • 5.9 kB
JavaScript
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('rxjs/Subject')) :
typeof define === 'function' && define.amd ? define('@schoolbelle/common/services/pubsub', ['exports', '@angular/core', 'rxjs/Subject'], factory) :
(factory((global.schoolbelle = global.schoolbelle || {}, global.schoolbelle.common = global.schoolbelle.common || {}, global.schoolbelle.common.services = global.schoolbelle.common.services || {}, global.schoolbelle.common.services.pubsub = {}),global.ng.core,global.rxjs.Subject));
}(this, (function (exports,core,Subject) { 'use strict';
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
var PubsubService = (function () {
function PubsubService() {
this.publishEvent = new Subject.Subject();
}
Object.defineProperty(PubsubService.prototype, "onPub", {
get: /**
* @return {?}
*/ function () {
return this.publishEvent.asObservable();
},
enumerable: true,
configurable: true
});
/**
* @param {?} name
* @param {?} data
* @return {?}
*/
PubsubService.prototype.pub = /**
* @param {?} name
* @param {?} data
* @return {?}
*/
function (name, data) {
this.publishEvent.next({ name: name, data: data });
};
/**
* @param {?} name
* @param {?} fn
* @return {?}
*/
PubsubService.prototype.sub = /**
* @param {?} name
* @param {?} fn
* @return {?}
*/
function (name, fn) {
return this.publishEvent.subscribe(function (pub) {
if (pub.name === name)
fn.call(null, pub.data);
});
};
PubsubService.decorators = [
{ type: core.Injectable },
];
/** @nocollapse */
PubsubService.ctorParameters = function () { return []; };
return PubsubService;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
var PubsubServiceModule = (function () {
function PubsubServiceModule() {
}
/**
* @return {?}
*/
PubsubServiceModule.forRoot = /**
* @return {?}
*/
function () {
return {
ngModule: PubsubServiceModule,
providers: [PubsubService]
};
};
PubsubServiceModule.decorators = [
{ type: core.NgModule, args: [{},] },
];
return PubsubServiceModule;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
exports.PubsubService = PubsubService;
exports.PubsubServiceModule = PubsubServiceModule;
Object.defineProperty(exports, '__esModule', { value: true });
})));
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nob29sYmVsbGUtY29tbW9uLXNlcnZpY2VzLXB1YnN1Yi51bWQuanMubWFwIiwic291cmNlcyI6WyJuZzovL0BzY2hvb2xiZWxsZS9jb21tb24vc2VydmljZXMvcHVic3ViL3B1YnN1Yi5zZXJ2aWNlLnRzIiwibmc6Ly9Ac2Nob29sYmVsbGUvY29tbW9uL3NlcnZpY2VzL3B1YnN1Yi9wdWJzdWItc2VydmljZS5tb2R1bGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMvU3ViamVjdCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcy9PYnNlcnZhYmxlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMvU3Vic2NyaXB0aW9uJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFB1YnN1YlNlcnZpY2Uge1xuICBwcml2YXRlIHB1Ymxpc2hFdmVudCA9IG5ldyBTdWJqZWN0PHsgbmFtZTogc3RyaW5nOyBkYXRhOiBhbnkgfT4oKTtcbiAgY29uc3RydWN0b3IoKSB7fVxuICBnZXQgb25QdWIoKTpPYnNlcnZhYmxlPHsgbmFtZTogc3RyaW5nOyBkYXRhOiBhbnkgfT4ge1xuICAgIHJldHVybiB0aGlzLnB1Ymxpc2hFdmVudC5hc09ic2VydmFibGUoKTtcbiAgfVxuICBwdWIobmFtZSwgZGF0YSkge1xuICAgIHRoaXMucHVibGlzaEV2ZW50Lm5leHQoeyBuYW1lOiBuYW1lLCBkYXRhOiBkYXRhIH0pO1xuICB9XG4gIHN1YihuYW1lOiBzdHJpbmcsIGZuOiAoZGF0YTogYW55KSA9PiB2b2lkKTpTdWJzY3JpcHRpb24ge1xuICAgIHJldHVybiB0aGlzLnB1Ymxpc2hFdmVudC5zdWJzY3JpYmUocHViID0+IHtcbiAgICAgIGlmIChwdWIubmFtZSA9PT0gbmFtZSkgZm4uY2FsbChudWxsLCBwdWIuZGF0YSk7XG4gICAgfSk7XG4gIH1cbn1cbiIsImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQdWJzdWJTZXJ2aWNlIH0gZnJvbSAnLi9wdWJzdWIuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7fSlcbmV4cG9ydCBjbGFzcyBQdWJzdWJTZXJ2aWNlTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBQdWJzdWJTZXJ2aWNlTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbUHVic3ViU2VydmljZV1cbiAgICB9O1xuICB9XG59XG4iXSwibmFtZXMiOlsiU3ViamVjdCIsIkluamVjdGFibGUiLCJOZ01vZHVsZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBO1FBUUU7Z0NBRHVCLElBQUlBLGVBQU8sRUFBK0I7U0FDakQ7UUFDaEIsc0JBQUksZ0NBQUs7OztnQkFBVDtnQkFDRSxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUM7YUFDekM7OztXQUFBOzs7Ozs7UUFDRCwyQkFBRzs7Ozs7WUFBSCxVQUFJLElBQUksRUFBRSxJQUFJO2dCQUNaLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQzthQUNwRDs7Ozs7O1FBQ0QsMkJBQUc7Ozs7O1lBQUgsVUFBSSxJQUFZLEVBQUUsRUFBdUI7Z0JBQ3ZDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsVUFBQSxHQUFHO29CQUNwQyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssSUFBSTt3QkFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ2hELENBQUMsQ0FBQzthQUNKOztvQkFkRkMsZUFBVTs7Ozs0QkFMWDs7Ozs7OztBQ0FBOzs7Ozs7UUFLUywyQkFBTzs7O1lBQWQ7Z0JBQ0UsT0FBTztvQkFDTCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixTQUFTLEVBQUUsQ0FBQyxhQUFhLENBQUM7aUJBQzNCLENBQUM7YUFDSDs7b0JBUEZDLGFBQVEsU0FBQyxFQUFFOztrQ0FIWjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9