@itwin/ecschema-rpcinterface-tests 3.3.0-dev.2 → 3.3.0-dev.22

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.
@@ -45151,6 +45151,145 @@ class StopWatch {
45151
45151
  }
45152
45152
 
45153
45153
 
45154
+ /***/ }),
45155
+
45156
+ /***/ "../../core/bentley/lib/esm/Tracing.js":
45157
+ /*!*****************************************************!*\
45158
+ !*** D:/vsts_a/9/s/core/bentley/lib/esm/Tracing.js ***!
45159
+ \*****************************************************/
45160
+ /*! exports provided: SpanKind, Tracing */
45161
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
45162
+
45163
+ "use strict";
45164
+ __webpack_require__.r(__webpack_exports__);
45165
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SpanKind", function() { return SpanKind; });
45166
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Tracing", function() { return Tracing; });
45167
+ /* harmony import */ var _Logger__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Logger */ "../../core/bentley/lib/esm/Logger.js");
45168
+
45169
+ // re-export so that consumers can construct full SpanOptions object without external dependencies
45170
+ /**
45171
+ * Mirrors the SpanKind enum from [@opentelemetry/api](https://open-telemetry.github.io/opentelemetry-js-api/enums/spankind)
45172
+ * @alpha
45173
+ */
45174
+ var SpanKind;
45175
+ (function (SpanKind) {
45176
+ SpanKind[SpanKind["INTERNAL"] = 0] = "INTERNAL";
45177
+ SpanKind[SpanKind["SERVER"] = 1] = "SERVER";
45178
+ SpanKind[SpanKind["CLIENT"] = 2] = "CLIENT";
45179
+ SpanKind[SpanKind["PRODUCER"] = 3] = "PRODUCER";
45180
+ SpanKind[SpanKind["CONSUMER"] = 4] = "CONSUMER";
45181
+ })(SpanKind || (SpanKind = {}));
45182
+ function isValidPrimitive(val) {
45183
+ return typeof val === "string" || typeof val === "number" || typeof val === "boolean";
45184
+ }
45185
+ // Only _homogenous_ arrays of strings, numbers, or booleans are supported as OpenTelemetry Attribute values.
45186
+ // Per the spec (https://opentelemetry.io/docs/reference/specification/common/common/#attribute), empty arrays and null values are supported too.
45187
+ function isValidPrimitiveArray(val) {
45188
+ if (!Array.isArray(val))
45189
+ return false;
45190
+ let itemType;
45191
+ for (const x of val) {
45192
+ if (x === undefined || x === null)
45193
+ continue;
45194
+ if (!itemType) {
45195
+ itemType = typeof x;
45196
+ if (!isValidPrimitive(x))
45197
+ return false;
45198
+ }
45199
+ if (typeof x !== itemType)
45200
+ return false;
45201
+ }
45202
+ return true;
45203
+ }
45204
+ function isPlainObject(obj) {
45205
+ return typeof obj === "object" && obj !== null && Object.getPrototypeOf(obj) === Object.prototype;
45206
+ }
45207
+ function* getFlatEntries(obj, path = "") {
45208
+ if (isValidPrimitiveArray(obj)) {
45209
+ yield [path, obj];
45210
+ return;
45211
+ }
45212
+ // Prefer JSON serialization over flattening for any non-POJO types.
45213
+ // There's just too many ways trying to flatten those can go wrong (Dates, Buffers, TypedArrays, etc.)
45214
+ if (!isPlainObject(obj) && !Array.isArray(obj)) {
45215
+ yield [path, isValidPrimitive(obj) ? obj : JSON.stringify(obj)];
45216
+ return;
45217
+ }
45218
+ // Always serialize empty objects/arrays as empty array values
45219
+ const entries = Object.entries(obj);
45220
+ if (entries.length === 0)
45221
+ yield [path, []];
45222
+ for (const [key, val] of entries)
45223
+ yield* getFlatEntries(val, (path === "") ? key : `${path}.${key}`);
45224
+ }
45225
+ function flattenObject(obj) {
45226
+ return Object.fromEntries(getFlatEntries(obj));
45227
+ }
45228
+ /**
45229
+ * Enables OpenTelemetry tracing in addition to traditional logging.
45230
+ * @alpha
45231
+ */
45232
+ class Tracing {
45233
+ /**
45234
+ * If OpenTelemetry tracing is enabled, creates a new span and runs the provided function in it.
45235
+ * If OpenTelemetry tracing is _not_ enabled, runs the provided function.
45236
+ * @param name name of the new span
45237
+ * @param fn function to run inside the new span
45238
+ * @param options span options
45239
+ * @param parentContext optional context used to retrieve parent span id
45240
+ */
45241
+ static async withSpan(name, fn, options, parentContext) {
45242
+ if (Tracing._tracer === undefined || Tracing._openTelemetry === undefined)
45243
+ return fn();
45244
+ // this case is for context propagation - parentContext is typically constructed from HTTP headers
45245
+ const parent = parentContext === undefined
45246
+ ? Tracing._openTelemetry.context.active()
45247
+ : Tracing._openTelemetry.trace.setSpanContext(Tracing._openTelemetry.context.active(), parentContext);
45248
+ return Tracing._openTelemetry.context.with(Tracing._openTelemetry.trace.setSpan(parent, Tracing._tracer.startSpan(name, options, Tracing._openTelemetry.context.active())), async () => {
45249
+ var _a, _b, _c, _d;
45250
+ try {
45251
+ return await fn();
45252
+ }
45253
+ catch (err) {
45254
+ if (err instanceof Error) // ignore non-Error throws, such as RpcControlResponse
45255
+ (_b = (_a = Tracing._openTelemetry) === null || _a === void 0 ? void 0 : _a.trace.getSpan(Tracing._openTelemetry.context.active())) === null || _b === void 0 ? void 0 : _b.setAttribute("error", true);
45256
+ throw err;
45257
+ }
45258
+ finally {
45259
+ (_d = (_c = Tracing._openTelemetry) === null || _c === void 0 ? void 0 : _c.trace.getSpan(Tracing._openTelemetry.context.active())) === null || _d === void 0 ? void 0 : _d.end();
45260
+ }
45261
+ });
45262
+ }
45263
+ /**
45264
+ * Enable logging to OpenTelemetry. [[Tracing.withSpan]] will be enabled, all log entries will be attached to active span as span events.
45265
+ * [[IModelHost.startup]] will call this automatically if it succeeds in requiring `@opentelemetry/api`.
45266
+ * @note Node.js OpenTelemetry SDK should be initialized by the user.
45267
+ */
45268
+ static enableOpenTelemetry(tracer, api) {
45269
+ Tracing._tracer = tracer;
45270
+ Tracing._openTelemetry = api;
45271
+ _Logger__WEBPACK_IMPORTED_MODULE_0__["Logger"].logTrace = Tracing.withOpenTelemetry(_Logger__WEBPACK_IMPORTED_MODULE_0__["Logger"].logTrace);
45272
+ _Logger__WEBPACK_IMPORTED_MODULE_0__["Logger"].logInfo = Tracing.withOpenTelemetry(_Logger__WEBPACK_IMPORTED_MODULE_0__["Logger"].logInfo);
45273
+ _Logger__WEBPACK_IMPORTED_MODULE_0__["Logger"].logWarning = Tracing.withOpenTelemetry(_Logger__WEBPACK_IMPORTED_MODULE_0__["Logger"].logWarning);
45274
+ _Logger__WEBPACK_IMPORTED_MODULE_0__["Logger"].logError = Tracing.withOpenTelemetry(_Logger__WEBPACK_IMPORTED_MODULE_0__["Logger"].logError);
45275
+ }
45276
+ static withOpenTelemetry(base, isError = false) {
45277
+ return (category, message, metaData) => {
45278
+ var _a, _b;
45279
+ (_b = (_a = Tracing._openTelemetry) === null || _a === void 0 ? void 0 : _a.trace.getSpan(Tracing._openTelemetry.context.active())) === null || _b === void 0 ? void 0 : _b.addEvent(message, { ...flattenObject(_Logger__WEBPACK_IMPORTED_MODULE_0__["Logger"].getMetaData(metaData)), error: isError });
45280
+ base(category, message, metaData);
45281
+ };
45282
+ }
45283
+ /** Set attributes on currently active openTelemetry span. Doesn't do anything if openTelemetry logging is not initialized.
45284
+ * @param attributes The attributes to set
45285
+ */
45286
+ static setAttributes(attributes) {
45287
+ var _a, _b;
45288
+ (_b = (_a = Tracing._openTelemetry) === null || _a === void 0 ? void 0 : _a.trace.getSpan(Tracing._openTelemetry.context.active())) === null || _b === void 0 ? void 0 : _b.setAttributes(attributes);
45289
+ }
45290
+ }
45291
+
45292
+
45154
45293
  /***/ }),
45155
45294
 
45156
45295
  /***/ "../../core/bentley/lib/esm/UnexpectedErrors.js":
@@ -45313,7 +45452,7 @@ class YieldManager {
45313
45452
  /*!**********************************************************!*\
45314
45453
  !*** D:/vsts_a/9/s/core/bentley/lib/esm/core-bentley.js ***!
45315
45454
  \**********************************************************/
45316
- /*! exports provided: assert, AsyncMutex, BeEvent, BeUiEvent, BeEventList, BentleyStatus, IModelStatus, BriefcaseStatus, RpcInterfaceStatus, ChangeSetStatus, RepositoryStatus, HttpStatus, IModelHubStatus, AuthStatus, GeoServiceStatus, RealityDataStatus, BentleyError, BentleyLoggerCategory, StatusCategory, SuccessCategory, ErrorCategory, OpenMode, DbOpcode, DbResult, ByteStream, isProperSubclassOf, isSubclassOf, compareWithTolerance, compareNumbers, compareBooleans, compareStrings, comparePossiblyUndefined, compareStringsOrUndefined, compareNumbersOrUndefined, compareBooleansOrUndefined, areEqualPossiblyUndefined, CompressedId64Set, OrderedId64Array, MutableCompressedId64Set, Dictionary, isIDisposable, dispose, disposeArray, using, DisposableList, Id64, TransientIdSequence, Guid, IndexedValue, IndexMap, JsonUtils, LogLevel, Logger, PerfLogger, Entry, LRUCache, LRUMap, LRUDictionary, ObservableSet, AbandonedError, OneAtATimeAction, OrderedId64Iterable, ReadonlyOrderedSet, OrderedSet, partitionArray, PriorityQueue, ProcessDetector, shallowClone, lowerBound, DuplicatePolicy, ReadonlySortedArray, SortedArray, utf8ToStringPolyfill, utf8ToString, base64StringToUint8Array, BeDuration, BeTimePoint, StopWatch, UnexpectedErrors, isInstanceOf, asInstanceOf, YieldManager */
45455
+ /*! exports provided: assert, AsyncMutex, BeEvent, BeUiEvent, BeEventList, BentleyStatus, IModelStatus, BriefcaseStatus, RpcInterfaceStatus, ChangeSetStatus, RepositoryStatus, HttpStatus, IModelHubStatus, AuthStatus, GeoServiceStatus, RealityDataStatus, BentleyError, BentleyLoggerCategory, StatusCategory, SuccessCategory, ErrorCategory, OpenMode, DbOpcode, DbResult, ByteStream, isProperSubclassOf, isSubclassOf, compareWithTolerance, compareNumbers, compareBooleans, compareStrings, comparePossiblyUndefined, compareStringsOrUndefined, compareNumbersOrUndefined, compareBooleansOrUndefined, areEqualPossiblyUndefined, CompressedId64Set, OrderedId64Array, MutableCompressedId64Set, Dictionary, isIDisposable, dispose, disposeArray, using, DisposableList, Id64, TransientIdSequence, Guid, IndexedValue, IndexMap, JsonUtils, LogLevel, Logger, PerfLogger, Entry, LRUCache, LRUMap, LRUDictionary, ObservableSet, AbandonedError, OneAtATimeAction, OrderedId64Iterable, ReadonlyOrderedSet, OrderedSet, partitionArray, PriorityQueue, ProcessDetector, shallowClone, lowerBound, DuplicatePolicy, ReadonlySortedArray, SortedArray, utf8ToStringPolyfill, utf8ToString, base64StringToUint8Array, BeDuration, BeTimePoint, StopWatch, SpanKind, Tracing, UnexpectedErrors, isInstanceOf, asInstanceOf, YieldManager */
45317
45456
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
45318
45457
 
45319
45458
  "use strict";
@@ -45504,16 +45643,21 @@ __webpack_require__.r(__webpack_exports__);
45504
45643
 
45505
45644
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "StopWatch", function() { return _Time__WEBPACK_IMPORTED_MODULE_29__["StopWatch"]; });
45506
45645
 
45507
- /* harmony import */ var _UnexpectedErrors__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./UnexpectedErrors */ "../../core/bentley/lib/esm/UnexpectedErrors.js");
45508
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "UnexpectedErrors", function() { return _UnexpectedErrors__WEBPACK_IMPORTED_MODULE_30__["UnexpectedErrors"]; });
45646
+ /* harmony import */ var _Tracing__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./Tracing */ "../../core/bentley/lib/esm/Tracing.js");
45647
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "SpanKind", function() { return _Tracing__WEBPACK_IMPORTED_MODULE_30__["SpanKind"]; });
45509
45648
 
45510
- /* harmony import */ var _UtilityTypes__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./UtilityTypes */ "../../core/bentley/lib/esm/UtilityTypes.js");
45511
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isInstanceOf", function() { return _UtilityTypes__WEBPACK_IMPORTED_MODULE_31__["isInstanceOf"]; });
45649
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Tracing", function() { return _Tracing__WEBPACK_IMPORTED_MODULE_30__["Tracing"]; });
45512
45650
 
45513
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "asInstanceOf", function() { return _UtilityTypes__WEBPACK_IMPORTED_MODULE_31__["asInstanceOf"]; });
45651
+ /* harmony import */ var _UnexpectedErrors__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! ./UnexpectedErrors */ "../../core/bentley/lib/esm/UnexpectedErrors.js");
45652
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "UnexpectedErrors", function() { return _UnexpectedErrors__WEBPACK_IMPORTED_MODULE_31__["UnexpectedErrors"]; });
45514
45653
 
45515
- /* harmony import */ var _YieldManager__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./YieldManager */ "../../core/bentley/lib/esm/YieldManager.js");
45516
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "YieldManager", function() { return _YieldManager__WEBPACK_IMPORTED_MODULE_32__["YieldManager"]; });
45654
+ /* harmony import */ var _UtilityTypes__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! ./UtilityTypes */ "../../core/bentley/lib/esm/UtilityTypes.js");
45655
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isInstanceOf", function() { return _UtilityTypes__WEBPACK_IMPORTED_MODULE_32__["isInstanceOf"]; });
45656
+
45657
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "asInstanceOf", function() { return _UtilityTypes__WEBPACK_IMPORTED_MODULE_32__["asInstanceOf"]; });
45658
+
45659
+ /* harmony import */ var _YieldManager__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! ./YieldManager */ "../../core/bentley/lib/esm/YieldManager.js");
45660
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "YieldManager", function() { return _YieldManager__WEBPACK_IMPORTED_MODULE_33__["YieldManager"]; });
45517
45661
 
45518
45662
  /*---------------------------------------------------------------------------------------------
45519
45663
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
@@ -45550,6 +45694,7 @@ __webpack_require__.r(__webpack_exports__);
45550
45694
 
45551
45695
 
45552
45696
 
45697
+
45553
45698
 
45554
45699
 
45555
45700
  /** @docs-package-description
@@ -70496,9 +70641,11 @@ DevToolsRpcInterface.interfaceVersion = "0.6.0";
70496
70641
  __webpack_require__.r(__webpack_exports__);
70497
70642
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "IModelNotFoundResponse", function() { return IModelNotFoundResponse; });
70498
70643
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "IModelReadRpcInterface", function() { return IModelReadRpcInterface; });
70499
- /* harmony import */ var _RpcInterface__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../RpcInterface */ "../../core/common/lib/esm/RpcInterface.js");
70500
- /* harmony import */ var _RpcManager__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../RpcManager */ "../../core/common/lib/esm/RpcManager.js");
70501
- /* harmony import */ var _core_RpcControl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./core/RpcControl */ "../../core/common/lib/esm/rpc/core/RpcControl.js");
70644
+ /* harmony import */ var _core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core/RpcConstants */ "../../core/common/lib/esm/rpc/core/RpcConstants.js");
70645
+ /* harmony import */ var _core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./core/RpcOperation */ "../../core/common/lib/esm/rpc/core/RpcOperation.js");
70646
+ /* harmony import */ var _RpcInterface__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../RpcInterface */ "../../core/common/lib/esm/RpcInterface.js");
70647
+ /* harmony import */ var _RpcManager__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../RpcManager */ "../../core/common/lib/esm/RpcManager.js");
70648
+ /* harmony import */ var _core_RpcControl__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./core/RpcControl */ "../../core/common/lib/esm/rpc/core/RpcControl.js");
70502
70649
  /*---------------------------------------------------------------------------------------------
70503
70650
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
70504
70651
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -70506,6 +70653,14 @@ __webpack_require__.r(__webpack_exports__);
70506
70653
  /** @packageDocumentation
70507
70654
  * @module RpcInterface
70508
70655
  */
70656
+ var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
70657
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
70658
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
70659
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
70660
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
70661
+ };
70662
+
70663
+
70509
70664
 
70510
70665
 
70511
70666
 
@@ -70513,10 +70668,11 @@ __webpack_require__.r(__webpack_exports__);
70513
70668
  * (if the service has moved)
70514
70669
  * @public
70515
70670
  */
70516
- class IModelNotFoundResponse extends _core_RpcControl__WEBPACK_IMPORTED_MODULE_2__["RpcNotFoundResponse"] {
70671
+ class IModelNotFoundResponse extends _core_RpcControl__WEBPACK_IMPORTED_MODULE_4__["RpcNotFoundResponse"] {
70517
70672
  constructor() {
70518
70673
  super(...arguments);
70519
70674
  this.isIModelNotFoundResponse = true;
70675
+ this.message = "iModel not found";
70520
70676
  }
70521
70677
  }
70522
70678
  /** The RPC interface for reading from an iModel.
@@ -70524,11 +70680,11 @@ class IModelNotFoundResponse extends _core_RpcControl__WEBPACK_IMPORTED_MODULE_2
70524
70680
  * This interface is not normally used directly. See IModelConnection for higher-level and more convenient API for accessing iModels from a frontend.
70525
70681
  * @internal
70526
70682
  */
70527
- class IModelReadRpcInterface extends _RpcInterface__WEBPACK_IMPORTED_MODULE_0__["RpcInterface"] {
70683
+ class IModelReadRpcInterface extends _RpcInterface__WEBPACK_IMPORTED_MODULE_2__["RpcInterface"] {
70528
70684
  /** Returns the IModelReadRpcInterface instance for the frontend. */
70529
- static getClient() { return _RpcManager__WEBPACK_IMPORTED_MODULE_1__["RpcManager"].getClientForInterface(IModelReadRpcInterface); }
70685
+ static getClient() { return _RpcManager__WEBPACK_IMPORTED_MODULE_3__["RpcManager"].getClientForInterface(IModelReadRpcInterface); }
70530
70686
  /** Returns the IModelReadRpcInterface instance for a custom RPC routing configuration. */
70531
- static getClientForRouting(token) { return _RpcManager__WEBPACK_IMPORTED_MODULE_1__["RpcManager"].getClientForInterface(IModelReadRpcInterface, token); }
70687
+ static getClientForRouting(token) { return _RpcManager__WEBPACK_IMPORTED_MODULE_3__["RpcManager"].getClientForInterface(IModelReadRpcInterface, token); }
70532
70688
  /*===========================================================================================
70533
70689
  NOTE: Any add/remove/change to the methods below requires an update of the interface version.
70534
70690
  NOTE: Please consult the README in this folder for the semantic versioning rules.
@@ -70568,7 +70724,31 @@ class IModelReadRpcInterface extends _RpcInterface__WEBPACK_IMPORTED_MODULE_0__[
70568
70724
  /** The immutable name of the interface. */
70569
70725
  IModelReadRpcInterface.interfaceName = "IModelReadRpcInterface";
70570
70726
  /** The semantic version of the interface. */
70571
- IModelReadRpcInterface.interfaceVersion = "3.1.0";
70727
+ IModelReadRpcInterface.interfaceVersion = "3.2.0";
70728
+ __decorate([
70729
+ _core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__["RpcOperation"].allowResponseCaching(_core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__["RpcResponseCacheControl"].Immutable)
70730
+ ], IModelReadRpcInterface.prototype, "getConnectionProps", null);
70731
+ __decorate([
70732
+ _core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__["RpcOperation"].allowResponseCaching(_core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__["RpcResponseCacheControl"].Immutable)
70733
+ ], IModelReadRpcInterface.prototype, "queryModelRanges", null);
70734
+ __decorate([
70735
+ _core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__["RpcOperation"].allowResponseCaching(_core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__["RpcResponseCacheControl"].Immutable)
70736
+ ], IModelReadRpcInterface.prototype, "getClassHierarchy", null);
70737
+ __decorate([
70738
+ _core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__["RpcOperation"].allowResponseCaching(_core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__["RpcResponseCacheControl"].Immutable)
70739
+ ], IModelReadRpcInterface.prototype, "getViewStateData", null);
70740
+ __decorate([
70741
+ _core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__["RpcOperation"].allowResponseCaching(_core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__["RpcResponseCacheControl"].Immutable)
70742
+ ], IModelReadRpcInterface.prototype, "getDefaultViewId", null);
70743
+ __decorate([
70744
+ _core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__["RpcOperation"].allowResponseCaching(_core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__["RpcResponseCacheControl"].Immutable)
70745
+ ], IModelReadRpcInterface.prototype, "getCustomViewState3dData", null);
70746
+ __decorate([
70747
+ _core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__["RpcOperation"].allowResponseCaching(_core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__["RpcResponseCacheControl"].Immutable)
70748
+ ], IModelReadRpcInterface.prototype, "hydrateViewState", null);
70749
+ __decorate([
70750
+ _core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__["RpcOperation"].allowResponseCaching(_core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__["RpcResponseCacheControl"].Immutable)
70751
+ ], IModelReadRpcInterface.prototype, "getGeoCoordinatesFromIModelCoordinates", null);
70572
70752
 
70573
70753
 
70574
70754
  /***/ }),
@@ -70583,8 +70763,10 @@ IModelReadRpcInterface.interfaceVersion = "3.1.0";
70583
70763
  "use strict";
70584
70764
  __webpack_require__.r(__webpack_exports__);
70585
70765
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "IModelTileRpcInterface", function() { return IModelTileRpcInterface; });
70586
- /* harmony import */ var _RpcInterface__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../RpcInterface */ "../../core/common/lib/esm/RpcInterface.js");
70587
- /* harmony import */ var _RpcManager__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../RpcManager */ "../../core/common/lib/esm/RpcManager.js");
70766
+ /* harmony import */ var _core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core/RpcConstants */ "../../core/common/lib/esm/rpc/core/RpcConstants.js");
70767
+ /* harmony import */ var _core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./core/RpcOperation */ "../../core/common/lib/esm/rpc/core/RpcOperation.js");
70768
+ /* harmony import */ var _RpcInterface__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../RpcInterface */ "../../core/common/lib/esm/RpcInterface.js");
70769
+ /* harmony import */ var _RpcManager__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../RpcManager */ "../../core/common/lib/esm/RpcManager.js");
70588
70770
  /*---------------------------------------------------------------------------------------------
70589
70771
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
70590
70772
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -70592,11 +70774,19 @@ __webpack_require__.r(__webpack_exports__);
70592
70774
  /** @packageDocumentation
70593
70775
  * @module RpcInterface
70594
70776
  */
70777
+ var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
70778
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
70779
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
70780
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
70781
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
70782
+ };
70783
+
70784
+
70595
70785
 
70596
70786
 
70597
70787
  /** @public */
70598
- class IModelTileRpcInterface extends _RpcInterface__WEBPACK_IMPORTED_MODULE_0__["RpcInterface"] {
70599
- static getClient() { return _RpcManager__WEBPACK_IMPORTED_MODULE_1__["RpcManager"].getClientForInterface(IModelTileRpcInterface); }
70788
+ class IModelTileRpcInterface extends _RpcInterface__WEBPACK_IMPORTED_MODULE_2__["RpcInterface"] {
70789
+ static getClient() { return _RpcManager__WEBPACK_IMPORTED_MODULE_3__["RpcManager"].getClientForInterface(IModelTileRpcInterface); }
70600
70790
  /*===========================================================================================
70601
70791
  NOTE: Any add/remove/change to the methods below requires an update of the interface version.
70602
70792
  NOTE: Please consult the README in this folder for the semantic versioning rules.
@@ -70652,7 +70842,13 @@ class IModelTileRpcInterface extends _RpcInterface__WEBPACK_IMPORTED_MODULE_0__[
70652
70842
  /** The immutable name of the interface. */
70653
70843
  IModelTileRpcInterface.interfaceName = "IModelTileRpcInterface";
70654
70844
  /** The semantic version of the interface. */
70655
- IModelTileRpcInterface.interfaceVersion = "3.0.0";
70845
+ IModelTileRpcInterface.interfaceVersion = "3.1.0";
70846
+ __decorate([
70847
+ _core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__["RpcOperation"].allowResponseCaching(_core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__["RpcResponseCacheControl"].Immutable)
70848
+ ], IModelTileRpcInterface.prototype, "getTileCacheContainerUrl", null);
70849
+ __decorate([
70850
+ _core_RpcOperation__WEBPACK_IMPORTED_MODULE_1__["RpcOperation"].allowResponseCaching(_core_RpcConstants__WEBPACK_IMPORTED_MODULE_0__["RpcResponseCacheControl"].Immutable)
70851
+ ], IModelTileRpcInterface.prototype, "requestTileTreeProps", null);
70656
70852
 
70657
70853
 
70658
70854
  /***/ }),
@@ -71187,6 +71383,9 @@ __webpack_require__.r(__webpack_exports__);
71187
71383
  * @public
71188
71384
  */
71189
71385
  class RpcControlResponse {
71386
+ constructor() {
71387
+ this.message = "RpcControlResponse";
71388
+ }
71190
71389
  }
71191
71390
  /** A pending RPC operation response.
71192
71391
  * @public
@@ -71202,6 +71401,10 @@ class RpcPendingResponse extends RpcControlResponse {
71202
71401
  * @public
71203
71402
  */
71204
71403
  class RpcNotFoundResponse extends RpcControlResponse {
71404
+ constructor() {
71405
+ super(...arguments);
71406
+ this.message = "Not found";
71407
+ }
71205
71408
  }
71206
71409
  /** Manages requests and responses for an RPC configuration.
71207
71410
  * @internal
@@ -71429,10 +71632,17 @@ class RpcInvocation {
71429
71632
  const impl = _RpcRegistry__WEBPACK_IMPORTED_MODULE_10__["RpcRegistry"].instance.getImplForInterface(this.operation.interfaceDefinition);
71430
71633
  impl[_RpcRegistry__WEBPACK_IMPORTED_MODULE_10__["CURRENT_INVOCATION"]] = this;
71431
71634
  const op = this.lookupOperationFunction(impl);
71432
- return await RpcInvocation.runActivity(activity, async () => op.call(impl, ...parameters));
71635
+ return await RpcInvocation.runActivity(activity, async () => op.call(impl, ...parameters)
71636
+ .catch(async (error) => {
71637
+ // this catch block is intentionally placed inside `runActivity` to attach the right logging metadata and use the correct openTelemetry span.
71638
+ if (!(error instanceof _RpcControl__WEBPACK_IMPORTED_MODULE_6__["RpcPendingResponse"])) {
71639
+ _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["Logger"].logError(_CommonLoggerCategory__WEBPACK_IMPORTED_MODULE_1__["CommonLoggerCategory"].RpcInterfaceBackend, "Error in RPC operation", { error: _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["BentleyError"].getErrorProps(error) });
71640
+ _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["Tracing"].setAttributes({ error: true });
71641
+ }
71642
+ throw error;
71643
+ }));
71433
71644
  }
71434
71645
  catch (error) {
71435
- _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["Logger"].logError(_CommonLoggerCategory__WEBPACK_IMPORTED_MODULE_1__["CommonLoggerCategory"].RpcInterfaceBackend, "Error in RPC operation", { error: _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["BentleyError"].getErrorProps(error), ...RpcInvocation.sanitizeForLog(activity) });
71436
71646
  return this.reject(error);
71437
71647
  }
71438
71648
  }
@@ -72098,6 +72308,8 @@ class RpcProtocol {
72098
72308
  async fulfill(request) {
72099
72309
  return new (this.invocationType)(this, request).fulfillment;
72100
72310
  }
72311
+ /** @internal */
72312
+ async initialize(_token) { }
72101
72313
  /** Serializes a request. */
72102
72314
  async serialize(request) {
72103
72315
  const serializedContext = await _RpcConfiguration__WEBPACK_IMPORTED_MODULE_1__["RpcConfiguration"].requestContext.serialize(request);
@@ -72712,6 +72924,7 @@ class RpcRequest {
72712
72924
  this._connecting = true;
72713
72925
  RpcRequest._activeRequests.set(this.id, this);
72714
72926
  this.protocol.events.raiseEvent(_RpcConstants__WEBPACK_IMPORTED_MODULE_3__["RpcProtocolEvent"].RequestCreated, this);
72927
+ await this.protocol.initialize(this.operation.policy.token(this));
72715
72928
  this._sending = new Cancellable(this.setHeaders().then(async () => this.send()));
72716
72929
  this.operation.policy.sentCallback(this);
72717
72930
  const response = await this._sending.promise;
@@ -73601,8 +73814,8 @@ __webpack_require__.r(__webpack_exports__);
73601
73814
 
73602
73815
 
73603
73816
  class InitializeInterface extends _RpcInterface__WEBPACK_IMPORTED_MODULE_8__["RpcInterface"] {
73604
- async initialize() { return this.forward(arguments); }
73605
- static createRequest(protocol) {
73817
+ async initialize(_token) { return this.forward(arguments); }
73818
+ static createRequest(protocol, token) {
73606
73819
  const routing = _core_RpcRoutingToken__WEBPACK_IMPORTED_MODULE_10__["RpcRoutingToken"].generate();
73607
73820
  const config = class extends _core_RpcConfiguration__WEBPACK_IMPORTED_MODULE_1__["RpcConfiguration"] {
73608
73821
  constructor() {
@@ -73615,7 +73828,7 @@ class InitializeInterface extends _RpcInterface__WEBPACK_IMPORTED_MODULE_8__["Rp
73615
73828
  const instance = _core_RpcConfiguration__WEBPACK_IMPORTED_MODULE_1__["RpcConfiguration"].obtain(config);
73616
73829
  _core_RpcConfiguration__WEBPACK_IMPORTED_MODULE_1__["RpcConfiguration"].initializeInterfaces(instance);
73617
73830
  const client = _RpcManager__WEBPACK_IMPORTED_MODULE_9__["RpcManager"].getClientForInterface(InitializeInterface, routing);
73618
- return new (protocol.requestType)(client, "initialize", []);
73831
+ return new (protocol.requestType)(client, "initialize", [token]);
73619
73832
  }
73620
73833
  }
73621
73834
  InitializeInterface.interfaceName = "InitializeInterface";
@@ -73638,13 +73851,13 @@ class WebAppRpcProtocol extends _core_RpcProtocol__WEBPACK_IMPORTED_MODULE_3__["
73638
73851
  this.events.addListener(_WebAppRpcLogging__WEBPACK_IMPORTED_MODULE_5__["WebAppRpcLogging"].logProtocolEvent);
73639
73852
  }
73640
73853
  /** @internal */
73641
- async initialize() {
73854
+ async initialize(token) {
73642
73855
  if (this._initialized) {
73643
73856
  return this._initialized;
73644
73857
  }
73645
73858
  return this._initialized = new Promise(async (resolve) => {
73646
73859
  try {
73647
- const request = InitializeInterface.createRequest(this);
73860
+ const request = InitializeInterface.createRequest(this, token);
73648
73861
  const response = await request.preflight();
73649
73862
  if (response && response.ok) {
73650
73863
  (response.headers.get("Access-Control-Allow-Headers") || "").split(",").forEach((v) => this.allowedHeaders.add(v.trim()));
@@ -73901,9 +74114,6 @@ class WebAppRpcRequest extends _core_RpcRequest__WEBPACK_IMPORTED_MODULE_6__["Rp
73901
74114
  }
73902
74115
  /** Sends the request. */
73903
74116
  async send() {
73904
- if (this.method !== "options") {
73905
- await this.protocol.initialize();
73906
- }
73907
74117
  this._loading = true;
73908
74118
  await this.setupTransport();
73909
74119
  return new Promise(async (resolve, reject) => {
@@ -73990,8 +74200,29 @@ class WebAppRpcRequest extends _core_RpcRequest__WEBPACK_IMPORTED_MODULE_6__["Rp
73990
74200
  }
73991
74201
  static configureResponse(protocol, request, fulfillment, res) {
73992
74202
  const success = protocol.getStatus(fulfillment.status) === _core_RpcConstants__WEBPACK_IMPORTED_MODULE_3__["RpcRequestStatus"].Resolved;
74203
+ // TODO: Use stale-while-revalidate in cache headers. This needs to be tested, and does not currently have support in the router/caching-service.
74204
+ // This will allow browsers to use stale cached responses while also revalidating with the router, allowing us to start up a backend if necessary.
74205
+ // RPC Caching Service uses the s-maxage header to determine the TTL for the redis cache.
74206
+ const oneHourInSeconds = 3600;
73993
74207
  if (success && request.caching === _core_RpcConstants__WEBPACK_IMPORTED_MODULE_3__["RpcResponseCacheControl"].Immutable) {
73994
- res.set("Cache-Control", "private, max-age=31536000, immutable");
74208
+ // If response size is > 50 MB, do not cache it.
74209
+ if (fulfillment.result.objects.length > (50 * 10 ** 7)) {
74210
+ res.set("Cache-Control", "no-store");
74211
+ }
74212
+ else if (request.operation.operationName === "generateTileContent") {
74213
+ res.set("Cache-Control", "no-store");
74214
+ }
74215
+ else if (request.operation.operationName === "getConnectionProps") {
74216
+ // GetConnectionprops can't be cached on the browser longer than the lifespan of the backend. The lifespan of backend may shrink too. Keep it at 1 second to be safe.
74217
+ res.set("Cache-Control", `s-maxage=${oneHourInSeconds * 24}, max-age=1, immutable`);
74218
+ }
74219
+ else if (request.operation.operationName === "getTileCacheContainerUrl") {
74220
+ // getTileCacheContainerUrl returns a SAS with an expiry of 23:59:59. We can't exceed that time when setting the max-age.
74221
+ res.set("Cache-Control", `s-maxage=${oneHourInSeconds * 23}, max-age=${oneHourInSeconds * 23}, immutable`);
74222
+ }
74223
+ else {
74224
+ res.set("Cache-Control", `s-maxage=${oneHourInSeconds * 24}, max-age=${oneHourInSeconds * 48}, immutable`);
74225
+ }
73995
74226
  }
73996
74227
  if (fulfillment.retry) {
73997
74228
  res.set("Retry-After", fulfillment.retry);
@@ -74112,9 +74343,11 @@ class WebAppRpcRequest extends _core_RpcRequest__WEBPACK_IMPORTED_MODULE_6__["Rp
74112
74343
  }
74113
74344
  }
74114
74345
  /** The maximum size permitted for an encoded component in a URL.
74346
+ * Note that some backends limit the total cumulative request size. Our current node backends accept requests with a max size of 16 kb.
74347
+ * In addition to the url size, an authorization header may also add considerably to the request size.
74115
74348
  * @note This is used for features like encoding the payload of a cacheable request in the URL.
74116
74349
  */
74117
- WebAppRpcRequest.maxUrlComponentSize = 4096;
74350
+ WebAppRpcRequest.maxUrlComponentSize = 1024 * 8;
74118
74351
 
74119
74352
 
74120
74353
  /***/ }),
@@ -85213,6 +85446,12 @@ exports.SchemaGraph = SchemaGraph;
85213
85446
 
85214
85447
  "use strict";
85215
85448
 
85449
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
85450
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
85451
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
85452
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
85453
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
85454
+ };
85216
85455
  Object.defineProperty(exports, "__esModule", { value: true });
85217
85456
  exports.ECSchemaRpcInterface = void 0;
85218
85457
  /*---------------------------------------------------------------------------------------------
@@ -85254,11 +85493,14 @@ class ECSchemaRpcInterface extends core_common_1.RpcInterface {
85254
85493
  return this.forward.apply(this, [arguments]);
85255
85494
  }
85256
85495
  }
85257
- exports.ECSchemaRpcInterface = ECSchemaRpcInterface;
85258
85496
  /** The version of the RPC Interface. */
85259
85497
  ECSchemaRpcInterface.version = "2.0.0";
85260
85498
  ECSchemaRpcInterface.interfaceName = "ECSchemaRpcInterface";
85261
85499
  ECSchemaRpcInterface.interfaceVersion = ECSchemaRpcInterface.version;
85500
+ __decorate([
85501
+ core_common_1.RpcOperation.setPolicy({ allowResponseCompression: true })
85502
+ ], ECSchemaRpcInterface.prototype, "getSchemaJSON", null);
85503
+ exports.ECSchemaRpcInterface = ECSchemaRpcInterface;
85262
85504
 
85263
85505
 
85264
85506
  /***/ }),
@@ -88897,56 +89139,63 @@ class AccuSnap {
88897
89139
  return undefined; // Don't make back end request when only doing intersection snap when we don't have another hit to intersect with...
88898
89140
  }
88899
89141
  }
88900
- const result = await thisHit.iModel.requestSnap(requestProps);
88901
- if (out)
88902
- out.snapStatus = result.status;
88903
- if (result.status !== _ElementLocateManager__WEBPACK_IMPORTED_MODULE_2__["SnapStatus"].Success)
88904
- return undefined;
88905
- const parseCurve = (json) => {
88906
- const parsed = undefined !== json ? _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["IModelJson"].Reader.parse(json) : undefined;
88907
- return parsed instanceof _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["GeometryQuery"] && "curvePrimitive" === parsed.geometryCategory ? parsed : undefined;
88908
- };
88909
- // If this hit is from a plan projection model, apply the model's elevation to the snap point for display.
88910
- // Likewise, if it is a hit on a model with a display transform, apply the model's transform to the snap point.
88911
- let snapPoint = result.snapPoint;
88912
- const elevation = undefined !== thisHit.modelId ? thisHit.viewport.view.getModelElevation(thisHit.modelId) : 0;
88913
- if (0 !== elevation || undefined !== thisHit.viewport.view.modelDisplayTransformProvider) {
88914
- const adjustedSnapPoint = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Point3d"].fromJSON(snapPoint);
88915
- thisHit.viewport.view.transformPointByModelDisplayTransform(thisHit.modelId, adjustedSnapPoint, false);
88916
- adjustedSnapPoint.z += elevation;
88917
- snapPoint = adjustedSnapPoint;
88918
- }
88919
- const snap = new _HitDetail__WEBPACK_IMPORTED_MODULE_3__["SnapDetail"](thisHit, result.snapMode, result.heat, snapPoint);
88920
- // Apply model's elevation and display transform to curve for display.
88921
- let transform;
88922
- if (undefined !== thisHit.modelId && undefined !== thisHit.viewport.view.modelDisplayTransformProvider) {
88923
- transform = thisHit.viewport.view.getModelDisplayTransform(thisHit.modelId, _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Transform"].createIdentity());
88924
- if (0 !== elevation)
88925
- transform.origin.set(0, 0, elevation);
88926
- }
88927
- else if (0 !== elevation) {
88928
- transform = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Transform"].createTranslationXYZ(0, 0, elevation);
88929
- }
88930
- snap.setCurvePrimitive(parseCurve(result.curve), transform, result.geomType);
88931
- if (undefined !== result.parentGeomType)
88932
- snap.parentGeomType = result.parentGeomType;
88933
- if (undefined !== result.hitPoint) {
88934
- snap.hitPoint.setFromJSON(result.hitPoint); // Update hitPoint from readPixels with exact point location corrected to surface/edge geometry...
88935
- thisHit.viewport.view.transformPointByModelDisplayTransform(thisHit.modelId, snap.hitPoint, false);
88936
- }
88937
- if (undefined !== result.normal) {
88938
- snap.normal = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Vector3d"].fromJSON(result.normal);
88939
- thisHit.viewport.view.transformNormalByModelDisplayTransform(thisHit.modelId, snap.normal);
88940
- }
88941
- if (_HitDetail__WEBPACK_IMPORTED_MODULE_3__["SnapMode"].Intersection !== snap.snapMode)
88942
- return snap;
88943
- if (undefined === result.intersectId)
88944
- return undefined;
88945
- const otherPrimitive = parseCurve(result.intersectCurve);
88946
- if (undefined === otherPrimitive)
89142
+ try {
89143
+ const result = await thisHit.iModel.requestSnap(requestProps);
89144
+ if (out)
89145
+ out.snapStatus = result.status;
89146
+ if (result.status !== _ElementLocateManager__WEBPACK_IMPORTED_MODULE_2__["SnapStatus"].Success)
89147
+ return undefined;
89148
+ const parseCurve = (json) => {
89149
+ const parsed = undefined !== json ? _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["IModelJson"].Reader.parse(json) : undefined;
89150
+ return parsed instanceof _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["GeometryQuery"] && "curvePrimitive" === parsed.geometryCategory ? parsed : undefined;
89151
+ };
89152
+ // If this hit is from a plan projection model, apply the model's elevation to the snap point for display.
89153
+ // Likewise, if it is a hit on a model with a display transform, apply the model's transform to the snap point.
89154
+ let snapPoint = result.snapPoint;
89155
+ const elevation = undefined !== thisHit.modelId ? thisHit.viewport.view.getModelElevation(thisHit.modelId) : 0;
89156
+ if (0 !== elevation || undefined !== thisHit.viewport.view.modelDisplayTransformProvider) {
89157
+ const adjustedSnapPoint = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Point3d"].fromJSON(snapPoint);
89158
+ thisHit.viewport.view.transformPointByModelDisplayTransform(thisHit.modelId, adjustedSnapPoint, false);
89159
+ adjustedSnapPoint.z += elevation;
89160
+ snapPoint = adjustedSnapPoint;
89161
+ }
89162
+ const snap = new _HitDetail__WEBPACK_IMPORTED_MODULE_3__["SnapDetail"](thisHit, result.snapMode, result.heat, snapPoint);
89163
+ // Apply model's elevation and display transform to curve for display.
89164
+ let transform;
89165
+ if (undefined !== thisHit.modelId && undefined !== thisHit.viewport.view.modelDisplayTransformProvider) {
89166
+ transform = thisHit.viewport.view.getModelDisplayTransform(thisHit.modelId, _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Transform"].createIdentity());
89167
+ if (0 !== elevation)
89168
+ transform.origin.set(0, 0, elevation);
89169
+ }
89170
+ else if (0 !== elevation) {
89171
+ transform = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Transform"].createTranslationXYZ(0, 0, elevation);
89172
+ }
89173
+ snap.setCurvePrimitive(parseCurve(result.curve), transform, result.geomType);
89174
+ if (undefined !== result.parentGeomType)
89175
+ snap.parentGeomType = result.parentGeomType;
89176
+ if (undefined !== result.hitPoint) {
89177
+ snap.hitPoint.setFromJSON(result.hitPoint); // Update hitPoint from readPixels with exact point location corrected to surface/edge geometry...
89178
+ thisHit.viewport.view.transformPointByModelDisplayTransform(thisHit.modelId, snap.hitPoint, false);
89179
+ }
89180
+ if (undefined !== result.normal) {
89181
+ snap.normal = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Vector3d"].fromJSON(result.normal);
89182
+ thisHit.viewport.view.transformNormalByModelDisplayTransform(thisHit.modelId, snap.normal);
89183
+ }
89184
+ if (_HitDetail__WEBPACK_IMPORTED_MODULE_3__["SnapMode"].Intersection !== snap.snapMode)
89185
+ return snap;
89186
+ if (undefined === result.intersectId)
89187
+ return undefined;
89188
+ const otherPrimitive = parseCurve(result.intersectCurve);
89189
+ if (undefined === otherPrimitive)
89190
+ return undefined;
89191
+ const intersect = new _HitDetail__WEBPACK_IMPORTED_MODULE_3__["IntersectDetail"](snap, snap.heat, snap.snapPoint, otherPrimitive, result.intersectId);
89192
+ return intersect;
89193
+ }
89194
+ catch (_err) {
89195
+ if (out)
89196
+ out.snapStatus = _ElementLocateManager__WEBPACK_IMPORTED_MODULE_2__["SnapStatus"].Aborted;
88947
89197
  return undefined;
88948
- const intersect = new _HitDetail__WEBPACK_IMPORTED_MODULE_3__["IntersectDetail"](snap, snap.heat, snap.snapPoint, otherPrimitive, result.intersectId);
88949
- return intersect;
89198
+ }
88950
89199
  }
88951
89200
  async getAccuSnapDetail(hitList, out) {
88952
89201
  const thisHit = hitList.getNextHit();
@@ -95867,7 +96116,7 @@ class IModelApp {
95867
96116
  applicationId: this.applicationId,
95868
96117
  applicationVersion: this.applicationVersion,
95869
96118
  sessionId: this.sessionId,
95870
- authorization: await this.getAccessToken(),
96119
+ authorization: _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_2__["ProcessDetector"].isMobileAppFrontend ? "" : await this.getAccessToken(),
95871
96120
  };
95872
96121
  const csrf = IModelApp.securityOptions.csrfProtection;
95873
96122
  if (csrf && csrf.enabled) {
@@ -104448,27 +104697,31 @@ __webpack_require__.r(__webpack_exports__);
104448
104697
  /** @packageDocumentation
104449
104698
  * @module Views
104450
104699
  */
104451
- /** A rectangle in integer view coordinates with (0,0) corresponding to the top-left corner of the view.
104452
- *
104700
+ /** A rectangle in unsigned integer view coordinates with (0,0) corresponding to the top-left corner of the view.
104453
104701
  * Increasing **x** moves from left to right, and increasing **y** moves from top to bottom.
104702
+ * [[left]], [[top]], [[right]], and [[bottom]] are required to be non-negative integers; any negative inputs are treated as
104703
+ * zero and any non-integer inputs are rounded down to the nearest integer.
104454
104704
  * @public
104455
104705
  * @extensions
104456
104706
  */
104457
104707
  class ViewRect {
104458
104708
  /** Construct a new ViewRect. */
104459
104709
  constructor(left = 0, top = 0, right = 0, bottom = 0) { this.init(left, top, right, bottom); }
104460
- /** The leftmost side of this ViewRect. */
104710
+ _set(key, value) {
104711
+ this[key] = Math.max(0, Math.floor(value));
104712
+ }
104713
+ /** The leftmost side of this ViewRect. */
104461
104714
  get left() { return this._left; }
104462
- set left(val) { this._left = Math.floor(val); }
104715
+ set left(val) { this._set("_left", val); }
104463
104716
  /** The topmost side of this ViewRect. */
104464
104717
  get top() { return this._top; }
104465
- set top(val) { this._top = Math.floor(val); }
104718
+ set top(val) { this._set("_top", val); }
104466
104719
  /** The rightmost side of this ViewRect. */
104467
104720
  get right() { return this._right; }
104468
- set right(val) { this._right = Math.floor(val); }
104721
+ set right(val) { this._set("_right", val); }
104469
104722
  /** The bottommost side of this ViewRect. */
104470
104723
  get bottom() { return this._bottom; }
104471
- set bottom(val) { this._bottom = Math.floor(val); }
104724
+ set bottom(val) { this._set("_bottom", val); }
104472
104725
  /** True if this ViewRect has an area > 0. */
104473
104726
  get isNull() { return this.right <= this.left || this.bottom <= this.top; }
104474
104727
  /** True if `!isNull` */
@@ -108909,7 +109162,7 @@ class Viewport {
108909
109162
  return false; // Reality Models not selectable
108910
109163
  return undefined === this.mapLayerFromIds(pixel.featureTable.modelId, pixel.elementId); // Maps no selectable.
108911
109164
  }
108912
- /** Read the current image from this viewport from the rendering system. If a view rectangle outside the actual view is specified, the entire view is captured.
109165
+ /** Read the current image from this viewport from the rendering system. If a "null" rectangle is supplied (@see [[ViewRect.isNull]]), the entire view is captured.
108913
109166
  * @param rect The area of the view to read. The origin of a viewRect must specify the upper left corner.
108914
109167
  * @param targetSize The size of the image to be returned. The size can be larger or smaller than the original view.
108915
109168
  * @param flipVertically If true, the image is flipped along the x-axis.
@@ -108917,7 +109170,7 @@ class Viewport {
108917
109170
  * @note By default the image is returned with the coordinate (0,0) referring to the bottom-most pixel. Pass `true` for `flipVertically` to flip it along the x-axis.
108918
109171
  * @deprecated Use readImageBuffer.
108919
109172
  */
108920
- readImage(rect = new _ViewRect__WEBPACK_IMPORTED_MODULE_25__["ViewRect"](0, 0, -1, -1), targetSize = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Point2d"].createZero(), flipVertically = false) {
109173
+ readImage(rect = new _ViewRect__WEBPACK_IMPORTED_MODULE_25__["ViewRect"](1, 1, 0, 0), targetSize = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Point2d"].createZero(), flipVertically = false) {
108921
109174
  // eslint-disable-next-line deprecation/deprecation
108922
109175
  return this.target.readImage(rect, targetSize, flipVertically);
108923
109176
  }
@@ -111514,226 +111767,233 @@ if (globalThis[globalSymbol])
111514
111767
 
111515
111768
 
111516
111769
  const extensionExports = {
111517
- ContextRotationId: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ContextRotationId"],
111518
- ACSType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ACSType"],
111519
111770
  ACSDisplayOptions: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ACSDisplayOptions"],
111520
- CoordSystem: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["CoordSystem"],
111521
- LocateAction: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["LocateAction"],
111522
- LocateFilterStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["LocateFilterStatus"],
111523
- SnapStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SnapStatus"],
111524
- FlashMode: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["FlashMode"],
111525
- FrontendLoggerCategory: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["FrontendLoggerCategory"],
111526
- SnapMode: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SnapMode"],
111527
- SnapHeat: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SnapHeat"],
111528
- HitSource: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HitSource"],
111529
- HitGeomType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HitGeomType"],
111530
- HitParentGeomType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HitParentGeomType"],
111531
- HitPriority: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HitPriority"],
111532
- HitDetailType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HitDetailType"],
111533
- OutputMessageType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["OutputMessageType"],
111534
- OutputMessagePriority: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["OutputMessagePriority"],
111535
- OutputMessageAlert: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["OutputMessageAlert"],
111536
- ActivityMessageEndReason: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ActivityMessageEndReason"],
111537
- MessageBoxType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["MessageBoxType"],
111538
- MessageBoxIconType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["MessageBoxIconType"],
111539
- MessageBoxValue: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["MessageBoxValue"],
111540
- GraphicType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["GraphicType"],
111541
- UniformType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["UniformType"],
111542
- VaryingType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["VaryingType"],
111543
- SelectionSetEventType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SelectionSetEventType"],
111544
- StandardViewId: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["StandardViewId"],
111545
- TileLoadStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileLoadStatus"],
111546
- TileVisibility: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileVisibility"],
111547
- TileLoadPriority: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileLoadPriority"],
111548
- TileBoundingBoxes: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileBoundingBoxes"],
111549
- TileTreeLoadStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileTreeLoadStatus"],
111550
- TileGraphicType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileGraphicType"],
111551
- ClipEventType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ClipEventType"],
111552
- SelectionMethod: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SelectionMethod"],
111553
- SelectionMode: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SelectionMode"],
111554
- SelectionProcessing: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SelectionProcessing"],
111555
- BeButton: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BeButton"],
111556
- CoordinateLockOverrides: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["CoordinateLockOverrides"],
111557
- InputSource: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["InputSource"],
111558
- CoordSource: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["CoordSource"],
111559
- BeModifierKeys: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BeModifierKeys"],
111560
- EventHandled: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["EventHandled"],
111561
- ParseAndRunResult: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ParseAndRunResult"],
111562
- KeyinParseError: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["KeyinParseError"],
111563
- StartOrResume: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["StartOrResume"],
111564
- ManipulatorToolEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ManipulatorToolEvent"],
111565
- ToolAssistanceImage: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ToolAssistanceImage"],
111566
- ToolAssistanceInputMethod: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ToolAssistanceInputMethod"],
111567
- ViewStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewStatus"],
111771
+ ACSType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ACSType"],
111568
111772
  AccuDrawHintBuilder: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["AccuDrawHintBuilder"],
111569
111773
  AccuSnap: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["AccuSnap"],
111570
- AuxCoordSystemState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["AuxCoordSystemState"],
111774
+ ActivityMessageDetails: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ActivityMessageDetails"],
111775
+ ActivityMessageEndReason: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ActivityMessageEndReason"],
111571
111776
  AuxCoordSystem2dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["AuxCoordSystem2dState"],
111572
111777
  AuxCoordSystem3dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["AuxCoordSystem3dState"],
111573
111778
  AuxCoordSystemSpatialState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["AuxCoordSystemSpatialState"],
111779
+ AuxCoordSystemState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["AuxCoordSystemState"],
111780
+ BackgroundFill: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["BackgroundFill"],
111781
+ BackgroundMapType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["BackgroundMapType"],
111782
+ BatchType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["BatchType"],
111783
+ BeButton: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BeButton"],
111784
+ BeButtonEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BeButtonEvent"],
111785
+ BeButtonState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BeButtonState"],
111786
+ BeModifierKeys: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BeModifierKeys"],
111787
+ BeTouchEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BeTouchEvent"],
111788
+ BeWheelEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BeWheelEvent"],
111789
+ BingElevationProvider: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BingElevationProvider"],
111574
111790
  BingLocationProvider: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BingLocationProvider"],
111791
+ BisCodeSpec: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["BisCodeSpec"],
111792
+ BriefcaseIdValue: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["BriefcaseIdValue"],
111575
111793
  CategorySelectorState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["CategorySelectorState"],
111576
111794
  ChangeFlags: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ChangeFlags"],
111795
+ ChangeOpCode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ChangeOpCode"],
111796
+ ChangedValueState: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ChangedValueState"],
111797
+ ChangesetType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ChangesetType"],
111798
+ ClipEventType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ClipEventType"],
111799
+ Cluster: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["Cluster"],
111800
+ ColorByName: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ColorByName"],
111801
+ ColorDef: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ColorDef"],
111802
+ CommonLoggerCategory: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["CommonLoggerCategory"],
111577
111803
  ContextRealityModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ContextRealityModelState"],
111578
- DisplayStyleState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["DisplayStyleState"],
111804
+ ContextRotationId: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ContextRotationId"],
111805
+ CoordSource: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["CoordSource"],
111806
+ CoordSystem: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["CoordSystem"],
111807
+ CoordinateLockOverrides: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["CoordinateLockOverrides"],
111808
+ Decorations: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["Decorations"],
111809
+ DisclosedTileTreeSet: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["DisclosedTileTreeSet"],
111579
111810
  DisplayStyle2dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["DisplayStyle2dState"],
111580
111811
  DisplayStyle3dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["DisplayStyle3dState"],
111812
+ DisplayStyleState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["DisplayStyleState"],
111813
+ DrawingModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["DrawingModelState"],
111581
111814
  DrawingViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["DrawingViewState"],
111582
- LocateOptions: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["LocateOptions"],
111583
- LocateResponse: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["LocateResponse"],
111584
- ElementPicker: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ElementPicker"],
111815
+ ECSqlSystemProperty: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ECSqlSystemProperty"],
111816
+ ECSqlValueType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ECSqlValueType"],
111817
+ EditManipulator: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["EditManipulator"],
111818
+ ElementGeometryOpcode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ElementGeometryOpcode"],
111585
111819
  ElementLocateManager: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ElementLocateManager"],
111820
+ ElementPicker: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ElementPicker"],
111821
+ ElementState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ElementState"],
111586
111822
  EmphasizeElements: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["EmphasizeElements"],
111587
111823
  EntityState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["EntityState"],
111588
- ElementState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ElementState"],
111824
+ EventController: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["EventController"],
111825
+ EventHandled: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["EventHandled"],
111826
+ FeatureOverrideType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["FeatureOverrideType"],
111827
+ FeatureSymbology: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["FeatureSymbology"],
111828
+ FillDisplay: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["FillDisplay"],
111829
+ FillFlags: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["FillFlags"],
111830
+ FlashMode: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["FlashMode"],
111589
111831
  FlashSettings: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["FlashSettings"],
111832
+ FontType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["FontType"],
111833
+ FrontendLoggerCategory: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["FrontendLoggerCategory"],
111590
111834
  FrustumAnimator: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["FrustumAnimator"],
111835
+ GeoCoordStatus: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["GeoCoordStatus"],
111836
+ GeometricModel2dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["GeometricModel2dState"],
111837
+ GeometricModel3dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["GeometricModel3dState"],
111838
+ GeometricModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["GeometricModelState"],
111839
+ GeometryClass: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["GeometryClass"],
111840
+ GeometryStreamFlags: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["GeometryStreamFlags"],
111841
+ GeometrySummaryVerbosity: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["GeometrySummaryVerbosity"],
111591
111842
  GlobeAnimator: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["GlobeAnimator"],
111843
+ GlobeMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["GlobeMode"],
111844
+ GraphicBranch: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["GraphicBranch"],
111845
+ GraphicBuilder: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["GraphicBuilder"],
111846
+ GraphicType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["GraphicType"],
111847
+ GridOrientationType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["GridOrientationType"],
111848
+ HSVConstants: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["HSVConstants"],
111849
+ HiliteSet: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HiliteSet"],
111592
111850
  HitDetail: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HitDetail"],
111593
- SnapDetail: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SnapDetail"],
111594
- IntersectDetail: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["IntersectDetail"],
111851
+ HitDetailType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HitDetailType"],
111852
+ HitGeomType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HitGeomType"],
111595
111853
  HitList: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HitList"],
111596
- canvasToResizedCanvasWithBars: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["canvasToResizedCanvasWithBars"],
111597
- imageBufferToCanvas: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["imageBufferToCanvas"],
111598
- canvasToImageBuffer: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["canvasToImageBuffer"],
111599
- getImageSourceMimeType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["getImageSourceMimeType"],
111600
- getImageSourceFormatForMimeType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["getImageSourceFormatForMimeType"],
111601
- imageElementFromImageSource: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["imageElementFromImageSource"],
111602
- imageElementFromUrl: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["imageElementFromUrl"],
111603
- extractImageSourceDimensions: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["extractImageSourceDimensions"],
111604
- imageBufferToPngDataUrl: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["imageBufferToPngDataUrl"],
111605
- imageBufferToBase64EncodedPng: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["imageBufferToBase64EncodedPng"],
111606
- getCompressedJpegFromCanvas: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["getCompressedJpegFromCanvas"],
111854
+ HitParentGeomType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HitParentGeomType"],
111855
+ HitPriority: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HitPriority"],
111856
+ HitSource: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HitSource"],
111607
111857
  IModelConnection: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["IModelConnection"],
111608
- NotificationHandler: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["NotificationHandler"],
111858
+ IconSprites: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["IconSprites"],
111859
+ ImageBufferFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ImageBufferFormat"],
111860
+ ImageSourceFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ImageSourceFormat"],
111861
+ InputCollector: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["InputCollector"],
111862
+ InputSource: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["InputSource"],
111863
+ InteractiveTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["InteractiveTool"],
111864
+ IntersectDetail: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["IntersectDetail"],
111865
+ KeyinParseError: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["KeyinParseError"],
111866
+ LinePixels: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["LinePixels"],
111867
+ LocateAction: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["LocateAction"],
111868
+ LocateFilterStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["LocateFilterStatus"],
111869
+ LocateOptions: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["LocateOptions"],
111870
+ LocateResponse: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["LocateResponse"],
111871
+ ManipulatorToolEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ManipulatorToolEvent"],
111609
111872
  MarginPercent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["MarginPercent"],
111610
111873
  Marker: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["Marker"],
111611
- Cluster: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["Cluster"],
111612
111874
  MarkerSet: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["MarkerSet"],
111875
+ MassPropertiesOperation: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["MassPropertiesOperation"],
111876
+ MessageBoxIconType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["MessageBoxIconType"],
111877
+ MessageBoxType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["MessageBoxType"],
111878
+ MessageBoxValue: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["MessageBoxValue"],
111613
111879
  ModelSelectorState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ModelSelectorState"],
111614
111880
  ModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ModelState"],
111615
- GeometricModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["GeometricModelState"],
111616
- GeometricModel2dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["GeometricModel2dState"],
111617
- GeometricModel3dState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["GeometricModel3dState"],
111618
- SheetModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SheetModelState"],
111619
- SpatialModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SpatialModelState"],
111620
- PhysicalModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["PhysicalModelState"],
111621
- SpatialLocationModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SpatialLocationModelState"],
111622
- DrawingModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["DrawingModelState"],
111623
- SectionDrawingModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SectionDrawingModelState"],
111624
- NotifyMessageDetails: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["NotifyMessageDetails"],
111625
- ActivityMessageDetails: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ActivityMessageDetails"],
111881
+ MonochromeMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["MonochromeMode"],
111882
+ NotificationHandler: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["NotificationHandler"],
111626
111883
  NotificationManager: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["NotificationManager"],
111884
+ NotifyMessageDetails: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["NotifyMessageDetails"],
111885
+ Npc: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["Npc"],
111886
+ OrthographicViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["OrthographicViewState"],
111887
+ OutputMessageAlert: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["OutputMessageAlert"],
111888
+ OutputMessagePriority: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["OutputMessagePriority"],
111889
+ OutputMessageType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["OutputMessageType"],
111890
+ ParseAndRunResult: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ParseAndRunResult"],
111627
111891
  PerModelCategoryVisibility: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["PerModelCategoryVisibility"],
111628
- Decorations: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["Decorations"],
111629
- FeatureSymbology: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["FeatureSymbology"],
111630
- GraphicBranch: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["GraphicBranch"],
111631
- GraphicBuilder: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["GraphicBuilder"],
111892
+ PhysicalModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["PhysicalModelState"],
111632
111893
  Pixel: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["Pixel"],
111894
+ PlanarClipMaskMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["PlanarClipMaskMode"],
111895
+ PlanarClipMaskPriority: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["PlanarClipMaskPriority"],
111896
+ PrimitiveTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["PrimitiveTool"],
111897
+ QueryRowFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["QueryRowFormat"],
111898
+ Rank: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["Rank"],
111633
111899
  RenderClipVolume: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["RenderClipVolume"],
111634
111900
  RenderGraphic: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["RenderGraphic"],
111635
111901
  RenderGraphicOwner: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["RenderGraphicOwner"],
111902
+ RenderMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["RenderMode"],
111636
111903
  RenderSystem: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["RenderSystem"],
111637
111904
  Scene: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["Scene"],
111638
- HiliteSet: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["HiliteSet"],
111905
+ SectionDrawingModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SectionDrawingModelState"],
111906
+ SectionType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["SectionType"],
111907
+ SelectionMethod: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SelectionMethod"],
111908
+ SelectionMode: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SelectionMode"],
111909
+ SelectionProcessing: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SelectionProcessing"],
111639
111910
  SelectionSet: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SelectionSet"],
111911
+ SelectionSetEventType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SelectionSetEventType"],
111912
+ SheetModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SheetModelState"],
111640
111913
  SheetViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SheetViewState"],
111914
+ SkyBoxImageType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["SkyBoxImageType"],
111915
+ SnapDetail: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SnapDetail"],
111916
+ SnapHeat: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SnapHeat"],
111917
+ SnapMode: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SnapMode"],
111918
+ SnapStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SnapStatus"],
111919
+ SpatialClassifierInsideDisplay: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["SpatialClassifierInsideDisplay"],
111920
+ SpatialClassifierOutsideDisplay: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["SpatialClassifierOutsideDisplay"],
111921
+ SpatialLocationModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SpatialLocationModelState"],
111922
+ SpatialModelState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SpatialModelState"],
111641
111923
  SpatialViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SpatialViewState"],
111642
- OrthographicViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["OrthographicViewState"],
111643
111924
  Sprite: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["Sprite"],
111644
- IconSprites: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["IconSprites"],
111645
111925
  SpriteLocation: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["SpriteLocation"],
111926
+ StandardViewId: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["StandardViewId"],
111927
+ StartOrResume: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["StartOrResume"],
111928
+ SyncMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["SyncMode"],
111646
111929
  TentativePoint: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TentativePoint"],
111647
- DisclosedTileTreeSet: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["DisclosedTileTreeSet"],
111648
- readElementGraphics: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["readElementGraphics"],
111649
- BingElevationProvider: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BingElevationProvider"],
111930
+ TerrainHeightOriginMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["TerrainHeightOriginMode"],
111931
+ TextureMapUnits: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["TextureMapUnits"],
111932
+ ThematicDisplayMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ThematicDisplayMode"],
111933
+ ThematicGradientColorScheme: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ThematicGradientColorScheme"],
111934
+ ThematicGradientMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ThematicGradientMode"],
111650
111935
  Tile: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["Tile"],
111651
111936
  TileAdmin: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileAdmin"],
111937
+ TileBoundingBoxes: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileBoundingBoxes"],
111652
111938
  TileDrawArgs: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileDrawArgs"],
111939
+ TileGraphicType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileGraphicType"],
111940
+ TileLoadPriority: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileLoadPriority"],
111941
+ TileLoadStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileLoadStatus"],
111653
111942
  TileRequest: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileRequest"],
111654
- TileRequestChannelStatistics: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileRequestChannelStatistics"],
111655
111943
  TileRequestChannel: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileRequestChannel"],
111944
+ TileRequestChannelStatistics: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileRequestChannelStatistics"],
111656
111945
  TileRequestChannels: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileRequestChannels"],
111657
111946
  TileTree: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileTree"],
111947
+ TileTreeLoadStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileTreeLoadStatus"],
111658
111948
  TileTreeReference: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileTreeReference"],
111659
111949
  TileUsageMarker: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileUsageMarker"],
111950
+ TileVisibility: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TileVisibility"],
111660
111951
  Tiles: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["Tiles"],
111661
- ViewClipTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewClipTool"],
111662
- ViewClipClearTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewClipClearTool"],
111663
- ViewClipDecorationProvider: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewClipDecorationProvider"],
111664
- EditManipulator: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["EditManipulator"],
111665
- EventController: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["EventController"],
111666
- PrimitiveTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["PrimitiveTool"],
111667
- BeButtonState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BeButtonState"],
111668
- BeButtonEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BeButtonEvent"],
111669
- BeTouchEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BeTouchEvent"],
111670
- BeWheelEvent: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["BeWheelEvent"],
111671
111952
  Tool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["Tool"],
111672
- InteractiveTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["InteractiveTool"],
111673
- InputCollector: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["InputCollector"],
111674
111953
  ToolAdmin: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ToolAdmin"],
111675
111954
  ToolAssistance: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ToolAssistance"],
111955
+ ToolAssistanceImage: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ToolAssistanceImage"],
111956
+ ToolAssistanceInputMethod: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ToolAssistanceInputMethod"],
111676
111957
  ToolSettings: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ToolSettings"],
111677
- ViewTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewTool"],
111678
- ViewManip: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewManip"],
111958
+ TwoWayViewportFrustumSync: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TwoWayViewportFrustumSync"],
111959
+ TwoWayViewportSync: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["TwoWayViewportSync"],
111960
+ TxnAction: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["TxnAction"],
111961
+ TypeOfChange: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["TypeOfChange"],
111962
+ UniformType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["UniformType"],
111963
+ VaryingType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["VaryingType"],
111964
+ ViewClipClearTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewClipClearTool"],
111965
+ ViewClipDecorationProvider: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewClipDecorationProvider"],
111966
+ ViewClipTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewClipTool"],
111679
111967
  ViewCreator2d: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewCreator2d"],
111680
111968
  ViewCreator3d: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewCreator3d"],
111681
- queryTerrainElevationOffset: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["queryTerrainElevationOffset"],
111682
- ViewingSpace: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewingSpace"],
111683
111969
  ViewManager: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewManager"],
111970
+ ViewManip: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewManip"],
111684
111971
  ViewPose: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewPose"],
111685
111972
  ViewRect: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewRect"],
111686
111973
  ViewState: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewState"],
111687
- ViewState3d: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewState3d"],
111688
111974
  ViewState2d: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewState2d"],
111689
- BackgroundMapType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["BackgroundMapType"],
111690
- GlobeMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["GlobeMode"],
111691
- BriefcaseIdValue: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["BriefcaseIdValue"],
111692
- SyncMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["SyncMode"],
111693
- TypeOfChange: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["TypeOfChange"],
111694
- ChangesetType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ChangesetType"],
111695
- BisCodeSpec: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["BisCodeSpec"],
111696
- CommonLoggerCategory: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["CommonLoggerCategory"],
111697
- QueryRowFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["QueryRowFormat"],
111698
- MonochromeMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["MonochromeMode"],
111699
- ECSqlValueType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ECSqlValueType"],
111700
- ChangeOpCode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ChangeOpCode"],
111701
- ChangedValueState: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ChangedValueState"],
111702
- ECSqlSystemProperty: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ECSqlSystemProperty"],
111703
- SectionType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["SectionType"],
111704
- Rank: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["Rank"],
111705
- FeatureOverrideType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["FeatureOverrideType"],
111706
- BatchType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["BatchType"],
111707
- FontType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["FontType"],
111708
- Npc: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["Npc"],
111709
- GeoCoordStatus: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["GeoCoordStatus"],
111710
- ElementGeometryOpcode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ElementGeometryOpcode"],
111711
- GeometryStreamFlags: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["GeometryStreamFlags"],
111712
- FillDisplay: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["FillDisplay"],
111713
- BackgroundFill: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["BackgroundFill"],
111714
- GeometryClass: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["GeometryClass"],
111715
- GeometrySummaryVerbosity: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["GeometrySummaryVerbosity"],
111716
- FillFlags: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["FillFlags"],
111717
- HSVConstants: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["HSVConstants"],
111718
- ImageBufferFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ImageBufferFormat"],
111719
- ImageSourceFormat: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ImageSourceFormat"],
111720
- LinePixels: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["LinePixels"],
111721
- MassPropertiesOperation: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["MassPropertiesOperation"],
111722
- TextureMapUnits: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["TextureMapUnits"],
111723
- PlanarClipMaskMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["PlanarClipMaskMode"],
111724
- PlanarClipMaskPriority: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["PlanarClipMaskPriority"],
111725
- SkyBoxImageType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["SkyBoxImageType"],
111726
- SpatialClassifierInsideDisplay: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["SpatialClassifierInsideDisplay"],
111727
- SpatialClassifierOutsideDisplay: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["SpatialClassifierOutsideDisplay"],
111728
- TerrainHeightOriginMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["TerrainHeightOriginMode"],
111729
- ThematicGradientMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ThematicGradientMode"],
111730
- ThematicGradientColorScheme: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ThematicGradientColorScheme"],
111731
- ThematicDisplayMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ThematicDisplayMode"],
111732
- TxnAction: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["TxnAction"],
111733
- GridOrientationType: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["GridOrientationType"],
111734
- RenderMode: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["RenderMode"],
111735
- ColorByName: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ColorByName"],
111736
- ColorDef: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__["ColorDef"],
111975
+ ViewState3d: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewState3d"],
111976
+ ViewStatus: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewStatus"],
111977
+ ViewTool: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewTool"],
111978
+ ViewingSpace: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["ViewingSpace"],
111979
+ canvasToImageBuffer: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["canvasToImageBuffer"],
111980
+ canvasToResizedCanvasWithBars: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["canvasToResizedCanvasWithBars"],
111981
+ connectViewportFrusta: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["connectViewportFrusta"],
111982
+ connectViewportViews: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["connectViewportViews"],
111983
+ connectViewports: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["connectViewports"],
111984
+ extractImageSourceDimensions: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["extractImageSourceDimensions"],
111985
+ getCompressedJpegFromCanvas: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["getCompressedJpegFromCanvas"],
111986
+ getImageSourceFormatForMimeType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["getImageSourceFormatForMimeType"],
111987
+ getImageSourceMimeType: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["getImageSourceMimeType"],
111988
+ imageBufferToBase64EncodedPng: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["imageBufferToBase64EncodedPng"],
111989
+ imageBufferToCanvas: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["imageBufferToCanvas"],
111990
+ imageBufferToPngDataUrl: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["imageBufferToPngDataUrl"],
111991
+ imageElementFromImageSource: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["imageElementFromImageSource"],
111992
+ imageElementFromUrl: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["imageElementFromUrl"],
111993
+ queryTerrainElevationOffset: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["queryTerrainElevationOffset"],
111994
+ readElementGraphics: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["readElementGraphics"],
111995
+ synchronizeViewportFrusta: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["synchronizeViewportFrusta"],
111996
+ synchronizeViewportViews: _core_frontend__WEBPACK_IMPORTED_MODULE_2__["synchronizeViewportViews"],
111737
111997
  };
111738
111998
  // END GENERATED CODE
111739
111999
  const getExtensionApi = (id) => {
@@ -111769,42 +112029,25 @@ __webpack_require__.r(__webpack_exports__);
111769
112029
  * See LICENSE.md in the project root for license terms and full copyright notice.
111770
112030
  *--------------------------------------------------------------------------------------------*/
111771
112031
  /**
111772
- * Executes an extension's bundled javascript module.
111773
- * First attempts an ES6 dynamic import,
111774
- * second attempts a dynamic import via a script element as a fallback.
112032
+ * Imports and executes a bundled javascript (esm) module.
111775
112033
  * Used by remote and service Extensions.
111776
- * Throws an error if the module does not have a default or main function to execute.
112034
+ * Throws an error if no function is found to execute.
112035
+ * Looks for a function in the following order:
112036
+ * - the module itself.
112037
+ * - the module's main export.
112038
+ * - the module's default export.
111777
112039
  * @internal
111778
112040
  */
111779
112041
  async function loadScript(jsUrl) {
111780
- // Warning "Critical dependency: the request of a dependency is an expression"
111781
- // until that is resolved, leave code commented:
111782
112042
  // const module = await import(/* webpackIgnore: true */jsUrl);
111783
- // return execute(module);
111784
- return new Promise((resolve, reject) => {
111785
- const head = document.getElementsByTagName("head")[0];
111786
- if (!head)
111787
- reject(new Error("No head element found"));
111788
- const scriptElement = document.createElement("script");
111789
- const tempGlobal = `__tempModuleLoadingVariable${Math.random().toString(32).substring(2)}`;
111790
- function cleanup() {
111791
- delete window[tempGlobal];
111792
- scriptElement.remove();
111793
- }
111794
- window[tempGlobal] = async function (module) {
111795
- await execute(module);
111796
- cleanup();
111797
- resolve(module);
111798
- };
111799
- scriptElement.type = "module";
111800
- scriptElement.textContent = `import * as m from "${jsUrl}";window.${tempGlobal}(m);`;
111801
- scriptElement.onerror = () => {
111802
- reject(new Error(`Failed to load extension with URL ${jsUrl}`));
111803
- cleanup();
111804
- };
111805
- head.insertBefore(scriptElement, head.lastChild);
111806
- });
111807
- }
112043
+ // Webpack gives a warning:
112044
+ // "Critical dependency: the request of a dependency is an expression"
112045
+ // Because tsc transpiles "await import" to "require" (when compiled to is CommonJS).
112046
+ // So use FunctionConstructor to avoid tsc.
112047
+ const module = await Function("x", "return import(x)")(jsUrl);
112048
+ return execute(module);
112049
+ }
112050
+ /** attempts to execute an extension module */
111808
112051
  function execute(m) {
111809
112052
  if (typeof m === "function")
111810
112053
  return m();
@@ -111812,7 +112055,7 @@ function execute(m) {
111812
112055
  return m.main();
111813
112056
  if (m.default && typeof m.default === "function")
111814
112057
  return m.default();
111815
- throw new Error(`Failed to load extension. No default function was found to execute.`);
112058
+ throw new Error(`Failed to execute extension. No default function was found to execute.`);
111816
112059
  }
111817
112060
 
111818
112061
 
@@ -112128,9 +112371,9 @@ class ServiceExtensionProvider {
112128
112371
  /** Fetches the extension from the ExtensionService.
112129
112372
  */
112130
112373
  async _getExtensionFiles(props) {
112131
- var _a;
112374
+ var _a, _b, _c;
112132
112375
  const extensionClient = new _ExtensionServiceClient__WEBPACK_IMPORTED_MODULE_3__["ExtensionClient"]();
112133
- const accessToken = await ((_a = _IModelApp__WEBPACK_IMPORTED_MODULE_1__["IModelApp"].authorizationClient) === null || _a === void 0 ? void 0 : _a.getAccessToken());
112376
+ const accessToken = await ((_b = (_a = props.getAccessToken) === null || _a === void 0 ? void 0 : _a.call(props)) !== null && _b !== void 0 ? _b : (_c = _IModelApp__WEBPACK_IMPORTED_MODULE_1__["IModelApp"].authorizationClient) === null || _c === void 0 ? void 0 : _c.getAccessToken());
112134
112377
  if (!accessToken)
112135
112378
  return undefined;
112136
112379
  let extensionProps;
@@ -118912,6 +119155,7 @@ class PrimitiveBuilder extends GeometryListBuilder {
118912
119155
  this.primitives = [];
118913
119156
  }
118914
119157
  finishGraphic(accum) {
119158
+ var _a;
118915
119159
  let meshes;
118916
119160
  let range;
118917
119161
  let featureTable;
@@ -118923,7 +119167,8 @@ class PrimitiveBuilder extends GeometryListBuilder {
118923
119167
  const tolerance = this.computeTolerance(accum);
118924
119168
  meshes = accum.saveToGraphicList(this.primitives, options, tolerance, this.pickable);
118925
119169
  if (undefined !== meshes) {
118926
- featureTable = meshes.features;
119170
+ if ((_a = meshes.features) === null || _a === void 0 ? void 0 : _a.anyDefined)
119171
+ featureTable = meshes.features;
118927
119172
  range = meshes.range;
118928
119173
  }
118929
119174
  }
@@ -136996,14 +137241,14 @@ class Target extends _RenderTarget__WEBPACK_IMPORTED_MODULE_8__["RenderTarget"]
136996
137241
  return new _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Point2d"](curSize.x * bestRatio, curSize.y * bestRatio);
136997
137242
  }
136998
137243
  /** wantRectIn is in CSS pixels. Output ImageBuffer will be in device pixels.
136999
- * If wantRect.right or wantRect.bottom is -1, that means "read the entire image".
137244
+ * If wantRect is null, that means "read the entire image".
137000
137245
  */
137001
137246
  readImage(wantRectIn, targetSizeIn, flipVertically) {
137002
137247
  if (!this.assignDC())
137003
137248
  return undefined;
137004
137249
  // Determine capture rect and validate
137005
137250
  const actualViewRect = this.renderRect; // already has device pixel ratio applied
137006
- const wantRect = (wantRectIn.right === -1 || wantRectIn.bottom === -1) ? actualViewRect : this.cssViewRectToDeviceViewRect(wantRectIn);
137251
+ const wantRect = wantRectIn.isNull ? actualViewRect : this.cssViewRectToDeviceViewRect(wantRectIn);
137007
137252
  const lowerRight = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Point2d"].create(wantRect.right - 1, wantRect.bottom - 1);
137008
137253
  if (!actualViewRect.containsPoint(_itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__["Point2d"].create(wantRect.left, wantRect.top)) || !actualViewRect.containsPoint(lowerRight))
137009
137254
  return undefined;
@@ -145298,8 +145543,11 @@ function baseColorFromTextures(textureCount, applyFeatureColor) {
145298
145543
  for (let i = 0; i < textureCount; i++)
145299
145544
  applyTextureStrings.push(`if (applyTexture(col, s_texture${i}, u_texParams${i}, u_texMatrix${i})) doDiscard = false; `);
145300
145545
  return `
145301
- if (!u_texturesPresent)
145302
- return u_baseColor;
145546
+ if (!u_texturesPresent) {
145547
+ vec4 col = u_baseColor;
145548
+ ${applyFeatureColor}
145549
+ return col;
145550
+ }
145303
145551
 
145304
145552
  bool doDiscard = true;
145305
145553
  vec4 col = u_baseColor;
@@ -154571,7 +154819,8 @@ class RealityTreeReference extends RealityModelTileTree.Reference {
154571
154819
  return div;
154572
154820
  }
154573
154821
  addLogoCards(cards) {
154574
- if (this._rdSourceKey.provider === _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["RealityDataProvider"].CesiumIonAsset) {
154822
+ if (this._rdSourceKey.provider === _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__["RealityDataProvider"].CesiumIonAsset && !cards.dataset.openStreetMapLogoCard) {
154823
+ cards.dataset.openStreetMapLogoCard = "true";
154575
154824
  cards.appendChild(_IModelApp__WEBPACK_IMPORTED_MODULE_4__["IModelApp"].makeLogoCard({ heading: "OpenStreetMap", notice: `&copy;<a href=\"https://www.openstreetmap.org/copyright\">OpenStreetMap</a> ${_IModelApp__WEBPACK_IMPORTED_MODULE_4__["IModelApp"].localization.getLocalizedString("iModelJs:BackgroundMap:OpenStreetMapContributors")}` }));
154576
154825
  }
154577
154826
  }
@@ -160085,8 +160334,12 @@ class CesiumTerrainProvider extends _internal__WEBPACK_IMPORTED_MODULE_8__["Terr
160085
160334
  const mapTile = tile;
160086
160335
  return undefined !== this._metaDataAvailableLevel && mapTile.quadId.level === this._metaDataAvailableLevel && !mapTile.everLoaded;
160087
160336
  }
160088
- getLogo() {
160089
- return _IModelApp__WEBPACK_IMPORTED_MODULE_6__["IModelApp"].makeLogoCard({ iconSrc: `${_IModelApp__WEBPACK_IMPORTED_MODULE_6__["IModelApp"].publicPath}images/cesium-ion.svg`, heading: "Cesium Ion", notice: _IModelApp__WEBPACK_IMPORTED_MODULE_6__["IModelApp"].localization.getLocalizedString("iModelJs:BackgroundMap.CesiumWorldTerrainAttribution") });
160337
+ addLogoCards(cards) {
160338
+ if (cards.dataset.cesiumIonLogoCard)
160339
+ return;
160340
+ cards.dataset.cesiumIonLogoCard = "true";
160341
+ const card = _IModelApp__WEBPACK_IMPORTED_MODULE_6__["IModelApp"].makeLogoCard({ iconSrc: `${_IModelApp__WEBPACK_IMPORTED_MODULE_6__["IModelApp"].publicPath}images/cesium-ion.svg`, heading: "Cesium Ion", notice: _IModelApp__WEBPACK_IMPORTED_MODULE_6__["IModelApp"].localization.getLocalizedString("iModelJs:BackgroundMap.CesiumWorldTerrainAttribution") });
160342
+ cards.appendChild(card);
160090
160343
  }
160091
160344
  get maxDepth() { return this._maxDepth; }
160092
160345
  get tilingScheme() { return this._tilingScheme; }
@@ -160631,8 +160884,11 @@ class ArcGISMapLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_4
160631
160884
  }
160632
160885
  }
160633
160886
  }
160634
- getLogo() {
160635
- return _IModelApp__WEBPACK_IMPORTED_MODULE_2__["IModelApp"].makeLogoCard({ heading: "ArcGIS", notice: this._copyrightText });
160887
+ addLogoCards(cards) {
160888
+ if (!cards.dataset.arcGisLogoCard) {
160889
+ cards.dataset.arcGisLogoCard = "true";
160890
+ cards.appendChild(_IModelApp__WEBPACK_IMPORTED_MODULE_2__["IModelApp"].makeLogoCard({ heading: "ArcGIS", notice: this._copyrightText }));
160891
+ }
160636
160892
  }
160637
160893
  // Translates the provided Cartographic into a EPSG:3857 point, and retrieve information.
160638
160894
  // tolerance is in pixels
@@ -160797,8 +161053,11 @@ class AzureMapsLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_1
160797
161053
  return "";
160798
161054
  return `${this._settings.url}&${this._settings.accessKey.key}=${this._settings.accessKey.value}&api-version=2.0&zoom=${zoom}&x=${x}&y=${y}`;
160799
161055
  }
160800
- getLogo() {
160801
- return _IModelApp__WEBPACK_IMPORTED_MODULE_0__["IModelApp"].makeLogoCard({ heading: "Azure Maps", notice: _IModelApp__WEBPACK_IMPORTED_MODULE_0__["IModelApp"].localization.getLocalizedString("iModelJs:BackgroundMap.AzureMapsCopyright") });
161056
+ addLogoCards(cards) {
161057
+ if (!cards.dataset.azureMapsLogoCard) {
161058
+ cards.dataset.azureMapsLogoCard = "true";
161059
+ cards.appendChild(_IModelApp__WEBPACK_IMPORTED_MODULE_0__["IModelApp"].makeLogoCard({ heading: "Azure Maps", notice: _IModelApp__WEBPACK_IMPORTED_MODULE_0__["IModelApp"].localization.getLocalizedString("iModelJs:BackgroundMap.AzureMapsCopyright") }));
161060
+ }
160802
161061
  }
160803
161062
  }
160804
161063
 
@@ -160940,7 +161199,7 @@ class BingMapsImageryLayerProvider extends _internal__WEBPACK_IMPORTED_MODULE_3_
160940
161199
  }
160941
161200
  return matchingAttributions;
160942
161201
  }
160943
- getLogo(vp) {
161202
+ addLogoCards(cards, vp) {
160944
161203
  var _a;
160945
161204
  const tiles = (_a = _IModelApp__WEBPACK_IMPORTED_MODULE_2__["IModelApp"].tileAdmin.getTilesForUser(vp)) === null || _a === void 0 ? void 0 : _a.selected;
160946
161205
  const matchingAttributions = this.getMatchingAttributions(tiles);
@@ -160953,7 +161212,7 @@ class BingMapsImageryLayerProvider extends _internal__WEBPACK_IMPORTED_MODULE_3_
160953
161212
  copyrightMsg += "<br>";
160954
161213
  copyrightMsg += copyrights[i];
160955
161214
  }
160956
- return _IModelApp__WEBPACK_IMPORTED_MODULE_2__["IModelApp"].makeLogoCard({ iconSrc: `${_IModelApp__WEBPACK_IMPORTED_MODULE_2__["IModelApp"].publicPath}images/bing.svg`, heading: "Microsoft Bing", notice: copyrightMsg });
161215
+ cards.appendChild(_IModelApp__WEBPACK_IMPORTED_MODULE_2__["IModelApp"].makeLogoCard({ iconSrc: `${_IModelApp__WEBPACK_IMPORTED_MODULE_2__["IModelApp"].publicPath}images/bing.svg`, heading: "Microsoft Bing", notice: copyrightMsg }));
160957
161216
  }
160958
161217
  // initializes the BingImageryProvider by reading the templateUrl, logo image, and attribution list.
160959
161218
  async initialize() {
@@ -161052,8 +161311,11 @@ class MapBoxLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_1__[
161052
161311
  url = url.concat(`?${this._settings.accessKey.key}=${this._settings.accessKey.value}`);
161053
161312
  return url;
161054
161313
  }
161055
- getLogo() {
161056
- return _IModelApp__WEBPACK_IMPORTED_MODULE_0__["IModelApp"].makeLogoCard({ heading: "Mapbox", notice: _IModelApp__WEBPACK_IMPORTED_MODULE_0__["IModelApp"].localization.getLocalizedString("iModelJs:BackgroundMap.MapBoxCopyright") });
161314
+ addLogoCards(cards) {
161315
+ if (!cards.dataset.mapboxLogoCard) {
161316
+ cards.dataset.mapboxLogoCard = "true";
161317
+ cards.appendChild(_IModelApp__WEBPACK_IMPORTED_MODULE_0__["IModelApp"].makeLogoCard({ heading: "Mapbox", notice: _IModelApp__WEBPACK_IMPORTED_MODULE_0__["IModelApp"].localization.getLocalizedString("iModelJs:BackgroundMap.MapBoxCopyright") }));
161318
+ }
161057
161319
  }
161058
161320
  // no initialization needed for MapBoxImageryProvider.
161059
161321
  async initialize() { }
@@ -161598,7 +161860,9 @@ class ImageryMapTileTree extends _internal__WEBPACK_IMPORTED_MODULE_4__["Reality
161598
161860
  this._rootTile = new ImageryMapTile(params.rootTile, this, rootQuadId, this.getTileRectangle(rootQuadId));
161599
161861
  }
161600
161862
  get tilingScheme() { return this._imageryLoader.imageryProvider.tilingScheme; }
161601
- getLogo(vp) { return this._imageryLoader.getLogo(vp); }
161863
+ addLogoCards(cards, vp) {
161864
+ this._imageryLoader.addLogoCards(cards, vp);
161865
+ }
161602
161866
  getTileRectangle(quadId) {
161603
161867
  return this.tilingScheme.tileXYToRectangle(quadId.column, quadId.row, quadId.level);
161604
161868
  }
@@ -161631,7 +161895,9 @@ class ImageryTileLoader extends _internal__WEBPACK_IMPORTED_MODULE_4__["RealityT
161631
161895
  get maxDepth() { return this._imageryProvider.maximumZoomLevel; }
161632
161896
  get minDepth() { return this._imageryProvider.minimumZoomLevel; }
161633
161897
  get priority() { return _internal__WEBPACK_IMPORTED_MODULE_4__["TileLoadPriority"].Map; }
161634
- getLogo(vp) { return this._imageryProvider.getLogo(vp); }
161898
+ addLogoCards(cards, vp) {
161899
+ this._imageryProvider.addLogoCards(cards, vp);
161900
+ }
161635
161901
  get maximumScreenSize() { return this._imageryProvider.maximumScreenSize; }
161636
161902
  get imageryProvider() { return this._imageryProvider; }
161637
161903
  async getToolTip(strings, quadId, carto, tree) { await this._imageryProvider.getToolTip(strings, quadId, carto, tree); }
@@ -162200,7 +162466,7 @@ class MapLayerImageryProvider {
162200
162466
  });
162201
162467
  }
162202
162468
  get tilingScheme() { return this.useGeographicTilingScheme ? this._geographicTilingScheme : this._mercatorTilingScheme; }
162203
- getLogo(_viewport) { return undefined; }
162469
+ addLogoCards(_cards, _viewport) { }
162204
162470
  get transparentBackgroundString() { return this._settings.transparentBackground ? "true" : "false"; }
162205
162471
  async _areChildrenAvailable(_tile) { return true; }
162206
162472
  getPotentialChildIds(tile) {
@@ -164372,15 +164638,13 @@ class MapTileTreeReference extends _internal__WEBPACK_IMPORTED_MODULE_6__["TileT
164372
164638
  /** Add logo cards to logo div. */
164373
164639
  addLogoCards(cards, vp) {
164374
164640
  const tree = this.treeOwner.tileTree;
164375
- let logo;
164376
164641
  if (tree) {
164377
- if (undefined !== (logo = tree.mapLoader.terrainProvider.getLogo()))
164378
- cards.appendChild(logo);
164642
+ tree.mapLoader.terrainProvider.addLogoCards(cards, vp);
164379
164643
  for (const imageryTreeRef of this._layerTrees) {
164380
164644
  if (imageryTreeRef.layerSettings.visible) {
164381
164645
  const imageryTree = imageryTreeRef.treeOwner.tileTree;
164382
- if (imageryTree && (undefined !== (logo = imageryTree.getLogo(vp))))
164383
- cards.appendChild(logo);
164646
+ if (imageryTree instanceof _internal__WEBPACK_IMPORTED_MODULE_6__["ImageryMapTileTree"])
164647
+ imageryTree.addLogoCards(cards, vp);
164384
164648
  }
164385
164649
  }
164386
164650
  }
@@ -164868,7 +165132,7 @@ class TerrainMeshProvider {
164868
165132
  this._modelId = _modelId;
164869
165133
  }
164870
165134
  constructUrl(_row, _column, _zoomLevel) { Object(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["assert"])(false); return ""; }
164871
- getLogo() { return undefined; }
165135
+ addLogoCards(_cards, _vp) { }
164872
165136
  get requestOptions() { return { method: "GET", responseType: "arraybuffer" }; }
164873
165137
  async getMesh(_tile, _data) { return undefined; }
164874
165138
  forceTileLoad(_tile) { return false; }
@@ -178950,7 +179214,7 @@ SetupWalkCameraTool.iconSpec = "icon-camera-location";
178950
179214
  /*! exports provided: name, version, description, main, module, typings, license, scripts, repository, keywords, author, peerDependencies, //devDependencies, devDependencies, //dependencies, dependencies, nyc, eslintConfig, default */
178951
179215
  /***/ (function(module) {
178952
179216
 
178953
- module.exports = JSON.parse("{\"name\":\"@itwin/core-frontend\",\"version\":\"3.3.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\",\"build:ci\":\"npm run -s build && npm run -s build:esm\",\"build:cjs\":\"tsc 1>&2 --outDir lib/cjs\",\"build:esm\":\"tsc 1>&2 --module ES2020 --outDir lib/esm\",\"clean\":\"rimraf lib .rush/temp/package-deps*.json\",\"copy:public\":\"cpx \\\"./src/public/**/*\\\" ./lib/public\",\"docs\":\"betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/primitives,**/map/*.d.ts,**/tile/*.d.ts,**/*-css.ts\",\"extract-api\":\"betools extract-api --entry=core-frontend && npm run extract-extension-api\",\"extract-extension-api\":\"eslint --no-eslintrc -c \\\"../../tools/eslint-plugin/dist/configs/extension-exports-config.js\\\" \\\"./src/**/*.ts\\\" 1>&2\",\"lint\":\"eslint -f visualstudio \\\"./src/**/*.ts\\\" 1>&2\",\"pseudolocalize\":\"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO\",\"test\":\"npm run -s webpackTests && certa -r chrome\",\"cover\":\"npm -s test\",\"test:debug\":\"certa -r chrome --debug\",\"webpackTests\":\"webpack --config ./src/test/utils/webpack.config.js 1>&2\"},\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/iTwin/itwinjs-core/tree/master/core/frontend\"},\"keywords\":[\"Bentley\",\"BIM\",\"iModel\",\"digital-twin\",\"iTwin\"],\"author\":{\"name\":\"Bentley Systems, Inc.\",\"url\":\"http://www.bentley.com\"},\"peerDependencies\":{\"@itwin/appui-abstract\":\"workspace:^3.3.0-dev.2\",\"@itwin/core-bentley\":\"workspace:^3.3.0-dev.2\",\"@itwin/core-common\":\"workspace:^3.3.0-dev.2\",\"@itwin/core-geometry\":\"workspace:^3.3.0-dev.2\",\"@itwin/core-orbitgt\":\"workspace:^3.3.0-dev.2\",\"@itwin/core-quantity\":\"workspace:^3.3.0-dev.2\",\"@itwin/webgl-compatibility\":\"workspace:^3.3.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\":\"workspace:*\",\"@itwin/webgl-compatibility\":\"workspace:*\",\"@types/chai\":\"^4.1.4\",\"@types/chai-as-promised\":\"^7\",\"@types/deep-assign\":\"^0.1.0\",\"@types/lodash\":\"^4.14.0\",\"@types/mocha\":\"^8.2.2\",\"@types/node\":\"16.11.7\",\"@types/qs\":\"^6.5.0\",\"@types/semver\":\"^5.5.0\",\"@types/superagent\":\"^4.1.14\",\"@types/sinon\":\"^9.0.0\",\"chai\":\"^4.1.2\",\"chai-as-promised\":\"^7\",\"cpx2\":\"^3.0.0\",\"eslint\":\"^7.11.0\",\"glob\":\"^7.1.2\",\"mocha\":\"^8.3.2\",\"nyc\":\"^15.1.0\",\"rimraf\":\"^3.0.2\",\"sinon\":\"^9.0.2\",\"source-map-loader\":\"^1.0.0\",\"typescript\":\"~4.4.0\",\"webpack\":\"4.42.0\"},\"//dependencies\":[\"NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API\",\"NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed\"],\"dependencies\":{\"@itwin/core-i18n\":\"workspace:*\",\"@itwin/core-telemetry\":\"workspace:*\",\"@loaders.gl/core\":\"^3.1.6\",\"@loaders.gl/draco\":\"^3.1.6\",\"deep-assign\":\"^2.0.0\",\"fuse.js\":\"^3.3.0\",\"lodash\":\"^4.17.10\",\"qs\":\"^6.5.1\",\"semver\":\"^5.5.0\",\"superagent\":\"^7.0.1\",\"wms-capabilities\":\"0.4.0\",\"xml-js\":\"~1.6.11\"},\"nyc\":{\"extends\":\"./node_modules/@itwin/build-tools/.nycrc\"},\"eslintConfig\":{\"plugins\":[\"@itwin\"],\"extends\":\"plugin:@itwin/itwinjs-recommended\",\"rules\":{\"@itwin/no-internal-barrel-imports\":[\"error\",{\"required-barrel-modules\":[\"./src/tile/internal.ts\"]}],\"@itwin/public-extension-exports\":[\"error\",{\"releaseTags\":[\"public\",\"preview\"],\"outputApiFile\":false}]},\"overrides\":[{\"files\":[\"*.test.ts\",\"*.test.tsx\",\"**/test/**/*.ts\"],\"rules\":{\"@itwin/no-internal-barrel-imports\":\"off\"}}]}}");
179217
+ module.exports = JSON.parse("{\"name\":\"@itwin/core-frontend\",\"version\":\"3.3.0-dev.22\",\"description\":\"iTwin.js frontend components\",\"main\":\"lib/cjs/core-frontend.js\",\"module\":\"lib/esm/core-frontend.js\",\"typings\":\"lib/cjs/core-frontend\",\"license\":\"MIT\",\"scripts\":{\"build\":\"npm run -s copy:public && npm run -s build:cjs\",\"build:ci\":\"npm run -s build && npm run -s build:esm\",\"build:cjs\":\"tsc 1>&2 --outDir lib/cjs\",\"build:esm\":\"tsc 1>&2 --module ES2020 --outDir lib/esm\",\"clean\":\"rimraf lib .rush/temp/package-deps*.json\",\"copy:public\":\"cpx \\\"./src/public/**/*\\\" ./lib/public\",\"docs\":\"betools docs --includes=../../generated-docs/extract --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/primitives,**/map/*.d.ts,**/tile/*.d.ts,**/*-css.ts\",\"extract-api\":\"betools extract-api --entry=core-frontend && npm run extract-extension-api\",\"extract-extension-api\":\"eslint --no-eslintrc -c \\\"../../tools/eslint-plugin/dist/configs/extension-exports-config.js\\\" \\\"./src/**/*.ts\\\" 1>&2\",\"lint\":\"eslint -f visualstudio \\\"./src/**/*.ts\\\" 1>&2\",\"pseudolocalize\":\"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO\",\"test\":\"npm run -s webpackTests && certa -r chrome\",\"cover\":\"npm -s test\",\"test:debug\":\"certa -r chrome --debug\",\"webpackTests\":\"webpack --config ./src/test/utils/webpack.config.js 1>&2\"},\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/iTwin/itwinjs-core/tree/master/core/frontend\"},\"keywords\":[\"Bentley\",\"BIM\",\"iModel\",\"digital-twin\",\"iTwin\"],\"author\":{\"name\":\"Bentley Systems, Inc.\",\"url\":\"http://www.bentley.com\"},\"peerDependencies\":{\"@itwin/appui-abstract\":\"workspace:^3.3.0-dev.22\",\"@itwin/core-bentley\":\"workspace:^3.3.0-dev.22\",\"@itwin/core-common\":\"workspace:^3.3.0-dev.22\",\"@itwin/core-geometry\":\"workspace:^3.3.0-dev.22\",\"@itwin/core-orbitgt\":\"workspace:^3.3.0-dev.22\",\"@itwin/core-quantity\":\"workspace:^3.3.0-dev.22\",\"@itwin/webgl-compatibility\":\"workspace:^3.3.0-dev.22\"},\"//devDependencies\":[\"NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install\",\"NOTE: All tools used by scripts in this package must be listed as devDependencies\"],\"devDependencies\":{\"@itwin/appui-abstract\":\"workspace:*\",\"@itwin/build-tools\":\"workspace:*\",\"@itwin/core-bentley\":\"workspace:*\",\"@itwin/core-common\":\"workspace:*\",\"@itwin/core-geometry\":\"workspace:*\",\"@itwin/core-orbitgt\":\"workspace:*\",\"@itwin/core-quantity\":\"workspace:*\",\"@itwin/certa\":\"workspace:*\",\"@itwin/eslint-plugin\":\"workspace:*\",\"@itwin/webgl-compatibility\":\"workspace:*\",\"@types/chai\":\"^4.1.4\",\"@types/chai-as-promised\":\"^7\",\"@types/deep-assign\":\"^0.1.0\",\"@types/lodash\":\"^4.14.0\",\"@types/mocha\":\"^8.2.2\",\"@types/node\":\"16.11.7\",\"@types/qs\":\"^6.5.0\",\"@types/semver\":\"^5.5.0\",\"@types/superagent\":\"^4.1.14\",\"@types/sinon\":\"^9.0.0\",\"chai\":\"^4.1.2\",\"chai-as-promised\":\"^7\",\"cpx2\":\"^3.0.0\",\"eslint\":\"^7.11.0\",\"glob\":\"^7.1.2\",\"mocha\":\"^10.0.0\",\"nyc\":\"^15.1.0\",\"rimraf\":\"^3.0.2\",\"sinon\":\"^9.0.2\",\"source-map-loader\":\"^1.0.0\",\"typescript\":\"~4.4.0\",\"webpack\":\"4.42.0\"},\"//dependencies\":[\"NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API\",\"NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed\"],\"dependencies\":{\"@itwin/core-i18n\":\"workspace:*\",\"@itwin/core-telemetry\":\"workspace:*\",\"@loaders.gl/core\":\"^3.1.6\",\"@loaders.gl/draco\":\"^3.1.6\",\"deep-assign\":\"^2.0.0\",\"fuse.js\":\"^3.3.0\",\"lodash\":\"^4.17.10\",\"qs\":\"^6.5.1\",\"semver\":\"^5.5.0\",\"superagent\":\"^7.0.1\",\"wms-capabilities\":\"0.4.0\",\"xml-js\":\"~1.6.11\"},\"nyc\":{\"extends\":\"./node_modules/@itwin/build-tools/.nycrc\"},\"eslintConfig\":{\"plugins\":[\"@itwin\"],\"extends\":\"plugin:@itwin/itwinjs-recommended\",\"rules\":{\"@itwin/no-internal-barrel-imports\":[\"error\",{\"required-barrel-modules\":[\"./src/tile/internal.ts\"]}],\"@itwin/public-extension-exports\":[\"error\",{\"releaseTags\":[\"public\",\"preview\"],\"outputApiFile\":false}]},\"overrides\":[{\"files\":[\"*.test.ts\",\"*.test.tsx\",\"**/test/**/*.ts\"],\"rules\":{\"@itwin/no-internal-barrel-imports\":\"off\"}}]}}");
178954
179218
 
178955
179219
  /***/ }),
178956
179220
 
@@ -277142,6 +277406,7 @@ const buggyIntelMatchers = [
277142
277406
  // Regexes to match Mali GPUs known to suffer from GraphicsDriverBugs.msaaWillHang.
277143
277407
  const buggyMaliMatchers = [
277144
277408
  /Mali-G71/,
277409
+ /Mali-G72/,
277145
277410
  /Mali-G76/,
277146
277411
  ];
277147
277412
  // Regexes to match as many Intel integrated GPUs as possible.
@@ -277331,7 +277596,8 @@ class Capabilities {
277331
277596
  && !_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__["ProcessDetector"].isIOSBrowser
277332
277597
  // Samsung Galaxy Note 8 exhibits same issue as described above for iOS >= 15.
277333
277598
  // It uses specifically Mali-G71 MP20 but reports its renderer as follows.
277334
- && unmaskedRenderer !== "Mali-G71";
277599
+ // Samsung Galaxy A50 and S9 exhibits same issue; they use Mali-G72.
277600
+ && unmaskedRenderer !== "Mali-G71" && unmaskedRenderer !== "Mali-G72";
277335
277601
  if (allowFloatRender && undefined !== this.queryExtensionObject("EXT_float_blend") && this.isTextureRenderable(gl, gl.FLOAT)) {
277336
277602
  this._maxRenderType = RenderType.TextureFloat;
277337
277603
  }