ngx-amap
Version:
[][npm-badge-url] [][npm-badge-url] [][ci-url]
188 lines • 13 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: directives/amap-ellipse/amap-ellipse.directive.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import * as tslib_1 from "tslib";
import { Input, Directive, NgZone } from '@angular/core';
import { zip } from 'rxjs';
import { AMapPolygon, PolygonOptions } from '../../base/amap-polygon';
import { AmapEllipseService } from './amap-ellipse.service';
import { LoggerService } from '../../shared/logger/logger.service';
import { EventBinderService } from '../../shared/event-binder.service';
import { getOptions, ChangeFilter } from '../../utils';
/** @type {?} */
var TAG = 'amap-ellipse';
/** @type {?} */
var EllipseOptions = tslib_1.__spread(PolygonOptions, ['center', 'radius']);
var AmapEllipseDirective = /** @class */ (function (_super) {
tslib_1.__extends(AmapEllipseDirective, _super);
function AmapEllipseDirective(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 {?}
*/
AmapEllipseDirective.prototype.ngOnDestroy = /**
* @return {?}
*/
function () {
this.os.destroy();
};
/**
* @param {?} changes
* @return {?}
*/
AmapEllipseDirective.prototype.ngOnChanges = /**
* @param {?} changes
* @return {?}
*/
function (changes) {
var _this = this;
/** @type {?} */
var filter = ChangeFilter.of(changes);
/** @type {?} */
var ellipse = this.get();
if (!this.inited) {
this.logger.d(TAG, 'initializing ...');
/** @type {?} */
var options = this.options || getOptions(this, EllipseOptions);
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, 'ellipse is ready.');
}));
this.inited = true;
}
else {
zip(filter.has('center'), ellipse).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'), ellipse).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('extData'), ellipse).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'), ellipse).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());
}));
filter.has('editor').subscribe((/**
* @param {?} v
* @return {?}
*/
function (v) { return _this.os.toggleEditor(v); }));
};
/**
* 获取已创建的 AMap.Ellipse 对象
*/
/**
* 获取已创建的 AMap.Ellipse 对象
* @return {?}
*/
AmapEllipseDirective.prototype.get = /**
* 获取已创建的 AMap.Ellipse 对象
* @return {?}
*/
function () {
return this.os.get();
};
AmapEllipseDirective.decorators = [
{ type: Directive, args: [{
selector: 'amap-ellipse',
exportAs: 'ellipse',
providers: [AmapEllipseService],
},] }
];
/** @nocollapse */
AmapEllipseDirective.ctorParameters = function () { return [
{ type: AmapEllipseService },
{ type: EventBinderService },
{ type: LoggerService },
{ type: NgZone }
]; };
AmapEllipseDirective.propDecorators = {
center: [{ type: Input }],
radius: [{ type: Input }],
options: [{ type: Input }]
};
return AmapEllipseDirective;
}(AMapPolygon));
export { AmapEllipseDirective };
if (false) {
/**
* 椭圆的中心
* @type {?}
*/
AmapEllipseDirective.prototype.center;
/**
* 椭圆半径
* @type {?}
*/
AmapEllipseDirective.prototype.radius;
/**
* 额外: 会覆盖其他属性的配置方式
* @type {?}
*/
AmapEllipseDirective.prototype.options;
/**
* @type {?}
* @private
*/
AmapEllipseDirective.prototype.inited;
/**
* @type {?}
* @protected
*/
AmapEllipseDirective.prototype.os;
/**
* @type {?}
* @protected
*/
AmapEllipseDirective.prototype.binder;
/**
* @type {?}
* @private
*/
AmapEllipseDirective.prototype.logger;
/**
* @type {?}
* @private
*/
AmapEllipseDirective.prototype.ngZone;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1hcC1lbGxpcHNlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1hbWFwLyIsInNvdXJjZXMiOlsiZGlyZWN0aXZlcy9hbWFwLWVsbGlwc2UvYW1hcC1lbGxpcHNlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBdUMsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0IsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdkUsT0FBTyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7O0lBRWpELEdBQUcsR0FBRyxjQUFjOztJQUNwQixjQUFjLG9CQUFPLGNBQWMsR0FBRSxRQUFRLEVBQUUsUUFBUSxFQUFDO0FBRTlEO0lBSzBDLGdEQUE4QjtJQWtCdEUsOEJBQ1ksRUFBc0IsRUFDdEIsTUFBMEIsRUFDNUIsTUFBcUIsRUFDckIsTUFBYztRQUp4QixZQU1FLGtCQUFNLEVBQUUsRUFBRSxNQUFNLENBQUMsU0FDbEI7UUFOVyxRQUFFLEdBQUYsRUFBRSxDQUFvQjtRQUN0QixZQUFNLEdBQU4sTUFBTSxDQUFvQjtRQUM1QixZQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3JCLFlBQU0sR0FBTixNQUFNLENBQVE7UUFOaEIsWUFBTSxHQUFHLEtBQUssQ0FBQzs7SUFTdkIsQ0FBQzs7OztJQUVELDBDQUFXOzs7SUFBWDtRQUNFLElBQUksQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7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QkFDbkIsU0FBUyxFQUFFLENBQUMsa0JBQWtCLENBQUM7aUJBQ2hDOzs7O2dCQVpRLGtCQUFrQjtnQkFFbEIsa0JBQWtCO2dCQURsQixhQUFhO2dCQUowQyxNQUFNOzs7eUJBc0JuRSxLQUFLO3lCQUlMLEtBQUs7MEJBSUwsS0FBSzs7SUErQ1IsMkJBQUM7Q0FBQSxBQWxFRCxDQUswQyxXQUFXLEdBNkRwRDtTQTdEWSxvQkFBb0I7Ozs7OztJQU0vQixzQ0FBb0M7Ozs7O0lBSXBDLHNDQUFrQzs7Ozs7SUFJbEMsdUNBQXVDOzs7OztJQUV2QyxzQ0FBdUI7Ozs7O0lBR3JCLGtDQUFnQzs7Ozs7SUFDaEMsc0NBQW9DOzs7OztJQUNwQyxzQ0FBNkI7Ozs7O0lBQzdCLHNDQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElucHV0LCBEaXJlY3RpdmUsIE9uRGVzdHJveSwgU2ltcGxlQ2hhbmdlcywgT25DaGFuZ2VzLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHppcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQU1hcFBvbHlnb24sIFBvbHlnb25PcHRpb25zIH0gZnJvbSAnLi4vLi4vYmFzZS9hbWFwLXBvbHlnb24nO1xuaW1wb3J0IHsgQW1hcEVsbGlwc2VTZXJ2aWNlIH0gZnJvbSAnLi9hbWFwLWVsbGlwc2Uuc2VydmljZSc7XG5pbXBvcnQgeyBMb2dnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL2xvZ2dlci9sb2dnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFdmVudEJpbmRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvZXZlbnQtYmluZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgZ2V0T3B0aW9ucywgQ2hhbmdlRmlsdGVyIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5jb25zdCBUQUcgPSAnYW1hcC1lbGxpcHNlJztcbmNvbnN0IEVsbGlwc2VPcHRpb25zID0gWy4uLlBvbHlnb25PcHRpb25zLCAnY2VudGVyJywgJ3JhZGl1cyddO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdhbWFwLWVsbGlwc2UnLFxuICBleHBvcnRBczogJ2VsbGlwc2UnLFxuICBwcm92aWRlcnM6IFtBbWFwRWxsaXBzZVNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBBbWFwRWxsaXBzZURpcmVjdGl2ZSBleHRlbmRzIEFNYXBQb2x5Z29uPEFNYXAuRWxsaXBzZSwgYW55PlxuICBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgLy8gLS0tLSBPcHRpb25zIC0tLS1cbiAgLyoqXG4gICAqIOakreWchueahOS4reW/g1xuICAgKi9cbiAgQElucHV0KCkgY2VudGVyOiBBTWFwLkxvY2F0aW9uVmFsdWU7XG4gIC8qKlxuICAgKiDmpK3lnIbljYrlvoRcbiAgICovXG4gIEBJbnB1dCgpIHJhZGl1czogW251bWJlciwgbnVtYmVyXTtcbiAgLyoqXG4gICAqIOmineWkljog5Lya6KaG55uW5YW25LuW5bGe5oCn55qE6YWN572u5pa55byPXG4gICAqL1xuICBASW5wdXQoKSBvcHRpb25zOiBBTWFwLkVsbGlwc2UuT3B0aW9ucztcblxuICBwcml2YXRlIGluaXRlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBvczogQW1hcEVsbGlwc2VTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBiaW5kZXI6IEV2ZW50QmluZGVyU2VydmljZSxcbiAgICBwcml2YXRlIGxvZ2dlcjogTG9nZ2VyU2VydmljZSxcbiAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxuICApIHtcbiAgICBzdXBlcihvcywgYmluZGVyKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMub3MuZGVzdHJveSgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGNvbnN0IGZpbHRlciA9IENoYW5nZUZpbHRlci5vZihjaGFuZ2VzKTtcbiAgICBjb25zdCBlbGxpcHNlID0gdGhpcy5nZXQoKTtcbiAgICBpZiAoIXRoaXMuaW5pdGVkKSB7XG4gICAgICB0aGlzLmxvZ2dlci5kKFRBRywgJ2luaXRpYWxpemluZyAuLi4nKTtcbiAgICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLm9wdGlvbnMgfHwgZ2V0T3B0aW9uczxBTWFwLkVsbGlwc2UuT3B0aW9ucz4odGhpcywgRWxsaXBzZU9wdGlvbnMpO1xuICAgICAgdGhpcy5sb2dnZXIuZChUQUcsICdvcHRpb25zOicsIG9wdGlvbnMpO1xuICAgICAgdGhpcy5vcy5jcmVhdGUob3B0aW9ucykuc3Vic2NyaWJlKG0gPT4ge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gdGhpcy5uYVJlYWR5LmVtaXQobSkpO1xuICAgICAgICB0aGlzLmxvZ2dlci5kKFRBRywgJ2VsbGlwc2UgaXMgcmVhZHkuJyk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuaW5pdGVkID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgemlwKGZpbHRlci5oYXM8QU1hcC5Mb2NhdGlvblZhbHVlPignY2VudGVyJyksIGVsbGlwc2UpLnN1YnNjcmliZSgoW3YsIHBdKSA9PiBwLnNldENlbnRlcih2KSk7XG4gICAgICB6aXAoZmlsdGVyLmhhczxBTWFwLkVsbGlwc2UuT3B0aW9ucz4oJ29wdGlvbnMnKSwgZWxsaXBzZSkuc3Vic2NyaWJlKChbdiwgcF0pID0+XG4gICAgICAgIHAuc2V0T3B0aW9ucyh2IHx8IHt9KSxcbiAgICAgICk7XG4gICAgICB6aXAoZmlsdGVyLmhhczxhbnk+KCdleHREYXRhJyksIGVsbGlwc2UpLnN1YnNjcmliZSgoW3YsIHBdKSA9PiBwLnNldEV4dERhdGEodikpO1xuICAgIH1cblxuICAgIHppcChmaWx0ZXIuaGFzPGJvb2xlYW4+KCdoaWRkZW4nKSwgZWxsaXBzZSkuc3Vic2NyaWJlKChbdiwgcF0pID0+ICh2ID8gcC5oaWRlKCkgOiBwLnNob3coKSkpO1xuICAgIGZpbHRlci5oYXM8Ym9vbGVhbj4oJ2VkaXRvcicpLnN1YnNjcmliZSh2ID0+IHRoaXMub3MudG9nZ2xlRWRpdG9yKHYpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDojrflj5blt7LliJvlu7rnmoQgQU1hcC5FbGxpcHNlIOWvueixoVxuICAgKi9cbiAgZ2V0KCkge1xuICAgIHJldHVybiB0aGlzLm9zLmdldCgpO1xuICB9XG59XG4iXX0=