@itwin/core-backend 5.9.0-dev.4 → 5.9.0-dev.6

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 (658) hide show
  1. package/lib/cjs/BackendHubAccess.js.map +1 -1
  2. package/lib/cjs/BackendLoggerCategory.js.map +1 -1
  3. package/lib/cjs/BisCoreSchema.js.map +1 -1
  4. package/lib/cjs/BlobContainerService.js.map +1 -1
  5. package/lib/cjs/BriefcaseManager.js +3 -3
  6. package/lib/cjs/BriefcaseManager.js.map +1 -1
  7. package/lib/cjs/CatalogDb.js.map +1 -1
  8. package/lib/cjs/Category.d.ts +37 -7
  9. package/lib/cjs/Category.d.ts.map +1 -1
  10. package/lib/cjs/Category.js +33 -42
  11. package/lib/cjs/Category.js.map +1 -1
  12. package/lib/cjs/ChangeSummaryManager.js +2 -2
  13. package/lib/cjs/ChangeSummaryManager.js.map +1 -1
  14. package/lib/cjs/ChangedElementsDb.js.map +1 -1
  15. package/lib/cjs/ChangesetECAdaptor.d.ts.map +1 -1
  16. package/lib/cjs/ChangesetECAdaptor.js +253 -250
  17. package/lib/cjs/ChangesetECAdaptor.js.map +1 -1
  18. package/lib/cjs/ChannelControl.d.ts +29 -0
  19. package/lib/cjs/ChannelControl.d.ts.map +1 -1
  20. package/lib/cjs/ChannelControl.js.map +1 -1
  21. package/lib/cjs/CheckpointManager.js +1 -1
  22. package/lib/cjs/CheckpointManager.js.map +1 -1
  23. package/lib/cjs/ClassRegistry.js +5 -5
  24. package/lib/cjs/ClassRegistry.js.map +1 -1
  25. package/lib/cjs/CloudSqlite.js.map +1 -1
  26. package/lib/cjs/CodeService.js.map +1 -1
  27. package/lib/cjs/CodeSpecs.d.ts +32 -3
  28. package/lib/cjs/CodeSpecs.d.ts.map +1 -1
  29. package/lib/cjs/CodeSpecs.js +48 -20
  30. package/lib/cjs/CodeSpecs.js.map +1 -1
  31. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  32. package/lib/cjs/CustomViewState3dCreator.js.map +1 -1
  33. package/lib/cjs/DevTools.js.map +1 -1
  34. package/lib/cjs/DisplayStyle.d.ts +18 -3
  35. package/lib/cjs/DisplayStyle.d.ts.map +1 -1
  36. package/lib/cjs/DisplayStyle.js +10 -21
  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 +262 -0
  44. package/lib/cjs/EditTxn.d.ts.map +1 -0
  45. package/lib/cjs/EditTxn.js +548 -0
  46. package/lib/cjs/EditTxn.js.map +1 -0
  47. package/lib/cjs/Element.d.ts +74 -5
  48. package/lib/cjs/Element.d.ts.map +1 -1
  49. package/lib/cjs/Element.js +63 -75
  50. package/lib/cjs/Element.js.map +1 -1
  51. package/lib/cjs/ElementAspect.d.ts +10 -0
  52. package/lib/cjs/ElementAspect.d.ts.map +1 -1
  53. package/lib/cjs/ElementAspect.js +21 -12
  54. package/lib/cjs/ElementAspect.js.map +1 -1
  55. package/lib/cjs/ElementGraphics.js.map +1 -1
  56. package/lib/cjs/ElementTreeWalker.d.ts +56 -3
  57. package/lib/cjs/ElementTreeWalker.d.ts.map +1 -1
  58. package/lib/cjs/ElementTreeWalker.js +53 -40
  59. package/lib/cjs/ElementTreeWalker.js.map +1 -1
  60. package/lib/cjs/Entity.js.map +1 -1
  61. package/lib/cjs/EntityReferences.js.map +1 -1
  62. package/lib/cjs/ExportGraphics.js.map +1 -1
  63. package/lib/cjs/ExternalSource.d.ts +11 -2
  64. package/lib/cjs/ExternalSource.d.ts.map +1 -1
  65. package/lib/cjs/ExternalSource.js +10 -8
  66. package/lib/cjs/ExternalSource.js.map +1 -1
  67. package/lib/cjs/FontFile.js.map +1 -1
  68. package/lib/cjs/GeoCoordConfig.js.map +1 -1
  69. package/lib/cjs/GeographicCRSServices.js.map +1 -1
  70. package/lib/cjs/GeometrySummary.js +47 -47
  71. package/lib/cjs/GeometrySummary.js.map +1 -1
  72. package/lib/cjs/IModelDb.d.ts +66 -22
  73. package/lib/cjs/IModelDb.d.ts.map +1 -1
  74. package/lib/cjs/IModelDb.js +182 -296
  75. package/lib/cjs/IModelDb.js.map +1 -1
  76. package/lib/cjs/IModelDbFonts.js.map +1 -1
  77. package/lib/cjs/IModelElementCloneContext.js.map +1 -1
  78. package/lib/cjs/IModelHost.d.ts +22 -0
  79. package/lib/cjs/IModelHost.d.ts.map +1 -1
  80. package/lib/cjs/IModelHost.js +9 -0
  81. package/lib/cjs/IModelHost.js.map +1 -1
  82. package/lib/cjs/IModelIncrementalSchemaLocater.js.map +1 -1
  83. package/lib/cjs/IModelJsFs.js.map +1 -1
  84. package/lib/cjs/ImageSourceConversion.js.map +1 -1
  85. package/lib/cjs/IpcHost.js +2 -2
  86. package/lib/cjs/IpcHost.js.map +1 -1
  87. package/lib/cjs/LineStyle.d.ts +47 -7
  88. package/lib/cjs/LineStyle.d.ts.map +1 -1
  89. package/lib/cjs/LineStyle.js +38 -33
  90. package/lib/cjs/LineStyle.js.map +1 -1
  91. package/lib/cjs/LocalHub.js +1 -1
  92. package/lib/cjs/LocalHub.js.map +1 -1
  93. package/lib/cjs/LocalhostIpcHost.js.map +1 -1
  94. package/lib/cjs/LockControl.js.map +1 -1
  95. package/lib/cjs/Material.d.ts +8 -1
  96. package/lib/cjs/Material.d.ts.map +1 -1
  97. package/lib/cjs/Material.js +6 -12
  98. package/lib/cjs/Material.js.map +1 -1
  99. package/lib/cjs/Model.d.ts +59 -20
  100. package/lib/cjs/Model.d.ts.map +1 -1
  101. package/lib/cjs/Model.js +38 -80
  102. package/lib/cjs/Model.js.map +1 -1
  103. package/lib/cjs/NativeAppStorage.js.map +1 -1
  104. package/lib/cjs/NativeHost.js.map +1 -1
  105. package/lib/cjs/NavigationRelationship.js.map +1 -1
  106. package/lib/cjs/PromiseMemoizer.js.map +1 -1
  107. package/lib/cjs/PropertyStore.js.map +1 -1
  108. package/lib/cjs/Relationship.d.ts +72 -7
  109. package/lib/cjs/Relationship.d.ts.map +1 -1
  110. package/lib/cjs/Relationship.js +39 -21
  111. package/lib/cjs/Relationship.js.map +1 -1
  112. package/lib/cjs/RpcBackend.js.map +1 -1
  113. package/lib/cjs/SQLiteDb.js.map +1 -1
  114. package/lib/cjs/Schema.js.map +1 -1
  115. package/lib/cjs/SchemaSync.js +4 -4
  116. package/lib/cjs/SchemaSync.js.map +1 -1
  117. package/lib/cjs/SchemaUtils.js.map +1 -1
  118. package/lib/cjs/SheetIndex.d.ts +9 -0
  119. package/lib/cjs/SheetIndex.d.ts.map +1 -1
  120. package/lib/cjs/SheetIndex.js +38 -35
  121. package/lib/cjs/SheetIndex.js.map +1 -1
  122. package/lib/cjs/SqliteChangesetReader.js.map +1 -1
  123. package/lib/cjs/SqliteStatement.js.map +1 -1
  124. package/lib/cjs/StashManager.js +1 -1
  125. package/lib/cjs/StashManager.js.map +1 -1
  126. package/lib/cjs/Texture.d.ts +6 -0
  127. package/lib/cjs/Texture.d.ts.map +1 -1
  128. package/lib/cjs/Texture.js +6 -14
  129. package/lib/cjs/Texture.js.map +1 -1
  130. package/lib/cjs/TileStorage.js.map +1 -1
  131. package/lib/cjs/TxnManager.d.ts +5 -5
  132. package/lib/cjs/TxnManager.d.ts.map +1 -1
  133. package/lib/cjs/TxnManager.js +23 -7
  134. package/lib/cjs/TxnManager.js.map +1 -1
  135. package/lib/cjs/ViewDefinition.d.ts +21 -1
  136. package/lib/cjs/ViewDefinition.d.ts.map +1 -1
  137. package/lib/cjs/ViewDefinition.js +27 -66
  138. package/lib/cjs/ViewDefinition.js.map +1 -1
  139. package/lib/cjs/ViewStateHydrator.js.map +1 -1
  140. package/lib/cjs/ViewStore.js.map +1 -1
  141. package/lib/cjs/annotations/ElementDrivesTextAnnotation.d.ts +14 -6
  142. package/lib/cjs/annotations/ElementDrivesTextAnnotation.d.ts.map +1 -1
  143. package/lib/cjs/annotations/ElementDrivesTextAnnotation.js +33 -27
  144. package/lib/cjs/annotations/ElementDrivesTextAnnotation.js.map +1 -1
  145. package/lib/cjs/annotations/FrameGeometry.js.map +1 -1
  146. package/lib/cjs/annotations/LeaderGeometry.js.map +1 -1
  147. package/lib/cjs/annotations/TextAnnotationElement.d.ts.map +1 -1
  148. package/lib/cjs/annotations/TextAnnotationElement.js +6 -5
  149. package/lib/cjs/annotations/TextAnnotationElement.js.map +1 -1
  150. package/lib/cjs/annotations/TextAnnotationGeometry.js.map +1 -1
  151. package/lib/cjs/annotations/TextBlockGeometry.js.map +1 -1
  152. package/lib/cjs/annotations/TextBlockLayout.js.map +1 -1
  153. package/lib/cjs/assets/IModelChange.02.00.00.ecschema.xml +90 -90
  154. package/lib/cjs/assets/Settings/Schemas/Base.Schema.json +32 -32
  155. package/lib/cjs/assets/Settings/Schemas/Gcs.schema.json +27 -27
  156. package/lib/cjs/assets/Settings/Schemas/Workspace.Schema.json +94 -94
  157. package/lib/cjs/assets/Settings/backend.setting.json5 +21 -21
  158. package/lib/cjs/core-backend.d.ts +1 -0
  159. package/lib/cjs/core-backend.d.ts.map +1 -1
  160. package/lib/cjs/core-backend.js +1 -0
  161. package/lib/cjs/core-backend.js.map +1 -1
  162. package/lib/cjs/domains/FunctionalElements.d.ts +6 -2
  163. package/lib/cjs/domains/FunctionalElements.d.ts.map +1 -1
  164. package/lib/cjs/domains/FunctionalElements.js +8 -13
  165. package/lib/cjs/domains/FunctionalElements.js.map +1 -1
  166. package/lib/cjs/domains/FunctionalSchema.js.map +1 -1
  167. package/lib/cjs/domains/GenericElements.d.ts +11 -4
  168. package/lib/cjs/domains/GenericElements.d.ts.map +1 -1
  169. package/lib/cjs/domains/GenericElements.js +13 -24
  170. package/lib/cjs/domains/GenericElements.js.map +1 -1
  171. package/lib/cjs/domains/GenericSchema.js.map +1 -1
  172. package/lib/cjs/internal/ChangesetConflictArgs.js.map +1 -1
  173. package/lib/cjs/internal/ChannelAdmin.d.ts +15 -0
  174. package/lib/cjs/internal/ChannelAdmin.d.ts.map +1 -1
  175. package/lib/cjs/internal/ChannelAdmin.js +5 -3
  176. package/lib/cjs/internal/ChannelAdmin.js.map +1 -1
  177. package/lib/cjs/internal/ElementLRUCache.js.map +1 -1
  178. package/lib/cjs/internal/FontFileImpl.js.map +1 -1
  179. package/lib/cjs/internal/HubMock.js.map +1 -1
  180. package/lib/cjs/internal/IModelDbFontsImpl.js.map +1 -1
  181. package/lib/cjs/internal/IntegrityCheck.js.map +1 -1
  182. package/lib/cjs/internal/NativePlatform.js.map +1 -1
  183. package/lib/cjs/internal/NoLocks.js.map +1 -1
  184. package/lib/cjs/internal/OnlineStatus.js.map +1 -1
  185. package/lib/cjs/internal/ServerBasedLocks.js.map +1 -1
  186. package/lib/cjs/internal/Symbols.d.ts +4 -0
  187. package/lib/cjs/internal/Symbols.d.ts.map +1 -1
  188. package/lib/cjs/internal/Symbols.js +5 -1
  189. package/lib/cjs/internal/Symbols.js.map +1 -1
  190. package/lib/cjs/internal/annotations/fields.d.ts +3 -2
  191. package/lib/cjs/internal/annotations/fields.d.ts.map +1 -1
  192. package/lib/cjs/internal/annotations/fields.js +7 -6
  193. package/lib/cjs/internal/annotations/fields.js.map +1 -1
  194. package/lib/cjs/internal/cross-package.js.map +1 -1
  195. package/lib/cjs/internal/workspace/SettingsEditorImpl.js.map +1 -1
  196. package/lib/cjs/internal/workspace/SettingsImpl.js.map +1 -1
  197. package/lib/cjs/internal/workspace/SettingsSchemasImpl.js.map +1 -1
  198. package/lib/cjs/internal/workspace/WorkspaceImpl.js.map +1 -1
  199. package/lib/cjs/internal/workspace/WorkspaceSqliteDb.js.map +1 -1
  200. package/lib/cjs/rpc/multipart.js.map +1 -1
  201. package/lib/cjs/rpc/tracing.js.map +1 -1
  202. package/lib/cjs/rpc/web/logging.js.map +1 -1
  203. package/lib/cjs/rpc/web/request.js.map +1 -1
  204. package/lib/cjs/rpc/web/response.js.map +1 -1
  205. package/lib/cjs/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  206. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  207. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  208. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.d.ts.map +1 -1
  209. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  210. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  211. package/lib/cjs/workspace/Settings.js.map +1 -1
  212. package/lib/cjs/workspace/SettingsDb.js.map +1 -1
  213. package/lib/cjs/workspace/SettingsEditor.js.map +1 -1
  214. package/lib/cjs/workspace/SettingsSchemas.js.map +1 -1
  215. package/lib/cjs/workspace/Workspace.js.map +1 -1
  216. package/lib/cjs/workspace/WorkspaceEditor.js.map +1 -1
  217. package/lib/esm/BackendHubAccess.js.map +1 -1
  218. package/lib/esm/BackendLoggerCategory.js.map +1 -1
  219. package/lib/esm/BisCoreSchema.js.map +1 -1
  220. package/lib/esm/BlobContainerService.js.map +1 -1
  221. package/lib/esm/BriefcaseManager.js +3 -3
  222. package/lib/esm/BriefcaseManager.js.map +1 -1
  223. package/lib/esm/CatalogDb.js.map +1 -1
  224. package/lib/esm/Category.d.ts +37 -7
  225. package/lib/esm/Category.d.ts.map +1 -1
  226. package/lib/esm/Category.js +33 -42
  227. package/lib/esm/Category.js.map +1 -1
  228. package/lib/esm/ChangeSummaryManager.js +2 -2
  229. package/lib/esm/ChangeSummaryManager.js.map +1 -1
  230. package/lib/esm/ChangedElementsDb.js.map +1 -1
  231. package/lib/esm/ChangesetECAdaptor.d.ts.map +1 -1
  232. package/lib/esm/ChangesetECAdaptor.js +253 -250
  233. package/lib/esm/ChangesetECAdaptor.js.map +1 -1
  234. package/lib/esm/ChannelControl.d.ts +29 -0
  235. package/lib/esm/ChannelControl.d.ts.map +1 -1
  236. package/lib/esm/ChannelControl.js.map +1 -1
  237. package/lib/esm/CheckpointManager.js +1 -1
  238. package/lib/esm/CheckpointManager.js.map +1 -1
  239. package/lib/esm/ClassRegistry.js +5 -5
  240. package/lib/esm/ClassRegistry.js.map +1 -1
  241. package/lib/esm/CloudSqlite.js.map +1 -1
  242. package/lib/esm/CodeService.js.map +1 -1
  243. package/lib/esm/CodeSpecs.d.ts +32 -3
  244. package/lib/esm/CodeSpecs.d.ts.map +1 -1
  245. package/lib/esm/CodeSpecs.js +49 -21
  246. package/lib/esm/CodeSpecs.js.map +1 -1
  247. package/lib/esm/ConcurrentQuery.js.map +1 -1
  248. package/lib/esm/CustomViewState3dCreator.js.map +1 -1
  249. package/lib/esm/DevTools.js.map +1 -1
  250. package/lib/esm/DisplayStyle.d.ts +18 -3
  251. package/lib/esm/DisplayStyle.d.ts.map +1 -1
  252. package/lib/esm/DisplayStyle.js +10 -21
  253. package/lib/esm/DisplayStyle.js.map +1 -1
  254. package/lib/esm/ECDb.js.map +1 -1
  255. package/lib/esm/ECSchemaXmlContext.js.map +1 -1
  256. package/lib/esm/ECSqlRowExecutor.js.map +1 -1
  257. package/lib/esm/ECSqlStatement.js.map +1 -1
  258. package/lib/esm/ECSqlSyncReader.js.map +1 -1
  259. package/lib/esm/EditTxn.d.ts +262 -0
  260. package/lib/esm/EditTxn.d.ts.map +1 -0
  261. package/lib/esm/EditTxn.js +543 -0
  262. package/lib/esm/EditTxn.js.map +1 -0
  263. package/lib/esm/Element.d.ts +74 -5
  264. package/lib/esm/Element.d.ts.map +1 -1
  265. package/lib/esm/Element.js +64 -76
  266. package/lib/esm/Element.js.map +1 -1
  267. package/lib/esm/ElementAspect.d.ts +10 -0
  268. package/lib/esm/ElementAspect.d.ts.map +1 -1
  269. package/lib/esm/ElementAspect.js +22 -13
  270. package/lib/esm/ElementAspect.js.map +1 -1
  271. package/lib/esm/ElementGraphics.js.map +1 -1
  272. package/lib/esm/ElementTreeWalker.d.ts +56 -3
  273. package/lib/esm/ElementTreeWalker.d.ts.map +1 -1
  274. package/lib/esm/ElementTreeWalker.js +53 -40
  275. package/lib/esm/ElementTreeWalker.js.map +1 -1
  276. package/lib/esm/Entity.js.map +1 -1
  277. package/lib/esm/EntityReferences.js.map +1 -1
  278. package/lib/esm/ExportGraphics.js.map +1 -1
  279. package/lib/esm/ExternalSource.d.ts +11 -2
  280. package/lib/esm/ExternalSource.d.ts.map +1 -1
  281. package/lib/esm/ExternalSource.js +10 -8
  282. package/lib/esm/ExternalSource.js.map +1 -1
  283. package/lib/esm/FontFile.js.map +1 -1
  284. package/lib/esm/GeoCoordConfig.js.map +1 -1
  285. package/lib/esm/GeographicCRSServices.js.map +1 -1
  286. package/lib/esm/GeometrySummary.js +47 -47
  287. package/lib/esm/GeometrySummary.js.map +1 -1
  288. package/lib/esm/IModelDb.d.ts +66 -22
  289. package/lib/esm/IModelDb.d.ts.map +1 -1
  290. package/lib/esm/IModelDb.js +184 -298
  291. package/lib/esm/IModelDb.js.map +1 -1
  292. package/lib/esm/IModelDbFonts.js.map +1 -1
  293. package/lib/esm/IModelElementCloneContext.js.map +1 -1
  294. package/lib/esm/IModelHost.d.ts +22 -0
  295. package/lib/esm/IModelHost.d.ts.map +1 -1
  296. package/lib/esm/IModelHost.js +9 -0
  297. package/lib/esm/IModelHost.js.map +1 -1
  298. package/lib/esm/IModelIncrementalSchemaLocater.js.map +1 -1
  299. package/lib/esm/IModelJsFs.js.map +1 -1
  300. package/lib/esm/ImageSourceConversion.js.map +1 -1
  301. package/lib/esm/IpcHost.js +3 -3
  302. package/lib/esm/IpcHost.js.map +1 -1
  303. package/lib/esm/LineStyle.d.ts +47 -7
  304. package/lib/esm/LineStyle.d.ts.map +1 -1
  305. package/lib/esm/LineStyle.js +38 -33
  306. package/lib/esm/LineStyle.js.map +1 -1
  307. package/lib/esm/LocalHub.js +1 -1
  308. package/lib/esm/LocalHub.js.map +1 -1
  309. package/lib/esm/LocalhostIpcHost.js.map +1 -1
  310. package/lib/esm/LockControl.js.map +1 -1
  311. package/lib/esm/Material.d.ts +8 -1
  312. package/lib/esm/Material.d.ts.map +1 -1
  313. package/lib/esm/Material.js +6 -12
  314. package/lib/esm/Material.js.map +1 -1
  315. package/lib/esm/Model.d.ts +59 -20
  316. package/lib/esm/Model.d.ts.map +1 -1
  317. package/lib/esm/Model.js +39 -81
  318. package/lib/esm/Model.js.map +1 -1
  319. package/lib/esm/NativeAppStorage.js.map +1 -1
  320. package/lib/esm/NativeHost.js.map +1 -1
  321. package/lib/esm/NavigationRelationship.js.map +1 -1
  322. package/lib/esm/PromiseMemoizer.js.map +1 -1
  323. package/lib/esm/PropertyStore.js.map +1 -1
  324. package/lib/esm/Relationship.d.ts +72 -7
  325. package/lib/esm/Relationship.d.ts.map +1 -1
  326. package/lib/esm/Relationship.js +40 -22
  327. package/lib/esm/Relationship.js.map +1 -1
  328. package/lib/esm/RpcBackend.js.map +1 -1
  329. package/lib/esm/SQLiteDb.js.map +1 -1
  330. package/lib/esm/Schema.js.map +1 -1
  331. package/lib/esm/SchemaSync.js +5 -5
  332. package/lib/esm/SchemaSync.js.map +1 -1
  333. package/lib/esm/SchemaUtils.js.map +1 -1
  334. package/lib/esm/SheetIndex.d.ts +9 -0
  335. package/lib/esm/SheetIndex.d.ts.map +1 -1
  336. package/lib/esm/SheetIndex.js +38 -35
  337. package/lib/esm/SheetIndex.js.map +1 -1
  338. package/lib/esm/SqliteChangesetReader.js.map +1 -1
  339. package/lib/esm/SqliteStatement.js.map +1 -1
  340. package/lib/esm/StashManager.js +1 -1
  341. package/lib/esm/StashManager.js.map +1 -1
  342. package/lib/esm/Texture.d.ts +6 -0
  343. package/lib/esm/Texture.d.ts.map +1 -1
  344. package/lib/esm/Texture.js +6 -14
  345. package/lib/esm/Texture.js.map +1 -1
  346. package/lib/esm/TileStorage.js.map +1 -1
  347. package/lib/esm/TxnManager.d.ts +5 -5
  348. package/lib/esm/TxnManager.d.ts.map +1 -1
  349. package/lib/esm/TxnManager.js +23 -7
  350. package/lib/esm/TxnManager.js.map +1 -1
  351. package/lib/esm/ViewDefinition.d.ts +21 -1
  352. package/lib/esm/ViewDefinition.d.ts.map +1 -1
  353. package/lib/esm/ViewDefinition.js +27 -66
  354. package/lib/esm/ViewDefinition.js.map +1 -1
  355. package/lib/esm/ViewStateHydrator.js.map +1 -1
  356. package/lib/esm/ViewStore.js.map +1 -1
  357. package/lib/esm/annotations/ElementDrivesTextAnnotation.d.ts +14 -6
  358. package/lib/esm/annotations/ElementDrivesTextAnnotation.d.ts.map +1 -1
  359. package/lib/esm/annotations/ElementDrivesTextAnnotation.js +33 -27
  360. package/lib/esm/annotations/ElementDrivesTextAnnotation.js.map +1 -1
  361. package/lib/esm/annotations/FrameGeometry.js.map +1 -1
  362. package/lib/esm/annotations/LeaderGeometry.js.map +1 -1
  363. package/lib/esm/annotations/TextAnnotationElement.d.ts.map +1 -1
  364. package/lib/esm/annotations/TextAnnotationElement.js +6 -5
  365. package/lib/esm/annotations/TextAnnotationElement.js.map +1 -1
  366. package/lib/esm/annotations/TextAnnotationGeometry.js.map +1 -1
  367. package/lib/esm/annotations/TextBlockGeometry.js.map +1 -1
  368. package/lib/esm/annotations/TextBlockLayout.js.map +1 -1
  369. package/lib/esm/core-backend.d.ts +1 -0
  370. package/lib/esm/core-backend.d.ts.map +1 -1
  371. package/lib/esm/core-backend.js +1 -0
  372. package/lib/esm/core-backend.js.map +1 -1
  373. package/lib/esm/domains/FunctionalElements.d.ts +6 -2
  374. package/lib/esm/domains/FunctionalElements.d.ts.map +1 -1
  375. package/lib/esm/domains/FunctionalElements.js +8 -13
  376. package/lib/esm/domains/FunctionalElements.js.map +1 -1
  377. package/lib/esm/domains/FunctionalSchema.js.map +1 -1
  378. package/lib/esm/domains/GenericElements.d.ts +11 -4
  379. package/lib/esm/domains/GenericElements.d.ts.map +1 -1
  380. package/lib/esm/domains/GenericElements.js +13 -24
  381. package/lib/esm/domains/GenericElements.js.map +1 -1
  382. package/lib/esm/domains/GenericSchema.js.map +1 -1
  383. package/lib/esm/internal/ChangesetConflictArgs.js.map +1 -1
  384. package/lib/esm/internal/ChannelAdmin.d.ts +15 -0
  385. package/lib/esm/internal/ChannelAdmin.d.ts.map +1 -1
  386. package/lib/esm/internal/ChannelAdmin.js +6 -4
  387. package/lib/esm/internal/ChannelAdmin.js.map +1 -1
  388. package/lib/esm/internal/ElementLRUCache.js.map +1 -1
  389. package/lib/esm/internal/FontFileImpl.js.map +1 -1
  390. package/lib/esm/internal/HubMock.js.map +1 -1
  391. package/lib/esm/internal/IModelDbFontsImpl.js.map +1 -1
  392. package/lib/esm/internal/IntegrityCheck.js.map +1 -1
  393. package/lib/esm/internal/NativePlatform.js.map +1 -1
  394. package/lib/esm/internal/NoLocks.js.map +1 -1
  395. package/lib/esm/internal/OnlineStatus.js.map +1 -1
  396. package/lib/esm/internal/ServerBasedLocks.js.map +1 -1
  397. package/lib/esm/internal/Symbols.d.ts +4 -0
  398. package/lib/esm/internal/Symbols.d.ts.map +1 -1
  399. package/lib/esm/internal/Symbols.js +4 -0
  400. package/lib/esm/internal/Symbols.js.map +1 -1
  401. package/lib/esm/internal/annotations/fields.d.ts +3 -2
  402. package/lib/esm/internal/annotations/fields.d.ts.map +1 -1
  403. package/lib/esm/internal/annotations/fields.js +7 -6
  404. package/lib/esm/internal/annotations/fields.js.map +1 -1
  405. package/lib/esm/internal/cross-package.js.map +1 -1
  406. package/lib/esm/internal/workspace/SettingsEditorImpl.js.map +1 -1
  407. package/lib/esm/internal/workspace/SettingsImpl.js.map +1 -1
  408. package/lib/esm/internal/workspace/SettingsSchemasImpl.js.map +1 -1
  409. package/lib/esm/internal/workspace/WorkspaceImpl.js.map +1 -1
  410. package/lib/esm/internal/workspace/WorkspaceSqliteDb.js.map +1 -1
  411. package/lib/esm/rpc/multipart.js.map +1 -1
  412. package/lib/esm/rpc/tracing.js.map +1 -1
  413. package/lib/esm/rpc/web/logging.js.map +1 -1
  414. package/lib/esm/rpc/web/request.js.map +1 -1
  415. package/lib/esm/rpc/web/response.js.map +1 -1
  416. package/lib/esm/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  417. package/lib/esm/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  418. package/lib/esm/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  419. package/lib/esm/rpc-impl/RpcBriefcaseUtility.d.ts.map +1 -1
  420. package/lib/esm/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  421. package/lib/esm/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  422. package/lib/esm/test/AdvancedEqual.js.map +1 -1
  423. package/lib/esm/test/AnnotationTestUtils.js.map +1 -1
  424. package/lib/esm/test/AttachDb.test.js +11 -11
  425. package/lib/esm/test/AttachDb.test.js.map +1 -1
  426. package/lib/esm/test/ElementDrivesElement.test.d.ts +20 -19
  427. package/lib/esm/test/ElementDrivesElement.test.d.ts.map +1 -1
  428. package/lib/esm/test/ElementDrivesElement.test.js +134 -119
  429. package/lib/esm/test/ElementDrivesElement.test.js.map +1 -1
  430. package/lib/esm/test/ElementLRUCache.test.js.map +1 -1
  431. package/lib/esm/test/GeometryTestUtil.js.map +1 -1
  432. package/lib/esm/test/IModelHost.test.js +56 -2
  433. package/lib/esm/test/IModelHost.test.js.map +1 -1
  434. package/lib/esm/test/IModelTestUtils.d.ts +23 -23
  435. package/lib/esm/test/IModelTestUtils.d.ts.map +1 -1
  436. package/lib/esm/test/IModelTestUtils.js +466 -449
  437. package/lib/esm/test/IModelTestUtils.js.map +1 -1
  438. package/lib/esm/test/ImageSourceConversion.test.js.map +1 -1
  439. package/lib/esm/test/IpcHost.test.js.map +1 -1
  440. package/lib/esm/test/KnownTestLocations.js.map +1 -1
  441. package/lib/esm/test/PrintElementTree.js.map +1 -1
  442. package/lib/esm/test/PropertyDb.test.js +2 -2
  443. package/lib/esm/test/PropertyDb.test.js.map +1 -1
  444. package/lib/esm/test/RevisionUtility.js.map +1 -1
  445. package/lib/esm/test/SchemaUtils.test.js +25 -25
  446. package/lib/esm/test/SchemaUtils.test.js.map +1 -1
  447. package/lib/esm/test/SequentialLogMatcher.js.map +1 -1
  448. package/lib/esm/test/SquashSchemaAndDataChanges.test.js +156 -147
  449. package/lib/esm/test/SquashSchemaAndDataChanges.test.js.map +1 -1
  450. package/lib/esm/test/TestChangeSetUtility.d.ts.map +1 -1
  451. package/lib/esm/test/TestChangeSetUtility.js +11 -7
  452. package/lib/esm/test/TestChangeSetUtility.js.map +1 -1
  453. package/lib/esm/test/TestEditTxn.d.ts +8 -0
  454. package/lib/esm/test/TestEditTxn.d.ts.map +1 -0
  455. package/lib/esm/test/TestEditTxn.js +34 -0
  456. package/lib/esm/test/TestEditTxn.js.map +1 -0
  457. package/lib/esm/test/TestUtils.d.ts +1 -0
  458. package/lib/esm/test/TestUtils.d.ts.map +1 -1
  459. package/lib/esm/test/TestUtils.js +8 -1
  460. package/lib/esm/test/TestUtils.js.map +1 -1
  461. package/lib/esm/test/annotations/Fields.test.js +135 -143
  462. package/lib/esm/test/annotations/Fields.test.js.map +1 -1
  463. package/lib/esm/test/annotations/FrameGeometry.test.js.map +1 -1
  464. package/lib/esm/test/annotations/LeaderGeometry.test.js.map +1 -1
  465. package/lib/esm/test/annotations/TextAnnotation.test.js +156 -99
  466. package/lib/esm/test/annotations/TextAnnotation.test.js.map +1 -1
  467. package/lib/esm/test/annotations/TextBlock.test.js +5 -3
  468. package/lib/esm/test/annotations/TextBlock.test.js.map +1 -1
  469. package/lib/esm/test/assets/IncrementalSchemaLocater/configs/old.config.js.map +1 -1
  470. package/lib/esm/test/assets/IncrementalSchemaLocater/configs/simple.config.js.map +1 -1
  471. package/lib/esm/test/categories/Category.test.js +63 -3
  472. package/lib/esm/test/categories/Category.test.js.map +1 -1
  473. package/lib/esm/test/codespec/CodeSpec.test.js +88 -5
  474. package/lib/esm/test/codespec/CodeSpec.test.js.map +1 -1
  475. package/lib/esm/test/ecdb/CTE.test.js +88 -88
  476. package/lib/esm/test/ecdb/CTE.test.js.map +1 -1
  477. package/lib/esm/test/ecdb/ConcurrentQuery.test.js +19 -19
  478. package/lib/esm/test/ecdb/ConcurrentQuery.test.js.map +1 -1
  479. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.js +15 -15
  480. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.js.map +1 -1
  481. package/lib/esm/test/ecdb/ECDb.test.js +72 -72
  482. package/lib/esm/test/ecdb/ECDb.test.js.map +1 -1
  483. package/lib/esm/test/ecdb/ECDbTestHelper.js.map +1 -1
  484. package/lib/esm/test/ecdb/ECSchemaXmlContext.test.js.map +1 -1
  485. package/lib/esm/test/ecdb/ECSqlAst.test.js +68 -67
  486. package/lib/esm/test/ecdb/ECSqlAst.test.js.map +1 -1
  487. package/lib/esm/test/ecdb/ECSqlQuery.test.js +6 -6
  488. package/lib/esm/test/ecdb/ECSqlQuery.test.js.map +1 -1
  489. package/lib/esm/test/ecdb/ECSqlStatement.test.js +332 -333
  490. package/lib/esm/test/ecdb/ECSqlStatement.test.js.map +1 -1
  491. package/lib/esm/test/ecdb/ECSqlSyncReader.test.js.map +1 -1
  492. package/lib/esm/test/ecdb/QueryReaders.test.js +47 -44
  493. package/lib/esm/test/ecdb/QueryReaders.test.js.map +1 -1
  494. package/lib/esm/test/ecdb/SqliteStatement.test.js +2 -2
  495. package/lib/esm/test/ecdb/SqliteStatement.test.js.map +1 -1
  496. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.d.ts.map +1 -1
  497. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.js +30 -28
  498. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.js.map +1 -1
  499. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.js +21 -21
  500. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.js.map +1 -1
  501. package/lib/esm/test/ecsql/src/ECSqlTestParser.js.map +1 -1
  502. package/lib/esm/test/ecsql/src/ECSqlTestRunner.test.js.map +1 -1
  503. package/lib/esm/test/element/DeleteDefinitionElements.test.js +159 -143
  504. package/lib/esm/test/element/DeleteDefinitionElements.test.js.map +1 -1
  505. package/lib/esm/test/element/ElementAspect.test.js +90 -82
  506. package/lib/esm/test/element/ElementAspect.test.js.map +1 -1
  507. package/lib/esm/test/element/ElementDependencyGraph.test.d.ts.map +1 -1
  508. package/lib/esm/test/element/ElementDependencyGraph.test.js +51 -43
  509. package/lib/esm/test/element/ElementDependencyGraph.test.js.map +1 -1
  510. package/lib/esm/test/element/ElementRoundTrip.test.js +176 -177
  511. package/lib/esm/test/element/ElementRoundTrip.test.js.map +1 -1
  512. package/lib/esm/test/element/ExcludedElements.test.js +2 -2
  513. package/lib/esm/test/element/ExcludedElements.test.js.map +1 -1
  514. package/lib/esm/test/element/ExternalSource.test.js +40 -38
  515. package/lib/esm/test/element/ExternalSource.test.js.map +1 -1
  516. package/lib/esm/test/element/NullStructArray.test.js +23 -22
  517. package/lib/esm/test/element/NullStructArray.test.js.map +1 -1
  518. package/lib/esm/test/element/ProjectInformationRecord.test.js +5 -2
  519. package/lib/esm/test/element/ProjectInformationRecord.test.js.map +1 -1
  520. package/lib/esm/test/element/SheetInformationAspect.test.js +43 -11
  521. package/lib/esm/test/element/SheetInformationAspect.test.js.map +1 -1
  522. package/lib/esm/test/element/UrlLink.test.js +2 -2
  523. package/lib/esm/test/element/UrlLink.test.js.map +1 -1
  524. package/lib/esm/test/font/FontFile.test.js.map +1 -1
  525. package/lib/esm/test/font/IModelDbFonts.test.js +87 -73
  526. package/lib/esm/test/font/IModelDbFonts.test.js.map +1 -1
  527. package/lib/esm/test/hubaccess/ApplyChangeset.test.js +194 -155
  528. package/lib/esm/test/hubaccess/ApplyChangeset.test.js.map +1 -1
  529. package/lib/esm/test/hubaccess/BriefcaseManager.test.js +2 -4
  530. package/lib/esm/test/hubaccess/BriefcaseManager.test.js.map +1 -1
  531. package/lib/esm/test/hubaccess/CheckpointManager.test.js.map +1 -1
  532. package/lib/esm/test/hubaccess/Rebase.test.js +369 -303
  533. package/lib/esm/test/hubaccess/Rebase.test.js.map +1 -1
  534. package/lib/esm/test/hubaccess/SemanticRebase.test.js +467 -392
  535. package/lib/esm/test/hubaccess/SemanticRebase.test.js.map +1 -1
  536. package/lib/esm/test/imageData.js.map +1 -1
  537. package/lib/esm/test/imodel/Code.test.js +31 -31
  538. package/lib/esm/test/imodel/Code.test.js.map +1 -1
  539. package/lib/esm/test/imodel/ElementTreeWalker.test.js +57 -48
  540. package/lib/esm/test/imodel/ElementTreeWalker.test.js.map +1 -1
  541. package/lib/esm/test/imodel/GetTextureImage.test.js.map +1 -1
  542. package/lib/esm/test/imodel/IModel.test.js +463 -388
  543. package/lib/esm/test/imodel/IModel.test.js.map +1 -1
  544. package/lib/esm/test/imodel/ProjectExtents.test.js +2 -2
  545. package/lib/esm/test/imodel/ProjectExtents.test.js.map +1 -1
  546. package/lib/esm/test/imodel/SchemaXmlImport.test.js +13 -13
  547. package/lib/esm/test/imodel/SchemaXmlImport.test.js.map +1 -1
  548. package/lib/esm/test/incrementalSchemaLocater/ECSqlQueries.test.js.map +1 -1
  549. package/lib/esm/test/incrementalSchemaLocater/IncrementalLoading.test.js.map +1 -1
  550. package/lib/esm/test/incrementalSchemaLocater/TestContext.d.ts.map +1 -1
  551. package/lib/esm/test/incrementalSchemaLocater/TestContext.js +2 -2
  552. package/lib/esm/test/incrementalSchemaLocater/TestContext.js.map +1 -1
  553. package/lib/esm/test/index.d.ts +1 -0
  554. package/lib/esm/test/index.d.ts.map +1 -1
  555. package/lib/esm/test/index.js +1 -0
  556. package/lib/esm/test/index.js.map +1 -1
  557. package/lib/esm/test/misc/DevTools.test.js.map +1 -1
  558. package/lib/esm/test/misc/EntitySubClasses.test.js.map +1 -1
  559. package/lib/esm/test/misc/GeoServices.test.js.map +1 -1
  560. package/lib/esm/test/misc/PromiseMemoizer.test.js.map +1 -1
  561. package/lib/esm/test/native/DgnDbWorker.test.js.map +1 -1
  562. package/lib/esm/test/rpc/response.test.js.map +1 -1
  563. package/lib/esm/test/schema/ClassRegistry.test.js +122 -121
  564. package/lib/esm/test/schema/ClassRegistry.test.js.map +1 -1
  565. package/lib/esm/test/schema/FunctionalDomain.test.js +36 -34
  566. package/lib/esm/test/schema/FunctionalDomain.test.js.map +1 -1
  567. package/lib/esm/test/schema/GenericDomain.test.js +114 -94
  568. package/lib/esm/test/schema/GenericDomain.test.js.map +1 -1
  569. package/lib/esm/test/schema/IModelSchemaContext.test.js +11 -10
  570. package/lib/esm/test/schema/IModelSchemaContext.test.js.map +1 -1
  571. package/lib/esm/test/schema/SchemaImportCallbacks.test.js +226 -211
  572. package/lib/esm/test/schema/SchemaImportCallbacks.test.js.map +1 -1
  573. package/lib/esm/test/sheetindex/SheetIndex.test.d.ts +1 -3
  574. package/lib/esm/test/sheetindex/SheetIndex.test.d.ts.map +1 -1
  575. package/lib/esm/test/sheetindex/SheetIndex.test.js +312 -247
  576. package/lib/esm/test/sheetindex/SheetIndex.test.js.map +1 -1
  577. package/lib/esm/test/standalone/ChangeMerge.test.js +101 -82
  578. package/lib/esm/test/standalone/ChangeMerge.test.js.map +1 -1
  579. package/lib/esm/test/standalone/ChangesetReader.test.js +242 -213
  580. package/lib/esm/test/standalone/ChangesetReader.test.js.map +1 -1
  581. package/lib/esm/test/standalone/CustomViewState3dCreator.test.js.map +1 -1
  582. package/lib/esm/test/standalone/DisplayStyle.test.js +43 -40
  583. package/lib/esm/test/standalone/DisplayStyle.test.js.map +1 -1
  584. package/lib/esm/test/standalone/Drawing.test.js +4 -3
  585. package/lib/esm/test/standalone/Drawing.test.js.map +1 -1
  586. package/lib/esm/test/standalone/EditTxn.test.d.ts +2 -0
  587. package/lib/esm/test/standalone/EditTxn.test.d.ts.map +1 -0
  588. package/lib/esm/test/standalone/EditTxn.test.js +219 -0
  589. package/lib/esm/test/standalone/EditTxn.test.js.map +1 -0
  590. package/lib/esm/test/standalone/ElementGraphics.test.js.map +1 -1
  591. package/lib/esm/test/standalone/ElementMesh.test.js +16 -13
  592. package/lib/esm/test/standalone/ElementMesh.test.js.map +1 -1
  593. package/lib/esm/test/standalone/ExportGraphics.test.js +40 -34
  594. package/lib/esm/test/standalone/ExportGraphics.test.js.map +1 -1
  595. package/lib/esm/test/standalone/GeometryChangeEvents.test.js +11 -15
  596. package/lib/esm/test/standalone/GeometryChangeEvents.test.js.map +1 -1
  597. package/lib/esm/test/standalone/GeometryStream.test.js +212 -165
  598. package/lib/esm/test/standalone/GeometryStream.test.js.map +1 -1
  599. package/lib/esm/test/standalone/HubMock.test.js +31 -25
  600. package/lib/esm/test/standalone/HubMock.test.js.map +1 -1
  601. package/lib/esm/test/standalone/IModelLimits.test.js +11 -8
  602. package/lib/esm/test/standalone/IModelLimits.test.js.map +1 -1
  603. package/lib/esm/test/standalone/IModelWrite.test.d.ts +2 -2
  604. package/lib/esm/test/standalone/IModelWrite.test.d.ts.map +1 -1
  605. package/lib/esm/test/standalone/IModelWrite.test.js +211 -169
  606. package/lib/esm/test/standalone/IModelWrite.test.js.map +1 -1
  607. package/lib/esm/test/standalone/ITwinWorkspace.test.js.map +1 -1
  608. package/lib/esm/test/standalone/InlineGeometryPartReferences.test.js +25 -22
  609. package/lib/esm/test/standalone/InlineGeometryPartReferences.test.js.map +1 -1
  610. package/lib/esm/test/standalone/IntegrityCheck.test.js +20 -18
  611. package/lib/esm/test/standalone/IntegrityCheck.test.js.map +1 -1
  612. package/lib/esm/test/standalone/MergeConflict.test.d.ts +2 -2
  613. package/lib/esm/test/standalone/MergeConflict.test.d.ts.map +1 -1
  614. package/lib/esm/test/standalone/MergeConflict.test.js +49 -33
  615. package/lib/esm/test/standalone/MergeConflict.test.js.map +1 -1
  616. package/lib/esm/test/standalone/NativeAppStorage.test.js.map +1 -1
  617. package/lib/esm/test/standalone/RenderMaterialElement.test.js +5 -5
  618. package/lib/esm/test/standalone/RenderMaterialElement.test.js.map +1 -1
  619. package/lib/esm/test/standalone/RenderTimeline.test.js +3 -2
  620. package/lib/esm/test/standalone/RenderTimeline.test.js.map +1 -1
  621. package/lib/esm/test/standalone/SQLiteDb.test.js.map +1 -1
  622. package/lib/esm/test/standalone/SchemaUtils.test.js.map +1 -1
  623. package/lib/esm/test/standalone/SectionDrawing.test.js +7 -7
  624. package/lib/esm/test/standalone/SectionDrawing.test.js.map +1 -1
  625. package/lib/esm/test/standalone/ServerBasedLocks.test.js +21 -19
  626. package/lib/esm/test/standalone/ServerBasedLocks.test.js.map +1 -1
  627. package/lib/esm/test/standalone/Setting.test.js.map +1 -1
  628. package/lib/esm/test/standalone/Settings.test.js +7 -4
  629. package/lib/esm/test/standalone/Settings.test.js.map +1 -1
  630. package/lib/esm/test/standalone/SettingsSchemas.test.js +2 -1
  631. package/lib/esm/test/standalone/SettingsSchemas.test.js.map +1 -1
  632. package/lib/esm/test/standalone/SnapshotDb.test.js +3 -1
  633. package/lib/esm/test/standalone/SnapshotDb.test.js.map +1 -1
  634. package/lib/esm/test/standalone/StandaloneDb.test.js +27 -26
  635. package/lib/esm/test/standalone/StandaloneDb.test.js.map +1 -1
  636. package/lib/esm/test/standalone/Texture.test.js +5 -4
  637. package/lib/esm/test/standalone/Texture.test.js.map +1 -1
  638. package/lib/esm/test/standalone/TileCache.test.d.ts.map +1 -1
  639. package/lib/esm/test/standalone/TileCache.test.js +5 -3
  640. package/lib/esm/test/standalone/TileCache.test.js.map +1 -1
  641. package/lib/esm/test/standalone/TileTree.test.js +35 -31
  642. package/lib/esm/test/standalone/TileTree.test.js.map +1 -1
  643. package/lib/esm/test/standalone/TxnManager.test.js +700 -653
  644. package/lib/esm/test/standalone/TxnManager.test.js.map +1 -1
  645. package/lib/esm/test/standalone/ViewDefinition.test.js +295 -229
  646. package/lib/esm/test/standalone/ViewDefinition.test.js.map +1 -1
  647. package/lib/esm/test/standalone/ViewStoreDb.test.js.map +1 -1
  648. package/lib/esm/test/standalone/Workspace.test.js +25 -23
  649. package/lib/esm/test/standalone/Workspace.test.js.map +1 -1
  650. package/lib/esm/test/standalone/iModelDb.test.js.map +1 -1
  651. package/lib/esm/test/workspace/SettingsDb.test.js.map +1 -1
  652. package/lib/esm/workspace/Settings.js.map +1 -1
  653. package/lib/esm/workspace/SettingsDb.js.map +1 -1
  654. package/lib/esm/workspace/SettingsEditor.js.map +1 -1
  655. package/lib/esm/workspace/SettingsSchemas.js.map +1 -1
  656. package/lib/esm/workspace/Workspace.js.map +1 -1
  657. package/lib/esm/workspace/WorkspaceEditor.js.map +1 -1
  658. package/package.json +13 -13
@@ -4,6 +4,7 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import { assert, expect } from "chai";
6
6
  import { DbResult, Id64 } from "@itwin/core-bentley";
7
+ import { withEditTxn } from "../../EditTxn";
7
8
  import { BriefcaseIdValue, Code, ColorDef, ElementGeometry, IModel, QueryRowFormat, SubCategoryAppearance, } from "@itwin/core-common";
8
9
  import { Angle, Arc3d, Cone, IModelJson as GeomJson, LineSegment3d, Point2d, Point3d } from "@itwin/core-geometry";
9
10
  import { _nativeDb, IModelDb, IModelJsFs, PhysicalModel, PhysicalObject, SnapshotDb, SpatialCategory } from "../../core-backend";
@@ -256,145 +257,145 @@ function initElementRefersToElementsProps(className, _iModelName, elId1, elId2,
256
257
  return result;
257
258
  }
258
259
  describe("Element and ElementAspect roundtrip test for all type of properties", () => {
259
- const testSchema = `<?xml version="1.0" encoding="UTF-8"?>
260
- <ECSchema schemaName="ElementRoundTripTest" alias="ts" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
261
- <ECSchemaReference name="BisCore" version="01.00.04" alias="bis"/>
262
- <ECSchemaReference name="CoreCustomAttributes" version="01.00.03" alias="CoreCA"/>
263
- <ECEntityClass typeName="TestElement" modifier="None">
264
- <BaseClass>bis:PhysicalElement</BaseClass>
265
- <BaseClass>IPrimitive</BaseClass>
266
- <BaseClass>IPrimitiveArray</BaseClass>
267
- </ECEntityClass>
268
- <ECEntityClass typeName="TestElementAspect" modifier="None">
269
- <BaseClass>bis:ElementUniqueAspect</BaseClass>
270
- <BaseClass>IPrimitiveAspect</BaseClass>
271
- <BaseClass>IPrimitiveArrayAspect</BaseClass>
272
- </ECEntityClass>
273
- <ECRelationshipClass typeName="TestElementRefersToElements" strength="referencing" modifier="Sealed">
274
- <BaseClass>bis:ElementRefersToElements</BaseClass>
275
- <Source multiplicity="(0..*)" roleLabel="refers to" polymorphic="true">
276
- <Class class="TestElement"/>
277
- </Source>
278
- <Target multiplicity="(0..*)" roleLabel="is referenced by" polymorphic="true">
279
- <Class class="TestElement"/>
280
- </Target>
281
- <ECProperty propertyName="i" typeName="int"/>
282
- <ECProperty propertyName="l" typeName="long"/>
283
- <ECProperty propertyName="d" typeName="double"/>
284
- <ECProperty propertyName="b" typeName="boolean"/>
285
- <ECProperty propertyName="dt" typeName="dateTime"/>
286
- <ECProperty propertyName="s" typeName="string"/>
287
- <ECProperty propertyName="bin" typeName="binary"/>
288
- <ECProperty propertyName="p2d" typeName="point2d"/>
289
- <ECProperty propertyName="p3d" typeName="point3d"/>
290
- <ECProperty propertyName="g" typeName="Bentley.Geometry.Common.IGeometry"/>
291
- <!--<ECStructProperty propertyName="st" typeName="ComplexStruct"/>-->
292
- <ECArrayProperty propertyName="array_i" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
293
- <ECArrayProperty propertyName="array_l" typeName="long" minOccurs="0" maxOccurs="unbounded"/>
294
- <ECArrayProperty propertyName="array_d" typeName="double" minOccurs="0" maxOccurs="unbounded"/>
295
- <ECArrayProperty propertyName="array_b" typeName="boolean" minOccurs="0" maxOccurs="unbounded"/>
296
- <ECArrayProperty propertyName="array_dt" typeName="dateTime" minOccurs="0" maxOccurs="unbounded"/>
297
- <ECArrayProperty propertyName="array_s" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
298
- <ECArrayProperty propertyName="array_bin" typeName="binary" minOccurs="0" maxOccurs="unbounded"/>
299
- <ECArrayProperty propertyName="array_p2d" typeName="point2d" minOccurs="0" maxOccurs="unbounded"/>
300
- <ECArrayProperty propertyName="array_p3d" typeName="point3d" minOccurs="0" maxOccurs="unbounded"/>
301
- <ECArrayProperty propertyName="array_g" typeName="Bentley.Geometry.Common.IGeometry" minOccurs="0" maxOccurs="unbounded"/>
302
- <!--<ECStructArrayProperty propertyName="array_st" typeName="ComplexStruct" minOccurs="0" maxOccurs="unbounded"/>-->
303
- </ECRelationshipClass>
304
- <ECEntityClass typeName="IPrimitive" modifier="Abstract">
305
- <ECCustomAttributes>
306
- <IsMixin xmlns="CoreCustomAttributes.01.00.03">
307
- <AppliesToEntityClass>bis:PhysicalElement</AppliesToEntityClass>
308
- </IsMixin>
309
- </ECCustomAttributes>
310
- <ECProperty propertyName="i" typeName="int"/>
311
- <ECProperty propertyName="l" typeName="long"/>
312
- <ECProperty propertyName="d" typeName="double"/>
313
- <ECProperty propertyName="b" typeName="boolean"/>
314
- <ECProperty propertyName="dt" typeName="dateTime"/>
315
- <ECProperty propertyName="s" typeName="string"/>
316
- <ECProperty propertyName="bin" typeName="binary"/>
317
- <ECProperty propertyName="p2d" typeName="point2d"/>
318
- <ECProperty propertyName="p3d" typeName="point3d"/>
319
- <ECProperty propertyName="g" typeName="Bentley.Geometry.Common.IGeometry"/>
320
- <ECStructProperty propertyName="st" typeName="ComplexStruct"/>
321
- </ECEntityClass>
322
- <ECEntityClass typeName="IPrimitiveAspect" modifier="Abstract">
323
- <ECCustomAttributes>
324
- <IsMixin xmlns="CoreCustomAttributes.01.00.03">
325
- <AppliesToEntityClass>bis:ElementUniqueAspect</AppliesToEntityClass>
326
- </IsMixin>
327
- </ECCustomAttributes>
328
- <ECProperty propertyName="i" typeName="int"/>
329
- <ECProperty propertyName="l" typeName="long"/>
330
- <ECProperty propertyName="d" typeName="double"/>
331
- <ECProperty propertyName="b" typeName="boolean"/>
332
- <ECProperty propertyName="dt" typeName="dateTime"/>
333
- <ECProperty propertyName="s" typeName="string"/>
334
- <ECProperty propertyName="bin" typeName="binary"/>
335
- <ECProperty propertyName="p2d" typeName="point2d"/>
336
- <ECProperty propertyName="p3d" typeName="point3d"/>
337
- <ECProperty propertyName="g" typeName="Bentley.Geometry.Common.IGeometry"/>
338
- <ECStructProperty propertyName="st" typeName="ComplexStruct"/>
339
- </ECEntityClass>
340
- <ECEntityClass typeName="IPrimitiveArray" modifier="Abstract">
341
- <ECCustomAttributes>
342
- <IsMixin xmlns="CoreCustomAttributes.01.00.03">
343
- <AppliesToEntityClass>bis:PhysicalElement</AppliesToEntityClass>
344
- </IsMixin>
345
- </ECCustomAttributes>
346
- <ECArrayProperty propertyName="array_i" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
347
- <ECArrayProperty propertyName="array_l" typeName="long" minOccurs="0" maxOccurs="unbounded"/>
348
- <ECArrayProperty propertyName="array_d" typeName="double" minOccurs="0" maxOccurs="unbounded"/>
349
- <ECArrayProperty propertyName="array_b" typeName="boolean" minOccurs="0" maxOccurs="unbounded"/>
350
- <ECArrayProperty propertyName="array_dt" typeName="dateTime" minOccurs="0" maxOccurs="unbounded"/>
351
- <ECArrayProperty propertyName="array_s" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
352
- <ECArrayProperty propertyName="array_bin" typeName="binary" minOccurs="0" maxOccurs="unbounded"/>
353
- <ECArrayProperty propertyName="array_p2d" typeName="point2d" minOccurs="0" maxOccurs="unbounded"/>
354
- <ECArrayProperty propertyName="array_p3d" typeName="point3d" minOccurs="0" maxOccurs="unbounded"/>
355
- <ECArrayProperty propertyName="array_g" typeName="Bentley.Geometry.Common.IGeometry" minOccurs="0" maxOccurs="unbounded"/>
356
- <ECStructArrayProperty propertyName="array_st" typeName="ComplexStruct" minOccurs="0" maxOccurs="unbounded"/>
357
- </ECEntityClass>
358
- <ECEntityClass typeName="IPrimitiveArrayAspect" modifier="Abstract">
359
- <ECCustomAttributes>
360
- <IsMixin xmlns="CoreCustomAttributes.01.00.03">
361
- <AppliesToEntityClass>bis:ElementUniqueAspect</AppliesToEntityClass>
362
- </IsMixin>
363
- </ECCustomAttributes>
364
- <ECArrayProperty propertyName="array_i" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
365
- <ECArrayProperty propertyName="array_l" typeName="long" minOccurs="0" maxOccurs="unbounded"/>
366
- <ECArrayProperty propertyName="array_d" typeName="double" minOccurs="0" maxOccurs="unbounded"/>
367
- <ECArrayProperty propertyName="array_b" typeName="boolean" minOccurs="0" maxOccurs="unbounded"/>
368
- <ECArrayProperty propertyName="array_dt" typeName="dateTime" minOccurs="0" maxOccurs="unbounded"/>
369
- <ECArrayProperty propertyName="array_s" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
370
- <ECArrayProperty propertyName="array_bin" typeName="binary" minOccurs="0" maxOccurs="unbounded"/>
371
- <ECArrayProperty propertyName="array_p2d" typeName="point2d" minOccurs="0" maxOccurs="unbounded"/>
372
- <ECArrayProperty propertyName="array_p3d" typeName="point3d" minOccurs="0" maxOccurs="unbounded"/>
373
- <ECArrayProperty propertyName="array_g" typeName="Bentley.Geometry.Common.IGeometry" minOccurs="0" maxOccurs="unbounded"/>
374
- <ECStructArrayProperty propertyName="array_st" typeName="ComplexStruct" minOccurs="0" maxOccurs="unbounded"/>
375
- </ECEntityClass>
376
- <ECStructClass typeName="ComplexStruct" modifier="None">
377
- <ECProperty propertyName="i" typeName="int"/>
378
- <ECProperty propertyName="l" typeName="long"/>
379
- <ECProperty propertyName="d" typeName="double"/>
380
- <ECProperty propertyName="b" typeName="boolean"/>
381
- <ECProperty propertyName="dt" typeName="dateTime"/>
382
- <ECProperty propertyName="s" typeName="string"/>
383
- <ECProperty propertyName="bin" typeName="binary"/>
384
- <ECProperty propertyName="p2d" typeName="point2d"/>
385
- <ECProperty propertyName="p3d" typeName="point3d"/>
386
- <ECProperty propertyName="g" typeName="Bentley.Geometry.Common.IGeometry"/>
387
- <ECArrayProperty propertyName="array_i" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
388
- <ECArrayProperty propertyName="array_l" typeName="long" minOccurs="0" maxOccurs="unbounded"/>
389
- <ECArrayProperty propertyName="array_d" typeName="double" minOccurs="0" maxOccurs="unbounded"/>
390
- <ECArrayProperty propertyName="array_b" typeName="boolean" minOccurs="0" maxOccurs="unbounded"/>
391
- <ECArrayProperty propertyName="array_dt" typeName="dateTime" minOccurs="0" maxOccurs="unbounded"/>
392
- <ECArrayProperty propertyName="array_s" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
393
- <ECArrayProperty propertyName="array_bin" typeName="binary" minOccurs="0" maxOccurs="unbounded"/>
394
- <ECArrayProperty propertyName="array_p2d" typeName="point2d" minOccurs="0" maxOccurs="unbounded"/>
395
- <ECArrayProperty propertyName="array_p3d" typeName="point3d" minOccurs="0" maxOccurs="unbounded"/>
396
- <ECArrayProperty propertyName="array_g" typeName="Bentley.Geometry.Common.IGeometry" minOccurs="0" maxOccurs="unbounded"/>
397
- </ECStructClass>
260
+ const testSchema = `<?xml version="1.0" encoding="UTF-8"?>
261
+ <ECSchema schemaName="ElementRoundTripTest" alias="ts" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
262
+ <ECSchemaReference name="BisCore" version="01.00.04" alias="bis"/>
263
+ <ECSchemaReference name="CoreCustomAttributes" version="01.00.03" alias="CoreCA"/>
264
+ <ECEntityClass typeName="TestElement" modifier="None">
265
+ <BaseClass>bis:PhysicalElement</BaseClass>
266
+ <BaseClass>IPrimitive</BaseClass>
267
+ <BaseClass>IPrimitiveArray</BaseClass>
268
+ </ECEntityClass>
269
+ <ECEntityClass typeName="TestElementAspect" modifier="None">
270
+ <BaseClass>bis:ElementUniqueAspect</BaseClass>
271
+ <BaseClass>IPrimitiveAspect</BaseClass>
272
+ <BaseClass>IPrimitiveArrayAspect</BaseClass>
273
+ </ECEntityClass>
274
+ <ECRelationshipClass typeName="TestElementRefersToElements" strength="referencing" modifier="Sealed">
275
+ <BaseClass>bis:ElementRefersToElements</BaseClass>
276
+ <Source multiplicity="(0..*)" roleLabel="refers to" polymorphic="true">
277
+ <Class class="TestElement"/>
278
+ </Source>
279
+ <Target multiplicity="(0..*)" roleLabel="is referenced by" polymorphic="true">
280
+ <Class class="TestElement"/>
281
+ </Target>
282
+ <ECProperty propertyName="i" typeName="int"/>
283
+ <ECProperty propertyName="l" typeName="long"/>
284
+ <ECProperty propertyName="d" typeName="double"/>
285
+ <ECProperty propertyName="b" typeName="boolean"/>
286
+ <ECProperty propertyName="dt" typeName="dateTime"/>
287
+ <ECProperty propertyName="s" typeName="string"/>
288
+ <ECProperty propertyName="bin" typeName="binary"/>
289
+ <ECProperty propertyName="p2d" typeName="point2d"/>
290
+ <ECProperty propertyName="p3d" typeName="point3d"/>
291
+ <ECProperty propertyName="g" typeName="Bentley.Geometry.Common.IGeometry"/>
292
+ <!--<ECStructProperty propertyName="st" typeName="ComplexStruct"/>-->
293
+ <ECArrayProperty propertyName="array_i" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
294
+ <ECArrayProperty propertyName="array_l" typeName="long" minOccurs="0" maxOccurs="unbounded"/>
295
+ <ECArrayProperty propertyName="array_d" typeName="double" minOccurs="0" maxOccurs="unbounded"/>
296
+ <ECArrayProperty propertyName="array_b" typeName="boolean" minOccurs="0" maxOccurs="unbounded"/>
297
+ <ECArrayProperty propertyName="array_dt" typeName="dateTime" minOccurs="0" maxOccurs="unbounded"/>
298
+ <ECArrayProperty propertyName="array_s" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
299
+ <ECArrayProperty propertyName="array_bin" typeName="binary" minOccurs="0" maxOccurs="unbounded"/>
300
+ <ECArrayProperty propertyName="array_p2d" typeName="point2d" minOccurs="0" maxOccurs="unbounded"/>
301
+ <ECArrayProperty propertyName="array_p3d" typeName="point3d" minOccurs="0" maxOccurs="unbounded"/>
302
+ <ECArrayProperty propertyName="array_g" typeName="Bentley.Geometry.Common.IGeometry" minOccurs="0" maxOccurs="unbounded"/>
303
+ <!--<ECStructArrayProperty propertyName="array_st" typeName="ComplexStruct" minOccurs="0" maxOccurs="unbounded"/>-->
304
+ </ECRelationshipClass>
305
+ <ECEntityClass typeName="IPrimitive" modifier="Abstract">
306
+ <ECCustomAttributes>
307
+ <IsMixin xmlns="CoreCustomAttributes.01.00.03">
308
+ <AppliesToEntityClass>bis:PhysicalElement</AppliesToEntityClass>
309
+ </IsMixin>
310
+ </ECCustomAttributes>
311
+ <ECProperty propertyName="i" typeName="int"/>
312
+ <ECProperty propertyName="l" typeName="long"/>
313
+ <ECProperty propertyName="d" typeName="double"/>
314
+ <ECProperty propertyName="b" typeName="boolean"/>
315
+ <ECProperty propertyName="dt" typeName="dateTime"/>
316
+ <ECProperty propertyName="s" typeName="string"/>
317
+ <ECProperty propertyName="bin" typeName="binary"/>
318
+ <ECProperty propertyName="p2d" typeName="point2d"/>
319
+ <ECProperty propertyName="p3d" typeName="point3d"/>
320
+ <ECProperty propertyName="g" typeName="Bentley.Geometry.Common.IGeometry"/>
321
+ <ECStructProperty propertyName="st" typeName="ComplexStruct"/>
322
+ </ECEntityClass>
323
+ <ECEntityClass typeName="IPrimitiveAspect" modifier="Abstract">
324
+ <ECCustomAttributes>
325
+ <IsMixin xmlns="CoreCustomAttributes.01.00.03">
326
+ <AppliesToEntityClass>bis:ElementUniqueAspect</AppliesToEntityClass>
327
+ </IsMixin>
328
+ </ECCustomAttributes>
329
+ <ECProperty propertyName="i" typeName="int"/>
330
+ <ECProperty propertyName="l" typeName="long"/>
331
+ <ECProperty propertyName="d" typeName="double"/>
332
+ <ECProperty propertyName="b" typeName="boolean"/>
333
+ <ECProperty propertyName="dt" typeName="dateTime"/>
334
+ <ECProperty propertyName="s" typeName="string"/>
335
+ <ECProperty propertyName="bin" typeName="binary"/>
336
+ <ECProperty propertyName="p2d" typeName="point2d"/>
337
+ <ECProperty propertyName="p3d" typeName="point3d"/>
338
+ <ECProperty propertyName="g" typeName="Bentley.Geometry.Common.IGeometry"/>
339
+ <ECStructProperty propertyName="st" typeName="ComplexStruct"/>
340
+ </ECEntityClass>
341
+ <ECEntityClass typeName="IPrimitiveArray" modifier="Abstract">
342
+ <ECCustomAttributes>
343
+ <IsMixin xmlns="CoreCustomAttributes.01.00.03">
344
+ <AppliesToEntityClass>bis:PhysicalElement</AppliesToEntityClass>
345
+ </IsMixin>
346
+ </ECCustomAttributes>
347
+ <ECArrayProperty propertyName="array_i" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
348
+ <ECArrayProperty propertyName="array_l" typeName="long" minOccurs="0" maxOccurs="unbounded"/>
349
+ <ECArrayProperty propertyName="array_d" typeName="double" minOccurs="0" maxOccurs="unbounded"/>
350
+ <ECArrayProperty propertyName="array_b" typeName="boolean" minOccurs="0" maxOccurs="unbounded"/>
351
+ <ECArrayProperty propertyName="array_dt" typeName="dateTime" minOccurs="0" maxOccurs="unbounded"/>
352
+ <ECArrayProperty propertyName="array_s" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
353
+ <ECArrayProperty propertyName="array_bin" typeName="binary" minOccurs="0" maxOccurs="unbounded"/>
354
+ <ECArrayProperty propertyName="array_p2d" typeName="point2d" minOccurs="0" maxOccurs="unbounded"/>
355
+ <ECArrayProperty propertyName="array_p3d" typeName="point3d" minOccurs="0" maxOccurs="unbounded"/>
356
+ <ECArrayProperty propertyName="array_g" typeName="Bentley.Geometry.Common.IGeometry" minOccurs="0" maxOccurs="unbounded"/>
357
+ <ECStructArrayProperty propertyName="array_st" typeName="ComplexStruct" minOccurs="0" maxOccurs="unbounded"/>
358
+ </ECEntityClass>
359
+ <ECEntityClass typeName="IPrimitiveArrayAspect" modifier="Abstract">
360
+ <ECCustomAttributes>
361
+ <IsMixin xmlns="CoreCustomAttributes.01.00.03">
362
+ <AppliesToEntityClass>bis:ElementUniqueAspect</AppliesToEntityClass>
363
+ </IsMixin>
364
+ </ECCustomAttributes>
365
+ <ECArrayProperty propertyName="array_i" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
366
+ <ECArrayProperty propertyName="array_l" typeName="long" minOccurs="0" maxOccurs="unbounded"/>
367
+ <ECArrayProperty propertyName="array_d" typeName="double" minOccurs="0" maxOccurs="unbounded"/>
368
+ <ECArrayProperty propertyName="array_b" typeName="boolean" minOccurs="0" maxOccurs="unbounded"/>
369
+ <ECArrayProperty propertyName="array_dt" typeName="dateTime" minOccurs="0" maxOccurs="unbounded"/>
370
+ <ECArrayProperty propertyName="array_s" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
371
+ <ECArrayProperty propertyName="array_bin" typeName="binary" minOccurs="0" maxOccurs="unbounded"/>
372
+ <ECArrayProperty propertyName="array_p2d" typeName="point2d" minOccurs="0" maxOccurs="unbounded"/>
373
+ <ECArrayProperty propertyName="array_p3d" typeName="point3d" minOccurs="0" maxOccurs="unbounded"/>
374
+ <ECArrayProperty propertyName="array_g" typeName="Bentley.Geometry.Common.IGeometry" minOccurs="0" maxOccurs="unbounded"/>
375
+ <ECStructArrayProperty propertyName="array_st" typeName="ComplexStruct" minOccurs="0" maxOccurs="unbounded"/>
376
+ </ECEntityClass>
377
+ <ECStructClass typeName="ComplexStruct" modifier="None">
378
+ <ECProperty propertyName="i" typeName="int"/>
379
+ <ECProperty propertyName="l" typeName="long"/>
380
+ <ECProperty propertyName="d" typeName="double"/>
381
+ <ECProperty propertyName="b" typeName="boolean"/>
382
+ <ECProperty propertyName="dt" typeName="dateTime"/>
383
+ <ECProperty propertyName="s" typeName="string"/>
384
+ <ECProperty propertyName="bin" typeName="binary"/>
385
+ <ECProperty propertyName="p2d" typeName="point2d"/>
386
+ <ECProperty propertyName="p3d" typeName="point3d"/>
387
+ <ECProperty propertyName="g" typeName="Bentley.Geometry.Common.IGeometry"/>
388
+ <ECArrayProperty propertyName="array_i" typeName="int" minOccurs="0" maxOccurs="unbounded"/>
389
+ <ECArrayProperty propertyName="array_l" typeName="long" minOccurs="0" maxOccurs="unbounded"/>
390
+ <ECArrayProperty propertyName="array_d" typeName="double" minOccurs="0" maxOccurs="unbounded"/>
391
+ <ECArrayProperty propertyName="array_b" typeName="boolean" minOccurs="0" maxOccurs="unbounded"/>
392
+ <ECArrayProperty propertyName="array_dt" typeName="dateTime" minOccurs="0" maxOccurs="unbounded"/>
393
+ <ECArrayProperty propertyName="array_s" typeName="string" minOccurs="0" maxOccurs="unbounded"/>
394
+ <ECArrayProperty propertyName="array_bin" typeName="binary" minOccurs="0" maxOccurs="unbounded"/>
395
+ <ECArrayProperty propertyName="array_p2d" typeName="point2d" minOccurs="0" maxOccurs="unbounded"/>
396
+ <ECArrayProperty propertyName="array_p3d" typeName="point3d" minOccurs="0" maxOccurs="unbounded"/>
397
+ <ECArrayProperty propertyName="array_g" typeName="Bentley.Geometry.Common.IGeometry" minOccurs="0" maxOccurs="unbounded"/>
398
+ </ECStructClass>
398
399
  </ECSchema>`;
399
400
  const schemaFileName = "ElementRoundTripTest.01.00.00.xml";
400
401
  const iModelFileName = "ElementRoundTripTest.bim";
@@ -462,18 +463,17 @@ describe("Element and ElementAspect roundtrip test for all type of properties",
462
463
  const imodel = SnapshotDb.createEmpty(iModelPath, { rootSubject: { name: "RoundTripTest" } });
463
464
  await imodel.importSchemas([testSchemaPath]);
464
465
  imodel[_nativeDb].resetBriefcaseId(BriefcaseIdValue.Unassigned);
465
- IModelTestUtils.createAndInsertPhysicalPartitionAndModel(imodel, Code.createEmpty(), true);
466
- let spatialCategoryId = SpatialCategory.queryCategoryIdByName(imodel, IModel.dictionaryId, categoryName);
466
+ withEditTxn(imodel, (txn) => IModelTestUtils.createAndInsertPhysicalPartitionAndModel(txn, Code.createEmpty(), true));
467
+ const spatialCategoryId = SpatialCategory.queryCategoryIdByName(imodel, IModel.dictionaryId, categoryName);
467
468
  if (undefined === spatialCategoryId)
468
- spatialCategoryId = SpatialCategory.insert(imodel, IModel.dictionaryId, categoryName, new SubCategoryAppearance({ color: ColorDef.create("rgb(255,0,0)").toJSON() }));
469
- imodel.saveChanges();
469
+ withEditTxn(imodel, (txn) => SpatialCategory.insert(txn, IModel.dictionaryId, categoryName, new SubCategoryAppearance({ color: ColorDef.create("rgb(255,0,0)").toJSON() })));
470
470
  imodel.close();
471
471
  });
472
472
  it("Roundtrip all type of properties via ElementApi, ConcurrentQuery and ECSqlStatement via insert and update", async () => {
473
473
  const testFileName = IModelTestUtils.prepareOutputFile(subDirName, "roundtrip_correct_data.bim");
474
474
  const imodel = IModelTestUtils.createSnapshotFromSeed(testFileName, iModelPath);
475
475
  const spatialCategoryId = SpatialCategory.queryCategoryIdByName(imodel, IModel.dictionaryId, categoryName);
476
- const [, newModelId] = IModelTestUtils.createAndInsertPhysicalPartitionAndModel(imodel, Code.createEmpty(), true);
476
+ const [, newModelId] = withEditTxn(imodel, (txn) => IModelTestUtils.createAndInsertPhysicalPartitionAndModel(txn, Code.createEmpty(), true));
477
477
  // create element with auto handled properties
478
478
  const expectedValue = initElemProps("TestElement", imodel, newModelId, spatialCategoryId, {
479
479
  ...primInst1,
@@ -483,9 +483,8 @@ describe("Element and ElementAspect roundtrip test for all type of properties",
483
483
  });
484
484
  // insert a element
485
485
  const geomElement = imodel.elements.createElement(expectedValue);
486
- const id = imodel.elements.insertElement(geomElement.toJSON());
486
+ const id = withEditTxn(imodel, (txn) => txn.insertElement(geomElement.toJSON()));
487
487
  assert.isTrue(Id64.isValidId64(id), "insert worked");
488
- imodel.saveChanges();
489
488
  const expectedSystemProperty = {
490
489
  id,
491
490
  className: `ElementRoundTripTest.TestElement`,
@@ -537,8 +536,7 @@ describe("Element and ElementAspect roundtrip test for all type of properties",
537
536
  array_st: [{ ...primInst2, ...primArrInst2 }, { ...primInst1, ...primArrInst1 }],
538
537
  });
539
538
  // update element
540
- imodel.elements.updateElement(actualValue);
541
- imodel.saveChanges();
539
+ withEditTxn(imodel, (txn) => txn.updateElement(actualValue));
542
540
  // verify updated values
543
541
  const updatedValue = imodel.elements.getElementProps(id);
544
542
  verifyTestElement(updatedValue, actualValue);
@@ -623,12 +621,12 @@ describe("Element and ElementAspect roundtrip test for all type of properties",
623
621
  const testFileName = IModelTestUtils.prepareOutputFile(subDirName, "roundtrip_apsect_correct_data.bim");
624
622
  const imodel = IModelTestUtils.createSnapshotFromSeed(testFileName, iModelPath);
625
623
  const spatialCategoryId = SpatialCategory.queryCategoryIdByName(imodel, IModel.dictionaryId, categoryName);
626
- const [, newModelId] = IModelTestUtils.createAndInsertPhysicalPartitionAndModel(imodel, Code.createEmpty(), true);
624
+ const [, newModelId] = withEditTxn(imodel, (txn) => IModelTestUtils.createAndInsertPhysicalPartitionAndModel(txn, Code.createEmpty(), true));
627
625
  // Create an element to use with the ElementAspects
628
626
  const expectedValue = initElemProps("TestElement", imodel, newModelId, spatialCategoryId, {});
629
627
  // Insert an element
630
628
  const geomElement = imodel.elements.createElement(expectedValue);
631
- const elId = imodel.elements.insertElement(geomElement.toJSON());
629
+ const elId = withEditTxn(imodel, (txn) => txn.insertElement(geomElement.toJSON()));
632
630
  assert.isTrue(Id64.isValidId64(elId), "Element insertion succeeded");
633
631
  const expectedAspectValue = initElementAspectProps("TestElementAspect", imodel, elId, {
634
632
  ...primInst1,
@@ -637,8 +635,9 @@ describe("Element and ElementAspect roundtrip test for all type of properties",
637
635
  array_st: [{ ...primInst1, ...primArrInst2 }, { ...primInst2, ...primArrInst1 }],
638
636
  });
639
637
  // Insert an element aspect
640
- const elementAspectId = imodel.elements.insertAspect(expectedAspectValue);
641
- imodel.saveChanges();
638
+ const elementAspectId = withEditTxn(imodel, (txn) => {
639
+ return txn.insertAspect(expectedAspectValue);
640
+ });
642
641
  // Verify inserted element aspect properties
643
642
  const actualAspectValue = await verifyElementAspect(elementAspectId, expectedAspectValue, elId, expectedAspectValue.classFullName, imodel);
644
643
  // Update the element's autohandled properties
@@ -649,8 +648,9 @@ describe("Element and ElementAspect roundtrip test for all type of properties",
649
648
  array_st: [{ ...primInst2, ...primArrInst2 }, { ...primInst1, ...primArrInst1 }],
650
649
  });
651
650
  // Update the element
652
- imodel.elements.updateAspect(actualAspectValue[0]);
653
- imodel.saveChanges();
651
+ withEditTxn(imodel, (txn) => {
652
+ txn.updateAspect(actualAspectValue[0]);
653
+ });
654
654
  // Verify updated element aspect properties
655
655
  await verifyElementAspect(elementAspectId, actualAspectValue[0], elId, expectedAspectValue.classFullName, imodel);
656
656
  imodel.close();
@@ -665,15 +665,15 @@ describe("Element and ElementAspect roundtrip test for all type of properties",
665
665
  const testFileName = IModelTestUtils.prepareOutputFile(subDirName, "roundtrip_relationships_correct_data.bim");
666
666
  const imodel = IModelTestUtils.createSnapshotFromSeed(testFileName, iModelPath);
667
667
  const spatialCategoryId = SpatialCategory.queryCategoryIdByName(imodel, IModel.dictionaryId, categoryName);
668
- const [, newModelId] = IModelTestUtils.createAndInsertPhysicalPartitionAndModel(imodel, Code.createEmpty(), true);
668
+ const [, newModelId] = withEditTxn(imodel, (txn) => IModelTestUtils.createAndInsertPhysicalPartitionAndModel(txn, Code.createEmpty(), true));
669
669
  // create elements to use
670
670
  const element1 = initElemProps("TestElement", imodel, newModelId, spatialCategoryId, {});
671
671
  const element2 = initElemProps("TestElement", imodel, newModelId, spatialCategoryId, {});
672
672
  const geomElement1 = imodel.elements.createElement(element1);
673
- const elId1 = imodel.elements.insertElement(geomElement1.toJSON());
673
+ const elId1 = withEditTxn(imodel, (txn) => txn.insertElement(geomElement1.toJSON()));
674
674
  assert.isTrue(Id64.isValidId64(elId1), "insert of element 1 worked");
675
675
  const geomElement2 = imodel.elements.createElement(element2);
676
- const elId2 = imodel.elements.insertElement(geomElement2.toJSON());
676
+ const elId2 = withEditTxn(imodel, (txn) => txn.insertElement(geomElement2.toJSON()));
677
677
  assert.isTrue(Id64.isValidId64(elId2), "insert of element 2 worked");
678
678
  // TODO: Skipping structs here, because of a bug that prevents querying from link tables that have an overflow table, by skipping the struct we reduce the amount of used columns
679
679
  const expectedRelationshipValue = initElementRefersToElementsProps("TestElementRefersToElements", imodel, elId1, elId2, {
@@ -683,8 +683,7 @@ describe("Element and ElementAspect roundtrip test for all type of properties",
683
683
  array_st: [{ ...primInst1, ...primArrInst2 }, { ...primInst2, ...primArrInst1 }], */
684
684
  });
685
685
  const instance = expectedRelationshipValue; // imodel.relationships.createInstance(expectedRelationshipValue);
686
- const relationshipId = imodel.relationships.insertInstance(instance); // initElementRefersToElementsProps lies about return type.
687
- imodel.saveChanges();
686
+ const relationshipId = withEditTxn(imodel, (txn) => txn.insertRelationship(instance)); // initElementRefersToElementsProps lies about return type.
688
687
  // verify inserted properties
689
688
  const actualRelationshipValue = imodel.relationships.getInstance(expectedRelationshipValue.classFullName, relationshipId);
690
689
  assert.exists(actualRelationshipValue);
@@ -741,8 +740,7 @@ describe("Element and ElementAspect roundtrip test for all type of properties",
741
740
  array_st: [{ ...primInst2, ...primArrInst2 }, { ...primInst1, ...primArrInst1 }],*/
742
741
  });
743
742
  // update
744
- imodel.relationships.updateInstance(updatedExpectedValue.toJSON());
745
- imodel.saveChanges();
743
+ withEditTxn(imodel, (txn) => txn.updateRelationship(updatedExpectedValue.toJSON()));
746
744
  // verify updated values
747
745
  const updatedValue = imodel.relationships.getInstance(expectedRelationshipValue.classFullName, relationshipId);
748
746
  verifyTestElementRefersToElements(updatedValue, updatedExpectedValue);
@@ -799,18 +797,21 @@ describe("Element and ElementAspect roundtrip test for all type of properties",
799
797
  expectedPlacementOverrides = {}, } = {}) => {
800
798
  const imodelPath = IModelTestUtils.prepareOutputFile(subDirName, `roundtrip_placement-${name}.bim`);
801
799
  let imodel = IModelTestUtils.createSnapshotFromSeed(imodelPath, iModelPath);
802
- const modelId = PhysicalModel.insert(imodel, IModelDb.rootSubjectId, "model");
803
- const categoryId = SpatialCategory.insert(imodel, IModelDb.dictionaryId, "model", {});
804
- const expectedPlacement = { ...placement, ...expectedPlacementOverrides };
805
- const objId = imodel.elements.insertElement({
806
- classFullName: PhysicalObject.classFullName,
807
- code: Code.createEmpty(),
808
- model: modelId,
809
- placement,
810
- category: categoryId,
811
- ...extraProps,
800
+ const { objId } = withEditTxn(imodel, (txn) => {
801
+ const modelId = PhysicalModel.insert(txn, IModelDb.rootSubjectId, "model");
802
+ const categoryId = SpatialCategory.insert(txn, IModelDb.dictionaryId, "model", {});
803
+ return {
804
+ objId: txn.insertElement({
805
+ classFullName: PhysicalObject.classFullName,
806
+ code: Code.createEmpty(),
807
+ model: modelId,
808
+ placement,
809
+ category: categoryId,
810
+ ...extraProps,
811
+ }),
812
+ };
812
813
  });
813
- imodel.saveChanges();
814
+ const expectedPlacement = { ...placement, ...expectedPlacementOverrides };
814
815
  const inMemoryCopy = imodel.elements.getElement({ id: objId, wantGeometry: true }, PhysicalObject);
815
816
  expect(inMemoryCopy.placement).to.deep.advancedEqual(expectedPlacement);
816
817
  // reload db since there is a different path for loading properties not in memory that we want to force
@@ -871,7 +872,7 @@ describe("Element and ElementAspect roundtrip test for all type of properties",
871
872
  const testFileName = IModelTestUtils.prepareOutputFile(subDirName, "roundtrip_properties_null_update.bim");
872
873
  const imodel = IModelTestUtils.createSnapshotFromSeed(testFileName, iModelPath);
873
874
  const spatialCategoryId = SpatialCategory.queryCategoryIdByName(imodel, IModel.dictionaryId, categoryName);
874
- const [, newModelId] = IModelTestUtils.createAndInsertPhysicalPartitionAndModel(imodel, Code.createEmpty(), true);
875
+ const [, newModelId] = withEditTxn(imodel, (txn) => IModelTestUtils.createAndInsertPhysicalPartitionAndModel(txn, Code.createEmpty(), true));
875
876
  // Create an element to be used
876
877
  const expectedValue = initElemProps("TestElement", imodel, newModelId, spatialCategoryId, {
877
878
  ...primInst1,
@@ -881,9 +882,8 @@ describe("Element and ElementAspect roundtrip test for all type of properties",
881
882
  });
882
883
  // Insert an element
883
884
  const geomElement = imodel.elements.createElement(expectedValue);
884
- const id = imodel.elements.insertElement(geomElement.toJSON());
885
+ const id = withEditTxn(imodel, (txn) => txn.insertElement(geomElement.toJSON()));
885
886
  assert.isTrue(Id64.isValidId64(id), "insert worked");
886
- imodel.saveChanges();
887
887
  // Verify inserted element properties
888
888
  const actualValue = imodel.elements.getElementProps(id);
889
889
  verifyTestElement(actualValue, expectedValue);
@@ -914,8 +914,7 @@ describe("Element and ElementAspect roundtrip test for all type of properties",
914
914
  array_st: null,
915
915
  });
916
916
  // Update the element
917
- imodel.elements.updateElement(actualValue);
918
- imodel.saveChanges();
917
+ withEditTxn(imodel, (txn) => txn.updateElement(actualValue));
919
918
  // Verify updated value properties
920
919
  const updatedValue = imodel.elements.getElementProps(id);
921
920
  verifyTestElement(updatedValue, actualValue);