@itwin/core-backend 5.13.0-dev.11 → 5.13.0-dev.13

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 (484) 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.map +1 -1
  6. package/lib/cjs/CatalogDb.js.map +1 -1
  7. package/lib/cjs/Category.js.map +1 -1
  8. package/lib/cjs/ChangeSummaryManager.js +2 -2
  9. package/lib/cjs/ChangeSummaryManager.js.map +1 -1
  10. package/lib/cjs/ChangedElementsDb.js.map +1 -1
  11. package/lib/cjs/ChangesetECAdaptor.js +248 -248
  12. package/lib/cjs/ChangesetECAdaptor.js.map +1 -1
  13. package/lib/cjs/ChangesetReader.js +3 -3
  14. package/lib/cjs/ChangesetReader.js.map +1 -1
  15. package/lib/cjs/ChangesetReaderTypes.js.map +1 -1
  16. package/lib/cjs/ChannelControl.js.map +1 -1
  17. package/lib/cjs/CheckpointManager.js.map +1 -1
  18. package/lib/cjs/ClassRegistry.js +5 -5
  19. package/lib/cjs/ClassRegistry.js.map +1 -1
  20. package/lib/cjs/CloudSqlite.js.map +1 -1
  21. package/lib/cjs/CodeService.js.map +1 -1
  22. package/lib/cjs/CodeSpecs.js.map +1 -1
  23. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  24. package/lib/cjs/CustomViewState3dCreator.js.map +1 -1
  25. package/lib/cjs/DevTools.js.map +1 -1
  26. package/lib/cjs/DisplayStyle.js.map +1 -1
  27. package/lib/cjs/ECDb.js.map +1 -1
  28. package/lib/cjs/ECSchemaXmlContext.js.map +1 -1
  29. package/lib/cjs/ECSqlRowExecutor.js.map +1 -1
  30. package/lib/cjs/ECSqlStatement.js.map +1 -1
  31. package/lib/cjs/ECSqlSyncReader.js.map +1 -1
  32. package/lib/cjs/EditTxn.js.map +1 -1
  33. package/lib/cjs/Element.js.map +1 -1
  34. package/lib/cjs/ElementAspect.js.map +1 -1
  35. package/lib/cjs/ElementGraphics.js.map +1 -1
  36. package/lib/cjs/ElementTreeWalker.js.map +1 -1
  37. package/lib/cjs/Entity.js.map +1 -1
  38. package/lib/cjs/EntityReferences.js.map +1 -1
  39. package/lib/cjs/ExportGraphics.js.map +1 -1
  40. package/lib/cjs/ExternalSource.js.map +1 -1
  41. package/lib/cjs/FontFile.js.map +1 -1
  42. package/lib/cjs/GeoCoordConfig.js.map +1 -1
  43. package/lib/cjs/GeographicCRSServices.js.map +1 -1
  44. package/lib/cjs/GeometrySummary.js +47 -47
  45. package/lib/cjs/GeometrySummary.js.map +1 -1
  46. package/lib/cjs/IModelDb.js +25 -25
  47. package/lib/cjs/IModelDb.js.map +1 -1
  48. package/lib/cjs/IModelDbFonts.js.map +1 -1
  49. package/lib/cjs/IModelElementCloneContext.js.map +1 -1
  50. package/lib/cjs/IModelHost.js.map +1 -1
  51. package/lib/cjs/IModelIncrementalSchemaLocater.js.map +1 -1
  52. package/lib/cjs/IModelJsFs.js.map +1 -1
  53. package/lib/cjs/ImageSourceConversion.js.map +1 -1
  54. package/lib/cjs/IpcHost.js.map +1 -1
  55. package/lib/cjs/LineStyle.js.map +1 -1
  56. package/lib/cjs/LocalHub.js +1 -1
  57. package/lib/cjs/LocalHub.js.map +1 -1
  58. package/lib/cjs/LocalhostIpcHost.js.map +1 -1
  59. package/lib/cjs/LockControl.js.map +1 -1
  60. package/lib/cjs/Material.js.map +1 -1
  61. package/lib/cjs/Model.js.map +1 -1
  62. package/lib/cjs/NativeAppStorage.js.map +1 -1
  63. package/lib/cjs/NativeHost.js.map +1 -1
  64. package/lib/cjs/NavigationRelationship.js.map +1 -1
  65. package/lib/cjs/PartialChangeUnifier.js +7 -7
  66. package/lib/cjs/PartialChangeUnifier.js.map +1 -1
  67. package/lib/cjs/PromiseMemoizer.js.map +1 -1
  68. package/lib/cjs/PropertyStore.js.map +1 -1
  69. package/lib/cjs/Relationship.js.map +1 -1
  70. package/lib/cjs/RpcBackend.js.map +1 -1
  71. package/lib/cjs/SQLiteDb.js.map +1 -1
  72. package/lib/cjs/Schema.js.map +1 -1
  73. package/lib/cjs/SchemaSync.js.map +1 -1
  74. package/lib/cjs/SchemaUtils.js.map +1 -1
  75. package/lib/cjs/SheetIndex.js.map +1 -1
  76. package/lib/cjs/SqliteChangesetReader.js.map +1 -1
  77. package/lib/cjs/SqliteStatement.js.map +1 -1
  78. package/lib/cjs/StashManager.js.map +1 -1
  79. package/lib/cjs/Texture.js.map +1 -1
  80. package/lib/cjs/TileStorage.js.map +1 -1
  81. package/lib/cjs/TxnManager.js.map +1 -1
  82. package/lib/cjs/ViewDefinition.js.map +1 -1
  83. package/lib/cjs/ViewStateHydrator.js.map +1 -1
  84. package/lib/cjs/ViewStore.js.map +1 -1
  85. package/lib/cjs/annotations/ElementDrivesTextAnnotation.js.map +1 -1
  86. package/lib/cjs/annotations/FrameGeometry.js.map +1 -1
  87. package/lib/cjs/annotations/LeaderGeometry.js.map +1 -1
  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 +36 -36
  94. package/lib/cjs/assets/Settings/Schemas/Gcs.schema.json +28 -28
  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/ECSqlInstanceReshaper.js.map +1 -1
  105. package/lib/cjs/internal/ElementLRUCache.js.map +1 -1
  106. package/lib/cjs/internal/FontFileImpl.js.map +1 -1
  107. package/lib/cjs/internal/HubMock.js.map +1 -1
  108. package/lib/cjs/internal/IModelDbFontsImpl.js.map +1 -1
  109. package/lib/cjs/internal/IntegrityCheck.js.map +1 -1
  110. package/lib/cjs/internal/NativePlatform.js.map +1 -1
  111. package/lib/cjs/internal/NoLocks.js.map +1 -1
  112. package/lib/cjs/internal/OnlineStatus.js.map +1 -1
  113. package/lib/cjs/internal/ServerBasedLocks.js +33 -33
  114. package/lib/cjs/internal/ServerBasedLocks.js.map +1 -1
  115. package/lib/cjs/internal/Symbols.js.map +1 -1
  116. package/lib/cjs/internal/annotations/fields.js.map +1 -1
  117. package/lib/cjs/internal/cross-package.js.map +1 -1
  118. package/lib/cjs/internal/workspace/SettingsEditorImpl.js.map +1 -1
  119. package/lib/cjs/internal/workspace/SettingsImpl.js.map +1 -1
  120. package/lib/cjs/internal/workspace/SettingsSchemasImpl.js.map +1 -1
  121. package/lib/cjs/internal/workspace/WorkspaceImpl.js.map +1 -1
  122. package/lib/cjs/internal/workspace/WorkspaceSqliteDb.js.map +1 -1
  123. package/lib/cjs/rpc/multipart.js.map +1 -1
  124. package/lib/cjs/rpc/tracing.js.map +1 -1
  125. package/lib/cjs/rpc/web/logging.js.map +1 -1
  126. package/lib/cjs/rpc/web/request.js.map +1 -1
  127. package/lib/cjs/rpc/web/response.js.map +1 -1
  128. package/lib/cjs/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  129. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  130. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  131. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  132. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  133. package/lib/cjs/workspace/Settings.js.map +1 -1
  134. package/lib/cjs/workspace/SettingsDb.js.map +1 -1
  135. package/lib/cjs/workspace/SettingsEditor.js.map +1 -1
  136. package/lib/cjs/workspace/SettingsSchemas.js.map +1 -1
  137. package/lib/cjs/workspace/Workspace.js.map +1 -1
  138. package/lib/cjs/workspace/WorkspaceEditor.js.map +1 -1
  139. package/lib/esm/BackendHubAccess.js.map +1 -1
  140. package/lib/esm/BackendLoggerCategory.js.map +1 -1
  141. package/lib/esm/BisCoreSchema.js.map +1 -1
  142. package/lib/esm/BlobContainerService.js.map +1 -1
  143. package/lib/esm/BriefcaseManager.js.map +1 -1
  144. package/lib/esm/CatalogDb.js.map +1 -1
  145. package/lib/esm/Category.js.map +1 -1
  146. package/lib/esm/ChangeSummaryManager.js +2 -2
  147. package/lib/esm/ChangeSummaryManager.js.map +1 -1
  148. package/lib/esm/ChangedElementsDb.js.map +1 -1
  149. package/lib/esm/ChangesetECAdaptor.js +248 -248
  150. package/lib/esm/ChangesetECAdaptor.js.map +1 -1
  151. package/lib/esm/ChangesetReader.js +3 -3
  152. package/lib/esm/ChangesetReader.js.map +1 -1
  153. package/lib/esm/ChangesetReaderTypes.js.map +1 -1
  154. package/lib/esm/ChannelControl.js.map +1 -1
  155. package/lib/esm/CheckpointManager.js.map +1 -1
  156. package/lib/esm/ClassRegistry.js +5 -5
  157. package/lib/esm/ClassRegistry.js.map +1 -1
  158. package/lib/esm/CloudSqlite.js.map +1 -1
  159. package/lib/esm/CodeService.js.map +1 -1
  160. package/lib/esm/CodeSpecs.js.map +1 -1
  161. package/lib/esm/ConcurrentQuery.js.map +1 -1
  162. package/lib/esm/CustomViewState3dCreator.js.map +1 -1
  163. package/lib/esm/DevTools.js.map +1 -1
  164. package/lib/esm/DisplayStyle.js.map +1 -1
  165. package/lib/esm/ECDb.js.map +1 -1
  166. package/lib/esm/ECSchemaXmlContext.js.map +1 -1
  167. package/lib/esm/ECSqlRowExecutor.js.map +1 -1
  168. package/lib/esm/ECSqlStatement.js.map +1 -1
  169. package/lib/esm/ECSqlSyncReader.js.map +1 -1
  170. package/lib/esm/EditTxn.js.map +1 -1
  171. package/lib/esm/Element.js.map +1 -1
  172. package/lib/esm/ElementAspect.js.map +1 -1
  173. package/lib/esm/ElementGraphics.js.map +1 -1
  174. package/lib/esm/ElementTreeWalker.js.map +1 -1
  175. package/lib/esm/Entity.js.map +1 -1
  176. package/lib/esm/EntityReferences.js.map +1 -1
  177. package/lib/esm/ExportGraphics.js.map +1 -1
  178. package/lib/esm/ExternalSource.js.map +1 -1
  179. package/lib/esm/FontFile.js.map +1 -1
  180. package/lib/esm/GeoCoordConfig.js.map +1 -1
  181. package/lib/esm/GeographicCRSServices.js.map +1 -1
  182. package/lib/esm/GeometrySummary.js +47 -47
  183. package/lib/esm/GeometrySummary.js.map +1 -1
  184. package/lib/esm/IModelDb.js +25 -25
  185. package/lib/esm/IModelDb.js.map +1 -1
  186. package/lib/esm/IModelDbFonts.js.map +1 -1
  187. package/lib/esm/IModelElementCloneContext.js.map +1 -1
  188. package/lib/esm/IModelHost.js.map +1 -1
  189. package/lib/esm/IModelIncrementalSchemaLocater.js.map +1 -1
  190. package/lib/esm/IModelJsFs.js.map +1 -1
  191. package/lib/esm/ImageSourceConversion.js.map +1 -1
  192. package/lib/esm/IpcHost.js.map +1 -1
  193. package/lib/esm/LineStyle.js.map +1 -1
  194. package/lib/esm/LocalHub.js +1 -1
  195. package/lib/esm/LocalHub.js.map +1 -1
  196. package/lib/esm/LocalhostIpcHost.js.map +1 -1
  197. package/lib/esm/LockControl.js.map +1 -1
  198. package/lib/esm/Material.js.map +1 -1
  199. package/lib/esm/Model.js.map +1 -1
  200. package/lib/esm/NativeAppStorage.js.map +1 -1
  201. package/lib/esm/NativeHost.js.map +1 -1
  202. package/lib/esm/NavigationRelationship.js.map +1 -1
  203. package/lib/esm/PartialChangeUnifier.js +7 -7
  204. package/lib/esm/PartialChangeUnifier.js.map +1 -1
  205. package/lib/esm/PromiseMemoizer.js.map +1 -1
  206. package/lib/esm/PropertyStore.js.map +1 -1
  207. package/lib/esm/Relationship.js.map +1 -1
  208. package/lib/esm/RpcBackend.js.map +1 -1
  209. package/lib/esm/SQLiteDb.js.map +1 -1
  210. package/lib/esm/Schema.js.map +1 -1
  211. package/lib/esm/SchemaSync.js.map +1 -1
  212. package/lib/esm/SchemaUtils.js.map +1 -1
  213. package/lib/esm/SheetIndex.js.map +1 -1
  214. package/lib/esm/SqliteChangesetReader.js.map +1 -1
  215. package/lib/esm/SqliteStatement.js.map +1 -1
  216. package/lib/esm/StashManager.js.map +1 -1
  217. package/lib/esm/Texture.js.map +1 -1
  218. package/lib/esm/TileStorage.js.map +1 -1
  219. package/lib/esm/TxnManager.js.map +1 -1
  220. package/lib/esm/ViewDefinition.js.map +1 -1
  221. package/lib/esm/ViewStateHydrator.js.map +1 -1
  222. package/lib/esm/ViewStore.js.map +1 -1
  223. package/lib/esm/annotations/ElementDrivesTextAnnotation.js.map +1 -1
  224. package/lib/esm/annotations/FrameGeometry.js.map +1 -1
  225. package/lib/esm/annotations/LeaderGeometry.js.map +1 -1
  226. package/lib/esm/annotations/TextAnnotationElement.js.map +1 -1
  227. package/lib/esm/annotations/TextAnnotationGeometry.js.map +1 -1
  228. package/lib/esm/annotations/TextBlockGeometry.js.map +1 -1
  229. package/lib/esm/annotations/TextBlockLayout.js.map +1 -1
  230. package/lib/esm/core-backend.js.map +1 -1
  231. package/lib/esm/domains/FunctionalElements.js.map +1 -1
  232. package/lib/esm/domains/FunctionalSchema.js.map +1 -1
  233. package/lib/esm/domains/GenericElements.js.map +1 -1
  234. package/lib/esm/domains/GenericSchema.js.map +1 -1
  235. package/lib/esm/internal/ChangesetConflictArgs.js.map +1 -1
  236. package/lib/esm/internal/ChannelAdmin.js.map +1 -1
  237. package/lib/esm/internal/ECSqlInstanceReshaper.js.map +1 -1
  238. package/lib/esm/internal/ElementLRUCache.js.map +1 -1
  239. package/lib/esm/internal/FontFileImpl.js.map +1 -1
  240. package/lib/esm/internal/HubMock.js.map +1 -1
  241. package/lib/esm/internal/IModelDbFontsImpl.js.map +1 -1
  242. package/lib/esm/internal/IntegrityCheck.js.map +1 -1
  243. package/lib/esm/internal/NativePlatform.js.map +1 -1
  244. package/lib/esm/internal/NoLocks.js.map +1 -1
  245. package/lib/esm/internal/OnlineStatus.js.map +1 -1
  246. package/lib/esm/internal/ServerBasedLocks.js +33 -33
  247. package/lib/esm/internal/ServerBasedLocks.js.map +1 -1
  248. package/lib/esm/internal/Symbols.js.map +1 -1
  249. package/lib/esm/internal/annotations/fields.js.map +1 -1
  250. package/lib/esm/internal/cross-package.js.map +1 -1
  251. package/lib/esm/internal/workspace/SettingsEditorImpl.js.map +1 -1
  252. package/lib/esm/internal/workspace/SettingsImpl.js.map +1 -1
  253. package/lib/esm/internal/workspace/SettingsSchemasImpl.js.map +1 -1
  254. package/lib/esm/internal/workspace/WorkspaceImpl.js.map +1 -1
  255. package/lib/esm/internal/workspace/WorkspaceSqliteDb.js.map +1 -1
  256. package/lib/esm/rpc/multipart.js.map +1 -1
  257. package/lib/esm/rpc/tracing.js.map +1 -1
  258. package/lib/esm/rpc/web/logging.js.map +1 -1
  259. package/lib/esm/rpc/web/request.js.map +1 -1
  260. package/lib/esm/rpc/web/response.js.map +1 -1
  261. package/lib/esm/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  262. package/lib/esm/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  263. package/lib/esm/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  264. package/lib/esm/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  265. package/lib/esm/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  266. package/lib/esm/test/AdvancedEqual.js.map +1 -1
  267. package/lib/esm/test/AnnotationTestUtils.js.map +1 -1
  268. package/lib/esm/test/AttachDb.test.js +11 -11
  269. package/lib/esm/test/AttachDb.test.js.map +1 -1
  270. package/lib/esm/test/ElementDrivesElement.test.js +23 -23
  271. package/lib/esm/test/ElementDrivesElement.test.js.map +1 -1
  272. package/lib/esm/test/ElementLRUCache.test.js.map +1 -1
  273. package/lib/esm/test/GeometryTestUtil.js.map +1 -1
  274. package/lib/esm/test/IModelHost.test.js.map +1 -1
  275. package/lib/esm/test/IModelTestUtils.js.map +1 -1
  276. package/lib/esm/test/ImageSourceConversion.test.js.map +1 -1
  277. package/lib/esm/test/IpcHost.test.js.map +1 -1
  278. package/lib/esm/test/KnownTestLocations.js.map +1 -1
  279. package/lib/esm/test/PrintElementTree.js.map +1 -1
  280. package/lib/esm/test/PropertyDb.test.js.map +1 -1
  281. package/lib/esm/test/RevisionUtility.js.map +1 -1
  282. package/lib/esm/test/SchemaChangesetCanBeReversed.test.js +51 -51
  283. package/lib/esm/test/SchemaChangesetCanBeReversed.test.js.map +1 -1
  284. package/lib/esm/test/SchemaUtils.test.js +25 -25
  285. package/lib/esm/test/SchemaUtils.test.js.map +1 -1
  286. package/lib/esm/test/SequentialLogMatcher.js.map +1 -1
  287. package/lib/esm/test/SquashSchemaAndDataChanges.test.js +129 -129
  288. package/lib/esm/test/SquashSchemaAndDataChanges.test.js.map +1 -1
  289. package/lib/esm/test/TestChangeSetUtility.js.map +1 -1
  290. package/lib/esm/test/TestEditTxn.js.map +1 -1
  291. package/lib/esm/test/TestUtils.js.map +1 -1
  292. package/lib/esm/test/annotations/Fields.test.js +53 -53
  293. package/lib/esm/test/annotations/Fields.test.js.map +1 -1
  294. package/lib/esm/test/annotations/FrameGeometry.test.js.map +1 -1
  295. package/lib/esm/test/annotations/LeaderGeometry.test.js.map +1 -1
  296. package/lib/esm/test/annotations/TextAnnotation.test.js.map +1 -1
  297. package/lib/esm/test/annotations/TextBlock.test.js.map +1 -1
  298. package/lib/esm/test/assets/IncrementalSchemaLocater/configs/old.config.js.map +1 -1
  299. package/lib/esm/test/assets/IncrementalSchemaLocater/configs/simple.config.js.map +1 -1
  300. package/lib/esm/test/categories/Category.test.js.map +1 -1
  301. package/lib/esm/test/codespec/CodeSpec.test.js.map +1 -1
  302. package/lib/esm/test/ecdb/CTE.test.js +88 -88
  303. package/lib/esm/test/ecdb/CTE.test.js.map +1 -1
  304. package/lib/esm/test/ecdb/ConcurrentQuery.test.js +19 -19
  305. package/lib/esm/test/ecdb/ConcurrentQuery.test.js.map +1 -1
  306. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.js +15 -15
  307. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.js.map +1 -1
  308. package/lib/esm/test/ecdb/ECDb.test.js +72 -72
  309. package/lib/esm/test/ecdb/ECDb.test.js.map +1 -1
  310. package/lib/esm/test/ecdb/ECDbTestHelper.js.map +1 -1
  311. package/lib/esm/test/ecdb/ECSchemaXmlContext.test.js.map +1 -1
  312. package/lib/esm/test/ecdb/ECSqlAst.test.js +65 -65
  313. package/lib/esm/test/ecdb/ECSqlAst.test.js.map +1 -1
  314. package/lib/esm/test/ecdb/ECSqlQuery.test.js +4 -4
  315. package/lib/esm/test/ecdb/ECSqlQuery.test.js.map +1 -1
  316. package/lib/esm/test/ecdb/ECSqlStatement.test.js +332 -332
  317. package/lib/esm/test/ecdb/ECSqlStatement.test.js.map +1 -1
  318. package/lib/esm/test/ecdb/ECSqlSyncReader.test.js +4 -4
  319. package/lib/esm/test/ecdb/ECSqlSyncReader.test.js.map +1 -1
  320. package/lib/esm/test/ecdb/QueryReaders.test.js +31 -31
  321. package/lib/esm/test/ecdb/QueryReaders.test.js.map +1 -1
  322. package/lib/esm/test/ecdb/SqliteStatement.test.js.map +1 -1
  323. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.js.map +1 -1
  324. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.js +21 -21
  325. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.js.map +1 -1
  326. package/lib/esm/test/ecsql/src/ECSqlTestParser.js.map +1 -1
  327. package/lib/esm/test/ecsql/src/ECSqlTestRunner.test.js.map +1 -1
  328. package/lib/esm/test/element/DeleteDefinitionElements.test.js.map +1 -1
  329. package/lib/esm/test/element/ElementAspect.test.js +22 -22
  330. package/lib/esm/test/element/ElementAspect.test.js.map +1 -1
  331. package/lib/esm/test/element/ElementDependencyGraph.test.js.map +1 -1
  332. package/lib/esm/test/element/ElementRoundTrip.test.js +139 -139
  333. package/lib/esm/test/element/ElementRoundTrip.test.js.map +1 -1
  334. package/lib/esm/test/element/ExcludedElements.test.js.map +1 -1
  335. package/lib/esm/test/element/ExternalSource.test.js.map +1 -1
  336. package/lib/esm/test/element/NullStructArray.test.js +13 -13
  337. package/lib/esm/test/element/NullStructArray.test.js.map +1 -1
  338. package/lib/esm/test/element/ProjectInformationRecord.test.js.map +1 -1
  339. package/lib/esm/test/element/SheetInformationAspect.test.js.map +1 -1
  340. package/lib/esm/test/element/UrlLink.test.js.map +1 -1
  341. package/lib/esm/test/example-code/EditTxn.test.js.map +1 -1
  342. package/lib/esm/test/font/FontFile.test.js.map +1 -1
  343. package/lib/esm/test/font/IModelDbFonts.test.js.map +1 -1
  344. package/lib/esm/test/hubaccess/ApplyChangeset.test.js +32 -32
  345. package/lib/esm/test/hubaccess/ApplyChangeset.test.js.map +1 -1
  346. package/lib/esm/test/hubaccess/BriefcaseManager.test.js.map +1 -1
  347. package/lib/esm/test/hubaccess/CheckpointManager.test.js.map +1 -1
  348. package/lib/esm/test/hubaccess/CodeSwap.test.js.map +1 -1
  349. package/lib/esm/test/hubaccess/Rebase.test.js +56 -56
  350. package/lib/esm/test/hubaccess/Rebase.test.js.map +1 -1
  351. package/lib/esm/test/hubaccess/SemanticRebase.test.js +345 -345
  352. package/lib/esm/test/hubaccess/SemanticRebase.test.js.map +1 -1
  353. package/lib/esm/test/imageData.js.map +1 -1
  354. package/lib/esm/test/imodel/Code.test.js.map +1 -1
  355. package/lib/esm/test/imodel/ElementTreeWalker.test.js.map +1 -1
  356. package/lib/esm/test/imodel/GetTextureImage.test.js.map +1 -1
  357. package/lib/esm/test/imodel/IModelECSql.test.d.ts +2 -0
  358. package/lib/esm/test/imodel/IModelECSql.test.d.ts.map +1 -0
  359. package/lib/esm/test/imodel/IModelECSql.test.js +367 -0
  360. package/lib/esm/test/imodel/IModelECSql.test.js.map +1 -0
  361. package/lib/esm/test/imodel/IModelElements.test.d.ts +2 -0
  362. package/lib/esm/test/imodel/IModelElements.test.d.ts.map +1 -0
  363. package/lib/esm/test/imodel/IModelElements.test.js +969 -0
  364. package/lib/esm/test/imodel/IModelElements.test.js.map +1 -0
  365. package/lib/esm/test/imodel/IModelGeolocation.test.d.ts +2 -0
  366. package/lib/esm/test/imodel/IModelGeolocation.test.d.ts.map +1 -0
  367. package/lib/esm/test/imodel/IModelGeolocation.test.js +539 -0
  368. package/lib/esm/test/imodel/IModelGeolocation.test.js.map +1 -0
  369. package/lib/esm/test/imodel/IModelLifecycle.test.d.ts +2 -0
  370. package/lib/esm/test/imodel/IModelLifecycle.test.d.ts.map +1 -0
  371. package/lib/esm/test/imodel/IModelLifecycle.test.js +498 -0
  372. package/lib/esm/test/imodel/IModelLifecycle.test.js.map +1 -0
  373. package/lib/esm/test/imodel/IModelMetadata.test.d.ts +2 -0
  374. package/lib/esm/test/imodel/IModelMetadata.test.d.ts.map +1 -0
  375. package/lib/esm/test/imodel/IModelMetadata.test.js +274 -0
  376. package/lib/esm/test/imodel/IModelMetadata.test.js.map +1 -0
  377. package/lib/esm/test/imodel/IModelModels.test.d.ts +2 -0
  378. package/lib/esm/test/imodel/IModelModels.test.d.ts.map +1 -0
  379. package/lib/esm/test/imodel/IModelModels.test.js +357 -0
  380. package/lib/esm/test/imodel/IModelModels.test.js.map +1 -0
  381. package/lib/esm/test/imodel/IModelRelationships.test.d.ts +2 -0
  382. package/lib/esm/test/imodel/IModelRelationships.test.d.ts.map +1 -0
  383. package/lib/esm/test/imodel/IModelRelationships.test.js +407 -0
  384. package/lib/esm/test/imodel/IModelRelationships.test.js.map +1 -0
  385. package/lib/esm/test/imodel/IModelTestFixtures.d.ts +53 -0
  386. package/lib/esm/test/imodel/IModelTestFixtures.d.ts.map +1 -0
  387. package/lib/esm/test/imodel/IModelTestFixtures.js +107 -0
  388. package/lib/esm/test/imodel/IModelTestFixtures.js.map +1 -0
  389. package/lib/esm/test/imodel/IModelViews.test.d.ts +2 -0
  390. package/lib/esm/test/imodel/IModelViews.test.d.ts.map +1 -0
  391. package/lib/esm/test/imodel/IModelViews.test.js +199 -0
  392. package/lib/esm/test/imodel/IModelViews.test.js.map +1 -0
  393. package/lib/esm/test/imodel/ProjectExtents.test.js.map +1 -1
  394. package/lib/esm/test/imodel/SchemaXmlImport.test.js +21 -21
  395. package/lib/esm/test/imodel/SchemaXmlImport.test.js.map +1 -1
  396. package/lib/esm/test/incrementalSchemaLocater/ECSqlQueries.test.js.map +1 -1
  397. package/lib/esm/test/incrementalSchemaLocater/IncrementalLoading.test.js.map +1 -1
  398. package/lib/esm/test/incrementalSchemaLocater/TestContext.js.map +1 -1
  399. package/lib/esm/test/index.js.map +1 -1
  400. package/lib/esm/test/internal/ECSqlInstanceReshaper.test.js +32 -32
  401. package/lib/esm/test/internal/ECSqlInstanceReshaper.test.js.map +1 -1
  402. package/lib/esm/test/misc/DevTools.test.js.map +1 -1
  403. package/lib/esm/test/misc/EntitySubClasses.test.js.map +1 -1
  404. package/lib/esm/test/misc/PromiseMemoizer.test.js.map +1 -1
  405. package/lib/esm/test/native/DgnDbWorker.test.js.map +1 -1
  406. package/lib/esm/test/rpc/response.test.js.map +1 -1
  407. package/lib/esm/test/schema/ClassRegistry.test.js +99 -99
  408. package/lib/esm/test/schema/ClassRegistry.test.js.map +1 -1
  409. package/lib/esm/test/schema/FunctionalDomain.test.js.map +1 -1
  410. package/lib/esm/test/schema/GenericDomain.test.js.map +1 -1
  411. package/lib/esm/test/schema/IModelSchemaContext.test.js +9 -9
  412. package/lib/esm/test/schema/IModelSchemaContext.test.js.map +1 -1
  413. package/lib/esm/test/schema/SchemaImportCallbacks.test.js +19 -19
  414. package/lib/esm/test/schema/SchemaImportCallbacks.test.js.map +1 -1
  415. package/lib/esm/test/schema/SchemaViewFragmentLoading.test.js +21 -21
  416. package/lib/esm/test/schema/SchemaViewFragmentLoading.test.js.map +1 -1
  417. package/lib/esm/test/schema/SchemaViewHidden.test.js +109 -109
  418. package/lib/esm/test/schema/SchemaViewHidden.test.js.map +1 -1
  419. package/lib/esm/test/schema/SchemaViewKoQ.test.js +13 -13
  420. package/lib/esm/test/schema/SchemaViewKoQ.test.js.map +1 -1
  421. package/lib/esm/test/schema/SchemaViewLifecycle.test.js +15 -15
  422. package/lib/esm/test/schema/SchemaViewLifecycle.test.js.map +1 -1
  423. package/lib/esm/test/schema/SchemaViewValidation.test.js +8 -8
  424. package/lib/esm/test/schema/SchemaViewValidation.test.js.map +1 -1
  425. package/lib/esm/test/sheetindex/SheetIndex.test.js.map +1 -1
  426. package/lib/esm/test/standalone/ChangeElementParentModel.test.js.map +1 -1
  427. package/lib/esm/test/standalone/ChangeMerge.test.js.map +1 -1
  428. package/lib/esm/test/standalone/ChangesetReader.test.js +313 -313
  429. package/lib/esm/test/standalone/ChangesetReader.test.js.map +1 -1
  430. package/lib/esm/test/standalone/CloudSqlite.test.js.map +1 -1
  431. package/lib/esm/test/standalone/CustomViewState3dCreator.test.js.map +1 -1
  432. package/lib/esm/test/standalone/DeleteElements.test.js.map +1 -1
  433. package/lib/esm/test/standalone/DisplayStyle.test.js.map +1 -1
  434. package/lib/esm/test/standalone/Drawing.test.js.map +1 -1
  435. package/lib/esm/test/standalone/EditTxn.test.js.map +1 -1
  436. package/lib/esm/test/standalone/ElementGraphics.test.js.map +1 -1
  437. package/lib/esm/test/standalone/ElementMesh.test.js.map +1 -1
  438. package/lib/esm/test/standalone/ExportGraphics.test.js +14 -14
  439. package/lib/esm/test/standalone/ExportGraphics.test.js.map +1 -1
  440. package/lib/esm/test/standalone/GeometryChangeEvents.test.js.map +1 -1
  441. package/lib/esm/test/standalone/GeometryStream.test.js.map +1 -1
  442. package/lib/esm/test/standalone/HubMock.test.js.map +1 -1
  443. package/lib/esm/test/standalone/IModelLimits.test.js.map +1 -1
  444. package/lib/esm/test/standalone/IModelWrite.test.js +27 -27
  445. package/lib/esm/test/standalone/IModelWrite.test.js.map +1 -1
  446. package/lib/esm/test/standalone/ITwinWorkspace.test.js.map +1 -1
  447. package/lib/esm/test/standalone/InlineGeometryPartReferences.test.js.map +1 -1
  448. package/lib/esm/test/standalone/IntegrityCheck.test.js.map +1 -1
  449. package/lib/esm/test/standalone/MergeConflict.test.js.map +1 -1
  450. package/lib/esm/test/standalone/NativeAppStorage.test.js.map +1 -1
  451. package/lib/esm/test/standalone/RenderMaterialElement.test.js.map +1 -1
  452. package/lib/esm/test/standalone/RenderTimeline.test.js.map +1 -1
  453. package/lib/esm/test/standalone/SQLiteDb.test.js.map +1 -1
  454. package/lib/esm/test/standalone/SQliteChangesetReaderAndChangesetECAdaptor.test.js +135 -135
  455. package/lib/esm/test/standalone/SQliteChangesetReaderAndChangesetECAdaptor.test.js.map +1 -1
  456. package/lib/esm/test/standalone/SchemaUtils.test.js.map +1 -1
  457. package/lib/esm/test/standalone/SectionDrawing.test.js.map +1 -1
  458. package/lib/esm/test/standalone/ServerBasedLocks.test.js.map +1 -1
  459. package/lib/esm/test/standalone/Setting.test.js.map +1 -1
  460. package/lib/esm/test/standalone/Settings.test.js.map +1 -1
  461. package/lib/esm/test/standalone/SettingsSchemas.test.js.map +1 -1
  462. package/lib/esm/test/standalone/SnapshotDb.test.js.map +1 -1
  463. package/lib/esm/test/standalone/StandaloneDb.test.js +20 -20
  464. package/lib/esm/test/standalone/StandaloneDb.test.js.map +1 -1
  465. package/lib/esm/test/standalone/Texture.test.js.map +1 -1
  466. package/lib/esm/test/standalone/TileCache.test.js.map +1 -1
  467. package/lib/esm/test/standalone/TileTree.test.js.map +1 -1
  468. package/lib/esm/test/standalone/TxnManager.test.js.map +1 -1
  469. package/lib/esm/test/standalone/ViewDefinition.test.js.map +1 -1
  470. package/lib/esm/test/standalone/ViewStoreDb.test.js.map +1 -1
  471. package/lib/esm/test/standalone/Workspace.test.js.map +1 -1
  472. package/lib/esm/test/standalone/iModelDb.test.js.map +1 -1
  473. package/lib/esm/test/workspace/SettingsDb.test.js.map +1 -1
  474. package/lib/esm/workspace/Settings.js.map +1 -1
  475. package/lib/esm/workspace/SettingsDb.js.map +1 -1
  476. package/lib/esm/workspace/SettingsEditor.js.map +1 -1
  477. package/lib/esm/workspace/SettingsSchemas.js.map +1 -1
  478. package/lib/esm/workspace/Workspace.js.map +1 -1
  479. package/lib/esm/workspace/WorkspaceEditor.js.map +1 -1
  480. package/package.json +14 -14
  481. package/lib/esm/test/imodel/IModel.test.d.ts +0 -2
  482. package/lib/esm/test/imodel/IModel.test.d.ts.map +0 -1
  483. package/lib/esm/test/imodel/IModel.test.js +0 -3338
  484. package/lib/esm/test/imodel/IModel.test.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IModelGeolocation.test.js","sourceRoot":"","sources":["../../../../src/test/imodel/IModelGeolocation.test.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\nimport { assert, expect } from \"chai\";\nimport { Guid } from \"@itwin/core-bentley\";\nimport {\n EcefLocation, GeoCoordinatesRequestProps, GeoCoordStatus, GeographicCRS, GeographicCRSProps, IModelCoordinatesRequestProps, PointWithStatus,\n} from \"@itwin/core-common\";\nimport { Geometry, Point3d, XYZProps } from \"@itwin/core-geometry\";\nimport { withEditTxn } from \"../../EditTxn\";\nimport { SnapshotDb } from \"../../core-backend\";\nimport { IModelTestUtils } from \"../IModelTestUtils\";\nimport { TestUtils } from \"../TestUtils\";\nimport { closeIfOpen, openReadonlySeedCopy } from \"./IModelTestFixtures\";\n\n\ndescribe(\"iModel geolocation\", () => {\n let mirukuruReadonly: SnapshotDb;\n let originalEnv: any;\n\n before(async () => {\n originalEnv = { ...process.env };\n\n await TestUtils.shutdownBackend();\n await TestUtils.startBackend({ loadGcsWorkspaces: true });\n\n IModelTestUtils.registerTestBimSchema();\n\n mirukuruReadonly = await openReadonlySeedCopy(\"geolocation-mirukuru.ibim\", \"mirukuru.ibim\");\n });\n\n after(async () => {\n process.env = originalEnv;\n\n closeIfOpen(mirukuruReadonly);\n\n await TestUtils.shutdownBackend();\n await TestUtils.startBackend();\n });\n\n it(\"ecefLocation for iModels\", () => {\n assert.isTrue(mirukuruReadonly.isGeoLocated);\n const center = { x: 289095, y: 3803860, z: 10 }; // near center of project extents, 10 meters above ground.\n const ecefPt = mirukuruReadonly.spatialToEcef(center);\n const pt = { x: -3575156.3661052254, y: 3873432.0891543664, z: 3578996.012643183 };\n assert.isTrue(ecefPt.isAlmostEqual(pt), \"spatialToEcef\");\n\n const z2 = mirukuruReadonly.ecefToSpatial(ecefPt);\n assert.isTrue(z2.isAlmostEqual(center), \"ecefToSpatial\");\n\n const carto = mirukuruReadonly.spatialToCartographicFromEcef(center);\n assert.approximately(carto.longitudeDegrees, 132.70683882277805, .1); // this data is in Japan\n assert.approximately(carto.latitudeDegrees, 34.35462768786055, .1);\n const c2 = { longitude: 2.3161712773709127, latitude: 0.5996013664499733, height: 10 };\n assert.isTrue(carto.equalsEpsilon(c2, .001), \"spatialToCartographic\");\n\n mirukuruReadonly.cartographicToSpatialFromEcef(carto, z2);\n assert.isTrue(z2.isAlmostEqual(center, .001), \"cartographicToSpatial\");\n\n assert.isTrue(mirukuruReadonly.geographicCoordinateSystem !== undefined);\n assert.isTrue(mirukuruReadonly.geographicCoordinateSystem!.horizontalCRS !== undefined);\n assert.isTrue(mirukuruReadonly.geographicCoordinateSystem!.verticalCRS !== undefined);\n assert.isTrue(mirukuruReadonly.geographicCoordinateSystem!.verticalCRS!.id !== undefined);\n assert.isTrue(mirukuruReadonly.geographicCoordinateSystem!.horizontalCRS!.id === \"UTM84-53N\");\n assert.isTrue(mirukuruReadonly.geographicCoordinateSystem!.verticalCRS!.id === \"ELLIPSOID\");\n });\n\n it(\"should be able to create a snapshot IModel and set geolocation by GCS\", async () => {\n const args = {\n rootSubject: { name: \"TestSubject\", description: \"test iTwin\" },\n client: \"ABC Engineering\",\n globalOrigin: { x: 10, y: 10 },\n projectExtents: { low: { x: -300, y: -300, z: -20 }, high: { x: 500, y: 500, z: 400 } },\n guid: Guid.createValue(),\n };\n\n const gcs = new GeographicCRS({\n horizontalCRS: {\n id: \"10TM115-27\",\n description: \"\",\n source: \"Mentor Software Client\",\n deprecated: false,\n datumId: \"NAD27\",\n unit: \"Meter\",\n projection: {\n method: \"TransverseMercator\",\n centralMeridian: -115,\n latitudeOfOrigin: 0,\n scaleFactor: 0.9992,\n falseEasting: 0.0,\n falseNorthing: 0.0,\n },\n extent: {\n southWest: { latitude: 48, longitude: -120.5 },\n northEast: { latitude: 84, longitude: -109.5 },\n },\n },\n verticalCRS: { id: \"GEOID\" },\n additionalTransform: {\n helmert2DWithZOffset: {\n translationX: 10.0,\n translationY: 15.0,\n translationZ: 0.02,\n rotDeg: 1.2,\n scale: 1.0001,\n },\n },\n });\n\n const testFile = IModelTestUtils.prepareOutputFile(\"IModel\", \"TestSnapshot2.bim\");\n const iModel = SnapshotDb.createEmpty(testFile, args);\n\n let eventListenedTo = false;\n const gcsListener = (previousGCS: GeographicCRS | undefined) => {\n assert.equal(previousGCS, undefined);\n assert.isTrue(iModel.geographicCoordinateSystem !== undefined);\n assert.isTrue(iModel.geographicCoordinateSystem!.equals(gcs));\n eventListenedTo = true;\n };\n iModel.onGeographicCoordinateSystemChanged.addListener(gcsListener);\n\n assert.isTrue(iModel.geographicCoordinateSystem === undefined);\n\n assert.isFalse(eventListenedTo);\n\n iModel.geographicCoordinateSystem = gcs;\n\n assert.isTrue(eventListenedTo);\n\n withEditTxn(iModel, (txn) => {\n txn.updateIModelProps();\n });\n iModel.close();\n\n const iModel2 = SnapshotDb.openFile(testFile);\n\n assert.isTrue(iModel2.geographicCoordinateSystem !== undefined);\n\n // The reloaded gcs will be different as the datum definition will have been expanded\n assert.isFalse(iModel2.geographicCoordinateSystem!.equals(gcs));\n\n // But other properties will be identical\n assert.isTrue(iModel2.geographicCoordinateSystem !== undefined);\n assert.isTrue(iModel2.geographicCoordinateSystem!.verticalCRS !== undefined);\n assert.isTrue(iModel2.geographicCoordinateSystem!.verticalCRS!.equals(gcs.verticalCRS!));\n assert.isTrue(iModel2.geographicCoordinateSystem!.additionalTransform !== undefined);\n assert.isTrue(iModel2.geographicCoordinateSystem!.additionalTransform!.equals(gcs.additionalTransform!));\n assert.isTrue(iModel2.geographicCoordinateSystem!.horizontalCRS !== undefined);\n assert.isTrue(iModel2.geographicCoordinateSystem!.horizontalCRS!.projection !== undefined);\n assert.isTrue(iModel2.geographicCoordinateSystem!.horizontalCRS!.projection!.equals(gcs.horizontalCRS!.projection!));\n assert.isTrue(iModel2.geographicCoordinateSystem!.horizontalCRS!.id !== undefined);\n assert.isTrue(iModel2.geographicCoordinateSystem!.horizontalCRS!.id === gcs.horizontalCRS!.id!);\n assert.isTrue(iModel2.geographicCoordinateSystem!.horizontalCRS!.extent !== undefined);\n assert.isTrue(iModel2.geographicCoordinateSystem!.horizontalCRS!.extent!.equals(gcs.horizontalCRS!.extent!));\n\n // The following were not in initial definition but were completed after storage.\n assert.isTrue(iModel2.geographicCoordinateSystem!.horizontalCRS!.datum !== undefined);\n assert.isTrue(iModel2.geographicCoordinateSystem!.horizontalCRS!.datum!.additionalTransformPaths !== undefined);\n assert.isTrue(iModel2.geographicCoordinateSystem!.horizontalCRS!.datum!.additionalTransformPaths!.length >= 0);\n\n // When a gcs is present then the ECEF is automatically defined.\n assert.isTrue(iModel2.ecefLocation !== undefined);\n\n iModel2.close();\n });\n\n describe(\"async coordinate conversions\", () => {\n it(\"should output same number of points as input\", async () => {\n const iModelCoords: Point3d[] = [];\n const geoCoords: Point3d[] = [];\n for (let numPts = 0; numPts < 3; numPts++) {\n const geoResponse = await mirukuruReadonly.getGeoCoordinatesFromIModelCoordinates({ target: \"WGS84\", iModelCoords });\n expect(geoResponse.geoCoords.length).to.equal(numPts);\n\n const iModelResponse = await mirukuruReadonly.getIModelCoordinatesFromGeoCoordinates({ source: \"WGS84\", geoCoords });\n expect(iModelResponse.iModelCoords.length).to.equal(numPts);\n\n iModelCoords.push(new Point3d());\n geoCoords.push(new Point3d());\n }\n });\n\n it(\"should always have fromCache = 0\", async () => {\n const iModelCoords: Point3d[] = [];\n const geoCoords: Point3d[] = [];\n for (let numPts = 0; numPts < 3; numPts++) {\n const geoResponse = await mirukuruReadonly.getGeoCoordinatesFromIModelCoordinates({ target: \"WGS84\", iModelCoords });\n expect(geoResponse.fromCache).to.equal(0);\n\n const iModelResponse = await mirukuruReadonly.getIModelCoordinatesFromGeoCoordinates({ source: \"WGS84\", geoCoords });\n expect(iModelResponse.iModelCoords.length).to.equal(numPts);\n expect(iModelResponse.fromCache).to.equal(0);\n\n iModelCoords.push(new Point3d());\n geoCoords.push(new Point3d());\n }\n });\n\n it(\"should be able to reproject with iModel coordinates to or from any other GeographicCRS\", async () => {\n const convertTest = async (fileName: string, fileGCS: GeographicCRSProps, datum: string | GeographicCRSProps, inputCoord: XYZProps, outputCoord: PointWithStatus) => {\n\n const args = {\n rootSubject: { name: \"TestSubject\", description: \"test project\" },\n client: \"ABC Engineering\",\n globalOrigin: { x: 0.0, y: 0.0 },\n projectExtents: { low: { x: -300, y: -300, z: -20 }, high: { x: 500, y: 500, z: 400 } },\n guid: Guid.createValue(),\n };\n\n let datumOrGCS: string;\n if (typeof datum === \"object\")\n datumOrGCS = JSON.stringify(datum);\n else\n datumOrGCS = datum;\n\n const testFile = IModelTestUtils.prepareOutputFile(\"IModel\", fileName);\n const iModel = SnapshotDb.createEmpty(testFile, args);\n\n withEditTxn(iModel, (txn) => {\n iModel.setGeographicCoordinateSystem(fileGCS);\n txn.updateIModelProps();\n });\n\n const testPoint1: XYZProps[] = [];\n testPoint1.push(inputCoord);\n const requestProps1: GeoCoordinatesRequestProps = { target: datumOrGCS, iModelCoords: testPoint1 };\n const response1 = await iModel.getGeoCoordinatesFromIModelCoordinates(requestProps1);\n\n expect(response1.geoCoords[0].s === outputCoord.s).to.be.true;\n\n // If success or warning we compare result\n if (outputCoord.s === GeoCoordStatus.Success || outputCoord.s === GeoCoordStatus.OutOfUsefulRange) {\n\n const expectedPt1 = Point3d.fromJSON(outputCoord.p);\n const outPt1 = Point3d.fromJSON(response1.geoCoords[0].p);\n\n expect(Geometry.isSamePoint3dXY(expectedPt1, outPt1, 0.001)).to.be.true;\n expect(Math.abs(expectedPt1.z - outPt1.z) < 0.0001).to.be.true;\n\n // No point testing reversal when Out of useful range since reversibility is doubtful\n if (outputCoord.s !== GeoCoordStatus.OutOfUsefulRange) {\n const testPoint2: XYZProps[] = [];\n testPoint2.push(outputCoord.p);\n const requestProps2: IModelCoordinatesRequestProps = { source: datumOrGCS, geoCoords: testPoint2 };\n const response2 = await iModel.getIModelCoordinatesFromGeoCoordinates(requestProps2);\n\n const expectedPt2 = Point3d.fromJSON(inputCoord);\n const outPt2 = Point3d.fromJSON(response2.iModelCoords[0].p);\n\n expect(expectedPt2.distanceXY(outPt2) < 0.001).to.be.true;\n expect(Math.abs(expectedPt2.z - outPt2.z) < 0.001).to.be.true;\n }\n }\n\n iModel.close();\n };\n\n const EWRGCS: GeographicCRSProps = {\n horizontalCRS: {\n id: \"EPSG:27700\",\n description: \"OSGB 1936 / British National Grid\",\n source: \"EPSG V6 [Large and medium scale topographic mapping and engin]\",\n datumId: \"EPSG:6277\",\n datum: {\n id: \"EPSG:6277\",\n description: \"OSGB36 - Use OSGB-7P-2. Consider OSGB/OSTN15 instead\",\n deprecated: true,\n source: \"EPSG V6.12 operation EPSG:1314 [EPSG]\",\n ellipsoidId: \"EPSG:7001\",\n ellipsoid: {\n equatorialRadius: 6377563.396,\n polarRadius: 6356256.909237,\n id: \"EPSG:7001\",\n description: \"Airy 1830\",\n source: \"EPSG, Version 6 [EPSG]\",\n },\n transforms: [\n {\n method: \"PositionalVector\",\n sourceEllipsoid: {\n equatorialRadius: 6377563.396,\n polarRadius: 6356256.909237,\n id: \"EPSG:7001\",\n },\n targetEllipsoid: {\n equatorialRadius: 6378137,\n polarRadius: 6356752.3142,\n id: \"WGS84\",\n },\n positionalVector: {\n delta: {\n x: 446.448,\n y: -125.157,\n z: 542.06,\n },\n rotation: {\n x: 0.15,\n y: 0.247,\n z: 0.842,\n },\n scalePPM: -20.489,\n },\n }],\n },\n unit: \"Meter\",\n projection: {\n method: \"TransverseMercator\",\n falseEasting: 400000,\n falseNorthing: -100000,\n centralMeridian: -2,\n latitudeOfOrigin: 49,\n scaleFactor: 0.999601272737422,\n },\n extent: {\n southWest: {\n latitude: 49.96,\n longitude: -7.56,\n },\n northEast: {\n latitude: 60.84,\n longitude: 1.78,\n },\n },\n },\n verticalCRS: {\n id: \"ELLIPSOID\",\n },\n additionalTransform: {\n helmert2DWithZOffset: {\n translationX: 284597.3343,\n translationY: 79859.4651,\n translationZ: 0,\n rotDeg: 0.5263624458992088,\n scale: 0.9996703340508721,\n },\n },\n };\n\n await convertTest(\"ExtonCampus1.bim\", { horizontalCRS: { id: \"EPSG:2272\" }, verticalCRS: { id: \"NAVD88\" } }, \"WGS84\", { x: 775970.3155166894, y: 83323.24543981979, z: 130.74977547686285 }, { p: { x: -75.68712011112366, y: 40.06524845273591, z: 95.9769083 }, s: GeoCoordStatus.Success });\n\n await convertTest(\"UTM83-10-NGVD29-10.bim\", { horizontalCRS: { id: \"UTM83-10\" }, verticalCRS: { id: \"NAVD88\" } }, { horizontalCRS: { id: \"UTM27-10\" }, verticalCRS: { id: \"NGVD29\" } }, { x: 548296.472, y: 4179414.470, z: 0.8457 }, { p: { x: 548392.9689991799, y: 4179217.683834238, z: -0.0006774162750405877 }, s: GeoCoordStatus.Success });\n\n await convertTest(\"BritishNatGrid-EllipsoidHelmert1.bim\", EWRGCS, \"WGS84\", { x: 199247.08883859176, y: 150141.68625139236, z: 0.0 }, { p: { x: -0.80184489371471, y: 51.978341907041205, z: 0.0 }, s: GeoCoordStatus.Success });\n await convertTest(\"BritishNatGrid-Ellipsoid1.bim\", { horizontalCRS: { id: \"BritishNatGrid\" }, verticalCRS: { id: \"ELLIPSOID\" } }, \"\", { x: 170370.718, y: 11572.405, z: 0.0 }, { p: { x: -5.2020119082059511, y: 49.959453295440234, z: 0.0 }, s: GeoCoordStatus.Success });\n await convertTest(\"BritishNatGrid-Ellipsoid2.bim\", { horizontalCRS: { id: \"BritishNatGrid\" }, verticalCRS: { id: \"ELLIPSOID\" } }, \"ETRF89\", { x: 170370.718, y: 11572.405, z: 0.0 }, { p: { x: -5.2030365061523707, y: 49.960007477936202, z: 0.0 }, s: GeoCoordStatus.Success });\n await convertTest(\"BritishNatGrid-Ellipsoid3.bim\", { horizontalCRS: { id: \"BritishNatGrid\" }, verticalCRS: { id: \"ELLIPSOID\" } }, \"OSGB\", { x: 170370.718, y: 11572.405, z: 0.0 }, { p: { x: -5.2020119082059511, y: 49.959453295440234, z: 0.0 }, s: GeoCoordStatus.Success });\n await convertTest(\"GermanyDHDN-3-Ellipsoid1.bim\", { horizontalCRS: { id: \"DHDN/3.GK3d-4/EN\" }, verticalCRS: { id: \"ELLIPSOID\" } }, \"\", { x: 4360857.005, y: 5606083.067, z: 0.0 }, { p: { x: 10.035413954488630, y: 50.575070810112159, z: 0.0 }, s: GeoCoordStatus.Success });\n await convertTest(\"GermanyDHDN-3-Ellipsoid2.bim\", { horizontalCRS: { id: \"DHDN/3.GK3d-4/EN\" }, verticalCRS: { id: \"ELLIPSOID\" } }, \"DHDN/3\", { x: 4360857.005, y: 5606083.067, z: 0.0 }, { p: { x: 10.035413954488630, y: 50.575070810112159, z: 0.0 }, s: GeoCoordStatus.Success });\n await convertTest(\"GermanyDHDN-3-Ellipsoid3.bim\", { horizontalCRS: { id: \"DHDN/3.GK3d-4/EN\" }, verticalCRS: { id: \"ELLIPSOID\" } }, \"WGS84\", { x: 4360857.005, y: 5606083.067, z: 0.0 }, { p: { x: 10.034215937440818, y: 50.573862480894853, z: 0.0 }, s: GeoCoordStatus.Success });\n await convertTest(\"UTM83-10-NGVD29-1.bim\", { horizontalCRS: { id: \"UTM83-10\" }, verticalCRS: { id: \"NGVD29\" } }, \"\", { x: 632748.112, y: 4263868.307, z: 0.0 }, { p: { x: -121.47738265889652, y: 38.513305313793019, z: 0.0 }, s: GeoCoordStatus.Success });\n await convertTest(\"UTM83-10-NGVD29-2.bim\", { horizontalCRS: { id: \"UTM83-10\" }, verticalCRS: { id: \"NGVD29\" } }, \"NAD83\", { x: 632748.112, y: 4263868.307, z: 0.0 }, { p: { x: -121.47738265889652, y: 38.513305313793019, z: -30.12668428839329 }, s: GeoCoordStatus.Success });\n await convertTest(\"UTM83-10-NGVD29-3.bim\", { horizontalCRS: { id: \"UTM83-10\" }, verticalCRS: { id: \"NGVD29\" } }, \"WGS84\", { x: 632748.112, y: 4263868.307, z: 0.0 }, { p: { x: -121.47738265889652, y: 38.513305313793019, z: -30.12668428839329 }, s: GeoCoordStatus.Success });\n await convertTest(\"UTM27-10-Ellipsoid1.bim\", { horizontalCRS: { id: \"UTM27-10\" }, verticalCRS: { id: \"ELLIPSOID\" } }, \"\", { x: 623075.328, y: 4265650.532, z: 0.0 }, { p: { x: -121.58798236995744, y: 38.532616292207997, z: 0.0 }, s: GeoCoordStatus.Success });\n await convertTest(\"UTM27-10-Ellipsoid2.bim\", { horizontalCRS: { id: \"UTM27-10\" }, verticalCRS: { id: \"ELLIPSOID\" } }, \"NAD83\", { x: 623075.328, y: 4265650.532, z: 0.0 }, { p: { x: -121.58905088839697, y: 38.532522753851708, z: 0.0 }, s: GeoCoordStatus.Success });\n\n await convertTest(\"UTM83-10-NGVD29-4.bim\", { horizontalCRS: { id: \"UTM83-10\" }, verticalCRS: { id: \"NGVD29\" } }, { horizontalCRS: { id: \"LL84\" }, verticalCRS: { id: \"ELLIPSOID\" } }, { x: 632748.112, y: 4263868.307, z: 0.0 }, { p: { x: -121.47738265889652, y: 38.513305313793019, z: -30.12668428839329 }, s: GeoCoordStatus.Success });\n\n await convertTest(\"UTM83-10-NGVD29-5.bim\", { horizontalCRS: { id: \"UTM83-10\" }, verticalCRS: { id: \"NGVD29\" } }, { horizontalCRS: { id: \"LL84\" }, verticalCRS: { id: \"GEOID\" } }, { x: 632748.112, y: 4263868.307, z: 0.0 }, { p: { x: -121.47738265889652, y: 38.513305313793019, z: 0.7621583779125531 }, s: GeoCoordStatus.Success });\n await convertTest(\"UTM83-10-NGVD29-6.bim\", { horizontalCRS: { id: \"UTM83-10\" }, verticalCRS: { id: \"NGVD29\" } }, { horizontalCRS: { id: \"CA83-II\" }, verticalCRS: { id: \"NAVD88\" } }, { x: 569024.940, y: 4386341.752, z: 0.0 }, { p: { x: 1983192.529823256, y: 717304.0311293667, z: 0.745910484422781 }, s: GeoCoordStatus.Success });\n await convertTest(\"UTM83-10-NGVD29-7.bim\", { horizontalCRS: { id: \"UTM83-10\" }, verticalCRS: { id: \"NGVD29\" } }, { horizontalCRS: { id: \"CA83-II\" }, verticalCRS: { id: \"GEOID\" } }, { x: 569024.940, y: 4386341.752, z: 0.0 }, { p: { x: 1983192.529823256, y: 717304.0311293667, z: 0.745910484422781 }, s: GeoCoordStatus.Success });\n await convertTest(\"UTM83-10-NGVD29-8.bim\", { horizontalCRS: { id: \"UTM83-10\" }, verticalCRS: { id: \"NGVD29\" } }, { horizontalCRS: { id: \"CA83-II\" }, verticalCRS: { id: \"NGVD29\" } }, { x: 569024.940, y: 4386341.752, z: 0.0 }, { p: { x: 1983192.529823256, y: 717304.0311293667, z: 0.0 }, s: GeoCoordStatus.Success });\n await convertTest(\"UTM83-10-NGVD29-9.bim\", { horizontalCRS: { id: \"UTM83-10\" }, verticalCRS: { id: \"NGVD29\" } }, { horizontalCRS: { epsg: 26942 }, verticalCRS: { id: \"NAVD88\" } }, { x: 569024.940, y: 4386341.752, z: 0.0 }, { p: { x: 1983192.529823256, y: 717304.0311293667, z: 0.745910484422781 }, s: GeoCoordStatus.Success });\n await convertTest(\"UTM83-10-NGVD29-10.bim\", { horizontalCRS: { id: \"UTM83-10\" }, verticalCRS: { id: \"NAVD88\" } }, { horizontalCRS: { id: \"UTM27-10\" }, verticalCRS: { id: \"NGVD29\" } }, { x: 548296.472, y: 4179414.470, z: 0.8457 }, { p: { x: 548392.9689991799, y: 4179217.683834238, z: -0.0006774162750405877 }, s: GeoCoordStatus.Success });\n\n await convertTest(\"BritishNatGrid-Ellipsoid4.bim\", { horizontalCRS: { id: \"BritishNatGrid\" }, verticalCRS: { id: \"ELLIPSOID\" } }, { horizontalCRS: { id: \"HS2_Snake_2015\" }, verticalCRS: { id: \"GEOID\" } }, { x: 473327.251, y: 257049.636, z: 0.0 }, { p: { x: 237732.58101946692, y: 364048.01547843055, z: -47.874172425966336 }, s: GeoCoordStatus.Success });\n\n await convertTest(\"BritishNatGrid-Ellipsoid5.bim\", { horizontalCRS: { id: \"BritishNatGrid\" }, verticalCRS: { id: \"ELLIPSOID\" } },\n {\n horizontalCRS: {\n id: \"HS2-MOCK\",\n description: \"USES CUSTOM DATUM\",\n source: \"Test\",\n deprecated: false,\n datumId: \"HS2SD_2015\",\n unit: \"Meter\",\n projection: {\n method: \"TransverseMercator\",\n centralMeridian: -1.5,\n latitudeOfOrigin: 52.30,\n scaleFactor: 1.0,\n falseEasting: 198873.0046,\n falseNorthing: 375064.3871,\n },\n },\n verticalCRS: {\n id: \"GEOID\",\n },\n }\n , { x: 473327.251, y: 257049.636, z: 0.0 }, { p: { x: 237732.58101952373, y: 364048.01548327296, z: -47.874172425966336 }, s: GeoCoordStatus.Success });\n\n await convertTest(\"BritishNatGrid-Ellipsoid.bim\", { horizontalCRS: { id: \"BritishNatGrid\" }, verticalCRS: { id: \"ELLIPSOID\" } }, { horizontalCRS: { id: \"OSGB-GPS-2015\" }, verticalCRS: { id: \"GEOID\" } }, { x: 473327.251, y: 257049.636, z: 0.0 }, { p: { x: 473325.6830048648, y: 257049.77062273448, z: -47.87643904264457 }, s: GeoCoordStatus.Success });\n\n await convertTest(\"UTM83-10-NGVD29-12.bim\", { horizontalCRS: { id: \"UTM83-10\" }, verticalCRS: { id: \"NGVD29\" } },\n {\n horizontalCRS: {\n id: \"California2\",\n description: \"USES CUSTOM DATUM\",\n source: \"Test\",\n deprecated: false,\n datumId: \"NAD83\",\n unit: \"Meter\",\n projection: {\n method: \"LambertConformalConicTwoParallels\",\n longitudeOfOrigin: -122,\n latitudeOfOrigin: 37.66666666667,\n standardParallel1: 39.833333333333336,\n standardParallel2: 38.333333333333336,\n falseEasting: 2000000.0,\n falseNorthing: 500000.0,\n },\n extent: {\n southWest: {\n latitude: 35,\n longitude: -125,\n },\n northEast: {\n latitude: 39.1,\n longitude: -120.45,\n },\n },\n },\n verticalCRS: {\n id: \"GEOID\",\n },\n }, { x: 569024.940, y: 4386341.752, z: 0.0 }, { p: { x: 1983192.529823256, y: 717304.0311293667, z: 0.745910484422781 }, s: GeoCoordStatus.Success });\n\n // Do some test that return errors\n // First test uses one GCS in Eastern USA and the other in UK. This will produce a hard domain error\n await convertTest(\"Error1.bim\", { horizontalCRS: { id: \"UTM84-17N\" }, verticalCRS: { id: \"ELLIPSOID\" } }, { horizontalCRS: { id: \"OSGB-GPS-2015\" }, verticalCRS: { id: \"GEOID\" } }, { x: 1473327.251, y: 1257049.636, z: 0.0 }, { p: { x: 473325.6830048648, y: 257049.77062273448, z: -47.87643904264457 }, s: GeoCoordStatus.OutOfMathematicalDomain });\n\n // This test performs conversion in a region outside normal use of GCS but still mathematically valid (soft domain error)\n await convertTest(\"Error2.bim\", { horizontalCRS: { id: \"DanishS34-S99\" }, verticalCRS: { id: \"ELLIPSOID\" } }, \"\", { x: -6618.5925260757449, y: 36058.097489683532, z: 0.0 }, { p: { x: 13.53250346041385, y: 54.71216475341563, z: 0.0 }, s: GeoCoordStatus.OutOfUsefulRange });\n // -6618.5925260757449, 36058.097489683532\n // { x: -221748.034, y: -10012.784, z: 0.0 } { p: { x: 10.36481105, y: 54.38462506, z: 0.0 }\n // This test makes use of a GCS using a grid file that does not even exist and will return a datum conversion error.\n const userGCSWithinexistentGridFile: GeographicCRSProps = {\n horizontalCRS: {\n id: \"User1\",\n datumId: \"UserDatum1\",\n datum: {\n id: \"UserDatum1\",\n ellipsoidId: \"CLRK66\",\n transforms: [\n {\n method: \"GridFiles\",\n sourceEllipsoid: {\n id: \"CLRK66\",\n equatorialRadius: 6378160.0,\n polarRadius: 6356774.719195306,\n },\n targetEllipsoid: {\n id: \"WGS84\",\n equatorialRadius: 6378160.0,\n polarRadius: 6356774.719195306,\n },\n gridFile: {\n files: [\n { fileName: \"./user/inexistent.gdc\", format: \"NTv2\", direction: \"Direct\" },\n ],\n },\n },\n ],\n },\n unit: \"Meter\",\n projection: {\n method: \"TransverseMercator\",\n centralMeridian: -115,\n latitudeOfOrigin: 0,\n scaleFactor: 0.9992,\n falseEasting: 1.0,\n falseNorthing: 2.0,\n },\n extent: {\n southWest: { latitude: 48, longitude: -120.5 },\n northEast: { latitude: 84, longitude: -109.5 },\n },\n }, verticalCRS: { id: \"ELLIPSOID\" },\n };\n\n await convertTest(\"Error3.bim\", userGCSWithinexistentGridFile, \"WGS84\", { x: 1473327.251, y: 1257049.636, z: 0.0 }, { p: { x: 473325.6830048648, y: 257049.77062273448, z: -47.87643904264457 }, s: GeoCoordStatus.NoDatumConverter });\n\n // The model GCS is not valid\n await convertTest(\"Error4.bim\", { horizontalCRS: { id: \"badfood\" }, verticalCRS: { id: \"ELLIPSOID\" } }, { horizontalCRS: { id: \"OSGB-GPS-2015\" }, verticalCRS: { id: \"GEOID\" } }, { x: 1473327.251, y: 1257049.636, z: 0.0 }, { p: { x: 473325.6830048648, y: 257049.77062273448, z: -47.87643904264457 }, s: GeoCoordStatus.NoGCSDefined });\n\n // The given GCS is not valid\n await convertTest(\"Error5.bim\", { horizontalCRS: { id: \"UTM84-17N\" }, verticalCRS: { id: \"ELLIPSOID\" } }, { horizontalCRS: { id: \"badfood\" }, verticalCRS: { id: \"GEOID\" } }, { x: 1473327.251, y: 1257049.636, z: 0.0 }, { p: { x: 473325.6830048648, y: 257049.77062273448, z: -47.87643904264457 }, s: GeoCoordStatus.NoGCSDefined });\n\n });\n });\n\n it(\"should be able to create a snapshot IModel and set geolocation by ECEF\", async () => {\n const args = {\n rootSubject: { name: \"TestSubject\", description: \"test iTwin\" },\n client: \"ABC Engineering\",\n globalOrigin: { x: 10, y: 10 },\n projectExtents: { low: { x: -300, y: -300, z: -20 }, high: { x: 500, y: 500, z: 400 } },\n guid: Guid.createValue(),\n };\n\n const ecef = new EcefLocation({\n origin: [42, 21, 0],\n orientation: { yaw: 1, pitch: 1, roll: -1 },\n });\n\n const testFile = IModelTestUtils.prepareOutputFile(\"IModel\", \"TestSnapshot3.bim\");\n const iModel = SnapshotDb.createEmpty(testFile, args);\n\n assert.isTrue(iModel.ecefLocation === undefined);\n\n iModel.ecefLocation = ecef;\n\n withEditTxn(iModel, (txn) => {\n txn.updateIModelProps();\n });\n iModel.close();\n\n const iModel2 = SnapshotDb.openFile(testFile);\n\n assert.isTrue(iModel2.ecefLocation !== undefined);\n assert.isTrue(iModel2.ecefLocation!.isAlmostEqual(ecef));\n\n iModel2.close();\n });\n\n it(\"should be able to create a snapshot IModel and set geolocation by ECEF with 0,0,0 rotation\", async () => {\n const args = {\n rootSubject: { name: \"TestSubject\", description: \"test iTwin\" },\n client: \"ABC Engineering\",\n globalOrigin: { x: 10, y: 10 },\n projectExtents: { low: { x: -300, y: -300, z: -20 }, high: { x: 500, y: 500, z: 400 } },\n guid: Guid.createValue(),\n };\n\n const ecef = new EcefLocation({\n origin: [42, 21, 0],\n orientation: { yaw: 0, pitch: 0, roll: 0 },\n });\n\n const testFile = IModelTestUtils.prepareOutputFile(\"IModel\", \"TestSnapshot3_000.bim\");\n const iModel = SnapshotDb.createEmpty(testFile, args);\n\n assert.isTrue(iModel.ecefLocation === undefined);\n\n iModel.ecefLocation = ecef;\n\n withEditTxn(iModel, (txn) => {\n txn.updateIModelProps();\n });\n iModel.close();\n\n const iModel2 = SnapshotDb.openFile(testFile);\n\n assert.isTrue(iModel2.ecefLocation !== undefined);\n assert.isTrue(iModel2.ecefLocation!.isAlmostEqual(ecef));\n\n iModel2.close();\n });\n\n it(\"presence of a GCS imposes the ecef value\", async () => {\n const args = {\n rootSubject: { name: \"TestSubject\", description: \"test iTwin\" },\n client: \"ABC Engineering\",\n globalOrigin: { x: 10, y: 10 },\n projectExtents: { low: { x: -300, y: -300, z: -20 }, high: { x: 500, y: 500, z: 400 } },\n guid: Guid.createValue(),\n };\n\n const gcs = new GeographicCRS({\n horizontalCRS: {\n id: \"10TM115-27\",\n description: \"\",\n source: \"Mentor Software Client\",\n deprecated: false,\n datumId: \"NAD27\",\n unit: \"Meter\",\n projection: {\n method: \"TransverseMercator\",\n centralMeridian: -115,\n latitudeOfOrigin: 0,\n scaleFactor: 0.9992,\n falseEasting: 0.0,\n falseNorthing: 0.0,\n },\n extent: {\n southWest: { latitude: 48, longitude: -120.5 },\n northEast: { latitude: 84, longitude: -109.5 },\n },\n },\n verticalCRS: { id: \"GEOID\" },\n additionalTransform: {\n helmert2DWithZOffset: {\n translationX: 10.0,\n translationY: 15.0,\n translationZ: 0.02,\n rotDeg: 1.2,\n scale: 1.0001,\n },\n },\n });\n\n const ecef = new EcefLocation({\n origin: [42, 21, 0],\n orientation: { yaw: 1, pitch: 1, roll: -1 },\n });\n\n const testFile = IModelTestUtils.prepareOutputFile(\"IModel\", \"TestSnapshot4.bim\");\n\n const iModel = SnapshotDb.createEmpty(testFile, args);\n\n iModel.ecefLocation = ecef;\n\n withEditTxn(iModel, (txn) => {\n txn.updateIModelProps();\n });\n iModel.close();\n\n const iModel2 = SnapshotDb.openForApplyChangesets(testFile);\n\n assert.isTrue(iModel2.ecefLocation !== undefined);\n assert.isTrue(iModel2.ecefLocation!.isAlmostEqual(ecef));\n\n assert.isTrue(iModel2.geographicCoordinateSystem === undefined);\n\n iModel2.geographicCoordinateSystem = gcs;\n\n withEditTxn(iModel2, (txn) => {\n txn.updateIModelProps();\n });\n iModel2.close();\n\n const iModel3 = SnapshotDb.openFile(testFile);\n\n assert.isTrue(iModel3.geographicCoordinateSystem !== undefined);\n\n // When a gcs is present then ecef value is imposed by the gcs disregarding previous value.\n assert.isTrue(iModel3.ecefLocation !== undefined);\n assert.isFalse(iModel3.ecefLocation!.isAlmostEqual(ecef));\n\n iModel3.close();\n });\n});\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IModelLifecycle.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IModelLifecycle.test.d.ts","sourceRoot":"","sources":["../../../../src/test/imodel/IModelLifecycle.test.ts"],"names":[],"mappings":""}