@itwin/ecschema-rpcinterface-tests 5.8.0-dev.6 → 5.8.0-dev.9

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.
@@ -28757,7 +28757,7 @@ class QueryBinder {
28757
28757
  else if (val instanceof _itwin_core_geometry__WEBPACK_IMPORTED_MODULE_1__.Point3d) {
28758
28758
  params.bindPoint3d(nameOrId, val);
28759
28759
  }
28760
- else if (val instanceof Array && val.length > 0 && typeof val[0] === "string" && _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.isValidId64(val[0])) {
28760
+ else if (val instanceof Array && (val.length === 0 || (val.every((item) => typeof item === "string" && _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Id64.isValidId64(item))))) {
28761
28761
  params.bindIdSet(nameOrId, val);
28762
28762
  }
28763
28763
  else if (typeof val === "undefined" || val === null) {
@@ -82513,12 +82513,22 @@ class BriefcaseEditorToolSettings {
82513
82513
  class BriefcaseConnection extends _IModelConnection__WEBPACK_IMPORTED_MODULE_5__.IModelConnection {
82514
82514
  _isClosed;
82515
82515
  _modelsMonitor;
82516
+ _locks;
82517
+ /** The ID of the briefcase.
82518
+ * @beta
82519
+ */
82520
+ briefcaseId;
82516
82521
  /** Default settings that can be used to control the behavior of [[Tool]]s that modify this briefcase.
82517
82522
  * @beta
82518
82523
  */
82519
82524
  editorToolSettings = new BriefcaseEditorToolSettings();
82520
82525
  /** Manages local changes to the briefcase via [Txns]($docs/learning/InteractiveEditing.md). */
82521
82526
  txns;
82527
+ /** Information about locks held on this iModel.
82528
+ * @note This is intended to be used by tools and other UI elements, to provide information about the current lock state. Implementations are expected to cache lock information and so may not reflect changes to locks immediately.
82529
+ * @alpha
82530
+ */
82531
+ get locks() { return this._locks; }
82522
82532
  isBriefcaseConnection() { return true; }
82523
82533
  /** The Guid that identifies the iTwin that owns this iModel. */
82524
82534
  get iTwinId() { return super.iTwinId ?? _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.Guid.empty; } // GuidString | undefined for IModelConnection, but required for BriefcaseConnection
@@ -82527,16 +82537,18 @@ class BriefcaseConnection extends _IModelConnection__WEBPACK_IMPORTED_MODULE_5__
82527
82537
  constructor(props, openMode) {
82528
82538
  super(props);
82529
82539
  this._openMode = openMode;
82540
+ this.briefcaseId = props.briefcaseId;
82530
82541
  this.txns = new _BriefcaseTxns__WEBPACK_IMPORTED_MODULE_2__.BriefcaseTxns(this);
82531
82542
  this._modelsMonitor = new ModelChangeMonitor(this);
82532
82543
  if (_itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.OpenMode.ReadWrite === this._openMode)
82533
82544
  this.txns.onAfterUndoRedo.addListener(async () => { await _IModelApp__WEBPACK_IMPORTED_MODULE_4__.IModelApp.toolAdmin.restartPrimitiveTool(); });
82534
82545
  this.categories.cache.attachToBriefcase(this);
82535
82546
  }
82536
- /** Open a BriefcaseConnection to a [BriefcaseDb]($backend). */
82537
- static async openFile(briefcaseProps) {
82547
+ static async openFile(briefcaseProps, lockServiceFactory) {
82538
82548
  const iModelProps = await _IpcApp__WEBPACK_IMPORTED_MODULE_6__.IpcApp.appFunctionIpc.openBriefcase(briefcaseProps);
82539
82549
  const connection = new this({ ...briefcaseProps, ...iModelProps }, briefcaseProps.readonly ? _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.OpenMode.Readonly : _itwin_core_bentley__WEBPACK_IMPORTED_MODULE_0__.OpenMode.ReadWrite);
82550
+ if (lockServiceFactory)
82551
+ connection._locks = await lockServiceFactory(connection);
82540
82552
  _IModelConnection__WEBPACK_IMPORTED_MODULE_5__.IModelConnection.onOpen.raiseEvent(connection);
82541
82553
  return connection;
82542
82554
  }
@@ -152212,14 +152224,20 @@ class RealityTileLoader {
152212
152224
  }
152213
152225
  const geom = await reader?.readGltfAndCreateGeometry(transform);
152214
152226
  // See RealityTileTree.reprojectAndResolveChildren for how reprojectionTransform is calculated
152227
+ // xForm is defined in root tile CRS, while geom is defined in iModel CRS
152215
152228
  const xForm = tile.reprojectionTransform;
152216
- if (tile.tree.reprojectGeometry && geom?.polyfaces && xForm) {
152217
- const polyfaces = geom.polyfaces.map((pf) => pf.cloneTransformed(xForm));
152218
- return { geometry: { polyfaces } };
152219
- }
152220
- else {
152221
- return { geometry: geom };
152229
+ if (tile.tree.reprojectGeometry && geom?.polyfaces?.length && xForm) {
152230
+ // Transform from iModel/Db CRS -> root tile CRS
152231
+ const dbToRoot = tile.tree.iModelTransform.inverse();
152232
+ if (dbToRoot) {
152233
+ // Conjugate xForm to apply it to polyfaces in iModel CRS:
152234
+ // dbToRoot converts to root tile CRS, xForm applies reprojection, iModelTransform converts back
152235
+ const polyfaceReprojectionTransform = tile.tree.iModelTransform.multiplyTransformTransform(xForm).multiplyTransformTransform(dbToRoot);
152236
+ const polyfaces = geom.polyfaces.map((pf) => pf.cloneTransformed(polyfaceReprojectionTransform));
152237
+ return { geometry: { polyfaces } };
152238
+ }
152222
152239
  }
152240
+ return { geometry: geom };
152223
152241
  }
152224
152242
  async loadGraphicsFromStream(tile, streamBuffer, system, isCanceled) {
152225
152243
  const format = this._getFormat(streamBuffer);
@@ -157174,7 +157192,7 @@ class QuantityTypeFormatsProvider {
157174
157192
  ["DefaultToolsUnits.VOLUME", QuantityType.Volume],
157175
157193
  ["DefaultToolsUnits.LENGTH_COORDINATE", QuantityType.Coordinate],
157176
157194
  ["CivilUnits.STATION", QuantityType.Stationing],
157177
- ["CivilUnits.LENGTH", QuantityType.LengthSurvey],
157195
+ ["CivilUnits.LENGTH", QuantityType.LengthEngineering],
157178
157196
  ["AecUnits.LENGTH", QuantityType.LengthEngineering]
157179
157197
  ]);
157180
157198
  async getFormat(name) {
@@ -321942,7 +321960,7 @@ var loadLanguages = instance.loadLanguages;
321942
321960
  /***/ ((module) => {
321943
321961
 
321944
321962
  "use strict";
321945
- module.exports = /*#__PURE__*/JSON.parse('{"name":"@itwin/core-frontend","version":"5.8.0-dev.6","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 && npm run -s copy:draco","build:cjs":"npm run -s copy:js:cjs && tsc 1>&2 --outDir lib/cjs","build:esm":"npm run -s copy:js:esm && tsc 1>&2 --module ES2022 --outDir lib/esm","clean":"rimraf -g lib .rush/temp/package-deps*.json","copy:public":"cpx \\"./src/public/**/*\\" ./lib/public","copy:js:cjs":"cpx \\"./src/**/*.js\\" ./lib/cjs","copy:js:esm":"cpx \\"./src/**/*.js\\" ./lib/esm","copy:workers":"cpx \\"./lib/workers/webpack/parse-imdl-worker.js\\" ./lib/public/scripts","copy:draco":"cpx \\"./node_modules/@loaders.gl/draco/dist/libs/*\\" ./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 && npm run -s extract","extract":"betools extract --fileExt=ts --extractFrom=./src/test/example-code --recursive --out=../../generated-docs/extract","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","lint-deprecation":"eslint --fix -f visualstudio --no-inline-config -c ../../common/config/eslint/eslint.config.deprecation-policy.js \\"./src/**/*.ts\\"","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run webpackTestWorker && vitest --run","cover":"npm run webpackTestWorker && vitest --run","webpackTests":"webpack --config ./src/test/utils/webpack.config.js 1>&2 && npm run -s webpackTestWorker","webpackTestWorker":"webpack --config ./src/test/worker/webpack.config.js 1>&2 && cpx \\"./lib/test/test-worker.js\\" ./lib/test","webpackWorkers":"webpack --config ./src/workers/ImdlParser/webpack.config.js 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core.git","directory":"core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*"},"//devDependencies":["NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install","NOTE: All tools used by scripts in this package must be listed as devDependencies"],"devDependencies":{"@bentley/aec-units-schema":"^1.0.3","@bentley/formats-schema":"^1.0.0","@bentley/units-schema":"^1.0.9","@itwin/appui-abstract":"workspace:*","@itwin/build-tools":"workspace:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*","@itwin/object-storage-core":"^3.0.4","@itwin/eslint-plugin":"^6.0.0","@types/chai-as-promised":"^7","@types/draco3d":"^1.4.10","@types/sinon":"^17.0.2","@vitest/browser":"^3.0.6","@vitest/coverage-v8":"^3.0.6","cpx2":"^8.0.0","eslint":"^9.31.0","glob":"^10.5.0","playwright":"~1.56.1","rimraf":"^6.0.1","sinon":"^17.0.2","source-map-loader":"^5.0.0","typescript":"~5.6.2","vitest":"^3.0.6","vite-multiple-assets":"^1.3.1","vite-plugin-static-copy":"2.2.0","webpack":"^5.97.1"},"//dependencies":["NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API","NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed"],"dependencies":{"@itwin/core-i18n":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@loaders.gl/core":"^4.3.4","@loaders.gl/draco":"^4.3.4","fuse.js":"^3.3.0","wms-capabilities":"0.4.0"}}');
321963
+ module.exports = /*#__PURE__*/JSON.parse('{"name":"@itwin/core-frontend","version":"5.8.0-dev.9","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 && npm run -s copy:draco","build:cjs":"npm run -s copy:js:cjs && tsc 1>&2 --outDir lib/cjs","build:esm":"npm run -s copy:js:esm && tsc 1>&2 --module ES2022 --outDir lib/esm","clean":"rimraf -g lib .rush/temp/package-deps*.json","copy:public":"cpx \\"./src/public/**/*\\" ./lib/public","copy:js:cjs":"cpx \\"./src/**/*.js\\" ./lib/cjs","copy:js:esm":"cpx \\"./src/**/*.js\\" ./lib/esm","copy:workers":"cpx \\"./lib/workers/webpack/parse-imdl-worker.js\\" ./lib/public/scripts","copy:draco":"cpx \\"./node_modules/@loaders.gl/draco/dist/libs/*\\" ./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 && npm run -s extract","extract":"betools extract --fileExt=ts --extractFrom=./src/test/example-code --recursive --out=../../generated-docs/extract","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","lint-deprecation":"eslint --fix -f visualstudio --no-inline-config -c ../../common/config/eslint/eslint.config.deprecation-policy.js \\"./src/**/*.ts\\"","pseudolocalize":"betools pseudolocalize --englishDir ./src/public/locales/en --out ./public/locales/en-PSEUDO","test":"npm run webpackTestWorker && vitest --run","cover":"npm run webpackTestWorker && vitest --run","webpackTests":"webpack --config ./src/test/utils/webpack.config.js 1>&2 && npm run -s webpackTestWorker","webpackTestWorker":"webpack --config ./src/test/worker/webpack.config.js 1>&2 && cpx \\"./lib/test/test-worker.js\\" ./lib/test","webpackWorkers":"webpack --config ./src/workers/ImdlParser/webpack.config.js 1>&2"},"repository":{"type":"git","url":"https://github.com/iTwin/itwinjs-core.git","directory":"core/frontend"},"keywords":["Bentley","BIM","iModel","digital-twin","iTwin"],"author":{"name":"Bentley Systems, Inc.","url":"http://www.bentley.com"},"peerDependencies":{"@itwin/appui-abstract":"workspace:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*"},"//devDependencies":["NOTE: All peerDependencies should also be listed as devDependencies since peerDependencies are not considered by npm install","NOTE: All tools used by scripts in this package must be listed as devDependencies"],"devDependencies":{"@bentley/aec-units-schema":"^1.0.3","@bentley/formats-schema":"^1.0.0","@bentley/units-schema":"^1.0.9","@itwin/appui-abstract":"workspace:*","@itwin/build-tools":"workspace:*","@itwin/core-bentley":"workspace:*","@itwin/core-common":"workspace:*","@itwin/core-geometry":"workspace:*","@itwin/core-orbitgt":"workspace:*","@itwin/core-quantity":"workspace:*","@itwin/ecschema-metadata":"workspace:*","@itwin/ecschema-rpcinterface-common":"workspace:*","@itwin/object-storage-core":"^3.0.4","@itwin/eslint-plugin":"^6.0.0","@types/chai-as-promised":"^7","@types/draco3d":"^1.4.10","@types/sinon":"^17.0.2","@vitest/browser":"^3.0.6","@vitest/coverage-v8":"^3.0.6","cpx2":"^8.0.0","eslint":"^9.31.0","glob":"^10.5.0","playwright":"~1.56.1","rimraf":"^6.0.1","sinon":"^17.0.2","source-map-loader":"^5.0.0","typescript":"~5.6.2","vitest":"^3.0.6","vite-multiple-assets":"^1.3.1","vite-plugin-static-copy":"2.2.0","webpack":"^5.97.1"},"//dependencies":["NOTE: these dependencies should be only for things that DO NOT APPEAR IN THE API","NOTE: core-frontend should remain UI technology agnostic, so no react/angular dependencies are allowed"],"dependencies":{"@itwin/core-i18n":"workspace:*","@itwin/webgl-compatibility":"workspace:*","@loaders.gl/core":"^4.3.4","@loaders.gl/draco":"^4.3.4","fuse.js":"^3.3.0","wms-capabilities":"0.4.0"}}');
321946
321964
 
321947
321965
  /***/ })
321948
321966