UNPKG

angular-leaflet

Version:

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

105 lines 6.49 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import * as tslib_1 from "tslib"; import { ContentChildren, QueryList } from '@angular/core'; import { LayerHandler } from './layer-handler'; import { v4 as uuid } from 'uuid'; /** * @template T */ var BaseLayer = /** @class */ (function () { function BaseLayer() { this.handlerIds = []; this.id = uuid(); } /** * @param {?} map * @return {?} */ BaseLayer.prototype.addTo = /** * @param {?} map * @return {?} */ function (map) { this.mapRef = map; }; /** * @return {?} */ BaseLayer.prototype.removeFrom = /** * @return {?} */ function () { if (this.layerRef) { ((/** @type {?} */ (this.mapRef))).removeLayer(this.layerRef); } }; /** * @return {?} */ BaseLayer.prototype.ngAfterContentInit = /** * @return {?} */ function () { this.initHandlers(); this.handlerSubscription = this.handlers.changes.subscribe(this.initHandlers.bind(this)); }; /** * @return {?} */ BaseLayer.prototype.initHandlers = /** * @return {?} */ function () { var _this = this; this.handlers.filter((/** * @param {?} handler * @return {?} */ function (handler) { return !_this.handlerIds.includes(handler.id); })).forEach(this.initHandler.bind(this)); }; /** * @param {?} handler * @return {?} */ BaseLayer.prototype.initHandler = /** * @param {?} handler * @return {?} */ function (handler) { handler.initialize(this.layerRef['_map'], this.layerRef); this.handlerIds = tslib_1.__spread(this.handlerIds, [handler.id]); }; /** * @return {?} */ BaseLayer.prototype.ngOnDestroy = /** * @return {?} */ function () { this.handlerSubscription.unsubscribe(); this.removeFrom(); }; BaseLayer.propDecorators = { handlers: [{ type: ContentChildren, args: [LayerHandler,] }] }; return BaseLayer; }()); export { BaseLayer }; if (false) { /** @type {?} */ BaseLayer.prototype.id; /** @type {?} */ BaseLayer.prototype.mapRef; /** @type {?} */ BaseLayer.prototype.layerRef; /** @type {?} */ BaseLayer.prototype.handlerIds; /** @type {?} */ BaseLayer.prototype.handlerSubscription; /** @type {?} */ BaseLayer.prototype.handlers; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1sYXllci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItbGVhZmxldC8iLCJzb3VyY2VzIjpbImNvcmUvYmFzZS1sYXllci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBb0IsZUFBZSxFQUFhLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLEVBQUUsSUFBSSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUFHbEM7SUFRRTtRQUpBLGVBQVUsR0FBYSxFQUFFLENBQUM7UUFLeEIsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsQ0FBQztJQUNuQixDQUFDOzs7OztJQUVELHlCQUFLOzs7O0lBQUwsVUFBTSxHQUFxQjtRQUN6QixJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQztJQUNwQixDQUFDOzs7O0lBRUQsOEJBQVU7OztJQUFWO1FBQ0UsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLENBQUMsbUJBQUEsSUFBSSxDQUFDLE1BQU0sRUFBTyxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUNqRDtJQUNILENBQUM7Ozs7SUFFRCxzQ0FBa0I7OztJQUFsQjtRQUNFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDM0YsQ0FBQzs7OztJQUVELGdDQUFZOzs7SUFBWjtRQUFBLGlCQUVDO1FBREMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNOzs7O1FBQUMsVUFBQSxPQUFPLElBQUksT0FBQSxDQUFDLEtBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBckMsQ0FBcUMsRUFBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzlHLENBQUM7Ozs7O0lBRUQsK0JBQVc7Ozs7SUFBWCxVQUFZLE9BQTBCO1FBQ3BDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLFVBQVUsb0JBQU8sSUFBSSxDQUFDLFVBQVUsR0FBRSxPQUFPLENBQUMsRUFBRSxFQUFDLENBQUM7SUFDckQsQ0FBQzs7OztJQUVELCtCQUFXOzs7SUFBWDtRQUNFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQzs7MkJBakNBLGVBQWUsU0FBQyxZQUFZOztJQWtDL0IsZ0JBQUM7Q0FBQSxBQXhDRCxJQXdDQztTQXhDWSxTQUFTOzs7SUFDcEIsdUJBQVc7O0lBQ1gsMkJBQXlCOztJQUN6Qiw2QkFBWTs7SUFDWiwrQkFBMEI7O0lBQzFCLHdDQUFrQzs7SUFDbEMsNkJBQXNFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGF5ZXIsIExheWVyR3JvdXAsIE1hcCB9IGZyb20gJ2xlYWZsZXQnO1xuaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgQ29udGVudENoaWxkcmVuLCBPbkRlc3Ryb3ksIFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGF5ZXJIYW5kbGVyIH0gZnJvbSAnLi9sYXllci1oYW5kbGVyJztcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgY2xhc3MgQmFzZUxheWVyPFQgZXh0ZW5kcyBMYXllcj4gaW1wbGVtZW50cyBPbkRlc3Ryb3ksIEFmdGVyQ29udGVudEluaXQge1xuICBpZDogc3RyaW5nO1xuICBtYXBSZWY6IE1hcCB8IExheWVyR3JvdXA7XG4gIGxheWVyUmVmOiBUO1xuICBoYW5kbGVySWRzOiBzdHJpbmdbXSA9IFtdO1xuICBoYW5kbGVyU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gIEBDb250ZW50Q2hpbGRyZW4oTGF5ZXJIYW5kbGVyKSBoYW5kbGVyczogUXVlcnlMaXN0PExheWVySGFuZGxlcjxhbnk+PjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmlkID0gdXVpZCgpO1xuICB9XG5cbiAgYWRkVG8obWFwOiBNYXAgfCBMYXllckdyb3VwKTogdm9pZCB7XG4gICAgdGhpcy5tYXBSZWYgPSBtYXA7XG4gIH1cblxuICByZW1vdmVGcm9tKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxheWVyUmVmKSB7XG4gICAgICAodGhpcy5tYXBSZWYgYXMgYW55KS5yZW1vdmVMYXllcih0aGlzLmxheWVyUmVmKTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbml0SGFuZGxlcnMoKTtcbiAgICB0aGlzLmhhbmRsZXJTdWJzY3JpcHRpb24gPSB0aGlzLmhhbmRsZXJzLmNoYW5nZXMuc3Vic2NyaWJlKHRoaXMuaW5pdEhhbmRsZXJzLmJpbmQodGhpcykpO1xuICB9XG5cbiAgaW5pdEhhbmRsZXJzKCkge1xuICAgIHRoaXMuaGFuZGxlcnMuZmlsdGVyKGhhbmRsZXIgPT4gIXRoaXMuaGFuZGxlcklkcy5pbmNsdWRlcyhoYW5kbGVyLmlkKSkuZm9yRWFjaCh0aGlzLmluaXRIYW5kbGVyLmJpbmQodGhpcykpO1xuICB9XG5cbiAgaW5pdEhhbmRsZXIoaGFuZGxlcjogTGF5ZXJIYW5kbGVyPGFueT4pIHtcbiAgICBoYW5kbGVyLmluaXRpYWxpemUodGhpcy5sYXllclJlZlsnX21hcCddLCB0aGlzLmxheWVyUmVmKTtcbiAgICB0aGlzLmhhbmRsZXJJZHMgPSBbLi4udGhpcy5oYW5kbGVySWRzLCBoYW5kbGVyLmlkXTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuaGFuZGxlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMucmVtb3ZlRnJvbSgpO1xuICB9XG59XG4iXX0=