@nextgis/ngw-map 4.0.0-alpha.5 → 4.0.0-alpha.6

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: 4.0.0-alpha.5; author: NextGIS */
1
+ /** Bundle of @nextgis/ngw-map; version: 4.0.0-alpha.6; author: NextGIS */
2
2
  var NgwMap = (function (exports) {
3
3
  'use strict';
4
4
 
@@ -347,9 +347,6 @@ var NgwMap = (function (exports) {
347
347
  function isObject$1(val) {
348
348
  return Object.prototype.toString.call(val) === "[object Object]";
349
349
  }
350
- function isArray(val) {
351
- return Object.prototype.toString.call(val) === "[object Array]";
352
- }
353
350
 
354
351
  function fixUrlStr(url) {
355
352
  return url.replace(/([^:]\/)\/+/g, "$1");
@@ -398,7 +395,7 @@ var NgwMap = (function (exports) {
398
395
  }
399
396
  return a;
400
397
  };
401
- var __async$x = (__this, __arguments, generator) => {
398
+ var __async$w = (__this, __arguments, generator) => {
402
399
  return new Promise((resolve, reject) => {
403
400
  var fulfilled = (value) => {
404
401
  try {
@@ -419,7 +416,7 @@ var NgwMap = (function (exports) {
419
416
  });
420
417
  };
421
418
  function apiRequest(opt) {
422
- return __async$x(this, null, function* () {
419
+ return __async$w(this, null, function* () {
423
420
  const { params, name, connector, requestOptions } = opt;
424
421
  const apiItems = yield connector.connect();
425
422
  let apiItem = apiItems && apiItems[name];
@@ -1083,7 +1080,7 @@ var NgwMap = (function (exports) {
1083
1080
  }
1084
1081
 
1085
1082
  var pkg = {
1086
- version: "4.0.0-alpha.5"};
1083
+ version: "4.0.0-alpha.6"};
1087
1084
 
1088
1085
  class AbortError extends Error {
1089
1086
  constructor(message = "AbortError") {
@@ -1297,7 +1294,7 @@ var NgwMap = (function (exports) {
1297
1294
  }
1298
1295
  return target;
1299
1296
  };
1300
- var __async$w = (__this, __arguments, generator) => {
1297
+ var __async$v = (__this, __arguments, generator) => {
1301
1298
  return new Promise((resolve, reject) => {
1302
1299
  var fulfilled = (value) => {
1303
1300
  try {
@@ -1322,7 +1319,7 @@ var NgwMap = (function (exports) {
1322
1319
  return ct !== void 0 && ct !== null && ct.includes("application/vnd.lunkwill.request-summary+json");
1323
1320
  }
1324
1321
  function responseJson(response) {
1325
- return __async$w(this, null, function* () {
1322
+ return __async$v(this, null, function* () {
1326
1323
  try {
1327
1324
  return response.json();
1328
1325
  } catch (e) {
@@ -1331,7 +1328,7 @@ var NgwMap = (function (exports) {
1331
1328
  });
1332
1329
  }
1333
1330
  function lunkwillResponseUrl(lwResp) {
1334
- return __async$w(this, null, function* () {
1331
+ return __async$v(this, null, function* () {
1335
1332
  const lwData = yield responseJson(lwResp);
1336
1333
  let delay = lwData.delay_ms;
1337
1334
  const retry = lwData.retry_ms !== void 0 ? lwData.retry_ms : 2e3;
@@ -1375,7 +1372,7 @@ var NgwMap = (function (exports) {
1375
1372
  });
1376
1373
  }
1377
1374
  function lunkwillFetch(lwRespUrl) {
1378
- return __async$w(this, null, function* () {
1375
+ return __async$v(this, null, function* () {
1379
1376
  try {
1380
1377
  return yield window.fetch(lwRespUrl, { credentials: "same-origin" });
1381
1378
  } catch (e) {
@@ -1423,7 +1420,7 @@ var NgwMap = (function (exports) {
1423
1420
  return path + urlParams;
1424
1421
  }
1425
1422
  function request(path, options, cacheEngine) {
1426
- return __async$w(this, null, function* () {
1423
+ return __async$v(this, null, function* () {
1427
1424
  var _b, _c;
1428
1425
  const defaults = {
1429
1426
  method: "GET",
@@ -1467,7 +1464,7 @@ var NgwMap = (function (exports) {
1467
1464
  opt.headers = headers;
1468
1465
  }
1469
1466
  const url = generateUrl(path, query);
1470
- const makeRequest = () => __async$w(null, null, function* () {
1467
+ const makeRequest = () => __async$v(null, null, function* () {
1471
1468
  let response;
1472
1469
  try {
1473
1470
  response = yield fetch(url, opt);
@@ -1531,8 +1528,8 @@ var NgwMap = (function (exports) {
1531
1528
  }
1532
1529
 
1533
1530
  var __defProp$L = Object.defineProperty;
1534
- var __defProps$m = Object.defineProperties;
1535
- var __getOwnPropDescs$m = Object.getOwnPropertyDescriptors;
1531
+ var __defProps$l = Object.defineProperties;
1532
+ var __getOwnPropDescs$l = Object.getOwnPropertyDescriptors;
1536
1533
  var __getOwnPropSymbols$y = Object.getOwnPropertySymbols;
1537
1534
  var __hasOwnProp$y = Object.prototype.hasOwnProperty;
1538
1535
  var __propIsEnum$y = Object.prototype.propertyIsEnumerable;
@@ -1548,7 +1545,7 @@ var NgwMap = (function (exports) {
1548
1545
  }
1549
1546
  return a;
1550
1547
  };
1551
- var __spreadProps$m = (a, b) => __defProps$m(a, __getOwnPropDescs$m(b));
1548
+ var __spreadProps$l = (a, b) => __defProps$l(a, __getOwnPropDescs$l(b));
1552
1549
  var __objRest$6 = (source, exclude) => {
1553
1550
  var target = {};
1554
1551
  for (var prop in source)
@@ -1561,7 +1558,7 @@ var NgwMap = (function (exports) {
1561
1558
  }
1562
1559
  return target;
1563
1560
  };
1564
- var __async$v = (__this, __arguments, generator) => {
1561
+ var __async$u = (__this, __arguments, generator) => {
1565
1562
  return new Promise((resolve, reject) => {
1566
1563
  var fulfilled = (value) => {
1567
1564
  try {
@@ -1612,7 +1609,7 @@ var NgwMap = (function (exports) {
1612
1609
  }
1613
1610
  function route(name, connector, ...rest) {
1614
1611
  const result = {
1615
- url: (opt) => __async$v(null, null, function* () {
1612
+ url: (opt) => __async$u(null, null, function* () {
1616
1613
  var _a;
1617
1614
  const routeData = yield connector.connect();
1618
1615
  const template = routeURL(
@@ -1643,7 +1640,7 @@ var NgwMap = (function (exports) {
1643
1640
  const headers = objectRemoveEmpty(__spreadValues$x(__spreadValues$x({}, connector.getAuthorizationHeaders()), optHeaders != null ? optHeaders : {}));
1644
1641
  return request(
1645
1642
  template,
1646
- __spreadProps$m(__spreadValues$x({
1643
+ __spreadProps$l(__spreadValues$x({
1647
1644
  headers
1648
1645
  }, restOpt), {
1649
1646
  method
@@ -1768,8 +1765,8 @@ var NgwMap = (function (exports) {
1768
1765
  }
1769
1766
 
1770
1767
  var __defProp$K = Object.defineProperty;
1771
- var __defProps$l = Object.defineProperties;
1772
- var __getOwnPropDescs$l = Object.getOwnPropertyDescriptors;
1768
+ var __defProps$k = Object.defineProperties;
1769
+ var __getOwnPropDescs$k = Object.getOwnPropertyDescriptors;
1773
1770
  var __getOwnPropSymbols$x = Object.getOwnPropertySymbols;
1774
1771
  var __hasOwnProp$x = Object.prototype.hasOwnProperty;
1775
1772
  var __propIsEnum$x = Object.prototype.propertyIsEnumerable;
@@ -1785,7 +1782,7 @@ var NgwMap = (function (exports) {
1785
1782
  }
1786
1783
  return a;
1787
1784
  };
1788
- var __spreadProps$l = (a, b) => __defProps$l(a, __getOwnPropDescs$l(b));
1785
+ var __spreadProps$k = (a, b) => __defProps$k(a, __getOwnPropDescs$k(b));
1789
1786
  var __objRest$5 = (source, exclude) => {
1790
1787
  var target = {};
1791
1788
  for (var prop in source)
@@ -1799,7 +1796,7 @@ var NgwMap = (function (exports) {
1799
1796
  return target;
1800
1797
  };
1801
1798
  var __publicField$u = (obj, key, value) => __defNormalProp$K(obj, typeof key !== "symbol" ? key + "" : key, value);
1802
- var __async$u = (__this, __arguments, generator) => {
1799
+ var __async$t = (__this, __arguments, generator) => {
1803
1800
  return new Promise((resolve, reject) => {
1804
1801
  var fulfilled = (value) => {
1805
1802
  try {
@@ -1823,7 +1820,7 @@ var NgwMap = (function (exports) {
1823
1820
  let REQUEST_ID = 0;
1824
1821
  class NgwConnector {
1825
1822
  constructor(options) {
1826
- this.options = options;
1823
+ __publicField$u(this, "options", options);
1827
1824
  __publicField$u(this, "id", ID$2++);
1828
1825
  __publicField$u(this, "emitter", new EventEmitter());
1829
1826
  __publicField$u(this, "user");
@@ -1888,7 +1885,7 @@ var NgwMap = (function (exports) {
1888
1885
  * ```
1889
1886
  */
1890
1887
  connect() {
1891
- return __async$u(this, arguments, function* ({
1888
+ return __async$t(this, arguments, function* ({
1892
1889
  signal
1893
1890
  } = {}) {
1894
1891
  const auth = this.options.auth;
@@ -1927,7 +1924,7 @@ var NgwMap = (function (exports) {
1927
1924
  this.emitter.emit("logout");
1928
1925
  }
1929
1926
  getUserInfo(credentials, options) {
1930
- return __async$u(this, null, function* () {
1927
+ return __async$t(this, null, function* () {
1931
1928
  if (this.user && this.user.id) {
1932
1929
  return this.user;
1933
1930
  }
@@ -1987,7 +1984,7 @@ var NgwMap = (function (exports) {
1987
1984
  * @param options - Request options
1988
1985
  */
1989
1986
  makeQuery(_0, _1) {
1990
- return __async$u(this, arguments, function* (url, params, options = {}) {
1987
+ return __async$t(this, arguments, function* (url, params, options = {}) {
1991
1988
  var _b;
1992
1989
  url = (this.options.baseUrl ? this.options.baseUrl : "") + url;
1993
1990
  if (!url) {
@@ -2020,7 +2017,7 @@ var NgwMap = (function (exports) {
2020
2017
  });
2021
2018
  }
2022
2019
  options.signal = internalSignal;
2023
- const createPromise = () => __async$u(this, null, function* () {
2020
+ const createPromise = () => __async$t(this, null, function* () {
2024
2021
  const id = REQUEST_ID++;
2025
2022
  this.activeRequests[id] = internalAbortController;
2026
2023
  try {
@@ -2030,7 +2027,7 @@ var NgwMap = (function (exports) {
2030
2027
  }
2031
2028
  });
2032
2029
  if (method === "GET" && cache !== false) {
2033
- const cacheOptions = cacheProps ? cacheProps : __spreadProps$l(__spreadValues$w({}, objectRemoveEmpty({
2030
+ const cacheOptions = cacheProps ? cacheProps : __spreadProps$k(__spreadValues$w({}, objectRemoveEmpty({
2034
2031
  headers,
2035
2032
  withCredentials,
2036
2033
  responseType,
@@ -2084,7 +2081,7 @@ var NgwMap = (function (exports) {
2084
2081
  });
2085
2082
  }
2086
2083
  _login(credentials, options) {
2087
- return __async$u(this, null, function* () {
2084
+ return __async$t(this, null, function* () {
2088
2085
  try {
2089
2086
  const data = yield this.getUserInfo(credentials, options);
2090
2087
  this.user = data;
@@ -2143,8 +2140,8 @@ var NgwMap = (function (exports) {
2143
2140
  }
2144
2141
 
2145
2142
  var __defProp$J = Object.defineProperty;
2146
- var __defProps$k = Object.defineProperties;
2147
- var __getOwnPropDescs$k = Object.getOwnPropertyDescriptors;
2143
+ var __defProps$j = Object.defineProperties;
2144
+ var __getOwnPropDescs$j = Object.getOwnPropertyDescriptors;
2148
2145
  var __getOwnPropSymbols$w = Object.getOwnPropertySymbols;
2149
2146
  var __hasOwnProp$w = Object.prototype.hasOwnProperty;
2150
2147
  var __propIsEnum$w = Object.prototype.propertyIsEnumerable;
@@ -2160,9 +2157,9 @@ var NgwMap = (function (exports) {
2160
2157
  }
2161
2158
  return a;
2162
2159
  };
2163
- var __spreadProps$k = (a, b) => __defProps$k(a, __getOwnPropDescs$k(b));
2160
+ var __spreadProps$j = (a, b) => __defProps$j(a, __getOwnPropDescs$j(b));
2164
2161
  var __publicField$t = (obj, key, value) => __defNormalProp$J(obj, typeof key !== "symbol" ? key + "" : key, value);
2165
- var __async$t = (__this, __arguments, generator) => {
2162
+ var __async$s = (__this, __arguments, generator) => {
2166
2163
  return new Promise((resolve, reject) => {
2167
2164
  var fulfilled = (value) => {
2168
2165
  try {
@@ -2280,19 +2277,20 @@ var NgwMap = (function (exports) {
2280
2277
  } else {
2281
2278
  Object.assign(query, resourceToQuery(resource));
2282
2279
  }
2283
- return this.connector.route("resource.search").get(__spreadProps$k(__spreadValues$v({}, requestOptions), {
2280
+ return this.connector.route("resource.search").get(__spreadProps$j(__spreadValues$v({}, requestOptions), {
2284
2281
  query: __spreadValues$v({
2285
2282
  serialization: "full"
2286
2283
  }, query)
2287
2284
  })).then((resources) => {
2288
- if ((requestOptions == null ? void 0 : requestOptions.cache) && resources) {
2289
- for (const x of resources) {
2285
+ const items2 = Array.isArray(resources) ? resources : resources.items;
2286
+ if (requestOptions == null ? void 0 : requestOptions.cache) {
2287
+ for (const x of items2) {
2290
2288
  this.cache.add("resource.item", Promise.resolve(x), {
2291
2289
  id: x.resource.id
2292
2290
  });
2293
2291
  }
2294
2292
  }
2295
- return resources;
2293
+ return items2;
2296
2294
  });
2297
2295
  }
2298
2296
  return items;
@@ -2334,7 +2332,7 @@ var NgwMap = (function (exports) {
2334
2332
  });
2335
2333
  }
2336
2334
  _getChildrenOf(_0, _1) {
2337
- return __async$t(this, arguments, function* (parentDef, requestOptions, _items = []) {
2335
+ return __async$s(this, arguments, function* (parentDef, requestOptions, _items = []) {
2338
2336
  let parent = void 0;
2339
2337
  if (typeof parentDef === "string") {
2340
2338
  parent = yield this.getId(parentDef, requestOptions);
@@ -2343,7 +2341,7 @@ var NgwMap = (function (exports) {
2343
2341
  } else {
2344
2342
  parent = parentDef;
2345
2343
  }
2346
- const items = yield this.connector.route("resource.collection").get(__spreadProps$k(__spreadValues$v({}, requestOptions), {
2344
+ const items = yield this.connector.route("resource.collection").get(__spreadProps$j(__spreadValues$v({}, requestOptions), {
2347
2345
  query: {
2348
2346
  parent
2349
2347
  }
@@ -2371,7 +2369,7 @@ var NgwMap = (function (exports) {
2371
2369
  });
2372
2370
  }
2373
2371
  _cleanResourceItemCache(id) {
2374
- return __async$t(this, null, function* () {
2372
+ return __async$s(this, null, function* () {
2375
2373
  var _a;
2376
2374
  const all = this.cache.all();
2377
2375
  const toDelete = [];
@@ -2641,8 +2639,8 @@ var NgwMap = (function (exports) {
2641
2639
  }
2642
2640
 
2643
2641
  var __defProp$H = Object.defineProperty;
2644
- var __defProps$j = Object.defineProperties;
2645
- var __getOwnPropDescs$j = Object.getOwnPropertyDescriptors;
2642
+ var __defProps$i = Object.defineProperties;
2643
+ var __getOwnPropDescs$i = Object.getOwnPropertyDescriptors;
2646
2644
  var __getOwnPropSymbols$v = Object.getOwnPropertySymbols;
2647
2645
  var __hasOwnProp$v = Object.prototype.hasOwnProperty;
2648
2646
  var __propIsEnum$v = Object.prototype.propertyIsEnumerable;
@@ -2658,7 +2656,7 @@ var NgwMap = (function (exports) {
2658
2656
  }
2659
2657
  return a;
2660
2658
  };
2661
- var __spreadProps$j = (a, b) => __defProps$j(a, __getOwnPropDescs$j(b));
2659
+ var __spreadProps$i = (a, b) => __defProps$i(a, __getOwnPropDescs$i(b));
2662
2660
  function getNgwWebmapExtent(webmap) {
2663
2661
  const bottom = webmap["extent_bottom"];
2664
2662
  const left = webmap["extent_left"];
@@ -2725,14 +2723,14 @@ var NgwMap = (function (exports) {
2725
2723
  if (resource.cls && resource.parent && resource.cls.indexOf("style") !== -1) {
2726
2724
  return connector.getResource(resource.parent.id, options).then((res) => {
2727
2725
  if (res) {
2728
- return fetchNgwLayerExtent(__spreadProps$j(__spreadValues$u({}, options), {
2726
+ return fetchNgwLayerExtent(__spreadProps$i(__spreadValues$u({}, options), {
2729
2727
  resourceId: res.resource.id,
2730
2728
  connector
2731
2729
  }));
2732
2730
  }
2733
2731
  });
2734
2732
  } else {
2735
- return fetchNgwLayerExtent(__spreadProps$j(__spreadValues$u({}, options), {
2733
+ return fetchNgwLayerExtent(__spreadProps$i(__spreadValues$u({}, options), {
2736
2734
  resourceId: resource.id,
2737
2735
  connector
2738
2736
  }));
@@ -2743,7 +2741,7 @@ var NgwMap = (function (exports) {
2743
2741
  var __defProp$G = Object.defineProperty;
2744
2742
  var __defNormalProp$G = (obj, key, value) => key in obj ? __defProp$G(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
2745
2743
  var __publicField$r = (obj, key, value) => __defNormalProp$G(obj, typeof key !== "symbol" ? key + "" : key, value);
2746
- var __async$s = (__this, __arguments, generator) => {
2744
+ var __async$r = (__this, __arguments, generator) => {
2747
2745
  return new Promise((resolve, reject) => {
2748
2746
  var fulfilled = (value) => {
2749
2747
  try {
@@ -2771,12 +2769,12 @@ var NgwMap = (function (exports) {
2771
2769
  }
2772
2770
  /** @deprecated use {@link NgwResource.getBounds} instead */
2773
2771
  getExtent() {
2774
- return __async$s(this, null, function* () {
2772
+ return __async$r(this, null, function* () {
2775
2773
  return this.getBounds();
2776
2774
  });
2777
2775
  }
2778
2776
  getBounds(options) {
2779
- return __async$s(this, null, function* () {
2777
+ return __async$r(this, null, function* () {
2780
2778
  if (this._extent) {
2781
2779
  return this._extent;
2782
2780
  }
@@ -2792,7 +2790,7 @@ var NgwMap = (function (exports) {
2792
2790
  }
2793
2791
  }
2794
2792
 
2795
- var __async$r = (__this, __arguments, generator) => {
2793
+ var __async$q = (__this, __arguments, generator) => {
2796
2794
  return new Promise((resolve, reject) => {
2797
2795
  var fulfilled = (value) => {
2798
2796
  try {
@@ -2813,7 +2811,7 @@ var NgwMap = (function (exports) {
2813
2811
  });
2814
2812
  };
2815
2813
  function resourceIdFromLayerOptions(options, connector) {
2816
- return __async$r(this, null, function* () {
2814
+ return __async$q(this, null, function* () {
2817
2815
  const resource = options.resource;
2818
2816
  const item = resource;
2819
2817
  let { keyname, resourceId } = options;
@@ -2855,7 +2853,7 @@ var NgwMap = (function (exports) {
2855
2853
  return a;
2856
2854
  };
2857
2855
  var __publicField$q = (obj, key, value) => __defNormalProp$F(obj, typeof key !== "symbol" ? key + "" : key, value);
2858
- var __async$q = (__this, __arguments, generator) => {
2856
+ var __async$p = (__this, __arguments, generator) => {
2859
2857
  return new Promise((resolve, reject) => {
2860
2858
  var fulfilled = (value) => {
2861
2859
  try {
@@ -2876,7 +2874,7 @@ var NgwMap = (function (exports) {
2876
2874
  });
2877
2875
  };
2878
2876
  function createOnFirstShowAdapter(_0) {
2879
- return __async$q(this, arguments, function* ({
2877
+ return __async$p(this, arguments, function* ({
2880
2878
  webMap,
2881
2879
  adapterOptions = {},
2882
2880
  onLayerAdded,
@@ -2902,7 +2900,7 @@ var NgwMap = (function (exports) {
2902
2900
  return this._removed;
2903
2901
  }
2904
2902
  showLayer() {
2905
- return __async$q(this, null, function* () {
2903
+ return __async$p(this, null, function* () {
2906
2904
  this.options.visibility = true;
2907
2905
  if (this.layer.length) {
2908
2906
  for (const x of this.layer) {
@@ -2914,7 +2912,7 @@ var NgwMap = (function (exports) {
2914
2912
  });
2915
2913
  }
2916
2914
  hideLayer() {
2917
- return __async$q(this, null, function* () {
2915
+ return __async$p(this, null, function* () {
2918
2916
  this.options.visibility = false;
2919
2917
  if (this.layer) {
2920
2918
  for (const x of this.layer) {
@@ -2924,7 +2922,7 @@ var NgwMap = (function (exports) {
2924
2922
  });
2925
2923
  }
2926
2924
  loadLayer() {
2927
- return __async$q(this, null, function* () {
2925
+ return __async$p(this, null, function* () {
2928
2926
  if (!this.layer.length && !this._creatingInProgress) {
2929
2927
  this._creatingInProgress = true;
2930
2928
  const Adapter = yield createAdapter(this);
@@ -2958,7 +2956,7 @@ var NgwMap = (function (exports) {
2958
2956
  });
2959
2957
  }
2960
2958
 
2961
- var __async$p = (__this, __arguments, generator) => {
2959
+ var __async$o = (__this, __arguments, generator) => {
2962
2960
  return new Promise((resolve, reject) => {
2963
2961
  var fulfilled = (value) => {
2964
2962
  try {
@@ -2979,7 +2977,7 @@ var NgwMap = (function (exports) {
2979
2977
  });
2980
2978
  };
2981
2979
  function createOnFirstShowNgwAdapter(_0) {
2982
- return __async$p(this, arguments, function* ({
2980
+ return __async$o(this, arguments, function* ({
2983
2981
  webMap,
2984
2982
  connector,
2985
2983
  item,
@@ -3108,8 +3106,6 @@ var NgwMap = (function (exports) {
3108
3106
  }
3109
3107
 
3110
3108
  var __defProp$D = Object.defineProperty;
3111
- var __defProps$i = Object.defineProperties;
3112
- var __getOwnPropDescs$i = Object.getOwnPropertyDescriptors;
3113
3109
  var __getOwnPropSymbols$s = Object.getOwnPropertySymbols;
3114
3110
  var __hasOwnProp$s = Object.prototype.hasOwnProperty;
3115
3111
  var __propIsEnum$s = Object.prototype.propertyIsEnumerable;
@@ -3125,27 +3121,6 @@ var NgwMap = (function (exports) {
3125
3121
  }
3126
3122
  return a;
3127
3123
  };
3128
- var __spreadProps$i = (a, b) => __defProps$i(a, __getOwnPropDescs$i(b));
3129
- var __async$o = (__this, __arguments, generator) => {
3130
- return new Promise((resolve, reject) => {
3131
- var fulfilled = (value) => {
3132
- try {
3133
- step(generator.next(value));
3134
- } catch (e) {
3135
- reject(e);
3136
- }
3137
- };
3138
- var rejected = (value) => {
3139
- try {
3140
- step(generator.throw(value));
3141
- } catch (e) {
3142
- reject(e);
3143
- }
3144
- };
3145
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
3146
- step((generator = generator.apply(__this, __arguments)).next());
3147
- });
3148
- };
3149
3124
  const FEATURE_REQUEST_PARAMS = {
3150
3125
  srs: 4326,
3151
3126
  geom_format: "geojson",
@@ -3192,86 +3167,6 @@ var NgwMap = (function (exports) {
3192
3167
  {}
3193
3168
  );
3194
3169
  }
3195
- function createFeatureFieldFilterQueries(opt) {
3196
- return __async$o(this, null, function* () {
3197
- const queries = getQueries(opt);
3198
- const itemsParts = yield Promise.all(queries);
3199
- const ids = [];
3200
- const items = [];
3201
- for (const part of itemsParts) {
3202
- for (const item of part) {
3203
- if (!ids.includes(item.id)) {
3204
- items.push(item);
3205
- ids.push(item.id);
3206
- }
3207
- }
3208
- }
3209
- const offset = opt.offset !== void 0 ? opt.offset : 0;
3210
- const limit = opt.limit !== void 0 ? opt.limit : items.length;
3211
- if (opt.offset || opt.limit) {
3212
- return items.splice(offset, limit);
3213
- }
3214
- return items;
3215
- });
3216
- }
3217
- function createParam(pf) {
3218
- const [field, operation, value] = pf;
3219
- const isFldStr = field !== "id" ? "fld_" : "";
3220
- let vStart = "";
3221
- let vEnd = "";
3222
- const field_ = String(field).trim().replace(/^(%?)(.+?)(%?)$/, (m, a, b, c) => {
3223
- vStart = a;
3224
- vEnd = c;
3225
- return b;
3226
- });
3227
- const v = vStart + value + vEnd;
3228
- return [`${isFldStr}${field_}__${operation}`, v];
3229
- }
3230
- function getQueries(opt, _queries = [], _parentAllParams = []) {
3231
- var _a;
3232
- const { filters } = opt;
3233
- const paramList = (_a = opt.paramList) != null ? _a : [];
3234
- const logic = typeof filters[0] === "string" ? filters[0] : "all";
3235
- const filters_ = filters.filter((x) => Array.isArray(x));
3236
- if (logic === "any") {
3237
- for (const f of filters_) {
3238
- if (isPropertyFilter$1(f)) {
3239
- _queries.push(
3240
- fetchNgwLayerItemsRequest(__spreadProps$i(__spreadValues$r({}, opt), {
3241
- paramList: [..._parentAllParams, ...paramList, createParam(f)]
3242
- }))
3243
- );
3244
- } else {
3245
- getQueries(__spreadProps$i(__spreadValues$r({}, opt), { filters: f }), _queries, [..._parentAllParams]);
3246
- }
3247
- }
3248
- } else if (logic === "all") {
3249
- const filters2 = [];
3250
- const propertiesFilterList = [];
3251
- for (const f of filters_) {
3252
- if (isPropertyFilter$1(f)) {
3253
- filters2.push(createParam(f));
3254
- } else {
3255
- propertiesFilterList.push(f);
3256
- }
3257
- }
3258
- if (propertiesFilterList.length) {
3259
- for (const x of propertiesFilterList) {
3260
- getQueries(__spreadProps$i(__spreadValues$r({}, opt), { filters: x }), _queries, [
3261
- ..._parentAllParams,
3262
- ...filters2
3263
- ]);
3264
- }
3265
- } else {
3266
- _queries.push(
3267
- fetchNgwLayerItemsRequest(__spreadProps$i(__spreadValues$r({}, opt), {
3268
- paramList: [..._parentAllParams, ...paramList, ...filters2]
3269
- }))
3270
- );
3271
- }
3272
- }
3273
- return _queries;
3274
- }
3275
3170
  function createWktFromCoordArray(coord) {
3276
3171
  const polygon = coord.map(([lng, lat]) => {
3277
3172
  const [x, y] = degrees2meters(lng, lat).map((c) => round(c));
@@ -3345,6 +3240,147 @@ var NgwMap = (function (exports) {
3345
3240
  return fields;
3346
3241
  }
3347
3242
 
3243
+ function isPropertyFilter(value) {
3244
+ return Array.isArray(value) && value.length === 3 && typeof value[0] === "string" && typeof value[1] === "string";
3245
+ }
3246
+ function isPropertiesFilterGroup(value) {
3247
+ return Array.isArray(value) && !isPropertyFilter(value);
3248
+ }
3249
+ function toGetExpr(field) {
3250
+ return field === "id" ? ["fid"] : ["get", field];
3251
+ }
3252
+ function parseWildcardField(field) {
3253
+ const leadingWildcard = field.startsWith("%");
3254
+ const trailingWildcard = field.endsWith("%");
3255
+ return {
3256
+ field: field.slice(
3257
+ leadingWildcard ? 1 : 0,
3258
+ trailingWildcard ? -1 : void 0
3259
+ ),
3260
+ leadingWildcard,
3261
+ trailingWildcard
3262
+ };
3263
+ }
3264
+ function toConditionExpr(filter) {
3265
+ const [fieldRaw, op, value] = filter;
3266
+ const field = String(fieldRaw);
3267
+ const getExpr = toGetExpr(field);
3268
+ switch (op) {
3269
+ case "eq":
3270
+ if (value === null) {
3271
+ return ["is_null", getExpr];
3272
+ }
3273
+ return ["==", getExpr, value];
3274
+ case "ne":
3275
+ if (value === null) {
3276
+ return ["!is_null", getExpr];
3277
+ }
3278
+ return ["!=", getExpr, value];
3279
+ case "gt":
3280
+ if (typeof value !== "number" && typeof value !== "string") {
3281
+ throw new Error(
3282
+ `Operator "gt" requires number or string for "${field}"`
3283
+ );
3284
+ }
3285
+ return [">", getExpr, value];
3286
+ case "lt":
3287
+ if (typeof value !== "number" && typeof value !== "string") {
3288
+ throw new Error(
3289
+ `Operator "lt" requires number or string for "${field}"`
3290
+ );
3291
+ }
3292
+ return ["<", getExpr, value];
3293
+ case "ge":
3294
+ if (typeof value !== "number" && typeof value !== "string") {
3295
+ throw new Error(
3296
+ `Operator "ge" requires number or string for "${field}"`
3297
+ );
3298
+ }
3299
+ return [">=", getExpr, value];
3300
+ case "le":
3301
+ if (typeof value !== "number" && typeof value !== "string") {
3302
+ throw new Error(
3303
+ `Operator "le" requires number or string for "${field}"`
3304
+ );
3305
+ }
3306
+ return ["<=", getExpr, value];
3307
+ case "in":
3308
+ if (!Array.isArray(value) || !value.every((x) => typeof x === "string" || typeof x === "number")) {
3309
+ throw new Error(
3310
+ `Operator "in" requires (string | number)[] for "${field}"`
3311
+ );
3312
+ }
3313
+ if (!value.length) {
3314
+ throw new Error(
3315
+ `Operator "in" requires non-empty array for "${field}"`
3316
+ );
3317
+ }
3318
+ return ["in", getExpr, ...value];
3319
+ case "notin":
3320
+ if (!Array.isArray(value) || !value.every((x) => typeof x === "string" || typeof x === "number")) {
3321
+ throw new Error(
3322
+ `Operator "notin" requires (string | number)[] for "${field}"`
3323
+ );
3324
+ }
3325
+ if (!value.length) {
3326
+ throw new Error(
3327
+ `Operator "notin" requires non-empty array for "${field}"`
3328
+ );
3329
+ }
3330
+ return ["!in", getExpr, ...value];
3331
+ case "ilike": {
3332
+ if (typeof value !== "string") {
3333
+ throw new Error(`Operator "ilike" requires string for "${field}"`);
3334
+ }
3335
+ const parsed = parseWildcardField(field);
3336
+ const pattern = `${parsed.leadingWildcard ? "%" : ""}${value}${parsed.trailingWildcard ? "%" : ""}`;
3337
+ return ["ilike", toGetExpr(parsed.field), pattern];
3338
+ }
3339
+ case "like":
3340
+ throw new Error(
3341
+ `Operator "${op}" is not supported by server FilterExpression`
3342
+ );
3343
+ default: {
3344
+ const exhaustive = op;
3345
+ throw new Error(`Unsupported operator: ${exhaustive}`);
3346
+ }
3347
+ }
3348
+ }
3349
+ function toGroupExpr(filters) {
3350
+ let logicalOp = "all";
3351
+ const children = [];
3352
+ for (const item of filters) {
3353
+ if (item === "all" || item === "any") {
3354
+ logicalOp = item;
3355
+ continue;
3356
+ }
3357
+ if (isPropertyFilter(item)) {
3358
+ children.push(toConditionExpr(item));
3359
+ continue;
3360
+ }
3361
+ if (isPropertiesFilterGroup(item)) {
3362
+ children.push(toGroupExpr(item));
3363
+ continue;
3364
+ }
3365
+ throw new Error("Invalid PropertiesFilter node");
3366
+ }
3367
+ return [logicalOp, ...children];
3368
+ }
3369
+ function propertiesFilterToExpression(filters) {
3370
+ if (!(filters == null ? void 0 : filters.length)) {
3371
+ return [];
3372
+ }
3373
+ return toGroupExpr(filters);
3374
+ }
3375
+ function propertiesFilterToExpressionString(filters) {
3376
+ if (!(filters == null ? void 0 : filters.length)) {
3377
+ return void 0;
3378
+ }
3379
+ return JSON.stringify(
3380
+ propertiesFilterToExpression(filters)
3381
+ );
3382
+ }
3383
+
3348
3384
  var __defProp$C = Object.defineProperty;
3349
3385
  var __defProps$h = Object.defineProperties;
3350
3386
  var __getOwnPropDescs$h = Object.getOwnPropertyDescriptors;
@@ -3389,10 +3425,12 @@ var NgwMap = (function (exports) {
3389
3425
  var _a;
3390
3426
  const filters = options.filters;
3391
3427
  if (filters) {
3392
- let data = yield createFeatureFieldFilterQueries(__spreadProps$h(__spreadValues$q({}, options), {
3393
- filters
3428
+ let data = yield fetchNgwLayerItemsRequest(__spreadProps$h(__spreadValues$q({}, options), {
3429
+ query: __spreadProps$h(__spreadValues$q({}, options.query), {
3430
+ filter: propertiesFilterToExpressionString(filters)
3431
+ })
3394
3432
  }));
3395
- const clientFilterValidate = (_a = options.clientFilterValidate) != null ? _a : isFilterWithAnyCase(filters);
3433
+ const clientFilterValidate = (_a = options.clientFilterValidate) != null ? _a : false;
3396
3434
  if (clientFilterValidate) {
3397
3435
  data = data.filter((y) => {
3398
3436
  const fields = prepareNgwFieldsToPropertiesFilter(__spreadProps$h(__spreadValues$q({}, y.fields), {
@@ -3408,21 +3446,6 @@ var NgwMap = (function (exports) {
3408
3446
  }
3409
3447
  });
3410
3448
  }
3411
- function isFilterWithAnyCase(filters) {
3412
- if (filters[0] === "any") {
3413
- return true;
3414
- }
3415
- for (let i = 1; i < filters.length; i++) {
3416
- const p = filters[i];
3417
- if (isArray(p)) {
3418
- const deep = isFilterWithAnyCase(p);
3419
- if (deep) {
3420
- return true;
3421
- }
3422
- }
3423
- }
3424
- return false;
3425
- }
3426
3449
 
3427
3450
  function getImageAdapterOptions({
3428
3451
  resourceId,
@@ -3598,7 +3621,7 @@ var NgwMap = (function (exports) {
3598
3621
  var __publicField$p = (obj, key, value) => __defNormalProp$A(obj, typeof key !== "symbol" ? key + "" : key, value);
3599
3622
  class BookmarkItem {
3600
3623
  constructor(options) {
3601
- this.options = options;
3624
+ __publicField$p(this, "options", options);
3602
3625
  __publicField$p(this, "name");
3603
3626
  __publicField$p(this, "resourceId");
3604
3627
  __publicField$p(this, "item");
@@ -3920,7 +3943,7 @@ var NgwMap = (function (exports) {
3920
3943
  const STRING_TYPE = "string";
3921
3944
  const _ItemProperties = class _ItemProperties {
3922
3945
  constructor(item, propertiesList) {
3923
- this.item = item;
3946
+ __publicField$m(this, "item", item);
3924
3947
  __publicField$m(this, "options", {});
3925
3948
  __publicField$m(this, "_properties", {});
3926
3949
  __publicField$m(this, "_propertiesList", []);
@@ -4603,6 +4626,9 @@ var NgwMap = (function (exports) {
4603
4626
  this.tree.addChild(childItem);
4604
4627
  }
4605
4628
  }
4629
+ if (this.item.item_type === "group" && !group.group_enabled) {
4630
+ this.properties.property("visibility").set(false);
4631
+ }
4606
4632
  return Promise.resolve();
4607
4633
  }
4608
4634
  initLayerItem(layer) {
@@ -4678,7 +4704,9 @@ var NgwMap = (function (exports) {
4678
4704
  name: "visibility",
4679
4705
  getProperty(item) {
4680
4706
  if (item) {
4681
- if (item.item.item_type === "group" || item.item.item_type === "root") {
4707
+ if (item.item.item_type === "group") {
4708
+ return item.item.group_enabled;
4709
+ } else if (item.item.item_type === "root") {
4682
4710
  return treeSome(
4683
4711
  item.item,
4684
4712
  (i) => "layer_enabled" in i ? i.layer_enabled : false,
@@ -4691,7 +4719,9 @@ var NgwMap = (function (exports) {
4691
4719
  return false;
4692
4720
  },
4693
4721
  onSet(value, options, item) {
4694
- if (item && item.item.item_type === "layer") {
4722
+ if ((item == null ? void 0 : item.item.item_type) === "group") {
4723
+ item.item.group_enabled = value;
4724
+ } else if ((item == null ? void 0 : item.item.item_type) === "layer") {
4695
4725
  if (item.layer) {
4696
4726
  if (value) {
4697
4727
  item.webMap.showLayer(item.layer, options);
@@ -4753,8 +4783,8 @@ var NgwMap = (function (exports) {
4753
4783
  };
4754
4784
  class NgwWebmapLayerAdapter {
4755
4785
  constructor(map, options) {
4756
- this.map = map;
4757
- this.options = options;
4786
+ __publicField$h(this, "map", map);
4787
+ __publicField$h(this, "options", options);
4758
4788
  __publicField$h(this, "layer");
4759
4789
  __publicField$h(this, "NgwWebmapItem", NgwWebmapItem);
4760
4790
  /**
@@ -5992,131 +6022,13 @@ var NgwMap = (function (exports) {
5992
6022
  });
5993
6023
  }
5994
6024
 
5995
- function isPropertyFilter(value) {
5996
- return Array.isArray(value) && value.length === 3 && typeof value[0] === "string" && typeof value[1] === "string";
5997
- }
5998
- function isPropertiesFilterGroup(value) {
5999
- return Array.isArray(value) && !isPropertyFilter(value);
6000
- }
6001
- function toGetExpr(field) {
6002
- return ["get", field];
6003
- }
6004
- function toConditionExpr(filter) {
6005
- const [fieldRaw, op, value] = filter;
6006
- const field = String(fieldRaw);
6007
- const getExpr = toGetExpr(field);
6008
- switch (op) {
6009
- case "eq":
6010
- if (value === null) {
6011
- return ["is_null", getExpr];
6012
- }
6013
- return ["==", getExpr, value];
6014
- case "ne":
6015
- if (value === null) {
6016
- return ["!is_null", getExpr];
6017
- }
6018
- return ["!=", getExpr, value];
6019
- case "gt":
6020
- if (typeof value !== "number" && typeof value !== "string") {
6021
- throw new Error(
6022
- `Operator "gt" requires number or string for "${field}"`
6023
- );
6024
- }
6025
- return [">", getExpr, value];
6026
- case "lt":
6027
- if (typeof value !== "number" && typeof value !== "string") {
6028
- throw new Error(
6029
- `Operator "lt" requires number or string for "${field}"`
6030
- );
6031
- }
6032
- return ["<", getExpr, value];
6033
- case "ge":
6034
- if (typeof value !== "number" && typeof value !== "string") {
6035
- throw new Error(
6036
- `Operator "ge" requires number or string for "${field}"`
6037
- );
6038
- }
6039
- return [">=", getExpr, value];
6040
- case "le":
6041
- if (typeof value !== "number" && typeof value !== "string") {
6042
- throw new Error(
6043
- `Operator "le" requires number or string for "${field}"`
6044
- );
6045
- }
6046
- return ["<=", getExpr, value];
6047
- case "in":
6048
- if (!Array.isArray(value) || !value.every((x) => typeof x === "string" || typeof x === "number")) {
6049
- throw new Error(
6050
- `Operator "in" requires (string | number)[] for "${field}"`
6051
- );
6052
- }
6053
- if (!value.length) {
6054
- throw new Error(
6055
- `Operator "in" requires non-empty array for "${field}"`
6056
- );
6057
- }
6058
- return ["in", getExpr, ...value];
6059
- case "notin":
6060
- if (!Array.isArray(value) || !value.every((x) => typeof x === "string" || typeof x === "number")) {
6061
- throw new Error(
6062
- `Operator "notin" requires (string | number)[] for "${field}"`
6063
- );
6064
- }
6065
- if (!value.length) {
6066
- throw new Error(
6067
- `Operator "notin" requires non-empty array for "${field}"`
6068
- );
6069
- }
6070
- return ["!in", getExpr, ...value];
6071
- case "like":
6072
- case "ilike":
6073
- throw new Error(
6074
- `Operator "${op}" is not supported by server FilterExpression`
6075
- );
6076
- default: {
6077
- const exhaustive = op;
6078
- throw new Error(`Unsupported operator: ${exhaustive}`);
6079
- }
6080
- }
6081
- }
6082
- function toGroupExpr(filters) {
6083
- let logicalOp = "all";
6084
- const children = [];
6085
- for (const item of filters) {
6086
- if (item === "all" || item === "any") {
6087
- logicalOp = item;
6088
- continue;
6089
- }
6090
- if (isPropertyFilter(item)) {
6091
- children.push(toConditionExpr(item));
6092
- continue;
6093
- }
6094
- if (isPropertiesFilterGroup(item)) {
6095
- children.push(toGroupExpr(item));
6096
- continue;
6097
- }
6098
- throw new Error("Invalid PropertiesFilter node");
6099
- }
6100
- return [logicalOp, ...children];
6101
- }
6102
- function propertiesFilterToExpression(filters) {
6103
- if (!(filters == null ? void 0 : filters.length)) {
6104
- return [];
6105
- }
6106
- return toGroupExpr(filters);
6107
- }
6108
- function propertiesFilterToExpressionString(filters) {
6109
- if (!(filters == null ? void 0 : filters.length)) {
6110
- return void 0;
6111
- }
6112
- return JSON.stringify(
6113
- propertiesFilterToExpression(filters)
6114
- );
6115
- }
6116
-
6117
6025
  function createLayerFilterParam(resourceId, filter) {
6026
+ const value = propertiesFilterToExpressionString(filter);
6027
+ if (value === void 0) {
6028
+ return {};
6029
+ }
6118
6030
  return {
6119
- [`filter[${resourceId}]`]: propertiesFilterToExpressionString(filter)
6031
+ [`filter[${resourceId}]`]: value
6120
6032
  };
6121
6033
  }
6122
6034
 
@@ -6204,7 +6116,7 @@ var NgwMap = (function (exports) {
6204
6116
  return class RasterAdapter extends AdapterClass {
6205
6117
  constructor(map, _options) {
6206
6118
  super(map, _options);
6207
- this.map = map;
6119
+ __publicField$c(this, "map", map);
6208
6120
  __publicField$c(this, "item", item);
6209
6121
  __publicField$c(this, "resourceId", resourceId);
6210
6122
  __publicField$c(this, "blocked", false);
@@ -6502,7 +6414,7 @@ var NgwMap = (function (exports) {
6502
6414
  };
6503
6415
  class NgwKit {
6504
6416
  constructor(options) {
6505
- this.options = options;
6417
+ __publicField$b(this, "options", options);
6506
6418
  __publicField$b(this, "url");
6507
6419
  __publicField$b(this, "connector");
6508
6420
  __publicField$b(this, "webMap");
@@ -8190,7 +8102,7 @@ var NgwMap = (function (exports) {
8190
8102
  var __publicField$7 = (obj, key, value) => __defNormalProp$a(obj, typeof key !== "symbol" ? key + "" : key, value);
8191
8103
  class StateItem {
8192
8104
  constructor(webMap, opt) {
8193
- this.webMap = webMap;
8105
+ __publicField$7(this, "webMap", webMap);
8194
8106
  __publicField$7(this, "name");
8195
8107
  __publicField$7(this, "event");
8196
8108
  __publicField$7(this, "value");
@@ -9982,7 +9894,7 @@ var NgwMap = (function (exports) {
9982
9894
  var __getOwnPropSymbols$3 = Object.getOwnPropertySymbols;
9983
9895
  var __hasOwnProp$3 = Object.prototype.hasOwnProperty;
9984
9896
  var __propIsEnum$3 = Object.prototype.propertyIsEnumerable;
9985
- var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
9897
+ var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : /* @__PURE__ */ Symbol.for("Symbol." + name);
9986
9898
  var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9987
9899
  var __spreadValues$3 = (a, b) => {
9988
9900
  for (var prop in b || (b = {}))