ngx-amap
Version:
[][npm-badge-url] [][npm-badge-url] [][ci-url]
194 lines • 14.7 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: directives/amap-circle/amap-circle.directive.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import * as tslib_1 from "tslib";
import { Output, EventEmitter, Directive, NgZone, } from '@angular/core';
import { zip } from 'rxjs';
import { AMapCircle, CircleOptions } from '../../base/amap-circle';
import { AmapCircleService } from './amap-circle.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';
var AmapCircleDirective = /** @class */ (function (_super) {
tslib_1.__extends(AmapCircleDirective, _super);
function AmapCircleDirective(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;
/** @type {?} */
var editor = _this.os.getEditor();
_this.naEditorAddNode = _this.binder.bindEvent(editor, 'addnode');
_this.naEditorRemoveNode = _this.binder.bindEvent(editor, 'removenode');
_this.naEditorAdjust = _this.binder.bindEvent(editor, 'adjust');
_this.naEditorEnd = _this.binder.bindEvent(editor, 'end');
return _this;
}
/**
* @return {?}
*/
AmapCircleDirective.prototype.ngOnDestroy = /**
* @return {?}
*/
function () {
this.os.destroy();
};
/**
* @param {?} changes
* @return {?}
*/
AmapCircleDirective.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 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());
}));
filter.has('editor').subscribe((/**
* @param {?} v
* @return {?}
*/
function (v) { return _this.os.toggleEditor(v); }));
};
/**
* 获取已创建的 AMap.Circle 对象
*/
/**
* 获取已创建的 AMap.Circle 对象
* @return {?}
*/
AmapCircleDirective.prototype.get = /**
* 获取已创建的 AMap.Circle 对象
* @return {?}
*/
function () {
return this.os.get();
};
AmapCircleDirective.decorators = [
{ type: Directive, args: [{
selector: 'amap-circle',
exportAs: 'circle',
providers: [AmapCircleService],
},] }
];
/** @nocollapse */
AmapCircleDirective.ctorParameters = function () { return [
{ type: AmapCircleService },
{ type: EventBinderService },
{ type: LoggerService },
{ type: NgZone }
]; };
AmapCircleDirective.propDecorators = {
naEditorAddNode: [{ type: Output }],
naEditorRemoveNode: [{ type: Output }],
naEditorAdjust: [{ type: Output }],
naEditorEnd: [{ type: Output }]
};
return AmapCircleDirective;
}(AMapCircle));
export { AmapCircleDirective };
if (false) {
/** @type {?} */
AmapCircleDirective.prototype.naEditorAddNode;
/** @type {?} */
AmapCircleDirective.prototype.naEditorRemoveNode;
/** @type {?} */
AmapCircleDirective.prototype.naEditorAdjust;
/** @type {?} */
AmapCircleDirective.prototype.naEditorEnd;
/**
* @type {?}
* @private
*/
AmapCircleDirective.prototype.inited;
/**
* @type {?}
* @protected
*/
AmapCircleDirective.prototype.os;
/**
* @type {?}
* @protected
*/
AmapCircleDirective.prototype.binder;
/**
* @type {?}
* @private
*/
AmapCircleDirective.prototype.logger;
/**
* @type {?}
* @private
*/
AmapCircleDirective.prototype.ngZone;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1hcC1jaXJjbGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWFtYXAvIiwic291cmNlcyI6WyJkaXJlY3RpdmVzL2FtYXAtY2lyY2xlL2FtYXAtY2lyY2xlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxPQUFPLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBSVQsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0IsT0FBTyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdkUsT0FBTyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7O0lBRWpELEdBQUcsR0FBRyxhQUFhO0FBRXpCO0lBS3lDLCtDQUF1QjtJQVM5RCw2QkFDWSxFQUFxQixFQUNyQixNQUEwQixFQUM1QixNQUFxQixFQUNyQixNQUFjO1FBSnhCLFlBTUUsa0JBQU0sRUFBRSxFQUFFLE1BQU0sQ0FBQyxTQU1sQjtRQVhXLFFBQUUsR0FBRixFQUFFLENBQW1CO1FBQ3JCLFlBQU0sR0FBTixNQUFNLENBQW9CO1FBQzVCLFlBQU0sR0FBTixNQUFNLENBQWU7UUFDckIsWUFBTSxHQUFOLE1BQU0sQ0FBUTtRQU5oQixZQUFNLEdBQUcsS0FBSyxDQUFDOztZQVNmLE1BQU0sR0FBRyxLQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRTtRQUNsQyxLQUFJLENBQUMsZUFBZSxHQUFHLEtBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxTQUFT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dHRlcixcbiAgRGlyZWN0aXZlLFxuICBPbkRlc3Ryb3ksXG4gIFNpbXBsZUNoYW5nZXMsXG4gIE9uQ2hhbmdlcyxcbiAgTmdab25lLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHppcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQU1hcENpcmNsZSwgQ2lyY2xlT3B0aW9ucyB9IGZyb20gJy4uLy4uL2Jhc2UvYW1hcC1jaXJjbGUnO1xuaW1wb3J0IHsgQW1hcENpcmNsZVNlcnZpY2UgfSBmcm9tICcuL2FtYXAtY2lyY2xlLnNlcnZpY2UnO1xuaW1wb3J0IHsgTG9nZ2VyU2VydmljZSB9IGZyb20gJy4uLy4uL3NoYXJlZC9sb2dnZXIvbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRXZlbnRCaW5kZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL2V2ZW50LWJpbmRlci5zZXJ2aWNlJztcbmltcG9ydCB7IGdldE9wdGlvbnMsIENoYW5nZUZpbHRlciB9IGZyb20gJy4uLy4uL3V0aWxzJztcblxuY29uc3QgVEFHID0gJ2FtYXAtY2lyY2xlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnYW1hcC1jaXJjbGUnLFxuICBleHBvcnRBczogJ2NpcmNsZScsXG4gIHByb3ZpZGVyczogW0FtYXBDaXJjbGVTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgQW1hcENpcmNsZURpcmVjdGl2ZSBleHRlbmRzIEFNYXBDaXJjbGU8QU1hcC5DaXJjbGU+IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAvLyBlZGl0b3IgZXZlbnRzOlxuICBAT3V0cHV0KCkgbmFFZGl0b3JBZGROb2RlOiBFdmVudEVtaXR0ZXI8YW55PjtcbiAgQE91dHB1dCgpIG5hRWRpdG9yUmVtb3ZlTm9kZTogRXZlbnRFbWl0dGVyPGFueT47XG4gIEBPdXRwdXQoKSBuYUVkaXRvckFkanVzdDogRXZlbnRFbWl0dGVyPGFueT47XG4gIEBPdXRwdXQoKSBuYUVkaXRvckVuZDogRXZlbnRFbWl0dGVyPGFueT47XG5cbiAgcHJpdmF0ZSBpbml0ZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgb3M6IEFtYXBDaXJjbGVTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBiaW5kZXI6IEV2ZW50QmluZGVyU2VydmljZSxcbiAgICBwcml2YXRlIGxvZ2dlcjogTG9nZ2VyU2VydmljZSxcbiAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxuICApIHtcbiAgICBzdXBlcihvcywgYmluZGVyKTtcbiAgICBjb25zdCBlZGl0b3IgPSB0aGlzLm9zLmdldEVkaXRvcigpO1xuICAgIHRoaXMubmFFZGl0b3JBZGROb2RlID0gdGhpcy5iaW5kZXIuYmluZEV2ZW50KGVkaXRvciwgJ2FkZG5vZGUnKTtcbiAgICB0aGlzLm5hRWRpdG9yUmVtb3ZlTm9kZSA9IHRoaXMuYmluZGVyLmJpbmRFdmVudChlZGl0b3IsICdyZW1vdmVub2RlJyk7XG4gICAgdGhpcy5uYUVkaXRvckFkanVzdCA9IHRoaXMuYmluZGVyLmJpbmRFdmVudChlZGl0b3IsICdhZGp1c3QnKTtcbiAgICB0aGlzLm5hRWRpdG9yRW5kID0gdGhpcy5iaW5kZXIuYmluZEV2ZW50KGVkaXRvciwgJ2VuZCcpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5vcy5kZXN0cm95KCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgY29uc3QgZmlsdGVyID0gQ2hhbmdlRmlsdGVyLm9mKGNoYW5nZXMpO1xuICAgIGNvbnN0IGNpcmNsZSA9IHRoaXMuZ2V0KCk7XG4gICAgaWYgKCF0aGlzLmluaXRlZCkge1xuICAgICAgdGhpcy5sb2dnZXIuZChUQUcsICdpbml0aWFsaXppbmcgLi4uJyk7XG4gICAgICBjb25zdCBvcHRpb25zID0gdGhpcy5vcHRpb25zIHx8IGdldE9wdGlvbnM8QU1hcC5DaXJjbGUuT3B0aW9ucz4odGhpcywgQ2lyY2xlT3B0aW9ucyk7XG4gICAgICB0aGlzLmxvZ2dlci5kKFRBRywgJ29wdGlvbnM6Jywgb3B0aW9ucyk7XG4gICAgICB0aGlzLm9zLmNyZWF0ZShvcHRpb25zKS5zdWJzY3JpYmUobSA9PiB7XG4gICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB0aGlzLm5hUmVhZHkuZW1pdChtKSk7XG4gICAgICAgIHRoaXMubG9nZ2VyLmQoVEFHLCAnY2lyY2xlIGlzIHJlYWR5LicpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLmluaXRlZCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHppcChmaWx0ZXIuaGFzPEFNYXAuTG9jYXRpb25WYWx1ZT4oJ2NlbnRlcicpLCBjaXJjbGUpLnN1YnNjcmliZSgoW3YsIHBdKSA9PiBwLnNldENlbnRlcih2KSk7XG4gICAgICB6aXAoZmlsdGVyLmhhczxBTWFwLkNpcmNsZS5PcHRpb25zPignb3B0aW9ucycpLCBjaXJjbGUpLnN1YnNjcmliZSgoW3YsIHBdKSA9PlxuICAgICAgICBwLnNldE9wdGlvbnModiB8fCB7fSksXG4gICAgICApO1xuICAgICAgemlwKGZpbHRlci5oYXM8bnVtYmVyPigncmFkaXVzJyksIGNpcmNsZSkuc3Vic2NyaWJlKChbdiwgcF0pID0+IHAuc2V0UmFkaXVzKHYpKTtcbiAgICAgIHppcChmaWx0ZXIuaGFzPGFueT4oJ2V4dERhdGEnKSwgY2lyY2xlKS5zdWJzY3JpYmUoKFt2LCBwXSkgPT4gcC5zZXRFeHREYXRhKHYpKTtcbiAgICB9XG5cbiAgICB6aXAoZmlsdGVyLmhhczxib29sZWFuPignaGlkZGVuJyksIGNpcmNsZSkuc3Vic2NyaWJlKChbdiwgcF0pID0+ICh2ID8gcC5oaWRlKCkgOiBwLnNob3coKSkpO1xuICAgIGZpbHRlci5oYXM8Ym9vbGVhbj4oJ2VkaXRvcicpLnN1YnNjcmliZSh2ID0+IHRoaXMub3MudG9nZ2xlRWRpdG9yKHYpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDojrflj5blt7LliJvlu7rnmoQgQU1hcC5DaXJjbGUg5a+56LGhXG4gICAqL1xuICBnZXQoKSB7XG4gICAgcmV0dXJuIHRoaXMub3MuZ2V0KCk7XG4gIH1cbn1cbiJdfQ==