@itwin/core-backend 4.8.0-dev.2 → 4.8.0-dev.20

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 (230) hide show
  1. package/CHANGELOG.md +31 -1
  2. package/lib/cjs/BackendHubAccess.d.ts +18 -16
  3. package/lib/cjs/BackendHubAccess.d.ts.map +1 -1
  4. package/lib/cjs/BackendHubAccess.js +16 -15
  5. package/lib/cjs/BackendHubAccess.js.map +1 -1
  6. package/lib/cjs/BackendLoggerCategory.d.ts +3 -1
  7. package/lib/cjs/BackendLoggerCategory.d.ts.map +1 -1
  8. package/lib/cjs/BackendLoggerCategory.js +2 -0
  9. package/lib/cjs/BackendLoggerCategory.js.map +1 -1
  10. package/lib/cjs/BlobContainerService.d.ts +3 -3
  11. package/lib/cjs/BlobContainerService.d.ts.map +1 -1
  12. package/lib/cjs/BlobContainerService.js.map +1 -1
  13. package/lib/cjs/BriefcaseManager.d.ts.map +1 -1
  14. package/lib/cjs/BriefcaseManager.js +4 -2
  15. package/lib/cjs/BriefcaseManager.js.map +1 -1
  16. package/lib/cjs/Category.d.ts +0 -6
  17. package/lib/cjs/Category.d.ts.map +1 -1
  18. package/lib/cjs/Category.js +0 -6
  19. package/lib/cjs/Category.js.map +1 -1
  20. package/lib/cjs/ChangeSummaryManager.d.ts.map +1 -1
  21. package/lib/cjs/ChangeSummaryManager.js +4 -3
  22. package/lib/cjs/ChangeSummaryManager.js.map +1 -1
  23. package/lib/cjs/ChangedElementsDb.d.ts +1 -0
  24. package/lib/cjs/ChangedElementsDb.d.ts.map +1 -1
  25. package/lib/cjs/ChangedElementsDb.js +3 -2
  26. package/lib/cjs/ChangedElementsDb.js.map +1 -1
  27. package/lib/cjs/ChannelControl.d.ts +4 -26
  28. package/lib/cjs/ChannelControl.d.ts.map +1 -1
  29. package/lib/cjs/ChannelControl.js +2 -101
  30. package/lib/cjs/ChannelControl.js.map +1 -1
  31. package/lib/cjs/CheckpointManager.d.ts.map +1 -1
  32. package/lib/cjs/CheckpointManager.js +2 -1
  33. package/lib/cjs/CheckpointManager.js.map +1 -1
  34. package/lib/cjs/CloudSqlite.d.ts +49 -24
  35. package/lib/cjs/CloudSqlite.d.ts.map +1 -1
  36. package/lib/cjs/CloudSqlite.js +66 -7
  37. package/lib/cjs/CloudSqlite.js.map +1 -1
  38. package/lib/cjs/CodeService.d.ts +4 -4
  39. package/lib/cjs/CodeService.d.ts.map +1 -1
  40. package/lib/cjs/CodeService.js.map +1 -1
  41. package/lib/cjs/DevTools.d.ts.map +1 -1
  42. package/lib/cjs/DevTools.js +2 -1
  43. package/lib/cjs/DevTools.js.map +1 -1
  44. package/lib/cjs/DisplayStyle.d.ts +0 -3
  45. package/lib/cjs/DisplayStyle.d.ts.map +1 -1
  46. package/lib/cjs/DisplayStyle.js +0 -3
  47. package/lib/cjs/DisplayStyle.js.map +1 -1
  48. package/lib/cjs/ECDb.js +2 -2
  49. package/lib/cjs/ECDb.js.map +1 -1
  50. package/lib/cjs/ECSchemaXmlContext.js +2 -2
  51. package/lib/cjs/ECSchemaXmlContext.js.map +1 -1
  52. package/lib/cjs/ECSqlStatement.d.ts +6 -3
  53. package/lib/cjs/ECSqlStatement.d.ts.map +1 -1
  54. package/lib/cjs/ECSqlStatement.js +3 -3
  55. package/lib/cjs/ECSqlStatement.js.map +1 -1
  56. package/lib/cjs/Element.d.ts +3 -60
  57. package/lib/cjs/Element.d.ts.map +1 -1
  58. package/lib/cjs/Element.js +8 -64
  59. package/lib/cjs/Element.js.map +1 -1
  60. package/lib/cjs/ElementAspect.d.ts +0 -5
  61. package/lib/cjs/ElementAspect.d.ts.map +1 -1
  62. package/lib/cjs/ElementAspect.js +4 -8
  63. package/lib/cjs/ElementAspect.js.map +1 -1
  64. package/lib/cjs/GeoCoordConfig.d.ts +10 -0
  65. package/lib/cjs/GeoCoordConfig.d.ts.map +1 -1
  66. package/lib/cjs/GeoCoordConfig.js +22 -24
  67. package/lib/cjs/GeoCoordConfig.js.map +1 -1
  68. package/lib/cjs/GeographicCRSServices.js +2 -2
  69. package/lib/cjs/GeographicCRSServices.js.map +1 -1
  70. package/lib/cjs/IModelDb.d.ts +27 -97
  71. package/lib/cjs/IModelDb.d.ts.map +1 -1
  72. package/lib/cjs/IModelDb.js +131 -55
  73. package/lib/cjs/IModelDb.js.map +1 -1
  74. package/lib/cjs/IModelElementCloneContext.js +2 -2
  75. package/lib/cjs/IModelElementCloneContext.js.map +1 -1
  76. package/lib/cjs/IModelHost.d.ts +13 -4
  77. package/lib/cjs/IModelHost.d.ts.map +1 -1
  78. package/lib/cjs/IModelHost.js +39 -32
  79. package/lib/cjs/IModelHost.js.map +1 -1
  80. package/lib/cjs/IpcHost.d.ts.map +1 -1
  81. package/lib/cjs/IpcHost.js +2 -1
  82. package/lib/cjs/IpcHost.js.map +1 -1
  83. package/lib/cjs/LocalHub.d.ts +2 -2
  84. package/lib/cjs/LocalHub.d.ts.map +1 -1
  85. package/lib/cjs/LocalHub.js +17 -17
  86. package/lib/cjs/LocalHub.js.map +1 -1
  87. package/lib/cjs/LockControl.d.ts +66 -0
  88. package/lib/cjs/LockControl.d.ts.map +1 -0
  89. package/lib/cjs/LockControl.js +11 -0
  90. package/lib/cjs/LockControl.js.map +1 -0
  91. package/lib/cjs/Material.d.ts +2 -5
  92. package/lib/cjs/Material.d.ts.map +1 -1
  93. package/lib/cjs/Material.js +6 -4
  94. package/lib/cjs/Material.js.map +1 -1
  95. package/lib/cjs/Model.d.ts +0 -22
  96. package/lib/cjs/Model.d.ts.map +1 -1
  97. package/lib/cjs/Model.js +4 -25
  98. package/lib/cjs/Model.js.map +1 -1
  99. package/lib/cjs/PropertyStore.d.ts +17 -7
  100. package/lib/cjs/PropertyStore.d.ts.map +1 -1
  101. package/lib/cjs/PropertyStore.js +11 -5
  102. package/lib/cjs/PropertyStore.js.map +1 -1
  103. package/lib/cjs/Relationship.d.ts +0 -12
  104. package/lib/cjs/Relationship.d.ts.map +1 -1
  105. package/lib/cjs/Relationship.js +0 -12
  106. package/lib/cjs/Relationship.js.map +1 -1
  107. package/lib/cjs/SQLiteDb.d.ts +2 -3
  108. package/lib/cjs/SQLiteDb.d.ts.map +1 -1
  109. package/lib/cjs/SQLiteDb.js +5 -6
  110. package/lib/cjs/SQLiteDb.js.map +1 -1
  111. package/lib/cjs/SchemaSync.d.ts +1 -1
  112. package/lib/cjs/SchemaSync.d.ts.map +1 -1
  113. package/lib/cjs/SchemaSync.js +2 -2
  114. package/lib/cjs/SchemaSync.js.map +1 -1
  115. package/lib/cjs/SchemaUtils.js +3 -3
  116. package/lib/cjs/SchemaUtils.js.map +1 -1
  117. package/lib/cjs/SqliteChangesetReader.d.ts.map +1 -1
  118. package/lib/cjs/SqliteChangesetReader.js +2 -2
  119. package/lib/cjs/SqliteChangesetReader.js.map +1 -1
  120. package/lib/cjs/SqliteStatement.js +2 -2
  121. package/lib/cjs/SqliteStatement.js.map +1 -1
  122. package/lib/cjs/TextAnnotationGeometry.d.ts +5 -1
  123. package/lib/cjs/TextAnnotationGeometry.d.ts.map +1 -1
  124. package/lib/cjs/TextAnnotationGeometry.js +11 -8
  125. package/lib/cjs/TextAnnotationGeometry.js.map +1 -1
  126. package/lib/cjs/TextAnnotationLayout.d.ts +21 -13
  127. package/lib/cjs/TextAnnotationLayout.d.ts.map +1 -1
  128. package/lib/cjs/TextAnnotationLayout.js +134 -92
  129. package/lib/cjs/TextAnnotationLayout.js.map +1 -1
  130. package/lib/cjs/TxnManager.d.ts +2 -1
  131. package/lib/cjs/TxnManager.d.ts.map +1 -1
  132. package/lib/cjs/TxnManager.js +2 -1
  133. package/lib/cjs/TxnManager.js.map +1 -1
  134. package/lib/cjs/ViewDefinition.d.ts +1 -18
  135. package/lib/cjs/ViewDefinition.d.ts.map +1 -1
  136. package/lib/cjs/ViewDefinition.js +1 -18
  137. package/lib/cjs/ViewDefinition.js.map +1 -1
  138. package/lib/cjs/ViewStore.d.ts +16 -2
  139. package/lib/cjs/ViewStore.d.ts.map +1 -1
  140. package/lib/cjs/ViewStore.js +14 -1
  141. package/lib/cjs/ViewStore.js.map +1 -1
  142. package/lib/cjs/assets/Settings/Schemas/Base.Schema.json +33 -0
  143. package/lib/cjs/assets/Settings/Schemas/Gcs.schema.json +17 -21
  144. package/lib/cjs/assets/Settings/Schemas/Workspace.Schema.json +80 -38
  145. package/lib/cjs/assets/Settings/backend.setting.json5 +8 -119
  146. package/lib/cjs/core-backend.d.ts +3 -2
  147. package/lib/cjs/core-backend.d.ts.map +1 -1
  148. package/lib/cjs/core-backend.js +4 -6
  149. package/lib/cjs/core-backend.js.map +1 -1
  150. package/lib/cjs/domains/FunctionalElements.d.ts +0 -10
  151. package/lib/cjs/domains/FunctionalElements.d.ts.map +1 -1
  152. package/lib/cjs/domains/FunctionalElements.js +0 -10
  153. package/lib/cjs/domains/FunctionalElements.js.map +1 -1
  154. package/lib/cjs/domains/GenericElements.d.ts +0 -18
  155. package/lib/cjs/domains/GenericElements.d.ts.map +1 -1
  156. package/lib/cjs/domains/GenericElements.js +0 -18
  157. package/lib/cjs/domains/GenericElements.js.map +1 -1
  158. package/lib/cjs/internal/ChangesetConflictArgs.d.ts +24 -0
  159. package/lib/cjs/internal/ChangesetConflictArgs.d.ts.map +1 -0
  160. package/lib/cjs/internal/ChangesetConflictArgs.js +7 -0
  161. package/lib/cjs/internal/ChangesetConflictArgs.js.map +1 -0
  162. package/lib/cjs/internal/ChannelAdmin.d.ts +34 -0
  163. package/lib/cjs/internal/ChannelAdmin.d.ts.map +1 -0
  164. package/lib/cjs/internal/ChannelAdmin.js +117 -0
  165. package/lib/cjs/internal/ChannelAdmin.js.map +1 -0
  166. package/lib/cjs/internal/NativePlatform.d.ts +15 -0
  167. package/lib/cjs/internal/NativePlatform.d.ts.map +1 -0
  168. package/lib/cjs/internal/NativePlatform.js +49 -0
  169. package/lib/cjs/internal/NativePlatform.js.map +1 -0
  170. package/lib/cjs/internal/NoLocks.d.ts +6 -0
  171. package/lib/cjs/internal/NoLocks.d.ts.map +1 -0
  172. package/lib/cjs/internal/NoLocks.js +30 -0
  173. package/lib/cjs/internal/NoLocks.js.map +1 -0
  174. package/lib/cjs/{ServerBasedLocks.d.ts → internal/ServerBasedLocks.d.ts} +10 -17
  175. package/lib/cjs/internal/ServerBasedLocks.d.ts.map +1 -0
  176. package/lib/cjs/{ServerBasedLocks.js → internal/ServerBasedLocks.js} +22 -17
  177. package/lib/cjs/internal/ServerBasedLocks.js.map +1 -0
  178. package/lib/cjs/internal/Symbols.d.ts +9 -0
  179. package/lib/cjs/internal/Symbols.d.ts.map +1 -0
  180. package/lib/cjs/internal/Symbols.js +19 -0
  181. package/lib/cjs/internal/Symbols.js.map +1 -0
  182. package/lib/cjs/internal/cross-package.d.ts +3 -0
  183. package/lib/cjs/internal/cross-package.d.ts.map +1 -0
  184. package/lib/cjs/internal/cross-package.js +14 -0
  185. package/lib/cjs/internal/cross-package.js.map +1 -0
  186. package/lib/cjs/internal/workspace/SettingsImpl.d.ts +43 -0
  187. package/lib/cjs/internal/workspace/SettingsImpl.d.ts.map +1 -0
  188. package/lib/cjs/internal/workspace/SettingsImpl.js +161 -0
  189. package/lib/cjs/internal/workspace/SettingsImpl.js.map +1 -0
  190. package/lib/cjs/internal/workspace/SettingsSchemasImpl.d.ts +6 -0
  191. package/lib/cjs/internal/workspace/SettingsSchemasImpl.d.ts.map +1 -0
  192. package/lib/cjs/internal/workspace/SettingsSchemasImpl.js +276 -0
  193. package/lib/cjs/internal/workspace/SettingsSchemasImpl.js.map +1 -0
  194. package/lib/cjs/internal/workspace/WorkspaceImpl.d.ts +41 -0
  195. package/lib/cjs/internal/workspace/WorkspaceImpl.d.ts.map +1 -0
  196. package/lib/cjs/internal/workspace/WorkspaceImpl.js +696 -0
  197. package/lib/cjs/internal/workspace/WorkspaceImpl.js.map +1 -0
  198. package/lib/cjs/internal/workspace/WorkspaceSqliteDb.d.ts +10 -0
  199. package/lib/cjs/internal/workspace/WorkspaceSqliteDb.d.ts.map +1 -0
  200. package/lib/cjs/internal/workspace/WorkspaceSqliteDb.js +41 -0
  201. package/lib/cjs/internal/workspace/WorkspaceSqliteDb.js.map +1 -0
  202. package/lib/cjs/rpc/tracing.js +1 -1
  203. package/lib/cjs/rpc/tracing.js.map +1 -1
  204. package/lib/cjs/rpc-impl/IModelReadRpcImpl.d.ts +1 -0
  205. package/lib/cjs/rpc-impl/IModelReadRpcImpl.d.ts.map +1 -1
  206. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js +5 -2
  207. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  208. package/lib/cjs/rpc-impl/IModelTileRpcImpl.d.ts.map +1 -1
  209. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js +2 -1
  210. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  211. package/lib/cjs/workspace/Settings.d.ts +167 -138
  212. package/lib/cjs/workspace/Settings.d.ts.map +1 -1
  213. package/lib/cjs/workspace/Settings.js +68 -138
  214. package/lib/cjs/workspace/Settings.js.map +1 -1
  215. package/lib/cjs/workspace/SettingsSchemas.d.ts +112 -48
  216. package/lib/cjs/workspace/SettingsSchemas.d.ts.map +1 -1
  217. package/lib/cjs/workspace/SettingsSchemas.js +1 -172
  218. package/lib/cjs/workspace/SettingsSchemas.js.map +1 -1
  219. package/lib/cjs/workspace/Workspace.d.ts +411 -277
  220. package/lib/cjs/workspace/Workspace.d.ts.map +1 -1
  221. package/lib/cjs/workspace/Workspace.js +76 -457
  222. package/lib/cjs/workspace/Workspace.js.map +1 -1
  223. package/lib/cjs/workspace/WorkspaceEditor.d.ts +245 -0
  224. package/lib/cjs/workspace/WorkspaceEditor.d.ts.map +1 -0
  225. package/lib/cjs/workspace/WorkspaceEditor.js +34 -0
  226. package/lib/cjs/workspace/WorkspaceEditor.js.map +1 -0
  227. package/package.json +15 -14
  228. package/lib/cjs/ServerBasedLocks.d.ts.map +0 -1
  229. package/lib/cjs/ServerBasedLocks.js.map +0 -1
  230. package/lib/cjs/assets/Settings/Schemas/Cloud.Schema.json +0 -45
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionalElements.js","sourceRoot":"","sources":["../../../src/domains/FunctionalElements.ts"],"names":[],"mappings":"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","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/** @packageDocumentation\r\n * @module Elements\r\n */\r\n\r\nimport { Id64String } from \"@itwin/core-bentley\";\r\nimport {\r\n FunctionalElementProps, IModel, InformationPartitionElementProps, ModelProps, RelatedElement, TypeDefinitionElementProps,\r\n} from \"@itwin/core-common\";\r\nimport { InformationPartitionElement, RoleElement, TypeDefinitionElement } from \"../Element\";\r\nimport { IModelDb } from \"../IModelDb\";\r\nimport { RoleModel } from \"../Model\";\r\nimport { SubjectOwnsPartitionElements } from \"../NavigationRelationship\";\r\nimport { DrawingGraphicRepresentsElement, ElementRefersToElements } from \"../Relationship\";\r\n\r\n/** A FunctionalPartition element is a key part of the iModel information hierarchy and is always parented\r\n * to a Subject and broken down by a FunctionalModel.\r\n * @public\r\n */\r\nexport class FunctionalPartition extends InformationPartitionElement {\r\n /** @internal */\r\n public static override get className(): string { return \"FunctionalPartition\"; }\r\n\r\n protected constructor(props: InformationPartitionElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A container for persisting FunctionalElements.\r\n * @public\r\n */\r\nexport class FunctionalModel extends RoleModel {\r\n /** @internal */\r\n public static override get className(): string { return \"FunctionalModel\"; }\r\n\r\n public constructor(props: ModelProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n\r\n /** Insert a FunctionalPartition and a FunctionalModel that breaks it down.\r\n * @param iModelDb Insert into this iModel\r\n * @param parentSubjectId The FunctionalPartition will be inserted as a child of this Subject element.\r\n * @param name The name of the FunctionalPartition that the new FunctionalModel will break down.\r\n * @returns The Id of the newly inserted FunctionalPartition and FunctionalModel (same value).\r\n * @throws [[IModelError]] if there is an insert problem.\r\n */\r\n public static insert(iModelDb: IModelDb, parentSubjectId: Id64String, name: string): Id64String {\r\n const partitionProps: InformationPartitionElementProps = {\r\n classFullName: FunctionalPartition.classFullName,\r\n model: IModel.repositoryModelId,\r\n parent: new SubjectOwnsPartitionElements(parentSubjectId),\r\n code: FunctionalPartition.createCode(iModelDb, parentSubjectId, name),\r\n };\r\n const partitionId = iModelDb.elements.insertElement(partitionProps);\r\n return iModelDb.models.insertModel({\r\n classFullName: this.classFullName,\r\n modeledElement: { id: partitionId },\r\n });\r\n }\r\n}\r\n\r\n/** A FunctionalElement captures functional requirements that will ultimately be fulfilled by a PhysicalElement.\r\n * @public\r\n */\r\nexport abstract class FunctionalElement extends RoleElement {\r\n /** @internal */\r\n public static override get className(): string { return \"FunctionalElement\"; }\r\n\r\n protected constructor(props: FunctionalElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A FunctionalBreakdownElement is a *folder* node in the functional hierarchy.\r\n * @public\r\n */\r\nexport abstract class FunctionalBreakdownElement extends FunctionalElement {\r\n /** @internal */\r\n public static override get className(): string { return \"FunctionalBreakdownElement\"; }\r\n\r\n protected constructor(props: FunctionalElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** @public */\r\nexport class FunctionalComposite extends FunctionalBreakdownElement {\r\n /** @internal */\r\n public static override get className(): string { return \"FunctionalComposite\"; }\r\n\r\n protected constructor(props: FunctionalElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A FunctionalComponentElement is a *leaf* node in the functional hierarchy.\r\n * @public\r\n */\r\nexport abstract class FunctionalComponentElement extends FunctionalElement {\r\n /** @internal */\r\n public static override get className(): string { return \"FunctionalComponentElement\"; }\r\n\r\n protected constructor(props: FunctionalElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** Defines a set of properties (the 'type') that can be associated with a Functional Element.\r\n * @public\r\n */\r\nexport abstract class FunctionalType extends TypeDefinitionElement {\r\n /** @internal */\r\n public static override get className(): string { return \"FunctionalType\"; }\r\n\r\n protected constructor(props: TypeDefinitionElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** Relates a [[FunctionalElement]] to its [[FunctionalType]]\r\n * @public\r\n */\r\nexport class FunctionalElementIsOfType extends RelatedElement {\r\n /** @internal */\r\n public static get className(): string { return \"FunctionalElementIsOfType\"; }\r\n public static classFullName = \"Functional:FunctionalElementIsOfType\";\r\n public constructor(id: Id64String, relClassName: string = FunctionalElementIsOfType.classFullName) {\r\n super({ id, relClassName });\r\n }\r\n}\r\n\r\n/** Relates a [[PhysicalElement]] to the [[FunctionalElement]] elements that it fulfills.\r\n * @public\r\n */\r\nexport class PhysicalElementFulfillsFunction extends ElementRefersToElements {\r\n /** @internal */\r\n public static override get className(): string { return \"PhysicalElementFulfillsFunction\"; }\r\n}\r\n\r\n/** Relates a [[DrawingGraphic]] to the [[FunctionalElement]] that it represents\r\n * @public\r\n */\r\nexport class DrawingGraphicRepresentsFunctionalElement extends DrawingGraphicRepresentsElement {\r\n /** @internal */\r\n public static override get className(): string { return \"DrawingGraphicRepresentsFunctionalElement\"; }\r\n}\r\n"]}
1
+ {"version":3,"file":"FunctionalElements.js","sourceRoot":"","sources":["../../../src/domains/FunctionalElements.ts"],"names":[],"mappings":"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","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/** @packageDocumentation\r\n * @module Elements\r\n */\r\n\r\nimport { Id64String } from \"@itwin/core-bentley\";\r\nimport {\r\n FunctionalElementProps, IModel, InformationPartitionElementProps, ModelProps, RelatedElement, TypeDefinitionElementProps,\r\n} from \"@itwin/core-common\";\r\nimport { InformationPartitionElement, RoleElement, TypeDefinitionElement } from \"../Element\";\r\nimport { IModelDb } from \"../IModelDb\";\r\nimport { RoleModel } from \"../Model\";\r\nimport { SubjectOwnsPartitionElements } from \"../NavigationRelationship\";\r\nimport { DrawingGraphicRepresentsElement, ElementRefersToElements } from \"../Relationship\";\r\n\r\n/** A FunctionalPartition element is a key part of the iModel information hierarchy and is always parented\r\n * to a Subject and broken down by a FunctionalModel.\r\n * @public\r\n */\r\nexport class FunctionalPartition extends InformationPartitionElement {\r\n public static override get className(): string { return \"FunctionalPartition\"; }\r\n\r\n protected constructor(props: InformationPartitionElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A container for persisting FunctionalElements.\r\n * @public\r\n */\r\nexport class FunctionalModel extends RoleModel {\r\n public static override get className(): string { return \"FunctionalModel\"; }\r\n\r\n public constructor(props: ModelProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n\r\n /** Insert a FunctionalPartition and a FunctionalModel that breaks it down.\r\n * @param iModelDb Insert into this iModel\r\n * @param parentSubjectId The FunctionalPartition will be inserted as a child of this Subject element.\r\n * @param name The name of the FunctionalPartition that the new FunctionalModel will break down.\r\n * @returns The Id of the newly inserted FunctionalPartition and FunctionalModel (same value).\r\n * @throws [[IModelError]] if there is an insert problem.\r\n */\r\n public static insert(iModelDb: IModelDb, parentSubjectId: Id64String, name: string): Id64String {\r\n const partitionProps: InformationPartitionElementProps = {\r\n classFullName: FunctionalPartition.classFullName,\r\n model: IModel.repositoryModelId,\r\n parent: new SubjectOwnsPartitionElements(parentSubjectId),\r\n code: FunctionalPartition.createCode(iModelDb, parentSubjectId, name),\r\n };\r\n const partitionId = iModelDb.elements.insertElement(partitionProps);\r\n return iModelDb.models.insertModel({\r\n classFullName: this.classFullName,\r\n modeledElement: { id: partitionId },\r\n });\r\n }\r\n}\r\n\r\n/** A FunctionalElement captures functional requirements that will ultimately be fulfilled by a PhysicalElement.\r\n * @public\r\n */\r\nexport abstract class FunctionalElement extends RoleElement {\r\n public static override get className(): string { return \"FunctionalElement\"; }\r\n\r\n protected constructor(props: FunctionalElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A FunctionalBreakdownElement is a *folder* node in the functional hierarchy.\r\n * @public\r\n */\r\nexport abstract class FunctionalBreakdownElement extends FunctionalElement {\r\n public static override get className(): string { return \"FunctionalBreakdownElement\"; }\r\n\r\n protected constructor(props: FunctionalElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** @public */\r\nexport class FunctionalComposite extends FunctionalBreakdownElement {\r\n public static override get className(): string { return \"FunctionalComposite\"; }\r\n\r\n protected constructor(props: FunctionalElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A FunctionalComponentElement is a *leaf* node in the functional hierarchy.\r\n * @public\r\n */\r\nexport abstract class FunctionalComponentElement extends FunctionalElement {\r\n public static override get className(): string { return \"FunctionalComponentElement\"; }\r\n\r\n protected constructor(props: FunctionalElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** Defines a set of properties (the 'type') that can be associated with a Functional Element.\r\n * @public\r\n */\r\nexport abstract class FunctionalType extends TypeDefinitionElement {\r\n public static override get className(): string { return \"FunctionalType\"; }\r\n\r\n protected constructor(props: TypeDefinitionElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** Relates a [[FunctionalElement]] to its [[FunctionalType]]\r\n * @public\r\n */\r\nexport class FunctionalElementIsOfType extends RelatedElement {\r\n public static get className(): string { return \"FunctionalElementIsOfType\"; }\r\n public static classFullName = \"Functional:FunctionalElementIsOfType\";\r\n public constructor(id: Id64String, relClassName: string = FunctionalElementIsOfType.classFullName) {\r\n super({ id, relClassName });\r\n }\r\n}\r\n\r\n/** Relates a [[PhysicalElement]] to the [[FunctionalElement]] elements that it fulfills.\r\n * @public\r\n */\r\nexport class PhysicalElementFulfillsFunction extends ElementRefersToElements {\r\n public static override get className(): string { return \"PhysicalElementFulfillsFunction\"; }\r\n}\r\n\r\n/** Relates a [[DrawingGraphic]] to the [[FunctionalElement]] that it represents\r\n * @public\r\n */\r\nexport class DrawingGraphicRepresentsFunctionalElement extends DrawingGraphicRepresentsElement {\r\n public static override get className(): string { return \"DrawingGraphicRepresentsFunctionalElement\"; }\r\n}\r\n"]}
@@ -11,7 +11,6 @@ import { GraphicalModel3d, GroupInformationModel } from "../Model";
11
11
  * @public
12
12
  */
13
13
  export declare abstract class DetailingSymbol extends GraphicalElement2d {
14
- /** @internal */
15
14
  static get className(): string;
16
15
  constructor(props: GeometricElement2dProps, iModel: IModelDb);
17
16
  }
@@ -19,7 +18,6 @@ export declare abstract class DetailingSymbol extends GraphicalElement2d {
19
18
  * @public
20
19
  */
21
20
  export declare class TitleText extends DetailingSymbol {
22
- /** @internal */
23
21
  static get className(): string;
24
22
  constructor(props: GeometricElement2dProps, iModel: IModelDb);
25
23
  }
@@ -27,7 +25,6 @@ export declare class TitleText extends DetailingSymbol {
27
25
  * @public
28
26
  */
29
27
  export declare class ViewAttachmentLabel extends DetailingSymbol {
30
- /** @internal */
31
28
  static get className(): string;
32
29
  constructor(props: ViewAttachmentLabelProps, iModel: IModelDb);
33
30
  }
@@ -35,7 +32,6 @@ export declare class ViewAttachmentLabel extends DetailingSymbol {
35
32
  * @public
36
33
  */
37
34
  export declare abstract class Callout extends DetailingSymbol {
38
- /** @internal */
39
35
  static get className(): string;
40
36
  constructor(props: CalloutProps, iModel: IModelDb);
41
37
  }
@@ -43,7 +39,6 @@ export declare abstract class Callout extends DetailingSymbol {
43
39
  * @public
44
40
  */
45
41
  export declare class SectionCallout extends Callout {
46
- /** @internal */
47
42
  static get className(): string;
48
43
  constructor(props: CalloutProps, iModel: IModelDb);
49
44
  }
@@ -51,7 +46,6 @@ export declare class SectionCallout extends Callout {
51
46
  * @public
52
47
  */
53
48
  export declare class ElevationCallout extends Callout {
54
- /** @internal */
55
49
  static get className(): string;
56
50
  constructor(props: CalloutProps, iModel: IModelDb);
57
51
  }
@@ -59,7 +53,6 @@ export declare class ElevationCallout extends Callout {
59
53
  * @public
60
54
  */
61
55
  export declare class PlanCallout extends Callout {
62
- /** @internal */
63
56
  static get className(): string;
64
57
  constructor(props: CalloutProps, iModel: IModelDb);
65
58
  }
@@ -67,7 +60,6 @@ export declare class PlanCallout extends Callout {
67
60
  * @public
68
61
  */
69
62
  export declare class DetailCallout extends Callout {
70
- /** @internal */
71
63
  static get className(): string;
72
64
  constructor(props: CalloutProps, iModel: IModelDb);
73
65
  }
@@ -75,7 +67,6 @@ export declare class DetailCallout extends Callout {
75
67
  * @public
76
68
  */
77
69
  export declare class GenericGraphicalModel3d extends GraphicalModel3d {
78
- /** @internal */
79
70
  static get className(): string;
80
71
  constructor(props: GeometricModel3dProps, iModel: IModelDb);
81
72
  /** Insert a BisCore:GraphicalPartition3d and a Generic:GraphicalModel3d that sub-models it.
@@ -93,7 +84,6 @@ export declare class GenericGraphicalModel3d extends GraphicalModel3d {
93
84
  * @public
94
85
  */
95
86
  export declare class Graphic3d extends GraphicalElement3d {
96
- /** @internal */
97
87
  static get className(): string;
98
88
  constructor(props: GeometricElement3dProps, iModel: IModelDb);
99
89
  }
@@ -102,7 +92,6 @@ export declare class Graphic3d extends GraphicalElement3d {
102
92
  * @public
103
93
  */
104
94
  export declare class PhysicalObject extends PhysicalElement {
105
- /** @internal */
106
95
  static get className(): string;
107
96
  constructor(props: PhysicalElementProps, iModel: IModelDb);
108
97
  }
@@ -111,7 +100,6 @@ export declare class PhysicalObject extends PhysicalElement {
111
100
  * @public
112
101
  */
113
102
  export declare class SpatialLocation extends SpatialLocationElement {
114
- /** @internal */
115
103
  static get className(): string;
116
104
  constructor(props: GeometricElement3dProps, iModel: IModelDb);
117
105
  }
@@ -119,7 +107,6 @@ export declare class SpatialLocation extends SpatialLocationElement {
119
107
  * @public
120
108
  */
121
109
  export declare class GroupModel extends GroupInformationModel {
122
- /** @internal */
123
110
  static get className(): string;
124
111
  constructor(props: ModelProps, iModel: IModelDb);
125
112
  /** Insert a GroupInformationPartition and a GroupModel that breaks it down.
@@ -135,7 +122,6 @@ export declare class GroupModel extends GroupInformationModel {
135
122
  * @public
136
123
  */
137
124
  export declare class Group extends GroupInformationElement {
138
- /** @internal */
139
125
  static get className(): string;
140
126
  constructor(props: ElementProps, iModel: IModelDb);
141
127
  }
@@ -144,7 +130,6 @@ export declare class Group extends GroupInformationElement {
144
130
  * @public
145
131
  */
146
132
  export declare class GenericDocument extends Document {
147
- /** @internal */
148
133
  static get className(): string;
149
134
  constructor(props: ElementProps, iModel: IModelDb);
150
135
  }
@@ -153,7 +138,6 @@ export declare class GenericDocument extends Document {
153
138
  * @public
154
139
  */
155
140
  export declare class GenericPhysicalMaterial extends PhysicalMaterial {
156
- /** @internal */
157
141
  static get className(): string;
158
142
  constructor(props: DefinitionElementProps, iModel: IModelDb);
159
143
  }
@@ -162,7 +146,6 @@ export declare class GenericPhysicalMaterial extends PhysicalMaterial {
162
146
  * @public
163
147
  */
164
148
  export declare class GenericPhysicalType extends PhysicalType {
165
- /** @internal */
166
149
  static get className(): string;
167
150
  constructor(props: PhysicalTypeProps, iModel: IModelDb);
168
151
  }
@@ -171,7 +154,6 @@ export declare class GenericPhysicalType extends PhysicalType {
171
154
  * @public
172
155
  */
173
156
  export declare class GenericGraphicalType2d extends GraphicalType2d {
174
- /** @internal */
175
157
  static get className(): string;
176
158
  constructor(props: TypeDefinitionElementProps, iModel: IModelDb);
177
159
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GenericElements.d.ts","sourceRoot":"","sources":["../../../src/domains/GenericElements.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GenericElements.d.ts","sourceRoot":"","sources":["../../../src/domains/GenericElements.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,6 @@ const NavigationRelationship_1 = require("../NavigationRelationship");
17
17
  * @public
18
18
  */
19
19
  class DetailingSymbol extends Element_1.GraphicalElement2d {
20
- /** @internal */
21
20
  static get className() { return "DetailingSymbol"; }
22
21
  constructor(props, iModel) {
23
22
  super(props, iModel);
@@ -28,7 +27,6 @@ exports.DetailingSymbol = DetailingSymbol;
28
27
  * @public
29
28
  */
30
29
  class TitleText extends DetailingSymbol {
31
- /** @internal */
32
30
  static get className() { return "TitleText"; }
33
31
  constructor(props, iModel) {
34
32
  super(props, iModel);
@@ -39,7 +37,6 @@ exports.TitleText = TitleText;
39
37
  * @public
40
38
  */
41
39
  class ViewAttachmentLabel extends DetailingSymbol {
42
- /** @internal */
43
40
  static get className() { return "ViewAttachmentLabel"; }
44
41
  constructor(props, iModel) {
45
42
  super(props, iModel);
@@ -50,7 +47,6 @@ exports.ViewAttachmentLabel = ViewAttachmentLabel;
50
47
  * @public
51
48
  */
52
49
  class Callout extends DetailingSymbol {
53
- /** @internal */
54
50
  static get className() { return "Callout"; }
55
51
  constructor(props, iModel) {
56
52
  super(props, iModel);
@@ -61,7 +57,6 @@ exports.Callout = Callout;
61
57
  * @public
62
58
  */
63
59
  class SectionCallout extends Callout {
64
- /** @internal */
65
60
  static get className() { return "SectionCallout"; }
66
61
  constructor(props, iModel) {
67
62
  super(props, iModel);
@@ -72,7 +67,6 @@ exports.SectionCallout = SectionCallout;
72
67
  * @public
73
68
  */
74
69
  class ElevationCallout extends Callout {
75
- /** @internal */
76
70
  static get className() { return "ElevationCallout"; }
77
71
  constructor(props, iModel) {
78
72
  super(props, iModel);
@@ -83,7 +77,6 @@ exports.ElevationCallout = ElevationCallout;
83
77
  * @public
84
78
  */
85
79
  class PlanCallout extends Callout {
86
- /** @internal */
87
80
  static get className() { return "PlanCallout"; }
88
81
  constructor(props, iModel) {
89
82
  super(props, iModel);
@@ -94,7 +87,6 @@ exports.PlanCallout = PlanCallout;
94
87
  * @public
95
88
  */
96
89
  class DetailCallout extends Callout {
97
- /** @internal */
98
90
  static get className() { return "DetailCallout"; }
99
91
  constructor(props, iModel) {
100
92
  super(props, iModel);
@@ -105,7 +97,6 @@ exports.DetailCallout = DetailCallout;
105
97
  * @public
106
98
  */
107
99
  class GenericGraphicalModel3d extends Model_1.GraphicalModel3d {
108
- /** @internal */
109
100
  static get className() { return "GraphicalModel3d"; }
110
101
  constructor(props, iModel) {
111
102
  super(props, iModel);
@@ -140,7 +131,6 @@ exports.GenericGraphicalModel3d = GenericGraphicalModel3d;
140
131
  * @public
141
132
  */
142
133
  class Graphic3d extends Element_1.GraphicalElement3d {
143
- /** @internal */
144
134
  static get className() { return "Graphic3d"; }
145
135
  constructor(props, iModel) {
146
136
  super(props, iModel);
@@ -152,7 +142,6 @@ exports.Graphic3d = Graphic3d;
152
142
  * @public
153
143
  */
154
144
  class PhysicalObject extends Element_1.PhysicalElement {
155
- /** @internal */
156
145
  static get className() { return "PhysicalObject"; }
157
146
  constructor(props, iModel) {
158
147
  super(props, iModel);
@@ -164,7 +153,6 @@ exports.PhysicalObject = PhysicalObject;
164
153
  * @public
165
154
  */
166
155
  class SpatialLocation extends Element_1.SpatialLocationElement {
167
- /** @internal */
168
156
  static get className() { return "SpatialLocation"; }
169
157
  constructor(props, iModel) {
170
158
  super(props, iModel);
@@ -175,7 +163,6 @@ exports.SpatialLocation = SpatialLocation;
175
163
  * @public
176
164
  */
177
165
  class GroupModel extends Model_1.GroupInformationModel {
178
- /** @internal */
179
166
  static get className() { return "GroupModel"; }
180
167
  constructor(props, iModel) {
181
168
  super(props, iModel);
@@ -206,7 +193,6 @@ exports.GroupModel = GroupModel;
206
193
  * @public
207
194
  */
208
195
  class Group extends Element_1.GroupInformationElement {
209
- /** @internal */
210
196
  static get className() { return "Group"; }
211
197
  constructor(props, iModel) {
212
198
  super(props, iModel);
@@ -218,7 +204,6 @@ exports.Group = Group;
218
204
  * @public
219
205
  */
220
206
  class GenericDocument extends Element_1.Document {
221
- /** @internal */
222
207
  static get className() { return "Document"; }
223
208
  constructor(props, iModel) {
224
209
  super(props, iModel);
@@ -230,7 +215,6 @@ exports.GenericDocument = GenericDocument;
230
215
  * @public
231
216
  */
232
217
  class GenericPhysicalMaterial extends Material_1.PhysicalMaterial {
233
- /** @internal */
234
218
  static get className() { return "PhysicalMaterial"; }
235
219
  constructor(props, iModel) {
236
220
  super(props, iModel);
@@ -242,7 +226,6 @@ exports.GenericPhysicalMaterial = GenericPhysicalMaterial;
242
226
  * @public
243
227
  */
244
228
  class GenericPhysicalType extends Element_1.PhysicalType {
245
- /** @internal */
246
229
  static get className() { return "PhysicalType"; }
247
230
  constructor(props, iModel) {
248
231
  super(props, iModel);
@@ -254,7 +237,6 @@ exports.GenericPhysicalType = GenericPhysicalType;
254
237
  * @public
255
238
  */
256
239
  class GenericGraphicalType2d extends Element_1.GraphicalType2d {
257
- /** @internal */
258
240
  static get className() { return "GraphicalType2d"; }
259
241
  constructor(props, iModel) {
260
242
  super(props, iModel);
@@ -1 +1 @@
1
- {"version":3,"file":"GenericElements.js","sourceRoot":"","sources":["../../../src/domains/GenericElements.ts"],"names":[],"mappings":"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","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/** @packageDocumentation\r\n * @module Elements\r\n */\r\n\r\nimport { Id64String } from \"@itwin/core-bentley\";\r\nimport {\r\n CalloutProps, DefinitionElementProps, ElementProps, GeometricElement2dProps, GeometricElement3dProps, GeometricModel3dProps, IModel,\r\n InformationPartitionElementProps, ModelProps, PhysicalElementProps, PhysicalTypeProps, TypeDefinitionElementProps, ViewAttachmentLabelProps,\r\n} from \"@itwin/core-common\";\r\nimport {\r\n Document, GraphicalElement2d, GraphicalElement3d, GraphicalPartition3d, GraphicalType2d, GroupInformationElement, GroupInformationPartition,\r\n PhysicalElement, PhysicalType, SpatialLocationElement,\r\n} from \"../Element\";\r\nimport { IModelDb } from \"../IModelDb\";\r\nimport { PhysicalMaterial } from \"../Material\";\r\nimport { GraphicalModel3d, GroupInformationModel } from \"../Model\";\r\nimport { SubjectOwnsPartitionElements } from \"../NavigationRelationship\";\r\n\r\n/** A graphical detailing symbol that is placed on a [[Drawing]] or [[Sheet]].\r\n * @public\r\n */\r\nexport abstract class DetailingSymbol extends GraphicalElement2d {\r\n /** @internal */\r\n public static override get className(): string { return \"DetailingSymbol\"; }\r\n public constructor(props: GeometricElement2dProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical DetailingSymbol that contains title text.\r\n * @public\r\n */\r\nexport class TitleText extends DetailingSymbol {\r\n /** @internal */\r\n public static override get className(): string { return \"TitleText\"; }\r\n public constructor(props: GeometricElement2dProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical DetailingSymbol that contains a view attachment label.\r\n * @public\r\n */\r\nexport class ViewAttachmentLabel extends DetailingSymbol {\r\n /** @internal */\r\n public static override get className(): string { return \"ViewAttachmentLabel\"; }\r\n public constructor(props: ViewAttachmentLabelProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical DetailingSymbol that calls out a reference to another drawing.\r\n * @public\r\n */\r\nexport abstract class Callout extends DetailingSymbol {\r\n /** @internal */\r\n public static override get className(): string { return \"Callout\"; }\r\n public constructor(props: CalloutProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical Callout that references a section drawing.\r\n * @public\r\n */\r\nexport class SectionCallout extends Callout {\r\n /** @internal */\r\n public static override get className(): string { return \"SectionCallout\"; }\r\n public constructor(props: CalloutProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical Callout that references an elevation drawing.\r\n * @public\r\n */\r\nexport class ElevationCallout extends Callout {\r\n /** @internal */\r\n public static override get className(): string { return \"ElevationCallout\"; }\r\n public constructor(props: CalloutProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical Callout that references a plan drawing.\r\n * @public\r\n */\r\nexport class PlanCallout extends Callout {\r\n /** @internal */\r\n public static override get className(): string { return \"PlanCallout\"; }\r\n public constructor(props: CalloutProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical Callout that references a detail drawing.\r\n * @public\r\n */\r\nexport class DetailCallout extends Callout {\r\n /** @internal */\r\n public static override get className(): string { return \"DetailCallout\"; }\r\n public constructor(props: CalloutProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A generic container for persisting BisCore:GraphicalElement3d instances.\r\n * @public\r\n */\r\nexport class GenericGraphicalModel3d extends GraphicalModel3d {\r\n /** @internal */\r\n public static override get className(): string { return \"GraphicalModel3d\"; }\r\n public constructor(props: GeometricModel3dProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n /** Insert a BisCore:GraphicalPartition3d and a Generic:GraphicalModel3d that sub-models it.\r\n * @param iModelDb Insert into this iModel\r\n * @param parentSubjectId The GraphicalPartition3d will be inserted as a child of this Subject element.\r\n * @param name The name of the GraphicalPartition3d that the new Generic:GraphicalModel3d will sub-model.\r\n * @param isPlanProjection Optional value (default is false) that indicates if the contents of this model are expected to be in an XY plane.\r\n * @returns The Id of the newly inserted GraphicalPartition3d and GraphicalModel3d (same value).\r\n * @throws [[IModelError]] if there is an insert problem.\r\n */\r\n public static insert(iModelDb: IModelDb, parentSubjectId: Id64String, name: string, isPlanProjection?: boolean): Id64String {\r\n const partitionProps: InformationPartitionElementProps = {\r\n classFullName: GraphicalPartition3d.classFullName,\r\n model: IModel.repositoryModelId,\r\n parent: new SubjectOwnsPartitionElements(parentSubjectId),\r\n code: GraphicalPartition3d.createCode(iModelDb, parentSubjectId, name),\r\n };\r\n const partitionId = iModelDb.elements.insertElement(partitionProps);\r\n const modelProps: GeometricModel3dProps = {\r\n classFullName: this.classFullName,\r\n modeledElement: { id: partitionId },\r\n isPlanProjection,\r\n };\r\n return iModelDb.models.insertModel(modelProps);\r\n }\r\n}\r\n\r\n/** The Generic:Graphic3d class is used when 3D graphics cannot be further classified.\r\n * @note More-specific BisCore:GraphicalElement3d subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class Graphic3d extends GraphicalElement3d {\r\n /** @internal */\r\n public static override get className(): string { return \"Graphic3d\"; }\r\n public constructor(props: GeometricElement3dProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** The Generic:PhysicalObject class is used when physical elements cannot be further classified.\r\n * @note More-specific BisCore:PhysicalElement subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class PhysicalObject extends PhysicalElement {\r\n /** @internal */\r\n public static override get className(): string { return \"PhysicalObject\"; }\r\n public constructor(props: PhysicalElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** The Generic:SpatialLocation class is used when spatial locations cannot be further classified.\r\n * @note More-specific BisCore:SpatialLocationElement subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class SpatialLocation extends SpatialLocationElement {\r\n /** @internal */\r\n public static override get className(): string { return \"SpatialLocation\"; }\r\n public constructor(props: GeometricElement3dProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A generic container for BisCore:GroupInformationElement instances.\r\n * @public\r\n */\r\nexport class GroupModel extends GroupInformationModel {\r\n /** @internal */\r\n public static override get className(): string { return \"GroupModel\"; }\r\n public constructor(props: ModelProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n /** Insert a GroupInformationPartition and a GroupModel that breaks it down.\r\n * @param iModelDb Insert into this iModel\r\n * @param parentSubjectId The GroupInformationPartition will be inserted as a child of this Subject element.\r\n * @param name The name of the GroupInformationPartition that the new GroupModel will break down.\r\n * @returns The Id of the newly inserted GroupModel.\r\n * @throws [[IModelError]] if there is an insert problem.\r\n */\r\n public static insert(iModelDb: IModelDb, parentSubjectId: Id64String, name: string): Id64String {\r\n const partitionProps: InformationPartitionElementProps = {\r\n classFullName: GroupInformationPartition.classFullName,\r\n model: IModel.repositoryModelId,\r\n parent: new SubjectOwnsPartitionElements(parentSubjectId),\r\n code: GroupInformationPartition.createCode(iModelDb, parentSubjectId, name),\r\n };\r\n const partitionId = iModelDb.elements.insertElement(partitionProps);\r\n return iModelDb.models.insertModel({\r\n classFullName: this.classFullName,\r\n modeledElement: { id: partitionId },\r\n });\r\n }\r\n}\r\n\r\n/** The Generic:Group class is used when the group cannot be further classified.\r\n * @public\r\n */\r\nexport class Group extends GroupInformationElement {\r\n /** @internal */\r\n public static override get className(): string { return \"Group\"; }\r\n public constructor(props: ElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** The Generic:Document class is used when a document cannot be further classified.\r\n * @note More-specific BisCore:Document subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class GenericDocument extends Document {\r\n /** @internal */\r\n public static override get className(): string { return \"Document\"; }\r\n public constructor(props: ElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** The Generic:PhysicalMaterial class is used when the physical material cannot be further classified.\r\n * @note More-specific BisCore:PhysicalMaterial subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class GenericPhysicalMaterial extends PhysicalMaterial {\r\n /** @internal */\r\n public static override get className(): string { return \"PhysicalMaterial\"; }\r\n public constructor(props: DefinitionElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** The Generic:PhysicalType class is used when the physical type cannot be further classified.\r\n * @note More-specific BisCore:PhysicalType subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class GenericPhysicalType extends PhysicalType {\r\n /** @internal */\r\n public static override get className(): string { return \"PhysicalType\"; }\r\n public constructor(props: PhysicalTypeProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** The Generic:GraphicalType2d class is used when graphical types cannot be further classified.\r\n * @note More-specific BisCore:GraphicalType2d subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class GenericGraphicalType2d extends GraphicalType2d {\r\n /** @internal */\r\n public static override get className(): string { return \"GraphicalType2d\"; }\r\n public constructor(props: TypeDefinitionElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"GenericElements.js","sourceRoot":"","sources":["../../../src/domains/GenericElements.ts"],"names":[],"mappings":"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","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/** @packageDocumentation\r\n * @module Elements\r\n */\r\n\r\nimport { Id64String } from \"@itwin/core-bentley\";\r\nimport {\r\n CalloutProps, DefinitionElementProps, ElementProps, GeometricElement2dProps, GeometricElement3dProps, GeometricModel3dProps, IModel,\r\n InformationPartitionElementProps, ModelProps, PhysicalElementProps, PhysicalTypeProps, TypeDefinitionElementProps, ViewAttachmentLabelProps,\r\n} from \"@itwin/core-common\";\r\nimport {\r\n Document, GraphicalElement2d, GraphicalElement3d, GraphicalPartition3d, GraphicalType2d, GroupInformationElement, GroupInformationPartition,\r\n PhysicalElement, PhysicalType, SpatialLocationElement,\r\n} from \"../Element\";\r\nimport { IModelDb } from \"../IModelDb\";\r\nimport { PhysicalMaterial } from \"../Material\";\r\nimport { GraphicalModel3d, GroupInformationModel } from \"../Model\";\r\nimport { SubjectOwnsPartitionElements } from \"../NavigationRelationship\";\r\n\r\n/** A graphical detailing symbol that is placed on a [[Drawing]] or [[Sheet]].\r\n * @public\r\n */\r\nexport abstract class DetailingSymbol extends GraphicalElement2d {\r\n public static override get className(): string { return \"DetailingSymbol\"; }\r\n public constructor(props: GeometricElement2dProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical DetailingSymbol that contains title text.\r\n * @public\r\n */\r\nexport class TitleText extends DetailingSymbol {\r\n public static override get className(): string { return \"TitleText\"; }\r\n public constructor(props: GeometricElement2dProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical DetailingSymbol that contains a view attachment label.\r\n * @public\r\n */\r\nexport class ViewAttachmentLabel extends DetailingSymbol {\r\n public static override get className(): string { return \"ViewAttachmentLabel\"; }\r\n public constructor(props: ViewAttachmentLabelProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical DetailingSymbol that calls out a reference to another drawing.\r\n * @public\r\n */\r\nexport abstract class Callout extends DetailingSymbol {\r\n public static override get className(): string { return \"Callout\"; }\r\n public constructor(props: CalloutProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical Callout that references a section drawing.\r\n * @public\r\n */\r\nexport class SectionCallout extends Callout {\r\n public static override get className(): string { return \"SectionCallout\"; }\r\n public constructor(props: CalloutProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical Callout that references an elevation drawing.\r\n * @public\r\n */\r\nexport class ElevationCallout extends Callout {\r\n public static override get className(): string { return \"ElevationCallout\"; }\r\n public constructor(props: CalloutProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical Callout that references a plan drawing.\r\n * @public\r\n */\r\nexport class PlanCallout extends Callout {\r\n public static override get className(): string { return \"PlanCallout\"; }\r\n public constructor(props: CalloutProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A graphical Callout that references a detail drawing.\r\n * @public\r\n */\r\nexport class DetailCallout extends Callout {\r\n public static override get className(): string { return \"DetailCallout\"; }\r\n public constructor(props: CalloutProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A generic container for persisting BisCore:GraphicalElement3d instances.\r\n * @public\r\n */\r\nexport class GenericGraphicalModel3d extends GraphicalModel3d {\r\n public static override get className(): string { return \"GraphicalModel3d\"; }\r\n public constructor(props: GeometricModel3dProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n /** Insert a BisCore:GraphicalPartition3d and a Generic:GraphicalModel3d that sub-models it.\r\n * @param iModelDb Insert into this iModel\r\n * @param parentSubjectId The GraphicalPartition3d will be inserted as a child of this Subject element.\r\n * @param name The name of the GraphicalPartition3d that the new Generic:GraphicalModel3d will sub-model.\r\n * @param isPlanProjection Optional value (default is false) that indicates if the contents of this model are expected to be in an XY plane.\r\n * @returns The Id of the newly inserted GraphicalPartition3d and GraphicalModel3d (same value).\r\n * @throws [[IModelError]] if there is an insert problem.\r\n */\r\n public static insert(iModelDb: IModelDb, parentSubjectId: Id64String, name: string, isPlanProjection?: boolean): Id64String {\r\n const partitionProps: InformationPartitionElementProps = {\r\n classFullName: GraphicalPartition3d.classFullName,\r\n model: IModel.repositoryModelId,\r\n parent: new SubjectOwnsPartitionElements(parentSubjectId),\r\n code: GraphicalPartition3d.createCode(iModelDb, parentSubjectId, name),\r\n };\r\n const partitionId = iModelDb.elements.insertElement(partitionProps);\r\n const modelProps: GeometricModel3dProps = {\r\n classFullName: this.classFullName,\r\n modeledElement: { id: partitionId },\r\n isPlanProjection,\r\n };\r\n return iModelDb.models.insertModel(modelProps);\r\n }\r\n}\r\n\r\n/** The Generic:Graphic3d class is used when 3D graphics cannot be further classified.\r\n * @note More-specific BisCore:GraphicalElement3d subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class Graphic3d extends GraphicalElement3d {\r\n public static override get className(): string { return \"Graphic3d\"; }\r\n public constructor(props: GeometricElement3dProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** The Generic:PhysicalObject class is used when physical elements cannot be further classified.\r\n * @note More-specific BisCore:PhysicalElement subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class PhysicalObject extends PhysicalElement {\r\n public static override get className(): string { return \"PhysicalObject\"; }\r\n public constructor(props: PhysicalElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** The Generic:SpatialLocation class is used when spatial locations cannot be further classified.\r\n * @note More-specific BisCore:SpatialLocationElement subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class SpatialLocation extends SpatialLocationElement {\r\n public static override get className(): string { return \"SpatialLocation\"; }\r\n public constructor(props: GeometricElement3dProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** A generic container for BisCore:GroupInformationElement instances.\r\n * @public\r\n */\r\nexport class GroupModel extends GroupInformationModel {\r\n public static override get className(): string { return \"GroupModel\"; }\r\n public constructor(props: ModelProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n /** Insert a GroupInformationPartition and a GroupModel that breaks it down.\r\n * @param iModelDb Insert into this iModel\r\n * @param parentSubjectId The GroupInformationPartition will be inserted as a child of this Subject element.\r\n * @param name The name of the GroupInformationPartition that the new GroupModel will break down.\r\n * @returns The Id of the newly inserted GroupModel.\r\n * @throws [[IModelError]] if there is an insert problem.\r\n */\r\n public static insert(iModelDb: IModelDb, parentSubjectId: Id64String, name: string): Id64String {\r\n const partitionProps: InformationPartitionElementProps = {\r\n classFullName: GroupInformationPartition.classFullName,\r\n model: IModel.repositoryModelId,\r\n parent: new SubjectOwnsPartitionElements(parentSubjectId),\r\n code: GroupInformationPartition.createCode(iModelDb, parentSubjectId, name),\r\n };\r\n const partitionId = iModelDb.elements.insertElement(partitionProps);\r\n return iModelDb.models.insertModel({\r\n classFullName: this.classFullName,\r\n modeledElement: { id: partitionId },\r\n });\r\n }\r\n}\r\n\r\n/** The Generic:Group class is used when the group cannot be further classified.\r\n * @public\r\n */\r\nexport class Group extends GroupInformationElement {\r\n public static override get className(): string { return \"Group\"; }\r\n public constructor(props: ElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** The Generic:Document class is used when a document cannot be further classified.\r\n * @note More-specific BisCore:Document subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class GenericDocument extends Document {\r\n public static override get className(): string { return \"Document\"; }\r\n public constructor(props: ElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** The Generic:PhysicalMaterial class is used when the physical material cannot be further classified.\r\n * @note More-specific BisCore:PhysicalMaterial subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class GenericPhysicalMaterial extends PhysicalMaterial {\r\n public static override get className(): string { return \"PhysicalMaterial\"; }\r\n public constructor(props: DefinitionElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** The Generic:PhysicalType class is used when the physical type cannot be further classified.\r\n * @note More-specific BisCore:PhysicalType subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class GenericPhysicalType extends PhysicalType {\r\n public static override get className(): string { return \"PhysicalType\"; }\r\n public constructor(props: PhysicalTypeProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n\r\n/** The Generic:GraphicalType2d class is used when graphical types cannot be further classified.\r\n * @note More-specific BisCore:GraphicalType2d subclasses should be used wherever possible.\r\n * @public\r\n */\r\nexport class GenericGraphicalType2d extends GraphicalType2d {\r\n public static override get className(): string { return \"GraphicalType2d\"; }\r\n public constructor(props: TypeDefinitionElementProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n}\r\n"]}
@@ -0,0 +1,24 @@
1
+ /** @packageDocumentation
2
+ * @module iModels
3
+ */
4
+ import { DbChangeStage, DbConflictCause, DbOpcode, DbValueType, Id64String } from "@itwin/core-bentley";
5
+ export interface ChangesetConflictArgs {
6
+ cause: DbConflictCause;
7
+ opcode: DbOpcode;
8
+ indirect: boolean;
9
+ tableName: string;
10
+ changesetFile?: string;
11
+ columnCount: number;
12
+ getForeignKeyConflicts: () => number;
13
+ dump: () => void;
14
+ setLastError: (message: string) => void;
15
+ getPrimaryKeyColumns: () => number[];
16
+ getValueType: (columnIndex: number, stage: DbChangeStage) => DbValueType | null | undefined;
17
+ getValueBinary: (columnIndex: number, stage: DbChangeStage) => Uint8Array | null | undefined;
18
+ getValueId: (columnIndex: number, stage: DbChangeStage) => Id64String | null | undefined;
19
+ getValueText: (columnIndex: number, stage: DbChangeStage) => string | null | undefined;
20
+ getValueInteger: (columnIndex: number, stage: DbChangeStage) => number | null | undefined;
21
+ getValueDouble: (columnIndex: number, stage: DbChangeStage) => number | null | undefined;
22
+ isValueNull: (columnIndex: number, stage: DbChangeStage) => boolean | undefined;
23
+ }
24
+ //# sourceMappingURL=ChangesetConflictArgs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChangesetConflictArgs.d.ts","sourceRoot":"","sources":["../../../src/internal/ChangesetConflictArgs.ts"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAExG,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,eAAe,CAAC;IACvB,MAAM,EAAE,QAAQ,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB,EAAE,MAAM,MAAM,CAAC;IACrC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,oBAAoB,EAAE,MAAM,MAAM,EAAE,CAAC;IACrC,YAAY,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,KAAK,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IAC5F,cAAc,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,KAAK,UAAU,GAAG,IAAI,GAAG,SAAS,CAAC;IAC7F,UAAU,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,KAAK,UAAU,GAAG,IAAI,GAAG,SAAS,CAAC;IACzF,YAAY,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACvF,eAAe,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1F,cAAc,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACzF,WAAW,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,KAAK,OAAO,GAAG,SAAS,CAAC;CACjF"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=ChangesetConflictArgs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChangesetConflictArgs.js","sourceRoot":"","sources":["../../../src/internal/ChangesetConflictArgs.ts"],"names":[],"mappings":";AAAA;;;+FAG+F","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\n/** @packageDocumentation\r\n * @module iModels\r\n */\r\n\r\nimport { DbChangeStage, DbConflictCause, DbOpcode, DbValueType, Id64String } from \"@itwin/core-bentley\";\r\n\r\nexport interface ChangesetConflictArgs {\r\n cause: DbConflictCause;\r\n opcode: DbOpcode;\r\n indirect: boolean;\r\n tableName: string;\r\n changesetFile?: string;\r\n columnCount: number;\r\n getForeignKeyConflicts: () => number;\r\n dump: () => void;\r\n setLastError: (message: string) => void;\r\n getPrimaryKeyColumns: () => number[];\r\n getValueType: (columnIndex: number, stage: DbChangeStage) => DbValueType | null | undefined;\r\n getValueBinary: (columnIndex: number, stage: DbChangeStage) => Uint8Array | null | undefined;\r\n getValueId: (columnIndex: number, stage: DbChangeStage) => Id64String | null | undefined;\r\n getValueText: (columnIndex: number, stage: DbChangeStage) => string | null | undefined;\r\n getValueInteger: (columnIndex: number, stage: DbChangeStage) => number | null | undefined;\r\n getValueDouble: (columnIndex: number, stage: DbChangeStage) => number | null | undefined;\r\n isValueNull: (columnIndex: number, stage: DbChangeStage) => boolean | undefined;\r\n}\r\n\r\n"]}
@@ -0,0 +1,34 @@
1
+ /** @packageDocumentation
2
+ * @module Elements
3
+ */
4
+ import { Id64String } from "@itwin/core-bentley";
5
+ import { IModelDb } from "../IModelDb";
6
+ import { ChannelControl, ChannelKey } from "../ChannelControl";
7
+ import { _implementationProhibited, _verifyChannel } from "./Symbols";
8
+ declare class ChannelAdmin implements ChannelControl {
9
+ private _iModel;
10
+ static readonly channelClassName = "bis:ChannelRootAspect";
11
+ readonly [_implementationProhibited]: undefined;
12
+ private _allowedChannels;
13
+ private _allowedModels;
14
+ private _deniedModels;
15
+ constructor(_iModel: IModelDb);
16
+ addAllowedChannel(channelKey: ChannelKey): void;
17
+ removeAllowedChannel(channelKey: ChannelKey): void;
18
+ getChannelKey(elementId: Id64String): ChannelKey;
19
+ [_verifyChannel](modelId: Id64String): void;
20
+ makeChannelRoot(args: {
21
+ elementId: Id64String;
22
+ channelKey: ChannelKey;
23
+ }): void;
24
+ insertChannelSubject(args: {
25
+ subjectName: string;
26
+ channelKey: ChannelKey;
27
+ parentSubjectId?: Id64String;
28
+ description?: string;
29
+ }): Id64String;
30
+ queryChannelRoot(channelKey: ChannelKey): Id64String | undefined;
31
+ }
32
+ export declare function createChannelControl(iModel: IModelDb): ChannelAdmin;
33
+ export {};
34
+ //# sourceMappingURL=ChannelAdmin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChannelAdmin.d.ts","sourceRoot":"","sources":["../../../src/internal/ChannelAdmin.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAY,UAAU,EAAgB,MAAM,qBAAqB,CAAC;AAGzE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEtE,cAAM,YAAa,YAAW,cAAc;IAQvB,OAAO,CAAC,OAAO;IAPlC,gBAAuB,gBAAgB,2BAA2B;IAElE,SAAgB,CAAC,yBAAyB,CAAC,YAAa;IACxD,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,aAAa,CAAqC;gBAE/B,OAAO,EAAE,QAAQ;IAMrC,iBAAiB,CAAC,UAAU,EAAE,UAAU;IAKxC,oBAAoB,CAAC,UAAU,EAAE,UAAU;IAK3C,aAAa,CAAC,SAAS,EAAE,UAAU,GAAG,UAAU;IA4BhD,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;IAmB3C,eAAe,CAAC,IAAI,EAAE;QAAE,SAAS,EAAE,UAAU,CAAC;QAAC,UAAU,EAAE,UAAU,CAAA;KAAE;IAWvE,oBAAoB,CAAC,IAAI,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,UAAU,CAAC;QAAC,eAAe,CAAC,EAAE,UAAU,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,UAAU;IAY3I,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS;CAmBxE;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,QAAQ,GAAG,YAAY,CAEnE"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module Elements
8
+ */
9
+ var _a;
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.createChannelControl = void 0;
12
+ const core_bentley_1 = require("@itwin/core-bentley");
13
+ const core_common_1 = require("@itwin/core-common");
14
+ const Element_1 = require("../Element");
15
+ const IModelHost_1 = require("../IModelHost");
16
+ const ChannelControl_1 = require("../ChannelControl");
17
+ const Symbols_1 = require("./Symbols");
18
+ class ChannelAdmin {
19
+ constructor(_iModel) {
20
+ this._iModel = _iModel;
21
+ this[_a] = undefined;
22
+ this._allowedChannels = new Set();
23
+ this._allowedModels = new Set();
24
+ this._deniedModels = new Map();
25
+ // for backwards compatibility, allow the shared channel unless explicitly turned off in IModelHostOptions.
26
+ if (IModelHost_1.IModelHost.configuration?.allowSharedChannel !== false)
27
+ this._allowedChannels.add(ChannelControl_1.ChannelControl.sharedChannelName);
28
+ }
29
+ addAllowedChannel(channelKey) {
30
+ this._allowedChannels.add(channelKey);
31
+ this._deniedModels.clear();
32
+ }
33
+ removeAllowedChannel(channelKey) {
34
+ this._allowedChannels.delete(channelKey);
35
+ this._allowedModels.clear();
36
+ }
37
+ getChannelKey(elementId) {
38
+ if (elementId === core_common_1.IModel.rootSubjectId)
39
+ return ChannelControl_1.ChannelControl.sharedChannelName;
40
+ try {
41
+ const channel = this._iModel.withPreparedStatement(`SELECT Owner FROM ${ChannelAdmin.channelClassName} WHERE Element.Id=?`, (stmt) => {
42
+ stmt.bindId(1, elementId);
43
+ return core_bentley_1.DbResult.BE_SQLITE_ROW === stmt.step() ? stmt.getValue(0).getString() : undefined;
44
+ });
45
+ if (channel !== undefined)
46
+ return channel;
47
+ }
48
+ catch {
49
+ // Exception happens if the iModel is too old: ChannelRootAspect class not present in the BisCore schema (older than v1.0.10).
50
+ // In that case all data in such iModel is assumed to be in the shared channel.
51
+ return ChannelControl_1.ChannelControl.sharedChannelName;
52
+ }
53
+ const parentId = this._iModel.withPreparedSqliteStatement("SELECT ParentId,ModelId FROM bis_Element WHERE id=?", (stmt) => {
54
+ stmt.bindId(1, elementId);
55
+ if (core_bentley_1.DbResult.BE_SQLITE_ROW !== stmt.step())
56
+ throw new core_common_1.IModelError(core_bentley_1.IModelStatus.NotFound, "Element does not exist");
57
+ return stmt.getValueId(0) ?? stmt.getValueId(1); // if parent is undefined, use modelId
58
+ });
59
+ return this.getChannelKey(parentId);
60
+ }
61
+ [(_a = Symbols_1._implementationProhibited, Symbols_1._verifyChannel)](modelId) {
62
+ // Note: indirect changes are permitted to change any channel
63
+ if (this._allowedModels.has(modelId) || this._iModel.nativeDb.isIndirectChanges())
64
+ return;
65
+ const deniedChannel = this._deniedModels.get(modelId);
66
+ if (undefined !== deniedChannel)
67
+ throw new Error(`channel "${deniedChannel}" is not allowed`);
68
+ const channel = this.getChannelKey(modelId);
69
+ if (this._allowedChannels.has(channel)) {
70
+ this._allowedModels.add(modelId);
71
+ return;
72
+ }
73
+ this._deniedModels.set(modelId, channel);
74
+ return this[Symbols_1._verifyChannel](modelId);
75
+ }
76
+ makeChannelRoot(args) {
77
+ if (ChannelControl_1.ChannelControl.sharedChannelName !== this.getChannelKey(args.elementId))
78
+ throw new Error("channels may not nest");
79
+ if (this.queryChannelRoot(args.channelKey) !== undefined)
80
+ throw new Error("a channel root for the specified key already exists");
81
+ const props = { classFullName: ChannelAdmin.channelClassName, element: { id: args.elementId }, owner: args.channelKey };
82
+ this._iModel.elements.insertAspect(props);
83
+ }
84
+ insertChannelSubject(args) {
85
+ // Check if channelKey already exists before inserting Subject.
86
+ // makeChannelRoot will check that again, but at that point the new Subject is already inserted.
87
+ // Prefer to check twice instead of deleting the Subject in the latter option.
88
+ if (this.queryChannelRoot(args.channelKey) !== undefined)
89
+ throw new Error("a channel root for the specified key already exists");
90
+ const elementId = Element_1.Subject.insert(this._iModel, args.parentSubjectId ?? core_common_1.IModel.rootSubjectId, args.subjectName, args.description);
91
+ this.makeChannelRoot({ elementId, channelKey: args.channelKey });
92
+ return elementId;
93
+ }
94
+ queryChannelRoot(channelKey) {
95
+ if (channelKey === ChannelControl_1.ChannelControl.sharedChannelName)
96
+ // RootSubject acts as the ChannelRoot element of the shared channel
97
+ return core_common_1.IModel.rootSubjectId;
98
+ try {
99
+ const channelRoot = this._iModel.withPreparedStatement(`SELECT Element.Id FROM ${ChannelAdmin.channelClassName} WHERE Owner=?`, (stmt) => {
100
+ stmt.bindString(1, channelKey);
101
+ return core_bentley_1.DbResult.BE_SQLITE_ROW === stmt.step() ? stmt.getValue(0).getId() : undefined;
102
+ });
103
+ return channelRoot;
104
+ }
105
+ catch {
106
+ // Exception happens if the iModel is too old: ChannelRootAspect class not present in the BisCore schema (older than v1.0.10).
107
+ // In that case all data in such iModel is assumed to be in the shared channel.
108
+ return undefined;
109
+ }
110
+ }
111
+ }
112
+ ChannelAdmin.channelClassName = "bis:ChannelRootAspect";
113
+ function createChannelControl(iModel) {
114
+ return new ChannelAdmin(iModel);
115
+ }
116
+ exports.createChannelControl = createChannelControl;
117
+ //# sourceMappingURL=ChannelAdmin.js.map