@itwin/core-backend 5.9.0-dev.1 → 5.9.0-dev.10

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 (551) hide show
  1. package/CHANGELOG.md +30 -1
  2. package/lib/cjs/BackendHubAccess.d.ts +38 -0
  3. package/lib/cjs/BackendHubAccess.d.ts.map +1 -1
  4. package/lib/cjs/BackendHubAccess.js.map +1 -1
  5. package/lib/cjs/BriefcaseManager.js +3 -3
  6. package/lib/cjs/BriefcaseManager.js.map +1 -1
  7. package/lib/cjs/Category.d.ts +37 -7
  8. package/lib/cjs/Category.d.ts.map +1 -1
  9. package/lib/cjs/Category.js +33 -42
  10. package/lib/cjs/Category.js.map +1 -1
  11. package/lib/cjs/ChangesetECAdaptor.d.ts.map +1 -1
  12. package/lib/cjs/ChangesetECAdaptor.js +5 -2
  13. package/lib/cjs/ChangesetECAdaptor.js.map +1 -1
  14. package/lib/cjs/ChannelControl.d.ts +29 -0
  15. package/lib/cjs/ChannelControl.d.ts.map +1 -1
  16. package/lib/cjs/ChannelControl.js.map +1 -1
  17. package/lib/cjs/CheckpointManager.js +1 -1
  18. package/lib/cjs/CheckpointManager.js.map +1 -1
  19. package/lib/cjs/CloudSqlite.d.ts +1 -1
  20. package/lib/cjs/CloudSqlite.d.ts.map +1 -1
  21. package/lib/cjs/CloudSqlite.js +68 -13
  22. package/lib/cjs/CloudSqlite.js.map +1 -1
  23. package/lib/cjs/CodeSpecs.d.ts +32 -3
  24. package/lib/cjs/CodeSpecs.d.ts.map +1 -1
  25. package/lib/cjs/CodeSpecs.js +48 -20
  26. package/lib/cjs/CodeSpecs.js.map +1 -1
  27. package/lib/cjs/DisplayStyle.d.ts +18 -3
  28. package/lib/cjs/DisplayStyle.d.ts.map +1 -1
  29. package/lib/cjs/DisplayStyle.js +10 -21
  30. package/lib/cjs/DisplayStyle.js.map +1 -1
  31. package/lib/cjs/EditTxn.d.ts +262 -0
  32. package/lib/cjs/EditTxn.d.ts.map +1 -0
  33. package/lib/cjs/EditTxn.js +548 -0
  34. package/lib/cjs/EditTxn.js.map +1 -0
  35. package/lib/cjs/Element.d.ts +74 -5
  36. package/lib/cjs/Element.d.ts.map +1 -1
  37. package/lib/cjs/Element.js +63 -75
  38. package/lib/cjs/Element.js.map +1 -1
  39. package/lib/cjs/ElementAspect.d.ts +10 -0
  40. package/lib/cjs/ElementAspect.d.ts.map +1 -1
  41. package/lib/cjs/ElementAspect.js +21 -12
  42. package/lib/cjs/ElementAspect.js.map +1 -1
  43. package/lib/cjs/ElementTreeWalker.d.ts +56 -3
  44. package/lib/cjs/ElementTreeWalker.d.ts.map +1 -1
  45. package/lib/cjs/ElementTreeWalker.js +53 -40
  46. package/lib/cjs/ElementTreeWalker.js.map +1 -1
  47. package/lib/cjs/ExternalSource.d.ts +11 -2
  48. package/lib/cjs/ExternalSource.d.ts.map +1 -1
  49. package/lib/cjs/ExternalSource.js +10 -8
  50. package/lib/cjs/ExternalSource.js.map +1 -1
  51. package/lib/cjs/IModelDb.d.ts +66 -22
  52. package/lib/cjs/IModelDb.d.ts.map +1 -1
  53. package/lib/cjs/IModelDb.js +175 -289
  54. package/lib/cjs/IModelDb.js.map +1 -1
  55. package/lib/cjs/IModelHost.d.ts +58 -1
  56. package/lib/cjs/IModelHost.d.ts.map +1 -1
  57. package/lib/cjs/IModelHost.js +89 -0
  58. package/lib/cjs/IModelHost.js.map +1 -1
  59. package/lib/cjs/IpcHost.d.ts.map +1 -1
  60. package/lib/cjs/IpcHost.js +35 -15
  61. package/lib/cjs/IpcHost.js.map +1 -1
  62. package/lib/cjs/LineStyle.d.ts +47 -7
  63. package/lib/cjs/LineStyle.d.ts.map +1 -1
  64. package/lib/cjs/LineStyle.js +38 -33
  65. package/lib/cjs/LineStyle.js.map +1 -1
  66. package/lib/cjs/LockControl.d.ts +85 -1
  67. package/lib/cjs/LockControl.d.ts.map +1 -1
  68. package/lib/cjs/LockControl.js.map +1 -1
  69. package/lib/cjs/Material.d.ts +8 -1
  70. package/lib/cjs/Material.d.ts.map +1 -1
  71. package/lib/cjs/Material.js +6 -12
  72. package/lib/cjs/Material.js.map +1 -1
  73. package/lib/cjs/Model.d.ts +59 -20
  74. package/lib/cjs/Model.d.ts.map +1 -1
  75. package/lib/cjs/Model.js +38 -80
  76. package/lib/cjs/Model.js.map +1 -1
  77. package/lib/cjs/Relationship.d.ts +72 -7
  78. package/lib/cjs/Relationship.d.ts.map +1 -1
  79. package/lib/cjs/Relationship.js +39 -21
  80. package/lib/cjs/Relationship.js.map +1 -1
  81. package/lib/cjs/SchemaSync.js +4 -4
  82. package/lib/cjs/SchemaSync.js.map +1 -1
  83. package/lib/cjs/SheetIndex.d.ts +9 -0
  84. package/lib/cjs/SheetIndex.d.ts.map +1 -1
  85. package/lib/cjs/SheetIndex.js +38 -35
  86. package/lib/cjs/SheetIndex.js.map +1 -1
  87. package/lib/cjs/StashManager.js +1 -1
  88. package/lib/cjs/StashManager.js.map +1 -1
  89. package/lib/cjs/Texture.d.ts +6 -0
  90. package/lib/cjs/Texture.d.ts.map +1 -1
  91. package/lib/cjs/Texture.js +6 -14
  92. package/lib/cjs/Texture.js.map +1 -1
  93. package/lib/cjs/TxnManager.d.ts +105 -9
  94. package/lib/cjs/TxnManager.d.ts.map +1 -1
  95. package/lib/cjs/TxnManager.js +194 -15
  96. package/lib/cjs/TxnManager.js.map +1 -1
  97. package/lib/cjs/ViewDefinition.d.ts +21 -1
  98. package/lib/cjs/ViewDefinition.d.ts.map +1 -1
  99. package/lib/cjs/ViewDefinition.js +27 -66
  100. package/lib/cjs/ViewDefinition.js.map +1 -1
  101. package/lib/cjs/annotations/ElementDrivesTextAnnotation.d.ts +14 -6
  102. package/lib/cjs/annotations/ElementDrivesTextAnnotation.d.ts.map +1 -1
  103. package/lib/cjs/annotations/ElementDrivesTextAnnotation.js +33 -27
  104. package/lib/cjs/annotations/ElementDrivesTextAnnotation.js.map +1 -1
  105. package/lib/cjs/annotations/TextAnnotationElement.d.ts.map +1 -1
  106. package/lib/cjs/annotations/TextAnnotationElement.js +6 -5
  107. package/lib/cjs/annotations/TextAnnotationElement.js.map +1 -1
  108. package/lib/cjs/core-backend.d.ts +1 -0
  109. package/lib/cjs/core-backend.d.ts.map +1 -1
  110. package/lib/cjs/core-backend.js +1 -0
  111. package/lib/cjs/core-backend.js.map +1 -1
  112. package/lib/cjs/domains/FunctionalElements.d.ts +6 -2
  113. package/lib/cjs/domains/FunctionalElements.d.ts.map +1 -1
  114. package/lib/cjs/domains/FunctionalElements.js +8 -13
  115. package/lib/cjs/domains/FunctionalElements.js.map +1 -1
  116. package/lib/cjs/domains/GenericElements.d.ts +11 -4
  117. package/lib/cjs/domains/GenericElements.d.ts.map +1 -1
  118. package/lib/cjs/domains/GenericElements.js +13 -24
  119. package/lib/cjs/domains/GenericElements.js.map +1 -1
  120. package/lib/cjs/internal/ChannelAdmin.d.ts +15 -0
  121. package/lib/cjs/internal/ChannelAdmin.d.ts.map +1 -1
  122. package/lib/cjs/internal/ChannelAdmin.js +5 -3
  123. package/lib/cjs/internal/ChannelAdmin.js.map +1 -1
  124. package/lib/cjs/internal/HubMock.d.ts +2 -0
  125. package/lib/cjs/internal/HubMock.d.ts.map +1 -1
  126. package/lib/cjs/internal/HubMock.js +7 -0
  127. package/lib/cjs/internal/HubMock.js.map +1 -1
  128. package/lib/cjs/internal/NoLocks.d.ts.map +1 -1
  129. package/lib/cjs/internal/NoLocks.js +6 -0
  130. package/lib/cjs/internal/NoLocks.js.map +1 -1
  131. package/lib/cjs/internal/ServerBasedLocks.d.ts +12 -0
  132. package/lib/cjs/internal/ServerBasedLocks.d.ts.map +1 -1
  133. package/lib/cjs/internal/ServerBasedLocks.js +285 -4
  134. package/lib/cjs/internal/ServerBasedLocks.js.map +1 -1
  135. package/lib/cjs/internal/Symbols.d.ts +4 -0
  136. package/lib/cjs/internal/Symbols.d.ts.map +1 -1
  137. package/lib/cjs/internal/Symbols.js +5 -1
  138. package/lib/cjs/internal/Symbols.js.map +1 -1
  139. package/lib/cjs/internal/annotations/fields.d.ts +3 -2
  140. package/lib/cjs/internal/annotations/fields.d.ts.map +1 -1
  141. package/lib/cjs/internal/annotations/fields.js +7 -6
  142. package/lib/cjs/internal/annotations/fields.js.map +1 -1
  143. package/lib/cjs/internal/workspace/SettingsEditorImpl.d.ts +18 -3
  144. package/lib/cjs/internal/workspace/SettingsEditorImpl.d.ts.map +1 -1
  145. package/lib/cjs/internal/workspace/SettingsEditorImpl.js +49 -242
  146. package/lib/cjs/internal/workspace/SettingsEditorImpl.js.map +1 -1
  147. package/lib/cjs/internal/workspace/SettingsImpl.d.ts.map +1 -1
  148. package/lib/cjs/internal/workspace/SettingsImpl.js.map +1 -1
  149. package/lib/cjs/internal/workspace/WorkspaceImpl.d.ts +0 -1
  150. package/lib/cjs/internal/workspace/WorkspaceImpl.d.ts.map +1 -1
  151. package/lib/cjs/internal/workspace/WorkspaceImpl.js +70 -41
  152. package/lib/cjs/internal/workspace/WorkspaceImpl.js.map +1 -1
  153. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.d.ts.map +1 -1
  154. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  155. package/lib/cjs/workspace/Settings.d.ts +11 -5
  156. package/lib/cjs/workspace/Settings.d.ts.map +1 -1
  157. package/lib/cjs/workspace/Settings.js.map +1 -1
  158. package/lib/cjs/workspace/SettingsDb.d.ts +20 -99
  159. package/lib/cjs/workspace/SettingsDb.d.ts.map +1 -1
  160. package/lib/cjs/workspace/SettingsDb.js +23 -7
  161. package/lib/cjs/workspace/SettingsDb.js.map +1 -1
  162. package/lib/cjs/workspace/SettingsEditor.d.ts +40 -226
  163. package/lib/cjs/workspace/SettingsEditor.d.ts.map +1 -1
  164. package/lib/cjs/workspace/SettingsEditor.js +86 -25
  165. package/lib/cjs/workspace/SettingsEditor.js.map +1 -1
  166. package/lib/cjs/workspace/Workspace.d.ts +7 -11
  167. package/lib/cjs/workspace/Workspace.d.ts.map +1 -1
  168. package/lib/cjs/workspace/Workspace.js.map +1 -1
  169. package/lib/cjs/workspace/WorkspaceEditor.d.ts +14 -0
  170. package/lib/cjs/workspace/WorkspaceEditor.d.ts.map +1 -1
  171. package/lib/cjs/workspace/WorkspaceEditor.js +1 -1
  172. package/lib/cjs/workspace/WorkspaceEditor.js.map +1 -1
  173. package/lib/esm/BackendHubAccess.d.ts +38 -0
  174. package/lib/esm/BackendHubAccess.d.ts.map +1 -1
  175. package/lib/esm/BackendHubAccess.js.map +1 -1
  176. package/lib/esm/BriefcaseManager.js +3 -3
  177. package/lib/esm/BriefcaseManager.js.map +1 -1
  178. package/lib/esm/Category.d.ts +37 -7
  179. package/lib/esm/Category.d.ts.map +1 -1
  180. package/lib/esm/Category.js +33 -42
  181. package/lib/esm/Category.js.map +1 -1
  182. package/lib/esm/ChangesetECAdaptor.d.ts.map +1 -1
  183. package/lib/esm/ChangesetECAdaptor.js +5 -2
  184. package/lib/esm/ChangesetECAdaptor.js.map +1 -1
  185. package/lib/esm/ChannelControl.d.ts +29 -0
  186. package/lib/esm/ChannelControl.d.ts.map +1 -1
  187. package/lib/esm/ChannelControl.js.map +1 -1
  188. package/lib/esm/CheckpointManager.js +1 -1
  189. package/lib/esm/CheckpointManager.js.map +1 -1
  190. package/lib/esm/CloudSqlite.d.ts +1 -1
  191. package/lib/esm/CloudSqlite.d.ts.map +1 -1
  192. package/lib/esm/CloudSqlite.js +69 -14
  193. package/lib/esm/CloudSqlite.js.map +1 -1
  194. package/lib/esm/CodeSpecs.d.ts +32 -3
  195. package/lib/esm/CodeSpecs.d.ts.map +1 -1
  196. package/lib/esm/CodeSpecs.js +49 -21
  197. package/lib/esm/CodeSpecs.js.map +1 -1
  198. package/lib/esm/DisplayStyle.d.ts +18 -3
  199. package/lib/esm/DisplayStyle.d.ts.map +1 -1
  200. package/lib/esm/DisplayStyle.js +10 -21
  201. package/lib/esm/DisplayStyle.js.map +1 -1
  202. package/lib/esm/EditTxn.d.ts +262 -0
  203. package/lib/esm/EditTxn.d.ts.map +1 -0
  204. package/lib/esm/EditTxn.js +543 -0
  205. package/lib/esm/EditTxn.js.map +1 -0
  206. package/lib/esm/Element.d.ts +74 -5
  207. package/lib/esm/Element.d.ts.map +1 -1
  208. package/lib/esm/Element.js +64 -76
  209. package/lib/esm/Element.js.map +1 -1
  210. package/lib/esm/ElementAspect.d.ts +10 -0
  211. package/lib/esm/ElementAspect.d.ts.map +1 -1
  212. package/lib/esm/ElementAspect.js +22 -13
  213. package/lib/esm/ElementAspect.js.map +1 -1
  214. package/lib/esm/ElementTreeWalker.d.ts +56 -3
  215. package/lib/esm/ElementTreeWalker.d.ts.map +1 -1
  216. package/lib/esm/ElementTreeWalker.js +53 -40
  217. package/lib/esm/ElementTreeWalker.js.map +1 -1
  218. package/lib/esm/ExternalSource.d.ts +11 -2
  219. package/lib/esm/ExternalSource.d.ts.map +1 -1
  220. package/lib/esm/ExternalSource.js +10 -8
  221. package/lib/esm/ExternalSource.js.map +1 -1
  222. package/lib/esm/IModelDb.d.ts +66 -22
  223. package/lib/esm/IModelDb.d.ts.map +1 -1
  224. package/lib/esm/IModelDb.js +177 -291
  225. package/lib/esm/IModelDb.js.map +1 -1
  226. package/lib/esm/IModelHost.d.ts +58 -1
  227. package/lib/esm/IModelHost.d.ts.map +1 -1
  228. package/lib/esm/IModelHost.js +91 -2
  229. package/lib/esm/IModelHost.js.map +1 -1
  230. package/lib/esm/IpcHost.d.ts.map +1 -1
  231. package/lib/esm/IpcHost.js +36 -16
  232. package/lib/esm/IpcHost.js.map +1 -1
  233. package/lib/esm/LineStyle.d.ts +47 -7
  234. package/lib/esm/LineStyle.d.ts.map +1 -1
  235. package/lib/esm/LineStyle.js +38 -33
  236. package/lib/esm/LineStyle.js.map +1 -1
  237. package/lib/esm/LockControl.d.ts +85 -1
  238. package/lib/esm/LockControl.d.ts.map +1 -1
  239. package/lib/esm/LockControl.js.map +1 -1
  240. package/lib/esm/Material.d.ts +8 -1
  241. package/lib/esm/Material.d.ts.map +1 -1
  242. package/lib/esm/Material.js +6 -12
  243. package/lib/esm/Material.js.map +1 -1
  244. package/lib/esm/Model.d.ts +59 -20
  245. package/lib/esm/Model.d.ts.map +1 -1
  246. package/lib/esm/Model.js +39 -81
  247. package/lib/esm/Model.js.map +1 -1
  248. package/lib/esm/Relationship.d.ts +72 -7
  249. package/lib/esm/Relationship.d.ts.map +1 -1
  250. package/lib/esm/Relationship.js +40 -22
  251. package/lib/esm/Relationship.js.map +1 -1
  252. package/lib/esm/SchemaSync.js +5 -5
  253. package/lib/esm/SchemaSync.js.map +1 -1
  254. package/lib/esm/SheetIndex.d.ts +9 -0
  255. package/lib/esm/SheetIndex.d.ts.map +1 -1
  256. package/lib/esm/SheetIndex.js +38 -35
  257. package/lib/esm/SheetIndex.js.map +1 -1
  258. package/lib/esm/StashManager.js +1 -1
  259. package/lib/esm/StashManager.js.map +1 -1
  260. package/lib/esm/Texture.d.ts +6 -0
  261. package/lib/esm/Texture.d.ts.map +1 -1
  262. package/lib/esm/Texture.js +6 -14
  263. package/lib/esm/Texture.js.map +1 -1
  264. package/lib/esm/TxnManager.d.ts +105 -9
  265. package/lib/esm/TxnManager.d.ts.map +1 -1
  266. package/lib/esm/TxnManager.js +194 -15
  267. package/lib/esm/TxnManager.js.map +1 -1
  268. package/lib/esm/ViewDefinition.d.ts +21 -1
  269. package/lib/esm/ViewDefinition.d.ts.map +1 -1
  270. package/lib/esm/ViewDefinition.js +27 -66
  271. package/lib/esm/ViewDefinition.js.map +1 -1
  272. package/lib/esm/annotations/ElementDrivesTextAnnotation.d.ts +14 -6
  273. package/lib/esm/annotations/ElementDrivesTextAnnotation.d.ts.map +1 -1
  274. package/lib/esm/annotations/ElementDrivesTextAnnotation.js +33 -27
  275. package/lib/esm/annotations/ElementDrivesTextAnnotation.js.map +1 -1
  276. package/lib/esm/annotations/TextAnnotationElement.d.ts.map +1 -1
  277. package/lib/esm/annotations/TextAnnotationElement.js +6 -5
  278. package/lib/esm/annotations/TextAnnotationElement.js.map +1 -1
  279. package/lib/esm/core-backend.d.ts +1 -0
  280. package/lib/esm/core-backend.d.ts.map +1 -1
  281. package/lib/esm/core-backend.js +1 -0
  282. package/lib/esm/core-backend.js.map +1 -1
  283. package/lib/esm/domains/FunctionalElements.d.ts +6 -2
  284. package/lib/esm/domains/FunctionalElements.d.ts.map +1 -1
  285. package/lib/esm/domains/FunctionalElements.js +8 -13
  286. package/lib/esm/domains/FunctionalElements.js.map +1 -1
  287. package/lib/esm/domains/GenericElements.d.ts +11 -4
  288. package/lib/esm/domains/GenericElements.d.ts.map +1 -1
  289. package/lib/esm/domains/GenericElements.js +13 -24
  290. package/lib/esm/domains/GenericElements.js.map +1 -1
  291. package/lib/esm/internal/ChannelAdmin.d.ts +15 -0
  292. package/lib/esm/internal/ChannelAdmin.d.ts.map +1 -1
  293. package/lib/esm/internal/ChannelAdmin.js +6 -4
  294. package/lib/esm/internal/ChannelAdmin.js.map +1 -1
  295. package/lib/esm/internal/HubMock.d.ts +2 -0
  296. package/lib/esm/internal/HubMock.d.ts.map +1 -1
  297. package/lib/esm/internal/HubMock.js +7 -0
  298. package/lib/esm/internal/HubMock.js.map +1 -1
  299. package/lib/esm/internal/NoLocks.d.ts.map +1 -1
  300. package/lib/esm/internal/NoLocks.js +6 -0
  301. package/lib/esm/internal/NoLocks.js.map +1 -1
  302. package/lib/esm/internal/ServerBasedLocks.d.ts +12 -0
  303. package/lib/esm/internal/ServerBasedLocks.d.ts.map +1 -1
  304. package/lib/esm/internal/ServerBasedLocks.js +286 -5
  305. package/lib/esm/internal/ServerBasedLocks.js.map +1 -1
  306. package/lib/esm/internal/Symbols.d.ts +4 -0
  307. package/lib/esm/internal/Symbols.d.ts.map +1 -1
  308. package/lib/esm/internal/Symbols.js +4 -0
  309. package/lib/esm/internal/Symbols.js.map +1 -1
  310. package/lib/esm/internal/annotations/fields.d.ts +3 -2
  311. package/lib/esm/internal/annotations/fields.d.ts.map +1 -1
  312. package/lib/esm/internal/annotations/fields.js +7 -6
  313. package/lib/esm/internal/annotations/fields.js.map +1 -1
  314. package/lib/esm/internal/workspace/SettingsEditorImpl.d.ts +18 -3
  315. package/lib/esm/internal/workspace/SettingsEditorImpl.d.ts.map +1 -1
  316. package/lib/esm/internal/workspace/SettingsEditorImpl.js +52 -246
  317. package/lib/esm/internal/workspace/SettingsEditorImpl.js.map +1 -1
  318. package/lib/esm/internal/workspace/SettingsImpl.d.ts.map +1 -1
  319. package/lib/esm/internal/workspace/SettingsImpl.js.map +1 -1
  320. package/lib/esm/internal/workspace/WorkspaceImpl.d.ts +0 -1
  321. package/lib/esm/internal/workspace/WorkspaceImpl.d.ts.map +1 -1
  322. package/lib/esm/internal/workspace/WorkspaceImpl.js +71 -41
  323. package/lib/esm/internal/workspace/WorkspaceImpl.js.map +1 -1
  324. package/lib/esm/rpc-impl/RpcBriefcaseUtility.d.ts.map +1 -1
  325. package/lib/esm/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  326. package/lib/esm/test/AnnotationTestUtils.js.map +1 -1
  327. package/lib/esm/test/ElementDrivesElement.test.d.ts +20 -19
  328. package/lib/esm/test/ElementDrivesElement.test.d.ts.map +1 -1
  329. package/lib/esm/test/ElementDrivesElement.test.js +111 -96
  330. package/lib/esm/test/ElementDrivesElement.test.js.map +1 -1
  331. package/lib/esm/test/ElementLRUCache.test.js.map +1 -1
  332. package/lib/esm/test/IModelHost.test.js +56 -2
  333. package/lib/esm/test/IModelHost.test.js.map +1 -1
  334. package/lib/esm/test/IModelTestUtils.d.ts +23 -23
  335. package/lib/esm/test/IModelTestUtils.d.ts.map +1 -1
  336. package/lib/esm/test/IModelTestUtils.js +466 -449
  337. package/lib/esm/test/IModelTestUtils.js.map +1 -1
  338. package/lib/esm/test/IpcHost.test.js +112 -0
  339. package/lib/esm/test/IpcHost.test.js.map +1 -1
  340. package/lib/esm/test/PropertyDb.test.js +2 -2
  341. package/lib/esm/test/PropertyDb.test.js.map +1 -1
  342. package/lib/esm/test/SquashSchemaAndDataChanges.test.js +27 -18
  343. package/lib/esm/test/SquashSchemaAndDataChanges.test.js.map +1 -1
  344. package/lib/esm/test/TestChangeSetUtility.d.ts.map +1 -1
  345. package/lib/esm/test/TestChangeSetUtility.js +11 -7
  346. package/lib/esm/test/TestChangeSetUtility.js.map +1 -1
  347. package/lib/esm/test/TestEditTxn.d.ts +8 -0
  348. package/lib/esm/test/TestEditTxn.d.ts.map +1 -0
  349. package/lib/esm/test/TestEditTxn.js +34 -0
  350. package/lib/esm/test/TestEditTxn.js.map +1 -0
  351. package/lib/esm/test/TestUtils.d.ts +1 -0
  352. package/lib/esm/test/TestUtils.d.ts.map +1 -1
  353. package/lib/esm/test/TestUtils.js +8 -1
  354. package/lib/esm/test/TestUtils.js.map +1 -1
  355. package/lib/esm/test/annotations/Fields.test.js +82 -90
  356. package/lib/esm/test/annotations/Fields.test.js.map +1 -1
  357. package/lib/esm/test/annotations/FrameGeometry.test.js.map +1 -1
  358. package/lib/esm/test/annotations/TextAnnotation.test.js +156 -99
  359. package/lib/esm/test/annotations/TextAnnotation.test.js.map +1 -1
  360. package/lib/esm/test/annotations/TextBlock.test.js +5 -3
  361. package/lib/esm/test/annotations/TextBlock.test.js.map +1 -1
  362. package/lib/esm/test/assets/IncrementalSchemaLocater/configs/old.config.js.map +1 -1
  363. package/lib/esm/test/assets/IncrementalSchemaLocater/configs/simple.config.js.map +1 -1
  364. package/lib/esm/test/categories/Category.test.js +63 -3
  365. package/lib/esm/test/categories/Category.test.js.map +1 -1
  366. package/lib/esm/test/codespec/CodeSpec.test.js +88 -5
  367. package/lib/esm/test/codespec/CodeSpec.test.js.map +1 -1
  368. package/lib/esm/test/ecdb/ECDb.test.js.map +1 -1
  369. package/lib/esm/test/ecdb/ECSqlAst.test.js +3 -2
  370. package/lib/esm/test/ecdb/ECSqlAst.test.js.map +1 -1
  371. package/lib/esm/test/ecdb/ECSqlQuery.test.js +2 -2
  372. package/lib/esm/test/ecdb/ECSqlQuery.test.js.map +1 -1
  373. package/lib/esm/test/ecdb/ECSqlStatement.test.js +0 -1
  374. package/lib/esm/test/ecdb/ECSqlStatement.test.js.map +1 -1
  375. package/lib/esm/test/ecdb/QueryReaders.test.js +17 -14
  376. package/lib/esm/test/ecdb/QueryReaders.test.js.map +1 -1
  377. package/lib/esm/test/ecdb/SqliteStatement.test.js +2 -2
  378. package/lib/esm/test/ecdb/SqliteStatement.test.js.map +1 -1
  379. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.d.ts.map +1 -1
  380. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.js +30 -28
  381. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.js.map +1 -1
  382. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.js.map +1 -1
  383. package/lib/esm/test/ecsql/src/ECSqlTestParser.js.map +1 -1
  384. package/lib/esm/test/ecsql/src/ECSqlTestRunner.test.js.map +1 -1
  385. package/lib/esm/test/element/DeleteDefinitionElements.test.js +159 -143
  386. package/lib/esm/test/element/DeleteDefinitionElements.test.js.map +1 -1
  387. package/lib/esm/test/element/ElementAspect.test.js +68 -60
  388. package/lib/esm/test/element/ElementAspect.test.js.map +1 -1
  389. package/lib/esm/test/element/ElementDependencyGraph.test.d.ts.map +1 -1
  390. package/lib/esm/test/element/ElementDependencyGraph.test.js +51 -43
  391. package/lib/esm/test/element/ElementDependencyGraph.test.js.map +1 -1
  392. package/lib/esm/test/element/ElementRoundTrip.test.js +37 -38
  393. package/lib/esm/test/element/ElementRoundTrip.test.js.map +1 -1
  394. package/lib/esm/test/element/ExcludedElements.test.js +2 -2
  395. package/lib/esm/test/element/ExcludedElements.test.js.map +1 -1
  396. package/lib/esm/test/element/ExternalSource.test.js +40 -38
  397. package/lib/esm/test/element/ExternalSource.test.js.map +1 -1
  398. package/lib/esm/test/element/NullStructArray.test.js +10 -9
  399. package/lib/esm/test/element/NullStructArray.test.js.map +1 -1
  400. package/lib/esm/test/element/ProjectInformationRecord.test.js +5 -2
  401. package/lib/esm/test/element/ProjectInformationRecord.test.js.map +1 -1
  402. package/lib/esm/test/element/SheetInformationAspect.test.js +43 -11
  403. package/lib/esm/test/element/SheetInformationAspect.test.js.map +1 -1
  404. package/lib/esm/test/element/UrlLink.test.js +2 -2
  405. package/lib/esm/test/element/UrlLink.test.js.map +1 -1
  406. package/lib/esm/test/font/IModelDbFonts.test.js +87 -73
  407. package/lib/esm/test/font/IModelDbFonts.test.js.map +1 -1
  408. package/lib/esm/test/hubaccess/ApplyChangeset.test.js +164 -125
  409. package/lib/esm/test/hubaccess/ApplyChangeset.test.js.map +1 -1
  410. package/lib/esm/test/hubaccess/BriefcaseManager.test.js +2 -4
  411. package/lib/esm/test/hubaccess/BriefcaseManager.test.js.map +1 -1
  412. package/lib/esm/test/hubaccess/Rebase.test.js +313 -247
  413. package/lib/esm/test/hubaccess/Rebase.test.js.map +1 -1
  414. package/lib/esm/test/hubaccess/SemanticRebase.test.js +322 -247
  415. package/lib/esm/test/hubaccess/SemanticRebase.test.js.map +1 -1
  416. package/lib/esm/test/imodel/Code.test.js +31 -31
  417. package/lib/esm/test/imodel/Code.test.js.map +1 -1
  418. package/lib/esm/test/imodel/ElementTreeWalker.test.js +57 -48
  419. package/lib/esm/test/imodel/ElementTreeWalker.test.js.map +1 -1
  420. package/lib/esm/test/imodel/IModel.test.js +419 -344
  421. package/lib/esm/test/imodel/IModel.test.js.map +1 -1
  422. package/lib/esm/test/imodel/ProjectExtents.test.js +2 -2
  423. package/lib/esm/test/imodel/ProjectExtents.test.js.map +1 -1
  424. package/lib/esm/test/incrementalSchemaLocater/ECSqlQueries.test.js.map +1 -1
  425. package/lib/esm/test/incrementalSchemaLocater/TestContext.d.ts.map +1 -1
  426. package/lib/esm/test/incrementalSchemaLocater/TestContext.js +2 -2
  427. package/lib/esm/test/incrementalSchemaLocater/TestContext.js.map +1 -1
  428. package/lib/esm/test/index.d.ts +1 -0
  429. package/lib/esm/test/index.d.ts.map +1 -1
  430. package/lib/esm/test/index.js +1 -0
  431. package/lib/esm/test/index.js.map +1 -1
  432. package/lib/esm/test/schema/ClassRegistry.test.js +23 -22
  433. package/lib/esm/test/schema/ClassRegistry.test.js.map +1 -1
  434. package/lib/esm/test/schema/FunctionalDomain.test.js +36 -34
  435. package/lib/esm/test/schema/FunctionalDomain.test.js.map +1 -1
  436. package/lib/esm/test/schema/GenericDomain.test.js +114 -94
  437. package/lib/esm/test/schema/GenericDomain.test.js.map +1 -1
  438. package/lib/esm/test/schema/IModelSchemaContext.test.js +2 -1
  439. package/lib/esm/test/schema/IModelSchemaContext.test.js.map +1 -1
  440. package/lib/esm/test/schema/SchemaImportCallbacks.test.js +207 -192
  441. package/lib/esm/test/schema/SchemaImportCallbacks.test.js.map +1 -1
  442. package/lib/esm/test/sheetindex/SheetIndex.test.d.ts +1 -3
  443. package/lib/esm/test/sheetindex/SheetIndex.test.d.ts.map +1 -1
  444. package/lib/esm/test/sheetindex/SheetIndex.test.js +312 -247
  445. package/lib/esm/test/sheetindex/SheetIndex.test.js.map +1 -1
  446. package/lib/esm/test/standalone/ChangeMerge.test.js +101 -82
  447. package/lib/esm/test/standalone/ChangeMerge.test.js.map +1 -1
  448. package/lib/esm/test/standalone/ChangesetReader.test.js +114 -85
  449. package/lib/esm/test/standalone/ChangesetReader.test.js.map +1 -1
  450. package/lib/esm/test/standalone/DisplayStyle.test.js +43 -40
  451. package/lib/esm/test/standalone/DisplayStyle.test.js.map +1 -1
  452. package/lib/esm/test/standalone/Drawing.test.js +4 -3
  453. package/lib/esm/test/standalone/Drawing.test.js.map +1 -1
  454. package/lib/esm/test/standalone/EditTxn.test.d.ts +2 -0
  455. package/lib/esm/test/standalone/EditTxn.test.d.ts.map +1 -0
  456. package/lib/esm/test/standalone/EditTxn.test.js +219 -0
  457. package/lib/esm/test/standalone/EditTxn.test.js.map +1 -0
  458. package/lib/esm/test/standalone/ElementMesh.test.js +16 -13
  459. package/lib/esm/test/standalone/ElementMesh.test.js.map +1 -1
  460. package/lib/esm/test/standalone/ExportGraphics.test.js +26 -20
  461. package/lib/esm/test/standalone/ExportGraphics.test.js.map +1 -1
  462. package/lib/esm/test/standalone/GeometryChangeEvents.test.js +11 -15
  463. package/lib/esm/test/standalone/GeometryChangeEvents.test.js.map +1 -1
  464. package/lib/esm/test/standalone/GeometryStream.test.js +212 -165
  465. package/lib/esm/test/standalone/GeometryStream.test.js.map +1 -1
  466. package/lib/esm/test/standalone/HubMock.test.js +31 -25
  467. package/lib/esm/test/standalone/HubMock.test.js.map +1 -1
  468. package/lib/esm/test/standalone/IModelLimits.test.js +11 -8
  469. package/lib/esm/test/standalone/IModelLimits.test.js.map +1 -1
  470. package/lib/esm/test/standalone/IModelWrite.test.d.ts +2 -2
  471. package/lib/esm/test/standalone/IModelWrite.test.d.ts.map +1 -1
  472. package/lib/esm/test/standalone/IModelWrite.test.js +184 -142
  473. package/lib/esm/test/standalone/IModelWrite.test.js.map +1 -1
  474. package/lib/esm/test/standalone/ITwinWorkspace.test.d.ts +2 -0
  475. package/lib/esm/test/standalone/ITwinWorkspace.test.d.ts.map +1 -0
  476. package/lib/esm/test/standalone/ITwinWorkspace.test.js +236 -0
  477. package/lib/esm/test/standalone/ITwinWorkspace.test.js.map +1 -0
  478. package/lib/esm/test/standalone/InlineGeometryPartReferences.test.js +25 -22
  479. package/lib/esm/test/standalone/InlineGeometryPartReferences.test.js.map +1 -1
  480. package/lib/esm/test/standalone/IntegrityCheck.test.js +20 -18
  481. package/lib/esm/test/standalone/IntegrityCheck.test.js.map +1 -1
  482. package/lib/esm/test/standalone/MergeConflict.test.d.ts +2 -2
  483. package/lib/esm/test/standalone/MergeConflict.test.d.ts.map +1 -1
  484. package/lib/esm/test/standalone/MergeConflict.test.js +49 -33
  485. package/lib/esm/test/standalone/MergeConflict.test.js.map +1 -1
  486. package/lib/esm/test/standalone/RenderMaterialElement.test.js +5 -5
  487. package/lib/esm/test/standalone/RenderMaterialElement.test.js.map +1 -1
  488. package/lib/esm/test/standalone/RenderTimeline.test.js +3 -2
  489. package/lib/esm/test/standalone/RenderTimeline.test.js.map +1 -1
  490. package/lib/esm/test/standalone/SectionDrawing.test.js +7 -7
  491. package/lib/esm/test/standalone/SectionDrawing.test.js.map +1 -1
  492. package/lib/esm/test/standalone/ServerBasedLocks.test.js +928 -22
  493. package/lib/esm/test/standalone/ServerBasedLocks.test.js.map +1 -1
  494. package/lib/esm/test/standalone/Settings.test.js +26 -4
  495. package/lib/esm/test/standalone/Settings.test.js.map +1 -1
  496. package/lib/esm/test/standalone/SettingsSchemas.test.js +2 -1
  497. package/lib/esm/test/standalone/SettingsSchemas.test.js.map +1 -1
  498. package/lib/esm/test/standalone/SnapshotDb.test.js +3 -1
  499. package/lib/esm/test/standalone/SnapshotDb.test.js.map +1 -1
  500. package/lib/esm/test/standalone/StandaloneDb.test.js +7 -6
  501. package/lib/esm/test/standalone/StandaloneDb.test.js.map +1 -1
  502. package/lib/esm/test/standalone/Texture.test.js +5 -4
  503. package/lib/esm/test/standalone/Texture.test.js.map +1 -1
  504. package/lib/esm/test/standalone/TileCache.test.d.ts.map +1 -1
  505. package/lib/esm/test/standalone/TileCache.test.js +5 -3
  506. package/lib/esm/test/standalone/TileCache.test.js.map +1 -1
  507. package/lib/esm/test/standalone/TileTree.test.js +35 -31
  508. package/lib/esm/test/standalone/TileTree.test.js.map +1 -1
  509. package/lib/esm/test/standalone/TxnManager.test.js +700 -653
  510. package/lib/esm/test/standalone/TxnManager.test.js.map +1 -1
  511. package/lib/esm/test/standalone/ViewDefinition.test.js +295 -229
  512. package/lib/esm/test/standalone/ViewDefinition.test.js.map +1 -1
  513. package/lib/esm/test/standalone/Workspace.test.js +72 -22
  514. package/lib/esm/test/standalone/Workspace.test.js.map +1 -1
  515. package/lib/esm/test/workspace/SettingsDb.test.js +28 -456
  516. package/lib/esm/test/workspace/SettingsDb.test.js.map +1 -1
  517. package/lib/esm/workspace/Settings.d.ts +11 -5
  518. package/lib/esm/workspace/Settings.d.ts.map +1 -1
  519. package/lib/esm/workspace/Settings.js.map +1 -1
  520. package/lib/esm/workspace/SettingsDb.d.ts +20 -99
  521. package/lib/esm/workspace/SettingsDb.d.ts.map +1 -1
  522. package/lib/esm/workspace/SettingsDb.js +20 -6
  523. package/lib/esm/workspace/SettingsDb.js.map +1 -1
  524. package/lib/esm/workspace/SettingsEditor.d.ts +40 -226
  525. package/lib/esm/workspace/SettingsEditor.d.ts.map +1 -1
  526. package/lib/esm/workspace/SettingsEditor.js +85 -24
  527. package/lib/esm/workspace/SettingsEditor.js.map +1 -1
  528. package/lib/esm/workspace/Workspace.d.ts +7 -11
  529. package/lib/esm/workspace/Workspace.d.ts.map +1 -1
  530. package/lib/esm/workspace/Workspace.js.map +1 -1
  531. package/lib/esm/workspace/WorkspaceEditor.d.ts +14 -0
  532. package/lib/esm/workspace/WorkspaceEditor.d.ts.map +1 -1
  533. package/lib/esm/workspace/WorkspaceEditor.js +1 -1
  534. package/lib/esm/workspace/WorkspaceEditor.js.map +1 -1
  535. package/package.json +14 -14
  536. package/lib/cjs/internal/workspace/SettingsDbImpl.d.ts +0 -38
  537. package/lib/cjs/internal/workspace/SettingsDbImpl.d.ts.map +0 -1
  538. package/lib/cjs/internal/workspace/SettingsDbImpl.js +0 -108
  539. package/lib/cjs/internal/workspace/SettingsDbImpl.js.map +0 -1
  540. package/lib/cjs/internal/workspace/SettingsSqliteDb.d.ts +0 -14
  541. package/lib/cjs/internal/workspace/SettingsSqliteDb.d.ts.map +0 -1
  542. package/lib/cjs/internal/workspace/SettingsSqliteDb.js +0 -40
  543. package/lib/cjs/internal/workspace/SettingsSqliteDb.js.map +0 -1
  544. package/lib/esm/internal/workspace/SettingsDbImpl.d.ts +0 -38
  545. package/lib/esm/internal/workspace/SettingsDbImpl.d.ts.map +0 -1
  546. package/lib/esm/internal/workspace/SettingsDbImpl.js +0 -104
  547. package/lib/esm/internal/workspace/SettingsDbImpl.js.map +0 -1
  548. package/lib/esm/internal/workspace/SettingsSqliteDb.d.ts +0 -14
  549. package/lib/esm/internal/workspace/SettingsSqliteDb.d.ts.map +0 -1
  550. package/lib/esm/internal/workspace/SettingsSqliteDb.js +0 -36
  551. package/lib/esm/internal/workspace/SettingsSqliteDb.js.map +0 -1
@@ -4,6 +4,7 @@
4
4
  import { Id64String } from "@itwin/core-bentley";
5
5
  import { CategoryProps, Code, CodeScopeProps, ElementProps, Rank, SubCategoryAppearance, SubCategoryProps } from "@itwin/core-common";
6
6
  import { DefinitionElement } from "./Element";
7
+ import { EditTxn } from "./EditTxn";
7
8
  import { IModelDb } from "./IModelDb";
8
9
  import { CustomHandledProperty, DeserializeEntityArgs, ECSqlRow } from "./Entity";
9
10
  /** Defines the appearance for graphics in Geometric elements
@@ -58,13 +59,20 @@ export declare class SubCategory extends DefinitionElement {
58
59
  * @throws [[IModelError]] if unable to create the element.
59
60
  */
60
61
  static create(iModelDb: IModelDb, parentCategoryId: Id64String, name: string, appearance: SubCategoryAppearance.Props | SubCategoryAppearance): SubCategory;
61
- /** Insert a new SubCategory
62
- * @param iModelDb Insert into this iModel
62
+ /**
63
+ * Insert a new SubCategory
64
+ * @param txn The EditTxn to use
63
65
  * @param parentCategoryId Insert the new SubCategory as a child of this Category
64
66
  * @param name The name of the SubCategory
65
67
  * @param appearance The appearance settings to use for this SubCategory
66
68
  * @returns The Id of the newly inserted SubCategory element.
67
69
  * @throws [[IModelError]] if unable to insert the element.
70
+ * @beta
71
+ */
72
+ static insert(txn: EditTxn, parentCategoryId: Id64String, name: string, appearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String;
73
+ /**
74
+ * Insert a new SubCategory
75
+ * @deprecated Use SubCategory.insert(txn, ...) instead.
68
76
  */
69
77
  static insert(iModelDb: IModelDb, parentCategoryId: Id64String, name: string, appearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String;
70
78
  }
@@ -97,7 +105,15 @@ export declare class Category extends DefinitionElement {
97
105
  toJSON(): CategoryProps;
98
106
  /** Get the Id of the default SubCategory for this Category. */
99
107
  myDefaultSubCategoryId(): Id64String;
100
- /** Set the appearance of the default SubCategory for this Category */
108
+ /**
109
+ * Set the appearance of the default SubCategory for this Category
110
+ * @beta
111
+ */
112
+ setDefaultAppearance(txn: EditTxn, props: SubCategoryAppearance.Props | SubCategoryAppearance): void;
113
+ /**
114
+ * Set the appearance of the default SubCategory for this Category
115
+ * @deprecated Use Category.setDefaultAppearance(txn, ...) instead.
116
+ */
101
117
  setDefaultAppearance(props: SubCategoryAppearance.Props | SubCategoryAppearance): void;
102
118
  }
103
119
  /** Categorizes 2d GeometricElements.
@@ -125,13 +141,20 @@ export declare class DrawingCategory extends Category {
125
141
  * @throws [[IModelError]] if unable to create the element.
126
142
  */
127
143
  static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string): DrawingCategory;
128
- /** Insert a new DrawingCategory
129
- * @param iModelDb Insert into this iModel
144
+ /**
145
+ * Insert a new DrawingCategory
146
+ * @param txn The EditTxn to use
130
147
  * @param definitionModelId Insert the new DrawingCategory into this [[DefinitionModel]]
131
148
  * @param name The name of the DrawingCategory
132
149
  * @param defaultAppearance The appearance settings to use for the default SubCategory of this DrawingCategory
133
150
  * @returns The Id of the newly inserted DrawingCategory element.
134
151
  * @throws [[IModelError]] if unable to insert the element.
152
+ * @beta
153
+ */
154
+ static insert(txn: EditTxn, definitionModelId: Id64String, name: string, defaultAppearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String;
155
+ /**
156
+ * Insert a new DrawingCategory
157
+ * @deprecated Use DrawingCategory.insert(txn, ...) instead.
135
158
  */
136
159
  static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, defaultAppearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String;
137
160
  }
@@ -160,13 +183,20 @@ export declare class SpatialCategory extends Category {
160
183
  * @throws [[IModelError]] if unable to create the element.
161
184
  */
162
185
  static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string): SpatialCategory;
163
- /** Insert a new SpatialCategory
164
- * @param iModelDb Insert into this iModel
186
+ /**
187
+ * Insert a new SpatialCategory
188
+ * @param txn The EditTxn to use
165
189
  * @param definitionModelId Insert the new SpatialCategory into this DefinitionModel
166
190
  * @param name The name of the SpatialCategory
167
191
  * @param defaultAppearance The appearance settings to use for the default SubCategory of this SpatialCategory
168
192
  * @returns The Id of the newly inserted SpatialCategory element.
169
193
  * @throws [[IModelError]] if unable to insert the element.
194
+ * @beta
195
+ */
196
+ static insert(txn: EditTxn, definitionModelId: Id64String, name: string, defaultAppearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String;
197
+ /**
198
+ * Insert a new SpatialCategory
199
+ * @deprecated Use SpatialCategory.insert(txn, ...) instead.
170
200
  */
171
201
  static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, defaultAppearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String;
172
202
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Category.d.ts","sourceRoot":"","sources":["../../src/Category.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Category.d.ts","sourceRoot":"","sources":["../../src/Category.ts"],"names":[],"mappings":"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"}
@@ -11,8 +11,10 @@ exports.SpatialCategory = exports.DrawingCategory = exports.Category = exports.S
11
11
  const core_bentley_1 = require("@itwin/core-bentley");
12
12
  const core_common_1 = require("@itwin/core-common");
13
13
  const Element_1 = require("./Element");
14
+ const EditTxn_1 = require("./EditTxn");
14
15
  const IModelDb_1 = require("./IModelDb");
15
16
  const NavigationRelationship_1 = require("./NavigationRelationship");
17
+ const Symbols_1 = require("./internal/Symbols");
16
18
  /** Defines the appearance for graphics in Geometric elements
17
19
  * @public @preview
18
20
  */
@@ -112,17 +114,10 @@ class SubCategory extends Element_1.DefinitionElement {
112
114
  };
113
115
  return new SubCategory(subCategoryProps, iModelDb);
114
116
  }
115
- /** Insert a new SubCategory
116
- * @param iModelDb Insert into this iModel
117
- * @param parentCategoryId Insert the new SubCategory as a child of this Category
118
- * @param name The name of the SubCategory
119
- * @param appearance The appearance settings to use for this SubCategory
120
- * @returns The Id of the newly inserted SubCategory element.
121
- * @throws [[IModelError]] if unable to insert the element.
122
- */
123
- static insert(iModelDb, parentCategoryId, name, appearance) {
124
- const subCategory = this.create(iModelDb, parentCategoryId, name, appearance);
125
- return iModelDb.elements.insertElement(subCategory.toJSON());
117
+ static insert(txnOrDb, parentCategoryId, name, appearance) {
118
+ const txn = txnOrDb instanceof EditTxn_1.EditTxn ? txnOrDb : txnOrDb[Symbols_1._implicitTxn];
119
+ const subCategory = this.create(txn.iModel, parentCategoryId, name, appearance);
120
+ return subCategory.insert(txn);
126
121
  }
127
122
  }
128
123
  exports.SubCategory = SubCategory;
@@ -180,13 +175,24 @@ class Category extends Element_1.DefinitionElement {
180
175
  }
181
176
  /** Get the Id of the default SubCategory for this Category. */
182
177
  myDefaultSubCategoryId() { return IModelDb_1.IModelDb.getDefaultSubCategoryId(this.id); }
183
- /** Set the appearance of the default SubCategory for this Category */
184
- setDefaultAppearance(props) {
185
- if (props instanceof core_common_1.SubCategoryAppearance)
186
- props = props.toJSON();
178
+ setDefaultAppearance(txnOrProps, props) {
179
+ let txn;
180
+ let appearance;
181
+ if (txnOrProps instanceof EditTxn_1.EditTxn) {
182
+ txn = txnOrProps;
183
+ if (props === undefined)
184
+ throw new Error("Invalid argument");
185
+ appearance = props;
186
+ }
187
+ else {
188
+ txn = this.iModel[Symbols_1._implicitTxn];
189
+ appearance = txnOrProps;
190
+ }
191
+ if (appearance instanceof core_common_1.SubCategoryAppearance)
192
+ appearance = appearance.toJSON();
187
193
  const subCat = this.iModel.elements.getElement(this.myDefaultSubCategoryId());
188
- subCat.appearance = new core_common_1.SubCategoryAppearance(props);
189
- this.iModel.elements.updateElement(subCat.toJSON());
194
+ subCat.appearance = new core_common_1.SubCategoryAppearance(appearance);
195
+ subCat.update(txn);
190
196
  }
191
197
  }
192
198
  exports.Category = Category;
@@ -229,19 +235,11 @@ class DrawingCategory extends Category {
229
235
  };
230
236
  return new DrawingCategory(categoryProps, iModelDb);
231
237
  }
232
- /** Insert a new DrawingCategory
233
- * @param iModelDb Insert into this iModel
234
- * @param definitionModelId Insert the new DrawingCategory into this [[DefinitionModel]]
235
- * @param name The name of the DrawingCategory
236
- * @param defaultAppearance The appearance settings to use for the default SubCategory of this DrawingCategory
237
- * @returns The Id of the newly inserted DrawingCategory element.
238
- * @throws [[IModelError]] if unable to insert the element.
239
- */
240
- static insert(iModelDb, definitionModelId, name, defaultAppearance) {
241
- const category = this.create(iModelDb, definitionModelId, name);
242
- const elements = iModelDb.elements;
243
- category.id = elements.insertElement(category.toJSON());
244
- category.setDefaultAppearance(defaultAppearance);
238
+ static insert(txnOrDb, definitionModelId, name, defaultAppearance) {
239
+ const txn = txnOrDb instanceof EditTxn_1.EditTxn ? txnOrDb : txnOrDb[Symbols_1._implicitTxn];
240
+ const category = this.create(txn.iModel, definitionModelId, name);
241
+ category.id = category.insert(txn);
242
+ category.setDefaultAppearance(txn, defaultAppearance);
245
243
  return category.id;
246
244
  }
247
245
  }
@@ -285,18 +283,11 @@ class SpatialCategory extends Category {
285
283
  };
286
284
  return new SpatialCategory(categoryProps, iModelDb);
287
285
  }
288
- /** Insert a new SpatialCategory
289
- * @param iModelDb Insert into this iModel
290
- * @param definitionModelId Insert the new SpatialCategory into this DefinitionModel
291
- * @param name The name of the SpatialCategory
292
- * @param defaultAppearance The appearance settings to use for the default SubCategory of this SpatialCategory
293
- * @returns The Id of the newly inserted SpatialCategory element.
294
- * @throws [[IModelError]] if unable to insert the element.
295
- */
296
- static insert(iModelDb, definitionModelId, name, defaultAppearance) {
297
- const category = this.create(iModelDb, definitionModelId, name);
298
- category.id = iModelDb.elements.insertElement(category.toJSON());
299
- category.setDefaultAppearance(defaultAppearance);
286
+ static insert(txnOrDb, definitionModelId, name, defaultAppearance) {
287
+ const txn = txnOrDb instanceof EditTxn_1.EditTxn ? txnOrDb : txnOrDb[Symbols_1._implicitTxn];
288
+ const category = this.create(txn.iModel, definitionModelId, name);
289
+ category.id = category.insert(txn);
290
+ category.setDefaultAppearance(txn, defaultAppearance);
300
291
  return category.id;
301
292
  }
302
293
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Category.js","sourceRoot":"","sources":["../../src/Category.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/** @packageDocumentation\n * @module iModels\n */\n\nimport { Id64, Id64String, JsonUtils } from \"@itwin/core-bentley\";\nimport {\n BisCodeSpec, CategoryProps, Code, CodeScopeProps, CodeSpec, ElementProps, Rank, SubCategoryAppearance, SubCategoryProps,\n} from \"@itwin/core-common\";\nimport { DefinitionElement } from \"./Element\";\nimport { IModelDb } from \"./IModelDb\";\nimport { CategoryOwnsSubCategories } from \"./NavigationRelationship\";\nimport { CustomHandledProperty, DeserializeEntityArgs, ECSqlRow } from \"./Entity\";\n\n/** Defines the appearance for graphics in Geometric elements\n * @public @preview\n */\nexport class SubCategory extends DefinitionElement {\n public static override get className(): string { return \"SubCategory\"; }\n /** The Appearance parameters for this SubCategory */\n public appearance: SubCategoryAppearance;\n /** Optional description of this SubCategory. */\n public description?: string;\n\n protected constructor(props: SubCategoryProps, iModel: IModelDb) {\n super(props, iModel);\n this.appearance = new SubCategoryAppearance(props.appearance);\n this.description = JsonUtils.asString(props.description);\n }\n\n /**\n * SubCategory custom HandledProps include 'description' and 'properties'.\n * @inheritdoc\n * @beta\n */\n protected static override readonly _customHandledProps: CustomHandledProperty[] = [\n { propertyName: \"description\", source: \"Class\" },\n { propertyName: \"properties\", source: \"Class\" },\n ];\n\n /**\n * SubCategory deserializes 'description' and 'properties'.\n * @inheritdoc\n * @beta\n */\n public static override deserialize(props: DeserializeEntityArgs): SubCategoryProps {\n const elProps = super.deserialize(props) as SubCategoryProps;\n elProps.description = JsonUtils.asString(props.row.description);\n if (props.row.properties !== '') {\n elProps.appearance = JSON.parse(props.row.properties) as SubCategoryAppearance.Props;\n } else {\n elProps.appearance = undefined;\n }\n return elProps;\n }\n\n /**\n * SubCategory serialize 'description' and 'properties'.\n * @inheritdoc\n * @beta\n */\n public static override serialize(props: SubCategoryProps, iModel: IModelDb): ECSqlRow {\n const inst = super.serialize(props, iModel);\n if (props.description !== undefined) {\n inst.description = props.description;\n }\n if (props.appearance !== undefined) {\n inst.properties = JSON.stringify(props.appearance);\n }\n return inst;\n }\n\n public override toJSON(): SubCategoryProps {\n const val = super.toJSON() as SubCategoryProps;\n val.appearance = this.appearance.toJSON();\n if (this.description && this.description.length > 0)\n val.description = this.description;\n return val;\n }\n\n /** Get the SubCategory's name (its Code value). */\n public getSubCategoryName(): string { return this.code.value; }\n /** Get the Id of the SubCategory. */\n public getSubCategoryId(): Id64String { return this.id; }\n /** Get the Id of this SubCategory's parent Category. */\n public getCategoryId(): Id64String { return this.parent ? this.parent.id : Id64.invalid; }\n /** Check if this is the default SubCategory of its parent Category. */\n public get isDefaultSubCategory(): boolean { return IModelDb.getDefaultSubCategoryId(this.getCategoryId()) === this.getSubCategoryId(); }\n\n /** Create a Code for a SubCategory given a name that is meant to be unique within the scope of the specified parent Category.\n * @param iModel The IModel\n * @param parentCategoryId The Id of the parent Category that owns the SubCategory and provides the scope for its name.\n * @param codeValue The name of the SubCategory\n */\n public static createCode(iModel: IModelDb, parentCategoryId: CodeScopeProps, codeValue: string): Code {\n const codeSpec: CodeSpec = iModel.codeSpecs.getByName(BisCodeSpec.subCategory);\n return new Code({ spec: codeSpec.id, scope: parentCategoryId, value: codeValue });\n }\n\n /** Create a new SubCategory\n * @param iModelDb The iModel\n * @param parentCategoryId Create the new SubCategory as a child of this [[Category]]\n * @param name The name of the SubCategory\n * @param appearance The appearance settings to use for this SubCategory\n * @returns The newly constructed SubCategory element.\n * @throws [[IModelError]] if unable to create the element.\n */\n public static create(iModelDb: IModelDb, parentCategoryId: Id64String, name: string, appearance: SubCategoryAppearance.Props | SubCategoryAppearance): SubCategory {\n if (appearance instanceof SubCategoryAppearance)\n appearance = appearance.toJSON();\n\n const parentCategory = iModelDb.elements.getElement<Category>(parentCategoryId);\n const subCategoryProps: SubCategoryProps = {\n classFullName: this.classFullName,\n model: parentCategory.model,\n parent: new CategoryOwnsSubCategories(parentCategoryId),\n code: this.createCode(iModelDb, parentCategoryId, name),\n appearance,\n };\n return new SubCategory(subCategoryProps, iModelDb);\n }\n\n /** Insert a new SubCategory\n * @param iModelDb Insert into this iModel\n * @param parentCategoryId Insert the new SubCategory as a child of this Category\n * @param name The name of the SubCategory\n * @param appearance The appearance settings to use for this SubCategory\n * @returns The Id of the newly inserted SubCategory element.\n * @throws [[IModelError]] if unable to insert the element.\n */\n public static insert(iModelDb: IModelDb, parentCategoryId: Id64String, name: string, appearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String {\n const subCategory = this.create(iModelDb, parentCategoryId, name, appearance);\n return iModelDb.elements.insertElement(subCategory.toJSON());\n }\n}\n\n/** A Category element is the target of the `category` member of [[GeometricElement]].\n * @public @preview\n */\nexport class Category extends DefinitionElement {\n public static override get className(): string { return \"Category\"; }\n public rank: Rank = Rank.User;\n public description?: string;\n\n protected constructor(props: CategoryProps, iModel: IModelDb) {\n super(props, iModel);\n this.rank = JsonUtils.asInt(props.rank);\n this.description = JsonUtils.asString(props.description);\n }\n\n /**\n * Category custom HandledProps include 'rank' and 'description'.\n * @inheritdoc\n * @beta\n */\n protected static override readonly _customHandledProps: CustomHandledProperty[] = [\n { propertyName: \"rank\", source: \"Class\" },\n { propertyName: \"description\", source: \"Class\" },\n ];\n\n /**\n * Category deserializes 'rank' and 'description'.\n * @inheritdoc\n * @beta\n */\n public static override deserialize(props: DeserializeEntityArgs): CategoryProps {\n const elProps = super.deserialize(props) as CategoryProps;\n elProps.description = JsonUtils.asString(props.row.description);\n elProps.rank = JsonUtils.asInt(props.row.rank);\n return elProps;\n }\n\n /**\n * Category serialize 'rank' and 'description'.\n * @inheritdoc\n * @beta\n */\n public static override serialize(props: CategoryProps, iModel: IModelDb): ECSqlRow {\n const inst = super.serialize(props, iModel);\n if (undefined !== props.description) {\n inst.description = props.description;\n }\n inst.rank = props.rank;\n return inst;\n }\n public override toJSON(): CategoryProps {\n const val = super.toJSON() as CategoryProps;\n val.rank = this.rank;\n if (this.description && this.description.length > 0)\n val.description = this.description;\n return val;\n }\n\n /** Get the Id of the default SubCategory for this Category. */\n public myDefaultSubCategoryId(): Id64String { return IModelDb.getDefaultSubCategoryId(this.id); }\n\n /** Set the appearance of the default SubCategory for this Category */\n public setDefaultAppearance(props: SubCategoryAppearance.Props | SubCategoryAppearance): void {\n if (props instanceof SubCategoryAppearance)\n props = props.toJSON();\n\n const subCat = this.iModel.elements.getElement<SubCategory>(this.myDefaultSubCategoryId());\n subCat.appearance = new SubCategoryAppearance(props);\n this.iModel.elements.updateElement(subCat.toJSON());\n }\n}\n\n/** Categorizes 2d GeometricElements.\n * @public @preview\n */\nexport class DrawingCategory extends Category {\n public static override get className(): string { return \"DrawingCategory\"; }\n\n protected constructor(opts: ElementProps, iModel: IModelDb) { super(opts, iModel); }\n\n /** Get the name of the CodeSpec that is used by DrawingCategory objects. */\n public static getCodeSpecName(): string { return BisCodeSpec.drawingCategory; }\n\n /** Looks up the CategoryId of a DrawingCategory by model and name */\n public static queryCategoryIdByName(iModel: IModelDb, scopeModelId: Id64String, categoryName: string): Id64String | undefined {\n const code: Code = DrawingCategory.createCode(iModel, scopeModelId, categoryName);\n return iModel.elements.queryElementIdByCode(code);\n }\n\n /** Create a Code for a DrawingCategory given a name that is meant to be unique within the scope of the specified DefinitionModel.\n * @param iModel The IModel\n * @param scopeModelId The Id of the DefinitionModel that contains the DrawingCategory and provides the scope for its name.\n * @param codeValue The name of the category\n * @return A drawing category Code\n */\n public static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code {\n const codeSpec: CodeSpec = iModel.codeSpecs.getByName(DrawingCategory.getCodeSpecName());\n return new Code({ spec: codeSpec.id, scope: scopeModelId, value: codeValue });\n }\n\n /** Create a new DrawingCategory\n * @param iModelDb The iModel\n * @param definitionModelId The [[DefinitionModel]]\n * @param name The name of the DrawingCategory\n * @returns The newly constructed DrawingCategory element.\n * @throws [[IModelError]] if unable to create the element.\n */\n public static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string): DrawingCategory {\n const categoryProps: CategoryProps = {\n classFullName: this.classFullName,\n model: definitionModelId,\n code: this.createCode(iModelDb, definitionModelId, name),\n isPrivate: false,\n };\n return new DrawingCategory(categoryProps, iModelDb);\n }\n\n /** Insert a new DrawingCategory\n * @param iModelDb Insert into this iModel\n * @param definitionModelId Insert the new DrawingCategory into this [[DefinitionModel]]\n * @param name The name of the DrawingCategory\n * @param defaultAppearance The appearance settings to use for the default SubCategory of this DrawingCategory\n * @returns The Id of the newly inserted DrawingCategory element.\n * @throws [[IModelError]] if unable to insert the element.\n */\n public static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, defaultAppearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String {\n const category = this.create(iModelDb, definitionModelId, name);\n const elements = iModelDb.elements;\n category.id = elements.insertElement(category.toJSON());\n category.setDefaultAppearance(defaultAppearance);\n return category.id;\n }\n}\n\n/** Categorizes SpatialElements. See [how to create a SpatialCategory]($docs/learning/backend/CreateElements.md#SpatialCategory).\n * @public @preview\n */\nexport class SpatialCategory extends Category {\n public static override get className(): string { return \"SpatialCategory\"; }\n protected constructor(opts: ElementProps, iModel: IModelDb) { super(opts, iModel); }\n\n /** Get the name of the CodeSpec that is used by SpatialCategory objects. */\n public static getCodeSpecName(): string { return BisCodeSpec.spatialCategory; }\n\n /** Looks up the CategoryId of a SpatialCategory by model and name */\n public static queryCategoryIdByName(iModel: IModelDb, scopeModelId: Id64String, categoryName: string): Id64String | undefined {\n const code: Code = SpatialCategory.createCode(iModel, scopeModelId, categoryName);\n return iModel.elements.queryElementIdByCode(code);\n }\n\n /** Create a Code for a SpatialCategory given a name that is meant to be unique within the scope of the specified DefinitionModel.\n * @param iModel The IModel\n * @param scopeModelId The Id of the DefinitionModel that contains the SpatialCategory and provides the scope for its name.\n * @param codeValue The name of the category\n * @return A spatial category Code\n */\n public static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code {\n const codeSpec: CodeSpec = iModel.codeSpecs.getByName(SpatialCategory.getCodeSpecName());\n return new Code({ spec: codeSpec.id, scope: scopeModelId, value: codeValue });\n }\n\n /** Create a new SpatialCategory\n * @param iModelDb The iModel\n * @param definitionModelId The [[DefinitionModel]]\n * @param name The name/CodeValue of the SpatialCategory\n * @returns The newly constructed SpatialCategory element.\n * @throws [[IModelError]] if unable to create the element.\n */\n public static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string): SpatialCategory {\n const categoryProps: CategoryProps = {\n classFullName: this.classFullName,\n model: definitionModelId,\n code: this.createCode(iModelDb, definitionModelId, name),\n isPrivate: false,\n };\n return new SpatialCategory(categoryProps, iModelDb);\n }\n\n /** Insert a new SpatialCategory\n * @param iModelDb Insert into this iModel\n * @param definitionModelId Insert the new SpatialCategory into this DefinitionModel\n * @param name The name of the SpatialCategory\n * @param defaultAppearance The appearance settings to use for the default SubCategory of this SpatialCategory\n * @returns The Id of the newly inserted SpatialCategory element.\n * @throws [[IModelError]] if unable to insert the element.\n */\n public static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, defaultAppearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String {\n const category = this.create(iModelDb, definitionModelId, name);\n category.id = iModelDb.elements.insertElement(category.toJSON());\n category.setDefaultAppearance(defaultAppearance);\n return category.id;\n }\n}\n"]}
1
+ {"version":3,"file":"Category.js","sourceRoot":"","sources":["../../src/Category.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/** @packageDocumentation\n * @module iModels\n */\n\nimport { Id64, Id64String, JsonUtils } from \"@itwin/core-bentley\";\nimport {\n BisCodeSpec, CategoryProps, Code, CodeScopeProps, CodeSpec, ElementProps, Rank, SubCategoryAppearance, SubCategoryProps,\n} from \"@itwin/core-common\";\nimport { DefinitionElement } from \"./Element\";\nimport { EditTxn } from \"./EditTxn\";\nimport { IModelDb } from \"./IModelDb\";\nimport { CategoryOwnsSubCategories } from \"./NavigationRelationship\";\nimport { CustomHandledProperty, DeserializeEntityArgs, ECSqlRow } from \"./Entity\";\nimport { _implicitTxn } from \"./internal/Symbols\";\n\n/** Defines the appearance for graphics in Geometric elements\n * @public @preview\n */\nexport class SubCategory extends DefinitionElement {\n public static override get className(): string { return \"SubCategory\"; }\n /** The Appearance parameters for this SubCategory */\n public appearance: SubCategoryAppearance;\n /** Optional description of this SubCategory. */\n public description?: string;\n\n protected constructor(props: SubCategoryProps, iModel: IModelDb) {\n super(props, iModel);\n this.appearance = new SubCategoryAppearance(props.appearance);\n this.description = JsonUtils.asString(props.description);\n }\n\n /**\n * SubCategory custom HandledProps include 'description' and 'properties'.\n * @inheritdoc\n * @beta\n */\n protected static override readonly _customHandledProps: CustomHandledProperty[] = [\n { propertyName: \"description\", source: \"Class\" },\n { propertyName: \"properties\", source: \"Class\" },\n ];\n\n /**\n * SubCategory deserializes 'description' and 'properties'.\n * @inheritdoc\n * @beta\n */\n public static override deserialize(props: DeserializeEntityArgs): SubCategoryProps {\n const elProps = super.deserialize(props) as SubCategoryProps;\n elProps.description = JsonUtils.asString(props.row.description);\n if (props.row.properties !== '') {\n elProps.appearance = JSON.parse(props.row.properties) as SubCategoryAppearance.Props;\n } else {\n elProps.appearance = undefined;\n }\n return elProps;\n }\n\n /**\n * SubCategory serialize 'description' and 'properties'.\n * @inheritdoc\n * @beta\n */\n public static override serialize(props: SubCategoryProps, iModel: IModelDb): ECSqlRow {\n const inst = super.serialize(props, iModel);\n if (props.description !== undefined) {\n inst.description = props.description;\n }\n if (props.appearance !== undefined) {\n inst.properties = JSON.stringify(props.appearance);\n }\n return inst;\n }\n\n public override toJSON(): SubCategoryProps {\n const val = super.toJSON() as SubCategoryProps;\n val.appearance = this.appearance.toJSON();\n if (this.description && this.description.length > 0)\n val.description = this.description;\n return val;\n }\n\n /** Get the SubCategory's name (its Code value). */\n public getSubCategoryName(): string { return this.code.value; }\n /** Get the Id of the SubCategory. */\n public getSubCategoryId(): Id64String { return this.id; }\n /** Get the Id of this SubCategory's parent Category. */\n public getCategoryId(): Id64String { return this.parent ? this.parent.id : Id64.invalid; }\n /** Check if this is the default SubCategory of its parent Category. */\n public get isDefaultSubCategory(): boolean { return IModelDb.getDefaultSubCategoryId(this.getCategoryId()) === this.getSubCategoryId(); }\n\n /** Create a Code for a SubCategory given a name that is meant to be unique within the scope of the specified parent Category.\n * @param iModel The IModel\n * @param parentCategoryId The Id of the parent Category that owns the SubCategory and provides the scope for its name.\n * @param codeValue The name of the SubCategory\n */\n public static createCode(iModel: IModelDb, parentCategoryId: CodeScopeProps, codeValue: string): Code {\n const codeSpec: CodeSpec = iModel.codeSpecs.getByName(BisCodeSpec.subCategory);\n return new Code({ spec: codeSpec.id, scope: parentCategoryId, value: codeValue });\n }\n\n /** Create a new SubCategory\n * @param iModelDb The iModel\n * @param parentCategoryId Create the new SubCategory as a child of this [[Category]]\n * @param name The name of the SubCategory\n * @param appearance The appearance settings to use for this SubCategory\n * @returns The newly constructed SubCategory element.\n * @throws [[IModelError]] if unable to create the element.\n */\n public static create(iModelDb: IModelDb, parentCategoryId: Id64String, name: string, appearance: SubCategoryAppearance.Props | SubCategoryAppearance): SubCategory {\n if (appearance instanceof SubCategoryAppearance)\n appearance = appearance.toJSON();\n\n const parentCategory = iModelDb.elements.getElement<Category>(parentCategoryId);\n const subCategoryProps: SubCategoryProps = {\n classFullName: this.classFullName,\n model: parentCategory.model,\n parent: new CategoryOwnsSubCategories(parentCategoryId),\n code: this.createCode(iModelDb, parentCategoryId, name),\n appearance,\n };\n return new SubCategory(subCategoryProps, iModelDb);\n }\n\n /**\n * Insert a new SubCategory\n * @param txn The EditTxn to use\n * @param parentCategoryId Insert the new SubCategory as a child of this Category\n * @param name The name of the SubCategory\n * @param appearance The appearance settings to use for this SubCategory\n * @returns The Id of the newly inserted SubCategory element.\n * @throws [[IModelError]] if unable to insert the element.\n * @beta\n */\n public static insert(txn: EditTxn, parentCategoryId: Id64String, name: string, appearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String;\n /**\n * Insert a new SubCategory\n * @deprecated Use SubCategory.insert(txn, ...) instead.\n */\n public static insert(iModelDb: IModelDb, parentCategoryId: Id64String, name: string, appearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String;\n public static insert(txnOrDb: EditTxn | IModelDb, parentCategoryId: Id64String, name: string, appearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String {\n const txn = txnOrDb instanceof EditTxn ? txnOrDb : txnOrDb[_implicitTxn];\n const subCategory = this.create(txn.iModel, parentCategoryId, name, appearance);\n return subCategory.insert(txn);\n }\n}\n\n/** A Category element is the target of the `category` member of [[GeometricElement]].\n * @public @preview\n */\nexport class Category extends DefinitionElement {\n public static override get className(): string { return \"Category\"; }\n public rank: Rank = Rank.User;\n public description?: string;\n\n protected constructor(props: CategoryProps, iModel: IModelDb) {\n super(props, iModel);\n this.rank = JsonUtils.asInt(props.rank);\n this.description = JsonUtils.asString(props.description);\n }\n\n /**\n * Category custom HandledProps include 'rank' and 'description'.\n * @inheritdoc\n * @beta\n */\n protected static override readonly _customHandledProps: CustomHandledProperty[] = [\n { propertyName: \"rank\", source: \"Class\" },\n { propertyName: \"description\", source: \"Class\" },\n ];\n\n /**\n * Category deserializes 'rank' and 'description'.\n * @inheritdoc\n * @beta\n */\n public static override deserialize(props: DeserializeEntityArgs): CategoryProps {\n const elProps = super.deserialize(props) as CategoryProps;\n elProps.description = JsonUtils.asString(props.row.description);\n elProps.rank = JsonUtils.asInt(props.row.rank);\n return elProps;\n }\n\n /**\n * Category serialize 'rank' and 'description'.\n * @inheritdoc\n * @beta\n */\n public static override serialize(props: CategoryProps, iModel: IModelDb): ECSqlRow {\n const inst = super.serialize(props, iModel);\n if (undefined !== props.description) {\n inst.description = props.description;\n }\n inst.rank = props.rank;\n return inst;\n }\n public override toJSON(): CategoryProps {\n const val = super.toJSON() as CategoryProps;\n val.rank = this.rank;\n if (this.description && this.description.length > 0)\n val.description = this.description;\n return val;\n }\n\n /** Get the Id of the default SubCategory for this Category. */\n public myDefaultSubCategoryId(): Id64String { return IModelDb.getDefaultSubCategoryId(this.id); }\n\n /**\n * Set the appearance of the default SubCategory for this Category\n * @beta\n */\n public setDefaultAppearance(txn: EditTxn, props: SubCategoryAppearance.Props | SubCategoryAppearance): void;\n /**\n * Set the appearance of the default SubCategory for this Category\n * @deprecated Use Category.setDefaultAppearance(txn, ...) instead.\n */\n public setDefaultAppearance(props: SubCategoryAppearance.Props | SubCategoryAppearance): void;\n public setDefaultAppearance(txnOrProps: EditTxn | SubCategoryAppearance.Props | SubCategoryAppearance, props?: SubCategoryAppearance.Props | SubCategoryAppearance): void {\n let txn: EditTxn;\n let appearance: SubCategoryAppearance.Props | SubCategoryAppearance;\n if (txnOrProps instanceof EditTxn) {\n txn = txnOrProps;\n if (props === undefined)\n throw new Error(\"Invalid argument\");\n appearance = props;\n } else {\n txn = this.iModel[_implicitTxn];\n appearance = txnOrProps;\n }\n if (appearance instanceof SubCategoryAppearance)\n appearance = appearance.toJSON();\n\n const subCat = this.iModel.elements.getElement<SubCategory>(this.myDefaultSubCategoryId());\n subCat.appearance = new SubCategoryAppearance(appearance);\n subCat.update(txn);\n }\n}\n\n/** Categorizes 2d GeometricElements.\n * @public @preview\n */\nexport class DrawingCategory extends Category {\n public static override get className(): string { return \"DrawingCategory\"; }\n\n protected constructor(opts: ElementProps, iModel: IModelDb) { super(opts, iModel); }\n\n /** Get the name of the CodeSpec that is used by DrawingCategory objects. */\n public static getCodeSpecName(): string { return BisCodeSpec.drawingCategory; }\n\n /** Looks up the CategoryId of a DrawingCategory by model and name */\n public static queryCategoryIdByName(iModel: IModelDb, scopeModelId: Id64String, categoryName: string): Id64String | undefined {\n const code: Code = DrawingCategory.createCode(iModel, scopeModelId, categoryName);\n return iModel.elements.queryElementIdByCode(code);\n }\n\n /** Create a Code for a DrawingCategory given a name that is meant to be unique within the scope of the specified DefinitionModel.\n * @param iModel The IModel\n * @param scopeModelId The Id of the DefinitionModel that contains the DrawingCategory and provides the scope for its name.\n * @param codeValue The name of the category\n * @return A drawing category Code\n */\n public static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code {\n const codeSpec: CodeSpec = iModel.codeSpecs.getByName(DrawingCategory.getCodeSpecName());\n return new Code({ spec: codeSpec.id, scope: scopeModelId, value: codeValue });\n }\n\n /** Create a new DrawingCategory\n * @param iModelDb The iModel\n * @param definitionModelId The [[DefinitionModel]]\n * @param name The name of the DrawingCategory\n * @returns The newly constructed DrawingCategory element.\n * @throws [[IModelError]] if unable to create the element.\n */\n public static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string): DrawingCategory {\n const categoryProps: CategoryProps = {\n classFullName: this.classFullName,\n model: definitionModelId,\n code: this.createCode(iModelDb, definitionModelId, name),\n isPrivate: false,\n };\n return new DrawingCategory(categoryProps, iModelDb);\n }\n\n /**\n * Insert a new DrawingCategory\n * @param txn The EditTxn to use\n * @param definitionModelId Insert the new DrawingCategory into this [[DefinitionModel]]\n * @param name The name of the DrawingCategory\n * @param defaultAppearance The appearance settings to use for the default SubCategory of this DrawingCategory\n * @returns The Id of the newly inserted DrawingCategory element.\n * @throws [[IModelError]] if unable to insert the element.\n * @beta\n */\n public static insert(txn: EditTxn, definitionModelId: Id64String, name: string, defaultAppearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String;\n /**\n * Insert a new DrawingCategory\n * @deprecated Use DrawingCategory.insert(txn, ...) instead.\n */\n public static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, defaultAppearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String;\n public static insert(txnOrDb: EditTxn | IModelDb, definitionModelId: Id64String, name: string, defaultAppearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String {\n const txn = txnOrDb instanceof EditTxn ? txnOrDb : txnOrDb[_implicitTxn];\n const category = this.create(txn.iModel, definitionModelId, name);\n category.id = category.insert(txn);\n category.setDefaultAppearance(txn, defaultAppearance);\n return category.id;\n }\n}\n\n/** Categorizes SpatialElements. See [how to create a SpatialCategory]($docs/learning/backend/CreateElements.md#SpatialCategory).\n * @public @preview\n */\nexport class SpatialCategory extends Category {\n public static override get className(): string { return \"SpatialCategory\"; }\n protected constructor(opts: ElementProps, iModel: IModelDb) { super(opts, iModel); }\n\n /** Get the name of the CodeSpec that is used by SpatialCategory objects. */\n public static getCodeSpecName(): string { return BisCodeSpec.spatialCategory; }\n\n /** Looks up the CategoryId of a SpatialCategory by model and name */\n public static queryCategoryIdByName(iModel: IModelDb, scopeModelId: Id64String, categoryName: string): Id64String | undefined {\n const code: Code = SpatialCategory.createCode(iModel, scopeModelId, categoryName);\n return iModel.elements.queryElementIdByCode(code);\n }\n\n /** Create a Code for a SpatialCategory given a name that is meant to be unique within the scope of the specified DefinitionModel.\n * @param iModel The IModel\n * @param scopeModelId The Id of the DefinitionModel that contains the SpatialCategory and provides the scope for its name.\n * @param codeValue The name of the category\n * @return A spatial category Code\n */\n public static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code {\n const codeSpec: CodeSpec = iModel.codeSpecs.getByName(SpatialCategory.getCodeSpecName());\n return new Code({ spec: codeSpec.id, scope: scopeModelId, value: codeValue });\n }\n\n /** Create a new SpatialCategory\n * @param iModelDb The iModel\n * @param definitionModelId The [[DefinitionModel]]\n * @param name The name/CodeValue of the SpatialCategory\n * @returns The newly constructed SpatialCategory element.\n * @throws [[IModelError]] if unable to create the element.\n */\n public static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string): SpatialCategory {\n const categoryProps: CategoryProps = {\n classFullName: this.classFullName,\n model: definitionModelId,\n code: this.createCode(iModelDb, definitionModelId, name),\n isPrivate: false,\n };\n return new SpatialCategory(categoryProps, iModelDb);\n }\n\n /**\n * Insert a new SpatialCategory\n * @param txn The EditTxn to use\n * @param definitionModelId Insert the new SpatialCategory into this DefinitionModel\n * @param name The name of the SpatialCategory\n * @param defaultAppearance The appearance settings to use for the default SubCategory of this SpatialCategory\n * @returns The Id of the newly inserted SpatialCategory element.\n * @throws [[IModelError]] if unable to insert the element.\n * @beta\n */\n public static insert(txn: EditTxn, definitionModelId: Id64String, name: string, defaultAppearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String;\n /**\n * Insert a new SpatialCategory\n * @deprecated Use SpatialCategory.insert(txn, ...) instead.\n */\n public static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, defaultAppearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String;\n public static insert(txnOrDb: EditTxn | IModelDb, definitionModelId: Id64String, name: string, defaultAppearance: SubCategoryAppearance.Props | SubCategoryAppearance): Id64String {\n const txn = txnOrDb instanceof EditTxn ? txnOrDb : txnOrDb[_implicitTxn];\n const category = this.create(txn.iModel, definitionModelId, name);\n category.id = category.insert(txn);\n category.setDefaultAppearance(txn, defaultAppearance);\n return category.id;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ChangesetECAdaptor.d.ts","sourceRoot":"","sources":["../../src/ChangesetECAdaptor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChangesetECAdaptor.d.ts","sourceRoot":"","sources":["../../src/ChangesetECAdaptor.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ exports.ChangesetECAdaptor = exports.PartialECChangeUnifier = exports.ECChangeUn
11
11
  const core_bentley_1 = require("@itwin/core-bentley");
12
12
  const core_common_1 = require("@itwin/core-common");
13
13
  const ECDb_1 = require("./ECDb");
14
+ const Symbols_1 = require("./internal/Symbols");
14
15
  class ECDbMap {
15
16
  db;
16
17
  _cachedClassMaps = new Map();
@@ -435,10 +436,12 @@ class SqliteBackedInstanceCache {
435
436
  * @throws Error if unable to drop the temporary table.
436
437
  */
437
438
  dropTempTable() {
438
- this._db.saveChanges();
439
- if (this._db instanceof ECDb_1.ECDb)
439
+ if (this._db instanceof ECDb_1.ECDb) {
440
+ this._db.saveChanges();
440
441
  this._db.clearStatementCache();
442
+ }
441
443
  else {
444
+ this._db[Symbols_1._nativeDb].saveChanges();
442
445
  this._db.clearCaches();
443
446
  }
444
447
  this._db.withSqliteStatement(`DROP TABLE IF EXISTS ${this._cacheTable}`, (stmt) => {