@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.
- package/dist/es5/bundle.js +1 -1
- package/dist/es5/bundle.js.map +1 -1
- package/dist/es5/csw-capabilities-loader.js +5 -26
- package/dist/es5/csw-capabilities-loader.js.map +1 -1
- package/dist/es5/csw-domain-loader.js +5 -26
- package/dist/es5/csw-domain-loader.js.map +1 -1
- package/dist/es5/csw-records-loader.js +4 -25
- package/dist/es5/csw-records-loader.js.map +1 -1
- package/dist/es5/gml-loader.js +5 -26
- package/dist/es5/gml-loader.js.map +1 -1
- package/dist/es5/index.js +16 -16
- package/dist/es5/lerc-loader.js +10 -47
- package/dist/es5/lerc-loader.js.map +1 -1
- package/dist/es5/lib/create-image-source.js +8 -19
- package/dist/es5/lib/create-image-source.js.map +1 -1
- package/dist/es5/lib/parsers/csw/parse-csw-capabilities.js +7 -9
- package/dist/es5/lib/parsers/csw/parse-csw-capabilities.js.map +1 -1
- package/dist/es5/lib/parsers/csw/parse-csw-domain.js +11 -25
- package/dist/es5/lib/parsers/csw/parse-csw-domain.js.map +1 -1
- package/dist/es5/lib/parsers/csw/parse-csw-records.js +21 -47
- package/dist/es5/lib/parsers/csw/parse-csw-records.js.map +1 -1
- package/dist/es5/lib/parsers/csw/parse-exception-report.js +2 -2
- package/dist/es5/lib/parsers/csw/parse-exception-report.js.map +1 -1
- package/dist/es5/lib/parsers/gml/deep-strict-equal.js +9 -11
- package/dist/es5/lib/parsers/gml/deep-strict-equal.js.map +1 -1
- package/dist/es5/lib/parsers/gml/parse-gml.js +79 -130
- package/dist/es5/lib/parsers/gml/parse-gml.js.map +1 -1
- package/dist/es5/lib/parsers/wms/parse-wms-capabilities.js +69 -126
- package/dist/es5/lib/parsers/wms/parse-wms-capabilities.js.map +1 -1
- package/dist/es5/lib/parsers/wms/parse-wms-error.js +3 -3
- package/dist/es5/lib/parsers/wms/parse-wms-error.js.map +1 -1
- package/dist/es5/lib/parsers/wms/parse-wms-features.js +5 -7
- package/dist/es5/lib/parsers/wms/parse-wms-features.js.map +1 -1
- package/dist/es5/lib/parsers/wms/parse-wms-layer-description.js +1 -1
- package/dist/es5/lib/parsers/wms/parse-wms-layer-description.js.map +1 -1
- package/dist/es5/lib/parsers/xml/parse-xml-helpers.js +6 -10
- package/dist/es5/lib/parsers/xml/parse-xml-helpers.js.map +1 -1
- package/dist/es5/lib/services/arcgis/arcgis-image-service.js +48 -146
- package/dist/es5/lib/services/arcgis/arcgis-image-service.js.map +1 -1
- package/dist/es5/lib/services/arcgis/arcgis-server.js +26 -98
- package/dist/es5/lib/services/arcgis/arcgis-server.js.map +1 -1
- package/dist/es5/lib/services/generic/image-service.js +32 -103
- package/dist/es5/lib/services/generic/image-service.js.map +1 -1
- package/dist/es5/lib/services/ogc/csw-service.js +134 -334
- package/dist/es5/lib/services/ogc/csw-service.js.map +1 -1
- package/dist/es5/lib/services/ogc/wms-service.js +218 -493
- package/dist/es5/lib/services/ogc/wms-service.js.map +1 -1
- package/dist/es5/lib/sources/data-source.js +28 -43
- package/dist/es5/lib/sources/data-source.js.map +1 -1
- package/dist/es5/lib/sources/image-source.js +1 -17
- package/dist/es5/lib/sources/image-source.js.map +1 -1
- package/dist/es5/lib/sources/tile-source.js +1 -17
- package/dist/es5/lib/sources/tile-source.js.map +1 -1
- package/dist/es5/lib/sources/utils/utils.js +11 -19
- package/dist/es5/lib/sources/utils/utils.js.map +1 -1
- package/dist/es5/wip/arcgis-feature-service.js +16 -23
- package/dist/es5/wip/arcgis-feature-service.js.map +1 -1
- package/dist/es5/wip/lib/wcs/parse-wcs-capabilities.js +7 -9
- package/dist/es5/wip/lib/wcs/parse-wcs-capabilities.js.map +1 -1
- package/dist/es5/wip/lib/wfs/parse-wfs-capabilities.js +7 -9
- package/dist/es5/wip/lib/wfs/parse-wfs-capabilities.js.map +1 -1
- package/dist/es5/wip/lib/wmts/parse-wmts-capabilities.js +7 -9
- package/dist/es5/wip/lib/wmts/parse-wmts-capabilities.js.map +1 -1
- package/dist/es5/wip/wcs-capabilities-loader.js +5 -26
- package/dist/es5/wip/wcs-capabilities-loader.js.map +1 -1
- package/dist/es5/wip/wfs-capabilities-loader.js +5 -26
- package/dist/es5/wip/wfs-capabilities-loader.js.map +1 -1
- package/dist/es5/wip/wms-feature-info-loader.js +6 -29
- package/dist/es5/wip/wms-feature-info-loader.js.map +1 -1
- package/dist/es5/wip/wms-layer-description-loader.js +6 -29
- package/dist/es5/wip/wms-layer-description-loader.js.map +1 -1
- package/dist/es5/wip/wmts-capabilities-loader.js +5 -26
- package/dist/es5/wip/wmts-capabilities-loader.js.map +1 -1
- package/dist/es5/wms-capabilities-loader.js +5 -26
- package/dist/es5/wms-capabilities-loader.js.map +1 -1
- package/dist/es5/wms-error-loader.js +13 -36
- package/dist/es5/wms-error-loader.js.map +1 -1
- package/dist/esm/csw-capabilities-loader.js +1 -1
- package/dist/esm/csw-domain-loader.js +1 -1
- package/dist/esm/csw-records-loader.js +1 -1
- package/dist/esm/gml-loader.js +1 -1
- package/dist/esm/lerc-loader.js +1 -1
- package/dist/esm/wip/wcs-capabilities-loader.js +1 -1
- package/dist/esm/wip/wfs-capabilities-loader.js +1 -1
- package/dist/esm/wip/wmts-capabilities-loader.js +1 -1
- package/dist/esm/wms-capabilities-loader.js +1 -1
- package/dist/esm/wms-error-loader.js +1 -1
- 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
|
-
|
|
26
|
-
|
|
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
|
-
|
|
38
|
-
(0,
|
|
39
|
-
|
|
40
|
-
(0, _defineProperty2.default)(
|
|
41
|
-
(0, _defineProperty2.default)(
|
|
42
|
-
(0, _defineProperty2.default)(
|
|
43
|
-
(0, _defineProperty2.default)(
|
|
44
|
-
|
|
45
|
-
(
|
|
46
|
-
|
|
47
|
-
|
|
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
|
-
|
|
61
|
-
|
|
62
|
-
|
|
39
|
+
elevation: undefined,
|
|
40
|
+
...props.wmsParameters
|
|
41
|
+
};
|
|
42
|
+
this.vendorParameters = props.vendorParameters || {};
|
|
63
43
|
}
|
|
64
|
-
(
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
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
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
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
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
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
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
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
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
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
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
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
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
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
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
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: "
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
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
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
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
|
-
|
|
526
|
-
|
|
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",
|
|
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
|