@itwin/ecschema-rpcinterface-tests 4.0.0-dev.99 → 4.1.0-dev.2

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.
@@ -59083,40 +59083,82 @@ exports.ECStringConstants = ECStringConstants;
59083
59083
  * See LICENSE.md in the project root for license terms and full copyright notice.
59084
59084
  *--------------------------------------------------------------------------------------------*/
59085
59085
  Object.defineProperty(exports, "__esModule", ({ value: true }));
59086
- exports.SchemaContext = exports.SchemaCache = exports.SchemaMap = void 0;
59086
+ exports.SchemaContext = exports.SchemaCache = void 0;
59087
59087
  const ECObjects_1 = __webpack_require__(/*! ./ECObjects */ "../../core/ecschema-metadata/lib/cjs/ECObjects.js");
59088
59088
  const Exception_1 = __webpack_require__(/*! ./Exception */ "../../core/ecschema-metadata/lib/cjs/Exception.js");
59089
59089
  /**
59090
- * @beta
59090
+ * @internal
59091
59091
  */
59092
59092
  class SchemaMap extends Array {
59093
59093
  }
59094
- exports.SchemaMap = SchemaMap;
59095
59094
  /**
59096
- * @beta
59095
+ * @internal
59097
59096
  */
59098
59097
  class SchemaCache {
59099
59098
  constructor() {
59100
59099
  this._schema = new SchemaMap();
59101
59100
  }
59102
59101
  get count() { return this._schema.length; }
59102
+ loadedSchemaExists(schemaKey) {
59103
+ return undefined !== this._schema.find((entry) => entry.schemaInfo.schemaKey.matches(schemaKey, ECObjects_1.SchemaMatchType.Latest) && !entry.schemaPromise);
59104
+ }
59105
+ schemaPromiseExists(schemaKey) {
59106
+ return undefined !== this._schema.find((entry) => entry.schemaInfo.schemaKey.matches(schemaKey, ECObjects_1.SchemaMatchType.Latest) && undefined !== entry.schemaPromise);
59107
+ }
59108
+ findEntry(schemaKey, matchType) {
59109
+ return this._schema.find((entry) => entry.schemaInfo.schemaKey.matches(schemaKey, matchType));
59110
+ }
59111
+ removeSchemaPromise(schemaKey) {
59112
+ const entry = this.findEntry(schemaKey, ECObjects_1.SchemaMatchType.Latest);
59113
+ if (entry)
59114
+ entry.schemaPromise = undefined;
59115
+ }
59116
+ removeEntry(schemaKey) {
59117
+ this._schema = this._schema.filter((entry) => !entry.schemaInfo.schemaKey.matches(schemaKey));
59118
+ }
59119
+ /**
59120
+ * Returns true if the schema exists in either the schema cache or the promise cache. SchemaMatchType.Latest used.
59121
+ * @param schemaKey The key to search for.
59122
+ */
59123
+ schemaExists(schemaKey) {
59124
+ return this.loadedSchemaExists(schemaKey) || this.schemaPromiseExists(schemaKey);
59125
+ }
59126
+ /**
59127
+ * Adds a promise to load the schema to the cache. Does not allow for duplicate schemas in the cache of schemas or cache of promises, checks using SchemaMatchType.Latest.
59128
+ * When the promise completes the schema will be added to the schema cache and the promise will be removed from the promise cache
59129
+ * @param schemaInfo An object with the schema key for the schema being loaded and it's references
59130
+ * @param schema The partially loaded schema that the promise will fulfill
59131
+ * @param schemaPromise The schema promise to add to the cache.
59132
+ */
59133
+ async addSchemaPromise(schemaInfo, schema, schemaPromise) {
59134
+ if (this.schemaExists(schemaInfo.schemaKey))
59135
+ throw new Exception_1.ECObjectsError(Exception_1.ECObjectsStatus.DuplicateSchema, `The schema, ${schemaPromise.toString()}, already exists within this cache.`);
59136
+ this._schema.push({ schemaInfo, schema, schemaPromise });
59137
+ // This promise is cached and will be awaited when the user requests the full schema.
59138
+ // If the promise competes successfully before the user requests the schema it will be removed from the cache
59139
+ // If it fails it will remain in the cache until the user awaits it and handles the error
59140
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
59141
+ schemaPromise.then(() => {
59142
+ this.removeSchemaPromise(schemaInfo.schemaKey);
59143
+ });
59144
+ }
59103
59145
  /**
59104
59146
  * Adds a schema to the cache. Does not allow for duplicate schemas, checks using SchemaMatchType.Latest.
59105
59147
  * @param schema The schema to add to the cache.
59106
59148
  */
59107
59149
  async addSchema(schema) {
59108
- if (await this.getSchema(schema.schemaKey))
59150
+ if (this.schemaExists(schema.schemaKey))
59109
59151
  throw new Exception_1.ECObjectsError(Exception_1.ECObjectsStatus.DuplicateSchema, `The schema, ${schema.schemaKey.toString()}, already exists within this cache.`);
59110
- this._schema.push(schema);
59152
+ this._schema.push({ schemaInfo: schema, schema });
59111
59153
  }
59112
59154
  /**
59113
59155
  * Adds a schema to the cache. Does not allow for duplicate schemas, checks using SchemaMatchType.Latest.
59114
59156
  * @param schema The schema to add to the cache.
59115
59157
  */
59116
59158
  addSchemaSync(schema) {
59117
- if (this.getSchemaSync(schema.schemaKey))
59159
+ if (this.schemaExists(schema.schemaKey))
59118
59160
  throw new Exception_1.ECObjectsError(Exception_1.ECObjectsStatus.DuplicateSchema, `The schema, ${schema.schemaKey.toString()}, already exists within this cache.`);
59119
- this._schema.push(schema);
59161
+ this._schema.push({ schemaInfo: schema, schema });
59120
59162
  }
59121
59163
  /**
59122
59164
  * Gets the schema which matches the provided SchemaKey.
@@ -59126,46 +59168,69 @@ class SchemaCache {
59126
59168
  async getSchema(schemaKey, matchType = ECObjects_1.SchemaMatchType.Latest) {
59127
59169
  if (this.count === 0)
59128
59170
  return undefined;
59129
- const findFunc = (schema) => {
59130
- return schema.schemaKey.matches(schemaKey, matchType);
59131
- };
59132
- const foundSchema = this._schema.find(findFunc);
59133
- if (!foundSchema)
59171
+ const entry = this.findEntry(schemaKey, matchType);
59172
+ if (!entry)
59173
+ return undefined;
59174
+ if (entry.schemaPromise) {
59175
+ try {
59176
+ const schema = await entry.schemaPromise;
59177
+ return schema;
59178
+ }
59179
+ catch (e) {
59180
+ this.removeEntry(schemaKey);
59181
+ throw e;
59182
+ }
59183
+ }
59184
+ return entry.schema;
59185
+ }
59186
+ /**
59187
+ * Gets the schema info which matches the provided SchemaKey. The schema info may be returned before the schema is fully loaded.
59188
+ * @param schemaKey The SchemaKey describing the schema to get from the cache.
59189
+ * @param matchType The match type to use when locating the schema
59190
+ */
59191
+ async getSchemaInfo(schemaKey, matchType = ECObjects_1.SchemaMatchType.Latest) {
59192
+ if (this.count === 0)
59134
59193
  return undefined;
59135
- return foundSchema;
59194
+ const entry = this.findEntry(schemaKey, matchType);
59195
+ if (entry)
59196
+ return entry.schemaInfo;
59197
+ return undefined;
59136
59198
  }
59137
59199
  /**
59138
- *
59139
- * @param schemaKey
59140
- * @param matchType
59200
+ * Gets the schema which matches the provided SchemaKey. If the schema is partially loaded an exception will be thrown.
59201
+ * @param schemaKey The SchemaKey describing the schema to get from the cache.
59202
+ * @param matchType The match type to use when locating the schema
59141
59203
  */
59142
59204
  getSchemaSync(schemaKey, matchType = ECObjects_1.SchemaMatchType.Latest) {
59143
59205
  if (this.count === 0)
59144
59206
  return undefined;
59145
- const findFunc = (schema) => {
59146
- return schema.schemaKey.matches(schemaKey, matchType);
59147
- };
59148
- const foundSchema = this._schema.find(findFunc);
59149
- if (!foundSchema)
59150
- return foundSchema;
59151
- return foundSchema;
59207
+ const entry = this.findEntry(schemaKey, matchType);
59208
+ if (entry) {
59209
+ if (entry.schemaPromise) {
59210
+ throw new Exception_1.ECObjectsError(Exception_1.ECObjectsStatus.UnableToLoadSchema, `The Schema ${schemaKey.toString()} is partially loaded so cannot be loaded synchronously.`);
59211
+ }
59212
+ return entry.schema;
59213
+ }
59214
+ return undefined;
59152
59215
  }
59153
59216
  /**
59154
- * Generator function that can iterate through each schema in _schema SchemaMap and items for each Schema
59217
+ * Generator function that can iterate through each schema in _schema SchemaMap and items for each Schema.
59218
+ * Does not include schema items from schemas that are not completely loaded yet.
59155
59219
  */
59156
59220
  *getSchemaItems() {
59157
- for (const schema of this._schema) {
59158
- for (const schemaItem of schema.getItems()) {
59221
+ for (const entry of this._schema) {
59222
+ for (const schemaItem of entry.schema.getItems()) {
59159
59223
  yield schemaItem;
59160
59224
  }
59161
59225
  }
59162
59226
  }
59163
59227
  /**
59164
59228
  * Gets all the schemas from the schema cache.
59229
+ * Does not include schemas from schemas that are not completely loaded yet.
59165
59230
  * @returns An array of Schema objects.
59166
59231
  */
59167
59232
  getAllSchemas() {
59168
- return this._schema;
59233
+ return this._schema.map((entry) => entry.schema);
59169
59234
  }
59170
59235
  }
59171
59236
  exports.SchemaCache = SchemaCache;
@@ -59187,7 +59252,7 @@ class SchemaContext {
59187
59252
  this._locaters.push(locater);
59188
59253
  }
59189
59254
  /**
59190
- * Adds the schema to this context
59255
+ * Adds the schema to this context. Use addSchemaPromise instead when asynchronously loading schemas.
59191
59256
  * @param schema The schema to add to this context
59192
59257
  */
59193
59258
  async addSchema(schema) {
@@ -59203,6 +59268,7 @@ class SchemaContext {
59203
59268
  /**
59204
59269
  * Adds the given SchemaItem to the the SchemaContext by locating the schema, with the best match of SchemaMatchType.Exact, and
59205
59270
  * @param schemaItem The SchemaItem to add
59271
+ * @deprecated in 4.0 use ecschema-editing package
59206
59272
  */
59207
59273
  async addSchemaItem(schemaItem) {
59208
59274
  const schema = await this.getSchema(schemaItem.key.schemaKey, ECObjects_1.SchemaMatchType.Exact);
@@ -59210,6 +59276,24 @@ class SchemaContext {
59210
59276
  throw new Exception_1.ECObjectsError(Exception_1.ECObjectsStatus.UnableToLocateSchema, `Unable to add the schema item ${schemaItem.name} to the schema ${schemaItem.key.schemaKey.toString()} because the schema could not be located.`);
59211
59277
  schema.addItem(schemaItem);
59212
59278
  }
59279
+ /**
59280
+ * Returns true if the schema is already in the context. SchemaMatchType.Latest is used to find a match.
59281
+ * @param schemaKey
59282
+ */
59283
+ schemaExists(schemaKey) {
59284
+ return this._knownSchemas.schemaExists(schemaKey);
59285
+ }
59286
+ /**
59287
+ * Adds a promise to load the schema to the cache. Does not allow for duplicate schemas in the cache of schemas or cache of promises, checks using SchemaMatchType.Latest.
59288
+ * When the promise completes the schema will be added to the schema cache and the promise will be removed from the promise cache.
59289
+ * Use this method over addSchema when asynchronously loading schemas
59290
+ * @param schemaInfo An object with the schema key for the schema being loaded and it's references
59291
+ * @param schema The partially loaded schema that the promise will fulfill
59292
+ * @param schemaPromise The schema promise to add to the cache.
59293
+ */
59294
+ async addSchemaPromise(schemaInfo, schema, schemaPromise) {
59295
+ return this._knownSchemas.addSchemaPromise(schemaInfo, schema, schemaPromise);
59296
+ }
59213
59297
  /**
59214
59298
  *
59215
59299
  * @param schemaKey
@@ -59223,6 +59307,20 @@ class SchemaContext {
59223
59307
  }
59224
59308
  return undefined;
59225
59309
  }
59310
+ /**
59311
+ * Gets the schema info which matches the provided SchemaKey. The schema info may be returned before the schema is fully loaded.
59312
+ * The fully loaded schema can be gotten later from the context using the getCachedSchema method.
59313
+ * @param schemaKey The SchemaKey describing the schema to get from the cache.
59314
+ * @param matchType The match type to use when locating the schema
59315
+ */
59316
+ async getSchemaInfo(schemaKey, matchType) {
59317
+ for (const locater of this._locaters) {
59318
+ const schemaInfo = await locater.getSchemaInfo(schemaKey, matchType, this);
59319
+ if (undefined !== schemaInfo)
59320
+ return schemaInfo;
59321
+ }
59322
+ return undefined;
59323
+ }
59226
59324
  /**
59227
59325
  *
59228
59326
  * @param schemaKey
@@ -59238,42 +59336,62 @@ class SchemaContext {
59238
59336
  }
59239
59337
  /**
59240
59338
  * Attempts to get a Schema from the context's cache.
59339
+ * Will await a partially loaded schema then return when it is completely loaded.
59241
59340
  * @param schemaKey The SchemaKey to identify the Schema.
59242
59341
  * @param matchType The SchemaMatch type to use. Default is SchemaMatchType.Latest.
59243
59342
  * @internal
59244
59343
  */
59245
59344
  async getCachedSchema(schemaKey, matchType = ECObjects_1.SchemaMatchType.Latest) {
59246
- return this.getCachedSchemaSync(schemaKey, matchType);
59345
+ return this._knownSchemas.getSchema(schemaKey, matchType);
59247
59346
  }
59248
59347
  /**
59249
59348
  * Attempts to get a Schema from the context's cache.
59349
+ * Will return undefined if the cached schema is partially loaded. Use the async method to await partially loaded schemas.
59250
59350
  * @param schemaKey The SchemaKey to identify the Schema.
59251
59351
  * @param matchType The SchemaMatch type to use. Default is SchemaMatchType.Latest.
59252
59352
  * @internal
59253
59353
  */
59254
59354
  getCachedSchemaSync(schemaKey, matchType = ECObjects_1.SchemaMatchType.Latest) {
59255
- const schema = this._knownSchemas.getSchemaSync(schemaKey, matchType);
59256
- return schema;
59355
+ return this._knownSchemas.getSchemaSync(schemaKey, matchType);
59257
59356
  }
59357
+ /**
59358
+ * Gets the schema item from the specified schema if it exists in this [[SchemaContext]].
59359
+ * Will await a partially loaded schema then look in it for the requested item
59360
+ * @param schemaItemKey The SchemaItemKey identifying the item to return. SchemaMatchType.Latest is used to match the schema.
59361
+ * @returns The requested schema item
59362
+ */
59258
59363
  async getSchemaItem(schemaItemKey) {
59259
59364
  const schema = await this.getSchema(schemaItemKey.schemaKey, ECObjects_1.SchemaMatchType.Latest);
59260
59365
  if (undefined === schema)
59261
59366
  return undefined;
59262
59367
  return schema.getItem(schemaItemKey.name);
59263
59368
  }
59369
+ /**
59370
+ * Gets the schema item from the specified schema if it exists in this [[SchemaContext]].
59371
+ * Will skip a partially loaded schema and return undefined if the item belongs to that schema. Use the async method to await partially loaded schemas.
59372
+ * @param schemaItemKey The SchemaItemKey identifying the item to return. SchemaMatchType.Latest is used to match the schema.
59373
+ * @returns The requested schema item
59374
+ */
59264
59375
  getSchemaItemSync(schemaItemKey) {
59265
59376
  const schema = this.getSchemaSync(schemaItemKey.schemaKey, ECObjects_1.SchemaMatchType.Latest);
59266
59377
  if (undefined === schema)
59267
59378
  return undefined;
59268
59379
  return schema.getItemSync(schemaItemKey.name);
59269
59380
  }
59381
+ /**
59382
+ * Iterates through the items of each schema known to the context. This includes schemas added to the
59383
+ * context using [[SchemaContext.addSchema]]. This does not include schemas that
59384
+ * can be located by an ISchemaLocater instance added to the context.
59385
+ * Does not include schema items from schemas that are not completely loaded yet.
59386
+ */
59270
59387
  getSchemaItems() {
59271
59388
  return this._knownSchemas.getSchemaItems();
59272
59389
  }
59273
59390
  /**
59274
59391
  * Gets all the Schemas known by the context. This includes schemas added to the
59275
59392
  * context using [[SchemaContext.addSchema]]. This does not include schemas that
59276
- * can be located by an ISchemaLocater instance added to the context.
59393
+ * can be located by an ISchemaLocater instance added to the context. Does not
59394
+ * include schemas that are partially loaded.
59277
59395
  * @returns An array of Schema objects.
59278
59396
  */
59279
59397
  getKnownSchemas() {
@@ -59443,11 +59561,13 @@ class SchemaReadHelper {
59443
59561
  this._parserType = parserType;
59444
59562
  }
59445
59563
  /**
59446
- * Populates the given Schema from a serialized representation.
59564
+ * Creates a complete SchemaInfo and starts parsing the schema from a serialized representation.
59565
+ * The info and schema promise will be registered with the SchemaContext. The complete schema can be retrieved by
59566
+ * calling getCachedSchema on the context.
59447
59567
  * @param schema The Schema to populate
59448
59568
  * @param rawSchema The serialized data to use to populate the Schema.
59449
59569
  */
59450
- async readSchema(schema, rawSchema) {
59570
+ async readSchemaInfo(schema, rawSchema) {
59451
59571
  // Ensure context matches schema context
59452
59572
  if (schema.context) {
59453
59573
  if (this._context !== schema.context)
@@ -59460,12 +59580,38 @@ class SchemaReadHelper {
59460
59580
  // Loads all of the properties on the Schema object
59461
59581
  await schema.fromJSON(this._parser.parseSchema());
59462
59582
  this._schema = schema;
59463
- // Need to add this schema to the context to be able to locate schemaItems within the context.
59464
- await this._context.addSchema(schema);
59465
- // Load schema references first
59466
- // Need to figure out if other schemas are present.
59583
+ const schemaInfo = { schemaKey: schema.schemaKey, references: [] };
59467
59584
  for (const reference of this._parser.getReferences()) {
59468
- await this.loadSchemaReference(reference);
59585
+ const refKey = new SchemaKey_1.SchemaKey(reference.name, SchemaKey_1.ECVersion.fromString(reference.version));
59586
+ schemaInfo.references.push({ schemaKey: refKey });
59587
+ }
59588
+ this._schemaInfo = schemaInfo;
59589
+ // Need to add this schema to the context to be able to locate schemaItems within the context.
59590
+ if (!this._context.schemaExists(schema.schemaKey)) {
59591
+ await this._context.addSchemaPromise(schemaInfo, schema, this.loadSchema(schemaInfo, schema));
59592
+ }
59593
+ return schemaInfo;
59594
+ }
59595
+ /**
59596
+ * Populates the given Schema from a serialized representation.
59597
+ * @param schema The Schema to populate
59598
+ * @param rawSchema The serialized data to use to populate the Schema.
59599
+ */
59600
+ async readSchema(schema, rawSchema) {
59601
+ if (!this._schemaInfo) {
59602
+ await this.readSchemaInfo(schema, rawSchema);
59603
+ }
59604
+ const cachedSchema = await this._context.getCachedSchema(this._schemaInfo.schemaKey, ECObjects_1.SchemaMatchType.Latest);
59605
+ if (undefined === cachedSchema)
59606
+ throw new Exception_1.ECObjectsError(Exception_1.ECObjectsStatus.UnableToLoadSchema, `Could not load schema ${schema.schemaKey.toString()}`);
59607
+ return cachedSchema;
59608
+ }
59609
+ /* Finish loading the rest of the schema */
59610
+ async loadSchema(schemaInfo, schema) {
59611
+ // Verify that there are no schema reference cycles, this will start schema loading by loading their headers
59612
+ (await SchemaGraph_1.SchemaGraph.generateGraph(schemaInfo, this._context)).throwIfCycles();
59613
+ for (const reference of schemaInfo.references) {
59614
+ await this.loadSchemaReference(schemaInfo, reference.schemaKey);
59469
59615
  }
59470
59616
  if (this._visitorHelper)
59471
59617
  await this._visitorHelper.visitSchema(schema, false);
@@ -59524,11 +59670,10 @@ class SchemaReadHelper {
59524
59670
  * Ensures that the schema references can be located and adds them to the schema.
59525
59671
  * @param ref The object to read the SchemaReference's props from.
59526
59672
  */
59527
- async loadSchemaReference(ref) {
59528
- const schemaKey = new SchemaKey_1.SchemaKey(ref.name, SchemaKey_1.ECVersion.fromString(ref.version));
59529
- const refSchema = await this._context.getSchema(schemaKey, ECObjects_1.SchemaMatchType.LatestWriteCompatible);
59673
+ async loadSchemaReference(schemaInfo, refKey) {
59674
+ const refSchema = await this._context.getSchema(refKey, ECObjects_1.SchemaMatchType.LatestWriteCompatible);
59530
59675
  if (undefined === refSchema)
59531
- throw new Exception_1.ECObjectsError(Exception_1.ECObjectsStatus.UnableToLocateSchema, `Could not locate the referenced schema, ${ref.name}.${ref.version}, of ${this._schema.schemaKey.name}`);
59676
+ throw new Exception_1.ECObjectsError(Exception_1.ECObjectsStatus.UnableToLocateSchema, `Could not locate the referenced schema, ${refKey.name}.${refKey.version.toString()}, of ${schemaInfo.schemaKey.name}`);
59532
59677
  await this._schema.addReference(refSchema);
59533
59678
  const results = this.validateSchemaReferences(this._schema);
59534
59679
  let errorMessage = "";
@@ -59549,6 +59694,7 @@ class SchemaReadHelper {
59549
59694
  if (!refSchema)
59550
59695
  throw new Exception_1.ECObjectsError(Exception_1.ECObjectsStatus.UnableToLocateSchema, `Could not locate the referenced schema, ${ref.name}.${ref.version}, of ${this._schema.schemaKey.name}`);
59551
59696
  this._schema.addReferenceSync(refSchema);
59697
+ SchemaGraph_1.SchemaGraph.generateGraphSync(this._schema).throwIfCycles();
59552
59698
  const results = this.validateSchemaReferences(this._schema);
59553
59699
  let errorMessage = "";
59554
59700
  for (const result of results) {
@@ -59577,12 +59723,6 @@ class SchemaReadHelper {
59577
59723
  aliases.set(schemaRef.alias, schemaRef);
59578
59724
  }
59579
59725
  }
59580
- const graph = new SchemaGraph_1.SchemaGraph(schema);
59581
- const cycles = graph.detectCycles();
59582
- if (cycles) {
59583
- const result = cycles.map((cycle) => `${cycle.schema.name} --> ${cycle.refSchema.name}`).join(", ");
59584
- yield `Schema '${schema.name}' has reference cycles: ${result}`;
59585
- }
59586
59726
  }
59587
59727
  /**
59588
59728
  * Given the schema item object, the anticipated type and the name a schema item is created and loaded into the schema provided.
@@ -59767,7 +59907,10 @@ class SchemaReadHelper {
59767
59907
  const isInThisSchema = (this._schema && this._schema.name.toLowerCase() === schemaName.toLowerCase());
59768
59908
  if (undefined === schemaName || 0 === schemaName.length)
59769
59909
  throw new Exception_1.ECObjectsError(Exception_1.ECObjectsStatus.InvalidECJson, `The SchemaItem ${name} is invalid without a schema name`);
59770
- if (isInThisSchema && undefined === await this._schema.getItem(itemName)) {
59910
+ if (isInThisSchema) {
59911
+ schemaItem = await this._schema.getItem(itemName);
59912
+ if (schemaItem)
59913
+ return schemaItem;
59771
59914
  const foundItem = this._parser.findItem(itemName);
59772
59915
  if (foundItem) {
59773
59916
  schemaItem = await this.loadSchemaItem(this._schema, ...foundItem);
@@ -62841,6 +62984,7 @@ var ECObjectsStatus;
62841
62984
  ECObjectsStatus[ECObjectsStatus["InvalidSchemaComparisonArgument"] = 35077] = "InvalidSchemaComparisonArgument";
62842
62985
  ECObjectsStatus[ECObjectsStatus["InvalidSchemaAlias"] = 35078] = "InvalidSchemaAlias";
62843
62986
  ECObjectsStatus[ECObjectsStatus["InvalidSchemaKey"] = 35079] = "InvalidSchemaKey";
62987
+ ECObjectsStatus[ECObjectsStatus["UnableToLoadSchema"] = 35080] = "UnableToLoadSchema";
62844
62988
  })(ECObjectsStatus = exports.ECObjectsStatus || (exports.ECObjectsStatus = {}));
62845
62989
  /** @internal */
62846
62990
  class ECObjectsError extends core_bentley_1.BentleyError {
@@ -66466,6 +66610,9 @@ class Schema {
66466
66610
  schemaXml.appendChild(schemaMetadata);
66467
66611
  return schemaXml;
66468
66612
  }
66613
+ /**
66614
+ * Loads the schema header (name, version alias, label and description) from the input SchemaProps
66615
+ */
66469
66616
  fromJSONSync(schemaProps) {
66470
66617
  if (undefined === this._schemaKey) {
66471
66618
  const schemaName = schemaProps.name;
@@ -66491,9 +66638,22 @@ class Schema {
66491
66638
  if (undefined !== schemaProps.description)
66492
66639
  this._description = schemaProps.description;
66493
66640
  }
66641
+ /**
66642
+ * Loads the schema header (name, version alias, label and description) from the input SchemaProps
66643
+ */
66494
66644
  async fromJSON(schemaProps) {
66495
66645
  this.fromJSONSync(schemaProps);
66496
66646
  }
66647
+ /**
66648
+ * Completely loads the SchemaInfo from the input json and starts loading the entire schema. The complete schema can be retrieved from the
66649
+ * schema context using the getCachedSchema method
66650
+ */
66651
+ static async startLoadingFromJson(jsonObj, context) {
66652
+ const schema = new Schema(context);
66653
+ const reader = new Helper_1.SchemaReadHelper(JsonParser_1.JsonParser, context);
66654
+ const rawSchema = typeof jsonObj === "string" ? JSON.parse(jsonObj) : jsonObj;
66655
+ return reader.readSchemaInfo(schema, rawSchema);
66656
+ }
66497
66657
  static async fromJson(jsonObj, context) {
66498
66658
  let schema = new Schema(context);
66499
66659
  const reader = new Helper_1.SchemaReadHelper(JsonParser_1.JsonParser, context);
@@ -66501,6 +66661,9 @@ class Schema {
66501
66661
  schema = await reader.readSchema(schema, rawSchema);
66502
66662
  return schema;
66503
66663
  }
66664
+ /**
66665
+ * Completely loads the Schema from the input json. The schema is cached in the schema context.
66666
+ */
66504
66667
  static fromJsonSync(jsonObj, context) {
66505
66668
  let schema = new Schema(context);
66506
66669
  const reader = new Helper_1.SchemaReadHelper(JsonParser_1.JsonParser, context);
@@ -67026,6 +67189,14 @@ class SchemaJsonLocater {
67026
67189
  async getSchema(schemaKey, matchType, context) {
67027
67190
  return this.getSchemaSync(schemaKey, matchType, context);
67028
67191
  }
67192
+ /**
67193
+ * Gets the schema info which matches the provided SchemaKey. The schema info may be returned before the schema is fully loaded.
67194
+ * @param schemaKey The SchemaKey describing the schema to get from the cache.
67195
+ * @param matchType The match type to use when locating the schema
67196
+ */
67197
+ async getSchemaInfo(schemaKey, matchType, context) {
67198
+ return this.getSchema(schemaKey, matchType, context);
67199
+ }
67029
67200
  /** Get a schema by [SchemaKey] synchronously.
67030
67201
  * @param schemaKey The [SchemaKey] that identifies the schema.
67031
67202
  * * @param matchType The [SchemaMatchType] to used for comparing schema versions.
@@ -68522,7 +68693,7 @@ Object.defineProperty(exports, "SchemaGraph", ({ enumerable: true, get: function
68522
68693
  /*!*****************************************************************!*\
68523
68694
  !*** ../../core/ecschema-metadata/lib/cjs/utils/SchemaGraph.js ***!
68524
68695
  \*****************************************************************/
68525
- /***/ ((__unused_webpack_module, exports) => {
68696
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
68526
68697
 
68527
68698
  "use strict";
68528
68699
 
@@ -68532,22 +68703,32 @@ Object.defineProperty(exports, "SchemaGraph", ({ enumerable: true, get: function
68532
68703
  *--------------------------------------------------------------------------------------------*/
68533
68704
  Object.defineProperty(exports, "__esModule", ({ value: true }));
68534
68705
  exports.SchemaGraph = void 0;
68706
+ const ECObjects_1 = __webpack_require__(/*! ../ECObjects */ "../../core/ecschema-metadata/lib/cjs/ECObjects.js");
68707
+ const Exception_1 = __webpack_require__(/*! ../Exception */ "../../core/ecschema-metadata/lib/cjs/Exception.js");
68535
68708
  /**
68536
68709
  * Utility class for detecting cyclic references in a Schema graph.
68537
- * @beta
68710
+ * @internal
68538
68711
  */
68539
68712
  class SchemaGraph {
68713
+ constructor() {
68714
+ this._schemas = [];
68715
+ }
68716
+ find(schemaKey) {
68717
+ return this._schemas.find((info) => info.schemaKey.matches(schemaKey, ECObjects_1.SchemaMatchType.Latest));
68718
+ }
68540
68719
  /**
68541
- * Initializes a new SchemaGraph instance.
68542
- * @param schema The schema to analyze.
68720
+ * Detected cyclic references in a schema and throw an exception if a cycle is found.
68543
68721
  */
68544
- constructor(schema) {
68545
- this._schemas = [];
68546
- this.populateGraph(schema);
68722
+ throwIfCycles() {
68723
+ const cycles = this.detectCycles();
68724
+ if (cycles) {
68725
+ const result = cycles.map((cycle) => `${cycle.schema.schemaKey.name} --> ${cycle.refSchema.schemaKey.name}`).join(", ");
68726
+ throw new Exception_1.ECObjectsError(Exception_1.ECObjectsStatus.InvalidECJson, `Schema '${this._schemas[0].schemaKey.name}' has reference cycles: ${result}`);
68727
+ }
68547
68728
  }
68548
68729
  /**
68549
68730
  * Detected cyclic references in a schema.
68550
- * @returns True if a cycle is found.
68731
+ * @returns An array describing the cycle if there is a cycle or undefined if no cycles found.
68551
68732
  */
68552
68733
  detectCycles() {
68553
68734
  const visited = {};
@@ -68562,31 +68743,70 @@ class SchemaGraph {
68562
68743
  }
68563
68744
  detectCycleUtil(schema, visited, recStack, cycles) {
68564
68745
  let cycleFound = false;
68565
- if (!visited[schema.name]) {
68566
- visited[schema.name] = true;
68567
- recStack[schema.name] = true;
68568
- for (const refSchema of schema.references) {
68569
- if (!visited[refSchema.name] && this.detectCycleUtil(refSchema, visited, recStack, cycles)) {
68746
+ if (!visited[schema.schemaKey.name]) {
68747
+ visited[schema.schemaKey.name] = true;
68748
+ recStack[schema.schemaKey.name] = true;
68749
+ for (const refKey of schema.references) {
68750
+ const refSchema = this.find(refKey.schemaKey);
68751
+ if (undefined === refSchema)
68752
+ throw new Exception_1.ECObjectsError(Exception_1.ECObjectsStatus.UnableToLoadSchema, `Could not find the schema info for ref schema ${refKey.schemaKey.toString()} for schema ${schema.schemaKey.toString()}`);
68753
+ if (!visited[refKey.schemaKey.name] && this.detectCycleUtil(refSchema, visited, recStack, cycles)) {
68570
68754
  cycles.push({ schema, refSchema });
68571
68755
  cycleFound = true;
68572
68756
  }
68573
- else if (recStack[refSchema.name]) {
68757
+ else if (recStack[refKey.schemaKey.name]) {
68574
68758
  cycles.push({ schema, refSchema });
68575
68759
  cycleFound = true;
68576
68760
  }
68577
68761
  }
68578
68762
  }
68579
68763
  if (!cycleFound)
68580
- recStack[schema.name] = false;
68764
+ recStack[schema.schemaKey.name] = false;
68581
68765
  return cycleFound;
68582
68766
  }
68583
- populateGraph(schema) {
68584
- if (this._schemas.includes(schema))
68585
- return;
68586
- this._schemas.push(schema);
68587
- for (const refSchema of schema.references) {
68588
- this.populateGraph(refSchema);
68589
- }
68767
+ /**
68768
+ * Generates a SchemaGraph for the input schema using the context to find info on referenced schemas. Use the generateGraphSync if you have the fully loaded Schema.
68769
+ * @param schema The SchemaInfo to build the graph from
68770
+ * @param context The SchemaContext used to locate info on the referenced schemas
68771
+ * @returns A SchemaGraph that can be used to detect schema cycles
68772
+ */
68773
+ static async generateGraph(schema, context) {
68774
+ const graph = new SchemaGraph();
68775
+ const genGraph = async (s) => {
68776
+ if (graph.find(s.schemaKey))
68777
+ return;
68778
+ graph._schemas.push(s);
68779
+ for (const refSchema of s.references) {
68780
+ if (!graph.find(refSchema.schemaKey)) {
68781
+ const refInfo = await context.getSchemaInfo(refSchema.schemaKey, ECObjects_1.SchemaMatchType.LatestWriteCompatible);
68782
+ if (undefined === refInfo) {
68783
+ throw new Exception_1.ECObjectsError(Exception_1.ECObjectsStatus.UnableToLocateSchema, `Could not locate the referenced schema, ${refSchema.schemaKey.name}.${refSchema.schemaKey.version.toString()}, of ${s.schemaKey.name} when populating the graph for ${schema.schemaKey.name}`);
68784
+ }
68785
+ await genGraph(refInfo);
68786
+ }
68787
+ }
68788
+ };
68789
+ await genGraph(schema);
68790
+ return graph;
68791
+ }
68792
+ /**
68793
+ * Generates a SchemaGraph for the input schema. Use the generateGraph if you just have schema info.
68794
+ * @param schema The Schema to build the graph from.
68795
+ * @returns A SchemaGraph that can be used to detect schema cycles
68796
+ */
68797
+ static generateGraphSync(schema) {
68798
+ const graph = new SchemaGraph();
68799
+ const genGraph = (s) => {
68800
+ if (graph.find(s.schemaKey))
68801
+ return;
68802
+ graph._schemas.push(s);
68803
+ for (const refSchema of s.references) {
68804
+ if (!graph.find(refSchema.schemaKey))
68805
+ genGraph(refSchema);
68806
+ }
68807
+ };
68808
+ genGraph(schema);
68809
+ return graph;
68590
68810
  }
68591
68811
  }
68592
68812
  exports.SchemaGraph = SchemaGraph;
@@ -68690,10 +68910,21 @@ class ECSchemaRpcLocater {
68690
68910
  * @param context The SchemaContext that will control the lifetime of the schema and holds the schema's references, if they exist.
68691
68911
  */
68692
68912
  async getSchema(schemaKey, matchType, context) {
68913
+ await this.getSchemaInfo(schemaKey, matchType, context);
68914
+ const schema = await context.getCachedSchema(schemaKey, matchType);
68915
+ return schema;
68916
+ }
68917
+ /**
68918
+ * Gets the schema info which matches the provided SchemaKey. The schema info may be returned before the schema is fully loaded.
68919
+ * The fully loaded schema can be accessed via the schema context using the getCachedSchema method.
68920
+ * @param schemaKey The SchemaKey describing the schema to get from the cache.
68921
+ * @param matchType The match type to use when locating the schema
68922
+ */
68923
+ async getSchemaInfo(schemaKey, matchType, context) {
68693
68924
  const schemaJson = await ECSchemaRpcInterface_1.ECSchemaRpcInterface.getClient().getSchemaJSON(this.token, schemaKey.name);
68694
- const schema = await ecschema_metadata_1.Schema.fromJson(schemaJson, context || new ecschema_metadata_1.SchemaContext());
68695
- if (schema !== undefined && schema.schemaKey.matches(schemaKey, matchType)) {
68696
- return schema;
68925
+ const schemaInfo = await ecschema_metadata_1.Schema.startLoadingFromJson(schemaJson, context || new ecschema_metadata_1.SchemaContext());
68926
+ if (schemaInfo !== undefined && schemaInfo.schemaKey.matches(schemaKey, matchType)) {
68927
+ return schemaInfo;
68697
68928
  }
68698
68929
  return undefined;
68699
68930
  }
@@ -79341,9 +79572,7 @@ class IModelApp {
79341
79572
  static get applicationVersion() { return this._applicationVersion; }
79342
79573
  /** True after [[startup]] has been called, until [[shutdown]] is called. */
79343
79574
  static get initialized() { return this._initialized; }
79344
- /** Provides access to the IModelHub implementation for this IModelApp.
79345
- * @internal
79346
- */
79575
+ /** Provides access to IModelHub services. */
79347
79576
  static get hubAccess() { return this._hubAccess; }
79348
79577
  /** Provides access to the RealityData service implementation for this IModelApp
79349
79578
  * @beta
@@ -95206,65 +95435,6 @@ class ExtensionHost {
95206
95435
  }
95207
95436
 
95208
95437
 
95209
- /***/ }),
95210
-
95211
- /***/ "../../core/frontend/lib/esm/extension/ExtensionImpl.js":
95212
- /*!**************************************************************!*\
95213
- !*** ../../core/frontend/lib/esm/extension/ExtensionImpl.js ***!
95214
- \**************************************************************/
95215
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
95216
-
95217
- "use strict";
95218
- __webpack_require__.r(__webpack_exports__);
95219
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
95220
- /* harmony export */ "ExtensionImpl": () => (/* binding */ ExtensionImpl),
95221
- /* harmony export */ "ToolProvider": () => (/* binding */ ToolProvider)
95222
- /* harmony export */ });
95223
- /* harmony import */ var _IModelApp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../IModelApp */ "../../core/frontend/lib/esm/IModelApp.js");
95224
- /* harmony import */ var _itwin_appui_abstract__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @itwin/appui-abstract */ "../../ui/appui-abstract/lib/esm/appui-abstract.js");
95225
- /*---------------------------------------------------------------------------------------------
95226
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
95227
- * See LICENSE.md in the project root for license terms and full copyright notice.
95228
- *--------------------------------------------------------------------------------------------*/
95229
- /** @packageDocumentation
95230
- * @module Extensions
95231
- */
95232
-
95233
-
95234
- /** @alpha */
95235
- class ToolProvider {
95236
- constructor(tool) {
95237
- this._toolId = "";
95238
- this.id = `ToolProvider:${tool.toolId}`;
95239
- this._toolId = tool.toolId;
95240
- this._toolIcon = tool.iconSpec;
95241
- this._toolLabel = tool.description;
95242
- }
95243
- provideToolbarButtonItems(_stageId, stageUsage, toolbarUsage, toolbarOrientation) {
95244
- const toolbarItem = _itwin_appui_abstract__WEBPACK_IMPORTED_MODULE_1__.ToolbarItemUtilities.createActionButton(this._toolId, 0, this._toolIcon, this._toolLabel, async () => {
95245
- await _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.tools.run(this._toolId);
95246
- });
95247
- return stageUsage === _itwin_appui_abstract__WEBPACK_IMPORTED_MODULE_1__.StageUsage.General && toolbarUsage === _itwin_appui_abstract__WEBPACK_IMPORTED_MODULE_1__.ToolbarUsage.ContentManipulation && toolbarOrientation === _itwin_appui_abstract__WEBPACK_IMPORTED_MODULE_1__.ToolbarOrientation.Vertical ? [toolbarItem] : []; // eslint-disable-line deprecation/deprecation
95248
- }
95249
- }
95250
- /** @alpha */
95251
- class ExtensionImpl {
95252
- constructor(_id) {
95253
- this._id = _id;
95254
- }
95255
- async registerTool(tool, onRegistered) {
95256
- try {
95257
- _IModelApp__WEBPACK_IMPORTED_MODULE_0__.IModelApp.tools.register(tool);
95258
- _itwin_appui_abstract__WEBPACK_IMPORTED_MODULE_1__.UiItemsManager.register(new ToolProvider(tool)); // eslint-disable-line deprecation/deprecation
95259
- onRegistered?.();
95260
- }
95261
- catch (e) {
95262
- console.log(`Error registering tool: ${e}`); // eslint-disable-line
95263
- }
95264
- }
95265
- }
95266
-
95267
-
95268
95438
  /***/ }),
95269
95439
 
95270
95440
  /***/ "../../core/frontend/lib/esm/extension/ExtensionRuntime.js":
@@ -95275,10 +95445,9 @@ class ExtensionImpl {
95275
95445
 
95276
95446
  "use strict";
95277
95447
  __webpack_require__.r(__webpack_exports__);
95278
- /* harmony import */ var _ExtensionImpl__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ExtensionImpl */ "../../core/frontend/lib/esm/extension/ExtensionImpl.js");
95279
- /* harmony import */ var _ExtensionHost__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./ExtensionHost */ "../../core/frontend/lib/esm/extension/ExtensionHost.js");
95280
- /* harmony import */ var _core_frontend__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core-frontend */ "../../core/frontend/lib/esm/core-frontend.js");
95281
- /* harmony import */ var _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
95448
+ /* harmony import */ var _ExtensionHost__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ExtensionHost */ "../../core/frontend/lib/esm/extension/ExtensionHost.js");
95449
+ /* harmony import */ var _core_frontend__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core-frontend */ "../../core/frontend/lib/esm/core-frontend.js");
95450
+ /* harmony import */ var _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
95282
95451
  /*---------------------------------------------------------------------------------------------
95283
95452
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
95284
95453
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -95290,7 +95459,6 @@ __webpack_require__.r(__webpack_exports__);
95290
95459
  /* eslint-disable @itwin/no-internal-barrel-imports */
95291
95460
  /* eslint-disable sort-imports */
95292
95461
 
95293
-
95294
95462
  const globalSymbol = Symbol.for("itwin.core.frontend.globals");
95295
95463
  if (globalThis[globalSymbol])
95296
95464
  throw new Error("Multiple @itwin/core-frontend imports detected!");
@@ -95298,265 +95466,264 @@ if (globalThis[globalSymbol])
95298
95466
 
95299
95467
 
95300
95468
  const extensionExports = {
95301
- ACSDisplayOptions: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ACSDisplayOptions,
95302
- ACSType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ACSType,
95303
- AccuDrawHintBuilder: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.AccuDrawHintBuilder,
95304
- AccuSnap: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.AccuSnap,
95305
- ActivityMessageDetails: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ActivityMessageDetails,
95306
- ActivityMessageEndReason: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ActivityMessageEndReason,
95307
- AuxCoordSystem2dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.AuxCoordSystem2dState,
95308
- AuxCoordSystem3dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.AuxCoordSystem3dState,
95309
- AuxCoordSystemSpatialState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.AuxCoordSystemSpatialState,
95310
- AuxCoordSystemState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.AuxCoordSystemState,
95311
- BackgroundFill: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.BackgroundFill,
95312
- BackgroundMapType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.BackgroundMapType,
95313
- BatchType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.BatchType,
95314
- BeButton: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.BeButton,
95315
- BeButtonEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.BeButtonEvent,
95316
- BeButtonState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.BeButtonState,
95317
- BeModifierKeys: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.BeModifierKeys,
95318
- BeTouchEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.BeTouchEvent,
95319
- BeWheelEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.BeWheelEvent,
95320
- BingElevationProvider: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.BingElevationProvider,
95321
- BingLocationProvider: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.BingLocationProvider,
95322
- BisCodeSpec: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.BisCodeSpec,
95323
- BriefcaseIdValue: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.BriefcaseIdValue,
95324
- CategorySelectorState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.CategorySelectorState,
95325
- ChangeFlags: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ChangeFlags,
95326
- ChangeOpCode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.ChangeOpCode,
95327
- ChangedValueState: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.ChangedValueState,
95328
- ChangesetType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.ChangesetType,
95329
- ClipEventType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ClipEventType,
95330
- Cluster: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.Cluster,
95331
- ColorByName: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.ColorByName,
95332
- ColorDef: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.ColorDef,
95333
- CommonLoggerCategory: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.CommonLoggerCategory,
95334
- ContextRealityModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ContextRealityModelState,
95335
- ContextRotationId: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ContextRotationId,
95336
- CoordSource: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.CoordSource,
95337
- CoordSystem: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.CoordSystem,
95338
- CoordinateLockOverrides: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.CoordinateLockOverrides,
95339
- DecorateContext: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.DecorateContext,
95340
- Decorations: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.Decorations,
95341
- DisclosedTileTreeSet: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.DisclosedTileTreeSet,
95342
- DisplayStyle2dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.DisplayStyle2dState,
95343
- DisplayStyle3dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.DisplayStyle3dState,
95344
- DisplayStyleState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.DisplayStyleState,
95345
- DrawingModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.DrawingModelState,
95346
- DrawingViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.DrawingViewState,
95347
- ECSqlSystemProperty: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.ECSqlSystemProperty,
95348
- ECSqlValueType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.ECSqlValueType,
95349
- EditManipulator: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.EditManipulator,
95350
- ElementGeometryOpcode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.ElementGeometryOpcode,
95351
- ElementLocateManager: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ElementLocateManager,
95352
- ElementPicker: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ElementPicker,
95353
- ElementState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ElementState,
95354
- EmphasizeElements: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.EmphasizeElements,
95355
- EntityState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.EntityState,
95356
- EventController: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.EventController,
95357
- EventHandled: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.EventHandled,
95358
- FeatureOverrideType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.FeatureOverrideType,
95359
- FeatureSymbology: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.FeatureSymbology,
95360
- FillDisplay: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.FillDisplay,
95361
- FillFlags: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.FillFlags,
95362
- FlashMode: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.FlashMode,
95363
- FlashSettings: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.FlashSettings,
95364
- FontType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.FontType,
95365
- FrontendLoggerCategory: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.FrontendLoggerCategory,
95366
- FrustumAnimator: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.FrustumAnimator,
95367
- FrustumPlanes: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.FrustumPlanes,
95368
- GeoCoordStatus: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.GeoCoordStatus,
95369
- GeometricModel2dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.GeometricModel2dState,
95370
- GeometricModel3dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.GeometricModel3dState,
95371
- GeometricModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.GeometricModelState,
95372
- GeometryClass: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.GeometryClass,
95373
- GeometryStreamFlags: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.GeometryStreamFlags,
95374
- GeometrySummaryVerbosity: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.GeometrySummaryVerbosity,
95375
- GlobeAnimator: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.GlobeAnimator,
95376
- GlobeMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.GlobeMode,
95377
- GraphicBranch: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.GraphicBranch,
95378
- GraphicBuilder: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.GraphicBuilder,
95379
- GraphicType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.GraphicType,
95380
- GridOrientationType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.GridOrientationType,
95381
- HSVConstants: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.HSVConstants,
95382
- HiliteSet: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.HiliteSet,
95383
- HitDetail: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.HitDetail,
95384
- HitDetailType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.HitDetailType,
95385
- HitGeomType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.HitGeomType,
95386
- HitList: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.HitList,
95387
- HitParentGeomType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.HitParentGeomType,
95388
- HitPriority: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.HitPriority,
95389
- HitSource: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.HitSource,
95390
- IModelConnection: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.IModelConnection,
95391
- IconSprites: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.IconSprites,
95392
- ImageBufferFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.ImageBufferFormat,
95393
- ImageSourceFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.ImageSourceFormat,
95394
- InputCollector: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.InputCollector,
95395
- InputSource: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.InputSource,
95396
- InteractiveTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.InteractiveTool,
95397
- IntersectDetail: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.IntersectDetail,
95398
- KeyinParseError: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.KeyinParseError,
95399
- LinePixels: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.LinePixels,
95400
- LocateAction: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.LocateAction,
95401
- LocateFilterStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.LocateFilterStatus,
95402
- LocateOptions: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.LocateOptions,
95403
- LocateResponse: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.LocateResponse,
95404
- ManipulatorToolEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ManipulatorToolEvent,
95405
- MarginPercent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.MarginPercent,
95406
- Marker: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.Marker,
95407
- MarkerSet: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.MarkerSet,
95408
- MassPropertiesOperation: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.MassPropertiesOperation,
95409
- MessageBoxIconType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.MessageBoxIconType,
95410
- MessageBoxType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.MessageBoxType,
95411
- MessageBoxValue: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.MessageBoxValue,
95412
- ModelSelectorState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ModelSelectorState,
95413
- ModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ModelState,
95414
- MonochromeMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.MonochromeMode,
95415
- NotificationHandler: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.NotificationHandler,
95416
- NotificationManager: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.NotificationManager,
95417
- NotifyMessageDetails: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.NotifyMessageDetails,
95418
- Npc: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.Npc,
95419
- OffScreenViewport: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.OffScreenViewport,
95420
- OrthographicViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.OrthographicViewState,
95421
- OutputMessageAlert: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.OutputMessageAlert,
95422
- OutputMessagePriority: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.OutputMessagePriority,
95423
- OutputMessageType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.OutputMessageType,
95424
- ParseAndRunResult: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ParseAndRunResult,
95425
- PerModelCategoryVisibility: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.PerModelCategoryVisibility,
95426
- PhysicalModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.PhysicalModelState,
95427
- Pixel: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.Pixel,
95428
- PlanarClipMaskMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.PlanarClipMaskMode,
95429
- PlanarClipMaskPriority: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.PlanarClipMaskPriority,
95430
- PrimitiveTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.PrimitiveTool,
95431
- QParams2d: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.QParams2d,
95432
- QParams3d: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.QParams3d,
95433
- QPoint2d: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.QPoint2d,
95434
- QPoint2dBuffer: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.QPoint2dBuffer,
95435
- QPoint2dBufferBuilder: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.QPoint2dBufferBuilder,
95436
- QPoint2dList: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.QPoint2dList,
95437
- QPoint3d: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.QPoint3d,
95438
- QPoint3dBuffer: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.QPoint3dBuffer,
95439
- QPoint3dBufferBuilder: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.QPoint3dBufferBuilder,
95440
- QPoint3dList: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.QPoint3dList,
95441
- Quantization: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.Quantization,
95442
- QueryRowFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.QueryRowFormat,
95443
- Rank: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.Rank,
95444
- RenderClipVolume: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.RenderClipVolume,
95445
- RenderContext: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.RenderContext,
95446
- RenderGraphic: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.RenderGraphic,
95447
- RenderGraphicOwner: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.RenderGraphicOwner,
95448
- RenderMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.RenderMode,
95449
- RenderSystem: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.RenderSystem,
95450
- Scene: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.Scene,
95451
- ScreenViewport: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ScreenViewport,
95452
- SectionDrawingModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SectionDrawingModelState,
95453
- SectionType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.SectionType,
95454
- SelectionMethod: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SelectionMethod,
95455
- SelectionMode: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SelectionMode,
95456
- SelectionProcessing: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SelectionProcessing,
95457
- SelectionSet: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SelectionSet,
95458
- SelectionSetEventType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SelectionSetEventType,
95459
- SheetModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SheetModelState,
95460
- SheetViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SheetViewState,
95461
- SkyBoxImageType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.SkyBoxImageType,
95462
- SnapDetail: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SnapDetail,
95463
- SnapHeat: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SnapHeat,
95464
- SnapMode: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SnapMode,
95465
- SnapStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SnapStatus,
95466
- SpatialClassifierInsideDisplay: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.SpatialClassifierInsideDisplay,
95467
- SpatialClassifierOutsideDisplay: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.SpatialClassifierOutsideDisplay,
95468
- SpatialLocationModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SpatialLocationModelState,
95469
- SpatialModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SpatialModelState,
95470
- SpatialViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SpatialViewState,
95471
- Sprite: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.Sprite,
95472
- SpriteLocation: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.SpriteLocation,
95473
- StandardViewId: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.StandardViewId,
95474
- StartOrResume: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.StartOrResume,
95475
- SyncMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.SyncMode,
95476
- TentativePoint: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TentativePoint,
95477
- TerrainHeightOriginMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.TerrainHeightOriginMode,
95478
- TextureMapUnits: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.TextureMapUnits,
95479
- ThematicDisplayMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.ThematicDisplayMode,
95480
- ThematicGradientColorScheme: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.ThematicGradientColorScheme,
95481
- ThematicGradientMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.ThematicGradientMode,
95482
- Tile: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.Tile,
95483
- TileAdmin: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileAdmin,
95484
- TileBoundingBoxes: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileBoundingBoxes,
95485
- TileDrawArgs: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileDrawArgs,
95486
- TileGraphicType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileGraphicType,
95487
- TileLoadPriority: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileLoadPriority,
95488
- TileLoadStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileLoadStatus,
95489
- TileRequest: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileRequest,
95490
- TileRequestChannel: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileRequestChannel,
95491
- TileRequestChannelStatistics: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileRequestChannelStatistics,
95492
- TileRequestChannels: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileRequestChannels,
95493
- TileTree: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileTree,
95494
- TileTreeLoadStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileTreeLoadStatus,
95495
- TileTreeReference: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileTreeReference,
95496
- TileUsageMarker: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileUsageMarker,
95497
- TileVisibility: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TileVisibility,
95498
- Tiles: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.Tiles,
95499
- Tool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.Tool,
95500
- ToolAdmin: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ToolAdmin,
95501
- ToolAssistance: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ToolAssistance,
95502
- ToolAssistanceImage: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ToolAssistanceImage,
95503
- ToolAssistanceInputMethod: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ToolAssistanceInputMethod,
95504
- ToolSettings: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ToolSettings,
95505
- TwoWayViewportFrustumSync: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TwoWayViewportFrustumSync,
95506
- TwoWayViewportSync: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.TwoWayViewportSync,
95507
- TxnAction: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.TxnAction,
95508
- TypeOfChange: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.TypeOfChange,
95509
- UniformType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.UniformType,
95510
- VaryingType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.VaryingType,
95511
- ViewClipClearTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewClipClearTool,
95512
- ViewClipDecoration: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewClipDecoration,
95513
- ViewClipDecorationProvider: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewClipDecorationProvider,
95514
- ViewClipTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewClipTool,
95515
- ViewCreator2d: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewCreator2d,
95516
- ViewCreator3d: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewCreator3d,
95517
- ViewManager: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewManager,
95518
- ViewManip: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewManip,
95519
- ViewPose: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewPose,
95520
- ViewPose2d: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewPose2d,
95521
- ViewPose3d: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewPose3d,
95522
- ViewRect: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewRect,
95523
- ViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewState,
95524
- ViewState2d: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewState2d,
95525
- ViewState3d: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewState3d,
95526
- ViewStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewStatus,
95527
- ViewTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewTool,
95528
- ViewingSpace: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.ViewingSpace,
95529
- Viewport: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.Viewport,
95530
- canvasToImageBuffer: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.canvasToImageBuffer,
95531
- canvasToResizedCanvasWithBars: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.canvasToResizedCanvasWithBars,
95532
- connectViewportFrusta: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.connectViewportFrusta,
95533
- connectViewportViews: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.connectViewportViews,
95534
- connectViewports: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.connectViewports,
95535
- extractImageSourceDimensions: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.extractImageSourceDimensions,
95536
- getCompressedJpegFromCanvas: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.getCompressedJpegFromCanvas,
95537
- getImageSourceFormatForMimeType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.getImageSourceFormatForMimeType,
95538
- getImageSourceMimeType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.getImageSourceMimeType,
95539
- imageBufferToBase64EncodedPng: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.imageBufferToBase64EncodedPng,
95540
- imageBufferToCanvas: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.imageBufferToCanvas,
95541
- imageBufferToPngDataUrl: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.imageBufferToPngDataUrl,
95542
- imageElementFromImageSource: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.imageElementFromImageSource,
95543
- imageElementFromUrl: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.imageElementFromUrl,
95544
- queryTerrainElevationOffset: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.queryTerrainElevationOffset,
95545
- readElementGraphics: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.readElementGraphics,
95546
- readGltfGraphics: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.readGltfGraphics,
95547
- synchronizeViewportFrusta: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.synchronizeViewportFrusta,
95548
- synchronizeViewportViews: _core_frontend__WEBPACK_IMPORTED_MODULE_2__.synchronizeViewportViews,
95469
+ ACSDisplayOptions: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ACSDisplayOptions,
95470
+ ACSType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ACSType,
95471
+ AccuDrawHintBuilder: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.AccuDrawHintBuilder,
95472
+ AccuSnap: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.AccuSnap,
95473
+ ActivityMessageDetails: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ActivityMessageDetails,
95474
+ ActivityMessageEndReason: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ActivityMessageEndReason,
95475
+ AuxCoordSystem2dState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.AuxCoordSystem2dState,
95476
+ AuxCoordSystem3dState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.AuxCoordSystem3dState,
95477
+ AuxCoordSystemSpatialState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.AuxCoordSystemSpatialState,
95478
+ AuxCoordSystemState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.AuxCoordSystemState,
95479
+ BackgroundFill: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.BackgroundFill,
95480
+ BackgroundMapType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.BackgroundMapType,
95481
+ BatchType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.BatchType,
95482
+ BeButton: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.BeButton,
95483
+ BeButtonEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.BeButtonEvent,
95484
+ BeButtonState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.BeButtonState,
95485
+ BeModifierKeys: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.BeModifierKeys,
95486
+ BeTouchEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.BeTouchEvent,
95487
+ BeWheelEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.BeWheelEvent,
95488
+ BingElevationProvider: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.BingElevationProvider,
95489
+ BingLocationProvider: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.BingLocationProvider,
95490
+ BisCodeSpec: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.BisCodeSpec,
95491
+ BriefcaseIdValue: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.BriefcaseIdValue,
95492
+ CategorySelectorState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.CategorySelectorState,
95493
+ ChangeFlags: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ChangeFlags,
95494
+ ChangeOpCode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.ChangeOpCode,
95495
+ ChangedValueState: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.ChangedValueState,
95496
+ ChangesetType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.ChangesetType,
95497
+ ClipEventType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ClipEventType,
95498
+ Cluster: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.Cluster,
95499
+ ColorByName: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.ColorByName,
95500
+ ColorDef: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.ColorDef,
95501
+ CommonLoggerCategory: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.CommonLoggerCategory,
95502
+ ContextRealityModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ContextRealityModelState,
95503
+ ContextRotationId: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ContextRotationId,
95504
+ CoordSource: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.CoordSource,
95505
+ CoordSystem: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.CoordSystem,
95506
+ CoordinateLockOverrides: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.CoordinateLockOverrides,
95507
+ DecorateContext: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.DecorateContext,
95508
+ Decorations: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.Decorations,
95509
+ DisclosedTileTreeSet: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.DisclosedTileTreeSet,
95510
+ DisplayStyle2dState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.DisplayStyle2dState,
95511
+ DisplayStyle3dState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.DisplayStyle3dState,
95512
+ DisplayStyleState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.DisplayStyleState,
95513
+ DrawingModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.DrawingModelState,
95514
+ DrawingViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.DrawingViewState,
95515
+ ECSqlSystemProperty: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.ECSqlSystemProperty,
95516
+ ECSqlValueType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.ECSqlValueType,
95517
+ EditManipulator: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.EditManipulator,
95518
+ ElementGeometryOpcode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.ElementGeometryOpcode,
95519
+ ElementLocateManager: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ElementLocateManager,
95520
+ ElementPicker: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ElementPicker,
95521
+ ElementState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ElementState,
95522
+ EmphasizeElements: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.EmphasizeElements,
95523
+ EntityState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.EntityState,
95524
+ EventController: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.EventController,
95525
+ EventHandled: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.EventHandled,
95526
+ FeatureOverrideType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.FeatureOverrideType,
95527
+ FeatureSymbology: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.FeatureSymbology,
95528
+ FillDisplay: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.FillDisplay,
95529
+ FillFlags: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.FillFlags,
95530
+ FlashMode: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.FlashMode,
95531
+ FlashSettings: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.FlashSettings,
95532
+ FontType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.FontType,
95533
+ FrontendLoggerCategory: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.FrontendLoggerCategory,
95534
+ FrustumAnimator: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.FrustumAnimator,
95535
+ FrustumPlanes: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.FrustumPlanes,
95536
+ GeoCoordStatus: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.GeoCoordStatus,
95537
+ GeometricModel2dState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.GeometricModel2dState,
95538
+ GeometricModel3dState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.GeometricModel3dState,
95539
+ GeometricModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.GeometricModelState,
95540
+ GeometryClass: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.GeometryClass,
95541
+ GeometryStreamFlags: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.GeometryStreamFlags,
95542
+ GeometrySummaryVerbosity: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.GeometrySummaryVerbosity,
95543
+ GlobeAnimator: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.GlobeAnimator,
95544
+ GlobeMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.GlobeMode,
95545
+ GraphicBranch: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.GraphicBranch,
95546
+ GraphicBuilder: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.GraphicBuilder,
95547
+ GraphicType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.GraphicType,
95548
+ GridOrientationType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.GridOrientationType,
95549
+ HSVConstants: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.HSVConstants,
95550
+ HiliteSet: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.HiliteSet,
95551
+ HitDetail: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.HitDetail,
95552
+ HitDetailType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.HitDetailType,
95553
+ HitGeomType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.HitGeomType,
95554
+ HitList: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.HitList,
95555
+ HitParentGeomType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.HitParentGeomType,
95556
+ HitPriority: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.HitPriority,
95557
+ HitSource: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.HitSource,
95558
+ IModelConnection: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.IModelConnection,
95559
+ IconSprites: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.IconSprites,
95560
+ ImageBufferFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.ImageBufferFormat,
95561
+ ImageSourceFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.ImageSourceFormat,
95562
+ InputCollector: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.InputCollector,
95563
+ InputSource: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.InputSource,
95564
+ InteractiveTool: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.InteractiveTool,
95565
+ IntersectDetail: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.IntersectDetail,
95566
+ KeyinParseError: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.KeyinParseError,
95567
+ LinePixels: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.LinePixels,
95568
+ LocateAction: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.LocateAction,
95569
+ LocateFilterStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.LocateFilterStatus,
95570
+ LocateOptions: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.LocateOptions,
95571
+ LocateResponse: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.LocateResponse,
95572
+ ManipulatorToolEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ManipulatorToolEvent,
95573
+ MarginPercent: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.MarginPercent,
95574
+ Marker: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.Marker,
95575
+ MarkerSet: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.MarkerSet,
95576
+ MassPropertiesOperation: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.MassPropertiesOperation,
95577
+ MessageBoxIconType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.MessageBoxIconType,
95578
+ MessageBoxType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.MessageBoxType,
95579
+ MessageBoxValue: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.MessageBoxValue,
95580
+ ModelSelectorState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ModelSelectorState,
95581
+ ModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ModelState,
95582
+ MonochromeMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.MonochromeMode,
95583
+ NotificationHandler: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.NotificationHandler,
95584
+ NotificationManager: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.NotificationManager,
95585
+ NotifyMessageDetails: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.NotifyMessageDetails,
95586
+ Npc: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.Npc,
95587
+ OffScreenViewport: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.OffScreenViewport,
95588
+ OrthographicViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.OrthographicViewState,
95589
+ OutputMessageAlert: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.OutputMessageAlert,
95590
+ OutputMessagePriority: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.OutputMessagePriority,
95591
+ OutputMessageType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.OutputMessageType,
95592
+ ParseAndRunResult: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ParseAndRunResult,
95593
+ PerModelCategoryVisibility: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.PerModelCategoryVisibility,
95594
+ PhysicalModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.PhysicalModelState,
95595
+ Pixel: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.Pixel,
95596
+ PlanarClipMaskMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.PlanarClipMaskMode,
95597
+ PlanarClipMaskPriority: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.PlanarClipMaskPriority,
95598
+ PrimitiveTool: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.PrimitiveTool,
95599
+ QParams2d: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.QParams2d,
95600
+ QParams3d: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.QParams3d,
95601
+ QPoint2d: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.QPoint2d,
95602
+ QPoint2dBuffer: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.QPoint2dBuffer,
95603
+ QPoint2dBufferBuilder: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.QPoint2dBufferBuilder,
95604
+ QPoint2dList: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.QPoint2dList,
95605
+ QPoint3d: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.QPoint3d,
95606
+ QPoint3dBuffer: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.QPoint3dBuffer,
95607
+ QPoint3dBufferBuilder: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.QPoint3dBufferBuilder,
95608
+ QPoint3dList: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.QPoint3dList,
95609
+ Quantization: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.Quantization,
95610
+ QueryRowFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.QueryRowFormat,
95611
+ Rank: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.Rank,
95612
+ RenderClipVolume: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.RenderClipVolume,
95613
+ RenderContext: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.RenderContext,
95614
+ RenderGraphic: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.RenderGraphic,
95615
+ RenderGraphicOwner: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.RenderGraphicOwner,
95616
+ RenderMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.RenderMode,
95617
+ RenderSystem: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.RenderSystem,
95618
+ Scene: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.Scene,
95619
+ ScreenViewport: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ScreenViewport,
95620
+ SectionDrawingModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SectionDrawingModelState,
95621
+ SectionType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.SectionType,
95622
+ SelectionMethod: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SelectionMethod,
95623
+ SelectionMode: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SelectionMode,
95624
+ SelectionProcessing: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SelectionProcessing,
95625
+ SelectionSet: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SelectionSet,
95626
+ SelectionSetEventType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SelectionSetEventType,
95627
+ SheetModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SheetModelState,
95628
+ SheetViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SheetViewState,
95629
+ SkyBoxImageType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.SkyBoxImageType,
95630
+ SnapDetail: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SnapDetail,
95631
+ SnapHeat: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SnapHeat,
95632
+ SnapMode: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SnapMode,
95633
+ SnapStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SnapStatus,
95634
+ SpatialClassifierInsideDisplay: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.SpatialClassifierInsideDisplay,
95635
+ SpatialClassifierOutsideDisplay: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.SpatialClassifierOutsideDisplay,
95636
+ SpatialLocationModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SpatialLocationModelState,
95637
+ SpatialModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SpatialModelState,
95638
+ SpatialViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SpatialViewState,
95639
+ Sprite: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.Sprite,
95640
+ SpriteLocation: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.SpriteLocation,
95641
+ StandardViewId: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.StandardViewId,
95642
+ StartOrResume: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.StartOrResume,
95643
+ SyncMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.SyncMode,
95644
+ TentativePoint: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TentativePoint,
95645
+ TerrainHeightOriginMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.TerrainHeightOriginMode,
95646
+ TextureMapUnits: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.TextureMapUnits,
95647
+ ThematicDisplayMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.ThematicDisplayMode,
95648
+ ThematicGradientColorScheme: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.ThematicGradientColorScheme,
95649
+ ThematicGradientMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.ThematicGradientMode,
95650
+ Tile: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.Tile,
95651
+ TileAdmin: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileAdmin,
95652
+ TileBoundingBoxes: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileBoundingBoxes,
95653
+ TileDrawArgs: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileDrawArgs,
95654
+ TileGraphicType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileGraphicType,
95655
+ TileLoadPriority: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileLoadPriority,
95656
+ TileLoadStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileLoadStatus,
95657
+ TileRequest: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileRequest,
95658
+ TileRequestChannel: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileRequestChannel,
95659
+ TileRequestChannelStatistics: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileRequestChannelStatistics,
95660
+ TileRequestChannels: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileRequestChannels,
95661
+ TileTree: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileTree,
95662
+ TileTreeLoadStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileTreeLoadStatus,
95663
+ TileTreeReference: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileTreeReference,
95664
+ TileUsageMarker: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileUsageMarker,
95665
+ TileVisibility: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TileVisibility,
95666
+ Tiles: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.Tiles,
95667
+ Tool: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.Tool,
95668
+ ToolAdmin: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ToolAdmin,
95669
+ ToolAssistance: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ToolAssistance,
95670
+ ToolAssistanceImage: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ToolAssistanceImage,
95671
+ ToolAssistanceInputMethod: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ToolAssistanceInputMethod,
95672
+ ToolSettings: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ToolSettings,
95673
+ TwoWayViewportFrustumSync: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TwoWayViewportFrustumSync,
95674
+ TwoWayViewportSync: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.TwoWayViewportSync,
95675
+ TxnAction: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.TxnAction,
95676
+ TypeOfChange: _itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.TypeOfChange,
95677
+ UniformType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.UniformType,
95678
+ VaryingType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.VaryingType,
95679
+ ViewClipClearTool: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewClipClearTool,
95680
+ ViewClipDecoration: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewClipDecoration,
95681
+ ViewClipDecorationProvider: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewClipDecorationProvider,
95682
+ ViewClipTool: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewClipTool,
95683
+ ViewCreator2d: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewCreator2d,
95684
+ ViewCreator3d: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewCreator3d,
95685
+ ViewManager: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewManager,
95686
+ ViewManip: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewManip,
95687
+ ViewPose: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewPose,
95688
+ ViewPose2d: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewPose2d,
95689
+ ViewPose3d: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewPose3d,
95690
+ ViewRect: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewRect,
95691
+ ViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewState,
95692
+ ViewState2d: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewState2d,
95693
+ ViewState3d: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewState3d,
95694
+ ViewStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewStatus,
95695
+ ViewTool: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewTool,
95696
+ ViewingSpace: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.ViewingSpace,
95697
+ Viewport: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.Viewport,
95698
+ canvasToImageBuffer: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.canvasToImageBuffer,
95699
+ canvasToResizedCanvasWithBars: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.canvasToResizedCanvasWithBars,
95700
+ connectViewportFrusta: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.connectViewportFrusta,
95701
+ connectViewportViews: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.connectViewportViews,
95702
+ connectViewports: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.connectViewports,
95703
+ extractImageSourceDimensions: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.extractImageSourceDimensions,
95704
+ getCompressedJpegFromCanvas: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.getCompressedJpegFromCanvas,
95705
+ getImageSourceFormatForMimeType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.getImageSourceFormatForMimeType,
95706
+ getImageSourceMimeType: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.getImageSourceMimeType,
95707
+ imageBufferToBase64EncodedPng: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.imageBufferToBase64EncodedPng,
95708
+ imageBufferToCanvas: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.imageBufferToCanvas,
95709
+ imageBufferToPngDataUrl: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.imageBufferToPngDataUrl,
95710
+ imageElementFromImageSource: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.imageElementFromImageSource,
95711
+ imageElementFromUrl: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.imageElementFromUrl,
95712
+ queryTerrainElevationOffset: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.queryTerrainElevationOffset,
95713
+ readElementGraphics: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.readElementGraphics,
95714
+ readGltfGraphics: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.readGltfGraphics,
95715
+ synchronizeViewportFrusta: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.synchronizeViewportFrusta,
95716
+ synchronizeViewportViews: _core_frontend__WEBPACK_IMPORTED_MODULE_1__.synchronizeViewportViews,
95549
95717
  };
95550
95718
  // END GENERATED CODE
95551
- const getExtensionApi = (id) => {
95719
+ const getExtensionApi = (_id) => {
95552
95720
  return {
95553
95721
  exports: {
95554
95722
  // exceptions
95555
- ExtensionHost: _ExtensionHost__WEBPACK_IMPORTED_MODULE_1__.ExtensionHost,
95723
+ ExtensionHost: _ExtensionHost__WEBPACK_IMPORTED_MODULE_0__.ExtensionHost,
95556
95724
  // automated
95557
95725
  ...extensionExports,
95558
95726
  },
95559
- api: new _ExtensionImpl__WEBPACK_IMPORTED_MODULE_0__.ExtensionImpl(id),
95560
95727
  };
95561
95728
  };
95562
95729
  globalThis[globalSymbol] = {
@@ -142209,8 +142376,9 @@ class TileAdmin {
142209
142376
  // start dynamically loading default implementation and save the promise to avoid duplicate instances
142210
142377
  this._tileStoragePromise = (async () => {
142211
142378
  await __webpack_require__.e(/*! import() */ "vendors-common_temp_node_modules_pnpm_reflect-metadata_0_1_13_node_modules_reflect-metadata_R-610cb3").then(__webpack_require__.t.bind(__webpack_require__, /*! reflect-metadata */ "../../common/temp/node_modules/.pnpm/reflect-metadata@0.1.13/node_modules/reflect-metadata/Reflect.js", 23));
142379
+ const objectStorage = await Promise.all(/*! import() | object-storage-azure */[__webpack_require__.e("vendors-common_temp_node_modules_pnpm_reflect-metadata_0_1_13_node_modules_reflect-metadata_R-610cb3"), __webpack_require__.e("vendors-common_temp_node_modules_pnpm_itwin_object-storage-azure_1_6_0_node_modules_itwin_obj-0f69b1"), __webpack_require__.e("object-storage-azure")]).then(__webpack_require__.t.bind(__webpack_require__, /*! @itwin/object-storage-azure/lib/frontend */ "../../common/temp/node_modules/.pnpm/@itwin+object-storage-azure@1.6.0/node_modules/@itwin/object-storage-azure/lib/frontend/index.js", 23));
142212
142380
  // eslint-disable-next-line @typescript-eslint/naming-convention
142213
- const { AzureFrontendStorage, FrontendBlockBlobClientWrapperFactory } = await Promise.all(/*! import() | object-storage */[__webpack_require__.e("vendors-common_temp_node_modules_pnpm_reflect-metadata_0_1_13_node_modules_reflect-metadata_R-610cb3"), __webpack_require__.e("vendors-common_temp_node_modules_pnpm_itwin_object-storage-azure_1_6_0_node_modules_itwin_obj-0f69b1"), __webpack_require__.e("object-storage")]).then(__webpack_require__.t.bind(__webpack_require__, /*! @itwin/object-storage-azure/lib/frontend */ "../../common/temp/node_modules/.pnpm/@itwin+object-storage-azure@1.6.0/node_modules/@itwin/object-storage-azure/lib/frontend/index.js", 23));
142381
+ const { AzureFrontendStorage, FrontendBlockBlobClientWrapperFactory } = objectStorage.default ?? objectStorage;
142214
142382
  const azureStorage = new AzureFrontendStorage(new FrontendBlockBlobClientWrapperFactory());
142215
142383
  this._tileStorage = new _internal__WEBPACK_IMPORTED_MODULE_6__.TileStorage(azureStorage);
142216
142384
  return this._tileStorage;
@@ -149497,7 +149665,8 @@ class MapTile extends _internal__WEBPACK_IMPORTED_MODULE_7__.RealityTile {
149497
149665
  }
149498
149666
  /** @internal */
149499
149667
  minimumVisibleFactor() {
149500
- return 0.25;
149668
+ // if minimumVisibleFactor is more than 0, it stops parents from loading when children are not ready, to fill in gaps
149669
+ return 0.0;
149501
149670
  }
149502
149671
  /** @internal */
149503
149672
  getDrapeTextures() {
@@ -166781,17 +166950,20 @@ class Geometry {
166781
166950
  if (a2b2 > 0.0) {
166782
166951
  const a2b2r = 1.0 / a2b2; // 1/(a^2+b^2)
166783
166952
  const d2a2b2 = d2 * a2b2r; // d^2/(a^2+b^2)
166784
- const criteria = 1.0 - d2a2b2; // 1 - d^2/(a^2+b^2); the criteria to specify how many solutions we got
166785
- if (criteria < -Geometry.smallMetricDistanceSquared) // nSolution = 0
166953
+ const criterion = 1.0 - d2a2b2; // 1 - d^2/(a^2+b^2);
166954
+ if (criterion < -Geometry.smallMetricDistanceSquared) // nSolution = 0
166786
166955
  return result;
166787
166956
  const da2b2 = -constCoff * a2b2r; // -d/(a^2+b^2)
166957
+ // (c0,s0) is the closest approach of the line to the circle center (origin)
166788
166958
  const c0 = da2b2 * cosCoff; // -ad/(a^2+b^2)
166789
166959
  const s0 = da2b2 * sinCoff; // -bd/(a^2+b^2)
166790
- if (criteria <= 0.0) { // nSolution = 1 (observed criteria = -2.22e-16 in rotated system)
166960
+ if (criterion <= 0.0) { // nSolution = 1
166961
+ // We observed criterion = -2.22e-16 in a rotated tangent system, therefore for negative criteria near
166962
+ // zero, return the near-tangency; for tiny positive criteria, fall through to return both solutions.
166791
166963
  result = [_geometry3d_Point2dVector2d__WEBPACK_IMPORTED_MODULE_1__.Vector2d.create(c0, s0)];
166792
166964
  }
166793
- else if (criteria > 0.0) { // nSolution = 2
166794
- const s = Math.sqrt(criteria * a2b2r); // sqrt(a^2+b^2-d^2)) / (a^2+b^2)
166965
+ else { // nSolution = 2
166966
+ const s = Math.sqrt(criterion * a2b2r); // sqrt(a^2+b^2-d^2)) / (a^2+b^2)
166795
166967
  result = [
166796
166968
  _geometry3d_Point2dVector2d__WEBPACK_IMPORTED_MODULE_1__.Vector2d.create(c0 - s * sinCoff, s0 + s * cosCoff),
166797
166969
  _geometry3d_Point2dVector2d__WEBPACK_IMPORTED_MODULE_1__.Vector2d.create(c0 + s * sinCoff, s0 - s * cosCoff),
@@ -181735,12 +181907,12 @@ class CurveCurveIntersectXY extends _geometry3d_GeometryHandler__WEBPACK_IMPORTE
181735
181907
  extendB, reversed) {
181736
181908
  const inverseA = matrixA.inverse();
181737
181909
  if (inverseA) {
181738
- const localB = inverseA.multiplyMatrixMatrix(matrixB);
181910
+ const localB = inverseA.multiplyMatrixMatrix(matrixB); // localB->localA transform
181739
181911
  const ellipseRadians = [];
181740
181912
  const circleRadians = [];
181741
181913
  _numerics_Polynomials__WEBPACK_IMPORTED_MODULE_6__.TrigPolynomial.solveUnitCircleHomogeneousEllipseIntersection(localB.coffs[2], localB.coffs[5], localB.coffs[8], // center xyw
181742
- localB.coffs[0], localB.coffs[3], localB.coffs[6], // center xyw
181743
- localB.coffs[1], localB.coffs[4], localB.coffs[7], // center xyw
181914
+ localB.coffs[0], localB.coffs[3], localB.coffs[6], // vector0 xyw
181915
+ localB.coffs[1], localB.coffs[4], localB.coffs[7], // vector90 xyw
181744
181916
  ellipseRadians, circleRadians);
181745
181917
  for (let i = 0; i < ellipseRadians.length; i++) {
181746
181918
  const fractionA = cpA.sweep.radiansToSignedPeriodicFraction(circleRadians[i]);
@@ -183687,7 +183859,7 @@ function optionalVectorUpdate(source, result) {
183687
183859
  return undefined;
183688
183860
  }
183689
183861
  /**
183690
- * CurveLocationDetail carries point and paramter data about a point evaluated on a curve.
183862
+ * CurveLocationDetail carries point and parameter data about a point evaluated on a curve.
183691
183863
  * * These are returned by a variety of queries.
183692
183864
  * * Particular contents can vary among the queries.
183693
183865
  * @public
@@ -187931,13 +188103,16 @@ __webpack_require__.r(__webpack_exports__);
187931
188103
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
187932
188104
  /* harmony export */ "PlanarSubdivision": () => (/* binding */ PlanarSubdivision)
187933
188105
  /* harmony export */ });
187934
- /* harmony import */ var _Geometry__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../Geometry */ "../../core/geometry/lib/esm/Geometry.js");
187935
- /* harmony import */ var _topology_Graph__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../topology/Graph */ "../../core/geometry/lib/esm/topology/Graph.js");
187936
- /* harmony import */ var _topology_HalfEdgeGraphSearch__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../topology/HalfEdgeGraphSearch */ "../../core/geometry/lib/esm/topology/HalfEdgeGraphSearch.js");
187937
- /* harmony import */ var _topology_Merging__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../topology/Merging */ "../../core/geometry/lib/esm/topology/Merging.js");
187938
- /* harmony import */ var _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../CurveLocationDetail */ "../../core/geometry/lib/esm/curve/CurveLocationDetail.js");
187939
- /* harmony import */ var _Loop__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../Loop */ "../../core/geometry/lib/esm/curve/Loop.js");
187940
- /* harmony import */ var _RegionOps__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../RegionOps */ "../../core/geometry/lib/esm/curve/RegionOps.js");
188106
+ /* harmony import */ var _Geometry__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../Geometry */ "../../core/geometry/lib/esm/Geometry.js");
188107
+ /* harmony import */ var _topology_Graph__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../topology/Graph */ "../../core/geometry/lib/esm/topology/Graph.js");
188108
+ /* harmony import */ var _topology_HalfEdgeGraphSearch__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../topology/HalfEdgeGraphSearch */ "../../core/geometry/lib/esm/topology/HalfEdgeGraphSearch.js");
188109
+ /* harmony import */ var _topology_Merging__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../topology/Merging */ "../../core/geometry/lib/esm/topology/Merging.js");
188110
+ /* harmony import */ var _Arc3d__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Arc3d */ "../../core/geometry/lib/esm/curve/Arc3d.js");
188111
+ /* harmony import */ var _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../CurveLocationDetail */ "../../core/geometry/lib/esm/curve/CurveLocationDetail.js");
188112
+ /* harmony import */ var _LineSegment3d__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../LineSegment3d */ "../../core/geometry/lib/esm/curve/LineSegment3d.js");
188113
+ /* harmony import */ var _LineString3d__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../LineString3d */ "../../core/geometry/lib/esm/curve/LineString3d.js");
188114
+ /* harmony import */ var _Loop__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../Loop */ "../../core/geometry/lib/esm/curve/Loop.js");
188115
+ /* harmony import */ var _RegionOps__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../RegionOps */ "../../core/geometry/lib/esm/curve/RegionOps.js");
187941
188116
  /*---------------------------------------------------------------------------------------------
187942
188117
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
187943
188118
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -187949,13 +188124,16 @@ __webpack_require__.r(__webpack_exports__);
187949
188124
 
187950
188125
 
187951
188126
 
188127
+
188128
+
188129
+
187952
188130
  /** @packageDocumentation
187953
188131
  * @module Curve
187954
188132
  */
187955
188133
  class MapCurvePrimitiveToCurveLocationDetailPairArray {
187956
188134
  constructor() {
187957
188135
  this.primitiveToPair = new Map();
187958
- // index assigned to this primitive for this calculation.
188136
+ // index assigned to this primitive (for debugging)
187959
188137
  this.primitiveToIndex = new Map();
187960
188138
  this._numIndexedPrimitives = 0;
187961
188139
  }
@@ -187987,54 +188165,63 @@ class MapCurvePrimitiveToCurveLocationDetailPairArray {
187987
188165
  if (primitiveB)
187988
188166
  this.insertPrimitiveToPair(primitiveB, pair);
187989
188167
  }
188168
+ /** Split closed missing primitives in half and add new intersection pairs */
188169
+ splitAndAppendMissingClosedPrimitives(primitives, tolerance = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.smallMetricDistance) {
188170
+ for (const p of primitives) {
188171
+ let closedCurveSplitCandidate = false;
188172
+ if (p instanceof _Arc3d__WEBPACK_IMPORTED_MODULE_1__.Arc3d)
188173
+ closedCurveSplitCandidate = p.sweep.isFullCircle;
188174
+ else if (!(p instanceof _LineSegment3d__WEBPACK_IMPORTED_MODULE_2__.LineSegment3d) && !(p instanceof _LineString3d__WEBPACK_IMPORTED_MODULE_3__.LineString3d))
188175
+ closedCurveSplitCandidate = p.startPoint().isAlmostEqualXY(p.endPoint(), tolerance);
188176
+ if (closedCurveSplitCandidate && !this.primitiveToPair.has(p)) {
188177
+ const p0 = p.clonePartialCurve(0.0, 0.5);
188178
+ const p1 = p.clonePartialCurve(0.5, 1.0);
188179
+ if (p0 && p1) {
188180
+ this.insertPair(_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_4__.CurveLocationDetailPair.createCapture(_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_4__.CurveLocationDetail.createCurveEvaluatedFraction(p0, 0.0), _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_4__.CurveLocationDetail.createCurveEvaluatedFraction(p1, 1.0)));
188181
+ this.insertPair(_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_4__.CurveLocationDetailPair.createCapture(_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_4__.CurveLocationDetail.createCurveEvaluatedFraction(p0, 1.0), _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_4__.CurveLocationDetail.createCurveEvaluatedFraction(p1, 0.0)));
188182
+ }
188183
+ }
188184
+ }
188185
+ }
187990
188186
  }
187991
- /*
187992
- function getDetailString(detail: CurveLocationDetail | undefined): string {
187993
- if (!detail)
187994
- return "{}";
187995
- else return tagString("primitive", this.primitiveToIndex.get(detail.curve!)) + tagString("f0", detail.fraction) + tagString("f1", detail.fraction1);
187996
- }
187997
- }
187998
- function tagString(name: string, value: number | undefined): string {
187999
- if (value !== undefined)
188000
- return "(" + name + " " + value + ")";
188001
- return "";
188002
- }
188003
- */
188004
188187
  /**
188005
188188
  * @internal
188006
188189
  */
188007
188190
  class PlanarSubdivision {
188008
- /** Create a graph from an array of curves, and an array of the curves' precomputed intersections. */
188009
- static assembleHalfEdgeGraph(primitives, allPairs) {
188191
+ /** Create a graph from an array of curves, and an array of the curves' precomputed intersections. Z-coordinates are ignored. */
188192
+ static assembleHalfEdgeGraph(primitives, allPairs, mergeTolerance = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.smallMetricDistance) {
188010
188193
  const detailByPrimitive = new MapCurvePrimitiveToCurveLocationDetailPairArray(); // map from key CurvePrimitive to CurveLocationDetailPair.
188011
- for (const p of primitives)
188012
- detailByPrimitive.assignPrimitiveIndex(p);
188013
- for (const pair of allPairs) {
188194
+ for (const pair of allPairs)
188014
188195
  detailByPrimitive.insertPair(pair);
188015
- }
188016
- const graph = new _topology_Graph__WEBPACK_IMPORTED_MODULE_0__.HalfEdgeGraph();
188196
+ if (primitives.length > detailByPrimitive.primitiveToPair.size)
188197
+ detailByPrimitive.splitAndAppendMissingClosedPrimitives(primitives, mergeTolerance); // otherwise, these single-primitive loops are missing from the graph
188198
+ const graph = new _topology_Graph__WEBPACK_IMPORTED_MODULE_5__.HalfEdgeGraph();
188017
188199
  for (const entry of detailByPrimitive.primitiveToPair.entries()) {
188018
188200
  const p = entry[0];
188019
- const details = entry[1];
188201
+ // convert each interval intersection into two isolated intersections
188202
+ const details = entry[1].reduce((accumulator, detailPair) => {
188203
+ if (!detailPair.detailA.hasFraction1)
188204
+ return [...accumulator, detailPair];
188205
+ const detail = getDetailOnCurve(detailPair, p);
188206
+ const detail0 = _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_4__.CurveLocationDetail.createCurveFractionPoint(p, detail.fraction, detail.point);
188207
+ const detail1 = _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_4__.CurveLocationDetail.createCurveFractionPoint(p, detail.fraction1, detail.point1);
188208
+ return [...accumulator, _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_4__.CurveLocationDetailPair.createCapture(detail0, detail0), _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_4__.CurveLocationDetailPair.createCapture(detail1, detail1)];
188209
+ }, []);
188210
+ // lexical sort on p intersection fraction
188020
188211
  details.sort((pairA, pairB) => {
188021
188212
  const fractionA = getFractionOnCurve(pairA, p);
188022
188213
  const fractionB = getFractionOnCurve(pairB, p);
188023
- if (fractionA === undefined || fractionB === undefined)
188024
- return -1000.0;
188025
188214
  return fractionA - fractionB;
188026
188215
  });
188027
- let detail0 = getDetailOnCurve(details[0], p);
188028
- this.addHalfEdge(graph, p, p.startPoint(), 0.0, detail0.point, detail0.fraction);
188029
- for (let i = 1; i < details.length; i++) {
188030
- // create (both sides of) a graph edge . . .
188031
- const detail1 = getDetailOnCurve(details[i], p);
188032
- this.addHalfEdge(graph, p, detail0.point, detail0.fraction, detail1.point, detail1.fraction);
188033
- detail0 = detail1;
188216
+ let last = { point: p.startPoint(), fraction: 0.0 };
188217
+ for (const detailPair of details) {
188218
+ const detail = getDetailOnCurve(detailPair, p);
188219
+ const detailFraction = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.restrictToInterval(detail.fraction, 0, 1); // truncate fraction, but don't snap point; clustering happens later
188220
+ last = this.addHalfEdge(graph, p, last.point, last.fraction, detail.point, detailFraction, mergeTolerance);
188034
188221
  }
188035
- this.addHalfEdge(graph, p, detail0.point, detail0.fraction, p.endPoint(), 1.0);
188222
+ this.addHalfEdge(graph, p, last.point, last.fraction, p.endPoint(), 1.0, mergeTolerance);
188036
188223
  }
188037
- _topology_Merging__WEBPACK_IMPORTED_MODULE_1__.HalfEdgeGraphMerge.clusterAndMergeXYTheta(graph, (he) => he.sortAngle);
188224
+ _topology_Merging__WEBPACK_IMPORTED_MODULE_6__.HalfEdgeGraphMerge.clusterAndMergeXYTheta(graph, (he) => he.sortAngle);
188038
188225
  return graph;
188039
188226
  }
188040
188227
  /**
@@ -188046,19 +188233,21 @@ class PlanarSubdivision {
188046
188233
  * @param point0 start point
188047
188234
  * @param fraction1 end fraction
188048
188235
  * @param point1 end point
188049
- */
188050
- static addHalfEdge(graph, p, point0, fraction0, point1, fraction1) {
188051
- if (!point0.isAlmostEqual(point1)) {
188052
- const halfEdge = graph.createEdgeXYAndZ(point0, 0, point1, 0);
188053
- const detail01 = _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_2__.CurveLocationDetail.createCurveEvaluatedFractionFraction(p, fraction0, fraction1);
188054
- const mate = halfEdge.edgeMate;
188055
- halfEdge.edgeTag = detail01;
188056
- halfEdge.sortData = 1.0;
188057
- mate.edgeTag = detail01;
188058
- mate.sortData = -1.0;
188059
- halfEdge.sortAngle = sortAngle(detail01.curve, detail01.fraction, false);
188060
- mate.sortAngle = sortAngle(detail01.curve, detail01.fraction1, true);
188061
- }
188236
+ * @returns end point and fraction, or start point and fraction if no action
188237
+ */
188238
+ static addHalfEdge(graph, p, point0, fraction0, point1, fraction1, mergeTolerance = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.smallMetricDistance) {
188239
+ if (point0.isAlmostEqualXY(point1, mergeTolerance))
188240
+ return { point: point0, fraction: fraction0 };
188241
+ const halfEdge = graph.createEdgeXYAndZ(point0, 0, point1, 0);
188242
+ const detail01 = _CurveLocationDetail__WEBPACK_IMPORTED_MODULE_4__.CurveLocationDetail.createCurveEvaluatedFractionFraction(p, fraction0, fraction1);
188243
+ const mate = halfEdge.edgeMate;
188244
+ halfEdge.edgeTag = detail01;
188245
+ halfEdge.sortData = 1.0;
188246
+ mate.edgeTag = detail01;
188247
+ mate.sortData = -1.0;
188248
+ halfEdge.sortAngle = sortAngle(p, fraction0, false);
188249
+ mate.sortAngle = sortAngle(p, fraction1, true);
188250
+ return { point: point1, fraction: fraction1 };
188062
188251
  }
188063
188252
  /**
188064
188253
  * Based on computed (and toleranced) area, push the loop (pointer) onto the appropriate array of positive, negative, or sliver loops.
@@ -188067,7 +188256,7 @@ class PlanarSubdivision {
188067
188256
  * @returns the area (forced to zero if within tolerance)
188068
188257
  */
188069
188258
  static collectSignedLoop(loop, outLoops, zeroAreaTolerance = 1.0e-10, isSliverFace) {
188070
- let area = isSliverFace ? 0.0 : _RegionOps__WEBPACK_IMPORTED_MODULE_3__.RegionOps.computeXYArea(loop);
188259
+ let area = isSliverFace ? 0.0 : _RegionOps__WEBPACK_IMPORTED_MODULE_7__.RegionOps.computeXYArea(loop);
188071
188260
  if (area === undefined)
188072
188261
  area = 0;
188073
188262
  if (Math.abs(area) < zeroAreaTolerance)
@@ -188083,7 +188272,7 @@ class PlanarSubdivision {
188083
188272
  }
188084
188273
  static createLoopInFace(faceSeed, announce) {
188085
188274
  let he = faceSeed;
188086
- const loop = _Loop__WEBPACK_IMPORTED_MODULE_4__.Loop.create();
188275
+ const loop = _Loop__WEBPACK_IMPORTED_MODULE_8__.Loop.create();
188087
188276
  do {
188088
188277
  const detail = he.edgeTag;
188089
188278
  if (detail) {
@@ -188107,9 +188296,9 @@ class PlanarSubdivision {
188107
188296
  const faceHasTwoEdges = (he.faceSuccessor.faceSuccessor === he);
188108
188297
  let faceIsBanana = false;
188109
188298
  if (faceHasTwoEdges) {
188110
- const c0 = _topology_Merging__WEBPACK_IMPORTED_MODULE_1__.HalfEdgeGraphMerge.curvatureSortKey(he);
188111
- const c1 = _topology_Merging__WEBPACK_IMPORTED_MODULE_1__.HalfEdgeGraphMerge.curvatureSortKey(he.faceSuccessor.edgeMate);
188112
- if (!_Geometry__WEBPACK_IMPORTED_MODULE_5__.Geometry.isSameCoordinate(c0, c1)) // default tol!
188299
+ const c0 = _topology_Merging__WEBPACK_IMPORTED_MODULE_6__.HalfEdgeGraphMerge.curvatureSortKey(he);
188300
+ const c1 = _topology_Merging__WEBPACK_IMPORTED_MODULE_6__.HalfEdgeGraphMerge.curvatureSortKey(he.faceSuccessor.edgeMate);
188301
+ if (!_Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.isSameCoordinate(c0, c1)) // default tol!
188113
188302
  faceIsBanana = true; // heuristic: we could also check end curvatures, and/or higher derivatives...
188114
188303
  }
188115
188304
  return faceHasTwoEdges && !faceIsBanana;
@@ -188127,7 +188316,7 @@ class PlanarSubdivision {
188127
188316
  return e1;
188128
188317
  }
188129
188318
  static collectSignedLoopSetsInHalfEdgeGraph(graph, zeroAreaTolerance = 1.0e-10) {
188130
- const q = _topology_HalfEdgeGraphSearch__WEBPACK_IMPORTED_MODULE_6__.HalfEdgeGraphSearch.collectConnectedComponentsWithExteriorParityMasks(graph, undefined);
188319
+ const q = _topology_HalfEdgeGraphSearch__WEBPACK_IMPORTED_MODULE_9__.HalfEdgeGraphSearch.collectConnectedComponentsWithExteriorParityMasks(graph, undefined);
188131
188320
  const result = [];
188132
188321
  const edgeMap = new Map();
188133
188322
  for (const faceSeeds of q) {
@@ -188142,10 +188331,10 @@ class PlanarSubdivision {
188142
188331
  const e = edgeMap.get(mate);
188143
188332
  if (e === undefined) {
188144
188333
  // Record this as loopA,edgeA of a shared edge to be completed later from the other side of the edge
188145
- const e1 = new _Loop__WEBPACK_IMPORTED_MODULE_4__.LoopCurveLoopCurve(loopC, curveC, undefined, undefined);
188334
+ const e1 = new _Loop__WEBPACK_IMPORTED_MODULE_8__.LoopCurveLoopCurve(loopC, curveC, undefined, undefined);
188146
188335
  edgeMap.set(he, e1);
188147
188336
  }
188148
- else if (e instanceof _Loop__WEBPACK_IMPORTED_MODULE_4__.LoopCurveLoopCurve) {
188337
+ else if (e instanceof _Loop__WEBPACK_IMPORTED_MODULE_8__.LoopCurveLoopCurve) {
188149
188338
  e.setB(loopC, curveC);
188150
188339
  edges.push(e);
188151
188340
  edgeMap.delete(mate);
@@ -188993,27 +189182,27 @@ __webpack_require__.r(__webpack_exports__);
188993
189182
  /* harmony import */ var _geometry4d_MomentData__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../geometry4d/MomentData */ "../../core/geometry/lib/esm/geometry4d/MomentData.js");
188994
189183
  /* harmony import */ var _polyface_PolyfaceBuilder__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../polyface/PolyfaceBuilder */ "../../core/geometry/lib/esm/polyface/PolyfaceBuilder.js");
188995
189184
  /* harmony import */ var _topology_Graph__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../topology/Graph */ "../../core/geometry/lib/esm/topology/Graph.js");
189185
+ /* harmony import */ var _topology_HalfEdgeGraphSearch__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../topology/HalfEdgeGraphSearch */ "../../core/geometry/lib/esm/topology/HalfEdgeGraphSearch.js");
188996
189186
  /* harmony import */ var _topology_Triangulation__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../topology/Triangulation */ "../../core/geometry/lib/esm/topology/Triangulation.js");
188997
189187
  /* harmony import */ var _ChainCollectorContext__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./ChainCollectorContext */ "../../core/geometry/lib/esm/curve/ChainCollectorContext.js");
188998
189188
  /* harmony import */ var _CurveCollection__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./CurveCollection */ "../../core/geometry/lib/esm/curve/CurveCollection.js");
188999
189189
  /* harmony import */ var _CurveCurve__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./CurveCurve */ "../../core/geometry/lib/esm/curve/CurveCurve.js");
189000
189190
  /* harmony import */ var _CurvePrimitive__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./CurvePrimitive */ "../../core/geometry/lib/esm/curve/CurvePrimitive.js");
189001
189191
  /* harmony import */ var _CurveWireMomentsXYZ__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./CurveWireMomentsXYZ */ "../../core/geometry/lib/esm/curve/CurveWireMomentsXYZ.js");
189192
+ /* harmony import */ var _GeometryQuery__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./GeometryQuery */ "../../core/geometry/lib/esm/curve/GeometryQuery.js");
189193
+ /* harmony import */ var _internalContexts_MultiChainCollector__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./internalContexts/MultiChainCollector */ "../../core/geometry/lib/esm/curve/internalContexts/MultiChainCollector.js");
189002
189194
  /* harmony import */ var _internalContexts_PolygonOffsetContext__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./internalContexts/PolygonOffsetContext */ "../../core/geometry/lib/esm/curve/internalContexts/PolygonOffsetContext.js");
189003
189195
  /* harmony import */ var _LineString3d__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./LineString3d */ "../../core/geometry/lib/esm/curve/LineString3d.js");
189004
189196
  /* harmony import */ var _Loop__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Loop */ "../../core/geometry/lib/esm/curve/Loop.js");
189197
+ /* harmony import */ var _ParityRegion__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./ParityRegion */ "../../core/geometry/lib/esm/curve/ParityRegion.js");
189005
189198
  /* harmony import */ var _Path__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./Path */ "../../core/geometry/lib/esm/curve/Path.js");
189006
189199
  /* harmony import */ var _Query_ConsolidateAdjacentPrimitivesContext__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./Query/ConsolidateAdjacentPrimitivesContext */ "../../core/geometry/lib/esm/curve/Query/ConsolidateAdjacentPrimitivesContext.js");
189007
189200
  /* harmony import */ var _Query_CurveSplitContext__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./Query/CurveSplitContext */ "../../core/geometry/lib/esm/curve/Query/CurveSplitContext.js");
189008
189201
  /* harmony import */ var _Query_InOutTests__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./Query/InOutTests */ "../../core/geometry/lib/esm/curve/Query/InOutTests.js");
189009
189202
  /* harmony import */ var _Query_PlanarSubdivision__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./Query/PlanarSubdivision */ "../../core/geometry/lib/esm/curve/Query/PlanarSubdivision.js");
189010
189203
  /* harmony import */ var _RegionMomentsXY__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./RegionMomentsXY */ "../../core/geometry/lib/esm/curve/RegionMomentsXY.js");
189011
- /* harmony import */ var _internalContexts_MultiChainCollector__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./internalContexts/MultiChainCollector */ "../../core/geometry/lib/esm/curve/internalContexts/MultiChainCollector.js");
189012
- /* harmony import */ var _GeometryQuery__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./GeometryQuery */ "../../core/geometry/lib/esm/curve/GeometryQuery.js");
189013
189204
  /* harmony import */ var _RegionOpsClassificationSweeps__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./RegionOpsClassificationSweeps */ "../../core/geometry/lib/esm/curve/RegionOpsClassificationSweeps.js");
189014
189205
  /* harmony import */ var _UnionRegion__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./UnionRegion */ "../../core/geometry/lib/esm/curve/UnionRegion.js");
189015
- /* harmony import */ var _topology_HalfEdgeGraphSearch__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../topology/HalfEdgeGraphSearch */ "../../core/geometry/lib/esm/topology/HalfEdgeGraphSearch.js");
189016
- /* harmony import */ var _ParityRegion__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./ParityRegion */ "../../core/geometry/lib/esm/curve/ParityRegion.js");
189017
189206
  /*---------------------------------------------------------------------------------------------
189018
189207
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
189019
189208
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -189252,7 +189441,7 @@ class RegionOps {
189252
189441
  * @param loopsB second set of loops
189253
189442
  * @param operation indicates Union, Intersection, Parity, AMinusB, or BMinusA
189254
189443
  * @param mergeTolerance absolute distance tolerance for merging loops
189255
- * @returns a region resulting from merging input loops and the boolean operation. May contain bridge edges connecting interior loops to exterior loops.
189444
+ * @returns a region resulting from merging input loops and the boolean operation. May contain bridge edges added to connect interior loops to exterior loops.
189256
189445
  */
189257
189446
  static regionBooleanXY(loopsA, loopsB, operation, mergeTolerance = _Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.smallMetricDistance) {
189258
189447
  const result = _UnionRegion__WEBPACK_IMPORTED_MODULE_11__.UnionRegion.create();
@@ -189260,7 +189449,7 @@ class RegionOps {
189260
189449
  context.addMembers(loopsA, loopsB);
189261
189450
  context.annotateAndMergeCurvesInGraph(mergeTolerance);
189262
189451
  const range = context.groupA.range().union(context.groupB.range());
189263
- const areaTol = this.computeXYAreaTolerance(range);
189452
+ const areaTol = this.computeXYAreaTolerance(range, mergeTolerance);
189264
189453
  context.runClassificationSweep(operation, (_graph, face, faceType, area) => {
189265
189454
  // ignore danglers and null faces, but not 2-edge "banana" faces with nonzero area
189266
189455
  if (face.countEdgesAroundFace() < 2)
@@ -189578,23 +189767,24 @@ class RegionOps {
189578
189767
  }
189579
189768
  /**
189580
189769
  * Find all areas bounded by the unstructured, possibly intersecting curves.
189581
- * * This method performs no merging of nearly coincident edges and vertices, which can lead to unexpected results
189582
- * given sufficiently imprecise input. Input geometry consisting of regions can be merged for better results by pre-processing with
189583
- * [[regionBooleanXY]].
189770
+ * * A common use case of this method is to assemble the bounding "exterior" loop (or loops) containing the input curves.
189771
+ * * This method does not add bridge edges to connect outer loops to inner loops. Each disconnected loop, regardless
189772
+ * of its containment, is returned as its own SignedLoops object. Pre-process with [[regionBooleanXY]] to add bridge edges so that
189773
+ * [[constructAllXYRegionLoops]] will return outer and inner loops in the same SignedLoops object.
189584
189774
  * @param curvesAndRegions Any collection of curves. Each Loop/ParityRegion/UnionRegion contributes its curve primitives.
189775
+ * @param tolerance optional distance tolerance for coincidence
189585
189776
  * @returns array of [[SignedLoops]], each entry of which describes the faces in a single connected component:
189586
189777
  * * `positiveAreaLoops` contains "interior" loops, _including holes in ParityRegion input_. These loops have positive area and counterclockwise orientation.
189587
189778
  * * `negativeAreaLoops` contains (probably just one) "exterior" loop which is ordered clockwise.
189588
189779
  * * `slivers` contains sliver loops that have zero area, such as appear between coincident curves.
189589
189780
  * * `edges` contains a [[LoopCurveLoopCurve]] object for each component edge, collecting both loops adjacent to the edge and a constituent curve in each.
189590
189781
  */
189591
- static constructAllXYRegionLoops(curvesAndRegions) {
189592
- const primitivesA = RegionOps.collectCurvePrimitives(curvesAndRegions, undefined, true);
189593
- const primitivesB = this.expandLineStrings(primitivesA);
189594
- const range = this.curveArrayRange(primitivesB);
189595
- const areaTol = this.computeXYAreaTolerance(range);
189596
- const intersections = _CurveCurve__WEBPACK_IMPORTED_MODULE_30__.CurveCurve.allIntersectionsAmongPrimitivesXY(primitivesB);
189597
- const graph = _Query_PlanarSubdivision__WEBPACK_IMPORTED_MODULE_12__.PlanarSubdivision.assembleHalfEdgeGraph(primitivesB, intersections);
189782
+ static constructAllXYRegionLoops(curvesAndRegions, tolerance = _Geometry__WEBPACK_IMPORTED_MODULE_2__.Geometry.smallMetricDistance) {
189783
+ const primitives = RegionOps.collectCurvePrimitives(curvesAndRegions, undefined, true, true);
189784
+ const range = this.curveArrayRange(primitives);
189785
+ const areaTol = this.computeXYAreaTolerance(range, tolerance);
189786
+ const intersections = _CurveCurve__WEBPACK_IMPORTED_MODULE_30__.CurveCurve.allIntersectionsAmongPrimitivesXY(primitives, tolerance);
189787
+ const graph = _Query_PlanarSubdivision__WEBPACK_IMPORTED_MODULE_12__.PlanarSubdivision.assembleHalfEdgeGraph(primitives, intersections, tolerance);
189598
189788
  return _Query_PlanarSubdivision__WEBPACK_IMPORTED_MODULE_12__.PlanarSubdivision.collectSignedLoopSetsInHalfEdgeGraph(graph, areaTol);
189599
189789
  }
189600
189790
  /**
@@ -190210,7 +190400,7 @@ class RegionBooleanContext {
190210
190400
  }
190211
190401
  // const range = RegionOps.curveArrayRange(allPrimitives);
190212
190402
  const intersections = _CurveCurve__WEBPACK_IMPORTED_MODULE_15__.CurveCurve.allIntersectionsAmongPrimitivesXY(allPrimitives, mergeTolerance);
190213
- const graph = _Query_PlanarSubdivision__WEBPACK_IMPORTED_MODULE_16__.PlanarSubdivision.assembleHalfEdgeGraph(allPrimitives, intersections);
190403
+ const graph = _Query_PlanarSubdivision__WEBPACK_IMPORTED_MODULE_16__.PlanarSubdivision.assembleHalfEdgeGraph(allPrimitives, intersections, mergeTolerance);
190214
190404
  this.graph = graph;
190215
190405
  this.faceAreaFunction = faceAreaFromCurvedEdgeData;
190216
190406
  }
@@ -197309,15 +197499,20 @@ __webpack_require__.r(__webpack_exports__);
197309
197499
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
197310
197500
  /* harmony export */ "CoincidentGeometryQuery": () => (/* binding */ CoincidentGeometryQuery)
197311
197501
  /* harmony export */ });
197312
- /* harmony import */ var _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../curve/CurveLocationDetail */ "../../core/geometry/lib/esm/curve/CurveLocationDetail.js");
197313
- /* harmony import */ var _Geometry__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Geometry */ "../../core/geometry/lib/esm/Geometry.js");
197314
- /* harmony import */ var _AngleSweep__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AngleSweep */ "../../core/geometry/lib/esm/geometry3d/AngleSweep.js");
197315
- /* harmony import */ var _Point3dVector3d__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Point3dVector3d */ "../../core/geometry/lib/esm/geometry3d/Point3dVector3d.js");
197316
- /* harmony import */ var _Segment1d__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Segment1d */ "../../core/geometry/lib/esm/geometry3d/Segment1d.js");
197502
+ /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
197503
+ /* harmony import */ var _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../curve/CurveLocationDetail */ "../../core/geometry/lib/esm/curve/CurveLocationDetail.js");
197504
+ /* harmony import */ var _Geometry__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Geometry */ "../../core/geometry/lib/esm/Geometry.js");
197505
+ /* harmony import */ var _AngleSweep__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./AngleSweep */ "../../core/geometry/lib/esm/geometry3d/AngleSweep.js");
197506
+ /* harmony import */ var _Point3dVector3d__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Point3dVector3d */ "../../core/geometry/lib/esm/geometry3d/Point3dVector3d.js");
197507
+ /* harmony import */ var _Segment1d__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Segment1d */ "../../core/geometry/lib/esm/geometry3d/Segment1d.js");
197317
197508
  /*---------------------------------------------------------------------------------------------
197318
197509
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
197319
197510
  * See LICENSE.md in the project root for license terms and full copyright notice.
197320
197511
  *--------------------------------------------------------------------------------------------*/
197512
+ /** @packageDocumentation
197513
+ * @module CartesianGeometry
197514
+ */
197515
+
197321
197516
 
197322
197517
 
197323
197518
 
@@ -197333,10 +197528,10 @@ class CoincidentGeometryQuery {
197333
197528
  get tolerance() {
197334
197529
  return this._tolerance;
197335
197530
  }
197336
- constructor(tolerance = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.smallMetricDistance) {
197531
+ constructor(tolerance = _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.smallMetricDistance) {
197337
197532
  this._tolerance = tolerance;
197338
197533
  }
197339
- static create(tolerance = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.smallMetricDistance) {
197534
+ static create(tolerance = _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.smallMetricDistance) {
197340
197535
  return new CoincidentGeometryQuery(tolerance);
197341
197536
  }
197342
197537
  /**
@@ -197359,12 +197554,12 @@ class CoincidentGeometryQuery {
197359
197554
  *
197360
197555
  */
197361
197556
  projectPointToSegmentXY(spacePoint, pointA, pointB) {
197362
- this._vectorU = _Point3dVector3d__WEBPACK_IMPORTED_MODULE_1__.Vector3d.createStartEnd(pointA, pointB, this._vectorU);
197363
- this._vectorV = _Point3dVector3d__WEBPACK_IMPORTED_MODULE_1__.Vector3d.createStartEnd(pointA, spacePoint, this._vectorV);
197557
+ this._vectorU = _Point3dVector3d__WEBPACK_IMPORTED_MODULE_2__.Vector3d.createStartEnd(pointA, pointB, this._vectorU);
197558
+ this._vectorV = _Point3dVector3d__WEBPACK_IMPORTED_MODULE_2__.Vector3d.createStartEnd(pointA, spacePoint, this._vectorV);
197364
197559
  const uDotU = this._vectorU.dotProductXY(this._vectorU);
197365
197560
  const uDotV = this._vectorU.dotProductXY(this._vectorV);
197366
- const fraction = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.safeDivideFraction(uDotV, uDotU, 0.0);
197367
- return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_2__.CurveLocationDetail.createCurveFractionPoint(undefined, fraction, pointA.interpolate(fraction, pointB));
197561
+ const fraction = _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.safeDivideFraction(uDotV, uDotU, 0.0);
197562
+ return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetail.createCurveFractionPoint(undefined, fraction, pointA.interpolate(fraction, pointB));
197368
197563
  }
197369
197564
  /**
197370
197565
  * * project `pointA0` and `pointA1` onto the segment with `pointB0` and `pointB1`
@@ -197375,84 +197570,82 @@ class CoincidentGeometryQuery {
197375
197570
  * @param pointB1 end point of segment B
197376
197571
  */
197377
197572
  coincidentSegmentRangeXY(pointA0, pointA1, pointB0, pointB1, restrictToBounds = true) {
197378
- const detailAOnB = this.projectPointToSegmentXY(pointA0, pointB0, pointB1);
197379
- if (pointA0.distanceXY(detailAOnB.point) > this._tolerance)
197573
+ const detailA0OnB = this.projectPointToSegmentXY(pointA0, pointB0, pointB1);
197574
+ if (pointA0.distanceXY(detailA0OnB.point) > this._tolerance)
197380
197575
  return undefined;
197381
197576
  const detailA1OnB = this.projectPointToSegmentXY(pointA1, pointB0, pointB1);
197382
197577
  if (pointA1.distanceXY(detailA1OnB.point) > this._tolerance)
197383
197578
  return undefined;
197384
- const detailBOnA = this.projectPointToSegmentXY(pointB0, pointA0, pointA1);
197385
- if (pointB0.distanceXY(detailBOnA.point) > this._tolerance)
197579
+ const detailB0OnA = this.projectPointToSegmentXY(pointB0, pointA0, pointA1);
197580
+ if (pointB0.distanceXY(detailB0OnA.point) > this._tolerance)
197386
197581
  return undefined;
197387
197582
  const detailB1OnA = this.projectPointToSegmentXY(pointB1, pointA0, pointA1);
197388
197583
  if (pointB1.distanceXY(detailB1OnA.point) > this._tolerance)
197389
197584
  return undefined;
197390
- detailAOnB.fraction1 = detailA1OnB.fraction;
197391
- detailAOnB.point1 = detailA1OnB.point; // capture -- detailB0OnA is not reused.
197392
- detailBOnA.fraction1 = detailB1OnA.fraction;
197393
- detailBOnA.point1 = detailB1OnA.point;
197585
+ detailA0OnB.fraction1 = detailA1OnB.fraction;
197586
+ detailA0OnB.point1 = detailA1OnB.point; // capture -- detailA1OnB is not reused.
197587
+ detailB0OnA.fraction1 = detailB1OnA.fraction;
197588
+ detailB0OnA.point1 = detailB1OnA.point;
197394
197589
  if (!restrictToBounds)
197395
- return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_2__.CurveLocationDetailPair.createCapture(detailBOnA, detailAOnB);
197396
- const segment = _Segment1d__WEBPACK_IMPORTED_MODULE_3__.Segment1d.create(detailBOnA.fraction, detailBOnA.fraction1);
197590
+ return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailB0OnA, detailA0OnB);
197591
+ const segment = _Segment1d__WEBPACK_IMPORTED_MODULE_4__.Segment1d.create(detailB0OnA.fraction, detailB0OnA.fraction1);
197397
197592
  if (segment.clampDirectedTo01()) {
197398
- segment.reverseIfNeededForDeltaSign(1.0);
197399
197593
  const f0 = segment.x0;
197400
197594
  const f1 = segment.x1;
197401
- const h0 = detailBOnA.inverseInterpolateFraction(f0);
197402
- const h1 = detailBOnA.inverseInterpolateFraction(f1);
197595
+ const h0 = detailB0OnA.inverseInterpolateFraction(f0);
197596
+ const h1 = detailB0OnA.inverseInterpolateFraction(f1);
197403
197597
  // recompute fractions and points..
197404
- CoincidentGeometryQuery.assignDetailInterpolatedFractionsAndPoints(detailBOnA, f0, f1, pointA0, pointA1);
197405
- CoincidentGeometryQuery.assignDetailInterpolatedFractionsAndPoints(detailAOnB, h0, h1, pointB0, pointB1);
197406
- return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_2__.CurveLocationDetailPair.createCapture(detailBOnA, detailAOnB);
197598
+ CoincidentGeometryQuery.assignDetailInterpolatedFractionsAndPoints(detailB0OnA, f0, f1, pointA0, pointA1, f0 > f1);
197599
+ CoincidentGeometryQuery.assignDetailInterpolatedFractionsAndPoints(detailA0OnB, h0, h1, pointB0, pointB1, h0 > h1);
197600
+ return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailB0OnA, detailA0OnB);
197407
197601
  }
197408
197602
  else {
197409
197603
  if (segment.signedDelta() < 0.0) {
197410
- if (detailBOnA.point.isAlmostEqual(pointA0)) {
197411
- detailBOnA.collapseToStart();
197412
- detailAOnB.collapseToStart();
197413
- return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_2__.CurveLocationDetailPair.createCapture(detailBOnA, detailAOnB);
197604
+ if (detailB0OnA.point.isAlmostEqual(pointA0, this.tolerance)) {
197605
+ detailB0OnA.collapseToStart();
197606
+ detailA0OnB.collapseToStart();
197607
+ return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailB0OnA, detailA0OnB);
197414
197608
  }
197415
- if (detailBOnA.point1.isAlmostEqual(pointA1)) {
197416
- detailBOnA.collapseToEnd();
197417
- detailAOnB.collapseToEnd();
197418
- return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_2__.CurveLocationDetailPair.createCapture(detailBOnA, detailAOnB);
197609
+ if (detailB0OnA.point1.isAlmostEqual(pointA1, this.tolerance)) {
197610
+ detailB0OnA.collapseToEnd();
197611
+ detailA0OnB.collapseToEnd();
197612
+ return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailB0OnA, detailA0OnB);
197419
197613
  }
197420
197614
  }
197421
197615
  else {
197422
- if (detailBOnA.point.isAlmostEqual(pointA1)) {
197423
- detailBOnA.collapseToStart();
197424
- detailAOnB.collapseToEnd();
197425
- return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_2__.CurveLocationDetailPair.createCapture(detailBOnA, detailAOnB);
197616
+ if (detailB0OnA.point.isAlmostEqual(pointA1, this.tolerance)) {
197617
+ detailB0OnA.collapseToStart();
197618
+ detailA0OnB.collapseToEnd();
197619
+ return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailB0OnA, detailA0OnB);
197426
197620
  }
197427
- if (detailBOnA.point1.isAlmostEqual(pointA0)) {
197428
- detailBOnA.collapseToEnd();
197429
- detailAOnB.collapseToStart();
197430
- return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_2__.CurveLocationDetailPair.createCapture(detailBOnA, detailAOnB);
197621
+ if (detailB0OnA.point1.isAlmostEqual(pointA0, this.tolerance)) {
197622
+ detailB0OnA.collapseToEnd();
197623
+ detailA0OnB.collapseToStart();
197624
+ return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailB0OnA, detailA0OnB);
197431
197625
  }
197432
197626
  }
197433
197627
  }
197434
197628
  return undefined;
197435
197629
  }
197436
197630
  /**
197437
- * Create a CurveLocationDetailPair from . . .
197631
+ * Create a CurveLocationDetailPair for a coincident interval of two overlapping curves
197438
197632
  * @param cpA curveA
197439
- * @param cpB curve B
197440
- * @param fractionsOnA fractions of an active section of curveA
197441
- * @param fractionB0 fraction of an original containing B interval
197442
- * @param fractionB1 end fraction of an original containing B interval
197633
+ * @param cpB curveB
197634
+ * @param fractionsOnA coincident interval of curveB in fraction space of curveA
197635
+ * @param fractionB0 curveB start in fraction space of curveA
197636
+ * @param fractionB1 curveB end in fraction space of curveA
197637
+ * @param reverse whether curveB and curveA have opposite direction
197443
197638
  */
197444
197639
  createDetailPair(cpA, cpB, fractionsOnA, fractionB0, fractionB1, reverse) {
197445
197640
  const deltaB = fractionB1 - fractionB0;
197446
- const g0 = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.conditionalDivideFraction(fractionsOnA.x0 - fractionB0, deltaB);
197447
- const g1 = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.conditionalDivideFraction(fractionsOnA.x1 - fractionB0, deltaB);
197641
+ const g0 = _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.conditionalDivideFraction(fractionsOnA.x0 - fractionB0, deltaB);
197642
+ const g1 = _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.conditionalDivideFraction(fractionsOnA.x1 - fractionB0, deltaB);
197448
197643
  if (g0 !== undefined && g1 !== undefined) {
197449
- const detailA = _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_2__.CurveLocationDetail.createCurveEvaluatedFractionFraction(cpA, fractionsOnA.x0, fractionsOnA.x1);
197450
- const detailB = _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_2__.CurveLocationDetail.createCurveEvaluatedFractionFraction(cpB, g0, g1);
197451
- if (reverse) {
197644
+ const detailA = _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetail.createCurveEvaluatedFractionFraction(cpA, fractionsOnA.x0, fractionsOnA.x1);
197645
+ const detailB = _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetail.createCurveEvaluatedFractionFraction(cpB, g0, g1);
197646
+ if (reverse)
197452
197647
  detailA.swapFractionsAndPoints();
197453
- detailB.swapFractionsAndPoints();
197454
- }
197455
- return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_2__.CurveLocationDetailPair.createCapture(detailA, detailB);
197648
+ return _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailA, detailB);
197456
197649
  }
197457
197650
  return undefined;
197458
197651
  }
@@ -197469,43 +197662,67 @@ class CoincidentGeometryQuery {
197469
197662
  * @param arcA
197470
197663
  * @param arcB
197471
197664
  * @param _restrictToBounds
197472
- * @return 0, 1, or 2 overlap intervals.
197665
+ * @return 0, 1, or 2 overlap points/intervals
197473
197666
  */
197474
197667
  coincidentArcIntersectionXY(arcA, arcB, _restrictToBounds = true) {
197475
197668
  let result;
197476
- if (arcA.center.isAlmostEqual(arcB.center)) {
197669
+ if (arcA.center.isAlmostEqual(arcB.center, this.tolerance)) {
197477
197670
  const matrixBToA = arcA.matrixRef.multiplyMatrixInverseMatrix(arcB.matrixRef);
197478
197671
  if (matrixBToA) {
197479
197672
  const ux = matrixBToA.at(0, 0);
197480
197673
  const uy = matrixBToA.at(1, 0);
197481
197674
  const vx = matrixBToA.at(0, 1);
197482
197675
  const vy = matrixBToA.at(1, 1);
197483
- const ru = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.hypotenuseXY(ux, uy);
197484
- const rv = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.hypotenuseXY(vx, vy);
197485
- const dot = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.dotProductXYXY(ux, uy, vx, vy);
197486
- const cross = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.crossProductXYXY(ux, uy, vx, vy);
197487
- if (_Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.isAlmostEqualNumber(ru, 1.0)
197488
- && _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.isAlmostEqualNumber(rv, 1.0)
197489
- && _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.isAlmostEqualNumber(0, dot)) {
197490
- const alphaB0Radians = Math.atan2(uy, ux); // angular position of arcB 0 point in A sweep
197491
- const sweepDirection = cross > 0 ? 1.0 : -1.0; // 1 if arcB's parameter space sweeps forward, -1 if reverse
197492
- const betaStartRadians = alphaB0Radians + sweepDirection * arcB.sweep.startRadians;
197493
- const betaEndRadians = alphaB0Radians + sweepDirection * arcB.sweep.endRadians;
197676
+ const ru = _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.hypotenuseXY(ux, uy);
197677
+ const rv = _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.hypotenuseXY(vx, vy);
197678
+ const dot = _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.dotProductXYXY(ux, uy, vx, vy);
197679
+ const cross = _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.crossProductXYXY(ux, uy, vx, vy);
197680
+ if (_Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.isAlmostEqualNumber(ru, 1.0)
197681
+ && _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.isAlmostEqualNumber(rv, 1.0)
197682
+ && _Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.isAlmostEqualNumber(0, dot)) {
197683
+ const alphaB0Radians = Math.atan2(uy, ux); // angular position of arcB 0 point in arcA sweep
197684
+ const sweepDirection = cross > 0 ? 1.0 : -1.0; // 1 if arcB parameter space sweeps in same direction as arcA, -1 if opposite
197685
+ const betaStartRadians = alphaB0Radians + sweepDirection * arcB.sweep.startRadians; // arcB start in arcA parameter space
197686
+ const betaEndRadians = alphaB0Radians + sweepDirection * arcB.sweep.endRadians; // arcB end in arcA parameter space
197494
197687
  const fractionSpacesReversed = (sweepDirection * arcA.sweep.sweepRadians * arcB.sweep.sweepRadians) < 0;
197495
- const sweepB = _AngleSweep__WEBPACK_IMPORTED_MODULE_4__.AngleSweep.createStartEndRadians(betaStartRadians, betaEndRadians);
197688
+ const sweepB = _AngleSweep__WEBPACK_IMPORTED_MODULE_5__.AngleSweep.createStartEndRadians(betaStartRadians, betaEndRadians);
197496
197689
  const sweepA = arcA.sweep;
197497
197690
  const fractionPeriodA = sweepA.fractionPeriod();
197498
- const fractionB0 = sweepA.radiansToPositivePeriodicFraction(sweepB.startRadians);
197499
- const fractionSweep = sweepB.sweepRadians / sweepA.sweepRadians;
197500
- const fractionB1 = fractionB0 + fractionSweep;
197501
- const fractionSweepB = _Segment1d__WEBPACK_IMPORTED_MODULE_3__.Segment1d.create(fractionB0, fractionB1);
197502
- if (fractionSweepB.clampDirectedTo01())
197503
- result = this.appendDetailPair(result, this.createDetailPair(arcA, arcB, fractionSweepB, fractionB0, fractionB1, fractionSpacesReversed));
197504
- if (fractionB1 > fractionPeriodA) {
197505
- const fractionSweepBWrap = _Segment1d__WEBPACK_IMPORTED_MODULE_3__.Segment1d.create(fractionB0 - fractionPeriodA, fractionB1 - fractionPeriodA);
197506
- if (fractionSweepBWrap.clampDirectedTo01())
197507
- result = this.appendDetailPair(result, this.createDetailPair(arcA, arcB, fractionSweepBWrap, fractionB0, fractionB1, fractionSpacesReversed));
197508
- }
197691
+ const fractionB0 = sweepA.radiansToPositivePeriodicFraction(sweepB.startRadians); // arcB start in arcA fraction space
197692
+ (0,_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.assert)(fractionB0 >= 0.0);
197693
+ const fractionSweep = sweepB.sweepRadians / sweepA.sweepRadians; // arcB sweep in arcA fraction space
197694
+ const fractionB1 = fractionB0 + fractionSweep; // arcB end in arcA fraction space
197695
+ const fractionSweepB = _Segment1d__WEBPACK_IMPORTED_MODULE_4__.Segment1d.create(fractionB0, fractionB1);
197696
+ /** lambda to add a coincident interval or isolated intersection, given inputs in arcA fraction space
197697
+ * @param arcBInArcAFractionSpace span of arcB in arcA fraction space. On return, clamped to [0,1] if nontrivial.
197698
+ * @param testStartOfArcA if no nontrivial coincident interval was found, look for an isolated intersection at the start (true) or end (false) of arcA
197699
+ * @returns whether a detail pair was appended to result
197700
+ */
197701
+ const appendCoincidentIntersection = (arcBInArcAFractionSpace, testStartOfArcA) => {
197702
+ const size = result ? result.length : 0;
197703
+ const arcBStart = arcBInArcAFractionSpace.x0;
197704
+ const arcBEnd = arcBInArcAFractionSpace.x1;
197705
+ if (arcBInArcAFractionSpace.clampDirectedTo01() && !_Geometry__WEBPACK_IMPORTED_MODULE_1__.Geometry.isSmallRelative(arcBInArcAFractionSpace.absoluteDelta())) {
197706
+ result = this.appendDetailPair(result, this.createDetailPair(arcA, arcB, arcBInArcAFractionSpace, arcBStart, arcBEnd, fractionSpacesReversed));
197707
+ }
197708
+ else { // test isolated intersection
197709
+ const testStartOfArcB = fractionSpacesReversed ? testStartOfArcA : !testStartOfArcA;
197710
+ const arcAPt = this._point0 = testStartOfArcA ? arcA.startPoint(this._point0) : arcA.endPoint(this._point0);
197711
+ const arcBPt = this._point1 = testStartOfArcB ? arcB.startPoint(this._point1) : arcB.endPoint(this._point1);
197712
+ if (arcAPt.isAlmostEqual(arcBPt, this.tolerance)) {
197713
+ const detailA = _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetail.createCurveFractionPoint(arcA, testStartOfArcA ? 0 : 1, arcAPt);
197714
+ const detailB = _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetail.createCurveFractionPoint(arcB, testStartOfArcB ? 0 : 1, arcBPt);
197715
+ result = this.appendDetailPair(result, _curve_CurveLocationDetail__WEBPACK_IMPORTED_MODULE_3__.CurveLocationDetailPair.createCapture(detailA, detailB));
197716
+ }
197717
+ }
197718
+ return result !== undefined && result.length > size;
197719
+ };
197720
+ appendCoincidentIntersection(fractionSweepB, false); // compute overlap in strict interior, or at end of arcA
197721
+ // check overlap at start of arcA with a periodic shift of fractionSweepB
197722
+ if (fractionB1 >= fractionPeriodA)
197723
+ appendCoincidentIntersection(_Segment1d__WEBPACK_IMPORTED_MODULE_4__.Segment1d.create(fractionB0 - fractionPeriodA, fractionB1 - fractionPeriodA), true);
197724
+ else if (fractionB0 === 0.0)
197725
+ appendCoincidentIntersection(_Segment1d__WEBPACK_IMPORTED_MODULE_4__.Segment1d.create(fractionB0 + fractionPeriodA, fractionB1 + fractionPeriodA), true);
197509
197726
  }
197510
197727
  }
197511
197728
  }
@@ -204391,7 +204608,7 @@ class Matrix3d {
204391
204608
  * almost independent and matrix is invertible).
204392
204609
  */
204393
204610
  conditionNumber() {
204394
- const determinant = this.determinant();
204611
+ const determinant = Math.abs(this.determinant());
204395
204612
  const columnMagnitudeSum = _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.hypotenuseXYZ(this.coffs[0], this.coffs[3], this.coffs[6])
204396
204613
  + _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.hypotenuseXYZ(this.coffs[1], this.coffs[4], this.coffs[7])
204397
204614
  + _Geometry__WEBPACK_IMPORTED_MODULE_0__.Geometry.hypotenuseXYZ(this.coffs[2], this.coffs[5], this.coffs[8]);
@@ -249353,6 +249570,7 @@ class HalfEdgeGraphOps {
249353
249570
  }
249354
249571
  }
249355
249572
  /**
249573
+ * Note: this class uses hardcoded micrometer coordinate/cluster tolerance throughout.
249356
249574
  * @internal
249357
249575
  */
249358
249576
  class HalfEdgeGraphMerge {
@@ -272008,143 +272226,107 @@ exports.executeBackendCallback = executeBackendCallback;
272008
272226
  "use strict";
272009
272227
  __webpack_require__.r(__webpack_exports__);
272010
272228
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
272011
- /* harmony export */ "AbstractStatusBarItemUtilities": () => (/* reexport safe */ _appui_abstract_statusbar_StatusBarItem__WEBPACK_IMPORTED_MODULE_31__.AbstractStatusBarItemUtilities),
272012
- /* harmony export */ "AbstractZoneLocation": () => (/* reexport safe */ _appui_abstract_widget_StagePanel__WEBPACK_IMPORTED_MODULE_47__.AbstractZoneLocation),
272013
- /* harmony export */ "AlternateDateFormats": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_24__.AlternateDateFormats),
272014
- /* harmony export */ "BackstageItemType": () => (/* reexport safe */ _appui_abstract_backstage_BackstageItem__WEBPACK_IMPORTED_MODULE_4__.BackstageItemType),
272015
- /* harmony export */ "BackstageItemUtilities": () => (/* reexport safe */ _appui_abstract_backstage_BackstageItem__WEBPACK_IMPORTED_MODULE_4__.BackstageItemUtilities),
272016
- /* harmony export */ "BackstageItemsManager": () => (/* reexport safe */ _appui_abstract_backstage_BackstageItemsManager__WEBPACK_IMPORTED_MODULE_5__.BackstageItemsManager),
272017
- /* harmony export */ "BadgeType": () => (/* reexport safe */ _appui_abstract_items_BadgeType__WEBPACK_IMPORTED_MODULE_15__.BadgeType),
272018
- /* harmony export */ "BaseQuantityDescription": () => (/* reexport safe */ _appui_abstract_quantity_BaseQuantityDescription__WEBPACK_IMPORTED_MODULE_30__.BaseQuantityDescription),
272019
- /* harmony export */ "BaseUiItemsProvider": () => (/* reexport safe */ _appui_abstract_BaseUiItemsProvider__WEBPACK_IMPORTED_MODULE_0__.BaseUiItemsProvider),
272020
- /* harmony export */ "ConditionalBooleanValue": () => (/* reexport safe */ _appui_abstract_items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_16__.ConditionalBooleanValue),
272021
- /* harmony export */ "ConditionalStringValue": () => (/* reexport safe */ _appui_abstract_items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_17__.ConditionalStringValue),
272022
- /* harmony export */ "DialogButtonStyle": () => (/* reexport safe */ _appui_abstract_dialogs_UiLayoutDataProvider__WEBPACK_IMPORTED_MODULE_10__.DialogButtonStyle),
272023
- /* harmony export */ "DialogButtonType": () => (/* reexport safe */ _appui_abstract_dialogs_UiLayoutDataProvider__WEBPACK_IMPORTED_MODULE_10__.DialogButtonType),
272024
- /* harmony export */ "DialogLayoutDataProvider": () => (/* reexport safe */ _appui_abstract_dialogs_UiLayoutDataProvider__WEBPACK_IMPORTED_MODULE_10__.DialogLayoutDataProvider),
272025
- /* harmony export */ "DialogProperty": () => (/* reexport safe */ _appui_abstract_dialogs_DialogItem__WEBPACK_IMPORTED_MODULE_9__.DialogProperty),
272026
- /* harmony export */ "DisplayMessageType": () => (/* reexport safe */ _appui_abstract_notification_MessagePresenter__WEBPACK_IMPORTED_MODULE_21__.DisplayMessageType),
272027
- /* harmony export */ "FunctionKey": () => (/* reexport safe */ _appui_abstract_common_KeyboardKey__WEBPACK_IMPORTED_MODULE_6__.FunctionKey),
272028
- /* harmony export */ "FuzzyScore": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.FuzzyScore),
272029
- /* harmony export */ "GenericUiEvent": () => (/* reexport safe */ _appui_abstract_UiAdmin__WEBPACK_IMPORTED_MODULE_1__.GenericUiEvent),
272030
- /* harmony export */ "IconSpecUtilities": () => (/* reexport safe */ _appui_abstract_utils_IconSpecUtilities__WEBPACK_IMPORTED_MODULE_38__.IconSpecUtilities),
272031
- /* harmony export */ "MessageSeverity": () => (/* reexport safe */ _appui_abstract_notification_MessageSeverity__WEBPACK_IMPORTED_MODULE_22__.MessageSeverity),
272032
- /* harmony export */ "PropertyChangeStatus": () => (/* reexport safe */ _appui_abstract_dialogs_UiDataProvider__WEBPACK_IMPORTED_MODULE_11__.PropertyChangeStatus),
272033
- /* harmony export */ "PropertyDescriptionHelper": () => (/* reexport safe */ _appui_abstract_properties_Description__WEBPACK_IMPORTED_MODULE_23__.PropertyDescriptionHelper),
272034
- /* harmony export */ "PropertyEditorParamTypes": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_24__.PropertyEditorParamTypes),
272035
- /* harmony export */ "PropertyRecord": () => (/* reexport safe */ _appui_abstract_properties_Record__WEBPACK_IMPORTED_MODULE_26__.PropertyRecord),
272036
- /* harmony export */ "PropertyValueFormat": () => (/* reexport safe */ _appui_abstract_properties_Value__WEBPACK_IMPORTED_MODULE_29__.PropertyValueFormat),
272037
- /* harmony export */ "RelativePosition": () => (/* reexport safe */ _appui_abstract_items_RelativePosition__WEBPACK_IMPORTED_MODULE_19__.RelativePosition),
272038
- /* harmony export */ "SpecialKey": () => (/* reexport safe */ _appui_abstract_common_KeyboardKey__WEBPACK_IMPORTED_MODULE_6__.SpecialKey),
272039
- /* harmony export */ "StagePanelLocation": () => (/* reexport safe */ _appui_abstract_widget_StagePanel__WEBPACK_IMPORTED_MODULE_47__.StagePanelLocation),
272040
- /* harmony export */ "StagePanelSection": () => (/* reexport safe */ _appui_abstract_widget_StagePanel__WEBPACK_IMPORTED_MODULE_47__.StagePanelSection),
272041
- /* harmony export */ "StageUsage": () => (/* reexport safe */ _appui_abstract_items_StageUsage__WEBPACK_IMPORTED_MODULE_20__.StageUsage),
272042
- /* harmony export */ "StandardContentLayouts": () => (/* reexport safe */ _appui_abstract_content_StandardContentLayouts__WEBPACK_IMPORTED_MODULE_8__.StandardContentLayouts),
272043
- /* harmony export */ "StandardEditorNames": () => (/* reexport safe */ _appui_abstract_properties_StandardEditorNames__WEBPACK_IMPORTED_MODULE_27__.StandardEditorNames),
272044
- /* harmony export */ "StandardTypeNames": () => (/* reexport safe */ _appui_abstract_properties_StandardTypeNames__WEBPACK_IMPORTED_MODULE_28__.StandardTypeNames),
272045
- /* harmony export */ "StatusBarItemsManager": () => (/* reexport safe */ _appui_abstract_statusbar_StatusBarItemsManager__WEBPACK_IMPORTED_MODULE_32__.StatusBarItemsManager),
272046
- /* harmony export */ "StatusBarLabelSide": () => (/* reexport safe */ _appui_abstract_statusbar_StatusBarItem__WEBPACK_IMPORTED_MODULE_31__.StatusBarLabelSide),
272047
- /* harmony export */ "StatusBarSection": () => (/* reexport safe */ _appui_abstract_statusbar_StatusBarItem__WEBPACK_IMPORTED_MODULE_31__.StatusBarSection),
272048
- /* harmony export */ "SyncPropertiesChangeEvent": () => (/* reexport safe */ _appui_abstract_dialogs_UiDataProvider__WEBPACK_IMPORTED_MODULE_11__.SyncPropertiesChangeEvent),
272049
- /* harmony export */ "TimeDisplay": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_24__.TimeDisplay),
272050
- /* harmony export */ "ToolbarItemUtilities": () => (/* reexport safe */ _appui_abstract_toolbars_ToolbarItem__WEBPACK_IMPORTED_MODULE_33__.ToolbarItemUtilities),
272051
- /* harmony export */ "ToolbarItemsManager": () => (/* reexport safe */ _appui_abstract_toolbars_ToolbarItemsManager__WEBPACK_IMPORTED_MODULE_34__.ToolbarItemsManager),
272052
- /* harmony export */ "ToolbarOrientation": () => (/* reexport safe */ _appui_abstract_toolbars_ToolbarItem__WEBPACK_IMPORTED_MODULE_33__.ToolbarOrientation),
272053
- /* harmony export */ "ToolbarUsage": () => (/* reexport safe */ _appui_abstract_toolbars_ToolbarItem__WEBPACK_IMPORTED_MODULE_33__.ToolbarUsage),
272054
- /* harmony export */ "UiAdmin": () => (/* reexport safe */ _appui_abstract_UiAdmin__WEBPACK_IMPORTED_MODULE_1__.UiAdmin),
272055
- /* harmony export */ "UiDataProvider": () => (/* reexport safe */ _appui_abstract_dialogs_UiDataProvider__WEBPACK_IMPORTED_MODULE_11__.UiDataProvider),
272056
- /* harmony export */ "UiError": () => (/* reexport safe */ _appui_abstract_utils_UiError__WEBPACK_IMPORTED_MODULE_40__.UiError),
272057
- /* harmony export */ "UiEvent": () => (/* reexport safe */ _appui_abstract_utils_UiEvent__WEBPACK_IMPORTED_MODULE_42__.UiEvent),
272058
- /* harmony export */ "UiEventDispatcher": () => (/* reexport safe */ _appui_abstract_utils_UiEventDispatcher__WEBPACK_IMPORTED_MODULE_41__.UiEventDispatcher),
272059
- /* harmony export */ "UiItemsApplicationAction": () => (/* reexport safe */ _appui_abstract_UiItemsManager__WEBPACK_IMPORTED_MODULE_2__.UiItemsApplicationAction),
272060
- /* harmony export */ "UiItemsManager": () => (/* reexport safe */ _appui_abstract_UiItemsManager__WEBPACK_IMPORTED_MODULE_2__.UiItemsManager),
272061
- /* harmony export */ "UiLayoutDataProvider": () => (/* reexport safe */ _appui_abstract_dialogs_UiLayoutDataProvider__WEBPACK_IMPORTED_MODULE_10__.UiLayoutDataProvider),
272062
- /* harmony export */ "UiSyncEvent": () => (/* reexport safe */ _appui_abstract_utils_UiEventDispatcher__WEBPACK_IMPORTED_MODULE_41__.UiSyncEvent),
272063
- /* harmony export */ "WidgetState": () => (/* reexport safe */ _appui_abstract_widget_WidgetState__WEBPACK_IMPORTED_MODULE_48__.WidgetState),
272064
- /* harmony export */ "convertSimple2RegExpPattern": () => (/* reexport safe */ _appui_abstract_utils_filter_strings__WEBPACK_IMPORTED_MODULE_45__.convertSimple2RegExpPattern),
272065
- /* harmony export */ "createMatches": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.createMatches),
272066
- /* harmony export */ "equalsIgnoreCase": () => (/* reexport safe */ _appui_abstract_utils_filter_strings__WEBPACK_IMPORTED_MODULE_45__.equalsIgnoreCase),
272067
- /* harmony export */ "fuzzyScore": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.fuzzyScore),
272068
- /* harmony export */ "fuzzyScoreGraceful": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.fuzzyScoreGraceful),
272069
- /* harmony export */ "fuzzyScoreGracefulAggressive": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.fuzzyScoreGracefulAggressive),
272070
- /* harmony export */ "getClassName": () => (/* reexport safe */ _appui_abstract_utils_misc__WEBPACK_IMPORTED_MODULE_36__.getClassName),
272071
- /* harmony export */ "isAbstractStatusBarActionItem": () => (/* reexport safe */ _appui_abstract_statusbar_StatusBarItem__WEBPACK_IMPORTED_MODULE_31__.isAbstractStatusBarActionItem),
272072
- /* harmony export */ "isAbstractStatusBarCustomItem": () => (/* reexport safe */ _appui_abstract_statusbar_StatusBarItem__WEBPACK_IMPORTED_MODULE_31__.isAbstractStatusBarCustomItem),
272073
- /* harmony export */ "isAbstractStatusBarLabelItem": () => (/* reexport safe */ _appui_abstract_statusbar_StatusBarItem__WEBPACK_IMPORTED_MODULE_31__.isAbstractStatusBarLabelItem),
272074
- /* harmony export */ "isActionItem": () => (/* reexport safe */ _appui_abstract_backstage_BackstageItem__WEBPACK_IMPORTED_MODULE_4__.isActionItem),
272075
- /* harmony export */ "isArrowKey": () => (/* reexport safe */ _appui_abstract_common_KeyboardKey__WEBPACK_IMPORTED_MODULE_6__.isArrowKey),
272076
- /* harmony export */ "isButtonGroupEditorParams": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_24__.isButtonGroupEditorParams),
272077
- /* harmony export */ "isColorEditorParams": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_24__.isColorEditorParams),
272078
- /* harmony export */ "isCustomFormattedNumberParams": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_24__.isCustomFormattedNumberParams),
272079
- /* harmony export */ "isIconListEditorParams": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_24__.isIconListEditorParams),
272080
- /* harmony export */ "isInputEditorSizeParams": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_24__.isInputEditorSizeParams),
272081
- /* harmony export */ "isLetter": () => (/* reexport safe */ _appui_abstract_utils_isLetter__WEBPACK_IMPORTED_MODULE_37__.isLetter),
272082
- /* harmony export */ "isLowerAsciiLetter": () => (/* reexport safe */ _appui_abstract_utils_filter_strings__WEBPACK_IMPORTED_MODULE_45__.isLowerAsciiLetter),
272083
- /* harmony export */ "isPatternInWord": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.isPatternInWord),
272084
- /* harmony export */ "isStageLauncher": () => (/* reexport safe */ _appui_abstract_backstage_BackstageItem__WEBPACK_IMPORTED_MODULE_4__.isStageLauncher),
272085
- /* harmony export */ "isSuppressLabelEditorParams": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_24__.isSuppressLabelEditorParams),
272086
- /* harmony export */ "isUpperAsciiLetter": () => (/* reexport safe */ _appui_abstract_utils_filter_strings__WEBPACK_IMPORTED_MODULE_45__.isUpperAsciiLetter),
272087
- /* harmony export */ "loggerCategory": () => (/* reexport safe */ _appui_abstract_utils_misc__WEBPACK_IMPORTED_MODULE_36__.loggerCategory),
272088
- /* harmony export */ "matchesCamelCase": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.matchesCamelCase),
272089
- /* harmony export */ "matchesContiguousSubString": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.matchesContiguousSubString),
272090
- /* harmony export */ "matchesFuzzy": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.matchesFuzzy),
272091
- /* harmony export */ "matchesFuzzy2": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.matchesFuzzy2),
272092
- /* harmony export */ "matchesPrefix": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.matchesPrefix),
272093
- /* harmony export */ "matchesStrictPrefix": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.matchesStrictPrefix),
272094
- /* harmony export */ "matchesSubString": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.matchesSubString),
272095
- /* harmony export */ "matchesWords": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.matchesWords),
272096
- /* harmony export */ "or": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__.or),
272097
- /* harmony export */ "startsWithIgnoreCase": () => (/* reexport safe */ _appui_abstract_utils_filter_strings__WEBPACK_IMPORTED_MODULE_45__.startsWithIgnoreCase)
272229
+ /* harmony export */ "AlternateDateFormats": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_17__.AlternateDateFormats),
272230
+ /* harmony export */ "BadgeType": () => (/* reexport safe */ _appui_abstract_items_BadgeType__WEBPACK_IMPORTED_MODULE_10__.BadgeType),
272231
+ /* harmony export */ "BaseQuantityDescription": () => (/* reexport safe */ _appui_abstract_quantity_BaseQuantityDescription__WEBPACK_IMPORTED_MODULE_23__.BaseQuantityDescription),
272232
+ /* harmony export */ "ConditionalBooleanValue": () => (/* reexport safe */ _appui_abstract_items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_11__.ConditionalBooleanValue),
272233
+ /* harmony export */ "ConditionalStringValue": () => (/* reexport safe */ _appui_abstract_items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_12__.ConditionalStringValue),
272234
+ /* harmony export */ "DialogButtonStyle": () => (/* reexport safe */ _appui_abstract_dialogs_UiLayoutDataProvider__WEBPACK_IMPORTED_MODULE_5__.DialogButtonStyle),
272235
+ /* harmony export */ "DialogButtonType": () => (/* reexport safe */ _appui_abstract_dialogs_UiLayoutDataProvider__WEBPACK_IMPORTED_MODULE_5__.DialogButtonType),
272236
+ /* harmony export */ "DialogLayoutDataProvider": () => (/* reexport safe */ _appui_abstract_dialogs_UiLayoutDataProvider__WEBPACK_IMPORTED_MODULE_5__.DialogLayoutDataProvider),
272237
+ /* harmony export */ "DialogProperty": () => (/* reexport safe */ _appui_abstract_dialogs_DialogItem__WEBPACK_IMPORTED_MODULE_4__.DialogProperty),
272238
+ /* harmony export */ "DisplayMessageType": () => (/* reexport safe */ _appui_abstract_notification_MessagePresenter__WEBPACK_IMPORTED_MODULE_14__.DisplayMessageType),
272239
+ /* harmony export */ "FunctionKey": () => (/* reexport safe */ _appui_abstract_common_KeyboardKey__WEBPACK_IMPORTED_MODULE_1__.FunctionKey),
272240
+ /* harmony export */ "FuzzyScore": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.FuzzyScore),
272241
+ /* harmony export */ "GenericUiEvent": () => (/* reexport safe */ _appui_abstract_UiAdmin__WEBPACK_IMPORTED_MODULE_0__.GenericUiEvent),
272242
+ /* harmony export */ "IconSpecUtilities": () => (/* reexport safe */ _appui_abstract_utils_IconSpecUtilities__WEBPACK_IMPORTED_MODULE_28__.IconSpecUtilities),
272243
+ /* harmony export */ "MessageSeverity": () => (/* reexport safe */ _appui_abstract_notification_MessageSeverity__WEBPACK_IMPORTED_MODULE_15__.MessageSeverity),
272244
+ /* harmony export */ "PropertyChangeStatus": () => (/* reexport safe */ _appui_abstract_dialogs_UiDataProvider__WEBPACK_IMPORTED_MODULE_6__.PropertyChangeStatus),
272245
+ /* harmony export */ "PropertyDescriptionHelper": () => (/* reexport safe */ _appui_abstract_properties_Description__WEBPACK_IMPORTED_MODULE_16__.PropertyDescriptionHelper),
272246
+ /* harmony export */ "PropertyEditorParamTypes": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_17__.PropertyEditorParamTypes),
272247
+ /* harmony export */ "PropertyRecord": () => (/* reexport safe */ _appui_abstract_properties_Record__WEBPACK_IMPORTED_MODULE_19__.PropertyRecord),
272248
+ /* harmony export */ "PropertyValueFormat": () => (/* reexport safe */ _appui_abstract_properties_Value__WEBPACK_IMPORTED_MODULE_22__.PropertyValueFormat),
272249
+ /* harmony export */ "RelativePosition": () => (/* reexport safe */ _appui_abstract_items_RelativePosition__WEBPACK_IMPORTED_MODULE_13__.RelativePosition),
272250
+ /* harmony export */ "SpecialKey": () => (/* reexport safe */ _appui_abstract_common_KeyboardKey__WEBPACK_IMPORTED_MODULE_1__.SpecialKey),
272251
+ /* harmony export */ "StandardContentLayouts": () => (/* reexport safe */ _appui_abstract_content_StandardContentLayouts__WEBPACK_IMPORTED_MODULE_3__.StandardContentLayouts),
272252
+ /* harmony export */ "StandardEditorNames": () => (/* reexport safe */ _appui_abstract_properties_StandardEditorNames__WEBPACK_IMPORTED_MODULE_20__.StandardEditorNames),
272253
+ /* harmony export */ "StandardTypeNames": () => (/* reexport safe */ _appui_abstract_properties_StandardTypeNames__WEBPACK_IMPORTED_MODULE_21__.StandardTypeNames),
272254
+ /* harmony export */ "SyncPropertiesChangeEvent": () => (/* reexport safe */ _appui_abstract_dialogs_UiDataProvider__WEBPACK_IMPORTED_MODULE_6__.SyncPropertiesChangeEvent),
272255
+ /* harmony export */ "TimeDisplay": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_17__.TimeDisplay),
272256
+ /* harmony export */ "ToolbarItemUtilities": () => (/* reexport safe */ _appui_abstract_toolbars_ToolbarItem__WEBPACK_IMPORTED_MODULE_24__.ToolbarItemUtilities),
272257
+ /* harmony export */ "UiAdmin": () => (/* reexport safe */ _appui_abstract_UiAdmin__WEBPACK_IMPORTED_MODULE_0__.UiAdmin),
272258
+ /* harmony export */ "UiDataProvider": () => (/* reexport safe */ _appui_abstract_dialogs_UiDataProvider__WEBPACK_IMPORTED_MODULE_6__.UiDataProvider),
272259
+ /* harmony export */ "UiError": () => (/* reexport safe */ _appui_abstract_utils_UiError__WEBPACK_IMPORTED_MODULE_30__.UiError),
272260
+ /* harmony export */ "UiEvent": () => (/* reexport safe */ _appui_abstract_utils_UiEvent__WEBPACK_IMPORTED_MODULE_32__.UiEvent),
272261
+ /* harmony export */ "UiEventDispatcher": () => (/* reexport safe */ _appui_abstract_utils_UiEventDispatcher__WEBPACK_IMPORTED_MODULE_31__.UiEventDispatcher),
272262
+ /* harmony export */ "UiLayoutDataProvider": () => (/* reexport safe */ _appui_abstract_dialogs_UiLayoutDataProvider__WEBPACK_IMPORTED_MODULE_5__.UiLayoutDataProvider),
272263
+ /* harmony export */ "UiSyncEvent": () => (/* reexport safe */ _appui_abstract_utils_UiEventDispatcher__WEBPACK_IMPORTED_MODULE_31__.UiSyncEvent),
272264
+ /* harmony export */ "convertSimple2RegExpPattern": () => (/* reexport safe */ _appui_abstract_utils_filter_strings__WEBPACK_IMPORTED_MODULE_35__.convertSimple2RegExpPattern),
272265
+ /* harmony export */ "createMatches": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.createMatches),
272266
+ /* harmony export */ "equalsIgnoreCase": () => (/* reexport safe */ _appui_abstract_utils_filter_strings__WEBPACK_IMPORTED_MODULE_35__.equalsIgnoreCase),
272267
+ /* harmony export */ "fuzzyScore": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.fuzzyScore),
272268
+ /* harmony export */ "fuzzyScoreGraceful": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.fuzzyScoreGraceful),
272269
+ /* harmony export */ "fuzzyScoreGracefulAggressive": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.fuzzyScoreGracefulAggressive),
272270
+ /* harmony export */ "getClassName": () => (/* reexport safe */ _appui_abstract_utils_misc__WEBPACK_IMPORTED_MODULE_26__.getClassName),
272271
+ /* harmony export */ "isArrowKey": () => (/* reexport safe */ _appui_abstract_common_KeyboardKey__WEBPACK_IMPORTED_MODULE_1__.isArrowKey),
272272
+ /* harmony export */ "isButtonGroupEditorParams": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_17__.isButtonGroupEditorParams),
272273
+ /* harmony export */ "isColorEditorParams": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_17__.isColorEditorParams),
272274
+ /* harmony export */ "isCustomFormattedNumberParams": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_17__.isCustomFormattedNumberParams),
272275
+ /* harmony export */ "isIconListEditorParams": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_17__.isIconListEditorParams),
272276
+ /* harmony export */ "isInputEditorSizeParams": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_17__.isInputEditorSizeParams),
272277
+ /* harmony export */ "isLetter": () => (/* reexport safe */ _appui_abstract_utils_isLetter__WEBPACK_IMPORTED_MODULE_27__.isLetter),
272278
+ /* harmony export */ "isLowerAsciiLetter": () => (/* reexport safe */ _appui_abstract_utils_filter_strings__WEBPACK_IMPORTED_MODULE_35__.isLowerAsciiLetter),
272279
+ /* harmony export */ "isPatternInWord": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.isPatternInWord),
272280
+ /* harmony export */ "isSuppressLabelEditorParams": () => (/* reexport safe */ _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_17__.isSuppressLabelEditorParams),
272281
+ /* harmony export */ "isUpperAsciiLetter": () => (/* reexport safe */ _appui_abstract_utils_filter_strings__WEBPACK_IMPORTED_MODULE_35__.isUpperAsciiLetter),
272282
+ /* harmony export */ "loggerCategory": () => (/* reexport safe */ _appui_abstract_utils_misc__WEBPACK_IMPORTED_MODULE_26__.loggerCategory),
272283
+ /* harmony export */ "matchesCamelCase": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.matchesCamelCase),
272284
+ /* harmony export */ "matchesContiguousSubString": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.matchesContiguousSubString),
272285
+ /* harmony export */ "matchesFuzzy": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.matchesFuzzy),
272286
+ /* harmony export */ "matchesFuzzy2": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.matchesFuzzy2),
272287
+ /* harmony export */ "matchesPrefix": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.matchesPrefix),
272288
+ /* harmony export */ "matchesStrictPrefix": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.matchesStrictPrefix),
272289
+ /* harmony export */ "matchesSubString": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.matchesSubString),
272290
+ /* harmony export */ "matchesWords": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.matchesWords),
272291
+ /* harmony export */ "or": () => (/* reexport safe */ _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__.or),
272292
+ /* harmony export */ "startsWithIgnoreCase": () => (/* reexport safe */ _appui_abstract_utils_filter_strings__WEBPACK_IMPORTED_MODULE_35__.startsWithIgnoreCase)
272098
272293
  /* harmony export */ });
272099
- /* harmony import */ var _appui_abstract_BaseUiItemsProvider__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./appui-abstract/BaseUiItemsProvider */ "../../ui/appui-abstract/lib/esm/appui-abstract/BaseUiItemsProvider.js");
272100
- /* harmony import */ var _appui_abstract_UiAdmin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./appui-abstract/UiAdmin */ "../../ui/appui-abstract/lib/esm/appui-abstract/UiAdmin.js");
272101
- /* harmony import */ var _appui_abstract_UiItemsManager__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./appui-abstract/UiItemsManager */ "../../ui/appui-abstract/lib/esm/appui-abstract/UiItemsManager.js");
272102
- /* harmony import */ var _appui_abstract_UiItemsProvider__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./appui-abstract/UiItemsProvider */ "../../ui/appui-abstract/lib/esm/appui-abstract/UiItemsProvider.js");
272103
- /* harmony import */ var _appui_abstract_backstage_BackstageItem__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./appui-abstract/backstage/BackstageItem */ "../../ui/appui-abstract/lib/esm/appui-abstract/backstage/BackstageItem.js");
272104
- /* harmony import */ var _appui_abstract_backstage_BackstageItemsManager__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./appui-abstract/backstage/BackstageItemsManager */ "../../ui/appui-abstract/lib/esm/appui-abstract/backstage/BackstageItemsManager.js");
272105
- /* harmony import */ var _appui_abstract_common_KeyboardKey__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./appui-abstract/common/KeyboardKey */ "../../ui/appui-abstract/lib/esm/appui-abstract/common/KeyboardKey.js");
272106
- /* harmony import */ var _appui_abstract_content_ContentLayoutProps__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./appui-abstract/content/ContentLayoutProps */ "../../ui/appui-abstract/lib/esm/appui-abstract/content/ContentLayoutProps.js");
272107
- /* harmony import */ var _appui_abstract_content_StandardContentLayouts__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./appui-abstract/content/StandardContentLayouts */ "../../ui/appui-abstract/lib/esm/appui-abstract/content/StandardContentLayouts.js");
272108
- /* harmony import */ var _appui_abstract_dialogs_DialogItem__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./appui-abstract/dialogs/DialogItem */ "../../ui/appui-abstract/lib/esm/appui-abstract/dialogs/DialogItem.js");
272109
- /* harmony import */ var _appui_abstract_dialogs_UiLayoutDataProvider__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./appui-abstract/dialogs/UiLayoutDataProvider */ "../../ui/appui-abstract/lib/esm/appui-abstract/dialogs/UiLayoutDataProvider.js");
272110
- /* harmony import */ var _appui_abstract_dialogs_UiDataProvider__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./appui-abstract/dialogs/UiDataProvider */ "../../ui/appui-abstract/lib/esm/appui-abstract/dialogs/UiDataProvider.js");
272111
- /* harmony import */ var _appui_abstract_items_AbstractItemProps__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./appui-abstract/items/AbstractItemProps */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/AbstractItemProps.js");
272112
- /* harmony import */ var _appui_abstract_items_AbstractMenuItemProps__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./appui-abstract/items/AbstractMenuItemProps */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/AbstractMenuItemProps.js");
272113
- /* harmony import */ var _appui_abstract_items_AbstractToolbarProps__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./appui-abstract/items/AbstractToolbarProps */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/AbstractToolbarProps.js");
272114
- /* harmony import */ var _appui_abstract_items_BadgeType__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./appui-abstract/items/BadgeType */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/BadgeType.js");
272115
- /* harmony import */ var _appui_abstract_items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./appui-abstract/items/ConditionalBooleanValue */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/ConditionalBooleanValue.js");
272116
- /* harmony import */ var _appui_abstract_items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./appui-abstract/items/ConditionalStringValue */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/ConditionalStringValue.js");
272117
- /* harmony import */ var _appui_abstract_items_ProvidedItem__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./appui-abstract/items/ProvidedItem */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/ProvidedItem.js");
272118
- /* harmony import */ var _appui_abstract_items_RelativePosition__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./appui-abstract/items/RelativePosition */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/RelativePosition.js");
272119
- /* harmony import */ var _appui_abstract_items_StageUsage__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./appui-abstract/items/StageUsage */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/StageUsage.js");
272120
- /* harmony import */ var _appui_abstract_notification_MessagePresenter__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./appui-abstract/notification/MessagePresenter */ "../../ui/appui-abstract/lib/esm/appui-abstract/notification/MessagePresenter.js");
272121
- /* harmony import */ var _appui_abstract_notification_MessageSeverity__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./appui-abstract/notification/MessageSeverity */ "../../ui/appui-abstract/lib/esm/appui-abstract/notification/MessageSeverity.js");
272122
- /* harmony import */ var _appui_abstract_properties_Description__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./appui-abstract/properties/Description */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/Description.js");
272123
- /* harmony import */ var _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./appui-abstract/properties/EditorParams */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/EditorParams.js");
272124
- /* harmony import */ var _appui_abstract_properties_PrimitiveTypes__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./appui-abstract/properties/PrimitiveTypes */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/PrimitiveTypes.js");
272125
- /* harmony import */ var _appui_abstract_properties_Record__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./appui-abstract/properties/Record */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/Record.js");
272126
- /* harmony import */ var _appui_abstract_properties_StandardEditorNames__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./appui-abstract/properties/StandardEditorNames */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/StandardEditorNames.js");
272127
- /* harmony import */ var _appui_abstract_properties_StandardTypeNames__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./appui-abstract/properties/StandardTypeNames */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/StandardTypeNames.js");
272128
- /* harmony import */ var _appui_abstract_properties_Value__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./appui-abstract/properties/Value */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/Value.js");
272129
- /* harmony import */ var _appui_abstract_quantity_BaseQuantityDescription__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./appui-abstract/quantity/BaseQuantityDescription */ "../../ui/appui-abstract/lib/esm/appui-abstract/quantity/BaseQuantityDescription.js");
272130
- /* harmony import */ var _appui_abstract_statusbar_StatusBarItem__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./appui-abstract/statusbar/StatusBarItem */ "../../ui/appui-abstract/lib/esm/appui-abstract/statusbar/StatusBarItem.js");
272131
- /* harmony import */ var _appui_abstract_statusbar_StatusBarItemsManager__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./appui-abstract/statusbar/StatusBarItemsManager */ "../../ui/appui-abstract/lib/esm/appui-abstract/statusbar/StatusBarItemsManager.js");
272132
- /* harmony import */ var _appui_abstract_toolbars_ToolbarItem__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ./appui-abstract/toolbars/ToolbarItem */ "../../ui/appui-abstract/lib/esm/appui-abstract/toolbars/ToolbarItem.js");
272133
- /* harmony import */ var _appui_abstract_toolbars_ToolbarItemsManager__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ./appui-abstract/toolbars/ToolbarItemsManager */ "../../ui/appui-abstract/lib/esm/appui-abstract/toolbars/ToolbarItemsManager.js");
272134
- /* harmony import */ var _appui_abstract_utils_callbacks__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ./appui-abstract/utils/callbacks */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/callbacks.js");
272135
- /* harmony import */ var _appui_abstract_utils_misc__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! ./appui-abstract/utils/misc */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/misc.js");
272136
- /* harmony import */ var _appui_abstract_utils_isLetter__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! ./appui-abstract/utils/isLetter */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/isLetter.js");
272137
- /* harmony import */ var _appui_abstract_utils_IconSpecUtilities__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(/*! ./appui-abstract/utils/IconSpecUtilities */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/IconSpecUtilities.js");
272138
- /* harmony import */ var _appui_abstract_utils_PointProps__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(/*! ./appui-abstract/utils/PointProps */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/PointProps.js");
272139
- /* harmony import */ var _appui_abstract_utils_UiError__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(/*! ./appui-abstract/utils/UiError */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/UiError.js");
272140
- /* harmony import */ var _appui_abstract_utils_UiEventDispatcher__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(/*! ./appui-abstract/utils/UiEventDispatcher */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/UiEventDispatcher.js");
272141
- /* harmony import */ var _appui_abstract_utils_UiEvent__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(/*! ./appui-abstract/utils/UiEvent */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/UiEvent.js");
272142
- /* harmony import */ var _appui_abstract_utils_filter_charCode__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(/*! ./appui-abstract/utils/filter/charCode */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/filter/charCode.js");
272143
- /* harmony import */ var _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(/*! ./appui-abstract/utils/filter/filters */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/filter/filters.js");
272144
- /* harmony import */ var _appui_abstract_utils_filter_strings__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(/*! ./appui-abstract/utils/filter/strings */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/filter/strings.js");
272145
- /* harmony import */ var _appui_abstract_widget_AbstractWidgetProps__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(/*! ./appui-abstract/widget/AbstractWidgetProps */ "../../ui/appui-abstract/lib/esm/appui-abstract/widget/AbstractWidgetProps.js");
272146
- /* harmony import */ var _appui_abstract_widget_StagePanel__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(/*! ./appui-abstract/widget/StagePanel */ "../../ui/appui-abstract/lib/esm/appui-abstract/widget/StagePanel.js");
272147
- /* harmony import */ var _appui_abstract_widget_WidgetState__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(/*! ./appui-abstract/widget/WidgetState */ "../../ui/appui-abstract/lib/esm/appui-abstract/widget/WidgetState.js");
272294
+ /* harmony import */ var _appui_abstract_UiAdmin__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./appui-abstract/UiAdmin */ "../../ui/appui-abstract/lib/esm/appui-abstract/UiAdmin.js");
272295
+ /* harmony import */ var _appui_abstract_common_KeyboardKey__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./appui-abstract/common/KeyboardKey */ "../../ui/appui-abstract/lib/esm/appui-abstract/common/KeyboardKey.js");
272296
+ /* harmony import */ var _appui_abstract_content_ContentLayoutProps__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./appui-abstract/content/ContentLayoutProps */ "../../ui/appui-abstract/lib/esm/appui-abstract/content/ContentLayoutProps.js");
272297
+ /* harmony import */ var _appui_abstract_content_StandardContentLayouts__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./appui-abstract/content/StandardContentLayouts */ "../../ui/appui-abstract/lib/esm/appui-abstract/content/StandardContentLayouts.js");
272298
+ /* harmony import */ var _appui_abstract_dialogs_DialogItem__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./appui-abstract/dialogs/DialogItem */ "../../ui/appui-abstract/lib/esm/appui-abstract/dialogs/DialogItem.js");
272299
+ /* harmony import */ var _appui_abstract_dialogs_UiLayoutDataProvider__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./appui-abstract/dialogs/UiLayoutDataProvider */ "../../ui/appui-abstract/lib/esm/appui-abstract/dialogs/UiLayoutDataProvider.js");
272300
+ /* harmony import */ var _appui_abstract_dialogs_UiDataProvider__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./appui-abstract/dialogs/UiDataProvider */ "../../ui/appui-abstract/lib/esm/appui-abstract/dialogs/UiDataProvider.js");
272301
+ /* harmony import */ var _appui_abstract_items_AbstractItemProps__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./appui-abstract/items/AbstractItemProps */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/AbstractItemProps.js");
272302
+ /* harmony import */ var _appui_abstract_items_AbstractMenuItemProps__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./appui-abstract/items/AbstractMenuItemProps */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/AbstractMenuItemProps.js");
272303
+ /* harmony import */ var _appui_abstract_items_AbstractToolbarProps__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./appui-abstract/items/AbstractToolbarProps */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/AbstractToolbarProps.js");
272304
+ /* harmony import */ var _appui_abstract_items_BadgeType__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./appui-abstract/items/BadgeType */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/BadgeType.js");
272305
+ /* harmony import */ var _appui_abstract_items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./appui-abstract/items/ConditionalBooleanValue */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/ConditionalBooleanValue.js");
272306
+ /* harmony import */ var _appui_abstract_items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./appui-abstract/items/ConditionalStringValue */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/ConditionalStringValue.js");
272307
+ /* harmony import */ var _appui_abstract_items_RelativePosition__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./appui-abstract/items/RelativePosition */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/RelativePosition.js");
272308
+ /* harmony import */ var _appui_abstract_notification_MessagePresenter__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./appui-abstract/notification/MessagePresenter */ "../../ui/appui-abstract/lib/esm/appui-abstract/notification/MessagePresenter.js");
272309
+ /* harmony import */ var _appui_abstract_notification_MessageSeverity__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./appui-abstract/notification/MessageSeverity */ "../../ui/appui-abstract/lib/esm/appui-abstract/notification/MessageSeverity.js");
272310
+ /* harmony import */ var _appui_abstract_properties_Description__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./appui-abstract/properties/Description */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/Description.js");
272311
+ /* harmony import */ var _appui_abstract_properties_EditorParams__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./appui-abstract/properties/EditorParams */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/EditorParams.js");
272312
+ /* harmony import */ var _appui_abstract_properties_PrimitiveTypes__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./appui-abstract/properties/PrimitiveTypes */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/PrimitiveTypes.js");
272313
+ /* harmony import */ var _appui_abstract_properties_Record__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./appui-abstract/properties/Record */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/Record.js");
272314
+ /* harmony import */ var _appui_abstract_properties_StandardEditorNames__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./appui-abstract/properties/StandardEditorNames */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/StandardEditorNames.js");
272315
+ /* harmony import */ var _appui_abstract_properties_StandardTypeNames__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./appui-abstract/properties/StandardTypeNames */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/StandardTypeNames.js");
272316
+ /* harmony import */ var _appui_abstract_properties_Value__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./appui-abstract/properties/Value */ "../../ui/appui-abstract/lib/esm/appui-abstract/properties/Value.js");
272317
+ /* harmony import */ var _appui_abstract_quantity_BaseQuantityDescription__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./appui-abstract/quantity/BaseQuantityDescription */ "../../ui/appui-abstract/lib/esm/appui-abstract/quantity/BaseQuantityDescription.js");
272318
+ /* harmony import */ var _appui_abstract_toolbars_ToolbarItem__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./appui-abstract/toolbars/ToolbarItem */ "../../ui/appui-abstract/lib/esm/appui-abstract/toolbars/ToolbarItem.js");
272319
+ /* harmony import */ var _appui_abstract_utils_callbacks__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./appui-abstract/utils/callbacks */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/callbacks.js");
272320
+ /* harmony import */ var _appui_abstract_utils_misc__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./appui-abstract/utils/misc */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/misc.js");
272321
+ /* harmony import */ var _appui_abstract_utils_isLetter__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./appui-abstract/utils/isLetter */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/isLetter.js");
272322
+ /* harmony import */ var _appui_abstract_utils_IconSpecUtilities__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./appui-abstract/utils/IconSpecUtilities */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/IconSpecUtilities.js");
272323
+ /* harmony import */ var _appui_abstract_utils_PointProps__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./appui-abstract/utils/PointProps */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/PointProps.js");
272324
+ /* harmony import */ var _appui_abstract_utils_UiError__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./appui-abstract/utils/UiError */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/UiError.js");
272325
+ /* harmony import */ var _appui_abstract_utils_UiEventDispatcher__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./appui-abstract/utils/UiEventDispatcher */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/UiEventDispatcher.js");
272326
+ /* harmony import */ var _appui_abstract_utils_UiEvent__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./appui-abstract/utils/UiEvent */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/UiEvent.js");
272327
+ /* harmony import */ var _appui_abstract_utils_filter_charCode__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ./appui-abstract/utils/filter/charCode */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/filter/charCode.js");
272328
+ /* harmony import */ var _appui_abstract_utils_filter_filters__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! ./appui-abstract/utils/filter/filters */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/filter/filters.js");
272329
+ /* harmony import */ var _appui_abstract_utils_filter_strings__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! ./appui-abstract/utils/filter/strings */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/filter/strings.js");
272148
272330
  /*---------------------------------------------------------------------------------------------
272149
272331
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
272150
272332
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -272169,21 +272351,6 @@ __webpack_require__.r(__webpack_exports__);
272169
272351
 
272170
272352
 
272171
272353
 
272172
-
272173
-
272174
-
272175
-
272176
-
272177
-
272178
-
272179
-
272180
-
272181
-
272182
-
272183
-
272184
-
272185
-
272186
-
272187
272354
 
272188
272355
 
272189
272356
 
@@ -272204,10 +272371,6 @@ __webpack_require__.r(__webpack_exports__);
272204
272371
  * The appui-abstract package contains abstractions for UI controls, such as toolbars, buttons and menus.
272205
272372
  * For more information, see [learning about appui-abstract]($docs/learning/ui/abstract/index.md).
272206
272373
  */
272207
- /**
272208
- * @docs-group-description Backstage
272209
- * Abstractions used by appui-react package to create and manage the display Backstage menu items.
272210
- */
272211
272374
  /**
272212
272375
  * @docs-group-description ContentView
272213
272376
  * Classes and interfaces used with Content Layouts.
@@ -272228,10 +272391,6 @@ __webpack_require__.r(__webpack_exports__);
272228
272391
  * @docs-group-description Properties
272229
272392
  * Properties system for data input and formatting.
272230
272393
  */
272231
- /**
272232
- * @docs-group-description StatusBar
272233
- * Classes for creating and managing items in the status bar.
272234
- */
272235
272394
  /**
272236
272395
  * @docs-group-description Toolbar
272237
272396
  * Classes for creating and managing items in a toolbar.
@@ -272240,110 +272399,10 @@ __webpack_require__.r(__webpack_exports__);
272240
272399
  * @docs-group-description UiAdmin
272241
272400
  * Abstractions for UI controls, such as toolbars, buttons and menus and are callable from IModelApp.uiAdmin in core-frontend.
272242
272401
  */
272243
- /**
272244
- * @docs-group-description UiItemsProvider
272245
- * Interface for specifying UI items to be inserted at runtime.
272246
- */
272247
272402
  /**
272248
272403
  * @docs-group-description Utilities
272249
272404
  * Various utility classes for working with a UI.
272250
272405
  */
272251
- /**
272252
- * @docs-group-description Widget
272253
- * Classes for creating and providing Widgets.
272254
- */
272255
-
272256
-
272257
- /***/ }),
272258
-
272259
- /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/BaseUiItemsProvider.js":
272260
- /*!*****************************************************************************!*\
272261
- !*** ../../ui/appui-abstract/lib/esm/appui-abstract/BaseUiItemsProvider.js ***!
272262
- \*****************************************************************************/
272263
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
272264
-
272265
- "use strict";
272266
- __webpack_require__.r(__webpack_exports__);
272267
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
272268
- /* harmony export */ "BaseUiItemsProvider": () => (/* binding */ BaseUiItemsProvider)
272269
- /* harmony export */ });
272270
- /* harmony import */ var _items_StageUsage__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./items/StageUsage */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/StageUsage.js");
272271
- /* harmony import */ var _UiItemsManager__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./UiItemsManager */ "../../ui/appui-abstract/lib/esm/appui-abstract/UiItemsManager.js");
272272
- /*---------------------------------------------------------------------------------------------
272273
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
272274
- * See LICENSE.md in the project root for license terms and full copyright notice.
272275
- *--------------------------------------------------------------------------------------------*/
272276
- /* eslint-disable deprecation/deprecation */
272277
- /** @packageDocumentation
272278
- * @module UiItemsProvider
272279
- */
272280
-
272281
-
272282
- /** Base implementation of a UiItemsProvider. The base class allows the user to pass in a function that is used to determine if the
272283
- * active stage should be provided items. Derived provider classes should override the `xxxInternal` methods to provide items.
272284
- * @deprecated in 3.6. Use [BaseUiItemsProvider]($appui-react) instead.
272285
- * @public
272286
- */
272287
- class BaseUiItemsProvider {
272288
- /*
272289
- * @param providerId - unique identifier for this instance of the provider. This is required in case separate packages want
272290
- * to set up custom stage with their own subset of standard tools.
272291
- * @param isSupportedStage - optional function that will be called to determine if tools should be added to current stage. If not set and
272292
- * the current stage's `usage` is set to `StageUsage.General` then the provider will add items to frontstage.
272293
- */
272294
- constructor(_providerId, isSupportedStage) {
272295
- this._providerId = _providerId;
272296
- this.isSupportedStage = isSupportedStage;
272297
- }
272298
- get id() { return this._providerId; }
272299
- onUnregister() { }
272300
- unregister() {
272301
- _UiItemsManager__WEBPACK_IMPORTED_MODULE_1__.UiItemsManager.unregister(this._providerId);
272302
- }
272303
- /** Backstage items are not stage specific so no callback is used */
272304
- provideBackstageItems() {
272305
- return [];
272306
- }
272307
- provideToolbarButtonItemsInternal(_stageId, _stageUsage, _toolbarUsage, _toolbarOrientation, _stageAppData) {
272308
- return [];
272309
- }
272310
- provideToolbarButtonItems(stageId, stageUsage, toolbarUsage, toolbarOrientation, stageAppData) {
272311
- let provideToStage = false;
272312
- if (this.isSupportedStage) {
272313
- provideToStage = this.isSupportedStage(stageId, stageUsage, stageAppData, this);
272314
- }
272315
- else {
272316
- provideToStage = (stageUsage === _items_StageUsage__WEBPACK_IMPORTED_MODULE_0__.StageUsage.General);
272317
- }
272318
- return provideToStage ? this.provideToolbarButtonItemsInternal(stageId, stageUsage, toolbarUsage, toolbarOrientation, stageAppData) : [];
272319
- }
272320
- provideStatusBarItemsInternal(_stageId, _stageUsage, _stageAppData) {
272321
- return [];
272322
- }
272323
- provideStatusBarItems(stageId, stageUsage, stageAppData) {
272324
- let provideToStage = false;
272325
- if (this.isSupportedStage) {
272326
- provideToStage = this.isSupportedStage(stageId, stageUsage, stageAppData, this);
272327
- }
272328
- else {
272329
- provideToStage = (stageUsage === _items_StageUsage__WEBPACK_IMPORTED_MODULE_0__.StageUsage.General);
272330
- }
272331
- return provideToStage ? this.provideStatusBarItemsInternal(stageId, stageUsage, stageAppData) : [];
272332
- }
272333
- provideWidgetsInternal(_stageId, _stageUsage, _location, _section, _zoneLocation, _stageAppData) {
272334
- return [];
272335
- }
272336
- provideWidgets(stageId, stageUsage, location, section, _zoneLocation, stageAppData) {
272337
- let provideToStage = false;
272338
- if (this.isSupportedStage) {
272339
- provideToStage = this.isSupportedStage(stageId, stageUsage, stageAppData, this);
272340
- }
272341
- else {
272342
- provideToStage = (stageUsage === _items_StageUsage__WEBPACK_IMPORTED_MODULE_0__.StageUsage.General);
272343
- }
272344
- return provideToStage ? this.provideWidgetsInternal(stageId, stageUsage, location, section, _zoneLocation, stageAppData) : [];
272345
- }
272346
- }
272347
272406
 
272348
272407
 
272349
272408
  /***/ }),
@@ -272585,464 +272644,6 @@ UiAdmin.onGenericUiEvent = new GenericUiEvent();
272585
272644
 
272586
272645
 
272587
272646
 
272588
- /***/ }),
272589
-
272590
- /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/UiItemsManager.js":
272591
- /*!************************************************************************!*\
272592
- !*** ../../ui/appui-abstract/lib/esm/appui-abstract/UiItemsManager.js ***!
272593
- \************************************************************************/
272594
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
272595
-
272596
- "use strict";
272597
- __webpack_require__.r(__webpack_exports__);
272598
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
272599
- /* harmony export */ "UiItemsApplicationAction": () => (/* binding */ UiItemsApplicationAction),
272600
- /* harmony export */ "UiItemsManager": () => (/* binding */ UiItemsManager)
272601
- /* harmony export */ });
272602
- /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
272603
- /* harmony import */ var _utils_misc__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils/misc */ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/misc.js");
272604
- /*---------------------------------------------------------------------------------------------
272605
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
272606
- * See LICENSE.md in the project root for license terms and full copyright notice.
272607
- *--------------------------------------------------------------------------------------------*/
272608
- /* eslint-disable deprecation/deprecation */
272609
- /** @packageDocumentation
272610
- * @module UiItemsProvider
272611
- */
272612
-
272613
-
272614
- /** Action taken by the application on item provided by a UiItemsProvider
272615
- * @public @deprecated in 3.2. This was only used by the previously removed UiItemsArbiter.
272616
- */
272617
- var UiItemsApplicationAction;
272618
- (function (UiItemsApplicationAction) {
272619
- /** Allow the change to the item */
272620
- UiItemsApplicationAction[UiItemsApplicationAction["Allow"] = 0] = "Allow";
272621
- /** Disallow the change to the item */
272622
- UiItemsApplicationAction[UiItemsApplicationAction["Disallow"] = 1] = "Disallow";
272623
- /** Update the item during the change */
272624
- UiItemsApplicationAction[UiItemsApplicationAction["Update"] = 2] = "Update";
272625
- })(UiItemsApplicationAction || (UiItemsApplicationAction = {}));
272626
- /** Controls registering of UiItemsProviders and calls the provider's methods when populating different parts of the User Interface.
272627
- * @deprecated in 3.6. Use [UiItemsManager]($appui-react) instead.
272628
- * @public
272629
- */
272630
- class UiItemsManager {
272631
- /** For use in unit testing
272632
- * @internal */
272633
- static clearAllProviders() {
272634
- UiItemsManager._registeredUiItemsProviders.clear();
272635
- }
272636
- /** Return number of registered UiProvider. */
272637
- static get registeredProviderIds() {
272638
- const ids = [...UiItemsManager._registeredUiItemsProviders.keys()];
272639
- return ids;
272640
- }
272641
- /** Return true if there is any registered UiProvider. */
272642
- static get hasRegisteredProviders() {
272643
- return this._registeredUiItemsProviders.size > 0;
272644
- }
272645
- /**
272646
- * Retrieves a previously loaded UiItemsProvider.
272647
- * @param providerId id of the UiItemsProvider to get
272648
- */
272649
- static getUiItemsProvider(providerId) {
272650
- return UiItemsManager._registeredUiItemsProviders.get(providerId)?.provider;
272651
- }
272652
- static sendRegisteredEvent(ev) {
272653
- UiItemsManager.onUiProviderRegisteredEvent.raiseEvent(ev);
272654
- }
272655
- /**
272656
- * Registers a UiItemsProvider with the UiItemsManager.
272657
- * @param uiProvider the UI items provider to register.
272658
- */
272659
- static register(uiProvider, overrides) {
272660
- const providerId = overrides?.providerId ?? uiProvider.id;
272661
- if (UiItemsManager.getUiItemsProvider(providerId)) {
272662
- _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Logger.logInfo((0,_utils_misc__WEBPACK_IMPORTED_MODULE_1__.loggerCategory)(this), `UiItemsProvider (${providerId}) is already loaded`);
272663
- }
272664
- else {
272665
- UiItemsManager._registeredUiItemsProviders.set(providerId, { provider: uiProvider, overrides });
272666
- _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Logger.logInfo((0,_utils_misc__WEBPACK_IMPORTED_MODULE_1__.loggerCategory)(this), `UiItemsProvider ${uiProvider.id} registered as ${providerId} `);
272667
- UiItemsManager.sendRegisteredEvent({ providerId });
272668
- }
272669
- }
272670
- /** Remove a specific UiItemsProvider from the list of available providers. */
272671
- static unregister(uiProviderId) {
272672
- const provider = UiItemsManager.getUiItemsProvider(uiProviderId);
272673
- if (!provider)
272674
- return;
272675
- provider.onUnregister && provider.onUnregister();
272676
- UiItemsManager._registeredUiItemsProviders.delete(uiProviderId);
272677
- _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Logger.logInfo((0,_utils_misc__WEBPACK_IMPORTED_MODULE_1__.loggerCategory)(this), `UiItemsProvider (${uiProviderId}) unloaded`);
272678
- // trigger a refresh of the ui
272679
- UiItemsManager.sendRegisteredEvent({ providerId: uiProviderId });
272680
- }
272681
- static allowItemsFromProvider(entry, stageId, stageUsage) {
272682
- // istanbul ignore else
272683
- const overrides = entry.overrides;
272684
- if (undefined !== stageId && overrides?.stageIds && !(overrides.stageIds.some((value) => value === stageId)))
272685
- return false;
272686
- if (undefined !== stageUsage && overrides?.stageUsages && !(overrides.stageUsages.some((value) => value === stageUsage)))
272687
- return false;
272688
- return true;
272689
- }
272690
- /** Called when the application is populating a toolbar so that any registered UiItemsProvider can add tool buttons that either either execute
272691
- * an action or specify a registered ToolId into toolbar.
272692
- * @param stageId a string identifier the active stage.
272693
- * @param stageUsage the StageUsage of the active stage.
272694
- * @param toolbarUsage usage of the toolbar
272695
- * @param toolbarOrientation orientation of the toolbar
272696
- * @returns an array of error messages. The array will be empty if the load is successful, otherwise it is a list of one or more problems.
272697
- */
272698
- static getToolbarButtonItems(stageId, stageUsage, toolbarUsage, toolbarOrientation, stageAppData) {
272699
- const buttonItems = [];
272700
- if (0 === UiItemsManager._registeredUiItemsProviders.size)
272701
- return buttonItems;
272702
- UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
272703
- const uiProvider = entry.provider;
272704
- const providerId = entry.overrides?.providerId ?? uiProvider.id;
272705
- // istanbul ignore else
272706
- if (uiProvider.provideToolbarButtonItems && this.allowItemsFromProvider(entry, stageId, stageUsage)) {
272707
- uiProvider.provideToolbarButtonItems(stageId, stageUsage, toolbarUsage, toolbarOrientation, stageAppData)
272708
- .forEach((spec) => {
272709
- // ignore duplicate ids
272710
- if (-1 === buttonItems.findIndex((existingItem) => spec.id === existingItem.id))
272711
- buttonItems.push({ ...spec, providerId });
272712
- });
272713
- }
272714
- });
272715
- return buttonItems;
272716
- }
272717
- /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields
272718
- * @param stageId a string identifier the active stage.
272719
- * @param stageUsage the StageUsage of the active stage.
272720
- * @returns An array of CommonStatusBarItem that will be used to create controls for the status bar.
272721
- */
272722
- static getStatusBarItems(stageId, stageUsage, stageAppData) {
272723
- const statusBarItems = [];
272724
- if (0 === UiItemsManager._registeredUiItemsProviders.size)
272725
- return statusBarItems;
272726
- UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
272727
- const uiProvider = entry.provider;
272728
- const providerId = entry.overrides?.providerId ?? uiProvider.id;
272729
- // istanbul ignore else
272730
- if (uiProvider.provideStatusBarItems && this.allowItemsFromProvider(entry, stageId, stageUsage)) {
272731
- uiProvider.provideStatusBarItems(stageId, stageUsage, stageAppData)
272732
- .forEach((item) => {
272733
- // ignore duplicate ids
272734
- if (-1 === statusBarItems.findIndex((existingItem) => item.id === existingItem.id))
272735
- statusBarItems.push({ ...item, providerId });
272736
- });
272737
- }
272738
- });
272739
- return statusBarItems;
272740
- }
272741
- /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields
272742
- * @returns An array of BackstageItem that will be used to create controls for the backstage menu.
272743
- */
272744
- static getBackstageItems() {
272745
- const backstageItems = [];
272746
- if (0 === UiItemsManager._registeredUiItemsProviders.size)
272747
- return backstageItems;
272748
- UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
272749
- const uiProvider = entry.provider;
272750
- const providerId = entry.overrides?.providerId ?? uiProvider.id;
272751
- // istanbul ignore else
272752
- if (uiProvider.provideBackstageItems) { // Note: We do not call this.allowItemsFromProvider here as backstage items
272753
- uiProvider.provideBackstageItems() // should not be considered stage specific. If they need to be hidden
272754
- .forEach((item) => {
272755
- // ignore duplicate ids
272756
- if (-1 === backstageItems.findIndex((existingItem) => item.id === existingItem.id))
272757
- backstageItems.push({ ...item, providerId });
272758
- });
272759
- }
272760
- });
272761
- return backstageItems;
272762
- }
272763
- /** Called when the application is populating the Stage Panels so that any registered UiItemsProvider can add widgets
272764
- * @param stageId a string identifier the active stage.
272765
- * @param stageUsage the StageUsage of the active stage.
272766
- * @param location the location within the stage.
272767
- * @param section the section within location.
272768
- * @returns An array of AbstractWidgetProps that will be used to create widgets.
272769
- */
272770
- static getWidgets(stageId, stageUsage, location, section, zoneLocation, stageAppData) {
272771
- const widgets = [];
272772
- if (0 === UiItemsManager._registeredUiItemsProviders.size)
272773
- return widgets;
272774
- UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
272775
- const uiProvider = entry.provider;
272776
- const providerId = entry.overrides?.providerId ?? uiProvider.id;
272777
- // istanbul ignore else
272778
- if (uiProvider.provideWidgets && this.allowItemsFromProvider(entry, stageId, stageUsage)) {
272779
- uiProvider.provideWidgets(stageId, stageUsage, location, section, zoneLocation, stageAppData)
272780
- .forEach((widget) => {
272781
- // ignore duplicate ids
272782
- if (-1 === widgets.findIndex((existingItem) => widget.id === existingItem.id))
272783
- widgets.push({ ...widget, providerId });
272784
- });
272785
- }
272786
- });
272787
- return widgets;
272788
- }
272789
- }
272790
- UiItemsManager._registeredUiItemsProviders = new Map();
272791
- /** Event raised any time a UiProvider is registered or unregistered. */
272792
- UiItemsManager.onUiProviderRegisteredEvent = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeEvent();
272793
-
272794
-
272795
-
272796
- /***/ }),
272797
-
272798
- /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/UiItemsProvider.js":
272799
- /*!*************************************************************************!*\
272800
- !*** ../../ui/appui-abstract/lib/esm/appui-abstract/UiItemsProvider.js ***!
272801
- \*************************************************************************/
272802
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
272803
-
272804
- "use strict";
272805
- __webpack_require__.r(__webpack_exports__);
272806
- /*---------------------------------------------------------------------------------------------
272807
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
272808
- * See LICENSE.md in the project root for license terms and full copyright notice.
272809
- *--------------------------------------------------------------------------------------------*/
272810
- /** @packageDocumentation
272811
- * @module UiItemsProvider
272812
- */
272813
-
272814
-
272815
-
272816
- /***/ }),
272817
-
272818
- /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/backstage/BackstageItem.js":
272819
- /*!*********************************************************************************!*\
272820
- !*** ../../ui/appui-abstract/lib/esm/appui-abstract/backstage/BackstageItem.js ***!
272821
- \*********************************************************************************/
272822
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
272823
-
272824
- "use strict";
272825
- __webpack_require__.r(__webpack_exports__);
272826
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
272827
- /* harmony export */ "BackstageItemType": () => (/* binding */ BackstageItemType),
272828
- /* harmony export */ "BackstageItemUtilities": () => (/* binding */ BackstageItemUtilities),
272829
- /* harmony export */ "isActionItem": () => (/* binding */ isActionItem),
272830
- /* harmony export */ "isStageLauncher": () => (/* binding */ isStageLauncher)
272831
- /* harmony export */ });
272832
- /*---------------------------------------------------------------------------------------------
272833
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
272834
- * See LICENSE.md in the project root for license terms and full copyright notice.
272835
- *--------------------------------------------------------------------------------------------*/
272836
- /** @packageDocumentation
272837
- * @module Backstage
272838
- */
272839
- /** Used to specify the item type added to the backstage menu.
272840
- * @deprecated in 3.6. Use type guards instead.
272841
- * @public
272842
- */
272843
- var BackstageItemType;
272844
- (function (BackstageItemType) {
272845
- /** Item that executes an action function */
272846
- BackstageItemType[BackstageItemType["ActionItem"] = 1] = "ActionItem";
272847
- /** Item that activate a stage. */
272848
- BackstageItemType[BackstageItemType["StageLauncher"] = 2] = "StageLauncher";
272849
- })(BackstageItemType || (BackstageItemType = {}));
272850
- /** BackstageActionItem type guard.
272851
- * @deprecated in 3.6. Use [isBackstageActionItem]($appui-react) instead.
272852
- * @public
272853
- */
272854
- const isActionItem = (item) => {
272855
- return item.execute !== undefined; // eslint-disable-line deprecation/deprecation
272856
- };
272857
- /** BackstageStageLauncher type guard.
272858
- * @deprecated in 3.6. Use [isBackstageStageLauncher]($appui-react) instead.
272859
- * @public
272860
- */
272861
- const isStageLauncher = (item) => {
272862
- return item.stageId !== undefined; // eslint-disable-line deprecation/deprecation
272863
- };
272864
- /** Utilities for creating and maintaining backstage items
272865
- * @deprecated in 3.6. Use [BackstageItemUtilities]($appui-react) instead.
272866
- * @public
272867
- */
272868
- class BackstageItemUtilities {
272869
- }
272870
- /** Creates a stage launcher backstage item */
272871
- BackstageItemUtilities.createStageLauncher = (frontstageId, groupPriority, itemPriority, label, subtitle, icon, overrides // eslint-disable-line deprecation/deprecation
272872
- ) => ({
272873
- groupPriority,
272874
- icon,
272875
- internalData: overrides?.internalData,
272876
- id: frontstageId,
272877
- itemPriority,
272878
- label,
272879
- stageId: frontstageId,
272880
- subtitle,
272881
- ...overrides,
272882
- });
272883
- /** Creates an action backstage item */
272884
- BackstageItemUtilities.createActionItem = (itemId, groupPriority, itemPriority, execute, label, subtitle, icon, overrides // eslint-disable-line deprecation/deprecation
272885
- ) => ({
272886
- execute,
272887
- groupPriority,
272888
- icon,
272889
- internalData: overrides?.internalData,
272890
- id: itemId,
272891
- itemPriority,
272892
- label,
272893
- subtitle,
272894
- ...overrides,
272895
- });
272896
-
272897
-
272898
-
272899
- /***/ }),
272900
-
272901
- /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/backstage/BackstageItemsManager.js":
272902
- /*!*****************************************************************************************!*\
272903
- !*** ../../ui/appui-abstract/lib/esm/appui-abstract/backstage/BackstageItemsManager.js ***!
272904
- \*****************************************************************************************/
272905
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
272906
-
272907
- "use strict";
272908
- __webpack_require__.r(__webpack_exports__);
272909
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
272910
- /* harmony export */ "BackstageItemsManager": () => (/* binding */ BackstageItemsManager)
272911
- /* harmony export */ });
272912
- /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
272913
- /* harmony import */ var _items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../items/ConditionalBooleanValue */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/ConditionalBooleanValue.js");
272914
- /* harmony import */ var _items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../items/ConditionalStringValue */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/ConditionalStringValue.js");
272915
- /*---------------------------------------------------------------------------------------------
272916
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
272917
- * See LICENSE.md in the project root for license terms and full copyright notice.
272918
- *--------------------------------------------------------------------------------------------*/
272919
- /** @packageDocumentation
272920
- * @module Backstage
272921
- */
272922
-
272923
-
272924
-
272925
- const isInstance = (args) => {
272926
- return !Array.isArray(args);
272927
- };
272928
- /**
272929
- * Controls backstage items.
272930
- * @internal
272931
- */
272932
- class BackstageItemsManager {
272933
- constructor(items) {
272934
- this._items = [];
272935
- /** Event raised when backstage items are changed.
272936
- * @internal
272937
- */
272938
- this.onItemsChanged = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeEvent();
272939
- // istanbul ignore else
272940
- if (items)
272941
- this.loadItemsInternal(items, true, false);
272942
- }
272943
- loadItemsInternal(items, processConditions, sendItemChanged) {
272944
- if (processConditions && items) {
272945
- const eventIds = BackstageItemsManager.getSyncIdsOfInterest(items);
272946
- if (0 !== eventIds.length) {
272947
- const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(items, new Set(eventIds));
272948
- // istanbul ignore else
272949
- if (itemsUpdated)
272950
- items = updatedItems;
272951
- }
272952
- }
272953
- this._items = items;
272954
- if (sendItemChanged)
272955
- this.onItemsChanged.raiseEvent({ items });
272956
- }
272957
- /** load items but do not fire onItemsChanged
272958
- * @internal
272959
- */
272960
- loadItems(items) {
272961
- this.loadItemsInternal(items, true, false);
272962
- }
272963
- get items() {
272964
- return this._items;
272965
- }
272966
- set items(items) {
272967
- // istanbul ignore else
272968
- if (items !== this._items)
272969
- this.loadItemsInternal(items, true, true);
272970
- }
272971
- /** @internal */
272972
- add(itemOrItems) {
272973
- let itemsToAdd;
272974
- if (isInstance(itemOrItems))
272975
- itemsToAdd = [itemOrItems];
272976
- else {
272977
- itemsToAdd = itemOrItems.filter((itemToAdd, index) => itemOrItems.findIndex((item) => item.id === itemToAdd.id) === index);
272978
- }
272979
- itemsToAdd = itemsToAdd.filter((itemToAdd) => this._items.find((item) => item.id === itemToAdd.id) === undefined);
272980
- if (itemsToAdd.length === 0)
272981
- return;
272982
- const items = [
272983
- ...this._items,
272984
- ...itemsToAdd,
272985
- ];
272986
- this.items = items;
272987
- }
272988
- /** @internal */
272989
- remove(itemIdOrItemIds) {
272990
- const items = this._items.filter((item) => {
272991
- return isInstance(itemIdOrItemIds) ? item.id !== itemIdOrItemIds : !itemIdOrItemIds.find((itemId) => itemId === item.id);
272992
- });
272993
- this.items = items;
272994
- }
272995
- /** @internal */
272996
- static getSyncIdsOfInterest(items) {
272997
- const eventIds = new Set();
272998
- items.forEach((item) => {
272999
- for (const [, entry] of Object.entries(item)) {
273000
- if (entry instanceof _items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__.ConditionalBooleanValue) {
273001
- entry.syncEventIds.forEach((eventId) => eventIds.add(eventId.toLowerCase()));
273002
- }
273003
- else /* istanbul ignore else */ if (entry instanceof _items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__.ConditionalStringValue) {
273004
- entry.syncEventIds.forEach((eventId) => eventIds.add(eventId.toLowerCase()));
273005
- }
273006
- }
273007
- });
273008
- return [...eventIds.values()];
273009
- }
273010
- internalRefreshAffectedItems(items, eventIds) {
273011
- // istanbul ignore next
273012
- if (0 === eventIds.size)
273013
- return { itemsUpdated: false, updatedItems: [] };
273014
- let updateRequired = false;
273015
- const newItems = [];
273016
- for (const item of items) {
273017
- const updatedItem = { ...item };
273018
- for (const [, entry] of Object.entries(updatedItem)) {
273019
- if (entry instanceof _items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__.ConditionalBooleanValue) {
273020
- // istanbul ignore else
273021
- if (_items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__.ConditionalBooleanValue.refreshValue(entry, eventIds))
273022
- updateRequired = true;
273023
- }
273024
- else /* istanbul ignore else */ if (entry instanceof _items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__.ConditionalStringValue) {
273025
- // istanbul ignore else
273026
- if (_items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__.ConditionalStringValue.refreshValue(entry, eventIds))
273027
- updateRequired = true;
273028
- }
273029
- }
273030
- newItems.push(updatedItem);
273031
- }
273032
- return { itemsUpdated: updateRequired, updatedItems: newItems };
273033
- }
273034
- refreshAffectedItems(eventIds) {
273035
- // istanbul ignore next
273036
- if (0 === eventIds.size)
273037
- return;
273038
- const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(this.items, eventIds);
273039
- // istanbul ignore else
273040
- if (itemsUpdated)
273041
- this.loadItemsInternal(updatedItems, false, true);
273042
- }
273043
- }
273044
-
273045
-
273046
272647
  /***/ }),
273047
272648
 
273048
272649
  /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/common/KeyboardKey.js":
@@ -273848,26 +273449,6 @@ class ConditionalStringValue {
273848
273449
  }
273849
273450
 
273850
273451
 
273851
- /***/ }),
273852
-
273853
- /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/items/ProvidedItem.js":
273854
- /*!****************************************************************************!*\
273855
- !*** ../../ui/appui-abstract/lib/esm/appui-abstract/items/ProvidedItem.js ***!
273856
- \****************************************************************************/
273857
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
273858
-
273859
- "use strict";
273860
- __webpack_require__.r(__webpack_exports__);
273861
- /*---------------------------------------------------------------------------------------------
273862
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
273863
- * See LICENSE.md in the project root for license terms and full copyright notice.
273864
- *--------------------------------------------------------------------------------------------*/
273865
- /** @packageDocumentation
273866
- * @module Item
273867
- */
273868
-
273869
-
273870
-
273871
273452
  /***/ }),
273872
273453
 
273873
273454
  /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/items/RelativePosition.js":
@@ -273906,42 +273487,6 @@ var RelativePosition;
273906
273487
  })(RelativePosition || (RelativePosition = {}));
273907
273488
 
273908
273489
 
273909
- /***/ }),
273910
-
273911
- /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/items/StageUsage.js":
273912
- /*!**************************************************************************!*\
273913
- !*** ../../ui/appui-abstract/lib/esm/appui-abstract/items/StageUsage.js ***!
273914
- \**************************************************************************/
273915
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
273916
-
273917
- "use strict";
273918
- __webpack_require__.r(__webpack_exports__);
273919
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
273920
- /* harmony export */ "StageUsage": () => (/* binding */ StageUsage)
273921
- /* harmony export */ });
273922
- /*---------------------------------------------------------------------------------------------
273923
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
273924
- * See LICENSE.md in the project root for license terms and full copyright notice.
273925
- *--------------------------------------------------------------------------------------------*/
273926
- /** @packageDocumentation
273927
- * @module Item
273928
- */
273929
- /** Standard stage uses. Allows extension to target ui item to include on a stage without
273930
- * knowing the stage name defined in the host application.
273931
- * @deprecated in 3.6. Use [StageUsage]($appui-react) instead.
273932
- * @public
273933
- */
273934
- var StageUsage;
273935
- (function (StageUsage) {
273936
- StageUsage["Private"] = "Private";
273937
- StageUsage["General"] = "General";
273938
- StageUsage["Redline"] = "Redline";
273939
- StageUsage["ViewOnly"] = "ViewOnly";
273940
- StageUsage["Edit"] = "Edit";
273941
- StageUsage["Settings"] = "Settings";
273942
- })(StageUsage || (StageUsage = {}));
273943
-
273944
-
273945
273490
  /***/ }),
273946
273491
 
273947
273492
  /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/notification/MessagePresenter.js":
@@ -274641,256 +274186,6 @@ class BaseQuantityDescription {
274641
274186
  }
274642
274187
 
274643
274188
 
274644
- /***/ }),
274645
-
274646
- /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/statusbar/StatusBarItem.js":
274647
- /*!*********************************************************************************!*\
274648
- !*** ../../ui/appui-abstract/lib/esm/appui-abstract/statusbar/StatusBarItem.js ***!
274649
- \*********************************************************************************/
274650
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
274651
-
274652
- "use strict";
274653
- __webpack_require__.r(__webpack_exports__);
274654
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
274655
- /* harmony export */ "AbstractStatusBarItemUtilities": () => (/* binding */ AbstractStatusBarItemUtilities),
274656
- /* harmony export */ "StatusBarLabelSide": () => (/* binding */ StatusBarLabelSide),
274657
- /* harmony export */ "StatusBarSection": () => (/* binding */ StatusBarSection),
274658
- /* harmony export */ "isAbstractStatusBarActionItem": () => (/* binding */ isAbstractStatusBarActionItem),
274659
- /* harmony export */ "isAbstractStatusBarCustomItem": () => (/* binding */ isAbstractStatusBarCustomItem),
274660
- /* harmony export */ "isAbstractStatusBarLabelItem": () => (/* binding */ isAbstractStatusBarLabelItem)
274661
- /* harmony export */ });
274662
- /*---------------------------------------------------------------------------------------------
274663
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
274664
- * See LICENSE.md in the project root for license terms and full copyright notice.
274665
- *--------------------------------------------------------------------------------------------*/
274666
- /** @packageDocumentation
274667
- * @module StatusBar
274668
- */
274669
- /** Status bar Groups/Sections from Left to Right
274670
- * @deprecated in 3.6. Use [StatusBarSection]($appui-react) instead.
274671
- * @public
274672
- */
274673
- var StatusBarSection;
274674
- (function (StatusBarSection) {
274675
- /** area for tool assistance and messages */
274676
- StatusBarSection[StatusBarSection["Message"] = 0] = "Message";
274677
- /** area for tool assistance and messages */
274678
- StatusBarSection[StatusBarSection["Left"] = 0] = "Left";
274679
- /** items specific to stage/task */
274680
- StatusBarSection[StatusBarSection["Stage"] = 1] = "Stage";
274681
- /** items specific to stage/task */
274682
- StatusBarSection[StatusBarSection["Center"] = 1] = "Center";
274683
- /** Select scope and selection info */
274684
- StatusBarSection[StatusBarSection["Selection"] = 2] = "Selection";
274685
- /** Select scope and selection info */
274686
- StatusBarSection[StatusBarSection["Right"] = 2] = "Right";
274687
- /** items that only show based on context */
274688
- StatusBarSection[StatusBarSection["Context"] = 3] = "Context";
274689
- })(StatusBarSection || (StatusBarSection = {}));
274690
- /** Defines which side of Icon where label is placed
274691
- * @deprecated in 3.6. Use [StatusBarLabelSide]($appui-react) instead.
274692
- * @public
274693
- */
274694
- var StatusBarLabelSide;
274695
- (function (StatusBarLabelSide) {
274696
- /** Label is placed left side of icon. This is the default if not specified */
274697
- StatusBarLabelSide[StatusBarLabelSide["Left"] = 0] = "Left";
274698
- /** Label is placed on right side of icon. */
274699
- StatusBarLabelSide[StatusBarLabelSide["Right"] = 1] = "Right";
274700
- })(StatusBarLabelSide || (StatusBarLabelSide = {}));
274701
- /** AbstractStatusBarActionItem type guard.
274702
- * @deprecated in 3.6. Use [isStatusBarActionItem]($appui-react) instead.
274703
- * @public
274704
- */
274705
- const isAbstractStatusBarActionItem = (item) => {
274706
- return item.execute !== undefined; // eslint-disable-line deprecation/deprecation
274707
- };
274708
- /** AbstractStatusBarLabelItem type guard.
274709
- * @deprecated in 3.6. Use [isStatusBarLabelItem]($appui-react) instead.
274710
- * @public
274711
- */
274712
- const isAbstractStatusBarLabelItem = (item) => {
274713
- return item.label !== undefined && item.execute === undefined; // eslint-disable-line deprecation/deprecation
274714
- };
274715
- /** AbstractStatusBarCustomItem type guard.
274716
- * @deprecated in 3.6. Use [isStatusBarCustomItem]($appui-react) instead.
274717
- * @public
274718
- */
274719
- const isAbstractStatusBarCustomItem = (item) => {
274720
- return !!item.isCustom; // eslint-disable-line deprecation/deprecation
274721
- };
274722
- /** Helper class to create Abstract StatusBar Item definitions.
274723
- * @deprecated in 3.6. Use [StatusBarItemUtilities]($appui-react) instead.
274724
- * @public
274725
- */
274726
- class AbstractStatusBarItemUtilities {
274727
- }
274728
- /** Creates a StatusBar item to perform an action */
274729
- AbstractStatusBarItemUtilities.createActionItem = (id, section, itemPriority, icon, tooltip, execute, overrides) => ({
274730
- id, section, itemPriority,
274731
- icon, tooltip,
274732
- execute,
274733
- ...overrides,
274734
- });
274735
- /** Creates a StatusBar item to display a label */
274736
- AbstractStatusBarItemUtilities.createLabelItem = (id, section, itemPriority, icon, label, labelSide = StatusBarLabelSide.Right, overrides) => ({
274737
- id, section, itemPriority,
274738
- icon, label,
274739
- labelSide,
274740
- ...overrides,
274741
- });
274742
-
274743
-
274744
-
274745
- /***/ }),
274746
-
274747
- /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/statusbar/StatusBarItemsManager.js":
274748
- /*!*****************************************************************************************!*\
274749
- !*** ../../ui/appui-abstract/lib/esm/appui-abstract/statusbar/StatusBarItemsManager.js ***!
274750
- \*****************************************************************************************/
274751
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
274752
-
274753
- "use strict";
274754
- __webpack_require__.r(__webpack_exports__);
274755
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
274756
- /* harmony export */ "StatusBarItemsManager": () => (/* binding */ StatusBarItemsManager)
274757
- /* harmony export */ });
274758
- /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
274759
- /* harmony import */ var _items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../items/ConditionalBooleanValue */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/ConditionalBooleanValue.js");
274760
- /* harmony import */ var _items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../items/ConditionalStringValue */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/ConditionalStringValue.js");
274761
- /*---------------------------------------------------------------------------------------------
274762
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
274763
- * See LICENSE.md in the project root for license terms and full copyright notice.
274764
- *--------------------------------------------------------------------------------------------*/
274765
- /** @packageDocumentation
274766
- * @module StatusBar
274767
- */
274768
-
274769
-
274770
-
274771
- const isInstance = (args) => {
274772
- return !Array.isArray(args);
274773
- };
274774
- /**
274775
- * Controls status bar items.
274776
- * @internal
274777
- */
274778
- class StatusBarItemsManager {
274779
- constructor(items) {
274780
- this._items = [];
274781
- /** Event raised when StatusBar items are changed.
274782
- * @internal
274783
- */
274784
- this.onItemsChanged = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeEvent();
274785
- if (items)
274786
- this.loadItemsInternal(items, true, false);
274787
- }
274788
- loadItemsInternal(items, processConditions, sendItemChanged) {
274789
- if (processConditions && items) {
274790
- const eventIds = StatusBarItemsManager.getSyncIdsOfInterest(items);
274791
- if (0 !== eventIds.length) {
274792
- const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(items, new Set(eventIds));
274793
- // istanbul ignore else
274794
- if (itemsUpdated)
274795
- items = updatedItems;
274796
- }
274797
- }
274798
- this._items = items;
274799
- if (sendItemChanged)
274800
- this.onItemsChanged.raiseEvent({ items });
274801
- }
274802
- /** load items but do not fire onItemsChanged
274803
- * @internal
274804
- */
274805
- loadItems(items) {
274806
- this.loadItemsInternal(items, true, false);
274807
- }
274808
- /** Get an array of the StatusBar items */
274809
- get items() {
274810
- return this._items;
274811
- }
274812
- set items(items) {
274813
- // istanbul ignore else
274814
- if (items !== this._items)
274815
- this.loadItemsInternal(items, true, true);
274816
- }
274817
- add(itemOrItems) {
274818
- let itemsToAdd;
274819
- if (isInstance(itemOrItems))
274820
- itemsToAdd = [itemOrItems];
274821
- else {
274822
- itemsToAdd = itemOrItems.filter((itemToAdd, index) => itemOrItems.findIndex((item) => item.id === itemToAdd.id) === index);
274823
- }
274824
- itemsToAdd = itemsToAdd.filter((itemToAdd) => this._items.find((item) => item.id === itemToAdd.id) === undefined);
274825
- if (itemsToAdd.length === 0)
274826
- return;
274827
- const items = [
274828
- ...this._items,
274829
- ...itemsToAdd,
274830
- ];
274831
- this.items = items;
274832
- }
274833
- /** Remove StatusBar items based on id */
274834
- remove(itemIdOrItemIds) {
274835
- const items = this._items.filter((item) => {
274836
- return isInstance(itemIdOrItemIds) ? item.id !== itemIdOrItemIds : !itemIdOrItemIds.find((itemId) => itemId === item.id);
274837
- });
274838
- this.items = items;
274839
- }
274840
- /** @internal */
274841
- removeAll() {
274842
- this._items = [];
274843
- }
274844
- static getSyncIdsOfInterest(items) {
274845
- const eventIds = new Set();
274846
- items.forEach((item) => {
274847
- for (const [, entry] of Object.entries(item)) {
274848
- if (entry instanceof _items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__.ConditionalBooleanValue) {
274849
- entry.syncEventIds.forEach((eventId) => eventIds.add(eventId.toLowerCase()));
274850
- }
274851
- else /* istanbul ignore else */ if (entry instanceof _items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__.ConditionalStringValue) {
274852
- entry.syncEventIds.forEach((eventId) => eventIds.add(eventId.toLowerCase()));
274853
- }
274854
- }
274855
- });
274856
- return [...eventIds.values()];
274857
- }
274858
- internalRefreshAffectedItems(items, eventIds) {
274859
- // istanbul ignore next
274860
- if (0 === eventIds.size)
274861
- return { itemsUpdated: false, updatedItems: [] };
274862
- let updateRequired = false;
274863
- const newItems = [];
274864
- for (const item of items) {
274865
- const updatedItem = { ...item };
274866
- for (const [, entry] of Object.entries(updatedItem)) {
274867
- if (entry instanceof _items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__.ConditionalBooleanValue) {
274868
- // istanbul ignore else
274869
- if (_items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__.ConditionalBooleanValue.refreshValue(entry, eventIds))
274870
- updateRequired = true;
274871
- }
274872
- else /* istanbul ignore else */ if (entry instanceof _items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__.ConditionalStringValue) {
274873
- // istanbul ignore else
274874
- if (_items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__.ConditionalStringValue.refreshValue(entry, eventIds))
274875
- updateRequired = true;
274876
- }
274877
- }
274878
- newItems.push(updatedItem);
274879
- }
274880
- return { itemsUpdated: updateRequired, updatedItems: newItems };
274881
- }
274882
- refreshAffectedItems(eventIds) {
274883
- // istanbul ignore next
274884
- if (0 === eventIds.size)
274885
- return;
274886
- const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(this.items, eventIds);
274887
- // istanbul ignore else
274888
- if (itemsUpdated)
274889
- this.loadItemsInternal(updatedItems, false, true);
274890
- }
274891
- }
274892
-
274893
-
274894
274189
  /***/ }),
274895
274190
 
274896
274191
  /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/toolbars/ToolbarItem.js":
@@ -274902,9 +274197,7 @@ class StatusBarItemsManager {
274902
274197
  "use strict";
274903
274198
  __webpack_require__.r(__webpack_exports__);
274904
274199
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
274905
- /* harmony export */ "ToolbarItemUtilities": () => (/* binding */ ToolbarItemUtilities),
274906
- /* harmony export */ "ToolbarOrientation": () => (/* binding */ ToolbarOrientation),
274907
- /* harmony export */ "ToolbarUsage": () => (/* binding */ ToolbarUsage)
274200
+ /* harmony export */ "ToolbarItemUtilities": () => (/* binding */ ToolbarItemUtilities)
274908
274201
  /* harmony export */ });
274909
274202
  /*---------------------------------------------------------------------------------------------
274910
274203
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
@@ -274913,28 +274206,6 @@ __webpack_require__.r(__webpack_exports__);
274913
274206
  /** @packageDocumentation
274914
274207
  * @module Toolbar
274915
274208
  */
274916
- /** Used to specify the usage of the toolbar which determine the toolbar position.
274917
- * @deprecated in 3.6. Use [ToolbarUsage]($appui-react) instead.
274918
- * @public
274919
- */
274920
- var ToolbarUsage;
274921
- (function (ToolbarUsage) {
274922
- /** Contains tools to Create Update and Delete content - in ninezone this is in top left of content area. */
274923
- ToolbarUsage[ToolbarUsage["ContentManipulation"] = 0] = "ContentManipulation";
274924
- /** Manipulate view/camera - in ninezone this is in top right of content area. */
274925
- ToolbarUsage[ToolbarUsage["ViewNavigation"] = 1] = "ViewNavigation";
274926
- })(ToolbarUsage || (ToolbarUsage = {}));
274927
- /** Used to specify the orientation of the toolbar.
274928
- * @deprecated in 3.6. Use [ToolbarOrientation]($appui-react) instead.
274929
- * @public
274930
- */
274931
- var ToolbarOrientation;
274932
- (function (ToolbarOrientation) {
274933
- /** Horizontal toolbar. */
274934
- ToolbarOrientation[ToolbarOrientation["Horizontal"] = 0] = "Horizontal";
274935
- /** Vertical toolbar. */
274936
- ToolbarOrientation[ToolbarOrientation["Vertical"] = 1] = "Vertical";
274937
- })(ToolbarOrientation || (ToolbarOrientation = {}));
274938
274209
  /** Helper class to create Abstract StatusBar Item definitions.
274939
274210
  * @public
274940
274211
  */
@@ -274969,256 +274240,6 @@ ToolbarItemUtilities.createGroupButton = (id, itemPriority, icon, label, items,
274969
274240
 
274970
274241
 
274971
274242
 
274972
- /***/ }),
274973
-
274974
- /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/toolbars/ToolbarItemsManager.js":
274975
- /*!**************************************************************************************!*\
274976
- !*** ../../ui/appui-abstract/lib/esm/appui-abstract/toolbars/ToolbarItemsManager.js ***!
274977
- \**************************************************************************************/
274978
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
274979
-
274980
- "use strict";
274981
- __webpack_require__.r(__webpack_exports__);
274982
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
274983
- /* harmony export */ "ToolbarItemsManager": () => (/* binding */ ToolbarItemsManager)
274984
- /* harmony export */ });
274985
- /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
274986
- /* harmony import */ var _items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../items/ConditionalBooleanValue */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/ConditionalBooleanValue.js");
274987
- /* harmony import */ var _items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../items/ConditionalStringValue */ "../../ui/appui-abstract/lib/esm/appui-abstract/items/ConditionalStringValue.js");
274988
- /* harmony import */ var _ToolbarItem__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./ToolbarItem */ "../../ui/appui-abstract/lib/esm/appui-abstract/toolbars/ToolbarItem.js");
274989
- /*---------------------------------------------------------------------------------------------
274990
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
274991
- * See LICENSE.md in the project root for license terms and full copyright notice.
274992
- *--------------------------------------------------------------------------------------------*/
274993
- /** @packageDocumentation
274994
- * @module Toolbar
274995
- */
274996
-
274997
-
274998
-
274999
-
275000
- const isInstance = (args) => {
275001
- return !Array.isArray(args);
275002
- };
275003
- /**
275004
- * Controls status bar items.
275005
- * @internal
275006
- */
275007
- class ToolbarItemsManager {
275008
- constructor(items) {
275009
- this._items = [];
275010
- /** Event raised when Toolbar items are changed.
275011
- * @internal
275012
- */
275013
- this.onItemsChanged = new _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BeEvent();
275014
- if (items)
275015
- this.loadItemsInternal(items, true, false);
275016
- }
275017
- loadItemsInternal(items, processConditions, sendItemChanged) {
275018
- if (processConditions && items) {
275019
- const eventIds = ToolbarItemsManager.getSyncIdsOfInterest(items);
275020
- if (0 !== eventIds.length) {
275021
- const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(items, new Set(eventIds));
275022
- // istanbul ignore else
275023
- if (itemsUpdated)
275024
- items = updatedItems;
275025
- }
275026
- }
275027
- this._items = items;
275028
- if (sendItemChanged)
275029
- this.onItemsChanged.raiseEvent({ items });
275030
- }
275031
- /** load items but do not fire onItemsChanged
275032
- * @internal
275033
- */
275034
- loadItems(items) {
275035
- this.loadItemsInternal(items, true, false);
275036
- }
275037
- /** Get an array of the Toolbar items */
275038
- get items() {
275039
- return this._items;
275040
- }
275041
- set items(items) {
275042
- // istanbul ignore else
275043
- if (items !== this._items)
275044
- this.loadItemsInternal(items, true, true);
275045
- }
275046
- add(itemOrItems) {
275047
- let itemsToAdd;
275048
- if (isInstance(itemOrItems))
275049
- itemsToAdd = [itemOrItems];
275050
- else {
275051
- itemsToAdd = itemOrItems.filter((itemToAdd, index) => itemOrItems.findIndex((item) => item.id === itemToAdd.id) === index);
275052
- }
275053
- itemsToAdd = itemsToAdd.filter((itemToAdd) => this._items.find((item) => item.id === itemToAdd.id) === undefined);
275054
- if (itemsToAdd.length === 0)
275055
- return;
275056
- const items = [
275057
- ...this._items,
275058
- ...itemsToAdd,
275059
- ];
275060
- this.items = items;
275061
- }
275062
- /** Remove Toolbar items based on id */
275063
- remove(itemIdOrItemIds) {
275064
- const items = this._items.filter((item) => {
275065
- return isInstance(itemIdOrItemIds) ? item.id !== itemIdOrItemIds : !itemIdOrItemIds.find((itemId) => itemId === item.id);
275066
- });
275067
- this.items = items;
275068
- }
275069
- /** @internal */
275070
- removeAll() {
275071
- this._items = [];
275072
- }
275073
- static gatherSyncIds(eventIds, items) {
275074
- for (const item of items) {
275075
- for (const [, entry] of Object.entries(item)) {
275076
- if (entry instanceof _items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__.ConditionalBooleanValue) {
275077
- entry.syncEventIds.forEach((eventId) => eventIds.add(eventId.toLowerCase()));
275078
- }
275079
- else /* istanbul ignore else */ if (entry instanceof _items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__.ConditionalStringValue) {
275080
- entry.syncEventIds.forEach((eventId) => eventIds.add(eventId.toLowerCase()));
275081
- }
275082
- }
275083
- // istanbul ignore else
275084
- if (_ToolbarItem__WEBPACK_IMPORTED_MODULE_3__.ToolbarItemUtilities.isGroupButton(item)) {
275085
- this.gatherSyncIds(eventIds, item.items);
275086
- }
275087
- }
275088
- }
275089
- static getSyncIdsOfInterest(items) {
275090
- const eventIds = new Set();
275091
- this.gatherSyncIds(eventIds, items);
275092
- return [...eventIds.values()];
275093
- }
275094
- static refreshChildItems(parentItem, eventIds) {
275095
- const updatedItems = [];
275096
- let itemsUpdated = false;
275097
- for (const item of parentItem.items) {
275098
- const updatedItem = { ...item };
275099
- if (_ToolbarItem__WEBPACK_IMPORTED_MODULE_3__.ToolbarItemUtilities.isGroupButton(updatedItem)) {
275100
- const { childrenUpdated, childItems } = this.refreshChildItems(updatedItem, eventIds);
275101
- // istanbul ignore else
275102
- if (childrenUpdated) {
275103
- updatedItem.items = childItems;
275104
- itemsUpdated = true;
275105
- }
275106
- }
275107
- for (const [, entry] of Object.entries(updatedItem)) {
275108
- if (entry instanceof _items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__.ConditionalBooleanValue) {
275109
- // istanbul ignore else
275110
- if (_items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__.ConditionalBooleanValue.refreshValue(entry, eventIds))
275111
- itemsUpdated = true;
275112
- }
275113
- else /* istanbul ignore else */ if (entry instanceof _items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__.ConditionalStringValue) {
275114
- // istanbul ignore else
275115
- if (_items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__.ConditionalStringValue.refreshValue(entry, eventIds))
275116
- itemsUpdated = true;
275117
- }
275118
- }
275119
- updatedItems.push(updatedItem);
275120
- }
275121
- return { childrenUpdated: itemsUpdated, childItems: updatedItems };
275122
- }
275123
- internalRefreshAffectedItems(items, eventIds) {
275124
- // istanbul ignore next
275125
- if (0 === eventIds.size)
275126
- return { itemsUpdated: false, updatedItems: [] };
275127
- let updateRequired = false;
275128
- const newItems = [];
275129
- for (const item of items) {
275130
- const updatedItem = { ...item };
275131
- if (_ToolbarItem__WEBPACK_IMPORTED_MODULE_3__.ToolbarItemUtilities.isGroupButton(updatedItem)) {
275132
- const { childrenUpdated, childItems } = ToolbarItemsManager.refreshChildItems(updatedItem, eventIds);
275133
- // istanbul ignore else
275134
- if (childrenUpdated) {
275135
- updatedItem.items = childItems;
275136
- updateRequired = true;
275137
- }
275138
- }
275139
- for (const [, entry] of Object.entries(updatedItem)) {
275140
- if (entry instanceof _items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__.ConditionalBooleanValue) {
275141
- // istanbul ignore else
275142
- if (_items_ConditionalBooleanValue__WEBPACK_IMPORTED_MODULE_1__.ConditionalBooleanValue.refreshValue(entry, eventIds))
275143
- updateRequired = true;
275144
- }
275145
- else /* istanbul ignore else */ if (entry instanceof _items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__.ConditionalStringValue) {
275146
- // istanbul ignore else
275147
- if (_items_ConditionalStringValue__WEBPACK_IMPORTED_MODULE_2__.ConditionalStringValue.refreshValue(entry, eventIds))
275148
- updateRequired = true;
275149
- }
275150
- }
275151
- newItems.push(updatedItem);
275152
- }
275153
- return { itemsUpdated: updateRequired, updatedItems: newItems };
275154
- }
275155
- refreshAffectedItems(eventIds) {
275156
- // istanbul ignore next
275157
- if (0 === eventIds.size)
275158
- return;
275159
- const { itemsUpdated, updatedItems } = this.internalRefreshAffectedItems(this.items, eventIds);
275160
- // istanbul ignore else
275161
- if (itemsUpdated)
275162
- this.loadItemsInternal(updatedItems, false, true);
275163
- }
275164
- static isActiveToolIdRefreshRequiredForChildren(children, toolId) {
275165
- for (const item of children) {
275166
- if (_ToolbarItem__WEBPACK_IMPORTED_MODULE_3__.ToolbarItemUtilities.isGroupButton(item)) {
275167
- if (this.isActiveToolIdRefreshRequiredForChildren(item.items, toolId))
275168
- return true;
275169
- }
275170
- else {
275171
- const isActive = !!item.isActive;
275172
- if ((isActive && item.id !== toolId) || (!isActive && item.id === toolId))
275173
- return true;
275174
- }
275175
- }
275176
- return false;
275177
- }
275178
- isActiveToolIdRefreshRequired(toolId) {
275179
- for (const item of this.items) {
275180
- if (_ToolbarItem__WEBPACK_IMPORTED_MODULE_3__.ToolbarItemUtilities.isGroupButton(item)) {
275181
- if (ToolbarItemsManager.isActiveToolIdRefreshRequiredForChildren(item.items, toolId))
275182
- return true;
275183
- }
275184
- else {
275185
- const isActive = !!item.isActive;
275186
- if ((isActive && item.id !== toolId) || (!isActive && item.id === toolId))
275187
- return true;
275188
- }
275189
- }
275190
- return false;
275191
- }
275192
- static refreshActiveToolIdInChildItems(parentItem, toolId) {
275193
- const newChildren = [];
275194
- for (const item of parentItem.items) {
275195
- const updatedItem = { ...item };
275196
- if (_ToolbarItem__WEBPACK_IMPORTED_MODULE_3__.ToolbarItemUtilities.isGroupButton(updatedItem)) {
275197
- updatedItem.items = ToolbarItemsManager.refreshActiveToolIdInChildItems(updatedItem, toolId);
275198
- }
275199
- updatedItem.isActive = (updatedItem.id === toolId);
275200
- newChildren.push(updatedItem);
275201
- }
275202
- return newChildren;
275203
- }
275204
- setActiveToolId(toolId) {
275205
- // first see if any updates are really necessary
275206
- if (!this.isActiveToolIdRefreshRequired(toolId))
275207
- return;
275208
- const newItems = [];
275209
- for (const item of this.items) {
275210
- const updatedItem = { ...item };
275211
- if (_ToolbarItem__WEBPACK_IMPORTED_MODULE_3__.ToolbarItemUtilities.isGroupButton(updatedItem)) {
275212
- updatedItem.items = ToolbarItemsManager.refreshActiveToolIdInChildItems(updatedItem, toolId);
275213
- }
275214
- updatedItem.isActive = (updatedItem.id === toolId);
275215
- newItems.push(updatedItem);
275216
- }
275217
- this.items = newItems;
275218
- }
275219
- }
275220
-
275221
-
275222
274243
  /***/ }),
275223
274244
 
275224
274245
  /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/utils/IconSpecUtilities.js":
@@ -276849,125 +275870,6 @@ const loggerCategory = (obj) => {
276849
275870
  };
276850
275871
 
276851
275872
 
276852
- /***/ }),
276853
-
276854
- /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/widget/AbstractWidgetProps.js":
276855
- /*!************************************************************************************!*\
276856
- !*** ../../ui/appui-abstract/lib/esm/appui-abstract/widget/AbstractWidgetProps.js ***!
276857
- \************************************************************************************/
276858
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
276859
-
276860
- "use strict";
276861
- __webpack_require__.r(__webpack_exports__);
276862
- /*---------------------------------------------------------------------------------------------
276863
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
276864
- * See LICENSE.md in the project root for license terms and full copyright notice.
276865
- *--------------------------------------------------------------------------------------------*/
276866
- /** @packageDocumentation
276867
- * @module Widget
276868
- */
276869
-
276870
-
276871
-
276872
- /***/ }),
276873
-
276874
- /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/widget/StagePanel.js":
276875
- /*!***************************************************************************!*\
276876
- !*** ../../ui/appui-abstract/lib/esm/appui-abstract/widget/StagePanel.js ***!
276877
- \***************************************************************************/
276878
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
276879
-
276880
- "use strict";
276881
- __webpack_require__.r(__webpack_exports__);
276882
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
276883
- /* harmony export */ "AbstractZoneLocation": () => (/* binding */ AbstractZoneLocation),
276884
- /* harmony export */ "StagePanelLocation": () => (/* binding */ StagePanelLocation),
276885
- /* harmony export */ "StagePanelSection": () => (/* binding */ StagePanelSection)
276886
- /* harmony export */ });
276887
- /*---------------------------------------------------------------------------------------------
276888
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
276889
- * See LICENSE.md in the project root for license terms and full copyright notice.
276890
- *--------------------------------------------------------------------------------------------*/
276891
- /** @packageDocumentation
276892
- * @module Widget
276893
- */
276894
- /** Enum for AppUi 1 `Zone` locations that can have widgets added to them at run-time via [[UiItemsProvider]].
276895
- * @public @deprecated in 3.0. UI 1.0 support will be removed in AppUi 4.0.
276896
- */
276897
- var AbstractZoneLocation;
276898
- (function (AbstractZoneLocation) {
276899
- AbstractZoneLocation[AbstractZoneLocation["CenterLeft"] = 4] = "CenterLeft";
276900
- AbstractZoneLocation[AbstractZoneLocation["CenterRight"] = 6] = "CenterRight";
276901
- AbstractZoneLocation[AbstractZoneLocation["BottomLeft"] = 7] = "BottomLeft";
276902
- AbstractZoneLocation[AbstractZoneLocation["BottomRight"] = 9] = "BottomRight";
276903
- })(AbstractZoneLocation || (AbstractZoneLocation = {}));
276904
- /** Available Stage Panel locations.
276905
- * @deprecated in 3.6. Use [StagePanelLocation]($appui-react) instead.
276906
- * @public
276907
- */
276908
- var StagePanelLocation;
276909
- (function (StagePanelLocation) {
276910
- StagePanelLocation[StagePanelLocation["Top"] = 101] = "Top";
276911
- /** @deprecated in 3.6 UI 1.0 support will be removed in AppUi 4.0. */
276912
- StagePanelLocation[StagePanelLocation["TopMost"] = 102] = "TopMost";
276913
- StagePanelLocation[StagePanelLocation["Left"] = 103] = "Left";
276914
- StagePanelLocation[StagePanelLocation["Right"] = 104] = "Right";
276915
- StagePanelLocation[StagePanelLocation["Bottom"] = 105] = "Bottom";
276916
- /** @deprecated in 3.6 UI 1.0 support will be removed in AppUi 4.0. */
276917
- StagePanelLocation[StagePanelLocation["BottomMost"] = 106] = "BottomMost";
276918
- })(StagePanelLocation || (StagePanelLocation = {}));
276919
- /** Enum for Stage Panel Sections
276920
- * @deprecated in 3.6. Use [StagePanelSection]($appui-react) instead.
276921
- * @public
276922
- */
276923
- var StagePanelSection;
276924
- (function (StagePanelSection) {
276925
- StagePanelSection[StagePanelSection["Start"] = 0] = "Start";
276926
- /** @deprecated in 3.2. - all widgets that a targeted for Middle will be placed in `End` section */
276927
- StagePanelSection[StagePanelSection["Middle"] = 1] = "Middle";
276928
- StagePanelSection[StagePanelSection["End"] = 2] = "End";
276929
- })(StagePanelSection || (StagePanelSection = {}));
276930
-
276931
-
276932
- /***/ }),
276933
-
276934
- /***/ "../../ui/appui-abstract/lib/esm/appui-abstract/widget/WidgetState.js":
276935
- /*!****************************************************************************!*\
276936
- !*** ../../ui/appui-abstract/lib/esm/appui-abstract/widget/WidgetState.js ***!
276937
- \****************************************************************************/
276938
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
276939
-
276940
- "use strict";
276941
- __webpack_require__.r(__webpack_exports__);
276942
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
276943
- /* harmony export */ "WidgetState": () => (/* binding */ WidgetState)
276944
- /* harmony export */ });
276945
- /*---------------------------------------------------------------------------------------------
276946
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
276947
- * See LICENSE.md in the project root for license terms and full copyright notice.
276948
- *--------------------------------------------------------------------------------------------*/
276949
- /** @packageDocumentation
276950
- * @module Widget
276951
- */
276952
- /** Widget state enum.
276953
- * @deprecated in 3.6. Use [WidgetState]($appui-react) instead.
276954
- * @public
276955
- */
276956
- var WidgetState;
276957
- (function (WidgetState) {
276958
- /** Widget tab is visible and active and its contents are visible */
276959
- WidgetState[WidgetState["Open"] = 0] = "Open";
276960
- /** Widget tab is visible but its contents are not visible */
276961
- WidgetState[WidgetState["Closed"] = 1] = "Closed";
276962
- /** Widget tab nor its contents are visible */
276963
- WidgetState[WidgetState["Hidden"] = 2] = "Hidden";
276964
- /** Widget tab is in a 'floating' state and is not docked in zone's tab stack */
276965
- WidgetState[WidgetState["Floating"] = 3] = "Floating";
276966
- /** Widget tab is visible but its contents are not loaded */
276967
- WidgetState[WidgetState["Unloaded"] = 4] = "Unloaded";
276968
- })(WidgetState || (WidgetState = {}));
276969
-
276970
-
276971
275873
  /***/ }),
276972
275874
 
276973
275875
  /***/ "?1120":
@@ -282312,7 +281214,7 @@ module.exports = JSON.parse('{"name":"axios","version":"0.21.4","description":"P
282312
281214
  /***/ ((module) => {
282313
281215
 
282314
281216
  "use strict";
282315
- module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.0.0-dev.99","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","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 \\"./node_modules/@itwin/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.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:^4.0.0-dev.99","@itwin/core-bentley":"workspace:^4.0.0-dev.99","@itwin/core-common":"workspace:^4.0.0-dev.99","@itwin/core-geometry":"workspace:^4.0.0-dev.99","@itwin/core-orbitgt":"workspace:^4.0.0-dev.99","@itwin/core-quantity":"workspace:^4.0.0-dev.99"},"//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":"^4.0.0-dev.33","@types/chai":"4.3.1","@types/chai-as-promised":"^7","@types/mocha":"^8.2.2","@types/node":"^18.11.5","@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":"^8.36.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":"~5.0.2","webpack":"^5.76.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/object-storage-azure":"^1.5.0","@itwin/cloud-agnostic-core":"^1.5.0","@itwin/object-storage-core":"^1.5.0","@itwin/core-i18n":"workspace:*","@itwin/core-telemetry":"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","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"}}]}}');
281217
+ module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.1.0-dev.2","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","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 \\"./node_modules/@itwin/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.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:^4.1.0-dev.2","@itwin/core-bentley":"workspace:^4.1.0-dev.2","@itwin/core-common":"workspace:^4.1.0-dev.2","@itwin/core-geometry":"workspace:^4.1.0-dev.2","@itwin/core-orbitgt":"workspace:^4.1.0-dev.2","@itwin/core-quantity":"workspace:^4.1.0-dev.2"},"//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":"^4.0.0-dev.33","@types/chai":"4.3.1","@types/chai-as-promised":"^7","@types/mocha":"^8.2.2","@types/node":"^18.11.5","@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":"^8.36.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":"~5.0.2","webpack":"^5.76.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/object-storage-azure":"^1.5.0","@itwin/cloud-agnostic-core":"^1.5.0","@itwin/object-storage-core":"^1.5.0","@itwin/core-i18n":"workspace:*","@itwin/core-telemetry":"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","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"}}]}}');
282316
281218
 
282317
281219
  /***/ })
282318
281220