ol-wfst 3.0.4 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/CHANGELOG.md +88 -67
  2. package/LICENSE.md +21 -0
  3. package/README.md +548 -173
  4. package/dist/@enums.d.ts +5 -0
  5. package/dist/@enums.d.ts.map +1 -1
  6. package/dist/@types.d.ts +163 -0
  7. package/dist/@types.d.ts.map +1 -0
  8. package/dist/Geoserver.d.ts +260 -0
  9. package/dist/Geoserver.d.ts.map +1 -0
  10. package/dist/WfsLayer.d.ts +40 -0
  11. package/dist/WfsLayer.d.ts.map +1 -0
  12. package/dist/WmsLayer.d.ts +48 -0
  13. package/dist/WmsLayer.d.ts.map +1 -0
  14. package/dist/css/ol-wfst.bootstrap5.css +364 -481
  15. package/dist/css/ol-wfst.bootstrap5.min.css +1 -1
  16. package/dist/css/ol-wfst.css +22 -18
  17. package/dist/css/ol-wfst.min.css +1 -1
  18. package/dist/defaults.d.ts +4 -0
  19. package/dist/defaults.d.ts.map +1 -0
  20. package/dist/modules/EditControlChanges.d.ts +18 -0
  21. package/dist/modules/EditControlChanges.d.ts.map +1 -0
  22. package/dist/modules/EditFieldsModal.d.ts +18 -0
  23. package/dist/modules/EditFieldsModal.d.ts.map +1 -0
  24. package/dist/modules/EditOverlay.d.ts +7 -0
  25. package/dist/modules/EditOverlay.d.ts.map +1 -0
  26. package/dist/modules/LayersControl.d.ts +35 -0
  27. package/dist/modules/LayersControl.d.ts.map +1 -0
  28. package/dist/modules/Modes/WfsSource.d.ts +60 -0
  29. package/dist/modules/Modes/WfsSource.d.ts.map +1 -0
  30. package/dist/modules/Modes/WmsSource.d.ts +82 -0
  31. package/dist/modules/Modes/WmsSource.d.ts.map +1 -0
  32. package/dist/modules/Modes/baseLayer.d.ts +62 -0
  33. package/dist/modules/Modes/baseLayer.d.ts.map +1 -0
  34. package/dist/modules/Modes/baseSource.d.ts +103 -0
  35. package/dist/modules/Modes/baseSource.d.ts.map +1 -0
  36. package/dist/modules/Uploads.d.ts +47 -0
  37. package/dist/modules/Uploads.d.ts.map +1 -0
  38. package/dist/modules/editLayer.d.ts +4 -0
  39. package/dist/modules/editLayer.d.ts.map +1 -0
  40. package/dist/modules/errors.d.ts +11 -0
  41. package/dist/modules/errors.d.ts.map +1 -0
  42. package/dist/modules/helpers.d.ts +7 -0
  43. package/dist/modules/helpers.d.ts.map +1 -0
  44. package/dist/{assets → modules}/i18n/en.d.ts +0 -0
  45. package/dist/modules/i18n/en.d.ts.map +1 -0
  46. package/dist/{assets → modules}/i18n/es.d.ts +0 -0
  47. package/dist/modules/i18n/es.d.ts.map +1 -0
  48. package/dist/modules/i18n/index.d.ts +15 -0
  49. package/dist/modules/i18n/index.d.ts.map +1 -0
  50. package/dist/{assets → modules}/i18n/zh.d.ts +0 -0
  51. package/dist/modules/i18n/zh.d.ts.map +1 -0
  52. package/dist/modules/loading.d.ts +3 -0
  53. package/dist/modules/loading.d.ts.map +1 -0
  54. package/dist/modules/state.d.ts +22 -0
  55. package/dist/modules/state.d.ts.map +1 -0
  56. package/dist/modules/styleFunction.d.ts +13 -0
  57. package/dist/modules/styleFunction.d.ts.map +1 -0
  58. package/dist/myPragma.d.ts +2 -0
  59. package/dist/myPragma.d.ts.map +1 -0
  60. package/dist/ol-wfst.d.ts +89 -315
  61. package/dist/ol-wfst.d.ts.map +1 -1
  62. package/dist/ol-wfst.js +6368 -5113
  63. package/dist/ol-wfst.js.map +1 -1
  64. package/dist/ol-wfst.min.js +1 -15
  65. package/dist/ol-wfst.min.js.map +1 -1
  66. package/dist/tsconfig.tsbuildinfo +1 -1
  67. package/lib/@enums.d.ts +5 -0
  68. package/lib/@enums.d.ts.map +1 -1
  69. package/lib/@types.d.ts +163 -0
  70. package/lib/@types.d.ts.map +1 -0
  71. package/lib/Geoserver.d.ts +260 -0
  72. package/lib/Geoserver.d.ts.map +1 -0
  73. package/lib/WfsLayer.d.ts +40 -0
  74. package/lib/WfsLayer.d.ts.map +1 -0
  75. package/lib/WmsLayer.d.ts +48 -0
  76. package/lib/WmsLayer.d.ts.map +1 -0
  77. package/lib/defaults.d.ts +4 -0
  78. package/lib/defaults.d.ts.map +1 -0
  79. package/lib/index-es.js +3008 -0
  80. package/lib/index-es.js.map +1 -0
  81. package/lib/modules/EditControlChanges.d.ts +18 -0
  82. package/lib/modules/EditControlChanges.d.ts.map +1 -0
  83. package/lib/modules/EditFieldsModal.d.ts +18 -0
  84. package/lib/modules/EditFieldsModal.d.ts.map +1 -0
  85. package/lib/modules/EditOverlay.d.ts +7 -0
  86. package/lib/modules/EditOverlay.d.ts.map +1 -0
  87. package/lib/modules/LayersControl.d.ts +35 -0
  88. package/lib/modules/LayersControl.d.ts.map +1 -0
  89. package/lib/modules/Modes/WfsSource.d.ts +60 -0
  90. package/lib/modules/Modes/WfsSource.d.ts.map +1 -0
  91. package/lib/modules/Modes/WmsSource.d.ts +82 -0
  92. package/lib/modules/Modes/WmsSource.d.ts.map +1 -0
  93. package/lib/modules/Modes/baseLayer.d.ts +62 -0
  94. package/lib/modules/Modes/baseLayer.d.ts.map +1 -0
  95. package/lib/modules/Modes/baseSource.d.ts +103 -0
  96. package/lib/modules/Modes/baseSource.d.ts.map +1 -0
  97. package/lib/modules/Uploads.d.ts +47 -0
  98. package/lib/modules/Uploads.d.ts.map +1 -0
  99. package/lib/modules/editLayer.d.ts +4 -0
  100. package/lib/modules/editLayer.d.ts.map +1 -0
  101. package/lib/modules/errors.d.ts +11 -0
  102. package/lib/modules/errors.d.ts.map +1 -0
  103. package/lib/modules/helpers.d.ts +7 -0
  104. package/lib/modules/helpers.d.ts.map +1 -0
  105. package/lib/{assets → modules}/i18n/en.d.ts +0 -0
  106. package/lib/modules/i18n/en.d.ts.map +1 -0
  107. package/lib/{assets → modules}/i18n/es.d.ts +0 -0
  108. package/lib/modules/i18n/es.d.ts.map +1 -0
  109. package/lib/modules/i18n/index.d.ts +15 -0
  110. package/lib/modules/i18n/index.d.ts.map +1 -0
  111. package/lib/{assets → modules}/i18n/zh.d.ts +0 -0
  112. package/lib/modules/i18n/zh.d.ts.map +1 -0
  113. package/lib/modules/loading.d.ts +3 -0
  114. package/lib/modules/loading.d.ts.map +1 -0
  115. package/lib/modules/state.d.ts +22 -0
  116. package/lib/modules/state.d.ts.map +1 -0
  117. package/lib/modules/styleFunction.d.ts +13 -0
  118. package/lib/modules/styleFunction.d.ts.map +1 -0
  119. package/lib/myPragma.d.ts +2 -0
  120. package/lib/myPragma.d.ts.map +1 -0
  121. package/lib/ol-wfst.d.ts +89 -315
  122. package/lib/ol-wfst.d.ts.map +1 -1
  123. package/lib/style/css/ol-gisify.css +22 -18
  124. package/lib/style/css/ol-wfst.bootstrap5.css +364 -481
  125. package/lib/style/scss/_variables.scss +17 -0
  126. package/lib/style/scss/ol-wfst.scss +31 -28
  127. package/lib/tsconfig.tsbuildinfo +1 -1
  128. package/package.json +71 -70
  129. package/dist/assets/i18n/en.d.ts.map +0 -1
  130. package/dist/assets/i18n/es.d.ts.map +0 -1
  131. package/dist/assets/i18n/index.d.ts +0 -4
  132. package/dist/assets/i18n/index.d.ts.map +0 -1
  133. package/dist/assets/i18n/zh.d.ts.map +0 -1
  134. package/lib/assets/i18n/en.d.ts.map +0 -1
  135. package/lib/assets/i18n/es.d.ts.map +0 -1
  136. package/lib/assets/i18n/index.d.ts +0 -4
  137. package/lib/assets/i18n/index.d.ts.map +0 -1
  138. package/lib/assets/i18n/zh.d.ts.map +0 -1
  139. package/lib/ol-wfst.js +0 -2259
  140. package/lib/ol-wfst.js.map +0 -1
package/README.md CHANGED
@@ -1,8 +1,20 @@
1
1
  # OpenLayers WFST
2
2
 
3
- Tiny WFST-T client to insert (drawing/uploading), modify and delete features on GeoServers using OpenLayers. Layers with these types of geometries are supported: _GeometryCollection_ (in this case, you can choose the geometry type of each element to draw), _Point_, _MultiPoint_, _LineString_, _MultiLineString_, _Polygon_ and _MultiPolygon_.
4
-
5
- Tested with OpenLayers version 5 and 6.
3
+ <p align="center">
4
+ <a href="https://www.npmjs.com/package/ol-wfst">
5
+ <img src="https://img.shields.io/npm/v/ol-wfst.svg" alt="npm version">
6
+ </a>
7
+ <a href="https://img.shields.io/npm/dm/ol-wfst">
8
+ <img alt="npm" src="https://img.shields.io/npm/dm/ol-wfst">
9
+ </a>
10
+ <a href="https://github.com/gastonzalba/ol-wfst/blob/master/LICENSE">
11
+ <img src="https://img.shields.io/npm/l/ol-wfst.svg" alt="license">
12
+ </a>
13
+ </p>
14
+
15
+ Tiny WFST-T client to insert (drawing/uploading), modify and delete features on GeoServers using [OpenLayers](https://openlayers.org/). Layers with these types of geometries are supported: _GeometryCollection_ (in this case, you can choose the geometry type of each element to draw), _Point_, _MultiPoint_, _LineString_, _MultiLineString_, _Polygon_ and _MultiPolygon_.
16
+
17
+ Tested with OpenLayers version 5, 6 and 7.
6
18
 
7
19
  <img src="screenshots/example-1.jpg" alt="Drawing" style="width:50%; float:left;">
8
20
  <img src="screenshots/example-2.jpg" alt="Editing fields" style="width:50%; float:left;">
@@ -12,7 +24,7 @@ Tested with OpenLayers version 5 and 6.
12
24
  See [Wfst Options](#options) for more details.
13
25
 
14
26
  ```javascript
15
- import Wfst from 'ol-wfst';
27
+ import Wfst, { Geoserver, WmsLayer, WfsLayer } from 'ol-wfst';
16
28
  import { Fill, Stroke, Circle, Style } from 'ol/style';
17
29
 
18
30
  // Style
@@ -23,9 +35,9 @@ import 'ol-wfst/lib/scss/ol-wfst.bootstrap5.css'; // Do not import if you alread
23
35
  const password = 123456;
24
36
  const username = 'username';
25
37
 
26
- const wfst = new Wfst({
27
- geoServerUrl: 'https://mysite.com/geoserver/myworkspace/ows',
28
- geoServerAdvanced: {
38
+ const geoserver = {
39
+ url: 'https://mysite.com/geoserver/myworkspace/ows',
40
+ advanced: {
29
41
  getCapabilitiesVersion: '1.3.0',
30
42
  getFeatureVersion: '1.0.0',
31
43
  describeFeatureTypeVersion: '1.1.0',
@@ -33,13 +45,19 @@ const wfst = new Wfst({
33
45
  projection: 'EPSG:3857'
34
46
  },
35
47
  // Maybe you wanna add this on a proxy, at the backend
36
- headers: { Authorization: 'Basic ' + btoa(username + ':' + password) },
48
+ headers: { Authorization: 'Basic ' + btoa(username + ':' + password) }
49
+ };
50
+
51
+ const wfst = new Wfst({
37
52
  layers: [
38
- {
53
+ // WFS Layer
54
+ new WfsLayer({
39
55
  name: 'myPointsLayer', // Name of the layer on the GeoServer
40
56
  label: 'Photos', // Optional Label to be displayed in the controller
41
- mode: 'wfs',
57
+ geoserver: geoserver,
42
58
  zIndex: 99,
59
+
60
+ // WfsLayers need a custom style
43
61
  style: new Style({
44
62
  image: new Circle({
45
63
  radius: 7,
@@ -51,59 +69,129 @@ const wfst = new Wfst({
51
69
  width: 2
52
70
  })
53
71
  })
54
- })
55
- },
56
- {
72
+ }),
73
+
74
+ // See [geoserverVendor](#geoservervendor) for more details.
75
+ geoserverVendor: {
76
+ cql_filter: 'id > 50',
77
+ maxFeatures: 500
78
+ },
79
+
80
+ beforeTransactFeature: function (feature, transactionType) {
81
+ if (transactionType === 'insert') {
82
+ // Maybe add a custom value o perform an action before insert features
83
+ feature.set('customProperty', 'customValue', true);
84
+ } else if (transactionType === 'update') {
85
+ // ... //
86
+ } else if (transactionType === 'delete') {
87
+ // .. //
88
+ }
89
+
90
+ return feature;
91
+ }
92
+ }),
93
+
94
+ // WMS Layer
95
+ new WmsLayer({
57
96
  name: 'myMultiGeometryLayer',
58
- label: 'Other elements'
59
- },
60
- {
61
- name: 'myLineStringLayer',
62
- label: 'Routes',
63
- visible: false
64
- },
65
- {
66
- name: 'myMultiPointLayer',
67
- label: 'Markers',
68
- visible: false
69
- }
97
+ label: 'Other elements',
98
+ geoserver: geoserver,
99
+ // See [geoserverVendor](#geoservervendor) for more details.
100
+ geoserverVendor: {
101
+ cql_filter: 'id > 50',
102
+ buffer: 50,
103
+ maxFeatures: 500
104
+ },
105
+ beforeTransactFeature: function (feature, transactionType) {
106
+ if (transactionType === 'insert') {
107
+ // Maybe add a custom value o perform an action before insert features
108
+ feature.set('customProperty', 'customValue', true);
109
+ } else if (transactionType === 'update') {
110
+ // ... //
111
+ } else if (transactionType === 'delete') {
112
+ // .. //
113
+ }
114
+
115
+ return feature;
116
+ }
117
+ })
70
118
  ],
71
119
  language: 'en',
72
- minZoom: 12,
73
- showUpload: true,
74
- beforeInsertFeature: function (feature) {
75
- // Add a custom value o perform an action before insert features
76
- feature.set('customProperty', 'customValue', true);
77
- return feature;
78
- }
120
+ showUpload: true
79
121
  });
80
122
 
81
- // Adding custom feature without drawing
123
+ map.addControl(wfst);
124
+ ```
125
+
126
+ ### Adding features programatically
127
+
128
+ ```js
82
129
  const feature = new ol.Feature({
83
130
  geometry: new ol.geom.MultiPoint([[`-57.1145}`, `-36.2855`]])
84
131
  });
85
- const inserted = await wfst.insertFeaturesTo('myMultiPointLayer', [feature]);
132
+ const inserted = await myWmsLayer.insertFeatures([feature]);
86
133
 
87
134
  if (inserted) {
88
135
  alert('Feature inserted');
89
136
  } else {
90
137
  alert('Feature not inserted');
91
138
  }
139
+ ```
140
+
141
+ ### Events
142
+
143
+ ### wfst instance events
144
+
145
+ ```js
146
+ wfst.on(
147
+ ['modifystart', 'modifyend', 'drawstart', 'drawend', 'load', 'visible'],
148
+ function (evt) {
149
+ console.log(evt);
150
+ }
151
+ );
92
152
 
93
- // Events
94
- wfst.on(['getCapabilities', 'getFeaturesLoaded'], function (evt) {
95
- console.log(evt.type, evt.data);
153
+ wfst.on(['describeFeatureType'], function (evt) {
154
+ console.log(evt.layer, evt.data);
96
155
  });
156
+ ```
157
+
158
+ ### Geoserver events
97
159
 
98
- wfst.on(['describeFeatureType', 'getFeature'], function (evt) {
99
- console.log(evt.type, evt.layer, evt.data);
160
+ ```js
161
+ geoserver.on(['getCapabilities'], function (evt) {
162
+ console.log(evt.data);
100
163
  });
164
+ ```
165
+
166
+ ### Layers events
101
167
 
102
- wfst.on(['modifystart', 'modifyend', 'drawstart', 'drawend'], function (evt) {
103
- console.log(evt.type, evt);
168
+ #### WMS Layer
169
+
170
+ ```js
171
+ wmsLayer.on(['change:describeFeatureType'], function (evt) {
172
+ console.log(evt);
104
173
  });
174
+ ```
175
+
176
+ Source [TileWMS Events](https://openlayers.org/en/latest/apidoc/module-ol_Object.ObjectEvent.html)
177
+
178
+ ```js
179
+ wmsLayer.getSource().on([...])
180
+ ```
181
+
182
+ #### WFS Layer
183
+
184
+ ```js
185
+ wfsLayer.on(['change:describeFeatureType'], function (evt) {
186
+ console.log(evt);
187
+ });
188
+ ```
189
+
190
+ [VectorSource Events](https://openlayers.org/en/latest/apidoc/module-ol_source_Vector.VectorSourceEvent.html)
191
+
192
+ ```js
193
+ wfsLayer.getSource().on([...])
105
194
 
106
- map.addControl(wfst);
107
195
  ```
108
196
 
109
197
  ### Some considerations
@@ -122,17 +210,17 @@ See [CHANGELOG](./CHANGELOG.md) for details of changes in each release.
122
210
 
123
211
  #### JS
124
212
 
125
- Load `ol-wfst.js` after OpenLayers. Wfst is available as `Wfst`.
213
+ Load `ol-wfst.js` after OpenLayers. The available classes are `Wfst`, `Wfst.Geoserver`, `Wfst.WfsLayer` and `Wfst.WmsLayer`.
126
214
 
127
215
  ```HTML
128
- <script src="https://unpkg.com/ol-wfst@3.0.3"></script>
216
+ <script src="https://unpkg.com/ol-wfst@4.0.0"></script>
129
217
  ```
130
218
 
131
219
  #### CSS
132
220
 
133
221
  ```HTML
134
- <link rel="stylesheet" href="https://unpkg.com/ol-wfst@3.0.3/dist/css/ol-wfst.min.css" />
135
- <link rel="stylesheet" href="https://unpkg.com/ol-wfst@3.0.3/dist/css/ol-wfst.bootstrap5.min.css" />
222
+ <link rel="stylesheet" href="https://unpkg.com/ol-wfst@4.0.0/dist/css/ol-wfst.min.css" />
223
+ <link rel="stylesheet" href="https://unpkg.com/ol-wfst@4.0.0/dist/css/ol-wfst.bootstrap5.min.css" />
136
224
  ```
137
225
 
138
226
  ### Parcel, Webpack, etc.
@@ -146,7 +234,7 @@ Install the package via `npm`
146
234
  #### JS
147
235
 
148
236
  ```js
149
- import Wfst from 'ol-wfst';
237
+ import Wfst, { Geoserver, WmsLayer, WfsLayer } from 'ol-wfst';
150
238
  ```
151
239
 
152
240
  #### CSS
@@ -161,7 +249,7 @@ import 'ol-wfst/dist/css/ol-wfst.css';
161
249
  import 'ol-wfst/dist/css/ol-wfst.bootstrap5.css';
162
250
  ```
163
251
 
164
- ##### TypeScript type definition
252
+ #### TypeScript type definition
165
253
 
166
254
  TypeScript types are shipped with the project in the dist directory and should be automatically used in a TypeScript project. Interfaces are provided for Wfst Options.
167
255
 
@@ -173,46 +261,95 @@ TypeScript types are shipped with the project in the dist directory and should b
173
261
 
174
262
  - [Wfst](#wfst)
175
263
  - [Parameters](#parameters)
176
- - [activateDrawMode](#activatedrawmode)
264
+ - [getLayers](#getlayers)
265
+ - [getLayerByName](#getlayerbyname)
177
266
  - [Parameters](#parameters-1)
178
- - [activateEditMode](#activateeditmode)
267
+ - [activateDrawMode](#activatedrawmode)
179
268
  - [Parameters](#parameters-2)
180
- - [insertFeaturesTo](#insertfeaturesto)
269
+ - [activateEditMode](#activateeditmode)
181
270
  - [Parameters](#parameters-3)
271
+ - [Geoserver](#geoserver)
272
+ - [Parameters](#parameters-4)
273
+ - [getCapabilities](#getcapabilities)
274
+ - [setUrl](#seturl)
275
+ - [Parameters](#parameters-5)
276
+ - [getUrl](#geturl)
277
+ - [setHeaders](#setheaders)
278
+ - [Parameters](#parameters-6)
279
+ - [getHeaders](#getheaders)
280
+ - [setCredentials](#setcredentials)
281
+ - [Parameters](#parameters-7)
282
+ - [getCredentials](#getcredentials)
283
+ - [setAdvanced](#setadvanced)
284
+ - [Parameters](#parameters-8)
285
+ - [getAdvanced](#getadvanced)
286
+ - [hasTransaction](#hastransaction)
287
+ - [hasLockFeature](#haslockfeature)
288
+ - [getUseLockFeature](#getuselockfeature)
289
+ - [setUseLockFeature](#setuselockfeature)
290
+ - [Parameters](#parameters-9)
291
+ - [isLoaded](#isloaded)
292
+ - [getState](#getstate)
293
+ - [getAndUpdateCapabilities](#getandupdatecapabilities)
294
+ - [lockFeature](#lockfeature)
295
+ - [Parameters](#parameters-10)
296
+ - [WfsLayer](#wfslayer)
297
+ - [Parameters](#parameters-11)
298
+ - [refresh](#refresh)
299
+ - [WmsLayer](#wmslayer)
300
+ - [Parameters](#parameters-12)
301
+ - [refresh](#refresh-1)
182
302
  - [Options](#options)
183
- - [geoServerUrl](#geoserverurl)
184
- - [geoServerAdvanced](#geoserveradvanced)
185
- - [headers](#headers)
186
- - [credentials](#credentials)
303
+ - [processUpload](#processupload)
304
+ - [Parameters](#parameters-13)
187
305
  - [layers](#layers)
188
306
  - [active](#active)
189
307
  - [evtType](#evttype)
190
- - [useLockFeature](#uselockfeature)
191
308
  - [showControl](#showcontrol)
192
- - [minZoom](#minzoom)
193
309
  - [modal](#modal)
194
310
  - [language](#language)
195
311
  - [i18n](#i18n)
196
312
  - [showUpload](#showupload)
197
313
  - [uploadFormats](#uploadformats)
198
- - [processUpload](#processupload)
199
- - [Parameters](#parameters-4)
200
- - [beforeInsertFeature](#beforeinsertfeature)
201
- - [Parameters](#parameters-5)
202
- - [LayerParams](#layerparams)
314
+ - [LayerOptions](#layeroptions)
315
+ - [beforeTransactFeature](#beforetransactfeature)
316
+ - [Parameters](#parameters-14)
203
317
  - [name](#name)
318
+ - [geoserver](#geoserver-1)
204
319
  - [label](#label)
205
- - [mode](#mode)
206
- - [wfsStrategy](#wfsstrategy)
207
- - [cqlFilter](#cqlfilter)
208
- - [tilesBuffer](#tilesbuffer)
320
+ - [geoserverVendor](#geoservervendor)
321
+ - [strategy](#strategy)
322
+ - [GeoserverOptions](#geoserveroptions)
323
+ - [url](#url)
324
+ - [advanced](#advanced)
325
+ - [headers](#headers)
326
+ - [credentials](#credentials)
327
+ - [useLockFeature](#uselockfeature)
328
+ - [GeoServerAdvanced](#geoserveradvanced)
329
+ - [BaseGeoserverVendor](#basegeoservervendor)
330
+ - [cql_filter](#cql_filter)
331
+ - [sortBy](#sortby)
332
+ - [featureid](#featureid)
333
+ - [filter](#filter)
334
+ - [format_options](#format_options)
335
+ - [maxFeatures](#maxfeatures)
336
+ - [startIndex](#startindex)
337
+ - [propertyname](#propertyname)
338
+ - [WfsGeoserverVendor](#wfsgeoservervendor)
339
+ - [strict](#strict)
340
+ - [WmsGeoserverVendor](#wmsgeoservervendor)
341
+ - [buffer](#buffer)
342
+ - [env](#env)
343
+ - [clip](#clip)
344
+ - [IGeoserverDescribeFeatureType](#igeoserverdescribefeaturetype)
345
+ - [\_parsed](#_parsed)
209
346
  - [I18n](#i18n-1)
210
347
  - [labels](#labels)
211
348
  - [errors](#errors)
212
349
 
213
350
  ### Wfst
214
351
 
215
- **Extends ol/control/Control~Control**
352
+ **Extends ol/control/[Control](https://openlayers.org/en/latest/apidoc/module-ol_control_Control-Control.html)~[Control](https://openlayers.org/en/latest/apidoc/module-ol_control_Control-Control.html)**
216
353
 
217
354
  Tiny WFST-T client to insert (drawing/uploading), modify and delete
218
355
  features on GeoServers using OpenLayers. Layers with these types
@@ -222,7 +359,23 @@ choose the geometry type of each element to draw), "Point", "MultiPoint",
222
359
 
223
360
  #### Parameters
224
361
 
225
- - `opt_options` **[Options](#options)?** Wfst options, see [Wfst Options](#options) for more details.
362
+ - `options` **[Options](#options)?** Wfst options, see [Wfst Options](#options) for more details.
363
+
364
+ #### getLayers
365
+
366
+ Get all the layers in the ol-wfst instance
367
+
368
+ Returns **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<([WfsLayer](#wfslayer) | [WmsLayer](#wmslayer))>**&#x20;
369
+
370
+ #### getLayerByName
371
+
372
+ Get a layer
373
+
374
+ ##### Parameters
375
+
376
+ - `layerName` (optional, default `''`)
377
+
378
+ Returns **([WfsLayer](#wfslayer) | [WmsLayer](#wmslayer))**&#x20;
226
379
 
227
380
  #### activateDrawMode
228
381
 
@@ -230,9 +383,9 @@ Activate/deactivate the draw mode
230
383
 
231
384
  ##### Parameters
232
385
 
233
- - `layerName` **([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) | [boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean))**
386
+ - `layer` **([WfsLayer](#wfslayer) | [WmsLayer](#wmslayer) | `false`)**&#x20;
234
387
 
235
- Returns **void**
388
+ Returns **void**&#x20;
236
389
 
237
390
  #### activateEditMode
238
391
 
@@ -242,20 +395,144 @@ Activate/desactivate the edit mode
242
395
 
243
396
  - `bool` (optional, default `true`)
244
397
 
245
- Returns **void**
398
+ Returns **void**&#x20;
399
+
400
+ ### Geoserver
401
+
402
+ **Extends ol/Object~[BaseObject](https://openlayers.org/en/latest/apidoc/module-ol_Object-BaseObject.html)**
403
+
404
+ #### Parameters
405
+
406
+ - `options` **[GeoserverOptions](#geoserveroptions)**&#x20;
407
+
408
+ #### getCapabilities
409
+
410
+ Returns **XMLDocument**&#x20;
246
411
 
247
- #### insertFeaturesTo
412
+ #### setUrl
248
413
 
249
- Add features directly to the geoserver, in a custom layer
250
- without checking geometry or showing modal to confirm.
251
- Returns `true` if features are inserted correctly
414
+ ##### Parameters
415
+
416
+ - `url` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**&#x20;
417
+ - `opt_silent` (optional, default `false`)
418
+
419
+ Returns **void**&#x20;
420
+
421
+ #### getUrl
422
+
423
+ Returns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**&#x20;
424
+
425
+ #### setHeaders
426
+
427
+ ##### Parameters
428
+
429
+ - `headers` **HeadersInit** (optional, default `{}`)
430
+ - `opt_silent` (optional, default `false`)
431
+
432
+ Returns **void**&#x20;
433
+
434
+ #### getHeaders
435
+
436
+ Returns **HeadersInit**&#x20;
437
+
438
+ #### setCredentials
439
+
440
+ ##### Parameters
441
+
442
+ - `credentials` **RequestCredentials** (optional, default `null`)
443
+ - `opt_silent` (optional, default `false`)
444
+
445
+ Returns **void**&#x20;
446
+
447
+ #### getCredentials
448
+
449
+ Returns **RequestCredentials**&#x20;
450
+
451
+ #### setAdvanced
452
+
453
+ ##### Parameters
454
+
455
+ - `advanced` **[GeoServerAdvanced](#geoserveradvanced)** (optional, default `{}`)
456
+ - `opt_silent` (optional, default `false`)
457
+
458
+ Returns **void**&#x20;
459
+
460
+ #### getAdvanced
461
+
462
+ Returns **[GeoServerAdvanced](#geoserveradvanced)**&#x20;
463
+
464
+ #### hasTransaction
465
+
466
+ Returns **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)**&#x20;
467
+
468
+ #### hasLockFeature
469
+
470
+ Returns **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)**&#x20;
471
+
472
+ #### getUseLockFeature
473
+
474
+ Returns **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)**&#x20;
475
+
476
+ #### setUseLockFeature
477
+
478
+ ##### Parameters
479
+
480
+ - `useLockFeature` **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)**&#x20;
481
+ - `opt_silent` (optional, default `false`)
482
+
483
+ Returns **void**&#x20;
484
+
485
+ #### isLoaded
486
+
487
+ Returns **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)**&#x20;
488
+
489
+ #### getState
490
+
491
+ #### getAndUpdateCapabilities
492
+
493
+ Get the capabilities from the GeoServer and check
494
+ all the available operations.
495
+
496
+ Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)\<XMLDocument>**&#x20;
497
+
498
+ #### lockFeature
499
+
500
+ Lock a feature in the geoserver. Useful before editing a geometry,
501
+ to avoid changes from multiples suers
252
502
 
253
503
  ##### Parameters
254
504
 
255
- - `layerName` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**
256
- - `features` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)\<Feature\<Geometry>>**
505
+ - `featureId` **([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) | [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number))**&#x20;
506
+ - `layerName` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**&#x20;
507
+ - `retry` (optional, default `0`)
508
+
509
+ Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)>**&#x20;
510
+
511
+ ### WfsLayer
512
+
513
+ **Extends ol/layer/Vector~[VectorLayer](https://openlayers.org/en/latest/apidoc/module-ol_layer_Vector-VectorLayer.html)**
514
+
515
+ Layer to retrieve WFS features from geoservers
516
+ <https://docs.geoserver.org/stable/en/user/services/wfs/reference.html>
517
+
518
+ #### Parameters
519
+
520
+ - `options` **[LayerOptions](#layeroptions)**&#x20;
521
+
522
+ #### refresh
523
+
524
+ ### WmsLayer
257
525
 
258
- Returns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)<[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)>**
526
+ **Extends ol/layer/Tile~[TileLayer](https://openlayers.org/en/latest/apidoc/module-ol_layer_Tile-TileLayer.html)**
527
+
528
+ Layer to retrieve WMS information from geoservers
529
+ <https://docs.geoserver.org/stable/en/user/services/wms/reference.html>
530
+
531
+ #### Parameters
532
+
533
+ - `options` **[LayerOptions](#layeroptions)**&#x20;
534
+
535
+ #### refresh
259
536
 
260
537
  ### Options
261
538
 
@@ -265,62 +542,34 @@ Default values:
265
542
 
266
543
  ```javascript
267
544
  {
268
- geoServerUrl: null,
269
- geoServerAdvanced: {
270
- getCapabilitiesVersion: '1.3.0',
271
- getFeatureVersion: '1.0.0',
272
- describeFeatureTypeVersion: '1.1.0',
273
- lockFeatureVersion: '1.1.0',
274
- wfsTransactionVersion: '1.1.0',
275
- projection: 'EPSG:3857'
276
- },
277
- headers: {},
278
- credentials: 'same-origin',
279
545
  layers: null,
280
546
  evtType: 'singleclick',
281
547
  active: true,
282
548
  showControl: true,
283
- useLockFeature: true,
284
- minZoom: 9,
285
549
  language: 'en',
286
550
  i18n: {...}, // according to language selection
287
551
  uploadFormats: '.geojson,.json,.kml',
288
552
  processUpload: null,
289
- beforeInsertFeature: null,
290
553
  }
291
554
  ```
292
555
 
293
- #### geoServerUrl
294
-
295
- Url for OWS services. This endpoint will recive the WFS, WFST and WMS requests
296
-
297
- Type: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)
298
-
299
- #### geoServerAdvanced
300
-
301
- Advanced options for geoserver requests
302
-
303
- Type: {getCapabilitiesVersion: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, getFeatureVersion: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, lockFeatureVersion: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, describeFeatureTypeVersion: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, wfsTransactionVersion: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, projection: ProjectionLike?}
304
-
305
- #### headers
306
-
307
- Url headers for GeoServer requests. You can use it to add Authorization credentials
308
- <https://developer.mozilla.org/en-US/docs/Web/API/Request/headers>
556
+ #### processUpload
309
557
 
310
- Type: HeadersInit
558
+ Triggered to allow implement custom functions or to parse other formats than default
559
+ by filtering the extension. If this doesn't return features, the default function
560
+ will be used to extract them.
311
561
 
312
- #### credentials
562
+ ##### Parameters
313
563
 
314
- Credentials for fetch requests
315
- <https://developer.mozilla.org/en-US/docs/Web/API/Request/credentials>
564
+ - `file` **File**&#x20;
316
565
 
317
- Type: RequestCredentials
566
+ Returns **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)\<Feature\<Geometry>>**&#x20;
318
567
 
319
568
  #### layers
320
569
 
321
570
  Layers to be loaded from the geoserver
322
571
 
323
- Type: [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[LayerParams](#layerparams)>
572
+ Type: [Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<([WfsLayer](#wfslayer) | [WmsLayer](#wmslayer))>
324
573
 
325
574
  #### active
326
575
 
@@ -334,26 +583,12 @@ The click event to allow selection of Features to be edited
334
583
 
335
584
  Type: (`"singleclick"` | `"dblclick"`)
336
585
 
337
- #### useLockFeature
338
-
339
- Use LockFeatue request on GeoServer when selecting features.
340
- This is not always supportedd by the GeoServer.
341
- See <https://docs.geoserver.org/stable/en/user/services/wfs/reference.html>
342
-
343
- Type: [boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)
344
-
345
586
  #### showControl
346
587
 
347
588
  Show/hide the control map
348
589
 
349
590
  Type: [boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)
350
591
 
351
- #### minZoom
352
-
353
- Zoom level to hide features to prevent too much features being loaded
354
-
355
- Type: [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)
356
-
357
592
  #### modal
358
593
 
359
594
  Modal configuration
@@ -385,90 +620,230 @@ Example: ".json,.geojson"
385
620
 
386
621
  Type: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)
387
622
 
388
- #### processUpload
623
+ ### LayerOptions
389
624
 
390
- Triggered to allow implement custom functions or to parse other formats than default
391
- by filtering the extension. If this doesn't return features, the default function
392
- will be used to extract them.
625
+ **Extends Omit\<[VectorLayerOptions](https://openlayers.org/en/latest/apidoc/module-ol_layer_Vector-VectorLayer.html)\<any>, 'source'>**
393
626
 
394
- ##### Parameters
627
+ **_\[interface]_** - Parameters to create the layers and connect to the GeoServer
628
+
629
+ You can use all the parameters supported by OpenLayers
395
630
 
396
- - `file` **File**
631
+ Default values:
397
632
 
398
- Returns **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)\<Feature\<Geometry>>**
633
+ ```javascript
634
+ {
635
+ name: null,
636
+ geoserver: null,
637
+ label: null, // `name` if not provided
638
+ strategy: all,
639
+ geoserverVendor: null
640
+ }
641
+ ```
399
642
 
400
- #### beforeInsertFeature
643
+ #### beforeTransactFeature
401
644
 
402
645
  Triggered before inserting new features to the Geoserver.
403
646
  Use this to insert custom properties, modify the feature, etc.
404
647
 
405
648
  ##### Parameters
406
649
 
407
- - `feature` **Feature\<Geometry>**
650
+ - `feature` **Feature\<Geometry>**&#x20;
651
+ - `transaction` **TransactionType**&#x20;
408
652
 
409
- Returns **Feature\<Geometry>**
653
+ Returns **Feature\<Geometry>**&#x20;
410
654
 
411
- ### LayerParams
655
+ #### name
412
656
 
413
- **Extends Omit\<[VectorLayerOptions](https://openlayers.org/en/latest/apidoc/module-ol_layer_Vector-VectorLayer.html)\<any>, 'source'>**
657
+ Layer name in the GeoServer
414
658
 
415
- **_\[interface]_** - Parameters to create the layers and connect to the GeoServer
659
+ Type: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)
416
660
 
417
- You can use all the parameters supported by OpenLayers
661
+ #### geoserver
418
662
 
419
- Default values:
663
+ Geoserver Object
664
+
665
+ Type: [Geoserver](#geoserver)
666
+
667
+ #### label
668
+
669
+ Label to be displayed in the widget control
670
+
671
+ Type: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)
672
+
673
+ #### geoserverVendor
674
+
675
+ Available geoserver options
676
+
677
+ Type: ([WfsGeoserverVendor](#wfsgeoservervendor) | [WmsGeoserverVendor](#wmsgeoservervendor))
678
+
679
+ #### strategy
680
+
681
+ Strategy function for loading features.
682
+ Only for WFS
683
+ By default `all` strategy is used
684
+
685
+ Type: LoadingStrategy
686
+
687
+ ### GeoserverOptions
688
+
689
+ **_\[interface]_**
690
+
691
+ #### url
692
+
693
+ Url for OWS services. This endpoint will recive the WFS, WFST and WMS requests
694
+
695
+ Type: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)
696
+
697
+ #### advanced
698
+
699
+ Advanced options for geoserver requests
700
+
701
+ Type: [GeoServerAdvanced](#geoserveradvanced)
702
+
703
+ #### headers
704
+
705
+ Http headers for GeoServer requests
706
+ <https://developer.mozilla.org/en-US/docs/Web/API/Request/headers>
707
+
708
+ Type: HeadersInit
709
+
710
+ #### credentials
711
+
712
+ Credentials for fetch requests
713
+ <https://developer.mozilla.org/en-US/docs/Web/API/Request/credentials>
714
+
715
+ Default is 'same-origin'
716
+
717
+ Type: RequestCredentials
718
+
719
+ #### useLockFeature
720
+
721
+ Use LockFeatue request on GeoServer when selecting features. Prevents a feature from being edited
722
+ through a persistent feature lock. This is not always supportedd by the GeoServer.
723
+ See <https://docs.geoserver.org/stable/en/user/services/wfs/reference.html>
724
+
725
+ Type: [boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)
726
+
727
+ ### GeoServerAdvanced
728
+
729
+ **_\[interface]_**
730
+
731
+ - Default values:
420
732
 
421
733
  ```javascript
422
734
  {
423
- name: null,
424
- label: null, // `name` if not provided
425
- mode: 'wfs',
426
- wfsStrategy: 'bbox',
427
- cqlFilter: null,
428
- tilesBuffer: 0,
735
+ getCapabilitiesVersion: '1.3.0',
736
+ getFeatureVersion: '1.0.0',
737
+ describeFeatureTypeVersion: '1.1.0',
738
+ lockFeatureVersion: '1.1.0',
739
+ wfsTransactionVersion: '1.1.0',
740
+ projection: 'EPSG:3857',
741
+ lockFeatureParams: {
742
+ expiry: 5,
743
+ lockId: 'Geoserver',
744
+ releaseAction: 'SOME'
745
+ }
429
746
  }
430
747
  ```
431
748
 
432
- #### name
749
+ ### BaseGeoserverVendor
433
750
 
434
- Layer name in the GeoServer
751
+ #### cql_filter
752
+
753
+ <https://docs.geoserver.org/latest/en/user/services/wms/vendor.html#cql-filter>
435
754
 
436
755
  Type: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)
437
756
 
438
- #### label
757
+ #### sortBy
439
758
 
440
- Label to be displayed in the widget control
759
+ <https://docs.geoserver.org/latest/en/user/services/wms/vendor.html#sortBy>
441
760
 
442
761
  Type: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)
443
762
 
444
- #### mode
763
+ #### featureid
445
764
 
446
- Mode to use in the layer
765
+ <https://docs.geoserver.org/latest/en/user/services/wms/vendor.html#featureid>
447
766
 
448
- Type: (`"wfs"` | `"wms"`)
767
+ Type: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)
449
768
 
450
- #### wfsStrategy
769
+ #### filter
451
770
 
452
- Strategy function for loading features. Only works if mode is "wfs"
771
+ <https://docs.geoserver.org/latest/en/user/services/wms/vendor.html#filter>
453
772
 
454
773
  Type: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)
455
774
 
456
- #### cqlFilter
775
+ #### format_options
457
776
 
458
- The cql_filter GeoServer parameter is similar to the standard filter parameter,
459
- but the filter is expressed using ECQL (Extended Common Query Language).
460
- ECQL provides a more compact and readable syntax compared to OGC XML filters.
461
- For full details see the [ECQL Reference](https://docs.geoserver.org/stable/en/user/filter/ecql_reference.html#filter-ecql-reference) and CQL and ECQL tutorial.
777
+ WMS: <https://docs.geoserver.org/latest/en/user/services/wms/vendor.html#format-options>
778
+ WFS: <https://docs.geoserver.org/latest/en/user/services/wfs/vendor.html#format-options>
462
779
 
463
780
  Type: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)
464
781
 
465
- #### tilesBuffer
782
+ #### maxFeatures
783
+
784
+ <https://docs.geoserver.org/latest/en/user/services/wms/vendor.html#maxfeatures-and-startindex>
785
+
786
+ Type: ([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) | [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number))
466
787
 
467
- The buffer parameter specifies the number of additional
468
- border pixels that are used on requesting rasted tiles
469
- Only works if mode is 'wms'
788
+ #### startIndex
470
789
 
471
- Type: [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)
790
+ <https://docs.geoserver.org/latest/en/user/services/wms/vendor.html#maxfeatures-and-startindex>
791
+
792
+ Type: ([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) | [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number))
793
+
794
+ #### propertyname
795
+
796
+ <https://docs.geoserver.org/latest/en/user/services/wms/vendor.html#propertyname>
797
+
798
+ Type: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)
799
+
800
+ ### WfsGeoserverVendor
801
+
802
+ **Extends BaseGeoserverVendor**
803
+
804
+ **_\[interface]_** - WFS geoserver options
805
+ <https://docs.geoserver.org/latest/en/user/services/wfs/vendor.html>
806
+
807
+ #### strict
808
+
809
+ <https://docs.geoserver.org/latest/en/user/services/wfs/vendor.html#xml-request-validation>
810
+
811
+ Type: [boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)
812
+
813
+ ### WmsGeoserverVendor
814
+
815
+ **Extends BaseGeoserverVendor**
816
+
817
+ **_\[interface]_** - WMS geoserver options
818
+ <https://docs.geoserver.org/latest/en/user/services/wms/vendor.html>
819
+
820
+ #### buffer
821
+
822
+ <https://docs.geoserver.org/latest/en/user/services/wms/vendor.html#buffer>
823
+
824
+ Type: ([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) | [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number))
825
+
826
+ #### env
827
+
828
+ <https://docs.geoserver.org/latest/en/user/services/wms/vendor.html#env>
829
+
830
+ Type: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)
831
+
832
+ #### clip
833
+
834
+ <https://docs.geoserver.org/latest/en/user/services/wms/vendor.html#clip>
835
+
836
+ Type: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)
837
+
838
+ ### IGeoserverDescribeFeatureType
839
+
840
+ **_\[interface]_** - Geoserver original response on DescribeFeature request
841
+
842
+ #### \_parsed
843
+
844
+ DescribeFeature request parsed
845
+
846
+ Type: {namespace: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String), properties: any, geomType: GeometryType, geomField: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)}
472
847
 
473
848
  ### I18n
474
849
 
@@ -484,13 +859,16 @@ Type: {select: [string](https://developer.mozilla.org/docs/Web/JavaScript/Refere
484
859
 
485
860
  Errors section
486
861
 
487
- Type: {capabilities: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, wfst: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, layer: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, layerNotFound: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, noValidGeometry: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, geoserver: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, badFormat: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, badFile: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, lockFeature: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, transaction: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, getFeatures: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?}
862
+ Type: {capabilities: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, wfst: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, layer: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, layerNotFound: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, layerNotVisible: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, noValidGeometry: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, geoserver: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, badFormat: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, badFile: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, lockFeature: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, transaction: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?, getFeatures: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)?}
488
863
 
489
864
  ## TODO
490
865
 
491
866
  - \~~Add support to diferent layer styles~~
492
867
  - \~~Improve widget controller: visibility toggle~~
493
868
  - \~~Add events~~
869
+ - Add WfsSource and WmsSource to Documentation
870
+ - Add `Don't show again` option in the error modal
871
+ - Allow selection of multiples features and bulk edit
494
872
  - Add customizables styles
495
873
  - Improve scss (add variables)
496
874
  - Add cookies to persist widget controller state
@@ -499,7 +877,4 @@ Type: {capabilities: [string](https://developer.mozilla.org/docs/Web/JavaScript/
499
877
  - Improve comments and documentation
500
878
  - Improve interface
501
879
  - Change svg imports to preserve svg structure
502
-
503
- ## License
504
-
505
- MIT (c) Gastón Zalba.
880
+ - Improve style on editing and drawing features