@itwin/core-backend 5.11.0-dev.9 → 5.12.0-dev.1

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 (507) hide show
  1. package/CHANGELOG.md +13 -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.d.ts +14 -1
  6. package/lib/cjs/BlobContainerService.d.ts.map +1 -1
  7. package/lib/cjs/BlobContainerService.js.map +1 -1
  8. package/lib/cjs/BriefcaseManager.d.ts +3 -1
  9. package/lib/cjs/BriefcaseManager.d.ts.map +1 -1
  10. package/lib/cjs/BriefcaseManager.js +3 -3
  11. package/lib/cjs/BriefcaseManager.js.map +1 -1
  12. package/lib/cjs/CatalogDb.js.map +1 -1
  13. package/lib/cjs/Category.js.map +1 -1
  14. package/lib/cjs/ChangeSummaryManager.js +2 -2
  15. package/lib/cjs/ChangeSummaryManager.js.map +1 -1
  16. package/lib/cjs/ChangedElementsDb.js.map +1 -1
  17. package/lib/cjs/ChangesetECAdaptor.js +248 -248
  18. package/lib/cjs/ChangesetECAdaptor.js.map +1 -1
  19. package/lib/cjs/ChangesetReader.js +3 -3
  20. package/lib/cjs/ChangesetReader.js.map +1 -1
  21. package/lib/cjs/ChangesetReaderTypes.js.map +1 -1
  22. package/lib/cjs/ChannelControl.js.map +1 -1
  23. package/lib/cjs/CheckpointManager.js.map +1 -1
  24. package/lib/cjs/ClassRegistry.js +5 -5
  25. package/lib/cjs/ClassRegistry.js.map +1 -1
  26. package/lib/cjs/CloudSqlite.d.ts +1 -1
  27. package/lib/cjs/CloudSqlite.d.ts.map +1 -1
  28. package/lib/cjs/CloudSqlite.js +4 -1
  29. package/lib/cjs/CloudSqlite.js.map +1 -1
  30. package/lib/cjs/CodeService.js.map +1 -1
  31. package/lib/cjs/CodeSpecs.js.map +1 -1
  32. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  33. package/lib/cjs/CustomViewState3dCreator.js.map +1 -1
  34. package/lib/cjs/DevTools.js.map +1 -1
  35. package/lib/cjs/DisplayStyle.d.ts.map +1 -1
  36. package/lib/cjs/DisplayStyle.js +4 -8
  37. package/lib/cjs/DisplayStyle.js.map +1 -1
  38. package/lib/cjs/ECDb.js.map +1 -1
  39. package/lib/cjs/ECSchemaXmlContext.js.map +1 -1
  40. package/lib/cjs/ECSqlRowExecutor.js.map +1 -1
  41. package/lib/cjs/ECSqlStatement.js.map +1 -1
  42. package/lib/cjs/ECSqlSyncReader.js.map +1 -1
  43. package/lib/cjs/EditTxn.d.ts +56 -1
  44. package/lib/cjs/EditTxn.d.ts.map +1 -1
  45. package/lib/cjs/EditTxn.js +138 -0
  46. package/lib/cjs/EditTxn.js.map +1 -1
  47. package/lib/cjs/Element.js.map +1 -1
  48. package/lib/cjs/ElementAspect.js.map +1 -1
  49. package/lib/cjs/ElementGraphics.js.map +1 -1
  50. package/lib/cjs/ElementTreeWalker.js.map +1 -1
  51. package/lib/cjs/Entity.js.map +1 -1
  52. package/lib/cjs/EntityReferences.js.map +1 -1
  53. package/lib/cjs/ExportGraphics.js.map +1 -1
  54. package/lib/cjs/ExternalSource.js.map +1 -1
  55. package/lib/cjs/FontFile.js.map +1 -1
  56. package/lib/cjs/GeoCoordConfig.d.ts +6 -0
  57. package/lib/cjs/GeoCoordConfig.d.ts.map +1 -1
  58. package/lib/cjs/GeoCoordConfig.js +6 -0
  59. package/lib/cjs/GeoCoordConfig.js.map +1 -1
  60. package/lib/cjs/GeographicCRSServices.js.map +1 -1
  61. package/lib/cjs/GeometrySummary.js +47 -47
  62. package/lib/cjs/GeometrySummary.js.map +1 -1
  63. package/lib/cjs/IModelDb.d.ts +40 -0
  64. package/lib/cjs/IModelDb.d.ts.map +1 -1
  65. package/lib/cjs/IModelDb.js +26 -8
  66. package/lib/cjs/IModelDb.js.map +1 -1
  67. package/lib/cjs/IModelDbFonts.js.map +1 -1
  68. package/lib/cjs/IModelElementCloneContext.js.map +1 -1
  69. package/lib/cjs/IModelHost.d.ts +5 -3
  70. package/lib/cjs/IModelHost.d.ts.map +1 -1
  71. package/lib/cjs/IModelHost.js.map +1 -1
  72. package/lib/cjs/IModelIncrementalSchemaLocater.js.map +1 -1
  73. package/lib/cjs/IModelJsFs.js.map +1 -1
  74. package/lib/cjs/ImageSourceConversion.js.map +1 -1
  75. package/lib/cjs/IpcHost.js.map +1 -1
  76. package/lib/cjs/LineStyle.js.map +1 -1
  77. package/lib/cjs/LocalHub.js +1 -1
  78. package/lib/cjs/LocalHub.js.map +1 -1
  79. package/lib/cjs/LocalhostIpcHost.js.map +1 -1
  80. package/lib/cjs/LockControl.js.map +1 -1
  81. package/lib/cjs/Material.js.map +1 -1
  82. package/lib/cjs/Model.js.map +1 -1
  83. package/lib/cjs/NativeAppStorage.js.map +1 -1
  84. package/lib/cjs/NativeHost.js +1 -1
  85. package/lib/cjs/NativeHost.js.map +1 -1
  86. package/lib/cjs/NavigationRelationship.js.map +1 -1
  87. package/lib/cjs/PartialChangeUnifier.js +7 -7
  88. package/lib/cjs/PartialChangeUnifier.js.map +1 -1
  89. package/lib/cjs/PromiseMemoizer.js.map +1 -1
  90. package/lib/cjs/PropertyStore.js.map +1 -1
  91. package/lib/cjs/Relationship.js.map +1 -1
  92. package/lib/cjs/RpcBackend.js.map +1 -1
  93. package/lib/cjs/SQLiteDb.js.map +1 -1
  94. package/lib/cjs/Schema.js.map +1 -1
  95. package/lib/cjs/SchemaSync.js.map +1 -1
  96. package/lib/cjs/SchemaUtils.js.map +1 -1
  97. package/lib/cjs/SheetIndex.js.map +1 -1
  98. package/lib/cjs/SqliteChangesetReader.js.map +1 -1
  99. package/lib/cjs/SqliteStatement.js.map +1 -1
  100. package/lib/cjs/StashManager.js.map +1 -1
  101. package/lib/cjs/Texture.js.map +1 -1
  102. package/lib/cjs/TileStorage.js.map +1 -1
  103. package/lib/cjs/TxnManager.js.map +1 -1
  104. package/lib/cjs/ViewDefinition.js.map +1 -1
  105. package/lib/cjs/ViewStateHydrator.js.map +1 -1
  106. package/lib/cjs/ViewStore.js.map +1 -1
  107. package/lib/cjs/annotations/ElementDrivesTextAnnotation.js.map +1 -1
  108. package/lib/cjs/annotations/FrameGeometry.js.map +1 -1
  109. package/lib/cjs/annotations/LeaderGeometry.js.map +1 -1
  110. package/lib/cjs/annotations/TextAnnotationElement.js.map +1 -1
  111. package/lib/cjs/annotations/TextAnnotationGeometry.js.map +1 -1
  112. package/lib/cjs/annotations/TextBlockGeometry.js.map +1 -1
  113. package/lib/cjs/annotations/TextBlockLayout.js.map +1 -1
  114. package/lib/cjs/assets/IModelChange.02.00.00.ecschema.xml +90 -90
  115. package/lib/cjs/assets/Settings/Schemas/Base.Schema.json +36 -36
  116. package/lib/cjs/assets/Settings/Schemas/Gcs.schema.json +28 -28
  117. package/lib/cjs/assets/Settings/Schemas/Workspace.Schema.json +94 -94
  118. package/lib/cjs/assets/Settings/backend.setting.json5 +21 -21
  119. package/lib/cjs/core-backend.js.map +1 -1
  120. package/lib/cjs/domains/FunctionalElements.js.map +1 -1
  121. package/lib/cjs/domains/FunctionalSchema.js.map +1 -1
  122. package/lib/cjs/domains/GenericElements.js.map +1 -1
  123. package/lib/cjs/domains/GenericSchema.js.map +1 -1
  124. package/lib/cjs/internal/ChangesetConflictArgs.js.map +1 -1
  125. package/lib/cjs/internal/ChannelAdmin.js.map +1 -1
  126. package/lib/cjs/internal/ElementLRUCache.js.map +1 -1
  127. package/lib/cjs/internal/FontFileImpl.js.map +1 -1
  128. package/lib/cjs/internal/HubMock.js.map +1 -1
  129. package/lib/cjs/internal/IModelDbFontsImpl.js.map +1 -1
  130. package/lib/cjs/internal/IntegrityCheck.js.map +1 -1
  131. package/lib/cjs/internal/NativePlatform.js.map +1 -1
  132. package/lib/cjs/internal/NoLocks.js.map +1 -1
  133. package/lib/cjs/internal/OnlineStatus.js.map +1 -1
  134. package/lib/cjs/internal/ServerBasedLocks.js +33 -33
  135. package/lib/cjs/internal/ServerBasedLocks.js.map +1 -1
  136. package/lib/cjs/internal/Symbols.js.map +1 -1
  137. package/lib/cjs/internal/annotations/fields.js.map +1 -1
  138. package/lib/cjs/internal/cross-package.js.map +1 -1
  139. package/lib/cjs/internal/workspace/SettingsEditorImpl.js.map +1 -1
  140. package/lib/cjs/internal/workspace/SettingsImpl.js.map +1 -1
  141. package/lib/cjs/internal/workspace/SettingsSchemasImpl.js.map +1 -1
  142. package/lib/cjs/internal/workspace/WorkspaceImpl.js.map +1 -1
  143. package/lib/cjs/internal/workspace/WorkspaceSqliteDb.js.map +1 -1
  144. package/lib/cjs/rpc/multipart.js.map +1 -1
  145. package/lib/cjs/rpc/tracing.js.map +1 -1
  146. package/lib/cjs/rpc/web/logging.js.map +1 -1
  147. package/lib/cjs/rpc/web/request.js.map +1 -1
  148. package/lib/cjs/rpc/web/response.js.map +1 -1
  149. package/lib/cjs/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  150. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  151. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  152. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  153. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  154. package/lib/cjs/workspace/Settings.js.map +1 -1
  155. package/lib/cjs/workspace/SettingsDb.js.map +1 -1
  156. package/lib/cjs/workspace/SettingsEditor.d.ts +4 -9
  157. package/lib/cjs/workspace/SettingsEditor.d.ts.map +1 -1
  158. package/lib/cjs/workspace/SettingsEditor.js +31 -15
  159. package/lib/cjs/workspace/SettingsEditor.js.map +1 -1
  160. package/lib/cjs/workspace/SettingsSchemas.js.map +1 -1
  161. package/lib/cjs/workspace/Workspace.js.map +1 -1
  162. package/lib/cjs/workspace/WorkspaceEditor.js.map +1 -1
  163. package/lib/esm/BackendHubAccess.js.map +1 -1
  164. package/lib/esm/BackendLoggerCategory.js.map +1 -1
  165. package/lib/esm/BisCoreSchema.js.map +1 -1
  166. package/lib/esm/BlobContainerService.d.ts +14 -1
  167. package/lib/esm/BlobContainerService.d.ts.map +1 -1
  168. package/lib/esm/BlobContainerService.js.map +1 -1
  169. package/lib/esm/BriefcaseManager.d.ts +3 -1
  170. package/lib/esm/BriefcaseManager.d.ts.map +1 -1
  171. package/lib/esm/BriefcaseManager.js +3 -3
  172. package/lib/esm/BriefcaseManager.js.map +1 -1
  173. package/lib/esm/CatalogDb.js.map +1 -1
  174. package/lib/esm/Category.js.map +1 -1
  175. package/lib/esm/ChangeSummaryManager.js +2 -2
  176. package/lib/esm/ChangeSummaryManager.js.map +1 -1
  177. package/lib/esm/ChangedElementsDb.js.map +1 -1
  178. package/lib/esm/ChangesetECAdaptor.js +248 -248
  179. package/lib/esm/ChangesetECAdaptor.js.map +1 -1
  180. package/lib/esm/ChangesetReader.js +3 -3
  181. package/lib/esm/ChangesetReader.js.map +1 -1
  182. package/lib/esm/ChangesetReaderTypes.js.map +1 -1
  183. package/lib/esm/ChannelControl.js.map +1 -1
  184. package/lib/esm/CheckpointManager.js.map +1 -1
  185. package/lib/esm/ClassRegistry.js +5 -5
  186. package/lib/esm/ClassRegistry.js.map +1 -1
  187. package/lib/esm/CloudSqlite.d.ts +1 -1
  188. package/lib/esm/CloudSqlite.d.ts.map +1 -1
  189. package/lib/esm/CloudSqlite.js +4 -1
  190. package/lib/esm/CloudSqlite.js.map +1 -1
  191. package/lib/esm/CodeService.js.map +1 -1
  192. package/lib/esm/CodeSpecs.js.map +1 -1
  193. package/lib/esm/ConcurrentQuery.js.map +1 -1
  194. package/lib/esm/CustomViewState3dCreator.js.map +1 -1
  195. package/lib/esm/DevTools.js.map +1 -1
  196. package/lib/esm/DisplayStyle.d.ts.map +1 -1
  197. package/lib/esm/DisplayStyle.js +4 -8
  198. package/lib/esm/DisplayStyle.js.map +1 -1
  199. package/lib/esm/ECDb.js.map +1 -1
  200. package/lib/esm/ECSchemaXmlContext.js.map +1 -1
  201. package/lib/esm/ECSqlRowExecutor.js.map +1 -1
  202. package/lib/esm/ECSqlStatement.js.map +1 -1
  203. package/lib/esm/ECSqlSyncReader.js.map +1 -1
  204. package/lib/esm/EditTxn.d.ts +56 -1
  205. package/lib/esm/EditTxn.d.ts.map +1 -1
  206. package/lib/esm/EditTxn.js +140 -2
  207. package/lib/esm/EditTxn.js.map +1 -1
  208. package/lib/esm/Element.js.map +1 -1
  209. package/lib/esm/ElementAspect.js.map +1 -1
  210. package/lib/esm/ElementGraphics.js.map +1 -1
  211. package/lib/esm/ElementTreeWalker.js.map +1 -1
  212. package/lib/esm/Entity.js.map +1 -1
  213. package/lib/esm/EntityReferences.js.map +1 -1
  214. package/lib/esm/ExportGraphics.js.map +1 -1
  215. package/lib/esm/ExternalSource.js.map +1 -1
  216. package/lib/esm/FontFile.js.map +1 -1
  217. package/lib/esm/GeoCoordConfig.d.ts +6 -0
  218. package/lib/esm/GeoCoordConfig.d.ts.map +1 -1
  219. package/lib/esm/GeoCoordConfig.js +6 -0
  220. package/lib/esm/GeoCoordConfig.js.map +1 -1
  221. package/lib/esm/GeographicCRSServices.js.map +1 -1
  222. package/lib/esm/GeometrySummary.js +47 -47
  223. package/lib/esm/GeometrySummary.js.map +1 -1
  224. package/lib/esm/IModelDb.d.ts +40 -0
  225. package/lib/esm/IModelDb.d.ts.map +1 -1
  226. package/lib/esm/IModelDb.js +26 -8
  227. package/lib/esm/IModelDb.js.map +1 -1
  228. package/lib/esm/IModelDbFonts.js.map +1 -1
  229. package/lib/esm/IModelElementCloneContext.js.map +1 -1
  230. package/lib/esm/IModelHost.d.ts +5 -3
  231. package/lib/esm/IModelHost.d.ts.map +1 -1
  232. package/lib/esm/IModelHost.js.map +1 -1
  233. package/lib/esm/IModelIncrementalSchemaLocater.js.map +1 -1
  234. package/lib/esm/IModelJsFs.js.map +1 -1
  235. package/lib/esm/ImageSourceConversion.js.map +1 -1
  236. package/lib/esm/IpcHost.js.map +1 -1
  237. package/lib/esm/LineStyle.js.map +1 -1
  238. package/lib/esm/LocalHub.js +1 -1
  239. package/lib/esm/LocalHub.js.map +1 -1
  240. package/lib/esm/LocalhostIpcHost.js.map +1 -1
  241. package/lib/esm/LockControl.js.map +1 -1
  242. package/lib/esm/Material.js.map +1 -1
  243. package/lib/esm/Model.js.map +1 -1
  244. package/lib/esm/NativeAppStorage.js.map +1 -1
  245. package/lib/esm/NativeHost.js +1 -1
  246. package/lib/esm/NativeHost.js.map +1 -1
  247. package/lib/esm/NavigationRelationship.js.map +1 -1
  248. package/lib/esm/PartialChangeUnifier.js +7 -7
  249. package/lib/esm/PartialChangeUnifier.js.map +1 -1
  250. package/lib/esm/PromiseMemoizer.js.map +1 -1
  251. package/lib/esm/PropertyStore.js.map +1 -1
  252. package/lib/esm/Relationship.js.map +1 -1
  253. package/lib/esm/RpcBackend.js.map +1 -1
  254. package/lib/esm/SQLiteDb.js.map +1 -1
  255. package/lib/esm/Schema.js.map +1 -1
  256. package/lib/esm/SchemaSync.js.map +1 -1
  257. package/lib/esm/SchemaUtils.js.map +1 -1
  258. package/lib/esm/SheetIndex.js.map +1 -1
  259. package/lib/esm/SqliteChangesetReader.js.map +1 -1
  260. package/lib/esm/SqliteStatement.js.map +1 -1
  261. package/lib/esm/StashManager.js.map +1 -1
  262. package/lib/esm/Texture.js.map +1 -1
  263. package/lib/esm/TileStorage.js.map +1 -1
  264. package/lib/esm/TxnManager.js.map +1 -1
  265. package/lib/esm/ViewDefinition.js.map +1 -1
  266. package/lib/esm/ViewStateHydrator.js.map +1 -1
  267. package/lib/esm/ViewStore.js.map +1 -1
  268. package/lib/esm/annotations/ElementDrivesTextAnnotation.js.map +1 -1
  269. package/lib/esm/annotations/FrameGeometry.js.map +1 -1
  270. package/lib/esm/annotations/LeaderGeometry.js.map +1 -1
  271. package/lib/esm/annotations/TextAnnotationElement.js.map +1 -1
  272. package/lib/esm/annotations/TextAnnotationGeometry.js.map +1 -1
  273. package/lib/esm/annotations/TextBlockGeometry.js.map +1 -1
  274. package/lib/esm/annotations/TextBlockLayout.js.map +1 -1
  275. package/lib/esm/core-backend.js.map +1 -1
  276. package/lib/esm/domains/FunctionalElements.js.map +1 -1
  277. package/lib/esm/domains/FunctionalSchema.js.map +1 -1
  278. package/lib/esm/domains/GenericElements.js.map +1 -1
  279. package/lib/esm/domains/GenericSchema.js.map +1 -1
  280. package/lib/esm/internal/ChangesetConflictArgs.js.map +1 -1
  281. package/lib/esm/internal/ChannelAdmin.js.map +1 -1
  282. package/lib/esm/internal/ElementLRUCache.js.map +1 -1
  283. package/lib/esm/internal/FontFileImpl.js.map +1 -1
  284. package/lib/esm/internal/HubMock.js.map +1 -1
  285. package/lib/esm/internal/IModelDbFontsImpl.js.map +1 -1
  286. package/lib/esm/internal/IntegrityCheck.js.map +1 -1
  287. package/lib/esm/internal/NativePlatform.js.map +1 -1
  288. package/lib/esm/internal/NoLocks.js.map +1 -1
  289. package/lib/esm/internal/OnlineStatus.js.map +1 -1
  290. package/lib/esm/internal/ServerBasedLocks.js +33 -33
  291. package/lib/esm/internal/ServerBasedLocks.js.map +1 -1
  292. package/lib/esm/internal/Symbols.js.map +1 -1
  293. package/lib/esm/internal/annotations/fields.js.map +1 -1
  294. package/lib/esm/internal/cross-package.js.map +1 -1
  295. package/lib/esm/internal/workspace/SettingsEditorImpl.js.map +1 -1
  296. package/lib/esm/internal/workspace/SettingsImpl.js.map +1 -1
  297. package/lib/esm/internal/workspace/SettingsSchemasImpl.js.map +1 -1
  298. package/lib/esm/internal/workspace/WorkspaceImpl.js.map +1 -1
  299. package/lib/esm/internal/workspace/WorkspaceSqliteDb.js.map +1 -1
  300. package/lib/esm/rpc/multipart.js.map +1 -1
  301. package/lib/esm/rpc/tracing.js.map +1 -1
  302. package/lib/esm/rpc/web/logging.js.map +1 -1
  303. package/lib/esm/rpc/web/request.js.map +1 -1
  304. package/lib/esm/rpc/web/response.js.map +1 -1
  305. package/lib/esm/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  306. package/lib/esm/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  307. package/lib/esm/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  308. package/lib/esm/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  309. package/lib/esm/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  310. package/lib/esm/test/AdvancedEqual.js.map +1 -1
  311. package/lib/esm/test/AnnotationTestUtils.js.map +1 -1
  312. package/lib/esm/test/AttachDb.test.js +11 -11
  313. package/lib/esm/test/AttachDb.test.js.map +1 -1
  314. package/lib/esm/test/ElementDrivesElement.test.js +23 -23
  315. package/lib/esm/test/ElementDrivesElement.test.js.map +1 -1
  316. package/lib/esm/test/ElementLRUCache.test.js.map +1 -1
  317. package/lib/esm/test/GeometryTestUtil.js.map +1 -1
  318. package/lib/esm/test/IModelHost.test.js.map +1 -1
  319. package/lib/esm/test/IModelTestUtils.js.map +1 -1
  320. package/lib/esm/test/ImageSourceConversion.test.js.map +1 -1
  321. package/lib/esm/test/IpcHost.test.js.map +1 -1
  322. package/lib/esm/test/KnownTestLocations.js.map +1 -1
  323. package/lib/esm/test/PrintElementTree.js.map +1 -1
  324. package/lib/esm/test/PropertyDb.test.js.map +1 -1
  325. package/lib/esm/test/RevisionUtility.js.map +1 -1
  326. package/lib/esm/test/SchemaChangesetCanBeReversed.test.js +51 -51
  327. package/lib/esm/test/SchemaChangesetCanBeReversed.test.js.map +1 -1
  328. package/lib/esm/test/SchemaUtils.test.js +25 -25
  329. package/lib/esm/test/SchemaUtils.test.js.map +1 -1
  330. package/lib/esm/test/SequentialLogMatcher.js.map +1 -1
  331. package/lib/esm/test/SquashSchemaAndDataChanges.test.js +129 -129
  332. package/lib/esm/test/SquashSchemaAndDataChanges.test.js.map +1 -1
  333. package/lib/esm/test/TestChangeSetUtility.js.map +1 -1
  334. package/lib/esm/test/TestEditTxn.js.map +1 -1
  335. package/lib/esm/test/TestUtils.d.ts +17 -2
  336. package/lib/esm/test/TestUtils.d.ts.map +1 -1
  337. package/lib/esm/test/TestUtils.js +21 -2
  338. package/lib/esm/test/TestUtils.js.map +1 -1
  339. package/lib/esm/test/annotations/Fields.test.js +53 -53
  340. package/lib/esm/test/annotations/Fields.test.js.map +1 -1
  341. package/lib/esm/test/annotations/FrameGeometry.test.js.map +1 -1
  342. package/lib/esm/test/annotations/LeaderGeometry.test.js.map +1 -1
  343. package/lib/esm/test/annotations/TextAnnotation.test.js +81 -16
  344. package/lib/esm/test/annotations/TextAnnotation.test.js.map +1 -1
  345. package/lib/esm/test/annotations/TextBlock.test.js.map +1 -1
  346. package/lib/esm/test/assets/IncrementalSchemaLocater/configs/old.config.js.map +1 -1
  347. package/lib/esm/test/assets/IncrementalSchemaLocater/configs/simple.config.js.map +1 -1
  348. package/lib/esm/test/categories/Category.test.js.map +1 -1
  349. package/lib/esm/test/codespec/CodeSpec.test.js.map +1 -1
  350. package/lib/esm/test/ecdb/CTE.test.js +88 -88
  351. package/lib/esm/test/ecdb/CTE.test.js.map +1 -1
  352. package/lib/esm/test/ecdb/ConcurrentQuery.test.js +23 -21
  353. package/lib/esm/test/ecdb/ConcurrentQuery.test.js.map +1 -1
  354. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.js +15 -15
  355. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.js.map +1 -1
  356. package/lib/esm/test/ecdb/ECDb.test.js +73 -73
  357. package/lib/esm/test/ecdb/ECDb.test.js.map +1 -1
  358. package/lib/esm/test/ecdb/ECDbTestHelper.js.map +1 -1
  359. package/lib/esm/test/ecdb/ECSchemaXmlContext.test.js.map +1 -1
  360. package/lib/esm/test/ecdb/ECSqlAst.test.js +65 -65
  361. package/lib/esm/test/ecdb/ECSqlAst.test.js.map +1 -1
  362. package/lib/esm/test/ecdb/ECSqlQuery.test.js +4 -4
  363. package/lib/esm/test/ecdb/ECSqlQuery.test.js.map +1 -1
  364. package/lib/esm/test/ecdb/ECSqlStatement.test.js +340 -334
  365. package/lib/esm/test/ecdb/ECSqlStatement.test.js.map +1 -1
  366. package/lib/esm/test/ecdb/ECSqlSyncReader.test.js.map +1 -1
  367. package/lib/esm/test/ecdb/QueryReaders.test.js +31 -31
  368. package/lib/esm/test/ecdb/QueryReaders.test.js.map +1 -1
  369. package/lib/esm/test/ecdb/SqliteStatement.test.js.map +1 -1
  370. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.js.map +1 -1
  371. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.js +21 -21
  372. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.js.map +1 -1
  373. package/lib/esm/test/ecsql/src/ECSqlTestParser.js.map +1 -1
  374. package/lib/esm/test/ecsql/src/ECSqlTestRunner.test.js.map +1 -1
  375. package/lib/esm/test/element/DeleteDefinitionElements.test.js.map +1 -1
  376. package/lib/esm/test/element/ElementAspect.test.js +22 -22
  377. package/lib/esm/test/element/ElementAspect.test.js.map +1 -1
  378. package/lib/esm/test/element/ElementDependencyGraph.test.js.map +1 -1
  379. package/lib/esm/test/element/ElementRoundTrip.test.js +139 -139
  380. package/lib/esm/test/element/ElementRoundTrip.test.js.map +1 -1
  381. package/lib/esm/test/element/ExcludedElements.test.js.map +1 -1
  382. package/lib/esm/test/element/ExternalSource.test.js.map +1 -1
  383. package/lib/esm/test/element/NullStructArray.test.js +13 -13
  384. package/lib/esm/test/element/NullStructArray.test.js.map +1 -1
  385. package/lib/esm/test/element/ProjectInformationRecord.test.js.map +1 -1
  386. package/lib/esm/test/element/SheetInformationAspect.test.js.map +1 -1
  387. package/lib/esm/test/element/UrlLink.test.js.map +1 -1
  388. package/lib/esm/test/font/FontFile.test.js.map +1 -1
  389. package/lib/esm/test/font/IModelDbFonts.test.js.map +1 -1
  390. package/lib/esm/test/hubaccess/ApplyChangeset.test.js +32 -32
  391. package/lib/esm/test/hubaccess/ApplyChangeset.test.js.map +1 -1
  392. package/lib/esm/test/hubaccess/BriefcaseManager.test.js.map +1 -1
  393. package/lib/esm/test/hubaccess/CheckpointManager.test.js.map +1 -1
  394. package/lib/esm/test/hubaccess/CodeSwap.test.d.ts +2 -0
  395. package/lib/esm/test/hubaccess/CodeSwap.test.d.ts.map +1 -0
  396. package/lib/esm/test/hubaccess/CodeSwap.test.js +431 -0
  397. package/lib/esm/test/hubaccess/CodeSwap.test.js.map +1 -0
  398. package/lib/esm/test/hubaccess/Rebase.test.js +56 -56
  399. package/lib/esm/test/hubaccess/Rebase.test.js.map +1 -1
  400. package/lib/esm/test/hubaccess/SemanticRebase.test.js +345 -345
  401. package/lib/esm/test/hubaccess/SemanticRebase.test.js.map +1 -1
  402. package/lib/esm/test/imageData.js.map +1 -1
  403. package/lib/esm/test/imodel/Code.test.js.map +1 -1
  404. package/lib/esm/test/imodel/ElementTreeWalker.test.js.map +1 -1
  405. package/lib/esm/test/imodel/GetTextureImage.test.js.map +1 -1
  406. package/lib/esm/test/imodel/IModel.test.js +54 -46
  407. package/lib/esm/test/imodel/IModel.test.js.map +1 -1
  408. package/lib/esm/test/imodel/ProjectExtents.test.js.map +1 -1
  409. package/lib/esm/test/imodel/SchemaXmlImport.test.js +21 -21
  410. package/lib/esm/test/imodel/SchemaXmlImport.test.js.map +1 -1
  411. package/lib/esm/test/incrementalSchemaLocater/ECSqlQueries.test.js.map +1 -1
  412. package/lib/esm/test/incrementalSchemaLocater/IncrementalLoading.test.js.map +1 -1
  413. package/lib/esm/test/incrementalSchemaLocater/TestContext.js.map +1 -1
  414. package/lib/esm/test/index.js.map +1 -1
  415. package/lib/esm/test/misc/DevTools.test.js.map +1 -1
  416. package/lib/esm/test/misc/EntitySubClasses.test.js.map +1 -1
  417. package/lib/esm/test/misc/PromiseMemoizer.test.js.map +1 -1
  418. package/lib/esm/test/native/DgnDbWorker.test.js.map +1 -1
  419. package/lib/esm/test/rpc/response.test.js.map +1 -1
  420. package/lib/esm/test/schema/ClassRegistry.test.js +99 -99
  421. package/lib/esm/test/schema/ClassRegistry.test.js.map +1 -1
  422. package/lib/esm/test/schema/FunctionalDomain.test.js.map +1 -1
  423. package/lib/esm/test/schema/GenericDomain.test.js.map +1 -1
  424. package/lib/esm/test/schema/IModelSchemaContext.test.js +9 -9
  425. package/lib/esm/test/schema/IModelSchemaContext.test.js.map +1 -1
  426. package/lib/esm/test/schema/SchemaImportCallbacks.test.js +19 -19
  427. package/lib/esm/test/schema/SchemaImportCallbacks.test.js.map +1 -1
  428. package/lib/esm/test/schema/SchemaViewHidden.test.js +109 -109
  429. package/lib/esm/test/schema/SchemaViewHidden.test.js.map +1 -1
  430. package/lib/esm/test/schema/SchemaViewKoQ.test.js +13 -13
  431. package/lib/esm/test/schema/SchemaViewKoQ.test.js.map +1 -1
  432. package/lib/esm/test/schema/SchemaViewLifecycle.test.js +15 -15
  433. package/lib/esm/test/schema/SchemaViewLifecycle.test.js.map +1 -1
  434. package/lib/esm/test/schema/SchemaViewValidation.test.js +8 -8
  435. package/lib/esm/test/schema/SchemaViewValidation.test.js.map +1 -1
  436. package/lib/esm/test/sheetindex/SheetIndex.test.js.map +1 -1
  437. package/lib/esm/test/standalone/ChangeElementParentModel.test.d.ts +2 -0
  438. package/lib/esm/test/standalone/ChangeElementParentModel.test.d.ts.map +1 -0
  439. package/lib/esm/test/standalone/ChangeElementParentModel.test.js +460 -0
  440. package/lib/esm/test/standalone/ChangeElementParentModel.test.js.map +1 -0
  441. package/lib/esm/test/standalone/ChangeMerge.test.js.map +1 -1
  442. package/lib/esm/test/standalone/ChangesetReader.test.js +299 -296
  443. package/lib/esm/test/standalone/ChangesetReader.test.js.map +1 -1
  444. package/lib/esm/test/standalone/CloudSqlite.test.d.ts +2 -0
  445. package/lib/esm/test/standalone/CloudSqlite.test.d.ts.map +1 -0
  446. package/lib/esm/test/standalone/CloudSqlite.test.js +43 -0
  447. package/lib/esm/test/standalone/CloudSqlite.test.js.map +1 -0
  448. package/lib/esm/test/standalone/CustomViewState3dCreator.test.js.map +1 -1
  449. package/lib/esm/test/standalone/DeleteElements.test.js.map +1 -1
  450. package/lib/esm/test/standalone/DisplayStyle.test.js.map +1 -1
  451. package/lib/esm/test/standalone/Drawing.test.js.map +1 -1
  452. package/lib/esm/test/standalone/EditTxn.test.js.map +1 -1
  453. package/lib/esm/test/standalone/ElementGraphics.test.js.map +1 -1
  454. package/lib/esm/test/standalone/ElementMesh.test.js.map +1 -1
  455. package/lib/esm/test/standalone/ExportGraphics.test.js +14 -14
  456. package/lib/esm/test/standalone/ExportGraphics.test.js.map +1 -1
  457. package/lib/esm/test/standalone/GeometryChangeEvents.test.js.map +1 -1
  458. package/lib/esm/test/standalone/GeometryStream.test.js.map +1 -1
  459. package/lib/esm/test/standalone/HubMock.test.js.map +1 -1
  460. package/lib/esm/test/standalone/IModelLimits.test.js.map +1 -1
  461. package/lib/esm/test/standalone/IModelWrite.test.d.ts.map +1 -1
  462. package/lib/esm/test/standalone/IModelWrite.test.js +29 -60
  463. package/lib/esm/test/standalone/IModelWrite.test.js.map +1 -1
  464. package/lib/esm/test/standalone/ITwinWorkspace.test.js +118 -1
  465. package/lib/esm/test/standalone/ITwinWorkspace.test.js.map +1 -1
  466. package/lib/esm/test/standalone/InlineGeometryPartReferences.test.js.map +1 -1
  467. package/lib/esm/test/standalone/IntegrityCheck.test.js.map +1 -1
  468. package/lib/esm/test/standalone/MergeConflict.test.js.map +1 -1
  469. package/lib/esm/test/standalone/NativeAppStorage.test.js.map +1 -1
  470. package/lib/esm/test/standalone/RenderMaterialElement.test.js.map +1 -1
  471. package/lib/esm/test/standalone/RenderTimeline.test.js.map +1 -1
  472. package/lib/esm/test/standalone/SQLiteDb.test.js.map +1 -1
  473. package/lib/esm/test/standalone/SQliteChangesetReaderAndChangesetECAdaptor.test.js +135 -135
  474. package/lib/esm/test/standalone/SQliteChangesetReaderAndChangesetECAdaptor.test.js.map +1 -1
  475. package/lib/esm/test/standalone/SchemaUtils.test.js.map +1 -1
  476. package/lib/esm/test/standalone/SectionDrawing.test.js.map +1 -1
  477. package/lib/esm/test/standalone/ServerBasedLocks.test.js.map +1 -1
  478. package/lib/esm/test/standalone/Setting.test.js.map +1 -1
  479. package/lib/esm/test/standalone/Settings.test.js.map +1 -1
  480. package/lib/esm/test/standalone/SettingsSchemas.test.js.map +1 -1
  481. package/lib/esm/test/standalone/SnapshotDb.test.js.map +1 -1
  482. package/lib/esm/test/standalone/StandaloneDb.test.js +20 -20
  483. package/lib/esm/test/standalone/StandaloneDb.test.js.map +1 -1
  484. package/lib/esm/test/standalone/Texture.test.js.map +1 -1
  485. package/lib/esm/test/standalone/TileCache.test.js.map +1 -1
  486. package/lib/esm/test/standalone/TileTree.test.js.map +1 -1
  487. package/lib/esm/test/standalone/TxnManager.test.js.map +1 -1
  488. package/lib/esm/test/standalone/ViewDefinition.test.js.map +1 -1
  489. package/lib/esm/test/standalone/ViewStoreDb.test.js.map +1 -1
  490. package/lib/esm/test/standalone/Workspace.test.js +2 -2
  491. package/lib/esm/test/standalone/Workspace.test.js.map +1 -1
  492. package/lib/esm/test/standalone/iModelDb.test.js.map +1 -1
  493. package/lib/esm/test/workspace/SettingsDb.test.js.map +1 -1
  494. package/lib/esm/workspace/Settings.js.map +1 -1
  495. package/lib/esm/workspace/SettingsDb.js.map +1 -1
  496. package/lib/esm/workspace/SettingsEditor.d.ts +4 -9
  497. package/lib/esm/workspace/SettingsEditor.d.ts.map +1 -1
  498. package/lib/esm/workspace/SettingsEditor.js +31 -15
  499. package/lib/esm/workspace/SettingsEditor.js.map +1 -1
  500. package/lib/esm/workspace/SettingsSchemas.js.map +1 -1
  501. package/lib/esm/workspace/Workspace.js.map +1 -1
  502. package/lib/esm/workspace/WorkspaceEditor.js.map +1 -1
  503. package/package.json +15 -15
  504. package/lib/esm/test/misc/GeoServices.test.d.ts +0 -2
  505. package/lib/esm/test/misc/GeoServices.test.d.ts.map +0 -1
  506. package/lib/esm/test/misc/GeoServices.test.js +0 -918
  507. package/lib/esm/test/misc/GeoServices.test.js.map +0 -1
@@ -69,6 +69,7 @@ import { KnownTestLocations } from "../KnownTestLocations";
69
69
  import { ChangeUnifierCache, PartialChangeUnifier } from "../../PartialChangeUnifier";
70
70
  import { PropertyFilter } from "../../ChangesetReaderTypes";
71
71
  import { EditTxn } from "../../EditTxn";
72
+ import { DisableNativeAssertions } from "../TestUtils";
72
73
  /* eslint-disable @typescript-eslint/naming-convention */ // disabling it because the property names are not in camelcase, and we want to test them as-is
73
74
  /** Open a txn, drive the unifier, log and return all merged instances. */
74
75
  function readTxn(db, txnId, propFilter, rowOptions, invert, useInMemoryUnifierCache) {
@@ -115,44 +116,44 @@ describe("ChangesetReader insert-full", () => {
115
116
  rwIModel = await HubWrappers.downloadAndOpenBriefcase({ iTwinId, iModelId: rwIModelId, accessToken: adminToken });
116
117
  txn = startTestTxn(rwIModel, "ChangesetReader insert-full setup");
117
118
  // Txn 1: import schema + drawing model setup, then push
118
- const schema = `<?xml version="1.0" encoding="UTF-8"?>
119
- <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
120
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
121
- <!-- Rich struct: scalar fields + nested point2d/3d sub-properties -->
122
- <ECStructClass typeName="RichPoint" modifier="Sealed">
123
- <ECProperty propertyName="X" typeName="double"/>
124
- <ECProperty propertyName="Y" typeName="double"/>
125
- <ECProperty propertyName="Z" typeName="double"/>
126
- <ECProperty propertyName="Label" typeName="string"/>
127
- <ECProperty propertyName="Pt2d" typeName="point2d"/>
128
- <ECProperty propertyName="Pt3d" typeName="point3d"/>
129
- </ECStructClass>
130
- <!-- Relationship used by the RelatedElem navigation property -->
131
- <ECRelationshipClass typeName="Test2dUsesElement" strength="referencing" modifier="None">
132
- <Source multiplicity="(0..*)" roleLabel="uses" polymorphic="true"><Class class="Test2dElement"/></Source>
133
- <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="true"><Class class="bis:Element"/></Target>
134
- </ECRelationshipClass>
135
- <ECEntityClass typeName="Test2dElement">
136
- <BaseClass>bis:GraphicalElement2d</BaseClass>
137
- <!-- Primitives -->
138
- <ECProperty propertyName="StrProp" typeName="string"/>
139
- <ECProperty propertyName="IntProp" typeName="int"/>
140
- <ECProperty propertyName="LongProp" typeName="long"/>
141
- <ECProperty propertyName="DblProp" typeName="double"/>
142
- <ECProperty propertyName="BoolProp" typeName="boolean"/>
143
- <ECProperty propertyName="DtProp" typeName="dateTime"/>
144
- <ECProperty propertyName="BinProp" typeName="binary"/>
145
- <!-- Geometric primitives -->
146
- <ECProperty propertyName="Pt2dProp" typeName="point2d"/>
147
- <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
148
- <!-- Struct, arrays -->
149
- <ECStructProperty propertyName="StructProp" typeName="RichPoint"/>
150
- <ECArrayProperty propertyName="IntArrProp" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
151
- <ECArrayProperty propertyName="StrArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
152
- <ECStructArrayProperty propertyName="StructArrProp" typeName="RichPoint" minOccurs="0" maxOccurs="unbounded"/>
153
- <!-- Navigation property -->
154
- <ECNavigationProperty propertyName="RelatedElem" relationshipName="Test2dUsesElement" direction="forward"/>
155
- </ECEntityClass>
119
+ const schema = `<?xml version="1.0" encoding="UTF-8"?>
120
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
121
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
122
+ <!-- Rich struct: scalar fields + nested point2d/3d sub-properties -->
123
+ <ECStructClass typeName="RichPoint" modifier="Sealed">
124
+ <ECProperty propertyName="X" typeName="double"/>
125
+ <ECProperty propertyName="Y" typeName="double"/>
126
+ <ECProperty propertyName="Z" typeName="double"/>
127
+ <ECProperty propertyName="Label" typeName="string"/>
128
+ <ECProperty propertyName="Pt2d" typeName="point2d"/>
129
+ <ECProperty propertyName="Pt3d" typeName="point3d"/>
130
+ </ECStructClass>
131
+ <!-- Relationship used by the RelatedElem navigation property -->
132
+ <ECRelationshipClass typeName="Test2dUsesElement" strength="referencing" modifier="None">
133
+ <Source multiplicity="(0..*)" roleLabel="uses" polymorphic="true"><Class class="Test2dElement"/></Source>
134
+ <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="true"><Class class="bis:Element"/></Target>
135
+ </ECRelationshipClass>
136
+ <ECEntityClass typeName="Test2dElement">
137
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
138
+ <!-- Primitives -->
139
+ <ECProperty propertyName="StrProp" typeName="string"/>
140
+ <ECProperty propertyName="IntProp" typeName="int"/>
141
+ <ECProperty propertyName="LongProp" typeName="long"/>
142
+ <ECProperty propertyName="DblProp" typeName="double"/>
143
+ <ECProperty propertyName="BoolProp" typeName="boolean"/>
144
+ <ECProperty propertyName="DtProp" typeName="dateTime"/>
145
+ <ECProperty propertyName="BinProp" typeName="binary"/>
146
+ <!-- Geometric primitives -->
147
+ <ECProperty propertyName="Pt2dProp" typeName="point2d"/>
148
+ <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
149
+ <!-- Struct, arrays -->
150
+ <ECStructProperty propertyName="StructProp" typeName="RichPoint"/>
151
+ <ECArrayProperty propertyName="IntArrProp" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
152
+ <ECArrayProperty propertyName="StrArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
153
+ <ECStructArrayProperty propertyName="StructArrProp" typeName="RichPoint" minOccurs="0" maxOccurs="unbounded"/>
154
+ <!-- Navigation property -->
155
+ <ECNavigationProperty propertyName="RelatedElem" relationshipName="Test2dUsesElement" direction="forward"/>
156
+ </ECEntityClass>
156
157
  </ECSchema>`;
157
158
  await importSchemaStrings(txn, [schema]);
158
159
  rwIModel.channels.addAllowedChannel(ChannelControl.sharedChannelName);
@@ -1171,44 +1172,44 @@ describe("ChangesetReader insert-partial", () => {
1171
1172
  rwIModel = await HubWrappers.downloadAndOpenBriefcase({ iTwinId, iModelId: rwIModelId, accessToken: adminToken });
1172
1173
  txn = startTestTxn(rwIModel, "ChangesetReader insert-partial");
1173
1174
  // Txn 1: import schema + drawing model setup, then push
1174
- const schema = `<?xml version="1.0" encoding="UTF-8"?>
1175
- <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
1176
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
1177
- <!-- Rich struct: scalar fields + nested point2d/3d sub-properties -->
1178
- <ECStructClass typeName="RichPoint" modifier="Sealed">
1179
- <ECProperty propertyName="X" typeName="double"/>
1180
- <ECProperty propertyName="Y" typeName="double"/>
1181
- <ECProperty propertyName="Z" typeName="double"/>
1182
- <ECProperty propertyName="Label" typeName="string"/>
1183
- <ECProperty propertyName="Pt2d" typeName="point2d"/>
1184
- <ECProperty propertyName="Pt3d" typeName="point3d"/>
1185
- </ECStructClass>
1186
- <!-- Relationship used by the RelatedElem navigation property -->
1187
- <ECRelationshipClass typeName="Test2dUsesElement" strength="referencing" modifier="None">
1188
- <Source multiplicity="(0..*)" roleLabel="uses" polymorphic="true"><Class class="Test2dElement"/></Source>
1189
- <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="true"><Class class="bis:Element"/></Target>
1190
- </ECRelationshipClass>
1191
- <ECEntityClass typeName="Test2dElement">
1192
- <BaseClass>bis:GraphicalElement2d</BaseClass>
1193
- <!-- Primitives -->
1194
- <ECProperty propertyName="StrProp" typeName="string"/>
1195
- <ECProperty propertyName="IntProp" typeName="int"/>
1196
- <ECProperty propertyName="LongProp" typeName="long"/>
1197
- <ECProperty propertyName="DblProp" typeName="double"/>
1198
- <ECProperty propertyName="BoolProp" typeName="boolean"/>
1199
- <ECProperty propertyName="DtProp" typeName="dateTime"/>
1200
- <ECProperty propertyName="BinProp" typeName="binary"/>
1201
- <!-- Geometric primitives -->
1202
- <ECProperty propertyName="Pt2dProp" typeName="point2d"/>
1203
- <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
1204
- <!-- Struct, arrays -->
1205
- <ECStructProperty propertyName="StructProp" typeName="RichPoint"/>
1206
- <ECArrayProperty propertyName="IntArrProp" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
1207
- <ECArrayProperty propertyName="StrArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
1208
- <ECStructArrayProperty propertyName="StructArrProp" typeName="RichPoint" minOccurs="0" maxOccurs="unbounded"/>
1209
- <!-- Navigation property -->
1210
- <ECNavigationProperty propertyName="RelatedElem" relationshipName="Test2dUsesElement" direction="forward"/>
1211
- </ECEntityClass>
1175
+ const schema = `<?xml version="1.0" encoding="UTF-8"?>
1176
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
1177
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
1178
+ <!-- Rich struct: scalar fields + nested point2d/3d sub-properties -->
1179
+ <ECStructClass typeName="RichPoint" modifier="Sealed">
1180
+ <ECProperty propertyName="X" typeName="double"/>
1181
+ <ECProperty propertyName="Y" typeName="double"/>
1182
+ <ECProperty propertyName="Z" typeName="double"/>
1183
+ <ECProperty propertyName="Label" typeName="string"/>
1184
+ <ECProperty propertyName="Pt2d" typeName="point2d"/>
1185
+ <ECProperty propertyName="Pt3d" typeName="point3d"/>
1186
+ </ECStructClass>
1187
+ <!-- Relationship used by the RelatedElem navigation property -->
1188
+ <ECRelationshipClass typeName="Test2dUsesElement" strength="referencing" modifier="None">
1189
+ <Source multiplicity="(0..*)" roleLabel="uses" polymorphic="true"><Class class="Test2dElement"/></Source>
1190
+ <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="true"><Class class="bis:Element"/></Target>
1191
+ </ECRelationshipClass>
1192
+ <ECEntityClass typeName="Test2dElement">
1193
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
1194
+ <!-- Primitives -->
1195
+ <ECProperty propertyName="StrProp" typeName="string"/>
1196
+ <ECProperty propertyName="IntProp" typeName="int"/>
1197
+ <ECProperty propertyName="LongProp" typeName="long"/>
1198
+ <ECProperty propertyName="DblProp" typeName="double"/>
1199
+ <ECProperty propertyName="BoolProp" typeName="boolean"/>
1200
+ <ECProperty propertyName="DtProp" typeName="dateTime"/>
1201
+ <ECProperty propertyName="BinProp" typeName="binary"/>
1202
+ <!-- Geometric primitives -->
1203
+ <ECProperty propertyName="Pt2dProp" typeName="point2d"/>
1204
+ <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
1205
+ <!-- Struct, arrays -->
1206
+ <ECStructProperty propertyName="StructProp" typeName="RichPoint"/>
1207
+ <ECArrayProperty propertyName="IntArrProp" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
1208
+ <ECArrayProperty propertyName="StrArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
1209
+ <ECStructArrayProperty propertyName="StructArrProp" typeName="RichPoint" minOccurs="0" maxOccurs="unbounded"/>
1210
+ <!-- Navigation property -->
1211
+ <ECNavigationProperty propertyName="RelatedElem" relationshipName="Test2dUsesElement" direction="forward"/>
1212
+ </ECEntityClass>
1212
1213
  </ECSchema>`;
1213
1214
  await importSchemaStrings(txn, [schema]);
1214
1215
  rwIModel.channels.addAllowedChannel(ChannelControl.sharedChannelName);
@@ -1684,44 +1685,44 @@ describe("ChangesetReader update-full", () => {
1684
1685
  rwIModel = await HubWrappers.downloadAndOpenBriefcase({ iTwinId, iModelId: rwIModelId, accessToken: adminToken });
1685
1686
  txn = startTestTxn(rwIModel, "ChangesetReader update-full setup");
1686
1687
  // Txn 1: import schema + drawing model setup, then push
1687
- const schema = `<?xml version="1.0" encoding="UTF-8"?>
1688
- <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
1689
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
1690
- <!-- Rich struct: scalar fields + nested point2d/3d sub-properties -->
1691
- <ECStructClass typeName="RichPoint" modifier="Sealed">
1692
- <ECProperty propertyName="X" typeName="double"/>
1693
- <ECProperty propertyName="Y" typeName="double"/>
1694
- <ECProperty propertyName="Z" typeName="double"/>
1695
- <ECProperty propertyName="Label" typeName="string"/>
1696
- <ECProperty propertyName="Pt2d" typeName="point2d"/>
1697
- <ECProperty propertyName="Pt3d" typeName="point3d"/>
1698
- </ECStructClass>
1699
- <!-- Relationship used by the RelatedElem navigation property -->
1700
- <ECRelationshipClass typeName="Test2dUsesElement" strength="referencing" modifier="None">
1701
- <Source multiplicity="(0..*)" roleLabel="uses" polymorphic="true"><Class class="Test2dElement"/></Source>
1702
- <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="true"><Class class="bis:Element"/></Target>
1703
- </ECRelationshipClass>
1704
- <ECEntityClass typeName="Test2dElement">
1705
- <BaseClass>bis:GraphicalElement2d</BaseClass>
1706
- <!-- Primitives -->
1707
- <ECProperty propertyName="StrProp" typeName="string"/>
1708
- <ECProperty propertyName="IntProp" typeName="int"/>
1709
- <ECProperty propertyName="LongProp" typeName="long"/>
1710
- <ECProperty propertyName="DblProp" typeName="double"/>
1711
- <ECProperty propertyName="BoolProp" typeName="boolean"/>
1712
- <ECProperty propertyName="DtProp" typeName="dateTime"/>
1713
- <ECProperty propertyName="BinProp" typeName="binary"/>
1714
- <!-- Geometric primitives -->
1715
- <ECProperty propertyName="Pt2dProp" typeName="point2d"/>
1716
- <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
1717
- <!-- Struct, arrays -->
1718
- <ECStructProperty propertyName="StructProp" typeName="RichPoint"/>
1719
- <ECArrayProperty propertyName="IntArrProp" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
1720
- <ECArrayProperty propertyName="StrArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
1721
- <ECStructArrayProperty propertyName="StructArrProp" typeName="RichPoint" minOccurs="0" maxOccurs="unbounded"/>
1722
- <!-- Navigation property -->
1723
- <ECNavigationProperty propertyName="RelatedElem" relationshipName="Test2dUsesElement" direction="forward"/>
1724
- </ECEntityClass>
1688
+ const schema = `<?xml version="1.0" encoding="UTF-8"?>
1689
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
1690
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
1691
+ <!-- Rich struct: scalar fields + nested point2d/3d sub-properties -->
1692
+ <ECStructClass typeName="RichPoint" modifier="Sealed">
1693
+ <ECProperty propertyName="X" typeName="double"/>
1694
+ <ECProperty propertyName="Y" typeName="double"/>
1695
+ <ECProperty propertyName="Z" typeName="double"/>
1696
+ <ECProperty propertyName="Label" typeName="string"/>
1697
+ <ECProperty propertyName="Pt2d" typeName="point2d"/>
1698
+ <ECProperty propertyName="Pt3d" typeName="point3d"/>
1699
+ </ECStructClass>
1700
+ <!-- Relationship used by the RelatedElem navigation property -->
1701
+ <ECRelationshipClass typeName="Test2dUsesElement" strength="referencing" modifier="None">
1702
+ <Source multiplicity="(0..*)" roleLabel="uses" polymorphic="true"><Class class="Test2dElement"/></Source>
1703
+ <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="true"><Class class="bis:Element"/></Target>
1704
+ </ECRelationshipClass>
1705
+ <ECEntityClass typeName="Test2dElement">
1706
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
1707
+ <!-- Primitives -->
1708
+ <ECProperty propertyName="StrProp" typeName="string"/>
1709
+ <ECProperty propertyName="IntProp" typeName="int"/>
1710
+ <ECProperty propertyName="LongProp" typeName="long"/>
1711
+ <ECProperty propertyName="DblProp" typeName="double"/>
1712
+ <ECProperty propertyName="BoolProp" typeName="boolean"/>
1713
+ <ECProperty propertyName="DtProp" typeName="dateTime"/>
1714
+ <ECProperty propertyName="BinProp" typeName="binary"/>
1715
+ <!-- Geometric primitives -->
1716
+ <ECProperty propertyName="Pt2dProp" typeName="point2d"/>
1717
+ <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
1718
+ <!-- Struct, arrays -->
1719
+ <ECStructProperty propertyName="StructProp" typeName="RichPoint"/>
1720
+ <ECArrayProperty propertyName="IntArrProp" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
1721
+ <ECArrayProperty propertyName="StrArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
1722
+ <ECStructArrayProperty propertyName="StructArrProp" typeName="RichPoint" minOccurs="0" maxOccurs="unbounded"/>
1723
+ <!-- Navigation property -->
1724
+ <ECNavigationProperty propertyName="RelatedElem" relationshipName="Test2dUsesElement" direction="forward"/>
1725
+ </ECEntityClass>
1725
1726
  </ECSchema>`;
1726
1727
  await importSchemaStrings(txn, [schema]);
1727
1728
  rwIModel.channels.addAllowedChannel(ChannelControl.sharedChannelName);
@@ -2319,44 +2320,44 @@ describe("ChangesetReader delete-partial", () => {
2319
2320
  rwIModel = await HubWrappers.downloadAndOpenBriefcase({ iTwinId, iModelId: rwIModelId, accessToken: adminToken });
2320
2321
  txn = startTestTxn(rwIModel, "ChangesetReader delete-partial");
2321
2322
  // Txn 1: import schema + drawing model setup, then push
2322
- const schema = `<?xml version="1.0" encoding="UTF-8"?>
2323
- <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
2324
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
2325
- <!-- Rich struct: scalar fields + nested point2d/3d sub-properties -->
2326
- <ECStructClass typeName="RichPoint" modifier="Sealed">
2327
- <ECProperty propertyName="X" typeName="double"/>
2328
- <ECProperty propertyName="Y" typeName="double"/>
2329
- <ECProperty propertyName="Z" typeName="double"/>
2330
- <ECProperty propertyName="Label" typeName="string"/>
2331
- <ECProperty propertyName="Pt2d" typeName="point2d"/>
2332
- <ECProperty propertyName="Pt3d" typeName="point3d"/>
2333
- </ECStructClass>
2334
- <!-- Relationship used by the RelatedElem navigation property -->
2335
- <ECRelationshipClass typeName="Test2dUsesElement" strength="referencing" modifier="None">
2336
- <Source multiplicity="(0..*)" roleLabel="uses" polymorphic="true"><Class class="Test2dElement"/></Source>
2337
- <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="true"><Class class="bis:Element"/></Target>
2338
- </ECRelationshipClass>
2339
- <ECEntityClass typeName="Test2dElement">
2340
- <BaseClass>bis:GraphicalElement2d</BaseClass>
2341
- <!-- Primitives -->
2342
- <ECProperty propertyName="StrProp" typeName="string"/>
2343
- <ECProperty propertyName="IntProp" typeName="int"/>
2344
- <ECProperty propertyName="LongProp" typeName="long"/>
2345
- <ECProperty propertyName="DblProp" typeName="double"/>
2346
- <ECProperty propertyName="BoolProp" typeName="boolean"/>
2347
- <ECProperty propertyName="DtProp" typeName="dateTime"/>
2348
- <ECProperty propertyName="BinProp" typeName="binary"/>
2349
- <!-- Geometric primitives -->
2350
- <ECProperty propertyName="Pt2dProp" typeName="point2d"/>
2351
- <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
2352
- <!-- Struct, arrays -->
2353
- <ECStructProperty propertyName="StructProp" typeName="RichPoint"/>
2354
- <ECArrayProperty propertyName="IntArrProp" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
2355
- <ECArrayProperty propertyName="StrArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
2356
- <ECStructArrayProperty propertyName="StructArrProp" typeName="RichPoint" minOccurs="0" maxOccurs="unbounded"/>
2357
- <!-- Navigation property -->
2358
- <ECNavigationProperty propertyName="RelatedElem" relationshipName="Test2dUsesElement" direction="forward"/>
2359
- </ECEntityClass>
2323
+ const schema = `<?xml version="1.0" encoding="UTF-8"?>
2324
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
2325
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
2326
+ <!-- Rich struct: scalar fields + nested point2d/3d sub-properties -->
2327
+ <ECStructClass typeName="RichPoint" modifier="Sealed">
2328
+ <ECProperty propertyName="X" typeName="double"/>
2329
+ <ECProperty propertyName="Y" typeName="double"/>
2330
+ <ECProperty propertyName="Z" typeName="double"/>
2331
+ <ECProperty propertyName="Label" typeName="string"/>
2332
+ <ECProperty propertyName="Pt2d" typeName="point2d"/>
2333
+ <ECProperty propertyName="Pt3d" typeName="point3d"/>
2334
+ </ECStructClass>
2335
+ <!-- Relationship used by the RelatedElem navigation property -->
2336
+ <ECRelationshipClass typeName="Test2dUsesElement" strength="referencing" modifier="None">
2337
+ <Source multiplicity="(0..*)" roleLabel="uses" polymorphic="true"><Class class="Test2dElement"/></Source>
2338
+ <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="true"><Class class="bis:Element"/></Target>
2339
+ </ECRelationshipClass>
2340
+ <ECEntityClass typeName="Test2dElement">
2341
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
2342
+ <!-- Primitives -->
2343
+ <ECProperty propertyName="StrProp" typeName="string"/>
2344
+ <ECProperty propertyName="IntProp" typeName="int"/>
2345
+ <ECProperty propertyName="LongProp" typeName="long"/>
2346
+ <ECProperty propertyName="DblProp" typeName="double"/>
2347
+ <ECProperty propertyName="BoolProp" typeName="boolean"/>
2348
+ <ECProperty propertyName="DtProp" typeName="dateTime"/>
2349
+ <ECProperty propertyName="BinProp" typeName="binary"/>
2350
+ <!-- Geometric primitives -->
2351
+ <ECProperty propertyName="Pt2dProp" typeName="point2d"/>
2352
+ <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
2353
+ <!-- Struct, arrays -->
2354
+ <ECStructProperty propertyName="StructProp" typeName="RichPoint"/>
2355
+ <ECArrayProperty propertyName="IntArrProp" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
2356
+ <ECArrayProperty propertyName="StrArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
2357
+ <ECStructArrayProperty propertyName="StructArrProp" typeName="RichPoint" minOccurs="0" maxOccurs="unbounded"/>
2358
+ <!-- Navigation property -->
2359
+ <ECNavigationProperty propertyName="RelatedElem" relationshipName="Test2dUsesElement" direction="forward"/>
2360
+ </ECEntityClass>
2360
2361
  </ECSchema>`;
2361
2362
  await importSchemaStrings(txn, [schema]);
2362
2363
  rwIModel.channels.addAllowedChannel(ChannelControl.sharedChannelName);
@@ -2740,44 +2741,44 @@ describe("ChangesetReader filters", () => {
2740
2741
  rwIModel = await HubWrappers.downloadAndOpenBriefcase({ iTwinId, iModelId: rwIModelId, accessToken: adminToken });
2741
2742
  txn = startTestTxn(rwIModel, "ChangesetReader filters");
2742
2743
  // Txn 1: import schema + drawing model setup, then push
2743
- const schema = `<?xml version="1.0" encoding="UTF-8"?>
2744
- <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
2745
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
2746
- <!-- Rich struct: scalar fields + nested point2d/3d sub-properties -->
2747
- <ECStructClass typeName="RichPoint" modifier="Sealed">
2748
- <ECProperty propertyName="X" typeName="double"/>
2749
- <ECProperty propertyName="Y" typeName="double"/>
2750
- <ECProperty propertyName="Z" typeName="double"/>
2751
- <ECProperty propertyName="Label" typeName="string"/>
2752
- <ECProperty propertyName="Pt2d" typeName="point2d"/>
2753
- <ECProperty propertyName="Pt3d" typeName="point3d"/>
2754
- </ECStructClass>
2755
- <!-- Relationship used by the RelatedElem navigation property -->
2756
- <ECRelationshipClass typeName="Test2dUsesElement" strength="referencing" modifier="None">
2757
- <Source multiplicity="(0..*)" roleLabel="uses" polymorphic="true"><Class class="Test2dElement"/></Source>
2758
- <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="true"><Class class="bis:Element"/></Target>
2759
- </ECRelationshipClass>
2760
- <ECEntityClass typeName="Test2dElement">
2761
- <BaseClass>bis:GraphicalElement2d</BaseClass>
2762
- <!-- Primitives -->
2763
- <ECProperty propertyName="StrProp" typeName="string"/>
2764
- <ECProperty propertyName="IntProp" typeName="int"/>
2765
- <ECProperty propertyName="LongProp" typeName="long"/>
2766
- <ECProperty propertyName="DblProp" typeName="double"/>
2767
- <ECProperty propertyName="BoolProp" typeName="boolean"/>
2768
- <ECProperty propertyName="DtProp" typeName="dateTime"/>
2769
- <ECProperty propertyName="BinProp" typeName="binary"/>
2770
- <!-- Geometric primitives -->
2771
- <ECProperty propertyName="Pt2dProp" typeName="point2d"/>
2772
- <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
2773
- <!-- Struct, arrays -->
2774
- <ECStructProperty propertyName="StructProp" typeName="RichPoint"/>
2775
- <ECArrayProperty propertyName="IntArrProp" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
2776
- <ECArrayProperty propertyName="StrArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
2777
- <ECStructArrayProperty propertyName="StructArrProp" typeName="RichPoint" minOccurs="0" maxOccurs="unbounded"/>
2778
- <!-- Navigation property -->
2779
- <ECNavigationProperty propertyName="RelatedElem" relationshipName="Test2dUsesElement" direction="forward"/>
2780
- </ECEntityClass>
2744
+ const schema = `<?xml version="1.0" encoding="UTF-8"?>
2745
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
2746
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
2747
+ <!-- Rich struct: scalar fields + nested point2d/3d sub-properties -->
2748
+ <ECStructClass typeName="RichPoint" modifier="Sealed">
2749
+ <ECProperty propertyName="X" typeName="double"/>
2750
+ <ECProperty propertyName="Y" typeName="double"/>
2751
+ <ECProperty propertyName="Z" typeName="double"/>
2752
+ <ECProperty propertyName="Label" typeName="string"/>
2753
+ <ECProperty propertyName="Pt2d" typeName="point2d"/>
2754
+ <ECProperty propertyName="Pt3d" typeName="point3d"/>
2755
+ </ECStructClass>
2756
+ <!-- Relationship used by the RelatedElem navigation property -->
2757
+ <ECRelationshipClass typeName="Test2dUsesElement" strength="referencing" modifier="None">
2758
+ <Source multiplicity="(0..*)" roleLabel="uses" polymorphic="true"><Class class="Test2dElement"/></Source>
2759
+ <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="true"><Class class="bis:Element"/></Target>
2760
+ </ECRelationshipClass>
2761
+ <ECEntityClass typeName="Test2dElement">
2762
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
2763
+ <!-- Primitives -->
2764
+ <ECProperty propertyName="StrProp" typeName="string"/>
2765
+ <ECProperty propertyName="IntProp" typeName="int"/>
2766
+ <ECProperty propertyName="LongProp" typeName="long"/>
2767
+ <ECProperty propertyName="DblProp" typeName="double"/>
2768
+ <ECProperty propertyName="BoolProp" typeName="boolean"/>
2769
+ <ECProperty propertyName="DtProp" typeName="dateTime"/>
2770
+ <ECProperty propertyName="BinProp" typeName="binary"/>
2771
+ <!-- Geometric primitives -->
2772
+ <ECProperty propertyName="Pt2dProp" typeName="point2d"/>
2773
+ <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
2774
+ <!-- Struct, arrays -->
2775
+ <ECStructProperty propertyName="StructProp" typeName="RichPoint"/>
2776
+ <ECArrayProperty propertyName="IntArrProp" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
2777
+ <ECArrayProperty propertyName="StrArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
2778
+ <ECStructArrayProperty propertyName="StructArrProp" typeName="RichPoint" minOccurs="0" maxOccurs="unbounded"/>
2779
+ <!-- Navigation property -->
2780
+ <ECNavigationProperty propertyName="RelatedElem" relationshipName="Test2dUsesElement" direction="forward"/>
2781
+ </ECEntityClass>
2781
2782
  </ECSchema>`;
2782
2783
  await importSchemaStrings(txn, [schema]);
2783
2784
  rwIModel.channels.addAllowedChannel(ChannelControl.sharedChannelName);
@@ -3053,18 +3054,18 @@ describe("ChangesetReader — openFile + openGroup", () => {
3053
3054
  rwIModel = await HubWrappers.downloadAndOpenBriefcase({ iTwinId, iModelId: rwIModelId, accessToken: adminToken });
3054
3055
  txn = startTestTxn(rwIModel, "ChangesetReader setup");
3055
3056
  // Push 1: import schema + drawing model setup
3056
- const schema = `<?xml version="1.0" encoding="UTF-8"?>
3057
- <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
3058
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
3059
- <ECEntityClass typeName="SimpleElement">
3060
- <BaseClass>bis:GraphicalElement2d</BaseClass>
3061
- <!-- Simple binary -->
3062
- <ECProperty propertyName="BinProp" typeName="binary"/>
3063
- <!-- Point3d -->
3064
- <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
3065
- <!-- Array of GUIDs stored as strings -->
3066
- <ECArrayProperty propertyName="GuidArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
3067
- </ECEntityClass>
3057
+ const schema = `<?xml version="1.0" encoding="UTF-8"?>
3058
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
3059
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
3060
+ <ECEntityClass typeName="SimpleElement">
3061
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
3062
+ <!-- Simple binary -->
3063
+ <ECProperty propertyName="BinProp" typeName="binary"/>
3064
+ <!-- Point3d -->
3065
+ <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
3066
+ <!-- Array of GUIDs stored as strings -->
3067
+ <ECArrayProperty propertyName="GuidArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
3068
+ </ECEntityClass>
3068
3069
  </ECSchema>`;
3069
3070
  await importSchemaStrings(txn, [schema]);
3070
3071
  rwIModel.channels.addAllowedChannel(ChannelControl.sharedChannelName);
@@ -3293,18 +3294,18 @@ describe("ChangesetReader — openLocalChanges + openInmemoryChanges", () => {
3293
3294
  rwIModel = await HubWrappers.downloadAndOpenBriefcase({ iTwinId, iModelId: rwIModelId, accessToken: adminToken });
3294
3295
  txn = startTestTxn(rwIModel, "ChangesetReader setup");
3295
3296
  // Push 1: import schema + drawing model setup
3296
- const schema = `<?xml version="1.0" encoding="UTF-8"?>
3297
- <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
3298
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
3299
- <ECEntityClass typeName="SimpleElement">
3300
- <BaseClass>bis:GraphicalElement2d</BaseClass>
3301
- <!-- Simple binary -->
3302
- <ECProperty propertyName="BinProp" typeName="binary"/>
3303
- <!-- Point3d -->
3304
- <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
3305
- <!-- Array of GUIDs stored as strings -->
3306
- <ECArrayProperty propertyName="GuidArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
3307
- </ECEntityClass>
3297
+ const schema = `<?xml version="1.0" encoding="UTF-8"?>
3298
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
3299
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
3300
+ <ECEntityClass typeName="SimpleElement">
3301
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
3302
+ <!-- Simple binary -->
3303
+ <ECProperty propertyName="BinProp" typeName="binary"/>
3304
+ <!-- Point3d -->
3305
+ <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
3306
+ <!-- Array of GUIDs stored as strings -->
3307
+ <ECArrayProperty propertyName="GuidArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
3308
+ </ECEntityClass>
3308
3309
  </ECSchema>`;
3309
3310
  await importSchemaStrings(txn, [schema]);
3310
3311
  rwIModel.channels.addAllowedChannel(ChannelControl.sharedChannelName);
@@ -3520,13 +3521,13 @@ describe("ChangesetReader: behaviour in case imodel is not in sync with changese
3520
3521
  rwIModel = await HubWrappers.downloadAndOpenBriefcase({ iTwinId, iModelId: rwIModelId, accessToken: adminToken });
3521
3522
  txn = startTestTxn(rwIModel, "ChangesetReaderBugsTest setup");
3522
3523
  // Push 1: import schema + set up drawing model and two categories
3523
- const schema = `<?xml version="1.0" encoding="UTF-8"?>
3524
- <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
3525
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
3526
- <ECEntityClass typeName="Test2dElement">
3527
- <BaseClass>bis:GraphicalElement2d</BaseClass>
3528
- <ECProperty propertyName="s" typeName="point2d"/>
3529
- </ECEntityClass>
3524
+ const schema = `<?xml version="1.0" encoding="UTF-8"?>
3525
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
3526
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
3527
+ <ECEntityClass typeName="Test2dElement">
3528
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
3529
+ <ECProperty propertyName="s" typeName="point2d"/>
3530
+ </ECEntityClass>
3530
3531
  </ECSchema>`;
3531
3532
  await importSchemaStrings(txn, [schema]);
3532
3533
  rwIModel.channels.addAllowedChannel(ChannelControl.sharedChannelName);
@@ -3713,13 +3714,13 @@ describe("ChangesetReader: overflow table graceful recovery when ExclusiveRootCl
3713
3714
  rwIModel = await HubWrappers.downloadAndOpenBriefcase({ iTwinId, iModelId: rwIModelId, accessToken: adminToken });
3714
3715
  txn = startTestTxn(rwIModel, "overflow null test");
3715
3716
  // Import schema with class that spans the overflow table (36 properties)
3716
- const schema = `<?xml version="1.0" encoding="UTF-8"?>
3717
- <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
3718
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
3719
- <ECEntityClass typeName="Test2dElement">
3720
- <BaseClass>bis:GraphicalElement2d</BaseClass>
3721
- ${Array(nProps).fill(undefined).map((_, i) => `<ECProperty propertyName="p${i}" typeName="string"/>`).join("\n")}
3722
- </ECEntityClass>
3717
+ const schema = `<?xml version="1.0" encoding="UTF-8"?>
3718
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
3719
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
3720
+ <ECEntityClass typeName="Test2dElement">
3721
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
3722
+ ${Array(nProps).fill(undefined).map((_, i) => `<ECProperty propertyName="p${i}" typeName="string"/>`).join("\n")}
3723
+ </ECEntityClass>
3723
3724
  </ECSchema>`;
3724
3725
  await importSchemaStrings(txn, [schema]);
3725
3726
  rwIModel.channels.addAllowedChannel(ChannelControl.sharedChannelName);
@@ -3846,17 +3847,17 @@ describe("ChangesetReader: instance reused with a different class (class change
3846
3847
  assert.isNotEmpty(modelId);
3847
3848
  let b1 = await HubWrappers.downloadAndOpenBriefcase({ iTwinId, iModelId: modelId, accessToken: adminToken });
3848
3849
  let txn = startTestTxn(b1, "class change test");
3849
- const schema = `<?xml version="1.0" encoding="UTF-8"?>
3850
- <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
3851
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
3852
- <ECEntityClass typeName="T1">
3853
- <BaseClass>bis:GraphicalElement2d</BaseClass>
3854
- <ECProperty propertyName="p" typeName="string"/>
3855
- </ECEntityClass>
3856
- <ECEntityClass typeName="T2">
3857
- <BaseClass>bis:GraphicalElement2d</BaseClass>
3858
- <ECProperty propertyName="p" typeName="long"/>
3859
- </ECEntityClass>
3850
+ const schema = `<?xml version="1.0" encoding="UTF-8"?>
3851
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
3852
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
3853
+ <ECEntityClass typeName="T1">
3854
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
3855
+ <ECProperty propertyName="p" typeName="string"/>
3856
+ </ECEntityClass>
3857
+ <ECEntityClass typeName="T2">
3858
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
3859
+ <ECProperty propertyName="p" typeName="long"/>
3860
+ </ECEntityClass>
3860
3861
  </ECSchema>`;
3861
3862
  await importSchemaStrings(txn, [schema]);
3862
3863
  b1.channels.addAllowedChannel(ChannelControl.sharedChannelName);
@@ -3985,13 +3986,13 @@ describe("ChangesetReader: overflow table insert and update and delete", () => {
3985
3986
  rwIModel = await HubWrappers.downloadAndOpenBriefcase({ iTwinId, iModelId: rwIModelId, accessToken: adminToken });
3986
3987
  txn = startTestTxn(rwIModel, "ChangesetReader overflow insert/update");
3987
3988
  // 36 string properties — enough to spill columns into bis_GeometricElement2d_Overflow
3988
- const schema = `<?xml version="1.0" encoding="UTF-8"?>
3989
- <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
3990
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
3991
- <ECEntityClass typeName="OverflowElement">
3992
- <BaseClass>bis:GraphicalElement2d</BaseClass>
3993
- ${Array.from({ length: nProps }, (_, i) => `<ECProperty propertyName="${propName(i)}" typeName="string"/>`).join("\n ")}
3994
- </ECEntityClass>
3989
+ const schema = `<?xml version="1.0" encoding="UTF-8"?>
3990
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
3991
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
3992
+ <ECEntityClass typeName="OverflowElement">
3993
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
3994
+ ${Array.from({ length: nProps }, (_, i) => `<ECProperty propertyName="${propName(i)}" typeName="string"/>`).join("\n ")}
3995
+ </ECEntityClass>
3995
3996
  </ECSchema>`;
3996
3997
  await importSchemaStrings(txn, [schema]);
3997
3998
  rwIModel.channels.addAllowedChannel(ChannelControl.sharedChannelName);
@@ -4262,6 +4263,8 @@ describe("ChangesetReader: invalid inputs", () => {
4262
4263
  fs.unlinkSync(txtFile);
4263
4264
  // Write a small non-changeset file and expect the reader to reject it.
4264
4265
  fs.writeFileSync(txtFile, "this is not a changeset");
4266
+ // The native code asserts on an invalid changeset file. Suppress this.
4267
+ const _disableAssertions = __addDisposableResource(env_25, new DisableNativeAssertions(), false);
4265
4268
  const reader = __addDisposableResource(env_25, ChangesetReader.openFile({ db: iModel, fileName: txtFile }), false);
4266
4269
  assert.equal(reader.step(), false, "Expected step() to return false for an invalid changeset file");
4267
4270
  assert.equal(reader.step(), false, "Expected step() to return false for an invalid changeset file");
@@ -4370,38 +4373,38 @@ describe("ChangesetReader: invalid inputs", () => {
4370
4373
  });
4371
4374
  });
4372
4375
  describe("ChangesetReader — spillThresholdInBytes (spill-to-disk)", () => {
4373
- const TEST_DOMAIN_SCHEMA = `<?xml version="1.0" encoding="UTF-8"?>
4374
- <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
4375
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
4376
- <ECStructClass typeName="RichPoint" modifier="Sealed">
4377
- <ECProperty propertyName="X" typeName="double"/>
4378
- <ECProperty propertyName="Y" typeName="double"/>
4379
- <ECProperty propertyName="Z" typeName="double"/>
4380
- <ECProperty propertyName="Label" typeName="string"/>
4381
- <ECProperty propertyName="Pt2d" typeName="point2d"/>
4382
- <ECProperty propertyName="Pt3d" typeName="point3d"/>
4383
- </ECStructClass>
4384
- <ECRelationshipClass typeName="Test2dUsesElement" strength="referencing" modifier="None">
4385
- <Source multiplicity="(0..*)" roleLabel="uses" polymorphic="true"><Class class="Test2dElement"/></Source>
4386
- <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="true"><Class class="bis:Element"/></Target>
4387
- </ECRelationshipClass>
4388
- <ECEntityClass typeName="Test2dElement">
4389
- <BaseClass>bis:GraphicalElement2d</BaseClass>
4390
- <ECProperty propertyName="StrProp" typeName="string"/>
4391
- <ECProperty propertyName="IntProp" typeName="int"/>
4392
- <ECProperty propertyName="LongProp" typeName="long"/>
4393
- <ECProperty propertyName="DblProp" typeName="double"/>
4394
- <ECProperty propertyName="BoolProp" typeName="boolean"/>
4395
- <ECProperty propertyName="DtProp" typeName="dateTime"/>
4396
- <ECProperty propertyName="BinProp" typeName="binary"/>
4397
- <ECProperty propertyName="Pt2dProp" typeName="point2d"/>
4398
- <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
4399
- <ECStructProperty propertyName="StructProp" typeName="RichPoint"/>
4400
- <ECArrayProperty propertyName="IntArrProp" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
4401
- <ECArrayProperty propertyName="StrArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
4402
- <ECStructArrayProperty propertyName="StructArrProp" typeName="RichPoint" minOccurs="0" maxOccurs="unbounded"/>
4403
- <ECNavigationProperty propertyName="RelatedElem" relationshipName="Test2dUsesElement" direction="forward"/>
4404
- </ECEntityClass>
4376
+ const TEST_DOMAIN_SCHEMA = `<?xml version="1.0" encoding="UTF-8"?>
4377
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
4378
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
4379
+ <ECStructClass typeName="RichPoint" modifier="Sealed">
4380
+ <ECProperty propertyName="X" typeName="double"/>
4381
+ <ECProperty propertyName="Y" typeName="double"/>
4382
+ <ECProperty propertyName="Z" typeName="double"/>
4383
+ <ECProperty propertyName="Label" typeName="string"/>
4384
+ <ECProperty propertyName="Pt2d" typeName="point2d"/>
4385
+ <ECProperty propertyName="Pt3d" typeName="point3d"/>
4386
+ </ECStructClass>
4387
+ <ECRelationshipClass typeName="Test2dUsesElement" strength="referencing" modifier="None">
4388
+ <Source multiplicity="(0..*)" roleLabel="uses" polymorphic="true"><Class class="Test2dElement"/></Source>
4389
+ <Target multiplicity="(0..1)" roleLabel="is used by" polymorphic="true"><Class class="bis:Element"/></Target>
4390
+ </ECRelationshipClass>
4391
+ <ECEntityClass typeName="Test2dElement">
4392
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
4393
+ <ECProperty propertyName="StrProp" typeName="string"/>
4394
+ <ECProperty propertyName="IntProp" typeName="int"/>
4395
+ <ECProperty propertyName="LongProp" typeName="long"/>
4396
+ <ECProperty propertyName="DblProp" typeName="double"/>
4397
+ <ECProperty propertyName="BoolProp" typeName="boolean"/>
4398
+ <ECProperty propertyName="DtProp" typeName="dateTime"/>
4399
+ <ECProperty propertyName="BinProp" typeName="binary"/>
4400
+ <ECProperty propertyName="Pt2dProp" typeName="point2d"/>
4401
+ <ECProperty propertyName="Pt3dProp" typeName="point3d"/>
4402
+ <ECStructProperty propertyName="StructProp" typeName="RichPoint"/>
4403
+ <ECArrayProperty propertyName="IntArrProp" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
4404
+ <ECArrayProperty propertyName="StrArrProp" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
4405
+ <ECStructArrayProperty propertyName="StructArrProp" typeName="RichPoint" minOccurs="0" maxOccurs="unbounded"/>
4406
+ <ECNavigationProperty propertyName="RelatedElem" relationshipName="Test2dUsesElement" direction="forward"/>
4407
+ </ECEntityClass>
4405
4408
  </ECSchema>`;
4406
4409
  /** Boots HubMock, opens a briefcase, starts a txn, and tears everything down after `fn` resolves or throws. */
4407
4410
  async function withSpillTestIModel(hubName, iModelName, fn) {
@@ -4661,25 +4664,25 @@ describe("ChangesetReader — spillThresholdInBytes (spill-to-disk)", () => {
4661
4664
  });
4662
4665
  });
4663
4666
  describe("ChangesetReader: strict mode (column-count mismatch)", () => {
4664
- const STRICT_MODE_SCHEMA_V1 = `<?xml version="1.0" encoding="UTF-8"?>
4665
- <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
4666
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
4667
- <ECEntityClass typeName="SimpleElement">
4668
- <BaseClass>bis:GraphicalElement2d</BaseClass>
4669
- <ECProperty propertyName="p1" typeName="string"/>
4670
- <ECProperty propertyName="p2" typeName="string"/>
4671
- </ECEntityClass>
4667
+ const STRICT_MODE_SCHEMA_V1 = `<?xml version="1.0" encoding="UTF-8"?>
4668
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
4669
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
4670
+ <ECEntityClass typeName="SimpleElement">
4671
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
4672
+ <ECProperty propertyName="p1" typeName="string"/>
4673
+ <ECProperty propertyName="p2" typeName="string"/>
4674
+ </ECEntityClass>
4672
4675
  </ECSchema>`;
4673
- const STRICT_MODE_SCHEMA_V2 = `<?xml version="1.0" encoding="UTF-8"?>
4674
- <ECSchema schemaName="TestDomain" alias="ts" version="01.01" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
4675
- <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
4676
- <ECEntityClass typeName="SimpleElement">
4677
- <BaseClass>bis:GraphicalElement2d</BaseClass>
4678
- <ECProperty propertyName="p1" typeName="string"/>
4679
- <ECProperty propertyName="p2" typeName="string"/>
4680
- <ECProperty propertyName="p3" typeName="string"/>
4681
- <ECProperty propertyName="p4" typeName="string"/>
4682
- </ECEntityClass>
4676
+ const STRICT_MODE_SCHEMA_V2 = `<?xml version="1.0" encoding="UTF-8"?>
4677
+ <ECSchema schemaName="TestDomain" alias="ts" version="01.01" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
4678
+ <ECSchemaReference name="BisCore" version="01.00" alias="bis"/>
4679
+ <ECEntityClass typeName="SimpleElement">
4680
+ <BaseClass>bis:GraphicalElement2d</BaseClass>
4681
+ <ECProperty propertyName="p1" typeName="string"/>
4682
+ <ECProperty propertyName="p2" typeName="string"/>
4683
+ <ECProperty propertyName="p3" typeName="string"/>
4684
+ <ECProperty propertyName="p4" typeName="string"/>
4685
+ </ECEntityClass>
4683
4686
  </ECSchema>`;
4684
4687
  it("openTxn: strict mode ON throws when txn was captured with fewer columns than the current live table, strict mode OFF does not throw", async () => {
4685
4688
  HubMock.startup("StrictModeOldTxnStrict", KnownTestLocations.outputDir);