@itwin/rpcinterface-full-stack-tests 3.6.0-dev.55 → 3.6.0-dev.59

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.
@@ -56852,14 +56852,15 @@ var CodeScopeSpec;
56852
56852
  /** The Code value must be unique among other elements also scoped by the same element */
56853
56853
  Type[Type["RelatedElement"] = 4] = "RelatedElement";
56854
56854
  })(Type = CodeScopeSpec.Type || (CodeScopeSpec.Type = {}));
56855
- /** Requirements for how the CodeScope Element is identified.
56855
+ /**
56856
+ * Requirements for how the CodeScope Element is identified.
56856
56857
  * @public
56857
56858
  */
56858
56859
  let ScopeRequirement;
56859
56860
  (function (ScopeRequirement) {
56860
- /** The Code is required to have a valid ElementId as its scope */
56861
+ /** The ElementId of CodeScope element identifies its scope. Used for Codes that are unique only within a single iModel. */
56861
56862
  ScopeRequirement[ScopeRequirement["ElementId"] = 1] = "ElementId";
56862
- /** The Code is required to have a valid FederationGuid as its scope */
56863
+ /** The FederationGuid of the CodeScope element identifies its scope. Used for Codes that are globally unique. */
56863
56864
  ScopeRequirement[ScopeRequirement["FederationGuid"] = 2] = "FederationGuid";
56864
56865
  })(ScopeRequirement = CodeScopeSpec.ScopeRequirement || (CodeScopeSpec.ScopeRequirement = {}));
56865
56866
  })(CodeScopeSpec || (CodeScopeSpec = {}));
@@ -97790,11 +97791,6 @@ class IModelConnection extends _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.I
97790
97791
  * @beta
97791
97792
  */
97792
97793
  this.onClose = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeEvent();
97793
- /** Event called immediately after *this* IModelConnection has its displayed extents expanded.
97794
- * @note This event is called only for this IModelConnection.
97795
- * @internal
97796
- */
97797
- this.onDisplayedExtentsExpansion = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeEvent();
97798
97794
  this._snapRpc = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.OneAtATimeAction(async (props) => _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelReadRpcInterface.getClientForRouting(this.routingContext.token).requestSnap(this.getRpcProps(), _IModelApp__WEBPACK_IMPORTED_MODULE_5__.IModelApp.sessionId, props));
97799
97795
  this._toolTipRpc = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.OneAtATimeAction(async (id) => _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelReadRpcInterface.getClientForRouting(this.routingContext.token).getToolTipMessage(this.getRpcProps(), id));
97800
97796
  /** Event called immediately after map elevation request is completed. This occurs only in the case where background map terrain is displayed
@@ -97813,9 +97809,11 @@ class IModelConnection extends _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.I
97813
97809
  this.hilited = new _SelectionSet__WEBPACK_IMPORTED_MODULE_8__.HiliteSet(this);
97814
97810
  this.tiles = new _Tiles__WEBPACK_IMPORTED_MODULE_11__.Tiles(this);
97815
97811
  this.geoServices = new _GeoServices__WEBPACK_IMPORTED_MODULE_4__.GeoServices(this);
97812
+ /* eslint-disable-next-line deprecation/deprecation */
97816
97813
  this.displayedExtents = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Range3d.fromJSON(this.projectExtents);
97817
97814
  this.onProjectExtentsChanged.addListener(() => {
97818
97815
  // Compute new displayed extents as the union of the ranges we previously expanded by with the new project extents.
97816
+ /* eslint-disable-next-line deprecation/deprecation */
97819
97817
  this.expandDisplayedExtents(this._extentsExpansion);
97820
97818
  });
97821
97819
  this.hilited.onModelSubCategoryModeChanged.addListener(() => {
@@ -98126,12 +98124,14 @@ class IModelConnection extends _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.I
98126
98124
  /** Expand this iModel's [[displayedExtents]] to include the specified range.
98127
98125
  * This is done automatically when reality models are added to a spatial view. In some cases a [[TiledGraphicsProvider]] may wish to expand
98128
98126
  * the extents explicitly to include its geometry.
98127
+ * @deprecated in 3.6. See [[displayedExtents]].
98129
98128
  */
98130
98129
  expandDisplayedExtents(range) {
98131
98130
  this._extentsExpansion.extendRange(range);
98131
+ /* eslint-disable-next-line deprecation/deprecation */
98132
98132
  this.displayedExtents.setFrom(this.projectExtents);
98133
+ /* eslint-disable-next-line deprecation/deprecation */
98133
98134
  this.displayedExtents.extendRange(this._extentsExpansion);
98134
- this.onDisplayedExtentsExpansion.raiseEvent();
98135
98135
  }
98136
98136
  /** @internal */
98137
98137
  getMapEcefToDb(bimElevationBias) {
@@ -103539,28 +103539,42 @@ class SpatialViewState extends _ViewState__WEBPACK_IMPORTED_MODULE_6__.ViewState
103539
103539
  markModelSelectorChanged() {
103540
103540
  this._treeRefs.update();
103541
103541
  }
103542
- /** Get world-space viewed extents based on the iModel's project extents. */
103542
+ /** Get world-space viewed extents based on the iModel's project extents.
103543
+ * @deprecated in 3.6. These extents are based on [[IModelConnection.displayedExtents]], which is deprecated. Consider using [[computeFitRange]] or [[getViewedExtents]] instead.
103544
+ */
103543
103545
  getDisplayedExtents() {
103546
+ /* eslint-disable-next-line deprecation/deprecation */
103544
103547
  const extents = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__.Range3d.fromJSON(this.iModel.displayedExtents);
103545
103548
  extents.scaleAboutCenterInPlace(1.0001); // projectExtents. lying smack up against the extents is not excluded by frustum...
103546
103549
  extents.extendRange(this.getGroundExtents());
103547
103550
  return extents;
103548
103551
  }
103552
+ computeBaseExtents() {
103553
+ const extents = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__.Range3d.fromJSON(this.iModel.projectExtents);
103554
+ // Ensure geometry coincident with planes of the project extents is not clipped.
103555
+ extents.scaleAboutCenterInPlace(1.0001);
103556
+ // Ensure ground plane is not clipped, if it's being drawn.
103557
+ extents.extendRange(this.getGroundExtents());
103558
+ return extents;
103559
+ }
103549
103560
  /** Compute world-space range appropriate for fitting the view. If that range is null, use the displayed extents. */
103550
103561
  computeFitRange() {
103551
- // Loop over the current models in the model selector with loaded tile trees and union their ranges
103562
+ // Fit to the union of the ranges of all loaded tile trees.
103552
103563
  const range = new _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__.Range3d();
103553
103564
  this.forEachTileTreeRef((ref) => {
103554
103565
  ref.unionFitRange(range);
103555
103566
  });
103567
+ // Fall back to the project extents if necessary.
103556
103568
  if (range.isNull)
103557
- range.setFrom(this.getDisplayedExtents());
103569
+ range.setFrom(this.computeBaseExtents());
103570
+ // Avoid ridiculously small extents.
103558
103571
  range.ensureMinLengths(1.0);
103559
103572
  return range;
103560
103573
  }
103561
103574
  getViewedExtents() {
103562
- const extents = this.getDisplayedExtents();
103563
- // Some displayed tile trees may have a transform applied that takes them outside of the displayed extents.
103575
+ // Encompass the project extents and ground plane.
103576
+ const extents = this.computeBaseExtents();
103577
+ // Include any tile trees that extend outside the project extents.
103564
103578
  extents.extendRange(this.computeFitRange());
103565
103579
  return extents;
103566
103580
  }
@@ -109770,9 +109784,6 @@ class Viewport {
109770
109784
  removals.push(this.iModel.onMapElevationLoaded.addListener((_iModel) => {
109771
109785
  this.synchWithView();
109772
109786
  }));
109773
- removals.push(this.iModel.onDisplayedExtentsExpansion.addListener(() => {
109774
- this.invalidateController();
109775
- }));
109776
109787
  }
109777
109788
  }
109778
109789
  registerDisplayStyleListeners(style) {
@@ -153940,14 +153951,16 @@ class GltfReader {
153940
153951
  }
153941
153952
  let nMap;
153942
153953
  if (normalMap) {
153954
+ const greenUp = true;
153943
153955
  if (texture) {
153944
153956
  nMap = {
153945
153957
  normalMap,
153958
+ greenUp,
153946
153959
  };
153947
153960
  }
153948
153961
  else {
153949
153962
  texture = normalMap;
153950
- nMap = {};
153963
+ nMap = { greenUp };
153951
153964
  }
153952
153965
  }
153953
153966
  if (!texture)
@@ -156628,6 +156641,7 @@ class OrbitGtTileTree extends _internal__WEBPACK_IMPORTED_MODULE_8__.TileTree {
156628
156641
  this.viewFlagOverrides = {};
156629
156642
  this._tileGraphics = new Map();
156630
156643
  const worldContentRange = this.iModelTransform.multiplyRange(cloudRange);
156644
+ /* eslint-disable-next-line deprecation/deprecation */
156631
156645
  this.iModel.expandDisplayedExtents(worldContentRange);
156632
156646
  this._tileParams = { contentId: "0", range: cloudRange, maximumSize: 256 };
156633
156647
  this.rootTile = new OrbitGtRootTile(this._tileParams, this);
@@ -158130,6 +158144,7 @@ class RealityModelTileTree extends _internal__WEBPACK_IMPORTED_MODULE_7__.Realit
158130
158144
  this._isContentUnbounded = this.rootTile.contentRange.diagonal().magnitude() > 2 * _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__.Constant.earthRadiusWGS84.equator;
158131
158145
  if (!this.isContentUnbounded && !this.rootTile.contentRange.isNull) {
158132
158146
  const worldContentRange = this.iModelTransform.multiplyRange(this.rootTile.contentRange);
158147
+ /* eslint-disable-next-line deprecation/deprecation */
158133
158148
  this.iModel.expandDisplayedExtents(worldContentRange);
158134
158149
  }
158135
158150
  }
@@ -160384,12 +160399,20 @@ class TileAdmin {
160384
160399
  this.contextPreloadParentDepth = Math.max(0, Math.min((options.contextPreloadParentDepth === undefined ? 2 : options.contextPreloadParentDepth), 8));
160385
160400
  // If unspecified skip one level before preloading of parents of context tiles.
160386
160401
  this.contextPreloadParentSkip = Math.max(0, Math.min((options.contextPreloadParentSkip === undefined ? 1 : options.contextPreloadParentSkip), 5));
160387
- this._cleanup = this.addLoadListener(() => {
160388
- this._users.forEach((user) => {
160389
- if (user instanceof _Viewport__WEBPACK_IMPORTED_MODULE_5__.Viewport)
160390
- user.invalidateScene();
160391
- });
160392
- });
160402
+ const removals = [
160403
+ this.onTileLoad.addListener(() => this.invalidateAllScenes()),
160404
+ this.onTileChildrenLoad.addListener(() => this.invalidateAllScenes()),
160405
+ this.onTileTreeLoad.addListener(() => {
160406
+ // A reality model tile tree's range may extend outside of the project extents - we'll want to recompute the extents
160407
+ // of any spatial view's that may be displaying the reality model.
160408
+ for (const user of this.tileUsers)
160409
+ if (user instanceof _Viewport__WEBPACK_IMPORTED_MODULE_5__.Viewport && user.view.isSpatialView())
160410
+ user.invalidateController();
160411
+ }),
160412
+ ];
160413
+ this._cleanup = () => {
160414
+ removals.forEach((removal) => removal());
160415
+ };
160393
160416
  }
160394
160417
  /** Create a TileAdmin suitable for passing to [[IModelApp.startup]] via [[IModelAppOptions.tileAdmin]] to customize aspects of
160395
160418
  * its behavior.
@@ -163637,7 +163660,8 @@ class ArcGisUtilities {
163637
163660
  * @return Validation Status. If successful, a list of available sub-layers will also be returned.
163638
163661
  */
163639
163662
  static async validateSource(url, formatId, capabilitiesFilter, userName, password, ignoreCache) {
163640
- const json = await this.getServiceJson(url, formatId, userName, password, ignoreCache);
163663
+ const metadata = await this.getServiceJson(url, formatId, userName, password, ignoreCache);
163664
+ const json = metadata === null || metadata === void 0 ? void 0 : metadata.content;
163641
163665
  if (json === undefined) {
163642
163666
  return { status: _internal__WEBPACK_IMPORTED_MODULE_1__.MapLayerSourceStatus.InvalidUrl };
163643
163667
  }
@@ -163653,18 +163677,20 @@ class ArcGisUtilities {
163653
163677
  }
163654
163678
  // Check this service support the expected queries
163655
163679
  let hasCapabilities = false;
163656
- try {
163657
- if (json.capabilities && typeof json.capabilities === "string") {
163658
- const capabilities = json.capabilities;
163659
- const capsArray = capabilities.split(",").map((entry) => entry.toLowerCase());
163660
- const filtered = capsArray.filter((element, _index, _array) => capabilitiesFilter.includes(element));
163661
- hasCapabilities = (filtered.length === capabilitiesFilter.length);
163662
- }
163680
+ let capsArray = [];
163681
+ if (json.capabilities && typeof json.capabilities === "string") {
163682
+ const capabilities = json.capabilities;
163683
+ capsArray = capabilities.split(",").map((entry) => entry.toLowerCase());
163684
+ const filtered = capsArray.filter((element, _index, _array) => capabilitiesFilter.includes(element));
163685
+ hasCapabilities = (filtered.length === capabilitiesFilter.length);
163663
163686
  }
163664
- catch { }
163665
163687
  if (!hasCapabilities) {
163666
163688
  return { status: _internal__WEBPACK_IMPORTED_MODULE_1__.MapLayerSourceStatus.InvalidFormat };
163667
163689
  }
163690
+ // Only EPSG:3857 is supported with pre-rendered tiles.
163691
+ if (json.tileInfo && capsArray.includes("tilesonly") && !ArcGisUtilities.isEpsg3857Compatible(json.tileInfo)) {
163692
+ return { status: _internal__WEBPACK_IMPORTED_MODULE_1__.MapLayerSourceStatus.InvalidCoordinateSystem };
163693
+ }
163668
163694
  let subLayers;
163669
163695
  if (json.layers) {
163670
163696
  subLayers = new Array();
@@ -163676,35 +163702,62 @@ class ArcGisUtilities {
163676
163702
  }
163677
163703
  return { status: _internal__WEBPACK_IMPORTED_MODULE_1__.MapLayerSourceStatus.Valid, subLayers };
163678
163704
  }
163705
+ /**
163706
+ * Validate MapService tiling metadata and checks if the tile tree is 'Google Maps' compatible.
163707
+ */
163708
+ static isEpsg3857Compatible(tileInfo) {
163709
+ var _a;
163710
+ if (((_a = tileInfo.spatialReference) === null || _a === void 0 ? void 0 : _a.latestWkid) !== 3857 || !Array.isArray(tileInfo.lods))
163711
+ return false;
163712
+ const zeroLod = tileInfo.lods[0];
163713
+ return zeroLod.level === 0 && Math.abs(zeroLod.resolution - 156543.03392800014) < .001;
163714
+ }
163679
163715
  /**
163680
163716
  * Fetch an ArcGIS service metadata, and returns its JSON representation.
163681
163717
  * If an access client has been configured for the specified formatId,
163682
163718
  * it will be used to apply required security token.
163683
163719
  * By default, response for each URL are cached.
163684
163720
  */
163685
- static async getServiceJson(url, formatId, userName, password, ignoreCache) {
163721
+ static async getServiceJson(url, formatId, userName, password, ignoreCache, requireToken) {
163686
163722
  if (!ignoreCache) {
163687
163723
  const cached = ArcGisUtilities._serviceCache.get(url);
163688
163724
  if (cached !== undefined)
163689
163725
  return cached;
163690
163726
  }
163727
+ let accessTokenRequired = false;
163691
163728
  try {
163692
- const tmpUrl = new URL(url);
163729
+ let tmpUrl = new URL(url);
163693
163730
  tmpUrl.searchParams.append("f", "json");
163694
- const accessClient = _IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.mapLayerFormatRegistry.getAccessClient(formatId);
163695
- if (accessClient) {
163696
- await ArcGisUtilities.appendSecurityToken(tmpUrl, accessClient, { mapLayerUrl: new URL(url), userName, password });
163731
+ // In some cases, caller might already know token is required, so append it immediately
163732
+ if (requireToken) {
163733
+ const accessClient = _IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.mapLayerFormatRegistry.getAccessClient(formatId);
163734
+ if (accessClient) {
163735
+ accessTokenRequired = true;
163736
+ await ArcGisUtilities.appendSecurityToken(tmpUrl, accessClient, { mapLayerUrl: new URL(url), userName, password });
163737
+ }
163738
+ }
163739
+ let response = await fetch(tmpUrl.toString(), { method: "GET" });
163740
+ // Append security token when corresponding error code is returned by ArcGIS service
163741
+ let errorCode = await ArcGisUtilities.checkForResponseErrorCode(response);
163742
+ if (!accessTokenRequired
163743
+ && errorCode !== undefined
163744
+ && errorCode === ArcGisErrorCode.TokenRequired) {
163745
+ accessTokenRequired = true;
163746
+ // If token required
163747
+ const accessClient = _IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.mapLayerFormatRegistry.getAccessClient(formatId);
163748
+ if (accessClient) {
163749
+ tmpUrl = new URL(url);
163750
+ tmpUrl.searchParams.append("f", "json");
163751
+ await ArcGisUtilities.appendSecurityToken(tmpUrl, accessClient, { mapLayerUrl: new URL(url), userName, password });
163752
+ response = await fetch(tmpUrl.toString(), { method: "GET" });
163753
+ errorCode = await ArcGisUtilities.checkForResponseErrorCode(response);
163754
+ }
163697
163755
  }
163698
- const response = await fetch(tmpUrl.toString(), { method: "GET" });
163699
- const errorCode = await ArcGisUtilities.checkForResponseErrorCode(response);
163700
163756
  const json = await response.json();
163701
- if (errorCode === undefined) {
163702
- ArcGisUtilities._serviceCache.set(url, json); // Cache the response only if it doesn't contain a token error.
163703
- }
163704
- else {
163705
- ArcGisUtilities._serviceCache.set(url, undefined);
163706
- }
163707
- return json; // Always return json, even though it contains an error code.
163757
+ const info = { content: json, accessTokenRequired };
163758
+ // Cache the response only if it doesn't contain any error.
163759
+ ArcGisUtilities._serviceCache.set(url, (errorCode === undefined ? info : undefined));
163760
+ return info; // Always return json, even though it contains an error code.
163708
163761
  }
163709
163762
  catch (_error) {
163710
163763
  ArcGisUtilities._serviceCache.set(url, undefined);
@@ -163715,19 +163768,19 @@ class ArcGisUtilities {
163715
163768
  */
163716
163769
  static async checkForResponseErrorCode(response) {
163717
163770
  var _a, _b, _c;
163718
- if (response.headers && ((_a = response.headers.get("content-type")) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes("json"))) {
163771
+ const tmpResponse = response;
163772
+ if (response.headers && ((_a = tmpResponse.headers.get("content-type")) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes("json"))) {
163719
163773
  try {
163720
163774
  // Note:
163721
163775
  // Since response stream can only be read once (i.e. calls to .json() method)
163722
163776
  // we have to clone the response object in order to check for potential error code,
163723
163777
  // but still keep the response stream as unread.
163724
- const clonedResponse = response.clone();
163778
+ const clonedResponse = tmpResponse.clone();
163725
163779
  const json = await clonedResponse.json();
163726
163780
  if (((_b = json === null || json === void 0 ? void 0 : json.error) === null || _b === void 0 ? void 0 : _b.code) !== undefined)
163727
163781
  return (_c = json === null || json === void 0 ? void 0 : json.error) === null || _c === void 0 ? void 0 : _c.code;
163728
163782
  }
163729
- catch {
163730
- }
163783
+ catch { }
163731
163784
  }
163732
163785
  return undefined;
163733
163786
  }
@@ -164571,8 +164624,53 @@ class ArcGISImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_0__.MapLa
164571
164624
  constructor(settings, usesCachedTiles) {
164572
164625
  var _a;
164573
164626
  super(settings, usesCachedTiles);
164627
+ /** Flag indicating if access token should be added to request.
164628
+ * @note We assume a service to require access token for the entire viewing session.
164629
+ */
164630
+ this._accessTokenRequired = false;
164574
164631
  this._accessClient = (_a = _IModelApp__WEBPACK_IMPORTED_MODULE_1__.IModelApp.mapLayerFormatRegistry) === null || _a === void 0 ? void 0 : _a.getAccessClient(settings.formatId);
164575
164632
  }
164633
+ /** Updates the accessClient token state whenever the status of the provider change.
164634
+ * @internal
164635
+ * */
164636
+ onStatusUpdated(status) {
164637
+ var _a;
164638
+ if (status === _internal__WEBPACK_IMPORTED_MODULE_0__.MapLayerImageryProviderStatus.RequireAuth) {
164639
+ // Invalidate the token, so a new one get generated
164640
+ if (((_a = this._accessClient) === null || _a === void 0 ? void 0 : _a.invalidateToken) !== undefined && this._lastAccessToken !== undefined) {
164641
+ this._accessClient.invalidateToken(this._lastAccessToken);
164642
+ }
164643
+ // Make sure we don't re-use this token again (i.e force login process)
164644
+ this._lastAccessToken = undefined;
164645
+ }
164646
+ }
164647
+ /**
164648
+ * Fetch an ArcGIS service metadata, and returns its JSON representation.
164649
+ * This wrapper maintains token state and should be used instead of the the ArcGisUtilities version.
164650
+ */
164651
+ async getServiceJson() {
164652
+ let metadata;
164653
+ try {
164654
+ metadata = await _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisUtilities.getServiceJson(this._settings.url, this._settings.formatId, this._settings.userName, this._settings.password);
164655
+ }
164656
+ catch (_e) {
164657
+ }
164658
+ if (metadata && metadata.accessTokenRequired) {
164659
+ const accessClient = _IModelApp__WEBPACK_IMPORTED_MODULE_1__.IModelApp.mapLayerFormatRegistry.getAccessClient(this._settings.formatId);
164660
+ if (accessClient) {
164661
+ try {
164662
+ // Keep track of last used access token, so we can invalidate it later when an errors occurs
164663
+ const accessToken = await accessClient.getAccessToken({ mapLayerUrl: new URL(this._settings.url) });
164664
+ this._lastAccessToken = accessToken;
164665
+ }
164666
+ catch {
164667
+ }
164668
+ }
164669
+ // By turning this ON, tiles requests will include security token
164670
+ this._accessTokenRequired = metadata.accessTokenRequired;
164671
+ }
164672
+ return metadata;
164673
+ }
164576
164674
  /**
164577
164675
  * Make a request to an ArcGIS service using the provided URL and init parameters.
164578
164676
  * @param url URL to query
@@ -164581,28 +164679,35 @@ class ArcGISImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_0__.MapLa
164581
164679
  */
164582
164680
  async fetch(url, options) {
164583
164681
  var _a, _b;
164682
+ let errorCode;
164584
164683
  const urlObj = new URL(url);
164585
- try {
164586
- if (this._accessClient) {
164587
- this._lastAccessToken = await _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisUtilities.appendSecurityToken(urlObj, this._accessClient, {
164588
- mapLayerUrl: new URL(this._settings.url),
164589
- userName: this._settings.userName,
164590
- password: this._settings.password
164591
- });
164592
- }
164593
- }
164594
- catch {
164684
+ if (this._accessTokenRequired && this._accessClient) {
164685
+ this._lastAccessToken = await _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisUtilities.appendSecurityToken(urlObj, this._accessClient, {
164686
+ mapLayerUrl: new URL(this._settings.url),
164687
+ userName: this._settings.userName,
164688
+ password: this._settings.password
164689
+ });
164595
164690
  }
164596
164691
  let response = await fetch(urlObj.toString(), options);
164597
- let errorCode = await _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisUtilities.checkForResponseErrorCode(response.clone());
164692
+ if ((this._lastAccessToken && response.status === 400)
164693
+ || ((_a = response.headers.get("content-type")) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes("htm"))) {
164694
+ // For some reasons when we make a request with the fetch() api and there is a token error
164695
+ // we receive a status 400 instead of proper json response. (i.e doing the same request in the browser gives a different response)
164696
+ // For some other request, we also seen error message in html.
164697
+ // When it occurs, we fall back to root service request so we get a proper JSON response with error code.
164698
+ const tmpUrl = new URL(this._settings.url);
164699
+ if (this._lastAccessToken && this._accessTokenRequired)
164700
+ tmpUrl.searchParams.append("token", this._lastAccessToken.token);
164701
+ tmpUrl.searchParams.append("f", "json");
164702
+ response = await fetch(tmpUrl.toString(), options);
164703
+ }
164704
+ errorCode = await _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisUtilities.checkForResponseErrorCode(response.clone());
164598
164705
  if (errorCode !== undefined &&
164599
164706
  (errorCode === _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisErrorCode.TokenRequired || errorCode === _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisErrorCode.InvalidToken)) {
164600
- let hasTokenError = true;
164601
- // **** Legacy token ONLY ***
164602
- // Token might have expired, make a second attempt by forcing new token.
164603
164707
  if (this._settings.userName && this._settings.userName.length > 0 && this._lastAccessToken) {
164604
- // Invalidate previously used token to force token re-generation
164605
- if (((_a = this._accessClient) === null || _a === void 0 ? void 0 : _a.invalidateToken) !== undefined && this._lastAccessToken !== undefined)
164708
+ // **** Legacy token ONLY ***
164709
+ // Token might have expired, make a second attempt by forcing new token.
164710
+ if (((_b = this._accessClient) === null || _b === void 0 ? void 0 : _b.invalidateToken) !== undefined && this._lastAccessToken !== undefined)
164606
164711
  this._accessClient.invalidateToken(this._lastAccessToken);
164607
164712
  const urlObj2 = new URL(url);
164608
164713
  if (this._accessClient) {
@@ -164615,32 +164720,21 @@ class ArcGISImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_0__.MapLa
164615
164720
  // Make a second attempt with refreshed token
164616
164721
  response = await fetch(urlObj2.toString(), options);
164617
164722
  errorCode = await _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisUtilities.checkForResponseErrorCode(response.clone());
164618
- if (errorCode !== undefined &&
164619
- (errorCode === _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisErrorCode.TokenRequired || errorCode === _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisErrorCode.InvalidToken)) {
164620
- // OK at this point, if response still contain a token error, we assume end-user will
164621
- // have to provide credentials again. Change the layer status so we
164622
- // don't make additional invalid requests..
164623
- if (((_b = this._accessClient) === null || _b === void 0 ? void 0 : _b.invalidateToken) !== undefined && this._lastAccessToken !== undefined) {
164624
- this._accessClient.invalidateToken(this._lastAccessToken);
164625
- this._lastAccessToken = undefined;
164626
- }
164627
- }
164628
- else {
164629
- hasTokenError = false;
164630
- }
164631
164723
  }
164632
- if (hasTokenError
164633
- && this.status === _internal__WEBPACK_IMPORTED_MODULE_0__.MapLayerImageryProviderStatus.Valid) {
164634
- // Only report if status is currently valid (avoid reporting twice the same error)
164635
- this.setStatus(_internal__WEBPACK_IMPORTED_MODULE_0__.MapLayerImageryProviderStatus.RequireAuth);
164636
- const msg = _IModelApp__WEBPACK_IMPORTED_MODULE_1__.IModelApp.localization.getLocalizedString("iModelJs:MapLayers.Messages.FetchTooltipTokenError", { layerName: this._settings.name });
164637
- _IModelApp__WEBPACK_IMPORTED_MODULE_1__.IModelApp.notifications.outputMessage(new _NotificationManager__WEBPACK_IMPORTED_MODULE_2__.NotifyMessageDetails(_NotificationManager__WEBPACK_IMPORTED_MODULE_2__.OutputMessagePriority.Warning, msg));
164724
+ if (errorCode === _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisErrorCode.TokenRequired || errorCode === _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisErrorCode.InvalidToken) {
164725
+ // Looks like the initially generated token has expired.
164726
+ if (this.status === _internal__WEBPACK_IMPORTED_MODULE_0__.MapLayerImageryProviderStatus.Valid) {
164727
+ // Only report new status change to avoid spamming the UI
164728
+ this.setStatus(_internal__WEBPACK_IMPORTED_MODULE_0__.MapLayerImageryProviderStatus.RequireAuth);
164729
+ this.onStatusChanged.raiseEvent(this);
164730
+ const msg = _IModelApp__WEBPACK_IMPORTED_MODULE_1__.IModelApp.localization.getLocalizedString("iModelJs:MapLayers.Messages.FetchTooltipTokenError", { layerName: this._settings.name });
164731
+ _IModelApp__WEBPACK_IMPORTED_MODULE_1__.IModelApp.notifications.outputMessage(new _NotificationManager__WEBPACK_IMPORTED_MODULE_2__.NotifyMessageDetails(_NotificationManager__WEBPACK_IMPORTED_MODULE_2__.OutputMessagePriority.Warning, msg));
164732
+ }
164638
164733
  }
164639
164734
  }
164640
164735
  return response;
164641
164736
  }
164642
164737
  }
164643
- ArcGISImageryProvider._serviceCache = new Map();
164644
164738
 
164645
164739
 
164646
164740
  /***/ }),
@@ -164663,6 +164757,7 @@ __webpack_require__.r(__webpack_exports__);
164663
164757
  /* harmony import */ var _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @itwin/core-geometry */ "../../core/geometry/lib/esm/core-geometry.js");
164664
164758
  /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! lodash */ "../../common/temp/node_modules/.pnpm/lodash@4.17.21/node_modules/lodash/lodash.js");
164665
164759
  /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_5__);
164760
+ /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
164666
164761
  /*---------------------------------------------------------------------------------------------
164667
164762
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
164668
164763
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -164676,6 +164771,8 @@ __webpack_require__.r(__webpack_exports__);
164676
164771
 
164677
164772
 
164678
164773
 
164774
+
164775
+ const loggerCategory = "MapLayerImageryProvider.ArcGISMapLayerImageryProvider";
164679
164776
  /** @internal */
164680
164777
  class ArcGISMapLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_2__.ArcGISImageryProvider {
164681
164778
  constructor(settings) {
@@ -164685,6 +164782,8 @@ class ArcGISMapLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_2
164685
164782
  this._copyrightText = "Copyright";
164686
164783
  this._querySupported = false;
164687
164784
  this._tileMapSupported = false;
164785
+ this._mapSupported = false;
164786
+ this._tilesOnly = false;
164688
164787
  this._accessClient = _IModelApp__WEBPACK_IMPORTED_MODULE_1__.IModelApp.mapLayerFormatRegistry.getAccessClient(settings.formatId);
164689
164788
  }
164690
164789
  get _filterByCartoRange() { return false; } // Can't trust footprint ranges (USGS Hydro)
@@ -164713,6 +164812,7 @@ class ArcGISMapLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_2
164713
164812
  return await this.getImageFromTileResponse(tileResponse, zoomLevel);
164714
164813
  }
164715
164814
  catch (error) {
164815
+ _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_6__.Logger.logError(loggerCategory, `Error occurred when loading tile(${row},${column},${zoomLevel}) : ${error}`);
164716
164816
  return undefined;
164717
164817
  }
164718
164818
  }
@@ -164749,18 +164849,12 @@ class ArcGISMapLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_2
164749
164849
  resolveChildren(childIds); // Resolve all children
164750
164850
  }
164751
164851
  }
164752
- isEpsg3857Compatible(tileInfo) {
164753
- var _a;
164754
- if (((_a = tileInfo.spatialReference) === null || _a === void 0 ? void 0 : _a.latestWkid) !== 3857 || !Array.isArray(tileInfo.lods))
164755
- return false;
164756
- const zeroLod = tileInfo.lods[0];
164757
- return zeroLod.level === 0 && Math.abs(zeroLod.resolution - 156543.03392800014) < .001;
164758
- }
164759
164852
  async initialize() {
164760
164853
  var _a, _b, _c, _d, _e;
164761
- const json = await _internal__WEBPACK_IMPORTED_MODULE_2__.ArcGisUtilities.getServiceJson(this._settings.url, this._settings.formatId, this._settings.userName, this._settings.password);
164762
- if (json === undefined)
164854
+ const metadata = await this.getServiceJson();
164855
+ if ((metadata === null || metadata === void 0 ? void 0 : metadata.content) === undefined)
164763
164856
  throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.ServerError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.ValidationFailed, "");
164857
+ const json = metadata.content;
164764
164858
  if (((_a = json === null || json === void 0 ? void 0 : json.error) === null || _a === void 0 ? void 0 : _a.code) === _internal__WEBPACK_IMPORTED_MODULE_2__.ArcGisErrorCode.TokenRequired || ((_b = json === null || json === void 0 ? void 0 : json.error) === null || _b === void 0 ? void 0 : _b.code) === _internal__WEBPACK_IMPORTED_MODULE_2__.ArcGisErrorCode.InvalidToken) {
164765
164859
  // Check again layer status, it might have change during await.
164766
164860
  if (this.status === _internal__WEBPACK_IMPORTED_MODULE_2__.MapLayerImageryProviderStatus.Valid) {
@@ -164768,54 +164862,68 @@ class ArcGISMapLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_2
164768
164862
  return; // By returning (i.e not throwing), we ensure the tileTree get created and current provider is preserved to report status.
164769
164863
  }
164770
164864
  }
164771
- if (json !== undefined) {
164772
- this.serviceJson = json;
164773
- if (json.capabilities) {
164774
- this._querySupported = json.capabilities.indexOf("Query") >= 0;
164775
- this._tileMapSupported = json.capabilities.indexOf("Tilemap") >= 0;
164776
- }
164777
- if (json.copyrightText)
164778
- this._copyrightText = json.copyrightText;
164779
- if (false !== (this._usesCachedTiles = json.tileInfo !== undefined && this.isEpsg3857Compatible(json.tileInfo))) {
164780
- if (json.maxScale !== undefined && json.maxScale !== 0 && Array.isArray(json.tileInfo.lods)) {
164781
- for (; this._maxDepthFromLod < json.tileInfo.lods.length && json.tileInfo.lods[this._maxDepthFromLod].scale > json.maxScale; this._maxDepthFromLod++)
164782
- ;
164865
+ this.serviceJson = json;
164866
+ if (json.capabilities) {
164867
+ const capabilities = json.capabilities.split(",");
164868
+ this._querySupported = capabilities.includes("Query");
164869
+ this._tileMapSupported = capabilities.includes("Tilemap");
164870
+ this._mapSupported = capabilities.includes("Map");
164871
+ this._tilesOnly = capabilities.includes("TilesOnly");
164872
+ }
164873
+ if (json.copyrightText)
164874
+ this._copyrightText = json.copyrightText;
164875
+ this._usesCachedTiles = !!json.tileInfo;
164876
+ if (this._usesCachedTiles) {
164877
+ // Only EPSG:3857 is supported with pre-rendered tiles. Fall back to 'Export' queries if possible otherwise throw.
164878
+ if (!_internal__WEBPACK_IMPORTED_MODULE_2__.ArcGisUtilities.isEpsg3857Compatible(json.tileInfo)) {
164879
+ if (this._mapSupported && !this._tilesOnly) {
164880
+ this._usesCachedTiles = false;
164881
+ }
164882
+ else {
164883
+ throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.ServerError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.ValidationFailed, "Invalid coordinate system");
164783
164884
  }
164784
164885
  }
164886
+ }
164887
+ if (this._usesCachedTiles) {
164888
+ // Read max LOD
164889
+ if (json.maxScale !== undefined && json.maxScale !== 0 && Array.isArray(json.tileInfo.lods)) {
164890
+ for (; this._maxDepthFromLod < json.tileInfo.lods.length && json.tileInfo.lods[this._maxDepthFromLod].scale > json.maxScale; this._maxDepthFromLod++)
164891
+ ;
164892
+ }
164785
164893
  // Create tile map object only if we are going to request tiles from this server and it support tilemap requests.
164786
- if (this._usesCachedTiles && this._tileMapSupported) {
164894
+ if (this._tileMapSupported) {
164787
164895
  this._tileMap = new _internal__WEBPACK_IMPORTED_MODULE_2__.ArcGISTileMap(this._settings.url, this._settings, (_d = (_c = json.tileInfo) === null || _c === void 0 ? void 0 : _c.lods) === null || _d === void 0 ? void 0 : _d.length, this._accessClient);
164788
164896
  }
164789
- // Read range using fullextent from service metadata
164790
- if (json.fullExtent) {
164791
- if (json.fullExtent.spatialReference.latestWkid === 3857 || json.fullExtent.spatialReference.wkid === 102100) {
164792
- const range3857 = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_4__.Range2d.createFrom({
164793
- low: { x: json.fullExtent.xmin, y: json.fullExtent.ymin },
164794
- high: { x: json.fullExtent.xmax, y: json.fullExtent.ymax }
164795
- });
164796
- const west = this.getEPSG4326Lon(range3857.xLow);
164797
- const south = this.getEPSG4326Lat(range3857.yLow);
164798
- const east = this.getEPSG4326Lon(range3857.xHigh);
164799
- const north = this.getEPSG4326Lat(range3857.yHigh);
164800
- this.cartoRange = _internal__WEBPACK_IMPORTED_MODULE_2__.MapCartoRectangle.fromDegrees(west, south, east, north);
164801
- }
164802
- }
164803
- // Read minLOD if available
164804
- if (json.minLOD !== undefined) {
164805
- const minLod = parseInt(json.minLOD, 10);
164806
- if (!Number.isNaN(minLod)) {
164807
- this._minDepthFromLod = minLod;
164808
- }
164809
- }
164810
- else if (json.minScale) {
164811
- // Read min LOD using minScale
164812
- const minScale = json.minScale;
164813
- if (((_e = json.tileInfo) === null || _e === void 0 ? void 0 : _e.lods) !== undefined && (0,lodash__WEBPACK_IMPORTED_MODULE_5__.isArray)(json.tileInfo.lods)) {
164814
- for (const lod of json.tileInfo.lods) {
164815
- if (lod.scale < minScale) {
164816
- this._minDepthFromLod = lod.level;
164817
- break;
164818
- }
164897
+ }
164898
+ // Read range using fullextent from service metadata
164899
+ if (json.fullExtent) {
164900
+ if (json.fullExtent.spatialReference.latestWkid === 3857 || json.fullExtent.spatialReference.wkid === 102100) {
164901
+ const range3857 = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_4__.Range2d.createFrom({
164902
+ low: { x: json.fullExtent.xmin, y: json.fullExtent.ymin },
164903
+ high: { x: json.fullExtent.xmax, y: json.fullExtent.ymax }
164904
+ });
164905
+ const west = this.getEPSG4326Lon(range3857.xLow);
164906
+ const south = this.getEPSG4326Lat(range3857.yLow);
164907
+ const east = this.getEPSG4326Lon(range3857.xHigh);
164908
+ const north = this.getEPSG4326Lat(range3857.yHigh);
164909
+ this.cartoRange = _internal__WEBPACK_IMPORTED_MODULE_2__.MapCartoRectangle.fromDegrees(west, south, east, north);
164910
+ }
164911
+ }
164912
+ // Read minLOD if available
164913
+ if (json.minLOD !== undefined) {
164914
+ const minLod = parseInt(json.minLOD, 10);
164915
+ if (!Number.isNaN(minLod)) {
164916
+ this._minDepthFromLod = minLod;
164917
+ }
164918
+ }
164919
+ else if (json.minScale) {
164920
+ // Read min LOD using minScale
164921
+ const minScale = json.minScale;
164922
+ if (((_e = json.tileInfo) === null || _e === void 0 ? void 0 : _e.lods) !== undefined && (0,lodash__WEBPACK_IMPORTED_MODULE_5__.isArray)(json.tileInfo.lods)) {
164923
+ for (const lod of json.tileInfo.lods) {
164924
+ if (lod.scale < minScale) {
164925
+ this._minDepthFromLod = lod.level;
164926
+ break;
164819
164927
  }
164820
164928
  }
164821
164929
  }
@@ -166402,7 +166510,7 @@ class WmtsMapLayerFormat extends ImageryMapLayerFormat {
166402
166510
  }
166403
166511
  if (supportedTms.length === 0) {
166404
166512
  // This WMTS server doesn't support either GoogleMaps or WSG84
166405
- return { status: _internal__WEBPACK_IMPORTED_MODULE_0__.MapLayerSourceStatus.InvalidTileTree };
166513
+ return { status: _internal__WEBPACK_IMPORTED_MODULE_0__.MapLayerSourceStatus.InvalidCoordinateSystem };
166406
166514
  }
166407
166515
  let subLayerId = 0;
166408
166516
  (_c = capabilities === null || capabilities === void 0 ? void 0 : capabilities.contents) === null || _c === void 0 ? void 0 : _c.layers.forEach((layer) => {
@@ -166435,7 +166543,8 @@ class WmtsMapLayerFormat extends ImageryMapLayerFormat {
166435
166543
  WmtsMapLayerFormat.formatId = "WMTS";
166436
166544
  class ArcGISMapLayerFormat extends ImageryMapLayerFormat {
166437
166545
  static async validateSource(url, userName, password, ignoreCache) {
166438
- return _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisUtilities.validateSource(url, this.formatId, ["map"], userName, password, ignoreCache);
166546
+ // Some Map service supporting only tiles don't include the 'Map' capabilities, thus we can't make it mandatory.
166547
+ return _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGisUtilities.validateSource(url, this.formatId, [], userName, password, ignoreCache);
166439
166548
  }
166440
166549
  static createImageryProvider(settings) {
166441
166550
  return new _internal__WEBPACK_IMPORTED_MODULE_0__.ArcGISMapLayerImageryProvider(settings);
@@ -166535,13 +166644,6 @@ class MapLayerImageryProvider {
166535
166644
  this._mercatorTilingScheme = new _internal__WEBPACK_IMPORTED_MODULE_5__.WebMercatorTilingScheme();
166536
166645
  this._geographicTilingScheme = new _internal__WEBPACK_IMPORTED_MODULE_5__.GeographicTilingScheme(2, 1, true);
166537
166646
  }
166538
- /** @internal */
166539
- setStatus(status) {
166540
- if (this.status !== status) {
166541
- this._status = status;
166542
- this.onStatusChanged.raiseEvent(this);
166543
- }
166544
- }
166545
166647
  get status() { return this._status; }
166546
166648
  resetStatus() { this.setStatus(MapLayerImageryProviderStatus.Valid); }
166547
166649
  get tileSize() { return this._usesCachedTiles ? tileImageSize : untiledImageSize; }
@@ -166613,6 +166715,21 @@ class MapLayerImageryProvider {
166613
166715
  (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(false, "Invalid tile content type");
166614
166716
  return undefined;
166615
166717
  }
166718
+ /** Change the status of this provider.
166719
+ * Sub-classes should override 'onStatusUpdated' instead of this method.
166720
+ * @internal */
166721
+ setStatus(status) {
166722
+ if (this._status !== status) {
166723
+ this.onStatusUpdated(status);
166724
+ this._status = status;
166725
+ this.onStatusChanged.raiseEvent(this);
166726
+ }
166727
+ }
166728
+ /** Method called whenever the status changes, giving the opportunity to sub-classes to have a custom behavior.
166729
+ * @internal
166730
+ * */
166731
+ onStatusUpdated(_newStatus) {
166732
+ }
166616
166733
  /** @internal */
166617
166734
  setRequestAuthorization(headers) {
166618
166735
  if (this._settings.userName && this._settings.password) {
@@ -166800,6 +166917,8 @@ var MapLayerSourceStatus;
166800
166917
  MapLayerSourceStatus[MapLayerSourceStatus["InvalidUrl"] = 4] = "InvalidUrl";
166801
166918
  /** Authorization is required to access this map layer source. */
166802
166919
  MapLayerSourceStatus[MapLayerSourceStatus["RequireAuth"] = 5] = "RequireAuth";
166920
+ /** Map-layer coordinate system is not supported */
166921
+ MapLayerSourceStatus[MapLayerSourceStatus["InvalidCoordinateSystem"] = 6] = "InvalidCoordinateSystem";
166803
166922
  })(MapLayerSourceStatus || (MapLayerSourceStatus = {}));
166804
166923
  /** A source for map layers. These may be catalogued for convenient use by users or applications.
166805
166924
  * @public
@@ -167462,7 +167581,6 @@ class MapTile extends _internal__WEBPACK_IMPORTED_MODULE_7__.RealityTile {
167462
167581
  if (undefined !== this._graphic && this.imageryIsReady)
167463
167582
  return this._graphic;
167464
167583
  const geometry = this.renderGeometry;
167465
- (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(undefined !== geometry);
167466
167584
  if (undefined === geometry)
167467
167585
  return undefined;
167468
167586
  const textures = this.getDrapeTextures();
@@ -286561,7 +286679,7 @@ class TestContext {
286561
286679
  this.initializeRpcInterfaces({ title: this.settings.Backend.name, version: this.settings.Backend.version });
286562
286680
  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` } });
286563
286681
  await core_frontend_1.NoRenderApp.startup({
286564
- applicationVersion: "3.6.0-dev.55",
286682
+ applicationVersion: "3.6.0-dev.59",
286565
286683
  applicationId: this.settings.gprid,
286566
286684
  authorizationClient: new frontend_1.TestFrontendAuthorizationClient(this.adminUserAccessToken),
286567
286685
  hubAccess: new imodels_access_frontend_1.FrontendIModelsAccess(iModelClient),
@@ -286733,14 +286851,15 @@ __webpack_require__.r(__webpack_exports__);
286733
286851
  /* harmony export */ "VariableValueType": () => (/* reexport safe */ _presentation_common_rules_Variables__WEBPACK_IMPORTED_MODULE_74__.VariableValueType),
286734
286852
  /* harmony export */ "VariableValueTypes": () => (/* reexport safe */ _presentation_common_RulesetVariables__WEBPACK_IMPORTED_MODULE_8__.VariableValueTypes),
286735
286853
  /* harmony export */ "addFieldHierarchy": () => (/* reexport safe */ _presentation_common_content_ContentTraverser__WEBPACK_IMPORTED_MODULE_30__.addFieldHierarchy),
286736
- /* harmony export */ "applyOptionalPrefix": () => (/* reexport safe */ _presentation_common_content_ContentTraverser__WEBPACK_IMPORTED_MODULE_30__.applyOptionalPrefix),
286737
286854
  /* harmony export */ "combineDiagnosticsSeverities": () => (/* reexport safe */ _presentation_common_Diagnostics__WEBPACK_IMPORTED_MODULE_1__.combineDiagnosticsSeverities),
286855
+ /* harmony export */ "combineFieldNames": () => (/* reexport safe */ _presentation_common_content_ContentTraverser__WEBPACK_IMPORTED_MODULE_30__.combineFieldNames),
286738
286856
  /* harmony export */ "compareDiagnosticsSeverities": () => (/* reexport safe */ _presentation_common_Diagnostics__WEBPACK_IMPORTED_MODULE_1__.compareDiagnosticsSeverities),
286739
286857
  /* harmony export */ "createFieldHierarchies": () => (/* reexport safe */ _presentation_common_content_ContentTraverser__WEBPACK_IMPORTED_MODULE_30__.createFieldHierarchies),
286740
286858
  /* harmony export */ "getFieldByName": () => (/* reexport safe */ _presentation_common_content_Fields__WEBPACK_IMPORTED_MODULE_24__.getFieldByName),
286741
286859
  /* harmony export */ "getInstancesCount": () => (/* reexport safe */ _presentation_common_Utils__WEBPACK_IMPORTED_MODULE_11__.getInstancesCount),
286742
286860
  /* harmony export */ "isComputeSelectionRequestOptions": () => (/* reexport safe */ _presentation_common_PresentationManagerOptions__WEBPACK_IMPORTED_MODULE_6__.isComputeSelectionRequestOptions),
286743
286861
  /* harmony export */ "isSingleElementPropertiesRequestOptions": () => (/* reexport safe */ _presentation_common_PresentationManagerOptions__WEBPACK_IMPORTED_MODULE_6__.isSingleElementPropertiesRequestOptions),
286862
+ /* harmony export */ "parseCombinedFieldNames": () => (/* reexport safe */ _presentation_common_content_ContentTraverser__WEBPACK_IMPORTED_MODULE_30__.parseCombinedFieldNames),
286744
286863
  /* harmony export */ "traverseContent": () => (/* reexport safe */ _presentation_common_content_ContentTraverser__WEBPACK_IMPORTED_MODULE_30__.traverseContent),
286745
286864
  /* harmony export */ "traverseContentItem": () => (/* reexport safe */ _presentation_common_content_ContentTraverser__WEBPACK_IMPORTED_MODULE_30__.traverseContentItem),
286746
286865
  /* harmony export */ "traverseFieldHierarchy": () => (/* reexport safe */ _presentation_common_content_ContentTraverser__WEBPACK_IMPORTED_MODULE_30__.traverseFieldHierarchy)
@@ -287143,37 +287262,64 @@ var InstanceKey;
287143
287262
  return lhs.id.localeCompare(rhs.id);
287144
287263
  }
287145
287264
  InstanceKey.compare = compare;
287146
- /** Serialize [[InstanceKey]] to JSON */
287147
- function toJSON(json) {
287148
- return { ...json, id: json.id.toString() };
287265
+ /**
287266
+ * Serialize [[InstanceKey]] to JSON
287267
+ * @deprecated in 3.x. Use [[InstanceKey]].
287268
+ */
287269
+ // istanbul ignore next
287270
+ // eslint-disable-next-line deprecation/deprecation
287271
+ function toJSON(key) {
287272
+ return { ...key };
287149
287273
  }
287150
287274
  InstanceKey.toJSON = toJSON;
287151
- /** Deserialize [[InstanceKey]] from JSON */
287275
+ /**
287276
+ * Deserialize [[InstanceKey]] from JSON
287277
+ * @deprecated in 3.x. Use [[InstanceKey]].
287278
+ */
287279
+ // istanbul ignore next
287280
+ // eslint-disable-next-line deprecation/deprecation
287152
287281
  function fromJSON(json) {
287153
- return { ...json, id: _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.fromJSON(json.id) };
287282
+ return { ...json };
287154
287283
  }
287155
287284
  InstanceKey.fromJSON = fromJSON;
287156
287285
  })(InstanceKey || (InstanceKey = {}));
287157
287286
  /** @public */
287158
287287
  var ClassInfo;
287159
287288
  (function (ClassInfo) {
287160
- /** Serialize [[ClassInfo]] to JSON */
287289
+ /**
287290
+ * Serialize [[ClassInfo]] to JSON
287291
+ * @deprecated in 3.x. Use [[ClassInfo]].
287292
+ */
287293
+ // istanbul ignore next
287294
+ // eslint-disable-next-line deprecation/deprecation
287161
287295
  function toJSON(info) {
287162
- return { ...info, id: info.id.toString() };
287296
+ return { ...info };
287163
287297
  }
287164
287298
  ClassInfo.toJSON = toJSON;
287165
- /** Deserialize [[ClassInfo]] from JSON */
287299
+ /**
287300
+ * Deserialize [[ClassInfo]] from JSON
287301
+ * @deprecated in 3.x. Use [[ClassInfo]].
287302
+ */
287303
+ // istanbul ignore next
287304
+ // eslint-disable-next-line deprecation/deprecation
287166
287305
  function fromJSON(json) {
287167
- return { ...json, id: _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.fromJSON(json.id) };
287306
+ return { ...json };
287168
287307
  }
287169
287308
  ClassInfo.fromJSON = fromJSON;
287170
287309
  })(ClassInfo || (ClassInfo = {}));
287171
- /** @beta */
287310
+ /**
287311
+ * Contains utilities for working with objects of [[NavigationPropertyInfo]] type.
287312
+ * @beta
287313
+ */
287172
287314
  var NavigationPropertyInfo;
287173
287315
  (function (NavigationPropertyInfo) {
287174
- /** Serialize [[NavigationPropertyInfo]] to JSON */
287316
+ /**
287317
+ * Serialize [[NavigationPropertyInfo]] to JSON
287318
+ * @deprecated in 3.x. Use [[toCompressedJSON]].
287319
+ */
287320
+ // istanbul ignore next
287175
287321
  function toJSON(info) {
287176
- return { ...info, classInfo: ClassInfo.toJSON(info.classInfo), targetClassInfo: ClassInfo.toJSON(info.classInfo) };
287322
+ return { ...info };
287177
287323
  }
287178
287324
  NavigationPropertyInfo.toJSON = toJSON;
287179
287325
  /** Serialize [[NavigationPropertyInfo]] to compressed JSON */
@@ -287189,9 +287335,13 @@ var NavigationPropertyInfo;
287189
287335
  };
287190
287336
  }
287191
287337
  NavigationPropertyInfo.toCompressedJSON = toCompressedJSON;
287192
- /** Deserialize [[NavigationPropertyInfo]] from JSON */
287338
+ /**
287339
+ * Deserialize [[NavigationPropertyInfo]] from JSON
287340
+ * @deprecated in 3.x. Use [[fromCompressedJSON]].
287341
+ */
287342
+ // istanbul ignore next
287193
287343
  function fromJSON(json) {
287194
- return { ...json, classInfo: ClassInfo.fromJSON(json.classInfo), targetClassInfo: ClassInfo.fromJSON(json.targetClassInfo) };
287344
+ return { ...json };
287195
287345
  }
287196
287346
  NavigationPropertyInfo.fromJSON = fromJSON;
287197
287347
  /** Deserialize [[NavigationPropertyInfo]] from compressed JSON */
@@ -287207,13 +287357,13 @@ var NavigationPropertyInfo;
287207
287357
  /** @public */
287208
287358
  var PropertyInfo;
287209
287359
  (function (PropertyInfo) {
287210
- /** Serialize [[PropertyInfo]] to JSON */
287360
+ /**
287361
+ * Serialize [[PropertyInfo]] to JSON
287362
+ * @deprecated in 3.x. Use [[PropertyInfo]].
287363
+ */
287364
+ // istanbul ignore next
287211
287365
  function toJSON(info) {
287212
- return {
287213
- ...info,
287214
- classInfo: ClassInfo.toJSON(info.classInfo),
287215
- ...(info.navigationPropertyInfo ? { navigationPropertyInfo: NavigationPropertyInfo.toJSON(info.navigationPropertyInfo) } : undefined),
287216
- };
287366
+ return { ...info };
287217
287367
  }
287218
287368
  PropertyInfo.toJSON = toJSON;
287219
287369
  /** Serialize [[PropertyInfo]] to compressed JSON */
@@ -287228,27 +287378,25 @@ var PropertyInfo;
287228
287378
  };
287229
287379
  }
287230
287380
  PropertyInfo.toCompressedJSON = toCompressedJSON;
287231
- /** Deserialize [[PropertyInfo]] from JSON */
287381
+ /**
287382
+ * Deserialize [[PropertyInfo]] from JSON
287383
+ * @deprecated in 3.x. Use [[PropertyInfo]].
287384
+ */
287385
+ // istanbul ignore next
287232
287386
  function fromJSON(json) {
287233
- return {
287234
- ...json,
287235
- classInfo: ClassInfo.fromJSON(json.classInfo),
287236
- ...(json.navigationPropertyInfo ? { navigationPropertyInfo: NavigationPropertyInfo.fromJSON(json.navigationPropertyInfo) } : undefined),
287237
- };
287387
+ return { ...json };
287238
287388
  }
287239
287389
  PropertyInfo.fromJSON = fromJSON;
287240
287390
  })(PropertyInfo || (PropertyInfo = {}));
287241
287391
  /** @public */
287242
287392
  var RelatedClassInfo;
287243
287393
  (function (RelatedClassInfo) {
287244
- /** Serialize [[RelatedClassInfo]] to JSON */
287394
+ /**
287395
+ * Serialize [[RelatedClassInfo]] to JSON
287396
+ * @deprecated in 3.x. Use [[RelatedClassInfo]].
287397
+ */
287245
287398
  function toJSON(info) {
287246
- return {
287247
- ...info,
287248
- sourceClassInfo: ClassInfo.toJSON(info.sourceClassInfo),
287249
- targetClassInfo: ClassInfo.toJSON(info.targetClassInfo),
287250
- relationshipInfo: ClassInfo.toJSON(info.relationshipInfo),
287251
- };
287399
+ return { ...info };
287252
287400
  }
287253
287401
  RelatedClassInfo.toJSON = toJSON;
287254
287402
  /** Serialize [[RelatedClassInfo]] to compressed JSON */
@@ -287267,32 +287415,24 @@ var RelatedClassInfo;
287267
287415
  };
287268
287416
  }
287269
287417
  RelatedClassInfo.toCompressedJSON = toCompressedJSON;
287270
- /** Deserialize [[RelatedClassInfo]] from JSON */
287418
+ /**
287419
+ * Deserialize [[RelatedClassInfo]] from JSON
287420
+ * @deprecated in 3.x. Use [[RelatedClassInfo]].
287421
+ */
287271
287422
  function fromJSON(json) {
287272
- var _a, _b;
287273
- return {
287274
- ...json,
287275
- sourceClassInfo: ClassInfo.fromJSON(json.sourceClassInfo),
287276
- targetClassInfo: ClassInfo.fromJSON(json.targetClassInfo),
287277
- isPolymorphicTargetClass: (_a = json.isPolymorphicTargetClass) !== null && _a !== void 0 ? _a : false,
287278
- relationshipInfo: ClassInfo.fromJSON(json.relationshipInfo),
287279
- isPolymorphicRelationship: (_b = json.isPolymorphicRelationship) !== null && _b !== void 0 ? _b : false,
287280
- };
287423
+ return { ...json };
287281
287424
  }
287282
287425
  RelatedClassInfo.fromJSON = fromJSON;
287283
287426
  /** Deserialize [[RelatedClassInfo]] from compressed JSON */
287284
287427
  function fromCompressedJSON(json, classesMap) {
287285
- var _a, _b;
287286
287428
  (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(classesMap.hasOwnProperty(json.sourceClassInfo));
287287
287429
  (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(classesMap.hasOwnProperty(json.targetClassInfo));
287288
287430
  (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(classesMap.hasOwnProperty(json.relationshipInfo));
287289
287431
  return {
287290
287432
  ...json,
287291
- sourceClassInfo: ClassInfo.fromJSON({ id: json.sourceClassInfo, ...classesMap[json.sourceClassInfo] }),
287292
- targetClassInfo: ClassInfo.fromJSON({ id: json.targetClassInfo, ...classesMap[json.targetClassInfo] }),
287293
- isPolymorphicTargetClass: (_a = json.isPolymorphicTargetClass) !== null && _a !== void 0 ? _a : false,
287294
- relationshipInfo: ClassInfo.fromJSON({ id: json.relationshipInfo, ...classesMap[json.relationshipInfo] }),
287295
- isPolymorphicRelationship: (_b = json.isPolymorphicRelationship) !== null && _b !== void 0 ? _b : false,
287433
+ sourceClassInfo: { id: json.sourceClassInfo, ...classesMap[json.sourceClassInfo] },
287434
+ targetClassInfo: { id: json.targetClassInfo, ...classesMap[json.targetClassInfo] },
287435
+ relationshipInfo: { id: json.relationshipInfo, ...classesMap[json.relationshipInfo] },
287296
287436
  };
287297
287437
  }
287298
287438
  RelatedClassInfo.fromCompressedJSON = fromCompressedJSON;
@@ -287327,6 +287467,7 @@ var RelatedClassInfo;
287327
287467
  RelatedClassInfo.strip = strip;
287328
287468
  })(RelatedClassInfo || (RelatedClassInfo = {}));
287329
287469
  /** @public */
287470
+ // eslint-disable-next-line @typescript-eslint/no-redeclare
287330
287471
  var RelatedClassInfoWithOptionalRelationship;
287331
287472
  (function (RelatedClassInfoWithOptionalRelationship) {
287332
287473
  /** Serialize [[RelatedClassInfoWithOptionalRelationship]] to compressed JSON */
@@ -287350,7 +287491,6 @@ var RelatedClassInfoWithOptionalRelationship;
287350
287491
  RelatedClassInfoWithOptionalRelationship.toCompressedJSON = toCompressedJSON;
287351
287492
  /** Deserialize [[RelatedClassInfoWithOptionalRelationship]] from compressed JSON */
287352
287493
  function fromCompressedJSON(json, classesMap) {
287353
- var _a;
287354
287494
  const { sourceClassInfo, targetClassInfo, relationshipInfo, ...otherProps } = json;
287355
287495
  (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(classesMap.hasOwnProperty(sourceClassInfo));
287356
287496
  (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(classesMap.hasOwnProperty(targetClassInfo));
@@ -287358,10 +287498,9 @@ var RelatedClassInfoWithOptionalRelationship;
287358
287498
  (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(classesMap.hasOwnProperty(relationshipInfo));
287359
287499
  return {
287360
287500
  ...otherProps,
287361
- sourceClassInfo: ClassInfo.fromJSON({ id: sourceClassInfo, ...classesMap[sourceClassInfo] }),
287362
- targetClassInfo: ClassInfo.fromJSON({ id: targetClassInfo, ...classesMap[targetClassInfo] }),
287363
- isPolymorphicTargetClass: (_a = json.isPolymorphicTargetClass) !== null && _a !== void 0 ? _a : false,
287364
- ...(relationshipInfo ? { relationshipInfo: ClassInfo.fromJSON({ id: relationshipInfo, ...classesMap[relationshipInfo] }) } : undefined),
287501
+ sourceClassInfo: { id: sourceClassInfo, ...classesMap[sourceClassInfo] },
287502
+ targetClassInfo: { id: targetClassInfo, ...classesMap[targetClassInfo] },
287503
+ ...(relationshipInfo ? { relationshipInfo: { id: relationshipInfo, ...classesMap[relationshipInfo] } } : undefined),
287365
287504
  };
287366
287505
  }
287367
287506
  RelatedClassInfoWithOptionalRelationship.fromCompressedJSON = fromCompressedJSON;
@@ -287612,6 +287751,7 @@ class KeySet {
287612
287751
  get nodeKeys() {
287613
287752
  const set = new Set();
287614
287753
  for (const serialized of this._nodeKeys) {
287754
+ // eslint-disable-next-line deprecation/deprecation
287615
287755
  const key = _hierarchy_Key__WEBPACK_IMPORTED_MODULE_2__.NodeKey.fromJSON(JSON.parse(serialized));
287616
287756
  set.add(key);
287617
287757
  }
@@ -287644,6 +287784,7 @@ class KeySet {
287644
287784
  }
287645
287785
  addKeySet(keyset, pred) {
287646
287786
  for (const key of keyset._nodeKeys) {
287787
+ // eslint-disable-next-line deprecation/deprecation
287647
287788
  if (!pred || pred(_hierarchy_Key__WEBPACK_IMPORTED_MODULE_2__.NodeKey.fromJSON(JSON.parse(key))))
287648
287789
  this._nodeKeys.add(key);
287649
287790
  }
@@ -287872,6 +288013,7 @@ class KeySet {
287872
288013
  if (some(entry[1], (id) => callback({ className, id })))
287873
288014
  return true;
287874
288015
  }
288016
+ // eslint-disable-next-line deprecation/deprecation
287875
288017
  return some(this._nodeKeys, (serializedKey) => callback(_hierarchy_Key__WEBPACK_IMPORTED_MODULE_2__.NodeKey.fromJSON(JSON.parse(serializedKey))));
287876
288018
  }
287877
288019
  /** Iterate over all keys in this keyset. */
@@ -287882,6 +288024,7 @@ class KeySet {
287882
288024
  ids.forEach((id) => callback({ className: recentClassName, id }, index++));
287883
288025
  });
287884
288026
  this._nodeKeys.forEach((serializedKey) => {
288027
+ // eslint-disable-next-line deprecation/deprecation
287885
288028
  callback(_hierarchy_Key__WEBPACK_IMPORTED_MODULE_2__.NodeKey.fromJSON(JSON.parse(serializedKey)), index++);
287886
288029
  });
287887
288030
  }
@@ -287919,6 +288062,7 @@ class KeySet {
287919
288062
  instanceKeys.push([className, compressedIds.length > 0 ? compressedIds : _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.invalid]);
287920
288063
  }
287921
288064
  }
288065
+ // eslint-disable-next-line deprecation/deprecation
287922
288066
  const nodeKeys = [];
287923
288067
  for (const serializedKey of this._nodeKeys.values())
287924
288068
  nodeKeys.push(JSON.parse(serializedKey));
@@ -287970,55 +288114,52 @@ __webpack_require__.r(__webpack_exports__);
287970
288114
  /** @public */
287971
288115
  var LabelCompositeValue;
287972
288116
  (function (LabelCompositeValue) {
287973
- /** Serialize given [[LabelCompositeValue]] to JSON */
288117
+ /**
288118
+ * Serialize given [[LabelCompositeValue]] to JSON
288119
+ * @deprecated in 3.x. Use [[LabelCompositeValue]].
288120
+ */
288121
+ // eslint-disable-next-line deprecation/deprecation
287974
288122
  function toJSON(compositeValue) {
287975
- return { ...compositeValue, values: compositeValue.values.map(LabelDefinition.toJSON) };
288123
+ return { ...compositeValue };
287976
288124
  }
287977
288125
  LabelCompositeValue.toJSON = toJSON;
287978
- /** Deserialize [[LabelCompositeValue]] from JSON */
288126
+ /**
288127
+ * Deserialize [[LabelCompositeValue]] from JSON
288128
+ * @deprecated in 3.x. Use [[LabelCompositeValue]].
288129
+ */
288130
+ // eslint-disable-next-line deprecation/deprecation
287979
288131
  function fromJSON(json) {
287980
- return {
287981
- ...json,
287982
- values: json.values.map(LabelDefinition.fromJSON),
287983
- };
288132
+ return { ...json };
287984
288133
  }
287985
288134
  LabelCompositeValue.fromJSON = fromJSON;
287986
288135
  })(LabelCompositeValue || (LabelCompositeValue = {}));
287987
288136
  /** @public */
287988
288137
  var LabelDefinition;
287989
288138
  (function (LabelDefinition) {
287990
- /** Serialize given [[LabelDefinition]] to JSON */
288139
+ /**
288140
+ * Serialize given [[LabelDefinition]] to JSON
288141
+ * @deprecated in 3.x. Use [[LabelDefinition]].
288142
+ */
288143
+ // eslint-disable-next-line deprecation/deprecation
287991
288144
  function toJSON(labelDefinition) {
287992
- return {
287993
- displayValue: labelDefinition.displayValue,
287994
- typeName: labelDefinition.typeName,
287995
- rawValue: isCompositeDefinition(labelDefinition) ? LabelCompositeValue.toJSON(labelDefinition.rawValue) : labelDefinition.rawValue,
287996
- };
288145
+ return { ...labelDefinition };
287997
288146
  }
287998
288147
  LabelDefinition.toJSON = toJSON;
287999
- /** Deserialize [[LabelDefinition]] from JSON */
288148
+ /**
288149
+ * Deserialize [[LabelDefinition]] from JSON
288150
+ * @deprecated in 3.x. Use [[LabelDefinition]].
288151
+ */
288152
+ // eslint-disable-next-line deprecation/deprecation
288000
288153
  function fromJSON(json) {
288001
288154
  if (typeof json === "string")
288002
- return JSON.parse(json, reviver);
288003
- return {
288004
- ...json,
288005
- rawValue: isCompositeDefinition(json) ? LabelCompositeValue.fromJSON(json.rawValue) : json.rawValue,
288006
- };
288155
+ return JSON.parse(json);
288156
+ return { ...json };
288007
288157
  }
288008
288158
  LabelDefinition.fromJSON = fromJSON;
288009
288159
  /** @internal */
288010
288160
  LabelDefinition.COMPOSITE_DEFINITION_TYPENAME = "composite";
288011
- /**
288012
- * Reviver function that can be used as a second argument for
288013
- * `JSON.parse` method when parsing [[LabelDefinition]] objects.
288014
- *
288015
- * @internal
288016
- */
288017
- function reviver(key, value) {
288018
- return key === "" ? fromJSON(value) : value;
288019
- }
288020
- LabelDefinition.reviver = reviver;
288021
288161
  /** @internal */
288162
+ // istanbul ignore next
288022
288163
  function isCompositeDefinition(def) {
288023
288164
  return def.typeName === LabelDefinition.COMPOSITE_DEFINITION_TYPENAME;
288024
288165
  }
@@ -288209,7 +288350,7 @@ function isComputeSelectionRequestOptions(options) {
288209
288350
  }
288210
288351
  /**
288211
288352
  * Checks if supplied request options are for single or multiple element properties.
288212
- * @beta
288353
+ * @internal
288213
288354
  */
288214
288355
  function isSingleElementPropertiesRequestOptions(options) {
288215
288356
  return options.elementId !== undefined;
@@ -288258,13 +288399,12 @@ class PresentationRpcInterface extends _itwin_core_common__WEBPACK_IMPORTED_MODU
288258
288399
  ===========================================================================================*/
288259
288400
  async getNodesCount(_token, _options) { return this.forward(arguments); }
288260
288401
  async getPagedNodes(_token, _options) { return this.forward(arguments); }
288261
- /** @alpha */
288402
+ /** @beta */
288262
288403
  async getNodesDescriptor(_token, _options) { return this.forward(arguments); }
288263
288404
  // TODO: add paged version of this (#387280)
288264
288405
  async getNodePaths(_token, _options) { return this.forward(arguments); }
288265
288406
  // TODO: add paged version of this (#387280)
288266
288407
  async getFilteredNodePaths(_token, _options) { return this.forward(arguments); }
288267
- /** @beta */
288268
288408
  async getContentSources(_token, _options) { return this.forward(arguments); }
288269
288409
  async getContentDescriptor(_token, _options) {
288270
288410
  arguments[1] = { ...arguments[1], transport: "unparsed-json" };
@@ -288277,10 +288417,8 @@ class PresentationRpcInterface extends _itwin_core_common__WEBPACK_IMPORTED_MODU
288277
288417
  async getContentSetSize(_token, _options) { return this.forward(arguments); }
288278
288418
  async getPagedContent(_token, _options) { return this.forward(arguments); }
288279
288419
  async getPagedContentSet(_token, _options) { return this.forward(arguments); }
288280
- /** @beta */
288281
288420
  async getElementProperties(_token, _options) { return this.forward(arguments); }
288282
288421
  async getPagedDistinctValues(_token, _options) { return this.forward(arguments); }
288283
- /** @beta */
288284
288422
  async getContentInstanceKeys(_token, _options) { return this.forward(arguments); }
288285
288423
  async getDisplayLabelDefinition(_token, _options) { return this.forward(arguments); }
288286
288424
  async getPagedDisplayLabelDefinitions(_token, _options) { return this.forward(arguments); }
@@ -288327,7 +288465,7 @@ __decorate([
288327
288465
  __decorate([
288328
288466
  _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.RpcOperation.setPolicy({ allowResponseCompression: true })
288329
288467
  ], PresentationRpcInterface.prototype, "computeSelection", null);
288330
- /** @alpha */
288468
+ /** @internal */
288331
288469
  var PresentationIpcEvents;
288332
288470
  (function (PresentationIpcEvents) {
288333
288471
  /**
@@ -288481,7 +288619,9 @@ class RpcRequestsHandler {
288481
288619
  async getNodesCount(options) {
288482
288620
  return this.request(this.rpcClient.getNodesCount.bind(this.rpcClient), options);
288483
288621
  }
288622
+ // eslint-disable-next-line deprecation/deprecation
288484
288623
  async getPagedNodes(options) {
288624
+ // eslint-disable-next-line deprecation/deprecation
288485
288625
  return this.request(this.rpcClient.getPagedNodes.bind(this.rpcClient), options);
288486
288626
  }
288487
288627
  async getNodesDescriptor(options) {
@@ -288490,10 +288630,14 @@ class RpcRequestsHandler {
288490
288630
  return JSON.parse(response);
288491
288631
  return response;
288492
288632
  }
288633
+ // eslint-disable-next-line deprecation/deprecation
288493
288634
  async getNodePaths(options) {
288635
+ // eslint-disable-next-line deprecation/deprecation
288494
288636
  return this.request(this.rpcClient.getNodePaths.bind(this.rpcClient), options);
288495
288637
  }
288638
+ // eslint-disable-next-line deprecation/deprecation
288496
288639
  async getFilteredNodePaths(options) {
288640
+ // eslint-disable-next-line deprecation/deprecation
288497
288641
  return this.request(this.rpcClient.getFilteredNodePaths.bind(this.rpcClient), options);
288498
288642
  }
288499
288643
  async getContentSources(options) {
@@ -288511,7 +288655,9 @@ class RpcRequestsHandler {
288511
288655
  async getPagedContentSet(options) {
288512
288656
  return this.request(this.rpcClient.getPagedContentSet.bind(this.rpcClient), options);
288513
288657
  }
288658
+ // eslint-disable-next-line deprecation/deprecation
288514
288659
  async getPagedDistinctValues(options) {
288660
+ // eslint-disable-next-line deprecation/deprecation
288515
288661
  return this.request(this.rpcClient.getPagedDistinctValues.bind(this.rpcClient), options);
288516
288662
  }
288517
288663
  async getElementProperties(options) {
@@ -288530,7 +288676,9 @@ class RpcRequestsHandler {
288530
288676
  return this.request(this.rpcClient.getSelectionScopes.bind(this.rpcClient), options);
288531
288677
  }
288532
288678
  async computeSelection(options) {
288533
- return this.request(this.rpcClient.computeSelection.bind(this.rpcClient), options);
288679
+ return this.request(
288680
+ // eslint-disable-next-line deprecation/deprecation
288681
+ this.rpcClient.computeSelection.bind(this.rpcClient), options);
288534
288682
  }
288535
288683
  }
288536
288684
  function isOptionsWithRuleset(options) {
@@ -288955,6 +289103,7 @@ var ExpandedNodeUpdateRecord;
288955
289103
  function toJSON(obj) {
288956
289104
  return {
288957
289105
  ...obj,
289106
+ // eslint-disable-next-line deprecation/deprecation
288958
289107
  node: _hierarchy_Node__WEBPACK_IMPORTED_MODULE_1__.Node.toJSON(obj.node),
288959
289108
  };
288960
289109
  }
@@ -288963,6 +289112,7 @@ var ExpandedNodeUpdateRecord;
288963
289112
  function fromJSON(json) {
288964
289113
  return {
288965
289114
  ...json,
289115
+ // eslint-disable-next-line deprecation/deprecation
288966
289116
  node: _hierarchy_Node__WEBPACK_IMPORTED_MODULE_1__.Node.fromJSON(json.node),
288967
289117
  };
288968
289118
  }
@@ -288975,6 +289125,7 @@ var HierarchyUpdateRecord;
288975
289125
  function toJSON(obj) {
288976
289126
  return {
288977
289127
  ...obj,
289128
+ // eslint-disable-next-line deprecation/deprecation
288978
289129
  parent: obj.parent ? _hierarchy_Key__WEBPACK_IMPORTED_MODULE_0__.NodeKey.toJSON(obj.parent) : undefined,
288979
289130
  expandedNodes: obj.expandedNodes ? obj.expandedNodes.map(ExpandedNodeUpdateRecord.toJSON) : undefined,
288980
289131
  };
@@ -288984,6 +289135,7 @@ var HierarchyUpdateRecord;
288984
289135
  function fromJSON(json) {
288985
289136
  return {
288986
289137
  ...json,
289138
+ // eslint-disable-next-line deprecation/deprecation
288987
289139
  parent: json.parent ? _hierarchy_Key__WEBPACK_IMPORTED_MODULE_0__.NodeKey.fromJSON(json.parent) : undefined,
288988
289140
  expandedNodes: json.expandedNodes ? json.expandedNodes.map(ExpandedNodeUpdateRecord.fromJSON) : undefined,
288989
289141
  };
@@ -289011,50 +289163,66 @@ var HierarchyUpdateInfo;
289011
289163
  /** @public */
289012
289164
  var PartialHierarchyModification;
289013
289165
  (function (PartialHierarchyModification) {
289014
- /** Serialize given object to JSON. */
289166
+ /**
289167
+ * Serialize given object to JSON.
289168
+ * @deprecated in 3.x. Use [[PartialHierarchyModification]]
289169
+ */
289170
+ // eslint-disable-next-line deprecation/deprecation
289015
289171
  function toJSON(obj) {
289016
289172
  switch (obj.type) {
289017
289173
  case "Insert":
289018
289174
  return {
289019
289175
  type: "Insert",
289176
+ // eslint-disable-next-line deprecation/deprecation
289020
289177
  parent: obj.parent === undefined ? undefined : _hierarchy_Key__WEBPACK_IMPORTED_MODULE_0__.NodeKey.toJSON(obj.parent),
289021
289178
  position: obj.position,
289179
+ // eslint-disable-next-line deprecation/deprecation
289022
289180
  node: _hierarchy_Node__WEBPACK_IMPORTED_MODULE_1__.Node.toJSON(obj.node),
289023
289181
  };
289024
289182
  case "Update":
289025
289183
  return {
289026
289184
  type: "Update",
289185
+ // eslint-disable-next-line deprecation/deprecation
289027
289186
  target: _hierarchy_Key__WEBPACK_IMPORTED_MODULE_0__.NodeKey.toJSON(obj.target),
289028
289187
  changes: _hierarchy_Node__WEBPACK_IMPORTED_MODULE_1__.Node.toPartialJSON(obj.changes),
289029
289188
  };
289030
289189
  case "Delete":
289031
289190
  return {
289032
289191
  type: "Delete",
289192
+ // eslint-disable-next-line deprecation/deprecation
289033
289193
  parent: obj.parent === undefined ? undefined : _hierarchy_Key__WEBPACK_IMPORTED_MODULE_0__.NodeKey.toJSON(obj.parent),
289034
289194
  position: obj.position,
289035
289195
  };
289036
289196
  }
289037
289197
  }
289038
289198
  PartialHierarchyModification.toJSON = toJSON;
289039
- /** Deserialize given object from JSON */
289199
+ /**
289200
+ * Deserialize given object from JSON
289201
+ * @deprecated in 3.x. Use [[PartialHierarchyModification]]
289202
+ */
289203
+ // eslint-disable-next-line deprecation/deprecation
289040
289204
  function fromJSON(json) {
289041
289205
  switch (json.type) {
289042
289206
  case "Insert":
289043
289207
  return {
289044
289208
  type: "Insert",
289209
+ // eslint-disable-next-line deprecation/deprecation
289045
289210
  parent: json.parent === undefined ? undefined : _hierarchy_Key__WEBPACK_IMPORTED_MODULE_0__.NodeKey.fromJSON(json.parent),
289046
289211
  position: json.position,
289212
+ // eslint-disable-next-line deprecation/deprecation
289047
289213
  node: _hierarchy_Node__WEBPACK_IMPORTED_MODULE_1__.Node.fromJSON(json.node),
289048
289214
  };
289049
289215
  case "Update":
289050
289216
  return {
289051
289217
  type: "Update",
289218
+ // eslint-disable-next-line deprecation/deprecation
289052
289219
  target: _hierarchy_Key__WEBPACK_IMPORTED_MODULE_0__.NodeKey.fromJSON(json.target),
289053
289220
  changes: _hierarchy_Node__WEBPACK_IMPORTED_MODULE_1__.Node.fromPartialJSON(json.changes),
289054
289221
  };
289055
289222
  case "Delete":
289056
289223
  return {
289057
289224
  type: "Delete",
289225
+ // eslint-disable-next-line deprecation/deprecation
289058
289226
  parent: json.parent === undefined ? undefined : _hierarchy_Key__WEBPACK_IMPORTED_MODULE_0__.NodeKey.fromJSON(json.parent),
289059
289227
  position: json.position,
289060
289228
  };
@@ -289065,18 +289233,28 @@ var PartialHierarchyModification;
289065
289233
  /** @public */
289066
289234
  var HierarchyCompareInfo;
289067
289235
  (function (HierarchyCompareInfo) {
289068
- /** Serialize given object to JSON. */
289236
+ /**
289237
+ * Serialize given object to JSON.
289238
+ * @deprecated in 3.x. Use [[HierarchyCompareInfo]]
289239
+ */
289240
+ // eslint-disable-next-line deprecation/deprecation
289069
289241
  function toJSON(obj) {
289070
289242
  return {
289071
289243
  ...obj,
289244
+ // eslint-disable-next-line deprecation/deprecation
289072
289245
  changes: obj.changes.map((change) => PartialHierarchyModification.toJSON(change)),
289073
289246
  };
289074
289247
  }
289075
289248
  HierarchyCompareInfo.toJSON = toJSON;
289076
- /** Deserialize given object from JSON */
289249
+ /**
289250
+ * Deserialize given object from JSON
289251
+ * @deprecated in 3.x. Use [[HierarchyCompareInfo]]
289252
+ */
289253
+ // eslint-disable-next-line deprecation/deprecation
289077
289254
  function fromJSON(json) {
289078
289255
  return {
289079
289256
  ...json,
289257
+ // eslint-disable-next-line deprecation/deprecation
289080
289258
  changes: json.changes.map((change) => PartialHierarchyModification.fromJSON(change)),
289081
289259
  };
289082
289260
  }
@@ -289165,11 +289343,10 @@ var CategoryDescription;
289165
289343
  (function (CategoryDescription) {
289166
289344
  /** Serialize given category to JSON */
289167
289345
  function toJSON(category) {
289168
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
289169
289346
  const { parent, ...rest } = category;
289170
289347
  return {
289171
289348
  ...rest,
289172
- ...(category.parent ? { parent: category.parent.name } : {}),
289349
+ ...(parent ? { parent: parent.name } : undefined),
289173
289350
  };
289174
289351
  }
289175
289352
  CategoryDescription.toJSON = toJSON;
@@ -289283,17 +289460,19 @@ __webpack_require__.r(__webpack_exports__);
289283
289460
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
289284
289461
  /* harmony export */ "FIELD_NAMES_SEPARATOR": () => (/* binding */ FIELD_NAMES_SEPARATOR),
289285
289462
  /* harmony export */ "addFieldHierarchy": () => (/* binding */ addFieldHierarchy),
289286
- /* harmony export */ "applyOptionalPrefix": () => (/* binding */ applyOptionalPrefix),
289463
+ /* harmony export */ "combineFieldNames": () => (/* binding */ combineFieldNames),
289287
289464
  /* harmony export */ "createFieldHierarchies": () => (/* binding */ createFieldHierarchies),
289465
+ /* harmony export */ "parseCombinedFieldNames": () => (/* binding */ parseCombinedFieldNames),
289288
289466
  /* harmony export */ "traverseContent": () => (/* binding */ traverseContent),
289289
289467
  /* harmony export */ "traverseContentItem": () => (/* binding */ traverseContentItem),
289290
289468
  /* harmony export */ "traverseFieldHierarchy": () => (/* binding */ traverseFieldHierarchy)
289291
289469
  /* harmony export */ });
289292
289470
  /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
289293
- /* harmony import */ var _Fields__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Fields */ "../../presentation/common/lib/esm/presentation-common/content/Fields.js");
289294
- /* harmony import */ var _Item__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Item */ "../../presentation/common/lib/esm/presentation-common/content/Item.js");
289295
- /* harmony import */ var _TypeDescription__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./TypeDescription */ "../../presentation/common/lib/esm/presentation-common/content/TypeDescription.js");
289296
- /* harmony import */ var _Value__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Value */ "../../presentation/common/lib/esm/presentation-common/content/Value.js");
289471
+ /* harmony import */ var _Content__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Content */ "../../presentation/common/lib/esm/presentation-common/content/Content.js");
289472
+ /* harmony import */ var _Fields__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Fields */ "../../presentation/common/lib/esm/presentation-common/content/Fields.js");
289473
+ /* harmony import */ var _Item__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Item */ "../../presentation/common/lib/esm/presentation-common/content/Item.js");
289474
+ /* harmony import */ var _TypeDescription__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./TypeDescription */ "../../presentation/common/lib/esm/presentation-common/content/TypeDescription.js");
289475
+ /* harmony import */ var _Value__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Value */ "../../presentation/common/lib/esm/presentation-common/content/Value.js");
289297
289476
  /*---------------------------------------------------------------------------------------------
289298
289477
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
289299
289478
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -289306,12 +289485,20 @@ __webpack_require__.r(__webpack_exports__);
289306
289485
 
289307
289486
 
289308
289487
 
289309
- /** @internal */
289488
+
289489
+ /**
289490
+ * An utility for traversing field hierarchy. Stops traversal as soon as `cb` returns `false`.
289491
+ * @public
289492
+ */
289310
289493
  function traverseFieldHierarchy(hierarchy, cb) {
289311
289494
  if (cb(hierarchy))
289312
289495
  hierarchy.childFields.forEach((childHierarchy) => traverseFieldHierarchy(childHierarchy, cb));
289313
289496
  }
289314
- /** @alpha */
289497
+ /**
289498
+ * An utility to traverse content using provided visitor. Provides means to parse content into different formats,
289499
+ * for different components.
289500
+ * @public
289501
+ */
289315
289502
  function traverseContent(visitor, content) {
289316
289503
  if (!visitor.startContent({ descriptor: content.descriptor }))
289317
289504
  return;
@@ -289326,18 +289513,12 @@ function traverseContent(visitor, content) {
289326
289513
  visitor.finishContent();
289327
289514
  }
289328
289515
  }
289329
- /** @alpha */
289516
+ /**
289517
+ * An utility for calling [[traverseContent]] when there's only one content item.
289518
+ * @public
289519
+ */
289330
289520
  function traverseContentItem(visitor, descriptor, item) {
289331
- if (!visitor.startContent({ descriptor }))
289332
- return;
289333
- try {
289334
- const fieldHierarchies = createFieldHierarchies(descriptor.fields);
289335
- visitor.processFieldHierarchies({ hierarchies: fieldHierarchies });
289336
- traverseContentItemFields(visitor, fieldHierarchies, item);
289337
- }
289338
- finally {
289339
- visitor.finishContent();
289340
- }
289521
+ traverseContent(visitor, new _Content__WEBPACK_IMPORTED_MODULE_1__.Content(descriptor, [item]));
289341
289522
  }
289342
289523
  class VisitedCategories {
289343
289524
  constructor(_visitor, category) {
@@ -289387,27 +289568,27 @@ function traverseContentItemField(visitor, fieldHierarchy, item) {
289387
289568
  return;
289388
289569
  try {
289389
289570
  const rootToThisField = createFieldPath(fieldHierarchy.field);
289390
- let namePrefix;
289571
+ let parentFieldName;
289391
289572
  const pathUpToField = rootToThisField.slice(undefined, -1);
289392
289573
  for (let i = 0; i < pathUpToField.length; ++i) {
289393
289574
  const parentField = pathUpToField[i];
289394
289575
  const nextField = rootToThisField[i + 1];
289395
289576
  if (item.isFieldMerged(parentField.name)) {
289396
- visitor.processMergedValue({ requestedField: fieldHierarchy.field, mergedField: parentField, namePrefix });
289577
+ visitor.processMergedValue({ requestedField: fieldHierarchy.field, mergedField: parentField, parentFieldName });
289397
289578
  return;
289398
289579
  }
289399
289580
  const { emptyNestedItem, convertedItem } = convertNestedContentItemToStructArrayItem(item, parentField, nextField);
289400
289581
  if (emptyNestedItem)
289401
289582
  return;
289402
289583
  item = convertedItem;
289403
- namePrefix = applyOptionalPrefix(parentField.name, namePrefix);
289584
+ parentFieldName = combineFieldNames(parentField.name, parentFieldName);
289404
289585
  }
289405
289586
  if (item.isFieldMerged(fieldHierarchy.field.name)) {
289406
- visitor.processMergedValue({ requestedField: fieldHierarchy.field, mergedField: fieldHierarchy.field, namePrefix });
289587
+ visitor.processMergedValue({ requestedField: fieldHierarchy.field, mergedField: fieldHierarchy.field, parentFieldName });
289407
289588
  return;
289408
289589
  }
289409
289590
  if (fieldHierarchy.field.isNestedContentField()) {
289410
- fieldHierarchy = convertNestedContentFieldHierarchyToStructArrayHierarchy(fieldHierarchy, namePrefix);
289591
+ fieldHierarchy = convertNestedContentFieldHierarchyToStructArrayHierarchy(fieldHierarchy, parentFieldName);
289411
289592
  const { emptyNestedItem, convertedItem } = convertNestedContentFieldHierarchyItemToStructArrayItem(item, fieldHierarchy);
289412
289593
  if (emptyNestedItem)
289413
289594
  return;
@@ -289418,84 +289599,87 @@ function traverseContentItemField(visitor, fieldHierarchy, item) {
289418
289599
  ...fieldHierarchy,
289419
289600
  field: Object.assign(fieldHierarchy.field.clone(), {
289420
289601
  type: {
289421
- valueFormat: _TypeDescription__WEBPACK_IMPORTED_MODULE_3__.PropertyValueFormat.Array,
289602
+ valueFormat: _TypeDescription__WEBPACK_IMPORTED_MODULE_4__.PropertyValueFormat.Array,
289422
289603
  typeName: `${fieldHierarchy.field.type.typeName}[]`,
289423
289604
  memberType: fieldHierarchy.field.type,
289424
289605
  },
289425
289606
  }),
289426
289607
  };
289427
289608
  }
289428
- traverseContentItemFieldValue(visitor, fieldHierarchy, item.mergedFieldNames, fieldHierarchy.field.type, namePrefix, item.values[fieldHierarchy.field.name], item.displayValues[fieldHierarchy.field.name]);
289609
+ traverseContentItemFieldValue(visitor, fieldHierarchy, item.mergedFieldNames, fieldHierarchy.field.type, parentFieldName, item.values[fieldHierarchy.field.name], item.displayValues[fieldHierarchy.field.name]);
289429
289610
  }
289430
289611
  finally {
289431
289612
  visitor.finishField();
289432
289613
  }
289433
289614
  }
289434
- function traverseContentItemFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, namePrefix, rawValue, displayValue) {
289615
+ function traverseContentItemFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue) {
289435
289616
  if (rawValue !== undefined) {
289436
- if (valueType.valueFormat === _TypeDescription__WEBPACK_IMPORTED_MODULE_3__.PropertyValueFormat.Array) {
289437
- (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_4__.Value.isArray(rawValue));
289438
- (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_4__.DisplayValue.isArray(displayValue));
289439
- return traverseContentItemArrayFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, namePrefix, rawValue, displayValue);
289617
+ if (valueType.valueFormat === _TypeDescription__WEBPACK_IMPORTED_MODULE_4__.PropertyValueFormat.Array) {
289618
+ (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_5__.Value.isArray(rawValue));
289619
+ (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_5__.DisplayValue.isArray(displayValue));
289620
+ return traverseContentItemArrayFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue);
289440
289621
  }
289441
- if (valueType.valueFormat === _TypeDescription__WEBPACK_IMPORTED_MODULE_3__.PropertyValueFormat.Struct) {
289442
- (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_4__.Value.isMap(rawValue));
289443
- (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_4__.DisplayValue.isMap(displayValue));
289444
- return traverseContentItemStructFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, namePrefix, rawValue, displayValue);
289622
+ if (valueType.valueFormat === _TypeDescription__WEBPACK_IMPORTED_MODULE_4__.PropertyValueFormat.Struct) {
289623
+ (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_5__.Value.isMap(rawValue));
289624
+ (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_5__.DisplayValue.isMap(displayValue));
289625
+ return traverseContentItemStructFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue);
289445
289626
  }
289446
289627
  }
289447
- traverseContentItemPrimitiveFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, namePrefix, rawValue, displayValue);
289628
+ traverseContentItemPrimitiveFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue);
289448
289629
  }
289449
- function traverseContentItemArrayFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, namePrefix, rawValues, displayValues) {
289630
+ function traverseContentItemArrayFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValues, displayValues) {
289450
289631
  (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(rawValues.length === displayValues.length);
289451
- (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(valueType.valueFormat === _TypeDescription__WEBPACK_IMPORTED_MODULE_3__.PropertyValueFormat.Array);
289452
- if (!visitor.startArray({ hierarchy: fieldHierarchy, valueType, namePrefix, rawValues, displayValues }))
289632
+ (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(valueType.valueFormat === _TypeDescription__WEBPACK_IMPORTED_MODULE_4__.PropertyValueFormat.Array);
289633
+ if (!visitor.startArray({ hierarchy: fieldHierarchy, valueType, parentFieldName, rawValues, displayValues }))
289453
289634
  return;
289454
289635
  try {
289455
289636
  const itemType = valueType.memberType;
289456
289637
  rawValues.forEach((_, i) => {
289457
- traverseContentItemFieldValue(visitor, fieldHierarchy, mergedFieldNames, itemType, namePrefix, rawValues[i], displayValues[i]);
289638
+ traverseContentItemFieldValue(visitor, fieldHierarchy, mergedFieldNames, itemType, parentFieldName, rawValues[i], displayValues[i]);
289458
289639
  });
289459
289640
  }
289460
289641
  finally {
289461
289642
  visitor.finishArray();
289462
289643
  }
289463
289644
  }
289464
- function traverseContentItemStructFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, namePrefix, rawValues, displayValues) {
289465
- (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(valueType.valueFormat === _TypeDescription__WEBPACK_IMPORTED_MODULE_3__.PropertyValueFormat.Struct);
289466
- if (!visitor.startStruct({ hierarchy: fieldHierarchy, valueType, namePrefix, rawValues, displayValues }))
289645
+ function traverseContentItemStructFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValues, displayValues) {
289646
+ (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(valueType.valueFormat === _TypeDescription__WEBPACK_IMPORTED_MODULE_4__.PropertyValueFormat.Struct);
289647
+ if (!visitor.startStruct({ hierarchy: fieldHierarchy, valueType, parentFieldName, rawValues, displayValues }))
289467
289648
  return;
289468
289649
  try {
289469
289650
  if (fieldHierarchy.field.isNestedContentField())
289470
- namePrefix = applyOptionalPrefix(fieldHierarchy.field.name, namePrefix);
289651
+ parentFieldName = combineFieldNames(fieldHierarchy.field.name, parentFieldName);
289471
289652
  valueType.members.forEach((memberDescription) => {
289472
289653
  let memberField = fieldHierarchy.childFields.find((f) => f.field.name === memberDescription.name);
289473
289654
  if (!memberField) {
289474
289655
  // Not finding a member field means we're traversing an ECStruct. We still need to carry member information, so we
289475
289656
  // create a fake field to represent the member
289476
289657
  memberField = {
289477
- field: new _Fields__WEBPACK_IMPORTED_MODULE_1__.Field(fieldHierarchy.field.category, memberDescription.name, memberDescription.label, memberDescription.type, fieldHierarchy.field.isReadonly, 0),
289658
+ field: new _Fields__WEBPACK_IMPORTED_MODULE_2__.Field(fieldHierarchy.field.category, memberDescription.name, memberDescription.label, memberDescription.type, fieldHierarchy.field.isReadonly, 0),
289478
289659
  childFields: [],
289479
289660
  };
289480
289661
  }
289481
- traverseContentItemFieldValue(visitor, memberField, mergedFieldNames, memberDescription.type, namePrefix, rawValues[memberDescription.name], displayValues[memberDescription.name]);
289662
+ traverseContentItemFieldValue(visitor, memberField, mergedFieldNames, memberDescription.type, parentFieldName, rawValues[memberDescription.name], displayValues[memberDescription.name]);
289482
289663
  });
289483
289664
  }
289484
289665
  finally {
289485
289666
  visitor.finishStruct();
289486
289667
  }
289487
289668
  }
289488
- function traverseContentItemPrimitiveFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, namePrefix, rawValue, displayValue) {
289669
+ function traverseContentItemPrimitiveFieldValue(visitor, fieldHierarchy, mergedFieldNames, valueType, parentFieldName, rawValue, displayValue) {
289489
289670
  if (-1 !== mergedFieldNames.indexOf(fieldHierarchy.field.name)) {
289490
- visitor.processMergedValue({ mergedField: fieldHierarchy.field, requestedField: fieldHierarchy.field, namePrefix });
289671
+ visitor.processMergedValue({ mergedField: fieldHierarchy.field, requestedField: fieldHierarchy.field, parentFieldName });
289491
289672
  return;
289492
289673
  }
289493
- visitor.processPrimitiveValue({ field: fieldHierarchy.field, valueType, namePrefix, rawValue, displayValue });
289674
+ visitor.processPrimitiveValue({ field: fieldHierarchy.field, valueType, parentFieldName, rawValue, displayValue });
289494
289675
  }
289495
289676
  /**
289496
- * `ignoreCategories` parameter enables adding all of the `nestedFields` to parent field's `childFields`
289497
- * without considering categories.
289498
- * @internal
289677
+ * Parses a list of [[Field]] objects into a list of [[FieldHierarchy]].
289678
+ *
289679
+ * @param ignoreCategories Enables adding all of the `nestedFields` to parent field's `childFields`
289680
+ * without considering categories.
289681
+ *
289682
+ * @public
289499
289683
  */
289500
289684
  function createFieldHierarchies(fields, ignoreCategories) {
289501
289685
  const hierarchies = new Array();
@@ -289587,7 +289771,10 @@ function mergeHierarchies(lhs, rhs) {
289587
289771
  });
289588
289772
  return result;
289589
289773
  }
289590
- /** @alpha */
289774
+ /**
289775
+ * Adds a field hierarchy into root field hierarchies list. *
289776
+ * @public
289777
+ */
289591
289778
  function addFieldHierarchy(rootHierarchies, hierarchy) {
289592
289779
  var _a;
289593
289780
  const match = findRelatedFields(rootHierarchies, hierarchy);
@@ -289614,14 +289801,24 @@ function createFieldPath(field) {
289614
289801
  }
289615
289802
  /** @internal */
289616
289803
  const FIELD_NAMES_SEPARATOR = "$";
289617
- /** @internal */
289618
- function applyOptionalPrefix(str, prefix) {
289619
- return prefix ? `${prefix}${FIELD_NAMES_SEPARATOR}${str}` : str;
289804
+ /**
289805
+ * Combines given field names in a way that allows them to be parsed back into a list of individual names using the [[parseCombinedFieldNames]] function.
289806
+ * @public
289807
+ */
289808
+ function combineFieldNames(fieldName, parentFieldName) {
289809
+ return parentFieldName ? `${parentFieldName}${FIELD_NAMES_SEPARATOR}${fieldName}` : fieldName;
289810
+ }
289811
+ /**
289812
+ * Parses given combined field names string, constructed using [[combineFieldNames]], into a list of individual field names.
289813
+ * @public
289814
+ */
289815
+ function parseCombinedFieldNames(combinedName) {
289816
+ return combinedName ? combinedName.split(FIELD_NAMES_SEPARATOR) : [];
289620
289817
  }
289621
289818
  function convertNestedContentItemToStructArrayItem(item, field, nextField) {
289622
289819
  var _a;
289623
289820
  const value = (_a = item.values[field.name]) !== null && _a !== void 0 ? _a : [];
289624
- (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_4__.Value.isNestedContent(value));
289821
+ (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_5__.Value.isNestedContent(value));
289625
289822
  if (value.length === 0)
289626
289823
  return { emptyNestedItem: true, convertedItem: item };
289627
289824
  const nextFieldValues = { raw: [], display: [] };
@@ -289630,7 +289827,7 @@ function convertNestedContentItemToStructArrayItem(item, field, nextField) {
289630
289827
  const nextDisplayValue = ncv.displayValues[nextField.name];
289631
289828
  if (nextField.isNestedContentField()) {
289632
289829
  if (nextRawValue) {
289633
- (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_4__.Value.isNestedContent(nextRawValue));
289830
+ (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_5__.Value.isNestedContent(nextRawValue));
289634
289831
  nextFieldValues.raw.push(...nextRawValue);
289635
289832
  }
289636
289833
  }
@@ -289639,23 +289836,23 @@ function convertNestedContentItemToStructArrayItem(item, field, nextField) {
289639
289836
  nextFieldValues.display.push(nextDisplayValue);
289640
289837
  }
289641
289838
  });
289642
- const convertedItem = new _Item__WEBPACK_IMPORTED_MODULE_2__.Item(item.primaryKeys, item.label, item.imageId, item.classInfo, { [nextField.name]: nextFieldValues.raw }, { [nextField.name]: nextFieldValues.display }, item.mergedFieldNames, item.extendedData); // eslint-disable-line deprecation/deprecation
289839
+ const convertedItem = new _Item__WEBPACK_IMPORTED_MODULE_3__.Item(item.primaryKeys, item.label, item.imageId, item.classInfo, { [nextField.name]: nextFieldValues.raw }, { [nextField.name]: nextFieldValues.display }, item.mergedFieldNames, item.extendedData); // eslint-disable-line deprecation/deprecation
289643
289840
  return { emptyNestedItem: false, convertedItem };
289644
289841
  }
289645
- function convertNestedContentFieldHierarchyToStructArrayHierarchy(fieldHierarchy, namePrefix) {
289842
+ function convertNestedContentFieldHierarchyToStructArrayHierarchy(fieldHierarchy, parentFieldName) {
289646
289843
  const fieldName = fieldHierarchy.field.name;
289647
289844
  const convertedChildFieldHierarchies = fieldHierarchy.childFields.map((child) => {
289648
289845
  if (child.field.isNestedContentField())
289649
- return convertNestedContentFieldHierarchyToStructArrayHierarchy(child, applyOptionalPrefix(fieldName, namePrefix));
289846
+ return convertNestedContentFieldHierarchyToStructArrayHierarchy(child, combineFieldNames(fieldName, parentFieldName));
289650
289847
  return child;
289651
289848
  });
289652
289849
  const convertedFieldHierarchy = {
289653
289850
  field: Object.assign(fieldHierarchy.field.clone(), {
289654
289851
  type: {
289655
- valueFormat: _TypeDescription__WEBPACK_IMPORTED_MODULE_3__.PropertyValueFormat.Array,
289852
+ valueFormat: _TypeDescription__WEBPACK_IMPORTED_MODULE_4__.PropertyValueFormat.Array,
289656
289853
  typeName: `${fieldHierarchy.field.type.typeName}[]`,
289657
289854
  memberType: {
289658
- valueFormat: _TypeDescription__WEBPACK_IMPORTED_MODULE_3__.PropertyValueFormat.Struct,
289855
+ valueFormat: _TypeDescription__WEBPACK_IMPORTED_MODULE_4__.PropertyValueFormat.Struct,
289659
289856
  typeName: fieldHierarchy.field.type.typeName,
289660
289857
  members: convertedChildFieldHierarchies.map((member) => ({
289661
289858
  name: member.field.name,
@@ -289682,7 +289879,7 @@ function convertNestedContentValuesToStructArrayValuesRecursive(fieldHierarchy,
289682
289879
  }
289683
289880
  if (childFieldHierarchy.field.isNestedContentField()) {
289684
289881
  const value = values[childFieldName];
289685
- (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_4__.Value.isNestedContent(value));
289882
+ (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_5__.Value.isNestedContent(value));
289686
289883
  const convertedValues = convertNestedContentValuesToStructArrayValuesRecursive(childFieldHierarchy, value);
289687
289884
  values[childFieldName] = convertedValues.raw;
289688
289885
  displayValues[childFieldName] = convertedValues.display;
@@ -289698,11 +289895,11 @@ function convertNestedContentValuesToStructArrayValuesRecursive(fieldHierarchy,
289698
289895
  function convertNestedContentFieldHierarchyItemToStructArrayItem(item, fieldHierarchy) {
289699
289896
  const fieldName = fieldHierarchy.field.name;
289700
289897
  const rawValue = item.values[fieldName];
289701
- (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_4__.Value.isNestedContent(rawValue));
289898
+ (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(_Value__WEBPACK_IMPORTED_MODULE_5__.Value.isNestedContent(rawValue));
289702
289899
  if (rawValue.length === 0)
289703
289900
  return { emptyNestedItem: true, convertedItem: item };
289704
289901
  const converted = convertNestedContentValuesToStructArrayValuesRecursive(fieldHierarchy, rawValue);
289705
- const convertedItem = new _Item__WEBPACK_IMPORTED_MODULE_2__.Item(item.primaryKeys, item.label, item.imageId, item.classInfo, { [fieldName]: converted.raw }, { [fieldName]: converted.display }, converted.mergedFieldNames, item.extendedData); // eslint-disable-line deprecation/deprecation
289902
+ const convertedItem = new _Item__WEBPACK_IMPORTED_MODULE_3__.Item(item.primaryKeys, item.label, item.imageId, item.classInfo, { [fieldName]: converted.raw }, { [fieldName]: converted.display }, converted.mergedFieldNames, item.extendedData); // eslint-disable-line deprecation/deprecation
289706
289903
  return { emptyNestedItem: false, convertedItem };
289707
289904
  }
289708
289905
 
@@ -289804,8 +290001,6 @@ var ContentFlags;
289804
290001
  /**
289805
290002
  * Set related input keys on [[Item]] objects when creating content. This helps identify which [[Item]] is associated to which
289806
290003
  * given input key at the cost of performance creating those items.
289807
- *
289808
- * @beta
289809
290004
  */
289810
290005
  ContentFlags[ContentFlags["IncludeInputKeys"] = 256] = "IncludeInputKeys";
289811
290006
  /**
@@ -290108,6 +290303,7 @@ class Field {
290108
290303
  if (isPropertiesField(json))
290109
290304
  return PropertiesField.fromJSON(json, categories);
290110
290305
  if (isNestedContentField(json))
290306
+ // eslint-disable-next-line deprecation/deprecation
290111
290307
  return NestedContentField.fromJSON(json, categories);
290112
290308
  const field = Object.create(Field.prototype);
290113
290309
  return Object.assign(field, json, {
@@ -290187,7 +290383,7 @@ class PropertiesField extends Field {
290187
290383
  toJSON() {
290188
290384
  return {
290189
290385
  ...super.toJSON(),
290190
- properties: this.properties.map((p) => _Property__WEBPACK_IMPORTED_MODULE_4__.Property.toJSON(p)),
290386
+ properties: this.properties,
290191
290387
  };
290192
290388
  }
290193
290389
  /** Deserialize [[PropertiesField]] from JSON */
@@ -290197,7 +290393,6 @@ class PropertiesField extends Field {
290197
290393
  const field = Object.create(PropertiesField.prototype);
290198
290394
  return Object.assign(field, json, {
290199
290395
  category: this.getCategoryFromFieldJson(json, categories),
290200
- properties: json.properties.map(_Property__WEBPACK_IMPORTED_MODULE_4__.Property.fromJSON),
290201
290396
  });
290202
290397
  }
290203
290398
  /**
@@ -290290,16 +290485,18 @@ class NestedContentField extends Field {
290290
290485
  autoExpand: this.autoExpand,
290291
290486
  };
290292
290487
  }
290293
- /** Deserialize [[NestedContentField]] from JSON */
290488
+ /**
290489
+ * Deserialize [[NestedContentField]] from JSON
290490
+ * @deprecated in 3.x. Use [[NestedContentField.fromCompressedJSON]]
290491
+ */
290294
290492
  static fromJSON(json, categories) {
290295
290493
  if (!json)
290296
290494
  return undefined;
290297
290495
  const field = Object.create(NestedContentField.prototype);
290298
290496
  return Object.assign(field, json, this.fromCommonJSON(json, categories), {
290299
- nestedFields: json.nestedFields.map((nestedFieldJson) => Field.fromJSON(nestedFieldJson, categories))
290497
+ nestedFields: json.nestedFields
290498
+ .map((nestedFieldJson) => Field.fromJSON(nestedFieldJson, categories))
290300
290499
  .filter((nestedField) => !!nestedField),
290301
- contentClassInfo: _EC__WEBPACK_IMPORTED_MODULE_1__.ClassInfo.fromJSON(json.contentClassInfo),
290302
- pathToPrimaryClass: json.pathToPrimaryClass.map(_EC__WEBPACK_IMPORTED_MODULE_1__.RelatedClassInfo.fromJSON),
290303
290500
  });
290304
290501
  }
290305
290502
  /**
@@ -290313,10 +290510,11 @@ class NestedContentField extends Field {
290313
290510
  category: this.getCategoryFromFieldJson(json, categories),
290314
290511
  nestedFields: json.nestedFields.map((nestedFieldJson) => Field.fromCompressedJSON(nestedFieldJson, classesMap, categories))
290315
290512
  .filter((nestedField) => !!nestedField),
290316
- contentClassInfo: _EC__WEBPACK_IMPORTED_MODULE_1__.ClassInfo.fromJSON({ id: json.contentClassInfo, ...classesMap[json.contentClassInfo] }),
290513
+ contentClassInfo: { id: json.contentClassInfo, ...classesMap[json.contentClassInfo] },
290317
290514
  pathToPrimaryClass: json.pathToPrimaryClass.map((stepJson) => _EC__WEBPACK_IMPORTED_MODULE_1__.RelatedClassInfo.fromCompressedJSON(stepJson, classesMap)),
290318
290515
  });
290319
290516
  }
290517
+ // eslint-disable-next-line deprecation/deprecation
290320
290518
  static fromCommonJSON(json, categories) {
290321
290519
  var _a, _b;
290322
290520
  return {
@@ -290406,9 +290604,8 @@ __webpack_require__.r(__webpack_exports__);
290406
290604
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
290407
290605
  /* harmony export */ "Item": () => (/* binding */ Item)
290408
290606
  /* harmony export */ });
290409
- /* harmony import */ var _EC__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../EC */ "../../presentation/common/lib/esm/presentation-common/EC.js");
290410
- /* harmony import */ var _LabelDefinition__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../LabelDefinition */ "../../presentation/common/lib/esm/presentation-common/LabelDefinition.js");
290411
- /* harmony import */ var _Value__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Value */ "../../presentation/common/lib/esm/presentation-common/content/Value.js");
290607
+ /* harmony import */ var _LabelDefinition__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../LabelDefinition */ "../../presentation/common/lib/esm/presentation-common/LabelDefinition.js");
290608
+ /* harmony import */ var _Value__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Value */ "../../presentation/common/lib/esm/presentation-common/content/Value.js");
290412
290609
  /*---------------------------------------------------------------------------------------------
290413
290610
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
290414
290611
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -290418,7 +290615,6 @@ __webpack_require__.r(__webpack_exports__);
290418
290615
  */
290419
290616
 
290420
290617
 
290421
-
290422
290618
  /**
290423
290619
  * A data structure that represents a single content record.
290424
290620
  * @public
@@ -290443,7 +290639,7 @@ class Item {
290443
290639
  this.displayValues = displayValues;
290444
290640
  this.mergedFieldNames = mergedFieldNames;
290445
290641
  this.extendedData = extendedData;
290446
- this.label = (typeof label === "string") ? _LabelDefinition__WEBPACK_IMPORTED_MODULE_1__.LabelDefinition.fromLabelString(label) : label;
290642
+ this.label = (typeof label === "string") ? _LabelDefinition__WEBPACK_IMPORTED_MODULE_0__.LabelDefinition.fromLabelString(label) : label;
290447
290643
  }
290448
290644
  /**
290449
290645
  * Is value of field with the specified name merged in this record.
@@ -290456,12 +290652,12 @@ class Item {
290456
290652
  const { label, ...baseItem } = this;
290457
290653
  return {
290458
290654
  ...baseItem,
290459
- ...(this.inputKeys ? { inputKeys: this.inputKeys.map(_EC__WEBPACK_IMPORTED_MODULE_0__.InstanceKey.toJSON) } : {}),
290460
- primaryKeys: this.primaryKeys.map(_EC__WEBPACK_IMPORTED_MODULE_0__.InstanceKey.toJSON),
290461
- classInfo: this.classInfo ? _EC__WEBPACK_IMPORTED_MODULE_0__.ClassInfo.toJSON(this.classInfo) : undefined,
290462
- values: _Value__WEBPACK_IMPORTED_MODULE_2__.Value.toJSON(this.values),
290463
- displayValues: _Value__WEBPACK_IMPORTED_MODULE_2__.DisplayValue.toJSON(this.displayValues),
290464
- labelDefinition: _LabelDefinition__WEBPACK_IMPORTED_MODULE_1__.LabelDefinition.toJSON(label),
290655
+ // eslint-disable-next-line deprecation/deprecation
290656
+ values: _Value__WEBPACK_IMPORTED_MODULE_1__.Value.toJSON(this.values),
290657
+ // eslint-disable-next-line deprecation/deprecation
290658
+ displayValues: _Value__WEBPACK_IMPORTED_MODULE_1__.DisplayValue.toJSON(this.displayValues),
290659
+ // eslint-disable-next-line deprecation/deprecation
290660
+ labelDefinition: _LabelDefinition__WEBPACK_IMPORTED_MODULE_0__.LabelDefinition.toJSON(label),
290465
290661
  };
290466
290662
  }
290467
290663
  /** Deserialize [[Item]] from JSON */
@@ -290473,18 +290669,17 @@ class Item {
290473
290669
  const item = Object.create(Item.prototype);
290474
290670
  const { labelDefinition, ...baseJson } = json;
290475
290671
  return Object.assign(item, baseJson, {
290476
- ...(json.inputKeys ? { inputKeys: json.inputKeys.map((ik) => _EC__WEBPACK_IMPORTED_MODULE_0__.InstanceKey.fromJSON(ik)) } : {}),
290477
- primaryKeys: json.primaryKeys.map((pk) => _EC__WEBPACK_IMPORTED_MODULE_0__.InstanceKey.fromJSON(pk)),
290478
- classInfo: json.classInfo ? _EC__WEBPACK_IMPORTED_MODULE_0__.ClassInfo.fromJSON(json.classInfo) : undefined,
290479
- values: _Value__WEBPACK_IMPORTED_MODULE_2__.Value.fromJSON(json.values),
290480
- displayValues: _Value__WEBPACK_IMPORTED_MODULE_2__.DisplayValue.fromJSON(json.displayValues),
290481
- label: _LabelDefinition__WEBPACK_IMPORTED_MODULE_1__.LabelDefinition.fromJSON(labelDefinition),
290672
+ // eslint-disable-next-line deprecation/deprecation
290673
+ values: _Value__WEBPACK_IMPORTED_MODULE_1__.Value.fromJSON(json.values),
290674
+ // eslint-disable-next-line deprecation/deprecation
290675
+ displayValues: _Value__WEBPACK_IMPORTED_MODULE_1__.DisplayValue.fromJSON(json.displayValues),
290676
+ // eslint-disable-next-line deprecation/deprecation
290677
+ label: _LabelDefinition__WEBPACK_IMPORTED_MODULE_0__.LabelDefinition.fromJSON(labelDefinition),
290482
290678
  });
290483
290679
  }
290484
290680
  /**
290485
290681
  * Reviver function that can be used as a second argument for
290486
290682
  * `JSON.parse` method when parsing Item objects.
290487
- *
290488
290683
  * @internal
290489
290684
  */
290490
290685
  static reviver(key, value) {
@@ -290518,11 +290713,13 @@ __webpack_require__.r(__webpack_exports__);
290518
290713
  /** @public */
290519
290714
  var Property;
290520
290715
  (function (Property) {
290521
- /** Serialize [[Property]] to JSON */
290716
+ /**
290717
+ * Serialize [[Property]] to JSON
290718
+ * @deprecated in 3.x. Use [[toCompressedJSON]]
290719
+ */
290720
+ // istanbul ignore next
290522
290721
  function toJSON(prop) {
290523
- return {
290524
- property: _EC__WEBPACK_IMPORTED_MODULE_0__.PropertyInfo.toJSON(prop.property),
290525
- };
290722
+ return { ...prop };
290526
290723
  }
290527
290724
  Property.toJSON = toJSON;
290528
290725
  /** Serialize [[Property]] to compressed JSON */
@@ -290532,11 +290729,13 @@ var Property;
290532
290729
  };
290533
290730
  }
290534
290731
  Property.toCompressedJSON = toCompressedJSON;
290535
- /** Deserializes [[Property]] from JSON */
290732
+ /**
290733
+ * Deserializes [[Property]] from JSON
290734
+ * @deprecated in 3.x. Use [[Property]]
290735
+ */
290736
+ // istanbul ignore next
290536
290737
  function fromJSON(json) {
290537
- return {
290538
- property: _EC__WEBPACK_IMPORTED_MODULE_0__.PropertyInfo.fromJSON(json.property),
290539
- };
290738
+ return { ...json };
290540
290739
  }
290541
290740
  Property.fromJSON = fromJSON;
290542
290741
  })(Property || (Property = {}));
@@ -290613,7 +290812,6 @@ __webpack_require__.r(__webpack_exports__);
290613
290812
  /* harmony export */ "NestedContentValue": () => (/* binding */ NestedContentValue),
290614
290813
  /* harmony export */ "Value": () => (/* binding */ Value)
290615
290814
  /* harmony export */ });
290616
- /* harmony import */ var _EC__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../EC */ "../../presentation/common/lib/esm/presentation-common/EC.js");
290617
290815
  /*---------------------------------------------------------------------------------------------
290618
290816
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
290619
290817
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -290621,7 +290819,6 @@ __webpack_require__.r(__webpack_exports__);
290621
290819
  /** @packageDocumentation
290622
290820
  * @module Content
290623
290821
  */
290624
-
290625
290822
  /** @public */
290626
290823
  var Value;
290627
290824
  (function (Value) {
@@ -290645,11 +290842,16 @@ var Value;
290645
290842
  return isNestedContentValue(value);
290646
290843
  }
290647
290844
  Value.isNestedContent = isNestedContent;
290648
- /** Serialize [[Value]] to JSON */
290845
+ /**
290846
+ * Serialize [[Value]] to JSON
290847
+ * @deprecated in 3.x. Use [[Value]]
290848
+ */
290849
+ // eslint-disable-next-line deprecation/deprecation
290649
290850
  function fromJSON(json) {
290650
290851
  if (json === null)
290651
290852
  return undefined;
290652
290853
  if (isNestedContentValue(json))
290854
+ // eslint-disable-next-line deprecation/deprecation
290653
290855
  return json.map(NestedContentValue.fromJSON);
290654
290856
  if (isArrayValue(json))
290655
290857
  return valuesArrayFromJSON(json);
@@ -290658,11 +290860,16 @@ var Value;
290658
290860
  return json;
290659
290861
  }
290660
290862
  Value.fromJSON = fromJSON;
290661
- /** Deserialize [[Value]] from JSON */
290863
+ /**
290864
+ * Deserialize [[Value]] from JSON
290865
+ * @deprecated in 3.x. Use [[Value]]
290866
+ */
290867
+ // eslint-disable-next-line deprecation/deprecation
290662
290868
  function toJSON(value) {
290663
290869
  if (undefined === value)
290664
290870
  return null;
290665
290871
  if (isNestedContentValue(value))
290872
+ // eslint-disable-next-line deprecation/deprecation
290666
290873
  return value.map(NestedContentValue.toJSON);
290667
290874
  if (isArrayValue(value))
290668
290875
  return valuesArrayToJSON(value);
@@ -290690,7 +290897,11 @@ var DisplayValue;
290690
290897
  return isMapValue(value);
290691
290898
  }
290692
290899
  DisplayValue.isMap = isMap;
290693
- /** Serialize [[DisplayValue]] to JSON */
290900
+ /**
290901
+ * Serialize [[DisplayValue]] to JSON
290902
+ * @deprecated in 3.x. Use [[DisplayValue]]
290903
+ */
290904
+ // eslint-disable-next-line deprecation/deprecation
290694
290905
  function fromJSON(json) {
290695
290906
  if (json === null)
290696
290907
  return undefined;
@@ -290701,7 +290912,11 @@ var DisplayValue;
290701
290912
  return json;
290702
290913
  }
290703
290914
  DisplayValue.fromJSON = fromJSON;
290704
- /** Deserialize [[DisplayValue]] from JSON */
290915
+ /**
290916
+ * Deserialize [[DisplayValue]] from JSON
290917
+ * @deprecated in 3.x. Use [[DisplayValue]]
290918
+ */
290919
+ // eslint-disable-next-line deprecation/deprecation
290705
290920
  function toJSON(value) {
290706
290921
  if (undefined === value)
290707
290922
  return null;
@@ -290716,23 +290931,29 @@ var DisplayValue;
290716
290931
  /** @public */
290717
290932
  var NestedContentValue;
290718
290933
  (function (NestedContentValue) {
290719
- /** Serialize [[NestedContentValue]] to JSON */
290720
- function toJSON(json) {
290934
+ /**
290935
+ * Serialize [[NestedContentValue]] to JSON
290936
+ * @deprecated in 3.x. Use [[NestedContentValue]]
290937
+ */
290938
+ // eslint-disable-next-line deprecation/deprecation
290939
+ function toJSON(value) {
290721
290940
  return {
290722
- primaryKeys: json.primaryKeys.map(_EC__WEBPACK_IMPORTED_MODULE_0__.InstanceKey.toJSON),
290723
- values: valuesMapToJSON(json.values),
290724
- displayValues: displayValuesMapToJSON(json.displayValues),
290725
- mergedFieldNames: json.mergedFieldNames,
290941
+ ...value,
290942
+ values: valuesMapToJSON(value.values),
290943
+ displayValues: displayValuesMapToJSON(value.displayValues),
290726
290944
  };
290727
290945
  }
290728
290946
  NestedContentValue.toJSON = toJSON;
290729
- /** Deserialize [[NestedContentValue]] from JSON */
290947
+ /**
290948
+ * Deserialize [[NestedContentValue]] from JSON
290949
+ * @deprecated in 3.x. Use [[NestedContentValue]]
290950
+ */
290951
+ // eslint-disable-next-line deprecation/deprecation
290730
290952
  function fromJSON(json) {
290731
290953
  return {
290732
- primaryKeys: json.primaryKeys.map(_EC__WEBPACK_IMPORTED_MODULE_0__.InstanceKey.fromJSON),
290954
+ ...json,
290733
290955
  values: valuesMapFromJSON(json.values),
290734
290956
  displayValues: displayValuesMapFromJSON(json.displayValues),
290735
- mergedFieldNames: json.mergedFieldNames,
290736
290957
  };
290737
290958
  }
290738
290959
  NestedContentValue.fromJSON = fromJSON;
@@ -290740,23 +290961,36 @@ var NestedContentValue;
290740
290961
  /** @public */
290741
290962
  var DisplayValueGroup;
290742
290963
  (function (DisplayValueGroup) {
290743
- /** Serialize [[DisplayValueGroup]] to JSON */
290964
+ /**
290965
+ * Serialize [[DisplayValueGroup]] to JSON
290966
+ * @deprecated in 3.x. Use [[DisplayValueGroup]]
290967
+ */
290968
+ // eslint-disable-next-line deprecation/deprecation
290744
290969
  function toJSON(group) {
290745
290970
  return {
290971
+ // eslint-disable-next-line deprecation/deprecation
290746
290972
  displayValue: DisplayValue.toJSON(group.displayValue),
290973
+ // eslint-disable-next-line deprecation/deprecation
290747
290974
  groupedRawValues: group.groupedRawValues.map(Value.toJSON),
290748
290975
  };
290749
290976
  }
290750
290977
  DisplayValueGroup.toJSON = toJSON;
290751
- /** Deserialize [[DisplayValueGroup]] from JSON */
290978
+ /**
290979
+ * Deserialize [[DisplayValueGroup]] from JSON
290980
+ * @deprecated in 3.x. Use [[DisplayValueGroup]]
290981
+ */
290982
+ // eslint-disable-next-line deprecation/deprecation
290752
290983
  function fromJSON(json) {
290753
290984
  return {
290985
+ // eslint-disable-next-line deprecation/deprecation
290754
290986
  displayValue: DisplayValue.fromJSON(json.displayValue),
290987
+ // eslint-disable-next-line deprecation/deprecation
290755
290988
  groupedRawValues: json.groupedRawValues.map(Value.fromJSON),
290756
290989
  };
290757
290990
  }
290758
290991
  DisplayValueGroup.fromJSON = fromJSON;
290759
290992
  })(DisplayValueGroup || (DisplayValueGroup = {}));
290993
+ // eslint-disable-next-line deprecation/deprecation
290760
290994
  function isNestedContentValue(v) {
290761
290995
  return (v !== undefined) && Array.isArray(v)
290762
290996
  && ((v.length === 0)
@@ -290765,64 +290999,84 @@ function isNestedContentValue(v) {
290765
290999
  && v[0].displayValues !== undefined
290766
291000
  && v[0].mergedFieldNames !== undefined);
290767
291001
  }
291002
+ // eslint-disable-next-line deprecation/deprecation
290768
291003
  function isArrayValue(v) {
290769
291004
  // note: we don't guarantee by 100% that v is ValuesArray | DisplayValuesArray, but merely make compiler happy.
290770
291005
  // we have other means to determine the type of value.
290771
291006
  return (v !== undefined) && Array.isArray(v);
290772
291007
  }
291008
+ // eslint-disable-next-line deprecation/deprecation
290773
291009
  function isMapValue(v) {
290774
291010
  return (v !== undefined) && (typeof v === "object") && !Array.isArray(v);
290775
291011
  }
290776
291012
  function isPrimitiveValue(v) {
290777
291013
  return !isArrayValue(v) && !isMapValue(v);
290778
291014
  }
291015
+ // eslint-disable-next-line deprecation/deprecation
290779
291016
  function valuesArrayFromJSON(json) {
291017
+ // eslint-disable-next-line deprecation/deprecation
290780
291018
  return json.map(Value.fromJSON);
290781
291019
  }
291020
+ // eslint-disable-next-line deprecation/deprecation
290782
291021
  function valuesArrayToJSON(values) {
291022
+ // eslint-disable-next-line deprecation/deprecation
290783
291023
  return values.map(Value.toJSON);
290784
291024
  }
291025
+ // eslint-disable-next-line deprecation/deprecation
290785
291026
  function valuesMapFromJSON(json) {
290786
291027
  const map = {};
290787
291028
  for (const key in json) {
290788
291029
  /* istanbul ignore else */
290789
291030
  if (json.hasOwnProperty(key)) {
291031
+ // eslint-disable-next-line deprecation/deprecation
290790
291032
  map[key] = Value.fromJSON(json[key]);
290791
291033
  }
290792
291034
  }
290793
291035
  return map;
290794
291036
  }
291037
+ // eslint-disable-next-line deprecation/deprecation
290795
291038
  function valuesMapToJSON(values) {
291039
+ // eslint-disable-next-line deprecation/deprecation
290796
291040
  const map = {};
290797
291041
  for (const key in values) {
290798
291042
  /* istanbul ignore else */
290799
291043
  if (values.hasOwnProperty(key)) {
291044
+ // eslint-disable-next-line deprecation/deprecation
290800
291045
  map[key] = Value.toJSON(values[key]);
290801
291046
  }
290802
291047
  }
290803
291048
  return map;
290804
291049
  }
291050
+ // eslint-disable-next-line deprecation/deprecation
290805
291051
  function displayValuesArrayFromJSON(json) {
291052
+ // eslint-disable-next-line deprecation/deprecation
290806
291053
  return json.map(DisplayValue.fromJSON);
290807
291054
  }
291055
+ // eslint-disable-next-line deprecation/deprecation
290808
291056
  function displayValuesArrayToJSON(values) {
291057
+ // eslint-disable-next-line deprecation/deprecation
290809
291058
  return values.map(DisplayValue.toJSON);
290810
291059
  }
291060
+ // eslint-disable-next-line deprecation/deprecation
290811
291061
  function displayValuesMapFromJSON(json) {
290812
291062
  const map = {};
290813
291063
  for (const key in json) {
290814
291064
  /* istanbul ignore else */
290815
291065
  if (json.hasOwnProperty(key)) {
291066
+ // eslint-disable-next-line deprecation/deprecation
290816
291067
  map[key] = DisplayValue.fromJSON(json[key]);
290817
291068
  }
290818
291069
  }
290819
291070
  return map;
290820
291071
  }
291072
+ // eslint-disable-next-line deprecation/deprecation
290821
291073
  function displayValuesMapToJSON(values) {
291074
+ // eslint-disable-next-line deprecation/deprecation
290822
291075
  const map = {};
290823
291076
  for (const key in values) {
290824
291077
  /* istanbul ignore else */
290825
291078
  if (values.hasOwnProperty(key)) {
291079
+ // eslint-disable-next-line deprecation/deprecation
290826
291080
  map[key] = DisplayValue.toJSON(values[key]);
290827
291081
  }
290828
291082
  }
@@ -290852,13 +291106,21 @@ __webpack_require__.r(__webpack_exports__);
290852
291106
  * @module Hierarchies
290853
291107
  */
290854
291108
 
290855
- /** @alpha */
291109
+ /**
291110
+ * Contains helper functions for working with objects of [[HierarchyLevel]] type.
291111
+ * @beta
291112
+ */
290856
291113
  var HierarchyLevel;
290857
291114
  (function (HierarchyLevel) {
290858
- /** Deserialize [[HierarchyLevel]] from JSON */
291115
+ /**
291116
+ * Deserialize [[HierarchyLevel]] from JSON
291117
+ * @deprecated in 3.x. Use [[HierarchyLevel]].
291118
+ */
291119
+ // eslint-disable-next-line deprecation/deprecation
290859
291120
  function fromJSON(json) {
290860
291121
  return {
290861
291122
  ...json,
291123
+ // eslint-disable-next-line deprecation/deprecation
290862
291124
  nodes: json.nodes.map(_Node__WEBPACK_IMPORTED_MODULE_0__.Node.fromJSON),
290863
291125
  };
290864
291126
  }
@@ -290905,36 +291167,45 @@ var StandardNodeTypes;
290905
291167
  /** @public */
290906
291168
  var NodeKey;
290907
291169
  (function (NodeKey) {
290908
- /** Serialize given [[NodeKey]] to JSON */
291170
+ /**
291171
+ * Serialize given [[NodeKey]] to JSON
291172
+ * @deprecated in 3.x. Use [[NodeKey]].
291173
+ */
291174
+ // eslint-disable-next-line deprecation/deprecation
290909
291175
  function toJSON(key) {
290910
- if (isInstancesNodeKey(key))
290911
- return { ...key, instanceKeys: key.instanceKeys.map(_EC__WEBPACK_IMPORTED_MODULE_1__.InstanceKey.toJSON) };
290912
291176
  return { ...key };
290913
291177
  }
290914
291178
  NodeKey.toJSON = toJSON;
290915
- /** Deserialize node key from JSON */
291179
+ /**
291180
+ * Deserialize node key from JSON
291181
+ * @deprecated in 3.x. Use [[NodeKey]].
291182
+ */
291183
+ // eslint-disable-next-line deprecation/deprecation
290916
291184
  function fromJSON(json) {
290917
- if (isInstancesNodeKey(json))
290918
- return { version: 1, ...json, instanceKeys: json.instanceKeys.map(_EC__WEBPACK_IMPORTED_MODULE_1__.InstanceKey.fromJSON) };
290919
291185
  return { version: 1, ...json };
290920
291186
  }
290921
291187
  NodeKey.fromJSON = fromJSON;
291188
+ // eslint-disable-next-line deprecation/deprecation
290922
291189
  function isInstancesNodeKey(key) {
290923
291190
  return key.type === StandardNodeTypes.ECInstancesNode;
290924
291191
  }
290925
291192
  NodeKey.isInstancesNodeKey = isInstancesNodeKey;
291193
+ // eslint-disable-next-line deprecation/deprecation
290926
291194
  function isClassGroupingNodeKey(key) {
290927
291195
  return key.type === StandardNodeTypes.ECClassGroupingNode;
290928
291196
  }
290929
291197
  NodeKey.isClassGroupingNodeKey = isClassGroupingNodeKey;
291198
+ // eslint-disable-next-line deprecation/deprecation
290930
291199
  function isPropertyGroupingNodeKey(key) {
290931
291200
  return key.type === StandardNodeTypes.ECPropertyGroupingNode;
290932
291201
  }
290933
291202
  NodeKey.isPropertyGroupingNodeKey = isPropertyGroupingNodeKey;
291203
+ // eslint-disable-next-line deprecation/deprecation
290934
291204
  function isLabelGroupingNodeKey(key) {
290935
291205
  return key.type === StandardNodeTypes.DisplayLabelGroupingNode;
290936
291206
  }
290937
291207
  NodeKey.isLabelGroupingNodeKey = isLabelGroupingNodeKey;
291208
+ // eslint-disable-next-line deprecation/deprecation
290938
291209
  function isGroupingNodeKey(key) {
290939
291210
  return isClassGroupingNodeKey(key) || isPropertyGroupingNodeKey(key) || isLabelGroupingNodeKey(key);
290940
291211
  }
@@ -291006,8 +291277,7 @@ __webpack_require__.r(__webpack_exports__);
291006
291277
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
291007
291278
  /* harmony export */ "Node": () => (/* binding */ Node)
291008
291279
  /* harmony export */ });
291009
- /* harmony import */ var _LabelDefinition__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../LabelDefinition */ "../../presentation/common/lib/esm/presentation-common/LabelDefinition.js");
291010
- /* harmony import */ var _Key__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Key */ "../../presentation/common/lib/esm/presentation-common/hierarchy/Key.js");
291280
+ /* harmony import */ var _Key__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Key */ "../../presentation/common/lib/esm/presentation-common/hierarchy/Key.js");
291011
291281
  /*---------------------------------------------------------------------------------------------
291012
291282
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
291013
291283
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -291016,46 +291286,54 @@ __webpack_require__.r(__webpack_exports__);
291016
291286
  * @module Hierarchies
291017
291287
  */
291018
291288
 
291019
-
291020
291289
  /** @public */
291021
291290
  var Node;
291022
291291
  (function (Node) {
291023
- /** Serialize given [[Node]] to JSON */
291292
+ /**
291293
+ * Serialize given [[Node]] to JSON
291294
+ * @deprecated in 3.x. Use [[Node]].
291295
+ */
291296
+ // eslint-disable-next-line deprecation/deprecation
291024
291297
  function toJSON(node) {
291025
- const { key, label, ...baseNode } = node;
291298
+ const { label, ...baseNode } = node;
291026
291299
  return {
291027
291300
  ...baseNode,
291028
- key: _Key__WEBPACK_IMPORTED_MODULE_1__.NodeKey.toJSON(key),
291029
- labelDefinition: _LabelDefinition__WEBPACK_IMPORTED_MODULE_0__.LabelDefinition.toJSON(label),
291301
+ labelDefinition: label,
291030
291302
  };
291031
291303
  }
291032
291304
  Node.toJSON = toJSON;
291033
291305
  /** @internal */
291306
+ // eslint-disable-next-line deprecation/deprecation
291034
291307
  function toPartialJSON(node) {
291035
291308
  if (node.key === undefined) {
291036
291309
  return node;
291037
291310
  }
291038
- const { key, label, ...baseNode } = node;
291311
+ const { label, ...baseNode } = node;
291039
291312
  return {
291040
291313
  ...baseNode,
291041
- key: _Key__WEBPACK_IMPORTED_MODULE_1__.NodeKey.toJSON(key),
291042
- labelDefinition: _LabelDefinition__WEBPACK_IMPORTED_MODULE_0__.LabelDefinition.toJSON(label),
291314
+ labelDefinition: label,
291043
291315
  };
291044
291316
  }
291045
291317
  Node.toPartialJSON = toPartialJSON;
291046
- /** Deserialize [[Node]] from JSON */
291318
+ /**
291319
+ * Deserialize [[Node]] from JSON
291320
+ * @deprecated in 3.x. Use [[Node]].
291321
+ */
291322
+ // eslint-disable-next-line deprecation/deprecation
291047
291323
  function fromJSON(json) {
291048
291324
  if (typeof json === "string")
291049
291325
  return JSON.parse(json, reviver);
291050
291326
  const { labelDefinition, ...baseJson } = json;
291051
291327
  return {
291052
291328
  ...baseJson,
291053
- key: _Key__WEBPACK_IMPORTED_MODULE_1__.NodeKey.fromJSON(json.key),
291054
- label: _LabelDefinition__WEBPACK_IMPORTED_MODULE_0__.LabelDefinition.fromJSON(labelDefinition),
291329
+ // eslint-disable-next-line deprecation/deprecation
291330
+ key: _Key__WEBPACK_IMPORTED_MODULE_0__.NodeKey.fromJSON(json.key),
291331
+ label: labelDefinition,
291055
291332
  };
291056
291333
  }
291057
291334
  Node.fromJSON = fromJSON;
291058
291335
  /** @internal */
291336
+ // eslint-disable-next-line deprecation/deprecation
291059
291337
  function fromPartialJSON(json) {
291060
291338
  if (json.key === undefined) {
291061
291339
  return json;
@@ -291063,18 +291341,19 @@ var Node;
291063
291341
  const { key, labelDefinition, ...baseJson } = json;
291064
291342
  return {
291065
291343
  ...baseJson,
291066
- key: _Key__WEBPACK_IMPORTED_MODULE_1__.NodeKey.fromJSON(key),
291067
- label: _LabelDefinition__WEBPACK_IMPORTED_MODULE_0__.LabelDefinition.fromJSON(labelDefinition),
291344
+ // eslint-disable-next-line deprecation/deprecation
291345
+ key: _Key__WEBPACK_IMPORTED_MODULE_0__.NodeKey.fromJSON(key),
291346
+ label: labelDefinition,
291068
291347
  };
291069
291348
  }
291070
291349
  Node.fromPartialJSON = fromPartialJSON;
291071
291350
  /**
291072
291351
  * Reviver function that can be used as a second argument for
291073
291352
  * `JSON.parse` method when parsing [[Node]] objects.
291074
- *
291075
291353
  * @internal
291076
291354
  */
291077
291355
  function reviver(key, value) {
291356
+ // eslint-disable-next-line deprecation/deprecation
291078
291357
  return key === "" ? fromJSON(value) : value;
291079
291358
  }
291080
291359
  Node.reviver = reviver;
@@ -291082,19 +291361,19 @@ var Node;
291082
291361
  * Deserialize nodes list from JSON
291083
291362
  * @param json JSON or JSON serialized to string to deserialize from
291084
291363
  * @returns Deserialized nodes list
291085
- *
291086
291364
  * @internal
291087
291365
  */
291366
+ // eslint-disable-next-line deprecation/deprecation
291088
291367
  function listFromJSON(json) {
291089
291368
  if (typeof json === "string")
291090
291369
  return JSON.parse(json, listReviver);
291370
+ // eslint-disable-next-line deprecation/deprecation
291091
291371
  return json.map((m) => fromJSON(m));
291092
291372
  }
291093
291373
  Node.listFromJSON = listFromJSON;
291094
291374
  /**
291095
291375
  * Reviver function that can be used as a second argument for
291096
291376
  * `JSON.parse` method when parsing [[Node]][] objects.
291097
- *
291098
291377
  * @internal
291099
291378
  */
291100
291379
  function listReviver(key, value) {
@@ -291130,43 +291409,59 @@ __webpack_require__.r(__webpack_exports__);
291130
291409
  /** @public */
291131
291410
  var NodePathElement;
291132
291411
  (function (NodePathElement) {
291133
- /** Serialize given [[NodePathElement]] to JSON */
291412
+ /**
291413
+ * Serialize given [[NodePathElement]] to JSON
291414
+ * @deprecated in 3.x. Use [[NodePathElement]].
291415
+ */
291416
+ // eslint-disable-next-line deprecation/deprecation
291134
291417
  function toJSON(npe) {
291418
+ // eslint-disable-next-line deprecation/deprecation
291135
291419
  const result = {
291420
+ // eslint-disable-next-line deprecation/deprecation
291136
291421
  node: _Node__WEBPACK_IMPORTED_MODULE_0__.Node.toJSON(npe.node),
291137
291422
  index: npe.index,
291423
+ // eslint-disable-next-line deprecation/deprecation
291138
291424
  children: npe.children.map(NodePathElement.toJSON),
291139
291425
  };
291140
291426
  if (undefined !== npe.isMarked)
291141
291427
  result.isMarked = npe.isMarked;
291142
- if (undefined !== npe.filteringData)
291428
+ if (undefined !== npe.filteringData) {
291429
+ // eslint-disable-next-line deprecation/deprecation
291143
291430
  result.filteringData = NodePathFilteringData.toJSON(npe.filteringData);
291431
+ }
291144
291432
  return result;
291145
291433
  }
291146
291434
  NodePathElement.toJSON = toJSON;
291147
- /** Deserialize [[NodePathElement]] from JSON */
291435
+ /**
291436
+ * Deserialize [[NodePathElement]] from JSON
291437
+ * @deprecated in 3.x. Use [[NodePathElement]].
291438
+ */
291439
+ // eslint-disable-next-line deprecation/deprecation
291148
291440
  function fromJSON(json) {
291149
291441
  if (typeof json === "string")
291150
291442
  return JSON.parse(json, reviver);
291151
291443
  const result = {
291152
291444
  index: json.index,
291445
+ // eslint-disable-next-line deprecation/deprecation
291153
291446
  node: _Node__WEBPACK_IMPORTED_MODULE_0__.Node.fromJSON(json.node),
291154
291447
  children: listFromJSON(json.children),
291155
291448
  };
291156
291449
  if (undefined !== json.isMarked)
291157
291450
  result.isMarked = json.isMarked;
291158
- if (undefined !== json.filteringData)
291451
+ if (undefined !== json.filteringData) {
291452
+ // eslint-disable-next-line deprecation/deprecation
291159
291453
  result.filteringData = NodePathFilteringData.fromJSON(json.filteringData);
291454
+ }
291160
291455
  return result;
291161
291456
  }
291162
291457
  NodePathElement.fromJSON = fromJSON;
291163
291458
  /**
291164
291459
  * Reviver function that can be used as a second argument for
291165
291460
  * `JSON.parse` method when parsing [[NodePathElement]] objects.
291166
- *
291167
291461
  * @internal
291168
291462
  */
291169
291463
  function reviver(key, value) {
291464
+ // eslint-disable-next-line deprecation/deprecation
291170
291465
  return key === "" ? fromJSON(value) : value;
291171
291466
  }
291172
291467
  NodePathElement.reviver = reviver;
@@ -291174,19 +291469,19 @@ var NodePathElement;
291174
291469
  * Deserialize [[NodePathElement]] list from JSON
291175
291470
  * @param json JSON or JSON serialized to string to deserialize from
291176
291471
  * @returns Deserialized [[NodePathElement]] list
291177
- *
291178
291472
  * @internal
291179
291473
  */
291474
+ // eslint-disable-next-line deprecation/deprecation
291180
291475
  function listFromJSON(json) {
291181
291476
  if (typeof json === "string")
291182
291477
  return JSON.parse(json, listReviver);
291478
+ // eslint-disable-next-line deprecation/deprecation
291183
291479
  return json.map((m) => fromJSON(m));
291184
291480
  }
291185
291481
  NodePathElement.listFromJSON = listFromJSON;
291186
291482
  /**
291187
291483
  * Reviver function that can be used as a second argument for
291188
291484
  * `JSON.parse` method when parsing [[NodePathElement]][] objects.
291189
- *
291190
291485
  * @internal
291191
291486
  */
291192
291487
  function listReviver(key, value) {
@@ -291197,7 +291492,11 @@ var NodePathElement;
291197
291492
  /** @public */
291198
291493
  var NodePathFilteringData;
291199
291494
  (function (NodePathFilteringData) {
291200
- /** Serialize given [[NodePathFilteringData]] to JSON */
291495
+ /**
291496
+ * Serialize given [[NodePathFilteringData]] to JSON
291497
+ * @deprecated in 3.x. Use [[NodePathFilteringData]].
291498
+ */
291499
+ // eslint-disable-next-line deprecation/deprecation
291201
291500
  function toJSON(npfd) {
291202
291501
  return {
291203
291502
  occurances: npfd.matchesCount,
@@ -291205,7 +291504,11 @@ var NodePathFilteringData;
291205
291504
  };
291206
291505
  }
291207
291506
  NodePathFilteringData.toJSON = toJSON;
291208
- /** Deserialize [[NodePathFilteringData]] from JSON */
291507
+ /**
291508
+ * Deserialize [[NodePathFilteringData]] from JSON
291509
+ * @deprecated in 3.x. Use [[NodePathFilteringData]].
291510
+ */
291511
+ // eslint-disable-next-line deprecation/deprecation
291209
291512
  function fromJSON(json) {
291210
291513
  return {
291211
291514
  matchesCount: json.occurances,
@@ -292042,7 +292345,6 @@ __webpack_require__.r(__webpack_exports__);
292042
292345
  */
292043
292346
  var ChildNodeSpecificationTypes;
292044
292347
  (function (ChildNodeSpecificationTypes) {
292045
- // hierarchy specifications
292046
292348
  ChildNodeSpecificationTypes["RelatedInstanceNodes"] = "RelatedInstanceNodes";
292047
292349
  ChildNodeSpecificationTypes["InstanceNodesOfSpecificClasses"] = "InstanceNodesOfSpecificClasses";
292048
292350
  ChildNodeSpecificationTypes["CustomQueryInstanceNodes"] = "CustomQueryInstanceNodes";
@@ -292558,10 +292860,6 @@ class IpcRequestsHandler {
292558
292860
  const jsonParams = {
292559
292861
  ...params,
292560
292862
  clientId: this.clientId,
292561
- stateChanges: params.stateChanges.map((sc) => ({
292562
- ...sc,
292563
- ...(sc.nodeKey ? { nodeKey: _itwin_presentation_common__WEBPACK_IMPORTED_MODULE_1__.NodeKey.toJSON(sc.nodeKey) } : undefined),
292564
- })),
292565
292863
  };
292566
292864
  return this.call("updateHierarchyState", jsonParams);
292567
292865
  }
@@ -292990,39 +293288,38 @@ class PresentationManager {
292990
293288
  async getNodes(requestOptions) {
292991
293289
  await this.onConnection(requestOptions.imodel);
292992
293290
  const options = await this.addRulesetAndVariablesToOptions(requestOptions);
292993
- const rpcOptions = this.toRpcTokenOptions({ ...options, parentKey: optionalNodeKeyToJson(options.parentKey) });
293291
+ const rpcOptions = this.toRpcTokenOptions({ ...options });
292994
293292
  const result = await buildPagedArrayResponse(options.paging, async (partialPageOptions) => this._requestsHandler.getPagedNodes({ ...rpcOptions, paging: partialPageOptions }));
293293
+ // eslint-disable-next-line deprecation/deprecation
292995
293294
  return this._localizationHelper.getLocalizedNodes(result.items.map(_itwin_presentation_common__WEBPACK_IMPORTED_MODULE_2__.Node.fromJSON));
292996
293295
  }
292997
293296
  /** Retrieves nodes count. */
292998
293297
  async getNodesCount(requestOptions) {
292999
293298
  await this.onConnection(requestOptions.imodel);
293000
293299
  const options = await this.addRulesetAndVariablesToOptions(requestOptions);
293001
- const rpcOptions = this.toRpcTokenOptions({ ...options, parentKey: optionalNodeKeyToJson(options.parentKey) });
293300
+ const rpcOptions = this.toRpcTokenOptions({ ...options });
293002
293301
  return this._requestsHandler.getNodesCount(rpcOptions);
293003
293302
  }
293004
293303
  /** Retrieves total nodes count and a single page of nodes. */
293005
293304
  async getNodesAndCount(requestOptions) {
293006
293305
  await this.onConnection(requestOptions.imodel);
293007
293306
  const options = await this.addRulesetAndVariablesToOptions(requestOptions);
293008
- const rpcOptions = this.toRpcTokenOptions({ ...options, parentKey: optionalNodeKeyToJson(options.parentKey) });
293307
+ const rpcOptions = this.toRpcTokenOptions({ ...options });
293009
293308
  const result = await buildPagedArrayResponse(options.paging, async (partialPageOptions) => this._requestsHandler.getPagedNodes({ ...rpcOptions, paging: partialPageOptions }));
293010
293309
  return {
293011
293310
  count: result.total,
293311
+ // eslint-disable-next-line deprecation/deprecation
293012
293312
  nodes: this._localizationHelper.getLocalizedNodes(result.items.map(_itwin_presentation_common__WEBPACK_IMPORTED_MODULE_2__.Node.fromJSON)),
293013
293313
  };
293014
293314
  }
293015
293315
  /**
293016
293316
  * Retrieves hierarchy level descriptor.
293017
- * @alpha
293317
+ * @beta
293018
293318
  */
293019
293319
  async getNodesDescriptor(requestOptions) {
293020
293320
  await this.onConnection(requestOptions.imodel);
293021
293321
  const options = await this.addRulesetAndVariablesToOptions(requestOptions);
293022
- const rpcOptions = this.toRpcTokenOptions({
293023
- ...options,
293024
- parentKey: optionalNodeKeyToJson(options.parentKey),
293025
- });
293322
+ const rpcOptions = this.toRpcTokenOptions({ ...options });
293026
293323
  const result = await this._requestsHandler.getNodesDescriptor(rpcOptions);
293027
293324
  return _itwin_presentation_common__WEBPACK_IMPORTED_MODULE_2__.Descriptor.fromJSON(result);
293028
293325
  }
@@ -293030,8 +293327,9 @@ class PresentationManager {
293030
293327
  async getNodePaths(requestOptions) {
293031
293328
  await this.onConnection(requestOptions.imodel);
293032
293329
  const options = await this.addRulesetAndVariablesToOptions(requestOptions);
293033
- const rpcOptions = this.toRpcTokenOptions({ ...options, instancePaths: options.instancePaths.map((p) => p.map(_itwin_presentation_common__WEBPACK_IMPORTED_MODULE_2__.InstanceKey.toJSON)) });
293330
+ const rpcOptions = this.toRpcTokenOptions({ ...options });
293034
293331
  const result = await this._requestsHandler.getNodePaths(rpcOptions);
293332
+ // eslint-disable-next-line deprecation/deprecation
293035
293333
  return result.map(_itwin_presentation_common__WEBPACK_IMPORTED_MODULE_2__.NodePathElement.fromJSON);
293036
293334
  }
293037
293335
  /** Retrieves paths from root nodes to nodes containing filter text in their label. */
@@ -293039,11 +293337,13 @@ class PresentationManager {
293039
293337
  await this.onConnection(requestOptions.imodel);
293040
293338
  const options = await this.addRulesetAndVariablesToOptions(requestOptions);
293041
293339
  const result = await this._requestsHandler.getFilteredNodePaths(this.toRpcTokenOptions(options));
293340
+ // eslint-disable-next-line deprecation/deprecation
293042
293341
  return result.map(_itwin_presentation_common__WEBPACK_IMPORTED_MODULE_2__.NodePathElement.fromJSON);
293043
293342
  }
293044
293343
  /**
293045
- * Get all content sources for a given list of classes.
293046
- * @beta
293344
+ * Get information about the sources of content when building it for specific ECClasses. Sources involve classes of the primary select instance,
293345
+ * its related instances for loading related and navigation properties.
293346
+ * @public
293047
293347
  */
293048
293348
  async getContentSources(requestOptions) {
293049
293349
  await this.onConnection(requestOptions.imodel);
@@ -293119,12 +293419,13 @@ class PresentationManager {
293119
293419
  const result = await buildPagedArrayResponse(requestOptions.paging, async (partialPageOptions) => this._requestsHandler.getPagedDistinctValues({ ...rpcOptions, paging: partialPageOptions }));
293120
293420
  return {
293121
293421
  ...result,
293422
+ // eslint-disable-next-line deprecation/deprecation
293122
293423
  items: result.items.map(_itwin_presentation_common__WEBPACK_IMPORTED_MODULE_2__.DisplayValueGroup.fromJSON),
293123
293424
  };
293124
293425
  }
293125
293426
  /**
293126
293427
  * Retrieves property data in a simplified format for a single element specified by ID.
293127
- * @beta
293428
+ * @public
293128
293429
  */
293129
293430
  async getElementProperties(requestOptions) {
293130
293431
  await this.onConnection(requestOptions.imodel);
@@ -293136,7 +293437,7 @@ class PresentationManager {
293136
293437
  }
293137
293438
  /**
293138
293439
  * Retrieves content item instance keys.
293139
- * @beta
293440
+ * @public
293140
293441
  */
293141
293442
  async getContentInstanceKeys(requestOptions) {
293142
293443
  await this.onConnection(requestOptions.imodel);
@@ -293165,19 +293466,19 @@ class PresentationManager {
293165
293466
  /** Retrieves display label definition of specific item. */
293166
293467
  async getDisplayLabelDefinition(requestOptions) {
293167
293468
  await this.onConnection(requestOptions.imodel);
293168
- const rpcOptions = this.toRpcTokenOptions({ ...requestOptions, key: _itwin_presentation_common__WEBPACK_IMPORTED_MODULE_2__.InstanceKey.toJSON(requestOptions.key) });
293469
+ const rpcOptions = this.toRpcTokenOptions({ ...requestOptions });
293169
293470
  const result = await this._requestsHandler.getDisplayLabelDefinition(rpcOptions);
293170
- return this._localizationHelper.getLocalizedLabelDefinition(_itwin_presentation_common__WEBPACK_IMPORTED_MODULE_2__.LabelDefinition.fromJSON(result));
293471
+ return this._localizationHelper.getLocalizedLabelDefinition(result);
293171
293472
  }
293172
293473
  /** Retrieves display label definition of specific items. */
293173
293474
  async getDisplayLabelDefinitions(requestOptions) {
293174
293475
  await this.onConnection(requestOptions.imodel);
293175
- const rpcOptions = this.toRpcTokenOptions({ ...requestOptions, keys: requestOptions.keys.map(_itwin_presentation_common__WEBPACK_IMPORTED_MODULE_2__.InstanceKey.toJSON) });
293476
+ const rpcOptions = this.toRpcTokenOptions({ ...requestOptions });
293176
293477
  const result = await buildPagedArrayResponse(undefined, async (partialPageOptions) => {
293177
293478
  const partialKeys = (!partialPageOptions.start) ? rpcOptions.keys : rpcOptions.keys.slice(partialPageOptions.start);
293178
293479
  return this._requestsHandler.getPagedDisplayLabelDefinitions({ ...rpcOptions, keys: partialKeys });
293179
293480
  });
293180
- return this._localizationHelper.getLocalizedLabelDefinitions(result.items.map(_itwin_presentation_common__WEBPACK_IMPORTED_MODULE_2__.LabelDefinition.fromJSON));
293481
+ return this._localizationHelper.getLocalizedLabelDefinitions(result.items);
293181
293482
  }
293182
293483
  }
293183
293484
  const getDescriptorOverrides = (descriptorOrOverrides) => {
@@ -293185,7 +293486,6 @@ const getDescriptorOverrides = (descriptorOrOverrides) => {
293185
293486
  return descriptorOrOverrides.createDescriptorOverrides();
293186
293487
  return descriptorOrOverrides;
293187
293488
  };
293188
- const optionalNodeKeyToJson = (key) => key ? _itwin_presentation_common__WEBPACK_IMPORTED_MODULE_2__.NodeKey.toJSON(key) : undefined;
293189
293489
  async function createPagedGeneratorResponse(props) {
293190
293490
  var _a, _b, _c, _d;
293191
293491
  let pageStart = (_b = (_a = props.page) === null || _a === void 0 ? void 0 : _a.start) !== null && _b !== void 0 ? _b : 0;
@@ -296089,7 +296389,7 @@ __webpack_require__.r(__webpack_exports__);
296089
296389
 
296090
296390
 
296091
296391
  /** Action taken by the application on item provided by a UiItemsProvider
296092
- * @public @deprecated this was only used by the previously removed UiItemsArbiter.
296392
+ * @public @deprecated in 3.2. This was only used by the previously removed UiItemsArbiter.
296093
296393
  */
296094
296394
  var UiItemsApplicationAction;
296095
296395
  (function (UiItemsApplicationAction) {
@@ -298708,7 +299008,7 @@ __webpack_require__.r(__webpack_exports__);
298708
299008
  class IconSpecUtilities {
298709
299009
  /** Create an IconSpec for an SVG loaded into web component with sprite loader
298710
299010
  * This method is deprecated -- use createWebComponentIconSpec()
298711
- * @public @deprecated
299011
+ * @public @deprecated in 3.2.
298712
299012
  */
298713
299013
  static createSvgIconSpec(svgSrc) {
298714
299014
  return `${IconSpecUtilities.SVG_PREFIX}${svgSrc}`;
@@ -298721,7 +299021,7 @@ class IconSpecUtilities {
298721
299021
  }
298722
299022
  /** Get the SVG Source from an sprite IconSpec
298723
299023
  * This method is deprecated -- use getWebComponentSource()
298724
- * @public @deprecated
299024
+ * @public @deprecated in 3.2.
298725
299025
  */
298726
299026
  static getSvgSource(iconSpec) {
298727
299027
  if (iconSpec.startsWith(IconSpecUtilities.SVG_PREFIX) && iconSpec.length > 4) {
@@ -300356,7 +300656,7 @@ __webpack_require__.r(__webpack_exports__);
300356
300656
  * @module Widget
300357
300657
  */
300358
300658
  /** Enum for AppUi 1 `Zone` locations that can have widgets added to them at run-time via [[UiItemsProvider]].
300359
- * @public @deprecated
300659
+ * @public @deprecated in 3.0.
300360
300660
  */
300361
300661
  var AbstractZoneLocation;
300362
300662
  (function (AbstractZoneLocation) {
@@ -300383,7 +300683,7 @@ var StagePanelLocation;
300383
300683
  var StagePanelSection;
300384
300684
  (function (StagePanelSection) {
300385
300685
  StagePanelSection[StagePanelSection["Start"] = 0] = "Start";
300386
- /** @deprecated - all widgets that a targeted for Middle will be placed in `End` section */
300686
+ /** @deprecated in 3.2. - all widgets that a targeted for Middle will be placed in `End` section */
300387
300687
  StagePanelSection[StagePanelSection["Middle"] = 1] = "Middle";
300388
300688
  StagePanelSection[StagePanelSection["End"] = 2] = "End";
300389
300689
  })(StagePanelSection || (StagePanelSection = {}));
@@ -305791,7 +306091,7 @@ module.exports = JSON.parse('{"name":"axios","version":"0.21.4","description":"P
305791
306091
  /***/ ((module) => {
305792
306092
 
305793
306093
  "use strict";
305794
- module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"3.6.0-dev.55","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.55","@itwin/core-bentley":"workspace:^3.6.0-dev.55","@itwin/core-common":"workspace:^3.6.0-dev.55","@itwin/core-geometry":"workspace:^3.6.0-dev.55","@itwin/core-orbitgt":"workspace:^3.6.0-dev.55","@itwin/core-quantity":"workspace:^3.6.0-dev.55","@itwin/webgl-compatibility":"workspace:^3.6.0-dev.55"},"//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"}}]}}');
306094
+ module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"3.6.0-dev.59","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.59","@itwin/core-bentley":"workspace:^3.6.0-dev.59","@itwin/core-common":"workspace:^3.6.0-dev.59","@itwin/core-geometry":"workspace:^3.6.0-dev.59","@itwin/core-orbitgt":"workspace:^3.6.0-dev.59","@itwin/core-quantity":"workspace:^3.6.0-dev.59","@itwin/webgl-compatibility":"workspace:^3.6.0-dev.59"},"//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"}}]}}');
305795
306095
 
305796
306096
  /***/ }),
305797
306097