UNPKG

e5core-angular-ui

Version:

e5 Anywhere Angular UI

77 lines 7.69 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ // tslint:disable:max-line-length import { Injectable } from '@angular/core'; import { ListSearchService } from 'e5core-angular-services'; import { BehaviorSubject } from 'rxjs'; import * as i0 from "@angular/core"; import * as i1 from "e5core-angular-services"; var CachedListSearchService = /** @class */ (function () { function CachedListSearchService(listService) { this.listService = listService; this.cache = []; } /** * @param {?} listId * @param {?} options * @return {?} */ CachedListSearchService.prototype.search = /** * @param {?} listId * @param {?} options * @return {?} */ function (listId, options) { var _this = this; /** @type {?} */ var subject$ = new BehaviorSubject([]); /** @type {?} */ var cacheKey = listId; if (options !== undefined) cacheKey = cacheKey + options.parentListItemId; /** @type {?} */ var cachedItem = this.cache.filter(function (f) { return f.key == cacheKey; }); if (cachedItem.length > 0) { subject$.next(cachedItem[0].value); return (subject$); } this.listService.search(listId, options).subscribe(function (list) { // TODO : Add "field.isSystemProperty" if (listId != "Category1_Id" && listId != "Category2_Id" && listId != "Category3_Id" && listId != "Status_Id") { list.unshift((/** @type {?} */ ({ id: "-2", code: "", label: "(no value)" }))); list.unshift((/** @type {?} */ ({ id: "-1", code: "", label: "(any value)" }))); } list.unshift((/** @type {?} */ ({ id: "0", code: "", label: "" }))); _this.cache.push({ key: cacheKey, value: list }); subject$.next(list); }, function (error) { console.error(error); subject$.error(error); }); return (subject$); }; CachedListSearchService.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ CachedListSearchService.ctorParameters = function () { return [ { type: ListSearchService } ]; }; /** @nocollapse */ CachedListSearchService.ngInjectableDef = i0.defineInjectable({ factory: function CachedListSearchService_Factory() { return new CachedListSearchService(i0.inject(i1.ListSearchService)); }, token: CachedListSearchService, providedIn: "root" }); return CachedListSearchService; }()); export { CachedListSearchService }; if (false) { /** @type {?} */ CachedListSearchService.prototype.cache; /** * @type {?} * @private */ CachedListSearchService.prototype.listService; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGVkLWxpc3Qtc2VhcmNoLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9lNWNvcmUtYW5ndWxhci11aS8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9jYWNoZWQtbGlzdC1zZWFyY2guc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFpQixNQUFNLHlCQUF5QixDQUFDO0FBRTNFLE9BQU8sRUFBa0IsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFFdkQ7SUFPQyxpQ0FBb0IsV0FBOEI7UUFBOUIsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBRmxELFVBQUssR0FBbUIsRUFBRSxDQUFDO0lBRzNCLENBQUM7Ozs7OztJQUVNLHdDQUFNOzs7OztJQUFiLFVBQWMsTUFBVyxFQUFFLE9BQVk7UUFBdkMsaUJBK0JDOztZQTlCSSxRQUFRLEdBQUcsSUFBSSxlQUFlLENBQWtCLEVBQUUsQ0FBQzs7WUFFbkQsUUFBUSxHQUFHLE1BQU07UUFDckIsSUFBSSxPQUFPLEtBQUssU0FBUztZQUN4QixRQUFRLEdBQUcsUUFBUSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQzs7WUFFNUMsVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsQ0FBQyxDQUFDLEdBQUcsSUFBSSxRQUFRLEVBQWpCLENBQWlCLENBQUM7UUFDMUQsSUFBSSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUMxQixRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNuQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDbEI7UUFFRCxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUNqRCxVQUFBLElBQUk7WUFDSCxzQ0FBc0M7WUFDdEMsSUFBRyxNQUFNLElBQUksY0FBYyxJQUFJLE1BQU0sSUFBSSxjQUFjLElBQUksTUFBTSxJQUFJLGNBQWMsSUFBSSxNQUFNLElBQUksV0FBVyxFQUFFO2dCQUM3RyxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFlLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFHLEtBQUssRUFBRSxZQUFZLEVBQUMsRUFBQSxDQUFDLENBQUU7Z0JBQzFFLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQWUsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUcsS0FBSyxFQUFFLGFBQWEsRUFBQyxFQUFBLENBQUMsQ0FBRTthQUMzRTtZQUNELElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQWUsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUcsS0FBSyxFQUFFLEVBQUUsRUFBQyxFQUFBLENBQUMsQ0FBRTtZQUUvRCxLQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7WUFDOUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNyQixDQUFDLEVBQ0QsVUFBQSxLQUFLO1lBQ0osT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyQixRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLENBQUMsQ0FDRCxDQUFDO1FBQ0YsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ25CLENBQUM7O2dCQXpDRCxVQUFVLFNBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7O2dCQU5NLGlCQUFpQjs7O2tDQUYxQjtDQWdEQyxBQTFDRCxJQTBDQztTQXZDWSx1QkFBdUI7OztJQUVuQyx3Q0FBMkI7Ozs7O0lBRWYsOENBQXNDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdHNsaW50OmRpc2FibGU6bWF4LWxpbmUtbGVuZ3RoXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMaXN0U2VhcmNoU2VydmljZSwgTGlzdEl0ZW1Nb2RlbCB9IGZyb20gJ2U1Y29yZS1hbmd1bGFyLXNlcnZpY2VzJztcbmltcG9ydCB7IEtleVZhbHVlUGFpciB9IGZyb20gJy4uL3V0aWwva2V5LXZhbHVlLXBhaXInO1xuaW1wb3J0IHsgb2YsIE9ic2VydmFibGUsIEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG4gIH0pXG5leHBvcnQgY2xhc3MgQ2FjaGVkTGlzdFNlYXJjaFNlcnZpY2Uge1xuXG5cdGNhY2hlOiBLZXlWYWx1ZVBhaXJbXSA9IFtdO1xuXG5cdGNvbnN0cnVjdG9yKHByaXZhdGUgbGlzdFNlcnZpY2U6IExpc3RTZWFyY2hTZXJ2aWNlKSB7XG5cdH1cblxuXHRwdWJsaWMgc2VhcmNoKGxpc3RJZDogYW55LCBvcHRpb25zOiBhbnkpOiBCZWhhdmlvclN1YmplY3Q8TGlzdEl0ZW1Nb2RlbFtdPiB7XG5cdFx0bGV0IHN1YmplY3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxMaXN0SXRlbU1vZGVsW10+KFtdKSA7XG5cblx0XHR2YXIgY2FjaGVLZXkgPSBsaXN0SWQ7XG5cdFx0aWYgKG9wdGlvbnMgIT09IHVuZGVmaW5lZClcblx0XHRcdGNhY2hlS2V5ID0gY2FjaGVLZXkgKyBvcHRpb25zLnBhcmVudExpc3RJdGVtSWQ7XG5cblx0XHR2YXIgY2FjaGVkSXRlbSA9IHRoaXMuY2FjaGUuZmlsdGVyKGYgPT4gZi5rZXkgPT0gY2FjaGVLZXkpO1xuXHRcdGlmIChjYWNoZWRJdGVtLmxlbmd0aCA+IDApIHtcblx0XHRcdHN1YmplY3QkLm5leHQoY2FjaGVkSXRlbVswXS52YWx1ZSk7XG5cdFx0XHRyZXR1cm4gKHN1YmplY3QkKTtcblx0XHR9XG5cblx0XHR0aGlzLmxpc3RTZXJ2aWNlLnNlYXJjaChsaXN0SWQsIG9wdGlvbnMpLnN1YnNjcmliZShcblx0XHRcdGxpc3QgPT4ge1xuXHRcdFx0XHQvLyBUT0RPIDogQWRkIFwiZmllbGQuaXNTeXN0ZW1Qcm9wZXJ0eVwiXG5cdFx0XHRcdGlmKGxpc3RJZCAhPSBcIkNhdGVnb3J5MV9JZFwiICYmIGxpc3RJZCAhPSBcIkNhdGVnb3J5Ml9JZFwiICYmIGxpc3RJZCAhPSBcIkNhdGVnb3J5M19JZFwiICYmIGxpc3RJZCAhPSBcIlN0YXR1c19JZFwiKSB7XG5cdFx0XHRcdFx0bGlzdC51bnNoaWZ0KDxMaXN0SXRlbU1vZGVsPnsgaWQ6IFwiLTJcIiwgY29kZTogXCJcIiwgIGxhYmVsOiBcIihubyB2YWx1ZSlcIn0pIDtcdFxuXHRcdFx0XHRcdGxpc3QudW5zaGlmdCg8TGlzdEl0ZW1Nb2RlbD57IGlkOiBcIi0xXCIsIGNvZGU6IFwiXCIsICBsYWJlbDogXCIoYW55IHZhbHVlKVwifSkgO1x0XG5cdFx0XHRcdH1cblx0XHRcdFx0bGlzdC51bnNoaWZ0KDxMaXN0SXRlbU1vZGVsPnsgaWQ6IFwiMFwiLCBjb2RlOiBcIlwiLCAgbGFiZWw6IFwiXCJ9KSA7XHRcblxuXHRcdFx0XHR0aGlzLmNhY2hlLnB1c2goe2tleTogY2FjaGVLZXksIHZhbHVlOiBsaXN0fSk7XG5cdFx0XHRcdHN1YmplY3QkLm5leHQobGlzdCk7XG5cdFx0XHR9LFxuXHRcdFx0ZXJyb3IgPT4ge1xuXHRcdFx0XHRjb25zb2xlLmVycm9yKGVycm9yKTtcblx0XHRcdFx0c3ViamVjdCQuZXJyb3IoZXJyb3IpO1xuXHRcdFx0fVxuXHRcdCk7XG5cdFx0cmV0dXJuIChzdWJqZWN0JCk7XG5cdH1cbn0iXX0=