UNPKG

com.phloxui

Version:

PhloxUI Ng2+ Framework

102 lines (101 loc) 7.75 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes} checked by tsc */ import { Injectable } from '@angular/core'; import { PhloxAppInfo } from '../component/model/PhloxAppInfo'; import { ConnectionManager } from '../service/ConnectionManager.service'; /** * <p style="text-indent: 2em;"> * A <code>ng</code> service providing [[PhloxAppInfo]] object of currently running <code>application</code>. In normal sense, this service may load a * [[PhloxAppInfo]] object from backend to fetch user settings and configurations from the server. * </p> * * @author shiorin, tee4cute */ var PhloxAppInfoService = /** @class */ (function () { function PhloxAppInfoService(connectionManager) { this.connectionManager = connectionManager; } /** * @return {?} */ PhloxAppInfoService.prototype.ngOnInit = /** * @return {?} */ function () { if (this.connectionManager !== null && typeof this.connectionManager !== 'undefined') { this.loadAppInfo(); this.connectionManager.setPhloxAppInfo(this.appInfo); } }; /** * @return {?} */ PhloxAppInfoService.prototype.loadAppInfo = /** * @return {?} */ function () { // ! TODO: Edit this on PRODUCTION return Promise.resolve(new PhloxAppInfo("", "", "", "")); }; /** * @return {?} */ PhloxAppInfoService.prototype.reload = /** * @return {?} */ function () { this.appInfo = null; return this.getAppInfo(); }; /** * <p style="text-indent: 1em;"> * Get [[PhloxAppInfo]] of currently running <code>application</code>. * </p> * * @return {?} A <code>Promise</code> which will be resolved when the [[PhloxAppInfo]] object is ready. */ PhloxAppInfoService.prototype.getAppInfo = /** * <p style="text-indent: 1em;"> * Get [[PhloxAppInfo]] of currently running <code>application</code>. * </p> * * @return {?} A <code>Promise</code> which will be resolved when the [[PhloxAppInfo]] object is ready. */ function () { var _this = this; if (this.appInfo !== null && typeof this.appInfo !== 'undefined') { return Promise.resolve(this.appInfo); } else { return this.loadAppInfo().then(function (result) { _this.appInfo = result; return Promise.resolve(_this.appInfo); }); } }; PhloxAppInfoService.decorators = [ { type: Injectable }, ]; /** @nocollapse */ PhloxAppInfoService.ctorParameters = function () { return [ { type: ConnectionManager, }, ]; }; return PhloxAppInfoService; }()); export { PhloxAppInfoService }; function PhloxAppInfoService_tsickle_Closure_declarations() { /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */ PhloxAppInfoService.decorators; /** * @nocollapse * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>} */ PhloxAppInfoService.ctorParameters; /** @type {?} */ PhloxAppInfoService.prototype.connectionManager; /** @type {?} */ PhloxAppInfoService.prototype.appInfo; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGhsb3hBcHBJbmZvU2VydmljZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vY29tLnBobG94dWkvIiwic291cmNlcyI6WyJsaWIvc2VydmljZS9QaGxveEFwcEluZm9TZXJ2aWNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOzs7Ozs7Ozs7O0lBZ0JyRSw2QkFBWSxpQkFBb0M7UUFDNUMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO0tBQzlDOzs7O0lBRU0sc0NBQVE7Ozs7UUFDWCxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEtBQUssSUFBSSxJQUFJLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDbkYsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3hEOzs7OztJQUdLLHlDQUFXOzs7SUFBckI7O1FBRUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxZQUFZLENBQUMsRUFBRSxFQUFDLEVBQUUsRUFBQyxFQUFFLEVBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztLQUN6RDs7OztJQUVNLG9DQUFNOzs7O1FBQ1QsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFFcEIsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQzs7Ozs7Ozs7O0lBVXRCLHdDQUFVOzs7Ozs7Ozs7UUFDYixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxLQUFLLElBQUksSUFBSSxPQUFPLElBQUksQ0FBQyxPQUFPLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztZQUMvRCxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDeEM7UUFBQyxJQUFJLENBQUMsQ0FBQztZQUNKLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQUMsTUFBb0I7Z0JBQ2hELEtBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO2dCQUV0QixNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDeEMsQ0FBQyxDQUFDO1NBQ047OztnQkE1Q1IsVUFBVTs7OztnQkFWRixpQkFBaUI7OzhCQUYxQjs7U0FhYSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBobG94QXBwSW5mbyB9IGZyb20gJy4uL2NvbXBvbmVudC9tb2RlbC9QaGxveEFwcEluZm8nO1xuaW1wb3J0IHsgQ29ubmVjdGlvbk1hbmFnZXIgfSBmcm9tICcuLi9zZXJ2aWNlL0Nvbm5lY3Rpb25NYW5hZ2VyLnNlcnZpY2UnO1xuXG4vKipcbiAqIDxwIHN0eWxlPVwidGV4dC1pbmRlbnQ6IDJlbTtcIj5cbiAqIEEgPGNvZGU+bmc8L2NvZGU+IHNlcnZpY2UgcHJvdmlkaW5nIFtbUGhsb3hBcHBJbmZvXV0gb2JqZWN0IG9mIGN1cnJlbnRseSBydW5uaW5nIDxjb2RlPmFwcGxpY2F0aW9uPC9jb2RlPi4gSW4gbm9ybWFsIHNlbnNlLCB0aGlzIHNlcnZpY2UgbWF5IGxvYWQgYVxuICogW1tQaGxveEFwcEluZm9dXSBvYmplY3QgZnJvbSBiYWNrZW5kIHRvIGZldGNoIHVzZXIgc2V0dGluZ3MgYW5kIGNvbmZpZ3VyYXRpb25zIGZyb20gdGhlIHNlcnZlci5cbiAqIDwvcD5cbiAqXG4gKiBAYXV0aG9yIHNoaW9yaW4sIHRlZTRjdXRlXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBQaGxveEFwcEluZm9TZXJ2aWNlIGltcGxlbWVudHMgT25Jbml0IHtcblxuICAgIHByaXZhdGUgY29ubmVjdGlvbk1hbmFnZXI6IENvbm5lY3Rpb25NYW5hZ2VyO1xuICAgIHByb3RlY3RlZCBhcHBJbmZvOiBQaGxveEFwcEluZm87XG5cbiAgICBjb25zdHJ1Y3Rvcihjb25uZWN0aW9uTWFuYWdlcjogQ29ubmVjdGlvbk1hbmFnZXIpe1xuICAgICAgICB0aGlzLmNvbm5lY3Rpb25NYW5hZ2VyID0gY29ubmVjdGlvbk1hbmFnZXI7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jb25uZWN0aW9uTWFuYWdlciAhPT0gbnVsbCAmJiB0eXBlb2YgdGhpcy5jb25uZWN0aW9uTWFuYWdlciAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZEFwcEluZm8oKTtcbiAgICAgICAgICAgIHRoaXMuY29ubmVjdGlvbk1hbmFnZXIuc2V0UGhsb3hBcHBJbmZvKHRoaXMuYXBwSW5mbyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgbG9hZEFwcEluZm8oKTogUHJvbWlzZTxQaGxveEFwcEluZm8+IHtcbiAgICAgICAgLy8gISBUT0RPOiBFZGl0IHRoaXMgb24gUFJPRFVDVElPTlxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG5ldyBQaGxveEFwcEluZm8oXCJcIixcIlwiLFwiXCIsXCJcIikpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZWxvYWQoKTogUHJvbWlzZTxQaGxveEFwcEluZm8+IHtcbiAgICAgICAgdGhpcy5hcHBJbmZvID0gbnVsbDtcblxuICAgICAgICByZXR1cm4gdGhpcy5nZXRBcHBJbmZvKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogPHAgc3R5bGU9XCJ0ZXh0LWluZGVudDogMWVtO1wiPlxuICAgICAqIEdldCBbW1BobG94QXBwSW5mb11dIG9mIGN1cnJlbnRseSBydW5uaW5nIDxjb2RlPmFwcGxpY2F0aW9uPC9jb2RlPi5cbiAgICAgKiA8L3A+XG4gICAgICpcbiAgICAgKiBAcmV0dXJuIEEgPGNvZGU+UHJvbWlzZTwvY29kZT4gd2hpY2ggd2lsbCBiZSByZXNvbHZlZCB3aGVuIHRoZSBbW1BobG94QXBwSW5mb11dIG9iamVjdCBpcyByZWFkeS5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0QXBwSW5mbygpOiBQcm9taXNlPFBobG94QXBwSW5mbz4ge1xuICAgICAgICBpZiAodGhpcy5hcHBJbmZvICE9PSBudWxsICYmIHR5cGVvZiB0aGlzLmFwcEluZm8gIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuYXBwSW5mbyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5sb2FkQXBwSW5mbygpLnRoZW4oKHJlc3VsdDogUGhsb3hBcHBJbmZvKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5hcHBJbmZvID0gcmVzdWx0O1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLmFwcEluZm8pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiJdfQ==