@itwin/core-backend 5.10.0-dev.8 → 5.11.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (580) hide show
  1. package/CHANGELOG.md +18 -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 +8 -1
  7. package/lib/cjs/BriefcaseManager.d.ts.map +1 -1
  8. package/lib/cjs/BriefcaseManager.js.map +1 -1
  9. package/lib/cjs/CatalogDb.js.map +1 -1
  10. package/lib/cjs/Category.d.ts +4 -4
  11. package/lib/cjs/Category.js.map +1 -1
  12. package/lib/cjs/ChangeSummaryManager.js +2 -2
  13. package/lib/cjs/ChangeSummaryManager.js.map +1 -1
  14. package/lib/cjs/ChangedElementsDb.js.map +1 -1
  15. package/lib/cjs/ChangesetECAdaptor.d.ts +6 -6
  16. package/lib/cjs/ChangesetECAdaptor.js +252 -252
  17. package/lib/cjs/ChangesetECAdaptor.js.map +1 -1
  18. package/lib/cjs/ChangesetReader.d.ts +84 -1
  19. package/lib/cjs/ChangesetReader.d.ts.map +1 -1
  20. package/lib/cjs/ChangesetReader.js +108 -12
  21. package/lib/cjs/ChangesetReader.js.map +1 -1
  22. package/lib/cjs/ChangesetReaderTypes.js.map +1 -1
  23. package/lib/cjs/ChannelControl.js.map +1 -1
  24. package/lib/cjs/CheckpointManager.js.map +1 -1
  25. package/lib/cjs/ClassRegistry.d.ts +3 -3
  26. package/lib/cjs/ClassRegistry.js +8 -8
  27. package/lib/cjs/ClassRegistry.js.map +1 -1
  28. package/lib/cjs/CloudSqlite.js.map +1 -1
  29. package/lib/cjs/CodeService.js.map +1 -1
  30. package/lib/cjs/CodeSpecs.d.ts +3 -3
  31. package/lib/cjs/CodeSpecs.js.map +1 -1
  32. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  33. package/lib/cjs/CustomViewState3dCreator.js.map +1 -1
  34. package/lib/cjs/DevTools.js.map +1 -1
  35. package/lib/cjs/DisplayStyle.d.ts +2 -2
  36. package/lib/cjs/DisplayStyle.js.map +1 -1
  37. package/lib/cjs/ECDb.js.map +1 -1
  38. package/lib/cjs/ECSchemaXmlContext.js.map +1 -1
  39. package/lib/cjs/ECSqlRowExecutor.js.map +1 -1
  40. package/lib/cjs/ECSqlStatement.d.ts.map +1 -1
  41. package/lib/cjs/ECSqlStatement.js +4 -0
  42. package/lib/cjs/ECSqlStatement.js.map +1 -1
  43. package/lib/cjs/ECSqlSyncReader.d.ts.map +1 -1
  44. package/lib/cjs/ECSqlSyncReader.js +1 -0
  45. package/lib/cjs/ECSqlSyncReader.js.map +1 -1
  46. package/lib/cjs/EditTxn.js.map +1 -1
  47. package/lib/cjs/Element.d.ts +16 -13
  48. package/lib/cjs/Element.d.ts.map +1 -1
  49. package/lib/cjs/Element.js +8 -5
  50. package/lib/cjs/Element.js.map +1 -1
  51. package/lib/cjs/ElementAspect.d.ts +1 -1
  52. package/lib/cjs/ElementAspect.js.map +1 -1
  53. package/lib/cjs/ElementGraphics.js.map +1 -1
  54. package/lib/cjs/ElementTreeWalker.d.ts +5 -5
  55. package/lib/cjs/ElementTreeWalker.js.map +1 -1
  56. package/lib/cjs/Entity.d.ts +13 -5
  57. package/lib/cjs/Entity.d.ts.map +1 -1
  58. package/lib/cjs/Entity.js +13 -5
  59. package/lib/cjs/Entity.js.map +1 -1
  60. package/lib/cjs/EntityReferences.js.map +1 -1
  61. package/lib/cjs/ExportGraphics.js.map +1 -1
  62. package/lib/cjs/ExternalSource.d.ts +2 -2
  63. package/lib/cjs/ExternalSource.js.map +1 -1
  64. package/lib/cjs/FontFile.js.map +1 -1
  65. package/lib/cjs/GeoCoordConfig.js.map +1 -1
  66. package/lib/cjs/GeographicCRSServices.js.map +1 -1
  67. package/lib/cjs/GeometrySummary.js +47 -47
  68. package/lib/cjs/GeometrySummary.js.map +1 -1
  69. package/lib/cjs/IModelDb.d.ts +112 -40
  70. package/lib/cjs/IModelDb.d.ts.map +1 -1
  71. package/lib/cjs/IModelDb.js +223 -50
  72. package/lib/cjs/IModelDb.js.map +1 -1
  73. package/lib/cjs/IModelDbFonts.js.map +1 -1
  74. package/lib/cjs/IModelElementCloneContext.js.map +1 -1
  75. package/lib/cjs/IModelHost.js.map +1 -1
  76. package/lib/cjs/IModelIncrementalSchemaLocater.js.map +1 -1
  77. package/lib/cjs/IModelJsFs.js.map +1 -1
  78. package/lib/cjs/ImageSourceConversion.js.map +1 -1
  79. package/lib/cjs/IpcHost.js.map +1 -1
  80. package/lib/cjs/LineStyle.d.ts +6 -6
  81. package/lib/cjs/LineStyle.js.map +1 -1
  82. package/lib/cjs/LocalHub.d.ts +6 -0
  83. package/lib/cjs/LocalHub.d.ts.map +1 -1
  84. package/lib/cjs/LocalHub.js +24 -1
  85. package/lib/cjs/LocalHub.js.map +1 -1
  86. package/lib/cjs/LocalhostIpcHost.js.map +1 -1
  87. package/lib/cjs/LockControl.js.map +1 -1
  88. package/lib/cjs/Material.d.ts +1 -1
  89. package/lib/cjs/Material.js.map +1 -1
  90. package/lib/cjs/Model.d.ts +6 -6
  91. package/lib/cjs/Model.js.map +1 -1
  92. package/lib/cjs/NativeAppStorage.js.map +1 -1
  93. package/lib/cjs/NativeHost.js.map +1 -1
  94. package/lib/cjs/NavigationRelationship.js.map +1 -1
  95. package/lib/cjs/PartialChangeUnifier.js +7 -7
  96. package/lib/cjs/PartialChangeUnifier.js.map +1 -1
  97. package/lib/cjs/PromiseMemoizer.js.map +1 -1
  98. package/lib/cjs/PropertyStore.js.map +1 -1
  99. package/lib/cjs/Relationship.d.ts +13 -11
  100. package/lib/cjs/Relationship.d.ts.map +1 -1
  101. package/lib/cjs/Relationship.js +9 -7
  102. package/lib/cjs/Relationship.js.map +1 -1
  103. package/lib/cjs/RpcBackend.js.map +1 -1
  104. package/lib/cjs/SQLiteDb.js.map +1 -1
  105. package/lib/cjs/Schema.js.map +1 -1
  106. package/lib/cjs/SchemaSync.js.map +1 -1
  107. package/lib/cjs/SchemaUtils.js.map +1 -1
  108. package/lib/cjs/SheetIndex.d.ts +4 -4
  109. package/lib/cjs/SheetIndex.js.map +1 -1
  110. package/lib/cjs/SqliteChangesetReader.js.map +1 -1
  111. package/lib/cjs/SqliteStatement.js.map +1 -1
  112. package/lib/cjs/StashManager.js.map +1 -1
  113. package/lib/cjs/Texture.d.ts +1 -1
  114. package/lib/cjs/Texture.js.map +1 -1
  115. package/lib/cjs/TileStorage.js.map +1 -1
  116. package/lib/cjs/TxnManager.d.ts.map +1 -1
  117. package/lib/cjs/TxnManager.js +7 -0
  118. package/lib/cjs/TxnManager.js.map +1 -1
  119. package/lib/cjs/ViewDefinition.d.ts +6 -6
  120. package/lib/cjs/ViewDefinition.js.map +1 -1
  121. package/lib/cjs/ViewStateHydrator.js.map +1 -1
  122. package/lib/cjs/ViewStore.js.map +1 -1
  123. package/lib/cjs/annotations/ElementDrivesTextAnnotation.d.ts +1 -1
  124. package/lib/cjs/annotations/ElementDrivesTextAnnotation.js.map +1 -1
  125. package/lib/cjs/annotations/FrameGeometry.d.ts.map +1 -1
  126. package/lib/cjs/annotations/FrameGeometry.js +2 -3
  127. package/lib/cjs/annotations/FrameGeometry.js.map +1 -1
  128. package/lib/cjs/annotations/LeaderGeometry.js.map +1 -1
  129. package/lib/cjs/annotations/TextAnnotationElement.js.map +1 -1
  130. package/lib/cjs/annotations/TextAnnotationGeometry.js.map +1 -1
  131. package/lib/cjs/annotations/TextBlockGeometry.js.map +1 -1
  132. package/lib/cjs/annotations/TextBlockLayout.js.map +1 -1
  133. package/lib/cjs/assets/IModelChange.02.00.00.ecschema.xml +90 -90
  134. package/lib/cjs/assets/Settings/Schemas/Base.Schema.json +36 -32
  135. package/lib/cjs/assets/Settings/Schemas/Gcs.schema.json +28 -27
  136. package/lib/cjs/assets/Settings/Schemas/Workspace.Schema.json +94 -94
  137. package/lib/cjs/assets/Settings/backend.setting.json5 +21 -21
  138. package/lib/cjs/core-backend.js.map +1 -1
  139. package/lib/cjs/domains/FunctionalElements.d.ts +1 -1
  140. package/lib/cjs/domains/FunctionalElements.js.map +1 -1
  141. package/lib/cjs/domains/FunctionalSchema.js.map +1 -1
  142. package/lib/cjs/domains/GenericElements.d.ts +2 -2
  143. package/lib/cjs/domains/GenericElements.js.map +1 -1
  144. package/lib/cjs/domains/GenericSchema.js.map +1 -1
  145. package/lib/cjs/internal/ChangesetConflictArgs.js.map +1 -1
  146. package/lib/cjs/internal/ChannelAdmin.d.ts +2 -2
  147. package/lib/cjs/internal/ChannelAdmin.js.map +1 -1
  148. package/lib/cjs/internal/ElementLRUCache.d.ts.map +1 -1
  149. package/lib/cjs/internal/ElementLRUCache.js +23 -4
  150. package/lib/cjs/internal/ElementLRUCache.js.map +1 -1
  151. package/lib/cjs/internal/FontFileImpl.js.map +1 -1
  152. package/lib/cjs/internal/HubMock.d.ts +24 -1
  153. package/lib/cjs/internal/HubMock.d.ts.map +1 -1
  154. package/lib/cjs/internal/HubMock.js +60 -39
  155. package/lib/cjs/internal/HubMock.js.map +1 -1
  156. package/lib/cjs/internal/IModelDbFontsImpl.js.map +1 -1
  157. package/lib/cjs/internal/IntegrityCheck.js.map +1 -1
  158. package/lib/cjs/internal/NativePlatform.js.map +1 -1
  159. package/lib/cjs/internal/NoLocks.js.map +1 -1
  160. package/lib/cjs/internal/OnlineStatus.js.map +1 -1
  161. package/lib/cjs/internal/ServerBasedLocks.d.ts +19 -1
  162. package/lib/cjs/internal/ServerBasedLocks.d.ts.map +1 -1
  163. package/lib/cjs/internal/ServerBasedLocks.js +88 -34
  164. package/lib/cjs/internal/ServerBasedLocks.js.map +1 -1
  165. package/lib/cjs/internal/Symbols.js.map +1 -1
  166. package/lib/cjs/internal/annotations/fields.js.map +1 -1
  167. package/lib/cjs/internal/cross-package.d.ts +1 -1
  168. package/lib/cjs/internal/cross-package.d.ts.map +1 -1
  169. package/lib/cjs/internal/cross-package.js +1 -2
  170. package/lib/cjs/internal/cross-package.js.map +1 -1
  171. package/lib/cjs/internal/workspace/SettingsEditorImpl.js.map +1 -1
  172. package/lib/cjs/internal/workspace/SettingsImpl.js.map +1 -1
  173. package/lib/cjs/internal/workspace/SettingsSchemasImpl.d.ts.map +1 -1
  174. package/lib/cjs/internal/workspace/SettingsSchemasImpl.js +55 -9
  175. package/lib/cjs/internal/workspace/SettingsSchemasImpl.js.map +1 -1
  176. package/lib/cjs/internal/workspace/WorkspaceImpl.d.ts.map +1 -1
  177. package/lib/cjs/internal/workspace/WorkspaceImpl.js +7 -11
  178. package/lib/cjs/internal/workspace/WorkspaceImpl.js.map +1 -1
  179. package/lib/cjs/internal/workspace/WorkspaceSqliteDb.js.map +1 -1
  180. package/lib/cjs/rpc/multipart.js.map +1 -1
  181. package/lib/cjs/rpc/tracing.js.map +1 -1
  182. package/lib/cjs/rpc/web/logging.js.map +1 -1
  183. package/lib/cjs/rpc/web/request.js.map +1 -1
  184. package/lib/cjs/rpc/web/response.js.map +1 -1
  185. package/lib/cjs/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  186. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  187. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  188. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  189. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  190. package/lib/cjs/workspace/Settings.js.map +1 -1
  191. package/lib/cjs/workspace/SettingsDb.js.map +1 -1
  192. package/lib/cjs/workspace/SettingsEditor.js.map +1 -1
  193. package/lib/cjs/workspace/SettingsSchemas.d.ts +20 -3
  194. package/lib/cjs/workspace/SettingsSchemas.d.ts.map +1 -1
  195. package/lib/cjs/workspace/SettingsSchemas.js.map +1 -1
  196. package/lib/cjs/workspace/Workspace.d.ts +13 -1
  197. package/lib/cjs/workspace/Workspace.d.ts.map +1 -1
  198. package/lib/cjs/workspace/Workspace.js.map +1 -1
  199. package/lib/cjs/workspace/WorkspaceEditor.js.map +1 -1
  200. package/lib/esm/BackendHubAccess.js.map +1 -1
  201. package/lib/esm/BackendLoggerCategory.js.map +1 -1
  202. package/lib/esm/BisCoreSchema.js.map +1 -1
  203. package/lib/esm/BlobContainerService.js.map +1 -1
  204. package/lib/esm/BriefcaseManager.d.ts +8 -1
  205. package/lib/esm/BriefcaseManager.d.ts.map +1 -1
  206. package/lib/esm/BriefcaseManager.js.map +1 -1
  207. package/lib/esm/CatalogDb.js.map +1 -1
  208. package/lib/esm/Category.d.ts +4 -4
  209. package/lib/esm/Category.js.map +1 -1
  210. package/lib/esm/ChangeSummaryManager.js +2 -2
  211. package/lib/esm/ChangeSummaryManager.js.map +1 -1
  212. package/lib/esm/ChangedElementsDb.js.map +1 -1
  213. package/lib/esm/ChangesetECAdaptor.d.ts +6 -6
  214. package/lib/esm/ChangesetECAdaptor.js +252 -252
  215. package/lib/esm/ChangesetECAdaptor.js.map +1 -1
  216. package/lib/esm/ChangesetReader.d.ts +84 -1
  217. package/lib/esm/ChangesetReader.d.ts.map +1 -1
  218. package/lib/esm/ChangesetReader.js +108 -12
  219. package/lib/esm/ChangesetReader.js.map +1 -1
  220. package/lib/esm/ChangesetReaderTypes.js.map +1 -1
  221. package/lib/esm/ChannelControl.js.map +1 -1
  222. package/lib/esm/CheckpointManager.js.map +1 -1
  223. package/lib/esm/ClassRegistry.d.ts +3 -3
  224. package/lib/esm/ClassRegistry.js +8 -8
  225. package/lib/esm/ClassRegistry.js.map +1 -1
  226. package/lib/esm/CloudSqlite.js.map +1 -1
  227. package/lib/esm/CodeService.js.map +1 -1
  228. package/lib/esm/CodeSpecs.d.ts +3 -3
  229. package/lib/esm/CodeSpecs.js.map +1 -1
  230. package/lib/esm/ConcurrentQuery.js.map +1 -1
  231. package/lib/esm/CustomViewState3dCreator.js.map +1 -1
  232. package/lib/esm/DevTools.js.map +1 -1
  233. package/lib/esm/DisplayStyle.d.ts +2 -2
  234. package/lib/esm/DisplayStyle.js.map +1 -1
  235. package/lib/esm/ECDb.js.map +1 -1
  236. package/lib/esm/ECSchemaXmlContext.js.map +1 -1
  237. package/lib/esm/ECSqlRowExecutor.js.map +1 -1
  238. package/lib/esm/ECSqlStatement.d.ts.map +1 -1
  239. package/lib/esm/ECSqlStatement.js +4 -0
  240. package/lib/esm/ECSqlStatement.js.map +1 -1
  241. package/lib/esm/ECSqlSyncReader.d.ts.map +1 -1
  242. package/lib/esm/ECSqlSyncReader.js +1 -0
  243. package/lib/esm/ECSqlSyncReader.js.map +1 -1
  244. package/lib/esm/EditTxn.js.map +1 -1
  245. package/lib/esm/Element.d.ts +16 -13
  246. package/lib/esm/Element.d.ts.map +1 -1
  247. package/lib/esm/Element.js +8 -5
  248. package/lib/esm/Element.js.map +1 -1
  249. package/lib/esm/ElementAspect.d.ts +1 -1
  250. package/lib/esm/ElementAspect.js.map +1 -1
  251. package/lib/esm/ElementGraphics.js.map +1 -1
  252. package/lib/esm/ElementTreeWalker.d.ts +5 -5
  253. package/lib/esm/ElementTreeWalker.js.map +1 -1
  254. package/lib/esm/Entity.d.ts +13 -5
  255. package/lib/esm/Entity.d.ts.map +1 -1
  256. package/lib/esm/Entity.js +13 -5
  257. package/lib/esm/Entity.js.map +1 -1
  258. package/lib/esm/EntityReferences.js.map +1 -1
  259. package/lib/esm/ExportGraphics.js.map +1 -1
  260. package/lib/esm/ExternalSource.d.ts +2 -2
  261. package/lib/esm/ExternalSource.js.map +1 -1
  262. package/lib/esm/FontFile.js.map +1 -1
  263. package/lib/esm/GeoCoordConfig.js.map +1 -1
  264. package/lib/esm/GeographicCRSServices.js.map +1 -1
  265. package/lib/esm/GeometrySummary.js +47 -47
  266. package/lib/esm/GeometrySummary.js.map +1 -1
  267. package/lib/esm/IModelDb.d.ts +112 -40
  268. package/lib/esm/IModelDb.d.ts.map +1 -1
  269. package/lib/esm/IModelDb.js +224 -51
  270. package/lib/esm/IModelDb.js.map +1 -1
  271. package/lib/esm/IModelDbFonts.js.map +1 -1
  272. package/lib/esm/IModelElementCloneContext.js.map +1 -1
  273. package/lib/esm/IModelHost.js.map +1 -1
  274. package/lib/esm/IModelIncrementalSchemaLocater.js.map +1 -1
  275. package/lib/esm/IModelJsFs.js.map +1 -1
  276. package/lib/esm/ImageSourceConversion.js.map +1 -1
  277. package/lib/esm/IpcHost.js.map +1 -1
  278. package/lib/esm/LineStyle.d.ts +6 -6
  279. package/lib/esm/LineStyle.js.map +1 -1
  280. package/lib/esm/LocalHub.d.ts +6 -0
  281. package/lib/esm/LocalHub.d.ts.map +1 -1
  282. package/lib/esm/LocalHub.js +24 -1
  283. package/lib/esm/LocalHub.js.map +1 -1
  284. package/lib/esm/LocalhostIpcHost.js.map +1 -1
  285. package/lib/esm/LockControl.js.map +1 -1
  286. package/lib/esm/Material.d.ts +1 -1
  287. package/lib/esm/Material.js.map +1 -1
  288. package/lib/esm/Model.d.ts +6 -6
  289. package/lib/esm/Model.js.map +1 -1
  290. package/lib/esm/NativeAppStorage.js.map +1 -1
  291. package/lib/esm/NativeHost.js.map +1 -1
  292. package/lib/esm/NavigationRelationship.js.map +1 -1
  293. package/lib/esm/PartialChangeUnifier.js +7 -7
  294. package/lib/esm/PartialChangeUnifier.js.map +1 -1
  295. package/lib/esm/PromiseMemoizer.js.map +1 -1
  296. package/lib/esm/PropertyStore.js.map +1 -1
  297. package/lib/esm/Relationship.d.ts +13 -11
  298. package/lib/esm/Relationship.d.ts.map +1 -1
  299. package/lib/esm/Relationship.js +9 -7
  300. package/lib/esm/Relationship.js.map +1 -1
  301. package/lib/esm/RpcBackend.js.map +1 -1
  302. package/lib/esm/SQLiteDb.js.map +1 -1
  303. package/lib/esm/Schema.js.map +1 -1
  304. package/lib/esm/SchemaSync.js.map +1 -1
  305. package/lib/esm/SchemaUtils.js.map +1 -1
  306. package/lib/esm/SheetIndex.d.ts +4 -4
  307. package/lib/esm/SheetIndex.js.map +1 -1
  308. package/lib/esm/SqliteChangesetReader.js.map +1 -1
  309. package/lib/esm/SqliteStatement.js.map +1 -1
  310. package/lib/esm/StashManager.js.map +1 -1
  311. package/lib/esm/Texture.d.ts +1 -1
  312. package/lib/esm/Texture.js.map +1 -1
  313. package/lib/esm/TileStorage.js.map +1 -1
  314. package/lib/esm/TxnManager.d.ts.map +1 -1
  315. package/lib/esm/TxnManager.js +7 -0
  316. package/lib/esm/TxnManager.js.map +1 -1
  317. package/lib/esm/ViewDefinition.d.ts +6 -6
  318. package/lib/esm/ViewDefinition.js.map +1 -1
  319. package/lib/esm/ViewStateHydrator.js.map +1 -1
  320. package/lib/esm/ViewStore.js.map +1 -1
  321. package/lib/esm/annotations/ElementDrivesTextAnnotation.d.ts +1 -1
  322. package/lib/esm/annotations/ElementDrivesTextAnnotation.js.map +1 -1
  323. package/lib/esm/annotations/FrameGeometry.d.ts.map +1 -1
  324. package/lib/esm/annotations/FrameGeometry.js +2 -3
  325. package/lib/esm/annotations/FrameGeometry.js.map +1 -1
  326. package/lib/esm/annotations/LeaderGeometry.js.map +1 -1
  327. package/lib/esm/annotations/TextAnnotationElement.js.map +1 -1
  328. package/lib/esm/annotations/TextAnnotationGeometry.js.map +1 -1
  329. package/lib/esm/annotations/TextBlockGeometry.js.map +1 -1
  330. package/lib/esm/annotations/TextBlockLayout.js.map +1 -1
  331. package/lib/esm/core-backend.js.map +1 -1
  332. package/lib/esm/domains/FunctionalElements.d.ts +1 -1
  333. package/lib/esm/domains/FunctionalElements.js.map +1 -1
  334. package/lib/esm/domains/FunctionalSchema.js.map +1 -1
  335. package/lib/esm/domains/GenericElements.d.ts +2 -2
  336. package/lib/esm/domains/GenericElements.js.map +1 -1
  337. package/lib/esm/domains/GenericSchema.js.map +1 -1
  338. package/lib/esm/internal/ChangesetConflictArgs.js.map +1 -1
  339. package/lib/esm/internal/ChannelAdmin.d.ts +2 -2
  340. package/lib/esm/internal/ChannelAdmin.js.map +1 -1
  341. package/lib/esm/internal/ElementLRUCache.d.ts.map +1 -1
  342. package/lib/esm/internal/ElementLRUCache.js +23 -4
  343. package/lib/esm/internal/ElementLRUCache.js.map +1 -1
  344. package/lib/esm/internal/FontFileImpl.js.map +1 -1
  345. package/lib/esm/internal/HubMock.d.ts +24 -1
  346. package/lib/esm/internal/HubMock.d.ts.map +1 -1
  347. package/lib/esm/internal/HubMock.js +61 -40
  348. package/lib/esm/internal/HubMock.js.map +1 -1
  349. package/lib/esm/internal/IModelDbFontsImpl.js.map +1 -1
  350. package/lib/esm/internal/IntegrityCheck.js.map +1 -1
  351. package/lib/esm/internal/NativePlatform.js.map +1 -1
  352. package/lib/esm/internal/NoLocks.js.map +1 -1
  353. package/lib/esm/internal/OnlineStatus.js.map +1 -1
  354. package/lib/esm/internal/ServerBasedLocks.d.ts +19 -1
  355. package/lib/esm/internal/ServerBasedLocks.d.ts.map +1 -1
  356. package/lib/esm/internal/ServerBasedLocks.js +88 -34
  357. package/lib/esm/internal/ServerBasedLocks.js.map +1 -1
  358. package/lib/esm/internal/Symbols.js.map +1 -1
  359. package/lib/esm/internal/annotations/fields.js.map +1 -1
  360. package/lib/esm/internal/cross-package.d.ts +1 -1
  361. package/lib/esm/internal/cross-package.d.ts.map +1 -1
  362. package/lib/esm/internal/cross-package.js +1 -1
  363. package/lib/esm/internal/cross-package.js.map +1 -1
  364. package/lib/esm/internal/workspace/SettingsEditorImpl.js.map +1 -1
  365. package/lib/esm/internal/workspace/SettingsImpl.js.map +1 -1
  366. package/lib/esm/internal/workspace/SettingsSchemasImpl.d.ts.map +1 -1
  367. package/lib/esm/internal/workspace/SettingsSchemasImpl.js +55 -9
  368. package/lib/esm/internal/workspace/SettingsSchemasImpl.js.map +1 -1
  369. package/lib/esm/internal/workspace/WorkspaceImpl.d.ts.map +1 -1
  370. package/lib/esm/internal/workspace/WorkspaceImpl.js +7 -11
  371. package/lib/esm/internal/workspace/WorkspaceImpl.js.map +1 -1
  372. package/lib/esm/internal/workspace/WorkspaceSqliteDb.js.map +1 -1
  373. package/lib/esm/rpc/multipart.js.map +1 -1
  374. package/lib/esm/rpc/tracing.js.map +1 -1
  375. package/lib/esm/rpc/web/logging.js.map +1 -1
  376. package/lib/esm/rpc/web/request.js.map +1 -1
  377. package/lib/esm/rpc/web/response.js.map +1 -1
  378. package/lib/esm/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  379. package/lib/esm/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  380. package/lib/esm/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  381. package/lib/esm/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  382. package/lib/esm/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  383. package/lib/esm/test/AdvancedEqual.js.map +1 -1
  384. package/lib/esm/test/AnnotationTestUtils.js.map +1 -1
  385. package/lib/esm/test/AttachDb.test.js +11 -11
  386. package/lib/esm/test/AttachDb.test.js.map +1 -1
  387. package/lib/esm/test/ElementDrivesElement.test.js +23 -23
  388. package/lib/esm/test/ElementDrivesElement.test.js.map +1 -1
  389. package/lib/esm/test/ElementLRUCache.test.js +60 -0
  390. package/lib/esm/test/ElementLRUCache.test.js.map +1 -1
  391. package/lib/esm/test/GeometryTestUtil.js.map +1 -1
  392. package/lib/esm/test/IModelHost.test.js.map +1 -1
  393. package/lib/esm/test/IModelTestUtils.js.map +1 -1
  394. package/lib/esm/test/ImageSourceConversion.test.js.map +1 -1
  395. package/lib/esm/test/IpcHost.test.js.map +1 -1
  396. package/lib/esm/test/KnownTestLocations.js.map +1 -1
  397. package/lib/esm/test/PrintElementTree.js.map +1 -1
  398. package/lib/esm/test/PropertyDb.test.js.map +1 -1
  399. package/lib/esm/test/RevisionUtility.js.map +1 -1
  400. package/lib/esm/test/SchemaChangesetCanBeReversed.test.d.ts +2 -0
  401. package/lib/esm/test/SchemaChangesetCanBeReversed.test.d.ts.map +1 -0
  402. package/lib/esm/test/SchemaChangesetCanBeReversed.test.js +239 -0
  403. package/lib/esm/test/SchemaChangesetCanBeReversed.test.js.map +1 -0
  404. package/lib/esm/test/SchemaUtils.test.js +25 -25
  405. package/lib/esm/test/SchemaUtils.test.js.map +1 -1
  406. package/lib/esm/test/SequentialLogMatcher.js.map +1 -1
  407. package/lib/esm/test/SquashSchemaAndDataChanges.test.js +129 -129
  408. package/lib/esm/test/SquashSchemaAndDataChanges.test.js.map +1 -1
  409. package/lib/esm/test/TestChangeSetUtility.js.map +1 -1
  410. package/lib/esm/test/TestEditTxn.js.map +1 -1
  411. package/lib/esm/test/TestUtils.js.map +1 -1
  412. package/lib/esm/test/annotations/Fields.test.js +53 -53
  413. package/lib/esm/test/annotations/Fields.test.js.map +1 -1
  414. package/lib/esm/test/annotations/FrameGeometry.test.js +2 -1
  415. package/lib/esm/test/annotations/FrameGeometry.test.js.map +1 -1
  416. package/lib/esm/test/annotations/LeaderGeometry.test.js.map +1 -1
  417. package/lib/esm/test/annotations/TextAnnotation.test.js.map +1 -1
  418. package/lib/esm/test/annotations/TextBlock.test.js.map +1 -1
  419. package/lib/esm/test/assets/IncrementalSchemaLocater/configs/old.config.js.map +1 -1
  420. package/lib/esm/test/assets/IncrementalSchemaLocater/configs/simple.config.js.map +1 -1
  421. package/lib/esm/test/categories/Category.test.js.map +1 -1
  422. package/lib/esm/test/codespec/CodeSpec.test.js.map +1 -1
  423. package/lib/esm/test/ecdb/CTE.test.js +89 -88
  424. package/lib/esm/test/ecdb/CTE.test.js.map +1 -1
  425. package/lib/esm/test/ecdb/ConcurrentQuery.test.js +19 -19
  426. package/lib/esm/test/ecdb/ConcurrentQuery.test.js.map +1 -1
  427. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.js +15 -15
  428. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.js.map +1 -1
  429. package/lib/esm/test/ecdb/ECDb.test.js +72 -72
  430. package/lib/esm/test/ecdb/ECDb.test.js.map +1 -1
  431. package/lib/esm/test/ecdb/ECDbTestHelper.js.map +1 -1
  432. package/lib/esm/test/ecdb/ECSchemaXmlContext.test.js.map +1 -1
  433. package/lib/esm/test/ecdb/ECSqlAst.test.js +65 -65
  434. package/lib/esm/test/ecdb/ECSqlAst.test.js.map +1 -1
  435. package/lib/esm/test/ecdb/ECSqlQuery.test.js +14 -6
  436. package/lib/esm/test/ecdb/ECSqlQuery.test.js.map +1 -1
  437. package/lib/esm/test/ecdb/ECSqlStatement.test.js +342 -332
  438. package/lib/esm/test/ecdb/ECSqlStatement.test.js.map +1 -1
  439. package/lib/esm/test/ecdb/ECSqlSyncReader.test.js +1 -0
  440. package/lib/esm/test/ecdb/ECSqlSyncReader.test.js.map +1 -1
  441. package/lib/esm/test/ecdb/QueryReaders.test.js +44 -31
  442. package/lib/esm/test/ecdb/QueryReaders.test.js.map +1 -1
  443. package/lib/esm/test/ecdb/SqliteStatement.test.js.map +1 -1
  444. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.js.map +1 -1
  445. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.js +21 -21
  446. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.js.map +1 -1
  447. package/lib/esm/test/ecsql/src/ECSqlTestParser.js.map +1 -1
  448. package/lib/esm/test/ecsql/src/ECSqlTestRunner.test.js +1 -0
  449. package/lib/esm/test/ecsql/src/ECSqlTestRunner.test.js.map +1 -1
  450. package/lib/esm/test/element/DeleteDefinitionElements.test.js +6 -2
  451. package/lib/esm/test/element/DeleteDefinitionElements.test.js.map +1 -1
  452. package/lib/esm/test/element/ElementAspect.test.js +22 -22
  453. package/lib/esm/test/element/ElementAspect.test.js.map +1 -1
  454. package/lib/esm/test/element/ElementDependencyGraph.test.js.map +1 -1
  455. package/lib/esm/test/element/ElementRoundTrip.test.js +144 -139
  456. package/lib/esm/test/element/ElementRoundTrip.test.js.map +1 -1
  457. package/lib/esm/test/element/ExcludedElements.test.js +1 -0
  458. package/lib/esm/test/element/ExcludedElements.test.js.map +1 -1
  459. package/lib/esm/test/element/ExternalSource.test.js.map +1 -1
  460. package/lib/esm/test/element/NullStructArray.test.js +13 -13
  461. package/lib/esm/test/element/NullStructArray.test.js.map +1 -1
  462. package/lib/esm/test/element/ProjectInformationRecord.test.js.map +1 -1
  463. package/lib/esm/test/element/SheetInformationAspect.test.js.map +1 -1
  464. package/lib/esm/test/element/UrlLink.test.js.map +1 -1
  465. package/lib/esm/test/font/FontFile.test.js.map +1 -1
  466. package/lib/esm/test/font/IModelDbFonts.test.js.map +1 -1
  467. package/lib/esm/test/hubaccess/ApplyChangeset.test.js +42 -32
  468. package/lib/esm/test/hubaccess/ApplyChangeset.test.js.map +1 -1
  469. package/lib/esm/test/hubaccess/BriefcaseManager.test.js.map +1 -1
  470. package/lib/esm/test/hubaccess/CheckpointManager.test.js.map +1 -1
  471. package/lib/esm/test/hubaccess/Rebase.test.js +56 -56
  472. package/lib/esm/test/hubaccess/Rebase.test.js.map +1 -1
  473. package/lib/esm/test/hubaccess/SemanticRebase.test.js +346 -345
  474. package/lib/esm/test/hubaccess/SemanticRebase.test.js.map +1 -1
  475. package/lib/esm/test/imageData.js.map +1 -1
  476. package/lib/esm/test/imodel/Code.test.js.map +1 -1
  477. package/lib/esm/test/imodel/ElementTreeWalker.test.js.map +1 -1
  478. package/lib/esm/test/imodel/GetTextureImage.test.js.map +1 -1
  479. package/lib/esm/test/imodel/IModel.test.js +75 -44
  480. package/lib/esm/test/imodel/IModel.test.js.map +1 -1
  481. package/lib/esm/test/imodel/ProjectExtents.test.js.map +1 -1
  482. package/lib/esm/test/imodel/SchemaXmlImport.test.js +21 -21
  483. package/lib/esm/test/imodel/SchemaXmlImport.test.js.map +1 -1
  484. package/lib/esm/test/incrementalSchemaLocater/ECSqlQueries.test.js.map +1 -1
  485. package/lib/esm/test/incrementalSchemaLocater/IncrementalLoading.test.js.map +1 -1
  486. package/lib/esm/test/incrementalSchemaLocater/TestContext.js.map +1 -1
  487. package/lib/esm/test/index.js.map +1 -1
  488. package/lib/esm/test/misc/DevTools.test.js.map +1 -1
  489. package/lib/esm/test/misc/EntitySubClasses.test.js.map +1 -1
  490. package/lib/esm/test/misc/GeoServices.test.js.map +1 -1
  491. package/lib/esm/test/misc/PromiseMemoizer.test.js.map +1 -1
  492. package/lib/esm/test/native/DgnDbWorker.test.js.map +1 -1
  493. package/lib/esm/test/rpc/response.test.js.map +1 -1
  494. package/lib/esm/test/schema/ClassRegistry.test.js +102 -99
  495. package/lib/esm/test/schema/ClassRegistry.test.js.map +1 -1
  496. package/lib/esm/test/schema/FunctionalDomain.test.js.map +1 -1
  497. package/lib/esm/test/schema/GenericDomain.test.js.map +1 -1
  498. package/lib/esm/test/schema/IModelSchemaContext.test.js +11 -9
  499. package/lib/esm/test/schema/IModelSchemaContext.test.js.map +1 -1
  500. package/lib/esm/test/schema/SchemaImportCallbacks.test.js +19 -19
  501. package/lib/esm/test/schema/SchemaImportCallbacks.test.js.map +1 -1
  502. package/lib/esm/test/schema/SchemaViewHidden.test.d.ts +2 -0
  503. package/lib/esm/test/schema/SchemaViewHidden.test.d.ts.map +1 -0
  504. package/lib/esm/test/schema/SchemaViewHidden.test.js +275 -0
  505. package/lib/esm/test/schema/SchemaViewHidden.test.js.map +1 -0
  506. package/lib/esm/test/schema/SchemaViewKoQ.test.d.ts +2 -0
  507. package/lib/esm/test/schema/SchemaViewKoQ.test.d.ts.map +1 -0
  508. package/lib/esm/test/schema/SchemaViewKoQ.test.js +184 -0
  509. package/lib/esm/test/schema/SchemaViewKoQ.test.js.map +1 -0
  510. package/lib/esm/test/schema/SchemaViewLifecycle.test.d.ts +2 -0
  511. package/lib/esm/test/schema/SchemaViewLifecycle.test.d.ts.map +1 -0
  512. package/lib/esm/test/schema/SchemaViewLifecycle.test.js +141 -0
  513. package/lib/esm/test/schema/SchemaViewLifecycle.test.js.map +1 -0
  514. package/lib/esm/test/schema/SchemaViewValidation.test.d.ts +2 -0
  515. package/lib/esm/test/schema/SchemaViewValidation.test.d.ts.map +1 -0
  516. package/lib/esm/test/schema/SchemaViewValidation.test.js +475 -0
  517. package/lib/esm/test/schema/SchemaViewValidation.test.js.map +1 -0
  518. package/lib/esm/test/sheetindex/SheetIndex.test.js.map +1 -1
  519. package/lib/esm/test/standalone/ChangeMerge.test.js.map +1 -1
  520. package/lib/esm/test/standalone/ChangesetReader.test.js +1191 -583
  521. package/lib/esm/test/standalone/ChangesetReader.test.js.map +1 -1
  522. package/lib/esm/test/standalone/CustomViewState3dCreator.test.js.map +1 -1
  523. package/lib/esm/test/standalone/DeleteElements.test.js +45 -0
  524. package/lib/esm/test/standalone/DeleteElements.test.js.map +1 -1
  525. package/lib/esm/test/standalone/DisplayStyle.test.js.map +1 -1
  526. package/lib/esm/test/standalone/Drawing.test.js.map +1 -1
  527. package/lib/esm/test/standalone/EditTxn.test.js.map +1 -1
  528. package/lib/esm/test/standalone/ElementGraphics.test.js.map +1 -1
  529. package/lib/esm/test/standalone/ElementMesh.test.js.map +1 -1
  530. package/lib/esm/test/standalone/ExportGraphics.test.js +14 -14
  531. package/lib/esm/test/standalone/ExportGraphics.test.js.map +1 -1
  532. package/lib/esm/test/standalone/GeometryChangeEvents.test.js.map +1 -1
  533. package/lib/esm/test/standalone/GeometryStream.test.js.map +1 -1
  534. package/lib/esm/test/standalone/HubMock.test.js.map +1 -1
  535. package/lib/esm/test/standalone/IModelLimits.test.js.map +1 -1
  536. package/lib/esm/test/standalone/IModelWrite.test.js +33 -27
  537. package/lib/esm/test/standalone/IModelWrite.test.js.map +1 -1
  538. package/lib/esm/test/standalone/ITwinWorkspace.test.js.map +1 -1
  539. package/lib/esm/test/standalone/InlineGeometryPartReferences.test.js.map +1 -1
  540. package/lib/esm/test/standalone/IntegrityCheck.test.js.map +1 -1
  541. package/lib/esm/test/standalone/MergeConflict.test.js.map +1 -1
  542. package/lib/esm/test/standalone/NativeAppStorage.test.js.map +1 -1
  543. package/lib/esm/test/standalone/RenderMaterialElement.test.js.map +1 -1
  544. package/lib/esm/test/standalone/RenderTimeline.test.js.map +1 -1
  545. package/lib/esm/test/standalone/SQLiteDb.test.js.map +1 -1
  546. package/lib/esm/test/standalone/SQliteChangesetReaderAndChangesetECAdaptor.test.js +135 -135
  547. package/lib/esm/test/standalone/SQliteChangesetReaderAndChangesetECAdaptor.test.js.map +1 -1
  548. package/lib/esm/test/standalone/SchemaUtils.test.js.map +1 -1
  549. package/lib/esm/test/standalone/SectionDrawing.test.js.map +1 -1
  550. package/lib/esm/test/standalone/ServerBasedLocks.test.js +62 -0
  551. package/lib/esm/test/standalone/ServerBasedLocks.test.js.map +1 -1
  552. package/lib/esm/test/standalone/Setting.test.js.map +1 -1
  553. package/lib/esm/test/standalone/Settings.test.js +2 -0
  554. package/lib/esm/test/standalone/Settings.test.js.map +1 -1
  555. package/lib/esm/test/standalone/SettingsSchemas.test.js +397 -0
  556. package/lib/esm/test/standalone/SettingsSchemas.test.js.map +1 -1
  557. package/lib/esm/test/standalone/SnapshotDb.test.js.map +1 -1
  558. package/lib/esm/test/standalone/StandaloneDb.test.js +20 -20
  559. package/lib/esm/test/standalone/StandaloneDb.test.js.map +1 -1
  560. package/lib/esm/test/standalone/Texture.test.js.map +1 -1
  561. package/lib/esm/test/standalone/TileCache.test.js.map +1 -1
  562. package/lib/esm/test/standalone/TileTree.test.js.map +1 -1
  563. package/lib/esm/test/standalone/TxnManager.test.js.map +1 -1
  564. package/lib/esm/test/standalone/ViewDefinition.test.js.map +1 -1
  565. package/lib/esm/test/standalone/ViewStoreDb.test.js.map +1 -1
  566. package/lib/esm/test/standalone/Workspace.test.js +23 -0
  567. package/lib/esm/test/standalone/Workspace.test.js.map +1 -1
  568. package/lib/esm/test/standalone/iModelDb.test.js.map +1 -1
  569. package/lib/esm/test/workspace/SettingsDb.test.js.map +1 -1
  570. package/lib/esm/workspace/Settings.js.map +1 -1
  571. package/lib/esm/workspace/SettingsDb.js.map +1 -1
  572. package/lib/esm/workspace/SettingsEditor.js.map +1 -1
  573. package/lib/esm/workspace/SettingsSchemas.d.ts +20 -3
  574. package/lib/esm/workspace/SettingsSchemas.d.ts.map +1 -1
  575. package/lib/esm/workspace/SettingsSchemas.js.map +1 -1
  576. package/lib/esm/workspace/Workspace.d.ts +13 -1
  577. package/lib/esm/workspace/Workspace.d.ts.map +1 -1
  578. package/lib/esm/workspace/Workspace.js.map +1 -1
  579. package/lib/esm/workspace/WorkspaceEditor.js.map +1 -1
  580. package/package.json +15 -15
@@ -92,6 +92,7 @@ describe("WithQueryReaderTests", () => {
92
92
  }, undefined, config);
93
93
  });
94
94
  it("checking rowFormat UseJsPropertyNames - values accessed by JavaScript property name", () => {
95
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
95
96
  const config = new QueryOptionsBuilder().setRowFormat(QueryRowFormat.UseJsPropertyNames).getOptions();
96
97
  iModel.withQueryReader("SELECT ECInstanceId, ECClassId FROM bis.Element", (reader) => {
97
98
  assert.isTrue(reader.step());
@@ -1 +1 @@
1
- {"version":3,"file":"ECSqlSyncReader.test.js","sourceRoot":"","sources":["../../../../src/test/ecdb/ECSqlSyncReader.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*--------------------------------------------------------------------------------------------*/\n\nimport { assert, expect } from \"chai\";\nimport { QueryOptionsBuilder, QueryRowFormat } from \"@itwin/core-common\";\nimport { SnapshotDb } from \"../../IModelDb\";\nimport { IModelTestUtils } from \"../IModelTestUtils\";\nimport { Id64 } from \"@itwin/core-bentley\";\n\ndescribe(\"WithQueryReaderTests\", () => {\n let iModel: SnapshotDb;\n\n before(async () => {\n iModel = SnapshotDb.openFile(IModelTestUtils.resolveAssetFile(\"test.bim\"));\n });\n\n after(async () => {\n iModel.close();\n });\n it(\"check behvaiour if we call clearCaches in between\", () => {\n let actualRowCount = 0;\n const expectedInstanceIds = [\"0x1\", \"0xe\", \"0x10\", \"0x11\", \"0x12\",\n \"0x13\", \"0x14\", \"0x15\", \"0x16\", \"0x17\"];\n\n expect(() => iModel.withQueryReader(\"SELECT * FROM bis.Element\", (reader) => {\n let loopCount = 0;\n // First loop - read first 10 rows\n while (loopCount < 10) {\n reader.step()\n actualRowCount++;\n loopCount++;\n assert.isDefined(reader.current[0]);\n assert.equal(reader.current[0], expectedInstanceIds[actualRowCount - 1]);\n }\n assert.equal(loopCount, 10);\n iModel.clearCaches();\n\n reader.step(); // step should fail after clearCaches\n })).to.throw(\"Step failed\");\n });\n it(\"should throw error if we try to step on a closed iModelDb object\", () => {\n const imodelPath = iModel.pathName;\n expect(() => iModel.withQueryReader(\"SELECT * FROM bis.Element\", (reader) => {\n let loopCount = 0;\n while (loopCount < 10) {\n reader.step();\n assert.isDefined(reader.current[0]);\n loopCount++;\n }\n assert.equal(loopCount, 10);\n iModel.close();\n\n iModel = SnapshotDb.openFile(imodelPath);\n assert.isDefined(reader.current[0]);\n reader.step(); // step should fail after iModelDb is closed\n })).to.throw(\"Statement is not prepared\");\n });\n it(\"returning reader from withQueryReader callback should throw error if we try to step on it\", () => {\n const readerObj = iModel.withQueryReader(\"SELECT * FROM bis.Element\", (reader) => {\n reader.step();\n return reader;\n });\n expect(readerObj.current[0]).to.equal(\"0x1\"); // will not throw error as we are just accessing current row\n expect(() => readerObj.step()).to.throw(\"Statement is not prepared\");\n });\n it(\"checking rowFormat unspecified case - values accessed by index\", () => {\n // Default rowFormat is UseECSqlPropertyIndexes: columns are accessed by their SELECT-order index.\n iModel.withQueryReader(\"SELECT ECInstanceId, ECClassId FROM bis.Element\", (reader) => {\n assert.isTrue(reader.step());\n const id: string = reader.current[0];\n const classId: string = reader.current[1];\n assert.isTrue(Id64.isValid(classId));\n assert.isTrue(Id64.isValid(id));\n assert.equal(id, \"0x19\");\n });\n });\n\n it(\"checking rowFormat UseECSqlPropertyIndexes - values accessed by index\", () => {\n const config = new QueryOptionsBuilder().setRowFormat(QueryRowFormat.UseECSqlPropertyIndexes).getOptions();\n iModel.withQueryReader(\"SELECT ECInstanceId, ECClassId FROM bis.Element\", (reader) => {\n assert.isTrue(reader.step());\n // Index 0 → ECInstanceId, index 1 → ECClassId\n const id: string = reader.current[0];\n const classId: string = reader.current[1];\n assert.equal(id, \"0x19\");\n assert.isTrue(Id64.isValid(classId));\n // Swapping column order changes index, not value\n }, undefined, config);\n });\n\n it(\"checking rowFormat UseECSqlPropertyNames - values accessed by ECSQL property name\", () => {\n const config = new QueryOptionsBuilder().setRowFormat(QueryRowFormat.UseECSqlPropertyNames).getOptions();\n iModel.withQueryReader(\"SELECT ECInstanceId, ECClassId FROM bis.Element\", (reader) => {\n assert.isTrue(reader.step());\n const id: string = reader.current.ECInstanceId;\n const classId: string = reader.current.ECClassId;\n assert.equal(id, \"0x19\");\n assert.isTrue(Id64.isValid(classId));\n }, undefined, config);\n });\n\n it(\"checking rowFormat UseJsPropertyNames - values accessed by JavaScript property name\", () => {\n const config = new QueryOptionsBuilder().setRowFormat(QueryRowFormat.UseJsPropertyNames).getOptions();\n iModel.withQueryReader(\"SELECT ECInstanceId, ECClassId FROM bis.Element\", (reader) => {\n assert.isTrue(reader.step());\n // ECInstanceId → id, ECClassId → className (resolved to a fully-qualified class name string)\n const id: string = reader.current.id;\n const className: string = reader.current.className;\n assert.equal(id, \"0x19\");\n // className should be in the form \"SchemaName.ClassName\"\n assert.equal(className, \"BisCore.DrawingCategory\");\n }, undefined, config);\n });\n\n it(\"checking rowFormat UseECSqlPropertyNames with convertClassIdsToClassNames - ECClassId returned as class name string\", () => {\n const config = new QueryOptionsBuilder()\n .setRowFormat(QueryRowFormat.UseECSqlPropertyNames)\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n .setConvertClassIdsToNames(true)\n .getOptions();\n iModel.withQueryReader(\"SELECT ECInstanceId, ECClassId FROM bis.Element\", (reader) => {\n assert.isTrue(reader.step());\n const id: string = reader.current.ECInstanceId;\n const classId: string = reader.current.ECClassId;\n assert.equal(id, \"0x19\");\n // With convertClassIdsToClassNames, ECClassId is resolved to \"SchemaName.ClassName\" instead of an Id\n assert.equal(classId, \"BisCore.DrawingCategory\");\n }, undefined, config);\n });\n});\n"]}
1
+ {"version":3,"file":"ECSqlSyncReader.test.js","sourceRoot":"","sources":["../../../../src/test/ecdb/ECSqlSyncReader.test.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAE3C,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,IAAI,MAAkB,CAAC;IAEvB,MAAM,CAAC,KAAK,IAAI,EAAE;QAChB,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;YAC/D,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAE1C,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,EAAE;YAC1E,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,kCAAkC;YAClC,OAAO,SAAS,GAAG,EAAE,EAAE,CAAC;gBACtB,MAAM,CAAC,IAAI,EAAE,CAAA;gBACb,cAAc,EAAE,CAAC;gBACjB,SAAS,EAAE,CAAC;gBACZ,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;gBACpC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC5B,MAAM,CAAC,WAAW,EAAE,CAAC;YAErB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,qCAAqC;QACtD,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC;QACnC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,EAAE;YAC1E,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,OAAO,SAAS,GAAG,EAAE,EAAE,CAAC;gBACtB,MAAM,CAAC,IAAI,EAAE,CAAC;gBACd,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;gBACpC,SAAS,EAAE,CAAC;YACd,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC5B,MAAM,CAAC,KAAK,EAAE,CAAC;YAEf,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACzC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,4CAA4C;QAC7D,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,2FAA2F,EAAE,GAAG,EAAE;QACnG,MAAM,SAAS,GAAG,MAAM,CAAC,eAAe,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,EAAE;YAC/E,MAAM,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,4DAA4D;QAC1G,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,kGAAkG;QAClG,MAAM,CAAC,eAAe,CAAC,iDAAiD,EAAE,CAAC,MAAM,EAAE,EAAE;YACnF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7B,MAAM,EAAE,GAAW,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,OAAO,GAAW,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YAChC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC/E,MAAM,MAAM,GAAG,IAAI,mBAAmB,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC,UAAU,EAAE,CAAC;QAC3G,MAAM,CAAC,eAAe,CAAC,iDAAiD,EAAE,CAAC,MAAM,EAAE,EAAE;YACnF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7B,8CAA8C;YAC9C,MAAM,EAAE,GAAW,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,OAAO,GAAW,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACzB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;YACrC,iDAAiD;QACnD,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mFAAmF,EAAE,GAAG,EAAE;QAC3F,MAAM,MAAM,GAAG,IAAI,mBAAmB,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC,UAAU,EAAE,CAAC;QACzG,MAAM,CAAC,eAAe,CAAC,iDAAiD,EAAE,CAAC,MAAM,EAAE,EAAE;YACnF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7B,MAAM,EAAE,GAAW,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;YAC/C,MAAM,OAAO,GAAW,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;YACjD,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACzB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACvC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qFAAqF,EAAE,GAAG,EAAE;QAC7F,4DAA4D;QAC5D,MAAM,MAAM,GAAG,IAAI,mBAAmB,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,UAAU,EAAE,CAAC;QACtG,MAAM,CAAC,eAAe,CAAC,iDAAiD,EAAE,CAAC,MAAM,EAAE,EAAE;YACnF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7B,6FAA6F;YAC7F,MAAM,EAAE,GAAW,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,MAAM,SAAS,GAAW,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;YACnD,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACzB,yDAAyD;YACzD,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;QACrD,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qHAAqH,EAAE,GAAG,EAAE;QAC7H,MAAM,MAAM,GAAG,IAAI,mBAAmB,EAAE;aACrC,YAAY,CAAC,cAAc,CAAC,qBAAqB,CAAC;YACnD,4DAA4D;aAC3D,yBAAyB,CAAC,IAAI,CAAC;aAC/B,UAAU,EAAE,CAAC;QAChB,MAAM,CAAC,eAAe,CAAC,iDAAiD,EAAE,CAAC,MAAM,EAAE,EAAE;YACnF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7B,MAAM,EAAE,GAAW,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;YAC/C,MAAM,OAAO,GAAW,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;YACjD,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACzB,qGAAqG;YACrG,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;QACnD,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\nimport { assert, expect } from \"chai\";\r\nimport { QueryOptionsBuilder, QueryRowFormat } from \"@itwin/core-common\";\r\nimport { SnapshotDb } from \"../../IModelDb\";\r\nimport { IModelTestUtils } from \"../IModelTestUtils\";\r\nimport { Id64 } from \"@itwin/core-bentley\";\r\n\r\ndescribe(\"WithQueryReaderTests\", () => {\r\n let iModel: SnapshotDb;\r\n\r\n before(async () => {\r\n iModel = SnapshotDb.openFile(IModelTestUtils.resolveAssetFile(\"test.bim\"));\r\n });\r\n\r\n after(async () => {\r\n iModel.close();\r\n });\r\n it(\"check behvaiour if we call clearCaches in between\", () => {\r\n let actualRowCount = 0;\r\n const expectedInstanceIds = [\"0x1\", \"0xe\", \"0x10\", \"0x11\", \"0x12\",\r\n \"0x13\", \"0x14\", \"0x15\", \"0x16\", \"0x17\"];\r\n\r\n expect(() => iModel.withQueryReader(\"SELECT * FROM bis.Element\", (reader) => {\r\n let loopCount = 0;\r\n // First loop - read first 10 rows\r\n while (loopCount < 10) {\r\n reader.step()\r\n actualRowCount++;\r\n loopCount++;\r\n assert.isDefined(reader.current[0]);\r\n assert.equal(reader.current[0], expectedInstanceIds[actualRowCount - 1]);\r\n }\r\n assert.equal(loopCount, 10);\r\n iModel.clearCaches();\r\n\r\n reader.step(); // step should fail after clearCaches\r\n })).to.throw(\"Step failed\");\r\n });\r\n it(\"should throw error if we try to step on a closed iModelDb object\", () => {\r\n const imodelPath = iModel.pathName;\r\n expect(() => iModel.withQueryReader(\"SELECT * FROM bis.Element\", (reader) => {\r\n let loopCount = 0;\r\n while (loopCount < 10) {\r\n reader.step();\r\n assert.isDefined(reader.current[0]);\r\n loopCount++;\r\n }\r\n assert.equal(loopCount, 10);\r\n iModel.close();\r\n\r\n iModel = SnapshotDb.openFile(imodelPath);\r\n assert.isDefined(reader.current[0]);\r\n reader.step(); // step should fail after iModelDb is closed\r\n })).to.throw(\"Statement is not prepared\");\r\n });\r\n it(\"returning reader from withQueryReader callback should throw error if we try to step on it\", () => {\r\n const readerObj = iModel.withQueryReader(\"SELECT * FROM bis.Element\", (reader) => {\r\n reader.step();\r\n return reader;\r\n });\r\n expect(readerObj.current[0]).to.equal(\"0x1\"); // will not throw error as we are just accessing current row\r\n expect(() => readerObj.step()).to.throw(\"Statement is not prepared\");\r\n });\r\n it(\"checking rowFormat unspecified case - values accessed by index\", () => {\r\n // Default rowFormat is UseECSqlPropertyIndexes: columns are accessed by their SELECT-order index.\r\n iModel.withQueryReader(\"SELECT ECInstanceId, ECClassId FROM bis.Element\", (reader) => {\r\n assert.isTrue(reader.step());\r\n const id: string = reader.current[0];\r\n const classId: string = reader.current[1];\r\n assert.isTrue(Id64.isValid(classId));\r\n assert.isTrue(Id64.isValid(id));\r\n assert.equal(id, \"0x19\");\r\n });\r\n });\r\n\r\n it(\"checking rowFormat UseECSqlPropertyIndexes - values accessed by index\", () => {\r\n const config = new QueryOptionsBuilder().setRowFormat(QueryRowFormat.UseECSqlPropertyIndexes).getOptions();\r\n iModel.withQueryReader(\"SELECT ECInstanceId, ECClassId FROM bis.Element\", (reader) => {\r\n assert.isTrue(reader.step());\r\n // Index 0 → ECInstanceId, index 1 → ECClassId\r\n const id: string = reader.current[0];\r\n const classId: string = reader.current[1];\r\n assert.equal(id, \"0x19\");\r\n assert.isTrue(Id64.isValid(classId));\r\n // Swapping column order changes index, not value\r\n }, undefined, config);\r\n });\r\n\r\n it(\"checking rowFormat UseECSqlPropertyNames - values accessed by ECSQL property name\", () => {\r\n const config = new QueryOptionsBuilder().setRowFormat(QueryRowFormat.UseECSqlPropertyNames).getOptions();\r\n iModel.withQueryReader(\"SELECT ECInstanceId, ECClassId FROM bis.Element\", (reader) => {\r\n assert.isTrue(reader.step());\r\n const id: string = reader.current.ECInstanceId;\r\n const classId: string = reader.current.ECClassId;\r\n assert.equal(id, \"0x19\");\r\n assert.isTrue(Id64.isValid(classId));\r\n }, undefined, config);\r\n });\r\n\r\n it(\"checking rowFormat UseJsPropertyNames - values accessed by JavaScript property name\", () => {\r\n // eslint-disable-next-line @typescript-eslint/no-deprecated\r\n const config = new QueryOptionsBuilder().setRowFormat(QueryRowFormat.UseJsPropertyNames).getOptions();\r\n iModel.withQueryReader(\"SELECT ECInstanceId, ECClassId FROM bis.Element\", (reader) => {\r\n assert.isTrue(reader.step());\r\n // ECInstanceId → id, ECClassId → className (resolved to a fully-qualified class name string)\r\n const id: string = reader.current.id;\r\n const className: string = reader.current.className;\r\n assert.equal(id, \"0x19\");\r\n // className should be in the form \"SchemaName.ClassName\"\r\n assert.equal(className, \"BisCore.DrawingCategory\");\r\n }, undefined, config);\r\n });\r\n\r\n it(\"checking rowFormat UseECSqlPropertyNames with convertClassIdsToClassNames - ECClassId returned as class name string\", () => {\r\n const config = new QueryOptionsBuilder()\r\n .setRowFormat(QueryRowFormat.UseECSqlPropertyNames)\r\n // eslint-disable-next-line @typescript-eslint/no-deprecated\r\n .setConvertClassIdsToNames(true)\r\n .getOptions();\r\n iModel.withQueryReader(\"SELECT ECInstanceId, ECClassId FROM bis.Element\", (reader) => {\r\n assert.isTrue(reader.step());\r\n const id: string = reader.current.ECInstanceId;\r\n const classId: string = reader.current.ECClassId;\r\n assert.equal(id, \"0x19\");\r\n // With convertClassIdsToClassNames, ECClassId is resolved to \"SchemaName.ClassName\" instead of an Id\r\n assert.equal(classId, \"BisCore.DrawingCategory\");\r\n }, undefined, config);\r\n });\r\n});\r\n"]}
@@ -80,16 +80,17 @@ describe("QueryReaders - createQueryReader() and withQueryReader() api tests", (
80
80
  it("ecsql reader simple", async () => {
81
81
  const env_1 = { stack: [], error: void 0, hasError: false };
82
82
  try {
83
- const ecdb = __addDisposableResource(env_1, ECDbTestHelper.createECDb(outDir, "test.ecdb", `<ECSchema schemaName="Test" alias="ts" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
84
- <ECEntityClass typeName="Foo" modifier="Sealed">
85
- <ECProperty propertyName="n" typeName="int"/>
86
- </ECEntityClass>
83
+ const ecdb = __addDisposableResource(env_1, ECDbTestHelper.createECDb(outDir, "test.ecdb", `<ECSchema schemaName="Test" alias="ts" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
84
+ <ECEntityClass typeName="Foo" modifier="Sealed">
85
+ <ECProperty propertyName="n" typeName="int"/>
86
+ </ECEntityClass>
87
87
  </ECSchema>`), false);
88
88
  assert.isTrue(ecdb.isOpen);
89
89
  ecdb.saveChanges();
90
90
  const params = new QueryBinder();
91
91
  params.bindIdSet(1, ["0x32"]);
92
92
  const optionBuilder = new QueryOptionsBuilder();
93
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
93
94
  optionBuilder.setRowFormat(QueryRowFormat.UseJsPropertyNames);
94
95
  const readerCallback = async (readerObj) => {
95
96
  const rows = await readerObj.toArray();
@@ -116,16 +117,17 @@ describe("QueryReaders - createQueryReader() and withQueryReader() api tests", (
116
117
  it("ecsql reader simple for IdSet", async () => {
117
118
  const env_2 = { stack: [], error: void 0, hasError: false };
118
119
  try {
119
- const ecdb = __addDisposableResource(env_2, ECDbTestHelper.createECDb(outDir, "test.ecdb", `<ECSchema schemaName="Test" alias="ts" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
120
- <ECEntityClass typeName="Foo" modifier="Sealed">
121
- <ECProperty propertyName="n" typeName="int"/>
122
- </ECEntityClass>
120
+ const ecdb = __addDisposableResource(env_2, ECDbTestHelper.createECDb(outDir, "test.ecdb", `<ECSchema schemaName="Test" alias="ts" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
121
+ <ECEntityClass typeName="Foo" modifier="Sealed">
122
+ <ECProperty propertyName="n" typeName="int"/>
123
+ </ECEntityClass>
123
124
  </ECSchema>`), false);
124
125
  assert.isTrue(ecdb.isOpen);
125
126
  ecdb.saveChanges();
126
127
  const params = new QueryBinder();
127
128
  params.bindIdSet(1, ["0x32"]);
128
129
  const optionBuilder = new QueryOptionsBuilder();
130
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
129
131
  optionBuilder.setRowFormat(QueryRowFormat.UseJsPropertyNames);
130
132
  const readerCallback = async (readerObj) => {
131
133
  const rows = await readerObj.toArray();
@@ -152,16 +154,17 @@ describe("QueryReaders - createQueryReader() and withQueryReader() api tests", (
152
154
  it("bindIdSet not working with integer Ids", async () => {
153
155
  const env_3 = { stack: [], error: void 0, hasError: false };
154
156
  try {
155
- const ecdb = __addDisposableResource(env_3, ECDbTestHelper.createECDb(outDir, "test.ecdb", `<ECSchema schemaName="Test" alias="ts" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
156
- <ECEntityClass typeName="Foo" modifier="Sealed">
157
- <ECProperty propertyName="n" typeName="int"/>
158
- </ECEntityClass>
157
+ const ecdb = __addDisposableResource(env_3, ECDbTestHelper.createECDb(outDir, "test.ecdb", `<ECSchema schemaName="Test" alias="ts" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
158
+ <ECEntityClass typeName="Foo" modifier="Sealed">
159
+ <ECProperty propertyName="n" typeName="int"/>
160
+ </ECEntityClass>
159
161
  </ECSchema>`), false);
160
162
  assert.isTrue(ecdb.isOpen);
161
163
  ecdb.saveChanges();
162
164
  const params = new QueryBinder();
163
165
  params.bindIdSet(1, ["50"]);
164
166
  const optionBuilder = new QueryOptionsBuilder();
167
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
165
168
  optionBuilder.setRowFormat(QueryRowFormat.UseJsPropertyNames);
166
169
  const readerCallback = async (readerObj) => {
167
170
  const rows = await readerObj.toArray();
@@ -186,10 +189,10 @@ describe("QueryReaders - createQueryReader() and withQueryReader() api tests", (
186
189
  it("ecsql reader simple using query reader", async () => {
187
190
  const env_4 = { stack: [], error: void 0, hasError: false };
188
191
  try {
189
- const ecdb = __addDisposableResource(env_4, ECDbTestHelper.createECDb(outDir, "test.ecdb", `<ECSchema schemaName="Test" alias="ts" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
190
- <ECEntityClass typeName="Foo" modifier="Sealed">
191
- <ECProperty propertyName="n" typeName="int"/>
192
- </ECEntityClass>
192
+ const ecdb = __addDisposableResource(env_4, ECDbTestHelper.createECDb(outDir, "test.ecdb", `<ECSchema schemaName="Test" alias="ts" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
193
+ <ECEntityClass typeName="Foo" modifier="Sealed">
194
+ <ECProperty propertyName="n" typeName="int"/>
195
+ </ECEntityClass>
193
196
  </ECSchema>`), false);
194
197
  assert.isTrue(ecdb.isOpen);
195
198
  const insertResult = await ecdb.withCachedWriteStatement("INSERT INTO ts.Foo(n) VALUES(20)", async (stmt) => {
@@ -269,10 +272,10 @@ describe("QueryReaders - createQueryReader() and withQueryReader() api tests", (
269
272
  const env_5 = { stack: [], error: void 0, hasError: false };
270
273
  try {
271
274
  const testRange = new Range3d(1.2, 2.3, 3.4, 4.5, 5.6, 6.7);
272
- const ecdb = __addDisposableResource(env_5, ECDbTestHelper.createECDb(outDir, "bindrange3d.ecdb", `<ECSchema schemaName="Test" alias="test" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
273
- <ECEntityClass typeName="Foo" modifier="Sealed">
274
- <ECProperty propertyName="Range3d" typeName="binary"/>
275
- </ECEntityClass>
275
+ const ecdb = __addDisposableResource(env_5, ECDbTestHelper.createECDb(outDir, "bindrange3d.ecdb", `<ECSchema schemaName="Test" alias="test" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.1">
276
+ <ECEntityClass typeName="Foo" modifier="Sealed">
277
+ <ECProperty propertyName="Range3d" typeName="binary"/>
278
+ </ECEntityClass>
276
279
  </ECSchema>`), false);
277
280
  assert.isTrue(ecdb.isOpen);
278
281
  ecdb.withCachedWriteStatement("INSERT INTO test.Foo([Range3d]) VALUES(?)", (stmt) => {
@@ -477,7 +480,9 @@ describe("QueryReaders - createQueryReader() and withQueryReader() api tests", (
477
480
  }
478
481
  assert.equal(rowCount, 5);
479
482
  };
483
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
480
484
  iModel.withQueryReader("SELECT * FROM meta.ECSchemaDef LIMIT 5", syncReaderCallback, undefined, { rowFormat: QueryRowFormat.UseJsPropertyNames });
485
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
481
486
  const reader = iModel.createQueryReader("SELECT * FROM meta.ECSchemaDef", undefined, { limit: { count: 5 }, rowFormat: QueryRowFormat.UseJsPropertyNames });
482
487
  await readerCallback(reader);
483
488
  });
@@ -621,7 +626,9 @@ describe("QueryReaders - createQueryReader() and withQueryReader() api tests", (
621
626
  }
622
627
  assert.equal(rowCount, 5);
623
628
  };
629
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
624
630
  iModel.withQueryReader("SELECT * FROM meta.ECSchemaDef LIMIT 5", syncReaderCallback, undefined, { rowFormat: QueryRowFormat.UseJsPropertyNames });
631
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
625
632
  const reader = iModel.createQueryReader("SELECT * FROM meta.ECSchemaDef", undefined, { limit: { count: 5 }, rowFormat: QueryRowFormat.UseJsPropertyNames });
626
633
  await readerCallback(reader);
627
634
  });
@@ -769,7 +776,9 @@ describe("QueryReaders - createQueryReader() and withQueryReader() api tests", (
769
776
  }
770
777
  assert.equal(rowCount, 5);
771
778
  };
779
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
772
780
  iModel.withQueryReader("SELECT * FROM bis.Element c JOIN bis.Element p ON p.ECInstanceId = c.ECInstanceId LIMIT 5", syncReaderCallback, undefined, { rowFormat: QueryRowFormat.UseJsPropertyNames });
781
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
773
782
  const reader = iModel.createQueryReader("SELECT * FROM bis.Element c JOIN bis.Element p ON p.ECInstanceId = c.ECInstanceId", undefined, { limit: { count: 5 }, rowFormat: QueryRowFormat.UseJsPropertyNames });
774
783
  await readerCallback(reader);
775
784
  });
@@ -917,7 +926,9 @@ describe("QueryReaders - createQueryReader() and withQueryReader() api tests", (
917
926
  }
918
927
  assert.equal(rowCount, 5);
919
928
  };
929
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
920
930
  iModel.withQueryReader("SELECT ECInstanceId FROM meta.ECSchemaDef ORDER BY ECInstanceId ASC LIMIT 5", syncReaderCallback, undefined, { rowFormat: QueryRowFormat.UseJsPropertyNames });
931
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
921
932
  const reader = iModel.createQueryReader("SELECT ECInstanceId FROM meta.ECSchemaDef ORDER BY ECInstanceId ASC", undefined, { limit: { count: 5 }, rowFormat: QueryRowFormat.UseJsPropertyNames });
922
933
  await readerCallback(reader);
923
934
  });
@@ -1055,7 +1066,9 @@ describe("QueryReaders - createQueryReader() and withQueryReader() api tests", (
1055
1066
  }
1056
1067
  assert.equal(rowCount, 5);
1057
1068
  };
1069
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
1058
1070
  iModel.withQueryReader("SELECT ECInstanceId customColumnName FROM meta.ECSchemaDef ORDER BY ECInstanceId ASC LIMIT 5", syncReaderCallback, undefined, { rowFormat: QueryRowFormat.UseJsPropertyNames });
1071
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
1059
1072
  const reader = iModel.createQueryReader("SELECT ECInstanceId customColumnName FROM meta.ECSchemaDef ORDER BY ECInstanceId ASC", undefined, { limit: { count: 5 }, rowFormat: QueryRowFormat.UseJsPropertyNames });
1060
1073
  await readerCallback(reader);
1061
1074
  });
@@ -1378,11 +1391,11 @@ describe("createQueryReader vs withQueryReader ", () => {
1378
1391
  _processCodeScopes(element, scope) {
1379
1392
  const newScope = new ElementTreeWalkerScope(scope, element);
1380
1393
  // eslint-disable-next-line @typescript-eslint/no-deprecated
1381
- this.txn.iModel.withPreparedStatement(`
1382
- SELECT ECInstanceId
1383
- FROM bis.Element
1384
- WHERE CodeScope.id=?
1385
- AND Parent.id IS NULL
1394
+ this.txn.iModel.withPreparedStatement(`
1395
+ SELECT ECInstanceId
1396
+ FROM bis.Element
1397
+ WHERE CodeScope.id=?
1398
+ AND Parent.id IS NULL
1386
1399
  `, (stmt) => {
1387
1400
  stmt.bindId(1, element);
1388
1401
  while (stmt.step() === DbResult.BE_SQLITE_ROW) {
@@ -1433,9 +1446,9 @@ describe("createQueryReader vs withQueryReader ", () => {
1433
1446
  iModelDb.close();
1434
1447
  });
1435
1448
  it("Failing while using createQueryReader()", async () => {
1436
- const sql = `
1437
- SELECT ECInstanceId
1438
- FROM ${PhysicalObject.classFullName}
1449
+ const sql = `
1450
+ SELECT ECInstanceId
1451
+ FROM ${PhysicalObject.classFullName}
1439
1452
  `;
1440
1453
  const reader = iModelDb.createQueryReader(sql, undefined, { usePrimaryConn: true });
1441
1454
  await reader.step(); // step to initialize reader
@@ -1447,9 +1460,9 @@ describe("createQueryReader vs withQueryReader ", () => {
1447
1460
  expect(() => withEditTxn(iModelDb, (txn) => new TestElementCascadingDeleter(txn).deleteNormalElements(secondId))).to.throw();
1448
1461
  });
1449
1462
  it("Passing while using withQueryReader()", async () => {
1450
- const sql = `
1451
- SELECT ECInstanceId
1452
- FROM ${PhysicalObject.classFullName}
1463
+ const sql = `
1464
+ SELECT ECInstanceId
1465
+ FROM ${PhysicalObject.classFullName}
1453
1466
  `;
1454
1467
  iModelDb.withQueryReader(sql, (reader) => {
1455
1468
  let cntSteps = 0;