@itwin/ecschema-rpcinterface-tests 5.0.0-dev.67 → 5.0.0-dev.69

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.
@@ -21390,6 +21390,9 @@ var GeoServiceStatus;
21390
21390
  GeoServiceStatus[GeoServiceStatus["NoDatumConverter"] = 147459] = "NoDatumConverter";
21391
21391
  GeoServiceStatus[GeoServiceStatus["VerticalDatumConvertError"] = 147460] = "VerticalDatumConvertError";
21392
21392
  GeoServiceStatus[GeoServiceStatus["CSMapError"] = 147461] = "CSMapError";
21393
+ /**
21394
+ * @deprecated in 5.0. This status is never returned.
21395
+ */
21393
21396
  GeoServiceStatus[GeoServiceStatus["Pending"] = 147462] = "Pending";
21394
21397
  })(GeoServiceStatus || (GeoServiceStatus = {}));
21395
21398
  /** Error status from various reality data operations
@@ -21701,7 +21704,7 @@ class BentleyError extends Error {
21701
21704
  case GeoServiceStatus.NoDatumConverter: return "No datum converter";
21702
21705
  case GeoServiceStatus.VerticalDatumConvertError: return "Vertical datum convert error";
21703
21706
  case GeoServiceStatus.CSMapError: return "CSMap error";
21704
- case GeoServiceStatus.Pending: return "Pending";
21707
+ case GeoServiceStatus.Pending: return "Pending"; // eslint-disable-line @typescript-eslint/no-deprecated
21705
21708
  case RealityDataStatus.InvalidData: return "Invalid or unknown data";
21706
21709
  case _BeSQLite__WEBPACK_IMPORTED_MODULE_0__.DbResult.BE_SQLITE_OK:
21707
21710
  case _BeSQLite__WEBPACK_IMPORTED_MODULE_0__.DbResult.BE_SQLITE_ROW:
@@ -22023,6 +22026,8 @@ __webpack_require__.r(__webpack_exports__);
22023
22026
  /* harmony export */ compareNumbers: () => (/* binding */ compareNumbers),
22024
22027
  /* harmony export */ compareNumbersOrUndefined: () => (/* binding */ compareNumbersOrUndefined),
22025
22028
  /* harmony export */ comparePossiblyUndefined: () => (/* binding */ comparePossiblyUndefined),
22029
+ /* harmony export */ compareSimpleArrays: () => (/* binding */ compareSimpleArrays),
22030
+ /* harmony export */ compareSimpleTypes: () => (/* binding */ compareSimpleTypes),
22026
22031
  /* harmony export */ compareStrings: () => (/* binding */ compareStrings),
22027
22032
  /* harmony export */ compareStringsOrUndefined: () => (/* binding */ compareStringsOrUndefined),
22028
22033
  /* harmony export */ compareWithTolerance: () => (/* binding */ compareWithTolerance)
@@ -22090,6 +22095,52 @@ function areEqualPossiblyUndefined(t, u, areEqual) {
22090
22095
  else
22091
22096
  return areEqual(t, u);
22092
22097
  }
22098
+ /**
22099
+ * Compare two simples types (number, string, boolean)
22100
+ * This essentially wraps the existing type-specific comparison functions
22101
+ * @beta */
22102
+ function compareSimpleTypes(lhs, rhs) {
22103
+ let cmp = 0;
22104
+ // Make sure the types are the same
22105
+ cmp = compareStrings(typeof lhs, typeof rhs);
22106
+ if (cmp !== 0) {
22107
+ return cmp;
22108
+ }
22109
+ // Compare actual values
22110
+ switch (typeof lhs) {
22111
+ case "number":
22112
+ return compareNumbers(lhs, rhs);
22113
+ case "string":
22114
+ return compareStrings(lhs, rhs);
22115
+ case "boolean":
22116
+ return compareBooleans(lhs, rhs);
22117
+ }
22118
+ return cmp;
22119
+ }
22120
+ /**
22121
+ * Compare two arrays of simple types (number, string, boolean)
22122
+ * @beta
22123
+ */
22124
+ function compareSimpleArrays(lhs, rhs) {
22125
+ if (undefined === lhs)
22126
+ return undefined === rhs ? 0 : -1;
22127
+ else if (undefined === rhs)
22128
+ return 1;
22129
+ else if (lhs.length === 0 && rhs.length === 0) {
22130
+ return 0;
22131
+ }
22132
+ else if (lhs.length !== rhs.length) {
22133
+ return lhs.length - rhs.length;
22134
+ }
22135
+ let cmp = 0;
22136
+ for (let i = 0; i < lhs.length; i++) {
22137
+ cmp = compareSimpleTypes(lhs[i], rhs[i]);
22138
+ if (cmp !== 0) {
22139
+ break;
22140
+ }
22141
+ }
22142
+ return cmp;
22143
+ }
22093
22144
 
22094
22145
 
22095
22146
  /***/ }),
@@ -26077,7 +26128,7 @@ function lookupHttpStatusCategory(statusCode) {
26077
26128
  case _BentleyError__WEBPACK_IMPORTED_MODULE_0__.GeoServiceStatus.NoDatumConverter: return new OperationFailed();
26078
26129
  case _BentleyError__WEBPACK_IMPORTED_MODULE_0__.GeoServiceStatus.VerticalDatumConvertError: return new OperationFailed();
26079
26130
  case _BentleyError__WEBPACK_IMPORTED_MODULE_0__.GeoServiceStatus.CSMapError: return new InternalError();
26080
- case _BentleyError__WEBPACK_IMPORTED_MODULE_0__.GeoServiceStatus.Pending: return new Pending();
26131
+ case _BentleyError__WEBPACK_IMPORTED_MODULE_0__.GeoServiceStatus.Pending: return new Pending(); // eslint-disable-line @typescript-eslint/no-deprecated
26081
26132
  case _BentleyError__WEBPACK_IMPORTED_MODULE_0__.RealityDataStatus.Success: return new Success();
26082
26133
  case _BentleyError__WEBPACK_IMPORTED_MODULE_0__.RealityDataStatus.InvalidData: return new InvalidData();
26083
26134
  default: return new UnknownError();
@@ -27086,6 +27137,8 @@ __webpack_require__.r(__webpack_exports__);
27086
27137
  /* harmony export */ compareNumbers: () => (/* reexport safe */ _Compare__WEBPACK_IMPORTED_MODULE_9__.compareNumbers),
27087
27138
  /* harmony export */ compareNumbersOrUndefined: () => (/* reexport safe */ _Compare__WEBPACK_IMPORTED_MODULE_9__.compareNumbersOrUndefined),
27088
27139
  /* harmony export */ comparePossiblyUndefined: () => (/* reexport safe */ _Compare__WEBPACK_IMPORTED_MODULE_9__.comparePossiblyUndefined),
27140
+ /* harmony export */ compareSimpleArrays: () => (/* reexport safe */ _Compare__WEBPACK_IMPORTED_MODULE_9__.compareSimpleArrays),
27141
+ /* harmony export */ compareSimpleTypes: () => (/* reexport safe */ _Compare__WEBPACK_IMPORTED_MODULE_9__.compareSimpleTypes),
27089
27142
  /* harmony export */ compareStrings: () => (/* reexport safe */ _Compare__WEBPACK_IMPORTED_MODULE_9__.compareStrings),
27090
27143
  /* harmony export */ compareStringsOrUndefined: () => (/* reexport safe */ _Compare__WEBPACK_IMPORTED_MODULE_9__.compareStringsOrUndefined),
27091
27144
  /* harmony export */ compareWithTolerance: () => (/* reexport safe */ _Compare__WEBPACK_IMPORTED_MODULE_9__.compareWithTolerance),
@@ -35095,6 +35148,7 @@ var GeoCoordStatus;
35095
35148
  /** This temporary status is used to mark coordinates for which the conversion has not yet been processed by the backend
35096
35149
  * as opposed to other coordinate conversions that may have been resolved otherwise (typically a cache).
35097
35150
  * At the completion of the conversion promise no coordinates should have this status.
35151
+ * @deprecated in 5.0. Pending is no longer returned as a status for coordinate conversions.
35098
35152
  */
35099
35153
  GeoCoordStatus[GeoCoordStatus["Pending"] = -41556] = "Pending";
35100
35154
  })(GeoCoordStatus || (GeoCoordStatus = {}));
@@ -35110,7 +35164,7 @@ function mapToGeoServiceStatus(s) {
35110
35164
  case GeoCoordStatus.NoDatumConverter: return _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.GeoServiceStatus.NoDatumConverter;
35111
35165
  case GeoCoordStatus.VerticalDatumConvertError: return _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.GeoServiceStatus.VerticalDatumConvertError;
35112
35166
  case GeoCoordStatus.CSMapError: return _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.GeoServiceStatus.CSMapError;
35113
- case GeoCoordStatus.Pending: return _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.GeoServiceStatus.Pending;
35167
+ case GeoCoordStatus.Pending: return _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.GeoServiceStatus.Pending; // eslint-disable-line @typescript-eslint/no-deprecated
35114
35168
  default:
35115
35169
  throw new Error("GeoCoordStatus -> GeoServiceStatus - Missing enum conversion");
35116
35170
  }
@@ -37928,6 +37982,7 @@ __webpack_require__.r(__webpack_exports__);
37928
37982
  */
37929
37983
 
37930
37984
 
37985
+ ;
37931
37986
  /** Normalized representation of a [[MapSubLayerProps]] for which values
37932
37987
  * have been validated and default values have been applied where explicit values not defined.
37933
37988
  * A map sub layer represents a set of objects within the layer that can be controlled separately. These
@@ -38074,6 +38129,10 @@ class ImageMapLayerSettings extends MapLayerSettings {
38074
38129
  * @beta
38075
38130
  */
38076
38131
  unsavedQueryParams;
38132
+ /** Properties specific to the map layer provider.
38133
+ * @beta
38134
+ */
38135
+ properties;
38077
38136
  subLayers;
38078
38137
  get source() { return this.url; }
38079
38138
  /** @internal */
@@ -38086,6 +38145,9 @@ class ImageMapLayerSettings extends MapLayerSettings {
38086
38145
  if (props.queryParams) {
38087
38146
  this.savedQueryParams = { ...props.queryParams };
38088
38147
  }
38148
+ if (props.properties) {
38149
+ this.properties = { ...props.properties };
38150
+ }
38089
38151
  this.subLayers = [];
38090
38152
  if (!props.subLayers)
38091
38153
  return;
@@ -38107,6 +38169,9 @@ class ImageMapLayerSettings extends MapLayerSettings {
38107
38169
  props.subLayers = this.subLayers.map((x) => x.toJSON());
38108
38170
  if (this.savedQueryParams)
38109
38171
  props.queryParams = { ...this.savedQueryParams };
38172
+ if (this.properties) {
38173
+ props.properties = structuredClone(this.properties);
38174
+ }
38110
38175
  return props;
38111
38176
  }
38112
38177
  /** Create a copy of this MapLayerSettings, optionally modifying some of its properties.
@@ -38118,7 +38183,6 @@ class ImageMapLayerSettings extends MapLayerSettings {
38118
38183
  // Clone members not part of MapLayerProps
38119
38184
  clone.userName = this.userName;
38120
38185
  clone.password = this.password;
38121
- clone.accessKey = this.accessKey;
38122
38186
  if (this.unsavedQueryParams)
38123
38187
  clone.unsavedQueryParams = { ...this.unsavedQueryParams };
38124
38188
  if (this.savedQueryParams)
@@ -38138,6 +38202,12 @@ class ImageMapLayerSettings extends MapLayerSettings {
38138
38202
  else if (this.savedQueryParams) {
38139
38203
  props.queryParams = { ...this.savedQueryParams };
38140
38204
  }
38205
+ if (changedProps.properties) {
38206
+ props.properties = { ...changedProps.properties };
38207
+ }
38208
+ else if (this.properties) {
38209
+ props.properties = { ...this.properties };
38210
+ }
38141
38211
  return props;
38142
38212
  }
38143
38213
  /** @internal */
@@ -74906,11 +74976,17 @@ class AccuDraw {
74906
74976
  stringFromAngle(angle) {
74907
74977
  if (this.isBearingMode && this.flags.bearingFixToPlane2D) {
74908
74978
  const point = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__.Vector3d.create(this.axes.x.x, this.axes.x.y, 0.0);
74979
+ const matrix = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__.Matrix3d.createRows(this.axes.x, this.axes.y, this.axes.z);
74980
+ if (matrix.determinant() < 0)
74981
+ angle = -angle; // Account for left handed rotations...
74909
74982
  point.normalizeInPlace();
74910
74983
  let adjustment = Math.acos(point.x);
74911
74984
  if (point.y < 0.0)
74912
74985
  adjustment = -adjustment;
74913
- angle += adjustment;
74986
+ angle += adjustment; // This is the angle measured from design x...
74987
+ angle = (Math.PI / 2) - angle; // Account for bearing direction convention...
74988
+ if (angle < 0)
74989
+ angle = (Math.PI * 2) + angle; // Negative bearings aren't valid?
74914
74990
  }
74915
74991
  const formatterSpec = this.getAngleFormatter();
74916
74992
  let formattedValue = angle.toString();
@@ -74950,7 +75026,10 @@ class AccuDraw {
74950
75026
  case ItemField.ANGLE_Item:
74951
75027
  parseResult = this.stringToAngle(input);
74952
75028
  if (_itwin_core_quantity__WEBPACK_IMPORTED_MODULE_13__.Parser.isParsedQuantity(parseResult)) {
74953
- this._angle = parseResult.value;
75029
+ if (this.isBearingMode && this.flags.bearingFixToPlane2D)
75030
+ this._angle = (Math.PI / 2) - parseResult.value;
75031
+ else
75032
+ this._angle = parseResult.value;
74954
75033
  break;
74955
75034
  }
74956
75035
  return _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.ERROR;
@@ -79524,6 +79603,10 @@ class BriefcaseConnection extends _IModelConnection__WEBPACK_IMPORTED_MODULE_5__
79524
79603
  async saveChanges(description) {
79525
79604
  await _IpcApp__WEBPACK_IMPORTED_MODULE_6__.IpcApp.appFunctionIpc.saveChanges(this.key, description);
79526
79605
  }
79606
+ /** Abandon pending changes to this briefcase. */
79607
+ async abandonChanges() {
79608
+ await _IpcApp__WEBPACK_IMPORTED_MODULE_6__.IpcApp.appFunctionIpc.abandonChanges(this.key);
79609
+ }
79527
79610
  /** Pull (and potentially merge if there are local changes) up to a specified changeset from iModelHub into this briefcase
79528
79611
  * @param toIndex The changeset index to pull changes to. If `undefined`, pull all changes.
79529
79612
  * @param options Options for pulling changes.
@@ -99793,7 +99876,7 @@ class ScreenViewport extends Viewport {
99793
99876
  const logo = this._logo = _IModelApp__WEBPACK_IMPORTED_MODULE_10__.IModelApp.makeHTMLElement("img", { parent: this.vpDiv, className: "imodeljs-icon" });
99794
99877
  logo.src = `${_IModelApp__WEBPACK_IMPORTED_MODULE_10__.IModelApp.publicPath}images/imodeljs-icon.svg`;
99795
99878
  logo.alt = "";
99796
- const showLogos = (ev) => {
99879
+ const showLogos = async (ev) => {
99797
99880
  const aboutBox = _IModelApp__WEBPACK_IMPORTED_MODULE_10__.IModelApp.makeModalDiv({ autoClose: true, width: 460, closeBox: true, rootDiv: this.vpDiv.ownerDocument.body }).modal;
99798
99881
  aboutBox.className += " imodeljs-about"; // only added so the CSS knows this is the about dialog
99799
99882
  const logos = _IModelApp__WEBPACK_IMPORTED_MODULE_10__.IModelApp.makeHTMLElement("table", { parent: aboutBox, className: "logo-cards" });
@@ -99801,9 +99884,11 @@ class ScreenViewport extends Viewport {
99801
99884
  logos.appendChild(_IModelApp__WEBPACK_IMPORTED_MODULE_10__.IModelApp.applicationLogoCard());
99802
99885
  }
99803
99886
  logos.appendChild(_IModelApp__WEBPACK_IMPORTED_MODULE_10__.IModelApp.makeIModelJsLogoCard());
99887
+ const promises = new Array();
99804
99888
  for (const ref of this.getTileTreeRefs()) {
99805
- ref.addLogoCards(logos, this);
99889
+ promises.push(ref.addAttributions(logos, this));
99806
99890
  }
99891
+ await Promise.all(promises);
99807
99892
  ev.stopPropagation();
99808
99893
  };
99809
99894
  logo.onclick = showLogos;
@@ -100011,7 +100096,7 @@ class ScreenViewport extends Viewport {
100011
100096
  // Some naughty decorators unwittingly do so by e.g. invalidating the scene in their decorate method.
100012
100097
  this._decorationCache.prohibitRemoval = true;
100013
100098
  context.addFromDecorator(this.view);
100014
- for (const ref of this.tiledGraphicsProviderRefs()) {
100099
+ for (const ref of this.getTileTreeRefs()) {
100015
100100
  context.addFromDecorator(ref);
100016
100101
  }
100017
100102
  for (const decorator of _IModelApp__WEBPACK_IMPORTED_MODULE_10__.IModelApp.viewManager.decorators)
@@ -146534,12 +146619,17 @@ class RealityTreeReference extends RealityModelTileTree.Reference {
146534
146619
  div.innerHTML = strings.join("<br>");
146535
146620
  return div;
146536
146621
  }
146622
+ /** @deprecated in 5.0 Use [addAttributions] instead. */
146537
146623
  addLogoCards(cards) {
146538
146624
  if (this._rdSourceKey.provider === _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.RealityDataProvider.CesiumIonAsset && !cards.dataset.openStreetMapLogoCard) {
146539
146625
  cards.dataset.openStreetMapLogoCard = "true";
146540
146626
  cards.appendChild(_IModelApp__WEBPACK_IMPORTED_MODULE_5__.IModelApp.makeLogoCard({ heading: "OpenStreetMap", notice: `&copy;<a href=\"https://www.openstreetmap.org/copyright\">OpenStreetMap</a> ${_IModelApp__WEBPACK_IMPORTED_MODULE_5__.IModelApp.localization.getLocalizedString("iModelJs:BackgroundMap:OpenStreetMapContributors")}` }));
146541
146627
  }
146542
146628
  }
146629
+ async addAttributions(cards) {
146630
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
146631
+ return Promise.resolve(this.addLogoCards(cards));
146632
+ }
146543
146633
  }
146544
146634
 
146545
146635
 
@@ -148229,12 +148319,17 @@ class ArcGISMapLayerImageryProvider extends _tile_internal__WEBPACK_IMPORTED_MOD
148229
148319
  }
148230
148320
  }
148231
148321
  }
148322
+ /** @deprecated in 5.0 Use [addAttributions] instead. */
148232
148323
  addLogoCards(cards) {
148233
148324
  if (!cards.dataset.arcGisLogoCard) {
148234
148325
  cards.dataset.arcGisLogoCard = "true";
148235
148326
  cards.appendChild(_IModelApp__WEBPACK_IMPORTED_MODULE_1__.IModelApp.makeLogoCard({ heading: "ArcGIS", notice: this._copyrightText }));
148236
148327
  }
148237
148328
  }
148329
+ async addAttributions(cards, _vp) {
148330
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
148331
+ return Promise.resolve(this.addLogoCards(cards));
148332
+ }
148238
148333
  // Translates the provided Cartographic into a EPSG:3857 point, and retrieve information.
148239
148334
  // tolerance is in pixels
148240
148335
  async getIdentifyData(quadId, carto, tolerance, returnGeometry, maxAllowableOffset) {
@@ -148454,12 +148549,17 @@ class AzureMapsLayerImageryProvider extends _tile_internal__WEBPACK_IMPORTED_MOD
148454
148549
  return "";
148455
148550
  return `${this._settings.url}&${this._settings.accessKey.key}=${this._settings.accessKey.value}&api-version=2.0&zoom=${zoom}&x=${x}&y=${y}`;
148456
148551
  }
148552
+ /** @deprecated in 5.0 Use [addAttributions] instead. */
148457
148553
  addLogoCards(cards) {
148458
148554
  if (!cards.dataset.azureMapsLogoCard) {
148459
148555
  cards.dataset.azureMapsLogoCard = "true";
148460
148556
  cards.appendChild(_IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.makeLogoCard({ heading: "Azure Maps", notice: _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:BackgroundMap.AzureMapsCopyright") }));
148461
148557
  }
148462
148558
  }
148559
+ async addAttributions(cards, _vp) {
148560
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
148561
+ return Promise.resolve(this.addLogoCards(cards));
148562
+ }
148463
148563
  }
148464
148564
 
148465
148565
 
@@ -148616,6 +148716,7 @@ class BingMapsImageryLayerProvider extends _tile_internal__WEBPACK_IMPORTED_MODU
148616
148716
  }
148617
148717
  return matchingAttributions;
148618
148718
  }
148719
+ /** @deprecated in 5.0 Use [addAttributions] instead. */
148619
148720
  addLogoCards(cards, vp) {
148620
148721
  const tiles = _IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.tileAdmin.getTilesForUser(vp)?.selected;
148621
148722
  const matchingAttributions = this.getMatchingAttributions(tiles);
@@ -148630,6 +148731,10 @@ class BingMapsImageryLayerProvider extends _tile_internal__WEBPACK_IMPORTED_MODU
148630
148731
  }
148631
148732
  cards.appendChild(_IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.makeLogoCard({ iconSrc: `${_IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.publicPath}images/bing.svg`, heading: "Microsoft Bing", notice: copyrightMsg }));
148632
148733
  }
148734
+ async addAttributions(cards, vp) {
148735
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
148736
+ return Promise.resolve(this.addLogoCards(cards, vp));
148737
+ }
148633
148738
  // initializes the BingImageryProvider by reading the templateUrl, logo image, and attribution list.
148634
148739
  async initialize() {
148635
148740
  // get the template url
@@ -149068,12 +149173,17 @@ class MapBoxLayerImageryProvider extends _tile_internal__WEBPACK_IMPORTED_MODULE
149068
149173
  url = url.concat(`?${this._settings.accessKey.key}=${this._settings.accessKey.value}`);
149069
149174
  return url;
149070
149175
  }
149176
+ /** @deprecated in 5.0 Use [addAttributions] instead. */
149071
149177
  addLogoCards(cards) {
149072
149178
  if (!cards.dataset.mapboxLogoCard) {
149073
149179
  cards.dataset.mapboxLogoCard = "true";
149074
149180
  cards.appendChild(_IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.makeLogoCard({ heading: "Mapbox", notice: _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:BackgroundMap.MapBoxCopyright") }));
149075
149181
  }
149076
149182
  }
149183
+ async addAttributions(cards, _vp) {
149184
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
149185
+ return Promise.resolve(this.addLogoCards(cards));
149186
+ }
149077
149187
  // no initialization needed for MapBoxImageryProvider.
149078
149188
  async initialize() { }
149079
149189
  }
@@ -161411,8 +161521,15 @@ class TileTreeReference /* implements RenderMemory.Consumer */ {
161411
161521
  * @beta
161412
161522
  */
161413
161523
  get planarClipMaskPriority() { return _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.PlanarClipMaskPriority.DesignModel; }
161414
- /** Add attribution logo cards for the tile tree source logo cards to the viewport's logo div. */
161524
+ /** @deprecated in 5.0 Use [addAttributions] instead. */
161415
161525
  addLogoCards(_cards, _vp) { }
161526
+ /** Add attribution logo cards for the tile tree source logo cards to the viewport's logo div.
161527
+ * @beta
161528
+ */
161529
+ async addAttributions(cards, vp) {
161530
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
161531
+ return Promise.resolve(this.addLogoCards(cards, vp));
161532
+ }
161416
161533
  /** Create a tile tree reference equivalent to this one that also supplies an implementation of [[GeometryTileTreeReference.collectTileGeometry]].
161417
161534
  * Return `undefined` if geometry collection is not supported.
161418
161535
  * @see [[createGeometryTreeReference]].
@@ -162359,6 +162476,7 @@ class CesiumTerrainProvider extends _internal__WEBPACK_IMPORTED_MODULE_8__.Terra
162359
162476
  this._assetId = opts.dataSource || _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.CesiumTerrainAssetId.Default;
162360
162477
  this._tokenTimeOut = _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeTimePoint.now().plus(CesiumTerrainProvider._tokenTimeoutInterval);
162361
162478
  }
162479
+ /** @deprecated in 5.0 Use [addAttributions] instead. */
162362
162480
  addLogoCards(cards) {
162363
162481
  if (cards.dataset.cesiumIonLogoCard)
162364
162482
  return;
@@ -162369,6 +162487,10 @@ class CesiumTerrainProvider extends _internal__WEBPACK_IMPORTED_MODULE_8__.Terra
162369
162487
  const card = _IModelApp__WEBPACK_IMPORTED_MODULE_6__.IModelApp.makeLogoCard({ iconSrc: `${_IModelApp__WEBPACK_IMPORTED_MODULE_6__.IModelApp.publicPath}images/cesium-ion.svg`, heading: "Cesium Ion", notice });
162370
162488
  cards.appendChild(card);
162371
162489
  }
162490
+ async addAttributions(cards, _vp) {
162491
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
162492
+ return Promise.resolve(this.addLogoCards(cards));
162493
+ }
162372
162494
  get maxDepth() { return this._maxDepth; }
162373
162495
  get tilingScheme() { return this._tilingScheme; }
162374
162496
  isTileAvailable(quadId) {
@@ -162974,9 +163096,14 @@ class ImageryMapTileTree extends _internal__WEBPACK_IMPORTED_MODULE_4__.RealityT
162974
163096
  this._rootTile = new ImageryMapTile(params.rootTile, this, rootQuadId, this.getTileRectangle(rootQuadId));
162975
163097
  }
162976
163098
  get tilingScheme() { return this._imageryLoader.imageryProvider.tilingScheme; }
163099
+ /** @deprecated in 5.0 Use [addAttributions] instead. */
162977
163100
  addLogoCards(cards, vp) {
163101
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
162978
163102
  this._imageryLoader.addLogoCards(cards, vp);
162979
163103
  }
163104
+ async addAttributions(cards, vp) {
163105
+ return this._imageryLoader.addAttributions(cards, vp);
163106
+ }
162980
163107
  getTileRectangle(quadId) {
162981
163108
  return this.tilingScheme.tileXYToRectangle(quadId.column, quadId.row, quadId.level);
162982
163109
  }
@@ -163023,9 +163150,14 @@ class ImageryTileLoader extends _internal__WEBPACK_IMPORTED_MODULE_4__.RealityTi
163023
163150
  get maxDepth() { return this._imageryProvider.maximumZoomLevel; }
163024
163151
  get minDepth() { return this._imageryProvider.minimumZoomLevel; }
163025
163152
  get priority() { return _internal__WEBPACK_IMPORTED_MODULE_4__.TileLoadPriority.Map; }
163153
+ /** @deprecated in 5.0 Use [addAttributions] instead. */
163026
163154
  addLogoCards(cards, vp) {
163155
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
163027
163156
  this._imageryProvider.addLogoCards(cards, vp);
163028
163157
  }
163158
+ async addAttributions(cards, vp) {
163159
+ await this._imageryProvider.addAttributions(cards, vp);
163160
+ }
163029
163161
  get maximumScreenSize() { return this._imageryProvider.maximumScreenSize; }
163030
163162
  get imageryProvider() { return this._imageryProvider; }
163031
163163
  async getToolTip(strings, quadId, carto, tree) { await this._imageryProvider.getToolTip(strings, quadId, carto, tree); }
@@ -163086,12 +163218,48 @@ class ImageryMapLayerTreeSupplier {
163086
163218
  if (0 === cmp) {
163087
163219
  cmp = (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.compareBooleans)(lhs.settings.transparentBackground, rhs.settings.transparentBackground);
163088
163220
  if (0 === cmp) {
163089
- cmp = (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.compareNumbers)(lhs.settings.subLayers.length, rhs.settings.subLayers.length);
163221
+ if (lhs.settings.properties || rhs.settings.properties) {
163222
+ if (lhs.settings.properties && rhs.settings.properties) {
163223
+ const lhsKeysLength = Object.keys(lhs.settings.properties).length;
163224
+ const rhsKeysLength = Object.keys(rhs.settings.properties).length;
163225
+ if (lhsKeysLength !== rhsKeysLength) {
163226
+ cmp = lhsKeysLength - rhsKeysLength;
163227
+ }
163228
+ else {
163229
+ for (const key of Object.keys(lhs.settings.properties)) {
163230
+ const lhsProp = lhs.settings.properties[key];
163231
+ const rhsProp = rhs.settings.properties[key];
163232
+ cmp = (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.compareStrings)(typeof lhsProp, typeof rhsProp);
163233
+ if (0 !== cmp)
163234
+ break;
163235
+ if (Array.isArray(lhsProp) || Array.isArray(rhsProp)) {
163236
+ cmp = (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.compareSimpleArrays)(lhsProp, rhsProp);
163237
+ if (0 !== cmp)
163238
+ break;
163239
+ }
163240
+ else {
163241
+ cmp = (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.compareSimpleTypes)(lhsProp, rhsProp);
163242
+ if (0 !== cmp)
163243
+ break;
163244
+ }
163245
+ }
163246
+ }
163247
+ }
163248
+ else if (!lhs.settings.properties) {
163249
+ cmp = 1;
163250
+ }
163251
+ else {
163252
+ cmp = -1;
163253
+ }
163254
+ }
163090
163255
  if (0 === cmp) {
163091
- for (let i = 0; i < lhs.settings.subLayers.length && 0 === cmp; i++) {
163092
- cmp = (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.compareStrings)(lhs.settings.subLayers[i].name, rhs.settings.subLayers[i].name);
163093
- if (0 === cmp) {
163094
- cmp = (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.compareBooleans)(lhs.settings.subLayers[i].visible, rhs.settings.subLayers[i].visible);
163256
+ cmp = (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.compareNumbers)(lhs.settings.subLayers.length, rhs.settings.subLayers.length);
163257
+ if (0 === cmp) {
163258
+ for (let i = 0; i < lhs.settings.subLayers.length && 0 === cmp; i++) {
163259
+ cmp = (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.compareStrings)(lhs.settings.subLayers[i].name, rhs.settings.subLayers[i].name);
163260
+ if (0 === cmp) {
163261
+ cmp = (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.compareBooleans)(lhs.settings.subLayers[i].visible, rhs.settings.subLayers[i].visible);
163262
+ }
163095
163263
  }
163096
163264
  }
163097
163265
  }
@@ -163875,13 +164043,18 @@ class MapLayerImageryProvider {
163875
164043
  });
163876
164044
  }
163877
164045
  get tilingScheme() { return this.useGeographicTilingScheme ? this._geographicTilingScheme : this._mercatorTilingScheme; }
164046
+ /** @deprecated in 5.0 Use [addAttributions] instead. */
164047
+ addLogoCards(_cards, _viewport) { }
163878
164048
  /**
163879
164049
  * Add attribution logo cards for the data supplied by this provider to the [[Viewport]]'s logo div.
163880
164050
  * @param _cards Logo cards HTML element that may contain custom data attributes.
163881
164051
  * @param _viewport Viewport to add logo cards to.
163882
164052
  * @beta
163883
164053
  */
163884
- addLogoCards(_cards, _viewport) { }
164054
+ async addAttributions(cards, vp) {
164055
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
164056
+ return Promise.resolve(this.addLogoCards(cards, vp));
164057
+ }
163885
164058
  /** @internal */
163886
164059
  _missingTileData;
163887
164060
  /** @internal */
@@ -163931,6 +164104,9 @@ class MapLayerImageryProvider {
163931
164104
  featureInfos.push({ layerName: this._settings.name });
163932
164105
  }
163933
164106
  /** @internal */
164107
+ decorate(_context) {
164108
+ }
164109
+ /** @internal */
163934
164110
  async getImageFromTileResponse(tileResponse, zoomLevel) {
163935
164111
  const arrayBuffer = await tileResponse.arrayBuffer();
163936
164112
  const byteArray = new Uint8Array(arrayBuffer);
@@ -164529,6 +164705,9 @@ class MapLayerTileTreeReference extends _internal__WEBPACK_IMPORTED_MODULE_3__.T
164529
164705
  div.innerHTML = strings.join("<br>");
164530
164706
  return div;
164531
164707
  }
164708
+ decorate(_context) {
164709
+ this.imageryProvider?.decorate(_context);
164710
+ }
164532
164711
  }
164533
164712
  /**
164534
164713
  * Creates a MapLayerTileTreeReference.
@@ -166350,20 +166529,43 @@ class MapTileTreeReference extends _internal__WEBPACK_IMPORTED_MODULE_7__.TileTr
166350
166529
  }
166351
166530
  return info;
166352
166531
  }
166353
- /** Add logo cards to logo div. */
166532
+ /** @deprecated in 5.0 Use [addAttributions] instead. */
166354
166533
  addLogoCards(cards, vp) {
166355
166534
  const tree = this.treeOwner.tileTree;
166356
166535
  if (tree) {
166536
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
166357
166537
  tree.mapLoader.terrainProvider.addLogoCards(cards, vp);
166358
166538
  for (const imageryTreeRef of this._layerTrees) {
166359
166539
  if (imageryTreeRef?.layerSettings.visible) {
166360
166540
  const imageryTree = imageryTreeRef.treeOwner.tileTree;
166361
166541
  if (imageryTree instanceof _internal__WEBPACK_IMPORTED_MODULE_7__.ImageryMapTileTree)
166542
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
166362
166543
  imageryTree.addLogoCards(cards, vp);
166363
166544
  }
166364
166545
  }
166365
166546
  }
166366
166547
  }
166548
+ /** Add logo cards to logo div. */
166549
+ async addAttributions(cards, vp) {
166550
+ const tree = this.treeOwner.tileTree;
166551
+ if (tree) {
166552
+ const promises = [tree.mapLoader.terrainProvider.addAttributions(cards, vp)];
166553
+ for (const imageryTreeRef of this._layerTrees) {
166554
+ if (imageryTreeRef?.layerSettings.visible) {
166555
+ const imageryTree = imageryTreeRef.treeOwner.tileTree;
166556
+ if (imageryTree instanceof _internal__WEBPACK_IMPORTED_MODULE_7__.ImageryMapTileTree)
166557
+ promises.push(imageryTree.addAttributions(cards, vp));
166558
+ }
166559
+ }
166560
+ await Promise.all(promises);
166561
+ }
166562
+ }
166563
+ decorate(context) {
166564
+ for (const layerTree of this._layerTrees) {
166565
+ if (layerTree)
166566
+ layerTree.decorate(context);
166567
+ }
166568
+ }
166367
166569
  }
166368
166570
  /** Returns whether a GCS converter is available.
166369
166571
  * @internal
@@ -166953,11 +167155,16 @@ __webpack_require__.r(__webpack_exports__);
166953
167155
  * @public
166954
167156
  */
166955
167157
  class TerrainMeshProvider {
166956
- /** Add attribution logo cards for the terrain data supplied by this provider to the [[Viewport]]'s logo div.
166957
- * For example, a provider that produces meshes from [Bing Maps](https://docs.microsoft.com/en-us/bingmaps/rest-services/elevations/) would be required to
166958
- * disclose any copyrighted data used in the production of those meshes.
166959
- */
167158
+ /** @deprecated in 5.0 Use [addAttributions] instead. */
166960
167159
  addLogoCards(_cards, _vp) { }
167160
+ /** Add attribution logo cards for the terrain data supplied by this provider to the [[Viewport]]'s logo div.
167161
+ * For example, a provider that produces meshes from [Bing Maps](https://docs.microsoft.com/en-us/bingmaps/rest-services/elevations/) would be required to
167162
+ * disclose any copyrighted data used in the production of those meshes.
167163
+ */
167164
+ async addAttributions(cards, vp) {
167165
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
167166
+ return Promise.resolve(this.addLogoCards(cards, vp));
167167
+ }
166961
167168
  /** Return whether terrain data can be obtained for the [[MapTile]] specified by `quadId`. If it returns false, a terrain mesh will instead be produced for
166962
167169
  * that tile by up-sampling the terrain mesh provided by its parent tile.
166963
167170
  * The default implementation returns `true`.
@@ -267428,9 +267635,8 @@ __webpack_require__.r(__webpack_exports__);
267428
267635
 
267429
267636
 
267430
267637
 
267431
- // cspell:word bagof
267432
267638
  /**
267433
- * `ImodelJson` namespace has classes for serializing and deserialization json objects
267639
+ * `IModelJson` namespace has classes for serializing and deserialization json objects
267434
267640
  * @public
267435
267641
  */
267436
267642
  var IModelJson;
@@ -267640,7 +267846,7 @@ var IModelJson;
267640
267846
  return _curve_CoordinateXYZ__WEBPACK_IMPORTED_MODULE_11__.CoordinateXYZ.create(point);
267641
267847
  return undefined;
267642
267848
  }
267643
- /** Parse TransitionSpiral content (right side) to TransitionSpiral3d. */
267849
+ /** Parse `transitionSpiral` content (right side) to TransitionSpiral3d. */
267644
267850
  static parseTransitionSpiral(data) {
267645
267851
  const axes = Reader.parseOrientation(data, true);
267646
267852
  const origin = Reader.parsePoint3dProperty(data, "origin");
@@ -267695,13 +267901,13 @@ var IModelJson;
267695
267901
  }
267696
267902
  return newCurve;
267697
267903
  }
267698
- /** Parse `bcurve` content to an InterpolationCurve3d object. */
267904
+ /** Parse `interpolationCurve` content to an InterpolationCurve3d object. */
267699
267905
  static parseInterpolationCurve(data) {
267700
267906
  if (data === undefined)
267701
267907
  return undefined;
267702
267908
  return _bspline_InterpolationCurve3d__WEBPACK_IMPORTED_MODULE_18__.InterpolationCurve3d.create(data);
267703
267909
  }
267704
- /** Parse `bcurve` content to an Akima curve object. */
267910
+ /** Parse `akimaCurve` content to an Akima curve object. */
267705
267911
  static parseAkimaCurve3d(data) {
267706
267912
  if (data === undefined)
267707
267913
  return undefined;
@@ -299627,10 +299833,10 @@ class Settings {
299627
299833
  });
299628
299834
  }
299629
299835
  toString() {
299630
- return `Configurations:
299631
- oidc client id: ${this.oidcClientId},
299632
- oidc scopes: ${this.oidcScopes},
299633
- applicationId: ${this.gprid},
299836
+ return `Configurations:
299837
+ oidc client id: ${this.oidcClientId},
299838
+ oidc scopes: ${this.oidcScopes},
299839
+ applicationId: ${this.gprid},
299634
299840
  log level: ${this.logLevel}`;
299635
299841
  }
299636
299842
  }
@@ -312513,7 +312719,7 @@ var loadLanguages = instance.loadLanguages;
312513
312719
  /***/ ((module) => {
312514
312720
 
312515
312721
  "use strict";
312516
- module.exports = /*#__PURE__*/JSON.parse('{"name":"@itwin/core-frontend","version":"5.0.0-dev.67","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 webpackWorkers && npm run -s copy:workers","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 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:workers":"cpx \\"./lib/workers/webpack/parse-imdl-worker.js\\" ./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","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","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run webpackTestWorker && vitest --run","cover":"npm run webpackTestWorker && vitest --run","test:debug":"vitest --run","webpackTests":"webpack --config ./src/test/utils/webpack.config.js 1>&2 && npm run -s webpackTestWorker","webpackTestWorker":"webpack --config ./src/test/worker/webpack.config.js 1>&2 && cpx \\"./lib/test/test-worker.js\\" ./lib/test","webpackWorkers":"webpack --config ./src/workers/ImdlParser/webpack.config.js 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:*"},"//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":{"@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/eslint-plugin":"5.0.0-dev.1","@types/chai-as-promised":"^7","@vitest/browser":"^3.0.5","@vitest/coverage-v8":"^3.0.5","cpx2":"^3.0.0","eslint":"^9.13.0","glob":"^10.3.12","playwright":"~1.47.1","rimraf":"^3.0.2","source-map-loader":"^4.0.0","typescript":"~5.6.2","typemoq":"^2.1.0","vitest":"^3.0.5","vite-multiple-assets":"^1.3.1","vite-plugin-static-copy":"1.0.6","webpack":"^5.97.1"},"//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/cloud-agnostic-core":"^2.2.4","@itwin/object-storage-core":"^2.2.5","@itwin/core-i18n":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@loaders.gl/core":"^3.1.6","@loaders.gl/draco":"^3.1.6","fuse.js":"^3.3.0","wms-capabilities":"0.4.0"}}');
312722
+ module.exports = /*#__PURE__*/JSON.parse('{"name":"@itwin/core-frontend","version":"5.0.0-dev.69","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 webpackWorkers && npm run -s copy:workers","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 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:workers":"cpx \\"./lib/workers/webpack/parse-imdl-worker.js\\" ./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","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","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run webpackTestWorker && vitest --run","cover":"npm run webpackTestWorker && vitest --run","test:debug":"vitest --run","webpackTests":"webpack --config ./src/test/utils/webpack.config.js 1>&2 && npm run -s webpackTestWorker","webpackTestWorker":"webpack --config ./src/test/worker/webpack.config.js 1>&2 && cpx \\"./lib/test/test-worker.js\\" ./lib/test","webpackWorkers":"webpack --config ./src/workers/ImdlParser/webpack.config.js 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:*"},"//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":{"@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/eslint-plugin":"5.0.0-dev.1","@types/chai-as-promised":"^7","@vitest/browser":"^3.0.6","@vitest/coverage-v8":"^3.0.6","cpx2":"^3.0.0","eslint":"^9.13.0","glob":"^10.3.12","playwright":"~1.47.1","rimraf":"^3.0.2","source-map-loader":"^4.0.0","typescript":"~5.6.2","typemoq":"^2.1.0","vitest":"^3.0.6","vite-multiple-assets":"^1.3.1","vite-plugin-static-copy":"1.0.6","webpack":"^5.97.1"},"//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/cloud-agnostic-core":"^2.2.4","@itwin/object-storage-core":"^2.2.5","@itwin/core-i18n":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@loaders.gl/core":"^3.1.6","@loaders.gl/draco":"^3.1.6","fuse.js":"^3.3.0","wms-capabilities":"0.4.0"}}');
312517
312723
 
312518
312724
  /***/ })
312519
312725