@itwin/core-backend 5.3.0-dev.6 → 5.3.0-dev.8

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 (394) hide show
  1. package/CHANGELOG.md +16 -1
  2. package/lib/cjs/BackendHubAccess.js.map +1 -1
  3. package/lib/cjs/BackendLoggerCategory.js.map +1 -1
  4. package/lib/cjs/BisCoreSchema.js.map +1 -1
  5. package/lib/cjs/BlobContainerService.js.map +1 -1
  6. package/lib/cjs/BriefcaseManager.d.ts +2 -2
  7. package/lib/cjs/BriefcaseManager.js.map +1 -1
  8. package/lib/cjs/CatalogDb.js.map +1 -1
  9. package/lib/cjs/Category.js.map +1 -1
  10. package/lib/cjs/ChangeSummaryManager.js +2 -2
  11. package/lib/cjs/ChangeSummaryManager.js.map +1 -1
  12. package/lib/cjs/ChangedElementsDb.js.map +1 -1
  13. package/lib/cjs/ChangesetECAdaptor.js +248 -248
  14. package/lib/cjs/ChangesetECAdaptor.js.map +1 -1
  15. package/lib/cjs/ChannelControl.js.map +1 -1
  16. package/lib/cjs/CheckpointManager.js.map +1 -1
  17. package/lib/cjs/ClassRegistry.js +5 -5
  18. package/lib/cjs/ClassRegistry.js.map +1 -1
  19. package/lib/cjs/CloudSqlite.js.map +1 -1
  20. package/lib/cjs/CodeService.js.map +1 -1
  21. package/lib/cjs/CodeSpecs.js.map +1 -1
  22. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  23. package/lib/cjs/CustomViewState3dCreator.js.map +1 -1
  24. package/lib/cjs/DevTools.js.map +1 -1
  25. package/lib/cjs/DisplayStyle.js.map +1 -1
  26. package/lib/cjs/ECDb.js.map +1 -1
  27. package/lib/cjs/ECSchemaXmlContext.js.map +1 -1
  28. package/lib/cjs/ECSqlStatement.js.map +1 -1
  29. package/lib/cjs/Element.js.map +1 -1
  30. package/lib/cjs/ElementAspect.js.map +1 -1
  31. package/lib/cjs/ElementGraphics.js.map +1 -1
  32. package/lib/cjs/ElementTreeWalker.js.map +1 -1
  33. package/lib/cjs/Entity.js.map +1 -1
  34. package/lib/cjs/EntityReferences.js.map +1 -1
  35. package/lib/cjs/ExportGraphics.js.map +1 -1
  36. package/lib/cjs/ExternalSource.js.map +1 -1
  37. package/lib/cjs/FontFile.js.map +1 -1
  38. package/lib/cjs/GeoCoordConfig.js.map +1 -1
  39. package/lib/cjs/GeographicCRSServices.js.map +1 -1
  40. package/lib/cjs/GeometrySummary.js +47 -47
  41. package/lib/cjs/GeometrySummary.js.map +1 -1
  42. package/lib/cjs/IModelDb.js +8 -8
  43. package/lib/cjs/IModelDb.js.map +1 -1
  44. package/lib/cjs/IModelDbFonts.js.map +1 -1
  45. package/lib/cjs/IModelElementCloneContext.js.map +1 -1
  46. package/lib/cjs/IModelHost.js.map +1 -1
  47. package/lib/cjs/IModelIncrementalSchemaLocater.js.map +1 -1
  48. package/lib/cjs/IModelJsFs.js.map +1 -1
  49. package/lib/cjs/ImageSourceConversion.js.map +1 -1
  50. package/lib/cjs/IpcHost.js.map +1 -1
  51. package/lib/cjs/LineStyle.js.map +1 -1
  52. package/lib/cjs/LocalHub.js +1 -1
  53. package/lib/cjs/LocalHub.js.map +1 -1
  54. package/lib/cjs/LocalhostIpcHost.js.map +1 -1
  55. package/lib/cjs/LockControl.js.map +1 -1
  56. package/lib/cjs/Material.js.map +1 -1
  57. package/lib/cjs/Model.js.map +1 -1
  58. package/lib/cjs/NativeAppStorage.js.map +1 -1
  59. package/lib/cjs/NativeHost.js.map +1 -1
  60. package/lib/cjs/NavigationRelationship.js.map +1 -1
  61. package/lib/cjs/PromiseMemoizer.js.map +1 -1
  62. package/lib/cjs/PropertyStore.js.map +1 -1
  63. package/lib/cjs/Relationship.js.map +1 -1
  64. package/lib/cjs/RpcBackend.js.map +1 -1
  65. package/lib/cjs/SQLiteDb.js.map +1 -1
  66. package/lib/cjs/Schema.js.map +1 -1
  67. package/lib/cjs/SchemaSync.js.map +1 -1
  68. package/lib/cjs/SchemaUtils.js.map +1 -1
  69. package/lib/cjs/SheetIndex.js.map +1 -1
  70. package/lib/cjs/SqliteChangesetReader.js.map +1 -1
  71. package/lib/cjs/SqliteStatement.js.map +1 -1
  72. package/lib/cjs/StashManager.js.map +1 -1
  73. package/lib/cjs/Texture.js.map +1 -1
  74. package/lib/cjs/TileStorage.js.map +1 -1
  75. package/lib/cjs/TxnManager.js.map +1 -1
  76. package/lib/cjs/ViewDefinition.js.map +1 -1
  77. package/lib/cjs/ViewStateHydrator.js.map +1 -1
  78. package/lib/cjs/ViewStore.js.map +1 -1
  79. package/lib/cjs/annotations/ElementDrivesTextAnnotation.d.ts +7 -1
  80. package/lib/cjs/annotations/ElementDrivesTextAnnotation.d.ts.map +1 -1
  81. package/lib/cjs/annotations/ElementDrivesTextAnnotation.js +25 -0
  82. package/lib/cjs/annotations/ElementDrivesTextAnnotation.js.map +1 -1
  83. package/lib/cjs/annotations/FrameGeometry.js.map +1 -1
  84. package/lib/cjs/annotations/LeaderGeometry.js.map +1 -1
  85. package/lib/cjs/annotations/TextAnnotationElement.d.ts +20 -1
  86. package/lib/cjs/annotations/TextAnnotationElement.d.ts.map +1 -1
  87. package/lib/cjs/annotations/TextAnnotationElement.js +84 -2
  88. package/lib/cjs/annotations/TextAnnotationElement.js.map +1 -1
  89. package/lib/cjs/annotations/TextAnnotationGeometry.js.map +1 -1
  90. package/lib/cjs/annotations/TextBlockGeometry.js.map +1 -1
  91. package/lib/cjs/annotations/TextBlockLayout.js.map +1 -1
  92. package/lib/cjs/assets/IModelChange.02.00.00.ecschema.xml +90 -90
  93. package/lib/cjs/assets/Settings/Schemas/Base.Schema.json +32 -32
  94. package/lib/cjs/assets/Settings/Schemas/Gcs.schema.json +27 -27
  95. package/lib/cjs/assets/Settings/Schemas/Workspace.Schema.json +94 -94
  96. package/lib/cjs/assets/Settings/backend.setting.json5 +21 -21
  97. package/lib/cjs/core-backend.js.map +1 -1
  98. package/lib/cjs/domains/FunctionalElements.js.map +1 -1
  99. package/lib/cjs/domains/FunctionalSchema.js.map +1 -1
  100. package/lib/cjs/domains/GenericElements.js.map +1 -1
  101. package/lib/cjs/domains/GenericSchema.js.map +1 -1
  102. package/lib/cjs/internal/ChangesetConflictArgs.js.map +1 -1
  103. package/lib/cjs/internal/ChannelAdmin.js.map +1 -1
  104. package/lib/cjs/internal/ElementLRUCache.js.map +1 -1
  105. package/lib/cjs/internal/FontFileImpl.js.map +1 -1
  106. package/lib/cjs/internal/HubMock.js.map +1 -1
  107. package/lib/cjs/internal/IModelDbFontsImpl.js.map +1 -1
  108. package/lib/cjs/internal/NativePlatform.js.map +1 -1
  109. package/lib/cjs/internal/NoLocks.js.map +1 -1
  110. package/lib/cjs/internal/ServerBasedLocks.js.map +1 -1
  111. package/lib/cjs/internal/Symbols.js.map +1 -1
  112. package/lib/cjs/internal/annotations/fields.d.ts.map +1 -1
  113. package/lib/cjs/internal/annotations/fields.js +1 -0
  114. package/lib/cjs/internal/annotations/fields.js.map +1 -1
  115. package/lib/cjs/internal/cross-package.js.map +1 -1
  116. package/lib/cjs/internal/workspace/SettingsImpl.js.map +1 -1
  117. package/lib/cjs/internal/workspace/SettingsSchemasImpl.js.map +1 -1
  118. package/lib/cjs/internal/workspace/WorkspaceImpl.js.map +1 -1
  119. package/lib/cjs/internal/workspace/WorkspaceSqliteDb.js.map +1 -1
  120. package/lib/cjs/rpc/multipart.js.map +1 -1
  121. package/lib/cjs/rpc/tracing.js.map +1 -1
  122. package/lib/cjs/rpc/web/logging.js.map +1 -1
  123. package/lib/cjs/rpc/web/request.js.map +1 -1
  124. package/lib/cjs/rpc/web/response.js.map +1 -1
  125. package/lib/cjs/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  126. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  127. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  128. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  129. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  130. package/lib/cjs/workspace/Settings.js.map +1 -1
  131. package/lib/cjs/workspace/SettingsSchemas.js.map +1 -1
  132. package/lib/cjs/workspace/Workspace.js.map +1 -1
  133. package/lib/cjs/workspace/WorkspaceEditor.js.map +1 -1
  134. package/lib/esm/BackendHubAccess.js.map +1 -1
  135. package/lib/esm/BackendLoggerCategory.js.map +1 -1
  136. package/lib/esm/BisCoreSchema.js.map +1 -1
  137. package/lib/esm/BlobContainerService.js.map +1 -1
  138. package/lib/esm/BriefcaseManager.d.ts +2 -2
  139. package/lib/esm/BriefcaseManager.js.map +1 -1
  140. package/lib/esm/CatalogDb.js.map +1 -1
  141. package/lib/esm/Category.js.map +1 -1
  142. package/lib/esm/ChangeSummaryManager.js +2 -2
  143. package/lib/esm/ChangeSummaryManager.js.map +1 -1
  144. package/lib/esm/ChangedElementsDb.js.map +1 -1
  145. package/lib/esm/ChangesetECAdaptor.js +248 -248
  146. package/lib/esm/ChangesetECAdaptor.js.map +1 -1
  147. package/lib/esm/ChannelControl.js.map +1 -1
  148. package/lib/esm/CheckpointManager.js.map +1 -1
  149. package/lib/esm/ClassRegistry.js +5 -5
  150. package/lib/esm/ClassRegistry.js.map +1 -1
  151. package/lib/esm/CloudSqlite.js.map +1 -1
  152. package/lib/esm/CodeService.js.map +1 -1
  153. package/lib/esm/CodeSpecs.js.map +1 -1
  154. package/lib/esm/ConcurrentQuery.js.map +1 -1
  155. package/lib/esm/CustomViewState3dCreator.js.map +1 -1
  156. package/lib/esm/DevTools.js.map +1 -1
  157. package/lib/esm/DisplayStyle.js.map +1 -1
  158. package/lib/esm/ECDb.js.map +1 -1
  159. package/lib/esm/ECSchemaXmlContext.js.map +1 -1
  160. package/lib/esm/ECSqlStatement.js.map +1 -1
  161. package/lib/esm/Element.js.map +1 -1
  162. package/lib/esm/ElementAspect.js.map +1 -1
  163. package/lib/esm/ElementGraphics.js.map +1 -1
  164. package/lib/esm/ElementTreeWalker.js.map +1 -1
  165. package/lib/esm/Entity.js.map +1 -1
  166. package/lib/esm/EntityReferences.js.map +1 -1
  167. package/lib/esm/ExportGraphics.js.map +1 -1
  168. package/lib/esm/ExternalSource.js.map +1 -1
  169. package/lib/esm/FontFile.js.map +1 -1
  170. package/lib/esm/GeoCoordConfig.js.map +1 -1
  171. package/lib/esm/GeographicCRSServices.js.map +1 -1
  172. package/lib/esm/GeometrySummary.js +47 -47
  173. package/lib/esm/GeometrySummary.js.map +1 -1
  174. package/lib/esm/IModelDb.js +8 -8
  175. package/lib/esm/IModelDb.js.map +1 -1
  176. package/lib/esm/IModelDbFonts.js.map +1 -1
  177. package/lib/esm/IModelElementCloneContext.js.map +1 -1
  178. package/lib/esm/IModelHost.js.map +1 -1
  179. package/lib/esm/IModelIncrementalSchemaLocater.js.map +1 -1
  180. package/lib/esm/IModelJsFs.js.map +1 -1
  181. package/lib/esm/ImageSourceConversion.js.map +1 -1
  182. package/lib/esm/IpcHost.js.map +1 -1
  183. package/lib/esm/LineStyle.js.map +1 -1
  184. package/lib/esm/LocalHub.js +1 -1
  185. package/lib/esm/LocalHub.js.map +1 -1
  186. package/lib/esm/LocalhostIpcHost.js.map +1 -1
  187. package/lib/esm/LockControl.js.map +1 -1
  188. package/lib/esm/Material.js.map +1 -1
  189. package/lib/esm/Model.js.map +1 -1
  190. package/lib/esm/NativeAppStorage.js.map +1 -1
  191. package/lib/esm/NativeHost.js.map +1 -1
  192. package/lib/esm/NavigationRelationship.js.map +1 -1
  193. package/lib/esm/PromiseMemoizer.js.map +1 -1
  194. package/lib/esm/PropertyStore.js.map +1 -1
  195. package/lib/esm/Relationship.js.map +1 -1
  196. package/lib/esm/RpcBackend.js.map +1 -1
  197. package/lib/esm/SQLiteDb.js.map +1 -1
  198. package/lib/esm/Schema.js.map +1 -1
  199. package/lib/esm/SchemaSync.js.map +1 -1
  200. package/lib/esm/SchemaUtils.js.map +1 -1
  201. package/lib/esm/SheetIndex.js.map +1 -1
  202. package/lib/esm/SqliteChangesetReader.js.map +1 -1
  203. package/lib/esm/SqliteStatement.js.map +1 -1
  204. package/lib/esm/StashManager.js.map +1 -1
  205. package/lib/esm/Texture.js.map +1 -1
  206. package/lib/esm/TileStorage.js.map +1 -1
  207. package/lib/esm/TxnManager.js.map +1 -1
  208. package/lib/esm/ViewDefinition.js.map +1 -1
  209. package/lib/esm/ViewStateHydrator.js.map +1 -1
  210. package/lib/esm/ViewStore.js.map +1 -1
  211. package/lib/esm/annotations/ElementDrivesTextAnnotation.d.ts +7 -1
  212. package/lib/esm/annotations/ElementDrivesTextAnnotation.d.ts.map +1 -1
  213. package/lib/esm/annotations/ElementDrivesTextAnnotation.js +25 -0
  214. package/lib/esm/annotations/ElementDrivesTextAnnotation.js.map +1 -1
  215. package/lib/esm/annotations/FrameGeometry.js.map +1 -1
  216. package/lib/esm/annotations/LeaderGeometry.js.map +1 -1
  217. package/lib/esm/annotations/TextAnnotationElement.d.ts +20 -1
  218. package/lib/esm/annotations/TextAnnotationElement.d.ts.map +1 -1
  219. package/lib/esm/annotations/TextAnnotationElement.js +86 -5
  220. package/lib/esm/annotations/TextAnnotationElement.js.map +1 -1
  221. package/lib/esm/annotations/TextAnnotationGeometry.js.map +1 -1
  222. package/lib/esm/annotations/TextBlockGeometry.js.map +1 -1
  223. package/lib/esm/annotations/TextBlockLayout.js.map +1 -1
  224. package/lib/esm/core-backend.js.map +1 -1
  225. package/lib/esm/domains/FunctionalElements.js.map +1 -1
  226. package/lib/esm/domains/FunctionalSchema.js.map +1 -1
  227. package/lib/esm/domains/GenericElements.js.map +1 -1
  228. package/lib/esm/domains/GenericSchema.js.map +1 -1
  229. package/lib/esm/internal/ChangesetConflictArgs.js.map +1 -1
  230. package/lib/esm/internal/ChannelAdmin.js.map +1 -1
  231. package/lib/esm/internal/ElementLRUCache.js.map +1 -1
  232. package/lib/esm/internal/FontFileImpl.js.map +1 -1
  233. package/lib/esm/internal/HubMock.js.map +1 -1
  234. package/lib/esm/internal/IModelDbFontsImpl.js.map +1 -1
  235. package/lib/esm/internal/NativePlatform.js.map +1 -1
  236. package/lib/esm/internal/NoLocks.js.map +1 -1
  237. package/lib/esm/internal/ServerBasedLocks.js.map +1 -1
  238. package/lib/esm/internal/Symbols.js.map +1 -1
  239. package/lib/esm/internal/annotations/fields.d.ts.map +1 -1
  240. package/lib/esm/internal/annotations/fields.js +1 -0
  241. package/lib/esm/internal/annotations/fields.js.map +1 -1
  242. package/lib/esm/internal/cross-package.js.map +1 -1
  243. package/lib/esm/internal/workspace/SettingsImpl.js.map +1 -1
  244. package/lib/esm/internal/workspace/SettingsSchemasImpl.js.map +1 -1
  245. package/lib/esm/internal/workspace/WorkspaceImpl.js.map +1 -1
  246. package/lib/esm/internal/workspace/WorkspaceSqliteDb.js.map +1 -1
  247. package/lib/esm/rpc/multipart.js.map +1 -1
  248. package/lib/esm/rpc/tracing.js.map +1 -1
  249. package/lib/esm/rpc/web/logging.js.map +1 -1
  250. package/lib/esm/rpc/web/request.js.map +1 -1
  251. package/lib/esm/rpc/web/response.js.map +1 -1
  252. package/lib/esm/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  253. package/lib/esm/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  254. package/lib/esm/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  255. package/lib/esm/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  256. package/lib/esm/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  257. package/lib/esm/test/AdvancedEqual.js.map +1 -1
  258. package/lib/esm/test/AnnotationTestUtils.js.map +1 -1
  259. package/lib/esm/test/AttachDb.test.js +11 -11
  260. package/lib/esm/test/AttachDb.test.js.map +1 -1
  261. package/lib/esm/test/ElementLRUCache.test.js.map +1 -1
  262. package/lib/esm/test/GeometryTestUtil.js.map +1 -1
  263. package/lib/esm/test/IModelHost.test.js.map +1 -1
  264. package/lib/esm/test/IModelTestUtils.js.map +1 -1
  265. package/lib/esm/test/ImageSourceConversion.test.js.map +1 -1
  266. package/lib/esm/test/IpcHost.test.js.map +1 -1
  267. package/lib/esm/test/KnownTestLocations.js.map +1 -1
  268. package/lib/esm/test/PrintElementTree.js.map +1 -1
  269. package/lib/esm/test/PropertyDb.test.js.map +1 -1
  270. package/lib/esm/test/RevisionUtility.js.map +1 -1
  271. package/lib/esm/test/SchemaUtils.test.js +25 -25
  272. package/lib/esm/test/SchemaUtils.test.js.map +1 -1
  273. package/lib/esm/test/SequentialLogMatcher.js.map +1 -1
  274. package/lib/esm/test/TestChangeSetUtility.js.map +1 -1
  275. package/lib/esm/test/TestUtils.js.map +1 -1
  276. package/lib/esm/test/annotations/Fields.test.js +183 -88
  277. package/lib/esm/test/annotations/Fields.test.js.map +1 -1
  278. package/lib/esm/test/annotations/FrameGeometry.test.js.map +1 -1
  279. package/lib/esm/test/annotations/LeaderGeometry.test.js.map +1 -1
  280. package/lib/esm/test/annotations/TextAnnotation.test.js +227 -2
  281. package/lib/esm/test/annotations/TextAnnotation.test.js.map +1 -1
  282. package/lib/esm/test/annotations/TextBlock.test.js.map +1 -1
  283. package/lib/esm/test/assets/IncrementalSchemaLocater/configs/old.config.js.map +1 -1
  284. package/lib/esm/test/assets/IncrementalSchemaLocater/configs/simple.config.js.map +1 -1
  285. package/lib/esm/test/categories/Category.test.js.map +1 -1
  286. package/lib/esm/test/codespec/CodeSpec.test.js.map +1 -1
  287. package/lib/esm/test/ecdb/CTE.test.js +88 -88
  288. package/lib/esm/test/ecdb/CTE.test.js.map +1 -1
  289. package/lib/esm/test/ecdb/ConcurrentQuery.test.js +15 -15
  290. package/lib/esm/test/ecdb/ConcurrentQuery.test.js.map +1 -1
  291. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.js +15 -15
  292. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.js.map +1 -1
  293. package/lib/esm/test/ecdb/ECDb.test.js +72 -72
  294. package/lib/esm/test/ecdb/ECDb.test.js.map +1 -1
  295. package/lib/esm/test/ecdb/ECDbTestHelper.js.map +1 -1
  296. package/lib/esm/test/ecdb/ECSchemaXmlContext.test.js.map +1 -1
  297. package/lib/esm/test/ecdb/ECSqlAst.test.js +65 -65
  298. package/lib/esm/test/ecdb/ECSqlAst.test.js.map +1 -1
  299. package/lib/esm/test/ecdb/ECSqlQuery.test.js.map +1 -1
  300. package/lib/esm/test/ecdb/ECSqlReader.test.js +16 -16
  301. package/lib/esm/test/ecdb/ECSqlReader.test.js.map +1 -1
  302. package/lib/esm/test/ecdb/ECSqlStatement.test.js +326 -326
  303. package/lib/esm/test/ecdb/ECSqlStatement.test.js.map +1 -1
  304. package/lib/esm/test/ecdb/SqliteStatement.test.js.map +1 -1
  305. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.js.map +1 -1
  306. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.js +21 -21
  307. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.js.map +1 -1
  308. package/lib/esm/test/ecsql/src/ECSqlTestParser.js.map +1 -1
  309. package/lib/esm/test/ecsql/src/ECSqlTestRunner.test.js.map +1 -1
  310. package/lib/esm/test/element/DeleteDefinitionElements.test.js.map +1 -1
  311. package/lib/esm/test/element/ElementAspect.test.js +22 -22
  312. package/lib/esm/test/element/ElementAspect.test.js.map +1 -1
  313. package/lib/esm/test/element/ElementDependencyGraph.test.js.map +1 -1
  314. package/lib/esm/test/element/ElementRoundTrip.test.js +139 -139
  315. package/lib/esm/test/element/ElementRoundTrip.test.js.map +1 -1
  316. package/lib/esm/test/element/ExcludedElements.test.js.map +1 -1
  317. package/lib/esm/test/element/ExternalSource.test.js.map +1 -1
  318. package/lib/esm/test/element/NullStructArray.test.js +13 -13
  319. package/lib/esm/test/element/NullStructArray.test.js.map +1 -1
  320. package/lib/esm/test/element/UrlLink.test.js.map +1 -1
  321. package/lib/esm/test/font/FontFile.test.js.map +1 -1
  322. package/lib/esm/test/font/IModelDbFonts.test.js.map +1 -1
  323. package/lib/esm/test/hubaccess/ApplyChangeset.test.js +32 -32
  324. package/lib/esm/test/hubaccess/ApplyChangeset.test.js.map +1 -1
  325. package/lib/esm/test/hubaccess/BriefcaseManager.test.js.map +1 -1
  326. package/lib/esm/test/hubaccess/CheckpointManager.test.js.map +1 -1
  327. package/lib/esm/test/hubaccess/Rebase.test.js +33 -33
  328. package/lib/esm/test/hubaccess/Rebase.test.js.map +1 -1
  329. package/lib/esm/test/imageData.js.map +1 -1
  330. package/lib/esm/test/imodel/ElementTreeWalker.test.js.map +1 -1
  331. package/lib/esm/test/imodel/GetTextureImage.test.js.map +1 -1
  332. package/lib/esm/test/imodel/IModel.test.js +44 -44
  333. package/lib/esm/test/imodel/IModel.test.js.map +1 -1
  334. package/lib/esm/test/imodel/ProjectExtents.test.js.map +1 -1
  335. package/lib/esm/test/imodel/SchemaXmlImport.test.js.map +1 -1
  336. package/lib/esm/test/incrementalSchemaLocater/ECSqlQueries.test.js.map +1 -1
  337. package/lib/esm/test/incrementalSchemaLocater/IncrementalLoading.test.js.map +1 -1
  338. package/lib/esm/test/incrementalSchemaLocater/utils/IModelSchemaLocater.js.map +1 -1
  339. package/lib/esm/test/incrementalSchemaLocater/utils/IncrementalTestHelper.js.map +1 -1
  340. package/lib/esm/test/incrementalSchemaLocater/utils/TestSqlSchemaLocater.js.map +1 -1
  341. package/lib/esm/test/index.js.map +1 -1
  342. package/lib/esm/test/misc/DevTools.test.js.map +1 -1
  343. package/lib/esm/test/misc/EntitySubClasses.test.js.map +1 -1
  344. package/lib/esm/test/misc/GeoServices.test.js.map +1 -1
  345. package/lib/esm/test/misc/PromiseMemoizer.test.js.map +1 -1
  346. package/lib/esm/test/native/DgnDbWorker.test.js.map +1 -1
  347. package/lib/esm/test/rpc/response.test.js.map +1 -1
  348. package/lib/esm/test/schema/ClassRegistry.test.js +99 -99
  349. package/lib/esm/test/schema/ClassRegistry.test.js.map +1 -1
  350. package/lib/esm/test/schema/FunctionalDomain.test.js.map +1 -1
  351. package/lib/esm/test/schema/GenericDomain.test.js.map +1 -1
  352. package/lib/esm/test/schema/IModelSchemaContext.test.js.map +1 -1
  353. package/lib/esm/test/sheetindex/SheetIndex.test.js.map +1 -1
  354. package/lib/esm/test/standalone/ChangeMerge.test.js.map +1 -1
  355. package/lib/esm/test/standalone/ChangesetReader.test.js +124 -124
  356. package/lib/esm/test/standalone/ChangesetReader.test.js.map +1 -1
  357. package/lib/esm/test/standalone/CustomViewState3dCreator.test.js.map +1 -1
  358. package/lib/esm/test/standalone/DisplayStyle.test.js.map +1 -1
  359. package/lib/esm/test/standalone/Drawing.test.js.map +1 -1
  360. package/lib/esm/test/standalone/ElementGraphics.test.js.map +1 -1
  361. package/lib/esm/test/standalone/ElementMesh.test.js.map +1 -1
  362. package/lib/esm/test/standalone/ExportGraphics.test.js +14 -14
  363. package/lib/esm/test/standalone/ExportGraphics.test.js.map +1 -1
  364. package/lib/esm/test/standalone/GeometryChangeEvents.test.js.map +1 -1
  365. package/lib/esm/test/standalone/GeometryStream.test.js.map +1 -1
  366. package/lib/esm/test/standalone/HubMock.test.js.map +1 -1
  367. package/lib/esm/test/standalone/IModelLimits.test.js.map +1 -1
  368. package/lib/esm/test/standalone/IModelWrite.test.js +27 -27
  369. package/lib/esm/test/standalone/IModelWrite.test.js.map +1 -1
  370. package/lib/esm/test/standalone/InlineGeometryPartReferences.test.js.map +1 -1
  371. package/lib/esm/test/standalone/MergeConflict.test.js.map +1 -1
  372. package/lib/esm/test/standalone/NativeAppStorage.test.js.map +1 -1
  373. package/lib/esm/test/standalone/RenderMaterialElement.test.js.map +1 -1
  374. package/lib/esm/test/standalone/RenderTimeline.test.js.map +1 -1
  375. package/lib/esm/test/standalone/SQLiteDb.test.js.map +1 -1
  376. package/lib/esm/test/standalone/SchemaUtils.test.js.map +1 -1
  377. package/lib/esm/test/standalone/SectionDrawing.test.js.map +1 -1
  378. package/lib/esm/test/standalone/ServerBasedLocks.test.js.map +1 -1
  379. package/lib/esm/test/standalone/Setting.test.js.map +1 -1
  380. package/lib/esm/test/standalone/Settings.test.js.map +1 -1
  381. package/lib/esm/test/standalone/SettingsSchemas.test.js.map +1 -1
  382. package/lib/esm/test/standalone/SnapshotDb.test.js.map +1 -1
  383. package/lib/esm/test/standalone/Texture.test.js.map +1 -1
  384. package/lib/esm/test/standalone/TileCache.test.js.map +1 -1
  385. package/lib/esm/test/standalone/TileTree.test.js.map +1 -1
  386. package/lib/esm/test/standalone/TxnManager.test.js.map +1 -1
  387. package/lib/esm/test/standalone/ViewDefinition.test.js.map +1 -1
  388. package/lib/esm/test/standalone/ViewStoreDb.test.js.map +1 -1
  389. package/lib/esm/test/standalone/Workspace.test.js.map +1 -1
  390. package/lib/esm/workspace/Settings.js.map +1 -1
  391. package/lib/esm/workspace/SettingsSchemas.js.map +1 -1
  392. package/lib/esm/workspace/Workspace.js.map +1 -1
  393. package/lib/esm/workspace/WorkspaceEditor.js.map +1 -1
  394. package/package.json +13 -13
@@ -4,9 +4,9 @@
4
4
  *--------------------------------------------------------------------------------------------*/
5
5
  import { expect } from "chai";
6
6
  import { Angle, Point3d, Range2d, Range3d, YawPitchRollAngles } from "@itwin/core-geometry";
7
- import { FractionRun, SubCategoryAppearance, TextAnnotation, TextBlock, TextRun, TextStyleSettings } from "@itwin/core-common";
7
+ import { FieldRun, FractionRun, SubCategoryAppearance, TextAnnotation, TextBlock, TextRun, TextStyleSettings } from "@itwin/core-common";
8
8
  import { StandaloneDb } from "../../IModelDb";
9
- import { AnnotationTextStyle, TEXT_ANNOTATION_JSON_VERSION, TEXT_STYLE_SETTINGS_JSON_VERSION, TextAnnotation2d, TextAnnotation3d } from "../../annotations/TextAnnotationElement";
9
+ import { AnnotationTextStyle, parseTextAnnotationData, TEXT_ANNOTATION_JSON_VERSION, TEXT_STYLE_SETTINGS_JSON_VERSION, TextAnnotation2d, TextAnnotation3d } from "../../annotations/TextAnnotationElement";
10
10
  import { IModelTestUtils } from "../IModelTestUtils";
11
11
  import { Subject } from "../../Element";
12
12
  import { Guid, Id64 } from "@itwin/core-bentley";
@@ -19,6 +19,7 @@ import { computeTextRangeAsStringLength, MockBuilder } from "../AnnotationTestUt
19
19
  import { TextAnnotationUsesTextStyleByDefault } from "../../annotations/ElementDrivesTextAnnotation";
20
20
  import { layoutTextBlock, TextStyleResolver } from "../../annotations/TextBlockLayout";
21
21
  import { appendTextAnnotationGeometry } from "../../annotations/TextAnnotationGeometry";
22
+ import { IModelElementCloneContext } from "../../IModelElementCloneContext";
22
23
  function mockIModel() {
23
24
  const iModel = {
24
25
  fonts: {
@@ -212,6 +213,58 @@ describe("TextAnnotation element", () => {
212
213
  expect(elem.getAnnotation().toJSON()).not.to.equal(annotation.toJSON());
213
214
  });
214
215
  });
216
+ describe("getReferenceIds", () => {
217
+ function expectReferenceIds(expected, element) {
218
+ const actual = Array.from(element.getReferenceIds()).sort();
219
+ // reference Ids get a prefix indicating their type ('e' for 'element')
220
+ expected = expected.map((id) => `e${id}`);
221
+ // the superclasses provide some reference Ids (code spec, model, category)
222
+ const baseIds = ["e0x12", "e0x78", "m0x34"];
223
+ expected.push(...baseIds);
224
+ expected = expected.sort();
225
+ expect(actual).to.deep.equal(expected);
226
+ }
227
+ it("reports default text style and field hosts", () => {
228
+ // makeElement sets defaultTextStyle to "0x21"
229
+ const elem = makeElement();
230
+ expectReferenceIds(["0x21"], elem);
231
+ elem.defaultTextStyle = new TextAnnotationUsesTextStyleByDefault("0x123");
232
+ expectReferenceIds(["0x123"], elem);
233
+ const textBlock = TextBlock.create();
234
+ textBlock.appendRun(FieldRun.create({
235
+ propertyHost: { elementId: "0x456", schemaName: "BisCore", className: "GeometricElement3d" },
236
+ propertyPath: { propertyName: "CodeValue" },
237
+ }));
238
+ textBlock.appendRun(FieldRun.create({
239
+ propertyHost: { elementId: "0x789", schemaName: "BisCore", className: "GeometricElement3d" },
240
+ propertyPath: { propertyName: "LastMod" },
241
+ }));
242
+ elem.setAnnotation(TextAnnotation.create({ textBlock }));
243
+ expectReferenceIds(["0x123", "0x456", "0x789"], elem);
244
+ elem.defaultTextStyle = undefined;
245
+ expectReferenceIds(["0x456", "0x789"], elem);
246
+ elem.setAnnotation(TextAnnotation.create());
247
+ expectReferenceIds([], elem);
248
+ });
249
+ it("does not report invalid Ids", () => {
250
+ const elem = makeElement();
251
+ elem.defaultTextStyle = undefined;
252
+ expectReferenceIds([], elem);
253
+ elem.defaultTextStyle = new TextAnnotationUsesTextStyleByDefault("0");
254
+ expectReferenceIds([], elem);
255
+ const textBlock = TextBlock.create();
256
+ textBlock.appendRun(FieldRun.create({
257
+ propertyHost: { elementId: "0", schemaName: "BisCore", className: "GeometricElement3d" },
258
+ propertyPath: { propertyName: "CodeValue" },
259
+ }));
260
+ textBlock.appendRun(FieldRun.create({
261
+ propertyHost: { elementId: "0x123", schemaName: "BisCore", className: "GeometricElement3d" },
262
+ propertyPath: { propertyName: "LastMod" },
263
+ }));
264
+ elem.setAnnotation(TextAnnotation.create({ textBlock }));
265
+ expectReferenceIds(["0x123"], elem);
266
+ });
267
+ });
215
268
  describe("TextAnnotation3d Persistence", () => {
216
269
  let imodel;
217
270
  let createElement3dArgs;
@@ -399,6 +452,178 @@ describe("TextAnnotation element", () => {
399
452
  expect(el1 instanceof TextAnnotation2d).to.be.true;
400
453
  expect(el1.defaultTextStyle).to.be.undefined;
401
454
  });
455
+ describe("onCloned", () => {
456
+ function insertStyledElement(styleId, db) {
457
+ const args = { ...createElement2dArgs, defaultTextStyleId: styleId };
458
+ const elem = createElement2d(db, args);
459
+ elem.insert();
460
+ imodel.saveChanges();
461
+ return elem;
462
+ }
463
+ describe("within a single iModel", () => {
464
+ it("leaves property hosts intact", () => {
465
+ const textBlock = TextBlock.create({
466
+ children: [{
467
+ children: [{
468
+ type: "field",
469
+ propertyHost: {
470
+ elementId: "0x123",
471
+ schemaName: "Fields",
472
+ className: "TestElement",
473
+ },
474
+ propertyPath: { propertyName: "intProp" },
475
+ }, {
476
+ type: "field",
477
+ propertyHost: {
478
+ elementId: "0xabc",
479
+ schemaName: "BisCore",
480
+ className: "Element",
481
+ },
482
+ propertyPath: { propertyName: "CodeValue" },
483
+ }],
484
+ }],
485
+ });
486
+ const annotation = TextAnnotation.create({ textBlock });
487
+ const elem = createElement2d(imodel, { ...createElement2dArgs, textAnnotationProps: annotation.toJSON() });
488
+ elem.insert();
489
+ imodel.saveChanges();
490
+ const context = new IModelElementCloneContext(imodel);
491
+ context.remapElement("0x123", "0x456");
492
+ context.remapElement("0xabc", "0xdef");
493
+ context.remapElement(createElement2dArgs.model, createElement2dArgs.model);
494
+ const props = context.cloneElement(elem);
495
+ expect(props.textAnnotationData).not.to.be.undefined;
496
+ const anno = TextAnnotation.fromJSON(parseTextAnnotationData(props.textAnnotationData)?.data);
497
+ const para = anno.textBlock.children[0];
498
+ expect(para.children[0].propertyHost.elementId).to.equal("0x123");
499
+ expect(para.children[1].propertyHost.elementId).to.equal("0xabc");
500
+ });
501
+ it("leaves default text style intact", () => {
502
+ function clone(styleId, expectedStyleId) {
503
+ const elem = insertStyledElement(styleId, imodel);
504
+ const context = new IModelElementCloneContext(imodel);
505
+ context.remapElement(createElement2dArgs.model, createElement2dArgs.model);
506
+ const props = context.cloneElement(elem);
507
+ expect(props.defaultTextStyle?.id).to.equal(expectedStyleId);
508
+ if (styleId) {
509
+ // Even an explicit remapping is ignored when cloning within a single iModel
510
+ // (per the examples set by most other elements, excluding RenderMaterial).
511
+ context.remapElement(styleId, "0x99887");
512
+ const props2 = context.cloneElement(elem);
513
+ expect(props2.defaultTextStyle?.id).to.equal(expectedStyleId);
514
+ }
515
+ }
516
+ clone(seedStyleId, seedStyleId);
517
+ clone(undefined, undefined);
518
+ clone("0x12345", "0x12345");
519
+ clone(Id64.invalid, undefined);
520
+ });
521
+ });
522
+ describe("between iModels", () => {
523
+ let dstDb;
524
+ let dstDefModel;
525
+ let dstElemArgs;
526
+ before(async () => {
527
+ dstDb = await createIModel("CloneTarget");
528
+ const jobSubjectId = createJobSubjectElement(dstDb, "Job").insert();
529
+ dstDefModel = DefinitionModel.insert(dstDb, jobSubjectId, "Definition");
530
+ const { category, model } = insertDrawingModel(dstDb, jobSubjectId, dstDefModel);
531
+ expect(category).not.to.equal(createElement2dArgs.category);
532
+ expect(model).not.to.equal(createElement2dArgs.model);
533
+ dstElemArgs = { category, model };
534
+ });
535
+ after(() => dstDb.close());
536
+ it("remaps property hosts", () => {
537
+ const textBlock = TextBlock.create({
538
+ children: [{
539
+ children: [{
540
+ type: "field",
541
+ propertyHost: {
542
+ elementId: "0x123",
543
+ schemaName: "Fields",
544
+ className: "TestElement",
545
+ },
546
+ propertyPath: { propertyName: "intProp" },
547
+ }, {
548
+ type: "field",
549
+ propertyHost: {
550
+ elementId: "0xabc",
551
+ schemaName: "BisCore",
552
+ className: "Element",
553
+ },
554
+ propertyPath: { propertyName: "CodeValue" },
555
+ }],
556
+ }],
557
+ });
558
+ const annotation = TextAnnotation.create({ textBlock });
559
+ const elem = createElement2d(imodel, { ...createElement2dArgs, textAnnotationProps: annotation.toJSON() });
560
+ elem.insert();
561
+ imodel.saveChanges();
562
+ const context = new IModelElementCloneContext(imodel, dstDb);
563
+ context.remapElement("0x123", "0x456");
564
+ context.remapElement("0xabc", "0xdef");
565
+ context.remapElement(createElement2dArgs.model, dstElemArgs.model);
566
+ const props = context.cloneElement(elem);
567
+ expect(props.textAnnotationData).not.to.be.undefined;
568
+ const anno = TextAnnotation.fromJSON(parseTextAnnotationData(props.textAnnotationData)?.data);
569
+ const para = anno.textBlock.children[0];
570
+ expect(para.children[0].propertyHost.elementId).to.equal("0x456");
571
+ expect(para.children[1].propertyHost.elementId).to.equal("0xdef");
572
+ });
573
+ it("sets default text style to undefined if source style does not exist", () => {
574
+ const elem = insertStyledElement("0x12345", imodel);
575
+ const context = new IModelElementCloneContext(imodel, dstDb);
576
+ context.remapElement(createElement2dArgs.model, dstElemArgs.model);
577
+ const props = context.cloneElement(elem);
578
+ expect(props.defaultTextStyle).to.be.undefined;
579
+ });
580
+ it("remaps to an existing text style with the same code if present", () => {
581
+ const dstStyleId = createAnnotationTextStyle(dstDb, dstDefModel, "test", { font: { name: "Karla" } }).insert();
582
+ expect(dstStyleId).not.to.equal(seedStyleId);
583
+ const srcElem = insertStyledElement(seedStyleId, imodel);
584
+ const context = new IModelElementCloneContext(imodel, dstDb);
585
+ context.remapElement(createElement2dArgs.model, dstElemArgs.model);
586
+ const props = context.cloneElement(srcElem);
587
+ expect(props.defaultTextStyle?.id).to.equal(dstStyleId);
588
+ });
589
+ it("throws an error if definition model is not remapped", () => {
590
+ const srcElem = insertStyledElement(seedStyleId2, imodel);
591
+ const context = new IModelElementCloneContext(imodel, dstDb);
592
+ context.remapElement(createElement2dArgs.model, dstElemArgs.model);
593
+ expect(() => context.cloneElement(srcElem)).to.throw("Invalid target model");
594
+ });
595
+ it("imports default text style if necessary", () => {
596
+ const srcElem = insertStyledElement(seedStyleId2, imodel);
597
+ const context = new IModelElementCloneContext(imodel, dstDb);
598
+ context.remapElement(createElement2dArgs.model, dstElemArgs.model);
599
+ context.remapElement(seedDefinitionModelId, dstDefModel);
600
+ const props = context.cloneElement(srcElem);
601
+ const dstStyleId = props.defaultTextStyle.id;
602
+ expect(dstStyleId).not.to.be.undefined;
603
+ expect(dstStyleId).not.to.equal(seedStyleId2);
604
+ expect(dstDb.elements.tryGetElement(dstStyleId)).not.to.be.undefined;
605
+ });
606
+ it("remaps multiple occurrences of same style to same Id", () => {
607
+ const srcStyleId = createAnnotationTextStyle(imodel, seedDefinitionModelId, "styyyle", { font: { name: "Karla" } }).insert();
608
+ const srcElem1 = insertStyledElement(srcStyleId, imodel);
609
+ const srcElem2 = insertStyledElement(srcStyleId, imodel);
610
+ const srcElem3 = insertStyledElement(srcStyleId, imodel);
611
+ const context = new IModelElementCloneContext(imodel, dstDb);
612
+ context.remapElement(createElement2dArgs.model, dstElemArgs.model);
613
+ context.remapElement(seedDefinitionModelId, dstDefModel);
614
+ const props1 = context.cloneElement(srcElem1);
615
+ const props2 = context.cloneElement(srcElem2);
616
+ expect(props1.defaultTextStyle).not.to.be.undefined;
617
+ expect(props1.defaultTextStyle?.id).not.to.equal(srcStyleId);
618
+ expect(props2.defaultTextStyle?.id).to.equal(props1.defaultTextStyle?.id);
619
+ const context2 = new IModelElementCloneContext(imodel, dstDb);
620
+ context2.remapElement(createElement2dArgs.model, dstElemArgs.model);
621
+ context2.remapElement(seedDefinitionModelId, dstDefModel);
622
+ const props3 = context2.cloneElement(srcElem3);
623
+ expect(props3.defaultTextStyle?.id).to.equal(props1.defaultTextStyle?.id);
624
+ });
625
+ });
626
+ });
402
627
  });
403
628
  describe("TextAnnotation3d", () => {
404
629
  let createElement3dArgs;