@itwin/rpcinterface-full-stack-tests 4.11.0-dev.2 → 4.11.0-dev.4

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.
@@ -10535,9 +10535,9 @@ class UserOperations extends _base_internal__WEBPACK_IMPORTED_MODULE_0__.Operati
10535
10535
 
10536
10536
  /***/ }),
10537
10537
 
10538
- /***/ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.2.0/node_modules/@itwin/itwins-client/lib/esm/BaseClient.js":
10538
+ /***/ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.6.1/node_modules/@itwin/itwins-client/lib/esm/BaseClient.js":
10539
10539
  /*!*******************************************************************************************************************************!*\
10540
- !*** ../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.2.0/node_modules/@itwin/itwins-client/lib/esm/BaseClient.js ***!
10540
+ !*** ../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.6.1/node_modules/@itwin/itwins-client/lib/esm/BaseClient.js ***!
10541
10541
  \*******************************************************************************************************************************/
10542
10542
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
10543
10543
 
@@ -10546,8 +10546,7 @@ __webpack_require__.r(__webpack_exports__);
10546
10546
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
10547
10547
  /* harmony export */ "BaseClient": () => (/* binding */ BaseClient)
10548
10548
  /* harmony export */ });
10549
- /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! axios */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/index.js");
10550
- /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_0__);
10549
+ /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! axios */ "../../common/temp/node_modules/.pnpm/axios@1.7.4/node_modules/axios/lib/axios.js");
10551
10550
 
10552
10551
  class BaseClient {
10553
10552
  constructor(url) {
@@ -10565,21 +10564,26 @@ class BaseClient {
10565
10564
  }
10566
10565
  }
10567
10566
  /**
10568
- * Sends a basic API request
10569
- * @param accessToken The client access token string
10570
- * @param method The method type of the request (ex. GET, POST, DELETE, etc.)
10571
- * @param url The url of the request
10572
- * @param data (Optional) The payload of the request
10573
- * @param property (Optional) The target property (ex. iTwins, repositories, etc.)
10574
- * @param headers (Optional) Extra request headers.
10575
- */
10567
+ * Sends a basic API request
10568
+ * @param accessToken The client access token string
10569
+ * @param method The method type of the request (ex. GET, POST, DELETE, etc.)
10570
+ * @param url The url of the request
10571
+ * @param data (Optional) The payload of the request
10572
+ * @param property (Optional) The target property (ex. iTwins, repositories, etc.)
10573
+ * @param headers (Optional) Extra request headers.
10574
+ */
10576
10575
  async sendGenericAPIRequest(accessToken, method, url, data, property, headers) {
10576
+ // TODO: Change any response
10577
10577
  const requestOptions = this.getRequestOptions(accessToken, method, url, data, headers);
10578
10578
  try {
10579
- const response = await axios__WEBPACK_IMPORTED_MODULE_0___default()(requestOptions);
10579
+ const response = await (0,axios__WEBPACK_IMPORTED_MODULE_0__["default"])(requestOptions);
10580
10580
  return {
10581
10581
  status: response.status,
10582
- data: response.data.error || response.data === "" ? undefined : property ? response.data[property] : response.data,
10582
+ data: response.data.error || response.data === ""
10583
+ ? undefined
10584
+ : property
10585
+ ? response.data[property]
10586
+ : response.data,
10583
10587
  error: response.data.error,
10584
10588
  };
10585
10589
  }
@@ -10594,13 +10598,13 @@ class BaseClient {
10594
10598
  }
10595
10599
  }
10596
10600
  /**
10597
- * Build the request methods, headers, and other options
10598
- * @param accessTokenString The client access token string
10599
- * @param method The method type of the request (ex. GET, POST, DELETE, etc.)
10600
- * @param url The url of the request
10601
- * @param data (Optional) The payload of the request
10602
- * @param headers (Optional) Extra request headers.
10603
- */
10601
+ * Build the request methods, headers, and other options
10602
+ * @param accessTokenString The client access token string
10603
+ * @param method The method type of the request (ex. GET, POST, DELETE, etc.)
10604
+ * @param url The url of the request
10605
+ * @param data (Optional) The payload of the request
10606
+ * @param headers (Optional) Extra request headers.
10607
+ */
10604
10608
  getRequestOptions(accessTokenString, method, url, data, headers = {}) {
10605
10609
  return {
10606
10610
  method,
@@ -10621,10 +10625,19 @@ class BaseClient {
10621
10625
  * @param queryArg Object container queryable properties
10622
10626
  * @returns query string with AccessControlQueryArg applied, which should be appended to a url
10623
10627
  */
10624
- getQueryString(queryArg) {
10628
+ getQueryStringArgBase(queryArg, subClass) {
10625
10629
  let queryString = "";
10626
- if (queryArg.search) {
10627
- queryString += `&$search=${queryArg.search}`;
10630
+ if (queryArg && queryArg.subClass) {
10631
+ queryString += `subClass=${queryArg.subClass}`;
10632
+ }
10633
+ else if (subClass) {
10634
+ queryString += `subClass=${subClass}`;
10635
+ }
10636
+ if (!queryArg) {
10637
+ return queryString;
10638
+ }
10639
+ if (queryArg.includeInactive) {
10640
+ queryString += `&includeInactive=${queryArg.includeInactive}`;
10628
10641
  }
10629
10642
  if (queryArg.top) {
10630
10643
  queryString += `&$top=${queryArg.top}`;
@@ -10632,14 +10645,40 @@ class BaseClient {
10632
10645
  if (queryArg.skip) {
10633
10646
  queryString += `&$skip=${queryArg.skip}`;
10634
10647
  }
10648
+ if (queryArg.status) {
10649
+ queryString += `&status=${queryArg.status}`;
10650
+ }
10651
+ if (queryArg.type) {
10652
+ queryString += `&type=${queryArg.type}`;
10653
+ }
10654
+ // trim & from start of string
10655
+ queryString.replace(/^&+/, "");
10656
+ return queryString;
10657
+ }
10658
+ /**
10659
+ * Build a query to be appended to a URL
10660
+ * @param queryArg Object container queryable properties
10661
+ * @returns query string with AccessControlQueryArg applied, which should be appended to a url
10662
+ */
10663
+ getQueryStringArg(queryArg, subClass) {
10664
+ let queryString = this.getQueryStringArgBase(queryArg, subClass);
10665
+ if (!queryArg) {
10666
+ return queryString;
10667
+ }
10668
+ if (queryArg.search) {
10669
+ queryString += `&$search=${queryArg.search}`;
10670
+ }
10635
10671
  if (queryArg.displayName) {
10636
10672
  queryString += `&displayName=${queryArg.displayName}`;
10637
10673
  }
10638
10674
  if (queryArg.number) {
10639
10675
  queryString += `&number=${queryArg.number}`;
10640
10676
  }
10641
- if (queryArg.type) {
10642
- queryString += `&type=${queryArg.type}`;
10677
+ if (queryArg.parentId) {
10678
+ queryString += `&parentId=${queryArg.parentId}`;
10679
+ }
10680
+ if (queryArg.iTwinAccountId) {
10681
+ queryString += `&iTwinAccountId=${queryArg.iTwinAccountId}`;
10643
10682
  }
10644
10683
  // trim & from start of string
10645
10684
  queryString.replace(/^&+/, "");
@@ -10651,9 +10690,11 @@ class BaseClient {
10651
10690
  * @returns query string with RepositoriesQueryArg applied, which should be appended to a url
10652
10691
  */
10653
10692
  getRepositoryQueryString(queryArg) {
10693
+ if (!queryArg)
10694
+ return "";
10654
10695
  let queryString = "";
10655
10696
  if (queryArg.class) {
10656
- queryString += `?class=${queryArg.class}`;
10697
+ queryString += `class=${queryArg.class}`;
10657
10698
  }
10658
10699
  if (queryArg.subClass) {
10659
10700
  queryString += `&subClass=${queryArg.subClass}`;
@@ -10667,9 +10708,9 @@ class BaseClient {
10667
10708
 
10668
10709
  /***/ }),
10669
10710
 
10670
- /***/ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.2.0/node_modules/@itwin/itwins-client/lib/esm/iTwinsAccessProps.js":
10711
+ /***/ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.6.1/node_modules/@itwin/itwins-client/lib/esm/iTwinsAccessProps.js":
10671
10712
  /*!**************************************************************************************************************************************!*\
10672
- !*** ../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.2.0/node_modules/@itwin/itwins-client/lib/esm/iTwinsAccessProps.js ***!
10713
+ !*** ../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.6.1/node_modules/@itwin/itwins-client/lib/esm/iTwinsAccessProps.js ***!
10673
10714
  \**************************************************************************************************************************************/
10674
10715
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
10675
10716
 
@@ -10693,6 +10734,9 @@ var ITwinSubClass;
10693
10734
  ITwinSubClass["Account"] = "Account";
10694
10735
  ITwinSubClass["Asset"] = "Asset";
10695
10736
  ITwinSubClass["Project"] = "Project";
10737
+ ITwinSubClass["Portfolio"] = "Portfolio";
10738
+ ITwinSubClass["Program"] = "Program";
10739
+ ITwinSubClass["WorkPackage"] = "WorkPackage";
10696
10740
  })(ITwinSubClass || (ITwinSubClass = {}));
10697
10741
  var ITwinClass;
10698
10742
  (function (ITwinClass) {
@@ -10719,9 +10763,9 @@ var RepositorySubClass;
10719
10763
 
10720
10764
  /***/ }),
10721
10765
 
10722
- /***/ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.2.0/node_modules/@itwin/itwins-client/lib/esm/iTwinsClient.js":
10766
+ /***/ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.6.1/node_modules/@itwin/itwins-client/lib/esm/iTwinsClient.js":
10723
10767
  /*!*********************************************************************************************************************************!*\
10724
- !*** ../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.2.0/node_modules/@itwin/itwins-client/lib/esm/iTwinsClient.js ***!
10768
+ !*** ../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.6.1/node_modules/@itwin/itwins-client/lib/esm/iTwinsClient.js ***!
10725
10769
  \*********************************************************************************************************************************/
10726
10770
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
10727
10771
 
@@ -10730,7 +10774,7 @@ __webpack_require__.r(__webpack_exports__);
10730
10774
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
10731
10775
  /* harmony export */ "ITwinsAccessClient": () => (/* binding */ ITwinsAccessClient)
10732
10776
  /* harmony export */ });
10733
- /* harmony import */ var _BaseClient__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./BaseClient */ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.2.0/node_modules/@itwin/itwins-client/lib/esm/BaseClient.js");
10777
+ /* harmony import */ var _BaseClient__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./BaseClient */ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.6.1/node_modules/@itwin/itwins-client/lib/esm/BaseClient.js");
10734
10778
 
10735
10779
  /** Client API to access the itwins service.
10736
10780
  * @beta
@@ -10741,15 +10785,21 @@ class ITwinsAccessClient extends _BaseClient__WEBPACK_IMPORTED_MODULE_0__.BaseCl
10741
10785
  }
10742
10786
  /** Get itwins accessible to the user
10743
10787
  * @param accessToken The client access token string
10744
- * @param subClass Required parameter to search a specific iTwin subClass
10788
+ * @param subClass Optional parameter to search a specific iTwin subClass
10745
10789
  * @param arg Optional query arguments, for paging, searching, and filtering
10746
10790
  * @returns Array of projects, may be empty
10747
10791
  */
10748
- async queryAsync(accessToken, subClass, arg) {
10749
- const headers = this.getResultModeHeaders(arg && arg.resultMode);
10750
- let url = `${this._baseUrl}?subClass=${subClass}`;
10751
- if (arg)
10752
- url += this.getQueryString(arg);
10792
+ async queryAsync(accessToken,
10793
+ /**
10794
+ * @deprecated in 2.0 This property is deprecated, and will be removed in the next major release. Please use `arg` to provide subClass instead.
10795
+ */
10796
+ subClass, arg) {
10797
+ const headers = this.getHeaders(arg);
10798
+ let url = this._baseUrl;
10799
+ // eslint-disable-next-line deprecation/deprecation
10800
+ const query = this.getQueryStringArg(arg, subClass);
10801
+ if (query !== "")
10802
+ url += `?${query}`;
10753
10803
  return this.sendGenericAPIRequest(accessToken, "GET", url, undefined, "iTwins", headers);
10754
10804
  }
10755
10805
  /** Create a new iTwin
@@ -10808,8 +10858,10 @@ class ITwinsAccessClient extends _BaseClient__WEBPACK_IMPORTED_MODULE_0__.BaseCl
10808
10858
  */
10809
10859
  async queryRepositoriesAsync(accessToken, iTwinId, arg) {
10810
10860
  let url = `${this._baseUrl}/${iTwinId}/repositories`;
10811
- if (arg)
10812
- url += this.getRepositoryQueryString(arg);
10861
+ const query = this.getRepositoryQueryString(arg);
10862
+ if (query !== "") {
10863
+ url += `?${query}`;
10864
+ }
10813
10865
  return this.sendGenericAPIRequest(accessToken, "GET", url, undefined, "repositories");
10814
10866
  }
10815
10867
  /** Get itwin accessible to the user
@@ -10825,28 +10877,40 @@ class ITwinsAccessClient extends _BaseClient__WEBPACK_IMPORTED_MODULE_0__.BaseCl
10825
10877
  }
10826
10878
  /** Get itwins accessible to the user
10827
10879
  * @param accessToken The client access token string
10828
- * @param subClass Required parameter to search a specific iTwin subClass
10880
+ * @param subClass Optional parameter to search a specific iTwin subClass
10829
10881
  * @param arg Optional query arguments, for paging, searching, and filtering
10830
10882
  * @returns Array of projects, may be empty
10831
10883
  */
10832
- async queryFavoritesAsync(accessToken, subClass, arg) {
10833
- const headers = this.getResultModeHeaders(arg && arg.resultMode);
10834
- let url = `${this._baseUrl}/favorites?subClass=${subClass}`;
10835
- if (arg)
10836
- url += this.getQueryString(arg);
10884
+ async queryFavoritesAsync(accessToken,
10885
+ /**
10886
+ * @deprecated in 2.0 This property is deprecated, and will be removed in the next major release. Please use `arg` to provide subClass instead.
10887
+ */
10888
+ subClass, arg) {
10889
+ const headers = this.getHeaders(arg);
10890
+ let url = `${this._baseUrl}/favorites`;
10891
+ // eslint-disable-next-line deprecation/deprecation
10892
+ const query = this.getQueryStringArgBase(arg, subClass);
10893
+ if (query !== "")
10894
+ url += `?${query}`;
10837
10895
  return this.sendGenericAPIRequest(accessToken, "GET", url, undefined, "iTwins", headers);
10838
10896
  }
10839
10897
  /** Get itwins accessible to the user
10840
10898
  * @param accessToken The client access token string
10841
- * @param subClass Required parameter to search a specific iTwin subClass
10899
+ * @param subClass Optional parameter to search a specific iTwin subClass
10842
10900
  * @param arg Optional query arguments, for paging, searching, and filtering
10843
10901
  * @returns Array of projects, may be empty
10844
10902
  */
10845
- async queryRecentsAsync(accessToken, subClass, arg) {
10846
- const headers = this.getResultModeHeaders(arg && arg.resultMode);
10847
- let url = `${this._baseUrl}/recents?subClass=${subClass}`;
10848
- if (arg)
10849
- url += this.getQueryString(arg);
10903
+ async queryRecentsAsync(accessToken,
10904
+ /**
10905
+ * @deprecated in 2.0 This property is deprecated, and will be removed in the next major release. Please use `arg` to provide subClass instead.
10906
+ */
10907
+ subClass, arg) {
10908
+ const headers = this.getHeaders(arg);
10909
+ let url = `${this._baseUrl}/recents`;
10910
+ // eslint-disable-next-line deprecation/deprecation
10911
+ const query = this.getQueryStringArgBase(arg, subClass);
10912
+ if (query !== "")
10913
+ url += `?${query}`;
10850
10914
  return this.sendGenericAPIRequest(accessToken, "GET", url, undefined, "iTwins", headers);
10851
10915
  }
10852
10916
  /** Get primary account accessible to the user
@@ -10856,6 +10920,28 @@ class ITwinsAccessClient extends _BaseClient__WEBPACK_IMPORTED_MODULE_0__.BaseCl
10856
10920
  const url = `${this._baseUrl}/myprimaryaccount`;
10857
10921
  return this.sendGenericAPIRequest(accessToken, "GET", url, undefined, "iTwin");
10858
10922
  }
10923
+ /**
10924
+ * Gets the Account for the specified iTwin.
10925
+ * @param accessToken The client access token string
10926
+ * @param iTwinId The id of the iTwin
10927
+ * @returns Account
10928
+ */
10929
+ async getAccountAsync(accessToken, iTwinId, resultMode) {
10930
+ const headers = this.getResultModeHeaders(resultMode);
10931
+ const url = `${this._baseUrl}/${iTwinId}/account`;
10932
+ return this.sendGenericAPIRequest(accessToken, "GET", url, undefined, "iTwin", headers);
10933
+ }
10934
+ /**
10935
+ * Format headers from query arguments
10936
+ * @param arg (Optional) iTwin query arguments
10937
+ * @protected
10938
+ */
10939
+ getHeaders(arg) {
10940
+ return {
10941
+ ...this.getQueryScopeHeaders(arg && arg.queryScope),
10942
+ ...this.getResultModeHeaders(arg && arg.resultMode),
10943
+ };
10944
+ }
10859
10945
  /**
10860
10946
  * Format result mode parameter into a headers entry
10861
10947
  * @param resultMode (Optional) iTwin result mode
@@ -10866,14 +10952,24 @@ class ITwinsAccessClient extends _BaseClient__WEBPACK_IMPORTED_MODULE_0__.BaseCl
10866
10952
  prefer: `return=${resultMode}`,
10867
10953
  };
10868
10954
  }
10955
+ /**
10956
+ * Format query scope parameter into a headers entry
10957
+ * @param queryScope (Optional) iTwin query scope
10958
+ * @protected
10959
+ */
10960
+ getQueryScopeHeaders(queryScope = "memberOfItwin") {
10961
+ return {
10962
+ "x-itwin-query-scope": queryScope,
10963
+ };
10964
+ }
10869
10965
  }
10870
10966
 
10871
10967
 
10872
10968
  /***/ }),
10873
10969
 
10874
- /***/ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.2.0/node_modules/@itwin/itwins-client/lib/esm/itwins-client.js":
10970
+ /***/ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.6.1/node_modules/@itwin/itwins-client/lib/esm/itwins-client.js":
10875
10971
  /*!**********************************************************************************************************************************!*\
10876
- !*** ../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.2.0/node_modules/@itwin/itwins-client/lib/esm/itwins-client.js ***!
10972
+ !*** ../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.6.1/node_modules/@itwin/itwins-client/lib/esm/itwins-client.js ***!
10877
10973
  \**********************************************************************************************************************************/
10878
10974
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
10879
10975
 
@@ -10886,8 +10982,8 @@ __webpack_require__.r(__webpack_exports__);
10886
10982
  /* harmony export */ "RepositoryClass": () => (/* reexport safe */ _iTwinsAccessProps__WEBPACK_IMPORTED_MODULE_1__.RepositoryClass),
10887
10983
  /* harmony export */ "RepositorySubClass": () => (/* reexport safe */ _iTwinsAccessProps__WEBPACK_IMPORTED_MODULE_1__.RepositorySubClass)
10888
10984
  /* harmony export */ });
10889
- /* harmony import */ var _iTwinsClient__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./iTwinsClient */ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.2.0/node_modules/@itwin/itwins-client/lib/esm/iTwinsClient.js");
10890
- /* harmony import */ var _iTwinsAccessProps__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./iTwinsAccessProps */ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.2.0/node_modules/@itwin/itwins-client/lib/esm/iTwinsAccessProps.js");
10985
+ /* harmony import */ var _iTwinsClient__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./iTwinsClient */ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.6.1/node_modules/@itwin/itwins-client/lib/esm/iTwinsClient.js");
10986
+ /* harmony import */ var _iTwinsAccessProps__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./iTwinsAccessProps */ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.6.1/node_modules/@itwin/itwins-client/lib/esm/iTwinsAccessProps.js");
10891
10987
  /*---------------------------------------------------------------------------------------------
10892
10988
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
10893
10989
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -10905,9 +11001,9 @@ __webpack_require__.r(__webpack_exports__);
10905
11001
 
10906
11002
  /***/ }),
10907
11003
 
10908
- /***/ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/TestFrontendAuthorizationClient.js":
11004
+ /***/ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/TestFrontendAuthorizationClient.js":
10909
11005
  /*!*************************************************************************************************************************************************************************************!*\
10910
- !*** ../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/TestFrontendAuthorizationClient.js ***!
11006
+ !*** ../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/TestFrontendAuthorizationClient.js ***!
10911
11007
  \*************************************************************************************************************************************************************************************/
10912
11008
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
10913
11009
 
@@ -10962,9 +11058,9 @@ exports.TestFrontendAuthorizationClient = TestFrontendAuthorizationClient;
10962
11058
 
10963
11059
  /***/ }),
10964
11060
 
10965
- /***/ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/TestUsers.js":
11061
+ /***/ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/TestUsers.js":
10966
11062
  /*!***************************************************************************************************************************************************************!*\
10967
- !*** ../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/TestUsers.js ***!
11063
+ !*** ../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/TestUsers.js ***!
10968
11064
  \***************************************************************************************************************************************************************/
10969
11065
  /***/ ((__unused_webpack_module, exports) => {
10970
11066
 
@@ -11050,16 +11146,16 @@ exports.TestUsers = TestUsers;
11050
11146
 
11051
11147
  /***/ }),
11052
11148
 
11053
- /***/ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/certa/certaCommon.js":
11149
+ /***/ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/certa/certaCommon.js":
11054
11150
  /*!***********************************************************************************************************************************************************************!*\
11055
- !*** ../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/certa/certaCommon.js ***!
11151
+ !*** ../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/certa/certaCommon.js ***!
11056
11152
  \***********************************************************************************************************************************************************************/
11057
11153
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
11058
11154
 
11059
11155
  "use strict";
11060
11156
 
11061
11157
  Object.defineProperty(exports, "__esModule", ({ value: true }));
11062
- exports.getAccessTokenFromBackend = exports.getTokenCallbackName = void 0;
11158
+ exports.getServiceAuthTokenFromBackend = exports.getAccessTokenFromBackend = exports.getServiceAuthTokenCallbackName = exports.getTokenCallbackName = void 0;
11063
11159
  /*---------------------------------------------------------------------------------------------
11064
11160
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
11065
11161
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -11067,6 +11163,7 @@ exports.getAccessTokenFromBackend = exports.getTokenCallbackName = void 0;
11067
11163
  const CallbackUtils_1 = __webpack_require__(/*! @itwin/certa/lib/utils/CallbackUtils */ "../../tools/certa/lib/utils/CallbackUtils.js");
11068
11164
  // Shared by both the frontend and backend side of the tests
11069
11165
  exports.getTokenCallbackName = "getToken";
11166
+ exports.getServiceAuthTokenCallbackName = "getServiceAuthToken";
11070
11167
  /**
11071
11168
  * Retrieves an access token from the backend using the specified user credentials.
11072
11169
  */
@@ -11075,13 +11172,21 @@ async function getAccessTokenFromBackend(user, oidcConfig) {
11075
11172
  return accessToken;
11076
11173
  }
11077
11174
  exports.getAccessTokenFromBackend = getAccessTokenFromBackend;
11175
+ /**
11176
+ * Retrieves a service authorization token from the backend.
11177
+ */
11178
+ async function getServiceAuthTokenFromBackend(oidcConfig) {
11179
+ const accessToken = await (0, CallbackUtils_1.executeBackendCallback)(exports.getServiceAuthTokenCallbackName, oidcConfig);
11180
+ return accessToken;
11181
+ }
11182
+ exports.getServiceAuthTokenFromBackend = getServiceAuthTokenFromBackend;
11078
11183
  //# sourceMappingURL=certaCommon.js.map
11079
11184
 
11080
11185
  /***/ }),
11081
11186
 
11082
- /***/ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/frontend.js":
11187
+ /***/ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/frontend.js":
11083
11188
  /*!**************************************************************************************************************************************************************!*\
11084
- !*** ../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/frontend.js ***!
11189
+ !*** ../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/frontend.js ***!
11085
11190
  \**************************************************************************************************************************************************************/
11086
11191
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
11087
11192
 
@@ -11106,9 +11211,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
11106
11211
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11107
11212
  };
11108
11213
  Object.defineProperty(exports, "__esModule", ({ value: true }));
11109
- __exportStar(__webpack_require__(/*! ./TestUsers */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/TestUsers.js"), exports);
11110
- __exportStar(__webpack_require__(/*! ./TestFrontendAuthorizationClient */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/TestFrontendAuthorizationClient.js"), exports);
11111
- __exportStar(__webpack_require__(/*! ./certa/certaCommon */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/certa/certaCommon.js"), exports);
11214
+ __exportStar(__webpack_require__(/*! ./TestUsers */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/TestUsers.js"), exports);
11215
+ __exportStar(__webpack_require__(/*! ./TestFrontendAuthorizationClient */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/TestFrontendAuthorizationClient.js"), exports);
11216
+ __exportStar(__webpack_require__(/*! ./certa/certaCommon */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/certa/certaCommon.js"), exports);
11112
11217
  //# sourceMappingURL=frontend.js.map
11113
11218
 
11114
11219
  /***/ }),
@@ -11237,2160 +11342,6 @@ AssertionError.prototype.toJSON = function (stack) {
11237
11342
  };
11238
11343
 
11239
11344
 
11240
- /***/ }),
11241
-
11242
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/index.js":
11243
- /*!*************************************************************************************!*\
11244
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/index.js ***!
11245
- \*************************************************************************************/
11246
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11247
-
11248
- module.exports = __webpack_require__(/*! ./lib/axios */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/axios.js");
11249
-
11250
- /***/ }),
11251
-
11252
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/adapters/xhr.js":
11253
- /*!************************************************************************************************!*\
11254
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/adapters/xhr.js ***!
11255
- \************************************************************************************************/
11256
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11257
-
11258
- "use strict";
11259
-
11260
-
11261
- var utils = __webpack_require__(/*! ./../utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
11262
- var settle = __webpack_require__(/*! ./../core/settle */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/settle.js");
11263
- var cookies = __webpack_require__(/*! ./../helpers/cookies */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/cookies.js");
11264
- var buildURL = __webpack_require__(/*! ./../helpers/buildURL */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/buildURL.js");
11265
- var buildFullPath = __webpack_require__(/*! ../core/buildFullPath */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/buildFullPath.js");
11266
- var parseHeaders = __webpack_require__(/*! ./../helpers/parseHeaders */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/parseHeaders.js");
11267
- var isURLSameOrigin = __webpack_require__(/*! ./../helpers/isURLSameOrigin */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/isURLSameOrigin.js");
11268
- var createError = __webpack_require__(/*! ../core/createError */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/createError.js");
11269
- var defaults = __webpack_require__(/*! ../defaults */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/defaults.js");
11270
- var Cancel = __webpack_require__(/*! ../cancel/Cancel */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/Cancel.js");
11271
-
11272
- module.exports = function xhrAdapter(config) {
11273
- return new Promise(function dispatchXhrRequest(resolve, reject) {
11274
- var requestData = config.data;
11275
- var requestHeaders = config.headers;
11276
- var responseType = config.responseType;
11277
- var onCanceled;
11278
- function done() {
11279
- if (config.cancelToken) {
11280
- config.cancelToken.unsubscribe(onCanceled);
11281
- }
11282
-
11283
- if (config.signal) {
11284
- config.signal.removeEventListener('abort', onCanceled);
11285
- }
11286
- }
11287
-
11288
- if (utils.isFormData(requestData)) {
11289
- delete requestHeaders['Content-Type']; // Let the browser set it
11290
- }
11291
-
11292
- var request = new XMLHttpRequest();
11293
-
11294
- // HTTP basic authentication
11295
- if (config.auth) {
11296
- var username = config.auth.username || '';
11297
- var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';
11298
- requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);
11299
- }
11300
-
11301
- var fullPath = buildFullPath(config.baseURL, config.url);
11302
- request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);
11303
-
11304
- // Set the request timeout in MS
11305
- request.timeout = config.timeout;
11306
-
11307
- function onloadend() {
11308
- if (!request) {
11309
- return;
11310
- }
11311
- // Prepare the response
11312
- var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;
11313
- var responseData = !responseType || responseType === 'text' || responseType === 'json' ?
11314
- request.responseText : request.response;
11315
- var response = {
11316
- data: responseData,
11317
- status: request.status,
11318
- statusText: request.statusText,
11319
- headers: responseHeaders,
11320
- config: config,
11321
- request: request
11322
- };
11323
-
11324
- settle(function _resolve(value) {
11325
- resolve(value);
11326
- done();
11327
- }, function _reject(err) {
11328
- reject(err);
11329
- done();
11330
- }, response);
11331
-
11332
- // Clean up request
11333
- request = null;
11334
- }
11335
-
11336
- if ('onloadend' in request) {
11337
- // Use onloadend if available
11338
- request.onloadend = onloadend;
11339
- } else {
11340
- // Listen for ready state to emulate onloadend
11341
- request.onreadystatechange = function handleLoad() {
11342
- if (!request || request.readyState !== 4) {
11343
- return;
11344
- }
11345
-
11346
- // The request errored out and we didn't get a response, this will be
11347
- // handled by onerror instead
11348
- // With one exception: request that using file: protocol, most browsers
11349
- // will return status as 0 even though it's a successful request
11350
- if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {
11351
- return;
11352
- }
11353
- // readystate handler is calling before onerror or ontimeout handlers,
11354
- // so we should call onloadend on the next 'tick'
11355
- setTimeout(onloadend);
11356
- };
11357
- }
11358
-
11359
- // Handle browser request cancellation (as opposed to a manual cancellation)
11360
- request.onabort = function handleAbort() {
11361
- if (!request) {
11362
- return;
11363
- }
11364
-
11365
- reject(createError('Request aborted', config, 'ECONNABORTED', request));
11366
-
11367
- // Clean up request
11368
- request = null;
11369
- };
11370
-
11371
- // Handle low level network errors
11372
- request.onerror = function handleError() {
11373
- // Real errors are hidden from us by the browser
11374
- // onerror should only fire if it's a network error
11375
- reject(createError('Network Error', config, null, request));
11376
-
11377
- // Clean up request
11378
- request = null;
11379
- };
11380
-
11381
- // Handle timeout
11382
- request.ontimeout = function handleTimeout() {
11383
- var timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';
11384
- var transitional = config.transitional || defaults.transitional;
11385
- if (config.timeoutErrorMessage) {
11386
- timeoutErrorMessage = config.timeoutErrorMessage;
11387
- }
11388
- reject(createError(
11389
- timeoutErrorMessage,
11390
- config,
11391
- transitional.clarifyTimeoutError ? 'ETIMEDOUT' : 'ECONNABORTED',
11392
- request));
11393
-
11394
- // Clean up request
11395
- request = null;
11396
- };
11397
-
11398
- // Add xsrf header
11399
- // This is only done if running in a standard browser environment.
11400
- // Specifically not if we're in a web worker, or react-native.
11401
- if (utils.isStandardBrowserEnv()) {
11402
- // Add xsrf header
11403
- var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?
11404
- cookies.read(config.xsrfCookieName) :
11405
- undefined;
11406
-
11407
- if (xsrfValue) {
11408
- requestHeaders[config.xsrfHeaderName] = xsrfValue;
11409
- }
11410
- }
11411
-
11412
- // Add headers to the request
11413
- if ('setRequestHeader' in request) {
11414
- utils.forEach(requestHeaders, function setRequestHeader(val, key) {
11415
- if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {
11416
- // Remove Content-Type if data is undefined
11417
- delete requestHeaders[key];
11418
- } else {
11419
- // Otherwise add header to the request
11420
- request.setRequestHeader(key, val);
11421
- }
11422
- });
11423
- }
11424
-
11425
- // Add withCredentials to request if needed
11426
- if (!utils.isUndefined(config.withCredentials)) {
11427
- request.withCredentials = !!config.withCredentials;
11428
- }
11429
-
11430
- // Add responseType to request if needed
11431
- if (responseType && responseType !== 'json') {
11432
- request.responseType = config.responseType;
11433
- }
11434
-
11435
- // Handle progress if needed
11436
- if (typeof config.onDownloadProgress === 'function') {
11437
- request.addEventListener('progress', config.onDownloadProgress);
11438
- }
11439
-
11440
- // Not all browsers support upload events
11441
- if (typeof config.onUploadProgress === 'function' && request.upload) {
11442
- request.upload.addEventListener('progress', config.onUploadProgress);
11443
- }
11444
-
11445
- if (config.cancelToken || config.signal) {
11446
- // Handle cancellation
11447
- // eslint-disable-next-line func-names
11448
- onCanceled = function(cancel) {
11449
- if (!request) {
11450
- return;
11451
- }
11452
- reject(!cancel || (cancel && cancel.type) ? new Cancel('canceled') : cancel);
11453
- request.abort();
11454
- request = null;
11455
- };
11456
-
11457
- config.cancelToken && config.cancelToken.subscribe(onCanceled);
11458
- if (config.signal) {
11459
- config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);
11460
- }
11461
- }
11462
-
11463
- if (!requestData) {
11464
- requestData = null;
11465
- }
11466
-
11467
- // Send the request
11468
- request.send(requestData);
11469
- });
11470
- };
11471
-
11472
-
11473
- /***/ }),
11474
-
11475
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/axios.js":
11476
- /*!*****************************************************************************************!*\
11477
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/axios.js ***!
11478
- \*****************************************************************************************/
11479
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11480
-
11481
- "use strict";
11482
-
11483
-
11484
- var utils = __webpack_require__(/*! ./utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
11485
- var bind = __webpack_require__(/*! ./helpers/bind */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/bind.js");
11486
- var Axios = __webpack_require__(/*! ./core/Axios */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/Axios.js");
11487
- var mergeConfig = __webpack_require__(/*! ./core/mergeConfig */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/mergeConfig.js");
11488
- var defaults = __webpack_require__(/*! ./defaults */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/defaults.js");
11489
-
11490
- /**
11491
- * Create an instance of Axios
11492
- *
11493
- * @param {Object} defaultConfig The default config for the instance
11494
- * @return {Axios} A new instance of Axios
11495
- */
11496
- function createInstance(defaultConfig) {
11497
- var context = new Axios(defaultConfig);
11498
- var instance = bind(Axios.prototype.request, context);
11499
-
11500
- // Copy axios.prototype to instance
11501
- utils.extend(instance, Axios.prototype, context);
11502
-
11503
- // Copy context to instance
11504
- utils.extend(instance, context);
11505
-
11506
- // Factory for creating new instances
11507
- instance.create = function create(instanceConfig) {
11508
- return createInstance(mergeConfig(defaultConfig, instanceConfig));
11509
- };
11510
-
11511
- return instance;
11512
- }
11513
-
11514
- // Create the default instance to be exported
11515
- var axios = createInstance(defaults);
11516
-
11517
- // Expose Axios class to allow class inheritance
11518
- axios.Axios = Axios;
11519
-
11520
- // Expose Cancel & CancelToken
11521
- axios.Cancel = __webpack_require__(/*! ./cancel/Cancel */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/Cancel.js");
11522
- axios.CancelToken = __webpack_require__(/*! ./cancel/CancelToken */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/CancelToken.js");
11523
- axios.isCancel = __webpack_require__(/*! ./cancel/isCancel */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/isCancel.js");
11524
- axios.VERSION = (__webpack_require__(/*! ./env/data */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/env/data.js").version);
11525
-
11526
- // Expose all/spread
11527
- axios.all = function all(promises) {
11528
- return Promise.all(promises);
11529
- };
11530
- axios.spread = __webpack_require__(/*! ./helpers/spread */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/spread.js");
11531
-
11532
- // Expose isAxiosError
11533
- axios.isAxiosError = __webpack_require__(/*! ./helpers/isAxiosError */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/isAxiosError.js");
11534
-
11535
- module.exports = axios;
11536
-
11537
- // Allow use of default import syntax in TypeScript
11538
- module.exports["default"] = axios;
11539
-
11540
-
11541
- /***/ }),
11542
-
11543
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/Cancel.js":
11544
- /*!*************************************************************************************************!*\
11545
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/Cancel.js ***!
11546
- \*************************************************************************************************/
11547
- /***/ ((module) => {
11548
-
11549
- "use strict";
11550
-
11551
-
11552
- /**
11553
- * A `Cancel` is an object that is thrown when an operation is canceled.
11554
- *
11555
- * @class
11556
- * @param {string=} message The message.
11557
- */
11558
- function Cancel(message) {
11559
- this.message = message;
11560
- }
11561
-
11562
- Cancel.prototype.toString = function toString() {
11563
- return 'Cancel' + (this.message ? ': ' + this.message : '');
11564
- };
11565
-
11566
- Cancel.prototype.__CANCEL__ = true;
11567
-
11568
- module.exports = Cancel;
11569
-
11570
-
11571
- /***/ }),
11572
-
11573
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/CancelToken.js":
11574
- /*!******************************************************************************************************!*\
11575
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/CancelToken.js ***!
11576
- \******************************************************************************************************/
11577
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11578
-
11579
- "use strict";
11580
-
11581
-
11582
- var Cancel = __webpack_require__(/*! ./Cancel */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/Cancel.js");
11583
-
11584
- /**
11585
- * A `CancelToken` is an object that can be used to request cancellation of an operation.
11586
- *
11587
- * @class
11588
- * @param {Function} executor The executor function.
11589
- */
11590
- function CancelToken(executor) {
11591
- if (typeof executor !== 'function') {
11592
- throw new TypeError('executor must be a function.');
11593
- }
11594
-
11595
- var resolvePromise;
11596
-
11597
- this.promise = new Promise(function promiseExecutor(resolve) {
11598
- resolvePromise = resolve;
11599
- });
11600
-
11601
- var token = this;
11602
-
11603
- // eslint-disable-next-line func-names
11604
- this.promise.then(function(cancel) {
11605
- if (!token._listeners) return;
11606
-
11607
- var i;
11608
- var l = token._listeners.length;
11609
-
11610
- for (i = 0; i < l; i++) {
11611
- token._listeners[i](cancel);
11612
- }
11613
- token._listeners = null;
11614
- });
11615
-
11616
- // eslint-disable-next-line func-names
11617
- this.promise.then = function(onfulfilled) {
11618
- var _resolve;
11619
- // eslint-disable-next-line func-names
11620
- var promise = new Promise(function(resolve) {
11621
- token.subscribe(resolve);
11622
- _resolve = resolve;
11623
- }).then(onfulfilled);
11624
-
11625
- promise.cancel = function reject() {
11626
- token.unsubscribe(_resolve);
11627
- };
11628
-
11629
- return promise;
11630
- };
11631
-
11632
- executor(function cancel(message) {
11633
- if (token.reason) {
11634
- // Cancellation has already been requested
11635
- return;
11636
- }
11637
-
11638
- token.reason = new Cancel(message);
11639
- resolvePromise(token.reason);
11640
- });
11641
- }
11642
-
11643
- /**
11644
- * Throws a `Cancel` if cancellation has been requested.
11645
- */
11646
- CancelToken.prototype.throwIfRequested = function throwIfRequested() {
11647
- if (this.reason) {
11648
- throw this.reason;
11649
- }
11650
- };
11651
-
11652
- /**
11653
- * Subscribe to the cancel signal
11654
- */
11655
-
11656
- CancelToken.prototype.subscribe = function subscribe(listener) {
11657
- if (this.reason) {
11658
- listener(this.reason);
11659
- return;
11660
- }
11661
-
11662
- if (this._listeners) {
11663
- this._listeners.push(listener);
11664
- } else {
11665
- this._listeners = [listener];
11666
- }
11667
- };
11668
-
11669
- /**
11670
- * Unsubscribe from the cancel signal
11671
- */
11672
-
11673
- CancelToken.prototype.unsubscribe = function unsubscribe(listener) {
11674
- if (!this._listeners) {
11675
- return;
11676
- }
11677
- var index = this._listeners.indexOf(listener);
11678
- if (index !== -1) {
11679
- this._listeners.splice(index, 1);
11680
- }
11681
- };
11682
-
11683
- /**
11684
- * Returns an object that contains a new `CancelToken` and a function that, when called,
11685
- * cancels the `CancelToken`.
11686
- */
11687
- CancelToken.source = function source() {
11688
- var cancel;
11689
- var token = new CancelToken(function executor(c) {
11690
- cancel = c;
11691
- });
11692
- return {
11693
- token: token,
11694
- cancel: cancel
11695
- };
11696
- };
11697
-
11698
- module.exports = CancelToken;
11699
-
11700
-
11701
- /***/ }),
11702
-
11703
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/isCancel.js":
11704
- /*!***************************************************************************************************!*\
11705
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/isCancel.js ***!
11706
- \***************************************************************************************************/
11707
- /***/ ((module) => {
11708
-
11709
- "use strict";
11710
-
11711
-
11712
- module.exports = function isCancel(value) {
11713
- return !!(value && value.__CANCEL__);
11714
- };
11715
-
11716
-
11717
- /***/ }),
11718
-
11719
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/Axios.js":
11720
- /*!**********************************************************************************************!*\
11721
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/Axios.js ***!
11722
- \**********************************************************************************************/
11723
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11724
-
11725
- "use strict";
11726
-
11727
-
11728
- var utils = __webpack_require__(/*! ./../utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
11729
- var buildURL = __webpack_require__(/*! ../helpers/buildURL */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/buildURL.js");
11730
- var InterceptorManager = __webpack_require__(/*! ./InterceptorManager */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/InterceptorManager.js");
11731
- var dispatchRequest = __webpack_require__(/*! ./dispatchRequest */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/dispatchRequest.js");
11732
- var mergeConfig = __webpack_require__(/*! ./mergeConfig */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/mergeConfig.js");
11733
- var validator = __webpack_require__(/*! ../helpers/validator */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/validator.js");
11734
-
11735
- var validators = validator.validators;
11736
- /**
11737
- * Create a new instance of Axios
11738
- *
11739
- * @param {Object} instanceConfig The default config for the instance
11740
- */
11741
- function Axios(instanceConfig) {
11742
- this.defaults = instanceConfig;
11743
- this.interceptors = {
11744
- request: new InterceptorManager(),
11745
- response: new InterceptorManager()
11746
- };
11747
- }
11748
-
11749
- /**
11750
- * Dispatch a request
11751
- *
11752
- * @param {Object} config The config specific for this request (merged with this.defaults)
11753
- */
11754
- Axios.prototype.request = function request(configOrUrl, config) {
11755
- /*eslint no-param-reassign:0*/
11756
- // Allow for axios('example/url'[, config]) a la fetch API
11757
- if (typeof configOrUrl === 'string') {
11758
- config = config || {};
11759
- config.url = configOrUrl;
11760
- } else {
11761
- config = configOrUrl || {};
11762
- }
11763
-
11764
- if (!config.url) {
11765
- throw new Error('Provided config url is not valid');
11766
- }
11767
-
11768
- config = mergeConfig(this.defaults, config);
11769
-
11770
- // Set config.method
11771
- if (config.method) {
11772
- config.method = config.method.toLowerCase();
11773
- } else if (this.defaults.method) {
11774
- config.method = this.defaults.method.toLowerCase();
11775
- } else {
11776
- config.method = 'get';
11777
- }
11778
-
11779
- var transitional = config.transitional;
11780
-
11781
- if (transitional !== undefined) {
11782
- validator.assertOptions(transitional, {
11783
- silentJSONParsing: validators.transitional(validators.boolean),
11784
- forcedJSONParsing: validators.transitional(validators.boolean),
11785
- clarifyTimeoutError: validators.transitional(validators.boolean)
11786
- }, false);
11787
- }
11788
-
11789
- // filter out skipped interceptors
11790
- var requestInterceptorChain = [];
11791
- var synchronousRequestInterceptors = true;
11792
- this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {
11793
- if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {
11794
- return;
11795
- }
11796
-
11797
- synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;
11798
-
11799
- requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);
11800
- });
11801
-
11802
- var responseInterceptorChain = [];
11803
- this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {
11804
- responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);
11805
- });
11806
-
11807
- var promise;
11808
-
11809
- if (!synchronousRequestInterceptors) {
11810
- var chain = [dispatchRequest, undefined];
11811
-
11812
- Array.prototype.unshift.apply(chain, requestInterceptorChain);
11813
- chain = chain.concat(responseInterceptorChain);
11814
-
11815
- promise = Promise.resolve(config);
11816
- while (chain.length) {
11817
- promise = promise.then(chain.shift(), chain.shift());
11818
- }
11819
-
11820
- return promise;
11821
- }
11822
-
11823
-
11824
- var newConfig = config;
11825
- while (requestInterceptorChain.length) {
11826
- var onFulfilled = requestInterceptorChain.shift();
11827
- var onRejected = requestInterceptorChain.shift();
11828
- try {
11829
- newConfig = onFulfilled(newConfig);
11830
- } catch (error) {
11831
- onRejected(error);
11832
- break;
11833
- }
11834
- }
11835
-
11836
- try {
11837
- promise = dispatchRequest(newConfig);
11838
- } catch (error) {
11839
- return Promise.reject(error);
11840
- }
11841
-
11842
- while (responseInterceptorChain.length) {
11843
- promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());
11844
- }
11845
-
11846
- return promise;
11847
- };
11848
-
11849
- Axios.prototype.getUri = function getUri(config) {
11850
- if (!config.url) {
11851
- throw new Error('Provided config url is not valid');
11852
- }
11853
- config = mergeConfig(this.defaults, config);
11854
- return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\?/, '');
11855
- };
11856
-
11857
- // Provide aliases for supported request methods
11858
- utils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {
11859
- /*eslint func-names:0*/
11860
- Axios.prototype[method] = function(url, config) {
11861
- return this.request(mergeConfig(config || {}, {
11862
- method: method,
11863
- url: url,
11864
- data: (config || {}).data
11865
- }));
11866
- };
11867
- });
11868
-
11869
- utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {
11870
- /*eslint func-names:0*/
11871
- Axios.prototype[method] = function(url, data, config) {
11872
- return this.request(mergeConfig(config || {}, {
11873
- method: method,
11874
- url: url,
11875
- data: data
11876
- }));
11877
- };
11878
- });
11879
-
11880
- module.exports = Axios;
11881
-
11882
-
11883
- /***/ }),
11884
-
11885
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/InterceptorManager.js":
11886
- /*!***********************************************************************************************************!*\
11887
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/InterceptorManager.js ***!
11888
- \***********************************************************************************************************/
11889
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11890
-
11891
- "use strict";
11892
-
11893
-
11894
- var utils = __webpack_require__(/*! ./../utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
11895
-
11896
- function InterceptorManager() {
11897
- this.handlers = [];
11898
- }
11899
-
11900
- /**
11901
- * Add a new interceptor to the stack
11902
- *
11903
- * @param {Function} fulfilled The function to handle `then` for a `Promise`
11904
- * @param {Function} rejected The function to handle `reject` for a `Promise`
11905
- *
11906
- * @return {Number} An ID used to remove interceptor later
11907
- */
11908
- InterceptorManager.prototype.use = function use(fulfilled, rejected, options) {
11909
- this.handlers.push({
11910
- fulfilled: fulfilled,
11911
- rejected: rejected,
11912
- synchronous: options ? options.synchronous : false,
11913
- runWhen: options ? options.runWhen : null
11914
- });
11915
- return this.handlers.length - 1;
11916
- };
11917
-
11918
- /**
11919
- * Remove an interceptor from the stack
11920
- *
11921
- * @param {Number} id The ID that was returned by `use`
11922
- */
11923
- InterceptorManager.prototype.eject = function eject(id) {
11924
- if (this.handlers[id]) {
11925
- this.handlers[id] = null;
11926
- }
11927
- };
11928
-
11929
- /**
11930
- * Iterate over all the registered interceptors
11931
- *
11932
- * This method is particularly useful for skipping over any
11933
- * interceptors that may have become `null` calling `eject`.
11934
- *
11935
- * @param {Function} fn The function to call for each interceptor
11936
- */
11937
- InterceptorManager.prototype.forEach = function forEach(fn) {
11938
- utils.forEach(this.handlers, function forEachHandler(h) {
11939
- if (h !== null) {
11940
- fn(h);
11941
- }
11942
- });
11943
- };
11944
-
11945
- module.exports = InterceptorManager;
11946
-
11947
-
11948
- /***/ }),
11949
-
11950
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/buildFullPath.js":
11951
- /*!******************************************************************************************************!*\
11952
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/buildFullPath.js ***!
11953
- \******************************************************************************************************/
11954
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11955
-
11956
- "use strict";
11957
-
11958
-
11959
- var isAbsoluteURL = __webpack_require__(/*! ../helpers/isAbsoluteURL */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/isAbsoluteURL.js");
11960
- var combineURLs = __webpack_require__(/*! ../helpers/combineURLs */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/combineURLs.js");
11961
-
11962
- /**
11963
- * Creates a new URL by combining the baseURL with the requestedURL,
11964
- * only when the requestedURL is not already an absolute URL.
11965
- * If the requestURL is absolute, this function returns the requestedURL untouched.
11966
- *
11967
- * @param {string} baseURL The base URL
11968
- * @param {string} requestedURL Absolute or relative URL to combine
11969
- * @returns {string} The combined full path
11970
- */
11971
- module.exports = function buildFullPath(baseURL, requestedURL) {
11972
- if (baseURL && !isAbsoluteURL(requestedURL)) {
11973
- return combineURLs(baseURL, requestedURL);
11974
- }
11975
- return requestedURL;
11976
- };
11977
-
11978
-
11979
- /***/ }),
11980
-
11981
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/createError.js":
11982
- /*!****************************************************************************************************!*\
11983
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/createError.js ***!
11984
- \****************************************************************************************************/
11985
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
11986
-
11987
- "use strict";
11988
-
11989
-
11990
- var enhanceError = __webpack_require__(/*! ./enhanceError */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/enhanceError.js");
11991
-
11992
- /**
11993
- * Create an Error with the specified message, config, error code, request and response.
11994
- *
11995
- * @param {string} message The error message.
11996
- * @param {Object} config The config.
11997
- * @param {string} [code] The error code (for example, 'ECONNABORTED').
11998
- * @param {Object} [request] The request.
11999
- * @param {Object} [response] The response.
12000
- * @returns {Error} The created error.
12001
- */
12002
- module.exports = function createError(message, config, code, request, response) {
12003
- var error = new Error(message);
12004
- return enhanceError(error, config, code, request, response);
12005
- };
12006
-
12007
-
12008
- /***/ }),
12009
-
12010
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/dispatchRequest.js":
12011
- /*!********************************************************************************************************!*\
12012
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/dispatchRequest.js ***!
12013
- \********************************************************************************************************/
12014
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12015
-
12016
- "use strict";
12017
-
12018
-
12019
- var utils = __webpack_require__(/*! ./../utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
12020
- var transformData = __webpack_require__(/*! ./transformData */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/transformData.js");
12021
- var isCancel = __webpack_require__(/*! ../cancel/isCancel */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/isCancel.js");
12022
- var defaults = __webpack_require__(/*! ../defaults */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/defaults.js");
12023
- var Cancel = __webpack_require__(/*! ../cancel/Cancel */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/cancel/Cancel.js");
12024
-
12025
- /**
12026
- * Throws a `Cancel` if cancellation has been requested.
12027
- */
12028
- function throwIfCancellationRequested(config) {
12029
- if (config.cancelToken) {
12030
- config.cancelToken.throwIfRequested();
12031
- }
12032
-
12033
- if (config.signal && config.signal.aborted) {
12034
- throw new Cancel('canceled');
12035
- }
12036
- }
12037
-
12038
- /**
12039
- * Dispatch a request to the server using the configured adapter.
12040
- *
12041
- * @param {object} config The config that is to be used for the request
12042
- * @returns {Promise} The Promise to be fulfilled
12043
- */
12044
- module.exports = function dispatchRequest(config) {
12045
- throwIfCancellationRequested(config);
12046
-
12047
- // Ensure headers exist
12048
- config.headers = config.headers || {};
12049
-
12050
- // Transform request data
12051
- config.data = transformData.call(
12052
- config,
12053
- config.data,
12054
- config.headers,
12055
- config.transformRequest
12056
- );
12057
-
12058
- // Flatten headers
12059
- config.headers = utils.merge(
12060
- config.headers.common || {},
12061
- config.headers[config.method] || {},
12062
- config.headers
12063
- );
12064
-
12065
- utils.forEach(
12066
- ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],
12067
- function cleanHeaderConfig(method) {
12068
- delete config.headers[method];
12069
- }
12070
- );
12071
-
12072
- var adapter = config.adapter || defaults.adapter;
12073
-
12074
- return adapter(config).then(function onAdapterResolution(response) {
12075
- throwIfCancellationRequested(config);
12076
-
12077
- // Transform response data
12078
- response.data = transformData.call(
12079
- config,
12080
- response.data,
12081
- response.headers,
12082
- config.transformResponse
12083
- );
12084
-
12085
- return response;
12086
- }, function onAdapterRejection(reason) {
12087
- if (!isCancel(reason)) {
12088
- throwIfCancellationRequested(config);
12089
-
12090
- // Transform response data
12091
- if (reason && reason.response) {
12092
- reason.response.data = transformData.call(
12093
- config,
12094
- reason.response.data,
12095
- reason.response.headers,
12096
- config.transformResponse
12097
- );
12098
- }
12099
- }
12100
-
12101
- return Promise.reject(reason);
12102
- });
12103
- };
12104
-
12105
-
12106
- /***/ }),
12107
-
12108
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/enhanceError.js":
12109
- /*!*****************************************************************************************************!*\
12110
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/enhanceError.js ***!
12111
- \*****************************************************************************************************/
12112
- /***/ ((module) => {
12113
-
12114
- "use strict";
12115
-
12116
-
12117
- /**
12118
- * Update an Error with the specified config, error code, and response.
12119
- *
12120
- * @param {Error} error The error to update.
12121
- * @param {Object} config The config.
12122
- * @param {string} [code] The error code (for example, 'ECONNABORTED').
12123
- * @param {Object} [request] The request.
12124
- * @param {Object} [response] The response.
12125
- * @returns {Error} The error.
12126
- */
12127
- module.exports = function enhanceError(error, config, code, request, response) {
12128
- error.config = config;
12129
- if (code) {
12130
- error.code = code;
12131
- }
12132
-
12133
- error.request = request;
12134
- error.response = response;
12135
- error.isAxiosError = true;
12136
-
12137
- error.toJSON = function toJSON() {
12138
- return {
12139
- // Standard
12140
- message: this.message,
12141
- name: this.name,
12142
- // Microsoft
12143
- description: this.description,
12144
- number: this.number,
12145
- // Mozilla
12146
- fileName: this.fileName,
12147
- lineNumber: this.lineNumber,
12148
- columnNumber: this.columnNumber,
12149
- stack: this.stack,
12150
- // Axios
12151
- config: this.config,
12152
- code: this.code,
12153
- status: this.response && this.response.status ? this.response.status : null
12154
- };
12155
- };
12156
- return error;
12157
- };
12158
-
12159
-
12160
- /***/ }),
12161
-
12162
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/mergeConfig.js":
12163
- /*!****************************************************************************************************!*\
12164
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/mergeConfig.js ***!
12165
- \****************************************************************************************************/
12166
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12167
-
12168
- "use strict";
12169
-
12170
-
12171
- var utils = __webpack_require__(/*! ../utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
12172
-
12173
- /**
12174
- * Config-specific merge-function which creates a new config-object
12175
- * by merging two configuration objects together.
12176
- *
12177
- * @param {Object} config1
12178
- * @param {Object} config2
12179
- * @returns {Object} New object resulting from merging config2 to config1
12180
- */
12181
- module.exports = function mergeConfig(config1, config2) {
12182
- // eslint-disable-next-line no-param-reassign
12183
- config2 = config2 || {};
12184
- var config = {};
12185
-
12186
- function getMergedValue(target, source) {
12187
- if (utils.isPlainObject(target) && utils.isPlainObject(source)) {
12188
- return utils.merge(target, source);
12189
- } else if (utils.isPlainObject(source)) {
12190
- return utils.merge({}, source);
12191
- } else if (utils.isArray(source)) {
12192
- return source.slice();
12193
- }
12194
- return source;
12195
- }
12196
-
12197
- // eslint-disable-next-line consistent-return
12198
- function mergeDeepProperties(prop) {
12199
- if (!utils.isUndefined(config2[prop])) {
12200
- return getMergedValue(config1[prop], config2[prop]);
12201
- } else if (!utils.isUndefined(config1[prop])) {
12202
- return getMergedValue(undefined, config1[prop]);
12203
- }
12204
- }
12205
-
12206
- // eslint-disable-next-line consistent-return
12207
- function valueFromConfig2(prop) {
12208
- if (!utils.isUndefined(config2[prop])) {
12209
- return getMergedValue(undefined, config2[prop]);
12210
- }
12211
- }
12212
-
12213
- // eslint-disable-next-line consistent-return
12214
- function defaultToConfig2(prop) {
12215
- if (!utils.isUndefined(config2[prop])) {
12216
- return getMergedValue(undefined, config2[prop]);
12217
- } else if (!utils.isUndefined(config1[prop])) {
12218
- return getMergedValue(undefined, config1[prop]);
12219
- }
12220
- }
12221
-
12222
- // eslint-disable-next-line consistent-return
12223
- function mergeDirectKeys(prop) {
12224
- if (prop in config2) {
12225
- return getMergedValue(config1[prop], config2[prop]);
12226
- } else if (prop in config1) {
12227
- return getMergedValue(undefined, config1[prop]);
12228
- }
12229
- }
12230
-
12231
- var mergeMap = {
12232
- 'url': valueFromConfig2,
12233
- 'method': valueFromConfig2,
12234
- 'data': valueFromConfig2,
12235
- 'baseURL': defaultToConfig2,
12236
- 'transformRequest': defaultToConfig2,
12237
- 'transformResponse': defaultToConfig2,
12238
- 'paramsSerializer': defaultToConfig2,
12239
- 'timeout': defaultToConfig2,
12240
- 'timeoutMessage': defaultToConfig2,
12241
- 'withCredentials': defaultToConfig2,
12242
- 'adapter': defaultToConfig2,
12243
- 'responseType': defaultToConfig2,
12244
- 'xsrfCookieName': defaultToConfig2,
12245
- 'xsrfHeaderName': defaultToConfig2,
12246
- 'onUploadProgress': defaultToConfig2,
12247
- 'onDownloadProgress': defaultToConfig2,
12248
- 'decompress': defaultToConfig2,
12249
- 'maxContentLength': defaultToConfig2,
12250
- 'maxBodyLength': defaultToConfig2,
12251
- 'transport': defaultToConfig2,
12252
- 'httpAgent': defaultToConfig2,
12253
- 'httpsAgent': defaultToConfig2,
12254
- 'cancelToken': defaultToConfig2,
12255
- 'socketPath': defaultToConfig2,
12256
- 'responseEncoding': defaultToConfig2,
12257
- 'validateStatus': mergeDirectKeys
12258
- };
12259
-
12260
- utils.forEach(Object.keys(config1).concat(Object.keys(config2)), function computeConfigValue(prop) {
12261
- var merge = mergeMap[prop] || mergeDeepProperties;
12262
- var configValue = merge(prop);
12263
- (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);
12264
- });
12265
-
12266
- return config;
12267
- };
12268
-
12269
-
12270
- /***/ }),
12271
-
12272
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/settle.js":
12273
- /*!***********************************************************************************************!*\
12274
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/settle.js ***!
12275
- \***********************************************************************************************/
12276
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12277
-
12278
- "use strict";
12279
-
12280
-
12281
- var createError = __webpack_require__(/*! ./createError */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/createError.js");
12282
-
12283
- /**
12284
- * Resolve or reject a Promise based on response status.
12285
- *
12286
- * @param {Function} resolve A function that resolves the promise.
12287
- * @param {Function} reject A function that rejects the promise.
12288
- * @param {object} response The response.
12289
- */
12290
- module.exports = function settle(resolve, reject, response) {
12291
- var validateStatus = response.config.validateStatus;
12292
- if (!response.status || !validateStatus || validateStatus(response.status)) {
12293
- resolve(response);
12294
- } else {
12295
- reject(createError(
12296
- 'Request failed with status code ' + response.status,
12297
- response.config,
12298
- null,
12299
- response.request,
12300
- response
12301
- ));
12302
- }
12303
- };
12304
-
12305
-
12306
- /***/ }),
12307
-
12308
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/transformData.js":
12309
- /*!******************************************************************************************************!*\
12310
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/transformData.js ***!
12311
- \******************************************************************************************************/
12312
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12313
-
12314
- "use strict";
12315
-
12316
-
12317
- var utils = __webpack_require__(/*! ./../utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
12318
- var defaults = __webpack_require__(/*! ./../defaults */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/defaults.js");
12319
-
12320
- /**
12321
- * Transform the data for a request or a response
12322
- *
12323
- * @param {Object|String} data The data to be transformed
12324
- * @param {Array} headers The headers for the request or response
12325
- * @param {Array|Function} fns A single function or Array of functions
12326
- * @returns {*} The resulting transformed data
12327
- */
12328
- module.exports = function transformData(data, headers, fns) {
12329
- var context = this || defaults;
12330
- /*eslint no-param-reassign:0*/
12331
- utils.forEach(fns, function transform(fn) {
12332
- data = fn.call(context, data, headers);
12333
- });
12334
-
12335
- return data;
12336
- };
12337
-
12338
-
12339
- /***/ }),
12340
-
12341
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/defaults.js":
12342
- /*!********************************************************************************************!*\
12343
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/defaults.js ***!
12344
- \********************************************************************************************/
12345
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12346
-
12347
- "use strict";
12348
-
12349
-
12350
- var utils = __webpack_require__(/*! ./utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
12351
- var normalizeHeaderName = __webpack_require__(/*! ./helpers/normalizeHeaderName */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/normalizeHeaderName.js");
12352
- var enhanceError = __webpack_require__(/*! ./core/enhanceError */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/core/enhanceError.js");
12353
-
12354
- var DEFAULT_CONTENT_TYPE = {
12355
- 'Content-Type': 'application/x-www-form-urlencoded'
12356
- };
12357
-
12358
- function setContentTypeIfUnset(headers, value) {
12359
- if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {
12360
- headers['Content-Type'] = value;
12361
- }
12362
- }
12363
-
12364
- function getDefaultAdapter() {
12365
- var adapter;
12366
- if (typeof XMLHttpRequest !== 'undefined') {
12367
- // For browsers use XHR adapter
12368
- adapter = __webpack_require__(/*! ./adapters/xhr */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/adapters/xhr.js");
12369
- } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {
12370
- // For node use HTTP adapter
12371
- adapter = __webpack_require__(/*! ./adapters/http */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/adapters/xhr.js");
12372
- }
12373
- return adapter;
12374
- }
12375
-
12376
- function stringifySafely(rawValue, parser, encoder) {
12377
- if (utils.isString(rawValue)) {
12378
- try {
12379
- (parser || JSON.parse)(rawValue);
12380
- return utils.trim(rawValue);
12381
- } catch (e) {
12382
- if (e.name !== 'SyntaxError') {
12383
- throw e;
12384
- }
12385
- }
12386
- }
12387
-
12388
- return (encoder || JSON.stringify)(rawValue);
12389
- }
12390
-
12391
- var defaults = {
12392
-
12393
- transitional: {
12394
- silentJSONParsing: true,
12395
- forcedJSONParsing: true,
12396
- clarifyTimeoutError: false
12397
- },
12398
-
12399
- adapter: getDefaultAdapter(),
12400
-
12401
- transformRequest: [function transformRequest(data, headers) {
12402
- normalizeHeaderName(headers, 'Accept');
12403
- normalizeHeaderName(headers, 'Content-Type');
12404
-
12405
- if (utils.isFormData(data) ||
12406
- utils.isArrayBuffer(data) ||
12407
- utils.isBuffer(data) ||
12408
- utils.isStream(data) ||
12409
- utils.isFile(data) ||
12410
- utils.isBlob(data)
12411
- ) {
12412
- return data;
12413
- }
12414
- if (utils.isArrayBufferView(data)) {
12415
- return data.buffer;
12416
- }
12417
- if (utils.isURLSearchParams(data)) {
12418
- setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');
12419
- return data.toString();
12420
- }
12421
- if (utils.isObject(data) || (headers && headers['Content-Type'] === 'application/json')) {
12422
- setContentTypeIfUnset(headers, 'application/json');
12423
- return stringifySafely(data);
12424
- }
12425
- return data;
12426
- }],
12427
-
12428
- transformResponse: [function transformResponse(data) {
12429
- var transitional = this.transitional || defaults.transitional;
12430
- var silentJSONParsing = transitional && transitional.silentJSONParsing;
12431
- var forcedJSONParsing = transitional && transitional.forcedJSONParsing;
12432
- var strictJSONParsing = !silentJSONParsing && this.responseType === 'json';
12433
-
12434
- if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) {
12435
- try {
12436
- return JSON.parse(data);
12437
- } catch (e) {
12438
- if (strictJSONParsing) {
12439
- if (e.name === 'SyntaxError') {
12440
- throw enhanceError(e, this, 'E_JSON_PARSE');
12441
- }
12442
- throw e;
12443
- }
12444
- }
12445
- }
12446
-
12447
- return data;
12448
- }],
12449
-
12450
- /**
12451
- * A timeout in milliseconds to abort a request. If set to 0 (default) a
12452
- * timeout is not created.
12453
- */
12454
- timeout: 0,
12455
-
12456
- xsrfCookieName: 'XSRF-TOKEN',
12457
- xsrfHeaderName: 'X-XSRF-TOKEN',
12458
-
12459
- maxContentLength: -1,
12460
- maxBodyLength: -1,
12461
-
12462
- validateStatus: function validateStatus(status) {
12463
- return status >= 200 && status < 300;
12464
- },
12465
-
12466
- headers: {
12467
- common: {
12468
- 'Accept': 'application/json, text/plain, */*'
12469
- }
12470
- }
12471
- };
12472
-
12473
- utils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {
12474
- defaults.headers[method] = {};
12475
- });
12476
-
12477
- utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {
12478
- defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);
12479
- });
12480
-
12481
- module.exports = defaults;
12482
-
12483
-
12484
- /***/ }),
12485
-
12486
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/env/data.js":
12487
- /*!********************************************************************************************!*\
12488
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/env/data.js ***!
12489
- \********************************************************************************************/
12490
- /***/ ((module) => {
12491
-
12492
- module.exports = {
12493
- "version": "0.25.0"
12494
- };
12495
-
12496
- /***/ }),
12497
-
12498
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/bind.js":
12499
- /*!************************************************************************************************!*\
12500
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/bind.js ***!
12501
- \************************************************************************************************/
12502
- /***/ ((module) => {
12503
-
12504
- "use strict";
12505
-
12506
-
12507
- module.exports = function bind(fn, thisArg) {
12508
- return function wrap() {
12509
- var args = new Array(arguments.length);
12510
- for (var i = 0; i < args.length; i++) {
12511
- args[i] = arguments[i];
12512
- }
12513
- return fn.apply(thisArg, args);
12514
- };
12515
- };
12516
-
12517
-
12518
- /***/ }),
12519
-
12520
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/buildURL.js":
12521
- /*!****************************************************************************************************!*\
12522
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/buildURL.js ***!
12523
- \****************************************************************************************************/
12524
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12525
-
12526
- "use strict";
12527
-
12528
-
12529
- var utils = __webpack_require__(/*! ./../utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
12530
-
12531
- function encode(val) {
12532
- return encodeURIComponent(val).
12533
- replace(/%3A/gi, ':').
12534
- replace(/%24/g, '$').
12535
- replace(/%2C/gi, ',').
12536
- replace(/%20/g, '+').
12537
- replace(/%5B/gi, '[').
12538
- replace(/%5D/gi, ']');
12539
- }
12540
-
12541
- /**
12542
- * Build a URL by appending params to the end
12543
- *
12544
- * @param {string} url The base of the url (e.g., http://www.google.com)
12545
- * @param {object} [params] The params to be appended
12546
- * @returns {string} The formatted url
12547
- */
12548
- module.exports = function buildURL(url, params, paramsSerializer) {
12549
- /*eslint no-param-reassign:0*/
12550
- if (!params) {
12551
- return url;
12552
- }
12553
-
12554
- var serializedParams;
12555
- if (paramsSerializer) {
12556
- serializedParams = paramsSerializer(params);
12557
- } else if (utils.isURLSearchParams(params)) {
12558
- serializedParams = params.toString();
12559
- } else {
12560
- var parts = [];
12561
-
12562
- utils.forEach(params, function serialize(val, key) {
12563
- if (val === null || typeof val === 'undefined') {
12564
- return;
12565
- }
12566
-
12567
- if (utils.isArray(val)) {
12568
- key = key + '[]';
12569
- } else {
12570
- val = [val];
12571
- }
12572
-
12573
- utils.forEach(val, function parseValue(v) {
12574
- if (utils.isDate(v)) {
12575
- v = v.toISOString();
12576
- } else if (utils.isObject(v)) {
12577
- v = JSON.stringify(v);
12578
- }
12579
- parts.push(encode(key) + '=' + encode(v));
12580
- });
12581
- });
12582
-
12583
- serializedParams = parts.join('&');
12584
- }
12585
-
12586
- if (serializedParams) {
12587
- var hashmarkIndex = url.indexOf('#');
12588
- if (hashmarkIndex !== -1) {
12589
- url = url.slice(0, hashmarkIndex);
12590
- }
12591
-
12592
- url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;
12593
- }
12594
-
12595
- return url;
12596
- };
12597
-
12598
-
12599
- /***/ }),
12600
-
12601
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/combineURLs.js":
12602
- /*!*******************************************************************************************************!*\
12603
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/combineURLs.js ***!
12604
- \*******************************************************************************************************/
12605
- /***/ ((module) => {
12606
-
12607
- "use strict";
12608
-
12609
-
12610
- /**
12611
- * Creates a new URL by combining the specified URLs
12612
- *
12613
- * @param {string} baseURL The base URL
12614
- * @param {string} relativeURL The relative URL
12615
- * @returns {string} The combined URL
12616
- */
12617
- module.exports = function combineURLs(baseURL, relativeURL) {
12618
- return relativeURL
12619
- ? baseURL.replace(/\/+$/, '') + '/' + relativeURL.replace(/^\/+/, '')
12620
- : baseURL;
12621
- };
12622
-
12623
-
12624
- /***/ }),
12625
-
12626
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/cookies.js":
12627
- /*!***************************************************************************************************!*\
12628
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/cookies.js ***!
12629
- \***************************************************************************************************/
12630
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12631
-
12632
- "use strict";
12633
-
12634
-
12635
- var utils = __webpack_require__(/*! ./../utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
12636
-
12637
- module.exports = (
12638
- utils.isStandardBrowserEnv() ?
12639
-
12640
- // Standard browser envs support document.cookie
12641
- (function standardBrowserEnv() {
12642
- return {
12643
- write: function write(name, value, expires, path, domain, secure) {
12644
- var cookie = [];
12645
- cookie.push(name + '=' + encodeURIComponent(value));
12646
-
12647
- if (utils.isNumber(expires)) {
12648
- cookie.push('expires=' + new Date(expires).toGMTString());
12649
- }
12650
-
12651
- if (utils.isString(path)) {
12652
- cookie.push('path=' + path);
12653
- }
12654
-
12655
- if (utils.isString(domain)) {
12656
- cookie.push('domain=' + domain);
12657
- }
12658
-
12659
- if (secure === true) {
12660
- cookie.push('secure');
12661
- }
12662
-
12663
- document.cookie = cookie.join('; ');
12664
- },
12665
-
12666
- read: function read(name) {
12667
- var match = document.cookie.match(new RegExp('(^|;\\s*)(' + name + ')=([^;]*)'));
12668
- return (match ? decodeURIComponent(match[3]) : null);
12669
- },
12670
-
12671
- remove: function remove(name) {
12672
- this.write(name, '', Date.now() - 86400000);
12673
- }
12674
- };
12675
- })() :
12676
-
12677
- // Non standard browser env (web workers, react-native) lack needed support.
12678
- (function nonStandardBrowserEnv() {
12679
- return {
12680
- write: function write() {},
12681
- read: function read() { return null; },
12682
- remove: function remove() {}
12683
- };
12684
- })()
12685
- );
12686
-
12687
-
12688
- /***/ }),
12689
-
12690
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/isAbsoluteURL.js":
12691
- /*!*********************************************************************************************************!*\
12692
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/isAbsoluteURL.js ***!
12693
- \*********************************************************************************************************/
12694
- /***/ ((module) => {
12695
-
12696
- "use strict";
12697
-
12698
-
12699
- /**
12700
- * Determines whether the specified URL is absolute
12701
- *
12702
- * @param {string} url The URL to test
12703
- * @returns {boolean} True if the specified URL is absolute, otherwise false
12704
- */
12705
- module.exports = function isAbsoluteURL(url) {
12706
- // A URL is considered absolute if it begins with "<scheme>://" or "//" (protocol-relative URL).
12707
- // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed
12708
- // by any combination of letters, digits, plus, period, or hyphen.
12709
- return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url);
12710
- };
12711
-
12712
-
12713
- /***/ }),
12714
-
12715
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/isAxiosError.js":
12716
- /*!********************************************************************************************************!*\
12717
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/isAxiosError.js ***!
12718
- \********************************************************************************************************/
12719
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12720
-
12721
- "use strict";
12722
-
12723
-
12724
- var utils = __webpack_require__(/*! ./../utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
12725
-
12726
- /**
12727
- * Determines whether the payload is an error thrown by Axios
12728
- *
12729
- * @param {*} payload The value to test
12730
- * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false
12731
- */
12732
- module.exports = function isAxiosError(payload) {
12733
- return utils.isObject(payload) && (payload.isAxiosError === true);
12734
- };
12735
-
12736
-
12737
- /***/ }),
12738
-
12739
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/isURLSameOrigin.js":
12740
- /*!***********************************************************************************************************!*\
12741
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/isURLSameOrigin.js ***!
12742
- \***********************************************************************************************************/
12743
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12744
-
12745
- "use strict";
12746
-
12747
-
12748
- var utils = __webpack_require__(/*! ./../utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
12749
-
12750
- module.exports = (
12751
- utils.isStandardBrowserEnv() ?
12752
-
12753
- // Standard browser envs have full support of the APIs needed to test
12754
- // whether the request URL is of the same origin as current location.
12755
- (function standardBrowserEnv() {
12756
- var msie = /(msie|trident)/i.test(navigator.userAgent);
12757
- var urlParsingNode = document.createElement('a');
12758
- var originURL;
12759
-
12760
- /**
12761
- * Parse a URL to discover it's components
12762
- *
12763
- * @param {String} url The URL to be parsed
12764
- * @returns {Object}
12765
- */
12766
- function resolveURL(url) {
12767
- var href = url;
12768
-
12769
- if (msie) {
12770
- // IE needs attribute set twice to normalize properties
12771
- urlParsingNode.setAttribute('href', href);
12772
- href = urlParsingNode.href;
12773
- }
12774
-
12775
- urlParsingNode.setAttribute('href', href);
12776
-
12777
- // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils
12778
- return {
12779
- href: urlParsingNode.href,
12780
- protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',
12781
- host: urlParsingNode.host,
12782
- search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, '') : '',
12783
- hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',
12784
- hostname: urlParsingNode.hostname,
12785
- port: urlParsingNode.port,
12786
- pathname: (urlParsingNode.pathname.charAt(0) === '/') ?
12787
- urlParsingNode.pathname :
12788
- '/' + urlParsingNode.pathname
12789
- };
12790
- }
12791
-
12792
- originURL = resolveURL(window.location.href);
12793
-
12794
- /**
12795
- * Determine if a URL shares the same origin as the current location
12796
- *
12797
- * @param {String} requestURL The URL to test
12798
- * @returns {boolean} True if URL shares the same origin, otherwise false
12799
- */
12800
- return function isURLSameOrigin(requestURL) {
12801
- var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;
12802
- return (parsed.protocol === originURL.protocol &&
12803
- parsed.host === originURL.host);
12804
- };
12805
- })() :
12806
-
12807
- // Non standard browser envs (web workers, react-native) lack needed support.
12808
- (function nonStandardBrowserEnv() {
12809
- return function isURLSameOrigin() {
12810
- return true;
12811
- };
12812
- })()
12813
- );
12814
-
12815
-
12816
- /***/ }),
12817
-
12818
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/normalizeHeaderName.js":
12819
- /*!***************************************************************************************************************!*\
12820
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/normalizeHeaderName.js ***!
12821
- \***************************************************************************************************************/
12822
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12823
-
12824
- "use strict";
12825
-
12826
-
12827
- var utils = __webpack_require__(/*! ../utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
12828
-
12829
- module.exports = function normalizeHeaderName(headers, normalizedName) {
12830
- utils.forEach(headers, function processHeader(value, name) {
12831
- if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {
12832
- headers[normalizedName] = value;
12833
- delete headers[name];
12834
- }
12835
- });
12836
- };
12837
-
12838
-
12839
- /***/ }),
12840
-
12841
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/parseHeaders.js":
12842
- /*!********************************************************************************************************!*\
12843
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/parseHeaders.js ***!
12844
- \********************************************************************************************************/
12845
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12846
-
12847
- "use strict";
12848
-
12849
-
12850
- var utils = __webpack_require__(/*! ./../utils */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js");
12851
-
12852
- // Headers whose duplicates are ignored by node
12853
- // c.f. https://nodejs.org/api/http.html#http_message_headers
12854
- var ignoreDuplicateOf = [
12855
- 'age', 'authorization', 'content-length', 'content-type', 'etag',
12856
- 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',
12857
- 'last-modified', 'location', 'max-forwards', 'proxy-authorization',
12858
- 'referer', 'retry-after', 'user-agent'
12859
- ];
12860
-
12861
- /**
12862
- * Parse headers into an object
12863
- *
12864
- * ```
12865
- * Date: Wed, 27 Aug 2014 08:58:49 GMT
12866
- * Content-Type: application/json
12867
- * Connection: keep-alive
12868
- * Transfer-Encoding: chunked
12869
- * ```
12870
- *
12871
- * @param {String} headers Headers needing to be parsed
12872
- * @returns {Object} Headers parsed into an object
12873
- */
12874
- module.exports = function parseHeaders(headers) {
12875
- var parsed = {};
12876
- var key;
12877
- var val;
12878
- var i;
12879
-
12880
- if (!headers) { return parsed; }
12881
-
12882
- utils.forEach(headers.split('\n'), function parser(line) {
12883
- i = line.indexOf(':');
12884
- key = utils.trim(line.substr(0, i)).toLowerCase();
12885
- val = utils.trim(line.substr(i + 1));
12886
-
12887
- if (key) {
12888
- if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {
12889
- return;
12890
- }
12891
- if (key === 'set-cookie') {
12892
- parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);
12893
- } else {
12894
- parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;
12895
- }
12896
- }
12897
- });
12898
-
12899
- return parsed;
12900
- };
12901
-
12902
-
12903
- /***/ }),
12904
-
12905
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/spread.js":
12906
- /*!**************************************************************************************************!*\
12907
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/spread.js ***!
12908
- \**************************************************************************************************/
12909
- /***/ ((module) => {
12910
-
12911
- "use strict";
12912
-
12913
-
12914
- /**
12915
- * Syntactic sugar for invoking a function and expanding an array for arguments.
12916
- *
12917
- * Common use case would be to use `Function.prototype.apply`.
12918
- *
12919
- * ```js
12920
- * function f(x, y, z) {}
12921
- * var args = [1, 2, 3];
12922
- * f.apply(null, args);
12923
- * ```
12924
- *
12925
- * With `spread` this example can be re-written.
12926
- *
12927
- * ```js
12928
- * spread(function(x, y, z) {})([1, 2, 3]);
12929
- * ```
12930
- *
12931
- * @param {Function} callback
12932
- * @returns {Function}
12933
- */
12934
- module.exports = function spread(callback) {
12935
- return function wrap(arr) {
12936
- return callback.apply(null, arr);
12937
- };
12938
- };
12939
-
12940
-
12941
- /***/ }),
12942
-
12943
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/validator.js":
12944
- /*!*****************************************************************************************************!*\
12945
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/validator.js ***!
12946
- \*****************************************************************************************************/
12947
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
12948
-
12949
- "use strict";
12950
-
12951
-
12952
- var VERSION = (__webpack_require__(/*! ../env/data */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/env/data.js").version);
12953
-
12954
- var validators = {};
12955
-
12956
- // eslint-disable-next-line func-names
12957
- ['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach(function(type, i) {
12958
- validators[type] = function validator(thing) {
12959
- return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;
12960
- };
12961
- });
12962
-
12963
- var deprecatedWarnings = {};
12964
-
12965
- /**
12966
- * Transitional option validator
12967
- * @param {function|boolean?} validator - set to false if the transitional option has been removed
12968
- * @param {string?} version - deprecated version / removed since version
12969
- * @param {string?} message - some message with additional info
12970
- * @returns {function}
12971
- */
12972
- validators.transitional = function transitional(validator, version, message) {
12973
- function formatMessage(opt, desc) {
12974
- return '[Axios v' + VERSION + '] Transitional option \'' + opt + '\'' + desc + (message ? '. ' + message : '');
12975
- }
12976
-
12977
- // eslint-disable-next-line func-names
12978
- return function(value, opt, opts) {
12979
- if (validator === false) {
12980
- throw new Error(formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')));
12981
- }
12982
-
12983
- if (version && !deprecatedWarnings[opt]) {
12984
- deprecatedWarnings[opt] = true;
12985
- // eslint-disable-next-line no-console
12986
- console.warn(
12987
- formatMessage(
12988
- opt,
12989
- ' has been deprecated since v' + version + ' and will be removed in the near future'
12990
- )
12991
- );
12992
- }
12993
-
12994
- return validator ? validator(value, opt, opts) : true;
12995
- };
12996
- };
12997
-
12998
- /**
12999
- * Assert object's properties type
13000
- * @param {object} options
13001
- * @param {object} schema
13002
- * @param {boolean?} allowUnknown
13003
- */
13004
-
13005
- function assertOptions(options, schema, allowUnknown) {
13006
- if (typeof options !== 'object') {
13007
- throw new TypeError('options must be an object');
13008
- }
13009
- var keys = Object.keys(options);
13010
- var i = keys.length;
13011
- while (i-- > 0) {
13012
- var opt = keys[i];
13013
- var validator = schema[opt];
13014
- if (validator) {
13015
- var value = options[opt];
13016
- var result = value === undefined || validator(value, opt, options);
13017
- if (result !== true) {
13018
- throw new TypeError('option ' + opt + ' must be ' + result);
13019
- }
13020
- continue;
13021
- }
13022
- if (allowUnknown !== true) {
13023
- throw Error('Unknown option ' + opt);
13024
- }
13025
- }
13026
- }
13027
-
13028
- module.exports = {
13029
- assertOptions: assertOptions,
13030
- validators: validators
13031
- };
13032
-
13033
-
13034
- /***/ }),
13035
-
13036
- /***/ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js":
13037
- /*!*****************************************************************************************!*\
13038
- !*** ../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/utils.js ***!
13039
- \*****************************************************************************************/
13040
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
13041
-
13042
- "use strict";
13043
-
13044
-
13045
- var bind = __webpack_require__(/*! ./helpers/bind */ "../../common/temp/node_modules/.pnpm/axios@0.25.0/node_modules/axios/lib/helpers/bind.js");
13046
-
13047
- // utils is a library of generic helper functions non-specific to axios
13048
-
13049
- var toString = Object.prototype.toString;
13050
-
13051
- /**
13052
- * Determine if a value is an Array
13053
- *
13054
- * @param {Object} val The value to test
13055
- * @returns {boolean} True if value is an Array, otherwise false
13056
- */
13057
- function isArray(val) {
13058
- return Array.isArray(val);
13059
- }
13060
-
13061
- /**
13062
- * Determine if a value is undefined
13063
- *
13064
- * @param {Object} val The value to test
13065
- * @returns {boolean} True if the value is undefined, otherwise false
13066
- */
13067
- function isUndefined(val) {
13068
- return typeof val === 'undefined';
13069
- }
13070
-
13071
- /**
13072
- * Determine if a value is a Buffer
13073
- *
13074
- * @param {Object} val The value to test
13075
- * @returns {boolean} True if value is a Buffer, otherwise false
13076
- */
13077
- function isBuffer(val) {
13078
- return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)
13079
- && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);
13080
- }
13081
-
13082
- /**
13083
- * Determine if a value is an ArrayBuffer
13084
- *
13085
- * @param {Object} val The value to test
13086
- * @returns {boolean} True if value is an ArrayBuffer, otherwise false
13087
- */
13088
- function isArrayBuffer(val) {
13089
- return toString.call(val) === '[object ArrayBuffer]';
13090
- }
13091
-
13092
- /**
13093
- * Determine if a value is a FormData
13094
- *
13095
- * @param {Object} val The value to test
13096
- * @returns {boolean} True if value is an FormData, otherwise false
13097
- */
13098
- function isFormData(val) {
13099
- return toString.call(val) === '[object FormData]';
13100
- }
13101
-
13102
- /**
13103
- * Determine if a value is a view on an ArrayBuffer
13104
- *
13105
- * @param {Object} val The value to test
13106
- * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false
13107
- */
13108
- function isArrayBufferView(val) {
13109
- var result;
13110
- if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {
13111
- result = ArrayBuffer.isView(val);
13112
- } else {
13113
- result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));
13114
- }
13115
- return result;
13116
- }
13117
-
13118
- /**
13119
- * Determine if a value is a String
13120
- *
13121
- * @param {Object} val The value to test
13122
- * @returns {boolean} True if value is a String, otherwise false
13123
- */
13124
- function isString(val) {
13125
- return typeof val === 'string';
13126
- }
13127
-
13128
- /**
13129
- * Determine if a value is a Number
13130
- *
13131
- * @param {Object} val The value to test
13132
- * @returns {boolean} True if value is a Number, otherwise false
13133
- */
13134
- function isNumber(val) {
13135
- return typeof val === 'number';
13136
- }
13137
-
13138
- /**
13139
- * Determine if a value is an Object
13140
- *
13141
- * @param {Object} val The value to test
13142
- * @returns {boolean} True if value is an Object, otherwise false
13143
- */
13144
- function isObject(val) {
13145
- return val !== null && typeof val === 'object';
13146
- }
13147
-
13148
- /**
13149
- * Determine if a value is a plain Object
13150
- *
13151
- * @param {Object} val The value to test
13152
- * @return {boolean} True if value is a plain Object, otherwise false
13153
- */
13154
- function isPlainObject(val) {
13155
- if (toString.call(val) !== '[object Object]') {
13156
- return false;
13157
- }
13158
-
13159
- var prototype = Object.getPrototypeOf(val);
13160
- return prototype === null || prototype === Object.prototype;
13161
- }
13162
-
13163
- /**
13164
- * Determine if a value is a Date
13165
- *
13166
- * @param {Object} val The value to test
13167
- * @returns {boolean} True if value is a Date, otherwise false
13168
- */
13169
- function isDate(val) {
13170
- return toString.call(val) === '[object Date]';
13171
- }
13172
-
13173
- /**
13174
- * Determine if a value is a File
13175
- *
13176
- * @param {Object} val The value to test
13177
- * @returns {boolean} True if value is a File, otherwise false
13178
- */
13179
- function isFile(val) {
13180
- return toString.call(val) === '[object File]';
13181
- }
13182
-
13183
- /**
13184
- * Determine if a value is a Blob
13185
- *
13186
- * @param {Object} val The value to test
13187
- * @returns {boolean} True if value is a Blob, otherwise false
13188
- */
13189
- function isBlob(val) {
13190
- return toString.call(val) === '[object Blob]';
13191
- }
13192
-
13193
- /**
13194
- * Determine if a value is a Function
13195
- *
13196
- * @param {Object} val The value to test
13197
- * @returns {boolean} True if value is a Function, otherwise false
13198
- */
13199
- function isFunction(val) {
13200
- return toString.call(val) === '[object Function]';
13201
- }
13202
-
13203
- /**
13204
- * Determine if a value is a Stream
13205
- *
13206
- * @param {Object} val The value to test
13207
- * @returns {boolean} True if value is a Stream, otherwise false
13208
- */
13209
- function isStream(val) {
13210
- return isObject(val) && isFunction(val.pipe);
13211
- }
13212
-
13213
- /**
13214
- * Determine if a value is a URLSearchParams object
13215
- *
13216
- * @param {Object} val The value to test
13217
- * @returns {boolean} True if value is a URLSearchParams object, otherwise false
13218
- */
13219
- function isURLSearchParams(val) {
13220
- return toString.call(val) === '[object URLSearchParams]';
13221
- }
13222
-
13223
- /**
13224
- * Trim excess whitespace off the beginning and end of a string
13225
- *
13226
- * @param {String} str The String to trim
13227
- * @returns {String} The String freed of excess whitespace
13228
- */
13229
- function trim(str) {
13230
- return str.trim ? str.trim() : str.replace(/^\s+|\s+$/g, '');
13231
- }
13232
-
13233
- /**
13234
- * Determine if we're running in a standard browser environment
13235
- *
13236
- * This allows axios to run in a web worker, and react-native.
13237
- * Both environments support XMLHttpRequest, but not fully standard globals.
13238
- *
13239
- * web workers:
13240
- * typeof window -> undefined
13241
- * typeof document -> undefined
13242
- *
13243
- * react-native:
13244
- * navigator.product -> 'ReactNative'
13245
- * nativescript
13246
- * navigator.product -> 'NativeScript' or 'NS'
13247
- */
13248
- function isStandardBrowserEnv() {
13249
- if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||
13250
- navigator.product === 'NativeScript' ||
13251
- navigator.product === 'NS')) {
13252
- return false;
13253
- }
13254
- return (
13255
- typeof window !== 'undefined' &&
13256
- typeof document !== 'undefined'
13257
- );
13258
- }
13259
-
13260
- /**
13261
- * Iterate over an Array or an Object invoking a function for each item.
13262
- *
13263
- * If `obj` is an Array callback will be called passing
13264
- * the value, index, and complete array for each item.
13265
- *
13266
- * If 'obj' is an Object callback will be called passing
13267
- * the value, key, and complete object for each property.
13268
- *
13269
- * @param {Object|Array} obj The object to iterate
13270
- * @param {Function} fn The callback to invoke for each item
13271
- */
13272
- function forEach(obj, fn) {
13273
- // Don't bother if no value provided
13274
- if (obj === null || typeof obj === 'undefined') {
13275
- return;
13276
- }
13277
-
13278
- // Force an array if not already something iterable
13279
- if (typeof obj !== 'object') {
13280
- /*eslint no-param-reassign:0*/
13281
- obj = [obj];
13282
- }
13283
-
13284
- if (isArray(obj)) {
13285
- // Iterate over array values
13286
- for (var i = 0, l = obj.length; i < l; i++) {
13287
- fn.call(null, obj[i], i, obj);
13288
- }
13289
- } else {
13290
- // Iterate over object keys
13291
- for (var key in obj) {
13292
- if (Object.prototype.hasOwnProperty.call(obj, key)) {
13293
- fn.call(null, obj[key], key, obj);
13294
- }
13295
- }
13296
- }
13297
- }
13298
-
13299
- /**
13300
- * Accepts varargs expecting each argument to be an object, then
13301
- * immutably merges the properties of each object and returns result.
13302
- *
13303
- * When multiple objects contain the same key the later object in
13304
- * the arguments list will take precedence.
13305
- *
13306
- * Example:
13307
- *
13308
- * ```js
13309
- * var result = merge({foo: 123}, {foo: 456});
13310
- * console.log(result.foo); // outputs 456
13311
- * ```
13312
- *
13313
- * @param {Object} obj1 Object to merge
13314
- * @returns {Object} Result of all merge properties
13315
- */
13316
- function merge(/* obj1, obj2, obj3, ... */) {
13317
- var result = {};
13318
- function assignValue(val, key) {
13319
- if (isPlainObject(result[key]) && isPlainObject(val)) {
13320
- result[key] = merge(result[key], val);
13321
- } else if (isPlainObject(val)) {
13322
- result[key] = merge({}, val);
13323
- } else if (isArray(val)) {
13324
- result[key] = val.slice();
13325
- } else {
13326
- result[key] = val;
13327
- }
13328
- }
13329
-
13330
- for (var i = 0, l = arguments.length; i < l; i++) {
13331
- forEach(arguments[i], assignValue);
13332
- }
13333
- return result;
13334
- }
13335
-
13336
- /**
13337
- * Extends object a by mutably adding to it the properties of object b.
13338
- *
13339
- * @param {Object} a The object to be extended
13340
- * @param {Object} b The object to copy properties from
13341
- * @param {Object} thisArg The object to bind function to
13342
- * @return {Object} The resulting value of object a
13343
- */
13344
- function extend(a, b, thisArg) {
13345
- forEach(b, function assignValue(val, key) {
13346
- if (thisArg && typeof val === 'function') {
13347
- a[key] = bind(val, thisArg);
13348
- } else {
13349
- a[key] = val;
13350
- }
13351
- });
13352
- return a;
13353
- }
13354
-
13355
- /**
13356
- * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)
13357
- *
13358
- * @param {string} content with BOM
13359
- * @return {string} content value without BOM
13360
- */
13361
- function stripBOM(content) {
13362
- if (content.charCodeAt(0) === 0xFEFF) {
13363
- content = content.slice(1);
13364
- }
13365
- return content;
13366
- }
13367
-
13368
- module.exports = {
13369
- isArray: isArray,
13370
- isArrayBuffer: isArrayBuffer,
13371
- isBuffer: isBuffer,
13372
- isFormData: isFormData,
13373
- isArrayBufferView: isArrayBufferView,
13374
- isString: isString,
13375
- isNumber: isNumber,
13376
- isObject: isObject,
13377
- isPlainObject: isPlainObject,
13378
- isUndefined: isUndefined,
13379
- isDate: isDate,
13380
- isFile: isFile,
13381
- isBlob: isBlob,
13382
- isFunction: isFunction,
13383
- isStream: isStream,
13384
- isURLSearchParams: isURLSearchParams,
13385
- isStandardBrowserEnv: isStandardBrowserEnv,
13386
- forEach: forEach,
13387
- merge: merge,
13388
- extend: extend,
13389
- trim: trim,
13390
- stripBOM: stripBOM
13391
- };
13392
-
13393
-
13394
11345
  /***/ }),
13395
11346
 
13396
11347
  /***/ "../../common/temp/node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js":
@@ -43296,6 +41247,7 @@ var QueryRowFormat;
43296
41247
  QueryRowFormat[QueryRowFormat["UseECSqlPropertyIndexes"] = 1] = "UseECSqlPropertyIndexes";
43297
41248
  /** Each row is an object in which each non-null column value can be accessed by a [remapped property name]($docs/learning/ECSqlRowFormat.md).
43298
41249
  * This format is backwards-compatible with the format produced by iTwin.js 2.x. Null values are omitted.
41250
+ * @depreacted in 4.11. Switch to UseECSqlPropertyIndexes for best performance, and UseECSqlPropertyNames if you want a JSON object as the result.
43299
41251
  */
43300
41252
  QueryRowFormat[QueryRowFormat["UseJsPropertyNames"] = 2] = "UseJsPropertyNames";
43301
41253
  })(QueryRowFormat || (QueryRowFormat = {}));
@@ -43365,8 +41317,10 @@ class QueryOptionsBuilder {
43365
41317
  * If set ECClassId, SourceECClassId and TargetECClassId system properties will return qualified name of class instead of a @typedef Id64String.
43366
41318
  * @param val A boolean value.
43367
41319
  * @returns @type QueryOptionsBuilder for fluent interface.
41320
+ * @deprecated in 4.11 Use ecsql function ec_classname to get class name instead.
43368
41321
  */
43369
41322
  setConvertClassIdsToNames(val) {
41323
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
43370
41324
  this._options.convertClassIdsToClassNames = val;
43371
41325
  return this;
43372
41326
  }
@@ -43398,6 +41352,16 @@ class QueryOptionsBuilder {
43398
41352
  this._options.delay = val;
43399
41353
  return this;
43400
41354
  }
41355
+ /**
41356
+ * @internal
41357
+ * Use for testing internal logic. This parameter is ignored by default unless concurrent query is configure to not ignore it.
41358
+ * @param val Testing arguments.
41359
+ * @returns @type QueryOptionsBuilder for fluent interface.
41360
+ */
41361
+ setTestingArgs(val) {
41362
+ this._options.testingArgs = val;
41363
+ return this;
41364
+ }
43401
41365
  }
43402
41366
  /** @beta */
43403
41367
  class BlobOptionsBuilder {
@@ -43807,6 +41771,7 @@ var DbResponseStatus;
43807
41771
  DbResponseStatus[DbResponseStatus["Partial"] = 3] = "Partial";
43808
41772
  DbResponseStatus[DbResponseStatus["Timeout"] = 4] = "Timeout";
43809
41773
  DbResponseStatus[DbResponseStatus["QueueFull"] = 5] = "QueueFull";
41774
+ DbResponseStatus[DbResponseStatus["ShuttingDown"] = 6] = "ShuttingDown";
43810
41775
  DbResponseStatus[DbResponseStatus["Error"] = 100] = "Error";
43811
41776
  DbResponseStatus[DbResponseStatus["Error_ECSql_PreparedFailed"] = 101] = "Error_ECSql_PreparedFailed";
43812
41777
  DbResponseStatus[DbResponseStatus["Error_ECSql_StepFailed"] = 102] = "Error_ECSql_StepFailed";
@@ -45738,7 +43703,7 @@ class ECSqlReader {
45738
43703
  this._props = new PropertyMetaDataMap([]);
45739
43704
  this._param = new _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.QueryBinder().serialize();
45740
43705
  this._lockArgs = false;
45741
- this._stats = { backendCpuTime: 0, backendTotalTime: 0, backendMemUsed: 0, backendRowsReturned: 0, totalTime: 0, retryCount: 0 };
43706
+ this._stats = { backendCpuTime: 0, backendTotalTime: 0, backendMemUsed: 0, backendRowsReturned: 0, totalTime: 0, retryCount: 0, prepareTime: 0 };
45742
43707
  this._options = new _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.QueryOptionsBuilder().getOptions();
45743
43708
  this._rowProxy = new Proxy(this, {
45744
43709
  get: (target, key) => {
@@ -45918,11 +43883,12 @@ class ECSqlReader {
45918
43883
  * @internal
45919
43884
  */
45920
43885
  async runWithRetry(request) {
45921
- const needRetry = (rs) => (rs.status === _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.DbResponseStatus.Partial || rs.status === _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.DbResponseStatus.QueueFull || rs.status === _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.DbResponseStatus.Timeout) && (rs.data === undefined || rs.data.length === 0);
43886
+ const needRetry = (rs) => (rs.status === _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.DbResponseStatus.Partial || rs.status === _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.DbResponseStatus.QueueFull || rs.status === _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.DbResponseStatus.Timeout || rs.status === _ConcurrentQuery__WEBPACK_IMPORTED_MODULE_1__.DbResponseStatus.ShuttingDown) && (rs.data === undefined || rs.data.length === 0);
45922
43887
  const updateStats = (rs) => {
45923
43888
  this._stats.backendCpuTime += rs.stats.cpuTime;
45924
43889
  this._stats.backendTotalTime += rs.stats.totalTime;
45925
43890
  this._stats.backendMemUsed += rs.stats.memUsed;
43891
+ this._stats.prepareTime += rs.stats.prepareTime;
45926
43892
  this._stats.backendRowsReturned += (rs.data === undefined) ? 0 : rs.data.length;
45927
43893
  };
45928
43894
  const execQuery = async (req) => {
@@ -46374,7 +44340,7 @@ class RelatedElement {
46374
44340
  if ((typeof json === "object") && ("id" in json)) {
46375
44341
  const r = RelatedElement.fromJSON(json);
46376
44342
  if (r === undefined)
46377
- throw new _IModelError__WEBPACK_IMPORTED_MODULE_1__.IModelError(_IModelError__WEBPACK_IMPORTED_MODULE_1__.IModelStatus.BadArg, "Problem parsing Id64 from json");
44343
+ throw new _IModelError__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.BadArg, "Problem parsing Id64 from json");
46378
44344
  return r.id;
46379
44345
  }
46380
44346
  return _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.fromJSON(json);
@@ -55046,7 +53012,7 @@ async function handleNotFound(request, status, dispatch) {
55046
53012
  let resubmitted = false;
55047
53013
  _rpc_core_RpcRequest__WEBPACK_IMPORTED_MODULE_2__.RpcRequest.notFoundHandlers.raiseEvent(request, status.responseValue, async () => {
55048
53014
  if (resubmitted) {
55049
- throw new _IModelError__WEBPACK_IMPORTED_MODULE_5__.IModelError(_IModelError__WEBPACK_IMPORTED_MODULE_5__.BentleyStatus.ERROR, `Already resubmitted using this handler.`);
53015
+ throw new _IModelError__WEBPACK_IMPORTED_MODULE_5__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_7__.BentleyStatus.ERROR, `Already resubmitted using this handler.`);
55050
53016
  }
55051
53017
  resubmitted = true;
55052
53018
  try {
@@ -69050,7 +67016,7 @@ class IModelReadRpcInterface extends _RpcInterface__WEBPACK_IMPORTED_MODULE_0__.
69050
67016
  async cancelSnap(_iModelToken, _sessionId) { return this.forward(arguments); }
69051
67017
  async getGeometryContainment(_iModelToken, _props) { return this.forward(arguments); }
69052
67018
  async getMassProperties(_iModelToken, _props) { return this.forward(arguments); }
69053
- async getMassPropertiesPerCandidate(_iModelToken, _props) { return this.forward(arguments); }
67019
+ async getMassPropertiesPerCandidate(_iModelToken, _props) { return this.forward(arguments); } // eslint-disable-line @typescript-eslint/no-deprecated
69054
67020
  async getIModelCoordinatesFromGeoCoordinates(_iModelToken, _props) { return this.forward(arguments); }
69055
67021
  async getGeoCoordinatesFromIModelCoordinates(_iModelToken, _props) { return this.forward(arguments); }
69056
67022
  async getGeometrySummary(_iModelToken, _props) { return this.forward(arguments); }
@@ -70166,7 +68132,8 @@ __webpack_require__.r(__webpack_exports__);
70166
68132
  /* harmony export */ "RpcMarshaling": () => (/* binding */ RpcMarshaling),
70167
68133
  /* harmony export */ "RpcSerializedValue": () => (/* binding */ RpcSerializedValue)
70168
68134
  /* harmony export */ });
70169
- /* harmony import */ var _IModelError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../IModelError */ "../../core/common/lib/esm/IModelError.js");
68135
+ /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
68136
+ /* harmony import */ var _IModelError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../IModelError */ "../../core/common/lib/esm/IModelError.js");
70170
68137
  /*---------------------------------------------------------------------------------------------
70171
68138
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
70172
68139
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -70175,6 +68142,7 @@ __webpack_require__.r(__webpack_exports__);
70175
68142
  * @module RpcInterface
70176
68143
  */
70177
68144
 
68145
+
70178
68146
  // cspell:ignore unmarshal
70179
68147
  /* eslint-disable @typescript-eslint/no-deprecated */
70180
68148
  function isBuffer(val) {
@@ -70226,7 +68194,7 @@ class RpcMarshaling {
70226
68194
  }
70227
68195
  catch (error) {
70228
68196
  if (error instanceof SyntaxError)
70229
- throw new _IModelError__WEBPACK_IMPORTED_MODULE_0__.IModelError(_IModelError__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.ERROR, `Invalid JSON: "${value.objects}"`);
68197
+ throw new _IModelError__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.ERROR, `Invalid JSON: "${value.objects}"`);
70230
68198
  throw error;
70231
68199
  }
70232
68200
  marshalingTarget = undefined;
@@ -70286,7 +68254,7 @@ class WireFormat {
70286
68254
  }
70287
68255
  static unmarshalBinary(value) {
70288
68256
  if (value.index >= marshalingTarget.data.length) {
70289
- throw new _IModelError__WEBPACK_IMPORTED_MODULE_0__.IModelError(_IModelError__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.ERROR, `Cannot unmarshal missing binary value.`);
68257
+ throw new _IModelError__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.ERROR, `Cannot unmarshal missing binary value.`);
70290
68258
  }
70291
68259
  if (value.chunks === 0) {
70292
68260
  return new Uint8Array();
@@ -72041,7 +70009,8 @@ __webpack_require__.r(__webpack_exports__);
72041
70009
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
72042
70010
  /* harmony export */ "RpcMultipart": () => (/* binding */ RpcMultipart)
72043
70011
  /* harmony export */ });
72044
- /* harmony import */ var _IModelError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../IModelError */ "../../core/common/lib/esm/IModelError.js");
70012
+ /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
70013
+ /* harmony import */ var _IModelError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../IModelError */ "../../core/common/lib/esm/IModelError.js");
72045
70014
  /*---------------------------------------------------------------------------------------------
72046
70015
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
72047
70016
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -72050,6 +70019,7 @@ __webpack_require__.r(__webpack_exports__);
72050
70019
  * @module RpcInterface
72051
70020
  */
72052
70021
 
70022
+
72053
70023
  /** Support for transporting RPC values using the HTTP multipart content type.
72054
70024
  * @internal
72055
70025
  */
@@ -72079,10 +70049,10 @@ class RpcMultipart {
72079
70049
  /** @internal */
72080
70050
  RpcMultipart.platform = {
72081
70051
  createStream(_value) {
72082
- throw new _IModelError__WEBPACK_IMPORTED_MODULE_0__.IModelError(_IModelError__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.ERROR, "Not bound.");
70052
+ throw new _IModelError__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.ERROR, "Not bound.");
72083
70053
  },
72084
70054
  async parseRequest(_req) {
72085
- throw new _IModelError__WEBPACK_IMPORTED_MODULE_0__.IModelError(_IModelError__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.ERROR, "Not bound.");
70055
+ throw new _IModelError__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.ERROR, "Not bound.");
72086
70056
  },
72087
70057
  appendToForm(i, form, value) {
72088
70058
  form.append(`data-${i}`, new Blob([value.data[i]], { type: "application/octet-stream" }));
@@ -85079,10 +83049,18 @@ class Flags {
85079
83049
  this.animateRotation = false;
85080
83050
  }
85081
83051
  }
85082
- /** @internal */
83052
+ /** AccuDraw value round off settings. Allows dynamic distance and angle values to be rounded to the nearest increment of the specified units value(s).
83053
+ * @public
83054
+ */
85083
83055
  class RoundOff {
85084
83056
  constructor() {
83057
+ /** Whether rounding is to be applied to the corresponding dynamic distance or angle value.
83058
+ * @note To be considered active, units must also specify at least one increment value.
83059
+ */
85085
83060
  this.active = false;
83061
+ /** Round off increment value(s), meters for distance round off, and radians for angle round off.
83062
+ * @note When multiple values are specified, rounding is based on smallest discernable value at current view zoom.
83063
+ */
85086
83064
  this.units = new Set();
85087
83065
  }
85088
83066
  }
@@ -85249,6 +83227,10 @@ class AccuDraw {
85249
83227
  if (wasActive !== this.isActive)
85250
83228
  this.onCompassDisplayChange(wasActive ? "hide" : "show");
85251
83229
  }
83230
+ /** Get distance round off settings */
83231
+ get distanceRoundOff() { return this._distanceRoundOff; }
83232
+ /** Get angle round off settings */
83233
+ get angleRoundOff() { return this._angleRoundOff; }
85252
83234
  /** @internal */
85253
83235
  onInitialized() { this.enableForSession(); }
85254
83236
  /** @internal */
@@ -85292,6 +83274,15 @@ class AccuDraw {
85292
83274
  if (CurrentState.Inactive === this.currentState)
85293
83275
  this.currentState = CurrentState.Deactivated;
85294
83276
  }
83277
+ /** Whether to show Z input field in 3d. Sub-classes can override to restrict AccuDraw to 2d input when working in overlays where
83278
+ * depth is not important.
83279
+ * @note Intended to be used in conjunction with ViewState.allow3dManipulations returning false to also disable 3d rotation and
83280
+ * ToolAdmin.acsPlaneSnapLock set to true for projecting snapped points to the view's ACS plane.
83281
+ * @see [[ViewState.allow3dManipulations]][[ToolAdmin.acsPlaneSnapLock]]
83282
+ */
83283
+ is3dCompass(viewport) {
83284
+ return viewport.view.is3d();
83285
+ }
85295
83286
  /** Change current compass input mode to either polar or rectangular */
85296
83287
  setCompassMode(mode) {
85297
83288
  if (mode === this.compassMode)
@@ -85448,7 +83439,7 @@ class AccuDraw {
85448
83439
  isZLocked(vp) {
85449
83440
  if (this._fieldLocked[ItemField.Z_Item])
85450
83441
  return true;
85451
- if (vp.isSnapAdjustmentRequired) // && TentativeOrAccuSnap.isHot())
83442
+ if (vp.isSnapAdjustmentRequired && _AccuSnap__WEBPACK_IMPORTED_MODULE_3__.TentativeOrAccuSnap.isHot)
85452
83443
  return true;
85453
83444
  return false;
85454
83445
  }
@@ -85878,11 +83869,17 @@ class AccuDraw {
85878
83869
  stringFromAngle(angle) {
85879
83870
  if (this.isBearingMode && this.flags.bearingFixToPlane2D) {
85880
83871
  const point = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__.Vector3d.create(this.axes.x.x, this.axes.x.y, 0.0);
83872
+ const matrix = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__.Matrix3d.createRows(this.axes.x, this.axes.y, this.axes.z);
83873
+ if (matrix.determinant() < 0)
83874
+ angle = -angle; // Account for left handed rotations...
85881
83875
  point.normalizeInPlace();
85882
83876
  let adjustment = Math.acos(point.x);
85883
83877
  if (point.y < 0.0)
85884
83878
  adjustment = -adjustment;
85885
- angle += adjustment;
83879
+ angle += adjustment; // This is the angle measured from design x...
83880
+ angle = (Math.PI / 2) - angle; // Account for bearing direction convention...
83881
+ if (angle < 0)
83882
+ angle = (Math.PI * 2) + angle; // Negative bearings aren't valid?
85886
83883
  }
85887
83884
  const formatterSpec = this.getAngleFormatter();
85888
83885
  let formattedValue = angle.toString();
@@ -85922,7 +83919,10 @@ class AccuDraw {
85922
83919
  case ItemField.ANGLE_Item:
85923
83920
  parseResult = this.stringToAngle(input);
85924
83921
  if (_itwin_core_quantity__WEBPACK_IMPORTED_MODULE_13__.Parser.isParsedQuantity(parseResult)) {
85925
- this._angle = parseResult.value;
83922
+ if (this.isBearingMode && this.flags.bearingFixToPlane2D)
83923
+ this._angle = (Math.PI / 2) - parseResult.value;
83924
+ else
83925
+ this._angle = parseResult.value;
85926
83926
  break;
85927
83927
  }
85928
83928
  return _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.ERROR;
@@ -86008,11 +84008,18 @@ class AccuDraw {
86008
84008
  inVec.crossProduct(yVec, normalVec);
86009
84009
  return true;
86010
84010
  }
84011
+ _acosWithLimitCheck(value) {
84012
+ if (value >= 1.0)
84013
+ return 0.0;
84014
+ if (value <= -1.0)
84015
+ return Math.PI;
84016
+ return Math.acos(value);
84017
+ }
86011
84018
  handleDegeneratePolarCase() {
86012
84019
  if (!(this.locked & LockedStates.DIST_BM))
86013
84020
  this._distance = 0.0;
86014
84021
  if (this.locked & LockedStates.VEC_BM) {
86015
- this._angle = Math.acos(this.vector.dotProduct(this.axes.x));
84022
+ this._angle = this._acosWithLimitCheck(this.vector.dotProduct(this.axes.x));
86016
84023
  }
86017
84024
  else if (this.locked & LockedStates.Y_BM) {
86018
84025
  this.vector.setFrom(this.axes.y);
@@ -86026,7 +84033,7 @@ class AccuDraw {
86026
84033
  }
86027
84034
  else {
86028
84035
  // use last good vector
86029
- this._angle = Math.acos(this.vector.dotProduct(this.axes.x));
84036
+ this._angle = this._acosWithLimitCheck(this.vector.dotProduct(this.axes.x));
86030
84037
  }
86031
84038
  this.origin.plusScaled(this.vector, this._distance, this.point);
86032
84039
  }
@@ -96375,7 +94382,7 @@ class IModelApp {
96375
94382
  else {
96376
94383
  key = { scope: "BentleyStatus", val: _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_2__.BentleyStatus[status] };
96377
94384
  if (!key.val)
96378
- key = { scope: "IModelStatus", val: _itwin_core_common__WEBPACK_IMPORTED_MODULE_3__.IModelStatus[status] };
94385
+ key = { scope: "IModelStatus", val: _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_2__.IModelStatus[status] };
96379
94386
  if (!key.val)
96380
94387
  key = { scope: "DbResult", val: _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_2__.DbResult[status] };
96381
94388
  if (!key.val)
@@ -96676,7 +94683,7 @@ class IModelConnection extends _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.I
96676
94683
  for await (const row of this.createQueryReader(`select count(*) from (${ecsql})`, params)) {
96677
94684
  return row[0];
96678
94685
  }
96679
- throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.DbResult.BE_SQLITE_ERROR, "Failed to get row count");
94686
+ throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.DbResult.BE_SQLITE_ERROR, "Failed to get row count");
96680
94687
  }
96681
94688
  /** Cancel any previous query with same token and run execute the current specified query.
96682
94689
  * The result of the query is async iterator over the rows. The iterator will get next page automatically once rows in current page has been read.
@@ -96751,13 +94758,13 @@ class IModelConnection extends _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.I
96751
94758
  }
96752
94759
  return undefined;
96753
94760
  }
96754
- /** Request element mass properties from the backend.
96755
- * @note For better performance use [[getMassPropertiesPerCandidate]] when called from a loop with identical operations and a single candidate per iteration.
96756
- */
94761
+ /** Request element mass properties from the backend. */
96757
94762
  async getMassProperties(requestProps) {
96758
94763
  return _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelReadRpcInterface.getClientForRouting(this.routingContext.token).getMassProperties(this.getRpcProps(), requestProps);
96759
94764
  }
96760
- /** Request mass properties for multiple elements from the backend. */
94765
+ /** Request mass properties for multiple elements from the backend.
94766
+ * @deprecated in 4.11. Use [[IModelConnection.getMassProperties]].
94767
+ */
96761
94768
  async getMassPropertiesPerCandidate(requestProps) {
96762
94769
  return _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelReadRpcInterface.getClientForRouting(this.routingContext.token).getMassPropertiesPerCandidate(this.getRpcProps(), requestProps);
96763
94770
  }
@@ -97121,7 +95128,7 @@ class SnapshotConnection extends IModelConnection {
97121
95128
  async getDictionaryModel() {
97122
95129
  const res = await this._iModel.models.queryProps({ from: "bis.DictionaryModel", wantPrivate: true });
97123
95130
  if (res.length !== 1 || res[0].id === undefined)
97124
- throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelStatus.BadModel, "bis.DictionaryModel");
95131
+ throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.BadModel, "bis.DictionaryModel");
97125
95132
  return res[0].id;
97126
95133
  }
97127
95134
  /** Get a batch of [[ModelProps]] given a list of Model ids. */
@@ -97381,11 +95388,11 @@ class SnapshotConnection extends IModelConnection {
97381
95388
  */
97382
95389
  async getById(codeSpecId) {
97383
95390
  if (!_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.isValid(codeSpecId))
97384
- throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelStatus.InvalidId, "Invalid codeSpecId", () => ({ codeSpecId }));
95391
+ throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.InvalidId, "Invalid codeSpecId", () => ({ codeSpecId }));
97385
95392
  await this._loadAllCodeSpecs(); // ensure all codeSpecs have been downloaded
97386
95393
  const found = this._loaded.find((codeSpec) => codeSpec.id === codeSpecId);
97387
95394
  if (!found)
97388
- throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelStatus.NotFound, "CodeSpec not found");
95395
+ throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.NotFound, "CodeSpec not found");
97389
95396
  return found;
97390
95397
  }
97391
95398
  /** Look up a CodeSpec by name.
@@ -97397,7 +95404,7 @@ class SnapshotConnection extends IModelConnection {
97397
95404
  await this._loadAllCodeSpecs(); // ensure all codeSpecs have been downloaded
97398
95405
  const found = this._loaded.find((codeSpec) => codeSpec.name === name);
97399
95406
  if (!found)
97400
- throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelStatus.NotFound, "CodeSpec not found");
95407
+ throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.NotFound, "CodeSpec not found");
97401
95408
  return found;
97402
95409
  }
97403
95410
  }
@@ -97491,7 +95498,7 @@ class SnapshotConnection extends IModelConnection {
97491
95498
  const className = viewProps.viewDefinitionProps.classFullName;
97492
95499
  const ctor = await this._iModel.findClassFor(className, undefined);
97493
95500
  if (undefined === ctor)
97494
- throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelStatus.WrongClass, "Invalid ViewState class", () => viewProps);
95501
+ throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.WrongClass, "Invalid ViewState class", () => viewProps);
97495
95502
  const viewState = ctor.createFromProps(viewProps, this._iModel);
97496
95503
  await viewState.load(); // loads models for ModelSelector
97497
95504
  return viewState;
@@ -97547,7 +95554,8 @@ __webpack_require__.r(__webpack_exports__);
97547
95554
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
97548
95555
  /* harmony export */ "IModelRoutingContext": () => (/* binding */ IModelRoutingContext)
97549
95556
  /* harmony export */ });
97550
- /* harmony import */ var _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
95557
+ /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
95558
+ /* harmony import */ var _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
97551
95559
  /*---------------------------------------------------------------------------------------------
97552
95560
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
97553
95561
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -97556,6 +95564,7 @@ __webpack_require__.r(__webpack_exports__);
97556
95564
  * @module IModelConnection
97557
95565
  */
97558
95566
 
95567
+
97559
95568
  /**
97560
95569
  * Controls the RPC routing for an iModel connection.
97561
95570
  * @public
@@ -97573,7 +95582,7 @@ class IModelRoutingContext {
97573
95582
  }
97574
95583
  route(handler) {
97575
95584
  if (IModelRoutingContext.current) {
97576
- throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.IModelError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.ERROR, "Concurrent use is not supported.");
95585
+ throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.ERROR, "Concurrent use is not supported.");
97577
95586
  }
97578
95587
  IModelRoutingContext._current = this;
97579
95588
  const value = handler();
@@ -97581,7 +95590,7 @@ class IModelRoutingContext {
97581
95590
  return value;
97582
95591
  }
97583
95592
  }
97584
- IModelRoutingContext.default = new IModelRoutingContext(_itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.RpcRoutingToken["default"]);
95593
+ IModelRoutingContext.default = new IModelRoutingContext(_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.RpcRoutingToken["default"]);
97585
95594
 
97586
95595
 
97587
95596
  /***/ }),
@@ -97766,9 +95775,10 @@ __webpack_require__.r(__webpack_exports__);
97766
95775
  /* harmony export */ "IpcApp": () => (/* binding */ IpcApp),
97767
95776
  /* harmony export */ "NotificationHandler": () => (/* binding */ NotificationHandler)
97768
95777
  /* harmony export */ });
97769
- /* harmony import */ var _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
97770
- /* harmony import */ var _IModelApp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./IModelApp */ "../../core/frontend/lib/esm/IModelApp.js");
97771
- /* harmony import */ var _common_internal_Symbols__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./common/internal/Symbols */ "../../core/frontend/lib/esm/common/internal/Symbols.js");
95778
+ /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
95779
+ /* harmony import */ var _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
95780
+ /* harmony import */ var _IModelApp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./IModelApp */ "../../core/frontend/lib/esm/IModelApp.js");
95781
+ /* harmony import */ var _common_internal_Symbols__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./common/internal/Symbols */ "../../core/frontend/lib/esm/common/internal/Symbols.js");
97772
95782
  /*---------------------------------------------------------------------------------------------
97773
95783
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
97774
95784
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -97779,6 +95789,7 @@ __webpack_require__.r(__webpack_exports__);
97779
95789
 
97780
95790
 
97781
95791
 
95792
+
97782
95793
  /**
97783
95794
  * The frontend of apps with a dedicated backend that can use [Ipc]($docs/learning/IpcInterface.md).
97784
95795
  * @public
@@ -97797,7 +95808,7 @@ class IpcApp {
97797
95808
  * @note Ipc is only supported if [[isValid]] is true.
97798
95809
  */
97799
95810
  static addListener(channel, handler) {
97800
- return this.ipc.addListener((0,_itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.iTwinChannel)(channel), handler);
95811
+ return this.ipc.addListener((0,_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.iTwinChannel)(channel), handler);
97801
95812
  }
97802
95813
  /**
97803
95814
  * Remove a previously registered listener
@@ -97805,7 +95816,7 @@ class IpcApp {
97805
95816
  * @param listener The function passed to [[addListener]]
97806
95817
  */
97807
95818
  static removeListener(channel, listener) {
97808
- this.ipc.removeListener((0,_itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.iTwinChannel)(channel), listener);
95819
+ this.ipc.removeListener((0,_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.iTwinChannel)(channel), listener);
97809
95820
  }
97810
95821
  /**
97811
95822
  * Send a message to the backend via `channel` and expect a result asynchronously. The handler must be established on the backend via [[BackendIpc.handle]]
@@ -97818,7 +95829,7 @@ class IpcApp {
97818
95829
  * primitive types and `ArrayBuffers` are allowed.
97819
95830
  */
97820
95831
  static async invoke(channel, ...args) {
97821
- return this.ipc.invoke((0,_itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.iTwinChannel)(channel), ...args);
95832
+ return this.ipc.invoke((0,_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.iTwinChannel)(channel), ...args);
97822
95833
  }
97823
95834
  /**
97824
95835
  * Send a message over the socket.
@@ -97828,7 +95839,7 @@ class IpcApp {
97828
95839
  * primitive types and `ArrayBuffers` are allowed.
97829
95840
  */
97830
95841
  static send(channel, ...data) {
97831
- return this.ipc.send((0,_itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.iTwinChannel)(channel), ...data);
95842
+ return this.ipc.send((0,_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.iTwinChannel)(channel), ...data);
97832
95843
  }
97833
95844
  /**
97834
95845
  * Call a method on the backend through an Ipc channel.
@@ -97841,7 +95852,7 @@ class IpcApp {
97841
95852
  * @note Ipc is only supported if [[isValid]] is true.
97842
95853
  * @internal Use [[makeIpcProxy]] for a type-safe interface.
97843
95854
  */
97844
- static async [_common_internal_Symbols__WEBPACK_IMPORTED_MODULE_2__._callIpcChannel](channelName, methodName, ...args) {
95855
+ static async [_common_internal_Symbols__WEBPACK_IMPORTED_MODULE_3__._callIpcChannel](channelName, methodName, ...args) {
97845
95856
  const retVal = (await this.invoke(channelName, methodName, ...args));
97846
95857
  if (undefined !== retVal.iTwinError) {
97847
95858
  const error = new Error();
@@ -97851,7 +95862,7 @@ class IpcApp {
97851
95862
  throw error;
97852
95863
  }
97853
95864
  else if (undefined !== retVal.error) {
97854
- const err = new _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.BackendError(retVal.error.errorNumber, retVal.error.name, retVal.error.message);
95865
+ const err = new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.BackendError(retVal.error.errorNumber, retVal.error.name, retVal.error.message);
97855
95866
  err.stack = retVal.error.stack;
97856
95867
  throw err;
97857
95868
  }
@@ -97861,7 +95872,7 @@ class IpcApp {
97861
95872
  * @deprecated in 4.8. Use [[makeIpcProxy]] for a type-safe interface.
97862
95873
  */
97863
95874
  static async callIpcChannel(channelName, methodName, ...args) {
97864
- return this[_common_internal_Symbols__WEBPACK_IMPORTED_MODULE_2__._callIpcChannel](channelName, methodName, ...args);
95875
+ return this[_common_internal_Symbols__WEBPACK_IMPORTED_MODULE_3__._callIpcChannel](channelName, methodName, ...args);
97865
95876
  }
97866
95877
  /** Create a type safe Proxy object to make IPC calls to a registered backend interface.
97867
95878
  * @param channelName the channel registered by the backend handler.
@@ -97869,7 +95880,7 @@ class IpcApp {
97869
95880
  static makeIpcProxy(channelName) {
97870
95881
  return new Proxy({}, {
97871
95882
  get(_target, methodName) {
97872
- return async (...args) => IpcApp[_common_internal_Symbols__WEBPACK_IMPORTED_MODULE_2__._callIpcChannel](channelName, methodName, ...args);
95883
+ return async (...args) => IpcApp[_common_internal_Symbols__WEBPACK_IMPORTED_MODULE_3__._callIpcChannel](channelName, methodName, ...args);
97873
95884
  },
97874
95885
  });
97875
95886
  }
@@ -97880,29 +95891,29 @@ class IpcApp {
97880
95891
  static makeIpcFunctionProxy(channelName, functionName) {
97881
95892
  return new Proxy({}, {
97882
95893
  get(_target, methodName) {
97883
- return async (...args) => IpcApp[_common_internal_Symbols__WEBPACK_IMPORTED_MODULE_2__._callIpcChannel](channelName, functionName, methodName, ...args);
95894
+ return async (...args) => IpcApp[_common_internal_Symbols__WEBPACK_IMPORTED_MODULE_3__._callIpcChannel](channelName, functionName, methodName, ...args);
97884
95895
  },
97885
95896
  });
97886
95897
  }
97887
95898
  /** @deprecated in 3.x. use [[appFunctionIpc]] */
97888
95899
  static async callIpcHost(methodName, ...args) {
97889
- return this[_common_internal_Symbols__WEBPACK_IMPORTED_MODULE_2__._callIpcChannel](_itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.ipcAppChannels.functions, methodName, ...args);
95900
+ return this[_common_internal_Symbols__WEBPACK_IMPORTED_MODULE_3__._callIpcChannel](_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.ipcAppChannels.functions, methodName, ...args);
97890
95901
  }
97891
95902
  /** start an IpcApp.
97892
95903
  * @note this should not be called directly. It is called by NativeApp.startup */
97893
95904
  static async startup(ipc, opts) {
97894
95905
  this._ipc = ipc;
97895
95906
  IpcAppNotifyHandler.register(); // receives notifications from backend
97896
- await _IModelApp__WEBPACK_IMPORTED_MODULE_1__.IModelApp.startup(opts?.iModelApp);
95907
+ await _IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.startup(opts?.iModelApp);
97897
95908
  }
97898
95909
  /** @internal */
97899
95910
  static async shutdown() {
97900
95911
  this._ipc = undefined;
97901
- await _IModelApp__WEBPACK_IMPORTED_MODULE_1__.IModelApp.shutdown();
95912
+ await _IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.shutdown();
97902
95913
  }
97903
95914
  }
97904
95915
  /** A Proxy to call one of the [IpcAppFunctions]($common) functions via IPC. */
97905
- IpcApp.appFunctionIpc = IpcApp.makeIpcProxy(_itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.ipcAppChannels.functions);
95916
+ IpcApp.appFunctionIpc = IpcApp.makeIpcProxy(_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.ipcAppChannels.functions);
97906
95917
  /**
97907
95918
  * Base class for all implementations of an Ipc notification response interface. This class is implemented on your frontend to supply
97908
95919
  * methods to receive notifications from your backend.
@@ -97922,7 +95933,7 @@ class NotificationHandler {
97922
95933
  return IpcApp.addListener(this.channelName, (_evt, funcName, ...args) => {
97923
95934
  const func = this[funcName];
97924
95935
  if (typeof func !== "function")
97925
- throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.IModelError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.FunctionNotFound, `Method "${this.constructor.name}.${funcName}" not found on NotificationHandler registered for channel: ${this.channelName}`);
95936
+ throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.FunctionNotFound, `Method "${this.constructor.name}.${funcName}" not found on NotificationHandler registered for channel: ${this.channelName}`);
97926
95937
  func.call(this, ...args);
97927
95938
  });
97928
95939
  }
@@ -97938,7 +95949,7 @@ class NotificationHandler {
97938
95949
  }
97939
95950
  /** IpcApp notifications from backend */
97940
95951
  class IpcAppNotifyHandler extends NotificationHandler {
97941
- get channelName() { return _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.ipcAppChannels.appNotify; }
95952
+ get channelName() { return _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.ipcAppChannels.appNotify; }
97942
95953
  notifyApp() { }
97943
95954
  }
97944
95955
 
@@ -115307,7 +113318,7 @@ class MeshBuilderMap extends _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Di
115307
113318
  const { displayParams, isDisjoint, isPlanar, strokes } = strokePrimitive;
115308
113319
  const type = isDisjoint ? _MeshPrimitive__WEBPACK_IMPORTED_MODULE_2__.MeshPrimitiveType.Point : _MeshPrimitive__WEBPACK_IMPORTED_MODULE_2__.MeshPrimitiveType.Polyline;
115309
113320
  const builder = this.getBuilder(displayParams, type, false, isPlanar);
115310
- builder.addStrokePointLists(strokes, isDisjoint, displayParams.fillColor.tbgr, feature);
113321
+ builder.addStrokePointLists(strokes, isDisjoint, displayParams.lineColor.tbgr, feature);
115311
113322
  }
115312
113323
  getBuilder(displayParams, type, hasNormals, isPlanar) {
115313
113324
  const { facetAreaTolerance, tolerance, is2d, range } = this;
@@ -118428,6 +116439,9 @@ __webpack_require__.r(__webpack_exports__);
118428
116439
  /* harmony export */ "AccuDrawChangeModeTool": () => (/* reexport safe */ _tools_AccuDrawTool__WEBPACK_IMPORTED_MODULE_105__.AccuDrawChangeModeTool),
118429
116440
  /* harmony export */ "AccuDrawFlags": () => (/* reexport safe */ _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.AccuDrawFlags),
118430
116441
  /* harmony export */ "AccuDrawHintBuilder": () => (/* reexport safe */ _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.AccuDrawHintBuilder),
116442
+ /* harmony export */ "AccuDrawRotate90AboutXTool": () => (/* reexport safe */ _tools_AccuDrawTool__WEBPACK_IMPORTED_MODULE_105__.AccuDrawRotate90AboutXTool),
116443
+ /* harmony export */ "AccuDrawRotate90AboutYTool": () => (/* reexport safe */ _tools_AccuDrawTool__WEBPACK_IMPORTED_MODULE_105__.AccuDrawRotate90AboutYTool),
116444
+ /* harmony export */ "AccuDrawRotate90AboutZTool": () => (/* reexport safe */ _tools_AccuDrawTool__WEBPACK_IMPORTED_MODULE_105__.AccuDrawRotate90AboutZTool),
118431
116445
  /* harmony export */ "AccuDrawRotateAxesTool": () => (/* reexport safe */ _tools_AccuDrawTool__WEBPACK_IMPORTED_MODULE_105__.AccuDrawRotateAxesTool),
118432
116446
  /* harmony export */ "AccuDrawRotateCycleTool": () => (/* reexport safe */ _tools_AccuDrawTool__WEBPACK_IMPORTED_MODULE_105__.AccuDrawRotateCycleTool),
118433
116447
  /* harmony export */ "AccuDrawRotateElementTool": () => (/* reexport safe */ _tools_AccuDrawTool__WEBPACK_IMPORTED_MODULE_105__.AccuDrawRotateElementTool),
@@ -118945,6 +116959,7 @@ __webpack_require__.r(__webpack_exports__);
118945
116959
  /* harmony export */ "readGltfGraphics": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.readGltfGraphics),
118946
116960
  /* harmony export */ "readGltfTemplate": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.readGltfTemplate),
118947
116961
  /* harmony export */ "readImdlContent": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.readImdlContent),
116962
+ /* harmony export */ "readPntsColors": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.readPntsColors),
118948
116963
  /* harmony export */ "readPointCloudTileContent": () => (/* reexport safe */ _tile_internal__WEBPACK_IMPORTED_MODULE_104__.readPointCloudTileContent),
118949
116964
  /* harmony export */ "registerWorker": () => (/* reexport safe */ _workers_RegisterWorker__WEBPACK_IMPORTED_MODULE_120__.registerWorker),
118950
116965
  /* harmony export */ "setBasicAuthorization": () => (/* reexport safe */ _request_utils__WEBPACK_IMPORTED_MODULE_125__.setBasicAuthorization),
@@ -133771,6 +131786,19 @@ class PlanarClassifier extends _RenderPlanarClassifier__WEBPACK_IMPORTED_MODULE_
133771
131786
  const prevProjMatrix = target.uniforms.frustum.projectionMatrix;
133772
131787
  target.uniforms.frustum.changeProjectionMatrix(PlanarClassifier._postProjectionMatrix.multiplyMatrixMatrix(prevProjMatrix));
133773
131788
  target.uniforms.branch.changeRenderPlan(vf, target.plan.is3d, target.plan.hline);
131789
+ const addCmds = (oldCmds, newCmds) => {
131790
+ if (undefined === newCmds)
131791
+ return oldCmds;
131792
+ if (newCmds.length > 50000) {
131793
+ // This method is slower for smaller array sizes, but when the size of newCmds gets larger it's performance is ok.
131794
+ return oldCmds.concat(newCmds);
131795
+ }
131796
+ else {
131797
+ // This method runs faster, but gets a stack overflow when the size of newCmds is too large.
131798
+ oldCmds.push(...newCmds);
131799
+ return oldCmds;
131800
+ }
131801
+ };
133774
131802
  const renderCommands = this._renderCommands;
133775
131803
  const getDrawCommands = (graphics) => {
133776
131804
  this._batchState.reset();
@@ -133780,14 +131808,14 @@ class PlanarClassifier extends _RenderPlanarClassifier__WEBPACK_IMPORTED_MODULE_
133780
131808
  // When using Display.ElementColor, the color and transparency come from the classifier geometry. Therefore we may need to draw the classified geometry
133781
131809
  // in a different pass - or both passes - depending on the transparency of the classifiers.
133782
131810
  // NB: "Outside" geometry by definition cannot take color/transparency from element...
133783
- const cmds = renderCommands.getCommands(3 /* RenderPass.OpaquePlanar */);
131811
+ let cmds = renderCommands.getCommands(3 /* RenderPass.OpaquePlanar */);
133784
131812
  // NB: We don't strictly require the classifier geometry to be planar, and sometimes (e.g., "planar" polyface/bspsurf) we do not detect planarity.
133785
- cmds.push(...renderCommands.getCommands(5 /* RenderPass.OpaqueGeneral */));
133786
- cmds.push(...renderCommands.getCommands(2 /* RenderPass.OpaqueLinear */));
131813
+ cmds = addCmds(cmds, renderCommands.getCommands(5 /* RenderPass.OpaqueGeneral */));
131814
+ cmds = addCmds(cmds, renderCommands.getCommands(2 /* RenderPass.OpaqueLinear */));
133787
131815
  this._anyOpaque = cmds.length > 0;
133788
131816
  const transCmds = renderCommands.getCommands(8 /* RenderPass.Translucent */);
133789
131817
  if (transCmds.length > 0) {
133790
- cmds.push(...transCmds);
131818
+ cmds = addCmds(cmds, renderCommands.getCommands(8 /* RenderPass.Translucent */));
133791
131819
  this._anyTranslucent = true;
133792
131820
  }
133793
131821
  return cmds;
@@ -160394,6 +158422,7 @@ class OrbitGtTreeReference extends _internal__WEBPACK_IMPORTED_MODULE_9__.Realit
160394
158422
  "use strict";
160395
158423
  __webpack_require__.r(__webpack_exports__);
160396
158424
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
158425
+ /* harmony export */ "readPntsColors": () => (/* binding */ readPntsColors),
160397
158426
  /* harmony export */ "readPointCloudTileContent": () => (/* binding */ readPointCloudTileContent)
160398
158427
  /* harmony export */ });
160399
158428
  /* harmony import */ var _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
@@ -160419,13 +158448,13 @@ function readPntsColors(stream, dataOffset, pnts) {
160419
158448
  if (pnts.RGB)
160420
158449
  return new Uint8Array(stream.arrayBuffer, dataOffset + pnts.RGB.byteOffset, nComponents);
160421
158450
  if (pnts.RGBA) {
160422
- // ###TODO support point cloud transparency.
158451
+ // ###TODO We currently don't support transparency for point clouds, so convert RGBA to RGB by stripping out the alpha channel.
160423
158452
  const rgb = new Uint8Array(nComponents);
160424
- const rgba = new Uint8Array(stream.arrayBuffer, dataOffset + pnts.RGBA.byteOffset, nComponents);
160425
- for (let i = 0; i < nComponents; i += 4) {
160426
- rgb[i + 0] = rgba[i + 0];
160427
- rgb[i + 1] = rgba[i + 1];
160428
- rgb[i + 2] = rgba[i + 2];
158453
+ const rgba = new Uint8Array(stream.arrayBuffer, dataOffset + pnts.RGBA.byteOffset, 4 * nPts);
158454
+ for (let i = 0; i < nPts; i++) {
158455
+ rgb[i * 3 + 0] = rgba[i * 4 + 0];
158456
+ rgb[i * 3 + 1] = rgba[i * 4 + 1];
158457
+ rgb[i * 3 + 2] = rgba[i * 4 + 2];
160429
158458
  }
160430
158459
  return rgb;
160431
158460
  }
@@ -167046,6 +165075,7 @@ __webpack_require__.r(__webpack_exports__);
167046
165075
  /* harmony export */ "readGltfGraphics": () => (/* reexport safe */ _GltfReader__WEBPACK_IMPORTED_MODULE_30__.readGltfGraphics),
167047
165076
  /* harmony export */ "readGltfTemplate": () => (/* reexport safe */ _GltfReader__WEBPACK_IMPORTED_MODULE_30__.readGltfTemplate),
167048
165077
  /* harmony export */ "readImdlContent": () => (/* reexport safe */ _ImdlReader__WEBPACK_IMPORTED_MODULE_33__.readImdlContent),
165078
+ /* harmony export */ "readPntsColors": () => (/* reexport safe */ _PntsReader__WEBPACK_IMPORTED_MODULE_75__.readPntsColors),
167049
165079
  /* harmony export */ "readPointCloudTileContent": () => (/* reexport safe */ _PntsReader__WEBPACK_IMPORTED_MODULE_75__.readPointCloudTileContent),
167050
165080
  /* harmony export */ "tileTreeReferenceFromRenderGraphic": () => (/* reexport safe */ _RenderGraphicTileTree__WEBPACK_IMPORTED_MODULE_77__.tileTreeReferenceFromRenderGraphic)
167051
165081
  /* harmony export */ });
@@ -167527,6 +165557,7 @@ __webpack_require__.r(__webpack_exports__);
167527
165557
  /** @packageDocumentation
167528
165558
  * @module Tiles
167529
165559
  */
165560
+ const restServicesSubPath = "/rest/services/";
167530
165561
  /**
167531
165562
  * Class representing an ArcGIS error code.
167532
165563
  * @internal
@@ -167633,9 +165664,10 @@ class ArcGisUtilities {
167633
165664
  */
167634
165665
  static validateUrl(url, serviceType) {
167635
165666
  const urlObj = new URL(url.toLowerCase());
167636
- if (urlObj.pathname.includes("/rest/services/")) {
165667
+ const restServicesPos = urlObj.pathname.search(restServicesSubPath);
165668
+ if (restServicesPos !== -1) {
167637
165669
  // This seem to be an ArcGIS URL, lets check the service type
167638
- if (urlObj.pathname.endsWith(`${serviceType.toLowerCase()}`)) {
165670
+ if (urlObj.pathname.includes(serviceType.toLowerCase(), restServicesPos + restServicesSubPath.length)) {
167639
165671
  return _internal__WEBPACK_IMPORTED_MODULE_1__.MapLayerSourceStatus.Valid;
167640
165672
  }
167641
165673
  else {
@@ -168938,7 +166970,7 @@ class ArcGISMapLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_2
168938
166970
  async initialize() {
168939
166971
  const metadata = await this.getServiceJson();
168940
166972
  if (metadata?.content === undefined)
168941
- throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.ServerError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.ValidationFailed, "");
166973
+ throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.ServerError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_5__.IModelStatus.ValidationFailed, "");
168942
166974
  const json = metadata.content;
168943
166975
  if (json?.error?.code === _internal__WEBPACK_IMPORTED_MODULE_2__.ArcGisErrorCode.TokenRequired
168944
166976
  || json?.error?.code === _internal__WEBPACK_IMPORTED_MODULE_2__.ArcGisErrorCode.InvalidToken
@@ -168967,7 +166999,7 @@ class ArcGISMapLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_2
168967
166999
  this._usesCachedTiles = false;
168968
167000
  }
168969
167001
  else {
168970
- throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.ServerError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.ValidationFailed, "Invalid coordinate system");
167002
+ throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_0__.ServerError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_5__.IModelStatus.ValidationFailed, "Invalid coordinate system");
168971
167003
  }
168972
167004
  }
168973
167005
  }
@@ -170154,7 +168186,7 @@ class WmtsMapLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_2__
170154
168186
  this.initCartoRange();
170155
168187
  this.initDisplayedLayer();
170156
168188
  if (this._preferredLayerTileMatrixSet.size === 0 || this._preferredLayerStyle.size === 0)
170157
- throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.ServerError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelStatus.ValidationFailed, "");
168189
+ throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.ServerError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.ValidationFailed, "");
170158
168190
  }
170159
168191
  catch (error) {
170160
168192
  // Don't throw error if unauthorized status:
@@ -170164,7 +168196,7 @@ class WmtsMapLayerImageryProvider extends _internal__WEBPACK_IMPORTED_MODULE_2__
170164
168196
  this.setStatus(_internal__WEBPACK_IMPORTED_MODULE_2__.MapLayerImageryProviderStatus.RequireAuth);
170165
168197
  }
170166
168198
  else {
170167
- throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.ServerError(_itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.IModelStatus.ValidationFailed, "");
168199
+ throw new _itwin_core_common__WEBPACK_IMPORTED_MODULE_1__.ServerError(_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.IModelStatus.ValidationFailed, "");
170168
168200
  }
170169
168201
  }
170170
168202
  }
@@ -175519,6 +173551,9 @@ WmtsCapabilities._capabilitiesCache = new Map();
175519
173551
  __webpack_require__.r(__webpack_exports__);
175520
173552
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
175521
173553
  /* harmony export */ "AccuDrawChangeModeTool": () => (/* binding */ AccuDrawChangeModeTool),
173554
+ /* harmony export */ "AccuDrawRotate90AboutXTool": () => (/* binding */ AccuDrawRotate90AboutXTool),
173555
+ /* harmony export */ "AccuDrawRotate90AboutYTool": () => (/* binding */ AccuDrawRotate90AboutYTool),
173556
+ /* harmony export */ "AccuDrawRotate90AboutZTool": () => (/* binding */ AccuDrawRotate90AboutZTool),
175522
173557
  /* harmony export */ "AccuDrawRotateAxesTool": () => (/* binding */ AccuDrawRotateAxesTool),
175523
173558
  /* harmony export */ "AccuDrawRotateCycleTool": () => (/* binding */ AccuDrawRotateCycleTool),
175524
173559
  /* harmony export */ "AccuDrawRotateElementTool": () => (/* binding */ AccuDrawRotateElementTool),
@@ -175704,7 +173739,7 @@ class AccuDrawShortcuts {
175704
173739
  accudraw.onFieldValueChange(index);
175705
173740
  }
175706
173741
  const vp = accudraw.currentView;
175707
- const is3d = vp ? vp.view.is3d() : false;
173742
+ const is3d = vp ? accudraw.is3dCompass(vp) : false;
175708
173743
  const isPolar = (_AccuDraw__WEBPACK_IMPORTED_MODULE_2__.CompassMode.Polar === accudraw.compassMode);
175709
173744
  switch (index) {
175710
173745
  case _AccuDraw__WEBPACK_IMPORTED_MODULE_2__.ItemField.DIST_Item:
@@ -176440,7 +174475,7 @@ class AccuDrawShortcuts {
176440
174475
  return false;
176441
174476
  }
176442
174477
  }
176443
- /** @internal */
174478
+ /** @beta */
176444
174479
  class AccuDrawSessionToggleTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176445
174480
  async run() {
176446
174481
  AccuDrawShortcuts.sessionToggle();
@@ -176448,7 +174483,7 @@ class AccuDrawSessionToggleTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool
176448
174483
  }
176449
174484
  }
176450
174485
  AccuDrawSessionToggleTool.toolId = "AccuDraw.SessionToggle";
176451
- /** @internal */
174486
+ /** @beta */
176452
174487
  class AccuDrawSuspendToggleTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176453
174488
  async run() {
176454
174489
  AccuDrawShortcuts.suspendToggle();
@@ -176456,7 +174491,7 @@ class AccuDrawSuspendToggleTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool
176456
174491
  }
176457
174492
  }
176458
174493
  AccuDrawSuspendToggleTool.toolId = "AccuDraw.SuspendToggle";
176459
- /** @internal */
174494
+ /** @beta */
176460
174495
  class AccuDrawSetOriginTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176461
174496
  async run() {
176462
174497
  AccuDrawShortcuts.setOrigin();
@@ -176464,7 +174499,7 @@ class AccuDrawSetOriginTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176464
174499
  }
176465
174500
  }
176466
174501
  AccuDrawSetOriginTool.toolId = "AccuDraw.SetOrigin";
176467
- /** @internal */
174502
+ /** @beta */
176468
174503
  class AccuDrawSetLockSmartTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176469
174504
  async run() {
176470
174505
  AccuDrawShortcuts.lockSmart();
@@ -176472,7 +174507,7 @@ class AccuDrawSetLockSmartTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176472
174507
  }
176473
174508
  }
176474
174509
  AccuDrawSetLockSmartTool.toolId = "AccuDraw.LockSmart";
176475
- /** @internal */
174510
+ /** @beta */
176476
174511
  class AccuDrawSetLockIndexTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176477
174512
  async run() {
176478
174513
  AccuDrawShortcuts.lockIndex();
@@ -176480,7 +174515,7 @@ class AccuDrawSetLockIndexTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176480
174515
  }
176481
174516
  }
176482
174517
  AccuDrawSetLockIndexTool.toolId = "AccuDraw.LockIndex";
176483
- /** @internal */
174518
+ /** @beta */
176484
174519
  class AccuDrawSetLockXTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176485
174520
  async run() {
176486
174521
  AccuDrawShortcuts.lockX();
@@ -176488,7 +174523,7 @@ class AccuDrawSetLockXTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176488
174523
  }
176489
174524
  }
176490
174525
  AccuDrawSetLockXTool.toolId = "AccuDraw.LockX";
176491
- /** @internal */
174526
+ /** @beta */
176492
174527
  class AccuDrawSetLockYTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176493
174528
  async run() {
176494
174529
  AccuDrawShortcuts.lockY();
@@ -176496,7 +174531,7 @@ class AccuDrawSetLockYTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176496
174531
  }
176497
174532
  }
176498
174533
  AccuDrawSetLockYTool.toolId = "AccuDraw.LockY";
176499
- /** @internal */
174534
+ /** @beta */
176500
174535
  class AccuDrawSetLockZTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176501
174536
  async run() {
176502
174537
  AccuDrawShortcuts.lockZ();
@@ -176504,7 +174539,7 @@ class AccuDrawSetLockZTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176504
174539
  }
176505
174540
  }
176506
174541
  AccuDrawSetLockZTool.toolId = "AccuDraw.LockZ";
176507
- /** @internal */
174542
+ /** @beta */
176508
174543
  class AccuDrawSetLockDistanceTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176509
174544
  async run() {
176510
174545
  AccuDrawShortcuts.lockDistance();
@@ -176512,7 +174547,7 @@ class AccuDrawSetLockDistanceTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Too
176512
174547
  }
176513
174548
  }
176514
174549
  AccuDrawSetLockDistanceTool.toolId = "AccuDraw.LockDistance";
176515
- /** @internal */
174550
+ /** @beta */
176516
174551
  class AccuDrawSetLockAngleTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176517
174552
  async run() {
176518
174553
  AccuDrawShortcuts.lockAngle();
@@ -176520,7 +174555,7 @@ class AccuDrawSetLockAngleTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176520
174555
  }
176521
174556
  }
176522
174557
  AccuDrawSetLockAngleTool.toolId = "AccuDraw.LockAngle";
176523
- /** @internal */
174558
+ /** @beta */
176524
174559
  class AccuDrawChangeModeTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176525
174560
  async run() {
176526
174561
  AccuDrawShortcuts.changeCompassMode();
@@ -176528,7 +174563,7 @@ class AccuDrawChangeModeTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176528
174563
  }
176529
174564
  }
176530
174565
  AccuDrawChangeModeTool.toolId = "AccuDraw.ChangeMode";
176531
- /** @internal */
174566
+ /** @beta */
176532
174567
  class AccuDrawRotateCycleTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176533
174568
  async run() {
176534
174569
  AccuDrawShortcuts.rotateCycle();
@@ -176536,7 +174571,7 @@ class AccuDrawRotateCycleTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176536
174571
  }
176537
174572
  }
176538
174573
  AccuDrawRotateCycleTool.toolId = "AccuDraw.RotateCycle";
176539
- /** @internal */
174574
+ /** @beta */
176540
174575
  class AccuDrawRotateTopTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176541
174576
  async run() {
176542
174577
  AccuDrawShortcuts.setStandardRotation(_AccuDraw__WEBPACK_IMPORTED_MODULE_2__.RotationMode.Top);
@@ -176544,7 +174579,7 @@ class AccuDrawRotateTopTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176544
174579
  }
176545
174580
  }
176546
174581
  AccuDrawRotateTopTool.toolId = "AccuDraw.RotateTop";
176547
- /** @internal */
174582
+ /** @beta */
176548
174583
  class AccuDrawRotateFrontTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176549
174584
  async run() {
176550
174585
  AccuDrawShortcuts.setStandardRotation(_AccuDraw__WEBPACK_IMPORTED_MODULE_2__.RotationMode.Front);
@@ -176552,7 +174587,7 @@ class AccuDrawRotateFrontTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176552
174587
  }
176553
174588
  }
176554
174589
  AccuDrawRotateFrontTool.toolId = "AccuDraw.RotateFront";
176555
- /** @internal */
174590
+ /** @beta */
176556
174591
  class AccuDrawRotateSideTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176557
174592
  async run() {
176558
174593
  AccuDrawShortcuts.setStandardRotation(_AccuDraw__WEBPACK_IMPORTED_MODULE_2__.RotationMode.Side);
@@ -176560,7 +174595,7 @@ class AccuDrawRotateSideTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176560
174595
  }
176561
174596
  }
176562
174597
  AccuDrawRotateSideTool.toolId = "AccuDraw.RotateSide";
176563
- /** @internal */
174598
+ /** @beta */
176564
174599
  class AccuDrawRotateViewTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176565
174600
  async run() {
176566
174601
  AccuDrawShortcuts.setStandardRotation(_AccuDraw__WEBPACK_IMPORTED_MODULE_2__.RotationMode.View);
@@ -176568,6 +174603,30 @@ class AccuDrawRotateViewTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
176568
174603
  }
176569
174604
  }
176570
174605
  AccuDrawRotateViewTool.toolId = "AccuDraw.RotateView";
174606
+ /** @beta */
174607
+ class AccuDrawRotate90AboutXTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
174608
+ async run() {
174609
+ AccuDrawShortcuts.rotate90(0);
174610
+ return true;
174611
+ }
174612
+ }
174613
+ AccuDrawRotate90AboutXTool.toolId = "AccuDraw.Rotate90AboutX";
174614
+ /** @beta */
174615
+ class AccuDrawRotate90AboutYTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
174616
+ async run() {
174617
+ AccuDrawShortcuts.rotate90(1);
174618
+ return true;
174619
+ }
174620
+ }
174621
+ AccuDrawRotate90AboutYTool.toolId = "AccuDraw.Rotate90AboutY";
174622
+ /** @beta */
174623
+ class AccuDrawRotate90AboutZTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.Tool {
174624
+ async run() {
174625
+ AccuDrawShortcuts.rotate90(2);
174626
+ return true;
174627
+ }
174628
+ }
174629
+ AccuDrawRotate90AboutZTool.toolId = "AccuDraw.Rotate90AboutZ";
176571
174630
  /** @internal */
176572
174631
  class AccuDrawShortcutsTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.InputCollector {
176573
174632
  constructor() {
@@ -176631,15 +174690,18 @@ class AccuDrawShortcutsTool extends _Tool__WEBPACK_IMPORTED_MODULE_7__.InputColl
176631
174690
  onManipulationStart() { }
176632
174691
  onManipulationComplete() { return _AccuDraw__WEBPACK_IMPORTED_MODULE_2__.AccuDrawFlags.SetRMatrix; }
176633
174692
  }
176634
- /** @internal */
174693
+ /** @beta */
176635
174694
  class AccuDrawRotateAxesTool extends AccuDrawShortcutsTool {
176636
174695
  static get maxArgs() { return 1; }
176637
174696
  constructor(aboutCurrentZ = true) {
176638
174697
  super();
176639
174698
  this.aboutCurrentZ = aboutCurrentZ;
176640
174699
  }
174700
+ /** @internal */
176641
174701
  get allowShortcut() { return _IModelApp__WEBPACK_IMPORTED_MODULE_6__.IModelApp.accuDraw.isActive; } // Require compass to already be active for this shortcut...
174702
+ /** @internal */
176642
174703
  get wantActivateOnStart() { return true; } // State is demoted to inactive when a tool install, still need this...
174704
+ /** @internal */
176643
174705
  get wantManipulationImmediate() {
176644
174706
  if (_AccuSnap__WEBPACK_IMPORTED_MODULE_3__.TentativeOrAccuSnap.isHot)
176645
174707
  return true;
@@ -176648,11 +174710,13 @@ class AccuDrawRotateAxesTool extends AccuDrawShortcutsTool {
176648
174710
  return accudraw.getFieldLock(_AccuDraw__WEBPACK_IMPORTED_MODULE_2__.ItemField.ANGLE_Item);
176649
174711
  return accudraw.getFieldLock(_AccuDraw__WEBPACK_IMPORTED_MODULE_2__.ItemField.X_Item) && accudraw.getFieldLock(_AccuDraw__WEBPACK_IMPORTED_MODULE_2__.ItemField.Y_Item);
176650
174712
  }
174713
+ /** @internal */
176651
174714
  onManipulationStart() {
176652
174715
  if (this.aboutCurrentZ)
176653
174716
  _IModelApp__WEBPACK_IMPORTED_MODULE_6__.IModelApp.accuDraw.changeBaseRotationMode(_AccuDraw__WEBPACK_IMPORTED_MODULE_2__.RotationMode.Context); // Establish current orientation as base for when defining compass rotation by x axis...
176654
174717
  _Tool__WEBPACK_IMPORTED_MODULE_7__.CoreTools.outputPromptByKey("AccuDraw.RotateAxes.Prompts.FirstPoint");
176655
174718
  }
174719
+ /** @internal */
176656
174720
  doManipulation(ev, isMotion) {
176657
174721
  const vp = ev ? ev.viewport : _IModelApp__WEBPACK_IMPORTED_MODULE_6__.IModelApp.accuDraw.currentView;
176658
174722
  if (!vp)
@@ -176675,24 +174739,29 @@ class AccuDrawRotateAxesTool extends AccuDrawShortcutsTool {
176675
174739
  }
176676
174740
  }
176677
174741
  AccuDrawRotateAxesTool.toolId = "AccuDraw.RotateAxes";
176678
- /** @internal */
174742
+ /** @beta */
176679
174743
  class AccuDrawRotateElementTool extends AccuDrawShortcutsTool {
176680
174744
  constructor() {
176681
174745
  super(...arguments);
176682
174746
  this._moveOrigin = !_IModelApp__WEBPACK_IMPORTED_MODULE_6__.IModelApp.accuDraw.isActive || _IModelApp__WEBPACK_IMPORTED_MODULE_6__.IModelApp.tentativePoint.isActive; // Preserve current origin if AccuDraw already active and not tentative snap...
176683
174747
  }
174748
+ /** @internal */
176684
174749
  get wantActivateOnStart() { return true; }
174750
+ /** @internal */
176685
174751
  get wantManipulationImmediate() { return _IModelApp__WEBPACK_IMPORTED_MODULE_6__.IModelApp.tentativePoint.isSnapped; }
174752
+ /** @internal */
176686
174753
  onManipulationStart() {
176687
174754
  _IModelApp__WEBPACK_IMPORTED_MODULE_6__.IModelApp.accuDraw.setContext(_AccuDraw__WEBPACK_IMPORTED_MODULE_2__.AccuDrawFlags.FixedOrigin); // Don't move compass when updateOrientation returns false...
176688
174755
  _Tool__WEBPACK_IMPORTED_MODULE_7__.CoreTools.outputPromptByKey("AccuDraw.RotateElement.Prompts.FirstPoint");
176689
174756
  }
174757
+ /** @internal */
176690
174758
  onManipulationComplete() {
176691
174759
  let ignoreFlags = _AccuDraw__WEBPACK_IMPORTED_MODULE_2__.AccuDrawFlags.SetRMatrix | _AccuDraw__WEBPACK_IMPORTED_MODULE_2__.AccuDrawFlags.Disable; // If AccuDraw wasn't active when the shortcut started, let it remain active for suspended tool when shortcut completes...
176692
174760
  if (this._moveOrigin)
176693
174761
  ignoreFlags |= _AccuDraw__WEBPACK_IMPORTED_MODULE_2__.AccuDrawFlags.SetOrigin;
176694
174762
  return ignoreFlags;
176695
174763
  }
174764
+ /** @internal */
176696
174765
  updateOrientation(snap, viewport, _isMotion) {
176697
174766
  const accudraw = _IModelApp__WEBPACK_IMPORTED_MODULE_6__.IModelApp.accuDraw;
176698
174767
  const rMatrix = _AccuDraw__WEBPACK_IMPORTED_MODULE_2__.AccuDraw.getSnapRotation(snap, viewport);
@@ -176702,6 +174771,7 @@ class AccuDrawRotateElementTool extends AccuDrawShortcutsTool {
176702
174771
  accudraw.setContext(_AccuDraw__WEBPACK_IMPORTED_MODULE_2__.AccuDrawFlags.SetRMatrix | _AccuDraw__WEBPACK_IMPORTED_MODULE_2__.AccuDrawFlags.AlwaysSetOrigin, point, rMatrix);
176703
174772
  return true;
176704
174773
  }
174774
+ /** @internal */
176705
174775
  doManipulation(ev, isMotion) {
176706
174776
  const viewport = ev ? ev.viewport : _IModelApp__WEBPACK_IMPORTED_MODULE_6__.IModelApp.accuDraw.currentView;
176707
174777
  if (!viewport)
@@ -176717,9 +174787,11 @@ class AccuDrawRotateElementTool extends AccuDrawShortcutsTool {
176717
174787
  }
176718
174788
  }
176719
174789
  AccuDrawRotateElementTool.toolId = "AccuDraw.RotateElement";
176720
- /** @internal */
174790
+ /** @beta */
176721
174791
  class AccuDrawRotatePerpendicularTool extends AccuDrawRotateElementTool {
174792
+ /** @internal */
176722
174793
  get wantExitOnDataButtonUp() { return true; } // Complete on button up since button down clears tentative...
174794
+ /** @internal */
176723
174795
  onManipulationComplete() {
176724
174796
  if (undefined !== this._location) {
176725
174797
  // Use tentative to hold adjusted snap location for suspended tool...
@@ -176729,6 +174801,7 @@ class AccuDrawRotatePerpendicularTool extends AccuDrawRotateElementTool {
176729
174801
  }
176730
174802
  return _AccuDraw__WEBPACK_IMPORTED_MODULE_2__.AccuDrawFlags.SetRMatrix | _AccuDraw__WEBPACK_IMPORTED_MODULE_2__.AccuDrawFlags.Disable;
176731
174803
  }
174804
+ /** @internal */
176732
174805
  updateOrientation(snap, viewport, isMotion) {
176733
174806
  const curve = snap.getCurvePrimitive();
176734
174807
  if (undefined === curve)
@@ -176766,14 +174839,16 @@ class AccuDrawRotatePerpendicularTool extends AccuDrawRotateElementTool {
176766
174839
  }
176767
174840
  }
176768
174841
  AccuDrawRotatePerpendicularTool.toolId = "AccuDraw.RotatePerpendicular";
176769
- /** @internal */
174842
+ /** @beta */
176770
174843
  class DefineACSByElementTool extends AccuDrawShortcutsTool {
176771
174844
  constructor() {
176772
174845
  super(...arguments);
176773
174846
  this._origin = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__.Point3d.create();
176774
174847
  this._rMatrix = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__.Matrix3d.createIdentity();
176775
174848
  }
174849
+ /** @internal */
176776
174850
  onManipulationStart() { _Tool__WEBPACK_IMPORTED_MODULE_7__.CoreTools.outputPromptByKey("AccuDraw.DefineACSByElement.Prompts.FirstPoint"); }
174851
+ /** @internal */
176777
174852
  updateOrientation(snap, vp) {
176778
174853
  const rMatrix = _AccuDraw__WEBPACK_IMPORTED_MODULE_2__.AccuDraw.getSnapRotation(snap, vp);
176779
174854
  if (undefined === rMatrix)
@@ -176782,6 +174857,7 @@ class DefineACSByElementTool extends AccuDrawShortcutsTool {
176782
174857
  this._rMatrix = rMatrix;
176783
174858
  return true;
176784
174859
  }
174860
+ /** @internal */
176785
174861
  doManipulation(ev, isMotion) {
176786
174862
  const vp = ev ? ev.viewport : undefined;
176787
174863
  if (!vp)
@@ -176800,6 +174876,7 @@ class DefineACSByElementTool extends AccuDrawShortcutsTool {
176800
174876
  AccuDrawShortcuts.rotateToACS();
176801
174877
  return true;
176802
174878
  }
174879
+ /** @internal */
176803
174880
  decorate(context) {
176804
174881
  const vp = context.viewport;
176805
174882
  if (!this._acs)
@@ -176810,12 +174887,13 @@ class DefineACSByElementTool extends AccuDrawShortcutsTool {
176810
174887
  }
176811
174888
  }
176812
174889
  DefineACSByElementTool.toolId = "AccuDraw.DefineACSByElement";
176813
- /** @internal */
174890
+ /** @beta */
176814
174891
  class DefineACSByPointsTool extends AccuDrawShortcutsTool {
176815
174892
  constructor() {
176816
174893
  super(...arguments);
176817
174894
  this._points = [];
176818
174895
  }
174896
+ /** @internal */
176819
174897
  onManipulationStart() {
176820
174898
  if (!_IModelApp__WEBPACK_IMPORTED_MODULE_6__.IModelApp.tentativePoint.isActive) {
176821
174899
  _Tool__WEBPACK_IMPORTED_MODULE_7__.CoreTools.outputPromptByKey("AccuDraw.DefineACSByPoints.Prompts.FirstPoint");
@@ -176827,6 +174905,7 @@ class DefineACSByPointsTool extends AccuDrawShortcutsTool {
176827
174905
  this._points.push(origin);
176828
174906
  _IModelApp__WEBPACK_IMPORTED_MODULE_6__.IModelApp.tentativePoint.clear(true);
176829
174907
  }
174908
+ /** @internal */
176830
174909
  doManipulation(ev, isMotion) {
176831
174910
  if (!ev || !ev.viewport)
176832
174911
  return false;
@@ -176846,6 +174925,7 @@ class DefineACSByPointsTool extends AccuDrawShortcutsTool {
176846
174925
  _Tool__WEBPACK_IMPORTED_MODULE_7__.CoreTools.outputPromptByKey(`AccuDraw.DefineACSByPoints.Prompts${1 === this._points.length ? ".SecondPoint" : ".NextPoint"}`);
176847
174926
  return false;
176848
174927
  }
174928
+ /** @internal */
176849
174929
  decorate(context) {
176850
174930
  const tmpPoints = [];
176851
174931
  this._points.forEach((pt) => tmpPoints.push(pt));
@@ -176875,11 +174955,12 @@ __webpack_require__.r(__webpack_exports__);
176875
174955
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
176876
174956
  /* harmony export */ "AccuDrawViewportUI": () => (/* binding */ AccuDrawViewportUI)
176877
174957
  /* harmony export */ });
176878
- /* harmony import */ var _AccuDraw__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../AccuDraw */ "../../core/frontend/lib/esm/AccuDraw.js");
176879
- /* harmony import */ var _common_ViewRect__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../common/ViewRect */ "../../core/frontend/lib/esm/common/ViewRect.js");
176880
- /* harmony import */ var _IModelApp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../IModelApp */ "../../core/frontend/lib/esm/IModelApp.js");
176881
- /* harmony import */ var _AccuDrawTool__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./AccuDrawTool */ "../../core/frontend/lib/esm/tools/AccuDrawTool.js");
176882
- /* harmony import */ var _Tool__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Tool */ "../../core/frontend/lib/esm/tools/Tool.js");
174958
+ /* harmony import */ var _itwin_core_quantity__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @itwin/core-quantity */ "../../core/quantity/lib/esm/core-quantity.js");
174959
+ /* harmony import */ var _AccuDraw__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../AccuDraw */ "../../core/frontend/lib/esm/AccuDraw.js");
174960
+ /* harmony import */ var _common_ViewRect__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../common/ViewRect */ "../../core/frontend/lib/esm/common/ViewRect.js");
174961
+ /* harmony import */ var _IModelApp__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../IModelApp */ "../../core/frontend/lib/esm/IModelApp.js");
174962
+ /* harmony import */ var _AccuDrawTool__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./AccuDrawTool */ "../../core/frontend/lib/esm/tools/AccuDrawTool.js");
174963
+ /* harmony import */ var _Tool__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Tool */ "../../core/frontend/lib/esm/tools/Tool.js");
176883
174964
  /*---------------------------------------------------------------------------------------------
176884
174965
  * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
176885
174966
  * See LICENSE.md in the project root for license terms and full copyright notice.
@@ -176892,10 +174973,11 @@ __webpack_require__.r(__webpack_exports__);
176892
174973
 
176893
174974
 
176894
174975
 
174976
+
176895
174977
  /** Provides an in viewport user interface for AccuDraw that can optionally follow the cursor or remain at a fixed location.
176896
174978
  * @beta
176897
174979
  */
176898
- class AccuDrawViewportUI extends _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.AccuDraw {
174980
+ class AccuDrawViewportUI extends _AccuDraw__WEBPACK_IMPORTED_MODULE_1__.AccuDraw {
176899
174981
  /** Create a new instance of this class to set as [[IModelAppOptions.accuDraw]] for this session. */
176900
174982
  constructor() {
176901
174983
  super();
@@ -176923,56 +175005,124 @@ class AccuDrawViewportUI extends _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.AccuDraw
176923
175005
  if (!this.isActive)
176924
175006
  return;
176925
175007
  // Shouldn't need to call IModelApp.toolAdmin.simulateMotionEvent() in this case...
176926
- const ev = new _Tool__WEBPACK_IMPORTED_MODULE_4__.BeButtonEvent();
176927
- _IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.toolAdmin.fillEventFromCursorLocation(ev);
175008
+ const ev = new _Tool__WEBPACK_IMPORTED_MODULE_5__.BeButtonEvent();
175009
+ _IModelApp__WEBPACK_IMPORTED_MODULE_3__.IModelApp.toolAdmin.fillEventFromCursorLocation(ev);
176928
175010
  this.updateControls(ev);
176929
175011
  }
176930
175012
  suspendToolTips() {
176931
- if (!AccuDrawViewportUI.controlProps.suspendLocateToolTip || undefined === (this._toolTipsSuspended = (_IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.accuSnap.userSettings.toolTip ? true : undefined)))
175013
+ if (!AccuDrawViewportUI.controlProps.suspendLocateToolTip || undefined === (this._toolTipsSuspended = (_IModelApp__WEBPACK_IMPORTED_MODULE_3__.IModelApp.accuSnap.userSettings.toolTip ? true : undefined)))
176932
175014
  return;
176933
- _IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.accuSnap.userSettings.toolTip = false;
176934
- _IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.notifications.clearToolTip();
175015
+ _IModelApp__WEBPACK_IMPORTED_MODULE_3__.IModelApp.accuSnap.userSettings.toolTip = false;
175016
+ _IModelApp__WEBPACK_IMPORTED_MODULE_3__.IModelApp.notifications.clearToolTip();
176935
175017
  }
176936
175018
  unsuspendToolTips() {
176937
175019
  if (undefined === this._toolTipsSuspended)
176938
175020
  return;
176939
- _IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.accuSnap.userSettings.toolTip = true;
175021
+ _IModelApp__WEBPACK_IMPORTED_MODULE_3__.IModelApp.accuSnap.userSettings.toolTip = true;
176940
175022
  this._toolTipsSuspended = undefined;
176941
175023
  }
176942
175024
  setDynamicKeyinStatus(item) {
176943
175025
  // This does nothing if keyin status is already dynamic...
176944
- _AccuDrawTool__WEBPACK_IMPORTED_MODULE_3__.AccuDrawShortcuts.itemFieldCompletedInput(item);
175026
+ _AccuDrawTool__WEBPACK_IMPORTED_MODULE_4__.AccuDrawShortcuts.itemFieldCompletedInput(item);
176945
175027
  }
176946
175028
  setPartialKeyinStatus(item, selectAll) {
176947
175029
  if (!this.isDynamicKeyinStatus(item))
176948
175030
  return;
176949
- _AccuDrawTool__WEBPACK_IMPORTED_MODULE_3__.AccuDrawShortcuts.itemFieldNewInput(item);
175031
+ _AccuDrawTool__WEBPACK_IMPORTED_MODULE_4__.AccuDrawShortcuts.itemFieldNewInput(item);
176950
175032
  if (undefined === this._controls || !selectAll)
176951
175033
  return;
176952
175034
  const itemField = this._controls.itemFields[item];
176953
175035
  itemField.setSelectionRange(0, itemField.value.length);
176954
175036
  }
175037
+ makeParserHappy(value, isAngle) {
175038
+ // TODO: Work around for default length parser not accepting output formatted with dash separator, ex. 20'-6"...
175039
+ const parserSpec = (isAngle ? undefined : this.getLengthParser());
175040
+ if (undefined === parserSpec)
175041
+ return value;
175042
+ return (_itwin_core_quantity__WEBPACK_IMPORTED_MODULE_0__.FormatType.Fractional === parserSpec.format.type && -1 !== value.indexOf("'-") ? value.replaceAll("'-", "':") : value);
175043
+ }
175044
+ evaluateExpression(operator, operandA, operandB) {
175045
+ switch (operator) {
175046
+ case "+":
175047
+ return operandA + operandB;
175048
+ case "-":
175049
+ return operandA - operandB;
175050
+ case "*":
175051
+ return operandA * operandB;
175052
+ case "/":
175053
+ return operandA / operandB;
175054
+ default:
175055
+ return operandA;
175056
+ }
175057
+ }
175058
+ parseExpression(currentValue, isAngle) {
175059
+ if (undefined === this._expression)
175060
+ return undefined; // Not an expression...
175061
+ // Attempt to parse and apply operation to current value...
175062
+ const operator = currentValue.lastIndexOf(this._expression.operator);
175063
+ if (-1 === operator) {
175064
+ this._expression = undefined; // Operator has been edited out of string, parse current value...
175065
+ return undefined;
175066
+ }
175067
+ const parserSpec = (isAngle ? this.getAngleParser() : this.getLengthParser());
175068
+ const formatterSpec = (isAngle ? this.getAngleFormatter() : this.getLengthFormatter());
175069
+ if (undefined === parserSpec || undefined === formatterSpec)
175070
+ return undefined; // Nothing to do...
175071
+ const operandAStr = currentValue.substring(0, operator);
175072
+ const parseResultA = parserSpec.parseToQuantityValue(this.makeParserHappy(operandAStr, isAngle));
175073
+ if (!_itwin_core_quantity__WEBPACK_IMPORTED_MODULE_0__.Parser.isParsedQuantity(parseResultA))
175074
+ return undefined; // First operand isn't valid, try to parse current value (which is also likely to fail)...
175075
+ const operandBStr = currentValue.substring(operator + this._expression.operator.length);
175076
+ const operatorKey = this._expression.operator[1];
175077
+ const isNumber = ("*" === operatorKey || "/" === operatorKey); // Treat as number for */ and quantity for +-...
175078
+ let operandB;
175079
+ if (isNumber) {
175080
+ operandB = parseFloat(operandBStr);
175081
+ if (Number.isNaN(operandB))
175082
+ return operandAStr; // Second operand is invalid number, set value to first operand which is valid...
175083
+ }
175084
+ else {
175085
+ const parseResultB = parserSpec.parseToQuantityValue(this.makeParserHappy(operandBStr, isAngle));
175086
+ if (!_itwin_core_quantity__WEBPACK_IMPORTED_MODULE_0__.Parser.isParsedQuantity(parseResultB))
175087
+ return operandAStr; // Second operand is invalid quantity, set value to first operand which is valid...
175088
+ operandB = parseResultB.value;
175089
+ }
175090
+ const operandA = parseResultA.value;
175091
+ const newValue = this.evaluateExpression(operatorKey, operandA, operandB);
175092
+ const newValueStr = _IModelApp__WEBPACK_IMPORTED_MODULE_3__.IModelApp.quantityFormatter.formatQuantity(newValue, formatterSpec);
175093
+ return newValueStr;
175094
+ }
176955
175095
  async processPartialInput(item) {
176956
175096
  if (undefined === this._controls)
176957
175097
  return;
176958
175098
  const itemField = this._controls.itemFields[item];
176959
- if (0 !== itemField.value.length)
176960
- return this.processFieldInput(item, itemField.value, false);
176961
- this.updateFieldLock(item, false);
176962
- _IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.toolAdmin.simulateMotionEvent();
175099
+ const currentValue = itemField.value;
175100
+ // If current value has been deleted, unlock field and refresh for current cursor location...
175101
+ if (0 === currentValue.length) {
175102
+ this.updateFieldLock(item, false);
175103
+ _IModelApp__WEBPACK_IMPORTED_MODULE_3__.IModelApp.toolAdmin.simulateMotionEvent();
175104
+ return;
175105
+ }
175106
+ const isAngle = (_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.ANGLE_Item === item);
175107
+ const expressionValue = this.parseExpression(currentValue, isAngle);
175108
+ return this.processFieldInput(item, this.makeParserHappy(expressionValue ?? currentValue, isAngle), false);
176963
175109
  }
176964
175110
  async acceptPartialInput(item, forward) {
176965
175111
  if (undefined === this._controls)
176966
175112
  return;
175113
+ const itemField = this._controls.itemFields[item];
175114
+ const currentValue = itemField.value;
175115
+ const isAngle = (_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.ANGLE_Item === item);
175116
+ const expressionValue = this.parseExpression(currentValue, isAngle);
176967
175117
  if (undefined === forward)
176968
- return _AccuDrawTool__WEBPACK_IMPORTED_MODULE_3__.AccuDrawShortcuts.itemFieldAcceptInput(item, this._controls.itemFields[item].value);
176969
- return _AccuDrawTool__WEBPACK_IMPORTED_MODULE_3__.AccuDrawShortcuts.itemFieldNavigate(item, this._controls.itemFields[item].value, forward);
175118
+ return _AccuDrawTool__WEBPACK_IMPORTED_MODULE_4__.AccuDrawShortcuts.itemFieldAcceptInput(item, this.makeParserHappy(expressionValue ?? currentValue, isAngle));
175119
+ return _AccuDrawTool__WEBPACK_IMPORTED_MODULE_4__.AccuDrawShortcuts.itemFieldNavigate(item, this.makeParserHappy(expressionValue ?? currentValue, isAngle), forward);
176970
175120
  }
176971
175121
  acceptSavedValue(item, next) {
176972
175122
  if (next)
176973
- _AccuDrawTool__WEBPACK_IMPORTED_MODULE_3__.AccuDrawShortcuts.chooseNextValue(item);
175123
+ _AccuDrawTool__WEBPACK_IMPORTED_MODULE_4__.AccuDrawShortcuts.chooseNextValue(item);
176974
175124
  else
176975
- _AccuDrawTool__WEBPACK_IMPORTED_MODULE_3__.AccuDrawShortcuts.choosePreviousValue(item);
175125
+ _AccuDrawTool__WEBPACK_IMPORTED_MODULE_4__.AccuDrawShortcuts.choosePreviousValue(item);
176976
175126
  }
176977
175127
  doFocusHome(ev, isDown, _item) {
176978
175128
  ev.preventDefault();
@@ -176980,7 +175130,7 @@ class AccuDrawViewportUI extends _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.AccuDraw
176980
175130
  return;
176981
175131
  ev.stopPropagation();
176982
175132
  this.setFocusHome();
176983
- _IModelApp__WEBPACK_IMPORTED_MODULE_2__.IModelApp.viewManager.invalidateDecorationsAllViews();
175133
+ _IModelApp__WEBPACK_IMPORTED_MODULE_3__.IModelApp.viewManager.invalidateDecorationsAllViews();
176984
175134
  }
176985
175135
  async doChooseSavedValue(ev, isDown, item, next) {
176986
175136
  ev.preventDefault();
@@ -177051,33 +175201,97 @@ class AccuDrawViewportUI extends _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.AccuDraw
177051
175201
  return false;
177052
175202
  }
177053
175203
  doProcessOverrideKey(ev, isDown, item) {
177054
- if (undefined === this._controls)
175204
+ if (undefined === this._controls || !AccuDrawViewportUI.controlProps.simplifiedInput)
177055
175205
  return false;
177056
175206
  switch (ev.key) {
177057
175207
  case "^":
177058
- return this.processReplacementKey(ev, isDown, item, (_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.ANGLE_Item === item ? "°" : ""), false); // Easier "°" input...
175208
+ return this.processReplacementKey(ev, isDown, item, (_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.ANGLE_Item === item ? "°" : ""), false); // Easier "°" input...
177059
175209
  case ";":
177060
- return this.processReplacementKey(ev, isDown, item, (_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.ANGLE_Item === item ? "°" : ":"), false); // Easier ":" input still useful w/o MU:SU:PU?
175210
+ return this.processReplacementKey(ev, isDown, item, (_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.ANGLE_Item === item ? "°" : ":"), false); // Easier ":" input still useful w/o MU:SU:PU?
177061
175211
  case ".":
177062
175212
  return this.processRepeatedKey(ev, isDown, item, ":"); // Still useful replacing ".." with ":" for numeric keypad users w/o MU:SU:PU?
177063
175213
  default:
177064
175214
  return false;
177065
175215
  }
177066
175216
  }
177067
- async doProcessUnhandledKey(ev, _isDown) {
177068
- ev.preventDefault();
175217
+ doProcessExpressionKey(ev, isDown, item) {
175218
+ if (undefined === this._controls || !AccuDrawViewportUI.controlProps.mathOperations)
175219
+ return false;
175220
+ const itemField = this._controls.itemFields[item];
175221
+ const currentValue = itemField.value;
175222
+ switch (ev.key) {
175223
+ case "ArrowLeft":
175224
+ case "ArrowRight":
175225
+ if (undefined === this._expression || !isDown || this.isDynamicKeyinStatus(item) || !itemField.selectionStart)
175226
+ break;
175227
+ const moveLeft = ("ArrowLeft" === ev.key);
175228
+ const operatorPosIns = currentValue.lastIndexOf(this._expression.operator);
175229
+ if (itemField.selectionStart !== (moveLeft ? operatorPosIns + this._expression.operator.length : operatorPosIns))
175230
+ break;
175231
+ // Treat expression operator string as a single character when moving the text insertion cursor...
175232
+ itemField.selectionStart = itemField.selectionEnd = (moveLeft ? operatorPosIns : operatorPosIns + this._expression.operator.length);
175233
+ ev.preventDefault();
175234
+ return true;
175235
+ case "Backspace":
175236
+ case "Delete":
175237
+ if (undefined === this._expression || !isDown || this.isDynamicKeyinStatus(item) || !itemField.selectionStart)
175238
+ break;
175239
+ const deleteBefore = ("Backspace" === ev.key);
175240
+ const operatorPosDel = currentValue.lastIndexOf(this._expression.operator);
175241
+ if (itemField.selectionStart !== (deleteBefore ? operatorPosDel + this._expression.operator.length : operatorPosDel))
175242
+ break;
175243
+ // Treat expression operator string as single character for delete...
175244
+ itemField.value = currentValue.substring(0, operatorPosDel);
175245
+ itemField.selectionStart = itemField.selectionEnd = itemField.value.length;
175246
+ this._expression = undefined;
175247
+ ev.preventDefault();
175248
+ return true;
175249
+ case " ":
175250
+ if (!isDown || !this.isDynamicKeyinStatus(item))
175251
+ break;
175252
+ this.setPartialKeyinStatus(item, false); // Replacing current w/space isn't useful, append to end to support + or - more conveniently...
175253
+ return true;
175254
+ case "+":
175255
+ case "-":
175256
+ case "*":
175257
+ case "/":
175258
+ if (!isDown || undefined !== this._expression)
175259
+ break;
175260
+ if (!currentValue.length || !itemField.selectionStart || itemField.selectionStart !== currentValue.length)
175261
+ break;
175262
+ const haveSpace = (" " === currentValue[itemField.selectionStart - 1]);
175263
+ const requireSpace = ("+" === ev.key || "-" === ev.key); // These are valid for 1st character to replace current value...
175264
+ if (!(requireSpace ? haveSpace : (haveSpace || this.isDynamicKeyinStatus(item))))
175265
+ break;
175266
+ const operator = ` ${ev.key} `;
175267
+ const expression = `${currentValue + (haveSpace ? operator.substring(1) : operator)}`;
175268
+ itemField.value = expression;
175269
+ itemField.selectionStart = itemField.selectionEnd = itemField.value.length;
175270
+ this._expression = { item, operator };
175271
+ this.setPartialKeyinStatus(item, false);
175272
+ ev.preventDefault();
175273
+ return true;
175274
+ }
175275
+ return false;
177069
175276
  }
177070
175277
  async doProcessKey(ev, isDown, item) {
177071
- // Make sure a potentially valid input field value is rejected when any qualifier other than shift is active...
177072
- if (ev.ctrlKey || ev.altKey || ev.metaKey || !this.itemFieldInputIsValid(ev.key, item))
177073
- return this.doProcessUnhandledKey(ev, isDown);
175278
+ if (!this.itemFieldInputIsValid(ev.key, item)) {
175279
+ ev.preventDefault(); // Ignore potential shortcuts...
175280
+ return;
175281
+ }
177074
175282
  if (this.doProcessOverrideKey(ev, isDown, item))
177075
175283
  return;
175284
+ if (this.doProcessExpressionKey(ev, isDown, item))
175285
+ return;
177076
175286
  if (isDown)
177077
175287
  return this.setPartialKeyinStatus(item, true);
177078
175288
  return this.processPartialInput(item);
177079
175289
  }
177080
175290
  async onKeyboardEvent(ev, isDown) {
175291
+ if (ev.ctrlKey || ev.altKey || ev.metaKey) {
175292
+ ev.preventDefault(); // Ignore qualifiers other than shift...
175293
+ return;
175294
+ }
177081
175295
  switch (ev.key) {
177082
175296
  case "Escape":
177083
175297
  return this.doFocusHome(ev, isDown, this._focusItem);
@@ -177097,14 +175311,19 @@ class AccuDrawViewportUI extends _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.AccuDraw
177097
175311
  return this.doNavigate(ev, isDown, this._focusItem, false);
177098
175312
  case "Enter":
177099
175313
  return this.doAcceptInput(ev, isDown, this._focusItem);
177100
- case "ArrowLeft":
177101
- case "ArrowRight":
177102
175314
  case "Home":
177103
175315
  case "End":
177104
175316
  case "Insert":
177105
175317
  return this.doNewInput(ev, isDown, this._focusItem);
175318
+ case "ArrowLeft":
175319
+ case "ArrowRight":
175320
+ if (this.doProcessExpressionKey(ev, isDown, this._focusItem))
175321
+ return;
175322
+ return this.doNewInput(ev, isDown, this._focusItem);
177106
175323
  case "Backspace":
177107
175324
  case "Delete":
175325
+ if (this.doProcessExpressionKey(ev, isDown, this._focusItem))
175326
+ return;
177108
175327
  return this.doDeleteInput(ev, isDown, this._focusItem);
177109
175328
  default:
177110
175329
  return this.doProcessKey(ev, isDown, this._focusItem);
@@ -177129,7 +175348,10 @@ class AccuDrawViewportUI extends _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.AccuDraw
177129
175348
  return div;
177130
175349
  }
177131
175350
  updateItemFieldKeyinStatus(itemField, item) {
177132
- itemField.style.caretColor = this.isDynamicKeyinStatus(item) ? itemField.style.backgroundColor : itemField.style.color;
175351
+ const isDynamic = this.isDynamicKeyinStatus(item);
175352
+ if (isDynamic && item === this._expression?.item)
175353
+ this._expression = undefined; // Only valid when entering partial input...
175354
+ itemField.style.caretColor = isDynamic ? itemField.style.backgroundColor : itemField.style.color;
177133
175355
  }
177134
175356
  updateItemFieldValue(itemField, item) {
177135
175357
  const value = this.getFormattedValueByIndex(item);
@@ -177175,19 +175397,19 @@ class AccuDrawViewportUI extends _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.AccuDraw
177175
175397
  itemLock.contentEditable = "false";
177176
175398
  itemLock.disabled = true; // Don't receive focus...
177177
175399
  switch (item) {
177178
- case _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.DIST_Item:
175400
+ case _AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.DIST_Item:
177179
175401
  itemLock.innerHTML = "\u21A6"; // right arrow from bar...
177180
175402
  break;
177181
- case _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.ANGLE_Item:
175403
+ case _AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.ANGLE_Item:
177182
175404
  itemLock.innerHTML = "\u2221"; // measured angle...
177183
175405
  break;
177184
- case _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.X_Item:
175406
+ case _AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.X_Item:
177185
175407
  itemLock.innerHTML = "X";
177186
175408
  break;
177187
- case _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.Y_Item:
175409
+ case _AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.Y_Item:
177188
175410
  itemLock.innerHTML = "Y";
177189
175411
  break;
177190
- case _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.Z_Item:
175412
+ case _AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.Z_Item:
177191
175413
  itemLock.innerHTML = "Z";
177192
175414
  break;
177193
175415
  }
@@ -177195,58 +175417,68 @@ class AccuDrawViewportUI extends _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.AccuDraw
177195
175417
  this.initializeItemStyle(style, true);
177196
175418
  this.updateItemFieldLock(itemLock, item);
177197
175419
  const button = AccuDrawViewportUI.controlProps.button;
177198
- style.paddingLeft = style.paddingRight = button.padding;
175420
+ style.paddingLeft = style.paddingRight = "0";
177199
175421
  style.marginLeft = style.marginRight = button.margin;
177200
175422
  style.outlineWidth = button.outlineWidth;
177201
175423
  return itemLock;
177202
175424
  }
175425
+ /** Use to override the position of the controls in the supplied view. */
175426
+ modifyControlRect(_rect, _vp) { }
175427
+ /** Return the ViewRect currently occupied by the controls in the supplied view. */
175428
+ currentControlRect(vp) {
175429
+ if (undefined === this._controls || this._controls.overlay.parentElement !== vp.vpDiv)
175430
+ return undefined;
175431
+ const viewRect = vp.vpDiv.getBoundingClientRect();
175432
+ const elemRect = this._controls.div.getBoundingClientRect();
175433
+ const controlRect = new _common_ViewRect__WEBPACK_IMPORTED_MODULE_2__.ViewRect(elemRect.left - viewRect.left, elemRect.top - viewRect.top, elemRect.right - viewRect.left, elemRect.bottom - viewRect.top);
175434
+ return controlRect;
175435
+ }
177203
175436
  updateControlVisibility(isPolar, is3d) {
177204
175437
  if (undefined === this._controls)
177205
175438
  return;
177206
- this._controls.itemFields[_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.ANGLE_Item].hidden = !isPolar;
177207
- this._controls.itemLocks[_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.ANGLE_Item].hidden = !isPolar;
177208
- this._controls.itemFields[_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.DIST_Item].hidden = !isPolar;
177209
- this._controls.itemLocks[_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.DIST_Item].hidden = !isPolar;
177210
- this._controls.itemFields[_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.X_Item].hidden = isPolar;
177211
- this._controls.itemLocks[_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.X_Item].hidden = isPolar;
177212
- this._controls.itemFields[_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.Y_Item].hidden = isPolar;
177213
- this._controls.itemLocks[_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.Y_Item].hidden = isPolar;
175439
+ this._controls.itemFields[_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.ANGLE_Item].hidden = !isPolar;
175440
+ this._controls.itemLocks[_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.ANGLE_Item].hidden = !isPolar;
175441
+ this._controls.itemFields[_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.DIST_Item].hidden = !isPolar;
175442
+ this._controls.itemLocks[_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.DIST_Item].hidden = !isPolar;
175443
+ this._controls.itemFields[_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.X_Item].hidden = isPolar;
175444
+ this._controls.itemLocks[_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.X_Item].hidden = isPolar;
175445
+ this._controls.itemFields[_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.Y_Item].hidden = isPolar;
175446
+ this._controls.itemLocks[_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.Y_Item].hidden = isPolar;
177214
175447
  if (undefined === is3d)
177215
175448
  return;
177216
- this._controls.itemFields[_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.Z_Item].hidden = !is3d;
177217
- this._controls.itemLocks[_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.Z_Item].hidden = !is3d;
175449
+ this._controls.itemFields[_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.Z_Item].hidden = !is3d;
175450
+ this._controls.itemLocks[_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.Z_Item].hidden = !is3d;
177218
175451
  }
177219
175452
  updateControls(ev) {
177220
175453
  const vp = ev.viewport;
177221
175454
  if (undefined === vp || !this.isActive)
177222
175455
  return;
177223
175456
  if (undefined !== this._controls && this._controls.overlay.parentElement !== vp.vpDiv)
177224
- this.removeControls(); // TODO: View valid for active tool? Preserve partial input?
175457
+ this.removeControls(); // Could be enhanced to save/restore partial input of currently focused item...
175458
+ const props = AccuDrawViewportUI.controlProps;
177225
175459
  if (undefined === this._controls) {
177226
175460
  const overlay = vp.addNewDiv("accudraw-overlay", true, 35);
177227
175461
  const div = this.createControlDiv();
177228
- const is3dLayout = vp.view.is3d();
177229
- const isHorizontalLayout = AccuDrawViewportUI.controlProps.horizontalArrangement;
175462
+ const is3dLayout = this.is3dCompass(vp);
175463
+ const isHorizontalLayout = props.horizontalArrangement;
177230
175464
  overlay.appendChild(div);
177231
175465
  const createFieldAndLock = (item) => {
177232
175466
  const itemField = itemFields[item] = this.createItemField(item);
177233
175467
  itemField.style.top = isHorizontalLayout ? "0" : `${rowOffset}px`;
177234
175468
  itemField.style.left = isHorizontalLayout ? `${columnOffset}px` : "0";
177235
175469
  div.appendChild(itemField);
177236
- if (is3dLayout || _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.Z_Item !== item)
177237
- rowOffset += itemField.offsetHeight * AccuDrawViewportUI.controlProps.rowSpacingFactor;
175470
+ if (is3dLayout || _AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.Z_Item !== item)
175471
+ rowOffset += itemField.offsetHeight * props.rowSpacingFactor;
177238
175472
  itemWidth = itemField.offsetWidth;
177239
175473
  itemHeight = itemField.offsetHeight;
177240
175474
  const itemLock = itemLocks[item] = this.createItemFieldLock(item);
177241
175475
  itemLock.style.top = itemField.style.top;
177242
175476
  itemLock.style.left = isHorizontalLayout ? `${columnOffset + itemWidth}px` : `${itemWidth}px`;
175477
+ itemLock.style.width = itemLock.style.height = `${itemHeight}px`; // Make square of same height as text field...
177243
175478
  div.appendChild(itemLock);
177244
- if (0 === lockWidth)
177245
- lockWidth = itemLock.offsetWidth;
177246
- else
177247
- itemLock.style.width = `${lockWidth}px`;
177248
- if (is3dLayout || _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.Z_Item !== item)
177249
- columnOffset += (itemWidth + lockWidth) * AccuDrawViewportUI.controlProps.columnSpacingFactor;
175479
+ lockWidth = itemLock.offsetWidth;
175480
+ if (is3dLayout || _AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.Z_Item !== item)
175481
+ columnOffset += (itemWidth + lockWidth) * props.columnSpacingFactor;
177250
175482
  };
177251
175483
  let rowOffset = 0;
177252
175484
  let columnOffset = 0;
@@ -177255,32 +175487,33 @@ class AccuDrawViewportUI extends _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.AccuDraw
177255
175487
  let lockWidth = 0;
177256
175488
  const itemFields = [];
177257
175489
  const itemLocks = [];
177258
- createFieldAndLock(_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.DIST_Item);
177259
- createFieldAndLock(_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.ANGLE_Item);
175490
+ createFieldAndLock(_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.DIST_Item);
175491
+ createFieldAndLock(_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.ANGLE_Item);
177260
175492
  rowOffset = 0;
177261
175493
  columnOffset = 0;
177262
- createFieldAndLock(_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.X_Item);
177263
- createFieldAndLock(_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.Y_Item);
177264
- createFieldAndLock(_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.ItemField.Z_Item); // Both polar and rectangular modes support Z in 3d views...
175494
+ createFieldAndLock(_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.X_Item);
175495
+ createFieldAndLock(_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.Y_Item);
175496
+ createFieldAndLock(_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.ItemField.Z_Item); // Both polar and rectangular modes support Z in 3d views...
177265
175497
  div.style.width = isHorizontalLayout ? `${columnOffset}px` : `${itemWidth + lockWidth + 5}px`;
177266
- div.style.height = isHorizontalLayout ? `${itemHeight * AccuDrawViewportUI.controlProps.rowSpacingFactor}px` : `${rowOffset}px`;
175498
+ div.style.height = isHorizontalLayout ? `${itemHeight * props.rowSpacingFactor}px` : `${rowOffset}px`;
177267
175499
  this._controls = { overlay, div, itemFields, itemLocks };
177268
- this.updateControlVisibility(_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.CompassMode.Polar === this.compassMode, vp.view.is3d());
175500
+ this.updateControlVisibility(_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.CompassMode.Polar === this.compassMode, this.is3dCompass(vp));
177269
175501
  this.setFocusItem(this._focusItem);
177270
175502
  this.suspendToolTips();
177271
175503
  vp.onChangeView.addOnce(() => this.removeControls()); // Clear on view change/closure...
177272
175504
  }
177273
175505
  const viewRect = vp.viewRect;
177274
175506
  const position = vp.worldToView(ev.point);
177275
- if (AccuDrawViewportUI.controlProps.fixedLocation) {
175507
+ if (props.fixedLocation) {
177276
175508
  position.x = (viewRect.left + ((viewRect.width - this._controls.div.offsetWidth) * 0.5));
177277
175509
  position.y = (viewRect.bottom - this._controls.div.offsetHeight);
177278
175510
  }
177279
175511
  else {
177280
- position.x += Math.floor(vp.pixelsFromInches(0.4)) + 0.5;
177281
- position.y += Math.floor(vp.pixelsFromInches(0.1)) + 0.5;
175512
+ position.x += Math.floor(vp.pixelsFromInches(props.cursorOffset.x)) + 0.5;
175513
+ position.y += Math.floor(vp.pixelsFromInches(props.cursorOffset.y)) + 0.5;
177282
175514
  }
177283
- const controlRect = new _common_ViewRect__WEBPACK_IMPORTED_MODULE_1__.ViewRect(position.x, position.y, position.x + this._controls.div.offsetWidth, position.y + this._controls.div.offsetHeight);
175515
+ const controlRect = new _common_ViewRect__WEBPACK_IMPORTED_MODULE_2__.ViewRect(position.x, position.y, position.x + this._controls.div.offsetWidth, position.y + this._controls.div.offsetHeight);
175516
+ this.modifyControlRect(controlRect, vp);
177284
175517
  if (!controlRect.isContained(viewRect))
177285
175518
  return; // Keep showing at last valid location...
177286
175519
  this._controls.div.style.left = `${controlRect.left}px`;
@@ -177348,7 +175581,7 @@ class AccuDrawViewportUI extends _AccuDraw__WEBPACK_IMPORTED_MODULE_0__.AccuDraw
177348
175581
  * Used to show or hide the input fields that are applicable to the current mode.
177349
175582
  */
177350
175583
  onCompassModeChange() {
177351
- this.updateControlVisibility(_AccuDraw__WEBPACK_IMPORTED_MODULE_0__.CompassMode.Polar === this.compassMode);
175584
+ this.updateControlVisibility(_AccuDraw__WEBPACK_IMPORTED_MODULE_1__.CompassMode.Polar === this.compassMode);
177352
175585
  this.setFocusItem(this.defaultFocusItem());
177353
175586
  }
177354
175587
  /** Change notification for when the supplied input field switches between dynamic and partial input.
@@ -177398,6 +175631,12 @@ AccuDrawViewportUI.controlProps = {
177398
175631
  fixedLocation: false,
177399
175632
  /** Layout controls in a single row horizontally instead of in columns vertically as an option when using fixed location. */
177400
175633
  horizontalArrangement: false,
175634
+ /** When controls follow the cursor, the X and Y offsets applied to the current point to position the top left (values in inches based on screen DPI) */
175635
+ cursorOffset: { x: .4, y: .1 },
175636
+ /** Replace "^", ";", and ".." with "°" or ":" for easier input. */
175637
+ simplifiedInput: true,
175638
+ /** Enable simple math operations not supported by quantity parser. */
175639
+ mathOperations: true,
177401
175640
  /** Number of visible characters to show in text input fields. */
177402
175641
  fieldSize: 12,
177403
175642
  /** Row spacing of text input fields for vertical arrangement. */
@@ -177423,8 +175662,6 @@ AccuDrawViewportUI.controlProps = {
177423
175662
  button: {
177424
175663
  /** Background color of locked buttons. */
177425
175664
  pressedColor: "rgba(50, 50, 50, 0.75)",
177426
- /** Padding to use on left and right of label and affects overall width. */
177427
- padding: "0.25em",
177428
175665
  /** Margin to use on left and right to position relative to text input field. */
177429
175666
  margin: "0.25em",
177430
175667
  /** Width of border outline. */
@@ -181938,7 +180175,7 @@ class MeasureElementTool extends _PrimitiveTool__WEBPACK_IMPORTED_MODULE_10__.Pr
181938
180175
  candidates,
181939
180176
  };
181940
180177
  const result = await this.iModel.getMassProperties(requestProps);
181941
- if (_itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.BentleyStatus.SUCCESS !== result.status)
180178
+ if (_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.SUCCESS !== result.status)
181942
180179
  return;
181943
180180
  const toolTip = await this.getMarkerToolTip(result);
181944
180181
  const point = _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__.Point3d.fromJSON(result.centroid);
@@ -181962,7 +180199,7 @@ class MeasureElementTool extends _PrimitiveTool__WEBPACK_IMPORTED_MODULE_10__.Pr
181962
180199
  result = await this.iModel.getMassProperties(requestProps);
181963
180200
  this._checkedIds.set(hit.sourceId, result);
181964
180201
  }
181965
- return (_itwin_core_common__WEBPACK_IMPORTED_MODULE_2__.BentleyStatus.SUCCESS === result.status ? _ElementLocateManager__WEBPACK_IMPORTED_MODULE_4__.LocateFilterStatus.Accept : _ElementLocateManager__WEBPACK_IMPORTED_MODULE_4__.LocateFilterStatus.Reject);
180202
+ return (_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.BentleyStatus.SUCCESS === result.status ? _ElementLocateManager__WEBPACK_IMPORTED_MODULE_4__.LocateFilterStatus.Accept : _ElementLocateManager__WEBPACK_IMPORTED_MODULE_4__.LocateFilterStatus.Reject);
181966
180203
  }
181967
180204
  /** @internal */
181968
180205
  async onReinitialize() {
@@ -302947,7 +301184,20 @@ class Parser {
302947
301184
  }
302948
301185
  else {
302949
301186
  // not processing a number
302950
- if (isOperator(charCode)) {
301187
+ const isCharOperator = isOperator(charCode);
301188
+ const isSpacer = charCode === format.spacerOrDefault.charCodeAt(0) && charCode !== _Constants__WEBPACK_IMPORTED_MODULE_0__.QuantityConstants.CHAR_SPACE;
301189
+ if (isSpacer && i > 0 && i < str.length - 1) {
301190
+ const prevCharCode = str.charCodeAt(i - 1);
301191
+ if (isCharOperator && prevCharCode !== _Constants__WEBPACK_IMPORTED_MODULE_0__.QuantityConstants.CHAR_SPACE) {
301192
+ // ignore spacer if it's not at the start or end, not whitespace, and is not in front of a whitespace
301193
+ continue;
301194
+ }
301195
+ }
301196
+ if (wipToken.length === 0 && charCode === _Constants__WEBPACK_IMPORTED_MODULE_0__.QuantityConstants.CHAR_SPACE) {
301197
+ // Don't add space when the wip token is empty.
301198
+ continue;
301199
+ }
301200
+ if (isCharOperator) {
302951
301201
  if (wipToken.length > 0) {
302952
301202
  // There is a token is progress, process it now, before adding the new operator token.
302953
301203
  tokens.push(new ParseToken(wipToken));
@@ -302956,10 +301206,6 @@ class Parser {
302956
301206
  tokens.push(new ParseToken(str[i])); // Push an Operator Token in the list.
302957
301207
  continue;
302958
301208
  }
302959
- if (wipToken.length === 0 && charCode === _Constants__WEBPACK_IMPORTED_MODULE_0__.QuantityConstants.CHAR_SPACE) {
302960
- // Don't add space when the wip token is empty.
302961
- continue;
302962
- }
302963
301209
  wipToken = wipToken.concat(str[i]);
302964
301210
  }
302965
301211
  }
@@ -303191,10 +301437,7 @@ class Parser {
303191
301437
  let value = sign * tokenPair[0].value;
303192
301438
  let conversion;
303193
301439
  if (tokenPair.length === 2 && tokenPair[1].isString) {
303194
- const spacer = format.spacerOrDefault;
303195
- if (tokenPair[1].value !== spacer) { // ignore spacer
303196
- conversion = Parser.tryFindUnitConversion(tokenPair[1].value, unitsConversions, defaultUnit);
303197
- }
301440
+ conversion = Parser.tryFindUnitConversion(tokenPair[1].value, unitsConversions, defaultUnit);
303198
301441
  }
303199
301442
  if (!conversion) {
303200
301443
  if (compositeUnitIndex > 0 && format.units && format.units.length > compositeUnitIndex) {
@@ -304753,7 +302996,7 @@ exports.IModelSession = void 0;
304753
302996
  *--------------------------------------------------------------------------------------------*/
304754
302997
  const chai_1 = __webpack_require__(/*! chai */ "../../common/temp/node_modules/.pnpm/chai@4.3.10/node_modules/chai/index.js");
304755
302998
  const core_frontend_1 = __webpack_require__(/*! @itwin/core-frontend */ "../../core/frontend/lib/esm/core-frontend.js");
304756
- const itwins_client_1 = __webpack_require__(/*! @itwin/itwins-client */ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.2.0/node_modules/@itwin/itwins-client/lib/esm/itwins-client.js");
302999
+ const itwins_client_1 = __webpack_require__(/*! @itwin/itwins-client */ "../../common/temp/node_modules/.pnpm/@itwin+itwins-client@1.6.1/node_modules/@itwin/itwins-client/lib/esm/itwins-client.js");
304757
303000
  const core_common_1 = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
304758
303001
  const imodels_client_management_1 = __webpack_require__(/*! @itwin/imodels-client-management */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-client-management@5.8.1/node_modules/@itwin/imodels-client-management/lib/esm/index.js");
304759
303002
  const imodels_access_frontend_1 = __webpack_require__(/*! @itwin/imodels-access-frontend */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@5.2.1_ueafa4slb6ohrhyf7kbp6egmha/node_modules/@itwin/imodels-access-frontend/lib/esm/index.js");
@@ -304847,7 +303090,7 @@ const chai_1 = __webpack_require__(/*! chai */ "../../common/temp/node_modules/.
304847
303090
  const core_bentley_1 = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
304848
303091
  const core_common_1 = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
304849
303092
  const core_frontend_1 = __webpack_require__(/*! @itwin/core-frontend */ "../../core/frontend/lib/esm/core-frontend.js");
304850
- const frontend_1 = __webpack_require__(/*! @itwin/oidc-signin-tool/lib/cjs/frontend */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/frontend.js");
303093
+ const frontend_1 = __webpack_require__(/*! @itwin/oidc-signin-tool/lib/cjs/frontend */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/frontend.js");
304851
303094
  const imodels_access_frontend_1 = __webpack_require__(/*! @itwin/imodels-access-frontend */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-access-frontend@5.2.1_ueafa4slb6ohrhyf7kbp6egmha/node_modules/@itwin/imodels-access-frontend/lib/esm/index.js");
304852
303095
  const imodels_client_management_1 = __webpack_require__(/*! @itwin/imodels-client-management */ "../../common/temp/node_modules/.pnpm/@itwin+imodels-client-management@5.8.1/node_modules/@itwin/imodels-client-management/lib/esm/index.js");
304853
303096
  const Settings_1 = __webpack_require__(/*! ../../common/Settings */ "./lib/common/Settings.js");
@@ -304895,7 +303138,7 @@ class TestContext {
304895
303138
  this.initializeRpcInterfaces({ title: this.settings.Backend.name, version: this.settings.Backend.version });
304896
303139
  const iModelClient = new imodels_client_management_1.IModelsClient({ api: { baseUrl: `https://${process.env.IMJS_URL_PREFIX ?? ""}api.bentley.com/imodels` } });
304897
303140
  await core_frontend_1.NoRenderApp.startup({
304898
- applicationVersion: "4.11.0-dev.2",
303141
+ applicationVersion: "4.11.0-dev.4",
304899
303142
  applicationId: this.settings.gprid,
304900
303143
  authorizationClient: new frontend_1.TestFrontendAuthorizationClient(this.adminUserAccessToken),
304901
303144
  hubAccess: new imodels_access_frontend_1.FrontendIModelsAccess(iModelClient),
@@ -314686,7 +312929,7 @@ class SelectionManager {
314686
312929
  constructor(props) {
314687
312930
  this._imodelToolSelectionSyncHandlers = new Map();
314688
312931
  this._hiliteSetProviders = new Map();
314689
- this._knownIModels = new Map();
312932
+ this._knownIModels = new Set();
314690
312933
  this._currentSelection = new CurrentSelectionStorage();
314691
312934
  this._selectionChanges = new rxjs__WEBPACK_IMPORTED_MODULE_8__.Subject();
314692
312935
  this._listeners = [];
@@ -314697,7 +312940,7 @@ class SelectionManager {
314697
312940
  this._selectionStorage.selectionChangeEvent.addListener((args) => this._selectionChanges.next(args));
314698
312941
  this._selectionEventsSubscription = this.streamSelectionEvents();
314699
312942
  this._listeners.push(_itwin_core_frontend__WEBPACK_IMPORTED_MODULE_1__.IModelConnection.onOpen.addListener((imodel) => {
314700
- this._knownIModels.set(imodel.key, imodel);
312943
+ this._knownIModels.add(imodel);
314701
312944
  }));
314702
312945
  this._listeners.push(_itwin_core_frontend__WEBPACK_IMPORTED_MODULE_1__.IModelConnection.onClose.addListener((imodel) => {
314703
312946
  this.onConnectionClose(imodel);
@@ -314709,7 +312952,7 @@ class SelectionManager {
314709
312952
  }
314710
312953
  onConnectionClose(imodel) {
314711
312954
  this._hiliteSetProviders.delete(imodel);
314712
- this._knownIModels.delete(imodel.key);
312955
+ this._knownIModels.delete(imodel);
314713
312956
  this._currentSelection.clear(imodel.key);
314714
312957
  if (this._ownsStorage) {
314715
312958
  this.clearSelection("Connection Close Event", imodel);
@@ -314775,9 +313018,7 @@ class SelectionManager {
314775
313018
  return this._currentSelection.getSelection(imodel.key, level);
314776
313019
  }
314777
313020
  handleEvent(evt) {
314778
- if (!this._knownIModels.has(evt.imodel.key)) {
314779
- this._knownIModels.set(evt.imodel.key, evt.imodel);
314780
- }
313021
+ this._knownIModels.add(evt.imodel);
314781
313022
  switch (evt.changeType) {
314782
313023
  case _SelectionChangeEvent__WEBPACK_IMPORTED_MODULE_6__.SelectionChangeType.Add:
314783
313024
  this._selectionStorage.addToSelection({
@@ -314953,7 +313194,7 @@ class SelectionManager {
314953
313194
  .pipe((0,rxjs__WEBPACK_IMPORTED_MODULE_9__.mergeMap)((args) => {
314954
313195
  const currentSelectables = this._selectionStorage.getSelection({ iModelKey: args.imodelKey, level: args.level });
314955
313196
  return this._currentSelection.computeSelection(args.imodelKey, args.level, currentSelectables, args.selectables).pipe((0,rxjs__WEBPACK_IMPORTED_MODULE_9__.mergeMap)(({ level, changedSelection }) => {
314956
- const imodel = this._knownIModels.get(args.imodelKey);
313197
+ const imodel = findIModel(this._knownIModels, args.imodelKey);
314957
313198
  // istanbul ignore if
314958
313199
  if (!imodel) {
314959
313200
  return rxjs__WEBPACK_IMPORTED_MODULE_10__.EMPTY;
@@ -314975,6 +313216,14 @@ class SelectionManager {
314975
313216
  });
314976
313217
  }
314977
313218
  }
313219
+ function findIModel(set, key) {
313220
+ for (const imodel of set) {
313221
+ if (imodel.key === key) {
313222
+ return imodel;
313223
+ }
313224
+ }
313225
+ return undefined;
313226
+ }
314978
313227
  /** @internal */
314979
313228
  class ToolSelectionSyncHandler {
314980
313229
  constructor(imodel, logicalSelection) {
@@ -332471,7 +330720,7 @@ function __disposeResources(env) {
332471
330720
  /***/ ((module) => {
332472
330721
 
332473
330722
  "use strict";
332474
- module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.11.0-dev.2","description":"iTwin.js frontend components","main":"lib/cjs/core-frontend.js","module":"lib/esm/core-frontend.js","typings":"lib/cjs/core-frontend","license":"MIT","scripts":{"build":"npm run -s copy:public && npm run -s build:cjs && npm run -s build:esm && npm run -s webpackWorkers && npm run -s copy:workers","build:cjs":"npm run -s copy:js:cjs && tsc 1>&2 --outDir lib/cjs","build:esm":"npm run -s copy:js:esm && tsc 1>&2 --module ES2020 --outDir lib/esm","clean":"rimraf lib .rush/temp/package-deps*.json","copy:public":"cpx \\"./src/public/**/*\\" ./lib/public","copy:js:cjs":"cpx \\"./src/**/*.js\\" ./lib/cjs","copy:js:esm":"cpx \\"./src/**/*.js\\" ./lib/esm","copy:workers":"cpx \\"./lib/workers/webpack/parse-imdl-worker.js\\" ./lib/public/scripts","docs":"betools docs --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/map/*.d.ts,**/tile/*.d.ts,**/*-css.ts","extract-api":"betools extract-api --entry=core-frontend && npm run extract-extension-api","extract-extension-api":"eslint --no-inline-config -c extraction.eslint.config.js \\"./src/**/*.ts\\" 1>&2","lint":"eslint \\"./src/**/*.ts\\" 1>&2","lint-fix":"eslint --fix -f visualstudio \\"./src/**/*.ts\\" 1>&2","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run webpackTestWorker && vitest --run","cover":"npm run webpackTestWorker && vitest --run --coverage","test:debug":"vitest --run","webpackTests":"webpack --config ./src/test/utils/webpack.config.js 1>&2 && npm run -s webpackTestWorker","webpackTestWorker":"webpack --config ./src/test/worker/webpack.config.js 1>&2 && cpx \\"./lib/test/test-worker.js\\" ./lib/test","webpackWorkers":"webpack --config ./src/workers/ImdlParser/webpack.config.js 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core.git","directory":"core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:^4.11.0-dev.2","@itwin/core-bentley":"workspace:^4.11.0-dev.2","@itwin/core-common":"workspace:^4.11.0-dev.2","@itwin/core-geometry":"workspace:^4.11.0-dev.2","@itwin/core-orbitgt":"workspace:^4.11.0-dev.2","@itwin/core-quantity":"workspace:^4.11.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/eslint-plugin":"5.0.0-dev.1","@types/chai-as-promised":"^7","@vitest/browser":"^2.1.0","@vitest/coverage-v8":"^2.1.0","babel-loader":"~8.2.5","babel-plugin-istanbul":"~6.1.1","cpx2":"^3.0.0","eslint":"^9.13.0","glob":"^10.3.12","playwright":"~1.47.1","rimraf":"^3.0.2","source-map-loader":"^4.0.0","typescript":"~5.6.2","typemoq":"^2.1.0","vitest":"^2.1.0","vite-multiple-assets":"^1.3.1","vite-plugin-static-copy":"1.0.6","webpack":"^5.76.0"},"//dependencies":["NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API","NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed"],"dependencies":{"@itwin/cloud-agnostic-core":"^2.2.4","@itwin/object-storage-core":"^2.2.5","@itwin/core-i18n":"workspace:*","@itwin/core-telemetry":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@loaders.gl/core":"^3.1.6","@loaders.gl/draco":"^3.1.6","fuse.js":"^3.3.0","meshoptimizer":"~0.20.0","wms-capabilities":"0.4.0"}}');
330723
+ module.exports = JSON.parse('{"name":"@itwin/core-frontend","version":"4.11.0-dev.4","description":"iTwin.js frontend components","main":"lib/cjs/core-frontend.js","module":"lib/esm/core-frontend.js","typings":"lib/cjs/core-frontend","license":"MIT","scripts":{"build":"npm run -s copy:public && npm run -s build:cjs && npm run -s build:esm && npm run -s webpackWorkers && npm run -s copy:workers","build:cjs":"npm run -s copy:js:cjs && tsc 1>&2 --outDir lib/cjs","build:esm":"npm run -s copy:js:esm && tsc 1>&2 --module ES2020 --outDir lib/esm","clean":"rimraf lib .rush/temp/package-deps*.json","copy:public":"cpx \\"./src/public/**/*\\" ./lib/public","copy:js:cjs":"cpx \\"./src/**/*.js\\" ./lib/cjs","copy:js:esm":"cpx \\"./src/**/*.js\\" ./lib/esm","copy:workers":"cpx \\"./lib/workers/webpack/parse-imdl-worker.js\\" ./lib/public/scripts","docs":"betools docs --json=../../generated-docs/core/core-frontend/file.json --tsIndexFile=./core-frontend.ts --onlyJson --excludes=webgl/**/*,**/map/*.d.ts,**/tile/*.d.ts,**/*-css.ts","extract-api":"betools extract-api --entry=core-frontend && npm run extract-extension-api","extract-extension-api":"eslint --no-inline-config -c extraction.eslint.config.js \\"./src/**/*.ts\\" 1>&2","lint":"eslint \\"./src/**/*.ts\\" 1>&2","lint-fix":"eslint --fix -f visualstudio \\"./src/**/*.ts\\" 1>&2","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run webpackTestWorker && vitest --run","cover":"npm run webpackTestWorker && vitest --run","test:debug":"vitest --run","webpackTests":"webpack --config ./src/test/utils/webpack.config.js 1>&2 && npm run -s webpackTestWorker","webpackTestWorker":"webpack --config ./src/test/worker/webpack.config.js 1>&2 && cpx \\"./lib/test/test-worker.js\\" ./lib/test","webpackWorkers":"webpack --config ./src/workers/ImdlParser/webpack.config.js 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core.git","directory":"core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:^4.11.0-dev.4","@itwin/core-bentley":"workspace:^4.11.0-dev.4","@itwin/core-common":"workspace:^4.11.0-dev.4","@itwin/core-geometry":"workspace:^4.11.0-dev.4","@itwin/core-orbitgt":"workspace:^4.11.0-dev.4","@itwin/core-quantity":"workspace:^4.11.0-dev.4"},"//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/eslint-plugin":"5.0.0-dev.1","@types/chai-as-promised":"^7","@vitest/browser":"^3.0.5","@vitest/coverage-v8":"^3.0.5","cpx2":"^3.0.0","eslint":"^9.13.0","glob":"^10.3.12","playwright":"~1.47.1","rimraf":"^3.0.2","source-map-loader":"^4.0.0","typescript":"~5.6.2","typemoq":"^2.1.0","vitest":"^3.0.5","vite-multiple-assets":"^1.3.1","vite-plugin-static-copy":"1.0.6","webpack":"^5.76.0"},"//dependencies":["NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API","NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed"],"dependencies":{"@itwin/cloud-agnostic-core":"^2.2.4","@itwin/object-storage-core":"^2.3.0","@itwin/core-i18n":"workspace:*","@itwin/core-telemetry":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@loaders.gl/core":"^3.1.6","@loaders.gl/draco":"^3.1.6","fuse.js":"^3.3.0","meshoptimizer":"~0.20.0","wms-capabilities":"0.4.0"}}');
332475
330724
 
332476
330725
  /***/ }),
332477
330726
 
@@ -332840,7 +331089,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
332840
331089
  const chai_1 = __webpack_require__(/*! chai */ "../../common/temp/node_modules/.pnpm/chai@4.3.10/node_modules/chai/index.js");
332841
331090
  const core_bentley_1 = __webpack_require__(/*! @itwin/core-bentley */ "../../core/bentley/lib/esm/core-bentley.js");
332842
331091
  const core_frontend_1 = __webpack_require__(/*! @itwin/core-frontend */ "../../core/frontend/lib/esm/core-frontend.js");
332843
- const frontend_1 = __webpack_require__(/*! @itwin/oidc-signin-tool/lib/cjs/frontend */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/frontend.js");
331092
+ const frontend_1 = __webpack_require__(/*! @itwin/oidc-signin-tool/lib/cjs/frontend */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/frontend.js");
332844
331093
  const presentation_common_1 = __webpack_require__(/*! @itwin/presentation-common */ "../../presentation/common/lib/esm/presentation-common.js");
332845
331094
  const presentation_frontend_1 = __webpack_require__(/*! @itwin/presentation-frontend */ "../../presentation/frontend/lib/esm/presentation-frontend.js");
332846
331095
  const TestContext_1 = __webpack_require__(/*! ./setup/TestContext */ "./lib/frontend/setup/TestContext.js");
@@ -333072,7 +331321,7 @@ const core_bentley_1 = __webpack_require__(/*! @itwin/core-bentley */ "../../cor
333072
331321
  const core_geometry_1 = __webpack_require__(/*! @itwin/core-geometry */ "../../core/geometry/lib/esm/core-geometry.js");
333073
331322
  const core_common_1 = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
333074
331323
  const core_frontend_1 = __webpack_require__(/*! @itwin/core-frontend */ "../../core/frontend/lib/esm/core-frontend.js");
333075
- const frontend_1 = __webpack_require__(/*! @itwin/oidc-signin-tool/lib/cjs/frontend */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/frontend.js");
331324
+ const frontend_1 = __webpack_require__(/*! @itwin/oidc-signin-tool/lib/cjs/frontend */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/frontend.js");
333076
331325
  const TestContext_1 = __webpack_require__(/*! ./setup/TestContext */ "./lib/frontend/setup/TestContext.js");
333077
331326
  /* eslint-disable @typescript-eslint/no-deprecated */
333078
331327
  const expect = chai.expect;
@@ -333627,7 +331876,7 @@ const chai = __webpack_require__(/*! chai */ "../../common/temp/node_modules/.pn
333627
331876
  const chaiAsPromised = __webpack_require__(/*! chai-as-promised */ "../../common/temp/node_modules/.pnpm/chai-as-promised@7.1.1_chai@4.3.10/node_modules/chai-as-promised/lib/chai-as-promised.js");
333628
331877
  const core_common_1 = __webpack_require__(/*! @itwin/core-common */ "../../core/common/lib/esm/core-common.js");
333629
331878
  const core_frontend_1 = __webpack_require__(/*! @itwin/core-frontend */ "../../core/frontend/lib/esm/core-frontend.js");
333630
- const frontend_1 = __webpack_require__(/*! @itwin/oidc-signin-tool/lib/cjs/frontend */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.3.7_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/frontend.js");
331879
+ const frontend_1 = __webpack_require__(/*! @itwin/oidc-signin-tool/lib/cjs/frontend */ "../../common/temp/node_modules/.pnpm/@itwin+oidc-signin-tool@4.4.1_67wltvhdskk2oee2c3z2o4tfly/node_modules/@itwin/oidc-signin-tool/lib/cjs/frontend.js");
333631
331880
  const TestContext_1 = __webpack_require__(/*! ../setup/TestContext */ "./lib/frontend/setup/TestContext.js");
333632
331881
  const expect = chai.expect;
333633
331882
  chai.use(chaiAsPromised);