UNPKG

angular-leaflet

Version:

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

91 lines 5.68 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import * as tslib_1 from "tslib"; import { Component, forwardRef, Input } from '@angular/core'; import { divIcon, marker } from 'leaflet'; import { BaseLayer } from '../core/base-layer'; var MarkerComponent = /** @class */ (function (_super) { tslib_1.__extends(MarkerComponent, _super); function MarkerComponent() { return _super !== null && _super.apply(this, arguments) || this; } Object.defineProperty(MarkerComponent.prototype, "latLng", { set: /** * @param {?} value * @return {?} */ function (value) { this._latLng = value; this.prepareLayer(); }, enumerable: true, configurable: true }); /** * @private * @return {?} */ MarkerComponent.prototype.prepareLayer = /** * @private * @return {?} */ function () { if (this.mapRef && this._latLng) { if (this.layerRef) { this.layerRef.setLatLng(this._latLng); } else { this.createLayer(); } } }; /** * @private * @return {?} */ MarkerComponent.prototype.createLayer = /** * @private * @return {?} */ function () { this.layerRef = marker(this._latLng, { icon: divIcon() }); this.mapRef.addLayer(this.layerRef); this.initHandlers(); }; /** * @param {?} map * @return {?} */ MarkerComponent.prototype.addTo = /** * @param {?} map * @return {?} */ function (map) { _super.prototype.addTo.call(this, map); this.prepareLayer(); }; MarkerComponent.decorators = [ { type: Component, args: [{ selector: 'ngl-marker', template: '', providers: [{ provide: BaseLayer, useExisting: forwardRef((/** * @return {?} */ function () { return MarkerComponent; })) }] }] } ]; MarkerComponent.propDecorators = { latLng: [{ type: Input }] }; return MarkerComponent; }(BaseLayer)); export { MarkerComponent }; if (false) { /** @type {?} */ MarkerComponent.prototype._latLng; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItbGVhZmxldC8iLCJzb3VyY2VzIjpbIm1hcmtlci9tYXJrZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxPQUFPLEVBQXFDLE1BQU0sRUFBVSxNQUFNLFNBQVMsQ0FBQztBQUNyRixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFL0M7SUFLcUMsMkNBQWlCO0lBTHREOztJQW1DQSxDQUFDO0lBN0JDLHNCQUFhLG1DQUFNOzs7OztRQUFuQixVQUFvQixLQUF1QjtZQUN6QyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDdEIsQ0FBQzs7O09BQUE7Ozs7O0lBSU8sc0NBQVk7Ozs7SUFBcEI7UUFDRSxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUMvQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUN2QztpQkFBTTtnQkFDTCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7YUFDcEI7U0FDRjtJQUNILENBQUM7Ozs7O0lBRU8scUNBQVc7Ozs7SUFBbkI7UUFDRSxJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ25DLElBQUksRUFBRSxPQUFPLEVBQUU7U0FDaEIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDOzs7OztJQUVELCtCQUFLOzs7O0lBQUwsVUFBTSxHQUFxQjtRQUN6QixpQkFBTSxLQUFLLFlBQUMsR0FBRyxDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7O2dCQWxDRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFFBQVEsRUFBRSxFQUFFO29CQUNaLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsVUFBVTs7OzRCQUFDLGNBQU0sT0FBQSxlQUFlLEVBQWYsQ0FBZSxFQUFDLEVBQUUsQ0FBQztpQkFDcEY7Ozt5QkFFRSxLQUFLOztJQTZCUixzQkFBQztDQUFBLEFBbkNELENBS3FDLFNBQVMsR0E4QjdDO1NBOUJZLGVBQWU7OztJQU0xQixrQ0FBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBkaXZJY29uLCBMYXRMbmdFeHByZXNzaW9uLCBMYXllckdyb3VwLCBNYXAsIG1hcmtlciwgTWFya2VyIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgeyBCYXNlTGF5ZXIgfSBmcm9tICcuLi9jb3JlL2Jhc2UtbGF5ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ2wtbWFya2VyJyxcbiAgdGVtcGxhdGU6ICcnLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEJhc2VMYXllciwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTWFya2VyQ29tcG9uZW50KSB9XVxufSlcbmV4cG9ydCBjbGFzcyBNYXJrZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlTGF5ZXI8TWFya2VyPiB7XG4gIEBJbnB1dCgpIHNldCBsYXRMbmcodmFsdWU6IExhdExuZ0V4cHJlc3Npb24pIHtcbiAgICB0aGlzLl9sYXRMbmcgPSB2YWx1ZTtcbiAgICB0aGlzLnByZXBhcmVMYXllcigpO1xuICB9XG5cbiAgX2xhdExuZzogTGF0TG5nRXhwcmVzc2lvbjtcblxuICBwcml2YXRlIHByZXBhcmVMYXllcigpIHtcbiAgICBpZiAodGhpcy5tYXBSZWYgJiYgdGhpcy5fbGF0TG5nKSB7XG4gICAgICBpZiAodGhpcy5sYXllclJlZikge1xuICAgICAgICB0aGlzLmxheWVyUmVmLnNldExhdExuZyh0aGlzLl9sYXRMbmcpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jcmVhdGVMYXllcigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlTGF5ZXIoKSB7XG4gICAgdGhpcy5sYXllclJlZiA9IG1hcmtlcih0aGlzLl9sYXRMbmcsIHtcbiAgICAgIGljb246IGRpdkljb24oKVxuICAgIH0pO1xuICAgIHRoaXMubWFwUmVmLmFkZExheWVyKHRoaXMubGF5ZXJSZWYpO1xuICAgIHRoaXMuaW5pdEhhbmRsZXJzKCk7XG4gIH1cblxuICBhZGRUbyhtYXA6IE1hcCB8IExheWVyR3JvdXApOiB2b2lkIHtcbiAgICBzdXBlci5hZGRUbyhtYXApO1xuICAgIHRoaXMucHJlcGFyZUxheWVyKCk7XG4gIH1cbn1cbiJdfQ==