@loaders.gl/wms 3.4.14 → 3.4.15

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 (88) hide show
  1. package/dist/es5/bundle.js +1 -1
  2. package/dist/es5/bundle.js.map +1 -1
  3. package/dist/es5/csw-capabilities-loader.js +5 -26
  4. package/dist/es5/csw-capabilities-loader.js.map +1 -1
  5. package/dist/es5/csw-domain-loader.js +5 -26
  6. package/dist/es5/csw-domain-loader.js.map +1 -1
  7. package/dist/es5/csw-records-loader.js +4 -25
  8. package/dist/es5/csw-records-loader.js.map +1 -1
  9. package/dist/es5/gml-loader.js +5 -26
  10. package/dist/es5/gml-loader.js.map +1 -1
  11. package/dist/es5/index.js +16 -16
  12. package/dist/es5/lerc-loader.js +10 -47
  13. package/dist/es5/lerc-loader.js.map +1 -1
  14. package/dist/es5/lib/create-image-source.js +8 -19
  15. package/dist/es5/lib/create-image-source.js.map +1 -1
  16. package/dist/es5/lib/parsers/csw/parse-csw-capabilities.js +7 -9
  17. package/dist/es5/lib/parsers/csw/parse-csw-capabilities.js.map +1 -1
  18. package/dist/es5/lib/parsers/csw/parse-csw-domain.js +11 -25
  19. package/dist/es5/lib/parsers/csw/parse-csw-domain.js.map +1 -1
  20. package/dist/es5/lib/parsers/csw/parse-csw-records.js +21 -47
  21. package/dist/es5/lib/parsers/csw/parse-csw-records.js.map +1 -1
  22. package/dist/es5/lib/parsers/csw/parse-exception-report.js +2 -2
  23. package/dist/es5/lib/parsers/csw/parse-exception-report.js.map +1 -1
  24. package/dist/es5/lib/parsers/gml/deep-strict-equal.js +9 -11
  25. package/dist/es5/lib/parsers/gml/deep-strict-equal.js.map +1 -1
  26. package/dist/es5/lib/parsers/gml/parse-gml.js +79 -130
  27. package/dist/es5/lib/parsers/gml/parse-gml.js.map +1 -1
  28. package/dist/es5/lib/parsers/wms/parse-wms-capabilities.js +69 -126
  29. package/dist/es5/lib/parsers/wms/parse-wms-capabilities.js.map +1 -1
  30. package/dist/es5/lib/parsers/wms/parse-wms-error.js +3 -3
  31. package/dist/es5/lib/parsers/wms/parse-wms-error.js.map +1 -1
  32. package/dist/es5/lib/parsers/wms/parse-wms-features.js +5 -7
  33. package/dist/es5/lib/parsers/wms/parse-wms-features.js.map +1 -1
  34. package/dist/es5/lib/parsers/wms/parse-wms-layer-description.js +1 -1
  35. package/dist/es5/lib/parsers/wms/parse-wms-layer-description.js.map +1 -1
  36. package/dist/es5/lib/parsers/xml/parse-xml-helpers.js +6 -10
  37. package/dist/es5/lib/parsers/xml/parse-xml-helpers.js.map +1 -1
  38. package/dist/es5/lib/services/arcgis/arcgis-image-service.js +48 -146
  39. package/dist/es5/lib/services/arcgis/arcgis-image-service.js.map +1 -1
  40. package/dist/es5/lib/services/arcgis/arcgis-server.js +26 -98
  41. package/dist/es5/lib/services/arcgis/arcgis-server.js.map +1 -1
  42. package/dist/es5/lib/services/generic/image-service.js +32 -103
  43. package/dist/es5/lib/services/generic/image-service.js.map +1 -1
  44. package/dist/es5/lib/services/ogc/csw-service.js +134 -334
  45. package/dist/es5/lib/services/ogc/csw-service.js.map +1 -1
  46. package/dist/es5/lib/services/ogc/wms-service.js +218 -493
  47. package/dist/es5/lib/services/ogc/wms-service.js.map +1 -1
  48. package/dist/es5/lib/sources/data-source.js +28 -43
  49. package/dist/es5/lib/sources/data-source.js.map +1 -1
  50. package/dist/es5/lib/sources/image-source.js +1 -17
  51. package/dist/es5/lib/sources/image-source.js.map +1 -1
  52. package/dist/es5/lib/sources/tile-source.js +1 -17
  53. package/dist/es5/lib/sources/tile-source.js.map +1 -1
  54. package/dist/es5/lib/sources/utils/utils.js +11 -19
  55. package/dist/es5/lib/sources/utils/utils.js.map +1 -1
  56. package/dist/es5/wip/arcgis-feature-service.js +16 -23
  57. package/dist/es5/wip/arcgis-feature-service.js.map +1 -1
  58. package/dist/es5/wip/lib/wcs/parse-wcs-capabilities.js +7 -9
  59. package/dist/es5/wip/lib/wcs/parse-wcs-capabilities.js.map +1 -1
  60. package/dist/es5/wip/lib/wfs/parse-wfs-capabilities.js +7 -9
  61. package/dist/es5/wip/lib/wfs/parse-wfs-capabilities.js.map +1 -1
  62. package/dist/es5/wip/lib/wmts/parse-wmts-capabilities.js +7 -9
  63. package/dist/es5/wip/lib/wmts/parse-wmts-capabilities.js.map +1 -1
  64. package/dist/es5/wip/wcs-capabilities-loader.js +5 -26
  65. package/dist/es5/wip/wcs-capabilities-loader.js.map +1 -1
  66. package/dist/es5/wip/wfs-capabilities-loader.js +5 -26
  67. package/dist/es5/wip/wfs-capabilities-loader.js.map +1 -1
  68. package/dist/es5/wip/wms-feature-info-loader.js +6 -29
  69. package/dist/es5/wip/wms-feature-info-loader.js.map +1 -1
  70. package/dist/es5/wip/wms-layer-description-loader.js +6 -29
  71. package/dist/es5/wip/wms-layer-description-loader.js.map +1 -1
  72. package/dist/es5/wip/wmts-capabilities-loader.js +5 -26
  73. package/dist/es5/wip/wmts-capabilities-loader.js.map +1 -1
  74. package/dist/es5/wms-capabilities-loader.js +5 -26
  75. package/dist/es5/wms-capabilities-loader.js.map +1 -1
  76. package/dist/es5/wms-error-loader.js +13 -36
  77. package/dist/es5/wms-error-loader.js.map +1 -1
  78. package/dist/esm/csw-capabilities-loader.js +1 -1
  79. package/dist/esm/csw-domain-loader.js +1 -1
  80. package/dist/esm/csw-records-loader.js +1 -1
  81. package/dist/esm/gml-loader.js +1 -1
  82. package/dist/esm/lerc-loader.js +1 -1
  83. package/dist/esm/wip/wcs-capabilities-loader.js +1 -1
  84. package/dist/esm/wip/wfs-capabilities-loader.js +1 -1
  85. package/dist/esm/wip/wmts-capabilities-loader.js +1 -1
  86. package/dist/esm/wms-capabilities-loader.js +1 -1
  87. package/dist/esm/wms-error-loader.js +1 -1
  88. package/package.json +6 -6
@@ -5,15 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.WMSService = void 0;
8
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
14
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
16
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
17
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
18
9
  var _images = require("@loaders.gl/images");
19
10
  var _loaderUtils = require("@loaders.gl/loader-utils");
@@ -22,31 +13,20 @@ var _wmsCapabilitiesLoader = require("../../../wms-capabilities-loader");
22
13
  var _wmsFeatureInfoLoader = require("../../../wip/wms-feature-info-loader");
23
14
  var _wmsLayerDescriptionLoader = require("../../../wip/wms-layer-description-loader");
24
15
  var _wmsErrorLoader = require("../../../wms-error-loader");
25
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
26
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
27
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
28
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
29
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
30
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
31
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
32
- var WMSService = function (_ImageSource) {
33
- (0, _inherits2.default)(WMSService, _ImageSource);
34
- var _super = _createSuper(WMSService);
35
- function WMSService(props) {
16
+ class WMSService extends _imageSource.ImageSource {
17
+ constructor(props) {
36
18
  var _props$substituteCRS;
37
- var _this;
38
- (0, _classCallCheck2.default)(this, WMSService);
39
- _this = _super.call(this, props);
40
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "url", void 0);
41
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "substituteCRS84", void 0);
42
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "flipCRS", void 0);
43
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "wmsParameters", void 0);
44
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "vendorParameters", void 0);
45
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "capabilities", null);
46
- _this.url = props.url;
47
- _this.substituteCRS84 = (_props$substituteCRS = props.substituteCRS84) !== null && _props$substituteCRS !== void 0 ? _props$substituteCRS : false;
48
- _this.flipCRS = ['EPSG:4326'];
49
- _this.wmsParameters = _objectSpread({
19
+ super(props);
20
+ (0, _defineProperty2.default)(this, "url", void 0);
21
+ (0, _defineProperty2.default)(this, "substituteCRS84", void 0);
22
+ (0, _defineProperty2.default)(this, "flipCRS", void 0);
23
+ (0, _defineProperty2.default)(this, "wmsParameters", void 0);
24
+ (0, _defineProperty2.default)(this, "vendorParameters", void 0);
25
+ (0, _defineProperty2.default)(this, "capabilities", null);
26
+ this.url = props.url;
27
+ this.substituteCRS84 = (_props$substituteCRS = props.substituteCRS84) !== null && _props$substituteCRS !== void 0 ? _props$substituteCRS : false;
28
+ this.flipCRS = ['EPSG:4326'];
29
+ this.wmsParameters = {
50
30
  layers: undefined,
51
31
  query_layers: undefined,
52
32
  styles: undefined,
@@ -56,477 +36,222 @@ var WMSService = function (_ImageSource) {
56
36
  info_format: 'text/plain',
57
37
  transparent: undefined,
58
38
  time: undefined,
59
- elevation: undefined
60
- }, props.wmsParameters);
61
- _this.vendorParameters = props.vendorParameters || {};
62
- return _this;
39
+ elevation: undefined,
40
+ ...props.wmsParameters
41
+ };
42
+ this.vendorParameters = props.vendorParameters || {};
63
43
  }
64
- (0, _createClass2.default)(WMSService, [{
65
- key: "getMetadata",
66
- value: function () {
67
- var _getMetadata = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee() {
68
- var capabilities;
69
- return _regenerator.default.wrap(function _callee$(_context) {
70
- while (1) switch (_context.prev = _context.next) {
71
- case 0:
72
- _context.next = 2;
73
- return this.getCapabilities();
74
- case 2:
75
- capabilities = _context.sent;
76
- return _context.abrupt("return", this.normalizeMetadata(capabilities));
77
- case 4:
78
- case "end":
79
- return _context.stop();
80
- }
81
- }, _callee, this);
82
- }));
83
- function getMetadata() {
84
- return _getMetadata.apply(this, arguments);
85
- }
86
- return getMetadata;
87
- }()
88
- }, {
89
- key: "getImage",
90
- value: function () {
91
- var _getImage = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2(parameters) {
92
- return _regenerator.default.wrap(function _callee2$(_context2) {
93
- while (1) switch (_context2.prev = _context2.next) {
94
- case 0:
95
- _context2.next = 2;
96
- return this.getMap(parameters);
97
- case 2:
98
- return _context2.abrupt("return", _context2.sent);
99
- case 3:
100
- case "end":
101
- return _context2.stop();
102
- }
103
- }, _callee2, this);
104
- }));
105
- function getImage(_x) {
106
- return _getImage.apply(this, arguments);
107
- }
108
- return getImage;
109
- }()
110
- }, {
111
- key: "normalizeMetadata",
112
- value: function normalizeMetadata(capabilities) {
113
- return capabilities;
114
- }
115
- }, {
116
- key: "getCapabilities",
117
- value: function () {
118
- var _getCapabilities = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee3(wmsParameters, vendorParameters) {
119
- var url, response, arrayBuffer, capabilities;
120
- return _regenerator.default.wrap(function _callee3$(_context3) {
121
- while (1) switch (_context3.prev = _context3.next) {
122
- case 0:
123
- url = this.getCapabilitiesURL(wmsParameters, vendorParameters);
124
- _context3.next = 3;
125
- return this.fetch(url);
126
- case 3:
127
- response = _context3.sent;
128
- _context3.next = 6;
129
- return response.arrayBuffer();
130
- case 6:
131
- arrayBuffer = _context3.sent;
132
- this._checkResponse(response, arrayBuffer);
133
- _context3.next = 10;
134
- return _wmsCapabilitiesLoader.WMSCapabilitiesLoader.parse(arrayBuffer, this.loadOptions);
135
- case 10:
136
- capabilities = _context3.sent;
137
- this.capabilities = capabilities;
138
- return _context3.abrupt("return", capabilities);
139
- case 13:
140
- case "end":
141
- return _context3.stop();
142
- }
143
- }, _callee3, this);
144
- }));
145
- function getCapabilities(_x2, _x3) {
146
- return _getCapabilities.apply(this, arguments);
147
- }
148
- return getCapabilities;
149
- }()
150
- }, {
151
- key: "getMap",
152
- value: function () {
153
- var _getMap = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee4(wmsParameters, vendorParameters) {
154
- var url, response, arrayBuffer;
155
- return _regenerator.default.wrap(function _callee4$(_context4) {
156
- while (1) switch (_context4.prev = _context4.next) {
157
- case 0:
158
- url = this.getMapURL(wmsParameters, vendorParameters);
159
- _context4.next = 3;
160
- return this.fetch(url);
161
- case 3:
162
- response = _context4.sent;
163
- _context4.next = 6;
164
- return response.arrayBuffer();
165
- case 6:
166
- arrayBuffer = _context4.sent;
167
- this._checkResponse(response, arrayBuffer);
168
- _context4.prev = 8;
169
- _context4.next = 11;
170
- return _images.ImageLoader.parse(arrayBuffer, this.loadOptions);
171
- case 11:
172
- return _context4.abrupt("return", _context4.sent);
173
- case 14:
174
- _context4.prev = 14;
175
- _context4.t0 = _context4["catch"](8);
176
- throw this._parseError(arrayBuffer);
177
- case 17:
178
- case "end":
179
- return _context4.stop();
180
- }
181
- }, _callee4, this, [[8, 14]]);
182
- }));
183
- function getMap(_x4, _x5) {
184
- return _getMap.apply(this, arguments);
185
- }
186
- return getMap;
187
- }()
188
- }, {
189
- key: "getFeatureInfo",
190
- value: function () {
191
- var _getFeatureInfo = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee5(wmsParameters, vendorParameters) {
192
- var url, response, arrayBuffer;
193
- return _regenerator.default.wrap(function _callee5$(_context5) {
194
- while (1) switch (_context5.prev = _context5.next) {
195
- case 0:
196
- url = this.getFeatureInfoURL(wmsParameters, vendorParameters);
197
- _context5.next = 3;
198
- return this.fetch(url);
199
- case 3:
200
- response = _context5.sent;
201
- _context5.next = 6;
202
- return response.arrayBuffer();
203
- case 6:
204
- arrayBuffer = _context5.sent;
205
- this._checkResponse(response, arrayBuffer);
206
- _context5.next = 10;
207
- return _wmsFeatureInfoLoader.WMSFeatureInfoLoader.parse(arrayBuffer, this.loadOptions);
208
- case 10:
209
- return _context5.abrupt("return", _context5.sent);
210
- case 11:
211
- case "end":
212
- return _context5.stop();
213
- }
214
- }, _callee5, this);
215
- }));
216
- function getFeatureInfo(_x6, _x7) {
217
- return _getFeatureInfo.apply(this, arguments);
218
- }
219
- return getFeatureInfo;
220
- }()
221
- }, {
222
- key: "getFeatureInfoText",
223
- value: function () {
224
- var _getFeatureInfoText = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee6(wmsParameters, vendorParameters) {
225
- var url, response, arrayBuffer;
226
- return _regenerator.default.wrap(function _callee6$(_context6) {
227
- while (1) switch (_context6.prev = _context6.next) {
228
- case 0:
229
- url = this.getFeatureInfoURL(wmsParameters, vendorParameters);
230
- _context6.next = 3;
231
- return this.fetch(url);
232
- case 3:
233
- response = _context6.sent;
234
- _context6.next = 6;
235
- return response.arrayBuffer();
236
- case 6:
237
- arrayBuffer = _context6.sent;
238
- this._checkResponse(response, arrayBuffer);
239
- return _context6.abrupt("return", new TextDecoder().decode(arrayBuffer));
240
- case 9:
241
- case "end":
242
- return _context6.stop();
243
- }
244
- }, _callee6, this);
245
- }));
246
- function getFeatureInfoText(_x8, _x9) {
247
- return _getFeatureInfoText.apply(this, arguments);
248
- }
249
- return getFeatureInfoText;
250
- }()
251
- }, {
252
- key: "describeLayer",
253
- value: function () {
254
- var _describeLayer = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee7(wmsParameters, vendorParameters) {
255
- var url, response, arrayBuffer;
256
- return _regenerator.default.wrap(function _callee7$(_context7) {
257
- while (1) switch (_context7.prev = _context7.next) {
258
- case 0:
259
- url = this.describeLayerURL(wmsParameters, vendorParameters);
260
- _context7.next = 3;
261
- return this.fetch(url);
262
- case 3:
263
- response = _context7.sent;
264
- _context7.next = 6;
265
- return response.arrayBuffer();
266
- case 6:
267
- arrayBuffer = _context7.sent;
268
- this._checkResponse(response, arrayBuffer);
269
- _context7.next = 10;
270
- return _wmsLayerDescriptionLoader.WMSLayerDescriptionLoader.parse(arrayBuffer, this.loadOptions);
271
- case 10:
272
- return _context7.abrupt("return", _context7.sent);
273
- case 11:
274
- case "end":
275
- return _context7.stop();
276
- }
277
- }, _callee7, this);
278
- }));
279
- function describeLayer(_x10, _x11) {
280
- return _describeLayer.apply(this, arguments);
281
- }
282
- return describeLayer;
283
- }()
284
- }, {
285
- key: "getLegendGraphic",
286
- value: function () {
287
- var _getLegendGraphic = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee8(wmsParameters, vendorParameters) {
288
- var url, response, arrayBuffer;
289
- return _regenerator.default.wrap(function _callee8$(_context8) {
290
- while (1) switch (_context8.prev = _context8.next) {
291
- case 0:
292
- url = this.getLegendGraphicURL(wmsParameters, vendorParameters);
293
- _context8.next = 3;
294
- return this.fetch(url);
295
- case 3:
296
- response = _context8.sent;
297
- _context8.next = 6;
298
- return response.arrayBuffer();
299
- case 6:
300
- arrayBuffer = _context8.sent;
301
- this._checkResponse(response, arrayBuffer);
302
- _context8.prev = 8;
303
- _context8.next = 11;
304
- return _images.ImageLoader.parse(arrayBuffer, this.loadOptions);
305
- case 11:
306
- return _context8.abrupt("return", _context8.sent);
307
- case 14:
308
- _context8.prev = 14;
309
- _context8.t0 = _context8["catch"](8);
310
- throw this._parseError(arrayBuffer);
311
- case 17:
312
- case "end":
313
- return _context8.stop();
314
- }
315
- }, _callee8, this, [[8, 14]]);
316
- }));
317
- function getLegendGraphic(_x12, _x13) {
318
- return _getLegendGraphic.apply(this, arguments);
319
- }
320
- return getLegendGraphic;
321
- }()
322
- }, {
323
- key: "getCapabilitiesURL",
324
- value: function getCapabilitiesURL(wmsParameters, vendorParameters) {
325
- var options = _objectSpread({
326
- version: this.wmsParameters.version
327
- }, wmsParameters);
328
- return this._getWMSUrl('GetCapabilities', options, vendorParameters);
44
+ async getMetadata() {
45
+ const capabilities = await this.getCapabilities();
46
+ return this.normalizeMetadata(capabilities);
47
+ }
48
+ async getImage(parameters) {
49
+ return await this.getMap(parameters);
50
+ }
51
+ normalizeMetadata(capabilities) {
52
+ return capabilities;
53
+ }
54
+ async getCapabilities(wmsParameters, vendorParameters) {
55
+ const url = this.getCapabilitiesURL(wmsParameters, vendorParameters);
56
+ const response = await this.fetch(url);
57
+ const arrayBuffer = await response.arrayBuffer();
58
+ this._checkResponse(response, arrayBuffer);
59
+ const capabilities = await _wmsCapabilitiesLoader.WMSCapabilitiesLoader.parse(arrayBuffer, this.loadOptions);
60
+ this.capabilities = capabilities;
61
+ return capabilities;
62
+ }
63
+ async getMap(wmsParameters, vendorParameters) {
64
+ const url = this.getMapURL(wmsParameters, vendorParameters);
65
+ const response = await this.fetch(url);
66
+ const arrayBuffer = await response.arrayBuffer();
67
+ this._checkResponse(response, arrayBuffer);
68
+ try {
69
+ return await _images.ImageLoader.parse(arrayBuffer, this.loadOptions);
70
+ } catch {
71
+ throw this._parseError(arrayBuffer);
329
72
  }
330
- }, {
331
- key: "getMapURL",
332
- value: function getMapURL(wmsParameters, vendorParameters) {
333
- wmsParameters = this._getWMS130Parameters(wmsParameters);
334
- var options = _objectSpread({
335
- version: this.wmsParameters.version,
336
- format: this.wmsParameters.format,
337
- transparent: this.wmsParameters.transparent,
338
- time: this.wmsParameters.time,
339
- elevation: this.wmsParameters.elevation,
340
- layers: this.wmsParameters.layers,
341
- styles: this.wmsParameters.styles,
342
- crs: this.wmsParameters.crs
343
- }, wmsParameters);
344
- return this._getWMSUrl('GetMap', options, vendorParameters);
73
+ }
74
+ async getFeatureInfo(wmsParameters, vendorParameters) {
75
+ const url = this.getFeatureInfoURL(wmsParameters, vendorParameters);
76
+ const response = await this.fetch(url);
77
+ const arrayBuffer = await response.arrayBuffer();
78
+ this._checkResponse(response, arrayBuffer);
79
+ return await _wmsFeatureInfoLoader.WMSFeatureInfoLoader.parse(arrayBuffer, this.loadOptions);
80
+ }
81
+ async getFeatureInfoText(wmsParameters, vendorParameters) {
82
+ const url = this.getFeatureInfoURL(wmsParameters, vendorParameters);
83
+ const response = await this.fetch(url);
84
+ const arrayBuffer = await response.arrayBuffer();
85
+ this._checkResponse(response, arrayBuffer);
86
+ return new TextDecoder().decode(arrayBuffer);
87
+ }
88
+ async describeLayer(wmsParameters, vendorParameters) {
89
+ const url = this.describeLayerURL(wmsParameters, vendorParameters);
90
+ const response = await this.fetch(url);
91
+ const arrayBuffer = await response.arrayBuffer();
92
+ this._checkResponse(response, arrayBuffer);
93
+ return await _wmsLayerDescriptionLoader.WMSLayerDescriptionLoader.parse(arrayBuffer, this.loadOptions);
94
+ }
95
+ async getLegendGraphic(wmsParameters, vendorParameters) {
96
+ const url = this.getLegendGraphicURL(wmsParameters, vendorParameters);
97
+ const response = await this.fetch(url);
98
+ const arrayBuffer = await response.arrayBuffer();
99
+ this._checkResponse(response, arrayBuffer);
100
+ try {
101
+ return await _images.ImageLoader.parse(arrayBuffer, this.loadOptions);
102
+ } catch {
103
+ throw this._parseError(arrayBuffer);
345
104
  }
346
- }, {
347
- key: "getFeatureInfoURL",
348
- value: function getFeatureInfoURL(wmsParameters, vendorParameters) {
349
- var options = _objectSpread({
350
- version: this.wmsParameters.version,
351
- info_format: this.wmsParameters.info_format,
352
- layers: this.wmsParameters.layers,
353
- query_layers: this.wmsParameters.query_layers,
354
- styles: this.wmsParameters.styles,
355
- crs: this.wmsParameters.crs
356
- }, wmsParameters);
357
- return this._getWMSUrl('GetFeatureInfo', options, vendorParameters);
105
+ }
106
+ getCapabilitiesURL(wmsParameters, vendorParameters) {
107
+ const options = {
108
+ version: this.wmsParameters.version,
109
+ ...wmsParameters
110
+ };
111
+ return this._getWMSUrl('GetCapabilities', options, vendorParameters);
112
+ }
113
+ getMapURL(wmsParameters, vendorParameters) {
114
+ wmsParameters = this._getWMS130Parameters(wmsParameters);
115
+ const options = {
116
+ version: this.wmsParameters.version,
117
+ format: this.wmsParameters.format,
118
+ transparent: this.wmsParameters.transparent,
119
+ time: this.wmsParameters.time,
120
+ elevation: this.wmsParameters.elevation,
121
+ layers: this.wmsParameters.layers,
122
+ styles: this.wmsParameters.styles,
123
+ crs: this.wmsParameters.crs,
124
+ ...wmsParameters
125
+ };
126
+ return this._getWMSUrl('GetMap', options, vendorParameters);
127
+ }
128
+ getFeatureInfoURL(wmsParameters, vendorParameters) {
129
+ const options = {
130
+ version: this.wmsParameters.version,
131
+ info_format: this.wmsParameters.info_format,
132
+ layers: this.wmsParameters.layers,
133
+ query_layers: this.wmsParameters.query_layers,
134
+ styles: this.wmsParameters.styles,
135
+ crs: this.wmsParameters.crs,
136
+ ...wmsParameters
137
+ };
138
+ return this._getWMSUrl('GetFeatureInfo', options, vendorParameters);
139
+ }
140
+ describeLayerURL(wmsParameters, vendorParameters) {
141
+ const options = {
142
+ version: this.wmsParameters.version,
143
+ ...wmsParameters
144
+ };
145
+ return this._getWMSUrl('DescribeLayer', options, vendorParameters);
146
+ }
147
+ getLegendGraphicURL(wmsParameters, vendorParameters) {
148
+ const options = {
149
+ version: this.wmsParameters.version,
150
+ ...wmsParameters
151
+ };
152
+ return this._getWMSUrl('GetLegendGraphic', options, vendorParameters);
153
+ }
154
+ _parseWMSUrl(url) {
155
+ const [baseUrl, search] = url.split('?');
156
+ const searchParams = search.split('&');
157
+ const parameters = {};
158
+ for (const parameter of searchParams) {
159
+ const [key, value] = parameter.split('=');
160
+ parameters[key] = value;
358
161
  }
359
- }, {
360
- key: "describeLayerURL",
361
- value: function describeLayerURL(wmsParameters, vendorParameters) {
362
- var options = _objectSpread({
363
- version: this.wmsParameters.version
364
- }, wmsParameters);
365
- return this._getWMSUrl('DescribeLayer', options, vendorParameters);
162
+ return {
163
+ url: baseUrl,
164
+ parameters
165
+ };
166
+ }
167
+ _getWMSUrl(request, wmsParameters, vendorParameters) {
168
+ let url = this.url;
169
+ let first = true;
170
+ const allParameters = {
171
+ service: 'WMS',
172
+ version: wmsParameters.version,
173
+ request,
174
+ ...wmsParameters,
175
+ ...this.vendorParameters,
176
+ ...vendorParameters
177
+ };
178
+ const IGNORE_EMPTY_KEYS = ['transparent', 'time', 'elevation'];
179
+ for (const [key, value] of Object.entries(allParameters)) {
180
+ if (!IGNORE_EMPTY_KEYS.includes(key) || value) {
181
+ url += first ? '?' : '&';
182
+ first = false;
183
+ url += this._getURLParameter(key, value, wmsParameters);
184
+ }
366
185
  }
367
- }, {
368
- key: "getLegendGraphicURL",
369
- value: function getLegendGraphicURL(wmsParameters, vendorParameters) {
370
- var options = _objectSpread({
371
- version: this.wmsParameters.version
372
- }, wmsParameters);
373
- return this._getWMSUrl('GetLegendGraphic', options, vendorParameters);
186
+ return encodeURI(url);
187
+ }
188
+ _getWMS130Parameters(wmsParameters) {
189
+ const newParameters = {
190
+ ...wmsParameters
191
+ };
192
+ if (newParameters.srs) {
193
+ newParameters.crs = newParameters.crs || newParameters.srs;
194
+ delete newParameters.srs;
374
195
  }
375
- }, {
376
- key: "_parseWMSUrl",
377
- value: function _parseWMSUrl(url) {
378
- var _url$split = url.split('?'),
379
- _url$split2 = (0, _slicedToArray2.default)(_url$split, 2),
380
- baseUrl = _url$split2[0],
381
- search = _url$split2[1];
382
- var searchParams = search.split('&');
383
- var parameters = {};
384
- var _iterator = _createForOfIteratorHelper(searchParams),
385
- _step;
386
- try {
387
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
388
- var parameter = _step.value;
389
- var _parameter$split = parameter.split('='),
390
- _parameter$split2 = (0, _slicedToArray2.default)(_parameter$split, 2),
391
- _key = _parameter$split2[0],
392
- value = _parameter$split2[1];
393
- parameters[_key] = value;
196
+ return newParameters;
197
+ }
198
+ _getURLParameter(key, value, wmsParameters) {
199
+ switch (key) {
200
+ case 'crs':
201
+ if (wmsParameters.version !== '1.3.0') {
202
+ key = 'srs';
203
+ } else if (this.substituteCRS84 && value === 'EPSG:4326') {
204
+ value = 'CRS:84';
394
205
  }
395
- } catch (err) {
396
- _iterator.e(err);
397
- } finally {
398
- _iterator.f();
399
- }
400
- return {
401
- url: baseUrl,
402
- parameters: parameters
403
- };
404
- }
405
- }, {
406
- key: "_getWMSUrl",
407
- value: function _getWMSUrl(request, wmsParameters, vendorParameters) {
408
- var url = this.url;
409
- var first = true;
410
- var allParameters = _objectSpread(_objectSpread(_objectSpread({
411
- service: 'WMS',
412
- version: wmsParameters.version,
413
- request: request
414
- }, wmsParameters), this.vendorParameters), vendorParameters);
415
- var IGNORE_EMPTY_KEYS = ['transparent', 'time', 'elevation'];
416
- for (var _i = 0, _Object$entries = Object.entries(allParameters); _i < _Object$entries.length; _i++) {
417
- var _Object$entries$_i = (0, _slicedToArray2.default)(_Object$entries[_i], 2),
418
- _key2 = _Object$entries$_i[0],
419
- value = _Object$entries$_i[1];
420
- if (!IGNORE_EMPTY_KEYS.includes(_key2) || value) {
421
- url += first ? '?' : '&';
422
- first = false;
423
- url += this._getURLParameter(_key2, value, wmsParameters);
206
+ break;
207
+ case 'srs':
208
+ if (wmsParameters.version === '1.3.0') {
209
+ key = 'crs';
424
210
  }
425
- }
426
- return encodeURI(url);
427
- }
428
- }, {
429
- key: "_getWMS130Parameters",
430
- value: function _getWMS130Parameters(wmsParameters) {
431
- var newParameters = _objectSpread({}, wmsParameters);
432
- if (newParameters.srs) {
433
- newParameters.crs = newParameters.crs || newParameters.srs;
434
- delete newParameters.srs;
435
- }
436
- return newParameters;
437
- }
438
- }, {
439
- key: "_getURLParameter",
440
- value: function _getURLParameter(key, value, wmsParameters) {
441
- switch (key) {
442
- case 'crs':
443
- if (wmsParameters.version !== '1.3.0') {
444
- key = 'srs';
445
- } else if (this.substituteCRS84 && value === 'EPSG:4326') {
446
- value = 'CRS:84';
447
- }
448
- break;
449
- case 'srs':
450
- if (wmsParameters.version === '1.3.0') {
451
- key = 'crs';
452
- }
453
- break;
454
- case 'bbox':
455
- var bbox = this._flipBoundingBox(value, wmsParameters);
456
- if (bbox) {
457
- value = bbox;
458
- }
459
- break;
460
- default:
461
- }
462
- key = key.toUpperCase();
463
- return Array.isArray(value) ? "".concat(key, "=").concat(value.join(',')) : "".concat(key, "=").concat(value ? String(value) : '');
464
- }
465
- }, {
466
- key: "_flipBoundingBox",
467
- value: function _flipBoundingBox(bboxValue, wmsParameters) {
468
- if (!Array.isArray(bboxValue) || bboxValue.length !== 4) {
469
- return null;
470
- }
471
- var flipCoordinates = wmsParameters.version === '1.3.0' && this.flipCRS.includes(wmsParameters.crs || '') && !(this.substituteCRS84 && wmsParameters.crs === 'EPSG:4326');
472
- var bbox = bboxValue;
473
- return flipCoordinates ? [bbox[1], bbox[0], bbox[3], bbox[2]] : bbox;
211
+ break;
212
+ case 'bbox':
213
+ const bbox = this._flipBoundingBox(value, wmsParameters);
214
+ if (bbox) {
215
+ value = bbox;
216
+ }
217
+ break;
218
+ default:
474
219
  }
475
- }, {
476
- key: "_fetchArrayBuffer",
477
- value: function () {
478
- var _fetchArrayBuffer2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee9(url) {
479
- var response, arrayBuffer;
480
- return _regenerator.default.wrap(function _callee9$(_context9) {
481
- while (1) switch (_context9.prev = _context9.next) {
482
- case 0:
483
- _context9.next = 2;
484
- return this.fetch(url);
485
- case 2:
486
- response = _context9.sent;
487
- _context9.next = 5;
488
- return response.arrayBuffer();
489
- case 5:
490
- arrayBuffer = _context9.sent;
491
- this._checkResponse(response, arrayBuffer);
492
- return _context9.abrupt("return", arrayBuffer);
493
- case 8:
494
- case "end":
495
- return _context9.stop();
496
- }
497
- }, _callee9, this);
498
- }));
499
- function _fetchArrayBuffer(_x14) {
500
- return _fetchArrayBuffer2.apply(this, arguments);
501
- }
502
- return _fetchArrayBuffer;
503
- }()
504
- }, {
505
- key: "_checkResponse",
506
- value: function _checkResponse(response, arrayBuffer) {
507
- var contentType = response.headers['content-type'];
508
- if (!response.ok || _wmsErrorLoader.WMSErrorLoader.mimeTypes.includes(contentType)) {
509
- var loadOptions = (0, _loaderUtils.mergeLoaderOptions)(this.loadOptions, {
510
- wms: {
511
- throwOnError: true
512
- }
513
- });
514
- var error = _wmsErrorLoader.WMSErrorLoader.parseSync(arrayBuffer, loadOptions);
515
- throw new Error(error);
516
- }
220
+ key = key.toUpperCase();
221
+ return Array.isArray(value) ? "".concat(key, "=").concat(value.join(',')) : "".concat(key, "=").concat(value ? String(value) : '');
222
+ }
223
+ _flipBoundingBox(bboxValue, wmsParameters) {
224
+ if (!Array.isArray(bboxValue) || bboxValue.length !== 4) {
225
+ return null;
517
226
  }
518
- }, {
519
- key: "_parseError",
520
- value: function _parseError(arrayBuffer) {
521
- var error = _wmsErrorLoader.WMSErrorLoader.parseSync(arrayBuffer, this.loadOptions);
522
- return new Error(error);
227
+ const flipCoordinates = wmsParameters.version === '1.3.0' && this.flipCRS.includes(wmsParameters.crs || '') && !(this.substituteCRS84 && wmsParameters.crs === 'EPSG:4326');
228
+ const bbox = bboxValue;
229
+ return flipCoordinates ? [bbox[1], bbox[0], bbox[3], bbox[2]] : bbox;
230
+ }
231
+ async _fetchArrayBuffer(url) {
232
+ const response = await this.fetch(url);
233
+ const arrayBuffer = await response.arrayBuffer();
234
+ this._checkResponse(response, arrayBuffer);
235
+ return arrayBuffer;
236
+ }
237
+ _checkResponse(response, arrayBuffer) {
238
+ const contentType = response.headers['content-type'];
239
+ if (!response.ok || _wmsErrorLoader.WMSErrorLoader.mimeTypes.includes(contentType)) {
240
+ const loadOptions = (0, _loaderUtils.mergeLoaderOptions)(this.loadOptions, {
241
+ wms: {
242
+ throwOnError: true
243
+ }
244
+ });
245
+ const error = _wmsErrorLoader.WMSErrorLoader.parseSync(arrayBuffer, loadOptions);
246
+ throw new Error(error);
523
247
  }
524
- }]);
525
- return WMSService;
526
- }(_imageSource.ImageSource);
248
+ }
249
+ _parseError(arrayBuffer) {
250
+ const error = _wmsErrorLoader.WMSErrorLoader.parseSync(arrayBuffer, this.loadOptions);
251
+ return new Error(error);
252
+ }
253
+ }
527
254
  exports.WMSService = WMSService;
528
255
  (0, _defineProperty2.default)(WMSService, "type", 'wms');
529
- (0, _defineProperty2.default)(WMSService, "testURL", function (url) {
530
- return url.toLowerCase().includes('wms');
531
- });
256
+ (0, _defineProperty2.default)(WMSService, "testURL", url => url.toLowerCase().includes('wms'));
532
257
  //# sourceMappingURL=wms-service.js.map