@itwin/ecschema-rpcinterface-tests 3.2.0-dev.40 → 3.2.0-dev.43

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.
@@ -23064,9 +23064,9 @@ Backend.type = 'backend';
23064
23064
 
23065
23065
  /***/ }),
23066
23066
 
23067
- /***/ "../../common/temp/node_modules/.pnpm/i18next@21.6.14/node_modules/i18next/dist/esm/i18next.js":
23067
+ /***/ "../../common/temp/node_modules/.pnpm/i18next@21.6.16/node_modules/i18next/dist/esm/i18next.js":
23068
23068
  /*!*************************************************************************************************************!*\
23069
- !*** D:/vsts_a/1/s/common/temp/node_modules/.pnpm/i18next@21.6.14/node_modules/i18next/dist/esm/i18next.js ***!
23069
+ !*** D:/vsts_a/1/s/common/temp/node_modules/.pnpm/i18next@21.6.16/node_modules/i18next/dist/esm/i18next.js ***!
23070
23070
  \*************************************************************************************************************/
23071
23071
  /*! exports provided: default, changeLanguage, createInstance, exists, getFixedT, hasLoadedNamespace, init, loadLanguages, loadNamespaces, loadResources, reloadResources, setDefaultNamespace, t, use */
23072
23072
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -23906,7 +23906,7 @@ var Translator = function (_EventEmitter) {
23906
23906
  var _this3 = this;
23907
23907
 
23908
23908
  if (this.i18nFormat && this.i18nFormat.parse) {
23909
- res = this.i18nFormat.parse(res, options, resolved.usedLng, resolved.usedNS, resolved.usedKey, {
23909
+ res = this.i18nFormat.parse(res, _objectSpread$2(_objectSpread$2({}, this.options.interpolation.defaultVariables), options), resolved.usedLng, resolved.usedNS, resolved.usedKey, {
23910
23910
  resolved: resolved
23911
23911
  });
23912
23912
  } else if (!options.skipInterpolation) {
@@ -25714,7 +25714,7 @@ var I18n = function (_EventEmitter) {
25714
25714
  }
25715
25715
 
25716
25716
  if (this.hasResourceBundle(lng, ns)) return true;
25717
- if (!this.services.backendConnector.backend) return true;
25717
+ if (!this.services.backendConnector.backend || this.options.resources && !this.options.partialBundledLanguages) return true;
25718
25718
  if (loadNotPending(lng, ns) && (!fallbackLng || loadNotPending(lastLng, ns))) return true;
25719
25719
  return false;
25720
25720
  }
@@ -70015,10 +70015,13 @@ class IModelReadRpcInterface extends _RpcInterface__WEBPACK_IMPORTED_MODULE_0__[
70015
70015
  /** @deprecated */
70016
70016
  async getViewThumbnail(_iModelToken, _viewId) { return this.forward(arguments); }
70017
70017
  async getDefaultViewId(_iModelToken) { return this.forward(arguments); }
70018
+ async getCustomViewState3dData(_iModelToken, _options) { return this.forward(arguments); }
70019
+ async hydrateViewState(_iModelToken, _options) { return this.forward(arguments); }
70018
70020
  async requestSnap(_iModelToken, _sessionId, _props) { return this.forward(arguments); }
70019
70021
  async cancelSnap(_iModelToken, _sessionId) { return this.forward(arguments); }
70020
70022
  async getGeometryContainment(_iModelToken, _props) { return this.forward(arguments); }
70021
70023
  async getMassProperties(_iModelToken, _props) { return this.forward(arguments); }
70024
+ async getMassPropertiesPerCandidate(_iModelToken, _props) { return this.forward(arguments); }
70022
70025
  async getIModelCoordinatesFromGeoCoordinates(_iModelToken, _props) { return this.forward(arguments); }
70023
70026
  async getGeoCoordinatesFromIModelCoordinates(_iModelToken, _props) { return this.forward(arguments); }
70024
70027
  async getGeometrySummary(_iModelToken, _props) { return this.forward(arguments); }
@@ -70030,7 +70033,7 @@ class IModelReadRpcInterface extends _RpcInterface__WEBPACK_IMPORTED_MODULE_0__[
70030
70033
  /** The immutable name of the interface. */
70031
70034
  IModelReadRpcInterface.interfaceName = "IModelReadRpcInterface";
70032
70035
  /** The semantic version of the interface. */
70033
- IModelReadRpcInterface.interfaceVersion = "3.0.0";
70036
+ IModelReadRpcInterface.interfaceVersion = "3.1.0";
70034
70037
 
70035
70038
 
70036
70039
  /***/ }),
@@ -73466,7 +73469,7 @@ class WebAppRpcRequest extends _core_RpcRequest__WEBPACK_IMPORTED_MODULE_4__["Rp
73466
73469
  /** The maximum size permitted for an encoded component in a URL.
73467
73470
  * @note This is used for features like encoding the payload of a cacheable request in the URL.
73468
73471
  */
73469
- WebAppRpcRequest.maxUrlComponentSize = 1024;
73472
+ WebAppRpcRequest.maxUrlComponentSize = 4096;
73470
73473
 
73471
73474
  /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../../../common/temp/node_modules/.pnpm/buffer@4.9.2/node_modules/buffer/index.js */ "../../common/temp/node_modules/.pnpm/buffer@4.9.2/node_modules/buffer/index.js").Buffer))
73472
73475
 
@@ -91559,6 +91562,21 @@ class SectionAttachmentInfo {
91559
91562
  clone() {
91560
91563
  return new SectionAttachmentInfo(this._spatialView, this._drawingToSpatialTransform, this._displaySpatialView);
91561
91564
  }
91565
+ preload(options) {
91566
+ if (!this.wantDisplayed)
91567
+ return;
91568
+ if (this._spatialView instanceof _ViewState__WEBPACK_IMPORTED_MODULE_14__["ViewState3d"])
91569
+ return;
91570
+ if (!_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["Id64"].isValidId64(this._spatialView))
91571
+ return;
91572
+ options.spatialViewId = this._spatialView;
91573
+ options.viewStateLoadProps = {
91574
+ displayStyle: {
91575
+ omitScheduleScriptElementIds: true,
91576
+ compressExcludedElementIds: true,
91577
+ },
91578
+ };
91579
+ }
91562
91580
  async load(iModel) {
91563
91581
  if (!this.wantDisplayed)
91564
91582
  return;
@@ -91570,6 +91588,14 @@ class SectionAttachmentInfo {
91570
91588
  if (spatialView instanceof _ViewState__WEBPACK_IMPORTED_MODULE_14__["ViewState3d"])
91571
91589
  this._spatialView = spatialView;
91572
91590
  }
91591
+ async postload(options, iModel) {
91592
+ let spatialView;
91593
+ if (options.spatialViewProps) {
91594
+ spatialView = await iModel.views.convertViewStatePropsToViewState(options.spatialViewProps);
91595
+ }
91596
+ if (spatialView instanceof _ViewState__WEBPACK_IMPORTED_MODULE_14__["ViewState3d"])
91597
+ this._spatialView = spatialView;
91598
+ }
91573
91599
  createAttachment(toSheet) {
91574
91600
  if (!this.wantDisplayed || !(this._spatialView instanceof _ViewState__WEBPACK_IMPORTED_MODULE_14__["ViewState3d"]))
91575
91601
  return undefined;
@@ -91787,10 +91813,17 @@ class DrawingViewState extends _ViewState__WEBPACK_IMPORTED_MODULE_14__["ViewSta
91787
91813
  return { spatialView, displaySpatialView, drawingToSpatialTransform };
91788
91814
  }
91789
91815
  /** @internal */
91790
- async load() {
91816
+ preload(hydrateRequest) {
91791
91817
  Object(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["assert"])(!this.isAttachedToViewport);
91792
- await super.load();
91793
- await this._attachmentInfo.load(this.iModel);
91818
+ super.preload(hydrateRequest);
91819
+ this._attachmentInfo.preload(hydrateRequest);
91820
+ }
91821
+ /** @internal */
91822
+ async postload(hydrateResponse) {
91823
+ const promises = [];
91824
+ promises.push(super.postload(hydrateResponse));
91825
+ promises.push(this._attachmentInfo.postload(hydrateResponse, this.iModel));
91826
+ await Promise.all(promises);
91794
91827
  }
91795
91828
  static createFromProps(props, iModel) {
91796
91829
  const cat = new _CategorySelectorState__WEBPACK_IMPORTED_MODULE_3__["CategorySelectorState"](props.categorySelectorProps, iModel);
@@ -95625,8 +95658,14 @@ class IModelConnection extends _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["
95625
95658
  }
95626
95659
  return undefined;
95627
95660
  }
95628
- /** Request element mass properties from the backend. */
95661
+ /** Request element mass properties from the backend.
95662
+ * @note For better performance use [[getMassPropertiesPerCandidate]] when called from a loop with identical operations and a single candidate per iteration.
95663
+ */
95629
95664
  async getMassProperties(requestProps) { return _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["IModelReadRpcInterface"].getClientForRouting(this.routingContext.token).getMassProperties(this.getRpcProps(), requestProps); }
95665
+ /** Request mass properties for multiple elements from the backend. */
95666
+ async getMassPropertiesPerCandidate(requestProps) {
95667
+ return _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["IModelReadRpcInterface"].getClientForRouting(this.routingContext.token).getMassPropertiesPerCandidate(this.getRpcProps(), requestProps);
95668
+ }
95630
95669
  /** Convert a point in this iModel's Spatial coordinates to a [[Cartographic]] using the Geographic location services for this IModelConnection.
95631
95670
  * @param spatial A point in the iModel's spatial coordinates
95632
95671
  * @param result If defined, use this for output
@@ -95915,7 +95954,16 @@ class SnapshotConnection extends IModelConnection {
95915
95954
  return; // all requested models are already loaded
95916
95955
  try {
95917
95956
  const propArray = await this.getProps(notLoaded);
95918
- for (const props of propArray) {
95957
+ await this.updateLoadedWithModelProps(propArray);
95958
+ }
95959
+ catch (err) {
95960
+ // ignore error, we had nothing to do.
95961
+ }
95962
+ }
95963
+ /** Given an array of modelProps, find the class for each model and construct it. save it in the iModelConnection's loaded set. */
95964
+ async updateLoadedWithModelProps(modelProps) {
95965
+ try {
95966
+ for (const props of modelProps) {
95919
95967
  const ctor = await this._iModel.findClassFor(props.classFullName, _ModelState__WEBPACK_IMPORTED_MODULE_7__["ModelState"]);
95920
95968
  if (undefined === this.getLoaded(props.id)) { // do not overwrite if someone else loads it while we await
95921
95969
  const modelState = new ctor(props, this._iModel); // create a new instance of the appropriate ModelState subclass
@@ -96194,6 +96242,11 @@ class SnapshotConnection extends IModelConnection {
96194
96242
  },
96195
96243
  };
96196
96244
  const viewProps = await _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["IModelReadRpcInterface"].getClientForRouting(this._iModel.routingContext.token).getViewStateData(this._iModel.getRpcProps(), viewDefinitionId, options);
96245
+ const viewState = await this.convertViewStatePropsToViewState(viewProps);
96246
+ return viewState;
96247
+ }
96248
+ /** Return the [[ViewState]] object associated with the [[ViewStateProps]] passed in. */
96249
+ async convertViewStatePropsToViewState(viewProps) {
96197
96250
  const className = viewProps.viewDefinitionProps.classFullName;
96198
96251
  const ctor = await this._iModel.findClassFor(className, undefined);
96199
96252
  if (undefined === ctor)
@@ -100104,6 +100157,52 @@ class ViewAttachmentsInfo {
100104
100157
  // No reason to clone the array.
100105
100158
  return new ViewAttachmentsInfo(this._attachments);
100106
100159
  }
100160
+ preload(options) {
100161
+ if (this.isLoaded)
100162
+ return;
100163
+ options.sheetViewAttachmentIds = _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["CompressedId64Set"].sortAndCompress(this._ids);
100164
+ options.viewStateLoadProps = {
100165
+ displayStyle: {
100166
+ omitScheduleScriptElementIds: true,
100167
+ compressExcludedElementIds: true,
100168
+ },
100169
+ };
100170
+ }
100171
+ async postload(options, iModel) {
100172
+ if (options.sheetViewViews === undefined)
100173
+ return;
100174
+ if (options.sheetViewAttachmentProps === undefined)
100175
+ return;
100176
+ const viewStateProps = options.sheetViewViews; // This is viewstateProps, need to turn this into ViewState
100177
+ const promises = [];
100178
+ for (const viewProps of viewStateProps) {
100179
+ const loadView = async () => {
100180
+ try {
100181
+ if (viewProps === undefined)
100182
+ return undefined;
100183
+ const view = await iModel.views.convertViewStatePropsToViewState(viewProps);
100184
+ return view;
100185
+ }
100186
+ catch {
100187
+ return undefined;
100188
+ }
100189
+ };
100190
+ promises.push(loadView());
100191
+ }
100192
+ const views = await Promise.all(promises);
100193
+ const attachmentProps = options.sheetViewAttachmentProps;
100194
+ Object(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["assert"])(views.length === attachmentProps.length);
100195
+ const attachments = [];
100196
+ for (let i = 0; i < views.length; i++) {
100197
+ const view = views[i];
100198
+ if (view && !(view instanceof SheetViewState)) {
100199
+ const props = attachmentProps[i];
100200
+ props.attachedView = view;
100201
+ attachments.push(props);
100202
+ }
100203
+ }
100204
+ this._attachments = attachments;
100205
+ }
100107
100206
  async load(iModel) {
100108
100207
  if (this.isLoaded)
100109
100208
  return;
@@ -100280,12 +100379,17 @@ class SheetViewState extends _ViewState__WEBPACK_IMPORTED_MODULE_14__["ViewState
100280
100379
  getViewedExtents() {
100281
100380
  return this._viewedExtents;
100282
100381
  }
100283
- /** Load the size and attachment for this sheet, as well as any other 2d view state characteristics.
100284
- * @internal override
100285
- */
100286
- async load() {
100287
- await super.load();
100288
- await this._attachmentsInfo.load(this.iModel);
100382
+ /** @internal */
100383
+ preload(hydrateRequest) {
100384
+ super.preload(hydrateRequest);
100385
+ this._attachmentsInfo.preload(hydrateRequest);
100386
+ }
100387
+ /** @internal */
100388
+ async postload(hydrateResponse) {
100389
+ const promises = [];
100390
+ promises.push(super.postload(hydrateResponse));
100391
+ promises.push(this._attachmentsInfo.postload(hydrateResponse, this.iModel));
100392
+ await Promise.all(promises);
100289
100393
  }
100290
100394
  /** @internal */
100291
100395
  createScene(context) {
@@ -100910,9 +101014,21 @@ class SpatialViewState extends _ViewState__WEBPACK_IMPORTED_MODULE_6__["ViewStat
100910
101014
  val.modelSelectorId = this.modelSelector.id;
100911
101015
  return val;
100912
101016
  }
100913
- async load() {
100914
- await super.load();
100915
- return this.modelSelector.load();
101017
+ /** @internal */
101018
+ preload(hydrateRequest) {
101019
+ super.preload(hydrateRequest);
101020
+ const notLoaded = this.iModel.models.filterLoaded(this.modelSelector.models);
101021
+ if (undefined === notLoaded)
101022
+ return; // all requested models are already loaded
101023
+ hydrateRequest.notLoadedModelSelectorStateModels = _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["CompressedId64Set"].sortAndCompress(notLoaded);
101024
+ }
101025
+ /** @internal */
101026
+ async postload(hydrateResponse) {
101027
+ const promises = [];
101028
+ promises.push(super.postload(hydrateResponse));
101029
+ if (hydrateResponse.modelSelectorStateModels !== undefined)
101030
+ promises.push(this.iModel.models.updateLoadedWithModelProps(hydrateResponse.modelSelectorStateModels));
101031
+ await Promise.all(promises);
100916
101032
  }
100917
101033
  viewsModel(modelId) { return this.modelSelector.containsModel(modelId); }
100918
101034
  clearViewedModels() { this.modelSelector.models.clear(); }
@@ -101263,14 +101379,7 @@ class SubCategoriesCache {
101263
101379
  * containing the corresponding promise and the set of categories still to be loaded.
101264
101380
  */
101265
101381
  load(categoryIds) {
101266
- let missing;
101267
- for (const catId of _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["Id64"].iterable(categoryIds)) {
101268
- if (undefined === this._byCategoryId.get(catId)) {
101269
- if (undefined === missing)
101270
- missing = new Set();
101271
- missing.add(catId);
101272
- }
101273
- }
101382
+ const missing = this.getMissing(categoryIds);
101274
101383
  if (undefined === missing)
101275
101384
  return undefined;
101276
101385
  const request = new SubCategoriesCache.Request(missing, this._imodel);
@@ -101285,6 +101394,41 @@ class SubCategoriesCache {
101285
101394
  cancel: () => request.cancel(),
101286
101395
  };
101287
101396
  }
101397
+ /**
101398
+ * Populates the notLoadedCategoryIds property of the HydrateViewStateRequestProps.
101399
+ * notLoadedCategoryIds is a subset of categoryIds, filtering out any ids which already have an entry in the cache.
101400
+ */
101401
+ preload(options, categoryIds) {
101402
+ const missing = this.getMissing(categoryIds);
101403
+ if (undefined === missing)
101404
+ return;
101405
+ this._missingAtTimeOfPreload = missing;
101406
+ options.notLoadedCategoryIds = _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["CompressedId64Set"].sortAndCompress(missing);
101407
+ }
101408
+ /**
101409
+ * Populates the SubCategoriesCache using the categoryIdsResult of the HydrateViewStateResponseProps
101410
+ */
101411
+ postload(options) {
101412
+ if (options.categoryIdsResult === undefined)
101413
+ return;
101414
+ // missingAtTimeOfPreload shouldn't be undefined if options.categoryIdsResult is defined... but just to be safe we'll check
101415
+ const missing = this._missingAtTimeOfPreload === undefined ? new Set() : this._missingAtTimeOfPreload;
101416
+ this.processResults(options.categoryIdsResult, missing);
101417
+ // clear missing
101418
+ this._missingAtTimeOfPreload = undefined;
101419
+ }
101420
+ /** Given categoryIds, return which of these are not cached. */
101421
+ getMissing(categoryIds) {
101422
+ let missing;
101423
+ for (const catId of _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["Id64"].iterable(categoryIds)) {
101424
+ if (undefined === this._byCategoryId.get(catId)) {
101425
+ if (undefined === missing)
101426
+ missing = new Set();
101427
+ missing.add(catId);
101428
+ }
101429
+ }
101430
+ return missing;
101431
+ }
101288
101432
  clear() {
101289
101433
  this._byCategoryId.clear();
101290
101434
  this._appearances.clear();
@@ -102767,13 +102911,22 @@ ViewCreator2d._sheetModelClasses = [_ModelState__WEBPACK_IMPORTED_MODULE_4__["Sh
102767
102911
  "use strict";
102768
102912
  __webpack_require__.r(__webpack_exports__);
102769
102913
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ViewCreator3d", function() { return ViewCreator3d; });
102770
- /* harmony import */ var _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
102771
- /* harmony import */ var _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @itwin/core-geometry */ "../../core/geometry/lib/esm/core-geometry.js");
102772
- /* harmony import */ var _SpatialViewState__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SpatialViewState */ "../../core/frontend/lib/esm/SpatialViewState.js");
102914
+ /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
102915
+ /* harmony import */ var _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
102916
+ /* harmony import */ var _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @itwin/core-geometry */ "../../core/geometry/lib/esm/core-geometry.js");
102917
+ /* harmony import */ var _SpatialViewState__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./SpatialViewState */ "../../core/frontend/lib/esm/SpatialViewState.js");
102773
102918
  /*---------------------------------------------------------------------------------------------
102774
102919
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
102775
102920
  * See LICENSE.md in the project root for license terms and full copyright notice.
102776
102921
  *--------------------------------------------------------------------------------------------*/
102922
+ /** @packageDocumentation
102923
+ * @module Views
102924
+ */
102925
+ /*
102926
+ API for creating a 3D default view for an iModel.
102927
+ Either takes in a list of modelIds, or displays all 3D models by default.
102928
+ */
102929
+
102777
102930
 
102778
102931
 
102779
102932
 
@@ -102799,7 +102952,7 @@ class ViewCreator3d {
102799
102952
  */
102800
102953
  this._executeQuery = async (query) => {
102801
102954
  const rows = [];
102802
- for await (const row of this._imodel.query(query, undefined, { rowFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__["QueryRowFormat"].UseJsPropertyNames }))
102955
+ for await (const row of this._imodel.query(query, undefined, { rowFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["QueryRowFormat"].UseJsPropertyNames }))
102803
102956
  rows.push(row.id);
102804
102957
  return rows;
102805
102958
  };
@@ -102811,9 +102964,9 @@ class ViewCreator3d {
102811
102964
  * @throws [IModelError]($common) If no 3d models are found in the iModel.
102812
102965
  */
102813
102966
  async createDefaultView(options, modelIds) {
102814
- const models = modelIds !== null && modelIds !== void 0 ? modelIds : await this._getAllModels();
102815
- const props = await this._createViewStateProps(models, options);
102816
- const viewState = _SpatialViewState__WEBPACK_IMPORTED_MODULE_2__["SpatialViewState"].createFromProps(props, this._imodel);
102967
+ const serializedProps = await _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["IModelReadRpcInterface"].getClientForRouting(this._imodel.routingContext.token).getCustomViewState3dData(this._imodel.getRpcProps(), modelIds === undefined ? {} : { modelIds: _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["CompressedId64Set"].sortAndCompress(modelIds) });
102968
+ const props = await this._createViewStateProps(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["CompressedId64Set"].decompressArray(serializedProps.modelIds), _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["CompressedId64Set"].decompressArray(serializedProps.categoryIds), _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_2__["Range3d"].fromJSON(serializedProps.modelExtents), options);
102969
+ const viewState = _SpatialViewState__WEBPACK_IMPORTED_MODULE_3__["SpatialViewState"].createFromProps(props, this._imodel);
102817
102970
  try {
102818
102971
  await viewState.load();
102819
102972
  }
@@ -102830,17 +102983,9 @@ class ViewCreator3d {
102830
102983
  * @param models Models to put in view props
102831
102984
  * @param options view creation options like camera On and skybox On
102832
102985
  */
102833
- async _createViewStateProps(models, options) {
102986
+ async _createViewStateProps(models, categories, modelExtents, options) {
102834
102987
  // Use dictionary model in all props
102835
- const dictionaryId = _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__["IModel"].dictionaryId;
102836
- const categories = await this._getAllCategories();
102837
- // model extents
102838
- const modelExtents = new _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Range3d"]();
102839
- if (models.length > 0) {
102840
- const modelProps = await this._imodel.models.queryModelRanges(models);
102841
- for (const props of modelProps)
102842
- modelExtents.union(_itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Range3d"].fromJSON(props), modelExtents);
102843
- }
102988
+ const dictionaryId = _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["IModel"].dictionaryId;
102844
102989
  if (modelExtents.isNull)
102845
102990
  modelExtents.setFrom(this._imodel.projectExtents);
102846
102991
  let originX = modelExtents.low.x;
@@ -102865,22 +103010,22 @@ class ViewCreator3d {
102865
103010
  }
102866
103011
  const categorySelectorProps = {
102867
103012
  categories,
102868
- code: _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__["Code"].createEmpty(),
103013
+ code: _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["Code"].createEmpty(),
102869
103014
  model: dictionaryId,
102870
103015
  classFullName: "BisCore:CategorySelector",
102871
103016
  };
102872
103017
  const modelSelectorProps = {
102873
103018
  models,
102874
- code: _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__["Code"].createEmpty(),
103019
+ code: _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["Code"].createEmpty(),
102875
103020
  model: dictionaryId,
102876
103021
  classFullName: "BisCore:ModelSelector",
102877
103022
  };
102878
- const cameraData = new _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__["Camera"]();
103023
+ const cameraData = new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["Camera"]();
102879
103024
  const cameraOn = (options === null || options === void 0 ? void 0 : options.cameraOn) !== false;
102880
103025
  const viewDefinitionProps = {
102881
103026
  categorySelectorId: "",
102882
103027
  displayStyleId: "",
102883
- code: _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__["Code"].createEmpty(),
103028
+ code: _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["Code"].createEmpty(),
102884
103029
  model: dictionaryId,
102885
103030
  origin: { x: originX, y: originY, z: originZ },
102886
103031
  extents: { x: deltaX, y: deltaY, z: deltaZ },
@@ -102893,13 +103038,13 @@ class ViewCreator3d {
102893
103038
  },
102894
103039
  };
102895
103040
  const displayStyleProps = {
102896
- code: _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__["Code"].createEmpty(),
103041
+ code: _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["Code"].createEmpty(),
102897
103042
  model: dictionaryId,
102898
103043
  classFullName: "BisCore:DisplayStyle3d",
102899
103044
  jsonProperties: {
102900
103045
  styles: {
102901
103046
  viewflags: {
102902
- renderMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__["RenderMode"].SmoothShade,
103047
+ renderMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["RenderMode"].SmoothShade,
102903
103048
  noSourceLights: false,
102904
103049
  noCameraLights: false,
102905
103050
  noSolarLight: false,
@@ -102911,7 +103056,7 @@ class ViewCreator3d {
102911
103056
  environment: options !== undefined &&
102912
103057
  options.skyboxOn !== undefined &&
102913
103058
  options.skyboxOn
102914
- ? _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__["Environment"].defaults.withDisplay({ sky: true }).toJSON()
103059
+ ? _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["Environment"].defaults.withDisplay({ sky: true }).toJSON()
102915
103060
  : undefined,
102916
103061
  },
102917
103062
  },
@@ -102956,10 +103101,10 @@ class ViewCreator3d {
102956
103101
  async _getDefaultViewId() {
102957
103102
  const viewId = await this._imodel.views.queryDefaultViewId();
102958
103103
  const params = {};
102959
- params.from = _SpatialViewState__WEBPACK_IMPORTED_MODULE_2__["SpatialViewState"].classFullName;
103104
+ params.from = _SpatialViewState__WEBPACK_IMPORTED_MODULE_3__["SpatialViewState"].classFullName;
102960
103105
  params.where = `ECInstanceId=${viewId}`;
102961
103106
  // Check validity of default view
102962
- const viewProps = await _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__["IModelReadRpcInterface"].getClient().queryElementProps(this._imodel.getRpcProps(), params);
103107
+ const viewProps = await _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["IModelReadRpcInterface"].getClient().queryElementProps(this._imodel.getRpcProps(), params);
102963
103108
  if (viewProps.length === 0) {
102964
103109
  // Return the first view we can find
102965
103110
  const viewList = await this._imodel.views.getViewList({ wantPrivate: false });
@@ -102972,33 +103117,6 @@ class ViewCreator3d {
102972
103117
  }
102973
103118
  return viewId;
102974
103119
  }
102975
- /**
102976
- * Get all categories containing elements
102977
- */
102978
- async _getAllCategories() {
102979
- // Only use categories with elements in them
102980
- const query = `SELECT DISTINCT Category.Id AS id FROM BisCore.GeometricElement3d WHERE Category.Id IN (SELECT ECInstanceId FROM BisCore.SpatialCategory)`;
102981
- const categories = await this._executeQuery(query);
102982
- return categories;
102983
- }
102984
- /**
102985
- * Get all PhysicalModel ids in the connection
102986
- */
102987
- async _getAllModels() {
102988
- // Note: IsNotSpatiallyLocated was introduced in a later version of the BisCore ECSchema.
102989
- // If the iModel has an earlier version, the statement will throw because the property does not exist.
102990
- // If the iModel was created from an earlier version and later upgraded to a newer version, the property may be NULL for models created prior to the upgrade.
102991
- const select = "SELECT ECInstanceId FROM Bis.GeometricModel3D WHERE IsPrivate = false AND IsTemplate = false";
102992
- const spatialCriterion = "AND (IsNotSpatiallyLocated IS NULL OR IsNotSpatiallyLocated = false)";
102993
- let models = [];
102994
- try {
102995
- models = await this._executeQuery(`${select} ${spatialCriterion}`);
102996
- }
102997
- catch {
102998
- models = await this._executeQuery(select);
102999
- }
103000
- return models;
103001
- }
103002
103120
  }
103003
103121
 
103004
103122
 
@@ -104100,19 +104218,37 @@ class ViewState extends _EntityState__WEBPACK_IMPORTED_MODULE_5__["ElementState"
104100
104218
  catch { }
104101
104219
  }
104102
104220
  }
104221
+ /**
104222
+ * Populates the hydrateRequest object stored on the ViewState with:
104223
+ * not loaded categoryIds based off of the ViewStates categorySelector.
104224
+ * Auxiliary coordinate system id if valid.
104225
+ */
104226
+ preload(hydrateRequest) {
104227
+ const acsId = this.getAuxiliaryCoordinateSystemId();
104228
+ if (_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["Id64"].isValid(acsId))
104229
+ hydrateRequest.acsId = acsId;
104230
+ this.iModel.subcategories.preload(hydrateRequest, this.categorySelector.categories);
104231
+ }
104103
104232
  /** Asynchronously load any required data for this ViewState from the backend.
104233
+ * FINAL, No subclass should override load. If additional load behavior is needed, see preload and postload.
104104
104234
  * @note callers should await the Promise returned by this method before using this ViewState.
104105
104235
  * @see [Views]($docs/learning/frontend/Views.md)
104106
104236
  */
104107
104237
  async load() {
104238
+ const hydrateRequest = {};
104239
+ this.preload(hydrateRequest);
104108
104240
  const promises = [
104109
- this.loadAcs(),
104241
+ _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__["IModelReadRpcInterface"].getClientForRouting(this.iModel.routingContext.token).hydrateViewState(this.iModel.getRpcProps(), hydrateRequest),
104110
104242
  this.displayStyle.load(),
104111
104243
  ];
104112
- const subcategories = this.iModel.subcategories.load(this.categorySelector.categories);
104113
- if (undefined !== subcategories)
104114
- promises.push(subcategories.promise.then((_) => { }));
104115
- await Promise.all(promises);
104244
+ const result = await Promise.all(promises);
104245
+ const hydrateResponse = result[0];
104246
+ await this.postload(hydrateResponse);
104247
+ }
104248
+ async postload(hydrateResponse) {
104249
+ this.iModel.subcategories.postload(hydrateResponse);
104250
+ if (hydrateResponse.acsElementProps)
104251
+ this._auxCoordSystem = _AuxCoordSys__WEBPACK_IMPORTED_MODULE_3__["AuxCoordSystemState"].fromProps(hydrateResponse.acsElementProps, this.iModel);
104116
104252
  }
104117
104253
  /** Returns true if all [[TileTree]]s required by this view have been loaded.
104118
104254
  * Note that the map tile trees associated to the viewport rather than the view, to check the
@@ -105642,9 +105778,19 @@ class ViewState2d extends ViewState {
105642
105778
  computeFitRange() {
105643
105779
  return this.getViewedExtents();
105644
105780
  }
105645
- async load() {
105646
- await super.load();
105647
- return this.iModel.models.load(this.baseModelId);
105781
+ /** @internal */
105782
+ preload(hydrateRequest) {
105783
+ super.preload(hydrateRequest);
105784
+ if (this.iModel.models.getLoaded(this.baseModelId) === undefined)
105785
+ hydrateRequest.baseModelId = this.baseModelId;
105786
+ }
105787
+ /** @internal */
105788
+ async postload(hydrateResponse) {
105789
+ const promises = [];
105790
+ promises.push(super.postload(hydrateResponse));
105791
+ if (hydrateResponse.baseModelProps !== undefined)
105792
+ promises.push(this.iModel.models.updateLoadedWithModelProps([hydrateResponse.baseModelProps]));
105793
+ await Promise.all(promises);
105648
105794
  }
105649
105795
  /** Provides access to optional detail settings for this view. */
105650
105796
  get details() {
@@ -176682,7 +176828,6 @@ class DefaultViewTouchTool extends ViewManip {
176682
176828
  this._startDistance = 0.0;
176683
176829
  this._startTouchCount = 0;
176684
176830
  this._singleTouch = false;
176685
- this._hasZoom = false;
176686
176831
  this._rotate2dDisabled = false;
176687
176832
  this._only2dManipulations = false;
176688
176833
  this._only2dManipulations = only2dManipulations;
@@ -176729,7 +176874,6 @@ class DefaultViewTouchTool extends ViewManip {
176729
176874
  this._startDistance = (2 === ev.touchCount ? this._startDirection.magnitude() : 0.0);
176730
176875
  }
176731
176876
  computeZoomRatio(ev) {
176732
- this._hasZoom = false;
176733
176877
  if (undefined === ev || 0.0 === this._startDistance)
176734
176878
  return 1.0;
176735
176879
  const vp = this.viewport;
@@ -176737,7 +176881,8 @@ class DefaultViewTouchTool extends ViewManip {
176737
176881
  const threshold = this.viewport.pixelsFromInches(_ToolSettings__WEBPACK_IMPORTED_MODULE_22__["ToolSettings"].touchZoomChangeThresholdInches);
176738
176882
  if (0.0 === distance || Math.abs(this._startDistance - distance) < threshold)
176739
176883
  return 1.0;
176740
- this._hasZoom = true;
176884
+ // Remove inertia if the viewing operation includes zoom, only use it for pan and rotate.
176885
+ this._inertiaVec = undefined;
176741
176886
  const adjustedDist = (distance > this._startDistance ? (distance - threshold) : (distance + threshold)); // Avoid sudden jump in zoom scale by subtracting zoom threshold distance...
176742
176887
  return _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Geometry"].clamp(this._startDistance / adjustedDist, .1, 10);
176743
176888
  }
@@ -176849,8 +176994,7 @@ class DefaultViewTouchTool extends ViewManip {
176849
176994
  this._lastPtView.setFrom(this._startPtView);
176850
176995
  }
176851
176996
  else {
176852
- // Don't add inertia if the viewing operation included zoom, only do this for pan and rotate.
176853
- if (!samePoint && !this._hasZoom) {
176997
+ if (!samePoint) {
176854
176998
  this._inertiaVec = this._lastPtView.vectorTo(thisPt);
176855
176999
  this._inertiaVec.z = 0;
176856
177000
  }
@@ -176870,6 +177014,10 @@ class DefaultViewTouchTool extends ViewManip {
176870
177014
  }
176871
177015
  async onDataButtonDown(_ev) { return _Tool__WEBPACK_IMPORTED_MODULE_20__["EventHandled"].Yes; }
176872
177016
  async onDataButtonUp(_ev) { return _Tool__WEBPACK_IMPORTED_MODULE_20__["EventHandled"].Yes; }
177017
+ async onTouchStart(ev) {
177018
+ if (undefined !== this.viewport)
177019
+ this.onStart(ev);
177020
+ }
176873
177021
  async onTouchMove(ev) {
176874
177022
  this.handleEvent(ev);
176875
177023
  }
@@ -177363,7 +177511,7 @@ SetupWalkCameraTool.iconSpec = "icon-camera-location";
177363
177511
  /*! exports provided: name, version, description, main, module, typings, license, scripts, repository, keywords, author, peerDependencies, //devDependencies, devDependencies, //dependencies, dependencies, nyc, eslintConfig, default */
177364
177512
  /***/ (function(module) {
177365
177513
 
177366
- module.exports = JSON.parse("{\"name\":\"@itwin/core-frontend\",\"version\":\"3.2.0-dev.40\",\"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\":\"tsc 1>&2 --outDir lib/cjs\",\"build:esm\":\"tsc 1>&2 --module ES2020 --outDir lib/esm\",\"clean\":\"rimraf lib .rush/temp/package-deps*.json\",\"copy:public\":\"cpx \\\"./src/public/**/*\\\" ./lib/public\",\"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.2.0-dev.40\",\"@itwin/core-bentley\":\"workspace:^3.2.0-dev.40\",\"@itwin/core-common\":\"workspace:^3.2.0-dev.40\",\"@itwin/core-geometry\":\"workspace:^3.2.0-dev.40\",\"@itwin/core-orbitgt\":\"workspace:^3.2.0-dev.40\",\"@itwin/core-quantity\":\"workspace:^3.2.0-dev.40\",\"@itwin/webgl-compatibility\":\"workspace:^3.2.0-dev.40\"},\"//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.1.4\",\"@types/chai-as-promised\":\"^7\",\"@types/deep-assign\":\"^0.1.0\",\"@types/lodash\":\"^4.14.0\",\"@types/mocha\":\"^8.2.2\",\"@types/node\":\"14.14.31\",\"@types/qs\":\"^6.5.0\",\"@types/semver\":\"^5.5.0\",\"@types/superagent\":\"^4.1.14\",\"@types/sinon\":\"^9.0.0\",\"chai\":\"^4.1.2\",\"chai-as-promised\":\"^7\",\"cpx2\":\"^3.0.0\",\"eslint\":\"^7.11.0\",\"glob\":\"^7.1.2\",\"mocha\":\"^8.3.2\",\"nyc\":\"^15.1.0\",\"rimraf\":\"^3.0.2\",\"sinon\":\"^9.0.2\",\"source-map-loader\":\"^1.0.0\",\"typescript\":\"~4.4.0\",\"webpack\":\"4.42.0\"},\"//dependencies\":[\"NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API\",\"NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed\"],\"dependencies\":{\"@itwin/core-i18n\":\"workspace:*\",\"@itwin/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.1\",\"semver\":\"^5.5.0\",\"superagent\":\"^7.0.1\",\"wms-capabilities\":\"0.4.0\",\"xml-js\":\"~1.6.11\"},\"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\",\"**/test/**/*.tsx\"],\"rules\":{\"@itwin/no-internal-barrel-imports\":\"off\"}}]}}");
177514
+ module.exports = JSON.parse("{\"name\":\"@itwin/core-frontend\",\"version\":\"3.2.0-dev.43\",\"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\":\"tsc 1>&2 --outDir lib/cjs\",\"build:esm\":\"tsc 1>&2 --module ES2020 --outDir lib/esm\",\"clean\":\"rimraf lib .rush/temp/package-deps*.json\",\"copy:public\":\"cpx \\\"./src/public/**/*\\\" ./lib/public\",\"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.2.0-dev.43\",\"@itwin/core-bentley\":\"workspace:^3.2.0-dev.43\",\"@itwin/core-common\":\"workspace:^3.2.0-dev.43\",\"@itwin/core-geometry\":\"workspace:^3.2.0-dev.43\",\"@itwin/core-orbitgt\":\"workspace:^3.2.0-dev.43\",\"@itwin/core-quantity\":\"workspace:^3.2.0-dev.43\",\"@itwin/webgl-compatibility\":\"workspace:^3.2.0-dev.43\"},\"//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.1.4\",\"@types/chai-as-promised\":\"^7\",\"@types/deep-assign\":\"^0.1.0\",\"@types/lodash\":\"^4.14.0\",\"@types/mocha\":\"^8.2.2\",\"@types/node\":\"14.14.31\",\"@types/qs\":\"^6.5.0\",\"@types/semver\":\"^5.5.0\",\"@types/superagent\":\"^4.1.14\",\"@types/sinon\":\"^9.0.0\",\"chai\":\"^4.1.2\",\"chai-as-promised\":\"^7\",\"cpx2\":\"^3.0.0\",\"eslint\":\"^7.11.0\",\"glob\":\"^7.1.2\",\"mocha\":\"^8.3.2\",\"nyc\":\"^15.1.0\",\"rimraf\":\"^3.0.2\",\"sinon\":\"^9.0.2\",\"source-map-loader\":\"^1.0.0\",\"typescript\":\"~4.4.0\",\"webpack\":\"4.42.0\"},\"//dependencies\":[\"NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API\",\"NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed\"],\"dependencies\":{\"@itwin/core-i18n\":\"workspace:*\",\"@itwin/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.1\",\"semver\":\"^5.5.0\",\"superagent\":\"^7.0.1\",\"wms-capabilities\":\"0.4.0\",\"xml-js\":\"~1.6.11\"},\"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\",\"**/test/**/*.tsx\"],\"rules\":{\"@itwin/no-internal-barrel-imports\":\"off\"}}]}}");
177367
177515
 
177368
177516
  /***/ }),
177369
177517
 
@@ -255670,7 +255818,7 @@ class XYParitySearchContext {
255670
255818
  "use strict";
255671
255819
  __webpack_require__.r(__webpack_exports__);
255672
255820
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ITwinLocalization", function() { return ITwinLocalization; });
255673
- /* harmony import */ var i18next__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! i18next */ "../../common/temp/node_modules/.pnpm/i18next@21.6.14/node_modules/i18next/dist/esm/i18next.js");
255821
+ /* harmony import */ var i18next__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! i18next */ "../../common/temp/node_modules/.pnpm/i18next@21.6.16/node_modules/i18next/dist/esm/i18next.js");
255674
255822
  /* harmony import */ var i18next_browser_languagedetector__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! i18next-browser-languagedetector */ "../../common/temp/node_modules/.pnpm/i18next-browser-languagedetector@6.1.4/node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js");
255675
255823
  /* harmony import */ var i18next_xhr_backend__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! i18next-xhr-backend */ "../../common/temp/node_modules/.pnpm/i18next-xhr-backend@3.2.2/node_modules/i18next-xhr-backend/dist/esm/i18nextXHRBackend.js");
255676
255824
  /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");