@itwin/presentation-common 3.6.0-dev.7 → 4.0.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (368) hide show
  1. package/CHANGELOG.md +26 -1
  2. package/LICENSE.md +1 -1
  3. package/Ruleset.schema.json +236 -309
  4. package/lib/cjs/presentation-common/EC.d.ts +52 -17
  5. package/lib/cjs/presentation-common/EC.d.ts.map +1 -1
  6. package/lib/cjs/presentation-common/EC.js +74 -54
  7. package/lib/cjs/presentation-common/EC.js.map +1 -1
  8. package/lib/cjs/presentation-common/ElementProperties.d.ts +14 -14
  9. package/lib/cjs/presentation-common/ElementProperties.js.map +1 -1
  10. package/lib/cjs/presentation-common/InstanceFilterDefinition.d.ts +43 -9
  11. package/lib/cjs/presentation-common/InstanceFilterDefinition.d.ts.map +1 -1
  12. package/lib/cjs/presentation-common/InstanceFilterDefinition.js.map +1 -1
  13. package/lib/cjs/presentation-common/KeySet.d.ts.map +1 -1
  14. package/lib/cjs/presentation-common/KeySet.js +5 -0
  15. package/lib/cjs/presentation-common/KeySet.js.map +1 -1
  16. package/lib/cjs/presentation-common/LabelDefinition.d.ts +24 -16
  17. package/lib/cjs/presentation-common/LabelDefinition.d.ts.map +1 -1
  18. package/lib/cjs/presentation-common/LabelDefinition.js +26 -29
  19. package/lib/cjs/presentation-common/LabelDefinition.js.map +1 -1
  20. package/lib/cjs/presentation-common/PresentationIpcInterface.d.ts +7 -4
  21. package/lib/cjs/presentation-common/PresentationIpcInterface.d.ts.map +1 -1
  22. package/lib/cjs/presentation-common/PresentationIpcInterface.js.map +1 -1
  23. package/lib/cjs/presentation-common/PresentationManagerOptions.d.ts +30 -11
  24. package/lib/cjs/presentation-common/PresentationManagerOptions.d.ts.map +1 -1
  25. package/lib/cjs/presentation-common/PresentationManagerOptions.js +1 -1
  26. package/lib/cjs/presentation-common/PresentationManagerOptions.js.map +1 -1
  27. package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts +24 -19
  28. package/lib/cjs/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
  29. package/lib/cjs/presentation-common/PresentationRpcInterface.js +7 -5
  30. package/lib/cjs/presentation-common/PresentationRpcInterface.js.map +1 -1
  31. package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts +9 -8
  32. package/lib/cjs/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
  33. package/lib/cjs/presentation-common/RpcRequestsHandler.js +17 -1
  34. package/lib/cjs/presentation-common/RpcRequestsHandler.js.map +1 -1
  35. package/lib/cjs/presentation-common/RulesetVariables.d.ts +5 -0
  36. package/lib/cjs/presentation-common/RulesetVariables.d.ts.map +1 -1
  37. package/lib/cjs/presentation-common/RulesetVariables.js.map +1 -1
  38. package/lib/cjs/presentation-common/Update.d.ts +23 -4
  39. package/lib/cjs/presentation-common/Update.d.ts.map +1 -1
  40. package/lib/cjs/presentation-common/Update.js +34 -4
  41. package/lib/cjs/presentation-common/Update.js.map +1 -1
  42. package/lib/cjs/presentation-common/content/Category.d.ts.map +1 -1
  43. package/lib/cjs/presentation-common/content/Category.js +1 -2
  44. package/lib/cjs/presentation-common/content/Category.js.map +1 -1
  45. package/lib/cjs/presentation-common/content/ContentTraverser.d.ts +194 -24
  46. package/lib/cjs/presentation-common/content/ContentTraverser.d.ts.map +1 -1
  47. package/lib/cjs/presentation-common/content/ContentTraverser.js +63 -44
  48. package/lib/cjs/presentation-common/content/ContentTraverser.js.map +1 -1
  49. package/lib/cjs/presentation-common/content/Descriptor.d.ts +76 -23
  50. package/lib/cjs/presentation-common/content/Descriptor.d.ts.map +1 -1
  51. package/lib/cjs/presentation-common/content/Descriptor.js +5 -7
  52. package/lib/cjs/presentation-common/content/Descriptor.js.map +1 -1
  53. package/lib/cjs/presentation-common/content/Fields.d.ts +24 -5
  54. package/lib/cjs/presentation-common/content/Fields.d.ts.map +1 -1
  55. package/lib/cjs/presentation-common/content/Fields.js +10 -7
  56. package/lib/cjs/presentation-common/content/Fields.js.map +1 -1
  57. package/lib/cjs/presentation-common/content/Item.d.ts +8 -10
  58. package/lib/cjs/presentation-common/content/Item.d.ts.map +1 -1
  59. package/lib/cjs/presentation-common/content/Item.js +6 -8
  60. package/lib/cjs/presentation-common/content/Item.js.map +1 -1
  61. package/lib/cjs/presentation-common/content/Property.d.ts +8 -2
  62. package/lib/cjs/presentation-common/content/Property.d.ts.map +1 -1
  63. package/lib/cjs/presentation-common/content/Property.js +12 -8
  64. package/lib/cjs/presentation-common/content/Property.js.map +1 -1
  65. package/lib/cjs/presentation-common/content/Value.d.ts +43 -11
  66. package/lib/cjs/presentation-common/content/Value.d.ts.map +1 -1
  67. package/lib/cjs/presentation-common/content/Value.js +72 -16
  68. package/lib/cjs/presentation-common/content/Value.js.map +1 -1
  69. package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.d.ts +38 -0
  70. package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.d.ts.map +1 -0
  71. package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.js +32 -0
  72. package/lib/cjs/presentation-common/hierarchy/HierarchyLevel.js.map +1 -0
  73. package/lib/cjs/presentation-common/hierarchy/Key.d.ts +75 -14
  74. package/lib/cjs/presentation-common/hierarchy/Key.d.ts.map +1 -1
  75. package/lib/cjs/presentation-common/hierarchy/Key.js +15 -6
  76. package/lib/cjs/presentation-common/hierarchy/Key.js.map +1 -1
  77. package/lib/cjs/presentation-common/hierarchy/Node.d.ts +32 -19
  78. package/lib/cjs/presentation-common/hierarchy/Node.d.ts.map +1 -1
  79. package/lib/cjs/presentation-common/hierarchy/Node.js +23 -14
  80. package/lib/cjs/presentation-common/hierarchy/Node.js.map +1 -1
  81. package/lib/cjs/presentation-common/hierarchy/NodePathElement.d.ts +18 -7
  82. package/lib/cjs/presentation-common/hierarchy/NodePathElement.d.ts.map +1 -1
  83. package/lib/cjs/presentation-common/hierarchy/NodePathElement.js +33 -9
  84. package/lib/cjs/presentation-common/hierarchy/NodePathElement.js.map +1 -1
  85. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.d.ts +5 -2
  86. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.d.ts.map +1 -1
  87. package/lib/cjs/presentation-common/rules/RelationshipPathSpecification.js.map +1 -1
  88. package/lib/cjs/presentation-common/rules/Rule.d.ts +6 -4
  89. package/lib/cjs/presentation-common/rules/Rule.d.ts.map +1 -1
  90. package/lib/cjs/presentation-common/rules/Rule.js.map +1 -1
  91. package/lib/cjs/presentation-common/rules/Ruleset.d.ts +0 -1
  92. package/lib/cjs/presentation-common/rules/Ruleset.d.ts.map +1 -1
  93. package/lib/cjs/presentation-common/rules/Ruleset.js.map +1 -1
  94. package/lib/cjs/presentation-common/rules/SchemasSpecification.d.ts +1 -1
  95. package/lib/cjs/presentation-common/rules/SchemasSpecification.js.map +1 -1
  96. package/lib/cjs/presentation-common/rules/Variables.d.ts +5 -2
  97. package/lib/cjs/presentation-common/rules/Variables.d.ts.map +1 -1
  98. package/lib/cjs/presentation-common/rules/Variables.js.map +1 -1
  99. package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts +3 -3
  100. package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts.map +1 -1
  101. package/lib/cjs/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js.map +1 -1
  102. package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts +2 -2
  103. package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts.map +1 -1
  104. package/lib/cjs/presentation-common/rules/content/ContentRelatedInstancesSpecification.js.map +1 -1
  105. package/lib/cjs/presentation-common/rules/content/ContentRule.d.ts +2 -2
  106. package/lib/cjs/presentation-common/rules/content/ContentRule.d.ts.map +1 -1
  107. package/lib/cjs/presentation-common/rules/content/ContentRule.js.map +1 -1
  108. package/lib/cjs/presentation-common/rules/content/ContentSpecification.d.ts +6 -3
  109. package/lib/cjs/presentation-common/rules/content/ContentSpecification.d.ts.map +1 -1
  110. package/lib/cjs/presentation-common/rules/content/ContentSpecification.js.map +1 -1
  111. package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts +2 -2
  112. package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts.map +1 -1
  113. package/lib/cjs/presentation-common/rules/content/DefaultPropertyCategoryOverride.js.map +1 -1
  114. package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts +2 -2
  115. package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts.map +1 -1
  116. package/lib/cjs/presentation-common/rules/content/SelectedNodeInstancesSpecification.js.map +1 -1
  117. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.d.ts +2 -2
  118. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.d.ts.map +1 -1
  119. package/lib/cjs/presentation-common/rules/content/modifiers/ContentModifier.js.map +1 -1
  120. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts +9 -6
  121. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts.map +1 -1
  122. package/lib/cjs/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js.map +1 -1
  123. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts +6 -3
  124. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts.map +1 -1
  125. package/lib/cjs/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js.map +1 -1
  126. package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.d.ts +3 -3
  127. package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.d.ts.map +1 -1
  128. package/lib/cjs/presentation-common/rules/customization/CheckBoxRule.js.map +1 -1
  129. package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.d.ts +2 -2
  130. package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.d.ts.map +1 -1
  131. package/lib/cjs/presentation-common/rules/customization/ExtendedDataRule.js.map +1 -1
  132. package/lib/cjs/presentation-common/rules/customization/GroupingRule.d.ts +20 -13
  133. package/lib/cjs/presentation-common/rules/customization/GroupingRule.d.ts.map +1 -1
  134. package/lib/cjs/presentation-common/rules/customization/GroupingRule.js +1 -1
  135. package/lib/cjs/presentation-common/rules/customization/GroupingRule.js.map +1 -1
  136. package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.d.ts +3 -3
  137. package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.d.ts.map +1 -1
  138. package/lib/cjs/presentation-common/rules/customization/ImageIdOverride.js.map +1 -1
  139. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.d.ts +17 -15
  140. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.d.ts.map +1 -1
  141. package/lib/cjs/presentation-common/rules/customization/InstanceLabelOverride.js.map +1 -1
  142. package/lib/cjs/presentation-common/rules/customization/LabelOverride.d.ts +3 -3
  143. package/lib/cjs/presentation-common/rules/customization/LabelOverride.d.ts.map +1 -1
  144. package/lib/cjs/presentation-common/rules/customization/LabelOverride.js.map +1 -1
  145. package/lib/cjs/presentation-common/rules/customization/SortingRule.d.ts +3 -3
  146. package/lib/cjs/presentation-common/rules/customization/SortingRule.d.ts.map +1 -1
  147. package/lib/cjs/presentation-common/rules/customization/SortingRule.js.map +1 -1
  148. package/lib/cjs/presentation-common/rules/customization/StyleOverride.d.ts +3 -3
  149. package/lib/cjs/presentation-common/rules/customization/StyleOverride.d.ts.map +1 -1
  150. package/lib/cjs/presentation-common/rules/customization/StyleOverride.js.map +1 -1
  151. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.d.ts +1 -2
  152. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.d.ts.map +1 -1
  153. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeRule.js.map +1 -1
  154. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts +5 -4
  155. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts.map +1 -1
  156. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.js +0 -1
  157. package/lib/cjs/presentation-common/rules/hierarchy/ChildNodeSpecification.js.map +1 -1
  158. package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +2 -2
  159. package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts.map +1 -1
  160. package/lib/cjs/presentation-common/rules/hierarchy/CustomNodeSpecification.js.map +1 -1
  161. package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts +9 -6
  162. package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts.map +1 -1
  163. package/lib/cjs/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js.map +1 -1
  164. package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +3 -3
  165. package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts.map +1 -1
  166. package/lib/cjs/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js.map +1 -1
  167. package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts +2 -2
  168. package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts.map +1 -1
  169. package/lib/cjs/presentation-common/rules/hierarchy/NodeArtifactsRule.js.map +1 -1
  170. package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts +2 -2
  171. package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts.map +1 -1
  172. package/lib/cjs/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js.map +1 -1
  173. package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.d.ts +1 -2
  174. package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.d.ts.map +1 -1
  175. package/lib/cjs/presentation-common/rules/hierarchy/RootNodeRule.js.map +1 -1
  176. package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.d.ts +0 -1
  177. package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.d.ts.map +1 -1
  178. package/lib/cjs/presentation-common/rules/hierarchy/SubCondition.js.map +1 -1
  179. package/lib/cjs/presentation-common/selection/SelectionScope.d.ts +17 -4
  180. package/lib/cjs/presentation-common/selection/SelectionScope.d.ts.map +1 -1
  181. package/lib/cjs/presentation-common/selection/SelectionScope.js.map +1 -1
  182. package/lib/cjs/presentation-common.d.ts +1 -0
  183. package/lib/cjs/presentation-common.d.ts.map +1 -1
  184. package/lib/cjs/presentation-common.js +1 -0
  185. package/lib/cjs/presentation-common.js.map +1 -1
  186. package/lib/esm/presentation-common/EC.d.ts +52 -17
  187. package/lib/esm/presentation-common/EC.d.ts.map +1 -1
  188. package/lib/esm/presentation-common/EC.js +75 -55
  189. package/lib/esm/presentation-common/EC.js.map +1 -1
  190. package/lib/esm/presentation-common/ElementProperties.d.ts +14 -14
  191. package/lib/esm/presentation-common/ElementProperties.js.map +1 -1
  192. package/lib/esm/presentation-common/InstanceFilterDefinition.d.ts +43 -9
  193. package/lib/esm/presentation-common/InstanceFilterDefinition.d.ts.map +1 -1
  194. package/lib/esm/presentation-common/InstanceFilterDefinition.js.map +1 -1
  195. package/lib/esm/presentation-common/KeySet.d.ts.map +1 -1
  196. package/lib/esm/presentation-common/KeySet.js +5 -0
  197. package/lib/esm/presentation-common/KeySet.js.map +1 -1
  198. package/lib/esm/presentation-common/LabelDefinition.d.ts +24 -16
  199. package/lib/esm/presentation-common/LabelDefinition.d.ts.map +1 -1
  200. package/lib/esm/presentation-common/LabelDefinition.js +26 -29
  201. package/lib/esm/presentation-common/LabelDefinition.js.map +1 -1
  202. package/lib/esm/presentation-common/PresentationIpcInterface.d.ts +7 -4
  203. package/lib/esm/presentation-common/PresentationIpcInterface.d.ts.map +1 -1
  204. package/lib/esm/presentation-common/PresentationIpcInterface.js.map +1 -1
  205. package/lib/esm/presentation-common/PresentationManagerOptions.d.ts +30 -11
  206. package/lib/esm/presentation-common/PresentationManagerOptions.d.ts.map +1 -1
  207. package/lib/esm/presentation-common/PresentationManagerOptions.js +1 -1
  208. package/lib/esm/presentation-common/PresentationManagerOptions.js.map +1 -1
  209. package/lib/esm/presentation-common/PresentationRpcInterface.d.ts +24 -19
  210. package/lib/esm/presentation-common/PresentationRpcInterface.d.ts.map +1 -1
  211. package/lib/esm/presentation-common/PresentationRpcInterface.js +7 -5
  212. package/lib/esm/presentation-common/PresentationRpcInterface.js.map +1 -1
  213. package/lib/esm/presentation-common/RpcRequestsHandler.d.ts +9 -8
  214. package/lib/esm/presentation-common/RpcRequestsHandler.d.ts.map +1 -1
  215. package/lib/esm/presentation-common/RpcRequestsHandler.js +17 -1
  216. package/lib/esm/presentation-common/RpcRequestsHandler.js.map +1 -1
  217. package/lib/esm/presentation-common/RulesetVariables.d.ts +5 -0
  218. package/lib/esm/presentation-common/RulesetVariables.d.ts.map +1 -1
  219. package/lib/esm/presentation-common/RulesetVariables.js.map +1 -1
  220. package/lib/esm/presentation-common/Update.d.ts +23 -4
  221. package/lib/esm/presentation-common/Update.d.ts.map +1 -1
  222. package/lib/esm/presentation-common/Update.js +34 -4
  223. package/lib/esm/presentation-common/Update.js.map +1 -1
  224. package/lib/esm/presentation-common/content/Category.d.ts.map +1 -1
  225. package/lib/esm/presentation-common/content/Category.js +1 -2
  226. package/lib/esm/presentation-common/content/Category.js.map +1 -1
  227. package/lib/esm/presentation-common/content/ContentTraverser.d.ts +194 -24
  228. package/lib/esm/presentation-common/content/ContentTraverser.d.ts.map +1 -1
  229. package/lib/esm/presentation-common/content/ContentTraverser.js +60 -42
  230. package/lib/esm/presentation-common/content/ContentTraverser.js.map +1 -1
  231. package/lib/esm/presentation-common/content/Descriptor.d.ts +76 -23
  232. package/lib/esm/presentation-common/content/Descriptor.d.ts.map +1 -1
  233. package/lib/esm/presentation-common/content/Descriptor.js +5 -7
  234. package/lib/esm/presentation-common/content/Descriptor.js.map +1 -1
  235. package/lib/esm/presentation-common/content/Fields.d.ts +24 -5
  236. package/lib/esm/presentation-common/content/Fields.d.ts.map +1 -1
  237. package/lib/esm/presentation-common/content/Fields.js +11 -8
  238. package/lib/esm/presentation-common/content/Fields.js.map +1 -1
  239. package/lib/esm/presentation-common/content/Item.d.ts +8 -10
  240. package/lib/esm/presentation-common/content/Item.d.ts.map +1 -1
  241. package/lib/esm/presentation-common/content/Item.js +6 -8
  242. package/lib/esm/presentation-common/content/Item.js.map +1 -1
  243. package/lib/esm/presentation-common/content/Property.d.ts +8 -2
  244. package/lib/esm/presentation-common/content/Property.d.ts.map +1 -1
  245. package/lib/esm/presentation-common/content/Property.js +12 -8
  246. package/lib/esm/presentation-common/content/Property.js.map +1 -1
  247. package/lib/esm/presentation-common/content/Value.d.ts +43 -11
  248. package/lib/esm/presentation-common/content/Value.d.ts.map +1 -1
  249. package/lib/esm/presentation-common/content/Value.js +72 -16
  250. package/lib/esm/presentation-common/content/Value.js.map +1 -1
  251. package/lib/esm/presentation-common/hierarchy/HierarchyLevel.d.ts +38 -0
  252. package/lib/esm/presentation-common/hierarchy/HierarchyLevel.d.ts.map +1 -0
  253. package/lib/esm/presentation-common/hierarchy/HierarchyLevel.js +29 -0
  254. package/lib/esm/presentation-common/hierarchy/HierarchyLevel.js.map +1 -0
  255. package/lib/esm/presentation-common/hierarchy/Key.d.ts +75 -14
  256. package/lib/esm/presentation-common/hierarchy/Key.d.ts.map +1 -1
  257. package/lib/esm/presentation-common/hierarchy/Key.js +15 -6
  258. package/lib/esm/presentation-common/hierarchy/Key.js.map +1 -1
  259. package/lib/esm/presentation-common/hierarchy/Node.d.ts +32 -19
  260. package/lib/esm/presentation-common/hierarchy/Node.d.ts.map +1 -1
  261. package/lib/esm/presentation-common/hierarchy/Node.js +23 -14
  262. package/lib/esm/presentation-common/hierarchy/Node.js.map +1 -1
  263. package/lib/esm/presentation-common/hierarchy/NodePathElement.d.ts +18 -7
  264. package/lib/esm/presentation-common/hierarchy/NodePathElement.d.ts.map +1 -1
  265. package/lib/esm/presentation-common/hierarchy/NodePathElement.js +33 -9
  266. package/lib/esm/presentation-common/hierarchy/NodePathElement.js.map +1 -1
  267. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.d.ts +5 -2
  268. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.d.ts.map +1 -1
  269. package/lib/esm/presentation-common/rules/RelationshipPathSpecification.js.map +1 -1
  270. package/lib/esm/presentation-common/rules/Rule.d.ts +6 -4
  271. package/lib/esm/presentation-common/rules/Rule.d.ts.map +1 -1
  272. package/lib/esm/presentation-common/rules/Rule.js.map +1 -1
  273. package/lib/esm/presentation-common/rules/Ruleset.d.ts +0 -1
  274. package/lib/esm/presentation-common/rules/Ruleset.d.ts.map +1 -1
  275. package/lib/esm/presentation-common/rules/Ruleset.js.map +1 -1
  276. package/lib/esm/presentation-common/rules/SchemasSpecification.d.ts +1 -1
  277. package/lib/esm/presentation-common/rules/SchemasSpecification.js.map +1 -1
  278. package/lib/esm/presentation-common/rules/Variables.d.ts +5 -2
  279. package/lib/esm/presentation-common/rules/Variables.d.ts.map +1 -1
  280. package/lib/esm/presentation-common/rules/Variables.js.map +1 -1
  281. package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts +3 -3
  282. package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.d.ts.map +1 -1
  283. package/lib/esm/presentation-common/rules/content/ContentInstancesOfSpecificClassesSpecification.js.map +1 -1
  284. package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts +2 -2
  285. package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.d.ts.map +1 -1
  286. package/lib/esm/presentation-common/rules/content/ContentRelatedInstancesSpecification.js.map +1 -1
  287. package/lib/esm/presentation-common/rules/content/ContentRule.d.ts +2 -2
  288. package/lib/esm/presentation-common/rules/content/ContentRule.d.ts.map +1 -1
  289. package/lib/esm/presentation-common/rules/content/ContentRule.js.map +1 -1
  290. package/lib/esm/presentation-common/rules/content/ContentSpecification.d.ts +6 -3
  291. package/lib/esm/presentation-common/rules/content/ContentSpecification.d.ts.map +1 -1
  292. package/lib/esm/presentation-common/rules/content/ContentSpecification.js.map +1 -1
  293. package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts +2 -2
  294. package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.d.ts.map +1 -1
  295. package/lib/esm/presentation-common/rules/content/DefaultPropertyCategoryOverride.js.map +1 -1
  296. package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts +2 -2
  297. package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.d.ts.map +1 -1
  298. package/lib/esm/presentation-common/rules/content/SelectedNodeInstancesSpecification.js.map +1 -1
  299. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.d.ts +2 -2
  300. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.d.ts.map +1 -1
  301. package/lib/esm/presentation-common/rules/content/modifiers/ContentModifier.js.map +1 -1
  302. package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts +9 -6
  303. package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.d.ts.map +1 -1
  304. package/lib/esm/presentation-common/rules/content/modifiers/PropertyEditorsSpecification.js.map +1 -1
  305. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts +6 -3
  306. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.d.ts.map +1 -1
  307. package/lib/esm/presentation-common/rules/content/modifiers/RelatedPropertiesSpecification.js.map +1 -1
  308. package/lib/esm/presentation-common/rules/customization/CheckBoxRule.d.ts +3 -3
  309. package/lib/esm/presentation-common/rules/customization/CheckBoxRule.d.ts.map +1 -1
  310. package/lib/esm/presentation-common/rules/customization/CheckBoxRule.js.map +1 -1
  311. package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.d.ts +2 -2
  312. package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.d.ts.map +1 -1
  313. package/lib/esm/presentation-common/rules/customization/ExtendedDataRule.js.map +1 -1
  314. package/lib/esm/presentation-common/rules/customization/GroupingRule.d.ts +20 -13
  315. package/lib/esm/presentation-common/rules/customization/GroupingRule.d.ts.map +1 -1
  316. package/lib/esm/presentation-common/rules/customization/GroupingRule.js +1 -1
  317. package/lib/esm/presentation-common/rules/customization/GroupingRule.js.map +1 -1
  318. package/lib/esm/presentation-common/rules/customization/ImageIdOverride.d.ts +3 -3
  319. package/lib/esm/presentation-common/rules/customization/ImageIdOverride.d.ts.map +1 -1
  320. package/lib/esm/presentation-common/rules/customization/ImageIdOverride.js.map +1 -1
  321. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.d.ts +17 -15
  322. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.d.ts.map +1 -1
  323. package/lib/esm/presentation-common/rules/customization/InstanceLabelOverride.js.map +1 -1
  324. package/lib/esm/presentation-common/rules/customization/LabelOverride.d.ts +3 -3
  325. package/lib/esm/presentation-common/rules/customization/LabelOverride.d.ts.map +1 -1
  326. package/lib/esm/presentation-common/rules/customization/LabelOverride.js.map +1 -1
  327. package/lib/esm/presentation-common/rules/customization/SortingRule.d.ts +3 -3
  328. package/lib/esm/presentation-common/rules/customization/SortingRule.d.ts.map +1 -1
  329. package/lib/esm/presentation-common/rules/customization/SortingRule.js.map +1 -1
  330. package/lib/esm/presentation-common/rules/customization/StyleOverride.d.ts +3 -3
  331. package/lib/esm/presentation-common/rules/customization/StyleOverride.d.ts.map +1 -1
  332. package/lib/esm/presentation-common/rules/customization/StyleOverride.js.map +1 -1
  333. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.d.ts +1 -2
  334. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.d.ts.map +1 -1
  335. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeRule.js.map +1 -1
  336. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts +5 -4
  337. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.d.ts.map +1 -1
  338. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.js +0 -1
  339. package/lib/esm/presentation-common/rules/hierarchy/ChildNodeSpecification.js.map +1 -1
  340. package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts +2 -2
  341. package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.d.ts.map +1 -1
  342. package/lib/esm/presentation-common/rules/hierarchy/CustomNodeSpecification.js.map +1 -1
  343. package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts +9 -6
  344. package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.d.ts.map +1 -1
  345. package/lib/esm/presentation-common/rules/hierarchy/CustomQueryInstanceNodesSpecification.js.map +1 -1
  346. package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts +3 -3
  347. package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.d.ts.map +1 -1
  348. package/lib/esm/presentation-common/rules/hierarchy/InstanceNodesOfSpecificClassesSpecification.js.map +1 -1
  349. package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts +2 -2
  350. package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.d.ts.map +1 -1
  351. package/lib/esm/presentation-common/rules/hierarchy/NodeArtifactsRule.js.map +1 -1
  352. package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts +2 -2
  353. package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.d.ts.map +1 -1
  354. package/lib/esm/presentation-common/rules/hierarchy/RelatedInstanceNodesSpecification.js.map +1 -1
  355. package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.d.ts +1 -2
  356. package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.d.ts.map +1 -1
  357. package/lib/esm/presentation-common/rules/hierarchy/RootNodeRule.js.map +1 -1
  358. package/lib/esm/presentation-common/rules/hierarchy/SubCondition.d.ts +0 -1
  359. package/lib/esm/presentation-common/rules/hierarchy/SubCondition.d.ts.map +1 -1
  360. package/lib/esm/presentation-common/rules/hierarchy/SubCondition.js.map +1 -1
  361. package/lib/esm/presentation-common/selection/SelectionScope.d.ts +17 -4
  362. package/lib/esm/presentation-common/selection/SelectionScope.d.ts.map +1 -1
  363. package/lib/esm/presentation-common/selection/SelectionScope.js.map +1 -1
  364. package/lib/esm/presentation-common.d.ts +1 -0
  365. package/lib/esm/presentation-common.d.ts.map +1 -1
  366. package/lib/esm/presentation-common.js +1 -0
  367. package/lib/esm/presentation-common.js.map +1 -1
  368. package/package.json +10 -10
@@ -28,17 +28,24 @@ export interface InstanceKey {
28
28
  export declare namespace InstanceKey {
29
29
  /** Compare 2 instance keys */
30
30
  function compare(lhs: InstanceKey, rhs: InstanceKey): number;
31
- /** Serialize [[InstanceKey]] to JSON */
32
- function toJSON(json: InstanceKey): InstanceKeyJSON;
33
- /** Deserialize [[InstanceKey]] from JSON */
31
+ /**
32
+ * Serialize [[InstanceKey]] to JSON
33
+ * @deprecated in 3.x. Use [[InstanceKey]].
34
+ */
35
+ function toJSON(key: InstanceKey): InstanceKeyJSON;
36
+ /**
37
+ * Deserialize [[InstanceKey]] from JSON
38
+ * @deprecated in 3.x. Use [[InstanceKey]].
39
+ */
34
40
  function fromJSON(json: InstanceKeyJSON): {
35
- id: string;
36
41
  className: string;
42
+ id: string;
37
43
  };
38
44
  }
39
45
  /**
40
46
  * A serialized version of [[InstanceKey]]
41
47
  * @public
48
+ * @deprecated in 3.x. Use [[InstanceKey]].
42
49
  */
43
50
  export interface InstanceKeyJSON {
44
51
  className: string;
@@ -58,14 +65,21 @@ export interface ClassInfo {
58
65
  }
59
66
  /** @public */
60
67
  export declare namespace ClassInfo {
61
- /** Serialize [[ClassInfo]] to JSON */
68
+ /**
69
+ * Serialize [[ClassInfo]] to JSON
70
+ * @deprecated in 3.x. Use [[ClassInfo]].
71
+ */
62
72
  function toJSON(info: ClassInfo): ClassInfoJSON;
63
- /** Deserialize [[ClassInfo]] from JSON */
73
+ /**
74
+ * Deserialize [[ClassInfo]] from JSON
75
+ * @deprecated in 3.x. Use [[ClassInfo]].
76
+ */
64
77
  function fromJSON(json: ClassInfoJSON): ClassInfo;
65
78
  }
66
79
  /**
67
80
  * A serialized version of [[ClassInfo]]
68
81
  * @public
82
+ * @deprecated in 3.x. Use [[ClassInfo]].
69
83
  */
70
84
  export interface ClassInfoJSON {
71
85
  id: string;
@@ -121,7 +135,7 @@ export interface KindOfQuantityInfo {
121
135
  activeFormat?: FormatProps;
122
136
  }
123
137
  /**
124
- * Navigation property information
138
+ * A data structure for storing navigation property information.
125
139
  * @beta
126
140
  */
127
141
  export interface NavigationPropertyInfo {
@@ -134,16 +148,25 @@ export interface NavigationPropertyInfo {
134
148
  /** Is ECProperty's target class polymorphic */
135
149
  isTargetPolymorphic: boolean;
136
150
  }
137
- /** @beta */
151
+ /**
152
+ * Contains utilities for working with objects of [[NavigationPropertyInfo]] type.
153
+ * @beta
154
+ */
138
155
  export declare namespace NavigationPropertyInfo {
139
- /** Serialize [[NavigationPropertyInfo]] to JSON */
156
+ /**
157
+ * Serialize [[NavigationPropertyInfo]] to JSON
158
+ * @deprecated in 3.x. Use [[toCompressedJSON]].
159
+ */
140
160
  function toJSON(info: NavigationPropertyInfo): NavigationPropertyInfoJSON;
141
161
  /** Serialize [[NavigationPropertyInfo]] to compressed JSON */
142
162
  function toCompressedJSON(navigationPropertyInfo: NavigationPropertyInfo, classesMap: {
143
163
  [id: string]: CompressedClassInfoJSON;
144
164
  }): NavigationPropertyInfoJSON<string>;
145
- /** Deserialize [[NavigationPropertyInfo]] from JSON */
146
- function fromJSON(json: NavigationPropertyInfo): NavigationPropertyInfo;
165
+ /**
166
+ * Deserialize [[NavigationPropertyInfo]] from JSON
167
+ * @deprecated in 3.x. Use [[fromCompressedJSON]].
168
+ */
169
+ function fromJSON(json: NavigationPropertyInfoJSON): NavigationPropertyInfo;
147
170
  /** Deserialize [[NavigationPropertyInfo]] from compressed JSON */
148
171
  function fromCompressedJSON(compressedNavigationPropertyInfoJSON: NavigationPropertyInfoJSON<string>, classesMap: {
149
172
  [id: string]: CompressedClassInfoJSON;
@@ -187,13 +210,19 @@ export interface PropertyInfo {
187
210
  }
188
211
  /** @public */
189
212
  export declare namespace PropertyInfo {
190
- /** Serialize [[PropertyInfo]] to JSON */
213
+ /**
214
+ * Serialize [[PropertyInfo]] to JSON
215
+ * @deprecated in 3.x. Use [[PropertyInfo]].
216
+ */
191
217
  function toJSON(info: PropertyInfo): PropertyInfoJSON;
192
218
  /** Serialize [[PropertyInfo]] to compressed JSON */
193
219
  function toCompressedJSON(propertyInfo: PropertyInfo, classesMap: {
194
220
  [id: string]: CompressedClassInfoJSON;
195
221
  }): PropertyInfoJSON<string>;
196
- /** Deserialize [[PropertyInfo]] from JSON */
222
+ /**
223
+ * Deserialize [[PropertyInfo]] from JSON
224
+ * @deprecated in 3.x. Use [[PropertyInfo]].
225
+ */
197
226
  function fromJSON(json: PropertyInfoJSON): PropertyInfo;
198
227
  }
199
228
  /**
@@ -219,23 +248,29 @@ export interface RelatedClassInfo {
219
248
  /** Information about the target ECClass */
220
249
  targetClassInfo: ClassInfo;
221
250
  /** Is target class handled polymorphically */
222
- isPolymorphicTargetClass: boolean;
251
+ isPolymorphicTargetClass?: boolean;
223
252
  /** Information about the ECRelationship */
224
253
  relationshipInfo: ClassInfo;
225
254
  /** Should relationship be followed in a forward direction to access the related class. */
226
255
  isForwardRelationship: boolean;
227
256
  /** Is relationship handled polymorphically */
228
- isPolymorphicRelationship: boolean;
257
+ isPolymorphicRelationship?: boolean;
229
258
  }
230
259
  /** @public */
231
260
  export declare namespace RelatedClassInfo {
232
- /** Serialize [[RelatedClassInfo]] to JSON */
261
+ /**
262
+ * Serialize [[RelatedClassInfo]] to JSON
263
+ * @deprecated in 3.x. Use [[RelatedClassInfo]].
264
+ */
233
265
  function toJSON(info: RelatedClassInfo): RelatedClassInfoJSON;
234
266
  /** Serialize [[RelatedClassInfo]] to compressed JSON */
235
267
  function toCompressedJSON(classInfo: RelatedClassInfo, classesMap: {
236
268
  [id: string]: CompressedClassInfoJSON;
237
269
  }): RelatedClassInfoJSON<string>;
238
- /** Deserialize [[RelatedClassInfo]] from JSON */
270
+ /**
271
+ * Deserialize [[RelatedClassInfo]] from JSON
272
+ * @deprecated in 3.x. Use [[RelatedClassInfo]].
273
+ */
239
274
  function fromJSON(json: RelatedClassInfoJSON): RelatedClassInfo;
240
275
  /** Deserialize [[RelatedClassInfo]] from compressed JSON */
241
276
  function fromCompressedJSON(json: RelatedClassInfoJSON<string>, classesMap: {
@@ -1 +1 @@
1
- {"version":3,"file":"EC.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/EC.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EC.d.ts","sourceRoot":"","sources":["../../../src/presentation-common/EC.ts"],"names":[],"mappings":"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"}
@@ -20,37 +20,64 @@ var InstanceKey;
20
20
  return lhs.id.localeCompare(rhs.id);
21
21
  }
22
22
  InstanceKey.compare = compare;
23
- /** Serialize [[InstanceKey]] to JSON */
24
- function toJSON(json) {
25
- return { ...json, id: json.id.toString() };
23
+ /**
24
+ * Serialize [[InstanceKey]] to JSON
25
+ * @deprecated in 3.x. Use [[InstanceKey]].
26
+ */
27
+ // istanbul ignore next
28
+ // eslint-disable-next-line deprecation/deprecation
29
+ function toJSON(key) {
30
+ return { ...key };
26
31
  }
27
32
  InstanceKey.toJSON = toJSON;
28
- /** Deserialize [[InstanceKey]] from JSON */
33
+ /**
34
+ * Deserialize [[InstanceKey]] from JSON
35
+ * @deprecated in 3.x. Use [[InstanceKey]].
36
+ */
37
+ // istanbul ignore next
38
+ // eslint-disable-next-line deprecation/deprecation
29
39
  function fromJSON(json) {
30
- return { ...json, id: core_bentley_1.Id64.fromJSON(json.id) };
40
+ return { ...json };
31
41
  }
32
42
  InstanceKey.fromJSON = fromJSON;
33
43
  })(InstanceKey = exports.InstanceKey || (exports.InstanceKey = {}));
34
44
  /** @public */
35
45
  var ClassInfo;
36
46
  (function (ClassInfo) {
37
- /** Serialize [[ClassInfo]] to JSON */
47
+ /**
48
+ * Serialize [[ClassInfo]] to JSON
49
+ * @deprecated in 3.x. Use [[ClassInfo]].
50
+ */
51
+ // istanbul ignore next
52
+ // eslint-disable-next-line deprecation/deprecation
38
53
  function toJSON(info) {
39
- return { ...info, id: info.id.toString() };
54
+ return { ...info };
40
55
  }
41
56
  ClassInfo.toJSON = toJSON;
42
- /** Deserialize [[ClassInfo]] from JSON */
57
+ /**
58
+ * Deserialize [[ClassInfo]] from JSON
59
+ * @deprecated in 3.x. Use [[ClassInfo]].
60
+ */
61
+ // istanbul ignore next
62
+ // eslint-disable-next-line deprecation/deprecation
43
63
  function fromJSON(json) {
44
- return { ...json, id: core_bentley_1.Id64.fromJSON(json.id) };
64
+ return { ...json };
45
65
  }
46
66
  ClassInfo.fromJSON = fromJSON;
47
67
  })(ClassInfo = exports.ClassInfo || (exports.ClassInfo = {}));
48
- /** @beta */
68
+ /**
69
+ * Contains utilities for working with objects of [[NavigationPropertyInfo]] type.
70
+ * @beta
71
+ */
49
72
  var NavigationPropertyInfo;
50
73
  (function (NavigationPropertyInfo) {
51
- /** Serialize [[NavigationPropertyInfo]] to JSON */
74
+ /**
75
+ * Serialize [[NavigationPropertyInfo]] to JSON
76
+ * @deprecated in 3.x. Use [[toCompressedJSON]].
77
+ */
78
+ // istanbul ignore next
52
79
  function toJSON(info) {
53
- return { ...info, classInfo: ClassInfo.toJSON(info.classInfo), targetClassInfo: ClassInfo.toJSON(info.classInfo) };
80
+ return { ...info };
54
81
  }
55
82
  NavigationPropertyInfo.toJSON = toJSON;
56
83
  /** Serialize [[NavigationPropertyInfo]] to compressed JSON */
@@ -66,9 +93,13 @@ var NavigationPropertyInfo;
66
93
  };
67
94
  }
68
95
  NavigationPropertyInfo.toCompressedJSON = toCompressedJSON;
69
- /** Deserialize [[NavigationPropertyInfo]] from JSON */
96
+ /**
97
+ * Deserialize [[NavigationPropertyInfo]] from JSON
98
+ * @deprecated in 3.x. Use [[fromCompressedJSON]].
99
+ */
100
+ // istanbul ignore next
70
101
  function fromJSON(json) {
71
- return { ...json, classInfo: ClassInfo.fromJSON(json.classInfo), targetClassInfo: ClassInfo.fromJSON(json.targetClassInfo) };
102
+ return { ...json };
72
103
  }
73
104
  NavigationPropertyInfo.fromJSON = fromJSON;
74
105
  /** Deserialize [[NavigationPropertyInfo]] from compressed JSON */
@@ -84,13 +115,13 @@ var NavigationPropertyInfo;
84
115
  /** @public */
85
116
  var PropertyInfo;
86
117
  (function (PropertyInfo) {
87
- /** Serialize [[PropertyInfo]] to JSON */
118
+ /**
119
+ * Serialize [[PropertyInfo]] to JSON
120
+ * @deprecated in 3.x. Use [[PropertyInfo]].
121
+ */
122
+ // istanbul ignore next
88
123
  function toJSON(info) {
89
- return {
90
- ...info,
91
- classInfo: ClassInfo.toJSON(info.classInfo),
92
- ...(info.navigationPropertyInfo ? { navigationPropertyInfo: NavigationPropertyInfo.toJSON(info.navigationPropertyInfo) } : undefined),
93
- };
124
+ return { ...info };
94
125
  }
95
126
  PropertyInfo.toJSON = toJSON;
96
127
  /** Serialize [[PropertyInfo]] to compressed JSON */
@@ -105,27 +136,25 @@ var PropertyInfo;
105
136
  };
106
137
  }
107
138
  PropertyInfo.toCompressedJSON = toCompressedJSON;
108
- /** Deserialize [[PropertyInfo]] from JSON */
139
+ /**
140
+ * Deserialize [[PropertyInfo]] from JSON
141
+ * @deprecated in 3.x. Use [[PropertyInfo]].
142
+ */
143
+ // istanbul ignore next
109
144
  function fromJSON(json) {
110
- return {
111
- ...json,
112
- classInfo: ClassInfo.fromJSON(json.classInfo),
113
- ...(json.navigationPropertyInfo ? { navigationPropertyInfo: NavigationPropertyInfo.fromJSON(json.navigationPropertyInfo) } : undefined),
114
- };
145
+ return { ...json };
115
146
  }
116
147
  PropertyInfo.fromJSON = fromJSON;
117
148
  })(PropertyInfo = exports.PropertyInfo || (exports.PropertyInfo = {}));
118
149
  /** @public */
119
150
  var RelatedClassInfo;
120
151
  (function (RelatedClassInfo) {
121
- /** Serialize [[RelatedClassInfo]] to JSON */
152
+ /**
153
+ * Serialize [[RelatedClassInfo]] to JSON
154
+ * @deprecated in 3.x. Use [[RelatedClassInfo]].
155
+ */
122
156
  function toJSON(info) {
123
- return {
124
- ...info,
125
- sourceClassInfo: ClassInfo.toJSON(info.sourceClassInfo),
126
- targetClassInfo: ClassInfo.toJSON(info.targetClassInfo),
127
- relationshipInfo: ClassInfo.toJSON(info.relationshipInfo),
128
- };
157
+ return { ...info };
129
158
  }
130
159
  RelatedClassInfo.toJSON = toJSON;
131
160
  /** Serialize [[RelatedClassInfo]] to compressed JSON */
@@ -144,32 +173,24 @@ var RelatedClassInfo;
144
173
  };
145
174
  }
146
175
  RelatedClassInfo.toCompressedJSON = toCompressedJSON;
147
- /** Deserialize [[RelatedClassInfo]] from JSON */
176
+ /**
177
+ * Deserialize [[RelatedClassInfo]] from JSON
178
+ * @deprecated in 3.x. Use [[RelatedClassInfo]].
179
+ */
148
180
  function fromJSON(json) {
149
- var _a, _b;
150
- return {
151
- ...json,
152
- sourceClassInfo: ClassInfo.fromJSON(json.sourceClassInfo),
153
- targetClassInfo: ClassInfo.fromJSON(json.targetClassInfo),
154
- isPolymorphicTargetClass: (_a = json.isPolymorphicTargetClass) !== null && _a !== void 0 ? _a : false,
155
- relationshipInfo: ClassInfo.fromJSON(json.relationshipInfo),
156
- isPolymorphicRelationship: (_b = json.isPolymorphicRelationship) !== null && _b !== void 0 ? _b : false,
157
- };
181
+ return { ...json };
158
182
  }
159
183
  RelatedClassInfo.fromJSON = fromJSON;
160
184
  /** Deserialize [[RelatedClassInfo]] from compressed JSON */
161
185
  function fromCompressedJSON(json, classesMap) {
162
- var _a, _b;
163
186
  (0, core_bentley_1.assert)(classesMap.hasOwnProperty(json.sourceClassInfo));
164
187
  (0, core_bentley_1.assert)(classesMap.hasOwnProperty(json.targetClassInfo));
165
188
  (0, core_bentley_1.assert)(classesMap.hasOwnProperty(json.relationshipInfo));
166
189
  return {
167
190
  ...json,
168
- sourceClassInfo: ClassInfo.fromJSON({ id: json.sourceClassInfo, ...classesMap[json.sourceClassInfo] }),
169
- targetClassInfo: ClassInfo.fromJSON({ id: json.targetClassInfo, ...classesMap[json.targetClassInfo] }),
170
- isPolymorphicTargetClass: (_a = json.isPolymorphicTargetClass) !== null && _a !== void 0 ? _a : false,
171
- relationshipInfo: ClassInfo.fromJSON({ id: json.relationshipInfo, ...classesMap[json.relationshipInfo] }),
172
- isPolymorphicRelationship: (_b = json.isPolymorphicRelationship) !== null && _b !== void 0 ? _b : false,
191
+ sourceClassInfo: { id: json.sourceClassInfo, ...classesMap[json.sourceClassInfo] },
192
+ targetClassInfo: { id: json.targetClassInfo, ...classesMap[json.targetClassInfo] },
193
+ relationshipInfo: { id: json.relationshipInfo, ...classesMap[json.relationshipInfo] },
173
194
  };
174
195
  }
175
196
  RelatedClassInfo.fromCompressedJSON = fromCompressedJSON;
@@ -204,6 +225,7 @@ var RelatedClassInfo;
204
225
  RelatedClassInfo.strip = strip;
205
226
  })(RelatedClassInfo = exports.RelatedClassInfo || (exports.RelatedClassInfo = {}));
206
227
  /** @public */
228
+ // eslint-disable-next-line @typescript-eslint/no-redeclare
207
229
  var RelatedClassInfoWithOptionalRelationship;
208
230
  (function (RelatedClassInfoWithOptionalRelationship) {
209
231
  /** Serialize [[RelatedClassInfoWithOptionalRelationship]] to compressed JSON */
@@ -227,7 +249,6 @@ var RelatedClassInfoWithOptionalRelationship;
227
249
  RelatedClassInfoWithOptionalRelationship.toCompressedJSON = toCompressedJSON;
228
250
  /** Deserialize [[RelatedClassInfoWithOptionalRelationship]] from compressed JSON */
229
251
  function fromCompressedJSON(json, classesMap) {
230
- var _a;
231
252
  const { sourceClassInfo, targetClassInfo, relationshipInfo, ...otherProps } = json;
232
253
  (0, core_bentley_1.assert)(classesMap.hasOwnProperty(sourceClassInfo));
233
254
  (0, core_bentley_1.assert)(classesMap.hasOwnProperty(targetClassInfo));
@@ -235,10 +256,9 @@ var RelatedClassInfoWithOptionalRelationship;
235
256
  (0, core_bentley_1.assert)(classesMap.hasOwnProperty(relationshipInfo));
236
257
  return {
237
258
  ...otherProps,
238
- sourceClassInfo: ClassInfo.fromJSON({ id: sourceClassInfo, ...classesMap[sourceClassInfo] }),
239
- targetClassInfo: ClassInfo.fromJSON({ id: targetClassInfo, ...classesMap[targetClassInfo] }),
240
- isPolymorphicTargetClass: (_a = json.isPolymorphicTargetClass) !== null && _a !== void 0 ? _a : false,
241
- ...(relationshipInfo ? { relationshipInfo: ClassInfo.fromJSON({ id: relationshipInfo, ...classesMap[relationshipInfo] }) } : undefined),
259
+ sourceClassInfo: { id: sourceClassInfo, ...classesMap[sourceClassInfo] },
260
+ targetClassInfo: { id: targetClassInfo, ...classesMap[targetClassInfo] },
261
+ ...(relationshipInfo ? { relationshipInfo: { id: relationshipInfo, ...classesMap[relationshipInfo] } } : undefined),
242
262
  };
243
263
  }
244
264
  RelatedClassInfoWithOptionalRelationship.fromCompressedJSON = fromCompressedJSON;
@@ -1 +1 @@
1
- {"version":3,"file":"EC.js","sourceRoot":"","sources":["../../../src/presentation-common/EC.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 Core\r\n */\r\n\r\nimport { assert, Id64, Id64String } from \"@itwin/core-bentley\";\r\nimport { FormatProps } from \"@itwin/core-quantity\";\r\nimport { PartialBy } from \"./Utils\";\r\n\r\n/**\r\n * Type of an ECClass ID.\r\n * @public\r\n */\r\nexport type ClassId = Id64String;\r\n\r\n/**\r\n * Type of an ECInstance ID.\r\n * @public\r\n */\r\nexport type InstanceId = Id64String;\r\n\r\n/**\r\n * A key that uniquely identifies an instance in an iModel\r\n * @public\r\n */\r\nexport interface InstanceKey {\r\n /** Full class name in format `SchemaName:ClassName` */\r\n className: string;\r\n /** ECInstance ID */\r\n id: InstanceId;\r\n}\r\n\r\n/** @public */\r\nexport namespace InstanceKey {\r\n /** Compare 2 instance keys */\r\n export function compare(lhs: InstanceKey, rhs: InstanceKey): number {\r\n const classNameCompare = lhs.className.localeCompare(rhs.className);\r\n if (classNameCompare !== 0)\r\n return classNameCompare;\r\n return lhs.id.localeCompare(rhs.id);\r\n }\r\n\r\n /** Serialize [[InstanceKey]] to JSON */\r\n export function toJSON(json: InstanceKey): InstanceKeyJSON {\r\n return { ...json, id: json.id.toString() };\r\n }\r\n\r\n /** Deserialize [[InstanceKey]] from JSON */\r\n export function fromJSON(json: InstanceKeyJSON) {\r\n return { ...json, id: Id64.fromJSON(json.id) };\r\n }\r\n}\r\n\r\n/**\r\n * A serialized version of [[InstanceKey]]\r\n * @public\r\n */\r\nexport interface InstanceKeyJSON {\r\n className: string;\r\n id: string;\r\n}\r\n\r\n/**\r\n * Information about an ECClass\r\n * @public\r\n */\r\nexport interface ClassInfo {\r\n /** ECClass ID */\r\n id: ClassId;\r\n /** Full class name in format `SchemaName:ClassName` */\r\n name: string;\r\n /** ECClass label */\r\n label: string;\r\n}\r\n\r\n/** @public */\r\nexport namespace ClassInfo {\r\n /** Serialize [[ClassInfo]] to JSON */\r\n export function toJSON(info: ClassInfo): ClassInfoJSON {\r\n return { ...info, id: info.id.toString() };\r\n }\r\n\r\n /** Deserialize [[ClassInfo]] from JSON */\r\n export function fromJSON(json: ClassInfoJSON): ClassInfo {\r\n return { ...json, id: Id64.fromJSON(json.id) };\r\n }\r\n}\r\n\r\n/**\r\n * A serialized version of [[ClassInfo]]\r\n * @public\r\n */\r\nexport interface ClassInfoJSON {\r\n id: string;\r\n name: string;\r\n label: string;\r\n}\r\n\r\n/**\r\n * A serialized and compressed version of [[ClassInfo]]\r\n * @public\r\n */\r\nexport interface CompressedClassInfoJSON {\r\n name: string;\r\n label: string;\r\n}\r\n\r\n/**\r\n * A single choice in enumeration\r\n * @public\r\n */\r\nexport interface EnumerationChoice {\r\n /** Label of the choice */\r\n label: string;\r\n /** Value of the choice */\r\n value: string | number;\r\n}\r\n\r\n/**\r\n * Enumeration information\r\n * @public\r\n */\r\nexport interface EnumerationInfo {\r\n /** Available enumeration choices */\r\n choices: EnumerationChoice[];\r\n /** Is the enumeration strict (values only allowed from `choices` list) */\r\n isStrict: boolean;\r\n}\r\n\r\n/**\r\n * Kind of quantity information\r\n * @public\r\n */\r\nexport interface KindOfQuantityInfo {\r\n /** Full name of KindOfQuantity in format `SchemaName:KindOfQuantityName` */\r\n name: string;\r\n /** Label of KindOfQuantity */\r\n label: string;\r\n /**\r\n * Persistence unit identifier.\r\n * @alpha Still not entirely clear how kind of quantities will be handled and what data we'll need\r\n */\r\n persistenceUnit: string;\r\n /**\r\n * Active format that was used to format property value.\r\n * @alpha Still not entirely clear how kind of quantities will be handled and what data we'll need\r\n */\r\n activeFormat?: FormatProps;\r\n}\r\n\r\n/**\r\n * Navigation property information\r\n * @beta\r\n */\r\nexport interface NavigationPropertyInfo {\r\n /** Information about ECProperty's relationship class */\r\n classInfo: ClassInfo;\r\n /** Is the direction of the relationship forward */\r\n isForwardRelationship: boolean;\r\n /** Information about ECProperty's target class */\r\n targetClassInfo: ClassInfo;\r\n /** Is ECProperty's target class polymorphic */\r\n isTargetPolymorphic: boolean;\r\n}\r\n\r\n/** @beta */\r\nexport namespace NavigationPropertyInfo {\r\n /** Serialize [[NavigationPropertyInfo]] to JSON */\r\n export function toJSON(info: NavigationPropertyInfo): NavigationPropertyInfoJSON {\r\n return { ...info, classInfo: ClassInfo.toJSON(info.classInfo), targetClassInfo: ClassInfo.toJSON(info.classInfo) };\r\n }\r\n\r\n /** Serialize [[NavigationPropertyInfo]] to compressed JSON */\r\n export function toCompressedJSON(navigationPropertyInfo: NavigationPropertyInfo, classesMap: { [id: string]: CompressedClassInfoJSON }): NavigationPropertyInfoJSON<string> {\r\n const { id: relationshipId, ...relationshipLeftOverInfo } = navigationPropertyInfo.classInfo;\r\n const { id: targetId, ...targetLeftOverInfo} = navigationPropertyInfo.targetClassInfo;\r\n classesMap[relationshipId] = relationshipLeftOverInfo;\r\n classesMap[targetId] = targetLeftOverInfo;\r\n\r\n return {\r\n ...navigationPropertyInfo,\r\n classInfo: relationshipId,\r\n targetClassInfo: targetId,\r\n };\r\n }\r\n\r\n /** Deserialize [[NavigationPropertyInfo]] from JSON */\r\n export function fromJSON(json: NavigationPropertyInfo): NavigationPropertyInfo {\r\n return { ...json, classInfo: ClassInfo.fromJSON(json.classInfo), targetClassInfo: ClassInfo.fromJSON(json.targetClassInfo) };\r\n }\r\n\r\n /** Deserialize [[NavigationPropertyInfo]] from compressed JSON */\r\n export function fromCompressedJSON(compressedNavigationPropertyInfoJSON: NavigationPropertyInfoJSON<string>, classesMap: { [id: string]: CompressedClassInfoJSON }): NavigationPropertyInfo {\r\n return {\r\n ...compressedNavigationPropertyInfoJSON,\r\n classInfo: { id: compressedNavigationPropertyInfoJSON.classInfo, ...classesMap[compressedNavigationPropertyInfoJSON.classInfo] },\r\n targetClassInfo: { id: compressedNavigationPropertyInfoJSON.targetClassInfo, ...classesMap[compressedNavigationPropertyInfoJSON.targetClassInfo] },\r\n };\r\n }\r\n}\r\n\r\n/**\r\n * A serialized version of [[NavigationPropertyInfo]]\r\n * @beta\r\n */\r\nexport interface NavigationPropertyInfoJSON<TClassInfoJSON = ClassInfoJSON> {\r\n classInfo: TClassInfoJSON;\r\n isForwardRelationship: boolean;\r\n targetClassInfo: TClassInfoJSON;\r\n isTargetPolymorphic: boolean;\r\n}\r\n\r\n/**\r\n * A structure that describes an ECProperty\r\n * @public\r\n */\r\nexport interface PropertyInfo {\r\n /** Information about ECProperty class */\r\n classInfo: ClassInfo;\r\n /** Name of the ECProperty */\r\n name: string;\r\n /** Type name of the ECProperty */\r\n type: string;\r\n /** Enumeration info if the property is enumerable */\r\n enumerationInfo?: EnumerationInfo;\r\n /**\r\n * Kind of quantity information, if any.\r\n * @alpha Still not entirely clear how kind of quantities will be handled and what data we'll need\r\n */\r\n kindOfQuantity?: KindOfQuantityInfo;\r\n /** Extended type name of the ECProperty if it has one */\r\n extendedType?: string;\r\n /**\r\n * Navigation property info if the field is navigation type\r\n * @beta\r\n */\r\n navigationPropertyInfo?: NavigationPropertyInfo;\r\n}\r\n\r\n/** @public */\r\nexport namespace PropertyInfo {\r\n /** Serialize [[PropertyInfo]] to JSON */\r\n export function toJSON(info: PropertyInfo): PropertyInfoJSON {\r\n return {\r\n ...info,\r\n classInfo: ClassInfo.toJSON(info.classInfo),\r\n ...(info.navigationPropertyInfo ? { navigationPropertyInfo: NavigationPropertyInfo.toJSON(info.navigationPropertyInfo) } : undefined),\r\n };\r\n }\r\n\r\n /** Serialize [[PropertyInfo]] to compressed JSON */\r\n export function toCompressedJSON(propertyInfo: PropertyInfo, classesMap: { [id: string]: CompressedClassInfoJSON }): PropertyInfoJSON<string> {\r\n const { navigationPropertyInfo, ...leftOverPropertyInfo } = propertyInfo;\r\n const { id, ...leftOverInfo } = propertyInfo.classInfo;\r\n classesMap[id] = leftOverInfo;\r\n\r\n return {\r\n ...leftOverPropertyInfo,\r\n classInfo: propertyInfo.classInfo.id,\r\n ...(navigationPropertyInfo ? { navigationPropertyInfo: NavigationPropertyInfo.toCompressedJSON(navigationPropertyInfo, classesMap) } : undefined),\r\n };\r\n }\r\n\r\n /** Deserialize [[PropertyInfo]] from JSON */\r\n export function fromJSON(json: PropertyInfoJSON): PropertyInfo {\r\n return {\r\n ...json,\r\n classInfo: ClassInfo.fromJSON(json.classInfo),\r\n ...(json.navigationPropertyInfo ? { navigationPropertyInfo: NavigationPropertyInfo.fromJSON(json.navigationPropertyInfo) } : undefined),\r\n };\r\n }\r\n}\r\n\r\n/**\r\n * A serialized version of [[PropertyInfo]]\r\n * @public\r\n */\r\nexport interface PropertyInfoJSON<TClassInfoJSON = ClassInfoJSON> {\r\n classInfo: TClassInfoJSON;\r\n name: string;\r\n type: string;\r\n enumerationInfo?: EnumerationInfo;\r\n kindOfQuantity?: KindOfQuantityInfo;\r\n /** @beta */\r\n navigationPropertyInfo?: NavigationPropertyInfoJSON<TClassInfoJSON>;\r\n}\r\n\r\n/**\r\n * A structure that describes a related class and the properties of that relationship.\r\n * @public\r\n */\r\nexport interface RelatedClassInfo {\r\n /** Information about the source ECClass */\r\n sourceClassInfo: ClassInfo;\r\n\r\n /** Information about the target ECClass */\r\n targetClassInfo: ClassInfo;\r\n\r\n /** Is target class handled polymorphically */\r\n isPolymorphicTargetClass: boolean;\r\n\r\n /** Information about the ECRelationship */\r\n relationshipInfo: ClassInfo;\r\n\r\n /** Should relationship be followed in a forward direction to access the related class. */\r\n isForwardRelationship: boolean;\r\n\r\n /** Is relationship handled polymorphically */\r\n isPolymorphicRelationship: boolean;\r\n}\r\n\r\n/** @public */\r\nexport namespace RelatedClassInfo {\r\n /** Serialize [[RelatedClassInfo]] to JSON */\r\n export function toJSON(info: RelatedClassInfo): RelatedClassInfoJSON {\r\n return {\r\n ...info,\r\n sourceClassInfo: ClassInfo.toJSON(info.sourceClassInfo),\r\n targetClassInfo: ClassInfo.toJSON(info.targetClassInfo),\r\n relationshipInfo: ClassInfo.toJSON(info.relationshipInfo),\r\n };\r\n }\r\n\r\n /** Serialize [[RelatedClassInfo]] to compressed JSON */\r\n export function toCompressedJSON(classInfo: RelatedClassInfo, classesMap: { [id: string]: CompressedClassInfoJSON }): RelatedClassInfoJSON<string> {\r\n const { id: sourceId, ...sourceLeftOverInfo } = classInfo.sourceClassInfo;\r\n const { id: targetId, ...targetLeftOverInfo } = classInfo.targetClassInfo;\r\n const { id: relationshipId, ...relationshipLeftOverInfo } = classInfo.relationshipInfo;\r\n\r\n classesMap[sourceId] = sourceLeftOverInfo;\r\n classesMap[targetId] = targetLeftOverInfo;\r\n classesMap[relationshipId] = relationshipLeftOverInfo;\r\n\r\n return {\r\n ...classInfo,\r\n sourceClassInfo: sourceId,\r\n targetClassInfo: targetId,\r\n relationshipInfo: relationshipId,\r\n };\r\n }\r\n\r\n /** Deserialize [[RelatedClassInfo]] from JSON */\r\n export function fromJSON(json: RelatedClassInfoJSON): RelatedClassInfo {\r\n return {\r\n ...json,\r\n sourceClassInfo: ClassInfo.fromJSON(json.sourceClassInfo),\r\n targetClassInfo: ClassInfo.fromJSON(json.targetClassInfo),\r\n isPolymorphicTargetClass: json.isPolymorphicTargetClass ?? false,\r\n relationshipInfo: ClassInfo.fromJSON(json.relationshipInfo),\r\n isPolymorphicRelationship: json.isPolymorphicRelationship ?? false,\r\n };\r\n }\r\n\r\n /** Deserialize [[RelatedClassInfo]] from compressed JSON */\r\n export function fromCompressedJSON(json: RelatedClassInfoJSON<string>, classesMap: { [id: string]: CompressedClassInfoJSON }): RelatedClassInfo {\r\n assert(classesMap.hasOwnProperty(json.sourceClassInfo));\r\n assert(classesMap.hasOwnProperty(json.targetClassInfo));\r\n assert(classesMap.hasOwnProperty(json.relationshipInfo));\r\n return {\r\n ...json,\r\n sourceClassInfo: ClassInfo.fromJSON({ id: json.sourceClassInfo, ...classesMap[json.sourceClassInfo] }),\r\n targetClassInfo: ClassInfo.fromJSON({ id: json.targetClassInfo, ...classesMap[json.targetClassInfo] }),\r\n isPolymorphicTargetClass: json.isPolymorphicTargetClass ?? false,\r\n relationshipInfo: ClassInfo.fromJSON({ id: json.relationshipInfo, ...classesMap[json.relationshipInfo] }),\r\n isPolymorphicRelationship: json.isPolymorphicRelationship ?? false,\r\n };\r\n }\r\n\r\n /** Check two [[RelatedClassInfo]] or [[StrippedRelatedClassInfo]] for equality */\r\n export function equals(lhs: RelatedClassInfo | StrippedRelatedClassInfo, rhs: RelatedClassInfo | StrippedRelatedClassInfo): boolean {\r\n return lhs.isForwardRelationship === rhs.isForwardRelationship\r\n && getClassName(lhs, \"source\") === getClassName(rhs, \"source\")\r\n && getClassName(lhs, \"target\") === getClassName(rhs, \"target\")\r\n && getClassName(lhs, \"relationship\") === getClassName(rhs, \"relationship\");\r\n }\r\n\r\n function isStripped(info: RelatedClassInfo | StrippedRelatedClassInfo): info is StrippedRelatedClassInfo {\r\n const maybeStripped = info as StrippedRelatedClassInfo;\r\n return !!maybeStripped.relationshipName && !!maybeStripped.sourceClassName && !!maybeStripped.targetClassName;\r\n }\r\n\r\n function getClassName(info: RelatedClassInfo | StrippedRelatedClassInfo, whichClass: \"relationship\" | \"source\" | \"target\"): string {\r\n switch (whichClass) {\r\n case \"source\": return isStripped(info) ? info.sourceClassName : info.sourceClassInfo.name;\r\n case \"target\": return isStripped(info) ? info.targetClassName : info.targetClassInfo.name;\r\n case \"relationship\": return isStripped(info) ? info.relationshipName : info.relationshipInfo.name;\r\n }\r\n }\r\n\r\n /** Strip given [[RelatedClassInfo]] to [[StrippedRelatedClassInfo]] */\r\n export function strip(full: RelatedClassInfo): StrippedRelatedClassInfo {\r\n return {\r\n sourceClassName: full.sourceClassInfo.name,\r\n targetClassName: full.targetClassInfo.name,\r\n relationshipName: full.relationshipInfo.name,\r\n isForwardRelationship: full.isForwardRelationship,\r\n };\r\n }\r\n}\r\n\r\n/**\r\n * A serialized version of [[RelatedClassInfo]]\r\n * @public\r\n */\r\nexport interface RelatedClassInfoJSON<TClassInfoJSON = ClassInfoJSON> {\r\n sourceClassInfo: TClassInfoJSON;\r\n targetClassInfo: TClassInfoJSON;\r\n isPolymorphicTargetClass?: boolean;\r\n relationshipInfo: TClassInfoJSON;\r\n isForwardRelationship: boolean;\r\n isPolymorphicRelationship?: boolean;\r\n}\r\n\r\n/**\r\n * A structure that describes a relationship between source and target classes where\r\n * an actual ECRelationship between them is optional.\r\n * @public\r\n */\r\nexport type RelatedClassInfoWithOptionalRelationship = PartialBy<RelatedClassInfo, \"relationshipInfo\" | \"isForwardRelationship\" | \"isPolymorphicRelationship\">;\r\n\r\n/** @public */\r\nexport type RelatedClassInfoWithOptionalRelationshipJSON<TClassInfoJSON = ClassInfoJSON> = PartialBy<RelatedClassInfoJSON<TClassInfoJSON>, \"relationshipInfo\" | \"isForwardRelationship\" | \"isPolymorphicRelationship\">;\r\n\r\n/** @public */\r\nexport namespace RelatedClassInfoWithOptionalRelationship { // eslint-disable-line @typescript-eslint/no-redeclare\r\n /** Serialize [[RelatedClassInfoWithOptionalRelationship]] to compressed JSON */\r\n export function toCompressedJSON(classInfo: RelatedClassInfoWithOptionalRelationship, classesMap: { [id: string]: CompressedClassInfoJSON }): RelatedClassInfoWithOptionalRelationshipJSON<string> {\r\n const { sourceClassInfo, targetClassInfo, relationshipInfo, ...otherProps } = classInfo;\r\n const { id: sourceId, ...sourceLeftOverInfo } = sourceClassInfo;\r\n const { id: targetId, ...targetLeftOverInfo } = targetClassInfo;\r\n\r\n classesMap[sourceId] = sourceLeftOverInfo;\r\n classesMap[targetId] = targetLeftOverInfo;\r\n\r\n if (relationshipInfo) {\r\n const { id: relationshipId, ...relationshipLeftOverInfo } = relationshipInfo;\r\n classesMap[relationshipId] = relationshipLeftOverInfo;\r\n }\r\n\r\n return {\r\n ...otherProps,\r\n sourceClassInfo: sourceId,\r\n targetClassInfo: targetId,\r\n ...(relationshipInfo ? { relationshipInfo: relationshipInfo.id } : undefined),\r\n };\r\n }\r\n\r\n /** Deserialize [[RelatedClassInfoWithOptionalRelationship]] from compressed JSON */\r\n export function fromCompressedJSON(json: RelatedClassInfoWithOptionalRelationshipJSON<string>, classesMap: { [id: string]: CompressedClassInfoJSON }): RelatedClassInfoWithOptionalRelationship {\r\n const { sourceClassInfo, targetClassInfo, relationshipInfo, ...otherProps } = json;\r\n assert(classesMap.hasOwnProperty(sourceClassInfo));\r\n assert(classesMap.hasOwnProperty(targetClassInfo));\r\n if (relationshipInfo)\r\n assert(classesMap.hasOwnProperty(relationshipInfo));\r\n return {\r\n ...otherProps,\r\n sourceClassInfo: ClassInfo.fromJSON({ id: sourceClassInfo, ...classesMap[sourceClassInfo] }),\r\n targetClassInfo: ClassInfo.fromJSON({ id: targetClassInfo, ...classesMap[targetClassInfo] }),\r\n isPolymorphicTargetClass: json.isPolymorphicTargetClass ?? false,\r\n ...(relationshipInfo ? { relationshipInfo: ClassInfo.fromJSON({ id: relationshipInfo, ...classesMap[relationshipInfo] }) } : undefined),\r\n };\r\n }\r\n}\r\n\r\n/**\r\n * A structure that describes a related class path.\r\n * @public\r\n */\r\nexport type RelationshipPath = RelatedClassInfo[];\r\n\r\n/**\r\n * Serialized [[RelationshipPath]]\r\n * @public\r\n */\r\nexport type RelationshipPathJSON<TClassInfoJSON = ClassInfoJSON> = RelatedClassInfoJSON<TClassInfoJSON>[];\r\n\r\n/** @public */\r\nexport namespace RelationshipPath { // eslint-disable-line @typescript-eslint/no-redeclare\r\n /** Reverse direction of the given [[RelationshipPath]] */\r\n export function reverse(path: RelationshipPath): RelationshipPath {\r\n return [...path].reverse().map((step) => ({\r\n ...step,\r\n sourceClassInfo: step.targetClassInfo,\r\n targetClassInfo: step.sourceClassInfo,\r\n isForwardRelationship: !step.isForwardRelationship,\r\n }));\r\n }\r\n\r\n /** Check two [[RelationshipPath]] or [[StrippedRelationshipPath]] for equality */\r\n export function equals(lhs: Array<RelatedClassInfo | StrippedRelatedClassInfo>, rhs: Array<RelatedClassInfo | StrippedRelatedClassInfo>): boolean {\r\n return lhs.length === rhs.length\r\n && lhs.every((lhsPart, i) => RelatedClassInfo.equals(lhsPart, rhs[i]));\r\n }\r\n\r\n /** Strip given [[RelationshipPath]] to [[StrippedRelationshipPath]] */\r\n export function strip(full: RelationshipPath): StrippedRelationshipPath {\r\n return full.map(RelatedClassInfo.strip);\r\n }\r\n}\r\n\r\n/**\r\n * Data structure that contains a subset of [[RelatedClassInfo]] required to\r\n * identify the relationship.\r\n * @public\r\n */\r\nexport interface StrippedRelatedClassInfo {\r\n sourceClassName: string;\r\n targetClassName: string;\r\n relationshipName: string;\r\n isForwardRelationship: boolean;\r\n}\r\n\r\n/**\r\n * Data structure that contains a subset of [[RelationshipPath]] required to\r\n * identify the relationship path.\r\n * @public\r\n */\r\nexport type StrippedRelationshipPath = StrippedRelatedClassInfo[];\r\n"]}
1
+ {"version":3,"file":"EC.js","sourceRoot":"","sources":["../../../src/presentation-common/EC.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 Core\r\n */\r\n\r\nimport { assert, Id64String } from \"@itwin/core-bentley\";\r\nimport { FormatProps } from \"@itwin/core-quantity\";\r\nimport { PartialBy } from \"./Utils\";\r\n\r\n/**\r\n * Type of an ECClass ID.\r\n * @public\r\n */\r\nexport type ClassId = Id64String;\r\n\r\n/**\r\n * Type of an ECInstance ID.\r\n * @public\r\n */\r\nexport type InstanceId = Id64String;\r\n\r\n/**\r\n * A key that uniquely identifies an instance in an iModel\r\n * @public\r\n */\r\nexport interface InstanceKey {\r\n /** Full class name in format `SchemaName:ClassName` */\r\n className: string;\r\n /** ECInstance ID */\r\n id: InstanceId;\r\n}\r\n\r\n/** @public */\r\nexport namespace InstanceKey {\r\n /** Compare 2 instance keys */\r\n export function compare(lhs: InstanceKey, rhs: InstanceKey): number {\r\n const classNameCompare = lhs.className.localeCompare(rhs.className);\r\n if (classNameCompare !== 0)\r\n return classNameCompare;\r\n return lhs.id.localeCompare(rhs.id);\r\n }\r\n\r\n /**\r\n * Serialize [[InstanceKey]] to JSON\r\n * @deprecated in 3.x. Use [[InstanceKey]].\r\n */\r\n // istanbul ignore next\r\n // eslint-disable-next-line deprecation/deprecation\r\n export function toJSON(key: InstanceKey): InstanceKeyJSON {\r\n return { ...key };\r\n }\r\n\r\n /**\r\n * Deserialize [[InstanceKey]] from JSON\r\n * @deprecated in 3.x. Use [[InstanceKey]].\r\n */\r\n // istanbul ignore next\r\n // eslint-disable-next-line deprecation/deprecation\r\n export function fromJSON(json: InstanceKeyJSON) {\r\n return { ...json };\r\n }\r\n}\r\n\r\n/**\r\n * A serialized version of [[InstanceKey]]\r\n * @public\r\n * @deprecated in 3.x. Use [[InstanceKey]].\r\n */\r\nexport interface InstanceKeyJSON {\r\n className: string;\r\n id: string;\r\n}\r\n\r\n/**\r\n * Information about an ECClass\r\n * @public\r\n */\r\nexport interface ClassInfo {\r\n /** ECClass ID */\r\n id: ClassId;\r\n /** Full class name in format `SchemaName:ClassName` */\r\n name: string;\r\n /** ECClass label */\r\n label: string;\r\n}\r\n\r\n/** @public */\r\nexport namespace ClassInfo {\r\n /**\r\n * Serialize [[ClassInfo]] to JSON\r\n * @deprecated in 3.x. Use [[ClassInfo]].\r\n */\r\n // istanbul ignore next\r\n // eslint-disable-next-line deprecation/deprecation\r\n export function toJSON(info: ClassInfo): ClassInfoJSON {\r\n return { ...info };\r\n }\r\n\r\n /**\r\n * Deserialize [[ClassInfo]] from JSON\r\n * @deprecated in 3.x. Use [[ClassInfo]].\r\n */\r\n // istanbul ignore next\r\n // eslint-disable-next-line deprecation/deprecation\r\n export function fromJSON(json: ClassInfoJSON): ClassInfo {\r\n return { ...json };\r\n }\r\n}\r\n\r\n/**\r\n * A serialized version of [[ClassInfo]]\r\n * @public\r\n * @deprecated in 3.x. Use [[ClassInfo]].\r\n */\r\nexport interface ClassInfoJSON {\r\n id: string;\r\n name: string;\r\n label: string;\r\n}\r\n\r\n/**\r\n * A serialized and compressed version of [[ClassInfo]]\r\n * @public\r\n */\r\nexport interface CompressedClassInfoJSON {\r\n name: string;\r\n label: string;\r\n}\r\n\r\n/**\r\n * A single choice in enumeration\r\n * @public\r\n */\r\nexport interface EnumerationChoice {\r\n /** Label of the choice */\r\n label: string;\r\n /** Value of the choice */\r\n value: string | number;\r\n}\r\n\r\n/**\r\n * Enumeration information\r\n * @public\r\n */\r\nexport interface EnumerationInfo {\r\n /** Available enumeration choices */\r\n choices: EnumerationChoice[];\r\n /** Is the enumeration strict (values only allowed from `choices` list) */\r\n isStrict: boolean;\r\n}\r\n\r\n/**\r\n * Kind of quantity information\r\n * @public\r\n */\r\nexport interface KindOfQuantityInfo {\r\n /** Full name of KindOfQuantity in format `SchemaName:KindOfQuantityName` */\r\n name: string;\r\n /** Label of KindOfQuantity */\r\n label: string;\r\n /**\r\n * Persistence unit identifier.\r\n * @alpha Still not entirely clear how kind of quantities will be handled and what data we'll need\r\n */\r\n persistenceUnit: string;\r\n /**\r\n * Active format that was used to format property value.\r\n * @alpha Still not entirely clear how kind of quantities will be handled and what data we'll need\r\n */\r\n activeFormat?: FormatProps;\r\n}\r\n\r\n/**\r\n * A data structure for storing navigation property information.\r\n * @beta\r\n */\r\nexport interface NavigationPropertyInfo {\r\n /** Information about ECProperty's relationship class */\r\n classInfo: ClassInfo;\r\n /** Is the direction of the relationship forward */\r\n isForwardRelationship: boolean;\r\n /** Information about ECProperty's target class */\r\n targetClassInfo: ClassInfo;\r\n /** Is ECProperty's target class polymorphic */\r\n isTargetPolymorphic: boolean;\r\n}\r\n\r\n/**\r\n * Contains utilities for working with objects of [[NavigationPropertyInfo]] type.\r\n * @beta\r\n */\r\nexport namespace NavigationPropertyInfo {\r\n /**\r\n * Serialize [[NavigationPropertyInfo]] to JSON\r\n * @deprecated in 3.x. Use [[toCompressedJSON]].\r\n */\r\n // istanbul ignore next\r\n export function toJSON(info: NavigationPropertyInfo): NavigationPropertyInfoJSON {\r\n return { ...info };\r\n }\r\n\r\n /** Serialize [[NavigationPropertyInfo]] to compressed JSON */\r\n export function toCompressedJSON(navigationPropertyInfo: NavigationPropertyInfo, classesMap: { [id: string]: CompressedClassInfoJSON }): NavigationPropertyInfoJSON<string> {\r\n const { id: relationshipId, ...relationshipLeftOverInfo } = navigationPropertyInfo.classInfo;\r\n const { id: targetId, ...targetLeftOverInfo } = navigationPropertyInfo.targetClassInfo;\r\n classesMap[relationshipId] = relationshipLeftOverInfo;\r\n classesMap[targetId] = targetLeftOverInfo;\r\n\r\n return {\r\n ...navigationPropertyInfo,\r\n classInfo: relationshipId,\r\n targetClassInfo: targetId,\r\n };\r\n }\r\n\r\n /**\r\n * Deserialize [[NavigationPropertyInfo]] from JSON\r\n * @deprecated in 3.x. Use [[fromCompressedJSON]].\r\n */\r\n // istanbul ignore next\r\n export function fromJSON(json: NavigationPropertyInfoJSON): NavigationPropertyInfo {\r\n return { ...json };\r\n }\r\n\r\n /** Deserialize [[NavigationPropertyInfo]] from compressed JSON */\r\n export function fromCompressedJSON(compressedNavigationPropertyInfoJSON: NavigationPropertyInfoJSON<string>, classesMap: { [id: string]: CompressedClassInfoJSON }): NavigationPropertyInfo {\r\n return {\r\n ...compressedNavigationPropertyInfoJSON,\r\n classInfo: { id: compressedNavigationPropertyInfoJSON.classInfo, ...classesMap[compressedNavigationPropertyInfoJSON.classInfo] },\r\n targetClassInfo: { id: compressedNavigationPropertyInfoJSON.targetClassInfo, ...classesMap[compressedNavigationPropertyInfoJSON.targetClassInfo] },\r\n };\r\n }\r\n}\r\n\r\n/**\r\n * A serialized version of [[NavigationPropertyInfo]]\r\n * @beta\r\n */\r\n// eslint-disable-next-line deprecation/deprecation\r\nexport interface NavigationPropertyInfoJSON<TClassInfoJSON = ClassInfoJSON> {\r\n classInfo: TClassInfoJSON;\r\n isForwardRelationship: boolean;\r\n targetClassInfo: TClassInfoJSON;\r\n isTargetPolymorphic: boolean;\r\n}\r\n\r\n/**\r\n * A structure that describes an ECProperty\r\n * @public\r\n */\r\nexport interface PropertyInfo {\r\n /** Information about ECProperty class */\r\n classInfo: ClassInfo;\r\n /** Name of the ECProperty */\r\n name: string;\r\n /** Type name of the ECProperty */\r\n type: string;\r\n /** Enumeration info if the property is enumerable */\r\n enumerationInfo?: EnumerationInfo;\r\n /**\r\n * Kind of quantity information, if any.\r\n * @alpha Still not entirely clear how kind of quantities will be handled and what data we'll need\r\n */\r\n kindOfQuantity?: KindOfQuantityInfo;\r\n /** Extended type name of the ECProperty if it has one */\r\n extendedType?: string;\r\n /**\r\n * Navigation property info if the field is navigation type\r\n * @beta\r\n */\r\n navigationPropertyInfo?: NavigationPropertyInfo;\r\n}\r\n\r\n/** @public */\r\nexport namespace PropertyInfo {\r\n /**\r\n * Serialize [[PropertyInfo]] to JSON\r\n * @deprecated in 3.x. Use [[PropertyInfo]].\r\n */\r\n // istanbul ignore next\r\n export function toJSON(info: PropertyInfo): PropertyInfoJSON {\r\n return { ...info };\r\n }\r\n\r\n /** Serialize [[PropertyInfo]] to compressed JSON */\r\n export function toCompressedJSON(propertyInfo: PropertyInfo, classesMap: { [id: string]: CompressedClassInfoJSON }): PropertyInfoJSON<string> {\r\n const { navigationPropertyInfo, ...leftOverPropertyInfo } = propertyInfo;\r\n const { id, ...leftOverInfo } = propertyInfo.classInfo;\r\n classesMap[id] = leftOverInfo;\r\n\r\n return {\r\n ...leftOverPropertyInfo,\r\n classInfo: propertyInfo.classInfo.id,\r\n ...(navigationPropertyInfo ? { navigationPropertyInfo: NavigationPropertyInfo.toCompressedJSON(navigationPropertyInfo, classesMap) } : undefined),\r\n };\r\n }\r\n\r\n /**\r\n * Deserialize [[PropertyInfo]] from JSON\r\n * @deprecated in 3.x. Use [[PropertyInfo]].\r\n */\r\n // istanbul ignore next\r\n export function fromJSON(json: PropertyInfoJSON): PropertyInfo {\r\n return { ...json };\r\n }\r\n}\r\n\r\n/**\r\n * A serialized version of [[PropertyInfo]]\r\n * @public\r\n */\r\n// eslint-disable-next-line deprecation/deprecation\r\nexport interface PropertyInfoJSON<TClassInfoJSON = ClassInfoJSON> {\r\n classInfo: TClassInfoJSON;\r\n name: string;\r\n type: string;\r\n enumerationInfo?: EnumerationInfo;\r\n kindOfQuantity?: KindOfQuantityInfo;\r\n /** @beta */\r\n navigationPropertyInfo?: NavigationPropertyInfoJSON<TClassInfoJSON>;\r\n}\r\n\r\n/**\r\n * A structure that describes a related class and the properties of that relationship.\r\n * @public\r\n */\r\nexport interface RelatedClassInfo {\r\n /** Information about the source ECClass */\r\n sourceClassInfo: ClassInfo;\r\n\r\n /** Information about the target ECClass */\r\n targetClassInfo: ClassInfo;\r\n\r\n /** Is target class handled polymorphically */\r\n isPolymorphicTargetClass?: boolean;\r\n\r\n /** Information about the ECRelationship */\r\n relationshipInfo: ClassInfo;\r\n\r\n /** Should relationship be followed in a forward direction to access the related class. */\r\n isForwardRelationship: boolean;\r\n\r\n /** Is relationship handled polymorphically */\r\n isPolymorphicRelationship?: boolean;\r\n}\r\n\r\n/** @public */\r\nexport namespace RelatedClassInfo {\r\n /**\r\n * Serialize [[RelatedClassInfo]] to JSON\r\n * @deprecated in 3.x. Use [[RelatedClassInfo]].\r\n */\r\n export function toJSON(info: RelatedClassInfo): RelatedClassInfoJSON {\r\n return { ...info };\r\n }\r\n\r\n /** Serialize [[RelatedClassInfo]] to compressed JSON */\r\n export function toCompressedJSON(classInfo: RelatedClassInfo, classesMap: { [id: string]: CompressedClassInfoJSON }): RelatedClassInfoJSON<string> {\r\n const { id: sourceId, ...sourceLeftOverInfo } = classInfo.sourceClassInfo;\r\n const { id: targetId, ...targetLeftOverInfo } = classInfo.targetClassInfo;\r\n const { id: relationshipId, ...relationshipLeftOverInfo } = classInfo.relationshipInfo;\r\n\r\n classesMap[sourceId] = sourceLeftOverInfo;\r\n classesMap[targetId] = targetLeftOverInfo;\r\n classesMap[relationshipId] = relationshipLeftOverInfo;\r\n\r\n return {\r\n ...classInfo,\r\n sourceClassInfo: sourceId,\r\n targetClassInfo: targetId,\r\n relationshipInfo: relationshipId,\r\n };\r\n }\r\n\r\n /**\r\n * Deserialize [[RelatedClassInfo]] from JSON\r\n * @deprecated in 3.x. Use [[RelatedClassInfo]].\r\n */\r\n export function fromJSON(json: RelatedClassInfoJSON): RelatedClassInfo {\r\n return { ...json };\r\n }\r\n\r\n /** Deserialize [[RelatedClassInfo]] from compressed JSON */\r\n export function fromCompressedJSON(json: RelatedClassInfoJSON<string>, classesMap: { [id: string]: CompressedClassInfoJSON }): RelatedClassInfo {\r\n assert(classesMap.hasOwnProperty(json.sourceClassInfo));\r\n assert(classesMap.hasOwnProperty(json.targetClassInfo));\r\n assert(classesMap.hasOwnProperty(json.relationshipInfo));\r\n return {\r\n ...json,\r\n sourceClassInfo: { id: json.sourceClassInfo, ...classesMap[json.sourceClassInfo] },\r\n targetClassInfo: { id: json.targetClassInfo, ...classesMap[json.targetClassInfo] },\r\n relationshipInfo: { id: json.relationshipInfo, ...classesMap[json.relationshipInfo] },\r\n };\r\n }\r\n\r\n /** Check two [[RelatedClassInfo]] or [[StrippedRelatedClassInfo]] for equality */\r\n export function equals(lhs: RelatedClassInfo | StrippedRelatedClassInfo, rhs: RelatedClassInfo | StrippedRelatedClassInfo): boolean {\r\n return lhs.isForwardRelationship === rhs.isForwardRelationship\r\n && getClassName(lhs, \"source\") === getClassName(rhs, \"source\")\r\n && getClassName(lhs, \"target\") === getClassName(rhs, \"target\")\r\n && getClassName(lhs, \"relationship\") === getClassName(rhs, \"relationship\");\r\n }\r\n\r\n function isStripped(info: RelatedClassInfo | StrippedRelatedClassInfo): info is StrippedRelatedClassInfo {\r\n const maybeStripped = info as StrippedRelatedClassInfo;\r\n return !!maybeStripped.relationshipName && !!maybeStripped.sourceClassName && !!maybeStripped.targetClassName;\r\n }\r\n\r\n function getClassName(info: RelatedClassInfo | StrippedRelatedClassInfo, whichClass: \"relationship\" | \"source\" | \"target\"): string {\r\n switch (whichClass) {\r\n case \"source\": return isStripped(info) ? info.sourceClassName : info.sourceClassInfo.name;\r\n case \"target\": return isStripped(info) ? info.targetClassName : info.targetClassInfo.name;\r\n case \"relationship\": return isStripped(info) ? info.relationshipName : info.relationshipInfo.name;\r\n }\r\n }\r\n\r\n /** Strip given [[RelatedClassInfo]] to [[StrippedRelatedClassInfo]] */\r\n export function strip(full: RelatedClassInfo): StrippedRelatedClassInfo {\r\n return {\r\n sourceClassName: full.sourceClassInfo.name,\r\n targetClassName: full.targetClassInfo.name,\r\n relationshipName: full.relationshipInfo.name,\r\n isForwardRelationship: full.isForwardRelationship,\r\n };\r\n }\r\n}\r\n\r\n/**\r\n * A serialized version of [[RelatedClassInfo]]\r\n * @public\r\n */\r\n// eslint-disable-next-line deprecation/deprecation\r\nexport interface RelatedClassInfoJSON<TClassInfoJSON = ClassInfoJSON> {\r\n sourceClassInfo: TClassInfoJSON;\r\n targetClassInfo: TClassInfoJSON;\r\n isPolymorphicTargetClass?: boolean;\r\n relationshipInfo: TClassInfoJSON;\r\n isForwardRelationship: boolean;\r\n isPolymorphicRelationship?: boolean;\r\n}\r\n\r\n/**\r\n * A structure that describes a relationship between source and target classes where\r\n * an actual ECRelationship between them is optional.\r\n * @public\r\n */\r\nexport type RelatedClassInfoWithOptionalRelationship = PartialBy<RelatedClassInfo, \"relationshipInfo\" | \"isForwardRelationship\" | \"isPolymorphicRelationship\">;\r\n\r\n/** @public */\r\n// eslint-disable-next-line deprecation/deprecation\r\nexport type RelatedClassInfoWithOptionalRelationshipJSON<TClassInfoJSON = ClassInfoJSON> = PartialBy<RelatedClassInfoJSON<TClassInfoJSON>, \"relationshipInfo\" | \"isForwardRelationship\" | \"isPolymorphicRelationship\">;\r\n\r\n/** @public */\r\n// eslint-disable-next-line @typescript-eslint/no-redeclare\r\nexport namespace RelatedClassInfoWithOptionalRelationship {\r\n /** Serialize [[RelatedClassInfoWithOptionalRelationship]] to compressed JSON */\r\n export function toCompressedJSON(classInfo: RelatedClassInfoWithOptionalRelationship, classesMap: { [id: string]: CompressedClassInfoJSON }): RelatedClassInfoWithOptionalRelationshipJSON<string> {\r\n const { sourceClassInfo, targetClassInfo, relationshipInfo, ...otherProps } = classInfo;\r\n const { id: sourceId, ...sourceLeftOverInfo } = sourceClassInfo;\r\n const { id: targetId, ...targetLeftOverInfo } = targetClassInfo;\r\n\r\n classesMap[sourceId] = sourceLeftOverInfo;\r\n classesMap[targetId] = targetLeftOverInfo;\r\n\r\n if (relationshipInfo) {\r\n const { id: relationshipId, ...relationshipLeftOverInfo } = relationshipInfo;\r\n classesMap[relationshipId] = relationshipLeftOverInfo;\r\n }\r\n\r\n return {\r\n ...otherProps,\r\n sourceClassInfo: sourceId,\r\n targetClassInfo: targetId,\r\n ...(relationshipInfo ? { relationshipInfo: relationshipInfo.id } : undefined),\r\n };\r\n }\r\n\r\n /** Deserialize [[RelatedClassInfoWithOptionalRelationship]] from compressed JSON */\r\n export function fromCompressedJSON(json: RelatedClassInfoWithOptionalRelationshipJSON<string>, classesMap: { [id: string]: CompressedClassInfoJSON }): RelatedClassInfoWithOptionalRelationship {\r\n const { sourceClassInfo, targetClassInfo, relationshipInfo, ...otherProps } = json;\r\n assert(classesMap.hasOwnProperty(sourceClassInfo));\r\n assert(classesMap.hasOwnProperty(targetClassInfo));\r\n if (relationshipInfo)\r\n assert(classesMap.hasOwnProperty(relationshipInfo));\r\n return {\r\n ...otherProps,\r\n sourceClassInfo: { id: sourceClassInfo, ...classesMap[sourceClassInfo] },\r\n targetClassInfo: { id: targetClassInfo, ...classesMap[targetClassInfo] },\r\n ...(relationshipInfo ? { relationshipInfo: { id: relationshipInfo, ...classesMap[relationshipInfo] } } : undefined),\r\n };\r\n }\r\n}\r\n\r\n/**\r\n * A structure that describes a related class path.\r\n * @public\r\n */\r\nexport type RelationshipPath = RelatedClassInfo[];\r\n\r\n/**\r\n * Serialized [[RelationshipPath]]\r\n * @public\r\n */\r\n// eslint-disable-next-line deprecation/deprecation\r\nexport type RelationshipPathJSON<TClassInfoJSON = ClassInfoJSON> = RelatedClassInfoJSON<TClassInfoJSON>[];\r\n\r\n/** @public */\r\nexport namespace RelationshipPath { // eslint-disable-line @typescript-eslint/no-redeclare\r\n /** Reverse direction of the given [[RelationshipPath]] */\r\n export function reverse(path: RelationshipPath): RelationshipPath {\r\n return [...path].reverse().map((step) => ({\r\n ...step,\r\n sourceClassInfo: step.targetClassInfo,\r\n targetClassInfo: step.sourceClassInfo,\r\n isForwardRelationship: !step.isForwardRelationship,\r\n }));\r\n }\r\n\r\n /** Check two [[RelationshipPath]] or [[StrippedRelationshipPath]] for equality */\r\n export function equals(lhs: Array<RelatedClassInfo | StrippedRelatedClassInfo>, rhs: Array<RelatedClassInfo | StrippedRelatedClassInfo>): boolean {\r\n return lhs.length === rhs.length\r\n && lhs.every((lhsPart, i) => RelatedClassInfo.equals(lhsPart, rhs[i]));\r\n }\r\n\r\n /** Strip given [[RelationshipPath]] to [[StrippedRelationshipPath]] */\r\n export function strip(full: RelationshipPath): StrippedRelationshipPath {\r\n return full.map(RelatedClassInfo.strip);\r\n }\r\n}\r\n\r\n/**\r\n * Data structure that contains a subset of [[RelatedClassInfo]] required to\r\n * identify the relationship.\r\n * @public\r\n */\r\nexport interface StrippedRelatedClassInfo {\r\n sourceClassName: string;\r\n targetClassName: string;\r\n relationshipName: string;\r\n isForwardRelationship: boolean;\r\n}\r\n\r\n/**\r\n * Data structure that contains a subset of [[RelationshipPath]] required to\r\n * identify the relationship path.\r\n * @public\r\n */\r\nexport type StrippedRelationshipPath = StrippedRelatedClassInfo[];\r\n"]}
@@ -4,8 +4,8 @@
4
4
  import { Id64String } from "@itwin/core-bentley";
5
5
  /**
6
6
  * Data structure for storing element properties information in a simplified format.
7
- * @see [[Content]] for a format stores all available element property data.
8
- * @beta
7
+ * @see [[Content]] for a format that stores all available element property data.
8
+ * @public
9
9
  */
10
10
  export interface ElementProperties {
11
11
  /** Label of element's ECClass. */
@@ -21,7 +21,7 @@ export interface ElementProperties {
21
21
  }
22
22
  /**
23
23
  * Base type for all [[ElementPropertiesItem]] types.
24
- * @beta
24
+ * @public
25
25
  */
26
26
  export interface ElementPropertiesItemBase {
27
27
  /** Type of the properties item. */
@@ -29,7 +29,7 @@ export interface ElementPropertiesItemBase {
29
29
  }
30
30
  /**
31
31
  * Definition for a category. A category can nest other property items, including categories.
32
- * @beta
32
+ * @public
33
33
  */
34
34
  export interface ElementPropertiesCategoryItem extends ElementPropertiesItemBase {
35
35
  /** Type of the properties item. */
@@ -41,7 +41,7 @@ export interface ElementPropertiesCategoryItem extends ElementPropertiesItemBase
41
41
  }
42
42
  /**
43
43
  * Base type for all [[ElementPropertiesPropertyItem]] types.
44
- * @beta
44
+ * @public
45
45
  */
46
46
  export interface ElementPropertiesPropertyItemBase extends ElementPropertiesItemBase {
47
47
  /** Type of the properties item. */
@@ -49,7 +49,7 @@ export interface ElementPropertiesPropertyItemBase extends ElementPropertiesItem
49
49
  }
50
50
  /**
51
51
  * Definition for a primitive property value.
52
- * @beta
52
+ * @public
53
53
  */
54
54
  export interface ElementPropertiesPrimitivePropertyItem extends ElementPropertiesPropertyItemBase {
55
55
  /** Type of the properties item. */
@@ -59,7 +59,7 @@ export interface ElementPropertiesPrimitivePropertyItem extends ElementPropertie
59
59
  }
60
60
  /**
61
61
  * Base type for all [[ElementPropertiesArrayPropertyItem]] types.
62
- * @beta
62
+ * @public
63
63
  */
64
64
  export interface ElementPropertiesArrayPropertyItemBase extends ElementPropertiesPropertyItemBase {
65
65
  /** Type of the properties item. */
@@ -69,7 +69,7 @@ export interface ElementPropertiesArrayPropertyItemBase extends ElementPropertie
69
69
  }
70
70
  /**
71
71
  * Definition for a primitives' array property value.
72
- * @beta
72
+ * @public
73
73
  */
74
74
  export interface ElementPropertiesPrimitiveArrayPropertyItem extends ElementPropertiesArrayPropertyItemBase {
75
75
  /** Type of values contained in this array. */
@@ -79,7 +79,7 @@ export interface ElementPropertiesPrimitiveArrayPropertyItem extends ElementProp
79
79
  }
80
80
  /**
81
81
  * Definition for a structs' array property value.
82
- * @beta
82
+ * @public
83
83
  */
84
84
  export interface ElementPropertiesStructArrayPropertyItem extends ElementPropertiesArrayPropertyItemBase {
85
85
  /** Type of values contained in this array. */
@@ -91,12 +91,12 @@ export interface ElementPropertiesStructArrayPropertyItem extends ElementPropert
91
91
  }
92
92
  /**
93
93
  * Definition for an array property value.
94
- * @beta
94
+ * @public
95
95
  */
96
96
  export declare type ElementPropertiesArrayPropertyItem = ElementPropertiesPrimitiveArrayPropertyItem | ElementPropertiesStructArrayPropertyItem;
97
97
  /**
98
98
  * Definition for an struct property value.
99
- * @beta
99
+ * @public
100
100
  */
101
101
  export interface ElementPropertiesStructPropertyItem extends ElementPropertiesPropertyItemBase {
102
102
  /** Type of the properties item. */
@@ -108,17 +108,17 @@ export interface ElementPropertiesStructPropertyItem extends ElementPropertiesPr
108
108
  }
109
109
  /**
110
110
  * Available element property types.
111
- * @beta
111
+ * @public
112
112
  */
113
113
  export declare type ElementPropertiesPropertyValueType = "primitive" | "array" | "struct";
114
114
  /**
115
115
  * Definition of a property value.
116
- * @beta
116
+ * @public
117
117
  */
118
118
  export declare type ElementPropertiesPropertyItem = ElementPropertiesPrimitivePropertyItem | ElementPropertiesArrayPropertyItem | ElementPropertiesStructPropertyItem;
119
119
  /**
120
120
  * Definition of a property item, including a property category.
121
- * @beta
121
+ * @public
122
122
  */
123
123
  export declare type ElementPropertiesItem = ElementPropertiesCategoryItem | ElementPropertiesPropertyItem;
124
124
  //# sourceMappingURL=ElementProperties.d.ts.map