ol-wfst 4.0.0 → 4.0.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.
- package/CHANGELOG.md +7 -1
- package/README.md +224 -130
- package/dist/@types.d.ts +32 -0
- package/dist/@types.d.ts.map +1 -1
- package/dist/WfsLayer.d.ts +15 -2
- package/dist/WfsLayer.d.ts.map +1 -1
- package/dist/WmsLayer.d.ts +16 -3
- package/dist/WmsLayer.d.ts.map +1 -1
- package/dist/modules/{Modes/baseLayer.d.ts → base/BaseLayer.d.ts} +1 -1
- package/dist/modules/base/BaseLayer.d.ts.map +1 -0
- package/dist/modules/base/WfsSource.d.ts +48 -0
- package/dist/modules/base/WfsSource.d.ts.map +1 -0
- package/dist/modules/base/WmsSource.d.ts +47 -0
- package/dist/modules/base/WmsSource.d.ts.map +1 -0
- package/dist/modules/errors.d.ts.map +1 -1
- package/dist/ol-wfst.js +83 -321
- package/dist/ol-wfst.js.map +1 -1
- package/dist/ol-wfst.min.js +1 -1
- package/dist/ol-wfst.min.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/lib/@types.d.ts +32 -0
- package/lib/@types.d.ts.map +1 -1
- package/lib/WfsLayer.d.ts +15 -2
- package/lib/WfsLayer.d.ts.map +1 -1
- package/lib/WmsLayer.d.ts +16 -3
- package/lib/WmsLayer.d.ts.map +1 -1
- package/lib/index-es.js +79 -317
- package/lib/index-es.js.map +1 -1
- package/lib/modules/{Modes/baseLayer.d.ts → base/BaseLayer.d.ts} +1 -1
- package/lib/modules/base/BaseLayer.d.ts.map +1 -0
- package/lib/modules/base/WfsSource.d.ts +48 -0
- package/lib/modules/base/WfsSource.d.ts.map +1 -0
- package/lib/modules/base/WmsSource.d.ts +47 -0
- package/lib/modules/base/WmsSource.d.ts.map +1 -0
- package/lib/modules/errors.d.ts.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/dist/modules/Modes/WfsSource.d.ts +0 -60
- package/dist/modules/Modes/WfsSource.d.ts.map +0 -1
- package/dist/modules/Modes/WmsSource.d.ts +0 -82
- package/dist/modules/Modes/WmsSource.d.ts.map +0 -1
- package/dist/modules/Modes/baseLayer.d.ts.map +0 -1
- package/dist/modules/Modes/baseSource.d.ts +0 -103
- package/dist/modules/Modes/baseSource.d.ts.map +0 -1
- package/lib/modules/Modes/WfsSource.d.ts +0 -60
- package/lib/modules/Modes/WfsSource.d.ts.map +0 -1
- package/lib/modules/Modes/WmsSource.d.ts +0 -82
- package/lib/modules/Modes/WmsSource.d.ts.map +0 -1
- package/lib/modules/Modes/baseLayer.d.ts.map +0 -1
- package/lib/modules/Modes/baseSource.d.ts +0 -103
- package/lib/modules/Modes/baseSource.d.ts.map +0 -1
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { Feature } from 'ol';
|
|
2
2
|
import { Geometry } from 'ol/geom';
|
|
3
3
|
import { TransactionResponse } from 'ol/format/WFS';
|
|
4
|
+
import Layer from 'ol/layer/Base';
|
|
4
5
|
import Geoserver from '../../Geoserver';
|
|
5
6
|
import { IGeoserverDescribeFeatureType } from '../../@types';
|
|
6
7
|
import { TransactionType } from '../../@enums';
|
|
7
|
-
import Layer from 'ol/layer/Base';
|
|
8
8
|
/**
|
|
9
9
|
* Base class from which all layer types are derived.
|
|
10
10
|
*/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseLayer.d.ts","sourceRoot":"","sources":["../../../src/modules/base/BaseLayer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,MAAM,eAAe,CAAC;AAElC,OAAO,SAAS,MAAM,iBAAiB,CAAC;AACxC,OAAO,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAgB,eAAe,EAAE,MAAM,cAAc,CAAC;AAI7D;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,KAAK;IACxC;;OAEG;IACH,KAAK,IAAI,IAAI;IAYb;;;;OAIG;IACG,+BAA+B,IAAI,OAAO,CAAC,IAAI,CAAC;IAqDtD;;;OAGG;IACH,eAAe,IAAI,OAAO;IAI1B;;;;;OAKG;IACG,gBAAgB,CAClB,IAAI,EAAE,eAAe,EACrB,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,GACvD,OAAO,CAAC,mBAAmB,GAAG,KAAK,CAAC;IASjC,cAAc,CAChB,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,GACvD,OAAO,CAAC,mBAAmB,GAAG,KAAK,CAAC;IAIvC;;;;OAIG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAYnE;;;;OAIG;IACH,YAAY,IAAI,SAAS;IAIzB;;;;OAIG;IACH,sBAAsB,IAAI,6BAA6B;CAG1D;AAED,oBAAY,iBAAiB;IACzB,IAAI,SAAS;IACb,KAAK,UAAU;IACf,mBAAmB,wBAAwB;IAC3C,SAAS,cAAc;IACvB,SAAS,cAAc;CAC1B;AAED,oBAAY,mBAAmB,GACzB,eAAe,GACf,UAAU,iBAAiB,CAAC,mBAAmB,EAAE,GACjD,UAAU,iBAAiB,CAAC,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import VectorSource, { Options as VSOptions } from 'ol/source/Vector';
|
|
2
|
+
import { WfsGeoserverVendor } from '../../@types';
|
|
3
|
+
import { GeoServerAdvanced } from '../../Geoserver';
|
|
4
|
+
/**
|
|
5
|
+
* Layer source to retrieve WFS features from geoservers
|
|
6
|
+
* https://docs.geoserver.org/stable/en/user/services/wfs/reference.html
|
|
7
|
+
*
|
|
8
|
+
* @extends {ol/source/Vector~VectorSource}
|
|
9
|
+
* @param options
|
|
10
|
+
*/
|
|
11
|
+
export default class WfsSource extends VectorSource {
|
|
12
|
+
urlParams: URLSearchParams;
|
|
13
|
+
constructor(options: WfsSourceOptions);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* **_[interface]_** - Parameters to create a WfsSource
|
|
17
|
+
*
|
|
18
|
+
* @public
|
|
19
|
+
*/
|
|
20
|
+
export interface WfsSourceOptions extends VSOptions {
|
|
21
|
+
/**
|
|
22
|
+
* Layer name in the GeoServer
|
|
23
|
+
*/
|
|
24
|
+
name: string;
|
|
25
|
+
/**
|
|
26
|
+
* Url for OWS services. This endpoint will recive the WFS, WFST and WMS requests
|
|
27
|
+
*/
|
|
28
|
+
geoserverUrl: string;
|
|
29
|
+
/**
|
|
30
|
+
* Advanced options for geoserver requests
|
|
31
|
+
*/
|
|
32
|
+
geoServerAdvanced?: GeoServerAdvanced;
|
|
33
|
+
/**
|
|
34
|
+
*
|
|
35
|
+
*/
|
|
36
|
+
geoserverVendor?: WfsGeoserverVendor;
|
|
37
|
+
/**
|
|
38
|
+
* Url headers for GeoServer requests. You can use it to add Authorization credentials
|
|
39
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/Request/headers
|
|
40
|
+
*/
|
|
41
|
+
headers?: HeadersInit;
|
|
42
|
+
/**
|
|
43
|
+
* Credentials for fetch requests
|
|
44
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/Request/credentials
|
|
45
|
+
*/
|
|
46
|
+
credentials?: RequestCredentials;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=WfsSource.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WfsSource.d.ts","sourceRoot":"","sources":["../../../src/modules/base/WfsSource.ts"],"names":[],"mappings":"AAGA,OAAO,YAAY,EAAE,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAItE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,YAAY;IACxC,SAAS,kBAKb;gBAES,OAAO,EAAE,gBAAgB;CAoFxC;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IAC/C;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAEtC;;OAEG;IACH,eAAe,CAAC,EAAE,kBAAkB,CAAC;IAErC;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB;;;OAGG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;CACpC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import TileWMS, { Options as TSOptions } from 'ol/source/TileWMS';
|
|
2
|
+
import { WmsGeoserverVendor } from '../../@types';
|
|
3
|
+
import { GeoServerAdvanced } from '../../Geoserver';
|
|
4
|
+
/**
|
|
5
|
+
* Layer source to retrieve WMS information from geoservers
|
|
6
|
+
* https://docs.geoserver.org/stable/en/user/services/wms/reference.html
|
|
7
|
+
*
|
|
8
|
+
* @extends {ol/source/TieWMS~TileWMS}
|
|
9
|
+
* @param options
|
|
10
|
+
*/
|
|
11
|
+
export default class WmsSource extends TileWMS {
|
|
12
|
+
constructor(options: WmsSourceOptions);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* **_[interface]_** - Parameters to create a WmsSource
|
|
16
|
+
*
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
export interface WmsSourceOptions extends Omit<TSOptions, 'params'> {
|
|
20
|
+
/**
|
|
21
|
+
* Layer name in the GeoServer
|
|
22
|
+
*/
|
|
23
|
+
name: string;
|
|
24
|
+
/**
|
|
25
|
+
* Url for OWS services. This endpoint will recive the WFS, WFST and WMS requests
|
|
26
|
+
*/
|
|
27
|
+
geoserverUrl: string;
|
|
28
|
+
/**
|
|
29
|
+
* Advanced options for geoserver requests
|
|
30
|
+
*/
|
|
31
|
+
geoServerAdvanced?: GeoServerAdvanced;
|
|
32
|
+
/**
|
|
33
|
+
*
|
|
34
|
+
*/
|
|
35
|
+
geoserverVendor?: WmsGeoserverVendor;
|
|
36
|
+
/**
|
|
37
|
+
* Url headers for GeoServer requests. You can use it to add Authorization credentials
|
|
38
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/Request/headers
|
|
39
|
+
*/
|
|
40
|
+
headers?: HeadersInit;
|
|
41
|
+
/**
|
|
42
|
+
* Credentials for fetch requests
|
|
43
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/Request/credentials
|
|
44
|
+
*/
|
|
45
|
+
credentials?: RequestCredentials;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=WmsSource.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WmsSource.d.ts","sourceRoot":"","sources":["../../../src/modules/base/WmsSource.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAKlE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,OAAO;gBAC9B,OAAO,EAAE,gBAAgB;CAmDxC;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC;IAC/D;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAEtC;;OAEG;IACH,eAAe,CAAC,EAAE,kBAAkB,CAAC;IAErC;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB;;;OAGG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;CACpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/modules/errors.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAOrC,eAAO,MAAM,SAAS,SAAU,OAAO,CAAC,OAAO,CAAC,SAE/C,CAAC;AAEF,eAAO,MAAM,UAAU,8BAMtB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,SAAS,QACb,MAAM,kBACI,KAAK,yBAErB,
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/modules/errors.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAOrC,eAAO,MAAM,SAAS,SAAU,OAAO,CAAC,OAAO,CAAC,SAE/C,CAAC;AAEF,eAAO,MAAM,UAAU,8BAMtB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,SAAS,QACb,MAAM,kBACI,KAAK,yBAErB,IAoBF,CAAC"}
|
package/dist/ol-wfst.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('ol/style'), require('ol/control'), require('ol/interaction'), require('ol/events/Event'), require('ol/events/condition'), require('ol/Observable'), require('ol/layer/Vector'), require('ol/layer/Base'), require('ol/format/GeoJSON'), require('ol/source/Vector'), require('ol/proj'), require('ol/loadingstrategy'), require('ol/
|
|
3
|
-
typeof define === 'function' && define.amd ? define(['exports', 'ol/style', 'ol/control', 'ol/interaction', 'ol/events/Event', 'ol/events/condition', 'ol/Observable', 'ol/layer/Vector', 'ol/layer/Base', 'ol/format/GeoJSON', 'ol/source/Vector', 'ol/proj', 'ol/loadingstrategy', 'ol/
|
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.Wfst = {}, global.ol.style, global.ol.control, global.ol.interaction, global.ol.events.Event, global.ol.events.condition, global.ol.Observable, global.ol.layer.Vector, global.ol.layer.Base, global.ol.format.GeoJSON, global.ol.source.Vector, global.ol.proj, global.ol.loadingstrategy, global.ol.
|
|
5
|
-
})(this, (function (exports, style, control, interaction, BaseEvent$1, condition, Observable$2, VectorLayer, Layer, GeoJSON, VectorSource, proj, loadingstrategy,
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('ol/style'), require('ol/control'), require('ol/interaction'), require('ol/events/Event'), require('ol/events/condition'), require('ol/Observable'), require('ol/layer/Vector'), require('ol/layer/Base'), require('ol/format/GeoJSON'), require('ol/source/Vector'), require('ol/proj'), require('ol/loadingstrategy'), require('ol/layer/Tile'), require('ol/format'), require('ol/source/TileWMS'), require('ol/geom'), require('ol/Object'), require('ol/geom/Polygon'), require('ol/extent')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define(['exports', 'ol/style', 'ol/control', 'ol/interaction', 'ol/events/Event', 'ol/events/condition', 'ol/Observable', 'ol/layer/Vector', 'ol/layer/Base', 'ol/format/GeoJSON', 'ol/source/Vector', 'ol/proj', 'ol/loadingstrategy', 'ol/layer/Tile', 'ol/format', 'ol/source/TileWMS', 'ol/geom', 'ol/Object', 'ol/geom/Polygon', 'ol/extent'], factory) :
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.Wfst = {}, global.ol.style, global.ol.control, global.ol.interaction, global.ol.events.Event, global.ol.events.condition, global.ol.Observable, global.ol.layer.Vector, global.ol.layer.Base, global.ol.format.GeoJSON, global.ol.source.Vector, global.ol.proj, global.ol.loadingstrategy, global.ol.layer.Tile, global.ol.format, global.ol.source.TileWMS, global.ol.geom, global.ol.Object, global.ol.geom.Polygon, global.ol.extent));
|
|
5
|
+
})(this, (function (exports, style, control, interaction, BaseEvent$1, condition, Observable$2, VectorLayer, Layer, GeoJSON, VectorSource, proj, loadingstrategy, TileLayer, format, TileWMS, geom, BaseObject$2, Polygon, extent) { 'use strict';
|
|
6
6
|
|
|
7
7
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
8
|
|
|
@@ -11,9 +11,9 @@
|
|
|
11
11
|
var Layer__default = /*#__PURE__*/_interopDefaultLegacy(Layer);
|
|
12
12
|
var GeoJSON__default = /*#__PURE__*/_interopDefaultLegacy(GeoJSON);
|
|
13
13
|
var VectorSource__default = /*#__PURE__*/_interopDefaultLegacy(VectorSource);
|
|
14
|
-
var BaseObject__default = /*#__PURE__*/_interopDefaultLegacy(BaseObject$2);
|
|
15
14
|
var TileLayer__default = /*#__PURE__*/_interopDefaultLegacy(TileLayer);
|
|
16
15
|
var TileWMS__default = /*#__PURE__*/_interopDefaultLegacy(TileWMS);
|
|
16
|
+
var BaseObject__default = /*#__PURE__*/_interopDefaultLegacy(BaseObject$2);
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
19
|
* @module ol/AssertionError
|
|
@@ -3776,8 +3776,7 @@
|
|
|
3776
3776
|
isError.add(layerName);
|
|
3777
3777
|
let err_msg = `<b>Error: ${msg}</b>`;
|
|
3778
3778
|
if (originalError) {
|
|
3779
|
-
|
|
3780
|
-
//err_msg += `. ${originalError.message}`;
|
|
3779
|
+
err_msg += `. ${originalError.message}`;
|
|
3781
3780
|
}
|
|
3782
3781
|
const al = Modal.alert(err_msg, options);
|
|
3783
3782
|
al.show();
|
|
@@ -4296,153 +4295,15 @@
|
|
|
4296
4295
|
BaseLayerProperty["GEOSERVER"] = "geoserver";
|
|
4297
4296
|
})(BaseLayerProperty || (BaseLayerProperty = {}));
|
|
4298
4297
|
|
|
4299
|
-
|
|
4300
|
-
|
|
4301
|
-
|
|
4302
|
-
|
|
4303
|
-
|
|
4304
|
-
|
|
4305
|
-
|
|
4306
|
-
|
|
4307
|
-
|
|
4308
|
-
/**
|
|
4309
|
-
* @public
|
|
4310
|
-
* @returns
|
|
4311
|
-
*/
|
|
4312
|
-
getCqlFilter() {
|
|
4313
|
-
return this.get(BaseSourceProperty.CQLFILTER);
|
|
4314
|
-
}
|
|
4315
|
-
/**
|
|
4316
|
-
* @public
|
|
4317
|
-
* @param value
|
|
4318
|
-
* @param opt_silent
|
|
4319
|
-
*/
|
|
4320
|
-
setSortBy(value, opt_silent) {
|
|
4321
|
-
this.set(BaseSourceProperty.SORTBY, value, opt_silent);
|
|
4322
|
-
}
|
|
4323
|
-
/**
|
|
4324
|
-
* @public
|
|
4325
|
-
* @returns
|
|
4326
|
-
*/
|
|
4327
|
-
getSortBy() {
|
|
4328
|
-
return this.get(BaseSourceProperty.SORTBY);
|
|
4329
|
-
}
|
|
4330
|
-
/**
|
|
4331
|
-
* @public
|
|
4332
|
-
* @param value
|
|
4333
|
-
* @param opt_silent
|
|
4334
|
-
*/
|
|
4335
|
-
setFeatureId(value, opt_silent) {
|
|
4336
|
-
this.set(BaseSourceProperty.FEATUREID, value, opt_silent);
|
|
4337
|
-
}
|
|
4338
|
-
/**
|
|
4339
|
-
* @public
|
|
4340
|
-
* @returns
|
|
4341
|
-
*/
|
|
4342
|
-
getFeatureId() {
|
|
4343
|
-
return this.get(BaseSourceProperty.FEATUREID);
|
|
4344
|
-
}
|
|
4345
|
-
/**
|
|
4346
|
-
* @public
|
|
4347
|
-
* @param value
|
|
4348
|
-
* @param opt_silent
|
|
4349
|
-
*/
|
|
4350
|
-
setFilter(value, opt_silent) {
|
|
4351
|
-
this.set(BaseSourceProperty.FILTER, value, opt_silent);
|
|
4352
|
-
}
|
|
4353
|
-
/**
|
|
4354
|
-
* @public
|
|
4355
|
-
* @returns
|
|
4356
|
-
*/
|
|
4357
|
-
getFilter() {
|
|
4358
|
-
return this.get(BaseSourceProperty.FILTER);
|
|
4359
|
-
}
|
|
4360
|
-
/**
|
|
4361
|
-
* @public
|
|
4362
|
-
* @param value
|
|
4363
|
-
* @param opt_silent
|
|
4364
|
-
*/
|
|
4365
|
-
setFormatOptions(value, opt_silent) {
|
|
4366
|
-
this.set(BaseSourceProperty.FORMATOPTIONS, value, opt_silent);
|
|
4367
|
-
}
|
|
4368
|
-
/**
|
|
4369
|
-
* @public
|
|
4370
|
-
* @returns
|
|
4371
|
-
*/
|
|
4372
|
-
getFormatOptions() {
|
|
4373
|
-
return this.get(BaseSourceProperty.FORMATOPTIONS);
|
|
4374
|
-
}
|
|
4375
|
-
/**
|
|
4376
|
-
* @public
|
|
4377
|
-
* @param value
|
|
4378
|
-
* @param opt_silent
|
|
4379
|
-
*/
|
|
4380
|
-
setMaxFeatures(value, opt_silent) {
|
|
4381
|
-
this.set(BaseSourceProperty.MAXFEATURES, value, opt_silent);
|
|
4382
|
-
}
|
|
4383
|
-
/**
|
|
4384
|
-
* @public
|
|
4385
|
-
* @returns
|
|
4386
|
-
*/
|
|
4387
|
-
getMaxFeatures() {
|
|
4388
|
-
return this.get(BaseSourceProperty.MAXFEATURES);
|
|
4389
|
-
}
|
|
4390
|
-
/**
|
|
4391
|
-
* @public
|
|
4392
|
-
* @param value
|
|
4393
|
-
* @param opt_silent
|
|
4394
|
-
*/
|
|
4395
|
-
setStartIndex(value, opt_silent) {
|
|
4396
|
-
this.set(BaseSourceProperty.STARTINDEX, value, opt_silent);
|
|
4397
|
-
}
|
|
4398
|
-
/**
|
|
4399
|
-
* @public
|
|
4400
|
-
* @returns
|
|
4401
|
-
*/
|
|
4402
|
-
getStartIndex() {
|
|
4403
|
-
return this.get(BaseSourceProperty.STARTINDEX);
|
|
4404
|
-
}
|
|
4405
|
-
/**
|
|
4406
|
-
* @public
|
|
4407
|
-
* @param value
|
|
4408
|
-
* @param opt_silent
|
|
4409
|
-
*/
|
|
4410
|
-
setPropertyName(value, opt_silent) {
|
|
4411
|
-
this.set(BaseSourceProperty.PROPERTYNAME, value, opt_silent);
|
|
4412
|
-
}
|
|
4413
|
-
/**
|
|
4414
|
-
* @public
|
|
4415
|
-
* @returns
|
|
4416
|
-
*/
|
|
4417
|
-
getPropertyName() {
|
|
4418
|
-
return this.get(BaseSourceProperty.PROPERTYNAME);
|
|
4419
|
-
}
|
|
4420
|
-
}
|
|
4421
|
-
var BaseSourceProperty;
|
|
4422
|
-
(function (BaseSourceProperty) {
|
|
4423
|
-
BaseSourceProperty["CQLFILTER"] = "cql_filter";
|
|
4424
|
-
BaseSourceProperty["SORTBY"] = "sortBy";
|
|
4425
|
-
BaseSourceProperty["FEATUREID"] = "featureid";
|
|
4426
|
-
BaseSourceProperty["FILTER"] = "filter";
|
|
4427
|
-
BaseSourceProperty["FORMATOPTIONS"] = "format_options";
|
|
4428
|
-
BaseSourceProperty["MAXFEATURES"] = "maxFeatures";
|
|
4429
|
-
BaseSourceProperty["STARTINDEX"] = "startIndex";
|
|
4430
|
-
BaseSourceProperty["PROPERTYNAME"] = "propertyname";
|
|
4431
|
-
})(BaseSourceProperty || (BaseSourceProperty = {}));
|
|
4432
|
-
|
|
4433
|
-
class WfsSource extends Mixin(VectorSource__default["default"], BaseSource) {
|
|
4434
|
-
geoserverProps_ = [
|
|
4435
|
-
'cql_filter',
|
|
4436
|
-
'filter',
|
|
4437
|
-
'orderBy',
|
|
4438
|
-
'maxFeatures',
|
|
4439
|
-
'startIndex',
|
|
4440
|
-
'featureid',
|
|
4441
|
-
'format_options',
|
|
4442
|
-
'propertyname',
|
|
4443
|
-
'strict'
|
|
4444
|
-
];
|
|
4445
|
-
urlParams_ = new URLSearchParams({
|
|
4298
|
+
/**
|
|
4299
|
+
* Layer source to retrieve WFS features from geoservers
|
|
4300
|
+
* https://docs.geoserver.org/stable/en/user/services/wfs/reference.html
|
|
4301
|
+
*
|
|
4302
|
+
* @extends {ol/source/Vector~VectorSource}
|
|
4303
|
+
* @param options
|
|
4304
|
+
*/
|
|
4305
|
+
class WfsSource extends VectorSource__default["default"] {
|
|
4306
|
+
urlParams = new URLSearchParams({
|
|
4446
4307
|
SERVICE: 'wfs',
|
|
4447
4308
|
REQUEST: 'GetFeature',
|
|
4448
4309
|
OUTPUTFORMAT: 'application/json',
|
|
@@ -4459,46 +4320,10 @@
|
|
|
4459
4320
|
const extentGeoServer = proj.transformExtent(extent, projection.getCode(), options.geoServerAdvanced.projection);
|
|
4460
4321
|
// https://docs.geoserver.org/stable/en/user/services/wfs/reference.html
|
|
4461
4322
|
// request features using a bounding box with CRS maybe different from featureTypes native CRS
|
|
4462
|
-
this.
|
|
4323
|
+
this.urlParams.set('bbox', extentGeoServer.toString() +
|
|
4463
4324
|
`,${options.geoServerAdvanced.projection}`);
|
|
4464
4325
|
}
|
|
4465
|
-
const
|
|
4466
|
-
if (cqlFilter) {
|
|
4467
|
-
this.urlParams_.set('cql_filter', cqlFilter);
|
|
4468
|
-
}
|
|
4469
|
-
const sortBy = this.getSortBy();
|
|
4470
|
-
if (sortBy) {
|
|
4471
|
-
this.urlParams_.set('sortBy', sortBy);
|
|
4472
|
-
}
|
|
4473
|
-
const filter = this.getFilter();
|
|
4474
|
-
if (filter) {
|
|
4475
|
-
this.urlParams_.set('filter', filter);
|
|
4476
|
-
}
|
|
4477
|
-
const featureId = this.getFeatureId();
|
|
4478
|
-
if (featureId) {
|
|
4479
|
-
this.urlParams_.set('featureid', featureId);
|
|
4480
|
-
}
|
|
4481
|
-
const formatOptions = this.getFormatOptions();
|
|
4482
|
-
if (formatOptions) {
|
|
4483
|
-
this.urlParams_.set('formatOptions', formatOptions);
|
|
4484
|
-
}
|
|
4485
|
-
const maxFeatures = this.getMaxFeatures();
|
|
4486
|
-
if (maxFeatures) {
|
|
4487
|
-
this.urlParams_.set('maxFeatures', String(maxFeatures));
|
|
4488
|
-
}
|
|
4489
|
-
const startIndex = this.getStartIndex();
|
|
4490
|
-
if (startIndex) {
|
|
4491
|
-
this.urlParams_.set('startIndex', String(startIndex));
|
|
4492
|
-
}
|
|
4493
|
-
const propertyName = this.getPropertyName();
|
|
4494
|
-
if (propertyName) {
|
|
4495
|
-
this.urlParams_.set('propertyname', propertyName);
|
|
4496
|
-
}
|
|
4497
|
-
const strict = this.getStrict();
|
|
4498
|
-
if (strict !== undefined) {
|
|
4499
|
-
this.urlParams_.set('strict', String(strict));
|
|
4500
|
-
}
|
|
4501
|
-
const url_fetch = options.geoserverUrl + '?' + this.urlParams_.toString();
|
|
4326
|
+
const url_fetch = options.geoserverUrl + '?' + this.urlParams.toString();
|
|
4502
4327
|
const response = await fetch(url_fetch, {
|
|
4503
4328
|
headers: options.headers,
|
|
4504
4329
|
credentials: options.credentials
|
|
@@ -4528,52 +4353,11 @@
|
|
|
4528
4353
|
}
|
|
4529
4354
|
}
|
|
4530
4355
|
});
|
|
4531
|
-
this.
|
|
4532
|
-
this.
|
|
4533
|
-
this.
|
|
4534
|
-
const geoserverOptions = options.geoserverVendor;
|
|
4535
|
-
this.setCqlFilter(geoserverOptions.cql_filter, true);
|
|
4536
|
-
this.setSortBy(geoserverOptions.sortBy, true);
|
|
4537
|
-
this.setFeatureId(geoserverOptions.featureid, true);
|
|
4538
|
-
this.setFilter(geoserverOptions.filter, true);
|
|
4539
|
-
this.setFormatOptions(geoserverOptions.format_options, true);
|
|
4540
|
-
this.setMaxFeatures(geoserverOptions.maxFeatures, true);
|
|
4541
|
-
this.setStartIndex(geoserverOptions.startIndex, true);
|
|
4542
|
-
this.setPropertyName(geoserverOptions.propertyname, true);
|
|
4543
|
-
this.setStrict(geoserverOptions.strict, true);
|
|
4544
|
-
this.addEvents_();
|
|
4545
|
-
}
|
|
4546
|
-
/**
|
|
4547
|
-
* @public
|
|
4548
|
-
* @param value
|
|
4549
|
-
* @param opt_silent
|
|
4550
|
-
*/
|
|
4551
|
-
setStrict(value, opt_silent) {
|
|
4552
|
-
this.set(WfsSourceProperty.STRICT, value, opt_silent);
|
|
4553
|
-
}
|
|
4554
|
-
/**
|
|
4555
|
-
* @public
|
|
4556
|
-
* @returns
|
|
4557
|
-
*/
|
|
4558
|
-
getStrict() {
|
|
4559
|
-
return this.get(WfsSourceProperty.STRICT);
|
|
4560
|
-
}
|
|
4561
|
-
/**
|
|
4562
|
-
* @private
|
|
4563
|
-
*/
|
|
4564
|
-
addEvents_() {
|
|
4565
|
-
this.on(['propertychange'], (evt) => {
|
|
4566
|
-
// If a geoserver property was modified, refresh the source
|
|
4567
|
-
if (this.geoserverProps_.includes(evt.key)) {
|
|
4568
|
-
this.refresh();
|
|
4569
|
-
}
|
|
4570
|
-
});
|
|
4356
|
+
this.urlParams.set('version', options.geoServerAdvanced.getFeatureVersion);
|
|
4357
|
+
this.urlParams.set('typename', options.name);
|
|
4358
|
+
this.urlParams.set('srsName', options.geoServerAdvanced.projection.toString());
|
|
4571
4359
|
}
|
|
4572
|
-
}
|
|
4573
|
-
var WfsSourceProperty;
|
|
4574
|
-
(function (WfsSourceProperty) {
|
|
4575
|
-
WfsSourceProperty["STRICT"] = "strict";
|
|
4576
|
-
})(WfsSourceProperty || (WfsSourceProperty = {}));
|
|
4360
|
+
}
|
|
4577
4361
|
|
|
4578
4362
|
/**
|
|
4579
4363
|
* Layer to retrieve WFS features from geoservers
|
|
@@ -4624,6 +4408,10 @@
|
|
|
4624
4408
|
}
|
|
4625
4409
|
});
|
|
4626
4410
|
this.setSource(source);
|
|
4411
|
+
const geoserverOptions = options.geoserverVendor;
|
|
4412
|
+
Object.keys(geoserverOptions).forEach((param) => {
|
|
4413
|
+
source.urlParams.set(param, geoserverOptions[param]);
|
|
4414
|
+
});
|
|
4627
4415
|
}
|
|
4628
4416
|
/**
|
|
4629
4417
|
* @public
|
|
@@ -4633,22 +4421,41 @@
|
|
|
4633
4421
|
// Refrescamos el wms
|
|
4634
4422
|
source.refresh();
|
|
4635
4423
|
}
|
|
4424
|
+
/**
|
|
4425
|
+
* Use this to update Geoserver Wms Vendors (https://docs.geoserver.org/latest/en/user/services/wms/vendor.html)
|
|
4426
|
+
* and other arguements (https://docs.geoserver.org/stable/en/user/services/wms/reference.html#getmap)
|
|
4427
|
+
* in all the getMap requests.
|
|
4428
|
+
*
|
|
4429
|
+
* Example: you can use this to change the style of the WMS, add a custom sld, set a cql_filter, etc.
|
|
4430
|
+
*
|
|
4431
|
+
* @public
|
|
4432
|
+
* @param paramName
|
|
4433
|
+
* @param value Use `undefined` or `null` to remove the param
|
|
4434
|
+
* @param refresh
|
|
4435
|
+
*/
|
|
4436
|
+
setCustomParam(paramName, value = null, refresh = true) {
|
|
4437
|
+
const source = this.getSource();
|
|
4438
|
+
if (value === undefined || value === null) {
|
|
4439
|
+
source.urlParams.delete(paramName);
|
|
4440
|
+
}
|
|
4441
|
+
else {
|
|
4442
|
+
source.urlParams.set(paramName, value);
|
|
4443
|
+
}
|
|
4444
|
+
if (refresh) {
|
|
4445
|
+
this.refresh();
|
|
4446
|
+
}
|
|
4447
|
+
return source.urlParams;
|
|
4448
|
+
}
|
|
4636
4449
|
}
|
|
4637
4450
|
|
|
4638
|
-
|
|
4639
|
-
|
|
4640
|
-
|
|
4641
|
-
|
|
4642
|
-
|
|
4643
|
-
|
|
4644
|
-
|
|
4645
|
-
|
|
4646
|
-
'format_options',
|
|
4647
|
-
'propertyname',
|
|
4648
|
-
'buffer',
|
|
4649
|
-
'clip',
|
|
4650
|
-
'env'
|
|
4651
|
-
];
|
|
4451
|
+
/**
|
|
4452
|
+
* Layer source to retrieve WMS information from geoservers
|
|
4453
|
+
* https://docs.geoserver.org/stable/en/user/services/wms/reference.html
|
|
4454
|
+
*
|
|
4455
|
+
* @extends {ol/source/TieWMS~TileWMS}
|
|
4456
|
+
* @param options
|
|
4457
|
+
*/
|
|
4458
|
+
class WmsSource extends TileWMS__default["default"] {
|
|
4652
4459
|
constructor(options) {
|
|
4653
4460
|
super({
|
|
4654
4461
|
url: options.geoserverUrl,
|
|
@@ -4693,75 +4500,8 @@
|
|
|
4693
4500
|
},
|
|
4694
4501
|
...options
|
|
4695
4502
|
});
|
|
4696
|
-
this.addEvents_();
|
|
4697
4503
|
}
|
|
4698
|
-
|
|
4699
|
-
* @public
|
|
4700
|
-
* @param value
|
|
4701
|
-
* @param opt_silent
|
|
4702
|
-
*/
|
|
4703
|
-
setBuffer(value, opt_silent) {
|
|
4704
|
-
this.set(WmsSourceProperty.BUFFER, value, opt_silent);
|
|
4705
|
-
}
|
|
4706
|
-
/**
|
|
4707
|
-
* @public
|
|
4708
|
-
* @returns
|
|
4709
|
-
*/
|
|
4710
|
-
getBuffer() {
|
|
4711
|
-
return this.get(WmsSourceProperty.BUFFER);
|
|
4712
|
-
}
|
|
4713
|
-
/**
|
|
4714
|
-
* @public
|
|
4715
|
-
* @param value
|
|
4716
|
-
* @param opt_silent
|
|
4717
|
-
*/
|
|
4718
|
-
setEnv(value, opt_silent) {
|
|
4719
|
-
this.set(WmsSourceProperty.ENV, value, opt_silent);
|
|
4720
|
-
}
|
|
4721
|
-
/**
|
|
4722
|
-
* @public
|
|
4723
|
-
* @returns
|
|
4724
|
-
*/
|
|
4725
|
-
getEnv() {
|
|
4726
|
-
return this.get(WmsSourceProperty.ENV);
|
|
4727
|
-
}
|
|
4728
|
-
/**
|
|
4729
|
-
* @public
|
|
4730
|
-
* @param value
|
|
4731
|
-
* @param opt_silent
|
|
4732
|
-
*/
|
|
4733
|
-
setClip(value, opt_silent) {
|
|
4734
|
-
this.set(WmsSourceProperty.CLIP, value, opt_silent);
|
|
4735
|
-
}
|
|
4736
|
-
/**
|
|
4737
|
-
* @public
|
|
4738
|
-
* @returns
|
|
4739
|
-
*/
|
|
4740
|
-
getClip() {
|
|
4741
|
-
return this.get(WmsSourceProperty.CLIP);
|
|
4742
|
-
}
|
|
4743
|
-
/**
|
|
4744
|
-
* @private
|
|
4745
|
-
*/
|
|
4746
|
-
addEvents_() {
|
|
4747
|
-
this.on(['propertychange'], (evt) => {
|
|
4748
|
-
console.log(evt.key);
|
|
4749
|
-
// If a geoserver property was modified, refresh the source
|
|
4750
|
-
if (this.geoserverProps_.includes(evt.key)) {
|
|
4751
|
-
this.updateParams({
|
|
4752
|
-
[evt.key]: evt.target.get(evt.key)
|
|
4753
|
-
});
|
|
4754
|
-
this.refresh();
|
|
4755
|
-
}
|
|
4756
|
-
});
|
|
4757
|
-
}
|
|
4758
|
-
}
|
|
4759
|
-
var WmsSourceProperty;
|
|
4760
|
-
(function (WmsSourceProperty) {
|
|
4761
|
-
WmsSourceProperty["BUFFER"] = "buffer";
|
|
4762
|
-
WmsSourceProperty["ENV"] = "env";
|
|
4763
|
-
WmsSourceProperty["CLIP"] = "clip";
|
|
4764
|
-
})(WmsSourceProperty || (WmsSourceProperty = {}));
|
|
4504
|
+
}
|
|
4765
4505
|
|
|
4766
4506
|
/**
|
|
4767
4507
|
* Layer to retrieve WMS information from geoservers
|
|
@@ -4821,7 +4561,7 @@
|
|
|
4821
4561
|
* @returns
|
|
4822
4562
|
* @private
|
|
4823
4563
|
*/
|
|
4824
|
-
async
|
|
4564
|
+
async _getFeaturesByClickEvent(evt) {
|
|
4825
4565
|
const coordinate = evt.coordinate;
|
|
4826
4566
|
const view = getMap().getView();
|
|
4827
4567
|
// Si la vista es lejana, disminumos el buffer
|
|
@@ -4869,6 +4609,28 @@
|
|
|
4869
4609
|
params.t = new Date().getMilliseconds();
|
|
4870
4610
|
source.updateParams(params);
|
|
4871
4611
|
}
|
|
4612
|
+
/**
|
|
4613
|
+
* Use this to update Geoserver Wfs Vendors (https://docs.geoserver.org/latest/en/user/services/wfs/vendor.html)
|
|
4614
|
+
* and other arguements (https://docs.geoserver.org/stable/en/user/services/wfs/reference.html)
|
|
4615
|
+
* in all the getFeature requests.
|
|
4616
|
+
*
|
|
4617
|
+
* Example: you can use this to set a cql_filter, limit the numbers of features, etc.
|
|
4618
|
+
*
|
|
4619
|
+
* @public
|
|
4620
|
+
* @param paramName
|
|
4621
|
+
* @param value
|
|
4622
|
+
* @param refresh
|
|
4623
|
+
*/
|
|
4624
|
+
setCustomParam(paramName, value = null, refresh = true) {
|
|
4625
|
+
const source = this.getSource();
|
|
4626
|
+
source.updateParams({
|
|
4627
|
+
[paramName]: value
|
|
4628
|
+
});
|
|
4629
|
+
if (refresh) {
|
|
4630
|
+
this.refresh();
|
|
4631
|
+
}
|
|
4632
|
+
return source.getParams();
|
|
4633
|
+
}
|
|
4872
4634
|
}
|
|
4873
4635
|
|
|
4874
4636
|
function createElement(tagName, attrs = {}, ...children) {
|
|
@@ -6450,7 +6212,7 @@
|
|
|
6450
6212
|
layer instanceof WfsLayer) {
|
|
6451
6213
|
return;
|
|
6452
6214
|
}
|
|
6453
|
-
const features = await layer.
|
|
6215
|
+
const features = await layer._getFeaturesByClickEvent(evt);
|
|
6454
6216
|
if (!features.length) {
|
|
6455
6217
|
return;
|
|
6456
6218
|
}
|