UNPKG

angular-leaflet

Version:

Collection of angular components to build map views faster and with minimal configuration using the most popular library **LeafletJS**.

99 lines 6.57 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component, forwardRef, Input } from '@angular/core'; import { BaseLayer } from '../../core/base-layer'; import { circle } from 'leaflet'; export class CircleComponent extends BaseLayer { /** * @param {?} value * @return {?} */ set center(value) { this._center = value; if (this.layerRef) { this.layerRef.setLatLng(value); } else { this.createLayer(); } } /** * @param {?} value * @return {?} */ set radius(value) { this._radius = value; if (this.layerRef) { this.layerRef.setRadius(value); } else { this.createLayer(); } } /** * @param {?} value * @return {?} */ set options(value) { this._options = value; if (this.layerRef) { this.layerRef.setStyle(value); } } /** * @param {?} map * @return {?} */ addTo(map) { super.addTo(map); if (!this.layerRef) { this.createLayer(); } } /** * @private * @return {?} */ createLayer() { if (this.mapRef && this._center && this._radius) { this.layerRef = circle(this._center, Object.assign({}, this._options, { radius: this._radius })); this.mapRef.addLayer(this.layerRef); this.initHandlers(); } } } CircleComponent.decorators = [ { type: Component, args: [{ selector: 'ngl-circle', template: '', providers: [{ provide: BaseLayer, useExisting: forwardRef((/** * @return {?} */ () => CircleComponent)) }] }] } ]; CircleComponent.propDecorators = { center: [{ type: Input }], radius: [{ type: Input }], options: [{ type: Input }] }; if (false) { /** * @type {?} * @private */ CircleComponent.prototype._center; /** * @type {?} * @private */ CircleComponent.prototype._radius; /** * @type {?} * @private */ CircleComponent.prototype._options; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2lyY2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItbGVhZmxldC8iLCJzb3VyY2VzIjpbInZlY3RvcnMvY2lyY2xlL2NpcmNsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE1BQU0sRUFBMEQsTUFBTSxTQUFTLENBQUM7QUFPekYsTUFBTSxPQUFPLGVBQWdCLFNBQVEsU0FBaUI7Ozs7O0lBQ3BELElBQWEsTUFBTSxDQUFDLEtBQXVCO1FBQ3pDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNoQzthQUFNO1lBQ0wsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3BCO0lBQ0gsQ0FBQzs7Ozs7SUFFRCxJQUFhLE1BQU0sQ0FBQyxLQUFhO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNoQzthQUFNO1lBQ0wsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3BCO0lBQ0gsQ0FBQzs7Ozs7SUFFRCxJQUFhLE9BQU8sQ0FBQyxLQUFrQjtRQUNyQyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztRQUN0QixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDL0I7SUFDSCxDQUFDOzs7OztJQU1ELEtBQUssQ0FBQyxHQUFxQjtRQUN6QixLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNwQjtJQUNILENBQUM7Ozs7O0lBRU8sV0FBVztRQUNqQixJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQy9DLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLG9CQUM5QixJQUFJLENBQUMsUUFBUSxJQUNoQixNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sSUFDcEIsQ0FBQztZQUNILElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNwQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDckI7SUFDSCxDQUFDOzs7WUFuREYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxZQUFZO2dCQUN0QixRQUFRLEVBQUUsRUFBRTtnQkFDWixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFVBQVU7Ozt3QkFBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLEVBQUMsRUFBRSxDQUFDO2FBQ3BGOzs7cUJBRUUsS0FBSztxQkFTTCxLQUFLO3NCQVNMLEtBQUs7Ozs7Ozs7SUFPTixrQ0FBa0M7Ozs7O0lBQ2xDLGtDQUF3Qjs7Ozs7SUFDeEIsbUNBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZUxheWVyIH0gZnJvbSAnLi4vLi4vY29yZS9iYXNlLWxheWVyJztcbmltcG9ydCB7IGNpcmNsZSwgQ2lyY2xlLCBMYXRMbmdFeHByZXNzaW9uLCBMYXllckdyb3VwLCBNYXAsIFBhdGhPcHRpb25zIH0gZnJvbSAnbGVhZmxldCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25nbC1jaXJjbGUnLFxuICB0ZW1wbGF0ZTogJycsXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQmFzZUxheWVyLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDaXJjbGVDb21wb25lbnQpIH1dXG59KVxuZXhwb3J0IGNsYXNzIENpcmNsZUNvbXBvbmVudCBleHRlbmRzIEJhc2VMYXllcjxDaXJjbGU+IHtcbiAgQElucHV0KCkgc2V0IGNlbnRlcih2YWx1ZTogTGF0TG5nRXhwcmVzc2lvbikge1xuICAgIHRoaXMuX2NlbnRlciA9IHZhbHVlO1xuICAgIGlmICh0aGlzLmxheWVyUmVmKSB7XG4gICAgICB0aGlzLmxheWVyUmVmLnNldExhdExuZyh2YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY3JlYXRlTGF5ZXIoKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKSBzZXQgcmFkaXVzKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLl9yYWRpdXMgPSB2YWx1ZTtcbiAgICBpZiAodGhpcy5sYXllclJlZikge1xuICAgICAgdGhpcy5sYXllclJlZi5zZXRSYWRpdXModmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNyZWF0ZUxheWVyKCk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KCkgc2V0IG9wdGlvbnModmFsdWU6IFBhdGhPcHRpb25zKSB7XG4gICAgdGhpcy5fb3B0aW9ucyA9IHZhbHVlO1xuICAgIGlmICh0aGlzLmxheWVyUmVmKSB7XG4gICAgICB0aGlzLmxheWVyUmVmLnNldFN0eWxlKHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9jZW50ZXI6IExhdExuZ0V4cHJlc3Npb247XG4gIHByaXZhdGUgX3JhZGl1czogbnVtYmVyO1xuICBwcml2YXRlIF9vcHRpb25zOiBQYXRoT3B0aW9ucztcblxuICBhZGRUbyhtYXA6IE1hcCB8IExheWVyR3JvdXApOiB2b2lkIHtcbiAgICBzdXBlci5hZGRUbyhtYXApO1xuICAgIGlmICghdGhpcy5sYXllclJlZikge1xuICAgICAgdGhpcy5jcmVhdGVMYXllcigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlTGF5ZXIoKSB7XG4gICAgaWYgKHRoaXMubWFwUmVmICYmIHRoaXMuX2NlbnRlciAmJiB0aGlzLl9yYWRpdXMpIHtcbiAgICAgIHRoaXMubGF5ZXJSZWYgPSBjaXJjbGUodGhpcy5fY2VudGVyLCB7XG4gICAgICAgIC4uLnRoaXMuX29wdGlvbnMsXG4gICAgICAgIHJhZGl1czogdGhpcy5fcmFkaXVzXG4gICAgICB9KTtcbiAgICAgIHRoaXMubWFwUmVmLmFkZExheWVyKHRoaXMubGF5ZXJSZWYpO1xuICAgICAgdGhpcy5pbml0SGFuZGxlcnMoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==