@itwin/rpcinterface-full-stack-tests 5.1.0-dev.15 → 5.1.0-dev.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"_bea9.bundled-tests.js","mappings":";;;;;;;;AAAA","sources":["file:///ignored|C:\\agent\\_work\\1\\s\\common\\temp\\node_modules\\.pnpm\\@loaders.gl+worker-utils@3.1.6\\node_modules\\@loaders.gl\\worker-utils\\dist\\esm\\lib\\library-utils|../node/require-utils.node"],"names":[],"sourceRoot":""}
1
+ {"version":3,"file":"_bea9.bundled-tests.js","mappings":";;;;;;;;AAAA","sources":["file:///ignored|C:\\agent\\_work\\2\\s\\common\\temp\\node_modules\\.pnpm\\@loaders.gl+worker-utils@3.1.6\\node_modules\\@loaders.gl\\worker-utils\\dist\\esm\\lib\\library-utils|../node/require-utils.node"],"names":[],"sourceRoot":""}
@@ -93313,7 +93313,7 @@ var XmlSerializationUtils;
93313
93313
  */
93314
93314
  async function writeStructProperty(propertyClass, propertyValue, structElement, schemaDoc) {
93315
93315
  const structClass = propertyClass.structClass;
93316
- for (const propertyMetadata of structClass.getPropertiesSync(true))
93316
+ for (const propertyMetadata of structClass.getPropertiesSync())
93317
93317
  await writeInstanceProperty(propertyMetadata, propertyValue, structElement, schemaDoc);
93318
93318
  }
93319
93319
  XmlSerializationUtils.writeStructProperty = writeStructProperty;
@@ -94533,7 +94533,7 @@ class ECClass extends _SchemaItem__WEBPACK_IMPORTED_MODULE_9__.SchemaItem {
94533
94533
  baseClassElement.textContent = baseClassName;
94534
94534
  itemElement.appendChild(baseClassElement);
94535
94535
  }
94536
- if (undefined !== this._properties) {
94536
+ if (this._properties) {
94537
94537
  for (const prop of this._properties.values()) {
94538
94538
  const propXml = await prop.toXml(schemaXml);
94539
94539
  itemElement.appendChild(propXml);
@@ -99560,6 +99560,7 @@ __webpack_require__.r(__webpack_exports__);
99560
99560
 
99561
99561
 
99562
99562
 
99563
+ const loggerCategory = "SchemaFormatsProvider";
99563
99564
  /**
99564
99565
  * Provides default formats and kind of quantities from a given SchemaContext or SchemaLocater.
99565
99566
  * @beta
@@ -99598,7 +99599,14 @@ class SchemaFormatsProvider {
99598
99599
  this.onFormatsChanged.raiseEvent({ formatsChanged });
99599
99600
  }
99600
99601
  async getKindOfQuantityFormatFromSchema(itemKey) {
99601
- const kindOfQuantity = await this._context.getSchemaItem(itemKey, _Metadata_KindOfQuantity__WEBPACK_IMPORTED_MODULE_5__.KindOfQuantity);
99602
+ let kindOfQuantity;
99603
+ try {
99604
+ kindOfQuantity = await this._context.getSchemaItem(itemKey, _Metadata_KindOfQuantity__WEBPACK_IMPORTED_MODULE_5__.KindOfQuantity);
99605
+ }
99606
+ catch {
99607
+ _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_4__.Logger.logError(loggerCategory, `Failed to find KindOfQuantity ${itemKey.fullName}`);
99608
+ return undefined;
99609
+ }
99602
99610
  if (!kindOfQuantity) {
99603
99611
  return undefined;
99604
99612
  }
@@ -99643,13 +99651,27 @@ class SchemaFormatsProvider {
99643
99651
  async getFormat(name) {
99644
99652
  const [schemaName, schemaItemName] = _Metadata_SchemaItem__WEBPACK_IMPORTED_MODULE_2__.SchemaItem.parseFullName(name);
99645
99653
  const schemaKey = new _SchemaKey__WEBPACK_IMPORTED_MODULE_1__.SchemaKey(schemaName);
99646
- const schema = await this._context.getSchema(schemaKey);
99654
+ let schema;
99655
+ try {
99656
+ schema = await this._context.getSchema(schemaKey);
99657
+ }
99658
+ catch {
99659
+ _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_4__.Logger.logError(loggerCategory, `Failed to find schema ${schemaName}`);
99660
+ return undefined;
99661
+ }
99647
99662
  if (!schema) {
99648
99663
  return undefined;
99649
99664
  }
99650
99665
  const itemKey = new _SchemaKey__WEBPACK_IMPORTED_MODULE_1__.SchemaItemKey(schemaItemName, schema.schemaKey);
99651
99666
  if (schema.name === "Formats") {
99652
- const format = await this._context.getSchemaItem(itemKey, _Metadata_Format__WEBPACK_IMPORTED_MODULE_3__.Format);
99667
+ let format;
99668
+ try {
99669
+ format = await this._context.getSchemaItem(itemKey, _Metadata_Format__WEBPACK_IMPORTED_MODULE_3__.Format);
99670
+ }
99671
+ catch {
99672
+ _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_4__.Logger.logError(loggerCategory, `Failed to find Format ${itemKey.fullName}`);
99673
+ return undefined;
99674
+ }
99653
99675
  if (!format) {
99654
99676
  return undefined;
99655
99677
  }
@@ -113525,6 +113547,7 @@ class IModelApp {
113525
113547
  this._entityClasses.clear();
113526
113548
  this.authorizationClient = undefined;
113527
113549
  this._initialized = false;
113550
+ this.quantityFormatter[Symbol.dispose]();
113528
113551
  this.resetFormatsProvider();
113529
113552
  this.onAfterStartup.clear();
113530
113553
  }
@@ -126027,6 +126050,10 @@ class Viewport {
126027
126050
  changeBackgroundMapProvider(props) {
126028
126051
  this.displayStyle.changeBackgroundMapProvider(props);
126029
126052
  }
126053
+ /** A reference to the [[TileTree]] used to display the background map in this viewport, if the background map is being displayed. */
126054
+ get backgroundMapTileTreeReference() {
126055
+ return this.backgroundMap;
126056
+ }
126030
126057
  /** @internal */
126031
126058
  get backgroundMap() { return this._mapTiledGraphicsProvider?.backgroundMap; }
126032
126059
  /** @internal */
@@ -179732,11 +179759,19 @@ __webpack_require__.r(__webpack_exports__);
179732
179759
  * @beta
179733
179760
  */
179734
179761
  class AngleDescription extends _FormattedQuantityDescription__WEBPACK_IMPORTED_MODULE_2__.FormattedQuantityDescription {
179735
- constructor(name, displayLabel, iconSpec) {
179762
+ constructor(name, displayLabel, iconSpec, kindOfQuantityName) {
179736
179763
  const defaultName = "angle";
179737
- super(name ? name : defaultName, displayLabel ? displayLabel : _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:Properties.Angle"), iconSpec);
179764
+ super({
179765
+ name: name ? name : defaultName,
179766
+ displayLabel: displayLabel ? displayLabel : _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:Properties.Angle"),
179767
+ kindOfQuantityName: kindOfQuantityName ? kindOfQuantityName : "AecUnits.ANGLE",
179768
+ iconSpec
179769
+ });
179738
179770
  }
179739
179771
  get formatterQuantityType() { return _quantity_formatting_QuantityFormatter__WEBPACK_IMPORTED_MODULE_1__.QuantityType.Angle; }
179772
+ /**
179773
+ * @deprecated in 5.0. Use the `kindOfQuantityName` property instead.
179774
+ */
179740
179775
  get quantityType() { return "Angle"; }
179741
179776
  get parseError() { return _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:Properties.UnableToParseAngle"); }
179742
179777
  }
@@ -179775,8 +179810,14 @@ __webpack_require__.r(__webpack_exports__);
179775
179810
  class FormattedQuantityDescription extends _itwin_appui_abstract__WEBPACK_IMPORTED_MODULE_1__.BaseQuantityDescription {
179776
179811
  _formatterSpec;
179777
179812
  _parserSpec;
179778
- constructor(name, displayLabel, iconSpec) {
179779
- super(name, displayLabel, iconSpec);
179813
+ constructor(argsOrName, displayLabel, iconSpec, kindOfQuantityName) {
179814
+ if (typeof argsOrName === "string") {
179815
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
179816
+ super(argsOrName, displayLabel, iconSpec, kindOfQuantityName);
179817
+ }
179818
+ else {
179819
+ super(argsOrName.name, argsOrName.displayLabel, argsOrName.iconSpec, argsOrName.kindOfQuantityName);
179820
+ }
179780
179821
  }
179781
179822
  formatValue(numberValue) {
179782
179823
  if (this.formatterSpec) {
@@ -179852,11 +179893,19 @@ __webpack_require__.r(__webpack_exports__);
179852
179893
  * @beta
179853
179894
  */
179854
179895
  class LengthDescription extends _FormattedQuantityDescription__WEBPACK_IMPORTED_MODULE_2__.FormattedQuantityDescription {
179855
- constructor(name, displayLabel, iconSpec) {
179896
+ constructor(name, displayLabel, iconSpec, kindOfQuantityName) {
179856
179897
  const defaultName = "length";
179857
- super(name ? name : defaultName, displayLabel ? displayLabel : _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:Properties.Length"), iconSpec);
179898
+ super({
179899
+ name: name ? name : defaultName,
179900
+ displayLabel: displayLabel ? displayLabel : _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:Properties.Length"),
179901
+ kindOfQuantityName: kindOfQuantityName ? kindOfQuantityName : "AecUnits.LENGTH",
179902
+ iconSpec,
179903
+ });
179858
179904
  }
179859
179905
  get formatterQuantityType() { return _quantity_formatting_QuantityFormatter__WEBPACK_IMPORTED_MODULE_1__.QuantityType.Length; }
179906
+ /**
179907
+ * @deprecated in 5.0. Use the `kindOfQuantityName` property instead.
179908
+ */
179860
179909
  get quantityType() { return "Length"; }
179861
179910
  get parseError() { return _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:Properties.UnableToParseLength"); }
179862
179911
  }
@@ -179865,11 +179914,19 @@ class LengthDescription extends _FormattedQuantityDescription__WEBPACK_IMPORTED_
179865
179914
  * @beta
179866
179915
  */
179867
179916
  class SurveyLengthDescription extends _FormattedQuantityDescription__WEBPACK_IMPORTED_MODULE_2__.FormattedQuantityDescription {
179868
- constructor(name, displayLabel, iconSpec) {
179917
+ constructor(name, displayLabel, iconSpec, kindOfQuantityName) {
179869
179918
  const defaultName = "surveyLength";
179870
- super(name ? name : defaultName, displayLabel ? displayLabel : _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:Properties.Length"), iconSpec);
179919
+ super({
179920
+ name: name ? name : defaultName,
179921
+ displayLabel: displayLabel ? displayLabel : _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:Properties.Length"),
179922
+ kindOfQuantityName: kindOfQuantityName ? kindOfQuantityName : "AecUnits.LENGTH",
179923
+ iconSpec,
179924
+ });
179871
179925
  }
179872
179926
  get formatterQuantityType() { return _quantity_formatting_QuantityFormatter__WEBPACK_IMPORTED_MODULE_1__.QuantityType.LengthSurvey; }
179927
+ /**
179928
+ * @deprecated in 5.0. Use the `kindOfQuantityName` property instead.
179929
+ */
179873
179930
  get quantityType() { return "LengthSurvey"; }
179874
179931
  get parseError() { return _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:Properties.UnableToParseLength"); }
179875
179932
  }
@@ -179878,11 +179935,19 @@ class SurveyLengthDescription extends _FormattedQuantityDescription__WEBPACK_IMP
179878
179935
  * @beta
179879
179936
  */
179880
179937
  class EngineeringLengthDescription extends _FormattedQuantityDescription__WEBPACK_IMPORTED_MODULE_2__.FormattedQuantityDescription {
179881
- constructor(name, displayLabel, iconSpec) {
179938
+ constructor(name, displayLabel, iconSpec, kindOfQuantityName) {
179882
179939
  const defaultName = "engineeringLength";
179883
- super(name ? name : defaultName, displayLabel ? displayLabel : _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:Properties.Length"), iconSpec);
179940
+ super({
179941
+ name: name ? name : defaultName,
179942
+ displayLabel: displayLabel ? displayLabel : _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:Properties.Length"),
179943
+ kindOfQuantityName: kindOfQuantityName ? kindOfQuantityName : "AecUnits.LENGTH",
179944
+ iconSpec,
179945
+ });
179884
179946
  }
179885
179947
  get formatterQuantityType() { return _quantity_formatting_QuantityFormatter__WEBPACK_IMPORTED_MODULE_1__.QuantityType.LengthEngineering; }
179948
+ /**
179949
+ * @deprecated in 5.0. Use the `kindOfQuantityName` property instead.
179950
+ */
179886
179951
  get quantityType() { return "LengthEngineering"; }
179887
179952
  get parseError() { return _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.localization.getLocalizedString("iModelJs:Properties.UnableToParseLength"); }
179888
179953
  }
@@ -180516,6 +180581,10 @@ class QuantityFormatter {
180516
180581
  _alternateUnitLabelsRegistry = new AlternateUnitLabelsRegistry((0,_BasicUnitsProvider__WEBPACK_IMPORTED_MODULE_4__.getDefaultAlternateUnitLabels)());
180517
180582
  /** Registry containing available quantity type definitions. */
180518
180583
  _quantityTypeRegistry = new Map();
180584
+ /** Registry containing available FormatterSpec and ParserSpec, mapped by keys.
180585
+ * @beta
180586
+ */
180587
+ _formatSpecsRegistry = new Map();
180519
180588
  /** Active UnitSystem key - must be one of "imperial", "metric", "usCustomary", or "usSurvey". */
180520
180589
  _activeUnitSystem = "imperial";
180521
180590
  /** Map of FormatSpecs for all available QuantityTypes and the active Unit System */
@@ -180542,6 +180611,7 @@ class QuantityFormatter {
180542
180611
  onQuantityFormatsChanged = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeUiEvent();
180543
180612
  /** Fired when the active UnitsProvider is updated. This will allow cached Formatter and Parser specs to be updated if necessary. */
180544
180613
  onUnitsProviderChanged = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeUiEvent();
180614
+ _removeFormatsProviderListener;
180545
180615
  /**
180546
180616
  * constructor
180547
180617
  * @param showMetricOrUnitSystem - Pass in `true` to show Metric formatted quantity values. Defaults to Imperial. To explicitly
@@ -180555,6 +180625,12 @@ class QuantityFormatter {
180555
180625
  this._activeUnitSystem = showMetricOrUnitSystem;
180556
180626
  }
180557
180627
  }
180628
+ [Symbol.dispose]() {
180629
+ if (this._removeFormatsProviderListener) {
180630
+ this._removeFormatsProviderListener();
180631
+ this._removeFormatsProviderListener = undefined;
180632
+ }
180633
+ }
180558
180634
  getOverrideFormatPropsByQuantityType(quantityTypeKey, unitSystem) {
180559
180635
  const requestedUnitSystem = unitSystem ?? this.activeUnitSystem;
180560
180636
  const overrideMap = this._overrideFormatPropsByUnitSystem.get(requestedUnitSystem);
@@ -180680,6 +180756,46 @@ class QuantityFormatter {
180680
180756
  */
180681
180757
  async onInitialized() {
180682
180758
  await this.initializeQuantityTypesRegistry();
180759
+ const initialKoQs = [["AecUnits.LENGTH", "Units.M"], ["AecUnits.ANGLE", "Units.RAD"], ["AecUnits.AREA", "Units.SQ_M"], ["AecUnits.VOLUME", "Units.CUB_M"], ["RoadRailUnits.STATION", "Units.M"], ["RoadRailUnits.LENGTH", "Units.M"]];
180760
+ for (const entry of initialKoQs) {
180761
+ try {
180762
+ await this.addFormattingSpecsToRegistry(entry[0], entry[1]);
180763
+ }
180764
+ catch (err) {
180765
+ _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Logger.logWarning(`${_common_FrontendLoggerCategory__WEBPACK_IMPORTED_MODULE_2__.FrontendLoggerCategory.Package}.QuantityFormatter`, err.toString());
180766
+ }
180767
+ }
180768
+ this._removeFormatsProviderListener = _IModelApp__WEBPACK_IMPORTED_MODULE_3__.IModelApp.formatsProvider.onFormatsChanged.addListener(async (args) => {
180769
+ if (args.formatsChanged === "all") {
180770
+ for (const [name, entry] of this._formatSpecsRegistry.entries()) {
180771
+ const formatProps = await _IModelApp__WEBPACK_IMPORTED_MODULE_3__.IModelApp.formatsProvider.getFormat(name);
180772
+ if (formatProps) {
180773
+ const persistenceUnitName = entry.formatterSpec.persistenceUnit.name;
180774
+ await this.addFormattingSpecsToRegistry(name, persistenceUnitName, formatProps);
180775
+ }
180776
+ else {
180777
+ this._formatSpecsRegistry.delete(name); // clear the specs if format was removed, or no longer exists.
180778
+ }
180779
+ }
180780
+ }
180781
+ else {
180782
+ for (const name of args.formatsChanged) {
180783
+ if (this._formatSpecsRegistry.has(name)) {
180784
+ const formatProps = await _IModelApp__WEBPACK_IMPORTED_MODULE_3__.IModelApp.formatsProvider.getFormat(name);
180785
+ if (formatProps) {
180786
+ const existingEntry = this._formatSpecsRegistry.get(name);
180787
+ if (existingEntry) {
180788
+ const persistenceUnitName = existingEntry.formatterSpec.persistenceUnit.name;
180789
+ await this.addFormattingSpecsToRegistry(name, persistenceUnitName, formatProps);
180790
+ }
180791
+ }
180792
+ else {
180793
+ this._formatSpecsRegistry.delete(name);
180794
+ }
180795
+ }
180796
+ }
180797
+ }
180798
+ });
180683
180799
  // initialize default format and parsing specs
180684
180800
  await this.loadFormatAndParsingMapsForSystem();
180685
180801
  }
@@ -181045,6 +181161,41 @@ class QuantityFormatter {
181045
181161
  const format = await _itwin_core_quantity__WEBPACK_IMPORTED_MODULE_1__.Format.createFromJSON(formatName ?? "temp", this._unitsProvider, formatProps);
181046
181162
  return _itwin_core_quantity__WEBPACK_IMPORTED_MODULE_1__.ParserSpec.create(format, this._unitsProvider, persistenceUnitProps);
181047
181163
  }
181164
+ /**
181165
+ * @beta
181166
+ * Returns a [[FormattingSpecEntry]] for a given name, typically a KindOfQuantity full name.
181167
+ */
181168
+ getSpecsByName(name) {
181169
+ return this._formatSpecsRegistry.get(name);
181170
+ }
181171
+ /**
181172
+ * Populates the registry with a new FormatterSpec and ParserSpec entry for the given format name.
181173
+ * @beta
181174
+ * @param name The key used to identify the formatter and parser spec
181175
+ * @param persistenceUnitName The name of the persistence unit
181176
+ * @param formatProps If not supplied, tries to retrieve the [[FormatProps]] from [[IModelApp.formatsProvider]]
181177
+ */
181178
+ async addFormattingSpecsToRegistry(name, persistenceUnitName, formatProps) {
181179
+ if (!formatProps) {
181180
+ formatProps = await _IModelApp__WEBPACK_IMPORTED_MODULE_3__.IModelApp.formatsProvider.getFormat(name);
181181
+ }
181182
+ if (formatProps) {
181183
+ const formatterSpec = await this.createFormatterSpec({
181184
+ persistenceUnitName,
181185
+ formatProps,
181186
+ formatName: name,
181187
+ });
181188
+ const parserSpec = await this.createParserSpec({
181189
+ persistenceUnitName,
181190
+ formatProps,
181191
+ formatName: name,
181192
+ });
181193
+ this._formatSpecsRegistry.set(name, { formatterSpec, parserSpec });
181194
+ }
181195
+ else {
181196
+ throw new Error(`Unable to find format properties for ${name} with persistence unit ${persistenceUnitName}`);
181197
+ }
181198
+ }
181048
181199
  }
181049
181200
  // ========================================================================================================================================
181050
181201
  // Default Data
@@ -210549,52 +210700,18 @@ class SetupCameraTool extends _PrimitiveTool__WEBPACK_IMPORTED_MODULE_17__.Primi
210549
210700
  }
210550
210701
  get targetHeight() { return this.targetHeightProperty.value; }
210551
210702
  set targetHeight(value) { this.targetHeightProperty.value = value; }
210552
- syncCameraHeightState() {
210553
- this.cameraHeightProperty.displayValue = this.cameraHeightProperty.description.format(this.cameraHeight);
210554
- this.cameraHeightProperty.isDisabled = !this.useCameraHeight;
210555
- this.syncToolSettingsProperties([this.cameraHeightProperty.syncItem]);
210556
- }
210557
- syncTargetHeightState() {
210558
- this.targetHeightProperty.displayValue = this.targetHeightProperty.description.format(this.targetHeight);
210559
- this.targetHeightProperty.isDisabled = !this.useTargetHeight;
210560
- this.syncToolSettingsProperties([this.targetHeightProperty.syncItem]);
210703
+ getToolSettingPropertyLocked(property) {
210704
+ if (property === this.useCameraHeightProperty)
210705
+ return this.cameraHeightProperty;
210706
+ else if (property === this.useTargetHeightProperty)
210707
+ return this.targetHeightProperty;
210708
+ return undefined;
210561
210709
  }
210562
210710
  async applyToolSettingPropertyChange(updatedValue) {
210563
- if (updatedValue.propertyName === this.useCameraHeightProperty.name) {
210564
- this.useCameraHeight = updatedValue.value.value;
210565
- _IModelApp__WEBPACK_IMPORTED_MODULE_7__.IModelApp.toolAdmin.toolSettingsState.saveToolSettingProperty(this.toolId, this.useCameraHeightProperty.item);
210566
- this.syncCameraHeightState();
210567
- }
210568
- else if (updatedValue.propertyName === this.useTargetHeightProperty.name) {
210569
- this.useTargetHeight = updatedValue.value.value;
210570
- _IModelApp__WEBPACK_IMPORTED_MODULE_7__.IModelApp.toolAdmin.toolSettingsState.saveToolSettingProperty(this.toolId, this.useTargetHeightProperty.item);
210571
- this.syncTargetHeightState();
210572
- }
210573
- else if (updatedValue.propertyName === this.cameraHeightProperty.name) {
210574
- this.cameraHeight = updatedValue.value.value;
210575
- _IModelApp__WEBPACK_IMPORTED_MODULE_7__.IModelApp.toolAdmin.toolSettingsState.saveToolSettingProperty(this.toolId, this.cameraHeightProperty.item);
210576
- }
210577
- else if (updatedValue.propertyName === this.targetHeightProperty.name) {
210578
- this.targetHeight = updatedValue.value.value;
210579
- _IModelApp__WEBPACK_IMPORTED_MODULE_7__.IModelApp.toolAdmin.toolSettingsState.saveToolSettingProperty(this.toolId, this.targetHeightProperty.item);
210580
- }
210581
- return true;
210711
+ return this.changeToolSettingPropertyValue(updatedValue);
210582
210712
  }
210583
210713
  supplyToolSettingsProperties() {
210584
- // load latest values from session
210585
- _IModelApp__WEBPACK_IMPORTED_MODULE_7__.IModelApp.toolAdmin.toolSettingsState.getInitialToolSettingValues(this.toolId, [
210586
- this.useCameraHeightProperty.name, this.useTargetHeightProperty.name, this.cameraHeightProperty.name, this.targetHeightProperty.name,
210587
- ])
210588
- ?.forEach((value) => {
210589
- if (value.propertyName === this.useCameraHeightProperty.name)
210590
- this.useCameraHeightProperty.dialogItemValue = value.value;
210591
- else if (value.propertyName === this.cameraHeightProperty.name)
210592
- this.cameraHeightProperty.dialogItemValue = value.value;
210593
- else if (value.propertyName === this.useTargetHeightProperty.name)
210594
- this.useTargetHeightProperty.dialogItemValue = value.value;
210595
- else if (value.propertyName === this.targetHeightProperty.name)
210596
- this.targetHeightProperty.dialogItemValue = value.value;
210597
- });
210714
+ this.initializeToolSettingPropertyValues([this.useCameraHeightProperty, this.useTargetHeightProperty, this.cameraHeightProperty, this.targetHeightProperty]);
210598
210715
  // ensure controls are enabled/disabled base on current lock property state
210599
210716
  this.targetHeightProperty.isDisabled = !this.useTargetHeight;
210600
210717
  this.cameraHeightProperty.isDisabled = !this.useCameraHeight;
@@ -329784,7 +329901,7 @@ class TestContext {
329784
329901
  this.initializeRpcInterfaces({ title: this.settings.Backend.name, version: this.settings.Backend.version });
329785
329902
  const iModelClient = new imodels_client_management_1.IModelsClient({ api: { baseUrl: `https://${process.env.IMJS_URL_PREFIX ?? ""}api.bentley.com/imodels` } });
329786
329903
  await core_frontend_1.NoRenderApp.startup({
329787
- applicationVersion: "5.1.0-dev.15",
329904
+ applicationVersion: "5.1.0-dev.17",
329788
329905
  applicationId: this.settings.gprid,
329789
329906
  authorizationClient: new frontend_1.TestFrontendAuthorizationClient(this.serviceAuthToken),
329790
329907
  hubAccess: new imodels_access_frontend_1.FrontendIModelsAccess(iModelClient),
@@ -331785,9 +331902,11 @@ class BaseQuantityDescription {
331785
331902
  displayLabel;
331786
331903
  typename;
331787
331904
  editor;
331788
- constructor(name, displayLabel, iconSpec) {
331905
+ kindOfQuantityName;
331906
+ constructor(name, displayLabel, iconSpec, kindOfQuantityName) {
331789
331907
  this.name = name;
331790
331908
  this.displayLabel = displayLabel;
331909
+ this.kindOfQuantityName = kindOfQuantityName;
331791
331910
  this.typename = _properties_StandardTypeNames__WEBPACK_IMPORTED_MODULE_1__.StandardTypeNames.Number;
331792
331911
  this.editor = {
331793
331912
  name: _properties_StandardEditorNames__WEBPACK_IMPORTED_MODULE_2__.StandardEditorNames.NumberCustom,
@@ -354830,7 +354949,7 @@ var loadLanguages = instance.loadLanguages;
354830
354949
  /***/ ((module) => {
354831
354950
 
354832
354951
  "use strict";
354833
- module.exports = /*#__PURE__*/JSON.parse('{"name":"@itwin/core-frontend","version":"5.1.0-dev.15","description":"iTwin.js frontend components","main":"lib/cjs/core-frontend.js","module":"lib/esm/core-frontend.js","typings":"lib/cjs/core-frontend","license":"MIT","scripts":{"build":"npm run -s copy:public && npm run -s build:cjs && npm run -s build:esm && npm run -s webpackWorkers && npm run -s copy:workers","build:cjs":"npm run -s copy:js:cjs && tsc 1>&2 --outDir lib/cjs","build:esm":"npm run -s copy:js:esm && tsc 1>&2 --module ES2022 --outDir lib/esm","clean":"rimraf -g lib .rush/temp/package-deps*.json","copy:public":"cpx \\"./src/public/**/*\\" ./lib/public","copy:js:cjs":"cpx \\"./src/**/*.js\\" ./lib/cjs","copy:js:esm":"cpx \\"./src/**/*.js\\" ./lib/esm","copy:workers":"cpx \\"./lib/workers/webpack/parse-imdl-worker.js\\" ./lib/public/scripts","docs":"betools docs --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/map/*.d.ts,**/tile/*.d.ts,**/*-css.ts","extract-api":"betools extract-api --entry=core-frontend && npm run extract-extension-api","extract-extension-api":"eslint --no-inline-config -c extraction.eslint.config.js \\"./src/**/*.ts\\" 1>&2","lint":"eslint \\"./src/**/*.ts\\" 1>&2","lint-fix":"eslint --fix -f visualstudio \\"./src/**/*.ts\\" 1>&2","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run webpackTestWorker && vitest --run","cover":"npm run webpackTestWorker && vitest --run","webpackTests":"webpack --config ./src/test/utils/webpack.config.js 1>&2 && npm run -s webpackTestWorker","webpackTestWorker":"webpack --config ./src/test/worker/webpack.config.js 1>&2 && cpx \\"./lib/test/test-worker.js\\" ./lib/test","webpackWorkers":"webpack --config ./src/workers/ImdlParser/webpack.config.js 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core.git","directory":"core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*"},"//devDependencies":["NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install","NOTE: All tools used by scripts in this package must be listed as devDependencies"],"devDependencies":{"@itwin/appui-abstract":"workspace:*","@itwin/build-tools":"workspace:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*","@itwin/eslint-plugin":"5.0.0-dev.1","@types/chai-as-promised":"^7","@vitest/browser":"^3.0.6","@vitest/coverage-v8":"^3.0.6","cpx2":"^8.0.0","eslint":"^9.13.0","glob":"^10.3.12","playwright":"~1.47.1","rimraf":"^6.0.1","source-map-loader":"^5.0.0","typescript":"~5.6.2","typemoq":"^2.1.0","vitest":"^3.0.6","vite-multiple-assets":"^1.3.1","vite-plugin-static-copy":"2.2.0","webpack":"^5.97.1"},"//dependencies":["NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API","NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed"],"dependencies":{"@itwin/cloud-agnostic-core":"^2.2.4","@itwin/object-storage-core":"^2.3.0","@itwin/core-i18n":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@loaders.gl/core":"^3.1.6","@loaders.gl/draco":"^3.1.6","fuse.js":"^3.3.0","wms-capabilities":"0.4.0"}}');
354952
+ module.exports = /*#__PURE__*/JSON.parse('{"name":"@itwin/core-frontend","version":"5.1.0-dev.17","description":"iTwin.js frontend components","main":"lib/cjs/core-frontend.js","module":"lib/esm/core-frontend.js","typings":"lib/cjs/core-frontend","license":"MIT","scripts":{"build":"npm run -s copy:public && npm run -s build:cjs && npm run -s build:esm && npm run -s webpackWorkers && npm run -s copy:workers","build:cjs":"npm run -s copy:js:cjs && tsc 1>&2 --outDir lib/cjs","build:esm":"npm run -s copy:js:esm && tsc 1>&2 --module ES2022 --outDir lib/esm","clean":"rimraf -g lib .rush/temp/package-deps*.json","copy:public":"cpx \\"./src/public/**/*\\" ./lib/public","copy:js:cjs":"cpx \\"./src/**/*.js\\" ./lib/cjs","copy:js:esm":"cpx \\"./src/**/*.js\\" ./lib/esm","copy:workers":"cpx \\"./lib/workers/webpack/parse-imdl-worker.js\\" ./lib/public/scripts","docs":"betools docs --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/map/*.d.ts,**/tile/*.d.ts,**/*-css.ts","extract-api":"betools extract-api --entry=core-frontend && npm run extract-extension-api","extract-extension-api":"eslint --no-inline-config -c extraction.eslint.config.js \\"./src/**/*.ts\\" 1>&2","lint":"eslint \\"./src/**/*.ts\\" 1>&2","lint-fix":"eslint --fix -f visualstudio \\"./src/**/*.ts\\" 1>&2","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run webpackTestWorker && vitest --run","cover":"npm run webpackTestWorker && vitest --run","webpackTests":"webpack --config ./src/test/utils/webpack.config.js 1>&2 && npm run -s webpackTestWorker","webpackTestWorker":"webpack --config ./src/test/worker/webpack.config.js 1>&2 && cpx \\"./lib/test/test-worker.js\\" ./lib/test","webpackWorkers":"webpack --config ./src/workers/ImdlParser/webpack.config.js 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core.git","directory":"core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*"},"//devDependencies":["NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install","NOTE: All tools used by scripts in this package must be listed as devDependencies"],"devDependencies":{"@itwin/appui-abstract":"workspace:*","@itwin/build-tools":"workspace:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*","@itwin/eslint-plugin":"5.0.0-dev.1","@types/chai-as-promised":"^7","@vitest/browser":"^3.0.6","@vitest/coverage-v8":"^3.0.6","cpx2":"^8.0.0","eslint":"^9.13.0","glob":"^10.3.12","playwright":"~1.47.1","rimraf":"^6.0.1","source-map-loader":"^5.0.0","typescript":"~5.6.2","typemoq":"^2.1.0","vitest":"^3.0.6","vite-multiple-assets":"^1.3.1","vite-plugin-static-copy":"2.2.0","webpack":"^5.97.1"},"//dependencies":["NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API","NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed"],"dependencies":{"@itwin/cloud-agnostic-core":"^2.2.4","@itwin/object-storage-core":"^2.3.0","@itwin/core-i18n":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@loaders.gl/core":"^3.1.6","@loaders.gl/draco":"^3.1.6","fuse.js":"^3.3.0","wms-capabilities":"0.4.0"}}');
354834
354953
 
354835
354954
  /***/ }),
354836
354955