@nextgis/ngw-map 1.13.0 → 1.13.2

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.
@@ -1,4 +1,4 @@
1
- /** Bundle of @nextgis/ngw-map; version: 1.13.0; author: NextGIS */
1
+ /** Bundle of @nextgis/ngw-map; version: 1.13.2; author: NextGIS */
2
2
  var NgwMap = (function (exports) {
3
3
  'use strict';
4
4
 
@@ -4046,31 +4046,31 @@ var NgwMap = (function (exports) {
4046
4046
  /**
4047
4047
  * Thrown when...
4048
4048
  */
4049
- var NgwError = /** @class */ (function (_super) {
4050
- __extends(NgwError, _super);
4051
- function NgwError(er) {
4049
+ var NetworkError = /** @class */ (function (_super) {
4050
+ __extends(NetworkError, _super);
4051
+ function NetworkError(url) {
4052
4052
  var _this = _super.call(this) || this;
4053
- _this.name = 'NgwError';
4054
- Object.assign(_this, er);
4055
- Object.setPrototypeOf(_this, NgwError.prototype);
4053
+ _this.name = 'NetworkError';
4054
+ Object.setPrototypeOf(_this, NetworkError.prototype);
4055
+ _this.message = "Unable to request ".concat(url, ".\n Possibly invalid NGW URL entered or CORS not configured to get request from ").concat(location.origin); // /control-panel/cors
4056
4056
  return _this;
4057
4057
  }
4058
- return NgwError;
4058
+ return NetworkError;
4059
4059
  }(Error));
4060
4060
 
4061
4061
  /**
4062
4062
  * Thrown when...
4063
4063
  */
4064
- var NetworkError = /** @class */ (function (_super) {
4065
- __extends(NetworkError, _super);
4066
- function NetworkError(url) {
4064
+ var NgwError = /** @class */ (function (_super) {
4065
+ __extends(NgwError, _super);
4066
+ function NgwError(er) {
4067
4067
  var _this = _super.call(this) || this;
4068
- _this.name = 'NetworkError';
4069
- Object.setPrototypeOf(_this, NetworkError.prototype);
4070
- _this.message = "Unable to request ".concat(url, ".\n Possibly invalid NGW URL entered or CORS not configured to get request from ").concat(location.origin); // /control-panel/cors
4068
+ _this.name = 'NgwError';
4069
+ Object.assign(_this, er);
4070
+ Object.setPrototypeOf(_this, NgwError.prototype);
4071
4071
  return _this;
4072
4072
  }
4073
- return NetworkError;
4073
+ return NgwError;
4074
4074
  }(Error));
4075
4075
 
4076
4076
  function isObject(val) {
@@ -4184,11 +4184,6 @@ var NgwMap = (function (exports) {
4184
4184
  xhr.abort();
4185
4185
  });
4186
4186
  }
4187
- if (options.signal) {
4188
- options.signal.addEventListener('abort', function () {
4189
- xhr.abort();
4190
- });
4191
- }
4192
4187
  xhr.send(data);
4193
4188
  };
4194
4189
  }
@@ -4990,7 +4985,7 @@ var NgwMap = (function (exports) {
4990
4985
  NgwConnector.prototype._loadData = function (url, options) {
4991
4986
  var _this = this;
4992
4987
  options.responseType = options.responseType || 'json';
4993
- return new CancelablePromise(function (resolve, reject, onCancel) {
4988
+ var request = new CancelablePromise(function (resolve, reject, onCancel) {
4994
4989
  if (_this.user) {
4995
4990
  options = options || {};
4996
4991
  // options.withCredentials = true;
@@ -5010,6 +5005,13 @@ var NgwMap = (function (exports) {
5010
5005
  }
5011
5006
  }
5012
5007
  });
5008
+ if (options.signal &&
5009
+ typeof options.signal.addEventListener === 'function') {
5010
+ options.signal.addEventListener('abort', function () {
5011
+ request.cancel();
5012
+ });
5013
+ }
5014
+ return request;
5013
5015
  };
5014
5016
  NgwConnector.prototype._handleHttpError = function (er) {
5015
5017
  if (er) {
@@ -5131,12 +5133,12 @@ var NgwMap = (function (exports) {
5131
5133
  function fetchNgwExtent(options) {
5132
5134
  return options.connector.getResource(options.resourceId).then(function (resource) {
5133
5135
  if (resource) {
5134
- return fetchNgwResourceExtent(resource, options.connector);
5136
+ return fetchNgwResourceExtent(resource, options.connector, options);
5135
5137
  }
5136
5138
  });
5137
5139
  }
5138
5140
  /** @deprecated use {@link fetchNgwExtent} instead */
5139
- function fetchNgwResourceExtent(item, connector) {
5141
+ function fetchNgwResourceExtent(item, connector, options) {
5140
5142
  if (item.webmap) {
5141
5143
  return CancelablePromise.resolve(getNgwWebmapExtent(item.webmap));
5142
5144
  }
@@ -5145,15 +5147,12 @@ var NgwMap = (function (exports) {
5145
5147
  if (resource.cls && resource.cls.indexOf('style') !== -1) {
5146
5148
  return connector.getResource(resource.parent.id).then(function (res) {
5147
5149
  if (res) {
5148
- return fetchNgwLayerExtent({
5149
- resourceId: res.resource.id,
5150
- connector: connector,
5151
- });
5150
+ return fetchNgwLayerExtent(__assign(__assign({}, options), { resourceId: res.resource.id, connector: connector }));
5152
5151
  }
5153
5152
  });
5154
5153
  }
5155
5154
  else {
5156
- return fetchNgwLayerExtent({ resourceId: resource.id, connector: connector });
5155
+ return fetchNgwLayerExtent(__assign(__assign({}, options), { resourceId: resource.id, connector: connector }));
5157
5156
  }
5158
5157
  }
5159
5158
  }
@@ -5324,7 +5323,7 @@ var NgwMap = (function (exports) {
5324
5323
  }
5325
5324
  function fetchNgwLayerItemsRequest(options) {
5326
5325
  var params = __assign({}, FEATURE_REQUEST_PARAMS);
5327
- var limit = options.limit, offset = options.offset, orderBy = options.orderBy, paramList = options.paramList, connector = options.connector, intersects = options.intersects, resourceId = options.resourceId;
5326
+ var limit = options.limit, cache = options.cache, signal = options.signal, offset = options.offset, orderBy = options.orderBy, paramList = options.paramList, connector = options.connector, intersects = options.intersects, resourceId = options.resourceId;
5328
5327
  if (limit) {
5329
5328
  if (limit !== Number.POSITIVE_INFINITY) {
5330
5329
  params.limit = limit;
@@ -5354,11 +5353,10 @@ var NgwMap = (function (exports) {
5354
5353
  params.paramList = paramList;
5355
5354
  }
5356
5355
  var reqParams = __assign({ id: resourceId }, params);
5357
- return connector.get('feature_layer.feature.collection', { cache: options.cache }, reqParams);
5356
+ return connector.get('feature_layer.feature.collection', { cache: cache, signal: signal }, reqParams);
5358
5357
  }
5359
5358
 
5360
5359
  function prepareNgwFieldsToPropertiesFilter(fields) {
5361
- console.log(fields);
5362
5360
  var f;
5363
5361
  var _loop_1 = function () {
5364
5362
  var field = fields[f];
@@ -7367,7 +7365,7 @@ var NgwMap = (function (exports) {
7367
7365
  });
7368
7366
  });
7369
7367
  };
7370
- NgwResource.prototype.getBounds = function () {
7368
+ NgwResource.prototype.getBounds = function (options) {
7371
7369
  return __awaiter(this, void 0, void 0, function () {
7372
7370
  var _a;
7373
7371
  return __generator(this, function (_b) {
@@ -7378,7 +7376,7 @@ var NgwMap = (function (exports) {
7378
7376
  }
7379
7377
  if (!this.item) return [3 /*break*/, 2];
7380
7378
  _a = this;
7381
- return [4 /*yield*/, fetchNgwResourceExtent(this.item, this.connector)];
7379
+ return [4 /*yield*/, fetchNgwResourceExtent(this.item, this.connector, options)];
7382
7380
  case 1:
7383
7381
  _a._extent = _b.sent();
7384
7382
  return [2 /*return*/, this._extent];
@@ -8020,7 +8018,7 @@ var NgwMap = (function (exports) {
8020
8018
  return featureParams;
8021
8019
  }
8022
8020
  function fetchIdentifyGeoJson(options) {
8023
- var connector = options.connector, identify = options.identify;
8021
+ var connector = options.connector, identify = options.identify, requestOptions = options.requestOptions;
8024
8022
  for (var l in identify) {
8025
8023
  var id = Number(l);
8026
8024
  if (!isNaN(id)) {
@@ -8036,7 +8034,7 @@ var NgwMap = (function (exports) {
8036
8034
  }
8037
8035
  var params = getIdentifyItems(identify);
8038
8036
  if (params && params.length) {
8039
- return fetchNgwLayerFeature(__assign({ connector: connector }, params[0]));
8037
+ return fetchNgwLayerFeature(__assign(__assign(__assign({}, requestOptions), { connector: connector }), params[0]));
8040
8038
  }
8041
8039
  return CancelablePromise.resolve(undefined);
8042
8040
  }
@@ -8049,21 +8047,25 @@ var NgwMap = (function (exports) {
8049
8047
  return CancelablePromise.resolve(undefined);
8050
8048
  }
8051
8049
  function featureLayerIdentify(options) {
8052
- var g = options.geom;
8053
- var geom = [];
8054
- if (Array.isArray(g)) {
8055
- geom = g;
8050
+ var geom = options.geom, signal = options.signal, cache = options.cache;
8051
+ var geom_ = [];
8052
+ if (Array.isArray(geom)) {
8053
+ geom_ = geom;
8056
8054
  }
8057
8055
  else {
8058
- var polygon = g.type === 'Feature' ? g.geometry : g.type === 'Polygon' ? g : false;
8056
+ var polygon = geom.type === 'Feature'
8057
+ ? geom.geometry
8058
+ : geom.type === 'Polygon'
8059
+ ? geom
8060
+ : false;
8059
8061
  if (polygon) {
8060
- geom = polygon.coordinates[0];
8062
+ geom_ = polygon.coordinates[0];
8061
8063
  }
8062
8064
  }
8063
- if (geom) {
8065
+ if (geom_) {
8064
8066
  // create wkt string
8065
8067
  var polygonStr = [];
8066
- for (var _i = 0, geom_1 = geom; _i < geom_1.length; _i++) {
8068
+ for (var _i = 0, geom_1 = geom_; _i < geom_1.length; _i++) {
8067
8069
  var _a = geom_1[_i], lng = _a[0], lat = _a[1];
8068
8070
  var _b = degrees2meters(lng, lat), x = _b[0], y = _b[1];
8069
8071
  polygonStr.push(x + ' ' + y);
@@ -8075,18 +8077,22 @@ var NgwMap = (function (exports) {
8075
8077
  srs: 3857,
8076
8078
  layers: layers,
8077
8079
  };
8078
- return options.connector.post('feature_layer.identify', { data: data });
8080
+ return options.connector.post('feature_layer.identify', {
8081
+ data: data,
8082
+ signal: signal,
8083
+ cache: cache,
8084
+ });
8079
8085
  }
8080
8086
  else {
8081
8087
  throw new Error('Not valid geometry format to make intersection');
8082
8088
  }
8083
8089
  }
8084
8090
  function sendIdentifyRequest(ev, options) {
8085
- var _a;
8086
8091
  deprecatedMapClick(ev);
8087
- var _b = ev.lngLat, lng = _b[0], lat = _b[1];
8088
- var geom = (_a = options.geom) !== null && _a !== void 0 ? _a : getCirclePolygonCoordinates(lng, lat, options.radius);
8089
- return featureLayerIdentify(__assign(__assign({}, options), { geom: geom }));
8092
+ var _a = ev.lngLat, lng = _a[0], lat = _a[1];
8093
+ var geom = options.geom, radius = options.radius, signal = options.signal, cache = options.cache;
8094
+ var geom_ = geom !== null && geom !== void 0 ? geom : getCirclePolygonCoordinates(lng, lat, radius);
8095
+ return featureLayerIdentify(__assign(__assign({}, options), { geom: geom_, signal: signal, cache: cache }));
8090
8096
  }
8091
8097
  function createIdentifyItem(opt) {
8092
8098
  return new IdentifyItem(opt);