UNPKG

ngx-amap

Version:

[![npm](https://img.shields.io/npm/v/ngx-amap.svg)][npm-badge-url] [![npm](https://img.shields.io/npm/dm/ngx-amap.svg)][npm-badge-url] [![Build Status](https://travis-ci.org/xieziyu/ngx-amap.svg?branch=master)][ci-url]

96 lines 6.87 kB
/** * @fileoverview added by tsickle * Generated from: shared/amap-ui-loader.service.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Injectable } from '@angular/core'; import { ReplaySubject } from 'rxjs'; import { LoggerService } from './logger/logger.service'; import { AMapLoaderService } from './amap-loader.service'; /** @type {?} */ var TAG = 'AMapUILoader'; var AmapUILoaderService = /** @class */ (function () { function AmapUILoaderService(amap, logger) { this.amap = amap; this.logger = logger; this.state = new Map(); } /** * @param {?} name * @return {?} */ AmapUILoaderService.prototype.load = /** * @param {?} name * @return {?} */ function (name) { var _this = this; /** @type {?} */ var pKey = ''; if (Array.isArray(name)) { pKey = name.join(','); } else { pKey = name; } if (this.state.has(pKey)) { return this.state.get(pKey).asObservable(); } this.logger.d(TAG, 'loading ui:', pKey, '...'); /** @type {?} */ var loading$ = new ReplaySubject(1); this.amap.load().subscribe({ next: (/** * @return {?} */ function () { _this.amap.loadUI().subscribe({ next: (/** * @return {?} */ function () { AMapUI.loadUI(Array.isArray(name) ? name : [name], (/** * @param {?} u * @return {?} */ function (u) { _this.logger.d(TAG, 'loading ui:', pKey, 'COMPLETE'); loading$.next(u); loading$.complete(); })); _this.state.set(pKey, loading$); }), }); }), }); return loading$.asObservable(); }; AmapUILoaderService.decorators = [ { type: Injectable } ]; /** @nocollapse */ AmapUILoaderService.ctorParameters = function () { return [ { type: AMapLoaderService }, { type: LoggerService } ]; }; return AmapUILoaderService; }()); export { AmapUILoaderService }; if (false) { /** * @type {?} * @private */ AmapUILoaderService.prototype.state; /** * @type {?} * @private */ AmapUILoaderService.prototype.amap; /** * @type {?} * @private */ AmapUILoaderService.prototype.logger; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1hcC11aS1sb2FkZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1hbWFwLyIsInNvdXJjZXMiOlsic2hhcmVkL2FtYXAtdWktbG9hZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztJQUdwRCxHQUFHLEdBQUcsY0FBYztBQUUxQjtJQUlFLDZCQUFvQixJQUF1QixFQUFVLE1BQXFCO1FBQXRELFNBQUksR0FBSixJQUFJLENBQW1CO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUZsRSxVQUFLLEdBQUcsSUFBSSxHQUFHLEVBQThCLENBQUM7SUFFdUIsQ0FBQzs7Ozs7SUFFOUUsa0NBQUk7Ozs7SUFBSixVQUFLLElBQXVCO1FBQTVCLGlCQTRCQzs7WUEzQkssSUFBSSxHQUFHLEVBQUU7UUFDYixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDdkIsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDdkI7YUFBTTtZQUNMLElBQUksR0FBRyxJQUFJLENBQUM7U0FDYjtRQUNELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDeEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztTQUM1QztRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDOztZQUN6QyxRQUFRLEdBQUcsSUFBSSxhQUFhLENBQUMsQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDO1lBQ3pCLElBQUk7OztZQUFFO2dCQUNKLEtBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDO29CQUMzQixJQUFJOzs7b0JBQUU7d0JBQ0osTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDOzs7O3dCQUFFLFVBQUEsQ0FBQzs0QkFDbEQsS0FBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7NEJBQ3BELFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7NEJBQ2pCLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQzt3QkFDdEIsQ0FBQyxFQUFDLENBQUM7d0JBQ0gsS0FBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO29CQUNqQyxDQUFDLENBQUE7aUJBQ0YsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFBO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDakMsQ0FBQzs7Z0JBbENGLFVBQVU7Ozs7Z0JBTEYsaUJBQWlCO2dCQURqQixhQUFhOztJQXlDdEIsMEJBQUM7Q0FBQSxBQW5DRCxJQW1DQztTQWxDWSxtQkFBbUI7Ozs7OztJQUM5QixvQ0FBc0Q7Ozs7O0lBRTFDLG1DQUErQjs7Ozs7SUFBRSxxQ0FBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi9sb2dnZXIvbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQU1hcExvYWRlclNlcnZpY2UgfSBmcm9tICcuL2FtYXAtbG9hZGVyLnNlcnZpY2UnO1xuXG5kZWNsYXJlIGNvbnN0IEFNYXBVSTogYW55O1xuY29uc3QgVEFHID0gJ0FNYXBVSUxvYWRlcic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBbWFwVUlMb2FkZXJTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBzdGF0ZSA9IG5ldyBNYXA8c3RyaW5nLCBSZXBsYXlTdWJqZWN0PGFueT4+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhbWFwOiBBTWFwTG9hZGVyU2VydmljZSwgcHJpdmF0ZSBsb2dnZXI6IExvZ2dlclNlcnZpY2UpIHt9XG5cbiAgbG9hZChuYW1lOiBzdHJpbmcgfCBzdHJpbmdbXSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHBLZXkgPSAnJztcbiAgICBpZiAoQXJyYXkuaXNBcnJheShuYW1lKSkge1xuICAgICAgcEtleSA9IG5hbWUuam9pbignLCcpO1xuICAgIH0gZWxzZSB7XG4gICAgICBwS2V5ID0gbmFtZTtcbiAgICB9XG4gICAgaWYgKHRoaXMuc3RhdGUuaGFzKHBLZXkpKSB7XG4gICAgICByZXR1cm4gdGhpcy5zdGF0ZS5nZXQocEtleSkuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgdGhpcy5sb2dnZXIuZChUQUcsICdsb2FkaW5nIHVpOicsIHBLZXksICcuLi4nKTtcbiAgICBjb25zdCBsb2FkaW5nJCA9IG5ldyBSZXBsYXlTdWJqZWN0KDEpO1xuICAgIHRoaXMuYW1hcC5sb2FkKCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6ICgpID0+IHtcbiAgICAgICAgdGhpcy5hbWFwLmxvYWRVSSgpLnN1YnNjcmliZSh7XG4gICAgICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICAgICAgQU1hcFVJLmxvYWRVSShBcnJheS5pc0FycmF5KG5hbWUpID8gbmFtZSA6IFtuYW1lXSwgdSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMubG9nZ2VyLmQoVEFHLCAnbG9hZGluZyB1aTonLCBwS2V5LCAnQ09NUExFVEUnKTtcbiAgICAgICAgICAgICAgbG9hZGluZyQubmV4dCh1KTtcbiAgICAgICAgICAgICAgbG9hZGluZyQuY29tcGxldGUoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5zdGF0ZS5zZXQocEtleSwgbG9hZGluZyQpO1xuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICB9KTtcbiAgICByZXR1cm4gbG9hZGluZyQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cbn1cbiJdfQ==