@itwin/rpcinterface-full-stack-tests 3.6.0-dev.45 → 3.6.0-dev.47

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.
@@ -1 +1 @@
1
- {"version":3,"file":"_cb67.bundled-tests.js","mappings":";;;;;;;;AAAA","sources":["file:///ignored|D:\\vsts_b\\13\\s\\common\\temp\\node_modules\\.pnpm\\@loaders.gl+worker-utils@3.2.12\\node_modules\\@loaders.gl\\worker-utils\\dist\\esm\\lib\\library-utils|../node/require-utils.node"],"names":[],"sourceRoot":""}
1
+ {"version":3,"file":"_cb67.bundled-tests.js","mappings":";;;;;;;;AAAA","sources":["file:///ignored|D:\\vsts_a\\4\\s\\common\\temp\\node_modules\\.pnpm\\@loaders.gl+worker-utils@3.2.12\\node_modules\\@loaders.gl\\worker-utils\\dist\\esm\\lib\\library-utils|../node/require-utils.node"],"names":[],"sourceRoot":""}
@@ -56867,47 +56867,36 @@ var CodeScopeSpec;
56867
56867
  * @public
56868
56868
  */
56869
56869
  class CodeSpec {
56870
- /** Internal-only constructor. Proper use is to supply `properties` only or `scopeType` and `scopeReq` but not `properties`.
56871
- */
56872
- constructor(iModel, id, name, scopeType, scopeReq, properties) {
56870
+ constructor(iModel, id, name, properties) {
56873
56871
  this.iModel = iModel;
56874
56872
  this.id = id;
56875
56873
  this.name = name;
56876
- if (properties) {
56877
- this.properties = properties;
56878
- if (!this.properties.scopeSpec) {
56879
- this.properties.scopeSpec = {};
56880
- this.scopeType = CodeScopeSpec.Type.Repository;
56881
- }
56882
- }
56883
- else {
56884
- this.properties = { scopeSpec: {} };
56885
- this.scopeType = CodeScopeSpec.Type.Repository;
56886
- }
56887
- if (undefined !== scopeType)
56888
- this.scopeType = scopeType;
56889
- if (undefined !== scopeReq)
56890
- this.scopeReq = scopeReq;
56874
+ this.properties = properties !== null && properties !== void 0 ? properties : { scopeSpec: { type: CodeScopeSpec.Type.Repository } };
56891
56875
  }
56892
56876
  /** Create a new CodeSpec from the specified parameters
56893
56877
  * > Note: CodeSpec.id will not be valid until inserted
56894
56878
  * @see [CodeSpecs.insert]($backend)
56895
56879
  */
56896
56880
  static create(iModel, name, scopeType, scopeReq) {
56897
- return new CodeSpec(iModel, _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.invalid, name, scopeType, scopeReq, undefined);
56881
+ const props = { scopeSpec: { type: scopeType } };
56882
+ if (scopeReq)
56883
+ props.scopeSpec.fGuidRequired = scopeReq === CodeScopeSpec.ScopeRequirement.FederationGuid;
56884
+ return new CodeSpec(iModel, _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.invalid, name, props);
56898
56885
  }
56899
56886
  /** Create a new CodeSpec directly from JSON. Used internally by the CodeSpecs.load function.
56900
56887
  * @internal
56901
56888
  */
56902
56889
  static createFromJson(iModel, id, name, properties) {
56903
- return new CodeSpec(iModel, id, name, undefined, undefined, properties); // eslint-disable-line deprecation/deprecation
56890
+ return new CodeSpec(iModel, id, name, properties);
56904
56891
  }
56905
56892
  /** Will be true if the id of this CodeSpec is valid. */
56906
56893
  get isValid() { return _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.isValid(this.id); }
56907
56894
  /** The scope type of this CodeSpec. */
56908
56895
  get scopeType() { return this.properties.scopeSpec.type; }
56909
56896
  set scopeType(scopeType) { this.properties.scopeSpec.type = scopeType; }
56910
- /** Will be `CodeScopeSpec.ScopeRequirement.FederationGuid` if the scoping element is required to have a FederationGuid or `CodeScopeSpec.ScopeRequirement.ElementId` otherwise (which is the default). */
56897
+ /** Will be `CodeScopeSpec.ScopeRequirement.FederationGuid` if the scoping element is required to have a FederationGuid or
56898
+ * CodeScopeSpec.ScopeRequirement.ElementId` otherwise (the default).
56899
+ */
56911
56900
  get scopeReq() {
56912
56901
  return this.properties.scopeSpec.fGuidRequired ? CodeScopeSpec.ScopeRequirement.FederationGuid : CodeScopeSpec.ScopeRequirement.ElementId;
56913
56902
  }
@@ -56918,13 +56907,11 @@ class CodeSpec {
56918
56907
  this.properties.scopeSpec.fGuidRequired = undefined;
56919
56908
  }
56920
56909
  /** Will be true if the codes associated with this CodeSpec are managed along with the iModel and false if the codes are managed by an external service.
56921
- * @beta
56910
+ * @deprecated in 3.6 Use scopeReq instead.
56922
56911
  */
56923
56912
  get isManagedWithIModel() {
56924
- if (this.properties.spec && this.properties.spec.isManagedWithDgnDb !== undefined) {
56925
- return this.properties.spec.isManagedWithDgnDb;
56926
- }
56927
- return true;
56913
+ var _a, _b;
56914
+ return (_b = (_a = this.properties.spec) === null || _a === void 0 ? void 0 : _a.isManagedWithDgnDb) !== null && _b !== void 0 ? _b : true;
56928
56915
  }
56929
56916
  set isManagedWithIModel(value) {
56930
56917
  if (!this.properties.spec)
@@ -109070,6 +109057,10 @@ class Viewport {
109070
109057
  * @note Attempting to assign to [[flashedId]] from within the event callback will produce an exception.
109071
109058
  */
109072
109059
  this.onFlashedIdChanged = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeEvent();
109060
+ /** Event indicating when a map-layer scale range visibility change for the current viewport scale.
109061
+ * @beta
109062
+ */
109063
+ this.onMapLayerScaleRangeVisibilityChanged = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeEvent();
109073
109064
  /** @internal */
109074
109065
  this._hasMissingTiles = false;
109075
109066
  /** A function executed by `setView()` when `this._view` changes. */
@@ -109498,6 +109489,30 @@ class Viewport {
109498
109489
  get backgroundDrapeMap() { var _a; return (_a = this._mapTiledGraphicsProvider) === null || _a === void 0 ? void 0 : _a.backgroundDrapeMap; }
109499
109490
  /** @internal */
109500
109491
  getMapLayerImageryProvider(index, isOverlay) { var _a; return (_a = this._mapTiledGraphicsProvider) === null || _a === void 0 ? void 0 : _a.getMapLayerImageryProvider(index, isOverlay); }
109492
+ /** Return the map-layer scale range visibility for the provided map-layer index.
109493
+ * @param index of the owning map layer.
109494
+ * @param isOverlay true if the map layer is overlay, otherwise layer is background
109495
+ * @see [[DisplayStyleState.mapLayerAtIndex]].
109496
+ * @beta
109497
+ */
109498
+ getMapLayerScaleRangeVisibility(index, isOverlay) {
109499
+ var _a, _b;
109500
+ const treeRef = (isOverlay ? (_a = this._mapTiledGraphicsProvider) === null || _a === void 0 ? void 0 : _a.overlayMap : (_b = this._mapTiledGraphicsProvider) === null || _b === void 0 ? void 0 : _b.backgroundMap);
109501
+ if (treeRef) {
109502
+ return treeRef.getMapLayerScaleRangeVisibility(index);
109503
+ }
109504
+ return _tile_internal__WEBPACK_IMPORTED_MODULE_22__.MapTileTreeScaleRangeVisibility.Unknown;
109505
+ }
109506
+ /** Return a list of map-layers indexes matching a given MapTile tree Id and a layer imagery tree id.
109507
+ * Note: A imagery tree can be shared for multiple map-layers.
109508
+ * @internal
109509
+ * */
109510
+ getMapLayerIndexesFromIds(mapTreeId, layerTreeId) {
109511
+ var _a;
109512
+ if (this._mapTiledGraphicsProvider)
109513
+ return (_a = this._mapTiledGraphicsProvider) === null || _a === void 0 ? void 0 : _a.getMapLayerIndexesFromIds(mapTreeId, layerTreeId);
109514
+ return [];
109515
+ }
109501
109516
  /** @beta
109502
109517
  * Fully reset a map-layer tile tree; by calling this, the map-layer will to go through initialize process again, and all previously fetched tile will be lost.
109503
109518
  */
@@ -112229,6 +112244,7 @@ __webpack_require__.r(__webpack_exports__);
112229
112244
  /* harmony export */ "ImageryMapLayerTreeReference": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.ImageryMapLayerTreeReference),
112230
112245
  /* harmony export */ "ImageryMapTile": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.ImageryMapTile),
112231
112246
  /* harmony export */ "ImageryMapTileTree": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.ImageryMapTileTree),
112247
+ /* harmony export */ "ImageryTileTreeState": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.ImageryTileTreeState),
112232
112248
  /* harmony export */ "ImdlReader": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.ImdlReader),
112233
112249
  /* harmony export */ "InputCollector": () => (/* reexport safe */ _tools_Tool__WEBPACK_IMPORTED_MODULE_114__.InputCollector),
112234
112250
  /* harmony export */ "InputSource": () => (/* reexport safe */ _tools_Tool__WEBPACK_IMPORTED_MODULE_114__.InputSource),
@@ -112267,6 +112283,7 @@ __webpack_require__.r(__webpack_exports__);
112267
112283
  /* harmony export */ "MapTileProjection": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.MapTileProjection),
112268
112284
  /* harmony export */ "MapTileTree": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.MapTileTree),
112269
112285
  /* harmony export */ "MapTileTreeReference": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.MapTileTreeReference),
112286
+ /* harmony export */ "MapTileTreeScaleRangeVisibility": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.MapTileTreeScaleRangeVisibility),
112270
112287
  /* harmony export */ "MapTiledGraphicsProvider": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.MapTiledGraphicsProvider),
112271
112288
  /* harmony export */ "MapTilingScheme": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.MapTilingScheme),
112272
112289
  /* harmony export */ "MarginPercent": () => (/* reexport safe */ _MarginPercent__WEBPACK_IMPORTED_MODULE_36__.MarginPercent),
@@ -159396,6 +159413,11 @@ class RealityTileTree extends _internal__WEBPACK_IMPORTED_MODULE_6__.TileTree {
159396
159413
  }
159397
159414
  /** @internal */
159398
159415
  getBaseRealityDepth(_sceneContext) { return -1; }
159416
+ /** Scan the list of currently selected reality tiles, and fire the viewport's 'onMapLayerScaleRangeVisibilityChanged ' event
159417
+ * if any scale range visibility change is detected for one more map-layer definition.
159418
+ * @internal
159419
+ */
159420
+ reportTileVisibility(_args, _selected) { }
159399
159421
  /** @internal */
159400
159422
  selectRealityTiles(args, displayedDescendants, preloadDebugBuilder) {
159401
159423
  this._lastSelected = _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeTimePoint.now();
@@ -159436,6 +159458,8 @@ class RealityTileTree extends _internal__WEBPACK_IMPORTED_MODULE_6__.TileTree {
159436
159458
  if (imageryTiles.length)
159437
159459
  this.logTiles("Imagery:", imageryTiles.values());
159438
159460
  }
159461
+ if (context.missing.length === 0)
159462
+ this.reportTileVisibility(args, selected);
159439
159463
  _IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.tileAdmin.addTilesForUser(args.context.viewport, selected, args.readyTiles);
159440
159464
  return selected;
159441
159465
  }
@@ -159466,7 +159490,7 @@ class RealityTileTree extends _internal__WEBPACK_IMPORTED_MODULE_6__.TileTree {
159466
159490
  const found = depthMap.get(depth);
159467
159491
  depthMap.set(depth, found === undefined ? 1 : found + 1);
159468
159492
  }
159469
- depthMap.forEach((key, value) => depthString += `${key}-${value}, `);
159493
+ depthMap.forEach((value, key) => depthString += `${key}(x${value}), `);
159470
159494
  // eslint-disable-next-line no-console
159471
159495
  console.log(`${label}: ${count} Min: ${min} Max: ${max} Depths: ${depthString}`);
159472
159496
  }
@@ -162963,6 +162987,7 @@ __webpack_require__.r(__webpack_exports__);
162963
162987
  /* harmony export */ "ImageryMapLayerTreeReference": () => (/* reexport safe */ _map_ImageryTileTree__WEBPACK_IMPORTED_MODULE_72__.ImageryMapLayerTreeReference),
162964
162988
  /* harmony export */ "ImageryMapTile": () => (/* reexport safe */ _map_ImageryTileTree__WEBPACK_IMPORTED_MODULE_72__.ImageryMapTile),
162965
162989
  /* harmony export */ "ImageryMapTileTree": () => (/* reexport safe */ _map_ImageryTileTree__WEBPACK_IMPORTED_MODULE_72__.ImageryMapTileTree),
162990
+ /* harmony export */ "ImageryTileTreeState": () => (/* reexport safe */ _map_ImageryTileTree__WEBPACK_IMPORTED_MODULE_72__.ImageryTileTreeState),
162966
162991
  /* harmony export */ "ImdlReader": () => (/* reexport safe */ _ImdlReader__WEBPACK_IMPORTED_MODULE_33__.ImdlReader),
162967
162992
  /* harmony export */ "LRUTileList": () => (/* reexport safe */ _LRUTileList__WEBPACK_IMPORTED_MODULE_5__.LRUTileList),
162968
162993
  /* harmony export */ "MapBoxLayerImageryProvider": () => (/* reexport safe */ _map_ImageryProviders_MapBoxLayerImageryProvider__WEBPACK_IMPORTED_MODULE_47__.MapBoxLayerImageryProvider),
@@ -162981,6 +163006,7 @@ __webpack_require__.r(__webpack_exports__);
162981
163006
  /* harmony export */ "MapTileProjection": () => (/* reexport safe */ _map_MapTile__WEBPACK_IMPORTED_MODULE_58__.MapTileProjection),
162982
163007
  /* harmony export */ "MapTileTree": () => (/* reexport safe */ _map_MapTileTree__WEBPACK_IMPORTED_MODULE_53__.MapTileTree),
162983
163008
  /* harmony export */ "MapTileTreeReference": () => (/* reexport safe */ _map_MapTileTree__WEBPACK_IMPORTED_MODULE_53__.MapTileTreeReference),
163009
+ /* harmony export */ "MapTileTreeScaleRangeVisibility": () => (/* reexport safe */ _map_MapTileTree__WEBPACK_IMPORTED_MODULE_53__.MapTileTreeScaleRangeVisibility),
162984
163010
  /* harmony export */ "MapTiledGraphicsProvider": () => (/* reexport safe */ _map_MapTiledGraphicsProvider__WEBPACK_IMPORTED_MODULE_74__.MapTiledGraphicsProvider),
162985
163011
  /* harmony export */ "MapTilingScheme": () => (/* reexport safe */ _map_MapTilingScheme__WEBPACK_IMPORTED_MODULE_62__.MapTilingScheme),
162986
163012
  /* harmony export */ "ModelMapLayerTileTreeReference": () => (/* reexport safe */ _PrimaryTileTree__WEBPACK_IMPORTED_MODULE_69__.ModelMapLayerTileTreeReference),
@@ -165565,7 +165591,8 @@ __webpack_require__.r(__webpack_exports__);
165565
165591
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
165566
165592
  /* harmony export */ "ImageryMapLayerTreeReference": () => (/* binding */ ImageryMapLayerTreeReference),
165567
165593
  /* harmony export */ "ImageryMapTile": () => (/* binding */ ImageryMapTile),
165568
- /* harmony export */ "ImageryMapTileTree": () => (/* binding */ ImageryMapTileTree)
165594
+ /* harmony export */ "ImageryMapTileTree": () => (/* binding */ ImageryMapTileTree),
165595
+ /* harmony export */ "ImageryTileTreeState": () => (/* binding */ ImageryTileTreeState)
165569
165596
  /* harmony export */ });
165570
165597
  /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
165571
165598
  /* harmony import */ var _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @itwin/core-geometry */ "../../core/geometry/lib/esm/core-geometry.js");
@@ -165606,9 +165633,17 @@ class ImageryMapTile extends _internal__WEBPACK_IMPORTED_MODULE_4__.RealityTile
165606
165633
  }
165607
165634
  selectCartoDrapeTiles(drapeTiles, rectangleToDrape, drapePixelSize, args) {
165608
165635
  // Base draping overlap on width rather than height so that tiling schemes with multiple root nodes overlay correctly.
165609
- if (this.isLeaf || (this.rectangle.xLength() / this.maximumSize) < drapePixelSize || this._anyChildNotFound) {
165610
- if (this.isDisplayable && !this.isNotFound && !this.isOutOfLodRange)
165636
+ const isSmallerThanDrape = (this.rectangle.xLength() / this.maximumSize) < drapePixelSize;
165637
+ if (this.isLeaf // Include leaves so tiles get stretched past max LOD levels.
165638
+ || isSmallerThanDrape
165639
+ || this._anyChildNotFound) {
165640
+ if (this.isOutOfLodRange) {
165641
+ drapeTiles.push(this);
165642
+ this.setIsReady();
165643
+ }
165644
+ else {
165611
165645
  drapeTiles.push(this);
165646
+ }
165612
165647
  return _internal__WEBPACK_IMPORTED_MODULE_4__.TileTreeLoadStatus.Loaded;
165613
165648
  }
165614
165649
  let status = this.loadChildren();
@@ -165684,6 +165719,44 @@ class ImageryMapTile extends _internal__WEBPACK_IMPORTED_MODULE_4__.RealityTile
165684
165719
  super.dispose();
165685
165720
  }
165686
165721
  }
165722
+ /** Object that holds various state values for an ImageryTileTree
165723
+ * @internal */
165724
+ class ImageryTileTreeState {
165725
+ constructor() {
165726
+ this._scaleRangeVis = _internal__WEBPACK_IMPORTED_MODULE_4__.MapTileTreeScaleRangeVisibility.Unknown;
165727
+ }
165728
+ /** Get the scale range visibility of the imagery tile tree.
165729
+ * @returns the scale range visibility of the imagery tile tree.
165730
+ */
165731
+ getScaleRangeVisibility() { return this._scaleRangeVis; }
165732
+ /** Makes a deep copy of the current object.
165733
+ */
165734
+ clone() {
165735
+ const clone = new ImageryTileTreeState();
165736
+ clone._scaleRangeVis = this._scaleRangeVis;
165737
+ return clone;
165738
+ }
165739
+ /** Reset the scale range visibility of imagery tile tree (i.e. unknown)
165740
+ */
165741
+ reset() {
165742
+ this._scaleRangeVis = _internal__WEBPACK_IMPORTED_MODULE_4__.MapTileTreeScaleRangeVisibility.Unknown;
165743
+ }
165744
+ /** Sets the scale range visibility of the current imagery tile tree.
165745
+ * The state will be derived based on the previous visibility values:
165746
+ * Initial state: 'Unknown'
165747
+ * The first call will set the state to either: 'Visible' or 'Hidden'.
165748
+ * If subsequent visibility values are not consistent with the first visibility state, the state become 'Partial',
165749
+ * meaning the imagery tree currently contains a mixed of tiles being in range and out of range.
165750
+ */
165751
+ setScaleRangeVisibility(visible) {
165752
+ if (this._scaleRangeVis === _internal__WEBPACK_IMPORTED_MODULE_4__.MapTileTreeScaleRangeVisibility.Unknown) {
165753
+ this._scaleRangeVis = (visible ? _internal__WEBPACK_IMPORTED_MODULE_4__.MapTileTreeScaleRangeVisibility.Visible : _internal__WEBPACK_IMPORTED_MODULE_4__.MapTileTreeScaleRangeVisibility.Hidden);
165754
+ }
165755
+ else if ((visible && this._scaleRangeVis === _internal__WEBPACK_IMPORTED_MODULE_4__.MapTileTreeScaleRangeVisibility.Hidden) || (!visible && this._scaleRangeVis === _internal__WEBPACK_IMPORTED_MODULE_4__.MapTileTreeScaleRangeVisibility.Visible)) {
165756
+ this._scaleRangeVis = _internal__WEBPACK_IMPORTED_MODULE_4__.MapTileTreeScaleRangeVisibility.Partial;
165757
+ }
165758
+ }
165759
+ }
165687
165760
  /** @internal */
165688
165761
  class ImageryMapTileTree extends _internal__WEBPACK_IMPORTED_MODULE_4__.RealityTileTree {
165689
165762
  constructor(params, _imageryLoader) {
@@ -167066,6 +167139,10 @@ class MapTile extends _internal__WEBPACK_IMPORTED_MODULE_7__.RealityTile {
167066
167139
  get isPlanar() { return this._patch instanceof PlanarTilePatch; }
167067
167140
  /** @internal */
167068
167141
  get imageryTiles() { return this._imageryTiles; }
167142
+ /** List of selected tiles but are currently in hidden state (i.e. scale range visibility)
167143
+ * @internal
167144
+ */
167145
+ get hiddenImageryTiles() { return this._hiddenTiles; }
167069
167146
  /** @internal */
167070
167147
  getRangeCorners(result) {
167071
167148
  return this._patch instanceof PlanarTilePatch ? this._patch.getRangeCorners(this.heightRange, result) : this.range.corners(result);
@@ -167335,6 +167412,9 @@ class MapTile extends _internal__WEBPACK_IMPORTED_MODULE_7__.RealityTile {
167335
167412
  this._imageryTiles.forEach((tile) => tile.releaseMapTileUsage());
167336
167413
  this._imageryTiles = undefined;
167337
167414
  }
167415
+ if (this._hiddenTiles) {
167416
+ this._hiddenTiles = undefined;
167417
+ }
167338
167418
  }
167339
167419
  /** @internal */
167340
167420
  produceGraphics() {
@@ -167405,39 +167485,52 @@ class MapTile extends _internal__WEBPACK_IMPORTED_MODULE_7__.RealityTile {
167405
167485
  }
167406
167486
  /** @internal */
167407
167487
  get baseImageryIsReady() {
167408
- if (undefined !== this.mapTree.baseColor || 0 === this.mapTree.imageryTrees.length)
167488
+ if (undefined !== this.mapTree.baseColor || 0 === this.mapTree.layerImageryTrees.length)
167409
167489
  return true;
167410
167490
  if (undefined === this._imageryTiles)
167411
167491
  return false;
167412
- const baseTreeId = this.mapTree.imageryTrees[0].modelId;
167492
+ const baseTreeId = this.mapTree.layerImageryTrees[0].tree.modelId;
167413
167493
  return this._imageryTiles.every((imageryTile) => imageryTile.imageryTree.modelId !== baseTreeId || imageryTile.isReady);
167414
167494
  }
167415
167495
  /** @internal */
167416
167496
  get imageryIsReady() {
167417
167497
  if (undefined === this._imageryTiles)
167418
- return 0 === this.mapTree.imageryTrees.length;
167498
+ return 0 === this.mapTree.layerImageryTrees.length;
167419
167499
  return this._imageryTiles.every((tile) => tile.isReady);
167420
167500
  }
167421
167501
  /** Select secondary (imagery) tiles
167422
167502
  * @internal
167423
167503
  */
167424
167504
  selectSecondaryTiles(args, context) {
167425
- if (0 === this.mapTree.imageryTrees.length || this.imageryIsReady)
167505
+ if (0 === this.mapTree.layerImageryTrees.length || this.imageryIsReady)
167426
167506
  return;
167427
167507
  this.clearImageryTiles();
167428
167508
  this._imageryTiles = new Array();
167429
- for (const imageryTree of this.mapTree.imageryTrees) {
167430
- if (_internal__WEBPACK_IMPORTED_MODULE_7__.TileTreeLoadStatus.Loaded !== imageryTree.selectCartoDrapeTiles(this._imageryTiles, this, args)) {
167509
+ this._hiddenTiles = new Array();
167510
+ for (const layerImageryTree of this.mapTree.layerImageryTrees) {
167511
+ const tmpTiles = new Array();
167512
+ if (_internal__WEBPACK_IMPORTED_MODULE_7__.TileTreeLoadStatus.Loaded !== layerImageryTree.tree.selectCartoDrapeTiles(tmpTiles, this, args)) {
167431
167513
  this._imageryTiles = undefined;
167432
167514
  return;
167433
167515
  }
167434
- }
167435
- for (const imageryTile of this._imageryTiles) {
167436
- imageryTile.markMapTileUsage();
167437
- if (imageryTile.isReady)
167438
- args.markReady(imageryTile);
167439
- else
167440
- context.missing.push(imageryTile);
167516
+ // MapTileTree might include a non-visible imagery tree, we need to check for that.
167517
+ if (layerImageryTree.settings.visible && !layerImageryTree.settings.allSubLayersInvisible) {
167518
+ for (const imageryTile of tmpTiles) {
167519
+ imageryTile.markMapTileUsage();
167520
+ if (imageryTile.isReady)
167521
+ args.markReady(imageryTile);
167522
+ else
167523
+ context.missing.push(imageryTile);
167524
+ this._imageryTiles.push(imageryTile);
167525
+ }
167526
+ }
167527
+ else {
167528
+ // Even though those selected imagery tile are not visible,
167529
+ // we keep track of them for scale range reporting.
167530
+ for (const imageryTile of tmpTiles) {
167531
+ this._hiddenTiles.push(imageryTile);
167532
+ }
167533
+ }
167441
167534
  }
167442
167535
  }
167443
167536
  /** The height range for terrain tiles is not known until the tiles are unloaded. We use "ApproximateTerrainHeight" for first 6 levels but below
@@ -167946,6 +168039,7 @@ __webpack_require__.r(__webpack_exports__);
167946
168039
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
167947
168040
  /* harmony export */ "MapTileTree": () => (/* binding */ MapTileTree),
167948
168041
  /* harmony export */ "MapTileTreeReference": () => (/* binding */ MapTileTreeReference),
168042
+ /* harmony export */ "MapTileTreeScaleRangeVisibility": () => (/* binding */ MapTileTreeScaleRangeVisibility),
167949
168043
  /* harmony export */ "getGcsConverterAvailable": () => (/* binding */ getGcsConverterAvailable)
167950
168044
  /* harmony export */ });
167951
168045
  /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
@@ -167975,6 +168069,19 @@ const scratchPoint = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Point3d.c
167975
168069
  const scratchCorners = [_itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Point3d.createZero(), _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Point3d.createZero(), _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Point3d.createZero(), _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Point3d.createZero(), _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Point3d.createZero(), _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Point3d.createZero(), _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Point3d.createZero(), _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Point3d.createZero()];
167976
168070
  const scratchCorner = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Point3d.createZero();
167977
168071
  const scratchZNormal = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Vector3d.create(0, 0, 1);
168072
+ /** Map tile tree scale range visibility values.
168073
+ * @beta */
168074
+ var MapTileTreeScaleRangeVisibility;
168075
+ (function (MapTileTreeScaleRangeVisibility) {
168076
+ /** state is currently unknown (i.e. never been displayed) */
168077
+ MapTileTreeScaleRangeVisibility[MapTileTreeScaleRangeVisibility["Unknown"] = 0] = "Unknown";
168078
+ /** all currently selected tree tiles are visible (i.e within the scale range) */
168079
+ MapTileTreeScaleRangeVisibility[MapTileTreeScaleRangeVisibility["Visible"] = 1] = "Visible";
168080
+ /** all currently selected tree tiles are hidden (i.e outside the scale range) */
168081
+ MapTileTreeScaleRangeVisibility[MapTileTreeScaleRangeVisibility["Hidden"] = 2] = "Hidden";
168082
+ /** currently selected tree tiles are partially visible (i.e some tiles are within the scale range, and some are outside.) */
168083
+ MapTileTreeScaleRangeVisibility[MapTileTreeScaleRangeVisibility["Partial"] = 3] = "Partial";
168084
+ })(MapTileTreeScaleRangeVisibility || (MapTileTreeScaleRangeVisibility = {}));
167978
168085
  /** A [quad tree](https://en.wikipedia.org/wiki/Quadtree) consisting of [[MapTile]]s representing the map imagery draped onto the surface of the Earth.
167979
168086
  * A `MapTileTree` enables display of a globe or planar map with [map imagery](https://en.wikipedia.org/wiki/Tiled_web_map) obtained from any number of sources, such as
167980
168087
  * [Bing](https://learn.microsoft.com/en-us/bingmaps/), [OpenStreetMap](https://wiki.openstreetmap.org/wiki/API), and [GIS servers](https://wiki.openstreetmap.org/wiki/API).
@@ -167989,8 +168096,9 @@ class MapTileTree extends _internal__WEBPACK_IMPORTED_MODULE_7__.RealityTileTree
167989
168096
  constructor(params, ecefToDb, bimElevationBias, geodeticOffset, sourceTilingScheme, id, applyTerrain) {
167990
168097
  super(params);
167991
168098
  /** @internal */
167992
- this.imageryTrees = [];
168099
+ this.layerImageryTrees = [];
167993
168100
  this._layerSettings = new Map();
168101
+ this._imageryTreeState = new Map();
167994
168102
  this._modelIdToIndex = new Map();
167995
168103
  /** @internal */
167996
168104
  this.layerClassifiers = new Map();
@@ -168039,14 +168147,34 @@ class MapTileTree extends _internal__WEBPACK_IMPORTED_MODULE_7__.RealityTileTree
168039
168147
  // by depth so that painters algorithm will approximate correct depth display.
168040
168148
  return this.useDepthBuffer ? this.loader.parentsAndChildrenExclusive : false;
168041
168149
  }
168150
+ /** Return the imagery tile tree state of matching the provided imagery tree id.
168151
+ * @internal
168152
+ */
168153
+ getImageryTreeState(imageryTreeId) {
168154
+ return this._imageryTreeState.get(imageryTreeId);
168155
+ }
168156
+ /** Return a cloned dictionary of the imagery tile tree states
168157
+ * @internal
168158
+ */
168159
+ cloneImageryTreeState() {
168160
+ const clone = new Map();
168161
+ for (const [treeId, state] of this._imageryTreeState) {
168162
+ clone.set(treeId, state.clone());
168163
+ }
168164
+ return clone;
168165
+ }
168042
168166
  /** @internal */
168043
168167
  tileFromQuadId(quadId) {
168044
168168
  return this._rootTile.tileFromQuadId(quadId);
168045
168169
  }
168046
- /** @internal */
168170
+ /** Add a new imagery tile tree / map-layer settings pair and initialize the imagery tile tree state.
168171
+ * @internal
168172
+ */
168047
168173
  addImageryLayer(tree, settings, index) {
168048
- this.imageryTrees.push(tree);
168174
+ this.layerImageryTrees.push({ tree, settings });
168049
168175
  this._layerSettings.set(tree.modelId, settings);
168176
+ if (!this._imageryTreeState.has(tree.modelId))
168177
+ this._imageryTreeState.set(tree.modelId, new _internal__WEBPACK_IMPORTED_MODULE_7__.ImageryTileTreeState());
168050
168178
  this._modelIdToIndex.set(tree.modelId, index);
168051
168179
  }
168052
168180
  /** @internal */
@@ -168065,7 +168193,7 @@ class MapTileTree extends _internal__WEBPACK_IMPORTED_MODULE_7__.RealityTileTree
168065
168193
  }
168066
168194
  /** @internal */
168067
168195
  clearImageryTreesAndClassifiers() {
168068
- this.imageryTrees.length = 0;
168196
+ this.layerImageryTrees.length = 0;
168069
168197
  this._layerSettings.clear();
168070
168198
  this._modelIdToIndex.clear();
168071
168199
  this.layerClassifiers.clear();
@@ -168078,7 +168206,7 @@ class MapTileTree extends _internal__WEBPACK_IMPORTED_MODULE_7__.RealityTileTree
168078
168206
  get maxDepth() {
168079
168207
  var _a;
168080
168208
  let maxDepth = this.loader.maxDepth;
168081
- (_a = this.imageryTrees) === null || _a === void 0 ? void 0 : _a.forEach((imageryTree) => maxDepth = Math.max(maxDepth, imageryTree.maxDepth));
168209
+ (_a = this.layerImageryTrees) === null || _a === void 0 ? void 0 : _a.forEach((layerImageryTree) => maxDepth = Math.max(maxDepth, layerImageryTree.tree.maxDepth));
168082
168210
  return maxDepth;
168083
168211
  }
168084
168212
  /** @internal */
@@ -168266,6 +168394,69 @@ class MapTileTree extends _internal__WEBPACK_IMPORTED_MODULE_7__.RealityTileTree
168266
168394
  resolveCorners(gridPoints);
168267
168395
  }
168268
168396
  }
168397
+ /** Scan the list of currently selected reality tiles, and fire the viewport's 'onMapLayerScaleRangeVisibilityChanged ' event
168398
+ * if any scale range visibility change is detected for one more map-layer definition.
168399
+ * @internal
168400
+ */
168401
+ reportTileVisibility(args, selected) {
168402
+ const debugControl = args.context.target.debugControl;
168403
+ const layersVisibilityBefore = this.cloneImageryTreeState();
168404
+ const changes = new Array();
168405
+ if (!layersVisibilityBefore)
168406
+ return;
168407
+ for (const [treeId] of layersVisibilityBefore) {
168408
+ const treeVisibility = this.getImageryTreeState(treeId);
168409
+ if (treeVisibility) {
168410
+ treeVisibility.reset();
168411
+ }
168412
+ }
168413
+ let allTilesRead = true;
168414
+ for (const selectedTile of selected) {
168415
+ if (selectedTile instanceof _internal__WEBPACK_IMPORTED_MODULE_7__.MapTile) {
168416
+ if (!selectedTile.isReady)
168417
+ allTilesRead = false;
168418
+ let selectedImageryTiles = selectedTile.imageryTiles;
168419
+ if (selectedTile.hiddenImageryTiles) {
168420
+ selectedImageryTiles = selectedImageryTiles ? [...selectedImageryTiles, ...selectedTile.hiddenImageryTiles] : selectedTile.hiddenImageryTiles;
168421
+ }
168422
+ if (selectedImageryTiles) {
168423
+ for (const selectedImageryTile of selectedImageryTiles) {
168424
+ const treeState = this.getImageryTreeState(selectedImageryTile.tree.id);
168425
+ if (treeState) {
168426
+ if (selectedImageryTile.isOutOfLodRange) {
168427
+ treeState.setScaleRangeVisibility(false);
168428
+ }
168429
+ else {
168430
+ treeState.setScaleRangeVisibility(true);
168431
+ }
168432
+ }
168433
+ }
168434
+ }
168435
+ }
168436
+ }
168437
+ if (!allTilesRead)
168438
+ changes;
168439
+ for (const [treeId, prevState] of layersVisibilityBefore) {
168440
+ const newState = this.getImageryTreeState(treeId);
168441
+ if (newState) {
168442
+ const prevVisibility = prevState.getScaleRangeVisibility();
168443
+ const visibility = newState.getScaleRangeVisibility();
168444
+ if (prevVisibility !== visibility) {
168445
+ if (debugControl && debugControl.logRealityTiles) {
168446
+ // eslint-disable-next-line no-console
168447
+ console.log(`ImageryTileTree '${treeId}' changed prev state: '${MapTileTreeScaleRangeVisibility[prevVisibility]}' new state: '${MapTileTreeScaleRangeVisibility[visibility]}'`);
168448
+ }
168449
+ const mapLayersIndexes = args.context.viewport.getMapLayerIndexesFromIds(this.id, treeId);
168450
+ for (const index of mapLayersIndexes) {
168451
+ changes.push({ index: index.index, isOverlay: index.isOverlay, visibility });
168452
+ }
168453
+ }
168454
+ }
168455
+ }
168456
+ if (changes.length !== 0) {
168457
+ args.context.viewport.onMapLayerScaleRangeVisibilityChanged.raiseEvent(changes);
168458
+ }
168459
+ }
168269
168460
  /** @internal */
168270
168461
  getFractionalTileCorners(quadId) {
168271
168462
  const corners = [];
@@ -168581,11 +168772,28 @@ class MapTileTreeReference extends _internal__WEBPACK_IMPORTED_MODULE_7__.TileTr
168581
168772
  const treeIndex = index + baseLayerIndex;
168582
168773
  return index < 0 || treeIndex >= this._layerTrees.length ? undefined : this._layerTrees[treeIndex];
168583
168774
  }
168775
+ /** Return the map-layer scale range visibility for the provided map-layer index.
168776
+ * @internal
168777
+ */
168778
+ getMapLayerScaleRangeVisibility(index) {
168779
+ var _a;
168780
+ const tree = this.treeOwner.tileTree;
168781
+ if (undefined !== tree) {
168782
+ const tileTreeRef = this.getLayerImageryTreeRef(index);
168783
+ const treeId = (_a = tileTreeRef === null || tileTreeRef === void 0 ? void 0 : tileTreeRef.treeOwner.tileTree) === null || _a === void 0 ? void 0 : _a.id;
168784
+ if (treeId !== undefined) {
168785
+ const treeState = tree.getImageryTreeState(treeId);
168786
+ if (treeState !== undefined)
168787
+ return treeState.getScaleRangeVisibility();
168788
+ }
168789
+ }
168790
+ return MapTileTreeScaleRangeVisibility.Unknown;
168791
+ }
168584
168792
  initializeLayers(context) {
168585
168793
  const tree = this.treeOwner.load();
168586
168794
  if (undefined === tree)
168587
168795
  return false; // Not loaded yet.
168588
- tree.imageryTrees.length = 0;
168796
+ tree.layerImageryTrees.length = 0;
168589
168797
  if (0 === this._layerTrees.length)
168590
168798
  return !this.isOverlay;
168591
168799
  let treeIndex = this._layerTrees.length - 1;
@@ -168597,7 +168805,10 @@ class MapTileTreeReference extends _internal__WEBPACK_IMPORTED_MODULE_7__.TileTr
168597
168805
  }
168598
168806
  for (; treeIndex < this._layerTrees.length; treeIndex++) {
168599
168807
  const layerTreeRef = this._layerTrees[treeIndex];
168600
- if (layerTreeRef && _internal__WEBPACK_IMPORTED_MODULE_7__.TileTreeLoadStatus.NotFound !== layerTreeRef.treeOwner.loadStatus && layerTreeRef.layerSettings.visible && !layerTreeRef.layerSettings.allSubLayersInvisible) {
168808
+ // Load tile tree for each configured layer.
168809
+ // Note: Non-visible layer are also added to allow proper tile tree scale range visibility reporting.
168810
+ if (layerTreeRef && _internal__WEBPACK_IMPORTED_MODULE_7__.TileTreeLoadStatus.NotFound !== layerTreeRef.treeOwner.loadStatus
168811
+ && !layerTreeRef.layerSettings.allSubLayersInvisible) {
168601
168812
  const layerTree = layerTreeRef.treeOwner.load();
168602
168813
  if (undefined === layerTree)
168603
168814
  return false; // Not loaded yet.
@@ -168887,6 +169098,28 @@ class MapTiledGraphicsProvider {
168887
169098
  const imageryTreeRef = isOverlay ? this.overlayMap.getLayerImageryTreeRef(index) : this.backgroundMap.getLayerImageryTreeRef(index);
168888
169099
  imageryTreeRef === null || imageryTreeRef === void 0 ? void 0 : imageryTreeRef.resetTreeOwner();
168889
169100
  }
169101
+ /** Return a list of map-layers indexes matching a given MapTile tree Id and a layer imagery tree id.
169102
+ * @internal
169103
+ */
169104
+ getMapLayerIndexesFromIds(mapTreeId, layerTreeId) {
169105
+ var _a, _b, _c, _d, _e, _f;
169106
+ const layers = new Array();
169107
+ if (mapTreeId === ((_a = this.backgroundMap.treeOwner.tileTree) === null || _a === void 0 ? void 0 : _a.id)) {
169108
+ for (let i = 0; i < this.backgroundMap.layerSettings.length; i++) {
169109
+ if (((_c = (_b = this.backgroundMap.getLayerImageryTreeRef(i)) === null || _b === void 0 ? void 0 : _b.treeOwner.tileTree) === null || _c === void 0 ? void 0 : _c.id) === layerTreeId) {
169110
+ layers.push({ index: i, isOverlay: false });
169111
+ }
169112
+ }
169113
+ }
169114
+ else if (mapTreeId === ((_d = this.overlayMap.treeOwner.tileTree) === null || _d === void 0 ? void 0 : _d.id)) {
169115
+ for (let i = 0; i < this.overlayMap.layerSettings.length; i++) {
169116
+ if (((_f = (_e = this.overlayMap.getLayerImageryTreeRef(i)) === null || _e === void 0 ? void 0 : _e.treeOwner.tileTree) === null || _f === void 0 ? void 0 : _f.id) === layerTreeId) {
169117
+ layers.push({ index: i, isOverlay: true });
169118
+ }
169119
+ }
169120
+ }
169121
+ return layers;
169122
+ }
168890
169123
  /** @internal */
168891
169124
  mapLayerFromIds(mapTreeId, layerTreeId) {
168892
169125
  let mapLayer;
@@ -286160,7 +286393,7 @@ class TestContext {
286160
286393
  this.initializeRpcInterfaces({ title: this.settings.Backend.name, version: this.settings.Backend.version });
286161
286394
  const iModelClient = new imodels_client_management_1.IModelsClient({ api: { baseUrl: `https://${(_a = process.env.IMJS_URL_PREFIX) !== null && _a !== void 0 ? _a : ""}api.bentley.com/imodels` } });
286162
286395
  await core_frontend_1.NoRenderApp.startup({
286163
- applicationVersion: "3.6.0-dev.45",
286396
+ applicationVersion: "3.6.0-dev.47",
286164
286397
  applicationId: this.settings.gprid,
286165
286398
  authorizationClient: new frontend_1.TestFrontendAuthorizationClient(this.adminUserAccessToken),
286166
286399
  hubAccess: new imodels_access_frontend_1.FrontendIModelsAccess(iModelClient),
@@ -305325,7 +305558,7 @@ module.exports = JSON.parse('{"name":"axios","version":"0.21.4","description":"P
305325
305558
  /***/ ((module) => {
305326
305559
 
305327
305560
  "use strict";
305328
- module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"3.6.0-dev.45","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","build:ci":"npm run -s build && npm run -s build:esm","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 ES2020 --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","docs":"betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/primitives,**/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-eslintrc -c \\"../../tools/eslint-plugin/dist/configs/extension-exports-config.js\\" \\"./src/**/*.ts\\" 1>&2","lint":"eslint -f visualstudio \\"./src/**/*.ts\\" 1>&2","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run -s webpackTests && certa -r chrome","cover":"npm -s test","test:debug":"certa -r chrome --debug","webpackTests":"webpack --config ./src/test/utils/webpack.config.js 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core/tree/master/core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:^3.6.0-dev.45","@itwin/core-bentley":"workspace:^3.6.0-dev.45","@itwin/core-common":"workspace:^3.6.0-dev.45","@itwin/core-geometry":"workspace:^3.6.0-dev.45","@itwin/core-orbitgt":"workspace:^3.6.0-dev.45","@itwin/core-quantity":"workspace:^3.6.0-dev.45","@itwin/webgl-compatibility":"workspace:^3.6.0-dev.45"},"//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/certa":"workspace:*","@itwin/eslint-plugin":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@types/chai":"4.3.1","@types/chai-as-promised":"^7","@types/deep-assign":"^0.1.0","@types/lodash":"^4.14.0","@types/mocha":"^8.2.2","@types/node":"18.11.5","@types/qs":"^6.5.0","@types/semver":"7.3.10","@types/superagent":"^4.1.14","@types/sinon":"^9.0.0","babel-loader":"~8.2.5","babel-plugin-istanbul":"~6.1.1","chai":"^4.1.2","chai-as-promised":"^7","cpx2":"^3.0.0","eslint":"^7.11.0","glob":"^7.1.2","mocha":"^10.0.0","nyc":"^15.1.0","rimraf":"^3.0.2","sinon":"^9.0.2","source-map-loader":"^4.0.0","typescript":"~4.4.0","webpack":"^5.64.4"},"//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/object-storage-azure":"~1.4.0","@itwin/cloud-agnostic-core":"~1.4.0","@itwin/object-storage-core":"~1.4.0","@itwin/core-i18n":"workspace:*","@itwin/core-telemetry":"workspace:*","@loaders.gl/core":"^3.1.6","@loaders.gl/draco":"^3.1.6","deep-assign":"^2.0.0","fuse.js":"^3.3.0","lodash":"^4.17.10","qs":"^6.5.3","semver":"^7.3.5","superagent":"^7.1.5","wms-capabilities":"0.4.0","reflect-metadata":"0.1.13"},"nyc":{"extends":"./node_modules/@itwin/build-tools/.nycrc"},"eslintConfig":{"plugins":["@itwin"],"extends":"plugin:@itwin/itwinjs-recommended","rules":{"@itwin/no-internal-barrel-imports":["error",{"required-barrel-modules":["./src/tile/internal.ts"]}],"@itwin/public-extension-exports":["error",{"releaseTags":["public","preview"],"outputApiFile":false}]},"overrides":[{"files":["*.test.ts","*.test.tsx","**/test/**/*.ts"],"rules":{"@itwin/no-internal-barrel-imports":"off"}}]}}');
305561
+ module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"3.6.0-dev.47","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","build:ci":"npm run -s build && npm run -s build:esm","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 ES2020 --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","docs":"betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/primitives,**/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-eslintrc -c \\"../../tools/eslint-plugin/dist/configs/extension-exports-config.js\\" \\"./src/**/*.ts\\" 1>&2","lint":"eslint -f visualstudio \\"./src/**/*.ts\\" 1>&2","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run -s webpackTests && certa -r chrome","cover":"npm -s test","test:debug":"certa -r chrome --debug","webpackTests":"webpack --config ./src/test/utils/webpack.config.js 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core/tree/master/core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:^3.6.0-dev.47","@itwin/core-bentley":"workspace:^3.6.0-dev.47","@itwin/core-common":"workspace:^3.6.0-dev.47","@itwin/core-geometry":"workspace:^3.6.0-dev.47","@itwin/core-orbitgt":"workspace:^3.6.0-dev.47","@itwin/core-quantity":"workspace:^3.6.0-dev.47","@itwin/webgl-compatibility":"workspace:^3.6.0-dev.47"},"//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/certa":"workspace:*","@itwin/eslint-plugin":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@types/chai":"4.3.1","@types/chai-as-promised":"^7","@types/deep-assign":"^0.1.0","@types/lodash":"^4.14.0","@types/mocha":"^8.2.2","@types/node":"18.11.5","@types/qs":"^6.5.0","@types/semver":"7.3.10","@types/superagent":"^4.1.14","@types/sinon":"^9.0.0","babel-loader":"~8.2.5","babel-plugin-istanbul":"~6.1.1","chai":"^4.1.2","chai-as-promised":"^7","cpx2":"^3.0.0","eslint":"^7.11.0","glob":"^7.1.2","mocha":"^10.0.0","nyc":"^15.1.0","rimraf":"^3.0.2","sinon":"^9.0.2","source-map-loader":"^4.0.0","typescript":"~4.4.0","webpack":"^5.64.4"},"//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/object-storage-azure":"~1.4.0","@itwin/cloud-agnostic-core":"~1.4.0","@itwin/object-storage-core":"~1.4.0","@itwin/core-i18n":"workspace:*","@itwin/core-telemetry":"workspace:*","@loaders.gl/core":"^3.1.6","@loaders.gl/draco":"^3.1.6","deep-assign":"^2.0.0","fuse.js":"^3.3.0","lodash":"^4.17.10","qs":"^6.5.3","semver":"^7.3.5","superagent":"^7.1.5","wms-capabilities":"0.4.0","reflect-metadata":"0.1.13"},"nyc":{"extends":"./node_modules/@itwin/build-tools/.nycrc"},"eslintConfig":{"plugins":["@itwin"],"extends":"plugin:@itwin/itwinjs-recommended","rules":{"@itwin/no-internal-barrel-imports":["error",{"required-barrel-modules":["./src/tile/internal.ts"]}],"@itwin/public-extension-exports":["error",{"releaseTags":["public","preview"],"outputApiFile":false}]},"overrides":[{"files":["*.test.ts","*.test.tsx","**/test/**/*.ts"],"rules":{"@itwin/no-internal-barrel-imports":"off"}}]}}');
305329
305562
 
305330
305563
  /***/ }),
305331
305564