ngx-amap
Version:
[][npm-badge-url] [][npm-badge-url] [][ci-url]
169 lines • 12.3 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: directives/amap-circle-marker/amap-circle-marker.directive.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import * as tslib_1 from "tslib";
import { Directive, NgZone, } from '@angular/core';
import { zip } from 'rxjs';
import { AMapCircle, CircleOptions } from '../../base/amap-circle';
import { AmapCircleMarkerService } from './amap-circle-marker.service';
import { LoggerService } from '../../shared/logger/logger.service';
import { EventBinderService } from '../../shared/event-binder.service';
import { getOptions, ChangeFilter } from '../../utils';
/** @type {?} */
var TAG = 'amap-circle-marker';
var AmapCircleMarkerDirective = /** @class */ (function (_super) {
tslib_1.__extends(AmapCircleMarkerDirective, _super);
function AmapCircleMarkerDirective(os, binder, logger, ngZone) {
var _this = _super.call(this, os, binder) || this;
_this.os = os;
_this.binder = binder;
_this.logger = logger;
_this.ngZone = ngZone;
_this.inited = false;
return _this;
}
/**
* @return {?}
*/
AmapCircleMarkerDirective.prototype.ngOnDestroy = /**
* @return {?}
*/
function () {
this.os.destroy();
};
/**
* @param {?} changes
* @return {?}
*/
AmapCircleMarkerDirective.prototype.ngOnChanges = /**
* @param {?} changes
* @return {?}
*/
function (changes) {
var _this = this;
/** @type {?} */
var filter = ChangeFilter.of(changes);
/** @type {?} */
var circle = this.get();
if (!this.inited) {
this.logger.d(TAG, 'initializing ...');
/** @type {?} */
var options = this.options || getOptions(this, CircleOptions);
this.logger.d(TAG, 'options:', options);
this.os.create(options).subscribe((/**
* @param {?} m
* @return {?}
*/
function (m) {
_this.ngZone.run((/**
* @return {?}
*/
function () { return _this.naReady.emit(m); }));
_this.logger.d(TAG, 'circle marker is ready.');
}));
this.inited = true;
}
else {
zip(filter.has('center'), circle).subscribe((/**
* @param {?} __0
* @return {?}
*/
function (_a) {
var _b = tslib_1.__read(_a, 2), v = _b[0], p = _b[1];
return p.setCenter(v);
}));
zip(filter.has('options'), circle).subscribe((/**
* @param {?} __0
* @return {?}
*/
function (_a) {
var _b = tslib_1.__read(_a, 2), v = _b[0], p = _b[1];
return p.setOptions(v || {});
}));
zip(filter.has('radius'), circle).subscribe((/**
* @param {?} __0
* @return {?}
*/
function (_a) {
var _b = tslib_1.__read(_a, 2), v = _b[0], p = _b[1];
return p.setRadius(v);
}));
zip(filter.has('extData'), circle).subscribe((/**
* @param {?} __0
* @return {?}
*/
function (_a) {
var _b = tslib_1.__read(_a, 2), v = _b[0], p = _b[1];
return p.setExtData(v);
}));
}
zip(filter.has('hidden'), circle).subscribe((/**
* @param {?} __0
* @return {?}
*/
function (_a) {
var _b = tslib_1.__read(_a, 2), v = _b[0], p = _b[1];
return (v ? p.hide() : p.show());
}));
};
/**
* 获取已创建的 AMap.CircleMarker 对象
*/
/**
* 获取已创建的 AMap.CircleMarker 对象
* @return {?}
*/
AmapCircleMarkerDirective.prototype.get = /**
* 获取已创建的 AMap.CircleMarker 对象
* @return {?}
*/
function () {
return this.os.get();
};
AmapCircleMarkerDirective.decorators = [
{ type: Directive, args: [{
selector: 'amap-circle-marker',
exportAs: 'circle-marker',
providers: [AmapCircleMarkerService],
},] }
];
/** @nocollapse */
AmapCircleMarkerDirective.ctorParameters = function () { return [
{ type: AmapCircleMarkerService },
{ type: EventBinderService },
{ type: LoggerService },
{ type: NgZone }
]; };
return AmapCircleMarkerDirective;
}(AMapCircle));
export { AmapCircleMarkerDirective };
if (false) {
/**
* @type {?}
* @private
*/
AmapCircleMarkerDirective.prototype.inited;
/**
* @type {?}
* @protected
*/
AmapCircleMarkerDirective.prototype.os;
/**
* @type {?}
* @protected
*/
AmapCircleMarkerDirective.prototype.binder;
/**
* @type {?}
* @private
*/
AmapCircleMarkerDirective.prototype.logger;
/**
* @type {?}
* @private
*/
AmapCircleMarkerDirective.prototype.ngZone;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1hcC1jaXJjbGUtbWFya2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1hbWFwLyIsInNvdXJjZXMiOlsiZGlyZWN0aXZlcy9hbWFwLWNpcmNsZS1tYXJrZXIvYW1hcC1jaXJjbGUtbWFya2VyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBR0wsU0FBUyxFQUlULE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNCLE9BQU8sRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDOztJQUVqRCxHQUFHLEdBQUcsb0JBQW9CO0FBRWhDO0lBSytDLHFEQUE2QjtJQUkxRSxtQ0FDWSxFQUEyQixFQUMzQixNQUEwQixFQUM1QixNQUFxQixFQUNyQixNQUFjO1FBSnhCLFlBTUUsa0JBQU0sRUFBRSxFQUFFLE1BQU0sQ0FBQyxTQUNsQjtRQU5XLFFBQUUsR0FBRixFQUFFLENBQXlCO1FBQzNCLFlBQU0sR0FBTixNQUFNLENBQW9CO1FBQzVCLFlBQU0sR0FBTixNQUFNLENBQWU7UUFDckIsWUFBTSxHQUFOLE1BQU0sQ0FBUTtRQU5oQixZQUFNLEdBQUcsS0FBSyxDQUFDOztJQVN2QixDQUFDOzs7O0lBRUQsK0NBQVc7OztJQUFYO1FBQ0UsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNwQixDQUFDOzs7OztJQUVELCtDQUFXOzs7O0lBQVgsVUFBWSxP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RSxlQUFlO29CQUN6QixTQUFTLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztpQkFDckM7Ozs7Z0JBWFEsdUJBQXVCO2dCQUV2QixrQkFBa0I7Z0JBRGxCLGFBQWE7Z0JBTHBCLE1BQU07O0lBK0RSLGdDQUFDO0NBQUEsQUFwREQsQ0FLK0MsVUFBVSxHQStDeEQ7U0EvQ1kseUJBQXlCOzs7Ozs7SUFFcEMsMkNBQXVCOzs7OztJQUdyQix1Q0FBcUM7Ozs7O0lBQ3JDLDJDQUFvQzs7Ozs7SUFDcEMsMkNBQTZCOzs7OztJQUM3QiwyQ0FBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgRGlyZWN0aXZlLFxuICBPbkRlc3Ryb3ksXG4gIFNpbXBsZUNoYW5nZXMsXG4gIE9uQ2hhbmdlcyxcbiAgTmdab25lLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHppcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQU1hcENpcmNsZSwgQ2lyY2xlT3B0aW9ucyB9IGZyb20gJy4uLy4uL2Jhc2UvYW1hcC1jaXJjbGUnO1xuaW1wb3J0IHsgQW1hcENpcmNsZU1hcmtlclNlcnZpY2UgfSBmcm9tICcuL2FtYXAtY2lyY2xlLW1hcmtlci5zZXJ2aWNlJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvbG9nZ2VyL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IEV2ZW50QmluZGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9ldmVudC1iaW5kZXIuc2VydmljZSc7XG5pbXBvcnQgeyBnZXRPcHRpb25zLCBDaGFuZ2VGaWx0ZXIgfSBmcm9tICcuLi8uLi91dGlscyc7XG5cbmNvbnN0IFRBRyA9ICdhbWFwLWNpcmNsZS1tYXJrZXInO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdhbWFwLWNpcmNsZS1tYXJrZXInLFxuICBleHBvcnRBczogJ2NpcmNsZS1tYXJrZXInLFxuICBwcm92aWRlcnM6IFtBbWFwQ2lyY2xlTWFya2VyU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIEFtYXBDaXJjbGVNYXJrZXJEaXJlY3RpdmUgZXh0ZW5kcyBBTWFwQ2lyY2xlPEFNYXAuQ2lyY2xlTWFya2VyPlxuICBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBpbml0ZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgb3M6IEFtYXBDaXJjbGVNYXJrZXJTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBiaW5kZXI6IEV2ZW50QmluZGVyU2VydmljZSxcbiAgICBwcml2YXRlIGxvZ2dlcjogTG9nZ2VyU2VydmljZSxcbiAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxuICApIHtcbiAgICBzdXBlcihvcywgYmluZGVyKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMub3MuZGVzdHJveSgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGNvbnN0IGZpbHRlciA9IENoYW5nZUZpbHRlci5vZihjaGFuZ2VzKTtcbiAgICBjb25zdCBjaXJjbGUgPSB0aGlzLmdldCgpO1xuICAgIGlmICghdGhpcy5pbml0ZWQpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmQoVEFHLCAnaW5pdGlhbGl6aW5nIC4uLicpO1xuICAgICAgY29uc3Qgb3B0aW9ucyA9IHRoaXMub3B0aW9ucyB8fCBnZXRPcHRpb25zPEFNYXAuQ2lyY2xlLk9wdGlvbnM+KHRoaXMsIENpcmNsZU9wdGlvbnMpO1xuICAgICAgdGhpcy5sb2dnZXIuZChUQUcsICdvcHRpb25zOicsIG9wdGlvbnMpO1xuICAgICAgdGhpcy5vcy5jcmVhdGUob3B0aW9ucykuc3Vic2NyaWJlKG0gPT4ge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gdGhpcy5uYVJlYWR5LmVtaXQobSkpO1xuICAgICAgICB0aGlzLmxvZ2dlci5kKFRBRywgJ2NpcmNsZSBtYXJrZXIgaXMgcmVhZHkuJyk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuaW5pdGVkID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgemlwKGZpbHRlci5oYXM8QU1hcC5Mb2NhdGlvblZhbHVlPignY2VudGVyJyksIGNpcmNsZSkuc3Vic2NyaWJlKChbdiwgcF0pID0+IHAuc2V0Q2VudGVyKHYpKTtcbiAgICAgIHppcChmaWx0ZXIuaGFzPEFNYXAuQ2lyY2xlLk9wdGlvbnM+KCdvcHRpb25zJyksIGNpcmNsZSkuc3Vic2NyaWJlKChbdiwgcF0pID0+XG4gICAgICAgIHAuc2V0T3B0aW9ucyh2IHx8IHt9KSxcbiAgICAgICk7XG4gICAgICB6aXAoZmlsdGVyLmhhczxudW1iZXI+KCdyYWRpdXMnKSwgY2lyY2xlKS5zdWJzY3JpYmUoKFt2LCBwXSkgPT4gcC5zZXRSYWRpdXModikpO1xuICAgICAgemlwKGZpbHRlci5oYXM8YW55PignZXh0RGF0YScpLCBjaXJjbGUpLnN1YnNjcmliZSgoW3YsIHBdKSA9PiBwLnNldEV4dERhdGEodikpO1xuICAgIH1cblxuICAgIHppcChmaWx0ZXIuaGFzPGJvb2xlYW4+KCdoaWRkZW4nKSwgY2lyY2xlKS5zdWJzY3JpYmUoKFt2LCBwXSkgPT4gKHYgPyBwLmhpZGUoKSA6IHAuc2hvdygpKSk7XG4gIH1cblxuICAvKipcbiAgICog6I635Y+W5bey5Yib5bu655qEIEFNYXAuQ2lyY2xlTWFya2VyIOWvueixoVxuICAgKi9cbiAgZ2V0KCkge1xuICAgIHJldHVybiB0aGlzLm9zLmdldCgpO1xuICB9XG59XG4iXX0=