@itwin/ecschema-rpcinterface-tests 5.13.0-dev.18 → 5.13.0-dev.20
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/lib/dist/bundled-tests.js +1244 -44
- package/lib/dist/bundled-tests.js.map +1 -1
- package/lib/dist/core_frontend_lib_esm_ApproximateTerrainHeightsProps_js.bundled-tests.js.map +1 -1
- package/lib/dist/vendors-common_temp_node_modules_pnpm_cross-fetch_4_1_0_node_modules_cross-fetch_dist_browser-44272f.bundled-tests.js.map +1 -1
- package/lib/dist/vendors-common_temp_node_modules_pnpm_loaders_gl_draco_4_3_4__loaders_gl_core_4_3_4_node_modu-4c1fc9.bundled-tests.js.map +1 -1
- package/package.json +16 -16
|
@@ -18201,31 +18201,6 @@ module.exports = {
|
|
|
18201
18201
|
}));
|
|
18202
18202
|
|
|
18203
18203
|
|
|
18204
|
-
/***/ },
|
|
18205
|
-
|
|
18206
|
-
/***/ "../../common/temp/node_modules/.pnpm/wms-capabilities@0.4.0/node_modules/wms-capabilities/dist/wms-capabilities.min.js"
|
|
18207
|
-
/*!******************************************************************************************************************************!*\
|
|
18208
|
-
!*** ../../common/temp/node_modules/.pnpm/wms-capabilities@0.4.0/node_modules/wms-capabilities/dist/wms-capabilities.min.js ***!
|
|
18209
|
-
\******************************************************************************************************************************/
|
|
18210
|
-
(module) {
|
|
18211
|
-
|
|
18212
|
-
"use strict";
|
|
18213
|
-
(function(f,m){ true?module.exports=m():0})(this,function(){function f(a){return void 0!==a}function m(a,c,b){if(a.nodeType===u.CDATA_SECTION||a.nodeType===u.TEXT)c?b.push(String(a.nodeValue).replace(/(\r\n|\r|\n)/g,"")):b.push(a.nodeValue);else for(a=a.firstChild;a;a=a.nextSibling)m(a,c,b);return b}function F(a){for(a=a.nextElementSibling||a.nextSibling;a&&
|
|
18214
|
-
a.nodeType!==u.ELEMENT;)a=a.nextSibling;return a}function h(a,c,b){b=f(b)?b:{};var d;var n=0;for(d=a.length;n<d;++n)b[a[n]]=c;return b}function A(a,c){return function(b,d){b=a.call(f(c)?c:this,b,d);f(b)&&d[d.length-1].push(b)}}function l(a,c,b,d,e){d.push(a);for(a=b.firstElementChild||b.firstChild;a&&a.nodeType!==u.ELEMENT;)a=a.nextSibling;for(;a;a=F(a))b=c[a.namespaceURI||null],f(b)&&(b=b[a.localName],f(b)&&b.call(e,a,d));return d.pop()}function b(a,c,b){return function(d,e){var n=a.call(f(b)?b:
|
|
18215
|
-
this,d,e);f(n)&&(e=e[e.length-1],d=f(c)?c:d.localName,e[d]=n)}}function k(a,c,b){return function(d,e){var n=a.call(f(b)?b:this,d,e);if(f(n)){e=e[e.length-1];d=f(c)?c:d.localName;var g=[];(d in e?e[d]:e[d]=g).push(n)}}}function r(a){if(a=/^\s*(true|1)|(false|0)\s*$/.exec(a))return f(a[1])||!1}function t(a){return p(m(a,!1,[]).join(""))}function p(a){if(a=/^\s*([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?)\s*$/i.exec(a))return parseFloat(a[1])}function w(a){return v(m(a,!1,[]).join(""))}function v(a){if(a=/^\s*(\d+)\s*$/.exec(a))return parseInt(a[1],
|
|
18216
|
-
10)}function e(a){return m(a,!1,[]).join("").replace(G,"")}function x(a){return a.getAttributeNS("http://www.w3.org/1999/xlink","href")}function B(a){return[p(a.getAttribute("minx")),p(a.getAttribute("miny")),p(a.getAttribute("maxx")),p(a.getAttribute("maxy"))]}function q(a,c){return l({},H,a,c)}function y(a,c){return l({},I,a,c)}function C(a,c){c=q(a,c);if(f(c))return a=[v(a.getAttribute("width")),v(a.getAttribute("height"))],c.size=a,c}function D(a,c){return l([],J,a,c)}var u={ELEMENT:1,ATTRIBUTE:2,
|
|
18217
|
-
TEXT:3,CDATA_SECTION:4,ENTITY_REFERENCE:5,ENTITY:6,PROCESSING_INSTRUCTION:7,COMMENT:8,DOCUMENT:9,DOCUMENT_TYPE:10,DOCUMENT_FRAGMENT:11,NOTATION:12},z=function(a){this._parser=new a};z.prototype.toDocument=function(a){return this._parser.parseFromString(a,"application/xml")};z.prototype.getAllTextContent=function(a,c){return m(a,c,[]).join("").join("")};var G=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,g=[null,"http://www.opengis.net/wms"],M=h(g,{Service:b(function(a,c){return l({},K,a,c)}),Capability:b(function(a,
|
|
18218
|
-
c){return l({},L,a,c)})}),L=h(g,{Request:b(function(a,c){return l({},N,a,c)}),Exception:b(function(a,c){return l([],O,a,c)}),Layer:b(function(a,c){var b=r(a.getAttribute("queryable"));return l({queryable:f(b)?b:!1},E,a,c)})}),K=h(g,{Name:b(e),Title:b(e),Abstract:b(e),KeywordList:b(D),OnlineResource:b(x),ContactInformation:b(function(a,c){return l({},P,a,c)}),Fees:b(e),AccessConstraints:b(e),LayerLimit:b(w),MaxWidth:b(w),MaxHeight:b(w)}),P=h(g,{ContactPersonPrimary:b(function(a,c){return l({},Q,a,
|
|
18219
|
-
c)}),ContactPosition:b(e),ContactAddress:b(function(a,c){return l({},R,a,c)}),ContactVoiceTelephone:b(e),ContactFacsimileTelephone:b(e),ContactElectronicMailAddress:b(e)}),Q=h(g,{ContactPerson:b(e),ContactOrganization:b(e)}),R=h(g,{AddressType:b(e),Address:b(e),City:b(e),StateOrProvince:b(e),PostCode:b(e),Country:b(e)}),O=h(g,{Format:A(e)}),E=h(g,{Name:b(e),Title:b(e),Abstract:b(e),KeywordList:b(D),CRS:k(e),SRS:k(e),EX_GeographicBoundingBox:b(function(a,c){var b=l({},S,a,c);if(f(b)){a=b.westBoundLongitude;
|
|
18220
|
-
c=b.southBoundLatitude;var d=b.eastBoundLongitude;b=b.northBoundLatitude;if(f(a)&&f(c)&&f(d)&&f(b))return[a,c,d,b]}}),LatLonBoundingBox:b(function(a,b){a=B(a);if(f(a[0])&&f(a[1])&&f(a[2])&&f(a[3]))return a}),BoundingBox:k(function(a,b){b=B(a);var c=[p(a.getAttribute("resx")),p(a.getAttribute("resy"))];return{crs:a.getAttribute("CRS")||a.getAttribute("SRS"),extent:b,res:c}}),Dimension:k(function(a,b){return{name:a.getAttribute("name"),units:a.getAttribute("units"),unitSymbol:a.getAttribute("unitSymbol"),
|
|
18221
|
-
"default":a.getAttribute("default"),multipleValues:r(a.getAttribute("multipleValues")),nearestValue:r(a.getAttribute("nearestValue")),current:r(a.getAttribute("current")),values:e(a)}}),Attribution:b(function(a,b){return l({},T,a,b)}),AuthorityURL:k(function(a,b){b=q(a,b);if(f(b))return b.name=a.getAttribute("name"),b}),Identifier:k(e),MetadataURL:k(function(a,b){b=q(a,b);if(f(b))return b.type=a.getAttribute("type"),b}),DataURL:k(q),FeatureListURL:k(q),Style:k(function(a,b){return l({},U,a,b)}),MinScaleDenominator:b(t),
|
|
18222
|
-
MaxScaleDenominator:b(t),ScaleHint:b(function(a,b){b=parseFloat(a.getAttribute("min"));a=parseFloat(a.getAttribute("max"));return{min:b,max:a}}),Layer:k(function(a,b){var c=b[b.length-1];b=l({},E,a,b);if(f(b)){var d=r(a.getAttribute("queryable"));f(d)||(d=c.queryable);b.queryable=f(d)?d:!1;d=v(a.getAttribute("cascaded"));f(d)||(d=c.cascaded);b.cascaded=d;d=r(a.getAttribute("opaque"));f(d)||(d=c.opaque);b.opaque=f(d)?d:!1;d=r(a.getAttribute("noSubsets"));f(d)||(d=c.noSubsets);b.noSubsets=f(d)?d:!1;
|
|
18223
|
-
d=p(a.getAttribute("fixedWidth"));f(d)||(d=c.fixedWidth);b.fixedWidth=d;a=p(a.getAttribute("fixedHeight"));f(a)||(a=c.fixedHeight);b.fixedHeight=a;a=["Style","CRS","AuthorityURL"];d=0;for(var e=a.length;d<e;d++){var g=a[d],h=c[g];if(f(h)){var k=[];k=g in b?b[g]:b[g]=k;k=k.concat(h);b[g]=k}}a="EX_GeographicBoundingBox BoundingBox Dimension Attribution MinScaleDenominator MaxScaleDenominator".split(" ");d=0;for(e=a.length;d<e;d++)g=a[d],f(b[g])||(b[g]=c[g]);return b}})}),T=h(g,{Title:b(e),OnlineResource:b(x),
|
|
18224
|
-
LogoURL:b(C)}),S=h(g,{westBoundLongitude:b(t),eastBoundLongitude:b(t),southBoundLatitude:b(t),northBoundLatitude:b(t)}),N=h(g,{GetCapabilities:b(y),GetMap:b(y),GetFeatureInfo:b(y)}),I=h(g,{Format:k(e),DCPType:k(function(a,b){return l({},V,a,b)})}),V=h(g,{HTTP:b(function(a,b){return l({},W,a,b)})}),W=h(g,{Get:b(q),Post:b(q)}),U=h(g,{Name:b(e),Title:b(e),Abstract:b(e),LegendURL:k(C),StyleSheetURL:b(q),StyleURL:b(q)}),H=h(g,{Format:b(e),OnlineResource:b(x)}),J=h(g,{Keyword:A(e)});g=function(a,b){b||
|
|
18225
|
-
"undefined"===typeof window||(b=window.DOMParser);this.version=void 0;this._parser=new z(b);this._data=a};g.prototype.data=function(a){this._data=a;return this};g.prototype.toJSON=function(a){a=a||this._data;return this.parse(a)};g.prototype.parse=function(a){return this._readFromDocument(this._parser.toDocument(a))};g.prototype._readFromDocument=function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType==u.ELEMENT)return this.readFromNode(a);return null};g.prototype.readFromNode=function(a){this.version=
|
|
18226
|
-
a.getAttribute("version");return l({version:this.version},M,a,[])||null};return g});
|
|
18227
|
-
|
|
18228
|
-
|
|
18229
18204
|
/***/ },
|
|
18230
18205
|
|
|
18231
18206
|
/***/ "../../core/bentley/lib/esm/AccessToken.js"
|
|
@@ -26290,6 +26265,12 @@ var BriefcaseIdValue;
|
|
|
26290
26265
|
BriefcaseIdValue[BriefcaseIdValue["FirstValid"] = 2] = "FirstValid";
|
|
26291
26266
|
/** All valid iModelHub issued BriefcaseIds will be equal or lower than this */
|
|
26292
26267
|
BriefcaseIdValue[BriefcaseIdValue["LastValid"] = 16777205] = "LastValid";
|
|
26268
|
+
/**
|
|
26269
|
+
* Briefcase Id reserved for `Element` Ids allocated by SchemaSync reservations.
|
|
26270
|
+
* Never assigned to a real briefcase by iModelHub.
|
|
26271
|
+
* @internal
|
|
26272
|
+
*/
|
|
26273
|
+
BriefcaseIdValue[BriefcaseIdValue["SchemaSyncElementReserved"] = 16777206] = "SchemaSyncElementReserved";
|
|
26293
26274
|
/**
|
|
26294
26275
|
* The briefcase has not been assigned a unique Id by iModelHub. Only briefcases that have been assigned a unique BriefcaseId may create changesets,
|
|
26295
26276
|
* because BriefcaseId is used to create unique ElementIds for new elements.
|
|
@@ -26902,7 +26883,7 @@ class Code {
|
|
|
26902
26883
|
equals(other) { return Code.equalCodes(this, other); }
|
|
26903
26884
|
/** @internal */
|
|
26904
26885
|
static equalCodes(c1, c2) {
|
|
26905
|
-
return c1.spec === c2.spec && c1.scope === c2.scope && c1.value === c2.value;
|
|
26886
|
+
return c1.spec === c2.spec && c1.scope === c2.scope && (c1.value ?? "").toLowerCase() === (c2.value ?? "").toLowerCase();
|
|
26906
26887
|
}
|
|
26907
26888
|
/** Determine whether this Code is valid. */
|
|
26908
26889
|
static isValid(c) { return _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.isValidId64(c.spec); }
|
|
@@ -35410,6 +35391,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
35410
35391
|
/* harmony export */ CloudSqliteError: () => (/* binding */ CloudSqliteError),
|
|
35411
35392
|
/* harmony export */ EditTxnError: () => (/* binding */ EditTxnError),
|
|
35412
35393
|
/* harmony export */ ElementError: () => (/* binding */ ElementError),
|
|
35394
|
+
/* harmony export */ ElementReservationError: () => (/* binding */ ElementReservationError),
|
|
35413
35395
|
/* harmony export */ ITwinSettingsError: () => (/* binding */ ITwinSettingsError),
|
|
35414
35396
|
/* harmony export */ ServerBasedLocksError: () => (/* binding */ ServerBasedLocksError),
|
|
35415
35397
|
/* harmony export */ SqliteError: () => (/* binding */ SqliteError),
|
|
@@ -35571,6 +35553,22 @@ var ElementError;
|
|
|
35571
35553
|
}
|
|
35572
35554
|
ElementError.isError = isError;
|
|
35573
35555
|
})(ElementError || (ElementError = {}));
|
|
35556
|
+
/** @beta */
|
|
35557
|
+
var ElementReservationError;
|
|
35558
|
+
(function (ElementReservationError) {
|
|
35559
|
+
/** the ITwinError scope for `ElementReservationError`s. */
|
|
35560
|
+
ElementReservationError.scope = "itwin-ElementReservation";
|
|
35561
|
+
/** Instantiate and throw an ElementReservationError */
|
|
35562
|
+
function throwError(key, e) {
|
|
35563
|
+
_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.ITwinError.throwError({ ...e, iTwinErrorId: { scope: ElementReservationError.scope, key } });
|
|
35564
|
+
}
|
|
35565
|
+
ElementReservationError.throwError = throwError;
|
|
35566
|
+
/** Determine whether an error object is an ElementReservationError */
|
|
35567
|
+
function isError(error, key) {
|
|
35568
|
+
return _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.ITwinError.isError(error, ElementReservationError.scope, key);
|
|
35569
|
+
}
|
|
35570
|
+
ElementReservationError.isError = isError;
|
|
35571
|
+
})(ElementReservationError || (ElementReservationError = {}));
|
|
35574
35572
|
|
|
35575
35573
|
|
|
35576
35574
|
/***/ },
|
|
@@ -45293,6 +45291,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
45293
45291
|
/* harmony export */ ElementGeometry: () => (/* reexport safe */ _geometry_ElementGeometry__WEBPACK_IMPORTED_MODULE_49__.ElementGeometry),
|
|
45294
45292
|
/* harmony export */ ElementGeometryChange: () => (/* reexport safe */ _ModelGeometryChanges__WEBPACK_IMPORTED_MODULE_96__.ElementGeometryChange),
|
|
45295
45293
|
/* harmony export */ ElementGeometryOpcode: () => (/* reexport safe */ _geometry_ElementGeometry__WEBPACK_IMPORTED_MODULE_49__.ElementGeometryOpcode),
|
|
45294
|
+
/* harmony export */ ElementReservationError: () => (/* reexport safe */ _ITwinCoreErrors__WEBPACK_IMPORTED_MODULE_73__.ElementReservationError),
|
|
45296
45295
|
/* harmony export */ EmptyLocalization: () => (/* reexport safe */ _Localization__WEBPACK_IMPORTED_MODULE_83__.EmptyLocalization),
|
|
45297
45296
|
/* harmony export */ EntityMetaData: () => (/* reexport safe */ _EntityProps__WEBPACK_IMPORTED_MODULE_34__.EntityMetaData),
|
|
45298
45297
|
/* harmony export */ EntityReferenceSet: () => (/* reexport safe */ _EntityReference__WEBPACK_IMPORTED_MODULE_35__.EntityReferenceSet),
|
|
@@ -85452,10 +85451,19 @@ class BriefcaseTxns extends BriefcaseNotificationHandler {
|
|
|
85452
85451
|
return _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.ipcAppChannels.txns;
|
|
85453
85452
|
}
|
|
85454
85453
|
/** Event raised after Txn validation or changeset application to indicate the set of changed elements.
|
|
85454
|
+
* Each [[TxnEntityChange]] exposes its class through `metadata.classFullName`. Use [[TxnEntityChanges.filter]] with `metadata.is` to match a class or one of its subclasses.
|
|
85455
|
+
* @example
|
|
85456
|
+
* ```ts
|
|
85457
|
+
* iModel.txns.onElementsChanged.addListener((changes) => {
|
|
85458
|
+
* for (const change of changes.filter({ includeMetadata: (metadata) => metadata.is("BisCore:GeometricElement") }))
|
|
85459
|
+
* updateElement(change.id);
|
|
85460
|
+
* });
|
|
85461
|
+
* ```
|
|
85455
85462
|
* @note If there are many changed elements in a single Txn, the notifications are sent in batches so this event *may be called multiple times* per Txn.
|
|
85456
85463
|
*/
|
|
85457
85464
|
onElementsChanged = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeEvent();
|
|
85458
85465
|
/** Event raised after Txn validation or changeset application to indicate the set of changed models.
|
|
85466
|
+
* Each [[TxnEntityChange]] exposes its class through `metadata.classFullName`. Use [[TxnEntityChanges.filter]] with `metadata.is` to match a class or one of its subclasses.
|
|
85459
85467
|
* @note If there are many changed models in a single Txn, the notifications are sent in batches so this event *may be called multiple times* per Txn.
|
|
85460
85468
|
*/
|
|
85461
85469
|
onModelsChanged = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeEvent();
|
|
@@ -88475,11 +88483,11 @@ class EmphasizeElements {
|
|
|
88475
88483
|
* @see [[Viewport.addFeatureOverrideProvider]]
|
|
88476
88484
|
*/
|
|
88477
88485
|
addFeatureOverrides(overrides, vp) {
|
|
88486
|
+
// Apply regardless of whether there are any emphasized/overridden elements for independent de-emphasis...
|
|
88487
|
+
if (undefined !== this._defaultAppearance)
|
|
88488
|
+
overrides.setDefaultOverrides(this._defaultAppearance);
|
|
88478
88489
|
const emphasizedElements = this.getEmphasizedElements(vp);
|
|
88479
88490
|
if (undefined !== emphasizedElements) {
|
|
88480
|
-
if (this._defaultAppearance !== undefined) {
|
|
88481
|
-
overrides.setDefaultOverrides(this._defaultAppearance);
|
|
88482
|
-
}
|
|
88483
88491
|
const appearance = this.wantEmphasis ? this._emphasizedAppearance : _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.FeatureAppearance.defaults;
|
|
88484
88492
|
// Avoid creating a new object per-element inside the loop
|
|
88485
88493
|
const args = { elementId: "", appearance };
|
|
@@ -88495,8 +88503,6 @@ class EmphasizeElements {
|
|
|
88495
88503
|
}
|
|
88496
88504
|
const overriddenElements = this.getOverriddenElements();
|
|
88497
88505
|
if (undefined !== overriddenElements) {
|
|
88498
|
-
if (undefined !== this._defaultAppearance)
|
|
88499
|
-
overrides.setDefaultOverrides(this._defaultAppearance);
|
|
88500
88506
|
// Avoid creating a new object per-element inside the loop
|
|
88501
88507
|
const args = { elementId: "", appearance: _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.FeatureAppearance.defaults };
|
|
88502
88508
|
for (const [key, ids] of overriddenElements) {
|
|
@@ -88563,7 +88569,10 @@ class EmphasizeElements {
|
|
|
88563
88569
|
return { overrideType, color };
|
|
88564
88570
|
}
|
|
88565
88571
|
/** Establish a default appearance to apply to elements without overrides. If changing the default appearance
|
|
88566
|
-
* without also calling overrideElements, an explicit refresh must be requested for the change to take effect.
|
|
88572
|
+
* without also calling emphasizeElements/overrideElements, an explicit refresh must be requested for the change to take effect.
|
|
88573
|
+
* @note Setting this to `undefined` to undo [[emphasizeElements]] or [[isolateElements]] leaves the always-drawn/isolated
|
|
88574
|
+
* element IDs in place but invisible to [[getEmphasizedElements]], [[getEmphasizedIsolatedElements]], and [[clearEmphasizedElements]].
|
|
88575
|
+
* Prefer [[clearEmphasizedElements]] or [[clearEmphasizedIsolatedElements]] to undo emphasis, which clear both together.
|
|
88567
88576
|
* @see [[Viewport.setFeatureOverrideProviderChanged]]
|
|
88568
88577
|
*/
|
|
88569
88578
|
get defaultAppearance() { return this._defaultAppearance; }
|
|
@@ -88922,7 +88931,9 @@ class EmphasizeElements {
|
|
|
88922
88931
|
return true;
|
|
88923
88932
|
}
|
|
88924
88933
|
/** @return true if provider is currently overriding the display of any elements. */
|
|
88925
|
-
isActive(vp) {
|
|
88934
|
+
isActive(vp) {
|
|
88935
|
+
return undefined !== this._defaultAppearance || undefined !== this.getNeverDrawnElements(vp) || undefined !== this.getAlwaysDrawnElements(vp) || undefined !== this.getOverriddenElements();
|
|
88936
|
+
}
|
|
88926
88937
|
/** Serialize to JSON representation.
|
|
88927
88938
|
* @see [[EmphasizeElements.fromJSON]]
|
|
88928
88939
|
*/
|
|
@@ -88968,8 +88979,12 @@ class EmphasizeElements {
|
|
|
88968
88979
|
changed = true;
|
|
88969
88980
|
if (undefined !== props.alwaysDrawnExclusiveEmphasized)
|
|
88970
88981
|
this._emphasizeIsolated = new Set(props.alwaysDrawnExclusiveEmphasized); // changed status determined by setAlwaysDrawnElements...
|
|
88971
|
-
if (undefined !== props.defaultAppearance)
|
|
88972
|
-
|
|
88982
|
+
if (undefined !== props.defaultAppearance) {
|
|
88983
|
+
const defaultAppearance = _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.FeatureAppearance.fromJSON(props.defaultAppearance);
|
|
88984
|
+
if (undefined === this._defaultAppearance || !this._defaultAppearance.equals(defaultAppearance))
|
|
88985
|
+
changed = true;
|
|
88986
|
+
this.defaultAppearance = defaultAppearance;
|
|
88987
|
+
}
|
|
88973
88988
|
if (props.unanimatedAppearance)
|
|
88974
88989
|
this.unanimatedAppearance = _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.FeatureAppearance.fromJSON(props.unanimatedAppearance);
|
|
88975
88990
|
if (undefined !== props.appearanceOverride) {
|
|
@@ -159358,8 +159373,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
159358
159373
|
/* harmony export */ WmsCapabilities: () => (/* binding */ WmsCapabilities),
|
|
159359
159374
|
/* harmony export */ WmsCapability: () => (/* binding */ WmsCapability)
|
|
159360
159375
|
/* harmony export */ });
|
|
159361
|
-
/* harmony import */ var wms_capabilities__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! wms-capabilities */ "../../common/temp/node_modules/.pnpm/wms-capabilities@0.
|
|
159362
|
-
/* harmony import */ var wms_capabilities__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(wms_capabilities__WEBPACK_IMPORTED_MODULE_0__);
|
|
159376
|
+
/* harmony import */ var wms_capabilities__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! wms-capabilities */ "../../common/temp/node_modules/.pnpm/wms-capabilities@0.6.0/node_modules/wms-capabilities/dist/wms-capabilities.mjs");
|
|
159363
159377
|
/* harmony import */ var _tile_internal__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../tile/internal */ "../../core/frontend/lib/esm/tile/internal.js");
|
|
159364
159378
|
/*---------------------------------------------------------------------------------------------
|
|
159365
159379
|
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
@@ -159511,7 +159525,7 @@ var WmsCapability;
|
|
|
159511
159525
|
this.title = _json.Title;
|
|
159512
159526
|
this.queryable = _json.queryable ? true : false;
|
|
159513
159527
|
this.cartoRange = rangeFromJSON(_json);
|
|
159514
|
-
this.ownCrs = capabilities.isVersion13 ? _json.CRS : _json.SRS;
|
|
159528
|
+
this.ownCrs = initArray(capabilities.isVersion13 ? _json.CRS : _json.SRS) ?? [];
|
|
159515
159529
|
const crs = new Set(this.ownCrs);
|
|
159516
159530
|
if (parent) {
|
|
159517
159531
|
getParentCrs(parent, crs);
|
|
@@ -159541,12 +159555,32 @@ class WmsCapabilities {
|
|
|
159541
159555
|
get featureInfoFormats() { return Array.isArray(this._json.Capability?.Request?.GetFeatureInfo?.Format) ? this._json.Capability?.Request?.GetFeatureInfo?.Format : undefined; }
|
|
159542
159556
|
constructor(_json) {
|
|
159543
159557
|
this._json = _json;
|
|
159544
|
-
|
|
159545
|
-
|
|
159546
|
-
this.
|
|
159547
|
-
|
|
159558
|
+
if (!_json || typeof _json !== "object" || (_json.Service === undefined && _json.Capability === undefined))
|
|
159559
|
+
throw new Error("Invalid WMS GetCapabilities response");
|
|
159560
|
+
this.version = typeof _json.version === "string" ? _json.version : undefined;
|
|
159561
|
+
this.isVersion13 = this.version !== undefined && this.version.startsWith("1.3");
|
|
159562
|
+
this.service = new WmsCapability.Service(_json.Service ?? {});
|
|
159563
|
+
if (_json.Capability?.Layer)
|
|
159548
159564
|
this.layer = new WmsCapability.Layer(_json.Capability.Layer, this);
|
|
159549
159565
|
}
|
|
159566
|
+
/** Parse a GetCapabilities XML response, returning undefined if it is not a valid WMS capabilities document. */
|
|
159567
|
+
static tryParse(xmlCapabilities) {
|
|
159568
|
+
// Validate the document is actually rooted at a WMS capabilities element before parsing:
|
|
159569
|
+
// wms-capabilities happily parses any root and recognizes direct Service/Capability children.
|
|
159570
|
+
// WMS 1.3.0 uses WMS_Capabilities; WMS 1.0.0-1.1.1 uses WMT_MS_Capabilities.
|
|
159571
|
+
const doc = new DOMParser().parseFromString(xmlCapabilities, "text/xml");
|
|
159572
|
+
const rootName = doc.documentElement?.localName;
|
|
159573
|
+
if (rootName !== "WMS_Capabilities" && rootName !== "WMT_MS_Capabilities")
|
|
159574
|
+
return undefined; // Not a WMS GetCapabilities document
|
|
159575
|
+
if (doc.getElementsByTagName("parsererror").length > 0)
|
|
159576
|
+
return undefined; // XML parse error (browsers embed a parsererror element)
|
|
159577
|
+
try {
|
|
159578
|
+
return new WmsCapabilities(new wms_capabilities__WEBPACK_IMPORTED_MODULE_0__["default"](undefined, DOMParser).parse(xmlCapabilities));
|
|
159579
|
+
}
|
|
159580
|
+
catch {
|
|
159581
|
+
return undefined; // Degenerate capabilities document
|
|
159582
|
+
}
|
|
159583
|
+
}
|
|
159550
159584
|
static async create(url, credentials, ignoreCache, queryParams) {
|
|
159551
159585
|
if (!ignoreCache) {
|
|
159552
159586
|
const cached = WmsCapabilities._capabilitiesCache.get(url);
|
|
@@ -159565,7 +159599,9 @@ class WmsCapabilities {
|
|
|
159565
159599
|
const xmlCapabilities = await _tile_internal__WEBPACK_IMPORTED_MODULE_1__.WmsUtilities.fetchXml(tmpUrl.toString(), credentials);
|
|
159566
159600
|
if (!xmlCapabilities)
|
|
159567
159601
|
return undefined;
|
|
159568
|
-
const capabilities =
|
|
159602
|
+
const capabilities = WmsCapabilities.tryParse(xmlCapabilities);
|
|
159603
|
+
if (capabilities === undefined)
|
|
159604
|
+
return undefined;
|
|
159569
159605
|
if (!credentials) {
|
|
159570
159606
|
// Avoid caching protected data
|
|
159571
159607
|
WmsCapabilities._capabilitiesCache.set(url, capabilities);
|
|
@@ -334979,6 +335015,1170 @@ var loadLanguages = instance.loadLanguages;
|
|
|
334979
335015
|
|
|
334980
335016
|
|
|
334981
335017
|
|
|
335018
|
+
/***/ },
|
|
335019
|
+
|
|
335020
|
+
/***/ "../../common/temp/node_modules/.pnpm/wms-capabilities@0.6.0/node_modules/wms-capabilities/dist/wms-capabilities.mjs"
|
|
335021
|
+
/*!***************************************************************************************************************************!*\
|
|
335022
|
+
!*** ../../common/temp/node_modules/.pnpm/wms-capabilities@0.6.0/node_modules/wms-capabilities/dist/wms-capabilities.mjs ***!
|
|
335023
|
+
\***************************************************************************************************************************/
|
|
335024
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
335025
|
+
|
|
335026
|
+
"use strict";
|
|
335027
|
+
__webpack_require__.r(__webpack_exports__);
|
|
335028
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
335029
|
+
/* harmony export */ "default": () => (/* binding */ WMS)
|
|
335030
|
+
/* harmony export */ });
|
|
335031
|
+
|
|
335032
|
+
/**
|
|
335033
|
+
* wms-capabilities @0.6.0
|
|
335034
|
+
* @description WMS service Capabilities > JSON, based on openlayers
|
|
335035
|
+
* @license BSD-2-Clause
|
|
335036
|
+
* @preserve
|
|
335037
|
+
*/
|
|
335038
|
+
|
|
335039
|
+
/**
|
|
335040
|
+
* Returns true if the specified value is not undefined.
|
|
335041
|
+
*
|
|
335042
|
+
* @param {?} val Variable to test.
|
|
335043
|
+
* @return {Boolean} Whether variable is defined.
|
|
335044
|
+
*/
|
|
335045
|
+
var isDef = (val) => val !== void 0;
|
|
335046
|
+
|
|
335047
|
+
/**
|
|
335048
|
+
* Adds a key-value pair to the object/map/hash if it doesn't exist yet.
|
|
335049
|
+
*
|
|
335050
|
+
* @param {Object.<K,V>} obj The object to which to add the key-value pair.
|
|
335051
|
+
* @param {String} key The key to add.
|
|
335052
|
+
* @param {V} value The value to add if the key wasn't present.
|
|
335053
|
+
* @return {V} The value of the entry at the end of the function.
|
|
335054
|
+
* @template K,V
|
|
335055
|
+
*/
|
|
335056
|
+
var setIfUndefined = (obj, key, value) => key in obj ? obj[key] : (obj[key] = value);
|
|
335057
|
+
|
|
335058
|
+
/**
|
|
335059
|
+
* @enum {Number}
|
|
335060
|
+
*/
|
|
335061
|
+
const NODE_TYPES = {
|
|
335062
|
+
ELEMENT: 1,
|
|
335063
|
+
ATTRIBUTE: 2,
|
|
335064
|
+
TEXT: 3,
|
|
335065
|
+
CDATA_SECTION: 4,
|
|
335066
|
+
ENTITY_REFERENCE: 5,
|
|
335067
|
+
ENTITY: 6,
|
|
335068
|
+
PROCESSING_INSTRUCTION: 7,
|
|
335069
|
+
COMMENT: 8,
|
|
335070
|
+
DOCUMENT: 9,
|
|
335071
|
+
DOCUMENT_TYPE: 10,
|
|
335072
|
+
DOCUMENT_FRAGMENT: 11,
|
|
335073
|
+
NOTATION: 12
|
|
335074
|
+
};
|
|
335075
|
+
|
|
335076
|
+
class XMLParser {
|
|
335077
|
+
/**
|
|
335078
|
+
* XML DOM parser
|
|
335079
|
+
* @constructor
|
|
335080
|
+
* @param {DOMParser} DOMParser
|
|
335081
|
+
*/
|
|
335082
|
+
constructor (DOMParser) {
|
|
335083
|
+
/**
|
|
335084
|
+
* @type {DOMParser}
|
|
335085
|
+
*/
|
|
335086
|
+
this._parser = new DOMParser();
|
|
335087
|
+
};
|
|
335088
|
+
|
|
335089
|
+
/**
|
|
335090
|
+
* @param {String} xmlstring
|
|
335091
|
+
* @return {Document}
|
|
335092
|
+
*/
|
|
335093
|
+
toDocument (xmlstring) {
|
|
335094
|
+
return this._parser.parseFromString(xmlstring, 'application/xml');
|
|
335095
|
+
}
|
|
335096
|
+
|
|
335097
|
+
/**
|
|
335098
|
+
* Recursively grab all text content of child nodes into a single string.
|
|
335099
|
+
* @param {Node} node Node.
|
|
335100
|
+
* @param {boolean} normalizeWhitespace Normalize whitespace: remove all line
|
|
335101
|
+
* breaks.
|
|
335102
|
+
* @return {string} All text content.
|
|
335103
|
+
* @api
|
|
335104
|
+
*/
|
|
335105
|
+
getAllTextContent (node, normalizeWhitespace) {
|
|
335106
|
+
return getAllTextContent(node, normalizeWhitespace).join('');
|
|
335107
|
+
}
|
|
335108
|
+
}
|
|
335109
|
+
|
|
335110
|
+
|
|
335111
|
+
/**
|
|
335112
|
+
* Recursively grab all text content of child nodes into a single string.
|
|
335113
|
+
* @param {Node} node Node.
|
|
335114
|
+
* @param {boolean} normalizeWhitespace Normalize whitespace: remove all line
|
|
335115
|
+
* breaks.
|
|
335116
|
+
* @return {string} All text content.
|
|
335117
|
+
* @api
|
|
335118
|
+
*/
|
|
335119
|
+
function getAllTextContent (node, normalizeWhitespace) {
|
|
335120
|
+
return getAllTextContentInternal(node, normalizeWhitespace, []).join('');
|
|
335121
|
+
}
|
|
335122
|
+
|
|
335123
|
+
|
|
335124
|
+
/**
|
|
335125
|
+
* @param {Node} node Node.
|
|
335126
|
+
* @param {boolean} normalizeWhitespace Normalize whitespace: remove all line
|
|
335127
|
+
* breaks.
|
|
335128
|
+
* @param {Array.<String|string>} accumulator Accumulator.
|
|
335129
|
+
* @private
|
|
335130
|
+
* @return {Array.<String|string>} Accumulator.
|
|
335131
|
+
*/
|
|
335132
|
+
function getAllTextContentInternal (node, normalizeWhitespace, accumulator) {
|
|
335133
|
+
if (node.nodeType === NODE_TYPES.CDATA_SECTION ||
|
|
335134
|
+
node.nodeType === NODE_TYPES.TEXT) {
|
|
335135
|
+
if (normalizeWhitespace) {
|
|
335136
|
+
// FIXME understand why goog.dom.getTextContent_ uses String here
|
|
335137
|
+
accumulator.push(String(node.nodeValue).replace(/(\r\n|\r|\n)/g, ''));
|
|
335138
|
+
} else {
|
|
335139
|
+
accumulator.push(node.nodeValue);
|
|
335140
|
+
}
|
|
335141
|
+
} else {
|
|
335142
|
+
var n;
|
|
335143
|
+
for (n = node.firstChild; n; n = n.nextSibling) {
|
|
335144
|
+
getAllTextContentInternal(n, normalizeWhitespace, accumulator);
|
|
335145
|
+
}
|
|
335146
|
+
}
|
|
335147
|
+
return accumulator;
|
|
335148
|
+
}
|
|
335149
|
+
|
|
335150
|
+
/**
|
|
335151
|
+
* @param {Object.<string, Object.<string, XMLParser.Parser>>} parsersNS
|
|
335152
|
+
* Parsers by namespace.
|
|
335153
|
+
* @param {Node} node Node.
|
|
335154
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335155
|
+
* @param {*=} bind The object to use as `this`.
|
|
335156
|
+
*/
|
|
335157
|
+
function parseNode (parsersNS, node, objectStack, bind) {
|
|
335158
|
+
for (var n = firstElementChild(node); n; n = nextElementSibling(n)) {
|
|
335159
|
+
var namespaceURI = n.namespaceURI || null;
|
|
335160
|
+
var parsers = parsersNS[namespaceURI];
|
|
335161
|
+
if (isDef(parsers)) {
|
|
335162
|
+
var parser = parsers[n.localName];
|
|
335163
|
+
if (isDef(parser)) {
|
|
335164
|
+
parser.call(bind, n, objectStack);
|
|
335165
|
+
}
|
|
335166
|
+
}
|
|
335167
|
+
}
|
|
335168
|
+
}
|
|
335169
|
+
|
|
335170
|
+
/**
|
|
335171
|
+
* Mostly for node.js
|
|
335172
|
+
* @param {Node} node
|
|
335173
|
+
* @return {Node}
|
|
335174
|
+
*/
|
|
335175
|
+
function firstElementChild (node) {
|
|
335176
|
+
let firstElementChild = node.firstElementChild || node.firstChild;
|
|
335177
|
+
while (firstElementChild && firstElementChild.nodeType !== NODE_TYPES.ELEMENT) {
|
|
335178
|
+
firstElementChild = firstElementChild.nextSibling;
|
|
335179
|
+
}
|
|
335180
|
+
return firstElementChild;
|
|
335181
|
+
}
|
|
335182
|
+
|
|
335183
|
+
/**
|
|
335184
|
+
* Mostly for node.js
|
|
335185
|
+
* @param {Node} node
|
|
335186
|
+
* @return {Node}
|
|
335187
|
+
*/
|
|
335188
|
+
function nextElementSibling (node) {
|
|
335189
|
+
let nextSibling = node.nextElementSibling || node.nextSibling;
|
|
335190
|
+
while (nextSibling && nextSibling.nodeType !== NODE_TYPES.ELEMENT) {
|
|
335191
|
+
nextSibling = nextSibling.nextSibling;
|
|
335192
|
+
}
|
|
335193
|
+
return nextSibling;
|
|
335194
|
+
}
|
|
335195
|
+
|
|
335196
|
+
/**
|
|
335197
|
+
* @param {Array.<string>} namespaceURIs Namespace URIs.
|
|
335198
|
+
* @param {Object.<string, XMLParser.Parser>} parsers Parsers.
|
|
335199
|
+
* @param {Object.<string, Object.<string, XMLParser.Parser>>=} opt_parsersNS
|
|
335200
|
+
* ParsersNS.
|
|
335201
|
+
* @return {Object.<string, Object.<string, XMLParser.Parser>>} Parsers NS.
|
|
335202
|
+
*/
|
|
335203
|
+
function makeParsersNS (namespaceURIs, parsers, opt_parsersNS) {
|
|
335204
|
+
return /** @type {Object.<string, Object.<string, XMLParser.Parser>>} */ (
|
|
335205
|
+
makeStructureNS(namespaceURIs, parsers, opt_parsersNS));
|
|
335206
|
+
}
|
|
335207
|
+
|
|
335208
|
+
/**
|
|
335209
|
+
* Creates a namespaced structure, using the same values for each namespace.
|
|
335210
|
+
* This can be used as a starting point for versioned parsers, when only a few
|
|
335211
|
+
* values are version specific.
|
|
335212
|
+
* @param {Array.<string>} namespaceURIs Namespace URIs.
|
|
335213
|
+
* @param {T} structure Structure.
|
|
335214
|
+
* @param {Object.<string, T>=} opt_structureNS Namespaced structure to add to.
|
|
335215
|
+
* @return {Object.<string, T>} Namespaced structure.
|
|
335216
|
+
* @template T
|
|
335217
|
+
*/
|
|
335218
|
+
function makeStructureNS (namespaceURIs, structure, opt_structureNS) {
|
|
335219
|
+
/**
|
|
335220
|
+
* @type {Object.<string, *>}
|
|
335221
|
+
*/
|
|
335222
|
+
var structureNS = isDef(opt_structureNS) ? opt_structureNS : {};
|
|
335223
|
+
var i, ii;
|
|
335224
|
+
for (i = 0, ii = namespaceURIs.length; i < ii; ++i) {
|
|
335225
|
+
structureNS[namespaceURIs[i]] = structure;
|
|
335226
|
+
}
|
|
335227
|
+
return structureNS;
|
|
335228
|
+
}
|
|
335229
|
+
|
|
335230
|
+
|
|
335231
|
+
/**
|
|
335232
|
+
* @param {function(this: T, Node, Array.<*>): *} valueReader Value reader.
|
|
335233
|
+
* @param {T=} opt_this The object to use as `this` in `valueReader`.
|
|
335234
|
+
* @return {Function} Parser.
|
|
335235
|
+
* @template T
|
|
335236
|
+
*/
|
|
335237
|
+
function makeArrayPusher (valueReader, opt_this) {
|
|
335238
|
+
return (
|
|
335239
|
+
/**
|
|
335240
|
+
* @param {Node} node Node.
|
|
335241
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335242
|
+
*/
|
|
335243
|
+
function(node, objectStack) {
|
|
335244
|
+
var value = valueReader.call(isDef(opt_this) ? opt_this : this,
|
|
335245
|
+
node, objectStack);
|
|
335246
|
+
if (isDef(value)) {
|
|
335247
|
+
var array = objectStack[objectStack.length - 1];
|
|
335248
|
+
array.push(value);
|
|
335249
|
+
}
|
|
335250
|
+
});
|
|
335251
|
+
}
|
|
335252
|
+
|
|
335253
|
+
/**
|
|
335254
|
+
* @param {Object} object Object.
|
|
335255
|
+
* @param {Object.<String, Object.<String, Function>>} parsersNS Parsers by namespace.
|
|
335256
|
+
* @param {Node} node Node.
|
|
335257
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335258
|
+
* @param {*=} bind The object to use as `this`.
|
|
335259
|
+
* @return {Object|undefined} Object.
|
|
335260
|
+
*/
|
|
335261
|
+
function pushParseAndPop (object, parsersNS, node, objectStack, bind) {
|
|
335262
|
+
objectStack.push(object);
|
|
335263
|
+
parseNode(parsersNS, node, objectStack, bind);
|
|
335264
|
+
return objectStack.pop();
|
|
335265
|
+
}
|
|
335266
|
+
|
|
335267
|
+
|
|
335268
|
+
/**
|
|
335269
|
+
* @param {function(this: T, Node, Array.<*>): *} valueReader Value reader.
|
|
335270
|
+
* @param {string=} opt_property Property.
|
|
335271
|
+
* @param {T=} opt_this The object to use as `this` in `valueReader`.
|
|
335272
|
+
* @return {XMLParser.Parser} Parser.
|
|
335273
|
+
* @template T
|
|
335274
|
+
*/
|
|
335275
|
+
function makeObjectPropertySetter (valueReader, opt_property, opt_this) {
|
|
335276
|
+
return (
|
|
335277
|
+
/**
|
|
335278
|
+
* @param {Node} node Node.
|
|
335279
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335280
|
+
*/
|
|
335281
|
+
function(node, objectStack) {
|
|
335282
|
+
let value = valueReader.call(isDef(opt_this) ? opt_this : this,
|
|
335283
|
+
node, objectStack);
|
|
335284
|
+
if (isDef(value)) {
|
|
335285
|
+
var object = /** @type {Object} */ (objectStack[objectStack.length - 1]);
|
|
335286
|
+
var property = isDef(opt_property) ? opt_property : node.localName;
|
|
335287
|
+
object[property] = value;
|
|
335288
|
+
}
|
|
335289
|
+
});
|
|
335290
|
+
}
|
|
335291
|
+
|
|
335292
|
+
|
|
335293
|
+
/**
|
|
335294
|
+
* @param {function(this: T, Node, Array.<*>): *} valueReader Value reader.
|
|
335295
|
+
* @param {string=} opt_property Property.
|
|
335296
|
+
* @param {T=} opt_this The object to use as `this` in `valueReader`.
|
|
335297
|
+
* @return {Function} Parser.
|
|
335298
|
+
* @template T
|
|
335299
|
+
*/
|
|
335300
|
+
function makeObjectPropertyPusher (valueReader, opt_property, opt_this) {
|
|
335301
|
+
return (
|
|
335302
|
+
/**
|
|
335303
|
+
* @param {Node} node Node.
|
|
335304
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335305
|
+
*/
|
|
335306
|
+
function(node, objectStack) {
|
|
335307
|
+
var value = valueReader.call(isDef(opt_this) ? opt_this : this,
|
|
335308
|
+
node, objectStack);
|
|
335309
|
+
|
|
335310
|
+
if (isDef(value)) {
|
|
335311
|
+
var object = /** @type {Object} */ (objectStack[objectStack.length - 1]);
|
|
335312
|
+
var property = isDef(opt_property) ? opt_property : node.localName;
|
|
335313
|
+
var array = setIfUndefined(object, property, []);
|
|
335314
|
+
array.push(value);
|
|
335315
|
+
}
|
|
335316
|
+
});
|
|
335317
|
+
}
|
|
335318
|
+
|
|
335319
|
+
/**
|
|
335320
|
+
* Make sure we trim BOM and NBSP
|
|
335321
|
+
* @type {RegExp}
|
|
335322
|
+
*/
|
|
335323
|
+
const TRIM_RE = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;
|
|
335324
|
+
|
|
335325
|
+
/**
|
|
335326
|
+
* @param {String} str
|
|
335327
|
+
* @return {String}
|
|
335328
|
+
*/
|
|
335329
|
+
function trim (str) {
|
|
335330
|
+
return str.replace(TRIM_RE, '');
|
|
335331
|
+
}
|
|
335332
|
+
|
|
335333
|
+
/**
|
|
335334
|
+
* @param {string} string String.
|
|
335335
|
+
* @return {boolean|undefined} Boolean.
|
|
335336
|
+
*/
|
|
335337
|
+
function readBooleanString (string) {
|
|
335338
|
+
const m = /^\s*(true|1)|(false|0)\s*$/.exec(string);
|
|
335339
|
+
if (m) {
|
|
335340
|
+
return isDef(m[1]) || false;
|
|
335341
|
+
} else {
|
|
335342
|
+
return undefined;
|
|
335343
|
+
}
|
|
335344
|
+
}
|
|
335345
|
+
|
|
335346
|
+
|
|
335347
|
+
/**
|
|
335348
|
+
* @param {Node} node Node.
|
|
335349
|
+
* @return {number|undefined} Decimal.
|
|
335350
|
+
*/
|
|
335351
|
+
function readDecimal (node) {
|
|
335352
|
+
return readDecimalString(getAllTextContent(node, false));
|
|
335353
|
+
}
|
|
335354
|
+
|
|
335355
|
+
|
|
335356
|
+
/**
|
|
335357
|
+
* @param {string} string String.
|
|
335358
|
+
* @return {number|undefined} Decimal.
|
|
335359
|
+
*/
|
|
335360
|
+
function readDecimalString (string) {
|
|
335361
|
+
// FIXME check spec
|
|
335362
|
+
const m = /^\s*([+\-]?\d*\.?\d+(?:e[+\-]?\d+)?)\s*$/i.exec(string);
|
|
335363
|
+
if (m) {
|
|
335364
|
+
return parseFloat(m[1]);
|
|
335365
|
+
} else {
|
|
335366
|
+
return undefined;
|
|
335367
|
+
}
|
|
335368
|
+
}
|
|
335369
|
+
|
|
335370
|
+
|
|
335371
|
+
/**
|
|
335372
|
+
* @param {Node} node Node.
|
|
335373
|
+
* @return {number|undefined} Non negative integer.
|
|
335374
|
+
*/
|
|
335375
|
+
function readNonNegativeInteger (node) {
|
|
335376
|
+
return readNonNegativeIntegerString(getAllTextContent(node, false));
|
|
335377
|
+
}
|
|
335378
|
+
|
|
335379
|
+
|
|
335380
|
+
/**
|
|
335381
|
+
* @param {string} string String.
|
|
335382
|
+
* @return {number|undefined} Non negative integer.
|
|
335383
|
+
*/
|
|
335384
|
+
function readNonNegativeIntegerString (string) {
|
|
335385
|
+
const m = /^\s*(\d+)\s*$/.exec(string);
|
|
335386
|
+
if (m) {
|
|
335387
|
+
return parseInt(m[1], 10);
|
|
335388
|
+
} else {
|
|
335389
|
+
return undefined;
|
|
335390
|
+
}
|
|
335391
|
+
}
|
|
335392
|
+
|
|
335393
|
+
|
|
335394
|
+
/**
|
|
335395
|
+
* @param {Node} node Node.
|
|
335396
|
+
* @return {string|undefined} String.
|
|
335397
|
+
*/
|
|
335398
|
+
function readString (node) {
|
|
335399
|
+
return trim(getAllTextContent(node, false));
|
|
335400
|
+
}
|
|
335401
|
+
|
|
335402
|
+
/**
|
|
335403
|
+
* @const
|
|
335404
|
+
* @type {string}
|
|
335405
|
+
*/
|
|
335406
|
+
const NAMESPACE_URI = 'http://www.w3.org/1999/xlink';
|
|
335407
|
+
|
|
335408
|
+
/**
|
|
335409
|
+
* @param {Node} node Node.
|
|
335410
|
+
* @return {Boolean|undefined} Boolean.
|
|
335411
|
+
*/
|
|
335412
|
+
function readHref (node) {
|
|
335413
|
+
return node.getAttributeNS(NAMESPACE_URI, 'href');
|
|
335414
|
+
}
|
|
335415
|
+
|
|
335416
|
+
/**
|
|
335417
|
+
* @param {Node} node Node.
|
|
335418
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335419
|
+
* @return {Object|undefined} Attribution object.
|
|
335420
|
+
*/
|
|
335421
|
+
function readAttribution(node, objectStack) {
|
|
335422
|
+
return pushParseAndPop({}, ATTRIBUTION_PARSERS, node, objectStack);
|
|
335423
|
+
}
|
|
335424
|
+
|
|
335425
|
+
|
|
335426
|
+
/**
|
|
335427
|
+
* @private
|
|
335428
|
+
* @param {Node} node Node.
|
|
335429
|
+
* @return {ol.Extent} Bounding box object.
|
|
335430
|
+
*/
|
|
335431
|
+
function readBoundingBoxExtent (node) {
|
|
335432
|
+
return [
|
|
335433
|
+
readDecimalString(node.getAttribute('minx')),
|
|
335434
|
+
readDecimalString(node.getAttribute('miny')),
|
|
335435
|
+
readDecimalString(node.getAttribute('maxx')),
|
|
335436
|
+
readDecimalString(node.getAttribute('maxy'))
|
|
335437
|
+
];
|
|
335438
|
+
}
|
|
335439
|
+
|
|
335440
|
+
/**
|
|
335441
|
+
* @private
|
|
335442
|
+
* @param {Node} node Node.
|
|
335443
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335444
|
+
* @return {Object} Bounding box object.
|
|
335445
|
+
*/
|
|
335446
|
+
function readBoundingBox (node, objectStack) {
|
|
335447
|
+
const extent = readBoundingBoxExtent(node);
|
|
335448
|
+
const resolutions = [
|
|
335449
|
+
readDecimalString(node.getAttribute('resx')),
|
|
335450
|
+
readDecimalString(node.getAttribute('resy'))
|
|
335451
|
+
];
|
|
335452
|
+
|
|
335453
|
+
return {
|
|
335454
|
+
'crs': node.getAttribute('CRS') || node.getAttribute('SRS'),
|
|
335455
|
+
extent, res: resolutions
|
|
335456
|
+
};
|
|
335457
|
+
}
|
|
335458
|
+
|
|
335459
|
+
/**
|
|
335460
|
+
* @private
|
|
335461
|
+
* @param {Node} node Node.
|
|
335462
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335463
|
+
* @return {ol.Extent|undefined} Bounding box object.
|
|
335464
|
+
*/
|
|
335465
|
+
function readLatLonBoundingBox (node, objectStack) {
|
|
335466
|
+
const extent = readBoundingBoxExtent(node);
|
|
335467
|
+
|
|
335468
|
+
if (!isDef(extent[0]) || !isDef(extent[1]) ||
|
|
335469
|
+
!isDef(extent[2]) || !isDef(extent[3])) {
|
|
335470
|
+
return undefined;
|
|
335471
|
+
}
|
|
335472
|
+
|
|
335473
|
+
return extent;
|
|
335474
|
+
}
|
|
335475
|
+
|
|
335476
|
+
|
|
335477
|
+
/**
|
|
335478
|
+
* @privat
|
|
335479
|
+
* @param {Node} node Node
|
|
335480
|
+
* @param {Arra.<Object>} objectStack Object stack
|
|
335481
|
+
* @return {Object}
|
|
335482
|
+
*/
|
|
335483
|
+
function readScaleHint (node, objectStack) {
|
|
335484
|
+
const min = parseFloat(node.getAttribute('min'));
|
|
335485
|
+
const max = parseFloat(node.getAttribute('max'));
|
|
335486
|
+
|
|
335487
|
+
return { min, max };
|
|
335488
|
+
}
|
|
335489
|
+
|
|
335490
|
+
|
|
335491
|
+
/**
|
|
335492
|
+
* @private
|
|
335493
|
+
* @param {Node} node Node.
|
|
335494
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335495
|
+
* @return {ol.Extent|undefined} Bounding box object.
|
|
335496
|
+
*/
|
|
335497
|
+
function readEXGeographicBoundingBox (node, objectStack) {
|
|
335498
|
+
const geographicBoundingBox = pushParseAndPop({},
|
|
335499
|
+
EX_GEOGRAPHIC_BOUNDING_BOX_PARSERS,
|
|
335500
|
+
node, objectStack);
|
|
335501
|
+
if (!isDef(geographicBoundingBox)) return undefined;
|
|
335502
|
+
|
|
335503
|
+
const westBoundLongitude = /** @type {number|undefined} */
|
|
335504
|
+
(geographicBoundingBox['westBoundLongitude']);
|
|
335505
|
+
const southBoundLatitude = /** @type {number|undefined} */
|
|
335506
|
+
(geographicBoundingBox['southBoundLatitude']);
|
|
335507
|
+
const eastBoundLongitude = /** @type {number|undefined} */
|
|
335508
|
+
(geographicBoundingBox['eastBoundLongitude']);
|
|
335509
|
+
const northBoundLatitude = /** @type {number|undefined} */
|
|
335510
|
+
(geographicBoundingBox['northBoundLatitude']);
|
|
335511
|
+
|
|
335512
|
+
if (!isDef(westBoundLongitude) || !isDef(southBoundLatitude) ||
|
|
335513
|
+
!isDef(eastBoundLongitude) || !isDef(northBoundLatitude)) {
|
|
335514
|
+
return undefined;
|
|
335515
|
+
}
|
|
335516
|
+
|
|
335517
|
+
return [
|
|
335518
|
+
westBoundLongitude, southBoundLatitude,
|
|
335519
|
+
eastBoundLongitude, northBoundLatitude
|
|
335520
|
+
];
|
|
335521
|
+
}
|
|
335522
|
+
|
|
335523
|
+
|
|
335524
|
+
/**
|
|
335525
|
+
* @param {Node} node Node.
|
|
335526
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335527
|
+
* @private
|
|
335528
|
+
* @return {Object|undefined} Capability object.
|
|
335529
|
+
*/
|
|
335530
|
+
function readCapability (node, objectStack) {
|
|
335531
|
+
return pushParseAndPop({}, CAPABILITY_PARSERS, node, objectStack);
|
|
335532
|
+
}
|
|
335533
|
+
|
|
335534
|
+
|
|
335535
|
+
/**
|
|
335536
|
+
* @param {Node} node Node.
|
|
335537
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335538
|
+
* @private
|
|
335539
|
+
* @return {Object|undefined} Service object.
|
|
335540
|
+
*/
|
|
335541
|
+
function readService (node, objectStack) {
|
|
335542
|
+
return pushParseAndPop({}, SERVICE_PARSERS, node, objectStack);
|
|
335543
|
+
}
|
|
335544
|
+
|
|
335545
|
+
|
|
335546
|
+
/**
|
|
335547
|
+
* @param {Node} node Node.
|
|
335548
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335549
|
+
* @private
|
|
335550
|
+
* @return {Object|undefined} Contact information object.
|
|
335551
|
+
*/
|
|
335552
|
+
function readContactInformation (node, objectStack) {
|
|
335553
|
+
return pushParseAndPop({}, CONTACT_INFORMATION_PARSERS,
|
|
335554
|
+
node, objectStack);
|
|
335555
|
+
}
|
|
335556
|
+
|
|
335557
|
+
|
|
335558
|
+
/**
|
|
335559
|
+
* @param {Node} node Node.
|
|
335560
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335561
|
+
* @private
|
|
335562
|
+
* @return {Object|undefined} Contact person object.
|
|
335563
|
+
*/
|
|
335564
|
+
function readContactPersonPrimary (node, objectStack) {
|
|
335565
|
+
return pushParseAndPop({}, CONTACT_PERSON_PARSERS,
|
|
335566
|
+
node, objectStack);
|
|
335567
|
+
}
|
|
335568
|
+
|
|
335569
|
+
|
|
335570
|
+
/**
|
|
335571
|
+
* @param {Node} node Node.
|
|
335572
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335573
|
+
* @private
|
|
335574
|
+
* @return {Object|undefined} Contact address object.
|
|
335575
|
+
*/
|
|
335576
|
+
function readContactAddress (node, objectStack) {
|
|
335577
|
+
return pushParseAndPop({}, CONTACT_ADDRESS_PARSERS,
|
|
335578
|
+
node, objectStack);
|
|
335579
|
+
}
|
|
335580
|
+
|
|
335581
|
+
|
|
335582
|
+
/**
|
|
335583
|
+
* @param {Node} node Node.
|
|
335584
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335585
|
+
* @private
|
|
335586
|
+
* @return {Array.<string>|undefined} Format array.
|
|
335587
|
+
*/
|
|
335588
|
+
function readException (node, objectStack) {
|
|
335589
|
+
return pushParseAndPop(
|
|
335590
|
+
[], EXCEPTION_PARSERS, node, objectStack);
|
|
335591
|
+
}
|
|
335592
|
+
|
|
335593
|
+
|
|
335594
|
+
/**
|
|
335595
|
+
* @param {Node} node Node.
|
|
335596
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335597
|
+
* @private
|
|
335598
|
+
* @return {Object|undefined} Layer object.
|
|
335599
|
+
*/
|
|
335600
|
+
function readCapabilityLayer (node, objectStack) {
|
|
335601
|
+
const queryable = readBooleanString(node.getAttribute('queryable'));
|
|
335602
|
+
return pushParseAndPop({
|
|
335603
|
+
queryable: isDef(queryable) ? queryable : false },
|
|
335604
|
+
LAYER_PARSERS, node, objectStack);
|
|
335605
|
+
}
|
|
335606
|
+
|
|
335607
|
+
|
|
335608
|
+
/**
|
|
335609
|
+
* @private
|
|
335610
|
+
* @param {Node} node Node.
|
|
335611
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335612
|
+
* @return {Object|undefined} Layer object.
|
|
335613
|
+
*/
|
|
335614
|
+
function readLayer (node, objectStack) {
|
|
335615
|
+
var parentLayerObject = /** @type {Object.<string,*>} */
|
|
335616
|
+
(objectStack[objectStack.length - 1]);
|
|
335617
|
+
|
|
335618
|
+
const layerObject = /** @type {Object.<string,*>} */
|
|
335619
|
+
(pushParseAndPop({}, LAYER_PARSERS,
|
|
335620
|
+
node, objectStack));
|
|
335621
|
+
|
|
335622
|
+
if (!isDef(layerObject)) return undefined;
|
|
335623
|
+
|
|
335624
|
+
let queryable = readBooleanString(node.getAttribute('queryable'));
|
|
335625
|
+
if (!isDef(queryable)) {
|
|
335626
|
+
queryable = parentLayerObject['queryable'];
|
|
335627
|
+
}
|
|
335628
|
+
layerObject['queryable'] = isDef(queryable) ? queryable : false;
|
|
335629
|
+
|
|
335630
|
+
let cascaded = readNonNegativeIntegerString(node.getAttribute('cascaded'));
|
|
335631
|
+
if (!isDef(cascaded)) {
|
|
335632
|
+
cascaded = parentLayerObject['cascaded'];
|
|
335633
|
+
}
|
|
335634
|
+
layerObject['cascaded'] = cascaded;
|
|
335635
|
+
|
|
335636
|
+
let opaque = readBooleanString(node.getAttribute('opaque'));
|
|
335637
|
+
if (!isDef(opaque)) {
|
|
335638
|
+
opaque = parentLayerObject['opaque'];
|
|
335639
|
+
}
|
|
335640
|
+
layerObject['opaque'] = isDef(opaque) ? opaque : false;
|
|
335641
|
+
|
|
335642
|
+
let noSubsets = readBooleanString(node.getAttribute('noSubsets'));
|
|
335643
|
+
if (!isDef(noSubsets)) {
|
|
335644
|
+
noSubsets = parentLayerObject['noSubsets'];
|
|
335645
|
+
}
|
|
335646
|
+
layerObject['noSubsets'] = isDef(noSubsets) ? noSubsets : false;
|
|
335647
|
+
|
|
335648
|
+
let fixedWidth = readDecimalString(node.getAttribute('fixedWidth'));
|
|
335649
|
+
if (!isDef(fixedWidth)) {
|
|
335650
|
+
fixedWidth = parentLayerObject['fixedWidth'];
|
|
335651
|
+
}
|
|
335652
|
+
layerObject['fixedWidth'] = fixedWidth;
|
|
335653
|
+
|
|
335654
|
+
let fixedHeight = readDecimalString(node.getAttribute('fixedHeight'));
|
|
335655
|
+
if (!isDef(fixedHeight)) {
|
|
335656
|
+
fixedHeight = parentLayerObject['fixedHeight'];
|
|
335657
|
+
}
|
|
335658
|
+
layerObject['fixedHeight'] = fixedHeight;
|
|
335659
|
+
|
|
335660
|
+
// See 7.2.4.8
|
|
335661
|
+
const addKeys = ['Style', 'CRS', 'AuthorityURL'];
|
|
335662
|
+
for (let i = 0, len = addKeys.length; i < len; i++) {
|
|
335663
|
+
const key = addKeys[i];
|
|
335664
|
+
const parentValue = parentLayerObject[key];
|
|
335665
|
+
if (isDef(parentValue)) {
|
|
335666
|
+
let childValue = setIfUndefined(layerObject, key, []);
|
|
335667
|
+
childValue = childValue.concat(parentValue);
|
|
335668
|
+
layerObject[key] = childValue;
|
|
335669
|
+
}
|
|
335670
|
+
}
|
|
335671
|
+
|
|
335672
|
+
const replaceKeys = ['EX_GeographicBoundingBox', 'BoundingBox', 'Dimension',
|
|
335673
|
+
'Attribution', 'MinScaleDenominator', 'MaxScaleDenominator'
|
|
335674
|
+
];
|
|
335675
|
+
for (let i = 0, len = replaceKeys.length; i < len; i++) {
|
|
335676
|
+
const key = replaceKeys[i];
|
|
335677
|
+
const childValue = layerObject[key];
|
|
335678
|
+
if (!isDef(childValue)) {
|
|
335679
|
+
const parentValue = parentLayerObject[key];
|
|
335680
|
+
layerObject[key] = parentValue;
|
|
335681
|
+
}
|
|
335682
|
+
}
|
|
335683
|
+
|
|
335684
|
+
return layerObject;
|
|
335685
|
+
}
|
|
335686
|
+
|
|
335687
|
+
|
|
335688
|
+
/**
|
|
335689
|
+
* @private
|
|
335690
|
+
* @param {Node} node Node.
|
|
335691
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335692
|
+
* @return {Object} Dimension object.
|
|
335693
|
+
*/
|
|
335694
|
+
function readDimension (node, objectStack) {
|
|
335695
|
+
return {
|
|
335696
|
+
'name': node.getAttribute('name'),
|
|
335697
|
+
'units': node.getAttribute('units'),
|
|
335698
|
+
'unitSymbol': node.getAttribute('unitSymbol'),
|
|
335699
|
+
'default': node.getAttribute('default'),
|
|
335700
|
+
'multipleValues': readBooleanString(node.getAttribute('multipleValues')),
|
|
335701
|
+
'nearestValue': readBooleanString(node.getAttribute('nearestValue')),
|
|
335702
|
+
'current': readBooleanString(node.getAttribute('current')),
|
|
335703
|
+
'values': readString(node)
|
|
335704
|
+
};
|
|
335705
|
+
}
|
|
335706
|
+
|
|
335707
|
+
|
|
335708
|
+
/**
|
|
335709
|
+
* @private
|
|
335710
|
+
* @param {Node} node Node.
|
|
335711
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335712
|
+
* @return {Object|undefined} Online resource object.
|
|
335713
|
+
*/
|
|
335714
|
+
function readFormatOnlineresource (node, objectStack) {
|
|
335715
|
+
return pushParseAndPop({}, FORMAT_ONLINERESOURCE_PARSERS,
|
|
335716
|
+
node, objectStack);
|
|
335717
|
+
}
|
|
335718
|
+
|
|
335719
|
+
|
|
335720
|
+
/**
|
|
335721
|
+
* @private
|
|
335722
|
+
* @param {Node} node Node.
|
|
335723
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335724
|
+
* @return {Object|undefined} Request object.
|
|
335725
|
+
*/
|
|
335726
|
+
function readRequest (node, objectStack) {
|
|
335727
|
+
return pushParseAndPop({}, REQUEST_PARSERS, node, objectStack);
|
|
335728
|
+
}
|
|
335729
|
+
|
|
335730
|
+
|
|
335731
|
+
/**
|
|
335732
|
+
* @private
|
|
335733
|
+
* @param {Node} node Node.
|
|
335734
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335735
|
+
* @return {Object|undefined} DCP type object.
|
|
335736
|
+
*/
|
|
335737
|
+
function readDCPType (node, objectStack) {
|
|
335738
|
+
return pushParseAndPop({}, DCPTYPE_PARSERS, node, objectStack);
|
|
335739
|
+
}
|
|
335740
|
+
|
|
335741
|
+
|
|
335742
|
+
/**
|
|
335743
|
+
* @private
|
|
335744
|
+
* @param {Node} node Node.
|
|
335745
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335746
|
+
* @return {Object|undefined} HTTP object.
|
|
335747
|
+
*/
|
|
335748
|
+
function readHTTP (node, objectStack) {
|
|
335749
|
+
return pushParseAndPop({}, HTTP_PARSERS, node, objectStack);
|
|
335750
|
+
}
|
|
335751
|
+
|
|
335752
|
+
|
|
335753
|
+
/**
|
|
335754
|
+
* @private
|
|
335755
|
+
* @param {Node} node Node.
|
|
335756
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335757
|
+
* @return {Object|undefined} Operation type object.
|
|
335758
|
+
*/
|
|
335759
|
+
function readOperationType (node, objectStack) {
|
|
335760
|
+
return pushParseAndPop({}, OPERATIONTYPE_PARSERS, node, objectStack);
|
|
335761
|
+
}
|
|
335762
|
+
|
|
335763
|
+
|
|
335764
|
+
/**
|
|
335765
|
+
* @private
|
|
335766
|
+
* @param {Node} node Node.
|
|
335767
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335768
|
+
* @return {Object|undefined} Online resource object.
|
|
335769
|
+
*/
|
|
335770
|
+
function readSizedFormatOnlineresource (node, objectStack) {
|
|
335771
|
+
var formatOnlineresource = readFormatOnlineresource(node, objectStack);
|
|
335772
|
+
if (isDef(formatOnlineresource)) {
|
|
335773
|
+
const size = [
|
|
335774
|
+
readNonNegativeIntegerString(node.getAttribute('width')),
|
|
335775
|
+
readNonNegativeIntegerString(node.getAttribute('height'))
|
|
335776
|
+
];
|
|
335777
|
+
formatOnlineresource['size'] = size;
|
|
335778
|
+
return formatOnlineresource;
|
|
335779
|
+
}
|
|
335780
|
+
return undefined;
|
|
335781
|
+
}
|
|
335782
|
+
|
|
335783
|
+
|
|
335784
|
+
/**
|
|
335785
|
+
* @private
|
|
335786
|
+
* @param {Node} node Node.
|
|
335787
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335788
|
+
* @return {Object|undefined} Authority URL object.
|
|
335789
|
+
*/
|
|
335790
|
+
function readAuthorityURL (node, objectStack) {
|
|
335791
|
+
var authorityObject = readFormatOnlineresource(node, objectStack);
|
|
335792
|
+
if (isDef(authorityObject)) {
|
|
335793
|
+
authorityObject['name'] = node.getAttribute('name');
|
|
335794
|
+
return authorityObject;
|
|
335795
|
+
}
|
|
335796
|
+
return undefined;
|
|
335797
|
+
}
|
|
335798
|
+
|
|
335799
|
+
|
|
335800
|
+
/**
|
|
335801
|
+
* @private
|
|
335802
|
+
* @param {Node} node Node.
|
|
335803
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335804
|
+
* @return {Object|undefined} Metadata URL object.
|
|
335805
|
+
*/
|
|
335806
|
+
function readMetadataURL (node, objectStack) {
|
|
335807
|
+
var metadataObject = readFormatOnlineresource(node, objectStack);
|
|
335808
|
+
if (isDef(metadataObject)) {
|
|
335809
|
+
metadataObject['type'] = node.getAttribute('type');
|
|
335810
|
+
return metadataObject;
|
|
335811
|
+
}
|
|
335812
|
+
return undefined;
|
|
335813
|
+
}
|
|
335814
|
+
|
|
335815
|
+
|
|
335816
|
+
/**
|
|
335817
|
+
* @private
|
|
335818
|
+
* @param {Node} node Node.
|
|
335819
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335820
|
+
* @return {Object|undefined} Style object.
|
|
335821
|
+
*/
|
|
335822
|
+
function readStyle (node, objectStack) {
|
|
335823
|
+
return pushParseAndPop({}, STYLE_PARSERS, node, objectStack);
|
|
335824
|
+
}
|
|
335825
|
+
|
|
335826
|
+
|
|
335827
|
+
/**
|
|
335828
|
+
* @private
|
|
335829
|
+
* @param {Node} node Node.
|
|
335830
|
+
* @param {Array.<*>} objectStack Object stack.
|
|
335831
|
+
* @return {Array.<string>|undefined} Keyword list.
|
|
335832
|
+
*/
|
|
335833
|
+
function readKeywordList (node, objectStack) {
|
|
335834
|
+
return pushParseAndPop(
|
|
335835
|
+
[], KEYWORDLIST_PARSERS, node, objectStack);
|
|
335836
|
+
}
|
|
335837
|
+
|
|
335838
|
+
|
|
335839
|
+
/**
|
|
335840
|
+
* @const
|
|
335841
|
+
* @type {Array.<string>}
|
|
335842
|
+
*/
|
|
335843
|
+
const NAMESPACE_URIS = [
|
|
335844
|
+
null,
|
|
335845
|
+
'http://www.opengis.net/wms'
|
|
335846
|
+
];
|
|
335847
|
+
|
|
335848
|
+
/**
|
|
335849
|
+
* @const
|
|
335850
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
335851
|
+
* @private
|
|
335852
|
+
*/
|
|
335853
|
+
const PARSERS = makeParsersNS(
|
|
335854
|
+
NAMESPACE_URIS, {
|
|
335855
|
+
'Service': makeObjectPropertySetter(readService),
|
|
335856
|
+
'Capability': makeObjectPropertySetter(readCapability)
|
|
335857
|
+
});
|
|
335858
|
+
|
|
335859
|
+
/**
|
|
335860
|
+
* @const
|
|
335861
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
335862
|
+
* @private
|
|
335863
|
+
*/
|
|
335864
|
+
const CAPABILITY_PARSERS = makeParsersNS(
|
|
335865
|
+
NAMESPACE_URIS, {
|
|
335866
|
+
'Request': makeObjectPropertySetter(readRequest),
|
|
335867
|
+
'Exception': makeObjectPropertySetter(readException),
|
|
335868
|
+
'Layer': makeObjectPropertySetter(readCapabilityLayer)
|
|
335869
|
+
});
|
|
335870
|
+
|
|
335871
|
+
/**
|
|
335872
|
+
* @const
|
|
335873
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
335874
|
+
* @private
|
|
335875
|
+
*/
|
|
335876
|
+
const SERVICE_PARSERS = makeParsersNS(
|
|
335877
|
+
NAMESPACE_URIS, {
|
|
335878
|
+
'Name': makeObjectPropertySetter(readString),
|
|
335879
|
+
'Title': makeObjectPropertySetter(readString),
|
|
335880
|
+
'Abstract': makeObjectPropertySetter(readString),
|
|
335881
|
+
'KeywordList': makeObjectPropertySetter(readKeywordList),
|
|
335882
|
+
'OnlineResource': makeObjectPropertySetter(readHref),
|
|
335883
|
+
'ContactInformation': makeObjectPropertySetter(readContactInformation),
|
|
335884
|
+
'Fees': makeObjectPropertySetter(readString),
|
|
335885
|
+
'AccessConstraints': makeObjectPropertySetter(readString),
|
|
335886
|
+
'LayerLimit': makeObjectPropertySetter(readNonNegativeInteger),
|
|
335887
|
+
'MaxWidth': makeObjectPropertySetter(readNonNegativeInteger),
|
|
335888
|
+
'MaxHeight': makeObjectPropertySetter(readNonNegativeInteger)
|
|
335889
|
+
});
|
|
335890
|
+
|
|
335891
|
+
/**
|
|
335892
|
+
* @const
|
|
335893
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
335894
|
+
* @private
|
|
335895
|
+
*/
|
|
335896
|
+
const CONTACT_INFORMATION_PARSERS = makeParsersNS(
|
|
335897
|
+
NAMESPACE_URIS, {
|
|
335898
|
+
'ContactPersonPrimary': makeObjectPropertySetter(readContactPersonPrimary),
|
|
335899
|
+
'ContactPosition': makeObjectPropertySetter(readString),
|
|
335900
|
+
'ContactAddress': makeObjectPropertySetter(readContactAddress),
|
|
335901
|
+
'ContactVoiceTelephone': makeObjectPropertySetter(readString),
|
|
335902
|
+
'ContactFacsimileTelephone': makeObjectPropertySetter(readString),
|
|
335903
|
+
'ContactElectronicMailAddress': makeObjectPropertySetter(readString)
|
|
335904
|
+
});
|
|
335905
|
+
|
|
335906
|
+
/**
|
|
335907
|
+
* @const
|
|
335908
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
335909
|
+
* @private
|
|
335910
|
+
*/
|
|
335911
|
+
const CONTACT_PERSON_PARSERS = makeParsersNS(
|
|
335912
|
+
NAMESPACE_URIS, {
|
|
335913
|
+
'ContactPerson': makeObjectPropertySetter(readString),
|
|
335914
|
+
'ContactOrganization': makeObjectPropertySetter(readString)
|
|
335915
|
+
});
|
|
335916
|
+
|
|
335917
|
+
|
|
335918
|
+
/**
|
|
335919
|
+
* @const
|
|
335920
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
335921
|
+
* @private
|
|
335922
|
+
*/
|
|
335923
|
+
const CONTACT_ADDRESS_PARSERS = makeParsersNS(
|
|
335924
|
+
NAMESPACE_URIS, {
|
|
335925
|
+
'AddressType': makeObjectPropertySetter(readString),
|
|
335926
|
+
'Address': makeObjectPropertySetter(readString),
|
|
335927
|
+
'City': makeObjectPropertySetter(readString),
|
|
335928
|
+
'StateOrProvince': makeObjectPropertySetter(readString),
|
|
335929
|
+
'PostCode': makeObjectPropertySetter(readString),
|
|
335930
|
+
'Country': makeObjectPropertySetter(readString)
|
|
335931
|
+
});
|
|
335932
|
+
|
|
335933
|
+
|
|
335934
|
+
/**
|
|
335935
|
+
* @const
|
|
335936
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
335937
|
+
* @private
|
|
335938
|
+
*/
|
|
335939
|
+
const EXCEPTION_PARSERS = makeParsersNS(
|
|
335940
|
+
NAMESPACE_URIS, {
|
|
335941
|
+
'Format': makeArrayPusher(readString)
|
|
335942
|
+
});
|
|
335943
|
+
|
|
335944
|
+
|
|
335945
|
+
/**
|
|
335946
|
+
* @const
|
|
335947
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
335948
|
+
* @private
|
|
335949
|
+
*/
|
|
335950
|
+
const LAYER_PARSERS = makeParsersNS(
|
|
335951
|
+
NAMESPACE_URIS, {
|
|
335952
|
+
'Name': makeObjectPropertySetter(readString),
|
|
335953
|
+
'Title': makeObjectPropertySetter(readString),
|
|
335954
|
+
'Abstract': makeObjectPropertySetter(readString),
|
|
335955
|
+
'KeywordList': makeObjectPropertySetter(readKeywordList),
|
|
335956
|
+
'CRS': makeObjectPropertyPusher(readString),
|
|
335957
|
+
'SRS': makeObjectPropertyPusher(readString),
|
|
335958
|
+
'EX_GeographicBoundingBox': makeObjectPropertySetter(readEXGeographicBoundingBox),
|
|
335959
|
+
'LatLonBoundingBox': makeObjectPropertySetter(readLatLonBoundingBox),
|
|
335960
|
+
'BoundingBox': makeObjectPropertyPusher(readBoundingBox),
|
|
335961
|
+
'Dimension': makeObjectPropertyPusher(readDimension),
|
|
335962
|
+
'Attribution': makeObjectPropertySetter(readAttribution),
|
|
335963
|
+
'AuthorityURL': makeObjectPropertyPusher(readAuthorityURL),
|
|
335964
|
+
'Identifier': makeObjectPropertyPusher(readString),
|
|
335965
|
+
'MetadataURL': makeObjectPropertyPusher(readMetadataURL),
|
|
335966
|
+
'DataURL': makeObjectPropertyPusher(readFormatOnlineresource),
|
|
335967
|
+
'FeatureListURL': makeObjectPropertyPusher(readFormatOnlineresource),
|
|
335968
|
+
'Style': makeObjectPropertyPusher(readStyle),
|
|
335969
|
+
'MinScaleDenominator': makeObjectPropertySetter(readDecimal),
|
|
335970
|
+
'MaxScaleDenominator': makeObjectPropertySetter(readDecimal),
|
|
335971
|
+
'ScaleHint': makeObjectPropertySetter(readScaleHint),
|
|
335972
|
+
'Layer': makeObjectPropertyPusher(readLayer)
|
|
335973
|
+
});
|
|
335974
|
+
|
|
335975
|
+
|
|
335976
|
+
/**
|
|
335977
|
+
* @const
|
|
335978
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
335979
|
+
* @private
|
|
335980
|
+
*/
|
|
335981
|
+
const ATTRIBUTION_PARSERS = makeParsersNS(
|
|
335982
|
+
NAMESPACE_URIS, {
|
|
335983
|
+
'Title': makeObjectPropertySetter(readString),
|
|
335984
|
+
'OnlineResource': makeObjectPropertySetter(readHref),
|
|
335985
|
+
'LogoURL': makeObjectPropertySetter(readSizedFormatOnlineresource)
|
|
335986
|
+
});
|
|
335987
|
+
|
|
335988
|
+
|
|
335989
|
+
/**
|
|
335990
|
+
* @const
|
|
335991
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
335992
|
+
* @private
|
|
335993
|
+
*/
|
|
335994
|
+
const EX_GEOGRAPHIC_BOUNDING_BOX_PARSERS =
|
|
335995
|
+
makeParsersNS(NAMESPACE_URIS, {
|
|
335996
|
+
'westBoundLongitude': makeObjectPropertySetter(readDecimal),
|
|
335997
|
+
'eastBoundLongitude': makeObjectPropertySetter(readDecimal),
|
|
335998
|
+
'southBoundLatitude': makeObjectPropertySetter(readDecimal),
|
|
335999
|
+
'northBoundLatitude': makeObjectPropertySetter(readDecimal)
|
|
336000
|
+
});
|
|
336001
|
+
|
|
336002
|
+
|
|
336003
|
+
/**
|
|
336004
|
+
* @const
|
|
336005
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
336006
|
+
* @private
|
|
336007
|
+
*/
|
|
336008
|
+
const REQUEST_PARSERS = makeParsersNS(
|
|
336009
|
+
NAMESPACE_URIS, {
|
|
336010
|
+
'GetCapabilities': makeObjectPropertySetter(
|
|
336011
|
+
readOperationType),
|
|
336012
|
+
'GetMap': makeObjectPropertySetter(
|
|
336013
|
+
readOperationType),
|
|
336014
|
+
'GetFeatureInfo': makeObjectPropertySetter(
|
|
336015
|
+
readOperationType)
|
|
336016
|
+
});
|
|
336017
|
+
|
|
336018
|
+
|
|
336019
|
+
/**
|
|
336020
|
+
* @const
|
|
336021
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
336022
|
+
* @private
|
|
336023
|
+
*/
|
|
336024
|
+
const OPERATIONTYPE_PARSERS = makeParsersNS(
|
|
336025
|
+
NAMESPACE_URIS, {
|
|
336026
|
+
'Format': makeObjectPropertyPusher(readString),
|
|
336027
|
+
'DCPType': makeObjectPropertyPusher(
|
|
336028
|
+
readDCPType)
|
|
336029
|
+
});
|
|
336030
|
+
|
|
336031
|
+
|
|
336032
|
+
/**
|
|
336033
|
+
* @const
|
|
336034
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
336035
|
+
* @private
|
|
336036
|
+
*/
|
|
336037
|
+
const DCPTYPE_PARSERS = makeParsersNS(
|
|
336038
|
+
NAMESPACE_URIS, {
|
|
336039
|
+
'HTTP': makeObjectPropertySetter(
|
|
336040
|
+
readHTTP)
|
|
336041
|
+
});
|
|
336042
|
+
|
|
336043
|
+
|
|
336044
|
+
/**
|
|
336045
|
+
* @const
|
|
336046
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
336047
|
+
* @private
|
|
336048
|
+
*/
|
|
336049
|
+
const HTTP_PARSERS = makeParsersNS(
|
|
336050
|
+
NAMESPACE_URIS, {
|
|
336051
|
+
'Get': makeObjectPropertySetter(
|
|
336052
|
+
readFormatOnlineresource),
|
|
336053
|
+
'Post': makeObjectPropertySetter(
|
|
336054
|
+
readFormatOnlineresource)
|
|
336055
|
+
});
|
|
336056
|
+
|
|
336057
|
+
|
|
336058
|
+
/**
|
|
336059
|
+
* @const
|
|
336060
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
336061
|
+
* @private
|
|
336062
|
+
*/
|
|
336063
|
+
const STYLE_PARSERS = makeParsersNS(
|
|
336064
|
+
NAMESPACE_URIS, {
|
|
336065
|
+
'Name': makeObjectPropertySetter(readString),
|
|
336066
|
+
'Title': makeObjectPropertySetter(readString),
|
|
336067
|
+
'Abstract': makeObjectPropertySetter(readString),
|
|
336068
|
+
'LegendURL': makeObjectPropertyPusher(readSizedFormatOnlineresource),
|
|
336069
|
+
'StyleSheetURL': makeObjectPropertySetter(readFormatOnlineresource),
|
|
336070
|
+
'StyleURL': makeObjectPropertySetter(readFormatOnlineresource)
|
|
336071
|
+
});
|
|
336072
|
+
|
|
336073
|
+
|
|
336074
|
+
/**
|
|
336075
|
+
* @const
|
|
336076
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
336077
|
+
* @private
|
|
336078
|
+
*/
|
|
336079
|
+
const FORMAT_ONLINERESOURCE_PARSERS = makeParsersNS(
|
|
336080
|
+
NAMESPACE_URIS, {
|
|
336081
|
+
'Format': makeObjectPropertySetter(readString),
|
|
336082
|
+
'OnlineResource': makeObjectPropertySetter(readHref)
|
|
336083
|
+
});
|
|
336084
|
+
|
|
336085
|
+
|
|
336086
|
+
/**
|
|
336087
|
+
* @const
|
|
336088
|
+
* @type {Object.<string, Object.<string, XMLParser.Parser>>}
|
|
336089
|
+
* @private
|
|
336090
|
+
*/
|
|
336091
|
+
const KEYWORDLIST_PARSERS = makeParsersNS(
|
|
336092
|
+
NAMESPACE_URIS, {
|
|
336093
|
+
'Keyword': makeArrayPusher(readString)
|
|
336094
|
+
});
|
|
336095
|
+
|
|
336096
|
+
class WMS {
|
|
336097
|
+
/**
|
|
336098
|
+
* WMS Capabilities parser
|
|
336099
|
+
*
|
|
336100
|
+
* @param {String=} xmlString
|
|
336101
|
+
* @constructor
|
|
336102
|
+
*/
|
|
336103
|
+
constructor(xmlString, DOMParser) {
|
|
336104
|
+
if (!DOMParser && typeof window !== 'undefined') {
|
|
336105
|
+
DOMParser = window.DOMParser;
|
|
336106
|
+
}
|
|
336107
|
+
|
|
336108
|
+
/**
|
|
336109
|
+
* @type {String}
|
|
336110
|
+
*/
|
|
336111
|
+
this.version = undefined;
|
|
336112
|
+
|
|
336113
|
+
/**
|
|
336114
|
+
* @type {XMLParser}
|
|
336115
|
+
*/
|
|
336116
|
+
this._parser = new XMLParser(DOMParser);
|
|
336117
|
+
|
|
336118
|
+
/**
|
|
336119
|
+
* @type {String=}
|
|
336120
|
+
*/
|
|
336121
|
+
this._data = xmlString;
|
|
336122
|
+
}
|
|
336123
|
+
|
|
336124
|
+
|
|
336125
|
+
/**
|
|
336126
|
+
* @param {String} xmlString
|
|
336127
|
+
* @return {WMS}
|
|
336128
|
+
*/
|
|
336129
|
+
data (xmlString) {
|
|
336130
|
+
this._data = xmlString;
|
|
336131
|
+
return this;
|
|
336132
|
+
}
|
|
336133
|
+
|
|
336134
|
+
/**
|
|
336135
|
+
* @param {String=} xmlString
|
|
336136
|
+
* @return {Object|null}
|
|
336137
|
+
*/
|
|
336138
|
+
toJSON (xmlString) {
|
|
336139
|
+
xmlString = xmlString || this._data;
|
|
336140
|
+
return this.parse(xmlString);
|
|
336141
|
+
}
|
|
336142
|
+
|
|
336143
|
+
/**
|
|
336144
|
+
* @return {String} xml
|
|
336145
|
+
* @return {Object|null}
|
|
336146
|
+
*/
|
|
336147
|
+
parse (xmlString) {
|
|
336148
|
+
return this.readFromDocument(this._parser.toDocument(xmlString));
|
|
336149
|
+
}
|
|
336150
|
+
|
|
336151
|
+
/**
|
|
336152
|
+
* @param {Document} doc
|
|
336153
|
+
* @return {Object|null}
|
|
336154
|
+
*/
|
|
336155
|
+
readFromDocument (doc) {
|
|
336156
|
+
for (let node = doc.firstChild; node; node = node.nextSibling) {
|
|
336157
|
+
if (node.nodeType == NODE_TYPES.ELEMENT) {
|
|
336158
|
+
return this.readFromNode(node);
|
|
336159
|
+
}
|
|
336160
|
+
}
|
|
336161
|
+
return null;
|
|
336162
|
+
}
|
|
336163
|
+
|
|
336164
|
+
/**
|
|
336165
|
+
* @param {DOMNode} node
|
|
336166
|
+
* @return {Object}
|
|
336167
|
+
*/
|
|
336168
|
+
readFromNode (node) {
|
|
336169
|
+
this.version = node.getAttribute('version');
|
|
336170
|
+
const wmsCapabilityObject = pushParseAndPop({
|
|
336171
|
+
'version': this.version
|
|
336172
|
+
}, PARSERS, node, []);
|
|
336173
|
+
|
|
336174
|
+
return wmsCapabilityObject || null;
|
|
336175
|
+
}
|
|
336176
|
+
}
|
|
336177
|
+
|
|
336178
|
+
|
|
336179
|
+
//# sourceMappingURL=wms-capabilities.mjs.map
|
|
336180
|
+
|
|
336181
|
+
|
|
334982
336182
|
/***/ },
|
|
334983
336183
|
|
|
334984
336184
|
/***/ "../../core/frontend/package.json"
|
|
@@ -334988,7 +336188,7 @@ var loadLanguages = instance.loadLanguages;
|
|
|
334988
336188
|
(module) {
|
|
334989
336189
|
|
|
334990
336190
|
"use strict";
|
|
334991
|
-
module.exports = /*#__PURE__*/JSON.parse('{"name":"@itwin/core-frontend","version":"5.13.0-dev.
|
|
336191
|
+
module.exports = /*#__PURE__*/JSON.parse('{"name":"@itwin/core-frontend","version":"5.13.0-dev.20","description":"iTwin.js frontend components","main":"lib/cjs/core-frontend.js","module":"lib/esm/core-frontend.js","typings":"lib/cjs/core-frontend","license":"MIT","scripts":{"build":"npm run -s copy:public && npm run -s build:cjs && npm run -s build:esm && npm run -s build:workers && npm run -s copy:draco","build:cjs":"npm run -s copy:js:cjs && tsc 1>&2 --outDir lib/cjs","build:esm":"npm run -s copy:js:esm && tsc 1>&2 --module ES2022 --outDir lib/esm","clean":"rimraf -g lib .rush/temp/package-deps*.json","copy:public":"cpx \\"./src/public/**/*\\" ./lib/public","copy:js:cjs":"cpx \\"./src/**/*.js\\" ./lib/cjs","copy:js:esm":"cpx \\"./src/**/*.js\\" ./lib/esm","copy:draco":"cpx \\"./node_modules/@loaders.gl/draco/dist/libs/*\\" ./lib/public/scripts","docs":"betools docs --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/map/*.d.ts,**/tile/*.d.ts,**/*-css.ts && npm run -s extract","extract":"betools extract --fileExt=ts --extractFrom=./src/test/example-code --recursive --out=../../generated-docs/extract","extract-api":"betools extract-api --entry=core-frontend && npm run extract-extension-api","extract-extension-api":"eslint --no-inline-config -c extraction.eslint.config.js \\"./src/**/*.ts\\" 1>&2","lint":"eslint \\"./src/**/*.ts\\" 1>&2","lint-fix":"eslint --fix -f visualstudio \\"./src/**/*.ts\\" 1>&2","lint-deprecation":"eslint --fix -f visualstudio --no-inline-config -c ../../common/config/eslint/eslint.config.deprecation-policy.js \\"./src/**/*.ts\\"","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run build:test-worker && vitest --run","cover":"npm run build:test-worker && vitest --run","build:test-worker":"vite build --config ./src/test/worker/vite.config.mts 1>&2","build:workers":"rimraf lib/workers/webpack && vite build --config ./src/workers/ImdlParser/vite.config.mts 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core.git","directory":"core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*"},"//devDependencies":["NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install","NOTE: All tools used by scripts in this package must be listed as devDependencies"],"devDependencies":{"@bentley/aec-units-schema":"^1.0.3","@bentley/formats-schema":"^1.0.0","@bentley/units-schema":"^1.0.11","@itwin/appui-abstract":"workspace:*","@itwin/build-tools":"workspace:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*","@itwin/object-storage-core":"^3.0.4","@itwin/eslint-plugin":"^6.0.0","@types/node":"~20.17.0","@types/sinon":"^17.0.2","@vitest/browser-playwright":"^4.1.10","@vitest/coverage-v8":"^4.1.10","cpx2":"^8.0.0","eslint":"^9.31.0","playwright":"~1.56.1","rimraf":"^6.0.1","sinon":"^17.0.2","typescript":"~5.6.2","vite":"^6.4.3","vitest":"^4.1.10","vite-plugin-static-copy":"2.2.0"},"//dependencies":["NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API","NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed"],"dependencies":{"@itwin/core-i18n":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@loaders.gl/core":"~4.3.4","@loaders.gl/draco":"~4.3.4","fuse.js":"^3.3.0","wms-capabilities":"0.6.0"}}');
|
|
334992
336192
|
|
|
334993
336193
|
/***/ }
|
|
334994
336194
|
|