UNPKG

@ema/js-base-library

Version:

This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.2.0.

221 lines 13.6 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import * as tslib_1 from "tslib"; import { ConfigService } from '../config/config-service'; import { configDefaults } from '../config/config-defaults'; import { TranslateService } from '../translate/translate-service'; /** @type {?} */ var singleton = Symbol(); /** @type {?} */ var singletonEnforcer = Symbol(); var BaseService = /** @class */ (function () { function BaseService(enforcer) { if (enforcer !== singletonEnforcer) { throw new Error('Cannot construct singleton'); } this._configService = ConfigService.instance; this._translateService = TranslateService.instance; this._type = 'BaseService'; this._environment = { global: this.getGlobal(), started: Math.round(+new Date() / 1000), type: 'js' }; } /** * @param {?} config * @param {?=} useDefaults * @param {?=} namespace * @return {?} */ BaseService.prototype.initApp = /** * @param {?} config * @param {?=} useDefaults * @param {?=} namespace * @return {?} */ function (config, useDefaults, namespace) { if (useDefaults === void 0) { useDefaults = false; } if (namespace === void 0) { namespace = undefined; } return tslib_1.__awaiter(this, void 0, void 0, function () { var configFetched; return tslib_1.__generator(this, function (_a) { switch (_a.label) { case 0: if (namespace) { this.initGlobalNameSpace(namespace); } if (useDefaults) { this.config.setDefaults(configDefaults); } if (!(typeof config === 'string')) return [3 /*break*/, 2]; return [4 /*yield*/, this.config.fetch(config, true)]; case 1: configFetched = _a.sent(); return [2 /*return*/, configFetched]; case 2: if (typeof config === 'object') { this.config.add(config); return [2 /*return*/, config]; } return [2 /*return*/]; } }); }); }; /** * @param {?} url * @return {?} */ BaseService.prototype.fetchJson = /** * @param {?} url * @return {?} */ function (url) { return tslib_1.__awaiter(this, void 0, void 0, function () { var response, json; return tslib_1.__generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, fetch(url)]; case 1: response = _a.sent(); return [4 /*yield*/, response.json()]; case 2: json = _a.sent(); return [2 /*return*/, json]; } }); }); }; ; /** * @return {?} */ BaseService.prototype.getGlobal = /** * @return {?} */ function () { if (typeof self !== 'undefined') { return self; } if (typeof window !== 'undefined') { return window; } // @ts-ignore if (typeof global !== 'undefined') { return global; } throw new Error('unable to locate global object'); }; /** * @param {?=} namespace * @return {?} */ BaseService.prototype.initGlobalNameSpace = /** * @param {?=} namespace * @return {?} */ function (namespace) { if (namespace === void 0) { namespace = '_ema'; } this.config.set('globalNameSpace', namespace); this.getGlobal()[namespace] = this; }; Object.defineProperty(BaseService.prototype, "config", { get: /** * @return {?} */ function () { return this._configService; }, enumerable: true, configurable: true }); Object.defineProperty(BaseService.prototype, "environment", { get: /** * @return {?} */ function () { return this._environment; }, enumerable: true, configurable: true }); Object.defineProperty(BaseService.prototype, "translation", { get: /** * @return {?} */ function () { return this._translateService; }, enumerable: true, configurable: true }); Object.defineProperty(BaseService.prototype, "translateService", { get: /** * @return {?} */ function () { return this._translateService; }, enumerable: true, configurable: true }); Object.defineProperty(BaseService, "instance", { get: /** * @return {?} */ function () { if (!this[singleton]) { this[singleton] = new BaseService(singletonEnforcer); } return this[singleton]; }, enumerable: true, configurable: true }); Object.defineProperty(BaseService.prototype, "type", { get: /** * @return {?} */ function () { return this._type; }, set: /** * @param {?} value * @return {?} */ function (value) { this._type = value; }, enumerable: true, configurable: true }); return BaseService; }()); export { BaseService }; if (false) { /** * @type {?} * @private */ BaseService.prototype._environment; /** * @type {?} * @private */ BaseService.prototype._configService; /** * @type {?} * @private */ BaseService.prototype._translateService; /** * @type {?} * @private */ BaseService.prototype._type; /* Skipping unhandled member: ;*/ } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGVtYS9qcy1iYXNlLWxpYnJhcnkvIiwic291cmNlcyI6WyJsaWIvYmFzZS9iYXNlLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztJQUU1RCxTQUFTLEdBQUcsTUFBTSxFQUFFOztJQUNwQixpQkFBaUIsR0FBRyxNQUFNLEVBQUU7QUFFbEM7SUFTSSxxQkFBWSxRQUFRO1FBQ2hCLElBQUksUUFBUSxLQUFLLGlCQUFpQixFQUFFO1lBQ2hDLE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQztTQUNqRDtRQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsYUFBYSxDQUFDLFFBQVEsQ0FBQztRQUM3QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDO1FBQ25ELElBQUksQ0FBQyxLQUFLLEdBQUcsYUFBYSxDQUFDO1FBQzNCLElBQUksQ0FBQyxZQUFZLEdBQUc7WUFDaEIsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDeEIsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQztZQUN2QyxJQUFJLEVBQUUsSUFBSTtTQUNiLENBQUE7SUFDTCxDQUFDOzs7Ozs7O0lBRUssNkJBQU87Ozs7OztJQUFiLFVBQWMsTUFBTSxFQUFFLFdBQW1CLEVBQUUsU0FBNkI7UUFBbEQsNEJBQUEsRUFBQSxtQkFBbUI7UUFBRSwwQkFBQSxFQUFBLHFCQUE2Qjs7Ozs7O3dCQUNwRSxJQUFHLFNBQVMsRUFBRTs0QkFDVixJQUFJLENBQUMsbUJBQW1CLENB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IjpbImltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi9jb25maWcvY29uZmlnLXNlcnZpY2UnO1xuaW1wb3J0IHsgY29uZmlnRGVmYXVsdHMgfSBmcm9tICcuLi9jb25maWcvY29uZmlnLWRlZmF1bHRzJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi90cmFuc2xhdGUvdHJhbnNsYXRlLXNlcnZpY2UnO1xuXG5jb25zdCBzaW5nbGV0b24gPSBTeW1ib2woKTtcbmNvbnN0IHNpbmdsZXRvbkVuZm9yY2VyID0gU3ltYm9sKCk7XG5cbmV4cG9ydCBjbGFzcyBCYXNlU2VydmljZSB7XG4gICAgLypcbiAgICAqIGpzLWJhc2U6IGFwcGxpY2F0aW9uIHNpbmdsZXRvbiBzZXJ2aWNlXG4gICAgKiAqL1xuICAgIHByaXZhdGUgX2Vudmlyb25tZW50OiBhbnk7XG4gICAgcHJpdmF0ZSBfY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZTtcbiAgICBwcml2YXRlIF90cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlO1xuICAgIHByaXZhdGUgX3R5cGU6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKGVuZm9yY2VyKSB7XG4gICAgICAgIGlmIChlbmZvcmNlciAhPT0gc2luZ2xldG9uRW5mb3JjZXIpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IGNvbnN0cnVjdCBzaW5nbGV0b24nKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9jb25maWdTZXJ2aWNlID0gQ29uZmlnU2VydmljZS5pbnN0YW5jZTtcbiAgICAgICAgdGhpcy5fdHJhbnNsYXRlU2VydmljZSA9IFRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFuY2U7XG4gICAgICAgIHRoaXMuX3R5cGUgPSAnQmFzZVNlcnZpY2UnO1xuICAgICAgICB0aGlzLl9lbnZpcm9ubWVudCA9IHtcbiAgICAgICAgICAgIGdsb2JhbDogdGhpcy5nZXRHbG9iYWwoKSxcbiAgICAgICAgICAgIHN0YXJ0ZWQ6IE1hdGgucm91bmQoK25ldyBEYXRlKCkgLyAxMDAwKSxcbiAgICAgICAgICAgIHR5cGU6ICdqcydcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFzeW5jIGluaXRBcHAoY29uZmlnLCB1c2VEZWZhdWx0cyA9IGZhbHNlLCBuYW1lc3BhY2U6IHN0cmluZyA9IHVuZGVmaW5lZCkge1xuICAgICAgICBpZihuYW1lc3BhY2UpIHtcbiAgICAgICAgICAgIHRoaXMuaW5pdEdsb2JhbE5hbWVTcGFjZShuYW1lc3BhY2UpO1xuICAgICAgICB9XG4gICAgICAgIGlmKHVzZURlZmF1bHRzKSB7XG4gICAgICAgICAgICB0aGlzLmNvbmZpZy5zZXREZWZhdWx0cyhjb25maWdEZWZhdWx0cyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYoIHR5cGVvZiBjb25maWcgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICBsZXQgY29uZmlnRmV0Y2hlZCA9IGF3YWl0IHRoaXMuY29uZmlnLmZldGNoKGNvbmZpZywgdHJ1ZSk7XG4gICAgICAgICAgICByZXR1cm4gY29uZmlnRmV0Y2hlZDtcbiAgICAgICAgfVxuICAgICAgICBpZiggdHlwZW9mIGNvbmZpZyA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLmFkZChjb25maWcpO1xuICAgICAgICAgICAgcmV0dXJuIGNvbmZpZztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFzeW5jIGZldGNoSnNvbih1cmw6IHN0cmluZykge1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKHVybCk7XG4gICAgICAgIGNvbnN0IGpzb24gPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XG4gICAgICAgIHJldHVybiBqc29uO1xuICAgIH07XG5cbiAgICBnZXRHbG9iYWwoKSB7XG4gICAgICAgIGlmICh0eXBlb2Ygc2VsZiAhPT0gJ3VuZGVmaW5lZCcpIHsgcmV0dXJuIHNlbGY7IH1cbiAgICAgICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7IHJldHVybiB3aW5kb3c7IH1cbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBpZiAodHlwZW9mIGdsb2JhbCAhPT0gJ3VuZGVmaW5lZCcpIHsgcmV0dXJuIGdsb2JhbDsgfVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3VuYWJsZSB0byBsb2NhdGUgZ2xvYmFsIG9iamVjdCcpO1xuICAgIH1cblxuICAgIGluaXRHbG9iYWxOYW1lU3BhY2UobmFtZXNwYWNlOiBzdHJpbmcgPSAnX2VtYScpIHtcbiAgICAgICAgdGhpcy5jb25maWcuc2V0KCdnbG9iYWxOYW1lU3BhY2UnLG5hbWVzcGFjZSk7XG4gICAgICAgIHRoaXMuZ2V0R2xvYmFsKClbbmFtZXNwYWNlXSA9IHRoaXM7XG4gICAgfVxuXG4gICAgZ2V0IGNvbmZpZygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbmZpZ1NlcnZpY2U7XG4gICAgfVxuXG4gICAgZ2V0IGVudmlyb25tZW50KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZW52aXJvbm1lbnQ7XG4gICAgfVxuXG4gICAgZ2V0IHRyYW5zbGF0aW9uKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fdHJhbnNsYXRlU2VydmljZTtcbiAgICB9XG5cbiAgICBnZXQgdHJhbnNsYXRlU2VydmljZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RyYW5zbGF0ZVNlcnZpY2U7XG4gICAgfVxuXG4gICAgc3RhdGljIGdldCBpbnN0YW5jZSgpIHtcbiAgICAgICAgaWYgKCF0aGlzW3NpbmdsZXRvbl0pIHtcbiAgICAgICAgICAgIHRoaXNbc2luZ2xldG9uXSA9IG5ldyBCYXNlU2VydmljZShzaW5nbGV0b25FbmZvcmNlcik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXNbc2luZ2xldG9uXTtcbiAgICB9XG5cbiAgICBnZXQgdHlwZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3R5cGU7XG4gICAgfVxuXG4gICAgc2V0IHR5cGUodmFsdWUpIHtcbiAgICAgICAgdGhpcy5fdHlwZSA9IHZhbHVlO1xuICAgIH1cblxufVxuXG4iXX0=