@itwin/core-backend 4.7.3 → 4.7.5

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.
Files changed (109) hide show
  1. package/CHANGELOG.md +15 -1
  2. package/lib/cjs/BackendHubAccess.js.map +1 -1
  3. package/lib/cjs/BackendLoggerCategory.js.map +1 -1
  4. package/lib/cjs/BisCoreSchema.js.map +1 -1
  5. package/lib/cjs/BlobContainerService.js.map +1 -1
  6. package/lib/cjs/BriefcaseManager.js.map +1 -1
  7. package/lib/cjs/Category.js.map +1 -1
  8. package/lib/cjs/ChangeSummaryManager.d.ts.map +1 -1
  9. package/lib/cjs/ChangeSummaryManager.js +6 -5
  10. package/lib/cjs/ChangeSummaryManager.js.map +1 -1
  11. package/lib/cjs/ChangedElementsDb.js.map +1 -1
  12. package/lib/cjs/ChangedElementsManager.js.map +1 -1
  13. package/lib/cjs/ChangesetECAdaptor.d.ts.map +1 -1
  14. package/lib/cjs/ChangesetECAdaptor.js +242 -237
  15. package/lib/cjs/ChangesetECAdaptor.js.map +1 -1
  16. package/lib/cjs/ChannelControl.js.map +1 -1
  17. package/lib/cjs/CheckpointManager.js.map +1 -1
  18. package/lib/cjs/ClassRegistry.js +5 -5
  19. package/lib/cjs/ClassRegistry.js.map +1 -1
  20. package/lib/cjs/CloudSqlite.js.map +1 -1
  21. package/lib/cjs/CodeService.js.map +1 -1
  22. package/lib/cjs/CodeSpecs.js.map +1 -1
  23. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  24. package/lib/cjs/CustomViewState3dCreator.js.map +1 -1
  25. package/lib/cjs/DevTools.js.map +1 -1
  26. package/lib/cjs/DisplayStyle.js.map +1 -1
  27. package/lib/cjs/ECDb.js.map +1 -1
  28. package/lib/cjs/ECSchemaXmlContext.js.map +1 -1
  29. package/lib/cjs/ECSqlStatement.js.map +1 -1
  30. package/lib/cjs/Element.d.ts +1 -1
  31. package/lib/cjs/Element.js +1 -1
  32. package/lib/cjs/Element.js.map +1 -1
  33. package/lib/cjs/ElementAspect.js.map +1 -1
  34. package/lib/cjs/ElementGraphics.js.map +1 -1
  35. package/lib/cjs/ElementTreeWalker.js.map +1 -1
  36. package/lib/cjs/Entity.js.map +1 -1
  37. package/lib/cjs/EntityReferences.js.map +1 -1
  38. package/lib/cjs/ExportGraphics.js.map +1 -1
  39. package/lib/cjs/ExternalSource.js.map +1 -1
  40. package/lib/cjs/GeoCoordConfig.js.map +1 -1
  41. package/lib/cjs/GeographicCRSServices.js.map +1 -1
  42. package/lib/cjs/GeometrySummary.js +47 -47
  43. package/lib/cjs/GeometrySummary.js.map +1 -1
  44. package/lib/cjs/HubMock.js.map +1 -1
  45. package/lib/cjs/IModelCloneContext.js.map +1 -1
  46. package/lib/cjs/IModelDb.d.ts.map +1 -1
  47. package/lib/cjs/IModelDb.js +11 -8
  48. package/lib/cjs/IModelDb.js.map +1 -1
  49. package/lib/cjs/IModelElementCloneContext.js.map +1 -1
  50. package/lib/cjs/IModelHost.js.map +1 -1
  51. package/lib/cjs/IModelJsFs.js.map +1 -1
  52. package/lib/cjs/IpcHost.js.map +1 -1
  53. package/lib/cjs/LineStyle.js.map +1 -1
  54. package/lib/cjs/LocalHub.js +1 -1
  55. package/lib/cjs/LocalHub.js.map +1 -1
  56. package/lib/cjs/LocalhostIpcHost.js.map +1 -1
  57. package/lib/cjs/Material.js.map +1 -1
  58. package/lib/cjs/Model.js.map +1 -1
  59. package/lib/cjs/NativeAppStorage.js.map +1 -1
  60. package/lib/cjs/NativeHost.js.map +1 -1
  61. package/lib/cjs/NavigationRelationship.js.map +1 -1
  62. package/lib/cjs/PromiseMemoizer.js.map +1 -1
  63. package/lib/cjs/PropertyStore.js.map +1 -1
  64. package/lib/cjs/Relationship.js.map +1 -1
  65. package/lib/cjs/RpcBackend.js.map +1 -1
  66. package/lib/cjs/SQLiteDb.js.map +1 -1
  67. package/lib/cjs/Schema.js.map +1 -1
  68. package/lib/cjs/SchemaSync.js.map +1 -1
  69. package/lib/cjs/SchemaUtils.js.map +1 -1
  70. package/lib/cjs/ServerBasedLocks.js.map +1 -1
  71. package/lib/cjs/SqliteChangesetReader.js.map +1 -1
  72. package/lib/cjs/SqliteStatement.js.map +1 -1
  73. package/lib/cjs/TextAnnotationElement.js.map +1 -1
  74. package/lib/cjs/TextAnnotationGeometry.js.map +1 -1
  75. package/lib/cjs/TextAnnotationLayout.js.map +1 -1
  76. package/lib/cjs/Texture.js.map +1 -1
  77. package/lib/cjs/TileStorage.js.map +1 -1
  78. package/lib/cjs/TxnManager.d.ts +2 -1
  79. package/lib/cjs/TxnManager.d.ts.map +1 -1
  80. package/lib/cjs/TxnManager.js +1 -0
  81. package/lib/cjs/TxnManager.js.map +1 -1
  82. package/lib/cjs/ViewDefinition.js.map +1 -1
  83. package/lib/cjs/ViewStateHydrator.js.map +1 -1
  84. package/lib/cjs/ViewStore.js.map +1 -1
  85. package/lib/cjs/assets/IModelChange.02.00.00.ecschema.xml +90 -90
  86. package/lib/cjs/assets/Settings/Schemas/Cloud.Schema.json +44 -44
  87. package/lib/cjs/assets/Settings/Schemas/Gcs.schema.json +31 -31
  88. package/lib/cjs/assets/Settings/Schemas/Workspace.Schema.json +52 -52
  89. package/lib/cjs/assets/Settings/backend.setting.json5 +132 -132
  90. package/lib/cjs/core-backend.js.map +1 -1
  91. package/lib/cjs/domains/FunctionalElements.js.map +1 -1
  92. package/lib/cjs/domains/FunctionalSchema.js.map +1 -1
  93. package/lib/cjs/domains/GenericElements.js.map +1 -1
  94. package/lib/cjs/domains/GenericSchema.js.map +1 -1
  95. package/lib/cjs/rpc/multipart.js.map +1 -1
  96. package/lib/cjs/rpc/tracing.js.map +1 -1
  97. package/lib/cjs/rpc/web/logging.js.map +1 -1
  98. package/lib/cjs/rpc/web/request.js.map +1 -1
  99. package/lib/cjs/rpc/web/response.js.map +1 -1
  100. package/lib/cjs/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  101. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  102. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  103. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  104. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  105. package/lib/cjs/rpc-impl/WipRpcImpl.js.map +1 -1
  106. package/lib/cjs/workspace/Settings.js.map +1 -1
  107. package/lib/cjs/workspace/SettingsSchemas.js.map +1 -1
  108. package/lib/cjs/workspace/Workspace.js.map +1 -1
  109. package/package.json +11 -11
@@ -1854,9 +1854,9 @@ IModelDb._settingPropNamespace = "settings";
1854
1854
  */
1855
1855
  getAspects(elementId, aspectClassFullName, excludedClassFullNames) {
1856
1856
  if (aspectClassFullName === undefined) {
1857
- const allAspects = this.runInstanceQuery(`SELECT $ FROM (
1858
- SELECT ECInstanceId, ECClassId FROM Bis.ElementMultiAspect WHERE Element.Id = :elementId
1859
- UNION ALL
1857
+ const allAspects = this.runInstanceQuery(`SELECT $ FROM (
1858
+ SELECT ECInstanceId, ECClassId FROM Bis.ElementMultiAspect WHERE Element.Id = :elementId
1859
+ UNION ALL
1860
1860
  SELECT ECInstanceId, ECClassId FROM Bis.ElementUniqueAspect WHERE Element.Id = :elementId) OPTIONS USE_JS_PROP_NAMES DO_NOT_TRUNCATE_BLOB`, elementId, excludedClassFullNames);
1861
1861
  if (allAspects.length === 0)
1862
1862
  core_bentley_1.Logger.logInfo(BackendLoggerCategory_1.BackendLoggerCategory.ECDb, `No aspects found for class ${aspectClassFullName} and element ${elementId}`);
@@ -1874,7 +1874,7 @@ IModelDb._settingPropNamespace = "settings";
1874
1874
  let classIdList = IModelDb.Elements.classMap.get(aspectClassFullName);
1875
1875
  if (classIdList === undefined) {
1876
1876
  const classIds = [];
1877
- this._iModel.withPreparedStatement(`select SourceECInstanceId from meta.ClassHasAllBaseClasses where TargetECInstanceId = (select ECInstanceId from meta.ECClassDef where Name='${fullClassName[1]}'
1877
+ this._iModel.withPreparedStatement(`select SourceECInstanceId from meta.ClassHasAllBaseClasses where TargetECInstanceId = (select ECInstanceId from meta.ECClassDef where Name='${fullClassName[1]}'
1878
1878
  and Schema.Id = (select ECInstanceId from meta.ECSchemaDef where Name='${fullClassName[0]}')) and SourceECInstanceId != TargetECInstanceId`, (statement) => {
1879
1879
  while (statement.step() === core_bentley_1.DbResult.BE_SQLITE_ROW)
1880
1880
  classIds.push(statement.getValue(0).getId());
@@ -1889,10 +1889,10 @@ IModelDb._settingPropNamespace = "settings";
1889
1889
  return [];
1890
1890
  }
1891
1891
  // Execute an instance query to retrieve all aspects from all the derived classes
1892
- const aspects = this.runInstanceQuery(`SELECT $ FROM (
1893
- SELECT ECInstanceId, ECClassId FROM Bis.ElementMultiAspect WHERE Element.Id = :elementId AND ECClassId IN (${classIdList})
1894
- UNION ALL
1895
- SELECT ECInstanceId, ECClassId FROM Bis.ElementUniqueAspect WHERE Element.Id = :elementId AND ECClassId IN (${classIdList})
1892
+ const aspects = this.runInstanceQuery(`SELECT $ FROM (
1893
+ SELECT ECInstanceId, ECClassId FROM Bis.ElementMultiAspect WHERE Element.Id = :elementId AND ECClassId IN (${classIdList})
1894
+ UNION ALL
1895
+ SELECT ECInstanceId, ECClassId FROM Bis.ElementUniqueAspect WHERE Element.Id = :elementId AND ECClassId IN (${classIdList})
1896
1896
  ) OPTIONS USE_JS_PROP_NAMES DO_NOT_TRUNCATE_BLOB`, elementId, excludedClassFullNames);
1897
1897
  if (aspects.length === 0)
1898
1898
  core_bentley_1.Logger.logInfo(BackendLoggerCategory_1.BackendLoggerCategory.ECDb, `No aspects found for class ${aspectClassFullName} and element ${elementId}`);
@@ -2368,6 +2368,7 @@ class BriefcaseDb extends IModelDb {
2368
2368
  // Restart default txn to trigger events when watch file is changed by some other process.
2369
2369
  const watcher = fs.watch(briefcaseDb.watchFilePathName, { persistent: false }, () => {
2370
2370
  nativeDb.restartDefaultTxn();
2371
+ briefcaseDb.changeset = briefcaseDb.nativeDb.getCurrentChangeset();
2371
2372
  });
2372
2373
  // Stop the watcher when we close this connection.
2373
2374
  briefcaseDb.onBeforeClose.addOnce(() => {
@@ -2575,6 +2576,7 @@ class BriefcaseDb extends IModelDb {
2575
2576
  this.initializeIModelDb();
2576
2577
  });
2577
2578
  IpcHost_1.IpcHost.notifyTxns(this, "notifyPulledChanges", this.changeset);
2579
+ this.txns.touchWatchFile();
2578
2580
  }
2579
2581
  /** Push changes to iModelHub. */
2580
2582
  async pushChanges(arg) {
@@ -2591,6 +2593,7 @@ class BriefcaseDb extends IModelDb {
2591
2593
  });
2592
2594
  const changeset = this.changeset;
2593
2595
  IpcHost_1.IpcHost.notifyTxns(this, "notifyPushedChanges", changeset);
2596
+ this.txns.touchWatchFile();
2594
2597
  }
2595
2598
  close() {
2596
2599
  super.close();