@nextgis/ngw-leaflet 1.7.0 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/ngw-leaflet.esm-browser.js +93 -80
- package/lib/ngw-leaflet.esm-browser.js.map +1 -1
- package/lib/ngw-leaflet.esm-browser.prod.js +2 -2
- package/lib/ngw-leaflet.esm-browser.prod.js.map +1 -1
- package/lib/ngw-leaflet.esm-bundler.js +1 -1
- package/lib/ngw-leaflet.global.js +101 -91
- package/lib/ngw-leaflet.global.js.map +1 -1
- package/lib/ngw-leaflet.global.prod.js +2 -2
- package/lib/ngw-leaflet.global.prod.js.map +1 -1
- package/package.json +4 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** Bundle of @nextgis/ngw-leaflet; version: 1.
|
|
1
|
+
/** Bundle of @nextgis/ngw-leaflet; version: 1.8.0; author: NextGIS */
|
|
2
2
|
var NgwLeaflet = (function () {
|
|
3
3
|
'use strict';
|
|
4
4
|
|
|
@@ -16931,7 +16931,7 @@ var NgwLeaflet = (function () {
|
|
|
16931
16931
|
var toStatus = status !== undefined ? status : !onMap;
|
|
16932
16932
|
var silent = options.silent !== undefined ? options.silent : false;
|
|
16933
16933
|
var action = function (l) { return __awaiter(_this, void 0, void 0, function () {
|
|
16934
|
-
var id, preEventName, eventName, order,
|
|
16934
|
+
var id, preEventName, eventName, order, anotherVisibleBaselayers, _i, anotherVisibleBaselayers_1, bl;
|
|
16935
16935
|
var _this = this;
|
|
16936
16936
|
return __generator(this, function (_a) {
|
|
16937
16937
|
switch (_a.label) {
|
|
@@ -16943,18 +16943,25 @@ var NgwLeaflet = (function () {
|
|
|
16943
16943
|
this._emitLayerEvent(preEventName, id, l);
|
|
16944
16944
|
this._emitLayerEvent('layer:pretoggle', id, l);
|
|
16945
16945
|
}
|
|
16946
|
-
if (!(toStatus && this.mapAdapter)) return [3 /*break*/,
|
|
16946
|
+
if (!(toStatus && this.mapAdapter)) return [3 /*break*/, 5];
|
|
16947
16947
|
order = l.options.baselayer ? 0 : l.options.order;
|
|
16948
|
-
if (!(l.options.baselayer && this._baselayers.length)) return [3 /*break*/,
|
|
16949
|
-
|
|
16948
|
+
if (!(l.options.baselayer && this._baselayers.length)) return [3 /*break*/, 4];
|
|
16949
|
+
anotherVisibleBaselayers = this._baselayers.filter(function (x) {
|
|
16950
16950
|
return x !== l.id && _this.isLayerVisible(x);
|
|
16951
16951
|
});
|
|
16952
|
-
|
|
16953
|
-
|
|
16952
|
+
_i = 0, anotherVisibleBaselayers_1 = anotherVisibleBaselayers;
|
|
16953
|
+
_a.label = 1;
|
|
16954
16954
|
case 1:
|
|
16955
|
-
|
|
16956
|
-
|
|
16955
|
+
if (!(_i < anotherVisibleBaselayers_1.length)) return [3 /*break*/, 4];
|
|
16956
|
+
bl = anotherVisibleBaselayers_1[_i];
|
|
16957
|
+
return [4 /*yield*/, this.hideLayer(bl)];
|
|
16957
16958
|
case 2:
|
|
16959
|
+
_a.sent();
|
|
16960
|
+
_a.label = 3;
|
|
16961
|
+
case 3:
|
|
16962
|
+
_i++;
|
|
16963
|
+
return [3 /*break*/, 1];
|
|
16964
|
+
case 4:
|
|
16958
16965
|
if (l.showLayer) {
|
|
16959
16966
|
l.showLayer.call(l, l.layer);
|
|
16960
16967
|
}
|
|
@@ -16964,16 +16971,16 @@ var NgwLeaflet = (function () {
|
|
|
16964
16971
|
if (order !== undefined) {
|
|
16965
16972
|
this.mapAdapter.setLayerOrder(l.layer, order, this._layers);
|
|
16966
16973
|
}
|
|
16967
|
-
return [3 /*break*/,
|
|
16968
|
-
case
|
|
16974
|
+
return [3 /*break*/, 6];
|
|
16975
|
+
case 5:
|
|
16969
16976
|
if (l.hideLayer) {
|
|
16970
16977
|
l.hideLayer.call(l, l.layer);
|
|
16971
16978
|
}
|
|
16972
16979
|
else if (l.layer !== undefined) {
|
|
16973
16980
|
this.mapAdapter.hideLayer(l.layer);
|
|
16974
16981
|
}
|
|
16975
|
-
_a.label =
|
|
16976
|
-
case
|
|
16982
|
+
_a.label = 6;
|
|
16983
|
+
case 6:
|
|
16977
16984
|
if (!silent) {
|
|
16978
16985
|
this._emitLayerEvent(eventName, id, l);
|
|
16979
16986
|
this._emitLayerEvent('layer:toggle', id, l);
|
|
@@ -22642,7 +22649,8 @@ var NgwLeaflet = (function () {
|
|
|
22642
22649
|
this.pane = pane;
|
|
22643
22650
|
}
|
|
22644
22651
|
}
|
|
22645
|
-
BaseAdapter.prototype.addLayer = function (
|
|
22652
|
+
BaseAdapter.prototype.addLayer = function (options) {
|
|
22653
|
+
Object.assign(this.options, options);
|
|
22646
22654
|
return undefined;
|
|
22647
22655
|
};
|
|
22648
22656
|
return BaseAdapter;
|
|
@@ -22663,12 +22671,12 @@ var NgwLeaflet = (function () {
|
|
|
22663
22671
|
_this.$unselect = function () {
|
|
22664
22672
|
_this.unselect();
|
|
22665
22673
|
};
|
|
22666
|
-
_this.layer = new leafletSrc.exports.FeatureGroup([], { pane: _this.pane });
|
|
22667
22674
|
return _this;
|
|
22668
22675
|
}
|
|
22669
22676
|
GeoJsonAdapter.prototype.addLayer = function (options) {
|
|
22670
|
-
this.options
|
|
22677
|
+
Object.assign(this.options, options);
|
|
22671
22678
|
this.paint = options.paint;
|
|
22679
|
+
this.layer = new leafletSrc.exports.FeatureGroup([], __assign(__assign({}, options.nativeOptions), { pane: this.pane }));
|
|
22672
22680
|
this.selectedPaint = options.selectedPaint;
|
|
22673
22681
|
options.paint = this.paint;
|
|
22674
22682
|
if (options.data) {
|
|
@@ -22728,30 +22736,28 @@ var NgwLeaflet = (function () {
|
|
|
22728
22736
|
var _this = this;
|
|
22729
22737
|
// Some optimization
|
|
22730
22738
|
this._filterFun = fun;
|
|
22731
|
-
|
|
22732
|
-
var
|
|
22733
|
-
if (
|
|
22734
|
-
|
|
22735
|
-
|
|
22736
|
-
|
|
22737
|
-
|
|
22738
|
-
|
|
22739
|
-
|
|
22740
|
-
|
|
22741
|
-
|
|
22742
|
-
|
|
22743
|
-
|
|
22744
|
-
|
|
22745
|
-
|
|
22746
|
-
|
|
22747
|
-
|
|
22748
|
-
|
|
22739
|
+
var layer_ = this.layer;
|
|
22740
|
+
var map = layer_ && layer_._map;
|
|
22741
|
+
if (layer_ && map) {
|
|
22742
|
+
layer_.remove();
|
|
22743
|
+
var filteredLayers_1 = [];
|
|
22744
|
+
this._layers.forEach(function (_a) {
|
|
22745
|
+
var feature = _a.feature, layer = _a.layer;
|
|
22746
|
+
if (layer) {
|
|
22747
|
+
var ok = fun
|
|
22748
|
+
? fun(__assign({ target: _this, feature: feature, layer: layer }, createFeaturePositionOptions(feature)))
|
|
22749
|
+
: true;
|
|
22750
|
+
if (ok) {
|
|
22751
|
+
layer_.addLayer(layer);
|
|
22752
|
+
filteredLayers_1.push(__assign({ target: _this, feature: feature, layer: layer }, createFeaturePositionOptions(feature)));
|
|
22753
|
+
}
|
|
22754
|
+
else {
|
|
22755
|
+
layer_.removeLayer(layer);
|
|
22756
|
+
}
|
|
22749
22757
|
}
|
|
22750
|
-
}
|
|
22751
|
-
|
|
22752
|
-
|
|
22753
|
-
if (_map) {
|
|
22754
|
-
this.layer.addTo(_map);
|
|
22758
|
+
});
|
|
22759
|
+
this._filteredLayers = filteredLayers_1;
|
|
22760
|
+
layer_.addTo(map);
|
|
22755
22761
|
}
|
|
22756
22762
|
return this._filteredLayers;
|
|
22757
22763
|
};
|
|
@@ -22768,24 +22774,27 @@ var NgwLeaflet = (function () {
|
|
|
22768
22774
|
};
|
|
22769
22775
|
GeoJsonAdapter.prototype.clearLayer = function (cb) {
|
|
22770
22776
|
this.unselect();
|
|
22771
|
-
|
|
22772
|
-
|
|
22773
|
-
|
|
22774
|
-
|
|
22775
|
-
var
|
|
22776
|
-
if (
|
|
22777
|
-
var
|
|
22778
|
-
if (
|
|
22779
|
-
|
|
22780
|
-
|
|
22777
|
+
var layer_ = this.layer;
|
|
22778
|
+
if (layer_) {
|
|
22779
|
+
if (cb) {
|
|
22780
|
+
for (var fry = this._layers.length; fry--;) {
|
|
22781
|
+
var def = this._layers[fry];
|
|
22782
|
+
if (def) {
|
|
22783
|
+
var feature = def.feature, layer = def.layer;
|
|
22784
|
+
if (feature && layer) {
|
|
22785
|
+
var exist = cb(feature);
|
|
22786
|
+
if (exist) {
|
|
22787
|
+
layer_.removeLayer(layer);
|
|
22788
|
+
this._layers.splice(fry, 1);
|
|
22789
|
+
}
|
|
22781
22790
|
}
|
|
22782
22791
|
}
|
|
22783
22792
|
}
|
|
22784
22793
|
}
|
|
22785
|
-
|
|
22786
|
-
|
|
22787
|
-
|
|
22788
|
-
|
|
22794
|
+
else {
|
|
22795
|
+
layer_.clearLayers();
|
|
22796
|
+
this._layers = [];
|
|
22797
|
+
}
|
|
22789
22798
|
}
|
|
22790
22799
|
};
|
|
22791
22800
|
GeoJsonAdapter.prototype.setData = function (data) {
|
|
@@ -22852,8 +22861,10 @@ var NgwLeaflet = (function () {
|
|
|
22852
22861
|
return this.getBounds();
|
|
22853
22862
|
};
|
|
22854
22863
|
GeoJsonAdapter.prototype.getBounds = function () {
|
|
22855
|
-
|
|
22856
|
-
|
|
22864
|
+
if (this.layer) {
|
|
22865
|
+
var bounds = this.layer.getBounds();
|
|
22866
|
+
return boundsToArray(bounds);
|
|
22867
|
+
}
|
|
22857
22868
|
};
|
|
22858
22869
|
GeoJsonAdapter.prototype.setOpacity = function (value) {
|
|
22859
22870
|
this.options.opacity = value;
|
|
@@ -23085,40 +23096,47 @@ var NgwLeaflet = (function () {
|
|
|
23085
23096
|
lopt = this._createPaintOptions(paint, type);
|
|
23086
23097
|
}
|
|
23087
23098
|
lopt.onEachFeature = function (feature, layer) {
|
|
23088
|
-
|
|
23099
|
+
_this._onEachFeature(feature, layer);
|
|
23100
|
+
};
|
|
23101
|
+
return lopt;
|
|
23102
|
+
};
|
|
23103
|
+
GeoJsonAdapter.prototype._onEachFeature = function (feature, layer) {
|
|
23104
|
+
var _this = this;
|
|
23105
|
+
var layer_ = this.layer;
|
|
23106
|
+
if (layer_) {
|
|
23107
|
+
var def_1 = __assign({ target: this, feature: feature, layer: layer }, createFeaturePositionOptions(feature));
|
|
23089
23108
|
// @ts-ignore
|
|
23090
|
-
layer.options.pane =
|
|
23091
|
-
|
|
23109
|
+
layer.options.pane = this.pane;
|
|
23110
|
+
this._layers.push(def_1);
|
|
23092
23111
|
var ok = true;
|
|
23093
|
-
if (
|
|
23094
|
-
ok =
|
|
23112
|
+
if (this._filterFun) {
|
|
23113
|
+
ok = this._filterFun(def_1);
|
|
23095
23114
|
}
|
|
23096
23115
|
if (ok) {
|
|
23097
|
-
var _a =
|
|
23116
|
+
var _a = this.options, popup = _a.popup, popupOptions = _a.popupOptions, selectable = _a.selectable, interactive = _a.interactive, selectOnHover = _a.selectOnHover;
|
|
23098
23117
|
// @ts-ignore
|
|
23099
23118
|
layer.options.interactive = defined(interactive) ? interactive : true;
|
|
23100
|
-
|
|
23119
|
+
layer_.addLayer(layer);
|
|
23101
23120
|
if (selectable) {
|
|
23102
23121
|
if (selectOnHover) {
|
|
23103
23122
|
layer.on('mouseover', function () {
|
|
23104
|
-
_this._selectLayer(
|
|
23123
|
+
_this._selectLayer(def_1, 'hover');
|
|
23105
23124
|
});
|
|
23106
23125
|
layer.on('mouseout', function () {
|
|
23107
|
-
_this._unSelectLayer(
|
|
23126
|
+
_this._unSelectLayer(def_1);
|
|
23108
23127
|
});
|
|
23109
23128
|
}
|
|
23110
23129
|
else {
|
|
23111
|
-
layer.on('click', function (e) { return _this._selectOnLayerClick(e); },
|
|
23130
|
+
layer.on('click', function (e) { return _this._selectOnLayerClick(e); }, this);
|
|
23112
23131
|
}
|
|
23113
23132
|
}
|
|
23114
|
-
|
|
23133
|
+
this._handleMouseEvents(layer);
|
|
23115
23134
|
if (popup) {
|
|
23116
|
-
|
|
23135
|
+
this._openPopup(__assign({ target: this, layer: layer, feature: feature }, createFeaturePositionOptions(feature)), popupOptions, 'api');
|
|
23117
23136
|
}
|
|
23118
|
-
|
|
23137
|
+
this._updateTooltip({ layer: layer, feature: feature });
|
|
23119
23138
|
}
|
|
23120
|
-
}
|
|
23121
|
-
return lopt;
|
|
23139
|
+
}
|
|
23122
23140
|
};
|
|
23123
23141
|
GeoJsonAdapter.prototype._handleMouseEvents = function (layer) {
|
|
23124
23142
|
var _this = this;
|
|
@@ -23530,7 +23548,7 @@ var NgwLeaflet = (function () {
|
|
|
23530
23548
|
if (url) {
|
|
23531
23549
|
options = __assign({ transparent: true }, options);
|
|
23532
23550
|
var updateWmsParamsFromOpt_1 = options.updateWmsParams;
|
|
23533
|
-
this.layer = new ImageLayer(url, __assign(__assign({ pane: this.pane, headers: options.headers, setViewDelay: options.setViewDelay }, options), options.params));
|
|
23551
|
+
this.layer = new ImageLayer(url, __assign(__assign(__assign({ pane: this.pane, headers: options.headers, setViewDelay: options.setViewDelay }, options), options.params), options.nativeOptions));
|
|
23534
23552
|
if (updateWmsParamsFromOpt_1) {
|
|
23535
23553
|
var updateWmsParams_1 = this.layer.updateWmsParams;
|
|
23536
23554
|
this.layer.updateWmsParams = function (map) {
|
|
@@ -23665,26 +23683,18 @@ var NgwLeaflet = (function () {
|
|
|
23665
23683
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
23666
23684
|
}
|
|
23667
23685
|
WmsAdapter.prototype.addLayer = function (options) {
|
|
23668
|
-
|
|
23669
|
-
|
|
23670
|
-
|
|
23671
|
-
|
|
23672
|
-
|
|
23673
|
-
|
|
23674
|
-
|
|
23675
|
-
|
|
23676
|
-
|
|
23677
|
-
|
|
23678
|
-
};
|
|
23679
|
-
var layer = void 0;
|
|
23680
|
-
if (opt.headers) {
|
|
23681
|
-
layer = new WmsLayer(url, __assign(__assign({}, layerOptions), { headers: opt.headers }));
|
|
23682
|
-
}
|
|
23683
|
-
else {
|
|
23684
|
-
layer = new leafletSrc.exports.TileLayer.WMS(url, layerOptions);
|
|
23685
|
-
}
|
|
23686
|
-
return layer;
|
|
23686
|
+
Object.assign(this.options, options);
|
|
23687
|
+
var url = options.url, opt = __rest(options, ["url"]);
|
|
23688
|
+
if (url) {
|
|
23689
|
+
var layerOptions = __assign({ pane: this.pane, attribution: opt.attribution, minZoom: opt.minZoom, maxZoom: opt.maxZoom, layers: options.layers, format: options.format }, options.nativeOptions);
|
|
23690
|
+
var layer = void 0;
|
|
23691
|
+
if (opt.headers) {
|
|
23692
|
+
layer = new WmsLayer(url, __assign(__assign({}, layerOptions), { headers: opt.headers }));
|
|
23693
|
+
}
|
|
23694
|
+
else {
|
|
23695
|
+
layer = new leafletSrc.exports.TileLayer.WMS(url, layerOptions);
|
|
23687
23696
|
}
|
|
23697
|
+
return layer;
|
|
23688
23698
|
}
|
|
23689
23699
|
};
|
|
23690
23700
|
return WmsAdapter;
|
|
@@ -23696,7 +23706,7 @@ var NgwLeaflet = (function () {
|
|
|
23696
23706
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
23697
23707
|
}
|
|
23698
23708
|
OsmAdapter.prototype.addLayer = function (options) {
|
|
23699
|
-
var url =
|
|
23709
|
+
var url = 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png';
|
|
23700
23710
|
return _super.prototype.addLayer.call(this, __assign(__assign({ name: 'OpenStreetMap', attribution: '© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors' }, options), { url: url }));
|
|
23701
23711
|
};
|
|
23702
23712
|
return OsmAdapter;
|