@nextgis/ngw-leaflet 1.11.9 → 1.12.1
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 +5127 -4043
- package/lib/ngw-leaflet.esm-browser.js.map +1 -1
- package/lib/ngw-leaflet.esm-browser.prod.js +16 -2
- package/lib/ngw-leaflet.esm-browser.prod.js.map +1 -1
- package/lib/ngw-leaflet.esm-bundler.js +99 -19
- package/lib/ngw-leaflet.esm-bundler.js.map +1 -1
- package/lib/ngw-leaflet.esm-bundler.prod.js +15 -1
- package/lib/ngw-leaflet.esm-bundler.prod.js.map +1 -1
- package/lib/ngw-leaflet.global.js +224 -95
- 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 +5 -5
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** Bundle of @nextgis/ngw-leaflet; version: 1.
|
|
1
|
+
/** Bundle of @nextgis/ngw-leaflet; version: 1.12.1; author: NextGIS */
|
|
2
2
|
var NgwLeaflet = (function () {
|
|
3
3
|
'use strict';
|
|
4
4
|
|
|
@@ -15399,6 +15399,9 @@ var NgwLeaflet = (function () {
|
|
|
15399
15399
|
|
|
15400
15400
|
function isObject$1(val) {
|
|
15401
15401
|
return Object.prototype.toString.call(val) === '[object Object]';
|
|
15402
|
+
}
|
|
15403
|
+
function isArray(val) {
|
|
15404
|
+
return Object.prototype.toString.call(val) === '[object Array]';
|
|
15402
15405
|
}
|
|
15403
15406
|
|
|
15404
15407
|
function fixUrlStr(url) {
|
|
@@ -16462,6 +16465,9 @@ var NgwLeaflet = (function () {
|
|
|
16462
16465
|
'movestart',
|
|
16463
16466
|
'move',
|
|
16464
16467
|
'moveend',
|
|
16468
|
+
'mousemove',
|
|
16469
|
+
'mouseout',
|
|
16470
|
+
'mouseover',
|
|
16465
16471
|
];
|
|
16466
16472
|
if (opt && opt.include) {
|
|
16467
16473
|
events = events.filter(function (x) { return opt.include.includes(x); });
|
|
@@ -16772,6 +16778,9 @@ var NgwLeaflet = (function () {
|
|
|
16772
16778
|
_c.sent();
|
|
16773
16779
|
_c.label = 11;
|
|
16774
16780
|
case 11:
|
|
16781
|
+
if (options.onAdded) {
|
|
16782
|
+
options.onAdded(_adapter);
|
|
16783
|
+
}
|
|
16775
16784
|
this._emitLayerEvent('layer:add', layerId, _adapter);
|
|
16776
16785
|
return [2 /*return*/, _adapter];
|
|
16777
16786
|
case 12: return [2 /*return*/, Promise.reject('No adapter')];
|
|
@@ -16912,8 +16921,15 @@ var NgwLeaflet = (function () {
|
|
|
16912
16921
|
WebMapLayers.prototype.addTileLayer = function (url, options) {
|
|
16913
16922
|
return this.addLayer('TILE', __assign(__assign({}, options), { url: url }));
|
|
16914
16923
|
};
|
|
16915
|
-
|
|
16916
|
-
|
|
16924
|
+
WebMapLayers.prototype.addImageLayer = function (urlOrOptions, options) {
|
|
16925
|
+
var url;
|
|
16926
|
+
if (typeof urlOrOptions === 'string') {
|
|
16927
|
+
url = urlOrOptions;
|
|
16928
|
+
}
|
|
16929
|
+
else {
|
|
16930
|
+
url = urlOrOptions.url;
|
|
16931
|
+
options = urlOrOptions;
|
|
16932
|
+
}
|
|
16917
16933
|
return this.addLayer('IMAGE', __assign(__assign({}, options), { url: url }));
|
|
16918
16934
|
};
|
|
16919
16935
|
/**
|
|
@@ -18241,6 +18257,11 @@ var NgwLeaflet = (function () {
|
|
|
18241
18257
|
xhr.abort();
|
|
18242
18258
|
});
|
|
18243
18259
|
}
|
|
18260
|
+
if (options.signal) {
|
|
18261
|
+
options.signal.addEventListener('abort', function () {
|
|
18262
|
+
xhr.abort();
|
|
18263
|
+
});
|
|
18264
|
+
}
|
|
18244
18265
|
xhr.send(data);
|
|
18245
18266
|
};
|
|
18246
18267
|
}
|
|
@@ -18382,7 +18403,12 @@ var NgwLeaflet = (function () {
|
|
|
18382
18403
|
forCache.id = resource;
|
|
18383
18404
|
}
|
|
18384
18405
|
else if (isObject(resource)) {
|
|
18385
|
-
|
|
18406
|
+
if (resource.id !== undefined) {
|
|
18407
|
+
forCache.id = resource.id;
|
|
18408
|
+
}
|
|
18409
|
+
else if (resource.keyname) {
|
|
18410
|
+
forCache.keyname = resource.keyname;
|
|
18411
|
+
}
|
|
18386
18412
|
}
|
|
18387
18413
|
var makeRequest = function () {
|
|
18388
18414
|
if (typeof resource === 'string') {
|
|
@@ -18484,20 +18510,35 @@ var NgwLeaflet = (function () {
|
|
|
18484
18510
|
};
|
|
18485
18511
|
ResourcesControl.prototype.getChildrenOf = function (resource, requestOptions) {
|
|
18486
18512
|
var _this = this;
|
|
18487
|
-
return this.
|
|
18488
|
-
return _this.
|
|
18489
|
-
|
|
18490
|
-
|
|
18491
|
-
|
|
18492
|
-
|
|
18493
|
-
|
|
18494
|
-
|
|
18495
|
-
|
|
18496
|
-
|
|
18497
|
-
|
|
18513
|
+
return this.getIdOrFail(resource).then(function (parent) {
|
|
18514
|
+
return _this._getChildrenOf(parent, requestOptions);
|
|
18515
|
+
});
|
|
18516
|
+
};
|
|
18517
|
+
ResourcesControl.prototype._getChildrenOf = function (parent, requestOptions, _items) {
|
|
18518
|
+
var _this = this;
|
|
18519
|
+
if (_items === void 0) { _items = []; }
|
|
18520
|
+
return this.connector
|
|
18521
|
+
.get('resource.collection', __assign({ cache: true }, requestOptions), {
|
|
18522
|
+
parent: parent,
|
|
18523
|
+
})
|
|
18524
|
+
.then(function (items) {
|
|
18525
|
+
var recursivePromises = [];
|
|
18526
|
+
for (var _i = 0, items_1 = items; _i < items_1.length; _i++) {
|
|
18527
|
+
var item = items_1[_i];
|
|
18528
|
+
_this.cache.add('resource.item', CancelablePromise.resolve(item), {
|
|
18529
|
+
id: item.resource.id,
|
|
18530
|
+
});
|
|
18531
|
+
_items.push(item);
|
|
18532
|
+
if ((requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.recursive) && item.resource.children) {
|
|
18533
|
+
recursivePromises.push(_this._getChildrenOf(item.resource.id, requestOptions, _items));
|
|
18498
18534
|
}
|
|
18499
|
-
|
|
18500
|
-
|
|
18535
|
+
}
|
|
18536
|
+
if (recursivePromises.length) {
|
|
18537
|
+
return CancelablePromise.all(recursivePromises).then(function () {
|
|
18538
|
+
return _items;
|
|
18539
|
+
});
|
|
18540
|
+
}
|
|
18541
|
+
return _items;
|
|
18501
18542
|
});
|
|
18502
18543
|
};
|
|
18503
18544
|
ResourcesControl.prototype.update = function (resource, data) {
|
|
@@ -19228,10 +19269,10 @@ var NgwLeaflet = (function () {
|
|
|
19228
19269
|
function createGeoJsonFeature(item) {
|
|
19229
19270
|
var geometry = item.geom;
|
|
19230
19271
|
var feature = {
|
|
19272
|
+
geometry: geometry,
|
|
19231
19273
|
id: item.id,
|
|
19232
19274
|
type: 'Feature',
|
|
19233
19275
|
properties: item.fields,
|
|
19234
|
-
geometry: geometry,
|
|
19235
19276
|
};
|
|
19236
19277
|
return feature;
|
|
19237
19278
|
}
|
|
@@ -19257,7 +19298,19 @@ var NgwLeaflet = (function () {
|
|
|
19257
19298
|
function createFeatureFieldFilterQueries(opt) {
|
|
19258
19299
|
var queries = getQueries(opt);
|
|
19259
19300
|
return CancelablePromise.all(queries).then(function (itemsParts) {
|
|
19260
|
-
|
|
19301
|
+
// this list of ids used for optimization
|
|
19302
|
+
var ids = [];
|
|
19303
|
+
var items = [];
|
|
19304
|
+
for (var _i = 0, itemsParts_1 = itemsParts; _i < itemsParts_1.length; _i++) {
|
|
19305
|
+
var part = itemsParts_1[_i];
|
|
19306
|
+
for (var _a = 0, part_1 = part; _a < part_1.length; _a++) {
|
|
19307
|
+
var item = part_1[_a];
|
|
19308
|
+
if (!ids.includes(item.id)) {
|
|
19309
|
+
items.push(item);
|
|
19310
|
+
ids.push(item.id);
|
|
19311
|
+
}
|
|
19312
|
+
}
|
|
19313
|
+
}
|
|
19261
19314
|
var offset = opt.offset !== undefined ? opt.offset : 0;
|
|
19262
19315
|
var limit = opt.limit !== undefined ? opt.limit : items.length;
|
|
19263
19316
|
if (opt.offset || opt.limit) {
|
|
@@ -19266,27 +19319,27 @@ var NgwLeaflet = (function () {
|
|
|
19266
19319
|
return items;
|
|
19267
19320
|
});
|
|
19268
19321
|
}
|
|
19322
|
+
function createParam(pf) {
|
|
19323
|
+
var field = pf[0], operation = pf[1], value = pf[2];
|
|
19324
|
+
var isFldStr = field !== 'id' ? 'fld_' : '';
|
|
19325
|
+
var vStart = '';
|
|
19326
|
+
var vEnd = '';
|
|
19327
|
+
var field_ = String(field)
|
|
19328
|
+
.trim()
|
|
19329
|
+
.replace(/^(%?)(.+?)(%?)$/, function (m, a, b, c) {
|
|
19330
|
+
vStart = a;
|
|
19331
|
+
vEnd = c;
|
|
19332
|
+
return b;
|
|
19333
|
+
});
|
|
19334
|
+
var v = vStart + value + vEnd;
|
|
19335
|
+
return ["".concat(isFldStr).concat(field_, "__").concat(operation), v];
|
|
19336
|
+
}
|
|
19269
19337
|
function getQueries(opt, _queries, _parentAllParams) {
|
|
19270
19338
|
if (_queries === void 0) { _queries = []; }
|
|
19271
19339
|
if (_parentAllParams === void 0) { _parentAllParams = []; }
|
|
19272
19340
|
var filters = opt.filters;
|
|
19273
19341
|
var logic = typeof filters[0] === 'string' ? filters[0] : 'all';
|
|
19274
19342
|
var filters_ = filters.filter(function (x) { return Array.isArray(x); });
|
|
19275
|
-
var createParam = function (pf) {
|
|
19276
|
-
var field = pf[0], operation = pf[1], value = pf[2];
|
|
19277
|
-
var isFldStr = field !== 'id' ? 'fld_' : '';
|
|
19278
|
-
var vStart = '';
|
|
19279
|
-
var vEnd = '';
|
|
19280
|
-
var field_ = String(field)
|
|
19281
|
-
.trim()
|
|
19282
|
-
.replace(/^(%?)(.+?)(%?)$/, function (m, a, b, c) {
|
|
19283
|
-
vStart = a;
|
|
19284
|
-
vEnd = c;
|
|
19285
|
-
return b;
|
|
19286
|
-
});
|
|
19287
|
-
var v = vStart + value + vEnd;
|
|
19288
|
-
return ["".concat(isFldStr).concat(field_, "__").concat(operation), v];
|
|
19289
|
-
};
|
|
19290
19343
|
if (logic === 'any') {
|
|
19291
19344
|
for (var _i = 0, filters_1 = filters_; _i < filters_1.length; _i++) {
|
|
19292
19345
|
var f = filters_1[_i];
|
|
@@ -19332,7 +19385,7 @@ var NgwLeaflet = (function () {
|
|
|
19332
19385
|
}
|
|
19333
19386
|
function fetchNgwLayerItemsRequest(options) {
|
|
19334
19387
|
var params = __assign({}, FEATURE_REQUEST_PARAMS);
|
|
19335
|
-
var
|
|
19388
|
+
var limit = options.limit, offset = options.offset, orderBy = options.orderBy, paramList = options.paramList, connector = options.connector, intersects = options.intersects, resourceId = options.resourceId;
|
|
19336
19389
|
if (limit) {
|
|
19337
19390
|
if (limit !== Number.POSITIVE_INFINITY) {
|
|
19338
19391
|
params.limit = limit;
|
|
@@ -19345,7 +19398,6 @@ var NgwLeaflet = (function () {
|
|
|
19345
19398
|
if (offset) {
|
|
19346
19399
|
params.offset = offset;
|
|
19347
19400
|
}
|
|
19348
|
-
// TODO: fix type for options
|
|
19349
19401
|
updateItemRequestParam(params, options);
|
|
19350
19402
|
if (orderBy) {
|
|
19351
19403
|
params.order_by = orderBy.join(',');
|
|
@@ -19367,6 +19419,7 @@ var NgwLeaflet = (function () {
|
|
|
19367
19419
|
}
|
|
19368
19420
|
|
|
19369
19421
|
function prepareNgwFieldsToPropertiesFilter(fields) {
|
|
19422
|
+
console.log(fields);
|
|
19370
19423
|
var f;
|
|
19371
19424
|
var _loop_1 = function () {
|
|
19372
19425
|
var field = fields[f];
|
|
@@ -19386,6 +19439,9 @@ var NgwLeaflet = (function () {
|
|
|
19386
19439
|
fields[f] = new (Date.bind.apply(Date, __spreadArray([void 0], dt_1, false)))().toISOString();
|
|
19387
19440
|
}
|
|
19388
19441
|
}
|
|
19442
|
+
else if (f === 'id' && typeof field === 'string') {
|
|
19443
|
+
fields[f] = field.split(',').map(Number);
|
|
19444
|
+
}
|
|
19389
19445
|
};
|
|
19390
19446
|
for (f in fields) {
|
|
19391
19447
|
_loop_1();
|
|
@@ -19397,18 +19453,37 @@ var NgwLeaflet = (function () {
|
|
|
19397
19453
|
var filters = options.filters;
|
|
19398
19454
|
if (filters) {
|
|
19399
19455
|
return createFeatureFieldFilterQueries(__assign(__assign({}, options), { filters: filters })).then(function (data) {
|
|
19456
|
+
var _a;
|
|
19457
|
+
var clientFilterValidate = (_a = options.clientFilterValidate) !== null && _a !== void 0 ? _a : isFilterWithAnyCase(filters);
|
|
19400
19458
|
// Additional client-side filter check
|
|
19401
|
-
|
|
19402
|
-
|
|
19403
|
-
|
|
19404
|
-
|
|
19405
|
-
|
|
19459
|
+
if (clientFilterValidate) {
|
|
19460
|
+
data = data.filter(function (y) {
|
|
19461
|
+
var fields = prepareNgwFieldsToPropertiesFilter(__assign(__assign({}, y.fields), { id: y.id }));
|
|
19462
|
+
var result = propertiesFilter(fields, filters);
|
|
19463
|
+
return result;
|
|
19464
|
+
});
|
|
19465
|
+
}
|
|
19406
19466
|
return data;
|
|
19407
19467
|
});
|
|
19408
19468
|
}
|
|
19409
19469
|
else {
|
|
19410
19470
|
return fetchNgwLayerItemsRequest(options);
|
|
19411
19471
|
}
|
|
19472
|
+
}
|
|
19473
|
+
function isFilterWithAnyCase(filters) {
|
|
19474
|
+
if (filters[0] === 'any') {
|
|
19475
|
+
return true;
|
|
19476
|
+
}
|
|
19477
|
+
for (var i = 1; i < filters.length; i++) {
|
|
19478
|
+
var p = filters[i];
|
|
19479
|
+
if (isArray(p)) {
|
|
19480
|
+
var deep = isFilterWithAnyCase(p);
|
|
19481
|
+
if (deep) {
|
|
19482
|
+
return true;
|
|
19483
|
+
}
|
|
19484
|
+
}
|
|
19485
|
+
}
|
|
19486
|
+
return false;
|
|
19412
19487
|
}
|
|
19413
19488
|
|
|
19414
19489
|
function fetchNgwLayerFeatures(options) {
|
|
@@ -19761,6 +19836,26 @@ var NgwLeaflet = (function () {
|
|
|
19761
19836
|
});
|
|
19762
19837
|
}
|
|
19763
19838
|
|
|
19839
|
+
function getImageAdapterOptions(_a) {
|
|
19840
|
+
var resourceId = _a.resourceId, baseUrl = _a.baseUrl, nd = _a.nd, headers = _a.headers;
|
|
19841
|
+
var url = baseUrl + '/api/component/render/image';
|
|
19842
|
+
var params = { resource: resourceId };
|
|
19843
|
+
if (nd) {
|
|
19844
|
+
params.nd = nd;
|
|
19845
|
+
}
|
|
19846
|
+
return {
|
|
19847
|
+
url: url,
|
|
19848
|
+
resourceId: resourceId,
|
|
19849
|
+
headers: headers,
|
|
19850
|
+
params: params,
|
|
19851
|
+
updateWmsParams: function (params_) {
|
|
19852
|
+
if (nd) {
|
|
19853
|
+
params_.nd = nd;
|
|
19854
|
+
}
|
|
19855
|
+
return updateImageParams(params_, resourceId);
|
|
19856
|
+
},
|
|
19857
|
+
};
|
|
19858
|
+
}
|
|
19764
19859
|
function ngwApiToAdapterOptions(_a) {
|
|
19765
19860
|
var options = _a.options, webMap = _a.webMap, baseUrl = _a.baseUrl;
|
|
19766
19861
|
var adapter = options.adapter || 'IMAGE';
|
|
@@ -19772,16 +19867,12 @@ var NgwLeaflet = (function () {
|
|
|
19772
19867
|
if (typeof resourceId === 'number') {
|
|
19773
19868
|
if (adapter === 'IMAGE') {
|
|
19774
19869
|
if (isImageAllowed) {
|
|
19775
|
-
|
|
19776
|
-
return {
|
|
19777
|
-
url: url,
|
|
19870
|
+
return getImageAdapterOptions({
|
|
19778
19871
|
resourceId: resourceId,
|
|
19779
19872
|
headers: options.headers,
|
|
19780
|
-
|
|
19781
|
-
|
|
19782
|
-
|
|
19783
|
-
},
|
|
19784
|
-
};
|
|
19873
|
+
nd: nd,
|
|
19874
|
+
baseUrl: baseUrl,
|
|
19875
|
+
});
|
|
19785
19876
|
}
|
|
19786
19877
|
else {
|
|
19787
19878
|
adapter = 'TILE';
|
|
@@ -21196,6 +21287,7 @@ var NgwLeaflet = (function () {
|
|
|
21196
21287
|
NgwWebmapLayerAdapter.prototype._setBasemaps = function (baseWebmap) {
|
|
21197
21288
|
var _this = this;
|
|
21198
21289
|
var webMap = this.options.webMap;
|
|
21290
|
+
// to avoid set many basemaps on init
|
|
21199
21291
|
var enabledAlreadySet = false;
|
|
21200
21292
|
var _loop_1 = function (x) {
|
|
21201
21293
|
createOnFirstShowNgwAdapter({
|
|
@@ -21204,9 +21296,11 @@ var NgwLeaflet = (function () {
|
|
|
21204
21296
|
item: x,
|
|
21205
21297
|
adapterOptions: { crossOrigin: this_1.options.crossOrigin },
|
|
21206
21298
|
}).then(function (adapter) {
|
|
21207
|
-
// to avoid set many basemaps on init
|
|
21208
21299
|
var visibility = enabledAlreadySet ? false : x.enabled;
|
|
21209
|
-
|
|
21300
|
+
if (x.enabled) {
|
|
21301
|
+
enabledAlreadySet = true;
|
|
21302
|
+
}
|
|
21303
|
+
return webMap
|
|
21210
21304
|
.addBaseLayer(adapter, {
|
|
21211
21305
|
id: WEBMAP_BASELAYER_ID_PREFIX + x.resource_id,
|
|
21212
21306
|
name: x.display_name,
|
|
@@ -21216,9 +21310,6 @@ var NgwLeaflet = (function () {
|
|
|
21216
21310
|
.then(function (l) {
|
|
21217
21311
|
l.id && _this._webmapBaselayersIds.push(l.id);
|
|
21218
21312
|
});
|
|
21219
|
-
if (x.enabled) {
|
|
21220
|
-
enabledAlreadySet = true;
|
|
21221
|
-
}
|
|
21222
21313
|
});
|
|
21223
21314
|
};
|
|
21224
21315
|
var this_1 = this;
|
|
@@ -21700,7 +21791,7 @@ var NgwLeaflet = (function () {
|
|
|
21700
21791
|
function updateImageParams(params, resourceId) {
|
|
21701
21792
|
var bbox = params.bbox, width = params.width, height = params.height, nd = params.nd;
|
|
21702
21793
|
return {
|
|
21703
|
-
resource: resourceId,
|
|
21794
|
+
resource: Array.isArray(resourceId) ? resourceId.join(',') : resourceId,
|
|
21704
21795
|
extent: bbox,
|
|
21705
21796
|
size: width + ',' + height,
|
|
21706
21797
|
timestamp: Date.now(),
|
|
@@ -21942,7 +22033,6 @@ var NgwLeaflet = (function () {
|
|
|
21942
22033
|
|
|
21943
22034
|
function getIdentifyItems(identify, multiple) {
|
|
21944
22035
|
if (multiple === void 0) { multiple = false; }
|
|
21945
|
-
var params;
|
|
21946
22036
|
var resources = [];
|
|
21947
22037
|
var paramsList = [];
|
|
21948
22038
|
for (var l in identify) {
|
|
@@ -21963,14 +22053,9 @@ var NgwLeaflet = (function () {
|
|
|
21963
22053
|
if ('features' in identifyItem) {
|
|
21964
22054
|
var layerFeatures = identifyItem.features;
|
|
21965
22055
|
var resourceId = Number(l);
|
|
21966
|
-
var
|
|
21967
|
-
if (
|
|
21968
|
-
|
|
21969
|
-
featureId: feature.id,
|
|
21970
|
-
resourceId: resourceId,
|
|
21971
|
-
feature: feature,
|
|
21972
|
-
};
|
|
21973
|
-
paramsList.push(params);
|
|
22056
|
+
var featureParams = createParamsFromFeatures(layerFeatures, resourceId, multiple);
|
|
22057
|
+
if (featureParams.length) {
|
|
22058
|
+
paramsList.push.apply(paramsList, featureParams);
|
|
21974
22059
|
if (!multiple) {
|
|
21975
22060
|
break;
|
|
21976
22061
|
}
|
|
@@ -21979,6 +22064,22 @@ var NgwLeaflet = (function () {
|
|
|
21979
22064
|
}
|
|
21980
22065
|
return paramsList;
|
|
21981
22066
|
}
|
|
22067
|
+
function createParamsFromFeatures(features, resourceId, multiple) {
|
|
22068
|
+
var featureParams = [];
|
|
22069
|
+
for (var _i = 0, features_1 = features; _i < features_1.length; _i++) {
|
|
22070
|
+
var feature = features_1[_i];
|
|
22071
|
+
var params = {
|
|
22072
|
+
featureId: feature.id,
|
|
22073
|
+
resourceId: resourceId,
|
|
22074
|
+
feature: feature,
|
|
22075
|
+
};
|
|
22076
|
+
featureParams.push(params);
|
|
22077
|
+
if (!multiple) {
|
|
22078
|
+
break;
|
|
22079
|
+
}
|
|
22080
|
+
}
|
|
22081
|
+
return featureParams;
|
|
22082
|
+
}
|
|
21982
22083
|
function fetchIdentifyGeoJson(options) {
|
|
21983
22084
|
var connector = options.connector, identify = options.identify;
|
|
21984
22085
|
for (var l in identify) {
|
|
@@ -22008,38 +22109,45 @@ var NgwLeaflet = (function () {
|
|
|
22008
22109
|
}
|
|
22009
22110
|
return CancelablePromise.resolve(undefined);
|
|
22010
22111
|
}
|
|
22011
|
-
function
|
|
22012
|
-
|
|
22013
|
-
var _a = ev.lngLat, lng = _a[0], lat = _a[1];
|
|
22112
|
+
function featureLayerIdentify(options) {
|
|
22113
|
+
var g = options.geom;
|
|
22014
22114
|
var geom = [];
|
|
22015
|
-
if (
|
|
22016
|
-
|
|
22017
|
-
|
|
22018
|
-
|
|
22019
|
-
|
|
22020
|
-
|
|
22021
|
-
|
|
22022
|
-
geom = polygon_1.coordinates[0];
|
|
22115
|
+
if (Array.isArray(g)) {
|
|
22116
|
+
geom = g;
|
|
22117
|
+
}
|
|
22118
|
+
else {
|
|
22119
|
+
var polygon = g.type === 'Feature' ? g.geometry : g.type === 'Polygon' ? g : false;
|
|
22120
|
+
if (polygon) {
|
|
22121
|
+
geom = polygon.coordinates[0];
|
|
22023
22122
|
}
|
|
22024
22123
|
}
|
|
22025
|
-
if (
|
|
22026
|
-
|
|
22124
|
+
if (geom) {
|
|
22125
|
+
// create wkt string
|
|
22126
|
+
var polygonStr = [];
|
|
22127
|
+
for (var _i = 0, geom_1 = geom; _i < geom_1.length; _i++) {
|
|
22128
|
+
var _a = geom_1[_i], lng = _a[0], lat = _a[1];
|
|
22129
|
+
var _b = degrees2meters(lng, lat), x = _b[0], y = _b[1];
|
|
22130
|
+
polygonStr.push(x + ' ' + y);
|
|
22131
|
+
}
|
|
22132
|
+
var wkt = "POLYGON((".concat(polygonStr.join(', '), "))");
|
|
22133
|
+
var layers = options.layers;
|
|
22134
|
+
var data = {
|
|
22135
|
+
geom: wkt,
|
|
22136
|
+
srs: 3857,
|
|
22137
|
+
layers: layers,
|
|
22138
|
+
};
|
|
22139
|
+
return options.connector.post('feature_layer.identify', { data: data });
|
|
22027
22140
|
}
|
|
22028
|
-
|
|
22029
|
-
|
|
22030
|
-
|
|
22031
|
-
|
|
22032
|
-
|
|
22033
|
-
|
|
22034
|
-
|
|
22035
|
-
var
|
|
22036
|
-
var
|
|
22037
|
-
|
|
22038
|
-
geom: wkt,
|
|
22039
|
-
srs: 3857,
|
|
22040
|
-
layers: layers,
|
|
22041
|
-
};
|
|
22042
|
-
return options.connector.post('feature_layer.identify', { data: data });
|
|
22141
|
+
else {
|
|
22142
|
+
throw new Error('Not valid geometry format to make intersection');
|
|
22143
|
+
}
|
|
22144
|
+
}
|
|
22145
|
+
function sendIdentifyRequest(ev, options) {
|
|
22146
|
+
var _a;
|
|
22147
|
+
deprecatedMapClick(ev);
|
|
22148
|
+
var _b = ev.lngLat, lng = _b[0], lat = _b[1];
|
|
22149
|
+
var geom = (_a = options.geom) !== null && _a !== void 0 ? _a : getCirclePolygonCoordinates(lng, lat, options.radius);
|
|
22150
|
+
return featureLayerIdentify(__assign(__assign({}, options), { geom: geom }));
|
|
22043
22151
|
}
|
|
22044
22152
|
function createIdentifyItem(opt) {
|
|
22045
22153
|
return new IdentifyItem(opt);
|
|
@@ -22925,6 +23033,9 @@ var NgwLeaflet = (function () {
|
|
|
22925
23033
|
link.title = title;
|
|
22926
23034
|
link.setAttribute('role', 'button');
|
|
22927
23035
|
link.setAttribute('aria-label', title);
|
|
23036
|
+
if (options.addClass) {
|
|
23037
|
+
link.classList.add(options.addClass);
|
|
23038
|
+
}
|
|
22928
23039
|
leafletSrc.exports.DomEvent.disableClickPropagation(link);
|
|
22929
23040
|
leafletSrc.exports.DomEvent.on(link, 'click', leafletSrc.exports.DomEvent.stop);
|
|
22930
23041
|
if (options.html instanceof HTMLElement) {
|
|
@@ -24196,11 +24307,16 @@ var NgwLeaflet = (function () {
|
|
|
24196
24307
|
this._universalEvents = [
|
|
24197
24308
|
'move',
|
|
24198
24309
|
'zoom',
|
|
24199
|
-
'moveend',
|
|
24200
24310
|
'zoomend',
|
|
24201
24311
|
'zoomstart',
|
|
24312
|
+
'moveend',
|
|
24202
24313
|
'movestart',
|
|
24203
24314
|
];
|
|
24315
|
+
this._positionEvents = [
|
|
24316
|
+
'mousemove',
|
|
24317
|
+
'mouseout',
|
|
24318
|
+
'mouseover',
|
|
24319
|
+
];
|
|
24204
24320
|
}
|
|
24205
24321
|
LeafletMapAdapter.prototype.create = function (options) {
|
|
24206
24322
|
var _this = this;
|
|
@@ -24453,9 +24569,22 @@ var NgwLeaflet = (function () {
|
|
|
24453
24569
|
map.on('click', function (evt) {
|
|
24454
24570
|
_this.onMapClick(evt);
|
|
24455
24571
|
});
|
|
24456
|
-
|
|
24572
|
+
var _loop_1 = function (e) {
|
|
24457
24573
|
map.on(e, function () { return _this.emitter.emit(e, _this); }, map);
|
|
24458
|
-
}
|
|
24574
|
+
};
|
|
24575
|
+
for (var _i = 0, _a = this._universalEvents; _i < _a.length; _i++) {
|
|
24576
|
+
var e = _a[_i];
|
|
24577
|
+
_loop_1(e);
|
|
24578
|
+
}
|
|
24579
|
+
var _loop_2 = function (e) {
|
|
24580
|
+
map.on(e, function (evt) {
|
|
24581
|
+
return _this.emitter.emit(e, convertMapClickEvent(evt));
|
|
24582
|
+
}, map);
|
|
24583
|
+
};
|
|
24584
|
+
for (var _b = 0, _c = this._positionEvents; _b < _c.length; _b++) {
|
|
24585
|
+
var e = _c[_b];
|
|
24586
|
+
_loop_2(e);
|
|
24587
|
+
}
|
|
24459
24588
|
}
|
|
24460
24589
|
};
|
|
24461
24590
|
LeafletMapAdapter.layerAdapters = {
|